/*
Theme Name:  Golden Triangle Luxury
Theme URI:   https://goldentriangletourpackagesindia.com
Author:      Squid Travel India — Vivek Sharma
Author URI:  https://squidtravelindia.com
Description: Ultra-luxury private Golden Triangle tour theme. Custom Itinerary CPT with day-by-day editor, Gallery manager, team editor — no ACF required. All content editable from WP admin.
Version:     4.0
Requires at least: 6.2
Tested up to: 6.7
Requires PHP: 8.0
License:     Private — All Rights Reserved Squid Travel India
Text Domain: gtt
*/

/* ═══════════════════════════════════════
   TOKENS
═══════════════════════════════════════ */
:root{
  --bg:#FAFAF7; --bg2:#F3F1EC; --bg3:#EAE6DD;
  --ink:#12121A; --body:#38384A; --muted:#787890; --ghost:#ABABBE; --rule:#E0DDD5;
  --gold:#C8A46A; --gold2:#E4CFA0; --gold3:#A07840; --gold4:#F7EDDA;
  --obs:#0B0C10; --obs2:#13141A; --obs3:#1A1C26; --obs4:#212334;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'DM Sans',system-ui,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;font-size:19px;}
body{font-family:var(--sans);background:var(--bg);color:var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased;font-size:18px;line-height:1.7;}
img{display:block;max-width:100%;height:auto;}
a{text-decoration:none;color:inherit;}
p{line-height:1.75;}
::-webkit-scrollbar{width:3px;}
::-webkit-scrollbar-thumb{background:var(--gold3);}

/* ─── Progress bar ─── */
#spb{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,var(--gold3),var(--gold2));z-index:10000;pointer-events:none;transition:width .1s;}

/* ─── Custom cursor ─── */
@media(hover:hover){
  #cdot{position:fixed;width:5px;height:5px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .2s,height .2s;}
  #cring{position:fixed;width:30px;height:30px;border-radius:50%;border:1px solid rgba(200,164,106,.35);pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:left .08s,top .08s,width .2s,height .2s;}
}

/* ─── Ticker ─── */
.ticker{background:var(--obs);height:30px;overflow:hidden;display:flex;align-items:center;}
.tt{display:inline-flex;animation:rtick 52s linear infinite;white-space:nowrap;}
.ti{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.25);padding:0 22px;}
.ti::before{content:'';width:3px;height:3px;background:var(--gold);border-radius:50%;flex-shrink:0;}
@keyframes rtick{to{transform:translateX(-50%);}}

/* ─── Header ─── */
#hdr{position:fixed;top:30px;left:0;right:0;z-index:900;height:64px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;transition:all .4s var(--ease);}
#hdr.pinned{top:0!important;background:rgba(11,12,16,.92);backdrop-filter:blur(24px);border-bottom:1px solid rgba(200,164,106,.08);}
#hdr.lhdr{top:0;background:rgba(250,250,247,.97);backdrop-filter:blur(22px);border-bottom:1px solid var(--rule);box-shadow:0 1px 24px rgba(18,18,26,.05);}
.logo{display:flex;align-items:center;gap:11px;cursor:pointer;}
.lsvg{width:38px;height:38px;flex-shrink:0;}
.ltxt .l1{font-family:var(--serif);font-size:17px;font-weight:400;color:#fff;letter-spacing:.8px;line-height:1;display:block;}
.ltxt .l2{font-size:12px;font-weight:300;color:var(--gold);letter-spacing:4.5px;text-transform:uppercase;margin-top:3px;display:block;}
#hdr.lhdr .ltxt .l1,#hdr.pinned .ltxt .l1{color:var(--ink);}
#hdr.lhdr .ltxt .l2{color:var(--gold3);}
nav.hn{display:flex;align-items:center;gap:24px;}
nav.hn a{font-size:13.5px;font-weight:300;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.55);position:relative;padding-bottom:3px;transition:color .25s;}
nav.hn a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--gold);transition:width .3s var(--ease);}
nav.hn a:hover,nav.hn a.cur{color:#fff;}
nav.hn a:hover::after,nav.hn a.cur::after{width:100%;}
#hdr.lhdr nav.hn a{color:var(--muted);}
#hdr.lhdr nav.hn a:hover,#hdr.lhdr nav.hn a.cur{color:var(--ink);}
#hdr.lhdr nav.hn a::after{background:var(--gold3);}
.hright{display:flex;align-items:center;gap:12px;}
.hph{font-size:13.5px;font-weight:300;color:rgba(255,255,255,.4);}
.hph strong{color:rgba(255,255,255,.75);font-weight:400;}
#hdr.lhdr .hph{color:var(--muted);}
#hdr.lhdr .hph strong{color:var(--ink);}
.hbtn{padding:8px 18px;font-size:13px;font-weight:300;letter-spacing:2.5px;text-transform:uppercase;border:1px solid rgba(200,164,106,.4);color:var(--gold2);background:transparent;cursor:pointer;transition:all .3s;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);}
.hbtn:hover{background:var(--gold);border-color:var(--gold);color:var(--obs);}
#hdr.lhdr .hbtn{border-color:var(--ink);color:var(--ink);}
#hdr.lhdr .hbtn:hover{background:var(--ink);color:var(--gold2);}
.ham{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;}
.ham span{display:block;width:20px;height:1px;background:rgba(255,255,255,.65);transition:.3s;}
#hdr.lhdr .ham span{background:var(--ink);}
.mnav{display:none;position:fixed;inset:0;background:rgba(8,9,12,.97);backdrop-filter:blur(18px);z-index:800;flex-direction:column;align-items:center;justify-content:center;gap:16px;}
.mnav.open{display:flex;}
.mnav a{font-family:var(--serif);font-size:36px;font-style:italic;font-weight:300;color:rgba(255,255,255,.45);transition:color .25s;}
.mnav a:hover{color:var(--gold2);}
.mnav-x{position:absolute;top:18px;right:5%;background:none;border:none;cursor:pointer;color:rgba(255,255,255,.2);font-size:20px;padding:8px;}

