:root{
  --purple:#7400b8;
  --purple-2:#8b14cf;
  --green:#75b967;
  --green-deep:#5da84f;
  --ink:#1d2733;
  --muted:#697684;
  --pale:#f6f0fb;
  --mint:#f2f8ef;
  --line:#e7e3eb;
  --white:#fff;
  --shadow:0 18px 50px rgba(55,21,73,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}
img{display:block;width:100%;object-fit:cover}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:#f8f8fb;border-bottom:1px solid #eee;font-size:13px;color:#64707c}
.topbar-inner{height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topbar-left,.topbar-right{display:flex;gap:22px;align-items:center}.topbar-right a:hover{color:var(--purple)}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.05)}
.nav-wrap{height:82px;display:flex;align-items:center;gap:28px}.brand{width:150px;flex:0 0 auto}.brand img{height:58px;object-fit:contain}.nav{display:flex;gap:28px;margin-left:auto}.nav a{font-size:14px;font-weight:700;color:#25323d;position:relative}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:linear-gradient(90deg,var(--purple),var(--green));transition:.25s}.nav a:hover{color:var(--purple)}.nav a:hover:after{right:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:13px 22px;font-weight:700;font-size:14px;transition:.25s;border:1px solid transparent;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--purple),var(--purple-2));color:#fff;box-shadow:0 10px 25px rgba(116,0,184,.24)}.btn-dark{background:#23313b;color:white}.btn-outline{border-color:#b7a9c0;color:#51495a;background:#fff}.menu-toggle{display:none;background:none;border:0;font-size:26px;color:var(--purple)}
.hero{min-height:560px;position:relative;display:grid;align-items:center;background:url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=2000&q=90') center 58%/cover no-repeat;color:#fff;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,20,26,.68),rgba(31,9,43,.31) 52%,rgba(0,0,0,.08))}.hero:after{content:"";position:absolute;right:-80px;top:-70px;width:360px;height:360px;border:1px solid rgba(255,255,255,.14);border-radius:50%}.hero-content{position:relative;z-index:2;padding:80px 0}.eyebrow{margin:0 0 8px;font-family:"Playfair Display",serif;font-size:16px;color:var(--green-deep);font-style:italic}.eyebrow.light{color:#ecffe9}.hero h1{font-family:"Playfair Display",serif;font-size:64px;line-height:1.05;margin:0 0 18px;max-width:730px}.hero-copy{max-width:560px;font-size:16px;color:rgba(255,255,255,.9);margin-bottom:28px}.hero-actions{display:flex;gap:22px;align-items:center}.play-link{display:flex;align-items:center;gap:10px;font-weight:700}.play{width:39px;height:39px;border-radius:50%;border:1px solid rgba(255,255,255,.7);display:grid;place-items:center;font-size:12px}.hero-dots{position:absolute;bottom:26px;left:50%;display:flex;gap:7px;z-index:2}.hero-dots span{width:8px;height:8px;border-radius:10px;background:rgba(255,255,255,.55)}.hero-dots .active{width:28px;background:var(--green)}
.section{padding:92px 0}.patterned{background-color:#fbf8fd;background-image:radial-gradient(circle at 10% 20%,rgba(116,0,184,.05) 0 2px,transparent 2px),radial-gradient(circle at 70% 70%,rgba(117,185,103,.06) 0 2px,transparent 2px);background-size:72px 72px}.section-heading{margin-bottom:42px}.section-heading.centered{text-align:center}.section-heading h2,.planner-copy h2,.newsletter h2{font-family:"Playfair Display",serif;font-size:38px;line-height:1.15;margin:0}.section-sub{max-width:580px;margin:12px auto 0;color:var(--muted)}
.tour-categories-section{position:relative;overflow:hidden;padding:48px 0 82px;background:#fff url("assets/travel-doodle-pattern.svg") center top/360px auto repeat}.tour-categories-section:before,.tour-categories-section:after{content:"";position:absolute;left:0;right:0;height:34px;pointer-events:none;z-index:0}.tour-categories-section:before{top:0;background:linear-gradient(#fff,rgba(255,255,255,0))}.tour-categories-section:after{bottom:0;background:linear-gradient(rgba(255,255,255,0),#fff)}.category-container{position:relative;z-index:1;max-width:980px}.category-heading{margin-bottom:30px}.category-kicker{font-family:"Montez",cursive;font-size:28px;line-height:1;margin:0 0 -2px;color:#202f35;font-weight:400;letter-spacing:.2px}.category-heading h2{font-family:"DM Sans",sans-serif;font-size:31px;line-height:1.08;font-weight:700;letter-spacing:-.7px;color:#173c45;text-shadow:0 4px 0 rgba(116,0,184,.08)}.category-grid{display:grid;grid-template-columns:repeat(5,176px);gap:25px;justify-content:center;align-items:start;padding:0}.category-card{background:transparent;padding:0;box-shadow:none;border:0;text-align:center;transition:transform .28s ease;transform-origin:center 45%}.category-card:hover{transform:translateY(-8px) rotate(0deg)}.category-photo{width:176px;height:176px;border-radius:12px;overflow:hidden;background:#eef4f5;box-shadow:0 4px 10px rgba(20,58,64,.08)}.category-card img{width:100%;height:100%;object-fit:cover;border-radius:0}.category-copy{padding:9px 0 0;text-align:center}.category-copy strong{display:block;font-size:14px;line-height:1.15;font-weight:600;color:#153d46}.category-copy span{display:block;margin-top:2px;font-size:9px;line-height:1.15;color:#68797d}.category-card-1{transform:rotate(-7deg) translateY(22px)}.category-card-2{transform:rotate(-3deg) translateY(7px)}.category-card-3{transform:rotate(0deg) translateY(0)}.category-card-4{transform:rotate(4deg) translateY(7px)}.category-card-5{transform:rotate(7deg) translateY(22px)}
/* Popular Destinations — smooth focus carousel */
#destinations{overflow:hidden}
#destinations .section-heading{margin-bottom:28px}
.destination-stack{
  height:430px;
  position:relative;
  margin-top:6px;
  isolation:isolate;
  perspective:1100px;
  touch-action:pan-y;
}
.destination-stack:before{
  content:"";
  position:absolute;
  left:50%;
  bottom:26px;
  width:min(760px,78%);
  height:64px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(27,46,57,.15),rgba(27,46,57,0) 70%);
  filter:blur(12px);
  pointer-events:none;
}
.destination-card{
  --dest-x:0px;
  --dest-scale:.84;
  --dest-blur:2.2px;
  --dest-sat:.74;
  --dest-bright:.9;
  --dest-opacity:.72;
  --dest-z:1;
  position:absolute;
  left:50%;
  top:50%;
  width:264px;
  height:300px;
  border-radius:18px;
  overflow:hidden;
  cursor:pointer;
  opacity:var(--dest-opacity);
  z-index:var(--dest-z);
  filter:blur(var(--dest-blur)) saturate(var(--dest-sat)) brightness(var(--dest-bright));
  transform:translate3d(calc(-50% + var(--dest-x)),-50%,0) scale(var(--dest-scale));
  transform-origin:center;
  box-shadow:0 20px 45px rgba(20,33,43,.16);
  transition:
    transform .72s cubic-bezier(.22,.61,.36,1),
    filter .62s ease,
    opacity .62s ease,
    width .62s cubic-bezier(.22,.61,.36,1),
    height .62s cubic-bezier(.22,.61,.36,1),
    box-shadow .62s ease;
  will-change:transform,filter,opacity;
  outline:none;
}
.destination-card img{height:100%;transform:scale(1.015);transition:transform .72s cubic-bezier(.22,.61,.36,1)}
.destination-card:after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(transparent,rgba(14,15,22,.80))}
.destination-card .overlay{position:absolute;left:17px;right:17px;bottom:16px;z-index:2;color:#fff;transition:transform .6s ease,opacity .6s ease}
.overlay span{display:block;font-weight:800;font-size:20px}.overlay small{opacity:.88}
.destination-card.is-active{
  --dest-scale:1;
  --dest-blur:0px;
  --dest-sat:1.05;
  --dest-bright:1;
  --dest-opacity:1;
  --dest-z:8;
  width:286px;
  height:350px;
  box-shadow:0 28px 65px rgba(20,33,43,.25);
  cursor:default;
}
.destination-card.is-active img{transform:scale(1)}
.destination-card.is-active .overlay{transform:translateY(-2px)}
.destination-card.is-near{
  --dest-scale:.93;
  --dest-blur:1px;
  --dest-sat:.86;
  --dest-bright:.94;
  --dest-opacity:.88;
  --dest-z:5;
  width:258px;
  height:308px;
}
.destination-card.is-far{
  --dest-scale:.84;
  --dest-blur:2px;
  --dest-sat:.72;
  --dest-bright:.89;
  --dest-opacity:.72;
  --dest-z:2;
  width:244px;
  height:284px;
}
.destination-card:focus-visible{box-shadow:0 0 0 4px rgba(116,0,184,.22),0 28px 65px rgba(20,33,43,.22)}
.destination-card:not(.is-active):hover{filter:blur(.35px) saturate(.95) brightness(.97);opacity:.96}
.destination-card.entering{opacity:0;transform:translate3d(calc(-50% + var(--dest-x)),calc(-50% + 28px),0) scale(var(--dest-scale))}
.destination-card.is-visible{transition-delay:var(--reveal-delay,0ms)}
.destination-progress{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:-8px;position:relative;z-index:10}
.destination-progress button{width:7px;height:7px;padding:0;border:0;border-radius:999px;background:#d3c7d9;cursor:pointer;transition:width .35s ease,background .35s ease,transform .35s ease}
.destination-progress button:hover{transform:scale(1.25)}
.destination-progress button.active{width:28px;background:linear-gradient(90deg,var(--purple),var(--green));transform:none}
.trip-planner{overflow:hidden}.planner-grid{display:grid;grid-template-columns:1.05fr .9fr .35fr;gap:58px;align-items:center}.photo-collage{position:relative;min-height:470px}.photo-collage img{position:absolute;border-radius:120px 120px 28px 28px;border:6px solid #fff;box-shadow:var(--shadow)}.photo-collage .p1{width:47%;height:410px;left:3%;top:30px}.photo-collage .p2{width:42%;height:210px;right:3%;top:0}.photo-collage .p3{width:42%;height:215px;right:4%;bottom:8px;border-radius:24px 24px 100px 100px}.orbit{position:absolute;border:1px dashed rgba(116,0,184,.2);border-radius:50%}.orbit-one{width:170px;height:170px;left:-35px;bottom:-15px}.orbit-two{width:110px;height:110px;right:-10px;top:120px}.planner-copy>p:not(.eyebrow){color:var(--muted)}.feature{display:flex;gap:16px;margin:23px 0}.feature-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#f1e3fb,#e8f6e3);color:var(--purple);font-weight:900;flex:0 0 auto}.feature h3{margin:0;font-size:16px}.feature p{margin:2px 0 0;color:var(--muted);font-size:14px}.traveler-figure{height:370px;position:relative}.person{font-size:118px;position:absolute;right:-5px;top:65px;filter:drop-shadow(0 12px 18px rgba(0,0,0,.15))}.case{width:72px;height:120px;border:6px solid var(--purple);border-radius:14px;position:absolute;right:8px;bottom:24px;background:linear-gradient(135deg,#f0e1fb,#fff)}
.tour-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.tour-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(30,20,38,.08);border:1px solid rgba(116,0,184,.08);transition:.3s}.tour-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.tour-card img{height:185px}.tour-body{padding:16px}.rating{font-size:12px;color:#f0a61b}.rating span{color:var(--muted);margin-left:5px}.tour-body h3{font-size:17px;margin:8px 0 4px}.tour-body p{font-size:13px;color:var(--muted);margin:0}.price{display:flex;justify-content:space-between;align-items:end;border-top:1px solid #eee;margin-top:14px;padding-top:13px}.price span{font-size:12px;color:var(--muted)}.price strong{color:var(--purple)}
.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:145px;gap:14px;align-items:stretch}.gallery-grid img{height:100%;border-radius:16px}.g1{grid-row:span 2}.g2{grid-column:span 2}.g3{grid-row:span 2}.g4{grid-row:span 2}.g5{grid-column:span 2}.g6{grid-column:span 2}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:70px;align-items:center}.stat{aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed rgba(116,0,184,.4);position:relative;background:#fff}.stat:before{content:"";position:absolute;inset:9px;border:1px dashed rgba(117,185,103,.45);border-radius:50%}.stat strong{font-size:30px;line-height:1;color:var(--ink)}.stat span{font-size:12px;color:var(--muted);margin-top:8px}.bubble-small{transform:scale(.82)}
.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.guide-card{text-align:center;background:white;border-radius:24px;padding:28px 18px;box-shadow:0 12px 28px rgba(60,30,74,.08);position:relative}.guide-card img{width:126px;height:126px;border-radius:50%;margin:0 auto 16px;border:6px solid #f5ebfb}.guide-card h3{margin:0;font-size:17px}.guide-card p{margin:3px 0 10px;font-size:13px;color:var(--muted)}.socials{color:var(--purple);letter-spacing:8px}
.testimonials{background:#fff}.testimonial-track{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:center}.quote-card{border-radius:18px;padding:28px;background:#f8f5fa;border:1px solid #eee5f4;transform:scale(.93);opacity:.74;transition:.3s}.quote-card.active{background:white;box-shadow:var(--shadow);transform:scale(1);opacity:1}.quote-stars{color:#f4a31f;font-size:13px}.quote-card p{color:#586574;min-height:92px}.client{display:flex;gap:12px;align-items:center}.client img{width:44px;height:44px;border-radius:50%}.client strong,.client span{display:block}.client span{font-size:12px;color:var(--muted)}.testimonial-dots{display:flex;gap:8px;justify-content:center;margin-top:22px}.dot{width:9px;height:9px;border:0;border-radius:50%;background:#cabbd4;cursor:pointer}.dot.active{width:26px;border-radius:8px;background:var(--purple)}.partner-row{margin-top:60px;display:grid;grid-template-columns:repeat(6,1fr);gap:15px;color:#9ca5ad;align-items:center;text-align:center;font-family:"Playfair Display",serif;font-weight:700;letter-spacing:1px}
.heading-row{display:flex;justify-content:space-between;align-items:end}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card{background:white;border-radius:17px;overflow:hidden;box-shadow:0 10px 28px rgba(50,30,65,.07)}.blog-card img{height:220px}.blog-card>div{padding:17px}.meta{font-size:11px;color:var(--purple);text-transform:uppercase;font-weight:700}.blog-card h3{font-size:17px;line-height:1.4;margin:10px 0}.blog-card a{font-size:13px;font-weight:700;color:var(--green-deep)}
/* Reference-style newsletter + footer */
.footer-width{width:min(870px,calc(100% - 40px))}
.newsletter{padding:62px 0 0;background:#fff;border:0}
.newsletter-inner{display:grid;grid-template-columns:1fr 1.18fr;gap:72px;align-items:center}
.newsletter-title h2{margin:0;font-family:"DM Sans",sans-serif;font-size:26px;line-height:1.28;letter-spacing:-.6px;font-weight:700;color:#0d4650}
.newsletter-form{display:grid;grid-template-columns:minmax(210px,1fr) 145px;gap:10px;align-items:center;background:transparent;border:0;padding:0;border-radius:0}
.newsletter-form input{width:100%;height:42px;border:1px solid #9fa9ac;border-radius:999px;outline:none;padding:0 18px;font-family:"DM Sans",sans-serif;font-size:10px;color:#36535a;background:#fff;transition:border-color .25s,box-shadow .25s}
.newsletter-form input:focus{border-color:#0b5965;box-shadow:0 0 0 3px rgba(18,124,141,.08)}
.footer-subscribe{height:42px;border:0;border-radius:999px;background:#0c5661;color:#fff;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:"DM Sans",sans-serif;font-size:10px;font-weight:700;cursor:pointer;transition:transform .25s,background .25s,box-shadow .25s;white-space:nowrap}
.footer-subscribe:hover{transform:translateY(-2px);background:#084851;box-shadow:0 8px 18px rgba(12,86,97,.18)}
.footer-subscribe svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.newsletter-form.success .footer-subscribe{background:#0a6a70}
.newsletter-divider{height:1px;background:#e6ebec;margin-top:36px}
.footer{background:#fff;color:#31535a}
.footer-grid{display:grid;grid-template-columns:1.42fr .82fr 1.08fr 1.05fr;gap:48px;padding:38px 0 64px;align-items:start}
.footer-brand img{width:128px;height:48px;object-fit:contain;object-position:left center;margin:0 0 15px}
.footer p{font-size:10.5px;line-height:1.7;color:#748186;margin:0}
.footer-brand>p{max-width:215px}
.footer h4{margin:0 0 14px;font-size:15px;line-height:1.2;font-weight:700;color:#0c4b56}
.footer-links a{display:block;position:relative;padding-left:13px;margin:9px 0;font-size:10.5px;color:#819096;transition:color .2s,transform .2s}
.footer-links a:before{content:"›";position:absolute;left:0;top:-1px;color:#87979c;font-size:14px;line-height:1}
.footer-links a:hover{color:#0b5965;transform:translateX(2px)}
.social-row{display:flex;gap:8px;margin-top:17px}
.social-row a{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e9f8fb;color:#18a9c2;font-size:9px;font-weight:700;line-height:1;transition:transform .2s,background .2s,color .2s}
.social-row a:hover{transform:translateY(-2px);background:#0c5661;color:#fff}
.address-row{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start;margin-bottom:12px}
.address-icon{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e7f8fb;color:#19b6d1}
.address-icon svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.address-row p{padding-top:1px}
.insta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.insta-grid img{width:100%;height:61px;border-radius:4px;object-fit:cover;transition:transform .25s,filter .25s}
.insta-grid img:hover{transform:translateY(-2px);filter:saturate(1.08)}
.footer-bottom{position:relative;isolation:isolate;background:url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1800&q=72') center 58%/cover no-repeat;color:#fff;font-size:9.5px;overflow:hidden}
.footer-bottom:before{content:"";position:absolute;inset:0;background:rgba(7,69,79,.87);z-index:-1}
.footer-bottom-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:7px 0}
.payment-wrap{display:flex;align-items:center;gap:12px;font-weight:600;white-space:nowrap}
.payment-badges{display:flex;align-items:center;gap:5px}
.pay-card{height:22px;min-width:36px;padding:0 7px;border-radius:3px;background:#fff;color:#14262d;display:inline-flex;align-items:center;justify-content:center;font-size:8px;line-height:1;font-style:normal;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.pay-card.visa{color:#1f3f99;font-style:italic;font-size:10px}
.pay-card.paypal{color:#175aa8;font-size:7px}
.pay-card.apple{font-size:8px}
.pay-card.mastercard{position:relative;min-width:34px;padding:0}
.pay-card.mastercard i{position:absolute;width:13px;height:13px;border-radius:50%;top:4.5px}
.pay-card.mastercard i:first-child{left:7px;background:#f04b31}.pay-card.mastercard i:last-child{right:7px;background:#f4a324;mix-blend-mode:multiply}
@media(max-width:1000px){.reference-tours:before{height:338px}.reference-tours:after{top:300px;height:42px}.nav{display:none;position:absolute;left:20px;right:20px;top:92px;background:#fff;padding:22px;border-radius:18px;box-shadow:var(--shadow);flex-direction:column}.nav.open{display:flex}.menu-toggle{display:block;margin-left:auto}.nav-cta{display:none}.category-grid{grid-template-columns:repeat(5,160px);gap:20px}.category-photo{width:160px;height:160px}.destination-stack{height:410px}.destination-card{width:238px;height:282px}.destination-card.is-active{width:260px;height:330px}.destination-card.is-near{width:232px;height:292px}.destination-card.is-far{width:218px;height:268px}.planner-grid{grid-template-columns:1fr 1fr}.traveler-figure{display:none}.tour-grid{grid-template-columns:repeat(2,1fr)}.guide-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.2fr 1fr}.gallery-grid{grid-template-columns:repeat(3,1fr)}.stats-row{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.category-grid{grid-template-columns:repeat(3,1fr);gap:28px 20px;max-width:650px;margin:auto}.category-card{transform:none!important}.category-photo{width:100%;height:190px}.category-container{max-width:760px}}
@media(max-width:700px){.reference-tours{padding:56px 0 62px}.reference-tours:before{height:285px;background-size:285px auto}.reference-tours:after{top:252px;height:34px}.container{width:min(100% - 28px,1160px)}.topbar-right{display:none}.topbar-left{width:100%;justify-content:space-between;gap:8px;font-size:11px}.header .nav-wrap{height:72px}.brand{width:125px}.brand img{height:48px}.hero{min-height:540px}.hero h1{font-size:44px}.hero-copy{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column}.section{padding:68px 0}.section-heading h2,.planner-copy h2,.newsletter h2{font-size:31px}.tour-categories-section{padding:52px 0 62px;background-size:300px auto}.category-heading{margin-bottom:26px}.category-kicker{font-size:25px}.category-heading h2{font-size:30px}.category-grid{grid-template-columns:repeat(2,1fr);gap:24px 16px;padding:0 2px}.category-card{transform:none!important}.category-photo{width:100%;height:165px}.category-copy strong{font-size:14px}.category-copy span{font-size:10px}.destination-stack{height:372px;margin-inline:-14px}.destination-card{width:210px;height:252px;border-radius:15px}.destination-card.is-active{width:226px;height:292px}.destination-card.is-near{width:202px;height:258px}.destination-card.is-far{width:188px;height:238px}.destination-card .overlay{left:14px;right:14px;bottom:13px}.overlay span{font-size:17px}.destination-progress{margin-top:-16px}.planner-grid{grid-template-columns:1fr;gap:28px}.photo-collage{min-height:400px}.photo-collage .p1{height:350px}.photo-collage .p2,.photo-collage .p3{height:180px}.tour-grid,.guide-grid,.blog-grid,.testimonial-track{grid-template-columns:1fr}.quote-card{transform:none;opacity:1}.quote-card:not(.active){display:none}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:130px}.g2,.g5,.g6{grid-column:auto}.stats-row{grid-template-columns:1fr 1fr;gap:12px}.partner-row{grid-template-columns:repeat(3,1fr);row-gap:26px}.heading-row{display:block}.heading-row .btn{margin-top:18px}.newsletter-inner{grid-template-columns:1fr}.newsletter-form{border-radius:18px;flex-direction:column;padding:9px}.newsletter-form input{padding:14px 13px}.newsletter-form .btn{width:100%}.footer-grid{grid-template-columns:1fr}.footer-bottom .container{flex-direction:column;gap:6px;text-align:center}.tour-card img{height:220px}}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.destination-card,.destination-card img,.destination-card .overlay,.destination-progress button{transition:none!important}.destination-card.entering{opacity:var(--dest-opacity);transform:translate3d(calc(-50% + var(--dest-x)),-50%,0) scale(var(--dest-scale))}}

/* Reference-matched Popular Tour + Recent Gallery section */
.reference-tours{
  position:relative;
  overflow:hidden;
  padding:68px 0 80px;
  background:#fff;
}
.reference-tours:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:355px;
  background:#f2fbfc url("assets/travel-doodle-pattern.svg") center top/330px auto repeat;
  pointer-events:none;
  z-index:0;
}
.reference-tours:after{
  content:"";
  position:absolute;
  left:0;right:0;top:315px;
  height:48px;
  background:linear-gradient(rgba(242,251,252,.92),#fff);
  pointer-events:none;
  z-index:1;
}
.showcase-container{width:min(920px,calc(100% - 40px));position:relative;z-index:2}
.reference-heading{margin-bottom:28px}
.reference-heading .eyebrow{
  margin:0 0 -2px;font-family:"Montez",cursive;font-style:normal;
  color:#163f47;font-size:23px;line-height:1;font-weight:400;
}
.reference-heading h2{
  font-family:"DM Sans",sans-serif;font-size:31px;line-height:1.08;
  letter-spacing:-.8px;font-weight:700;color:#0f5360;
}
.reference-heading .section-sub{margin-top:7px;max-width:520px;color:#84969b;font-size:11px;line-height:1.55}
.reference-tour-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.reference-tour-card{
  border:1px solid #cce3e7;border-radius:10px;background:#fff;overflow:hidden;
  box-shadow:0 5px 18px rgba(29,92,101,.035);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.reference-tour-card:hover{transform:translateY(-7px);box-shadow:0 16px 32px rgba(27,91,101,.11);border-color:#9fd5de}
.reference-tour-card>img{height:165px;object-fit:cover}
.reference-tour-card .tour-body{padding:12px 12px 11px}
.reference-tour-card h3{margin:0 0 4px;color:#183f46;font-size:11px;line-height:1.25;font-weight:700}
.reference-tour-card .rating{display:flex;align-items:center;gap:5px;color:#ff6138;font-size:9px;letter-spacing:.2px;white-space:nowrap}
.reference-tour-card .rating span{color:#677a7f;font-size:8px;letter-spacing:0}
.tour-price{display:flex;align-items:baseline;gap:3px;margin:8px 0 11px}
.tour-price strong{font-size:14px;color:#163f47}
.tour-price span{font-size:7.5px;color:#8a999d}
.tour-meta{display:flex;align-items:center;justify-content:space-between;padding-top:8px;border-top:1px solid #edf2f3;color:#6e858b;font-size:8px}
.tour-meta a{display:inline-flex;align-items:center;gap:7px;border:1px solid #c7dde1;border-radius:999px;padding:5px 8px;color:#244e56;background:#fff;font-size:7.5px;font-weight:600;transition:.25s}
.tour-meta a:hover{background:#ecf9fb;border-color:#8ecfda;transform:translateX(1px)}
.tour-meta b{font-size:10px;font-weight:500}

.reference-gallery-section{
  position:relative;overflow:hidden;padding:48px 0 56px;background:#fff;min-height:760px;
}
.gallery-heading{margin-bottom:22px}
.reference-gallery-grid{
  width:min(790px,100%);margin:0 auto;display:grid;
  grid-template-columns:1.05fr 1.05fr 1.05fr 1.05fr 1.05fr;
  grid-template-rows:104px 104px;gap:8px;align-items:stretch;
}
.reference-gallery-grid img{
  width:100%;height:100%;border-radius:11px;object-fit:cover;
  box-shadow:0 4px 10px rgba(14,83,96,.08);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease,filter .45s ease;
}
.reference-gallery-grid img:hover{transform:translateY(-5px) scale(1.015);box-shadow:0 12px 24px rgba(14,83,96,.14);filter:saturate(1.05)}
.reference-gallery-grid .ga{grid-column:1;grid-row:1 / span 2;height:124px;align-self:center}
.reference-gallery-grid .gb{grid-column:2;grid-row:1}
.reference-gallery-grid .gc{grid-column:2;grid-row:2}
.reference-gallery-grid .gd{grid-column:3;grid-row:1 / span 2}
.reference-gallery-grid .ge{grid-column:4;grid-row:1}
.reference-gallery-grid .gf{grid-column:4;grid-row:2}
.reference-gallery-grid .gg{grid-column:5;grid-row:1 / span 2;height:124px;align-self:center}

.gallery-swoosh{position:absolute;pointer-events:none;border:1px solid rgba(45,186,216,.22);border-radius:50%;z-index:0}
.gallery-swoosh-top{width:470px;height:140px;right:-150px;top:10px;transform:rotate(-22deg)}
.gallery-swoosh-top:after{content:"";position:absolute;width:140px;height:140px;border:1px solid rgba(45,186,216,.22);border-radius:50%;left:-86px;top:25px}
.gallery-doodle{position:absolute;color:#28b4d3;opacity:.8;font-size:25px;line-height:1;z-index:1;font-family:Arial,sans-serif}
.doodle-plane{left:2%;top:185px;transform:rotate(-18deg);font-size:22px}
.doodle-anchor{right:7%;bottom:195px;font-size:25px;transform:rotate(10deg)}
.doodle-palm{left:7%;bottom:15px;font-size:34px;transform:rotate(-10deg)}

.reference-stats{
  width:min(760px,100%);height:255px;margin:48px auto 0;position:relative;display:block;
}
.reference-stats .stat{
  position:absolute;aspect-ratio:1;width:136px;border:1px solid rgba(37,183,213,.55);
  background:rgba(237,249,251,.86);border-radius:50%;transform:none;
  display:flex;align-items:center;justify-content:center;flex-direction:column;
  box-shadow:none;color:#183f46;
}
.reference-stats .stat:before{content:"";position:absolute;inset:-9px;border:1px solid rgba(37,183,213,.42);border-radius:50%}
.reference-stats .stat:after{content:"";position:absolute;inset:13px;border-radius:50%;background:rgba(222,245,249,.62);z-index:-1}
.reference-stats .stat i{position:absolute;width:8px;height:8px;border-radius:50%;background:#36bdd9;box-shadow:0 0 0 3px #fff;right:-6px;top:20px}
.reference-stats .stat strong{font-size:24px;line-height:1;font-family:"DM Sans",sans-serif;color:#111c20;font-weight:700}
.reference-stats .stat span{margin-top:7px;font-size:9px;line-height:1.2;color:#42575c}
.reference-stats .stat-1{left:4%;top:80px;width:128px}
.reference-stats .stat-1 i{right:-2px;top:auto;bottom:17px}
.reference-stats .stat-2{left:29%;top:10px;width:142px}
.reference-stats .stat-3{left:54%;top:82px;width:132px}
.reference-stats .stat-3 i{right:-3px;top:auto;bottom:17px}
.reference-stats .stat-4{right:3%;top:6px;width:142px}

.reveal-on-scroll{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}
.reveal-on-scroll.in-view{opacity:1;transform:translateY(0)}
.reference-tour-card.reveal-on-scroll:nth-child(2){transition-delay:.08s}
.reference-tour-card.reveal-on-scroll:nth-child(3){transition-delay:.16s}
.reference-tour-card.reveal-on-scroll:nth-child(4){transition-delay:.24s}
.reference-stats .reveal-on-scroll:nth-child(2){transition-delay:.08s}
.reference-stats .reveal-on-scroll:nth-child(3){transition-delay:.16s}
.reference-stats .reveal-on-scroll:nth-child(4){transition-delay:.24s}

@media(max-width:1000px){
  .showcase-container{width:min(900px,calc(100% - 34px))}
  .reference-tour-grid{gap:12px}
  .reference-gallery-grid{width:min(760px,100%)}
}
@media(max-width:760px){
  .reference-tours{padding:58px 0 70px}
  .reference-heading .eyebrow{font-size:22px}
  .reference-heading h2{font-size:29px}
  .reference-tour-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .reference-tour-card>img{height:165px}
  .reference-gallery-section{padding-top:52px;min-height:auto;padding-bottom:70px}
  .reference-gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,132px);gap:8px}
  .reference-gallery-grid .ga,.reference-gallery-grid .gb,.reference-gallery-grid .gc,.reference-gallery-grid .gd,.reference-gallery-grid .ge,.reference-gallery-grid .gf,.reference-gallery-grid .gg{grid-column:auto;grid-row:auto;height:100%;align-self:stretch}
  .reference-gallery-grid .gd{grid-row:span 2}
  .reference-stats{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:28px 20px;margin-top:60px;padding:0 14px}
  .reference-stats .stat,.reference-stats .stat-1,.reference-stats .stat-2,.reference-stats .stat-3,.reference-stats .stat-4{position:relative;left:auto;right:auto;top:auto;width:min(138px,80%);justify-self:center}
  .gallery-doodle{display:none}
}
@media(max-width:460px){
  .showcase-container{width:min(100% - 26px,920px)}
  .reference-tour-grid{grid-template-columns:1fr 1fr;gap:10px}
  .reference-tour-card>img{height:126px}
  .reference-tour-card .tour-body{padding:9px}
  .reference-tour-card h3{font-size:10px}
  .tour-price strong{font-size:12px}
  .tour-meta{gap:6px}
  .tour-meta a{padding:4px 6px}
  .reference-gallery-grid{grid-template-rows:repeat(4,112px)}
  .reference-stats{gap:30px 8px;padding:0}
  .reference-stats .stat,.reference-stats .stat-1,.reference-stats .stat-2,.reference-stats .stat-3,.reference-stats .stat-4{width:min(124px,84%)}
}
@media(prefers-reduced-motion:reduce){.reveal-on-scroll{opacity:1;transform:none;transition:none}}
.reference-gallery-grid .reveal-on-scroll:nth-child(2){transition-delay:.05s}
.reference-gallery-grid .reveal-on-scroll:nth-child(3){transition-delay:.10s}
.reference-gallery-grid .reveal-on-scroll:nth-child(4){transition-delay:.15s}
.reference-gallery-grid .reveal-on-scroll:nth-child(5){transition-delay:.20s}
.reference-gallery-grid .reveal-on-scroll:nth-child(6){transition-delay:.25s}
.reference-gallery-grid .reveal-on-scroll:nth-child(7){transition-delay:.30s}

/* Footer responsive alignment */
@media(max-width:1000px){
  .footer-width{width:min(870px,calc(100% - 36px))}
  .newsletter-inner{gap:42px}
  .footer-grid{grid-template-columns:1.2fr .8fr 1fr 1fr;gap:28px}
}
@media(max-width:760px){
  .newsletter{padding-top:48px}
  .newsletter-inner{grid-template-columns:1fr;gap:22px}
  .newsletter-title h2{font-size:25px}
  .newsletter-form{grid-template-columns:1fr 140px}
  .newsletter-divider{margin-top:28px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px 26px;padding:34px 0 48px}
  .footer-brand>p{max-width:280px}
  .footer-bottom-inner{flex-direction:column;justify-content:center;text-align:center;padding:11px 0;gap:7px}
}
@media(max-width:520px){
  .footer-width{width:min(100% - 28px,870px)}
  .newsletter-form{grid-template-columns:1fr}
  .footer-subscribe{width:100%}
  .footer-grid{grid-template-columns:1fr;gap:30px}
  .insta-grid{max-width:260px}
  .payment-wrap{flex-direction:column;gap:5px}
}


/* ==========================================================
   Reference-style top header + landing page hero slider
   ========================================================== */
.reference-topbar{
  background:#fff;
  border-bottom:1px solid #e6ecee;
  color:#142d34;
  font-size:11px;
}
.reference-topbar-inner{
  width:100%;max-width:none;margin:0;padding:0 42px;
  height:30px;
}
.reference-topbar .topbar-left,
.reference-topbar .reference-topbar-right{gap:12px}
.topbar-item{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.topbar-icon{font-size:13px;color:#084d59;font-weight:500}
.topbar-separator{display:inline-block;width:1px;height:13px;background:#b8c2c5}
.mini-divider{color:#a6b0b3}
.reference-topbar-right a{color:#182e34;font-weight:500;white-space:nowrap}
.reference-topbar-right a:hover{color:#0aa7c4}
.language-link{min-width:90px;display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid #dfe6e8;border-radius:999px;padding:4px 12px}
.user-glyph{font-size:12px}

.reference-header{
  position:sticky;top:0;z-index:80;
  height:88px;
  background:#fff;
  border-bottom:1px solid rgba(14,55,64,.06);
  backdrop-filter:none;
  box-shadow:none;
}
.reference-nav-wrap{
  width:100%;max-width:none;margin:0;padding:0 45px 0 0;
  height:88px;gap:0;position:relative;
}
.reference-brand{
  width:195px;height:88px;flex:0 0 195px;
  display:flex;align-items:center;justify-content:center;
  background:#0ba8c7;
  border-radius:0 0 48px 0;
  position:relative;z-index:3;
  overflow:hidden;
}
.reference-brand:after{
  content:"";position:absolute;right:-20px;bottom:-28px;width:65px;height:65px;
  border-radius:50%;background:rgba(255,255,255,.08)
}
.reference-brand img{
  width:128px;height:auto;max-height:53px;object-fit:contain;position:relative;z-index:2;
}
.reference-nav{
  margin-left:30px;margin-right:auto;gap:31px;height:100%;align-items:center;
}
.reference-nav a{
  height:100%;display:flex;align-items:center;gap:4px;
  font-size:11px;font-weight:500;color:#182a30;
}
.reference-nav a:after{
  left:0;right:100%;bottom:17px;height:1px;background:#1b2f35;
}
.reference-nav a:hover,.reference-nav a.active{color:#0b242b}
.reference-nav a:hover:after,.reference-nav a.active:after{right:0}
.nav-chevron{font-size:9px;transform:translateY(-1px)}
.nav-accent-dot{
  width:10px;height:10px;border-radius:50%;background:#06a7c6;
  margin:0 48px 0 10px;flex:0 0 auto;
}
.reference-book-btn{
  height:44px;min-width:113px;padding:0 21px;
  display:inline-flex;align-items:center;justify-content:center;gap:11px;
  border-radius:999px;background:#074b57;color:#fff;font-size:11px;font-weight:600;
  transition:transform .25s ease,background .25s ease,box-shadow .25s ease;
}
.reference-book-btn:hover{transform:translateY(-2px);background:#086071;box-shadow:0 10px 20px rgba(7,75,87,.15)}
.reference-book-btn span{font-size:18px;font-weight:300;line-height:1}
.reference-menu-toggle{margin-left:auto;margin-right:12px}

.reference-hero{
  min-height:485px;height:calc(100vh - 118px);max-height:640px;
  position:relative;display:block;background:#0d333b;overflow:hidden;color:#fff;
}
.reference-hero:before,.reference-hero:after{display:none}
.hero-slider,.hero-slide{position:absolute;inset:0}
.hero-slide{
  background-image:var(--hero-image);background-position:center 54%;background-size:cover;background-repeat:no-repeat;
  opacity:0;visibility:hidden;transform:scale(1.035);
  transition:opacity .9s ease,visibility .9s ease,transform 6.2s ease;
}
.hero-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}
/* Hero image art direction — tailored for travel + flight booking */
.hero-slide[data-slide="0"]{background-position:center 58%}
.hero-slide[data-slide="1"]{background-position:center 52%}
.hero-slide[data-slide="2"]{background-position:center 48%}

.hero-slide-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,24,30,.67) 0%,rgba(0,30,38,.45) 42%,rgba(0,31,39,.12) 72%,rgba(0,24,30,.22) 100%);
}
.reference-hero-content{
  height:100%;padding:0 0 6px 142px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  position:relative;z-index:3;
}
.hero-slide .reference-hero-content>*{
  opacity:0;transform:translateY(22px);
}
.hero-slide.is-active .reference-hero-content>*{
  opacity:1;transform:translateY(0);
  transition:opacity .72s ease,transform .72s cubic-bezier(.2,.75,.25,1);
}
.hero-slide.is-active .reference-hero-content>*:nth-child(2){transition-delay:.08s}
.hero-slide.is-active .reference-hero-content>*:nth-child(3){transition-delay:.15s}
.hero-slide.is-active .reference-hero-content>*:nth-child(4){transition-delay:.22s}
.hero-script{
  margin:0 0 7px;font-family:"Montez",cursive;font-size:28px;line-height:1.1;color:#fff;font-weight:400;
}
.reference-hero h1{
  margin:0 0 17px;font-family:"DM Sans",sans-serif;font-size:58px;line-height:1.03;letter-spacing:-2.6px;font-weight:500;color:#fff;
  max-width:620px;text-shadow:0 2px 16px rgba(0,0,0,.1);
}
.reference-hero h1 strong{font-weight:800}
.reference-hero .hero-copy{max-width:545px;margin:0 0 28px;font-size:14px;line-height:1.65;color:rgba(255,255,255,.83)}
.reference-hero-actions{display:flex;align-items:center;gap:10px}
.hero-primary-btn,.hero-outline-btn{
  min-width:132px;height:43px;padding:0 20px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-size:11px;font-weight:600;color:#fff;transition:.3s ease;
}
.hero-primary-btn{background:#06a9cc;border:1px solid #06a9cc}
.hero-primary-btn:hover{background:#0795b3;border-color:#0795b3;transform:translateY(-2px)}
.hero-outline-btn{background:rgba(0,0,0,.06);border:1px solid rgba(255,255,255,.8);min-width:127px}
.hero-outline-btn:hover{background:#fff;color:#083c46;transform:translateY(-2px)}
.hero-primary-btn span,.hero-outline-btn span{font-size:18px;font-weight:300}

.hero-vertical-nav{
  position:absolute;right:46px;top:50%;z-index:8;transform:translateY(-50%);
  display:flex;flex-direction:column;align-items:center;gap:13px;
}
.hero-arrow{
  width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;
  font-size:22px;font-weight:300;color:#fff;background:rgba(221,229,219,.34);
  backdrop-filter:blur(5px);cursor:pointer;transition:.28s ease;
}
.hero-arrow:hover{background:rgba(7,167,199,.86);transform:scale(1.06)}
.hero-rail{position:relative;width:1px;height:62px;background:rgba(255,255,255,.58);overflow:visible}
.hero-rail-progress{
  position:absolute;left:-1px;top:0;width:3px;height:33.333%;border-radius:4px;background:#05afd1;
  transition:transform .65s cubic-bezier(.2,.75,.25,1)
}
.hero-slide-count{font-size:9px;letter-spacing:.5px;color:#fff;display:flex;gap:3px;align-items:center}
.hero-slide-count .current{font-size:10px;font-weight:700}.hero-slide-count small{font-size:8px;opacity:.7}
.hero-bottom-curve{
  position:absolute;z-index:7;left:15%;right:15%;bottom:-15px;height:27px;
  background:#fff;border-radius:14px 14px 0 0;border:1px solid rgba(5,169,204,.35);border-bottom:0;
}

@media(max-width:1180px){
  .reference-topbar-inner{padding:0 24px}
  .reference-nav-wrap{padding-right:24px}
  .reference-brand{width:170px;flex-basis:170px}
  .reference-nav{gap:21px;margin-left:24px}
  .nav-accent-dot{margin-right:25px}
  .reference-hero-content{padding-left:86px}
  .reference-hero h1{font-size:54px}
}
@media(max-width:1000px){
  .reference-topbar-right .mini-divider,.reference-topbar-right a:not(.language-link){display:none}
  .reference-header{height:78px}
  .reference-nav-wrap{height:78px;padding-right:18px}
  .reference-brand{height:78px;width:165px;flex-basis:165px;border-radius:0 0 40px 0}
  .reference-brand img{width:112px}
  .reference-nav{top:84px;left:18px;right:18px;height:auto;margin:0;padding:18px 24px;gap:0;align-items:stretch;border-radius:14px}
  .reference-nav a{height:auto;padding:10px 0;font-size:13px}
  .reference-nav a:after{bottom:3px}
  .nav-accent-dot{display:none}
  .reference-menu-toggle{display:block;border:0;background:#f0f7f8;color:#0a4d59;border-radius:50%;width:42px;height:42px;font-size:19px}
  .reference-book-btn{min-width:108px}
  .reference-hero{height:570px;max-height:none}
  .reference-hero-content{padding-left:56px;padding-right:120px}
  .reference-hero h1{font-size:51px}
}
@media(max-width:700px){
  .reference-topbar-inner{padding:0 14px;height:32px}
  .reference-topbar .topbar-left{justify-content:flex-start;overflow:hidden}
  .reference-topbar .topbar-left .topbar-separator,.reference-topbar .topbar-left .topbar-item:nth-child(3){display:none}
  .reference-topbar-right{margin-left:auto}.reference-topbar-right .language-link{min-width:auto;padding:4px 10px}
  .reference-header{height:70px}
  .reference-nav-wrap{height:70px}
  .reference-brand{height:70px;width:145px;flex-basis:145px;border-radius:0 0 35px 0}
  .reference-brand img{width:100px;max-height:42px}
  .reference-book-btn{display:none}
  .reference-hero{height:560px;min-height:560px}
  .reference-hero-content{padding:0 58px 12px 24px}
  .hero-script{font-size:23px}
  .reference-hero h1{font-size:42px;letter-spacing:-1.8px}
  .reference-hero .hero-copy{font-size:13px;line-height:1.55;margin-bottom:23px}
  .reference-hero-actions{gap:8px;flex-wrap:wrap}
  .hero-primary-btn,.hero-outline-btn{height:41px;padding:0 16px;min-width:119px}
  .hero-vertical-nav{right:12px}
  .hero-arrow{width:38px;height:38px;font-size:19px}
  .hero-rail{height:48px}
  .hero-bottom-curve{left:10%;right:10%}
}
@media(max-width:430px){
  .reference-topbar-right{display:none}
  .reference-hero-content{padding-left:20px;padding-right:42px}
  .reference-hero h1{font-size:36px}
  .reference-hero .hero-copy{display:none}
  .hero-script{font-size:21px}
  .hero-primary-btn,.hero-outline-btn{font-size:10px;min-width:112px}
  .hero-vertical-nav{right:8px}
}
@media(prefers-reduced-motion:reduce){
  .hero-slide,.hero-slide .reference-hero-content>*,.hero-rail-progress{transition:none!important}
}


/* =========================
   Instagram updates section
   Reference-inspired editorial layout
   ========================= */
.social-updates-section{
  position:relative;
  overflow:hidden;
  padding:118px 0 112px;
  background:#fcf8fc;
  color:#2b0b2f;
}
.social-updates-inner{width:min(1180px,calc(100% - 44px))}
.social-updates-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:36px;
  margin:0 0 48px;
}
.social-updates-kicker{
  margin:0 0 26px;
  color:#b100bb;
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:3.2px;
}
.social-updates-head h2{
  margin:0;
  font-family:"DM Sans",sans-serif;
  font-size:64px;
  line-height:.99;
  letter-spacing:-3.5px;
  font-weight:400;
  color:#2b0b2f;
}
.social-updates-head h2 em{
  display:inline-block;
  font-family:"Playfair Display",serif;
  font-style:italic;
  font-weight:600;
  color:#b100bb;
  letter-spacing:-2px;
}
.instagram-handle{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0 10px 7px 0;
  color:#b100bb;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}
.instagram-handle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.instagram-reel-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.instagram-reel{
  position:relative;
  display:block;
  height:365px;
  overflow:hidden;
  border-radius:22px;
  background:#e9e3ea;
  isolation:isolate;
  box-shadow:0 10px 30px rgba(47,12,51,.06);
}
.instagram-reel img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .65s cubic-bezier(.2,.75,.2,1),filter .45s ease;
}
.instagram-reel:hover img{transform:scale(1.045);filter:saturate(1.06)}
.reel-shade{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,transparent 54%,rgba(28,5,31,.58) 100%);
  opacity:.5;transition:opacity .35s ease;
}
.instagram-reel:hover .reel-shade{opacity:.75}
.reel-icon{
  position:absolute;right:18px;top:18px;z-index:2;
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  color:#fff;font-size:20px;
  border:1px solid rgba(255,255,255,.7);
  background:rgba(21,18,22,.28);
  backdrop-filter:blur(7px);
}
.reel-caption{
  position:absolute;left:20px;right:20px;bottom:17px;z-index:2;
  color:#fff;font-size:12px;font-weight:600;line-height:1.35;
  opacity:0;transform:translateY(8px);transition:.35s ease;
}
.instagram-reel:hover .reel-caption{opacity:1;transform:translateY(0)}
.instagram-reel-grid .reveal-on-scroll:nth-child(2){transition-delay:.06s}
.instagram-reel-grid .reveal-on-scroll:nth-child(3){transition-delay:.12s}
.instagram-reel-grid .reveal-on-scroll:nth-child(4){transition-delay:.18s}

/* =========================
   Google reviews section
   ========================= */
.google-reviews-section{
  position:relative;
  overflow:hidden;
  padding:102px 0 108px;
  background:#fbf8f0;
  color:#121212;
}
.google-reviews-layout{
  width:min(1480px,calc(100% - 52px));
  display:grid;
  grid-template-columns:390px minmax(0,1fr);
  gap:48px;
  align-items:center;
  position:relative;
  z-index:2;
}
.review-summary{
  position:relative;
  min-height:545px;
  padding:48px 42px 42px;
  overflow:hidden;
  border-radius:22px;
  background:#111;
  color:#fff;
  box-shadow:0 18px 45px rgba(20,15,7,.11);
}
.summary-rings{
  position:absolute;right:-95px;top:-90px;width:250px;height:250px;border-radius:50%;
  border:1px solid rgba(210,160,50,.32);
  box-shadow:0 0 0 38px rgba(211,162,53,.035),0 0 0 78px rgba(211,162,53,.025);
}
.review-summary-kicker,.reviews-kicker{
  margin:0 0 22px;color:#d5a532;font-size:11px;line-height:1;font-weight:700;letter-spacing:2.6px;
}
.review-summary h2{
  margin:0;
  font-family:"DM Sans",sans-serif;
  font-size:46px;line-height:1.05;letter-spacing:-2.2px;font-weight:400;
}
.rating-lockup{display:flex;align-items:center;gap:15px;margin-top:48px}
.google-mark{
  width:37px;height:37px;border-radius:50%;display:grid;place-items:center;
  color:#fff;font-weight:800;font-family:Arial,sans-serif;
  background:conic-gradient(#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0);
  box-shadow:inset 0 0 0 8px rgba(255,255,255,.1);
}
.rating-lockup>strong{font-family:"Playfair Display",serif;font-size:55px;line-height:1;font-weight:600;letter-spacing:-2px}
.rating-lockup>div{display:flex;flex-direction:column;gap:3px}
.gold-stars{display:block;color:#d9a323;font-size:12px;letter-spacing:1.5px;white-space:nowrap}
.rating-lockup small{color:#aaa;font-size:9px;white-space:nowrap}
.verified-line{display:flex;align-items:center;gap:9px;margin:19px 0 0;color:#9f9f9f;font-size:9px}
.verified-line span{width:10px;height:10px;border-radius:50%;background:#13b86a;box-shadow:0 0 0 5px rgba(19,184,106,.13)}
.review-summary-actions{display:flex;gap:9px;margin-top:30px}
.review-btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:45px;padding:0 17px;border-radius:9px;font-size:11px;font-weight:700;transition:.28s ease}
.review-btn:hover{transform:translateY(-2px)}
.review-btn-light{background:#fff;color:#171717}.review-btn-gold{background:#d9aa37;color:#fff}
.summary-quote{position:absolute;right:42px;bottom:35px;color:#d8aa37;font:700 58px/1 Georgia,serif;opacity:.42}
.reviews-content{min-width:0;padding-top:2px}
.reviews-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:26px}
.reviews-kicker{margin-bottom:20px}
.reviews-heading-row h2{margin:0;font:400 29px/1.1 "DM Sans",sans-serif;letter-spacing:-1.4px}
.review-controls{display:flex;align-items:center;gap:10px;padding-right:4px}
.review-count{margin-right:8px;color:#a38648;font-size:9px;letter-spacing:1.4px;white-space:nowrap}
.review-count b{font-weight:500}
.review-arrow{width:43px;height:43px;border:1px solid #dfc992;border-radius:50%;background:#fff;color:#222;font-size:19px;cursor:pointer;transition:.25s ease}
.review-arrow:hover{background:#111;color:#fff;border-color:#111}
.review-slider-viewport{overflow:hidden;width:100%;touch-action:pan-y}
.review-slider-track{
  display:flex;
  gap:16px;
  transition:transform .58s cubic-bezier(.22,.72,.2,1);
  will-change:transform;
}
.google-review-card{
  flex:0 0 calc((100% - 32px)/3);
  min-height:278px;
  border:1px solid #e4d3a8;
  border-radius:15px;
  background:#fff;
  padding:22px 21px 18px;
  display:flex;
  flex-direction:column;
  box-shadow:0 11px 25px rgba(87,66,22,.035);
}
.google-review-top{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center}
.review-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#111;color:#fff;font-size:11px;font-weight:700}
.google-review-top>div{min-width:0}
.google-review-top strong{display:block;font-size:10px;line-height:1.25;font-weight:600}
.google-review-top .gold-stars{font-size:9px;margin-top:3px}
.google-mark.mini{width:24px;height:24px;font-size:9px}
.google-review-card>p{margin:27px 0 28px;color:#424242;font-size:11px;line-height:1.7}
.google-review-foot{display:flex;justify-content:space-between;align-items:end;margin-top:auto;color:#999;font-size:8px}
.google-review-foot b{color:#d6a52c;font:700 28px/1 Georgia,serif}
.review-orbit{position:absolute;border-radius:50%;pointer-events:none}
.review-orbit-a{width:72px;height:72px;left:-36px;top:20px;border:1px solid rgba(205,160,56,.55)}
.review-orbit-a:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:#d0a039;right:13px;top:15px}
.review-orbit-b{width:210px;height:210px;right:-105px;top:-80px;background:radial-gradient(circle,rgba(211,170,78,.06),transparent 68%)}

@media(max-width:1180px){
  .social-updates-head h2{font-size:55px}
  .instagram-reel{height:325px}
  .google-reviews-layout{grid-template-columns:350px minmax(0,1fr);gap:30px}
  .review-summary{padding:42px 32px;min-height:510px}
  .review-summary h2{font-size:40px}
  .google-review-card{flex-basis:calc((100% - 16px)/2)}
}
@media(max-width:820px){
  .social-updates-section{padding:82px 0}
  .social-updates-head{align-items:flex-start;flex-direction:column;margin-bottom:32px}
  .social-updates-head h2{font-size:46px;letter-spacing:-2.4px}
  .instagram-handle{margin:0}
  .instagram-reel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .instagram-reel{height:390px}
  .google-reviews-section{padding:74px 0 80px}
  .google-reviews-layout{grid-template-columns:1fr;width:min(720px,calc(100% - 34px))}
  .review-summary{min-height:auto;padding:42px 36px}
  .review-summary h2 br{display:none}
  .review-summary h2{max-width:570px}
  .rating-lockup{margin-top:34px}
  .reviews-content{padding-top:18px}
}
@media(max-width:560px){
  .social-updates-inner{width:min(100% - 28px,1180px)}
  .social-updates-section{padding:68px 0}
  .social-updates-kicker{font-size:10px;letter-spacing:2.2px;margin-bottom:18px}
  .social-updates-head h2{font-size:39px;letter-spacing:-1.9px}
  .instagram-reel-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none}
  .instagram-reel-grid::-webkit-scrollbar{display:none}
  .instagram-reel{flex:0 0 78%;height:390px;scroll-snap-align:start}
  .review-summary{padding:34px 25px;border-radius:18px}
  .review-summary h2{font-size:36px}
  .rating-lockup{gap:11px}
  .rating-lockup>strong{font-size:48px}
  .review-summary-actions{flex-direction:column;align-items:stretch}
  .review-btn{width:100%}
  .reviews-heading-row{align-items:flex-start;flex-direction:column}
  .review-controls{width:100%;justify-content:flex-end}
  .google-review-card{flex-basis:100%;min-height:265px}
}

/* ==========================================================
   Unified boxed layout / full-width section backgrounds
   Keeps one alignment line from header through footer.
   ========================================================== */
:root{
  --site-max:1180px;
  --site-gutter:32px;
}

/* Every section may keep its own full-bleed background, while its content
   stays inside one consistent centered site frame. */
.container,
.reference-topbar-inner,
.reference-nav-wrap,
.category-container,
.showcase-container,
.social-updates-inner,
.google-reviews-layout,
.footer-width{
  width:min(var(--site-max),calc(100% - (var(--site-gutter) * 2)));
  max-width:var(--site-max);
  margin-left:auto;
  margin-right:auto;
}

/* Header alignment */
.reference-topbar-inner{
  padding-left:0;
  padding-right:0;
}
.reference-nav-wrap{
  padding-left:0;
  padding-right:0;
}
.reference-brand{
  border-radius:0 0 48px 0;
}
.reference-nav{
  margin-left:30px;
}

/* Hero remains full width; only the copy and controls follow the site frame. */
.reference-hero-content{
  width:min(var(--site-max),calc(100% - (var(--site-gutter) * 2)));
  max-width:var(--site-max);
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:92px;
}
.hero-vertical-nav{
  right:max(var(--site-gutter),calc((100vw - var(--site-max))/2));
}
.hero-bottom-curve{
  left:50%;
  right:auto;
  width:min(var(--site-max),calc(100% - (var(--site-gutter) * 2)));
  transform:translateX(-50%);
}

/* Remove older narrower section frames so all major section edges line up. */
.category-container{max-width:var(--site-max)}
.showcase-container{position:relative;z-index:2}
.reference-gallery-grid{width:100%}
.social-updates-inner{max-width:var(--site-max)}
.google-reviews-layout{max-width:var(--site-max)}
.footer-width{max-width:var(--site-max)}

/* Box sizing tuned for the shared 1180px frame. */
.category-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:28px;
  width:100%;
}
.category-photo{width:100%;height:auto;aspect-ratio:1/1}
.reference-tour-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.reference-tour-card>img{height:190px}
.reference-gallery-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  grid-template-rows:126px 126px;
  gap:10px;
}
.reference-gallery-grid .ga,
.reference-gallery-grid .gg{height:150px}

/* Reviews now use the same outer frame without becoming cramped. */
.google-reviews-layout{
  grid-template-columns:350px minmax(0,1fr);
  gap:36px;
}
.review-summary{min-height:520px;padding:44px 34px 38px}
.review-summary h2{font-size:42px}
.google-review-card{flex-basis:calc((100% - 32px)/3)}

/* Footer/newsletter share the exact same left and right edges as the page. */
.newsletter-inner{grid-template-columns:.95fr 1.25fr;gap:80px}
.footer-grid{grid-template-columns:1.35fr .8fr 1.08fr 1.05fr;gap:54px}

@media(max-width:1180px){
  :root{--site-gutter:24px}
  .reference-nav{gap:20px;margin-left:22px}
  .nav-accent-dot{margin-right:20px}
  .reference-hero-content{padding-right:86px}
  .category-grid{gap:20px}
  .google-reviews-layout{grid-template-columns:330px minmax(0,1fr);gap:28px}
  .review-summary{padding:40px 30px}
  .footer-grid{gap:34px}
}

@media(max-width:1000px){
  :root{--site-gutter:20px}
  .reference-nav-wrap{padding-right:0}
  .reference-hero-content{padding-left:0;padding-right:78px}
  .hero-vertical-nav{right:var(--site-gutter)}
  .category-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
  .reference-tour-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reference-tour-card>img{height:220px}
  .google-reviews-layout{grid-template-columns:1fr}
  .review-summary{min-height:auto}
  .footer-grid{grid-template-columns:1.2fr .8fr 1fr 1fr;gap:28px}
}

@media(max-width:760px){
  :root{--site-gutter:16px}
  .container,
  .reference-topbar-inner,
  .reference-nav-wrap,
  .category-container,
  .showcase-container,
  .social-updates-inner,
  .google-reviews-layout,
  .footer-width,
  .reference-hero-content,
  .hero-bottom-curve{
    width:calc(100% - (var(--site-gutter) * 2));
  }
  .reference-hero-content{padding-right:50px}
  .reference-nav{left:0;right:0;width:100%;margin-left:0;margin-right:0}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
  .reference-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,132px)}
  .reference-tour-card>img{height:210px}
  .newsletter-inner{grid-template-columns:1fr;gap:24px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px 26px}
}

@media(max-width:520px){
  :root{--site-gutter:14px}
  .reference-hero-content{padding-right:40px}
  .reference-tour-grid{grid-template-columns:1fr}
  .reference-tour-card>img{height:230px}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1fr}
}

/* ==========================================================
   Alruha professional brand system — final visual pass
   Logo-led purple + green theme, unified typography, light
   section separation, dark header/footer, hidden quick sidebar.
   ========================================================== */
:root{
  --brand-purple:#7800b3;
  --brand-purple-2:#9627c9;
  --brand-purple-deep:#24102e;
  --brand-purple-deeper:#18091f;
  --brand-green:#6dbb62;
  --brand-green-deep:#559d4c;
  --brand-lilac:#faf6fc;
  --brand-lilac-2:#f5eef9;
  --brand-mint:#f5faf2;
  --brand-mint-2:#edf7e9;
  --brand-ink:#241d28;
  --brand-muted:#6f6873;
  --brand-line:#e9e1ec;
  --purple:var(--brand-purple);
  --purple-2:var(--brand-purple-2);
  --green:var(--brand-green);
  --green-deep:var(--brand-green-deep);
  --ink:var(--brand-ink);
  --muted:var(--brand-muted);
  --line:var(--brand-line);
  --site-max:1180px;
  --site-gutter:32px;
  --section-space:92px;
}
html{scroll-padding-top:90px}
body{
  font-family:"DM Sans",Arial,sans-serif;
  font-size:15px;
  line-height:1.7;
  letter-spacing:-.01em;
  color:var(--brand-ink);
  background:#fff;
}
body.sidebar-open{overflow:hidden}
button,input,a{font-family:inherit}

/* Standard type scale */
.section-heading,
.reference-heading,
.gallery-heading{margin-bottom:40px!important}
.section-heading h2,
.category-heading h2,
.reference-heading h2,
.planner-copy h2,
.social-updates-head h2,
.reviews-heading-row h2,
.review-summary h2,
.newsletter-title h2{
  font-family:"DM Sans",Arial,sans-serif!important;
  font-weight:700!important;
  font-style:normal!important;
  letter-spacing:-1.65px!important;
  color:var(--brand-ink)!important;
}
.section-heading h2,
.category-heading h2,
.reference-heading h2,
.planner-copy h2,
.social-updates-head h2,
.reviews-heading-row h2,
.newsletter-title h2{
  font-size:42px!important;
  line-height:1.12!important;
}
.review-summary h2{font-size:39px!important;line-height:1.1!important}
.eyebrow,
.category-kicker,
.reference-heading .eyebrow,
.hero-script,
.social-updates-kicker,
.review-summary-kicker,
.reviews-kicker{
  font-family:"DM Sans",Arial,sans-serif!important;
  font-style:normal!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:2px!important;
  text-transform:uppercase!important;
  color:var(--brand-purple)!important;
}
.section-sub,
.planner-copy>p:not(.eyebrow),
.feature p{
  font-size:15px!important;
  line-height:1.75!important;
  color:var(--brand-muted)!important;
}
.section-sub{max-width:640px!important;margin-top:14px!important}
.feature h3,.tour-body h3,.reference-tour-card h3{font-size:17px!important;line-height:1.35!important}

/* -------- Dark premium header -------- */
.reference-topbar{
  height:34px!important;
  background:var(--brand-purple-deeper)!important;
  border:0!important;
  color:rgba(255,255,255,.72)!important;
}
.reference-topbar-inner{height:34px!important}
.reference-topbar .topbar-item,
.reference-topbar-right a{font-size:11px!important;font-weight:500!important;color:rgba(255,255,255,.72)!important}
.reference-topbar-right a:hover{color:#fff!important}
.reference-topbar .topbar-icon{color:var(--brand-green)!important}
.reference-topbar .topbar-separator{height:12px!important;background:rgba(255,255,255,.18)!important}
.reference-topbar .mini-divider{color:var(--brand-green)!important;opacity:.8}

.reference-header{
  position:sticky!important;
  top:0!important;
  z-index:90!important;
  height:84px!important;
  background:rgba(36,16,46,.98)!important;
  border:0!important;
  box-shadow:0 8px 32px rgba(20,7,27,.16)!important;
  backdrop-filter:blur(18px)!important;
}
.reference-nav-wrap{height:84px!important;gap:0!important}
.reference-brand{
  width:174px!important;
  flex:0 0 174px!important;
  height:84px!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  position:relative!important;
  overflow:visible!important;
}
.reference-brand:before{
  content:"";position:absolute;left:-24px;bottom:0;width:98px;height:3px;
  background:linear-gradient(90deg,var(--brand-purple),var(--brand-green));border-radius:4px 4px 0 0;
}
.reference-brand:after{display:none!important}
.reference-brand img{width:132px!important;height:54px!important;max-height:54px!important;object-fit:contain!important;object-position:left center!important}
.reference-nav{
  display:flex!important;
  align-items:center!important;
  gap:30px!important;
  margin:0 0 0 34px!important;
  height:84px!important;
  position:static!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}
.reference-nav a{
  height:84px!important;
  display:flex!important;
  align-items:center!important;
  padding:1px 0 0!important;
  color:rgba(255,255,255,.78)!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:0!important;
  position:relative!important;
}
.reference-nav a:after{
  content:""!important;position:absolute!important;left:50%!important;right:auto!important;bottom:19px!important;
  width:0!important;height:2px!important;border-radius:4px!important;background:var(--brand-green)!important;
  transform:translateX(-50%)!important;transition:width .25s ease!important;
}
.reference-nav a:hover,.reference-nav a.active{color:#fff!important}
.reference-nav a:hover:after,.reference-nav a.active:after{width:22px!important;right:auto!important}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}
.reference-book-btn{
  height:45px!important;padding:0 20px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.12)!important;
  background:linear-gradient(135deg,var(--brand-purple),#8d1fbd)!important;color:#fff!important;
  font-size:12px!important;font-weight:700!important;gap:11px!important;box-shadow:0 8px 22px rgba(120,0,179,.25)!important;
}
.reference-book-btn span{color:#dff5db!important;font-size:16px!important}
.reference-book-btn:hover{background:linear-gradient(135deg,#8611be,var(--brand-green-deep))!important;transform:translateY(-2px)!important}
.nav-accent-dot{display:none!important}
.menu-toggle.reference-menu-toggle{
  width:45px!important;height:45px!important;padding:0!important;border-radius:50%!important;
  border:1px solid rgba(255,255,255,.15)!important;background:rgba(255,255,255,.06)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:4px!important;
  color:#fff!important;cursor:pointer!important;transition:.25s ease!important;
}
.menu-toggle.reference-menu-toggle span{display:block;width:17px;height:1.5px;border-radius:2px;background:#fff;transition:.25s ease}
.menu-toggle.reference-menu-toggle span:nth-child(2){width:12px;margin-left:5px}
.menu-toggle.reference-menu-toggle:hover{background:var(--brand-green)!important;border-color:var(--brand-green)!important;transform:rotate(4deg)}
.menu-toggle.reference-menu-toggle.is-open span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.menu-toggle.reference-menu-toggle.is-open span:nth-child(2){opacity:0}
.menu-toggle.reference-menu-toggle.is-open span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}

/* Hidden sidebar / quick menu */
.sidebar-backdrop{position:fixed;inset:0;z-index:119;background:rgba(15,5,20,.5);opacity:0;visibility:hidden;transition:.35s ease;backdrop-filter:blur(3px)}
.sidebar-backdrop.is-open{opacity:1;visibility:visible}
.site-sidebar{
  position:fixed;right:0;top:0;bottom:0;z-index:120;width:min(390px,92vw);padding:32px 34px 36px;
  background:var(--brand-purple-deep);color:#fff;transform:translateX(104%);transition:transform .5s cubic-bezier(.22,.72,.2,1);
  box-shadow:-24px 0 60px rgba(19,7,24,.24);overflow:auto;
}
.site-sidebar.is-open{transform:translateX(0)}
.sidebar-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1)}
.sidebar-brand{width:126px}.sidebar-brand img{height:50px;object-fit:contain;object-position:left center}
.sidebar-close{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:transparent;color:#fff;font-size:25px;line-height:1;cursor:pointer}
.sidebar-close:hover{background:var(--brand-green);border-color:var(--brand-green)}
.sidebar-label{margin:34px 0 14px!important;color:var(--brand-green)!important;font-size:10px!important;font-weight:700!important;letter-spacing:2.1px!important}
.sidebar-nav{display:flex;flex-direction:column}
.sidebar-nav a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.09);font-size:19px;font-weight:600;color:rgba(255,255,255,.9);transition:.25s ease}
.sidebar-nav a span{font-size:9px;letter-spacing:1px;color:rgba(255,255,255,.38)}
.sidebar-nav a:hover{padding-left:7px;color:#fff;border-bottom-color:rgba(109,187,98,.55)}
.sidebar-contact{margin-top:34px;padding:22px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09)}
.sidebar-contact>span{display:block;color:rgba(255,255,255,.58);font-size:11px;margin-bottom:5px}
.sidebar-contact strong{display:block;font-size:17px;line-height:1.4}
.sidebar-contact a{margin-top:17px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:12px;font-weight:700}
.sidebar-contact a b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--brand-green)}

/* Hero: professional alignment, logo palette accents */
.reference-hero{min-height:650px!important}
.reference-hero .hero-slide-overlay{background:linear-gradient(90deg,rgba(24,9,31,.68) 0%,rgba(24,9,31,.46) 40%,rgba(20,10,23,.12) 73%,rgba(20,10,23,.05) 100%)!important}
.reference-hero-content{padding-top:122px!important;padding-bottom:110px!important}
.reference-hero .hero-script{color:#eef9eb!important;letter-spacing:1.6px!important}
.reference-hero h1{
  font-family:"DM Sans",Arial,sans-serif!important;font-weight:700!important;font-size:64px!important;line-height:1.03!important;
  letter-spacing:-3px!important;max-width:720px!important;margin:12px 0 20px!important;
}
.reference-hero h1 strong{font-weight:700!important;color:#fff!important}
.reference-hero .hero-copy{font-size:16px!important;line-height:1.7!important;max-width:590px!important;color:rgba(255,255,255,.84)!important;margin-bottom:30px!important}
.hero-primary-btn{background:var(--brand-purple)!important;border-color:var(--brand-purple)!important;box-shadow:0 10px 28px rgba(120,0,179,.28)!important}
.hero-primary-btn:hover{background:var(--brand-green-deep)!important;border-color:var(--brand-green-deep)!important}
.hero-outline-btn{border-color:rgba(255,255,255,.52)!important;background:rgba(255,255,255,.07)!important;backdrop-filter:blur(8px)}
.hero-rail-progress{background:var(--brand-green)!important}
.hero-arrow:hover{background:var(--brand-purple)!important;border-color:var(--brand-purple)!important}

/* -------- Light section separation only -------- */
.section{padding:var(--section-space) 0!important}
.tour-categories-section{
  padding:var(--section-space) 0!important;
  background-color:var(--brand-lilac)!important;
  background-image:url("assets/travel-doodle-pattern.svg")!important;
  background-size:330px auto!important;
}
.tour-categories-section:before{background:linear-gradient(#fff,rgba(250,246,252,0))!important;opacity:.65}
.tour-categories-section:after{background:linear-gradient(rgba(250,246,252,0),var(--brand-lilac))!important}
#destinations{background:#fff!important}
.trip-planner{background:var(--brand-mint)!important}
.reference-tours{background:#fff!important;padding:var(--section-space) 0!important}
.reference-tours:before{height:365px!important;background:var(--brand-lilac) url("assets/travel-doodle-pattern.svg") center top/330px auto repeat!important}
.reference-tours:after{top:326px!important;background:linear-gradient(rgba(250,246,252,.92),#fff)!important}
.reference-gallery-section{background:#fff!important;padding:var(--section-space) 0 74px!important}
.social-updates-section{background:var(--brand-lilac)!important;padding:var(--section-space) 0!important}
.google-reviews-section{background:var(--brand-mint)!important;padding:var(--section-space) 0!important;color:var(--brand-ink)!important}
.newsletter{background:#fff!important;padding:76px 0 0!important}

/* Remove non-brand cyan / teal from cards and accents */
.category-heading h2,.reference-heading h2{color:var(--brand-ink)!important;text-shadow:none!important}
.category-copy strong,.reference-tour-card h3,.reference-tour-card .tour-price strong{color:var(--brand-ink)!important}
.category-copy span,.reference-tour-card .tour-price span,.tour-meta{color:var(--brand-muted)!important}
.category-photo{box-shadow:0 12px 30px rgba(86,45,100,.08)!important}
.reference-tour-card{border-color:var(--brand-line)!important;box-shadow:0 10px 26px rgba(66,35,76,.05)!important}
.reference-tour-card:hover{border-color:rgba(120,0,179,.22)!important;box-shadow:0 18px 36px rgba(86,45,100,.11)!important}
.tour-meta a{border-color:#e1d9e5!important;color:var(--brand-purple)!important}
.tour-meta a:hover{background:var(--brand-lilac)!important;border-color:rgba(120,0,179,.25)!important}
.destination-card:focus-visible{box-shadow:0 0 0 4px rgba(120,0,179,.2),0 28px 65px rgba(20,33,43,.2)!important}
.destination-progress button.active{background:linear-gradient(90deg,var(--brand-purple),var(--brand-green))!important}
.feature-icon{background:linear-gradient(135deg,#f3e8f8,#eef7eb)!important;color:var(--brand-purple)!important}
.btn-dark{background:var(--brand-purple)!important;color:#fff!important}
.btn-dark:hover{background:var(--brand-green-deep)!important}
.reference-stats .stat{border-color:rgba(120,0,179,.35)!important;background:#fff!important}
.reference-stats .stat:before{border-color:rgba(109,187,98,.45)!important}
.reference-stats .stat:after{background:rgba(246,239,249,.72)!important}
.reference-stats .stat i{background:var(--brand-green)!important}
.gallery-doodle{color:var(--brand-purple)!important}
.gallery-swoosh{border-color:rgba(120,0,179,.16)!important}
.gallery-swoosh-top:after{border-color:rgba(109,187,98,.22)!important}

/* Instagram section standard sizing */
.social-updates-head{align-items:flex-end!important;margin-bottom:38px!important}
.social-updates-head h2{font-size:42px!important;line-height:1.12!important;letter-spacing:-1.65px!important}
.social-updates-head h2 em{font-family:inherit!important;font-style:normal!important;color:var(--brand-purple)!important}
.social-updates-kicker{margin-bottom:12px!important}
.instagram-handle{color:var(--brand-purple)!important;font-size:12px!important;font-weight:700!important}
.instagram-handle svg{stroke:var(--brand-green)!important}
.instagram-reel{border-radius:18px!important;box-shadow:0 13px 34px rgba(73,36,86,.08)!important}
.reel-icon{background:rgba(36,16,46,.32)!important}

/* Reviews must remain light; dark is reserved for header/footer. */
.google-reviews-layout{align-items:stretch!important}
.review-summary{
  min-height:520px!important;
  background:linear-gradient(145deg,#fff 0%,#fbf6fd 100%)!important;
  color:var(--brand-ink)!important;
  border:1px solid rgba(120,0,179,.12)!important;
  box-shadow:0 18px 45px rgba(67,34,77,.08)!important;
}
.summary-rings{border-color:rgba(120,0,179,.18)!important;box-shadow:0 0 0 38px rgba(120,0,179,.025),0 0 0 78px rgba(109,187,98,.025)!important}
.review-summary-kicker,.reviews-kicker{color:var(--brand-purple)!important}
.review-summary h2{color:var(--brand-ink)!important}
.rating-lockup>strong{font-family:"DM Sans",Arial,sans-serif!important;color:var(--brand-purple)!important;font-size:52px!important;letter-spacing:-2.4px!important}
.google-mark{background:linear-gradient(135deg,var(--brand-purple),var(--brand-green))!important;box-shadow:none!important}
.gold-stars{color:#e0a328!important}
.rating-lockup small,.verified-line{color:var(--brand-muted)!important}
.verified-line span{background:var(--brand-green)!important;box-shadow:0 0 0 5px rgba(109,187,98,.13)!important}
.review-btn-light{background:#fff!important;color:var(--brand-purple)!important;border:1px solid rgba(120,0,179,.15)!important}
.review-btn-gold{background:var(--brand-purple)!important;color:#fff!important}
.review-btn-gold:hover{background:var(--brand-green-deep)!important}
.summary-quote{color:var(--brand-purple)!important}
.reviews-heading-row h2{font-size:42px!important}
.review-count{color:var(--brand-purple)!important}
.review-arrow{border-color:rgba(120,0,179,.22)!important;color:var(--brand-purple)!important;background:#fff!important}
.review-arrow:hover{background:var(--brand-purple)!important;color:#fff!important;border-color:var(--brand-purple)!important}
.google-review-card{border-color:#e6ddea!important;box-shadow:0 10px 24px rgba(69,39,77,.04)!important}
.review-avatar{background:var(--brand-purple)!important}
.google-review-card>p{font-size:14px!important;line-height:1.7!important;color:var(--brand-muted)!important}
.google-review-top strong{font-size:12px!important;color:var(--brand-ink)!important}
.google-review-foot{font-size:10px!important}
.google-review-foot b{color:var(--brand-green)!important}
.review-orbit-a{border-color:rgba(120,0,179,.3)!important}.review-orbit-a:after{background:var(--brand-green)!important}
.review-orbit-b{background:radial-gradient(circle,rgba(120,0,179,.05),transparent 68%)!important}

/* Newsletter standard scale */
.newsletter-title h2{font-size:34px!important;letter-spacing:-1.2px!important}
.newsletter-form input{height:48px!important;border-color:#d9d0dc!important;font-size:13px!important;color:var(--brand-ink)!important}
.newsletter-form input:focus{border-color:var(--brand-purple)!important;box-shadow:0 0 0 4px rgba(120,0,179,.08)!important}
.footer-subscribe{height:48px!important;background:var(--brand-purple)!important;font-size:12px!important;padding:0 22px!important}
.footer-subscribe:hover{background:var(--brand-green-deep)!important;box-shadow:0 8px 20px rgba(85,157,76,.17)!important}
.newsletter-divider{background:var(--brand-line)!important;margin-top:42px!important}

/* -------- Footer is the second dark area -------- */
.footer{
  background:var(--brand-purple-deep)!important;
  color:#fff!important;
  position:relative!important;
  overflow:hidden!important;
}
.footer:before{
  content:"";position:absolute;right:-170px;top:-180px;width:420px;height:420px;border-radius:50%;
  border:1px solid rgba(109,187,98,.12);box-shadow:0 0 0 55px rgba(120,0,179,.035),0 0 0 110px rgba(109,187,98,.018);pointer-events:none;
}
.footer-grid{padding:58px 0 66px!important;position:relative;z-index:1}
.footer-brand img{filter:none!important}
.footer h4{font-size:15px!important;color:#fff!important;letter-spacing:-.2px!important}
.footer p,.footer-links a{font-size:12px!important;line-height:1.75!important;color:rgba(255,255,255,.58)!important}
.footer-links a:before{color:var(--brand-green)!important}
.footer-links a:hover{color:#fff!important}
.social-row a{background:rgba(255,255,255,.08)!important;color:#fff!important}
.social-row a:hover{background:var(--brand-green)!important;color:#fff!important}
.address-icon{background:rgba(109,187,98,.13)!important;color:var(--brand-green)!important}
.insta-grid img{border:1px solid rgba(255,255,255,.09)!important}
.footer-bottom{background:var(--brand-purple-deeper)!important;color:rgba(255,255,255,.78)!important}
.footer-bottom:before{display:none!important}
.footer-bottom-inner{min-height:52px!important}

/* Cards and surfaces use a clean professional radius system. */
.category-photo,.reference-tour-card,.instagram-reel,.google-review-card{border-radius:16px!important}
.reference-tour-card .tour-body{padding:16px!important}
.reference-tour-card .rating{font-size:11px!important}
.reference-tour-card .rating span{font-size:11px!important}
.reference-tour-card .tour-price strong{font-size:18px!important}
.reference-tour-card .tour-price span{font-size:11px!important}
.reference-tour-card .tour-meta{font-size:11px!important}
.reference-tour-card .tour-meta a{font-size:11px!important;padding:7px 11px!important}

/* Responsive polish */
@media(max-width:1120px){
  :root{--site-gutter:24px}
  .reference-nav{gap:20px!important;margin-left:24px!important}
  .reference-nav a{font-size:12px!important}
  .reference-brand{width:152px!important;flex-basis:152px!important}
  .reference-brand img{width:120px!important}
  .reference-book-btn{padding:0 16px!important}
}
@media(max-width:980px){
  :root{--section-space:78px}
  .reference-nav{display:none!important}
  .reference-brand{margin-right:auto!important}
  .reference-hero h1{font-size:54px!important}
  .section-heading h2,.category-heading h2,.reference-heading h2,.planner-copy h2,.social-updates-head h2,.reviews-heading-row h2{font-size:38px!important}
  .google-reviews-layout{grid-template-columns:1fr!important}
  .review-summary{min-height:auto!important}
}
@media(max-width:760px){
  :root{--site-gutter:16px;--section-space:68px}
  .reference-topbar-right{display:flex!important}
  .reference-topbar .topbar-item:nth-of-type(2),.reference-topbar .topbar-separator{display:none!important}
  .reference-topbar-right{gap:10px!important}.reference-topbar .mini-divider{display:none!important}
  .reference-header,.reference-nav-wrap{height:72px!important}
  .reference-brand{height:72px!important;width:130px!important;flex-basis:130px!important}
  .reference-brand img{width:108px!important;height:44px!important}
  .reference-book-btn{display:none!important}
  .menu-toggle.reference-menu-toggle{width:42px!important;height:42px!important}
  .reference-hero{min-height:570px!important}
  .reference-hero-content{padding-top:96px!important;padding-bottom:90px!important}
  .reference-hero h1{font-size:45px!important;letter-spacing:-2.1px!important}
  .reference-hero .hero-copy{font-size:14px!important;max-width:88%!important}
  .section-heading h2,.category-heading h2,.reference-heading h2,.planner-copy h2,.social-updates-head h2,.reviews-heading-row h2,.newsletter-title h2{font-size:34px!important;letter-spacing:-1.2px!important}
  .review-summary h2{font-size:34px!important}
  .social-updates-head{align-items:flex-start!important}
  .footer-grid{padding-top:48px!important}
}
@media(max-width:520px){
  .reference-topbar{height:31px!important}.reference-topbar-inner{height:31px!important}
  .reference-topbar .topbar-item{font-size:10px!important}
  .reference-topbar-right a{font-size:10px!important}
  .site-sidebar{padding:26px 24px 30px}
  .reference-hero h1{font-size:39px!important}
  .hero-actions{gap:10px!important}
  .hero-primary-btn,.hero-outline-btn{padding:12px 16px!important;font-size:12px!important}
  .section-heading h2,.category-heading h2,.reference-heading h2,.planner-copy h2,.social-updates-head h2,.reviews-heading-row h2,.newsletter-title h2{font-size:31px!important}
  .section-sub,.planner-copy>p:not(.eyebrow),.feature p{font-size:14px!important}
}

/* ==========================================================
   FINAL REFINEMENT — clean light sections, stronger motion,
   interactive sliders, Google palette, WhatsApp CTA
   ========================================================== */
html{scroll-behavior:smooth;scroll-padding-top:118px}
body{overflow-x:hidden}
section[id]{scroll-margin-top:118px}

/* Plain light section separation — no doodle/pattern backgrounds */
.tour-categories-section,
.reference-tours{
  background-image:none!important;
}
.tour-categories-section{background:#fbf8fc!important}
.tour-categories-section:before,.tour-categories-section:after{display:none!important}
.reference-tours{background:#fbf8fc!important}
.reference-tours:before{background:#fbf8fc!important;background-image:none!important;height:100%!important}
.reference-tours:after{display:none!important}
#destinations{background:#fff!important}
.trip-planner{background:#f5faf4!important}
.reference-gallery-section{background:#fff!important;min-height:auto!important;padding-bottom:96px!important}
.social-updates-section{background:#fcf8fd!important}
.google-reviews-section{background:#f8fafc!important}

/* Keep section scale consistent */
.services-section,.social-updates-section,.google-reviews-section,.whatsapp-cta{padding:92px 0!important}
.category-container,.showcase-container,.social-updates-inner,.google-reviews-layout,.services-inner{width:min(1180px,calc(100% - (var(--site-gutter) * 2)))!important;max-width:1180px!important}

/* ---------------- Tour Categories: repeatable press slider ---------------- */
.category-carousel-shell{position:relative;margin-top:6px;padding:14px 54px 30px}
.category-carousel-viewport{overflow:hidden;padding:28px 6px 36px;margin:-28px -6px -36px;touch-action:pan-y}
.category-grid{
  display:flex!important;grid-template-columns:none!important;gap:22px!important;justify-content:flex-start!important;
  width:max-content!important;padding:0!important;transition:transform .72s cubic-bezier(.2,.78,.2,1)!important;will-change:transform;
}
.category-card{
  width:202px!important;flex:0 0 202px!important;transform:none!important;transition:transform .42s cubic-bezier(.2,.75,.2,1),filter .42s ease!important;
}
.category-photo{width:202px!important;height:202px!important;border-radius:20px!important;overflow:hidden!important;box-shadow:0 14px 34px rgba(66,36,76,.10)!important;transition:box-shadow .42s ease!important}
.category-card img{transition:transform .65s cubic-bezier(.2,.75,.2,1),filter .4s ease!important}
.category-card:hover{transform:translateY(-15px) scale(1.035)!important;z-index:5}
.category-card:hover .category-photo{box-shadow:0 28px 52px rgba(78,38,91,.18)!important}
.category-card:hover img{transform:scale(1.10)!important;filter:saturate(1.08) contrast(1.03)!important}
.category-card:hover .category-copy strong{color:var(--brand-purple)!important}
.category-copy{padding-top:13px!important}
.category-copy strong{font-size:15px!important;transition:color .25s ease}
.category-copy span{font-size:11px!important;color:var(--brand-muted)!important}
.category-slide-btn,.destination-side-btn,.instagram-slide-btn{
  width:46px;height:46px;border-radius:50%;border:1px solid rgba(120,0,179,.16);background:#fff;color:var(--brand-purple);
  display:grid;place-items:center;font:600 20px/1 "DM Sans",sans-serif;cursor:pointer;box-shadow:0 10px 25px rgba(64,34,74,.08);
  transition:transform .28s ease,background .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease;z-index:8;
}
.category-slide-btn:hover,.destination-side-btn:hover,.instagram-slide-btn:hover{background:var(--brand-purple);color:#fff;border-color:var(--brand-purple);transform:scale(1.10);box-shadow:0 16px 30px rgba(120,0,179,.22)}
.category-slide-btn{position:absolute;top:46%;transform:translateY(-50%)}
.category-slide-btn:hover{transform:translateY(-50%) scale(1.10)}
.category-prev{left:0}.category-next{right:0}

/* ---------------- Popular destinations: visible two-side controls ---------------- */
.destination-carousel-shell{position:relative;max-width:1040px;margin:0 auto;padding:0 58px}
.destination-stack{margin-left:0!important;margin-right:0!important}
.destination-side-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:20}
.destination-side-btn:hover{transform:translateY(-50%) scale(1.10)}
.destination-side-prev{left:0}.destination-side-next{right:0}
.destination-card{cursor:pointer!important}
.destination-card.is-active{box-shadow:0 30px 68px rgba(37,28,42,.22)!important}
.destination-card.is-active:hover{transform:translate3d(var(--dest-x),-9px,0) scale(1.035)!important}
.destination-card img{transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .45s ease!important}
.destination-card:hover img{transform:scale(1.07)!important}

/* ---------------- Plan Your Trip refinement ---------------- */
.trip-planner{position:relative;overflow:hidden}
.trip-planner:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;right:-160px;top:80px;border:1px solid rgba(109,187,98,.16);box-shadow:0 0 0 42px rgba(120,0,179,.025);pointer-events:none}
.photo-collage img{transition:transform .55s cubic-bezier(.2,.75,.2,1),box-shadow .55s ease,filter .45s ease!important}
.photo-collage img:hover{transform:translateY(-9px) scale(1.025)!important;box-shadow:0 26px 55px rgba(45,39,47,.16)!important;filter:saturate(1.06)!important;z-index:6}
.feature{transition:transform .3s ease,background .3s ease;padding .3s ease,border-color .3s ease;border:1px solid transparent;border-radius:16px}
.feature:hover{transform:translateX(7px);background:#fff;border-color:rgba(120,0,179,.09);padding:12px 14px!important}
.feature-icon{transition:transform .35s ease,background .3s ease!important}
.feature:hover .feature-icon{transform:rotate(-8deg) scale(1.10)}

/* ---------------- New Our Services section ---------------- */
.services-section{background:#fff!important;position:relative;overflow:hidden}
.services-section:before{content:"";position:absolute;left:-170px;top:70px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(120,0,179,.05),transparent 68%);pointer-events:none}
.services-heading{max-width:700px;margin-bottom:42px!important;text-align:left!important}
.services-heading .section-sub{margin-left:0!important;margin-right:0!important}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{position:relative;min-height:255px;padding:28px;border:1px solid #ece5ef;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(65,39,73,.045);overflow:hidden;transition:transform .42s cubic-bezier(.2,.75,.2,1),box-shadow .42s ease,border-color .42s ease}
.service-card:after{content:"";position:absolute;right:-55px;bottom:-70px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(109,187,98,.14),rgba(120,0,179,.03) 55%,transparent 70%);transition:transform .5s ease}
.service-card:hover{transform:translateY(-12px);box-shadow:0 28px 55px rgba(67,38,77,.12);border-color:rgba(120,0,179,.18)}
.service-card:hover:after{transform:scale(1.35)}
.service-icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:#f7edf9;color:var(--brand-purple);font-size:22px;margin-bottom:22px;transition:transform .38s ease,background .38s ease,color .38s ease}
.service-card:hover .service-icon{transform:rotate(-7deg) scale(1.08);background:var(--brand-purple);color:#fff}
.service-card h3{font-size:20px;line-height:1.3;margin:0 0 10px;color:var(--brand-ink)}
.service-card p{font-size:14px;line-height:1.7;color:var(--brand-muted);margin:0 0 20px}
.service-card a{display:inline-flex;align-items:center;gap:8px;color:var(--brand-purple);font-size:12px;font-weight:700;position:relative;z-index:2}
.service-card a span{transition:transform .25s ease}.service-card:hover a span{transform:translate(3px,-3px)}

/* ---------------- Popular Tour stronger hover + entrance ---------------- */
.reference-tour-card{overflow:hidden!important;transition:transform .46s cubic-bezier(.2,.75,.2,1),box-shadow .46s ease,border-color .46s ease!important}
.reference-tour-card>img{transition:transform .72s cubic-bezier(.2,.75,.2,1),filter .45s ease!important}
.reference-tour-card:hover{transform:translateY(-14px)!important;box-shadow:0 30px 56px rgba(69,39,77,.16)!important;border-color:rgba(120,0,179,.20)!important}
.reference-tour-card:hover>img{transform:scale(1.075)!important;filter:saturate(1.10) contrast(1.02)!important}
.reference-tour-card .tour-meta a{transition:all .3s ease!important}
.reference-tour-card:hover .tour-meta a{background:var(--brand-purple)!important;color:#fff!important;border-color:var(--brand-purple)!important;transform:translateX(2px)}

/* ---------------- Larger Recent Gallery + strong hover ---------------- */
.reference-gallery-grid{
  width:min(1080px,100%)!important;grid-template-columns:1.08fr 1.08fr 1.15fr 1.08fr 1.08fr!important;
  grid-template-rows:164px 164px!important;gap:12px!important;
}
.reference-gallery-grid .ga,.reference-gallery-grid .gg{height:205px!important}
.reference-gallery-grid img{border-radius:17px!important;box-shadow:0 10px 25px rgba(39,50,57,.08)!important;transition:transform .5s cubic-bezier(.2,.75,.2,1),box-shadow .5s ease,filter .5s ease!important}
.reference-gallery-grid img:hover{transform:translateY(-10px) scale(1.035)!important;box-shadow:0 28px 50px rgba(37,41,45,.18)!important;filter:saturate(1.12) contrast(1.04)!important;z-index:7}
.gallery-heading{margin-bottom:36px!important}

/* ---------------- Instagram carousel + View All ---------------- */
.social-updates-head{margin-bottom:34px!important}
.instagram-carousel-shell{position:relative;padding:0 54px}
.instagram-carousel-viewport{overflow:hidden;padding:14px 4px 28px;margin:-14px -4px -28px;touch-action:pan-y}
.instagram-reel-grid{
  display:flex!important;grid-template-columns:none!important;gap:18px!important;width:max-content!important;
  transition:transform .75s cubic-bezier(.2,.78,.2,1)!important;will-change:transform;
}
.instagram-reel{width:calc((1080px - 54px)/4)!important;flex:0 0 calc((1080px - 54px)/4)!important;height:365px!important;position:relative;overflow:hidden!important}
.instagram-reel img{transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .45s ease!important}
.instagram-reel:hover{transform:translateY(-12px)!important;box-shadow:0 30px 58px rgba(64,35,73,.18)!important}
.instagram-reel:hover img{transform:scale(1.09)!important;filter:saturate(1.08)!important}
.instagram-reel:hover .reel-icon{transform:scale(1.13) rotate(8deg);background:var(--brand-purple)!important}
.instagram-slide-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:12}
.instagram-slide-btn:hover{transform:translateY(-50%) scale(1.10)}
.instagram-prev{left:0}.instagram-next{right:0}
.instagram-actions{display:flex;justify-content:center;margin-top:34px}
.instagram-view-all{display:inline-flex;align-items:center;justify-content:center;min-width:154px;height:48px;padding:0 22px;border-radius:999px;background:var(--brand-purple);color:#fff;font-size:12px;font-weight:700;box-shadow:0 12px 28px rgba(120,0,179,.18);transition:transform .3s ease,background .3s ease,box-shadow .3s ease}
.instagram-view-all:hover{transform:translateY(-4px);background:var(--brand-green-deep);box-shadow:0 18px 34px rgba(85,157,76,.22)}

/* ---------------- Google Reviews: Google palette ---------------- */
.google-reviews-section{position:relative;overflow:hidden}
.review-summary{background:#fff!important;border-color:#e6e9ef!important;box-shadow:0 20px 48px rgba(28,55,90,.08)!important}
.review-summary-kicker,.reviews-kicker{color:#4285f4!important}
.summary-rings{border-color:rgba(66,133,244,.18)!important;box-shadow:0 0 0 38px rgba(234,67,53,.025),0 0 0 78px rgba(52,168,83,.025)!important}
.google-mark{
  background:conic-gradient(from -50deg,#4285F4 0 28%,#34A853 28% 46%,#FBBC05 46% 64%,#EA4335 64% 82%,#4285F4 82% 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;box-shadow:none!important;font-weight:800!important;
}
.rating-lockup>strong{color:#202124!important}
.gold-stars{color:#fbbc04!important}
.verified-line span{background:#34a853!important;box-shadow:0 0 0 5px rgba(52,168,83,.12)!important}
.review-btn-light{color:#4285f4!important;border-color:rgba(66,133,244,.20)!important}
.review-btn-light:hover{background:#eef4ff!important}
.review-btn-gold{background:#4285f4!important}
.review-btn-gold:hover{background:#3367d6!important}
.review-count{color:#4285f4!important}
.review-arrow{color:#4285f4!important;border-color:rgba(66,133,244,.24)!important}
.review-arrow:hover{background:#4285f4!important;border-color:#4285f4!important}
.google-review-card{border-color:#e3e6ec!important;position:relative;overflow:hidden!important;transition:transform .4s cubic-bezier(.2,.75,.2,1),box-shadow .4s ease,border-color .4s ease!important}
.google-review-card:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,#4285F4 0 25%,#EA4335 25% 50%,#FBBC05 50% 75%,#34A853 75%);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.google-review-card:hover{transform:translateY(-9px);box-shadow:0 24px 45px rgba(36,68,108,.12)!important;border-color:#d6dce6!important}
.google-review-card:hover:before{transform:scaleX(1)}
.google-review-card:nth-child(4n+1) .review-avatar{background:#4285f4!important}
.google-review-card:nth-child(4n+2) .review-avatar{background:#ea4335!important}
.google-review-card:nth-child(4n+3) .review-avatar{background:#fbbc04!important;color:#202124!important}
.google-review-card:nth-child(4n) .review-avatar{background:#34a853!important}
.google-review-foot b{color:#34a853!important}
.review-orbit-a{border-color:rgba(66,133,244,.22)!important}.review-orbit-a:after{background:#34a853!important}
.review-orbit-b{background:radial-gradient(circle,rgba(251,188,4,.055),transparent 68%)!important}

/* ---------------- WhatsApp CTA replaces email newsletter ---------------- */
.whatsapp-cta{background:#f3f8f2!important;border-top:1px solid #e6ede4}
.whatsapp-inner{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.whatsapp-copy h2{font-family:"DM Sans",sans-serif;font-size:42px;line-height:1.12;letter-spacing:-1.65px;color:var(--brand-ink);margin:8px 0 14px}
.whatsapp-copy p:not(.eyebrow){max-width:590px;font-size:15px;line-height:1.75;color:var(--brand-muted)}
.whatsapp-button{min-height:112px;padding:20px 24px;border-radius:24px;background:#fff;border:1px solid rgba(37,211,102,.30);display:flex;align-items:center;gap:16px;color:var(--brand-ink);box-shadow:0 16px 38px rgba(33,92,53,.08);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.whatsapp-button:hover{transform:translateY(-7px);box-shadow:0 28px 50px rgba(33,92,53,.14);border-color:#25d366}
.wa-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:24px;flex:0 0 54px}
.whatsapp-button span:nth-child(2){display:flex;flex-direction:column;gap:4px;min-width:0}
.whatsapp-button small{font-size:9px;letter-spacing:1.6px;color:#38995b;font-weight:700}
.whatsapp-button strong{font-size:17px;line-height:1.35}
.whatsapp-button>b{margin-left:auto;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#effaf2;color:#1e9c4d;transition:transform .3s ease,background .3s ease,color .3s ease}
.whatsapp-button:hover>b{transform:rotate(8deg);background:#25d366;color:#fff}

/* Footer logo must stay white */
.footer-brand img{filter:none!important;width:140px!important;height:auto!important;object-fit:contain!important}

/* ---------------- Global entrance / scroll motion ---------------- */
.reveal-on-scroll{opacity:0;transform:translateY(30px) scale(.985);transition:opacity .78s ease,transform .78s cubic-bezier(.2,.75,.2,1)!important;will-change:transform,opacity}
.reveal-on-scroll.in-view{opacity:1;transform:translateY(0) scale(1)}
.services-grid .reveal-on-scroll:nth-child(2),.reference-tour-grid .reveal-on-scroll:nth-child(2),.instagram-reel-grid .reveal-on-scroll:nth-child(2){transition-delay:.08s!important}
.services-grid .reveal-on-scroll:nth-child(3),.reference-tour-grid .reveal-on-scroll:nth-child(3),.instagram-reel-grid .reveal-on-scroll:nth-child(3){transition-delay:.16s!important}
.services-grid .reveal-on-scroll:nth-child(4),.reference-tour-grid .reveal-on-scroll:nth-child(4),.instagram-reel-grid .reveal-on-scroll:nth-child(4){transition-delay:.24s!important}
.services-grid .reveal-on-scroll:nth-child(5){transition-delay:.08s!important}.services-grid .reveal-on-scroll:nth-child(6){transition-delay:.16s!important}
body:not(.page-ready) .reference-header{transform:translateY(-100%)}
.reference-header{transition:transform .7s cubic-bezier(.2,.78,.2,1),background .3s ease,box-shadow .3s ease!important}
body.page-ready .reference-header{transform:translateY(0)}
body:not(.page-ready) .reference-hero-content{opacity:0;transform:translateY(26px)}
body.page-ready .reference-hero-content{opacity:1;transform:translateY(0);transition:opacity .9s .18s ease,transform .9s .18s cubic-bezier(.2,.78,.2,1)!important}

/* ---------------- Scroll-to-top ---------------- */
.scroll-top-btn{position:fixed;right:26px;bottom:26px;width:48px;height:48px;border:0;border-radius:50%;background:var(--brand-purple-deeper);color:#fff;display:grid;place-items:center;z-index:80;cursor:pointer;box-shadow:0 12px 30px rgba(34,13,42,.25);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s ease,visibility .3s ease,transform .3s ease,background .3s ease}
.scroll-top-btn.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.scroll-top-btn:hover{background:var(--brand-green-deep);transform:translateY(-4px)}
.scroll-top-btn span{font-size:20px}

@media(max-width:1180px){
  .instagram-reel{width:calc((100vw - 2*var(--site-gutter) - 126px - 36px)/3)!important;flex-basis:calc((100vw - 2*var(--site-gutter) - 126px - 36px)/3)!important}
  .category-card{width:188px!important;flex-basis:188px!important}.category-photo{width:188px!important;height:188px!important}
}
@media(max-width:900px){
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .whatsapp-inner{grid-template-columns:1fr;gap:32px}
  .reference-gallery-grid{grid-template-columns:repeat(3,1fr)!important;grid-template-rows:repeat(3,150px)!important}
  .reference-gallery-grid .ga,.reference-gallery-grid .gb,.reference-gallery-grid .gc,.reference-gallery-grid .gd,.reference-gallery-grid .ge,.reference-gallery-grid .gf,.reference-gallery-grid .gg{grid-column:auto!important;grid-row:auto!important;height:100%!important;align-self:stretch!important}
  .reference-gallery-grid .gd{grid-row:span 2!important}
  .instagram-reel{width:calc((100vw - 2*var(--site-gutter) - 126px - 18px)/2)!important;flex-basis:calc((100vw - 2*var(--site-gutter) - 126px - 18px)/2)!important}
}
@media(max-width:700px){
  .category-carousel-shell,.instagram-carousel-shell,.destination-carousel-shell{padding-left:42px;padding-right:42px}
  .category-slide-btn,.destination-side-btn,.instagram-slide-btn{width:38px;height:38px;font-size:17px}
  .category-card{width:72vw!important;flex-basis:72vw!important}.category-photo{width:100%!important;height:220px!important}
  .destination-carousel-shell{max-width:100%;}
  .services-grid{grid-template-columns:1fr}
  .service-card{min-height:auto}
  .instagram-reel{width:calc(100vw - 2*var(--site-gutter) - 92px)!important;flex-basis:calc(100vw - 2*var(--site-gutter) - 92px)!important;height:410px!important}
  .whatsapp-copy h2{font-size:34px;letter-spacing:-1.2px}
  .scroll-top-btn{right:16px;bottom:16px;width:44px;height:44px}
}
@media(max-width:520px){
  .category-carousel-shell,.instagram-carousel-shell,.destination-carousel-shell{padding-left:34px;padding-right:34px}
  .category-prev,.instagram-prev,.destination-side-prev{left:-2px}.category-next,.instagram-next,.destination-side-next{right:-2px}
  .reference-gallery-grid{grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(4,126px)!important;gap:8px!important}
  .reference-gallery-grid .gd{grid-row:span 2!important}
  .whatsapp-button{padding:17px;min-height:100px}.wa-icon{width:48px;height:48px;flex-basis:48px}.whatsapp-button strong{font-size:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.category-grid,.instagram-reel-grid,.reveal-on-scroll,.reference-header,.reference-hero-content{transition:none!important}.reveal-on-scroll{opacity:1!important;transform:none!important}}
@media(min-width:1181px){.instagram-reel{width:254px!important;flex-basis:254px!important}}

/* ==========================================================
   2026-09-05 — Popular Tours slider + stronger service hover
   + directional reveal system across every section
   ========================================================== */

/* Popular Tour becomes a real responsive slider */
.popular-tour-carousel-shell{
  position:relative;
  margin-top:8px;
  padding:0 58px;
}
.popular-tour-carousel-viewport{
  overflow:hidden;
  padding:30px 0 42px;
  margin:-30px 0 -42px;
  touch-action:pan-y;
}
.popular-tour-carousel-viewport .reference-tour-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
  justify-content:flex-start!important;
  align-items:stretch!important;
  transition:transform .78s cubic-bezier(.2,.78,.2,1)!important;
  will-change:transform;
}
.popular-tour-carousel-viewport .reference-tour-card{
  flex:0 0 calc((100% - 54px)/4)!important;
  width:calc((100% - 54px)/4)!important;
  min-width:0!important;
}
.popular-tour-slide-btn{
  position:absolute;
  top:50%;
  width:48px;height:48px;
  border-radius:50%;
  border:1px solid rgba(120,0,179,.18);
  background:#fff;
  color:var(--brand-purple);
  display:grid;place-items:center;
  font:700 20px/1 "DM Sans",sans-serif;
  cursor:pointer;
  z-index:12;
  box-shadow:0 12px 30px rgba(58,31,67,.10);
  transition:transform .3s cubic-bezier(.2,.75,.2,1),background .3s ease,color .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.popular-tour-prev{left:0;transform:translateY(-50%)}
.popular-tour-next{right:0;transform:translateY(-50%)}
.popular-tour-slide-btn:hover{
  background:var(--brand-purple);
  color:#fff;
  border-color:var(--brand-purple);
  box-shadow:0 18px 38px rgba(120,0,179,.26);
}
.popular-tour-prev:hover{transform:translateY(-50%) translateX(-4px) scale(1.10)}
.popular-tour-next:hover{transform:translateY(-50%) translateX(4px) scale(1.10)}
.popular-tour-slide-btn:active{scale:.94}
.popular-tour-progress{
  display:flex;justify-content:center;gap:7px;margin-top:24px;
}
.popular-tour-progress button{
  width:7px;height:7px;border:0;padding:0;border-radius:999px;background:#dacde0;cursor:pointer;
  transition:width .28s ease,background .28s ease,transform .28s ease;
}
.popular-tour-progress button:hover{transform:scale(1.25);background:#b99bc5}
.popular-tour-progress button.is-active{width:28px;background:linear-gradient(90deg,var(--brand-purple),var(--brand-green));}

/* Stronger, still premium hover for Popular Tours */
.reference-tour-card{
  position:relative;
  transform-origin:center bottom;
}
.reference-tour-card:before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;z-index:4;
  background:linear-gradient(90deg,var(--brand-purple),var(--brand-green));
  transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.2,.75,.2,1);
}
.reference-tour-card:hover{
  transform:translateY(-16px) scale(1.025)!important;
  box-shadow:0 34px 70px rgba(69,39,77,.19)!important;
  border-color:rgba(120,0,179,.28)!important;
}
.reference-tour-card:hover:before{transform:scaleX(1)}
.reference-tour-card:hover>img{transform:scale(1.095)!important;filter:saturate(1.13) contrast(1.035)!important}
.reference-tour-card:hover h3{color:var(--brand-purple)!important}

/* Stronger premium hover for Our Travel Services */
.service-card{
  isolation:isolate;
  transition:transform .46s cubic-bezier(.16,.8,.2,1),box-shadow .46s ease,border-color .46s ease,background .46s ease!important;
}
.service-card:before{
  content:"";position:absolute;inset:0 0 auto 0;height:4px;
  background:linear-gradient(90deg,var(--brand-purple),var(--brand-green));
  transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.2,.8,.2,1);z-index:3;
}
.service-card:hover{
  transform:translateY(-17px) scale(1.025)!important;
  box-shadow:0 34px 70px rgba(67,38,77,.16)!important;
  border-color:rgba(120,0,179,.25)!important;
  background:linear-gradient(145deg,#fff 0%,#fff 70%,rgba(109,187,98,.055) 100%)!important;
}
.service-card:hover:before{transform:scaleX(1)}
.service-card:hover:after{transform:scale(1.75) translate(-8px,-8px)!important}
.service-card:hover .service-icon{
  transform:translateY(-4px) rotate(-10deg) scale(1.14)!important;
  box-shadow:0 13px 28px rgba(120,0,179,.23);
}
.service-card h3{transition:color .3s ease,transform .3s ease}
.service-card:hover h3{color:var(--brand-purple)!important;transform:translateX(3px)}
.service-card:hover a{transform:translateX(4px)}
.service-card a{transition:transform .3s ease,color .3s ease!important}

/* Directional scroll reveals — each block arrives from a side or below */
.reveal-on-scroll{
  --reveal-x:0px;
  --reveal-y:48px;
  --reveal-scale:.975;
  opacity:0!important;
  filter:blur(5px);
  transform:translate3d(var(--reveal-x),var(--reveal-y),0) scale(var(--reveal-scale))!important;
  transition-property:opacity,transform,filter!important;
  transition-duration:.88s,.88s,.7s!important;
  transition-timing-function:ease,cubic-bezier(.16,.82,.24,1),ease!important;
  will-change:transform,opacity,filter;
}
.reveal-on-scroll.reveal-from-left{--reveal-x:-78px;--reveal-y:10px;--reveal-scale:.985}
.reveal-on-scroll.reveal-from-right{--reveal-x:78px;--reveal-y:10px;--reveal-scale:.985}
.reveal-on-scroll.reveal-from-bottom{--reveal-x:0px;--reveal-y:62px;--reveal-scale:.97}
.reveal-on-scroll.reveal-from-top{--reveal-x:0px;--reveal-y:-42px;--reveal-scale:.985}
.reveal-on-scroll.in-view{
  opacity:1!important;
  filter:blur(0)!important;
  transform:translate3d(0,0,0) scale(1)!important;
}
/* Hover transforms need to remain stronger once revealed */
.service-card.reveal-on-scroll.in-view:hover{transform:translateY(-17px) scale(1.025)!important}
.reference-tour-card.reveal-on-scroll.in-view:hover{transform:translateY(-16px) scale(1.025)!important}
.category-card.reveal-on-scroll.in-view:hover{transform:translateY(-15px) scale(1.035)!important}
.instagram-reel.reveal-on-scroll.in-view:hover{transform:translateY(-12px) scale(1.025)!important}
.reference-gallery-grid img.reveal-on-scroll.in-view:hover{transform:translateY(-9px) scale(1.035)!important}

@media(max-width:1020px){
  .popular-tour-carousel-viewport .reference-tour-card{flex-basis:calc((100% - 18px)/2)!important;width:calc((100% - 18px)/2)!important}
}
@media(max-width:700px){
  .popular-tour-carousel-shell{padding-left:42px;padding-right:42px}
  .popular-tour-slide-btn{width:40px;height:40px;font-size:17px}
  .popular-tour-carousel-viewport .reference-tour-card{flex-basis:100%!important;width:100%!important}
  .reveal-on-scroll.reveal-from-left{--reveal-x:-38px}
  .reveal-on-scroll.reveal-from-right{--reveal-x:38px}
  .reveal-on-scroll.reveal-from-bottom{--reveal-y:44px}
}
@media(prefers-reduced-motion:reduce){
  .popular-tour-carousel-viewport .reference-tour-grid{transition:none!important}
  .reveal-on-scroll{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}
}


/* Reveal safety: if JavaScript does not initialize, never leave real content invisible. */
html:not(.reveal-enabled) .reveal-on-scroll{
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}

/* =========================================================
   USER REVISION — brand-purple header + Tourm-style trip block
   ========================================================= */
:root{--header-button-purple:#9800c8;--header-button-purple-deep:#74009b;--trip-teal:#075968;--trip-cyan:#08acd0}

/* Header uses the same strong purple as the primary CTA reference */
.reference-header{
  background:linear-gradient(90deg,#8f00bc 0%,var(--header-button-purple) 52%,#a200cf 100%)!important;
  box-shadow:0 10px 30px rgba(109,0,139,.20)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
}
.reference-brand:before{background:linear-gradient(90deg,#fff,var(--brand-green))!important;height:3px!important}
.reference-nav a{color:rgba(255,255,255,.84)!important}
.reference-nav a:hover,.reference-nav a.active{color:#fff!important}
.reference-nav a:after{background:#7be16d!important}
.reference-book-btn{
  background:#fff!important;color:var(--header-button-purple)!important;border-color:#fff!important;
  box-shadow:0 9px 24px rgba(48,0,62,.18)!important;
}
.reference-book-btn span{color:var(--header-button-purple)!important}
.reference-book-btn:hover{background:#f6effa!important;color:var(--header-button-purple-deep)!important;transform:translateY(-2px) scale(1.02)!important}
.menu-toggle.reference-menu-toggle{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.32)!important}
.menu-toggle.reference-menu-toggle:hover{background:#fff!important;border-color:#fff!important;transform:rotate(4deg) scale(1.04)!important}
.menu-toggle.reference-menu-toggle:hover span{background:var(--header-button-purple)!important}
.site-sidebar{background:linear-gradient(180deg,#79009e,#3a1245)!important}

/* Refined Plan Your Trip section matching supplied reference composition */
.reference-trip-planner{
  padding:84px 0 76px!important;
  background:#fff!important;
  position:relative!important;
  overflow:hidden!important;
}
.reference-trip-planner:before{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#e3f5f7}
.reference-trip-planner:after{display:none!important}
.reference-trip-grid{
  display:grid!important;
  grid-template-columns:minmax(410px,1.05fr) minmax(360px,.86fr) minmax(190px,.42fr)!important;
  gap:44px!important;
  align-items:center!important;
  min-height:470px!important;
}
.trip-art-panel{position:relative;min-height:440px}
.trip-collage{position:relative;height:440px;width:100%;max-width:520px;margin-left:auto}
.trip-photo{position:absolute;overflow:hidden;background:#eef5f5;border:6px solid #fff;box-shadow:0 14px 35px rgba(24,71,79,.12);transition:transform .55s cubic-bezier(.2,.75,.2,1),box-shadow .55s ease,filter .45s ease}
.trip-photo img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.75,.2,1)}
.trip-photo-main{width:47%;height:410px;left:5%;top:10px;border-radius:150px 150px 45px 45px}
.trip-photo-top{width:39%;height:205px;right:5%;top:8px;border-radius:120px 120px 42px 42px}
.trip-photo-bottom{width:39%;height:205px;right:5%;bottom:3px;border-radius:100px 100px 130px 130px}
.trip-photo:hover{transform:translateY(-10px) scale(1.025);box-shadow:0 28px 55px rgba(22,84,95,.20);filter:saturate(1.08)}
.trip-photo:hover img{transform:scale(1.07)}
.trip-balloon{position:absolute;z-index:3;width:20px;height:29px;border:2px solid #17b8d8;border-radius:50% 50% 46% 46%;opacity:.85}
.trip-balloon:before{content:"";position:absolute;left:50%;bottom:-13px;width:1px;height:13px;background:#17b8d8;transform:translateX(-50%)}
.trip-balloon:after{content:"";position:absolute;left:50%;bottom:-16px;width:6px;height:5px;border-top:1.5px solid #17b8d8;transform:translateX(-50%)}
.balloon-a{left:-18px;top:45px;transform:scale(.75)}
.balloon-b{left:16px;top:93px;transform:scale(.48)}

.trip-content{position:relative;z-index:3;padding:5px 0}
.trip-script{font-family:"Montez",cursive!important;font-size:28px!important;line-height:1!important;margin:0 0 2px!important;color:#1b3e45!important;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}
.trip-content h2{margin:0 0 18px!important;font-family:"DM Sans",sans-serif!important;font-size:42px!important;line-height:1.08!important;letter-spacing:-1.5px!important;color:#064f5b!important;font-weight:700!important}
.trip-intro{margin:0 0 17px!important;color:#7b8588!important;font-size:13.5px!important;line-height:1.65!important;max-width:500px}
.trip-feature{display:grid;grid-template-columns:48px 1fr;gap:13px;align-items:start;margin:15px 0}
.trip-feature-icon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--trip-cyan);color:#fff;font-size:18px;font-weight:700;box-shadow:0 8px 18px rgba(8,172,208,.18);transition:.3s ease}
.trip-feature h3{margin:0 0 3px!important;font-size:16px!important;line-height:1.2!important;color:#075563!important;font-weight:700!important}
.trip-feature p{margin:0!important;color:#8b9598!important;font-size:12px!important;line-height:1.55!important}
.trip-feature:hover .trip-feature-icon{transform:translateY(-3px) rotate(-5deg) scale(1.08);background:var(--header-button-purple)}
.trip-learn-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;margin-top:8px;padding:12px 20px;border-radius:999px;background:#075563;color:#fff;font-size:12px;font-weight:700;transition:.3s ease;box-shadow:0 10px 22px rgba(7,85,99,.15)}
.trip-learn-btn:hover{background:var(--header-button-purple);transform:translateY(-3px);box-shadow:0 14px 28px rgba(152,0,200,.22)}
.trip-learn-btn span{font-size:16px}

.trip-traveler{display:flex;align-items:center;justify-content:center;min-height:410px;position:relative}
.trip-traveler:before{content:"";position:absolute;width:205px;height:205px;border-radius:50%;background:#e8f7f8;z-index:0}
.trip-traveler img{position:relative;z-index:2;width:100%;max-width:205px;height:auto;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 16px 20px rgba(28,81,88,.10));transition:transform .55s cubic-bezier(.2,.75,.2,1)}
.trip-traveler:hover img{transform:translateY(-8px) scale(1.03)}

@media(max-width:1100px){
  .reference-trip-grid{grid-template-columns:minmax(380px,1fr) minmax(350px,.9fr)!important;gap:38px!important}
  .trip-traveler{display:none!important}
}
@media(max-width:780px){
  .reference-trip-planner{padding:64px 0!important}
  .reference-trip-grid{grid-template-columns:1fr!important;gap:28px!important}
  .trip-art-panel{min-height:390px}
  .trip-collage{height:390px;max-width:520px;margin:auto}
  .trip-photo-main{height:365px}
  .trip-photo-top,.trip-photo-bottom{height:180px}
  .trip-content{text-align:left}
  .trip-content h2{font-size:36px!important}
}
@media(max-width:520px){
  .trip-art-panel{min-height:330px}
  .trip-collage{height:330px}
  .trip-photo-main{width:52%;height:315px;left:0;border-width:4px}
  .trip-photo-top,.trip-photo-bottom{width:45%;height:153px;right:0;border-width:4px}
  .trip-content h2{font-size:32px!important}
  .trip-script{font-size:24px!important}
}


/* Google Review Premium Theme Update */
.google-reviews-section{
 background:#f8fafc!important;
}
.review-summary{
 background:#fff!important;
 color:#202124!important;
 border:1px solid #e8eaed!important;
 box-shadow:0 20px 55px rgba(60,64,67,.12)!important;
}
.summary-rings{border-color:rgba(66,133,244,.25)!important;}
.review-summary:before{
 content:"";position:absolute;left:0;right:0;top:0;height:5px;
 background:linear-gradient(90deg,#4285F4 0 25%,#EA4335 25% 50%,#FBBC05 50% 75%,#34A853 75%);
}
.review-summary-kicker,.reviews-kicker{color:#4285f4!important;}
.review-summary h2{font-weight:700!important;color:#202124!important;}
.google-mark{background:#fff!important;color:#4285f4!important;border:3px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#4285f4,#ea4335,#fbbc05,#34a853)!important;background-origin:border-box;background-clip:padding-box,border-box;}
.rating-lockup>strong{font-family:"DM Sans",sans-serif!important;font-weight:700!important;color:#202124!important;}
.gold-stars{color:#fbbc04!important;font-size:15px!important;}
.rating-lockup small{color:#5f6368!important;}
.verified-line{background:#f1f3f4;border-radius:30px;padding:12px 14px;color:#5f6368!important;}
.review-btn-light{border:1px solid #4285f4;color:#1a73e8!important;background:#fff!important;}
.review-btn-gold{background:#4285f4!important;}
.review-summary-actions .review-btn-gold:after{content:" G";color:#fff;font-weight:800;}
.reviews-heading-row h2{font-weight:700!important;font-size:42px!important;color:#202124!important;}
.google-review-card{border:1px solid #e8eaed!important;box-shadow:0 12px 30px rgba(60,64,67,.08)!important;}
.google-review-top strong{color:#202124!important;}
.google-review-card:nth-child(3n+1){border-bottom:4px solid #4285f4!important}
.google-review-card:nth-child(3n+2){border-bottom:4px solid #ea4335!important}
.google-review-card:nth-child(3n+3){border-bottom:4px solid #fbbc04!important}
.google-review-foot b{color:#34a853!important;}
.review-arrow{border-color:#d2e3fc!important;color:#1a73e8!important;}
