/*!
 * Apex Hajj Umrah Travel & Tour — front-end styles
 * Design system ported from the Burak UI kit (tokens, components, detail + home pages)
 * followed by the WordPress layer. Colours are overridable via Theme Settings → Colors.
 */

/* =========================================================
   DESIGN TOKENS  (mirrors the Burak home page)
   ========================================================= */
:root{
  --ink:#12181b;          /* primary dark (hero, footer) */
  --ink-2:#1a2124;        /* dark section bg */
  --ink-3:#252d31;        /* dark card */
  --ink-4:#323b40;        /* dark card border / hover */
  --lime:#c8f031;         /* accent */
  --lime-d:#b3db1c;
  --paper:#ffffff;
  --mist:#f4f5f3;         /* light gray section */
  --line:#e7e9e6;
  --text:#14191c;
  --muted:#7d858a;
  --muted-d:#9aa3a8;
  --r-xl:28px; --r-lg:20px; --r-md:14px; --r-sm:10px; --pill:999px;
  --shadow:0 18px 40px -22px rgba(18,24,27,.28);
  --shadow-h:0 26px 50px -24px rgba(18,24,27,.42);
  --wrap:1200px;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,ul,ol,dl,dd{margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font,'Outfit'),system-ui,sans-serif;color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.55}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