/* ─── Hero ─── */
.hero{position:relative;height:100vh;min-height:660px;overflow:hidden;display:flex;align-items:center;background:var(--obs);}
.hslide{position:absolute;inset:0;opacity:0;background-size:cover;background-position:center;}
.hslide.on{opacity:1;animation:kb 9s ease forwards;}
@keyframes kb{0%{transform:scale(1);}100%{transform:scale(1.07);}}
.hveil{position:absolute;inset:0;z-index:2;background:linear-gradient(110deg,rgba(8,9,12,.88) 0%,rgba(8,9,12,.5) 48%,rgba(8,9,12,.12) 100%),linear-gradient(to top,rgba(8,9,12,.95) 0%,transparent 46%);}
.hcorner{position:absolute;inset:16px;z-index:3;pointer-events:none;}
.hcorner::before{content:'';position:absolute;top:0;left:0;width:44px;height:44px;border-top:1px solid var(--gold);border-left:1px solid var(--gold);}
.hcorner::after{content:'';position:absolute;top:0;right:0;width:44px;height:44px;border-top:1px solid var(--gold);border-right:1px solid var(--gold);}
.hcorner2{position:absolute;inset:16px;z-index:3;pointer-events:none;}
.hcorner2::before{content:'';position:absolute;bottom:0;left:0;width:44px;height:44px;border-bottom:1px solid var(--gold);border-left:1px solid var(--gold);}
.hcorner2::after{content:'';position:absolute;bottom:0;right:0;width:44px;height:44px;border-bottom:1px solid var(--gold);border-right:1px solid var(--gold);}
.hmandala{position:absolute;right:-3%;top:50%;z-index:2;width:min(600px,55vw);height:min(600px,55vw);opacity:.05;pointer-events:none;animation:mspin 140s linear infinite;transform:translateY(-50%);}
.hvl{position:absolute;left:4.2%;top:0;bottom:0;z-index:3;pointer-events:none;}
.hvl::before{content:'';position:absolute;top:8%;bottom:8%;left:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(200,164,106,.42) 28%,rgba(200,164,106,.22) 72%,transparent);}
.hvdot{position:absolute;top:35%;left:-4.5px;width:9px;height:9px;background:var(--gold);border-radius:50%;animation:hpulse 3.5s ease infinite;}
@keyframes hpulse{0%,100%{box-shadow:0 0 0 0 rgba(200,164,106,.4);}60%{box-shadow:0 0 0 13px rgba(200,164,106,0);}}
.hwrap{position:relative;z-index:4;padding:0 calc(5% + 35px);width:100%;max-width:1280px;margin:0 auto;}
.htag{display:flex;align-items:center;gap:12px;margin-bottom:24px;animation:fup .8s var(--ease) .2s both;}
.htag-line{width:24px;height:1px;background:var(--gold);}
.htag span{font-size:13px;font-weight:300;letter-spacing:6px;text-transform:uppercase;color:var(--gold);}
.htitle{font-family:var(--serif);font-size:clamp(52px,9vw,116px);font-weight:300;line-height:.87;color:#fff;margin-bottom:24px;}
.htpre{display:block;font-family:var(--sans);font-size:clamp(10px,1.1vw,13px);font-weight:200;letter-spacing:9px;text-transform:uppercase;color:rgba(255,255,255,.26);margin-bottom:14px;animation:fup .8s var(--ease) .3s both;}
.htm{display:block;overflow:hidden;} .htm span{display:block;transform:translateY(110%);animation:tsl .9s var(--ease) .42s forwards;}
.htg{display:block;overflow:hidden;} .htg span{display:block;font-style:italic;color:var(--gold2);transform:translateY(110%);animation:tsl .9s var(--ease) .56s forwards;}
@keyframes tsl{to{transform:none;}} @keyframes fup{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}
.hsub{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(14px,1.4vw,17px);color:rgba(255,255,255,.46);max-width:390px;line-height:1.88;margin-bottom:40px;animation:fup .8s var(--ease) .75s both;}
.hctas{display:flex;align-items:center;gap:16px;flex-wrap:wrap;animation:fup .8s var(--ease) .9s both;}
.hstrip{position:absolute;bottom:0;left:0;right:0;z-index:4;display:flex;border-top:1px solid rgba(200,164,106,.09);background:rgba(8,9,12,.72);backdrop-filter:blur(14px);}
.hcity{flex:1;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;border-right:1px solid rgba(200,164,106,.06);cursor:pointer;transition:background .3s;text-decoration:none;}
.hcity:last-child{border-right:none;}
.hcity:hover{background:rgba(200,164,106,.04);}
.hcn{font-family:var(--serif);font-size:clamp(12px,1.4vw,16px);font-weight:300;color:#fff;line-height:1;}
.hcs{display:block;font-size:12.5px;font-weight:200;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.22);margin-top:3px;}
.hcnum{font-family:var(--serif);font-size:clamp(22px,3vw,38px);font-style:italic;font-weight:300;color:rgba(200,164,106,.1);}
.hdots{position:absolute;right:3%;top:50%;transform:translateY(-50%);z-index:4;display:flex;flex-direction:column;gap:8px;}
.hd{width:1.5px;height:12px;background:rgba(255,255,255,.1);cursor:pointer;transition:all .3s;}
.hd.on{height:34px;background:var(--gold);}

/* ─── Trust bar ─── */
.tbar{background:var(--obs2);padding:16px 5%;border-bottom:1px solid rgba(200,164,106,.07);}
.tbar-in{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.tbar-lbl{font-size:12.5px;font-weight:300;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.16);}
.tbar-logos{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.tl{font-family:var(--serif);font-size:15.5px;font-style:italic;font-weight:300;color:rgba(255,255,255,.16);transition:color .3s;}
.tl:hover{color:var(--gold);}

/* ─── Stats ─── */
.stats{background:var(--bg);}
.stats-in{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--rule);}
.sbox{padding:48px 14px;text-align:center;border-right:1px solid var(--rule);transition:background .3s;}
.sbox:last-child{border-right:none;}
.sbox:hover{background:var(--bg2);}
.sn{font-family:var(--serif);font-size:clamp(38px,5vw,62px);font-weight:300;font-style:italic;color:var(--ink);line-height:1;display:block;}
.sl{display:block;font-size:13px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:var(--gold3);margin-top:8px;}

/* ─── Shared layout ─── */
.sec{padding:88px 5%;}
.inner{max-width:1280px;margin:0 auto;}
.ey{display:inline-flex;align-items:center;gap:10px;margin-bottom:9px;}
.ey::before{content:'';width:20px;height:1px;background:var(--gold3);}
.ey span{font-size:13px;font-weight:300;letter-spacing:4.5px;text-transform:uppercase;color:var(--gold3);}
.ey.lt::before{background:var(--gold2);}
.ey.lt span{color:var(--gold2);}
.sh{font-family:var(--serif);font-size:clamp(28px,3.8vw,50px);font-weight:300;line-height:1.08;color:var(--ink);}
.sh em{font-style:italic;color:var(--gold3);}
.sh.dk{color:#fff;} .sh.dk em{color:var(--gold2);}
.ssub{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(14px,1.4vw,16px);color:var(--muted);line-height:1.9;max-width:480px;margin-top:11px;}

/* ─── Page hero (inner pages) ─── */
.phero{height:50vh;min-height:400px;position:relative;overflow:hidden;display:flex;align-items:flex-end;background:var(--obs);}
.phero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5;}
.phero-veil{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,9,12,.95) 0%,rgba(8,9,12,.4) 55%,transparent 100%);}
.phero-cnt{position:relative;z-index:3;padding:0 5% 48px;width:100%;max-width:1280px;margin:0 auto;}
.phero-ey{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.phero-ey::before{content:'';width:18px;height:1px;background:var(--gold);}
.phero-ey span{font-size:13px;font-weight:300;letter-spacing:5px;text-transform:uppercase;color:var(--gold);}
.phero-t{font-family:var(--serif);font-size:clamp(34px,5.5vw,68px);font-weight:300;line-height:.93;color:#fff;}
.phero-t em{font-style:italic;color:var(--gold2);}
.phero-s{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(13px,1.4vw,17px);color:rgba(255,255,255,.45);margin-top:9px;max-width:480px;}

/* ─── Ornament divider ─── */
.ornm{display:flex;align-items:center;padding:12px 5%;gap:13px;}
.ornm .ol{flex:1;height:1px;}
.ornm.lgt .ol{background:linear-gradient(to right,transparent,var(--rule),transparent);}
.ornm.dk .ol{background:linear-gradient(to right,transparent,rgba(200,164,106,.14),transparent);}
.ornm.bg2 .ol{background:linear-gradient(to right,transparent,var(--bg3),transparent);}
.ornm svg{width:38px;height:38px;flex-shrink:0;opacity:.45;animation:mspin 28s linear infinite;}
@keyframes mspin{to{transform:rotate(360deg);}}

/* ─── Scroll reveal ─── */
.rv{opacity:0;}
.rv.in{animation:fup .65s var(--ease) forwards;}

/* ─── Buttons ─── */
.btn-g{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--obs);padding:12px 30px;font-size:13px;font-weight:400;letter-spacing:3px;text-transform:uppercase;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%);transition:background .3s;border:none;cursor:pointer;}
.btn-g:hover{background:var(--gold2);}
.btn-o{display:inline-flex;align-items:center;gap:7px;padding:11px 26px;font-size:13px;font-weight:300;letter-spacing:2.5px;text-transform:uppercase;border:1px solid var(--gold3);color:var(--gold3);cursor:pointer;background:transparent;transition:all .3s;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);}
.btn-o:hover{background:var(--gold3);color:var(--bg);}
.btn-dk{display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:var(--gold2);padding:12px 30px;font-size:13px;font-weight:300;letter-spacing:2.5px;text-transform:uppercase;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%);transition:background .3s;border:none;cursor:pointer;}
.btn-dk:hover{background:var(--gold3);color:var(--obs);}
.btn-ghost{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.5);border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:3px;transition:all .25s;}
.btn-ghost:hover{color:var(--gold2);border-color:rgba(200,164,106,.45);}

/* ─── Journey cards ─── */
.jcard{display:block;background:var(--obs3);border:1px solid rgba(200,164,106,.1);overflow:hidden;transition:transform .45s var(--ease),border-color .4s,box-shadow .4s;}
.jcard:hover{transform:translateY(-7px);border-color:rgba(200,164,106,.38);box-shadow:0 28px 64px rgba(0,0,0,.5);}
.jcard-img{height:225px;overflow:hidden;position:relative;}
.jcard-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter 1s;}
.jcard:hover .jcard-img img{transform:scale(1.1);filter:brightness(.3) saturate(.5);}
.jcard-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(8,9,12,.95) 0%,transparent 54%);}
.jcard-ov{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s;}
.jcard:hover .jcard-ov{opacity:1;}
.jcard-ovb{font-size:12.5px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:var(--gold2);border:1px solid rgba(200,164,106,.32);padding:8px 20px;backdrop-filter:blur(6px);background:rgba(8,9,12,.3);}
.jbadge{position:absolute;top:11px;left:11px;z-index:2;font-size:12px;letter-spacing:2px;text-transform:uppercase;padding:3px 8px;border:1px solid rgba(200,164,106,.32);color:var(--gold2);background:rgba(8,9,12,.5);backdrop-filter:blur(6px);}
.jbody{padding:18px 16px 20px;}
.jdur{font-size:12px;font-weight:300;letter-spacing:2px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:5px;}
.jname{font-family:var(--serif);font-size:22px;font-weight:300;color:#fff;line-height:1.15;margin-bottom:7px;}
.jdesc{font-size:15px;font-weight:200;color:rgba(255,255,255,.36);line-height:1.8;margin-bottom:12px;}
.jtags{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:13px;}
.jtag{font-size:12px;font-weight:200;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.26);border:1px solid rgba(255,255,255,.07);padding:2px 7px;}
.jfoot{display:flex;align-items:center;justify-content:space-between;padding-top:11px;border-top:1px solid rgba(255,255,255,.06);}
.jprice{font-size:12.5px;font-weight:300;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.26);}
.jarr{width:30px;height:30px;border:1px solid rgba(200,164,106,.22);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:15px;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%);transition:all .3s;}
.jcard:hover .jarr{background:var(--gold);color:var(--obs);}