img,svg{display:block;max-width:100%}
img{height:auto}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px;border-radius:6px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* =========================================================
   BASE LAYOUT
   ========================================================= */
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.sec{padding:110px 0}
.sec.tight{padding:80px 0}
.sec.mist{background:var(--mist)}
.sec.dark{background:var(--ink-2);color:#fff}
.grid{display:grid;gap:24px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}

/* Headings: light weight with semibold emphasis — the home page signature */
.h1{font-size:64px;line-height:1.05;font-weight:300;letter-spacing:-.02em}
.h2{font-size:40px;line-height:1.15;font-weight:300;letter-spacing:-.015em}
.h3{font-size:22px;line-height:1.25;font-weight:500}
.h1 b,.h2 b{font-weight:600}
.h1 em{font-style:normal;font-weight:600;color:var(--lime)}
.eyebrow{font-size:13px;color:var(--muted);margin-bottom:14px}
.eyebrow b{color:var(--text);font-weight:600}
.dark .eyebrow b{color:#fff}
.lead{color:var(--muted);font-size:16px;max-width:52ch}
.lead b{color:var(--text);font-weight:500}
.dark .lead{color:var(--muted-d)} .dark .lead b{color:#fff}
.head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:56px}
.head.center{flex-direction:column;align-items:center;text-align:center}
.head .side{max-width:360px}

/* Buttons: pill + circular arrow chip */
.btn{display:inline-flex;align-items:center;gap:12px;padding:6px 6px 6px 20px;border-radius:var(--pill);font-weight:500;font-size:14px;cursor:pointer;border:0;transition:transform .25s var(--ease),background .25s}
.btn .arr{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;transition:transform .3s var(--ease)}
.btn:hover .arr{transform:rotate(45deg)}
.btn-lime{background:var(--lime);color:var(--ink)} .btn-lime .arr{background:var(--ink);color:var(--lime)}
.btn-lime:hover{background:var(--lime-d)}
.btn-dark{background:var(--ink);color:#fff} .btn-dark .arr{background:var(--lime);color:var(--ink)}
.btn-white{background:#fff;color:var(--ink)} .btn-white .arr{background:var(--ink);color:#fff}
.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line);padding:10px 18px}
.btn-ghost:hover{border-color:var(--text)}
.btn.full{width:100%;justify-content:space-between}
.circ{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:.25s var(--ease);background:#fff;flex:none}
.card:hover .circ,.circ.on{background:var(--lime);border-color:var(--lime);transform:rotate(45deg)}

/* =========================================================
   HEADER
   ========================================================= */
.hdr{position:absolute;top:0;left:0;right:0;z-index:20}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:84px}
.logo{display:flex;align-items:center;gap:10px;font-weight:600;font-size:22px;color:#fff}
.logo i{width:32px;height:32px;border-radius:50%;background:var(--lime);display:grid;place-items:center;color:var(--ink);font-style:normal}
.nav{display:flex;gap:6px;align-items:center}
.nav>div{position:relative}
.nav a.l{color:#fff;opacity:.78;font-size:14px;padding:10px 14px;border-radius:var(--pill);display:flex;align-items:center;gap:4px;cursor:pointer}
.nav a.l:hover,.nav a.l.on{opacity:1}
.nav a.l.on{background:rgba(255,255,255,.08)}
.dd{position:absolute;top:100%;left:0;min-width:200px;background:#fff;border-radius:var(--r-md);padding:8px;box-shadow:var(--shadow-h);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s var(--ease)}
.nav>div:hover .dd{opacity:1;visibility:visible;transform:none}
.dd a{display:block;padding:10px 12px;border-radius:8px;font-size:14px;color:var(--text);cursor:pointer}
.dd a:hover{background:var(--mist)}
.burger{display:none;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1);border:0;color:#fff;place-items:center;cursor:pointer}
.drawer{display:none}

/* =========================================================
   PAGE HERO (inner pages)
   ========================================================= */
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden;padding:190px 0 150px;text-align:center}
.hero .art{position:absolute;inset:0;opacity:.55}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,24,27,.75) 0%,rgba(18,24,27,.35) 45%,rgba(18,24,27,.95) 100%)}
.hero .wrap{position:relative;z-index:2}
.crumb{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--pill);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:13px;margin-bottom:26px;backdrop-filter:blur(6px)}
.crumb a{opacity:.7} .crumb span{color:var(--lime)}
.hero p{color:#c3cacd;max-width:54ch;margin:22px auto 0}
.hero.has-panel{padding-bottom:210px}
.panel-wrap{position:relative;z-index:5;margin-top:-120px}

/* Search / filter panel (same as home "Select Your Journey") */
.panel{background:#fff;border-radius:var(--r-lg);padding:28px 28px 26px;box-shadow:var(--shadow-h)}
.panel h4{font-weight:400;font-size:18px;margin-bottom:18px}
.panel h4 b{font-weight:600}
.fields{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:14px;align-items:end}
.fld label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}
.ctl{display:flex;align-items:center;gap:8px;background:var(--mist);border:1px solid transparent;border-radius:var(--pill);padding:0 16px;height:46px;font-size:14px;transition:border .2s}
.ctl:focus-within{border-color:var(--lime);background:#fff}
.ctl input,.ctl select{border:0;background:transparent;outline:0;width:100%;height:100%;appearance:none;cursor:pointer}
.ctl svg{flex:none;color:var(--muted)}

/* =========================================================
   CARDS
   ========================================================= */
.card{background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);transition:transform .35s var(--ease),box-shadow .35s var(--ease);display:flex;flex-direction:column}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-h)}
.media{position:relative;aspect-ratio:4/3;overflow:hidden;background:#2a3236}
.media .art{position:absolute;inset:0;transition:transform .6s var(--ease)}
.card:hover .media .art{transform:scale(1.05)}
.tag{position:absolute;top:14px;left:14px;background:rgba(18,24,27,.72);color:#fff;font-size:12px;padding:5px 12px;border-radius:var(--pill);backdrop-filter:blur(6px)}
.tag.lime{background:var(--lime);color:var(--ink);font-weight:600}
.body{padding:22px 22px 22px;display:flex;flex-direction:column;flex:1}
.body p{color:var(--muted);font-size:14px;margin:8px 0 14px}
.feat{list-style:none;display:grid;gap:7px;font-size:13px;color:var(--muted);margin-bottom:18px}
.feat li{display:flex;gap:8px;align-items:center}
.feat svg{color:var(--text)}
.feat.cols{grid-template-columns:1fr 1fr}
.foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--line)}
.price{font-size:13px;color:var(--muted)}
.price b{font-size:24px;color:var(--text);font-weight:500;margin-left:4px}
.stars{display:flex;gap:2px;color:#f2b300}
.meta{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:var(--muted)}
.dist{display:inline-flex;align-items:center;gap:6px;font-size:13px;background:var(--mist);padding:5px 10px;border-radius:var(--pill);color:var(--text)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 18px}
.chip{font-size:12px;border:1px solid var(--line);padding:4px 10px;border-radius:var(--pill);color:var(--muted);display:inline-flex;gap:5px;align-items:center}
.btnrow{display:flex;gap:10px;margin-top:auto}
.btnrow .btn{flex:1;justify-content:center;padding:12px 14px}

/* Dark feature cards (Why Choose) */
.dcard{background:var(--ink-3);border:1px solid var(--ink-4);border-radius:var(--r-lg);padding:30px;min-height:240px;display:flex;flex-direction:column;transition:.3s var(--ease)}
.dcard:hover{border-color:var(--lime);transform:translateY(-4px)}
.ico{width:52px;height:52px;border-radius:50%;background:var(--ink-4);display:grid;place-items:center;color:#fff;margin-bottom:auto}
.dcard:hover .ico,.ico.on{background:var(--lime);color:var(--ink)}
.dcard h3{font-size:18px;font-weight:500;margin:40px 0 8px}
.dcard p{color:var(--muted-d);font-size:13px}

/* Light feature cards */
.lcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;transition:.3s var(--ease)}
.lcard:hover{border-color:var(--text);box-shadow:var(--shadow)}
.lcard .ico{background:var(--mist);color:var(--text);margin-bottom:26px}
.lcard:hover .ico{background:var(--lime)}
.lcard h3{font-size:18px;font-weight:500;margin-bottom:6px}
.lcard p{color:var(--muted);font-size:14px}

/* Image block with floating stat (from home About) */
.pic{position:relative;border-radius:var(--r-xl);overflow:hidden;min-height:520px;background:#2a3236}
.pic .art{position:absolute;inset:0}
.float{position:absolute;left:20px;bottom:20px;background:#fff;border-radius:var(--r-lg);padding:20px 24px;box-shadow:var(--shadow-h)}
.float strong{font-size:44px;font-weight:500;line-height:1;display:block}
.float span{font-size:13px;color:var(--muted)} .float span b{color:var(--text);font-weight:500}
.trust{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted)}
.avs{display:flex}
.avs i{width:32px;height:32px;border-radius:50%;border:2px solid #fff;margin-left:-8px;display:block}
.avs i:first-child{margin-left:0}
.avs i{background:#c99a76 radial-gradient(circle at 50% 38%,rgba(0,0,0,.15) 30%,transparent 32%)}
.avs i:nth-child(2){background-color:#8d6547}.avs i:nth-child(3){background-color:#e2b894}.avs i:nth-child(4){background-color:#a67b58}
.trust b svg{display:inline;color:var(--lime);vertical-align:-1px}
.trust b{display:block;color:var(--text);font-weight:600}
.dark .trust b,.hero .trust b{color:#fff}

/* Timeline (real sequence → numbered by year) */
.tl{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.tl::before{content:"";position:absolute;top:22px;left:0;right:0;height:1px;background:var(--line)}
.tl .step{position:relative;padding-top:60px}
.tl .dot{position:absolute;top:12px;left:0;width:21px;height:21px;border-radius:50%;background:#fff;border:6px solid var(--ink)}
.tl .step:last-child .dot{border-color:var(--lime);background:var(--ink)}
.tl .yr{font-size:30px;font-weight:300}
.tl h4{font-weight:500;margin:6px 0 4px}
.tl p{font-size:13px;color:var(--muted)}

/* Stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink-4)}
.stats div{padding:34px 24px 0 0}
.stats div+div{padding-left:24px;border-left:1px solid var(--ink-4)}
.stats strong{font-size:56px;font-weight:300;line-height:1;display:block}
.stats strong sup{color:var(--lime);font-size:28px;font-weight:500}
.stats span{color:var(--muted-d);font-size:14px}

/* Process (real sequence) */
.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s}
.proc .p{background:#fff;border-radius:var(--r-lg);padding:28px;position:relative;border:1px solid var(--line)}
.proc .p::before{counter-increment:s;content:"Step " counter(s);font-size:12px;color:var(--muted);display:block;margin-bottom:40px}
.proc .p:nth-child(4){background:var(--ink);color:#fff;border-color:var(--ink)}
.proc .p:nth-child(4) p{color:var(--muted-d)}
.proc h4{font-weight:500;font-size:18px;margin-bottom:6px}
.proc p{font-size:13px;color:var(--muted)}
.proc .n{position:absolute;top:22px;right:22px}

/* Team */
.team .media{aspect-ratio:3/4}
.team .who{position:absolute;left:12px;right:12px;bottom:12px;background:rgba(255,255,255,.95);border-radius:var(--r-md);padding:12px 14px;display:flex;justify-content:space-between;align-items:center;z-index:2}
.team .who b{font-weight:500;display:block} .team .who span{font-size:12px;color:var(--muted)}
.face{position:absolute;inset:0}

/* Testimonials (home style: one dark photo card in middle) */
.tcard{background:#fff;border-radius:var(--r-lg);padding:26px;min-height:320px;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.tcard .av{width:36px;height:36px;border-radius:50%;margin-bottom:22px}
.tcard h4{font-weight:500;font-size:15px;margin-bottom:8px}
.tcard p{font-size:14px;color:var(--muted)}
.tcard .by{margin-top:auto;font-size:14px;font-weight:500}
.tcard .by span{display:block;font-size:12px;color:var(--muted);font-weight:400}
.tcard.photo{position:relative;overflow:hidden;color:#fff;background:var(--ink)}
.tcard.photo .face{opacity:.9}
.tcard.photo>*:not(.face){position:relative;z-index:2}
.tcard.photo p{color:#d8dde0}
.tcard.photo .by span{color:#b5bdc1}
.slnav{display:flex;gap:8px}
.slnav button{width:36px;height:36px;border-radius:50%;border:0;cursor:pointer;background:var(--ink);color:#fff;display:grid;place-items:center}
.slnav button+button{background:var(--lime);color:var(--ink)}

/* FAQ (home style: open item becomes dark) */
.faq{display:grid;gap:6px}
.q{border-radius:var(--r-md);transition:background .3s var(--ease)}
.q button{width:100%;display:flex;gap:14px;align-items:center;background:none;border:0;text-align:left;padding:18px 20px;cursor:pointer;font-weight:500;font-size:15px}
.q .pm{width:22px;height:22px;border-radius:50%;border:1px solid var(--muted);display:grid;place-items:center;flex:none;transition:.3s}
.q .a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--ease)}
.q .a>div{overflow:hidden;padding:0 20px 0 56px;color:#c3cacd;font-size:14px}
.q.open{background:var(--ink);color:#fff}
.q.open button{color:var(--lime)}
.q.open .pm{border-color:var(--lime);transform:rotate(45deg)}
.q.open .a{grid-template-rows:1fr}
.q.open .a>div{padding-bottom:20px}
.faqgrid{display:grid;grid-template-columns:5fr 7fr;gap:60px;align-items:start}

/* CTA band */
.cta{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--ink);color:#fff;padding:72px 64px;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
.cta .art{position:absolute;inset:0;opacity:.35}
.cta::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 35%,rgba(18,24,27,.2))}
.cta>*{position:relative;z-index:2}
.cta .acts{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}

/* Tabs / categories */
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}
.tabs button{border:1px solid var(--line);background:#fff;border-radius:var(--pill);padding:10px 18px;font-size:14px;cursor:pointer;transition:.25s}
.tabs button:hover{border-color:var(--text)}
.tabs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.dark .tabs button{background:transparent;border-color:var(--ink-4);color:#fff}
.dark .tabs button.on{background:var(--lime);color:var(--ink);border-color:var(--lime)}

/* Includes strip */
.incl{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.incl div{background:#fff;border-radius:var(--r-md);padding:22px 16px;text-align:center;border:1px solid var(--line)}
.incl .ico{margin:0 auto 14px;background:var(--mist);color:var(--text)}
.incl b{font-weight:500;font-size:14px}

/* Contact */
.cgrid{display:grid;grid-template-columns:7fr 5fr;gap:24px;align-items:stretch}
.form{background:#fff;border-radius:var(--r-xl);padding:40px;box-shadow:var(--shadow)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.form .ctl{border-radius:var(--r-sm)}
.form textarea{width:100%;min-height:120px;border:1px solid transparent;background:var(--mist);border-radius:var(--r-sm);padding:14px 16px;outline:0;resize:vertical}
.form textarea:focus{border-color:var(--lime);background:#fff}
.form .note{font-size:12px;color:var(--muted)}
.info{background:var(--ink);color:#fff;border-radius:var(--r-xl);padding:40px;display:flex;flex-direction:column;gap:6px}
.info a.it{display:flex;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--ink-4)}
.info a.it .ico{margin:0;background:var(--ink-3)}
.info a.it:hover .ico{background:var(--lime);color:var(--ink)}
.info small{display:block;color:var(--muted-d);font-size:12px}
.office .media{aspect-ratio:16/9}
.map{border-radius:var(--r-xl);overflow:hidden;height:420px;position:relative;background:#e9ece8}
.map svg{width:100%;height:100%}
.pin{position:absolute;transform:translate(-50%,-100%)}
.pin .bub{background:var(--ink);color:#fff;font-size:12px;padding:6px 12px;border-radius:var(--pill);white-space:nowrap;margin-bottom:6px}
.pin .pt{width:16px;height:16px;border-radius:50%;background:var(--lime);border:4px solid var(--ink);margin:0 auto}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,120px);opacity:0;visibility:hidden;background:var(--ink);color:#fff;padding:14px 20px;border-radius:var(--pill);font-size:14px;display:flex;gap:10px;align-items:center;transition:.4s var(--ease);z-index:200}
.toast.show{transform:translate(-50%,0);opacity:1;visibility:visible}
.toast i{width:22px;height:22px;border-radius:50%;background:var(--lime);color:var(--ink);display:grid;place-items:center}

/* Blog */
.featpost{display:grid;grid-template-columns:1.2fr 1fr;background:#fff;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow)}
.featpost .media{aspect-ratio:auto;min-height:420px}
.featpost .body{padding:48px}
.bmeta{display:flex;gap:14px;font-size:12px;color:var(--muted);align-items:center}
.bmeta .cat{color:var(--text);background:var(--mist);padding:4px 10px;border-radius:var(--pill)}
.bsearch{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:28px}
.bsearch .ctl{width:320px;background:#fff;border:1px solid var(--line)}
.blayout{display:grid;grid-template-columns:1fr 300px;gap:32px;align-items:start}
.side-box{background:#fff;border-radius:var(--r-lg);padding:24px;border:1px solid var(--line);margin-bottom:18px}
.side-box h5{font-size:16px;font-weight:500;margin-bottom:14px}
.side-box a.c{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;cursor:pointer}
.side-box a.c:hover{color:var(--lime-d)}
.side-box a.c span{color:var(--muted)}
.news{background:var(--ink);color:#fff;border:0}
.news .ctl{background:var(--ink-3);margin:14px 0 10px;color:#fff}
.pager{display:flex;gap:8px;justify-content:center;margin-top:40px}
.pager button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer}
.pager button.on{background:var(--ink);color:#fff;border-color:var(--ink)}

/* Services grid */
.svc{background:#fff;border-radius:var(--r-lg);padding:26px;border:1px solid var(--line);display:flex;flex-direction:column;min-height:230px;transition:.3s var(--ease)}
.svc:hover{background:var(--ink);color:#fff;border-color:var(--ink);transform:translateY(-4px)}
.svc .top{display:flex;justify-content:space-between;align-items:start;margin-bottom:auto}
.svc .ico{margin:0;background:var(--mist);color:var(--text)}
.svc:hover .ico{background:var(--lime);color:var(--ink)}
.svc h3{font-size:18px;font-weight:500;margin:30px 0 6px}
.svc p{font-size:13px;color:var(--muted)}
.svc:hover p{color:var(--muted-d)}
.svc:hover .circ{background:var(--lime);border-color:var(--lime);transform:rotate(45deg)}

/* Mission / vision */
.mv{border-radius:var(--r-xl);padding:40px;min-height:280px;display:flex;flex-direction:column}
.mv.a{background:var(--lime)} .mv.b{background:var(--ink);color:#fff}
.mv h3{font-size:30px;font-weight:300;margin:auto 0 10px} .mv h3 b{font-weight:600}
.mv p{font-size:15px;opacity:.8}
.mv .ico{background:rgba(0,0,0,.08);color:inherit;margin:0}
.mv.b .ico{background:var(--ink-3)}

/* Hotel benefit split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.checks{list-style:none;display:grid;gap:14px;margin:28px 0 32px}
.checks li{display:flex;gap:14px;align-items:start}
.checks li i{width:26px;height:26px;border-radius:50%;background:var(--lime);color:var(--ink);display:grid;place-items:center;flex:none;font-style:normal}
.checks b{font-weight:500;display:block}
.checks span{font-size:14px;color:var(--muted)}
.dark .checks span{color:var(--muted-d)}

/* Footer */
.ftr{background:var(--ink);color:#fff;padding:90px 0 24px;position:relative;overflow:hidden}
.ftr .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;position:relative;z-index:2}
.ftr p{color:var(--muted-d);font-size:14px;margin-top:18px}
.ftr h6{font-size:13px;font-weight:500;color:var(--muted-d);margin-bottom:16px}
.ftr ul{list-style:none;display:grid;gap:12px;font-size:14px}
.ftr ul a{cursor:pointer;opacity:.85} .ftr ul a:hover{color:var(--lime);opacity:1}
.soc{display:flex;gap:10px;margin-top:40px}
.soc a{width:38px;height:38px;border-radius:50%;background:var(--ink-3);display:grid;place-items:center}
.soc a:first-child,.soc a:hover{background:var(--lime);color:var(--ink)}
.big{font-size:260px;font-weight:600;line-height:.8;color:rgba(255,255,255,.04);text-align:center;margin-top:30px;letter-spacing:-.04em;user-select:none}
.copy{text-align:center;font-size:12px;color:var(--muted-d);border-top:1px solid var(--ink-4);padding-top:20px;position:relative;z-index:2}

.page{position:relative;animation:pg .5s var(--ease)}
@keyframes pg{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.mt{margin-top:28px}
.center{text-align:center}

/* =========================================================
   RESPONSIVE — container queries (tablet ≤ 1000, mobile ≤ 640)
   Elementor equivalent: Tablet 1024 / Mobile 767 breakpoints
   ========================================================= */
@media (max-width:1024px){
  .wrap{padding:0 24px}
  .sec{padding:80px 0}
  .h1{font-size:48px} .h2{font-size:32px}
  .g4,.proc,.incl{grid-template-columns:repeat(2,1fr)}
  .incl{grid-template-columns:repeat(3,1fr)}
  .g3{grid-template-columns:repeat(2,1fr)}
  .nav,.hdr .btn{display:none}
  .burger{display:grid}
  .fields{grid-template-columns:1fr 1fr}
  .fields .btn{grid-column:1/-1;justify-content:space-between}
  .tl{grid-template-columns:1fr;gap:0}
  .tl::before{top:0;bottom:0;left:10px;right:auto;width:1px;height:auto}
  .tl .step{padding:0 0 30px 44px}
  .tl .dot{top:6px}
  .stats{grid-template-columns:1fr 1fr}
  .stats div:nth-child(3){border-left:0;padding-left:0}
  .faqgrid,.cgrid,.split,.featpost,.blayout{grid-template-columns:1fr}
  .cta{grid-template-columns:1fr;padding:48px 32px}
  .cta .acts{justify-content:flex-start}
  .head{flex-direction:column;align-items:start}
  .big{font-size:150px}
  .drawer.open{display:block;position:absolute;top:84px;left:16px;right:16px;background:#fff;border-radius:var(--r-lg);padding:12px;box-shadow:var(--shadow-h);z-index:30}
  .drawer a{display:block;padding:12px 14px;border-radius:10px;cursor:pointer}
  .drawer a.on{background:var(--mist);font-weight:600}
  .drawer .btn{margin-top:8px;width:100%;justify-content:space-between}
}
@media (max-width:767px){
  .wrap{padding:0 18px}
  .sec{padding:64px 0} .sec.tight{padding:48px 0}
  .h1{font-size:38px} .h2{font-size:28px}
  .g2,.g3,.g4,.proc,.stats,.ftr .cols{grid-template-columns:1fr}
  .incl{grid-template-columns:1fr 1fr}
  .stats div,.stats div+div{border-left:0;padding-left:0;padding-top:24px}
  .hero{padding:140px 0 90px}
  .hero.has-panel{padding-bottom:150px}
  .panel-wrap{margin-top:-90px}
  .panel{padding:20px}
  .fields,.form .row{grid-template-columns:1fr}
  .pic{min-height:380px}
  .form,.info{padding:26px}
  .featpost .body{padding:26px}
  .featpost .media{min-height:240px}
  .bsearch .ctl{width:100%}
  .cta{padding:40px 22px}
  .head{margin-bottom:36px}
  .tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin-right:-18px}
  .tabs button{flex:none}
  .map{height:300px}
  .big{font-size:90px}
  .feat.cols{grid-template-columns:1fr}
}
/* =========================================================
   DETAIL PAGES
   ========================================================= */
.dhero{position:relative;background:var(--ink);color:#fff;padding:150px 0 56px;overflow:hidden}
.dhero>.art{position:absolute;inset:0;width:100%;height:100%;opacity:.35}
.dhero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,24,27,.8),rgba(18,24,27,.97))}
.dhero .wrap{position:relative;z-index:2}
.dhero .h1{font-size:52px;max-width:20ch}
.dtop{display:flex;justify-content:space-between;align-items:end;gap:30px;flex-wrap:wrap}
.dchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.dchips span{display:inline-flex;gap:6px;align-items:center;font-size:13px;padding:7px 12px;border-radius:var(--pill);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.dchips span.l{background:var(--lime);color:var(--ink);border-color:var(--lime);font-weight:600}
.rate{display:flex;align-items:center;gap:12px}
.rate strong{font-size:44px;font-weight:300;line-height:1}
.rate small{display:block;color:var(--muted-d);font-size:12px;margin-top:4px}

.gal{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:12px}
.gal>*{position:relative;border:0;border-radius:var(--r-lg);overflow:hidden;background:#2a3236;padding:0}
.gal .gmain{grid-row:span 2}
.gal button{cursor:pointer}
.gal .art{position:absolute;inset:0;width:100%;height:100%;transition:transform .5s var(--ease)}
.gal button:hover .art{transform:scale(1.06)}
.gal .more::after{content:attr(data-more);position:absolute;inset:0;background:rgba(18,24,27,.62);color:#fff;display:grid;place-items:center;font-weight:500}

.subnav{position:sticky;top:var(--sticky-top,0px);z-index:15;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);margin-top:40px}
.subnav .wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.subnav button{border:0;background:none;padding:18px 14px;font-size:14px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}
.subnav button:hover{color:var(--text)}
.subnav button.on{color:var(--text);border-color:var(--lime);font-weight:500}

.dsec{padding:56px 0 100px}
.dlayout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start}
.dblock{padding:44px 0;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--sticky-top,0px) + 80px)}
.dblock:first-child{padding-top:0}
.dblock:last-child{border-bottom:0}
.dblock>h2{font-size:28px;font-weight:300;margin-bottom:16px;line-height:1.2}
.dblock>h2 b{font-weight:600}
.dblock>p{color:var(--muted);max-width:68ch;margin-bottom:12px}

.hl{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
.hl>div{background:var(--mist);border-radius:var(--r-md);padding:18px}
.hl .ico{width:40px;height:40px;background:#fff;margin-bottom:16px;color:var(--text)}
.hl small{display:block;color:var(--muted);font-size:12px}
.hl b{font-weight:500;font-size:15px}

.itin .day{border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:10px;transition:border-color .25s}
.itin .day.open{border-color:var(--text)}
.itin .day>button{display:flex;gap:16px;align-items:center;padding:16px 18px;width:100%;background:none;border:0;text-align:left;cursor:pointer;font-size:15px}
.itin .dn{flex:none;min-width:84px;text-align:center;background:var(--mist);border-radius:var(--pill);padding:6px 10px;font-size:12px;font-weight:600;transition:background .25s}
.itin .day.open .dn{background:var(--lime)}
.itin .day>button b{font-weight:500;flex:1}
.itin .chev{transition:transform .3s var(--ease);color:var(--muted)}
.itin .day.open .chev{transform:rotate(180deg)}
.itin .a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--ease)}
.itin .a>div{overflow:hidden;padding:0 20px 0 118px;color:var(--muted);font-size:14px}
.itin .day.open .a{grid-template-rows:1fr}
.itin .day.open .a>div{padding-bottom:18px}

.incx{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.incx>div{border-radius:var(--r-lg);padding:24px}
.incx .y{background:var(--mist)} .incx .n{border:1px solid var(--line)}
.incx h4{font-weight:500}
.incx ul{list-style:none;display:grid;gap:10px;margin-top:14px;font-size:14px}
.incx li{display:flex;gap:10px;align-items:center}
.incx li i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;flex:none;font-style:normal}
.incx .y i{background:var(--lime);color:var(--ink)} .incx .n i{background:#f6e4e1;color:#b3402f}

.minis{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mini{display:flex;gap:14px;border:1px solid var(--line);border-radius:var(--r-md);padding:12px;align-items:center;cursor:pointer;transition:.25s}
.mini:hover{border-color:var(--text)}
.mini .th{width:96px;height:84px;border-radius:10px;overflow:hidden;position:relative;flex:none}
.mini .th .art{position:absolute;inset:0;width:100%;height:100%}
.mini b{font-weight:500;display:block;line-height:1.3}
.mini small{color:var(--muted);font-size:12px;display:block;margin-top:4px}
.mini .circ{margin-left:auto}
.mini:hover .circ{background:var(--lime);border-color:var(--lime);transform:rotate(45deg)}

.policy{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.policy>div{background:var(--mist);border-radius:var(--r-md);padding:20px}
.policy .ico{width:40px;height:40px;background:#fff;margin-bottom:14px;color:var(--text)}
.policy b{font-weight:500;display:block;margin-bottom:4px}
.policy p{font-size:13px;color:var(--muted)}

.book{position:sticky;top:calc(var(--sticky-top,0px) + 72px);background:#fff;border-radius:var(--r-xl);box-shadow:var(--shadow-h);padding:28px;border:1px solid var(--line);scroll-margin-top:calc(var(--sticky-top,0px) + 20px)}
.book .from{font-size:13px;color:var(--muted)}
.book .from b{font-size:36px;font-weight:500;color:var(--text);letter-spacing:-.01em}
.book .fld{margin-top:14px}
.book .ctl{border-radius:var(--r-sm)}
.book .rsel{margin-top:14px;font-size:13px;color:var(--muted);background:var(--mist);border-radius:var(--r-sm);padding:10px 14px}
.book .rsel b{color:var(--text);font-weight:500}
.qty{display:flex;align-items:center;justify-content:space-between;background:var(--mist);border-radius:var(--r-sm);height:46px;padding:0 6px 0 16px;font-size:14px}
.qty>div{display:flex;gap:6px}
.qty button{width:34px;height:34px;border-radius:50%;border:0;background:#fff;cursor:pointer;font-size:18px;line-height:1}
.qty button:hover{background:var(--lime)}
.qty button:disabled{opacity:.4;cursor:not-allowed;background:#fff}
.sum{margin:20px 0 12px;padding-top:16px;border-top:1px dashed var(--line);display:grid;gap:8px;font-size:14px}
.sum div{display:flex;justify-content:space-between;color:var(--muted)}
.sum .tot{color:var(--text);font-size:18px;font-weight:600;padding-top:10px;margin-top:4px;border-top:1px solid var(--line)}
.book .fine{font-size:12px;color:var(--muted);text-align:center;margin-top:14px;display:flex;gap:6px;justify-content:center;align-items:center}
.help{background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:20px;margin-top:14px;display:flex;gap:14px;align-items:center}
.help .ico{margin:0;background:var(--lime);color:var(--ink);width:46px;height:46px;flex:none}
.help small{display:block;color:var(--muted-d);font-size:12px}
.stack{display:grid;gap:10px}
.btn-wide{width:100%;justify-content:space-between}

.room{display:grid;grid-template-columns:170px 1fr auto;gap:20px;align-items:center;border:1px solid var(--line);border-radius:var(--r-lg);padding:14px;margin-bottom:12px;transition:border-color .25s,box-shadow .25s}
.room.sel{border-color:var(--lime-d);box-shadow:0 0 0 3px rgba(200,240,49,.35)}
.room .th{height:120px;border-radius:var(--r-md);overflow:hidden;position:relative}
.room .th .art{position:absolute;inset:0;width:100%;height:100%}
.room h4{font-weight:500;font-size:17px}
.room .chips{margin:10px 0 0}
.room .rp{text-align:right}
.room .rp b{font-size:24px;font-weight:500;display:block}
.room .rp small{font-size:12px;color:var(--muted);display:block;margin-bottom:10px}
.room .pick{padding:10px 16px}
.room.sel .pick{background:var(--lime);border-color:var(--lime)}

.amen{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.amen span{display:flex;gap:10px;align-items:center;font-size:14px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md)}
.minimap{height:280px;border-radius:var(--r-lg);overflow:hidden;position:relative;background:#e9ece8;margin-bottom:16px}
.minimap svg{width:100%;height:100%}
.walk{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.walk>div{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);padding:14px}
.walk .ico{width:40px;height:40px;margin:0;background:var(--mist);color:var(--text);flex:none}
.walk b{font-weight:500;display:block;font-size:14px}
.walk small{font-size:12px;color:var(--muted)}

.score{display:grid;grid-template-columns:200px 1fr;gap:30px;align-items:center;background:var(--mist);border-radius:var(--r-lg);padding:28px;margin-bottom:16px}
.score .big2{font-size:64px;font-weight:300;line-height:1}
.score small{color:var(--muted);font-size:12px}
.bars{display:grid;gap:12px}
.bars>div{display:grid;grid-template-columns:100px 1fr 38px;gap:12px;align-items:center;font-size:13px}
.bars i{height:6px;border-radius:9px;background:#dcdfdc;overflow:hidden;display:block}
.bars i::before{content:"";display:block;height:100%;width:var(--w);background:var(--ink);border-radius:9px}
.rv{border:1px solid var(--line);border-radius:var(--r-lg);padding:22px}
.rv .top{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.rv .top i{width:40px;height:40px;border-radius:50%;flex:none}
.rv .top b{font-weight:500;display:block;font-size:14px}
.rv .top small{color:var(--muted);font-size:12px}
.rv .stars{margin-left:auto}
.rv p{font-size:14px;color:var(--muted)}

.ttl{position:relative;padding-left:34px}
.ttl::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:1px;background:var(--line)}
.ttl>div{position:relative;padding-bottom:22px}
.ttl>div::before{content:"";position:absolute;left:-30px;top:5px;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid var(--ink)}
.ttl>div:first-child::before,.ttl>div:last-child::before{background:var(--lime)}
.ttl time{font-size:12px;color:var(--muted);display:block}
.ttl b{font-weight:500}
.ttl p{font-size:14px;color:var(--muted)}

.dchecks{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dchecks li{display:flex;gap:10px;align-items:start;font-size:14px}
.dchecks i{width:22px;height:22px;border-radius:50%;background:var(--lime);display:grid;place-items:center;flex:none;font-style:normal}

/* Blog article */
.art-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 260px;gap:48px;align-items:start}
.toc{position:sticky;top:calc(var(--sticky-top,0px) + 30px)}
.toc h5,.shr h5{font-size:13px;color:var(--muted);font-weight:500;margin-bottom:12px}
.toc a{display:block;padding:8px 0 8px 14px;border-left:2px solid var(--line);font-size:14px;color:var(--muted);cursor:pointer;transition:.2s}
.toc a:hover{color:var(--text)}
.toc a.on{border-color:var(--lime-d);color:var(--text);font-weight:500}
.shr{margin-top:30px}
.share{display:flex;gap:8px}
.share button{cursor:pointer}
.share button:hover{background:var(--lime);border-color:var(--lime)}
.prose{font-size:17px;line-height:1.75;max-width:720px}
.prose .lede{font-size:21px;line-height:1.55;color:var(--text);font-weight:300;margin-bottom:28px}
.prose h2{font-size:28px;font-weight:500;margin:44px 0 14px;line-height:1.25;scroll-margin-top:calc(var(--sticky-top,0px) + 30px)}
.prose p{margin-bottom:18px;color:#3d464b}
.prose ol,.prose ul{margin:0 0 20px 22px;color:#3d464b}
.prose li{margin-bottom:8px;padding-left:4px}
.prose li b{color:var(--text);font-weight:600}
.prose blockquote{border-left:4px solid var(--lime);background:var(--mist);padding:22px 26px;border-radius:0 var(--r-md) var(--r-md) 0;font-size:21px;line-height:1.5;font-weight:300;margin:32px 0}
.prose blockquote cite{display:block;font-size:13px;color:var(--muted);font-style:normal;margin-top:10px}
.prose figure{margin:0 0 32px}
.prose .fimg{height:400px;border-radius:var(--r-xl);overflow:hidden;position:relative}
.prose .fimg .art{position:absolute;inset:0;width:100%;height:100%}
.prose figcaption{font-size:13px;color:var(--muted);margin-top:10px}
.tip{background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:24px;display:flex;gap:16px;margin:30px 0;font-size:15px;line-height:1.6}
.tip .ico{margin:0;background:var(--lime);color:var(--ink);flex:none}
.tip b{display:block;margin-bottom:4px;color:var(--lime);font-weight:500}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:36px 0 0;padding-top:28px;border-top:1px solid var(--line)}
.author{display:flex;gap:20px;background:var(--mist);border-radius:var(--r-lg);padding:26px;align-items:center;margin-top:28px}
.author .ph{width:84px;height:84px;border-radius:50%;overflow:hidden;position:relative;flex:none}
.author b{font-weight:500;font-size:18px}
.author p{font-size:14px;color:var(--muted);margin-top:4px}
.cmts{margin-top:48px}
.cmt{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}
.cmt>i{width:40px;height:40px;border-radius:50%;flex:none}
.cmt b{font-weight:500;font-size:14px}
.cmt small{color:var(--muted);font-size:12px;margin-left:8px}
.cmt p{font-size:14px;color:#3d464b;margin-top:4px}
.cform{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;margin-top:24px}
.cform .row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.cform .ctl{border-radius:var(--r-sm)}
.cform textarea{width:100%;min-height:100px;border:1px solid transparent;background:var(--mist);border-radius:var(--r-sm);padding:14px 16px;outline:0;margin-bottom:12px}
.cform textarea:focus{border-color:var(--lime);background:#fff}

/* Service detail */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tier{border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;display:flex;flex-direction:column}
.tier.hi{background:var(--ink);color:#fff;border-color:var(--ink)}
.tier .badge{align-self:flex-start;font-size:11px;font-weight:600;background:var(--lime);color:var(--ink);padding:4px 10px;border-radius:var(--pill);margin-bottom:10px}
.tier h4{font-weight:500;font-size:18px}
.tier>p{font-size:13px;color:var(--muted);margin-top:4px}
.tier.hi>p{color:var(--muted-d)}
.tier .pp{font-size:38px;font-weight:300;margin:18px 0 4px;line-height:1}
.tier .pp small{font-size:13px;color:var(--muted)}
.tier ul{list-style:none;display:grid;gap:8px;margin:16px 0 22px;font-size:13px}
.tier li{display:flex;gap:8px;align-items:center}
.tier li svg{color:var(--lime-d)}
.tier .btn{margin-top:auto;justify-content:space-between}
.tier:not(.hi) .btn{background:var(--mist)}
.mproc{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.mproc>div{border-top:2px solid var(--ink);padding-top:16px}
.mproc>div:last-child{border-color:var(--lime)}
.mproc span{font-size:12px;color:var(--muted)}
.mproc b{display:block;font-weight:500;margin:6px 0 4px}
.mproc p{font-size:13px;color:var(--muted)}
.slist{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:10px;margin-bottom:14px}
.slist h5{font-size:13px;font-weight:500;color:var(--muted);padding:10px 12px 6px}
.slist a{display:flex;gap:12px;align-items:center;padding:11px 12px;border-radius:var(--r-sm);font-size:14px;cursor:pointer;transition:.2s}
.slist a svg:last-child{margin-left:auto;opacity:.4}
.slist a:hover{background:var(--mist)}
.slist a.on{background:var(--ink);color:#fff}
.slist a.on svg:first-child{color:var(--lime)}
.qform{background:var(--lime);border-radius:var(--r-lg);padding:24px}
.qform h5{font-size:20px;font-weight:500;line-height:1.2}
.qform p{font-size:13px;margin:6px 0 14px;opacity:.75}
.qform .ctl{background:#fff;border-radius:var(--r-sm);margin-bottom:10px}
.qform .err{font-size:12px;color:#8a1f10;margin-bottom:8px;display:none}
.pic.sm{min-height:320px}
.dfaq .q.open{background:var(--ink)}

.mbar{display:none}
@media (max-width:1024px){
  .dhero{padding:130px 0 44px}
  .dhero .h1{font-size:40px}
  .gal{grid-template-columns:1fr 1fr;grid-template-rows:260px 130px}
  .gal .gmain{grid-row:auto;grid-column:1/-1}
  .gal>*:nth-child(n+4){display:none}
  .gal>*:nth-child(3)::after{content:attr(data-count);position:absolute;inset:0;background:rgba(18,24,27,.62);color:#fff;display:grid;place-items:center;font-weight:500}
  .dlayout,.art-layout{grid-template-columns:1fr;gap:24px}
  .book,.toc{position:static}
  .toc{display:none}
  .hl,.amen{grid-template-columns:1fr 1fr}
  .walk,.policy,.tiers{grid-template-columns:1fr}
  .mproc{grid-template-columns:1fr 1fr;row-gap:20px}
  .mbar{display:flex;position:sticky;bottom:0;z-index:40;background:var(--ink);color:#fff;padding:12px 18px;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--ink-4)}
  .mbar small{display:block;color:var(--muted-d);font-size:11px}
  .mbar b{font-size:20px;font-weight:500}
  .dsec{padding:40px 0 70px}
}
@media (max-width:767px){
  .dhero{padding:116px 0 36px}
  .dhero .h1{font-size:32px}
  .rate strong{font-size:34px}
  .gal{grid-template-rows:210px 100px;gap:8px}
  .subnav{margin-top:24px}
  .incx,.minis,.dchecks,.cform .row{grid-template-columns:1fr}
  .room{grid-template-columns:1fr;gap:12px}
  .room .th{height:170px}
  .room .rp{text-align:left;display:flex;justify-content:space-between;align-items:center}
  .room .rp small{margin:0}
  .score{grid-template-columns:1fr;gap:18px}
  .itin .a>div{padding-left:18px}
  .itin .dn{min-width:72px}
  .prose{font-size:16px}
  .prose .lede{font-size:18px}
  .prose .fimg{height:240px}
  .author{flex-direction:column;align-items:flex-start}
  .dblock>h2{font-size:24px}
  .book{padding:22px}
}

.card[data-go]{cursor:pointer}
.pic .art,.media .art,.hero .art,.cta .art,.face{width:100%;height:100%}
/* =========================================================
   HOME PAGE
   ========================================================= */
.hhero{position:relative;background:var(--ink);color:#fff;overflow:hidden;padding:170px 0 230px}
.hhero>.art{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.hhero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,24,27,.96) 28%,rgba(18,24,27,.5) 68%,rgba(18,24,27,.78)),linear-gradient(180deg,rgba(18,24,27,0) 55%,var(--ink))}
.hgrid{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:end}
.hh{font-size:76px;line-height:1;letter-spacing:-.03em;max-width:12ch}
.hcopy p{color:#c3cacd;max-width:48ch;margin:24px 0 32px;font-size:17px}
.hacts{display:flex;flex-wrap:wrap;gap:12px}
.hhero .trust{color:#aab2b6;margin-top:36px}
.hhero .crumb svg{color:var(--lime)}
.hhero .trust b{color:#fff}
.deps{background:rgba(26,33,36,.74);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-xl);padding:24px 24px 18px}
.deps .dh{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px}
.deps h3{font-size:18px;font-weight:500}
.deps .dh span{font-size:12px;color:var(--muted-d)}
.dep{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid rgba(255,255,255,.08);cursor:pointer}
.dep .dt{background:#fff;color:var(--ink);border-radius:var(--r-md);text-align:center;padding:9px 0 8px;line-height:1}
.dep .dt b{display:block;font-size:22px;font-weight:600}
.dep .dt small{font-size:11px;color:var(--muted)}
.dep h4{font-weight:500;font-size:15px;transition:color .2s}
.dep:hover h4{color:var(--lime)}
.dep .sub{font-size:12px;color:var(--muted-d);display:flex;gap:6px;align-items:center;margin-top:2px}
.seat{height:4px;border-radius:9px;background:var(--ink-4);margin-top:9px;overflow:hidden}
.seat::before{content:"";display:block;height:100%;width:var(--w);background:#fff;border-radius:9px}
.dep .left{font-size:12px;color:var(--muted-d);text-align:right;white-space:nowrap}
.dep .left b{display:block;font-size:20px;color:#fff;font-weight:500;line-height:1.1}
.dep.low .left b{color:var(--lime)}
.dep.low .seat::before{background:var(--lime)}
.deps .dfoot{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);font-size:13px;color:var(--muted-d)}
.deps .dfoot a{color:#fff;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.deps .dfoot a:hover{color:var(--lime)}
.jp .jtop{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.jp h4{margin:0}
.jtabs{display:flex;gap:4px;background:var(--mist);padding:4px;border-radius:var(--pill)}
.jtabs button{border:0;background:none;padding:8px 16px;border-radius:var(--pill);font-size:14px;cursor:pointer;display:inline-flex;gap:7px;align-items:center;color:var(--muted);transition:background .25s,color .25s}
.jtabs button:hover{color:var(--text)}
.jtabs button.on{background:var(--ink);color:#fff}
.jtabs button.on svg{color:var(--lime)}
.jp .fields[hidden]{display:none}
.svc4{grid-template-columns:repeat(4,1fr)}
.hsplit .pic{min-height:560px}
.pic .float2{position:absolute;right:20px;top:20px;background:var(--lime);color:var(--ink);border-radius:var(--r-lg);padding:16px 20px;max-width:210px;font-size:13px}
.pic .float2 b{display:block;font-size:15px;font-weight:600;margin-bottom:2px}
@media (max-width:1024px){
  .hgrid{grid-template-columns:1fr;gap:40px}
  .hh{font-size:58px}
  .hhero{padding:140px 0 210px}
  .hhero::after{background:linear-gradient(180deg,rgba(18,24,27,.72),rgba(18,24,27,.96))}
  .svc4{grid-template-columns:repeat(2,1fr)}
  .hsplit .pic{min-height:420px}
}
@media (max-width:767px){
  .hh{font-size:42px}
  .hcopy p{font-size:16px}
  .hhero{padding:118px 0 150px}
  .jtabs{width:100%;overflow-x:auto;scrollbar-width:none}
  .jtabs button{flex:none}
  .deps{padding:18px 18px 14px}
  .dep{grid-template-columns:52px 1fr auto;gap:12px}
  .svc4{grid-template-columns:1fr}
  .svc4 .svc{min-height:0}
  .svc4 .svc h3{margin-top:22px}
  .pic .float2{display:none}
}


/* =========================================================
   WORDPRESS LAYER
   Adapts the Burak kit to real WordPress markup: menus,
   <img> media, forms (CF7 + fallback), filters, pagination,
   lightbox, blog, core blocks and accessibility helpers.
   ========================================================= */
:root{--sticky-top:0px;--hdr-h:84px}
body.admin-bar{--wp-admin:32px}
@media (max-width:782px){body.admin-bar{--wp-admin:46px}}
.site-main{display:block;outline:0}
/* Pages without a dark hero get a solid header (set by main.js) and breathing room. */
.hdr.is-solid{position:relative;background:var(--ink)}
.apex-no-hero .site-main>.sec:first-child,.apex-no-hero .builder-content>.sec:first-child{padding-top:70px}
.builder-content>p:empty{display:none}
ul.menu,.ftr ul,.share,.soc,.info-list,.cat-list,.pager ul{list-style:none;margin:0;padding:0}
a:hover{color:inherit}
.muted{color:var(--muted)}
.center-row{justify-content:center}
.narrow{max-width:820px}
.mt{margin-top:28px}
.h4{font-size:18px;font-weight:400;line-height:1.3}
.h4 b,.h3 b{font-weight:600}
.h3 a{transition:color .2s}
.h3 a:hover{color:var(--lime-d)}
.empty{grid-column:1/-1;text-align:center;padding:40px;color:var(--muted);background:#fff;border-radius:var(--r-lg);border:1px dashed var(--line)}

/* Accessibility */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.screen-reader-text:focus,.skip-link:focus{background:var(--lime);color:var(--ink);clip:auto!important;clip-path:none;display:block;height:auto;left:12px;top:12px;padding:12px 18px;width:auto;z-index:100000;border-radius:var(--pill);font-weight:600}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Media: real images replace the kit's SVG scenes */
img.art,img.face,.art-fallback{object-fit:cover;width:100%;height:100%}
.art-fallback{display:block;background:linear-gradient(135deg,#2a3236,#3b4549 60%,#56614a)}
.media>img.art,.pic>img.art,.hero>img.art,.hhero>img.art,.dhero>img.art,.cta>img.art,.gal img.art,.room .th img,.mini .th img{position:absolute;inset:0}
.media.media-wide{aspect-ratio:16/10}
.room .th,.mini .th{display:block}
.featpost .media{display:block}

/* ---------- Header ---------- */
.hdr{top:var(--wp-admin,0px);transition:background .3s var(--ease),box-shadow .3s var(--ease),transform .3s var(--ease)}
.hdr .wrap{gap:20px}
.logo{flex:none}
.logo-img{max-height:46px;width:auto}
.nav{flex:1;justify-content:center}
.nav .menu{display:flex;gap:6px;align-items:center}
.nav .menu>li{position:relative}
.nav .menu>li>a{color:#fff;opacity:.78;font-size:14px;padding:10px 14px;border-radius:var(--pill);display:flex;align-items:center;gap:4px;transition:opacity .2s,background .2s}
.nav .menu>li>a:hover,.nav .menu>li:focus-within>a{opacity:1}
.nav .menu>li.current-menu-item>a,.nav .menu>li.current-menu-ancestor>a,.nav .menu>li.current_page_parent>a{opacity:1;background:rgba(255,255,255,.08)}
.nav .menu-item-has-children>a::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:4px}
.nav .sub-menu{list-style:none;margin:0;position:absolute;top:100%;left:0;min-width:220px;background:#fff;border-radius:var(--r-md);padding:8px;box-shadow:var(--shadow-h);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s var(--ease);z-index:30}
.nav .menu>li:hover>.sub-menu,.nav .menu>li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.nav .sub-menu a{display:block;padding:10px 12px;border-radius:8px;font-size:14px;color:var(--text)}
.nav .sub-menu a:hover,.nav .sub-menu .current-menu-item>a{background:var(--mist)}
.hdr-actions{display:flex;align-items:center;gap:14px;flex:none}
.hdr-phone{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:14px;opacity:.85}
.hdr-phone:hover{opacity:1;color:var(--lime)}
.burger .i-close{display:none}
.burger[aria-expanded="true"] .i-open{display:none}
.burger[aria-expanded="true"] .i-close{display:block}
/* sticky / solid states */
.apex-sticky-header .hdr.is-stuck{position:fixed;background:rgba(18,24,27,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 10px 30px -20px rgba(0,0,0,.6)}
.apex-sticky-header .hdr.is-stuck .wrap{height:70px}
.apex-header-solid .hdr,.hdr.is-solid{position:relative;background:var(--ink)}
.apex-sticky-header .hdr.is-solid,.apex-sticky-header .hdr.is-solid.is-stuck{position:sticky;top:var(--wp-admin,0px)}
body:not(:has(.site-main .hero,.site-main .hhero,.site-main .dhero)) .hdr{position:relative;background:var(--ink)}
body.apex-sticky-header:not(:has(.site-main .hero,.site-main .hhero,.site-main .dhero)) .hdr{position:sticky;top:var(--wp-admin,0px)}
.apex-header-solid .hero,.apex-header-solid .hhero,.apex-header-solid .dhero{padding-top:110px}
.apex-header-solid.apex-sticky-header .hdr{position:sticky;top:var(--wp-admin,0px)}
body.apex-sticky-header{--sticky-top:calc(var(--wp-admin,0px) + 70px)}
/* drawer */
.drawer[hidden]{display:none!important}
.drawer .menu a{display:block;padding:12px 14px;border-radius:10px;color:var(--text)}
.drawer .menu a:hover,.drawer .current-menu-item>a{background:var(--mist);font-weight:600}
.drawer .sub-menu{list-style:none;margin:0 0 6px 14px;padding-left:10px;border-left:1px solid var(--line)}
.drawer .sub-menu a{font-size:14px;padding:9px 12px}
.drawer .btn{margin-top:8px}

/* ---------- Heroes ---------- */
.hero .h1 b,.dhero .h1 b,.hh b{font-weight:600}
.hh em,.hero .h1 em{font-style:normal;font-weight:600;color:var(--lime)}
.crumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;align-items:center}
.crumb li{display:inline-flex;gap:8px;align-items:center}
.crumb svg{opacity:.5}
.crumb [aria-current]{color:var(--lime)}
.hero .crumb{justify-content:center}
.dhero .crumb{margin-bottom:20px}
.dhero .lead{color:#c3cacd;margin-top:14px}
.dhero .gal{margin-top:40px}
.dchips span svg{flex:none}
.rate .stars{margin-top:4px}
.post-hero .h1{max-width:24ch}

/* ---------- Panels & fields ---------- */
.panel .h4{margin-bottom:18px}
.panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.panel-head .h4{margin:0}
.found{font-size:13px;color:var(--muted)}
.fields-filter{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.fields-filter .filter-actions{grid-column:auto}
.fields>.btn,.filter-actions .btn{height:46px;padding:6px 6px 6px 20px}
.filter-actions{display:flex;align-items:center;gap:14px}
.filter-actions .reset{font-size:13px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.filter-actions .reset:hover{color:var(--text)}
.ctl select{background-image:none;padding-right:0}
.ctl input[type=number]{cursor:text}
.ctl input::-webkit-calendar-picker-indicator{opacity:.5;cursor:pointer}
.jp form[hidden]{display:none}
.jp .fields{grid-template-columns:repeat(4,1fr) auto}
.filter-panel.is-loading{opacity:.85}
.cards-grid{transition:opacity .25s}
.cards-grid.is-loading{opacity:.35;pointer-events:none}
.results-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.results-sec .tabs a,.tabs a{border:1px solid var(--line);background:#fff;border-radius:var(--pill);padding:10px 18px;font-size:14px;transition:.25s}
.tabs a:hover{border-color:var(--text)}
.tabs a.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.dark .tabs a{background:transparent;border-color:var(--ink-4);color:#fff}
.card[hidden]{display:none}

/* ---------- Cards ---------- */
.card .h3{font-size:19px}
.price s{font-size:13px;margin-left:6px;opacity:.7}
.stars .off{opacity:.25}
.stars svg{display:block}
.meta .loc{display:inline-flex;gap:6px;align-items:center}
.feat li span{min-width:0}
.btnrow .btn-ghost{justify-content:center}
.svc{position:relative}
.svc .stretched::after{content:"";position:absolute;inset:0;border-radius:inherit}
.svc h3 a{color:inherit}
.bmeta{flex-wrap:wrap}
.byline{font-size:13px;color:var(--muted)}
.card .bmeta+.h3{margin-top:10px}
.tcard .av{object-fit:cover;display:grid;place-items:center;background:var(--mist);font-weight:600}
.tcard .stars{margin-bottom:12px}
.tcard h3{font-weight:500;font-size:15px;margin-bottom:8px}
.tcard blockquote{margin:0 0 20px;font-size:14px;color:var(--muted)}
.tcard blockquote p{margin:0 0 8px}
.tcard.photo blockquote{color:#d8dde0}
.tcard.photo .face{position:absolute;inset:0;opacity:.35}
.tcard.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,24,27,.3),rgba(18,24,27,.92));z-index:1}
.slider{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px 2px 26px;outline:0}
.slider::-webkit-scrollbar{display:none}
.slider>*{scroll-snap-align:start}
.slnav button:disabled{opacity:.35;cursor:default}
.dcard h3,.lcard h3{font-size:18px;font-weight:500}

/* ---------- Sections ---------- */
.q h3{font:inherit;margin:0}
.q .a>div p{margin:0 0 8px}
.q:not(.open) .a>div{visibility:hidden}
.faq .q:not(.open):hover{background:var(--mist)}
.dark .faq .q:not(.open):hover{background:var(--ink-3)}
.faq-pic{position:relative;border-radius:var(--r-xl);overflow:hidden;min-height:320px;margin-top:28px}
.faq-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cta .h2{color:#fff}
.cta p{color:#c3cacd;margin-top:14px}
.incl .ico{margin:0 auto 14px}
.stats strong{font-variant-numeric:tabular-nums}
.info-list{display:grid;gap:4px}
.info .it,.info-list .it{display:flex;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--ink-4)}
.info-list .it:last-child{border-bottom:0}
.info .it .ico,.info-list .ico{margin:0;background:var(--ink-3);flex:none}
.info-list a.it:hover .ico{background:var(--lime);color:var(--ink)}
.info-list small{display:block;color:var(--muted-d);font-size:12px}
.map-embed{border-radius:var(--r-xl);overflow:hidden;height:420px;background:#e9ece8}
.map-embed iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.3)}
.float strong sup{color:var(--lime-d);font-size:22px}

/* ---------- Forms (native fallback + Contact Form 7) ---------- */
.apex-form{display:block}
.apex-form .row,.apex-form .wpcf7-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.apex-form .fld{margin-bottom:14px}
.apex-form .row .fld{margin-bottom:0}
.apex-form label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.apex-form input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=file]),.apex-form select,.apex-form textarea{width:100%;height:46px;border:1px solid transparent;background:var(--mist);border-radius:var(--r-sm);padding:0 14px;outline:0;font-size:14px;transition:border-color .2s,background .2s;appearance:none;-webkit-appearance:none}
.apex-form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%237d858a' stroke-width='1.6'%3E%3Cpath d='m2 4 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.apex-form textarea{height:auto;min-height:110px;padding:12px 14px;resize:vertical}
.apex-form input:focus,.apex-form select:focus,.apex-form textarea:focus{border-color:var(--lime-d);background:#fff}
.apex-form input[type=file]{font-size:13px;width:100%;padding:10px;background:var(--mist);border-radius:var(--r-sm)}
.apex-form .submit-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:6px}
.apex-form .submit-row .note,.apex-form .note{font-size:12px;color:var(--muted)}
.book .apex-form .btn,.book .wpcf7-submit{width:100%;justify-content:space-between}
.form-msg{padding:12px 16px;border-radius:var(--r-sm);font-size:14px;margin-bottom:14px}
.form-msg.is-ok{background:#eef8d2;color:#3b4a0b}
.form-msg.is-error{background:#fbe9e6;color:#8a1f10}
.inline-form{display:flex;gap:8px;background:var(--ink-3);border-radius:var(--pill);padding:5px}
.inline-form input{flex:1;min-width:0;background:transparent!important;border:0!important;color:#fff;height:44px!important;padding:0 16px!important}
.inline-form input::placeholder{color:var(--muted-d)}
/* CF7 */
.wpcf7 form .wpcf7-response-output{margin:14px 0 0;padding:12px 16px;border-radius:var(--r-sm);font-size:14px;border-width:1px}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--lime-d);background:#eef8d2}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output{border-color:#e5b3a9;background:#fbe9e6}
.wpcf7-not-valid-tip{font-size:12px;color:#b3402f;margin-top:4px}
.wpcf7-form-control-wrap{display:block}
.wpcf7-spinner{margin:0 0 0 10px}
.wpcf7-submit{display:inline-flex;align-items:center;gap:10px;background:var(--lime);color:var(--ink);border:0;border-radius:var(--pill);padding:13px 24px;font-weight:500;font-size:14px;cursor:pointer;transition:background .25s}
.wpcf7-submit:hover{background:var(--lime-d)}
.apex-form-newsletter .wpcf7-form{display:flex;gap:8px;background:var(--ink-3);border-radius:var(--pill);padding:5px;align-items:center;flex-wrap:wrap}
.apex-form-newsletter .wpcf7-form>p{margin:0;display:contents}
.apex-form-newsletter .wpcf7-form input[type=email]{background:transparent;border:0;color:#fff}
.apex-form-newsletter .wpcf7-response-output{flex-basis:100%}

/* ---------- Pagination ---------- */
.pager{margin-top:40px}
.pager ul{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.pager .page-numbers{min-width:42px;height:42px;padding:0 12px;border-radius:var(--pill);border:1px solid var(--line);background:#fff;display:grid;place-items:center;font-size:14px;transition:.2s}
.pager a.page-numbers:hover{border-color:var(--text)}
.pager .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink)}
.pager .page-numbers.dots{border:0;background:none}
.post-navigation{margin-top:32px}
.post-navigation .nav-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.post-navigation a{display:block;border:1px solid var(--line);border-radius:var(--r-md);padding:16px 18px;font-weight:500;transition:border-color .2s}
.post-navigation a:hover{border-color:var(--text)}
.post-navigation .nav-next{text-align:right;grid-column:2}
.post-navigation small{display:block;font-size:12px;color:var(--muted);font-weight:400}

/* ---------- Detail pages ---------- */
.subnav{top:var(--sticky-top);z-index:25}
.subnav a{padding:18px 14px;font-size:14px;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color .2s}
.subnav a:hover{color:var(--text)}
.subnav a.on{color:var(--text);border-color:var(--lime-d);font-weight:500}
.subnav .sub-cta{margin-left:auto;align-self:center;padding:8px 16px;border:0;border-radius:var(--pill);background:var(--lime);color:var(--ink);font-weight:500}
.subnav .sub-cta:hover{color:var(--ink);background:var(--lime-d)}
.dblock{scroll-margin-top:calc(var(--sticky-top) + 70px)}
.dblock h3{font-size:inherit}
.itin .day h3{margin:0;font:inherit}
.itin .day>h3>button{display:flex;gap:16px;align-items:center;padding:16px 18px;width:100%;background:none;border:0;text-align:left;cursor:pointer;font-size:15px;color:inherit}
.itin .day>h3>button b{font-weight:500;flex:1}
.q>h3>button{color:inherit}
.itin .a>div p{margin:0 0 8px}
.gal{display:grid}
.gal-2{grid-template-columns:2fr 1fr;grid-template-rows:180px 180px}
.gal-2 .gmain{grid-row:span 2}
.gal-2>*:nth-child(2){grid-row:span 2}
.gal-3{grid-template-columns:2fr 1fr}
.gal-4>*:nth-child(4){grid-column:span 2}
.gal button{display:block;width:100%;height:100%}
.room h3{font-weight:500;font-size:17px}
.room .muted{display:flex;gap:6px;align-items:center;font-size:13px;margin-top:4px}
.room .pick[aria-checked="true"]{background:var(--lime);border-color:var(--lime)}
.book{top:calc(var(--sticky-top) + 72px);scroll-margin-top:calc(var(--sticky-top) + 20px)}
.book .h4{font-size:20px;font-weight:500;margin:6px 0 16px}
.book .from s{font-size:14px;opacity:.6;margin:0 4px}
.book .from span{font-size:12px}
.book .qty{margin-bottom:12px}
.book .qty output{min-width:26px;text-align:center;font-weight:600;align-self:center}
.book .sum{margin:6px 0 16px;padding:14px 0 0}
.book .sum>div{align-items:baseline}
.book .sum small{font-size:12px;color:var(--muted)}
.book .sum .tot{border:0;padding:0;margin:0;font-size:22px}
.book .rsel{margin:0 0 12px}
a.help:hover .ico{transform:rotate(-8deg)}
.help .ico{transition:transform .25s}
.related{padding-top:0}
.rv{margin-bottom:12px}
.rv .top i{display:grid;place-items:center;background:var(--mist);font-style:normal;font-weight:600}
.rv-title{font-weight:500;font-size:15px;margin-bottom:6px}
.rv p{margin:0 0 6px}
.review-form{margin-top:18px}
.review-form summary{list-style:none;display:inline-flex;cursor:pointer}
.review-form summary::-webkit-details-marker{display:none}
.review-form[open] summary{margin-bottom:16px}
.review-form .apex-form{border:1px solid var(--line);border-radius:var(--r-lg);padding:24px}
.dfaq .q{border:1px solid var(--line);margin-bottom:8px}
.dfaq .q.open{border-color:var(--ink)}
.mbar{bottom:0}
.mbar .btn{padding:6px 6px 6px 18px}
/* lightbox */
.lightbox{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100vw;height:100vh;margin:0;overflow:hidden}
.lightbox::backdrop{background:rgba(10,14,16,.94)}
.lightbox[open]{display:grid;grid-template-columns:64px 1fr 64px;align-items:center}
.lightbox figure{margin:0;display:grid;place-items:center;height:100vh;padding:60px 0}
.lightbox img{max-width:100%;max-height:calc(100vh - 140px);object-fit:contain;border-radius:var(--r-md)}
.lightbox figcaption{color:#c3cacd;font-size:13px;margin-top:12px}
.lightbox button{width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center;cursor:pointer;margin:auto;transition:background .2s}
.lightbox button:hover{background:var(--lime);color:var(--ink)}
.lb-close{position:absolute;top:20px;right:20px;z-index:2}
html.lb-open{overflow:hidden}

/* ---------- Blog & article ---------- */
.blayout>.grid{align-content:start}
.side-box .widget-title,.side-widgets .widget-title,.side-box h2{font-size:16px;font-weight:500;margin-bottom:14px}
.side-box ul{list-style:none;margin:0;padding:0}
.side-box li a{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.side-box li:last-child a{border-bottom:0}
.side-box li a:hover{color:var(--lime-d)}
.cat-list span{color:var(--muted)}
.side-box.news p{font-size:13px;color:var(--muted-d)}
.side-box.news .inline-form{margin-top:14px}
.widget{margin-bottom:18px}
.search-form{display:flex;gap:8px;background:var(--mist);border-radius:var(--pill);padding:5px 5px 5px 18px;align-items:center}
.search-form input[type=search]{flex:1;min-width:0;border:0;background:transparent;outline:0;height:40px}
.search-form button{width:40px;height:40px;border-radius:50%;border:0;background:var(--ink);color:var(--lime);display:grid;place-items:center;cursor:pointer}
.search-again{max-width:520px;margin:0 auto 40px}
.toc-h{font-size:13px;color:var(--muted);font-weight:500;margin-bottom:12px}
.toc ol{list-style:none;margin:0;padding:0}
.toc[hidden]{display:none}
.share li a{width:38px;height:38px}
.share a:hover{background:var(--lime);border-color:var(--lime)}
.share button.circ{cursor:pointer}
.tags a{font-size:13px;border:1px solid var(--line);padding:5px 12px;border-radius:var(--pill);color:var(--muted)}
.tags a:hover{border-color:var(--text);color:var(--text)}
.author img{border-radius:50%;flex:none}
.prose>*:first-child{margin-top:0}
.prose h3{font-size:22px;font-weight:500;margin:32px 0 12px}
.prose h4{font-size:18px;font-weight:500;margin:26px 0 10px}
.prose a{text-decoration:underline;text-decoration-color:var(--lime-d);text-underline-offset:3px;text-decoration-thickness:2px}
.prose a:hover{color:var(--lime-d)}
.prose img{border-radius:var(--r-lg)}
.prose table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:15px}
.prose th,.prose td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left}
.prose th{font-weight:600;background:var(--mist)}
.prose pre{background:var(--ink);color:#e6ebe8;padding:18px;border-radius:var(--r-md);overflow-x:auto;margin:0 0 20px;font-size:14px}
.prose code{background:var(--mist);padding:2px 6px;border-radius:6px;font-size:.9em}
.prose pre code{background:none;padding:0}
.prose hr{border:0;border-top:1px solid var(--line);margin:36px 0}
.prose .wp-block-button__link{background:var(--lime);color:var(--ink);border-radius:var(--pill);padding:12px 22px;text-decoration:none;font-weight:500}
.prose .wp-block-quote,.prose .wp-block-pullquote blockquote{border-left:4px solid var(--lime)}
.cmts .h3{margin-bottom:10px}
.comment-list{list-style:none;margin:0;padding:0}
.comment-list .children{list-style:none;margin:0 0 0 30px;padding:0}
.comment-body{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.comment-author img{border-radius:50%;float:left;margin-right:12px}
.comment-author .fn{font-weight:500;font-style:normal;font-size:14px}
.comment-author .says{display:none}
.comment-metadata{font-size:12px;color:var(--muted);width:100%;margin-left:52px;margin-top:-18px}
.comment-content{width:100%;font-size:14px;color:#3d464b;padding-left:52px}
.reply a{font-size:12px;font-weight:500;margin-left:52px;color:var(--lime-d)}
.comment-respond{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;margin-top:24px}
.comment-form p{margin-bottom:12px}
.comment-form label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;border:1px solid transparent;background:var(--mist);border-radius:var(--r-sm);padding:12px 14px;outline:0}
.comment-form input:focus,.comment-form textarea:focus{border-color:var(--lime-d);background:#fff}
.comment-form .submit{background:var(--ink);color:#fff;border:0;border-radius:var(--pill);padding:12px 24px;cursor:pointer}
.comment-form .submit:hover{background:var(--lime);color:var(--ink)}
.comment-form-cookies-consent{display:flex;gap:8px;align-items:center}
.comment-form-cookies-consent label{margin:0}

/* WordPress core alignment & blocks */
.alignleft{float:left;margin:6px 24px 16px 0}
.alignright{float:right;margin:6px 0 16px 24px}
.aligncenter{display:block;margin-left:auto;margin-right:auto}
.alignwide{margin-left:-60px;margin-right:-60px;max-width:calc(100% + 120px)}
.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}
.wp-caption,.wp-block-image figcaption{font-size:13px;color:var(--muted)}
.wp-caption-text{margin-top:8px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}
.sticky .card{outline:2px solid var(--lime)}
.bypostauthor>.comment-body .fn::after{content:" ★";color:var(--lime-d)}
.page-links{margin-top:24px;display:flex;gap:6px;font-size:14px}

/* ---------- Footer ---------- */
.news-band{position:relative;z-index:2;display:grid;grid-template-columns:1fr minmax(280px,440px);gap:30px;align-items:center;background:var(--ink-2);border:1px solid var(--ink-4);border-radius:var(--r-xl);padding:32px 36px;margin-bottom:70px}
.news-band p{margin-top:6px}
.ftr .cols-4{grid-template-columns:2fr 1fr 1fr 1.3fr}
.ftr .cols-3{grid-template-columns:2fr 1fr 1.3fr}
.ftr .cols-2{grid-template-columns:2fr 1.3fr}
.ftr-h{font-size:13px;font-weight:500;color:var(--muted-d);margin-bottom:16px}
.ftr .menu{display:grid;gap:12px;font-size:14px}
.ftr .menu a{opacity:.85;transition:.2s}
.ftr .menu a:hover{color:var(--lime);opacity:1}
.ftr .info-list .it{border-color:var(--ink-4);padding:10px 0;font-size:14px}
.ftr .info-list .ico{width:40px;height:40px}
.soc a{transition:.2s}
.soc li:not(:first-child) a:not(:hover){background:var(--ink-3);color:#fff}
.ftr .big{white-space:nowrap;overflow:hidden;font-size:clamp(70px,17vw,240px)}

/* ---------- Motion ---------- */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}html{scroll-behavior:auto}}

/* ---------- Responsive (WordPress layer) ---------- */
@media (max-width:1024px){
  :root{--hdr-h:72px}
  .hdr .wrap{height:72px}
  .hdr-phone,.hdr-cta{display:none}
  .drawer{position:absolute;top:calc(100% - 4px);left:16px;right:16px;background:#fff;border-radius:var(--r-lg);padding:12px;box-shadow:var(--shadow-h);z-index:30;max-height:calc(100vh - 110px);overflow:auto}
  .jp .fields{grid-template-columns:1fr 1fr}
  .jp .fields .btn,.filter-actions{grid-column:1/-1}
  .filter-actions .btn{flex:1;justify-content:space-between}
  .fields-filter{grid-template-columns:1fr 1fr}
  .slider{grid-auto-columns:calc((100% - 24px)/2)}
  .ftr .cols-4,.ftr .cols-3{grid-template-columns:1fr 1fr}
  .ftr .about-col{grid-column:1/-1}
  .news-band{grid-template-columns:1fr}
  .alignwide{margin-left:0;margin-right:0;max-width:100%}
  .blog-side{order:2}
  .gal-2,.gal-3{grid-template-columns:1fr 1fr;grid-template-rows:260px 130px}
  .gal-2>*:nth-child(2){grid-row:auto}
  .gal>*[data-count]:nth-child(3)::after{content:attr(data-count)}
  body.apex-sticky-header{--sticky-top:calc(var(--wp-admin,0px) + 64px)}
  .apex-sticky-header .hdr.is-stuck .wrap{height:64px}
  .mbar{position:fixed;left:0;right:0}
  body.has-mbar{padding-bottom:70px}
}
@media (max-width:767px){
  .jp .fields,.fields-filter,.apex-form .row,.apex-form .wpcf7-form .row{grid-template-columns:1fr}
  .slider{grid-auto-columns:88%}
  .ftr .cols-4,.ftr .cols-3,.ftr .cols-2{grid-template-columns:1fr}
  .news-band{padding:24px}
  .inline-form{flex-wrap:wrap;border-radius:var(--r-lg)}
  .inline-form .btn{width:100%;justify-content:space-between}
  .post-navigation .nav-links{grid-template-columns:1fr}
  .post-navigation .nav-next{grid-column:auto;text-align:left}
  .subnav .sub-cta{display:none}
  .lightbox[open]{grid-template-columns:1fr;grid-template-rows:1fr auto}
  .lightbox figure{padding:60px 12px 0;height:auto}
  .lb-prev,.lb-next{position:absolute;bottom:24px}
  .lb-prev{left:24%}.lb-next{right:24%}
  .alignleft,.alignright{float:none;margin:0 0 16px}
  .gallery{grid-template-columns:1fr 1fr}
  .results-head{align-items:start}
  .map-embed{height:300px}
}
@media print{
  .hdr,.ftr,.subnav,.mbar,.book .apex-form,.slnav,.lightbox{display:none!important}
  .hero,.hhero,.dhero{background:none;color:#000;padding:20px 0}
  .dlayout{grid-template-columns:1fr}
}
.apex-form .row>*,.apex-form .fld{min-width:0}
.apex-form input[type=date],.apex-form input[type=month]{min-width:0;max-width:100%}
.feat li,.chip,.dchips span,.sub,.meta .loc,.room .muted{align-items:flex-start}
.feat svg,.chip svg,.meta svg,.room .muted svg,.sub svg{flex:none;margin-top:2px}
.cgrid+.map-embed,.map-embed{margin-top:24px}
/* Blog refinements */
.blayout>.featpost,.blayout .featpost{margin-bottom:24px;grid-column:1/-1}
.featpost .h2{font-size:clamp(26px,2.6vw,34px);margin:14px 0 10px}
.featpost .body{justify-content:center}
.search-form{padding:5px;gap:6px}
.search-form .ctl{flex:1;min-width:0;background:transparent;padding:0 10px;height:40px}
.search-form .btn{padding:10px 16px;flex:none}
.side-box .search-form{flex-direction:column;align-items:stretch;border-radius:var(--r-md)}
.side-box .search-form .btn{justify-content:center}
.side-box li{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}
.side-box li:last-child{border-bottom:0}
.side-box li a{border:0;flex:1;color:var(--text)}
.side-box .tagcloud{display:flex;flex-wrap:wrap;gap:6px}
.side-box .tagcloud a{font-size:13px!important;border:1px solid var(--line);border-radius:var(--pill);padding:4px 11px}
.side-box .tagcloud a:hover{border-color:var(--text)}
.byline{display:inline-flex;align-items:center;gap:8px}
.byline img{border-radius:50%;flex:none}
/* Stats as a definition list: number (dd) shown above label (dt) */
dl.stats{margin:0}
.stats>div{display:flex;flex-direction:column-reverse;justify-content:flex-end}
.stats dd{margin:0;font-size:56px;font-weight:300;line-height:1;font-variant-numeric:tabular-nums}
.stats dd sup{color:var(--lime);font-size:28px;font-weight:500}
.stats dt{color:var(--muted-d);font-size:14px;margin-top:8px}
.split .trust,.hacts+.trust{margin-top:22px}
@media (max-width:767px){.stats dd{font-size:44px}}
.minimap iframe{width:100%;height:100%;border:0;display:block}

/* =========================================================
   v1.1 — ISSUE FIXES
   Appended last so it wins the cascade without touching the
   original rules above. Keep new overrides inside this block.
   ========================================================= */

/* ---------------------------------------------------------
   0. Global: make [hidden] actually hide.
   `img,svg{display:block}` above beat the UA `[hidden]` rule,
   so every lightbox slide rendered at once (gallery "slider"
   looked broken). This one line fixes it everywhere.
   --------------------------------------------------------- */
[hidden]{display:none!important}

/* ---------------------------------------------------------
   1. FOOTER — social icons + newsletter subscribe form
   --------------------------------------------------------- */
.ftr .soc,.info .soc{display:flex;flex-flow:row wrap;align-items:center;gap:10px;margin-top:32px;list-style:none;padding:0}
.ftr .soc li{margin:0;display:block}
.ftr .soc a,.info .soc a{width:40px;height:40px;border-radius:50%;background:var(--ink-3);color:#fff;display:grid;place-items:center;flex:none;transition:background .25s var(--ease),color .25s var(--ease),transform .25s var(--ease)}
.ftr .soc li:first-child>a{background:var(--lime);color:var(--ink)}
.ftr .soc a:hover,.ftr .soc a:focus-visible,.info .soc a:hover,.info .soc a:focus-visible{background:var(--lime);color:var(--ink);transform:translateY(-3px)}
.ftr .soc svg{width:18px;height:18px}

.news-band{align-items:center}
.news-band>div:first-child{min-width:0}
.ftr .apex-form,.side-box .apex-form{display:block}
.ftr .inline-form,.side-box .inline-form{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;background:var(--ink-3);border:1px solid var(--ink-4);border-radius:var(--pill);padding:5px}
.side-box .inline-form{background:var(--mist);border-color:var(--line)}
.inline-form input[type=email]{width:auto!important;flex:1 1 auto;min-width:0;height:44px!important;font-size:14px}
.ftr .inline-form input[type=email]{color:#fff}
.side-box .inline-form input[type=email]{color:var(--text)}
.inline-form input[type=email]::placeholder{color:var(--muted-d);opacity:1}
.inline-form .btn{flex:0 0 auto;white-space:nowrap}
.ftr .form-msg,.side-box .form-msg{flex-basis:100%;margin:0 0 10px}
.ftr .form-msg.is-ok{background:rgba(200,240,49,.16);color:var(--lime)}
.ftr .form-msg.is-error{background:rgba(255,120,100,.14);color:#ffb4a8}
@media (max-width:600px){
  .ftr .inline-form{flex-wrap:wrap;border-radius:var(--r-lg);padding:10px;gap:10px}
  .ftr .inline-form input[type=email]{flex:1 1 100%;background:rgba(255,255,255,.06)!important;border-radius:var(--pill);padding:0 18px!important}
  .ftr .inline-form .btn{width:100%;justify-content:space-between}
}

/* ---------------------------------------------------------
   2. BUTTONS — complete hover / focus / active states
   Every variant now changes on hover (dark & white had none)
   and the arrow chip inverts with it.
   --------------------------------------------------------- */
.btn{transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.btn .arr{transition:background .25s var(--ease),color .25s var(--ease),transform .3s var(--ease)}
.btn .arr svg{transition:none}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn:focus-visible{outline:2px solid var(--lime-d);outline-offset:3px}

.btn-lime:hover,.btn-lime:focus-visible{background:var(--lime-d);color:var(--ink);box-shadow:0 14px 28px -18px var(--lime-d)}
.btn-lime:hover .arr,.btn-lime:focus-visible .arr{background:var(--ink);color:var(--lime-d)}

.btn-dark:hover,.btn-dark:focus-visible{background:var(--lime);color:var(--ink);box-shadow:0 14px 28px -18px rgba(18,24,27,.6)}
.btn-dark:hover .arr,.btn-dark:focus-visible .arr{background:var(--ink);color:var(--lime)}

.btn-white:hover,.btn-white:focus-visible{background:var(--lime);color:var(--ink);box-shadow:0 14px 28px -18px rgba(0,0,0,.5)}
.btn-white:hover .arr,.btn-white:focus-visible .arr{background:var(--ink);color:var(--lime)}

.btn-ghost{transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease)}
.btn-ghost:hover,.btn-ghost:focus-visible{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-ghost:hover .arr{background:var(--lime);color:var(--ink)}
.dark .btn-ghost,.ftr .btn-ghost{color:#fff;border-color:var(--ink-4)}
.dark .btn-ghost:hover,.ftr .btn-ghost:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}

.btn:disabled,.btn[aria-disabled="true"],.btn.is-busy{opacity:.55;pointer-events:none;transform:none;box-shadow:none}

/* secondary interactive elements that were missing a hover */
.tabs a:hover{border-color:var(--text);background:var(--mist)}
.dark .tabs a:hover{background:var(--ink-3);border-color:var(--ink-4)}
.qty button{transition:background .2s var(--ease),color .2s var(--ease)}
.qty button:hover:not(:disabled){background:var(--lime);color:var(--ink)}
.circ{transition:background .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease),transform .25s var(--ease)}
a.circ:hover,button.circ:hover{background:var(--lime);border-color:var(--lime);color:var(--ink);transform:rotate(45deg)}
.pager a:hover,.page-numbers:hover{border-color:var(--text)}

/* ---------------------------------------------------------
   3. DETAIL PAGES — section spacing & small layout repairs
   --------------------------------------------------------- */
.dblock{scroll-margin-top:calc(var(--sticky-top,0px) + 92px)}
.dblock:empty{display:none}
.dblock>.hl{margin-top:0}
.dmain>.dblock:first-child{padding-top:0}
.dblock .prose>*:last-child{margin-bottom:0}
.subnav .wrap{-webkit-overflow-scrolling:touch}
.subnav .wrap::-webkit-scrollbar{display:none}
.subnav a{display:inline-flex;align-items:center;flex:none}
@media (max-width:1024px){
  .dlayout{grid-template-columns:1fr;gap:32px}
  .dside{order:-1}
  .book{position:static}
  .hl{grid-template-columns:repeat(2,1fr)}
  .policy{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  .dhero .h1{font-size:32px}
  .incx,.minis,.policy,.hl{grid-template-columns:1fr}
  .dsec{padding:32px 0 80px}
  .dblock{padding:32px 0}
}

/* ---------------------------------------------------------
   4. MOBILE HEADER — drawer, CTA and burger
   `.nav,.hdr .btn{display:none}` above also hid the drawer's
   own CTA (the drawer lives inside .hdr). Restored here.
   --------------------------------------------------------- */
@media (max-width:1024px){
  .hdr .wrap{height:var(--hdr-h,72px);gap:12px}
  .logo{font-size:19px;min-width:0}
  .logo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .logo-img{max-height:38px}
  .hdr-actions{gap:8px}
  .burger{display:grid;flex:none}

  .drawer,.drawer.open{display:block;position:fixed;top:calc(var(--wp-admin,0px) + var(--hdr-h,72px));left:0;right:0;bottom:0;margin:0;padding:18px 18px 32px;border-radius:0;background:#fff;box-shadow:none;max-height:none;overflow-y:auto;overscroll-behavior:contain;z-index:60;-webkit-overflow-scrolling:touch}
  .drawer[hidden]{display:none!important}
  .drawer .menu{display:grid;gap:2px}
  .drawer .menu>li>a{font-size:16px;font-weight:500;padding:13px 14px}
  .drawer .sub-menu a{color:var(--muted);font-weight:400}
  .drawer .btn{display:inline-flex;width:100%;justify-content:space-between;margin-top:18px}
  .drawer-contact{display:grid;gap:8px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
  .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted);padding:6px 14px}
  .drawer-contact a:hover{color:var(--text)}
  body.apex-drawer-open{overflow:hidden}
  .hdr:has(.drawer:not([hidden])){background:var(--ink);position:fixed;top:var(--wp-admin,0px);left:0;right:0}
  .hdr.is-drawer-open{background:var(--ink);position:fixed;top:var(--wp-admin,0px);left:0;right:0}
}
@media (max-width:767px){
  :root{--hdr-h:64px}
  .hdr .wrap{height:64px}
  .burger{width:40px;height:40px}
}

/* ---------------------------------------------------------
   5. BOOKING POPUP (dialog) opened from listing cards
   --------------------------------------------------------- */
.apex-modal{border:0;padding:0;background:transparent;width:min(580px,calc(100vw - 28px));max-width:none;max-height:calc(100vh - 40px);overflow:visible}
.apex-modal::backdrop{background:rgba(10,14,16,.74);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.apex-modal[open]{animation:apex-pop .28s var(--ease)}
@keyframes apex-pop{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.apex-modal .mbox{background:#fff;border-radius:var(--r-xl);padding:30px;position:relative;max-height:calc(100vh - 40px);overflow-y:auto;box-shadow:var(--shadow-h)}
.apex-modal .m-close{position:absolute;top:16px;right:16px;width:38px;height:38px;border-radius:50%;border:0;background:var(--mist);color:var(--text);display:grid;place-items:center;cursor:pointer;transition:background .2s,transform .2s}
.apex-modal .m-close:hover{background:var(--lime);transform:rotate(90deg)}
.apex-modal .m-head{padding-right:48px}
.apex-modal .m-eyebrow{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.apex-modal h2{font-size:25px;font-weight:300;line-height:1.2;margin-top:6px}
.apex-modal h2 b{font-weight:600}
.apex-modal .m-price{margin-top:12px;font-size:14px;color:var(--muted);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.apex-modal .m-price b{font-size:26px;font-weight:500;color:var(--text)}
.apex-modal .m-body{margin-top:22px}
.apex-modal .m-foot{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.apex-modal .m-foot a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.apex-modal .m-foot a:hover{color:var(--lime-d)}
.apex-spin{display:grid;place-items:center;padding:46px 0;gap:14px;color:var(--muted);font-size:14px}
.apex-spin::before{content:"";width:30px;height:30px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--lime-d);animation:apex-rot .8s linear infinite}
@keyframes apex-rot{to{transform:rotate(360deg)}}
html.apex-modal-open{overflow:hidden}
@media (prefers-reduced-motion:reduce){.apex-modal[open]{animation:none}.apex-spin::before{animation-duration:2s}}
@media (max-width:600px){
  .apex-modal{width:100vw;max-height:100vh}
  .apex-modal .mbox{border-radius:var(--r-xl) var(--r-xl) 0 0;padding:24px 20px 28px;max-height:92vh}
  .apex-modal{align-self:flex-end}
}

/* ---------------------------------------------------------
   6. Elementor custom elements (heading / text / button)
   --------------------------------------------------------- */
.apex-el-heading{margin:0}
.apex-el-heading.is-light{font-weight:300;letter-spacing:-.015em}
.apex-el-heading b,.apex-el-heading strong{font-weight:600}
.apex-el-heading em{font-style:normal;font-weight:600;color:var(--lime-d)}
.apex-el-heading .eyebrow{display:block}
.apex-el-text{color:var(--muted);font-size:16px;max-width:64ch}
.apex-el-text.size-lg{font-size:18px}
.apex-el-text.size-sm{font-size:14px}
.apex-el-text p{margin:0 0 14px}
.apex-el-text p:last-child{margin-bottom:0}
.apex-el-text b,.apex-el-text strong{color:var(--text);font-weight:500}
.dark .apex-el-text,.apex-el-text.on-dark{color:var(--muted-d)}
.dark .apex-el-text b,.apex-el-text.on-dark b{color:#fff}
.apex-el-buttons{display:flex;flex-wrap:wrap;gap:12px}
.apex-el-buttons.align-center{justify-content:center}
.apex-el-buttons.align-right{justify-content:flex-end}
.apex-el-buttons.full .btn{width:100%;justify-content:space-between}
.align-center>.apex-el-heading,.align-center>.apex-el-text{margin-left:auto;margin-right:auto;text-align:center}

/* ---------------------------------------------------------
   7. HOME HERO — image carousel
   --------------------------------------------------------- */
.hslides{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.hslides .hslide{position:absolute;inset:0;opacity:0;transition:opacity 1s var(--ease);will-change:opacity}
.hslides .hslide.on{opacity:1}
.hslides .hslide>img,.hslides .hslide>.art-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hslides.kb .hslide.on>img{animation:apex-kb 9s linear forwards}
@keyframes apex-kb{from{transform:scale(1)}to{transform:scale(1.08)}}
.hero-dots{position:absolute;left:0;right:0;bottom:26px;z-index:6;display:flex;justify-content:center;gap:8px}
.hhero .hero-dots{bottom:auto;top:auto;justify-content:flex-start;position:relative;margin-top:34px}
.hero-dots button{width:26px;height:4px;border-radius:var(--pill);border:0;padding:0;background:rgba(255,255,255,.3);cursor:pointer;transition:background .25s,width .25s}
.hero-dots button:hover{background:rgba(255,255,255,.55)}
.hero-dots button[aria-current="true"]{background:var(--lime);width:44px}
.hero-arrows{position:absolute;right:32px;bottom:34px;z-index:6;display:flex;gap:8px}
.hero-arrows button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);transition:background .25s,color .25s,border-color .25s}
.hero-arrows button:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}
@media (max-width:1024px){.hero-arrows{display:none}}
@media (prefers-reduced-motion:reduce){.hslides .hslide{transition:none}.hslides.kb .hslide.on>img{animation:none}}

/* ---------------------------------------------------------
   8. DETAIL GALLERY — working slider + lightbox
   --------------------------------------------------------- */
.galwrap{position:relative;margin-top:40px}
.dhero .galwrap .gal{margin-top:0}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--ink);display:none;place-items:center;cursor:pointer;box-shadow:var(--shadow);transition:background .2s,color .2s}
.gal-nav:hover{background:var(--lime)}
.gal-nav.prev{left:10px}
.gal-nav.next{right:10px}
.gal-count{position:absolute;right:14px;bottom:14px;z-index:4;display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:var(--pill);background:rgba(18,24,27,.72);color:#fff;font-size:12px;backdrop-filter:blur(6px);pointer-events:none}
.gal-1{grid-template-columns:1fr;grid-template-rows:380px}
.gal-1 .gmain{grid-row:auto}
.gal-5{grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px}

/* Mobile: the grid becomes a real swipeable slider */
@media (max-width:767px){
  .galwrap{margin-top:26px}
  .gal{display:flex!important;grid-template-columns:none;grid-template-rows:none;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}
  .gal::-webkit-scrollbar{display:none}
  .gal>*{flex:0 0 88%;height:230px;scroll-snap-align:center;display:block}
  .gal>*:nth-child(n+4){display:block}
  .gal .gmain{grid-row:auto;grid-column:auto}
  .gal>*::after,.gal .more::after{content:none!important}
  .gal-nav{display:grid;width:38px;height:38px}
  .gal-1{grid-template-rows:none}
}

/* Lightbox: thumbnail strip + counter */
.lightbox figure{position:relative}
.lb-thumbs{position:absolute;left:0;right:0;bottom:16px;display:flex;justify-content:center;gap:8px;padding:0 16px;overflow-x:auto;scrollbar-width:none}
.lb-thumbs::-webkit-scrollbar{display:none}
.lb-thumbs button{width:62px!important;height:44px!important;border-radius:8px!important;padding:0;overflow:hidden;flex:none;opacity:.45;background:none!important;transition:opacity .2s,outline-color .2s;outline:2px solid transparent;outline-offset:2px}
.lb-thumbs button img{width:100%;height:100%;object-fit:cover}
.lb-thumbs button:hover{opacity:.8;background:none!important}
.lb-thumbs button[aria-current="true"]{opacity:1;outline-color:var(--lime)}
.lightbox figcaption{position:relative;z-index:1}
@media (max-width:767px){
  .lb-thumbs{display:none}
  .lightbox figure{padding:60px 12px 90px}
}

/* ---------------------------------------------------------
   Misc repairs
   --------------------------------------------------------- */
.card .btnrow{display:flex;gap:10px;margin-top:16px}
.card .btnrow .btn{flex:1;justify-content:center;text-align:center}
.card-tour .btnrow .btn{flex:1}
.gal button:focus-visible,.hero-dots button:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.mbar .btn{flex:none}

/* =========================================================
   v1.1.1 — TOUR DETAIL PAGE LAYOUT
   ========================================================= */

/* `.policy` was locked to 3 columns, but Meeting point usually has only
   two cards (point + start time) — so a third of the row sat empty.
   auto-fit makes 2 cards fill the width and 3 still line up. */
.policy{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.policy>div{display:flex;flex-direction:column}
.policy p{margin-top:auto}

/* Meeting point: cards beside the map on wide screens, stacked below it
   on tablets and phones. */
.dblock#meeting .policy{margin-bottom:16px}
.minimap{margin-bottom:0}
.minimap+*{margin-top:16px}

/* Facts strip: 4 items looked cramped against the booking panel. */
.facts{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}

/* Subnav CTA was getting squeezed to a dot on narrow viewports. */
.subnav .sub-cta{flex:none;white-space:nowrap;margin-left:auto}
.subnav .wrap{align-items:center}

@media (max-width:1024px){
  .policy{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
}
@media (max-width:560px){
  .policy{grid-template-columns:1fr}
  .minimap{height:230px}
}

/* =========================================================
   v1.2 — LIST MARKER + SELECTOR MISMATCH FIXES
   ========================================================= */

/* "Your pilgrimage in four simple steps" was showing the browser's own
   1. 2. 3. 4. markers next to the CSS-generated "Step 1…4" labels, because
   `<ol class="proc">` never had list-style removed. Same for `.mproc`
   ("How it works") on service detail pages. */
.proc,.mproc{list-style:none;margin:0;padding:0}
.proc>li,.mproc>li{list-style:none}

/* The markup renders <h3>, but the CSS only styled `.proc h4`, so the step
   titles fell back to the global heading size. */
.proc h3,.proc h4{font-weight:500;font-size:18px;margin-bottom:6px;line-height:1.3}

/* `.mproc` items are <li>, but the CSS targeted `.mproc>div` — the whole
   block rendered unstyled (no rule, no top border, no accent on the last). */
.mproc>li{border-top:2px solid var(--ink);padding-top:16px}
.mproc>li:last-child{border-color:var(--lime)}
.mproc>li>b{display:block;font-weight:500;margin:6px 0 4px}
.mproc>li>p{font-size:13px;color:var(--muted)}

/* Safety net: any ordered list the theme styles itself should not also draw
   native markers. */
.crumb ol,.comment-list,.proc,.mproc{list-style:none}

/* =========================================================
   v1.2.2 — STICKY SUBNAV, DRAWER STACKING, MOBILE GALLERY
   ========================================================= */

/* 1. The open mobile drawer was being painted UNDER the sub-navigation.
   `.hdr` has z-index:20 and is positioned, so it opens a stacking context —
   the drawer's own z-index:60 only competes inside that context, and
   `.subnav` (z-index:25) sat above the whole header. Raise the header itself
   while the drawer is open. */
.hdr.is-drawer-open{z-index:90}
.hdr:has(.drawer:not([hidden])){z-index:90}
.drawer{z-index:1}

/* 2. `position:sticky` silently stops working if an ancestor scrolls, and the
   subnav must also clear the WP admin bar. Pin it explicitly.
   Note: `--sticky-top` already includes `--wp-admin` when the sticky header is
   on (see body.apex-sticky-header above), so only add it when it is off —
   otherwise the bar would sit 32px too low for logged-in admins. */
.site-main,.builder-content{overflow:visible}
.subnav{position:sticky;position:-webkit-sticky;top:var(--sticky-top, 0px);z-index:25}
body.admin-bar:not(.apex-sticky-header) .subnav{top:calc(var(--sticky-top, 0px) + var(--wp-admin, 0px))}
.dsec{overflow:visible}

/* 3. Gallery tiles on phones: the flex slider needs an explicit track height,
   and tiles 4–5 were still hidden by the tablet rule. */
@media (max-width:767px){
  .galwrap{min-height:230px}
  .gal{min-height:230px;align-items:stretch}
  .gal>*{flex:0 0 86%!important;height:230px!important;min-width:0;display:block!important}
  .gal>*:nth-child(3)::after,.gal .more::after{content:none!important}
  .gal .art,.gal img,.gal .art-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
}

/* =========================================================
   v1.2.3 — MOBILE HEADER
   ========================================================= */

/* Collapsible submenus. Every child used to be expanded, so the drawer ran
   several screens long before "Contact" was reachable. */
.drawer .has-sub{position:relative}
.drawer .has-sub>a{padding-right:54px}
.drawer .sub-toggle{position:absolute;top:3px;right:4px;width:44px;height:44px;border:0;background:none;border-radius:10px;display:grid;place-items:center;cursor:pointer;color:var(--muted);transition:background .2s var(--ease),color .2s var(--ease)}
.drawer .sub-toggle:hover{background:var(--mist);color:var(--text)}
.drawer .sub-toggle svg{transition:transform .25s var(--ease)}
.drawer .has-sub.is-open>.sub-toggle{color:var(--text)}
.drawer .has-sub.is-open>.sub-toggle svg{transform:rotate(180deg)}
.drawer .sub-menu{margin-top:2px}

@media (max-width:1024px){
  /* The sticky booking bar sat on top of the open drawer, covering its own
     Book Now button. */
  body.apex-drawer-open .mbar{display:none!important}

  /* Highlight the burger while the drawer is open (the open/close icon swap
     is already handled at line 819). */
  .burger[aria-expanded="true"]{background:var(--lime);color:var(--ink)}

  /* Breathing room at the end of a long drawer on short screens. */
  .drawer{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}
}

/* =========================================================
   v1.2.4 — SUBNAV MUST NEVER SIT OVER THE OPEN DRAWER
   ========================================================= */

/* Raising `.hdr` above `.subnav` fixes the common case, but it only works
   while nothing else creates a competing stacking context. Belt and braces:
   push the sub-navigation (and the sticky booking bar) out of the way
   entirely whenever the drawer is open. */
body.apex-drawer-open .subnav{z-index:0}
body.apex-drawer-open .subnav,
body.apex-drawer-open .mbar{visibility:hidden}

/* The drawer is a child of `.hdr`, so it can only ever paint as high as the
   header itself — keep that explicit. */
.hdr.is-drawer-open{z-index:90}
.hdr.is-drawer-open .drawer{z-index:1}

/* =========================================================
   v1.2.5 — FIXES
   1. Search / form submit buttons: one consistent style
   2. WhatsApp help box: real hover state
   3. Footer logo + watermark options
   4. Mobile header drawer
   ========================================================= */

/* ---------------------------------------------------------
   1. SEARCH & FORM BUTTONS
   The journey panel declared four equal columns plus an auto
   column, so the five-field Hotels tab pushed "Search" onto a
   second row where it stretched to a full 1fr column. Every
   tab now sizes its own grid and the button keeps the same
   height, padding and arrow chip in every form on the site.
   --------------------------------------------------------- */
:root{--btn-h:46px;--btn-arr:34px}

.jp .fields{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:14px}
.jp .fields-hotels{grid-template-columns:repeat(5,minmax(0,1fr)) auto}
.fields>.fld,.fields-filter>.fld{min-width:0}
.fields>.fld label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* One button recipe: pill + circular arrow chip, aligned with the 46px fields. */
.fields>.btn,
.jp .fields>.btn,
.fields-filter>.btn,
.filter-actions .btn,
.bsearch .btn,
.apex-form .btn,
.apex-form button[type=submit],
.review-form .btn,
.wpcf7-submit,
.apex-modal .btn[type=submit]{
  height:var(--btn-h);
  min-height:var(--btn-h);
  padding:0 6px 0 22px;
  border-radius:var(--pill);
  font-size:14px;
  font-weight:500;
  line-height:1;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:12px;
  flex:none;
}
.fields>.btn .arr,
.fields-filter>.btn .arr,
.filter-actions .btn .arr,
.bsearch .btn .arr,
.apex-form .btn .arr,
.review-form .btn .arr{width:var(--btn-arr);height:var(--btn-arr);flex:none}

/* Contact Form 7 renders a plain <input>, so it cannot carry the arrow chip —
   give it the same pill, height and hover instead of its own smaller style. */
.wpcf7-submit{padding:0 26px;justify-content:center;background:var(--lime);color:var(--ink);border:0;cursor:pointer}
.wpcf7-submit:hover,.wpcf7-submit:focus-visible{background:var(--lime-d)}
.book .wpcf7-submit{width:100%}

/* Full-width submit inside a sidebar/booking box keeps the arrow at the edge. */
.btn-wide,.book .apex-form .btn,.apex-form .btn-wide{width:100%;justify-content:space-between}

/* The newsletter pill is a slimmer bar — keep its button proportional. */
.inline-form .btn{height:44px;min-height:44px;padding:0 6px 0 20px}
.inline-form .btn .arr{width:32px;height:32px}

.fields>.btn:focus-visible,.filter-actions .btn:focus-visible,.apex-form .btn:focus-visible,.wpcf7-submit:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

@media (max-width:1024px){
  .jp .fields,.jp .fields-hotels{grid-template-columns:1fr 1fr}
  .jp .fields>.btn,.jp .fields-hotels>.btn{grid-column:1/-1;width:100%;justify-content:space-between}
  /* `flex:none` above must not cancel the stretched filter button here. */
  .filter-actions{width:100%}
  .filter-actions .btn{flex:1 1 auto;justify-content:space-between}
  .bsearch .btn{flex:1 1 auto;justify-content:space-between}
}
@media (max-width:767px){
  .jp .fields,.jp .fields-hotels{grid-template-columns:1fr}
  .bsearch .btn{width:100%}
}

/* ---------------------------------------------------------
   2. WHATSAPP HELP BOX (detail page sidebars)
   It was the only call-to-action on the page with no hover
   feedback — only the icon tilted. It now lifts and flips to
   WhatsApp green so the whole box reads as clickable.
   --------------------------------------------------------- */
:root{--wa:#25d366;--wa-d:#1eb256}

a.help{
  transition:background .25s var(--ease),color .25s var(--ease),
             transform .25s var(--ease),box-shadow .25s var(--ease);
}
a.help:hover,a.help:focus-visible{
  background:var(--wa);
  color:var(--ink);
  transform:translateY(-3px);
  box-shadow:0 20px 34px -22px rgba(37,211,102,.9);
}
a.help:hover .ico,a.help:focus-visible .ico{background:var(--ink);color:var(--wa)}
a.help:hover small,a.help:focus-visible small{color:rgba(18,24,27,.68)}
a.help:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
a.help:active{transform:translateY(-1px)}

/* Icon-only WhatsApp links (share row, mobile bar, drawer) match it. */
.share a[href*="wa.me"]:hover,
.share a[href*="whatsapp"]:hover,
.drawer-contact a[href*="wa.me"]:hover,
.mbar a[href*="wa.me"]:hover{background:var(--wa);border-color:var(--wa);color:var(--ink)}

/* ---------------------------------------------------------
   3. FOOTER — logo + watermark
   The watermark is one nowrap line, so a long brand name ran
   past the container and got clipped mid-word. The character
   count now drives the font size, capped per size option, so
   the whole word always fits.
   --------------------------------------------------------- */
.ftr .logo{color:#fff}
.ftr .logo-img{max-height:46px;width:auto}
.ftr .about-col .logo{margin-bottom:4px}

.ftr .big{
  --wm-w:calc(min(var(--wrap,1200px),100vw) - 64px);
  --wm-k:1.40;
  --wm-cap:230px;
  display:block;
  max-width:100%;
  white-space:nowrap;
  overflow:hidden;
  text-align:center;
  font-size:clamp(60px,10vw,180px); /* fallback: no calc()-by-var() support */
  font-size:min(var(--wm-cap),calc(var(--wm-w) * var(--wm-k) / var(--wm-len,11)));
  line-height:.86;
  padding-top:.06em;
}
.ftr .big-sm{--wm-k:1.00;--wm-cap:140px}
.ftr .big-md{--wm-k:1.40;--wm-cap:230px}
.ftr .big-lg{--wm-k:1.62;--wm-cap:300px}

@media (max-width:1024px){ .ftr .big{--wm-w:calc(100vw - 48px)} }
@media (max-width:767px){ .ftr .big{--wm-w:calc(100vw - 36px);--wm-cap:120px} }

/* ---------------------------------------------------------
   4. MOBILE HEADER DRAWER
   The panel was pinned to a hard-coded 84px while the mobile
   bar is 72px (64px on phones, 64px once stuck), leaving a
   white strip above it. --hdr-h is now written by JS from the
   header's real height, and the drawer is laid out as a
   proper sheet: scrollable menu, actions pinned underneath.
   --------------------------------------------------------- */
@media (max-width:1024px){
  .drawer,
  .drawer.open,
  .hdr .drawer.open{
    top:calc(var(--wp-admin,0px) + var(--hdr-h,72px));
    left:0;right:0;bottom:0;
    position:fixed;
    display:flex;
    flex-direction:column;
    margin:0;
    padding:14px 18px calc(24px + env(safe-area-inset-bottom,0px));
    border-radius:0;
    background:#fff;
    box-shadow:none;
    border-top:1px solid var(--line);
    max-height:none;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    z-index:60;
  }
  .drawer[hidden]{display:none!important}
  .drawer.open{animation:apex-drawer-in .26s var(--ease) both}

  /* Menu fills the sheet, actions sit at the end of it. */
  .drawer>nav{flex:1 1 auto;min-height:0}
  .drawer .menu{display:grid;gap:0}
  .drawer .menu>li{border-bottom:1px solid var(--line)}
  .drawer .menu>li:last-child{border-bottom:0}
  .drawer .menu>li>a{
    display:flex;align-items:center;min-height:52px;
    padding:12px 8px;font-size:16px;font-weight:500;color:var(--text);
    border-radius:0;background:none;
  }
  .drawer .menu>li>a:hover,.drawer .menu>li>a:focus-visible{background:none;color:var(--text)}
  .drawer .menu>li.current-menu-item>a,
  .drawer .menu>li.current-menu-ancestor>a{color:var(--text);font-weight:600}
  .drawer .menu>li.current-menu-item>a::before,
  .drawer .menu>li.current-menu-ancestor>a::before{
    content:"";width:4px;height:18px;border-radius:2px;background:var(--lime);
    margin-right:10px;flex:none;
  }
  .drawer .has-sub>a{padding-right:54px}
  .drawer .sub-toggle{top:4px;right:0;transform:none}
  .drawer .sub-menu{margin:0 0 10px 8px;padding-left:12px;border-left:2px solid var(--line)}
  .drawer .sub-menu a{min-height:44px;display:flex;align-items:center;font-size:14.5px;color:var(--muted);padding:8px 10px}
  .drawer .sub-menu a:hover{color:var(--text);background:var(--mist);border-radius:8px}

  .drawer .btn{flex:none;width:100%;justify-content:space-between;margin-top:18px;height:52px;padding:0 6px 0 22px}
  .drawer .btn .arr{width:40px;height:40px}
  .drawer-contact{flex:none}
  .drawer-contact a{min-height:44px;padding:8px 8px;color:var(--text)}
  .drawer-contact a svg{color:var(--muted);flex:none}
  .drawer-contact a:hover{color:var(--text)}

  /* Burger + header while the sheet is open. */
  .burger{display:grid;place-items:center;flex:none}
  .burger[aria-expanded="true"]{background:var(--lime);color:var(--ink)}

  /* `backdrop-filter` on the stuck header makes it a containing block for
     `position:fixed` descendants — the drawer then measured itself against
     the 64px header instead of the viewport and collapsed to nothing. Drop
     the filter (and any transform) for as long as the drawer is open.
     Kept in two rules: an unsupported `:has()` would invalidate the whole
     selector list and take the class-based fix down with it. */
  .hdr.is-drawer-open,
  .apex-sticky-header .hdr.is-stuck.is-drawer-open{
    background:var(--ink);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    filter:none;
    transform:none;
    position:fixed;
    top:var(--wp-admin,0px);
    left:0;right:0;
    z-index:90;
    box-shadow:none;
  }
  .hdr:has(.drawer:not([hidden])),
  .apex-sticky-header .hdr.is-stuck:has(.drawer:not([hidden])){
    background:var(--ink);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    filter:none;
    transform:none;
    position:fixed;
    top:var(--wp-admin,0px);
    left:0;right:0;
    z-index:90;
    box-shadow:none;
  }
  body.apex-drawer-open{overflow:hidden}
  body.apex-drawer-open .mbar{display:none!important}
}

@keyframes apex-drawer-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

@media (max-width:767px){
  .drawer,.drawer.open{padding:12px 16px calc(22px + env(safe-area-inset-bottom,0px))}
  .drawer .menu>li>a{font-size:15.5px;min-height:50px}
  .drawer .btn{height:50px}
}