/* Slider controls */
.sl-ctrl{display:flex;align-items:center;gap:8px;}
.sla{width:34px;height:34px;background:transparent;border:1px solid rgba(200,164,106,.2);color:rgba(200,164,106,.5);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%);}
.sla:hover{background:var(--gold);border-color:var(--gold);color:var(--obs);}
.sla.lgt{border-color:var(--rule);color:var(--muted);}
.sla.lgt:hover{background:var(--ink);border-color:var(--ink);color:var(--gold2);}
.sdots{display:flex;gap:5px;}
.sdot{width:12px;height:1.5px;background:rgba(200,164,106,.15);cursor:pointer;transition:all .3s;}
.sdot.on{background:var(--gold);width:26px;}
.sdot.lgt{background:var(--rule);}
.sdot.lgt.on{background:var(--gold3);width:26px;}

/* ─── Form ─── */
.fg{display:flex;flex-direction:column;}
.fg label{font-size:12px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-bottom:7px;}
.fg input,.fg select,.fg textarea{background:transparent;border:none;border-bottom:1px solid var(--rule);padding:8px 0;color:var(--ink);font-family:var(--sans);font-size:15.5px;font-weight:300;outline:none;transition:border-color .3s;-webkit-appearance:none;border-radius:0;}
.fg input::placeholder,.fg textarea::placeholder{color:var(--ghost);}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-bottom-color:var(--gold3);}
.fg textarea{height:70px;resize:none;}
.fg-dk input,.fg-dk select,.fg-dk textarea{color:#fff;border-bottom-color:rgba(255,255,255,.1);}
.fg-dk input::placeholder,.fg-dk textarea::placeholder{color:rgba(255,255,255,.25);}
.fg-dk input:focus,.fg-dk select:focus,.fg-dk textarea:focus{border-bottom-color:var(--gold);}
.fg-dk label{color:rgba(255,255,255,.35);}

/* ─── Itinerary single ─── */
.itin-layout{display:grid;grid-template-columns:1fr 330px;gap:52px;align-items:start;}
.itin-sidebar{position:sticky;top:84px;}
.iov{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-bottom:44px;}
.iovb{background:var(--bg2);padding:18px;text-align:center;}
.iovl{font-size:12px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:5px;}
.iovv{font-family:var(--serif);font-size:22px;font-weight:300;color:var(--ink);}
.isec-t{font-family:var(--serif);font-size:28px;font-weight:300;color:var(--ink);margin-bottom:22px;padding-bottom:11px;border-bottom:1px solid var(--rule);}
.isec-t em{font-style:italic;color:var(--gold3);}
.day-item{border:1px solid var(--rule);margin-bottom:3px;overflow:hidden;}
.day-h{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;transition:background .3s;background:var(--bg);}
.day-h:hover,.day-item.open .day-h{background:var(--bg2);}
.day-item.open .day-h{border-bottom:1px solid var(--rule);}
.day-n{font-family:var(--serif);font-size:15px;font-style:italic;color:var(--gold3);min-width:52px;flex-shrink:0;}
.day-t{font-family:var(--serif);font-size:19px;font-weight:300;color:var(--ink);flex:1;}
.day-ic{width:20px;height:20px;border:1px solid var(--rule);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px;transition:all .3s;flex-shrink:0;}
.day-item.open .day-ic{background:var(--ink);color:var(--gold2);border-color:var(--ink);transform:rotate(45deg);}
.day-b{display:none;padding:20px 18px 20px 86px;}
.day-item.open .day-b{display:block;}
.day-b p{font-size:15.5px;font-weight:300;color:var(--body);line-height:1.85;margin-bottom:10px;}
.day-hls{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;}
.day-hl{font-size:12px;font-weight:300;letter-spacing:1.5px;text-transform:uppercase;border:1px solid var(--rule);padding:2px 8px;color:var(--muted);}
.incl-g{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:22px;}
.incl-i{display:flex;align-items:flex-start;gap:9px;padding:10px 0;border-bottom:1px solid var(--rule);}
.incl-c{color:var(--gold3);font-size:13.5px;flex-shrink:0;margin-top:2px;}
.incl-x .incl-c{color:var(--ghost);}
.incl-t{font-size:15px;font-weight:300;color:var(--body);}
.sc{background:var(--obs);padding:26px 22px;border:1px solid rgba(200,164,106,.12);}
.sc h3{font-family:var(--serif);font-size:22px;font-weight:300;color:#fff;margin-bottom:3px;}
.sc p.sub{font-family:var(--serif);font-style:italic;font-size:15px;color:rgba(255,255,255,.38);margin-bottom:20px;}
.sc-inp{background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.09);padding:9px 0;color:#fff;font-family:var(--sans);font-size:15.5px;font-weight:300;outline:none;width:100%;margin-bottom:13px;transition:border-color .3s;}
.sc-inp::placeholder{color:rgba(255,255,255,.24);}
.sc-inp:focus{border-bottom-color:var(--gold);}
.sc-btn{width:100%;background:var(--gold);color:var(--obs);border:none;padding:13px;font-family:var(--sans);font-size:13px;font-weight:400;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:background .3s;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%);}
.sc-btn:hover{background:var(--gold2);}
.sc-perks{margin-top:16px;display:flex;flex-direction:column;gap:7px;}
.sc-perk{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:200;color:rgba(255,255,255,.35);}
.sc-perk::before{content:'';width:3px;height:3px;background:var(--gold);border-radius:50%;flex-shrink:0;}
.sc-ph{margin-top:16px;padding:12px 14px;background:rgba(200,164,106,.05);border-left:1px solid rgba(200,164,106,.28);}
.sc-ph-l{font-size:12px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:3px;}
.sc-ph-n{font-family:var(--serif);font-size:19px;font-weight:300;color:#fff;}

/* ─── Archive ─── */
.arch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:44px;}
.afilters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:28px;}
.af{font-size:13px;font-weight:300;letter-spacing:2px;text-transform:uppercase;padding:7px 15px;border:1px solid var(--rule);color:var(--muted);cursor:pointer;transition:all .25s;background:transparent;}
.af:hover,.af.on{background:var(--ink);color:var(--gold2);border-color:var(--ink);}

/* ─── About ─── */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:48px;}
.tc{background:var(--bg2);border:1px solid var(--rule);overflow:hidden;transition:border-color .3s,box-shadow .3s;}
.tc:hover{border-color:var(--gold3);box-shadow:0 10px 36px rgba(18,18,26,.08);}
.tc img{width:100%;aspect-ratio:1;object-fit:cover;object-position:center top;filter:grayscale(.12) sepia(.04);}
.tc-b{padding:14px;}
.tc-n{font-family:var(--serif);font-size:17px;font-weight:400;color:var(--ink);display:block;}
.tc-r{font-size:13px;font-weight:300;letter-spacing:1.5px;color:var(--muted);margin-top:3px;display:block;}
.awards-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:40px;}
.aw{background:var(--bg2);border:1px solid var(--rule);padding:18px;display:flex;align-items:center;justify-content:center;}
.aw img{width:64px;height:64px;object-fit:contain;filter:grayscale(.25);}

/* ─── Contact ─── */
.contact-split{display:grid;grid-template-columns:1fr 1fr;min-height:580px;}
.cmap{overflow:hidden;background:var(--obs3);}
.cmap iframe{width:100%;height:100%;min-height:480px;border:none;filter:grayscale(.15) sepia(.08);}
.cinfo{background:var(--bg2);padding:58px 50px;display:flex;flex-direction:column;justify-content:center;}
.cinfo-title{font-family:var(--serif);font-size:36px;font-weight:300;color:var(--ink);margin-bottom:5px;}
.cinfo-sub{font-family:var(--serif);font-style:italic;font-size:16.5px;color:var(--muted);margin-bottom:32px;}
.ci{display:flex;gap:13px;margin-bottom:20px;align-items:flex-start;}
.ci-ic{width:36px;height:36px;background:var(--gold4);border:1px solid rgba(200,164,106,.28);display:flex;align-items:center;justify-content:center;font-size:15.5px;flex-shrink:0;}
.ci-l{font-size:12.5px;font-weight:300;letter-spacing:2px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:3px;}
.ci-v{font-family:var(--serif);font-size:18px;font-weight:300;color:var(--ink);}
.ci-v a{color:var(--ink);transition:color .25s;}
.ci-v a:hover{color:var(--gold3);}

/* ─── Gallery ─── */
.gal-masonry{columns:3;gap:3px;margin-top:44px;}
.gal-item{break-inside:avoid;margin-bottom:3px;overflow:hidden;position:relative;cursor:pointer;}
.gal-item img{width:100%;display:block;filter:brightness(.88) saturate(.88);transition:transform .8s var(--ease),filter .8s;}
.gal-item:hover img{transform:scale(1.05);filter:brightness(.55) saturate(.65);}
.gal-cap{position:absolute;bottom:0;left:0;right:0;padding:9px 11px;background:linear-gradient(to top,rgba(8,9,12,.88),transparent);font-size:13px;font-weight:300;letter-spacing:2px;text-transform:uppercase;color:var(--gold);opacity:0;transition:opacity .3s;}
.gal-item:hover .gal-cap{opacity:1;}

/* ─── Testimonials ─── */
.tcard{flex:0 0 355px;scroll-snap-align:start;background:var(--bg);border:1px solid var(--rule);padding:24px;position:relative;overflow:hidden;transition:border-color .4s,box-shadow .4s;}
.tcard::before{content:'';position:absolute;top:0;left:0;right:0;height:1.5px;background:linear-gradient(90deg,var(--gold3),var(--gold2));transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);}
.tcard:hover::before{transform:scaleX(1);}
.tcard:hover{border-color:var(--gold3);box-shadow:0 9px 30px rgba(20,20,28,.07);}

/* ─── WA FAB ─── */
.wa-fab{position:fixed;bottom:20px;right:20px;z-index:800;width:46px;height:46px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 20px rgba(37,211,102,.28);transition:transform .3s;}
.wa-fab:hover{transform:scale(1.1);}
.wa-pulse{position:absolute;inset:-7px;border-radius:50%;border:1.5px solid rgba(37,211,102,.24);animation:wap 3s ease infinite;}
@keyframes wap{0%{transform:scale(1);opacity:.5;}100%{transform:scale(1.4);opacity:0;}}

/* ─── Sticky CTA ─── */
.scta{position:fixed;bottom:0;left:0;right:0;z-index:700;background:rgba(8,9,12,.93);backdrop-filter:blur(18px);border-top:1px solid rgba(200,164,106,.09);padding:10px 5%;display:flex;align-items:center;justify-content:space-between;transform:translateY(100%);transition:transform .4s var(--ease);gap:12px;flex-wrap:wrap;}
.scta.show{transform:none;}
.scta-t{font-family:var(--serif);font-style:italic;font-size:15.5px;color:rgba(255,255,255,.42);}
.scta-t strong{font-style:normal;font-weight:400;color:#fff;}
.scta-acts{display:flex;align-items:center;gap:9px;}
.scta-ph{font-size:13.5px;font-weight:300;color:var(--gold);}
.scta-btn{display:inline-flex;align-items:center;gap:6px;background:var(--gold);color:var(--obs);padding:8px 16px;font-size:13px;font-weight:400;letter-spacing:2px;text-transform:uppercase;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);transition:background .25s;white-space:nowrap;}
.scta-btn:hover{background:var(--gold2);}
.scta-x{background:none;border:none;color:rgba(255,255,255,.18);font-size:18px;cursor:pointer;padding:4px 7px;}

/* ─── Footer ─── */
footer.sf{background:var(--obs);padding:58px 5% 24px;border-top:1px solid rgba(200,164,106,.08);}
.fg-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:42px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.04);margin-bottom:18px;}
.fbn{font-family:var(--serif);font-size:18px;font-weight:300;color:rgba(255,255,255,.8);margin-bottom:3px;}
.fbt{font-size:12px;font-weight:300;letter-spacing:4px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:10px;}
.fbd{font-family:var(--serif);font-style:italic;font-weight:300;font-size:14.5px;color:rgba(255,255,255,.22);line-height:1.8;max-width:248px;margin-bottom:12px;}
.fregs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:13px;}
.freg{font-size:12px;font-weight:300;letter-spacing:1.5px;text-transform:uppercase;border:1px solid rgba(255,255,255,.07);padding:2px 7px;color:rgba(255,255,255,.14);}
.fsoc{display:flex;gap:4px;}
.fsocl{width:26px;height:26px;border:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.18);font-size:13.5px;transition:all .25s;}
.fsocl:hover{background:var(--gold);border-color:var(--gold);color:var(--obs);}
.fcol h4{font-family:var(--serif);font-size:15px;font-weight:300;font-style:italic;color:rgba(255,255,255,.6);margin-bottom:12px;}
.flinks{list-style:none;display:flex;flex-direction:column;gap:7px;}
.flinks a{font-size:14px;font-weight:200;color:rgba(255,255,255,.2);transition:color .2s;}
.flinks a:hover{color:var(--gold2);}
.fci{display:flex;gap:7px;align-items:flex-start;margin-bottom:8px;}
.fci-ic{color:var(--gold3);flex-shrink:0;font-size:13.5px;margin-top:1px;}
.fci-txt{font-size:14px;font-weight:200;color:rgba(255,255,255,.2);line-height:1.65;}
.fci-txt a{color:rgba(255,255,255,.2);transition:color .2s;}
.fci-txt a:hover{color:var(--gold2);}
.fb{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:7px;}
.fb p{font-size:13.5px;font-weight:200;color:rgba(255,255,255,.1);}
.fb a{color:var(--gold3);}

/* ─── WP admin bar ─── */
body.admin-bar #hdr{top:calc(30px + 32px);}
body.admin-bar #hdr.pinned,body.admin-bar #hdr.lhdr{top:32px;}

/* ─── Responsive ─── */
@media(max-width:1100px){
  .fg-grid{grid-template-columns:1fr 1fr;gap:26px;}
  .team-grid{grid-template-columns:repeat(3,1fr);}
  .awards-grid{grid-template-columns:repeat(3,1fr);}
  .itin-layout{grid-template-columns:1fr;}
  .itin-sidebar{position:static;}
  .contact-split{grid-template-columns:1fr;}
  .arch-grid{grid-template-columns:repeat(2,1fr);}
  .stats-in{grid-template-columns:repeat(2,1fr);}
  .sbox:nth-child(2){border-right:none;}
}
@media(max-width:768px){
  nav.hn,.hph{display:none!important;}
  .ham{display:flex;}
  .hstrip,.hdots{display:none;}
  .fg-grid{grid-template-columns:1fr;}
  .team-grid{grid-template-columns:1fr 1fr;}
  .awards-grid{grid-template-columns:repeat(3,1fr);}
  .arch-grid{grid-template-columns:1fr;}
  .gal-masonry{columns:2;}
  .iov{grid-template-columns:1fr 1fr;}
  .incl-g{grid-template-columns:1fr;}
  .ticker{display:none;}
  #hdr{top:0!important;}
  .contact-split{grid-template-columns:1fr;}
  .cinfo{padding:40px 22px;}
  .scta-t,.scta-ph{display:none;}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition-duration:.01ms!important;}}
.alignwide{max-width:1280px;margin-left:auto;margin-right:auto;}

/* ─── Blog / Travel Journal article content ─── */
.gtt-article{font-size:17px;font-weight:300;color:var(--body);line-height:1.9;}
.gtt-article p{margin-bottom:20px;}
.gtt-article h2{font-family:var(--serif);font-size:32px;font-weight:300;color:var(--ink);margin:40px 0 18px;line-height:1.2;}
.gtt-article h3{font-family:var(--serif);font-size:25px;font-weight:300;color:var(--ink);margin:32px 0 14px;line-height:1.25;}
.gtt-article h4{font-family:var(--serif);font-size:21px;font-weight:400;color:var(--ink);margin:26px 0 12px;}
.gtt-article a{color:var(--gold3);text-decoration:underline;text-decoration-color:rgba(160,120,64,.3);}
.gtt-article a:hover{text-decoration-color:var(--gold3);}
.gtt-article ul,.gtt-article ol{margin:0 0 20px 22px;}
.gtt-article li{margin-bottom:9px;line-height:1.8;}
.gtt-article blockquote{font-family:var(--serif);font-style:italic;font-size:21px;font-weight:300;color:var(--gold3);border-left:2px solid var(--gold);padding-left:22px;margin:28px 0;line-height:1.7;}
.gtt-article img{width:100%;height:auto;margin:24px 0;border:1px solid var(--rule);}
.gtt-article figure{margin:24px 0;}
.gtt-article figcaption{font-size:14px;color:var(--ghost);text-align:center;margin-top:8px;font-style:italic;}
.gtt-article hr{border:none;border-top:1px solid var(--rule);margin:36px 0;}
.gtt-article strong{font-weight:500;color:var(--ink);}
.gtt-article code{background:var(--bg2);padding:2px 6px;font-size:15.5px;border-radius:2px;}
.gtt-article table{width:100%;border-collapse:collapse;margin:24px 0;}
.gtt-article table th,.gtt-article table td{border:1px solid var(--rule);padding:10px 12px;font-size:15.5px;text-align:left;}
.gtt-article table th{background:var(--bg2);font-weight:500;}

/* ─── Pagination (blog archive) ─── */
.page-numbers{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--rule);color:var(--muted);font-size:15px;margin:0 2px;transition:all .25s;}
.page-numbers.current{background:var(--ink);color:var(--gold2);border-color:var(--ink);}
.page-numbers:not(.current):hover{border-color:var(--gold3);color:var(--gold3);}
.page-numbers.dots{border:none;}
