/*
Theme Name: ATO Atelier
Theme URI: http://localhost/ato/
Author: Africa Tour Operators
Description: Atelier directory theme for Africa Tour Operators — verified African tour operator marketplace.
Version: 1.0.3
Text Domain: ato-atelier
*/

:root{
  --bark:#0A1830;
  --rust:#E85D1F;
  --clay:#FFA94D;
  --sand:#5A6B82;
  --linen:#E0E7F0;
  --paper:#F4F7FB;
  --cream:#FFFFFF;
  --ink:#050D1C;
  --ink-2:#0F1B30;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:17px;scroll-behavior:smooth}
body{font-family:'Outfit',sans-serif;font-weight:300;background:#F4F7FB;color:#0A1830;line-height:1.7}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}

/* WP utility classes */
.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}
.alignwide{max-width:1240px;margin-left:auto;margin-right:auto}
.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}

/* MINIMAL NAV */
nav.site-nav{position:relative;z-index:80;display:flex;justify-content:space-between;align-items:center;padding:.55rem 4vw;background:#E85D1F;border-bottom:1px solid rgba(244,247,251,.08);min-height:auto}
.at-logo{display:inline-flex;align-items:center;line-height:0}
.at-logo img,
.at-logo .custom-logo{
  height:52px !important;
  width:auto !important;
  max-width:none;
  display:block;
}
.at-menu{display:flex;list-style:none;gap:1.5rem;align-items:stretch;margin:0;padding:0}
.at-menu > li{position:static;display:flex;align-items:center}
.at-menu > li > a{font-family:'Kumbh Sans',sans-serif;font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:#F4F7FB;padding:1.6rem 0;position:relative;transition:color .25s;display:block;font-weight:500}
.at-menu > li > a::after{content:'';position:absolute;bottom:1.1rem;left:50%;width:0;height:1px;background:#fff;transition:all .35s}
.at-menu > li:hover > a{color:#fff}
.at-menu > li:hover > a::after{width:100%;left:0}

/* MEGA PANEL */
.at-mega{position:absolute;top:100%;left:0;right:0;background:#FFFFFF;box-shadow:0 30px 60px rgba(0,0,0,.18);padding:1.8rem 4vw 2rem;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .28s,transform .28s,visibility .28s;z-index:79;border-top:1px solid rgba(10,24,48,.08);max-height:calc(100vh - 80px);overflow-y:auto}
.at-menu > li:hover > .at-mega,
.at-menu > li:focus-within > .at-mega{opacity:1;visibility:visible;transform:translateY(0)}
.at-mega-inner{max-width:1280px;margin:0 auto}

.mega-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;border-bottom:1px solid rgba(10,24,48,.18);padding-bottom:.85rem;margin-bottom:1.2rem}
.mega-head-l{display:flex;flex-direction:column;gap:.5rem}
.mega-head .ek{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.5em;text-transform:uppercase;color:#E85D1F;font-weight:700}
.mega-head .ttl{font-family:'Sorts Mill Goudy',serif;font-size:1.55rem;color:#0A1830;line-height:1;font-weight:400}
.mega-head .ttl em{font-style:italic;color:#E85D1F}
.mega-head .vall{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.42em;text-transform:uppercase;color:#E85D1F;font-weight:600;white-space:nowrap;border-bottom:1px solid #E85D1F;padding-bottom:3px;transition:gap .3s}
.mega-head .vall:hover{color:#0A1830;border-color:#0A1830}

.mega-layout{display:grid;grid-template-columns:1fr 360px;gap:2.6rem;align-items:start}
.mega-layout.split2{grid-template-columns:2fr 360px}

.mega-cols{display:grid;gap:.05rem 1.6rem}
.mega-cols.c2{grid-template-columns:1fr 1fr}
.mega-cols.c3{grid-template-columns:repeat(3,1fr)}
.mega-cols.c4{grid-template-columns:repeat(4,1fr)}
.mega-cols.c5{grid-template-columns:repeat(6,1fr)}

.mega-cols a{font-family:'Outfit',sans-serif;font-size:.88rem;font-weight:300;color:#0A1830;letter-spacing:.005em;text-transform:none;padding:.28rem 0;display:flex;align-items:center;gap:.45rem;transition:color .2s,gap .25s;border-bottom:1px solid transparent;line-height:1.3}
.mega-cols a::before{content:'';width:0;height:1px;background:#E85D1F;transition:width .25s;flex-shrink:0}
.mega-cols a:hover{color:#E85D1F}
.mega-cols a:hover::before{width:14px}

.mega-group h6{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.5em;text-transform:uppercase;color:#E85D1F;font-weight:700;margin-bottom:.5rem;padding-bottom:.45rem;border-bottom:1px solid rgba(10,24,48,.18)}
.mega-2col{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem}

.mega-feat{display:block;border-radius:20px;overflow:hidden;position:relative;aspect-ratio:5/4;color:#F4F7FB;background:#0A1830}
.mega-feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}
.mega-feat:hover img{transform:scale(1.06)}
.mega-feat::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(4,8,16,.92) 0%,rgba(4,8,16,.35) 55%,rgba(4,8,16,.05) 100%)}
.mega-feat-c{position:absolute;left:0;right:0;bottom:0;padding:1.6rem 1.8rem;z-index:2}
.mega-feat-c .lbl{font-family:'Kumbh Sans',sans-serif;font-size:.5rem;letter-spacing:.5em;text-transform:uppercase;color:#FFA94D;font-weight:700;display:block;margin-bottom:.55rem}
.mega-feat-c h6{font-family:'Sorts Mill Goudy',serif;font-size:1.7rem;font-weight:400;color:#F4F7FB;line-height:1.05;margin-bottom:.5rem}
.mega-feat-c h6 em{font-style:italic;color:#FFA94D}
.mega-feat-c p{font-family:'Outfit',sans-serif;font-size:.85rem;line-height:1.55;color:rgba(244,247,251,.82);margin-bottom:.9rem;font-weight:300}
.mega-feat-c .go{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.42em;text-transform:uppercase;color:#FFA94D;font-weight:600;display:inline-flex;gap:.5rem;align-items:center;border-bottom:1px solid #FFA94D;padding-bottom:2px}
.mega-feat:hover .mega-feat-c .go{color:#F4F7FB;border-color:#F4F7FB}

.at-mega.narrow{left:auto;right:4vw;width:380px;padding:2rem 2rem 2.2rem}
.at-mega.narrow .mega-head{margin-bottom:1.2rem;padding-bottom:.9rem}
.at-mega.narrow .mega-cols a{padding:.7rem 0;border-bottom:1px solid rgba(10,24,48,.12);font-size:1rem}
.at-mega.narrow .mega-cols a:last-child{border-bottom:none}
.at-mega.narrow .mega-tel{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(10,24,48,.18);font-family:'Sorts Mill Goudy',serif;font-size:1.3rem;color:#E85D1F}
.at-mega.narrow .mega-tel small{display:block;font-family:'Kumbh Sans',sans-serif;font-size:.5rem;letter-spacing:.42em;text-transform:uppercase;color:#5A6B82;margin-bottom:.2rem;font-weight:600}

@media(max-width:1100px){
  .mega-cols.c5{grid-template-columns:repeat(3,1fr)}
  .mega-cols.c4{grid-template-columns:repeat(2,1fr)}
  .mega-cols.c3{grid-template-columns:repeat(2,1fr)}
  .mega-layout,.mega-layout.split2{grid-template-columns:1fr;gap:1.8rem}
  .mega-feat{aspect-ratio:16/7;max-height:220px}
}
.at-r{padding:.85rem 1.8rem;border:1px solid var(--paper);color:var(--paper);border-radius:999px;font-family:'Kumbh Sans',sans-serif;font-size:.62rem;letter-spacing:.4em;text-transform:uppercase;font-weight:500;transition:background .5s cubic-bezier(.22,1,.36,1),color .5s cubic-bezier(.22,1,.36,1)}
.at-r:hover{background:var(--paper);color:var(--rust)}

/* HAMBURGER */
.nav-hamburger{display:none;background:transparent;border:none;cursor:pointer;padding:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;z-index:120;position:relative}
.nav-hamburger span{display:block;width:24px;height:2px;background:#F4F7FB;border-radius:2px;transition:transform .35s,opacity .25s,background .25s}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* MINIMAL HERO */
.at-hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:8rem 6vw 5rem;position:relative}
.at-hero-bg{position:absolute;top:7rem;left:50%;transform:translateX(-50%);width:min(82vw,1200px);height:62vh;overflow:hidden;z-index:0;opacity:.18;filter:saturate(.7)}
.at-hero-bg img{width:100%;height:100%;object-fit:cover}
.at-hero-c{position:relative;z-index:1;max-width:840px}
.at-eb{font-family:'Kumbh Sans',sans-serif;font-size:.6rem;letter-spacing:.6em;text-transform:uppercase;color:#E85D1F;margin-bottom:2.4rem;display:inline-flex;align-items:center;gap:.8rem}
.at-eb::before,.at-eb::after{content:'';width:30px;height:1px;background:#E85D1F}
.at-hero h1{font-family:'Sorts Mill Goudy',serif;font-size:clamp(4rem,8.5vw,8rem);font-weight:400;line-height:1;color:#0A1830;letter-spacing:-.015em;margin-bottom:1.4rem}
.at-hero h1 em{font-style:italic;color:#E85D1F}
.at-hero .tag{font-family:'Sorts Mill Goudy',serif;font-style:italic;font-size:1.25rem;color:#5A6B82;margin-bottom:2.4rem;letter-spacing:.04em}
.at-rule{width:1px;height:60px;background:#E85D1F;margin:0 auto 2.4rem;opacity:.65}
.at-hero p{font-family:'Sorts Mill Goudy',serif;font-size:1.15rem;color:#0A1830;line-height:1.7;max-width:580px;margin:0 auto 3rem;opacity:.85}
.at-hero-cta{display:flex;gap:2rem;justify-content:center;align-items:center;flex-wrap:wrap}
.at-hero-cta a.p{padding:1rem 2.2rem;background:var(--rust);color:var(--paper);font-family:'Kumbh Sans',sans-serif;font-size:.68rem;letter-spacing:.4em;text-transform:uppercase;font-weight:500;border-radius:999px;border:1px solid var(--rust);transition:background .5s cubic-bezier(.22,1,.36,1),border-color .5s cubic-bezier(.22,1,.36,1),color .5s cubic-bezier(.22,1,.36,1)}
.at-hero-cta a.p:hover{background:var(--ink);border-color:var(--ink)}
.at-hero-cta a.s{font-family:'Kumbh Sans',sans-serif;font-size:.68rem;letter-spacing:.4em;text-transform:uppercase;color:var(--bark);border-bottom:1px solid var(--bark);padding-bottom:4px;font-weight:500;transition:color .5s cubic-bezier(.22,1,.36,1),border-color .5s cubic-bezier(.22,1,.36,1)}
.at-hero-cta a.s:hover{color:var(--rust);border-color:var(--rust)}

.at-meta{position:absolute;bottom:2.2rem;left:0;right:0;display:flex;justify-content:space-between;padding:0 4vw;font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.5em;text-transform:uppercase;color:#5A6B82}

/* WELCOME */
.at-welcome-w{background:#FFFFFF}
.at-welcome{padding:7rem 4vw 7rem;text-align:center;max-width:760px;margin:0 auto}
.at-welcome .ek{font-family:'Kumbh Sans',sans-serif;font-size:.6rem;letter-spacing:.6em;text-transform:uppercase;color:#E85D1F;display:block;margin-bottom:1.4rem}
.at-welcome h2{font-family:'Sorts Mill Goudy',serif;font-size:clamp(2.2rem,4vw,3.2rem);color:#0A1830;line-height:1.08;margin-bottom:1.6rem;font-weight:400}
.at-welcome h2 em{font-style:italic;color:#E85D1F}
.at-welcome .at-w-rule{width:1px;height:50px;background:#E85D1F;margin:0 auto 2rem;opacity:.6}
.at-welcome p{font-family:'Sorts Mill Goudy',serif;font-size:1.22rem;line-height:1.75;color:#0A1830;opacity:.88;margin-bottom:1.4rem}
.at-welcome p:last-child{margin-bottom:0}

/* SECTION HEAD */
.at-shead{padding:0 4vw 3rem;text-align:center;margin-top:6rem}
.at-shead .ek{font-family:'Kumbh Sans',sans-serif;font-size:.6rem;letter-spacing:.6em;text-transform:uppercase;color:#E85D1F;display:block;margin-bottom:1.2rem}
.at-shead h2{font-family:'Sorts Mill Goudy',serif;font-size:clamp(2.4rem,4.4vw,3.6rem);color:#0A1830;line-height:1.05;margin-bottom:1rem}
.at-shead h2 em{font-style:italic;color:#E85D1F}
.at-shead p{font-family:'Sorts Mill Goudy',serif;color:#0A1830;opacity:.82;font-size:1.18rem;max-width:680px;margin:0 auto;line-height:1.65}

/* DESTINATION GRID */
.at-bento-section{padding:0 4vw 6rem}
.at-bento{max-width:1340px;margin:0 auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:240px;gap:1.4rem}

.at-d{border-radius:22px;overflow:hidden;position:relative;cursor:pointer;background:var(--bark);display:block}
.at-d.hero{grid-column:span 6;grid-row:span 2}
.at-d.sub{grid-column:span 6}
.at-d.std{grid-column:span 3}
.at-d img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.88)}
.at-d::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(4,8,16,.85))}
.at-d-info{position:absolute;bottom:0;left:0;right:0;padding:1.3rem 1.4rem;color:var(--paper);z-index:2}
.at-d-info .num{display:none}
.at-d-info h3{font-family:'Outfit',sans-serif;font-size:1.75rem;color:var(--paper);line-height:1.05;font-weight:700;margin-bottom:.35rem;letter-spacing:-.015em}
.at-d-info .meta{font-family:'Outfit',sans-serif;font-size:.82rem;color:rgba(244,247,251,.82);font-weight:300}
.at-d.hero .at-d-info{padding:2rem 2.2rem}
.at-d.hero .at-d-info h3{font-size:3.4rem;margin-bottom:.55rem;letter-spacing:-.025em}
.at-d.hero .at-d-info .meta{font-size:.95rem;max-width:340px;line-height:1.5}
.at-d.sub .at-d-info h3{font-size:2.2rem;letter-spacing:-.02em}

/* MORE LINK */
.at-more{margin:3.2rem auto 0;text-align:center}
.at-more a{font-family:'Kumbh Sans',sans-serif;font-size:.68rem;letter-spacing:.4em;text-transform:uppercase;color:var(--rust);font-weight:500;border:1px solid var(--rust);padding:1rem 2.2rem;border-radius:999px;display:inline-block;transition:background .5s cubic-bezier(.22,1,.36,1),color .5s cubic-bezier(.22,1,.36,1)}
.at-more a:hover{background:var(--rust);color:var(--paper)}

/* EXPERIENCES */
.at-exp{padding:8rem 4vw;background:#E0E7F0}
.at-exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;max-width:1240px;margin:3rem auto 0}
.at-ex{cursor:pointer;display:flex;flex-direction:column}
.at-ex .img{aspect-ratio:1;overflow:hidden;border-radius:28px;margin-bottom:1.6rem;filter:saturate(.78);transition:filter .8s}
.at-ex:hover .img{filter:saturate(1)}
.at-ex .img img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}
.at-ex:hover .img img{transform:scale(1.05)}
.at-ex .num{display:none}
.at-ex h3{font-family:'Sorts Mill Goudy',serif;font-size:1.85rem;font-weight:700;color:#0A1830;margin-bottom:.7rem;line-height:1.15}
.at-ex h3 em{font-style:normal;color:#E85D1F}
.at-ex p{font-size:1.02rem;line-height:1.7;color:rgba(10,24,48,.82);margin-bottom:1.4rem;flex:1;max-width:340px}
.at-ex .foot{display:flex;justify-content:flex-end;align-items:center;border-top:1px solid rgba(10,24,48,.18);padding-top:.85rem}
.at-ex .px{font-family:'Sorts Mill Goudy',serif;color:#E85D1F;font-size:1.5rem;line-height:1}
.at-ex .px small{display:block;font-family:'Kumbh Sans',sans-serif;font-style:normal;font-size:.5rem;letter-spacing:.32em;text-transform:uppercase;color:#5A6B82;margin-bottom:.15rem;font-weight:600}
.at-ex .arr{font-family:'Sorts Mill Goudy',serif;font-style:italic;font-size:1.3rem;color:#0A1830;transition:all .35s}
.at-ex:hover .arr{transform:translateX(8px);color:#E85D1F}

/* TOURS */
.at-tours{padding:8rem 4vw;background:#FFFFFF}
.at-tours-grid{max-width:1340px;margin:3rem auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem}
.at-tours-cta{max-width:1340px;margin:3rem auto 0;text-align:center}
.at-tours-cta-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:'Outfit',sans-serif;font-size:.95rem;font-weight:600;letter-spacing:.04em;color:var(--rust);border:2px solid var(--rust);border-radius:50px;padding:.85rem 2.4rem;text-decoration:none;transition:background .3s,color .3s,transform .4s cubic-bezier(.22,1,.36,1)}
.at-tours-cta-btn:hover{background:var(--rust);color:#fff;transform:translateY(-2px)}
.at-tour{display:flex;flex-direction:column;background:#fff;border-radius:18px;border:1px solid rgba(10,24,48,.15);overflow:hidden;cursor:pointer}
.at-tour-img{aspect-ratio:4/3;width:100%;overflow:hidden}
.at-tour-img img{width:100%;height:100%;object-fit:cover}
.at-tour-body{padding:1.4rem 1.4rem .9rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.at-tour-body .meta{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.32em;text-transform:uppercase;color:var(--rust);font-weight:700;margin:0}
.at-tour-body h3{font-family:'Sorts Mill Goudy',serif;font-size:1.3rem;font-weight:400;color:var(--bark);line-height:1.18;margin:0}
.at-tour-body h3 em{font-style:normal;color:var(--rust)}
.at-tour-body .tags{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.2em;color:var(--sand);font-weight:500;margin:0}
.at-tour-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(10,24,48,.15);padding:.9rem 1.4rem 1.1rem;margin-top:auto}
.at-tour-px{font-family:'Sorts Mill Goudy',serif;font-size:1.3rem;color:var(--rust);text-align:left;line-height:1;white-space:nowrap}
.at-tour-px small{display:block;font-family:'Kumbh Sans',sans-serif;font-size:.5rem;letter-spacing:.32em;text-transform:uppercase;color:var(--sand);font-weight:600;margin-bottom:.18rem}
.at-tour .arr{font-family:'Sorts Mill Goudy',serif;font-size:1.3rem;color:var(--bark);transition:transform .55s cubic-bezier(.22,1,.36,1),color .35s}
.at-tour:hover .arr{transform:translateX(6px);color:var(--rust)}

/* WHY */
.at-why{padding:8rem 4vw;background:#5A6B82;display:grid;grid-template-columns:1fr 1.2fr;gap:5vw;align-items:center;max-width:1500px;margin:0 auto}
.at-why-l .ek{font-family:'Kumbh Sans',sans-serif;font-size:.6rem;letter-spacing:.6em;text-transform:uppercase;color:#E85D1F;display:block;margin-bottom:1.4rem}
.at-why-l h2{font-family:'Sorts Mill Goudy',serif;font-size:clamp(2.4rem,4.4vw,3.6rem);color:#0A1830;line-height:1.05;margin-bottom:1.6rem}
.at-why-l h2 em{font-style:italic;color:#E85D1F}
.at-why-l p{font-family:'Sorts Mill Goudy',serif;font-size:1.15rem;color:#0A1830;opacity:.85;line-height:1.65;margin-bottom:1.4rem;max-width:480px}
.at-why-l .sig{font-family:'Sorts Mill Goudy',serif;font-style:italic;color:#E85D1F;font-size:1.05rem}
.at-why-r{display:block}
.at-why-list{list-style:none;padding:0;margin:0;border-top:1px solid rgba(10,24,48,.28)}
.at-why-list li{display:grid;grid-template-columns:48px 1fr;gap:1.4rem;padding:1.5rem 0;border-bottom:1px solid rgba(10,24,48,.28);align-items:start}
.at-why-list .n{font-family:'Sorts Mill Goudy',serif;font-style:italic;color:var(--rust);font-size:1.6rem;line-height:1.1}
.at-why-list h4{font-family:'Sorts Mill Goudy',serif;font-size:1.3rem;color:var(--bark);font-weight:400;line-height:1.2;margin-bottom:.4rem}
.at-why-list p{font-size:1rem;line-height:1.65;color:rgba(10,24,48,.85);margin:0}

/* FAQ */
.at-faq{padding:8rem 4vw;background:#FFFFFF}
.at-faq-head{max-width:760px;margin:0 auto 3.2rem;text-align:center}
.at-faq-head .ek{font-family:'Kumbh Sans',sans-serif;font-size:.6rem;letter-spacing:.6em;text-transform:uppercase;color:#E85D1F;display:block;margin-bottom:1.2rem}
.at-faq-head h2{font-family:'Sorts Mill Goudy',serif;font-size:clamp(2.2rem,4.2vw,3.4rem);color:#0A1830;line-height:1.05;margin-bottom:1.2rem;font-weight:400}
.at-faq-head h2 em{font-style:italic;color:#E85D1F}
.at-faq-head p{font-family:'Sorts Mill Goudy',serif;font-size:1.18rem;color:#0A1830;opacity:.82;line-height:1.65;max-width:640px;margin:0 auto}
.at-faq-list{max-width:780px;margin:0 auto;display:block;border-top:1px solid rgba(10,24,48,.22)}
.at-faq-item{border:none;border-bottom:1px solid rgba(10,24,48,.22);background:transparent;border-radius:0;overflow:hidden;transition:none}
.at-faq-item[open]{box-shadow:none;border-bottom-color:rgba(232,93,31,.45)}
.at-faq-item summary{padding:1.5rem .25rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1.2rem;font-family:'Sorts Mill Goudy',serif;font-size:1.25rem;color:var(--bark);font-weight:400;line-height:1.3;transition:color .35s cubic-bezier(.22,1,.36,1)}
.at-faq-item summary::-webkit-details-marker{display:none}
.at-faq-item summary::after{content:'+';font-family:'Sorts Mill Goudy',serif;font-size:1.7rem;color:var(--rust);line-height:.5;flex-shrink:0;width:24px;text-align:center;font-weight:400;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.at-faq-item[open] summary::after{content:'−'}
.at-faq-item summary:hover{color:var(--rust)}
.at-faq-item .a{padding:0 .25rem 1.6rem;font-family:'Sorts Mill Goudy',serif;font-size:1.05rem;line-height:1.7;color:var(--ink);max-width:680px}

/* TESTIMONIAL CINEMA */
.at-cinema{position:relative;padding:8rem 4vw;background:#0A1830 url('https://images.unsplash.com/photo-1547471080-7cc2caa01a7e?w=1800&q=85') center/cover;text-align:center;color:#F4F7FB}
.at-cinema::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,24,48,.55),rgba(10,24,48,.4))}
.at-cinema-c{position:relative;z-index:2;max-width:880px;margin:0 auto}
.at-cinema-c .mk{font-family:'Sorts Mill Goudy',serif;font-style:italic;font-size:6rem;color:#FFA94D;line-height:.4;display:block;margin-bottom:1rem;opacity:.9}
.at-cinema-c blockquote{font-family:'Sorts Mill Goudy',serif;font-style:italic;font-size:clamp(1.7rem,3.2vw,2.6rem);font-weight:400;line-height:1.4;margin-bottom:2rem}
.at-cinema-c blockquote em{color:#FFA94D}
.at-cinema-c cite{font-family:'Kumbh Sans',sans-serif;font-style:normal;font-size:.6rem;letter-spacing:.5em;text-transform:uppercase;color:#FFA94D;display:block;margin-bottom:.4rem}
.at-cinema-c .pl{font-family:'Sorts Mill Goudy',serif;font-style:italic;font-size:1rem;color:rgba(244,247,251,.72)}

/* CTA */
.at-cta{padding:11rem 4vw;text-align:center;background:#F4F7FB}
.at-cta .ek{font-family:'Kumbh Sans',sans-serif;font-size:.6rem;letter-spacing:.6em;text-transform:uppercase;color:#E85D1F;display:block;margin-bottom:1.4rem}
.at-cta h2{font-family:'Sorts Mill Goudy',serif;font-size:clamp(3.2rem,7vw,6.4rem);font-weight:400;color:#0A1830;line-height:.96;margin-bottom:1.6rem;letter-spacing:-.015em}
.at-cta h2 em{font-style:italic;color:#E85D1F}
.at-cta p{font-family:'Sorts Mill Goudy',serif;font-size:1.2rem;color:#0A1830;opacity:.78;max-width:560px;margin:0 auto 3rem;line-height:1.6}
.at-cta-rule{width:1px;height:60px;background:#E85D1F;margin:0 auto 2.6rem;opacity:.6}
.at-cta-pair{display:flex;gap:1.4rem;justify-content:center;flex-wrap:wrap}
.at-cta-pair a{padding:1rem 2.2rem;border-radius:999px;font-family:'Kumbh Sans',sans-serif;font-size:.68rem;letter-spacing:.4em;text-transform:uppercase;font-weight:500;border:1px solid transparent;transition:background .5s cubic-bezier(.22,1,.36,1),border-color .5s cubic-bezier(.22,1,.36,1),color .5s cubic-bezier(.22,1,.36,1)}
.at-cta-pair a.p{background:var(--rust);color:var(--paper);border-color:var(--rust)}
.at-cta-pair a.p:hover{background:var(--ink);border-color:var(--ink)}
.at-cta-pair a.s{border-color:var(--rust);color:var(--rust)}
.at-cta-pair a.s:hover{background:var(--rust);color:var(--paper)}

/* FOOTER */
.site-footer{padding:3rem 4vw 1.4rem;background:#F4F7FB;border-top:1px solid rgba(10,24,48,.12)}
.at-foot{max-width:1340px;margin:0 auto;display:grid;grid-template-columns:repeat(12,1fr);gap:1.4rem}
.at-foot-brand{grid-column:span 4;background:#0A1830;color:#F4F7FB;padding:2rem;border-radius:24px}
.at-foot-brand h3{font-family:'Sorts Mill Goudy',serif;font-size:1.6rem;color:#FFA94D;margin-bottom:.6rem}
.at-foot-brand h3 b{color:#F4F7FB;font-style:normal;font-weight:400}
.at-foot-brand p{font-size:.96rem;line-height:1.7;color:rgba(244,247,251,.72)}
.at-foot-col{grid-column:span 2;background:#E0E7F0;border:1px solid rgba(10,24,48,.18);padding:1.4rem;border-radius:24px}
.at-foot-col h4{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.45em;text-transform:uppercase;color:#E85D1F;font-weight:700;margin-bottom:.85rem}
.at-foot-col ul{list-style:none;margin:0;padding:0}
.at-foot-col li{margin-bottom:.4rem}
.at-foot-col a{font-family:'Outfit',sans-serif;font-size:.94rem;color:#0A1830;transition:color .25s}
.at-foot-col a:hover{color:#E85D1F}
.at-foot-bot{grid-column:span 12;display:flex;justify-content:space-between;align-items:center;padding:1rem;font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.4em;text-transform:uppercase;color:rgba(10,24,48,.5);flex-wrap:wrap;gap:.8rem}

/* Subtle motion */
.at-d{transition:transform .55s cubic-bezier(.22,1,.36,1)}
.at-d:hover{transform:translateY(-3px)}
.at-d img{transition:transform 1.1s cubic-bezier(.22,1,.36,1)}
.at-d:hover img{transform:scale(1.04)}
.at-ex .img{transition:filter 1s cubic-bezier(.22,1,.36,1)}
.at-ex .img img{transition:transform 1.1s cubic-bezier(.22,1,.36,1)}
.at-ex:hover .img img{transform:scale(1.03)}
.at-tour{transition:background .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s cubic-bezier(.22,1,.36,1)}
.at-tour:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(4,8,16,.06)}
.at-tour-img img{transition:transform 1s cubic-bezier(.22,1,.36,1)}
.at-tour:hover .at-tour-img img{transform:scale(1.04)}
.at-wf{transition:transform .5s cubic-bezier(.22,1,.36,1),background .5s cubic-bezier(.22,1,.36,1)}
.at-wf:hover{transform:translateY(-2px)}

/* scroll-reveal */
[data-r]{opacity:0;transform:translateY(28px);transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1)}
[data-r].in{opacity:1;transform:none}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
  [data-r]{opacity:1;transform:none}
}

@media(max-width:1100px){
  .at-bento{grid-template-columns:repeat(6,1fr);grid-auto-rows:200px}
  .at-d.hero{grid-column:span 6;grid-row:span 2}
  .at-d.sub{grid-column:span 3}
  .at-d.std{grid-column:span 3}
  .at-exp-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .at-tours-grid{grid-template-columns:repeat(2,1fr)}
  .at-why{grid-template-columns:1fr;gap:3rem;padding:5rem 4vw}
  .at-foot-brand{grid-column:span 12}
  .at-foot-col{grid-column:span 6}
}
@media(max-width:900px){
  .nav-hamburger{display:flex}
  .at-menu{
    display:none;
    position:fixed;
    top:72px;
    left:0;right:0;bottom:0;
    height:calc(100vh - 72px);
    height:calc(100dvh - 72px);
    max-height:calc(100vh - 72px);
    max-height:calc(100dvh - 72px);
    background:#E85D1F;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:1.4rem 1.5rem 5rem;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    z-index:90;
  }
  .at-menu.open{display:flex}
  .at-menu > li{display:block;border-bottom:1px solid rgba(244,247,251,.16)}
  .at-menu > li > a{padding:1.1rem 0;font-size:.74rem;color:#F4F7FB}
  .at-menu > li > a::after{display:none}
  .at-r{display:none}
  /* sub-menus inside open drawer */
  .at-menu.open .at-mega{
    position:static;
    display:block !important;
    visibility:visible;
    opacity:1;
    transform:none;
    background:rgba(244,247,251,.06);
    box-shadow:none;
    border:none;
    border-left:2px solid #FFA94D;
    border-top:none;
    margin:.4rem 0 .8rem .4rem;
    padding:.85rem 1rem;
    max-height:none;
    overflow:visible;
    width:auto;
    right:auto;
    left:auto;
  }
  .at-menu.open .at-mega.narrow{width:auto}
  .at-menu.open .mega-head{display:none}
  .at-menu.open .mega-layout,
  .at-menu.open .mega-layout.split2{grid-template-columns:1fr;gap:.8rem}
  .at-menu.open .mega-feat{display:none}
  .at-menu.open .mega-2col{grid-template-columns:1fr;gap:.8rem}
  .at-menu.open .mega-cols.c5,
  .at-menu.open .mega-cols.c4,
  .at-menu.open .mega-cols.c3,
  .at-menu.open .mega-cols.c2,
  .at-menu.open .mega-cols{grid-template-columns:1fr 1fr;gap:0 .8rem}
  .at-menu.open .mega-cols a{color:#F4F7FB;font-size:.82rem;padding:.32rem 0;border-bottom:none}
  .at-menu.open .mega-cols a:hover{color:#FFA94D}
  .at-menu.open .mega-group h6{color:#FFA94D;border-bottom-color:rgba(244,247,251,.18)}
  .at-menu.open .at-mega.narrow .mega-cols a{border-bottom:1px solid rgba(244,247,251,.18);padding:.6rem 0}
  .at-menu.open .at-mega.narrow .mega-tel{color:#FFA94D;border-top-color:rgba(244,247,251,.18)}
  .at-menu.open .at-mega.narrow .mega-tel small{color:rgba(244,247,251,.7)}
  /* lock body scroll when menu open */
  html.nav-open, body.nav-open{overflow:hidden !important;height:100%;touch-action:none}
}
@media(max-width:700px){
  .at-bento{grid-template-columns:repeat(2,1fr);gap:1rem;grid-auto-rows:180px}
  .at-d.hero,.at-d.sub,.at-d.std{grid-column:span 2}
  .at-d.hero{grid-row:span 2}
  .at-d.hero .at-d-info h3{font-size:2.2rem}
  .at-exp-grid{grid-template-columns:1fr}
  .at-tours-grid{grid-template-columns:1fr}
  .at-foot-col{grid-column:span 12}
  .at-meta{flex-wrap:wrap;gap:.5rem;justify-content:center}
}

/* HERO SEARCH BAR */
.at-search{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:0;background:#fff;border-radius:14px;padding:.45rem;box-shadow:0 18px 50px rgba(10,24,48,.10);max-width:820px;margin:.5rem auto 1.6rem;border:1px solid rgba(10,24,48,.08);text-align:left}
.at-search .field{padding:.75rem 1.1rem;border-right:1px solid rgba(10,24,48,.08);display:flex;flex-direction:column;gap:.18rem;min-width:0}
.at-search .field:nth-last-child(2){border-right:none}
.at-search label{font-family:'Kumbh Sans',sans-serif;font-size:.5rem;letter-spacing:.32em;text-transform:uppercase;color:var(--sand);font-weight:700}
.at-search select,.at-search input{border:none;background:transparent;font-family:'Outfit',sans-serif;font-size:.95rem;font-weight:500;color:var(--bark);padding:0;outline:none;width:100%;cursor:pointer;appearance:none;-webkit-appearance:none}
.at-search button{background:var(--rust);color:#fff;border:none;border-radius:10px;padding:0 1.6rem;font-family:'Kumbh Sans',sans-serif;font-size:.62rem;letter-spacing:.32em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background .35s,transform .35s;display:flex;align-items:center;gap:.5rem}
.at-search button:hover{background:var(--ink);transform:translateY(-1px)}
@media(max-width:760px){
  .at-search{grid-template-columns:1fr;padding:.6rem}
  .at-search .field{border-right:none;border-bottom:1px solid rgba(10,24,48,.08)}
  .at-search button{padding:.95rem;justify-content:center;margin-top:.4rem}
}

/* HERO STAT STRIP */
.at-stats{display:grid;grid-template-columns:repeat(4,1fr);max-width:980px;margin:2.4rem auto 0;border-top:1px solid rgba(10,24,48,.12);border-bottom:1px solid rgba(10,24,48,.12);padding:1.5rem 0}
.at-stat{text-align:center;border-right:1px solid rgba(10,24,48,.08);padding:0 1rem}
.at-stat:last-child{border-right:none}
.at-stat .num{font-family:'Outfit',sans-serif;font-size:2rem;font-weight:700;color:var(--bark);line-height:1;letter-spacing:-.02em}
.at-stat .num em{font-style:normal;color:var(--rust)}
.at-stat .lbl{font-family:'Kumbh Sans',sans-serif;font-size:.52rem;letter-spacing:.32em;text-transform:uppercase;color:var(--sand);margin-top:.55rem;font-weight:600;display:block}
@media(max-width:700px){
  .at-stats{grid-template-columns:1fr 1fr;gap:1rem 0}
  .at-stat:nth-child(2){border-right:none}
  .at-stat .num{font-size:1.6rem}
}

/* TRUST BADGES */
.at-trust{padding:2.2rem 4vw;background:#fff;border-bottom:1px solid rgba(10,24,48,.06);text-align:center}
.at-trust .lbl{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.5em;text-transform:uppercase;color:var(--sand);font-weight:600;margin-bottom:1.2rem}
.at-trust-row{display:flex;justify-content:center;align-items:center;gap:2.4rem 3rem;flex-wrap:wrap}
.at-trust-row span{font-family:'Outfit',sans-serif;font-size:.86rem;font-weight:600;color:var(--bark);opacity:.78;display:inline-flex;align-items:center;gap:.5rem;letter-spacing:.02em}
.at-trust-row span::before{content:'✓';color:var(--rust);font-weight:700;font-size:.95rem}

/* HOW IT WORKS */
.at-how{padding:6.5rem 4vw;background:#fff}
.at-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;max-width:1140px;margin:3rem auto 0}
.at-how-card{padding:2rem 1.7rem;border:1px solid rgba(10,24,48,.1);border-radius:18px;background:var(--paper);position:relative;transition:transform .4s,box-shadow .4s,border-color .4s}
.at-how-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(10,24,48,.06);border-color:rgba(232,93,31,.25)}
.at-how-card .step{font-family:'Outfit',sans-serif;font-size:2.6rem;font-weight:800;color:var(--rust);line-height:1;margin-bottom:1rem;letter-spacing:-.02em;display:block}
.at-how-card h3{font-family:'Outfit',sans-serif;font-size:1.3rem;font-weight:700;color:var(--bark);margin-bottom:.55rem;line-height:1.2}
.at-how-card p{font-family:'Outfit',sans-serif;font-size:.98rem;color:var(--bark);opacity:.78;line-height:1.55;font-weight:300}
@media(max-width:900px){.at-how-grid{grid-template-columns:1fr;gap:1rem}}

/* TOUR CARDS */
.at-tour-rate{display:flex;align-items:center;gap:.45rem;font-family:'Outfit',sans-serif;font-size:.82rem;color:var(--bark);font-weight:600;margin-top:.1rem}
.at-tour-rate .stars{color:#F5A623;letter-spacing:.06em;font-size:.88rem}
.at-tour-rate .count{color:var(--sand);font-weight:400;font-size:.78rem}
.at-tour-op{font-family:'Outfit',sans-serif;font-size:.78rem;color:var(--sand);font-weight:500;display:flex;align-items:center;gap:.4rem;margin-top:.2rem;letter-spacing:.01em}
.at-tour-op .vbadge{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--rust);color:#fff;font-size:.5rem;font-weight:700;flex-shrink:0}
.at-tour-meta-row{display:flex;justify-content:space-between;align-items:center;font-family:'Outfit',sans-serif;font-size:.72rem;color:var(--sand);font-weight:500;letter-spacing:.04em;text-transform:uppercase}

/* FEATURED OPERATORS */
.at-ops{padding:7rem 4vw;background:var(--linen)}
.at-ops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1280px;margin:3rem auto 0}
.at-op{background:#fff;border-radius:18px;border:1px solid rgba(10,24,48,.1);padding:1.6rem;display:flex;flex-direction:column;gap:.85rem;transition:transform .4s,box-shadow .4s}
.at-op:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(10,24,48,.09)}
.at-op-head{display:flex;align-items:center;gap:.9rem}
.at-op-logo{width:54px;height:54px;border-radius:12px;background:linear-gradient(135deg,var(--paper),var(--linen));display:flex;align-items:center;justify-content:center;font-family:'Outfit',sans-serif;font-weight:800;color:var(--rust);font-size:1.25rem;flex-shrink:0;border:1px solid rgba(10,24,48,.08);letter-spacing:-.02em}
.at-op-h h4{font-family:'Outfit',sans-serif;font-size:1.05rem;font-weight:700;color:var(--bark);line-height:1.2;margin:0}
.at-op-h .loc{font-family:'Outfit',sans-serif;font-size:.78rem;color:var(--sand);margin-top:.15rem;font-weight:500}
.at-op-rating{display:flex;align-items:center;gap:.5rem;font-family:'Outfit',sans-serif;font-size:.85rem;font-weight:600;color:var(--bark)}
.at-op-rating .stars{color:#F5A623;letter-spacing:.05em}
.at-op-rating .count{color:var(--sand);font-weight:400;font-size:.78rem}
.at-op-tags{display:flex;gap:.4rem;flex-wrap:wrap}
.at-op-tag{font-family:'Kumbh Sans',sans-serif;font-size:.5rem;letter-spacing:.22em;text-transform:uppercase;color:var(--bark);background:var(--paper);padding:.38rem .72rem;border-radius:999px;font-weight:700;border:1px solid rgba(10,24,48,.06)}
.at-op-meta{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;border-top:1px solid rgba(10,24,48,.08);padding-top:.85rem;margin-top:auto;font-family:'Outfit',sans-serif;font-size:.76rem;color:var(--sand)}
.at-op-meta b{color:var(--bark);font-weight:700;display:block;font-size:.85rem;margin-bottom:.1rem;font-family:'Outfit',sans-serif}
.at-op-cta{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.32em;text-transform:uppercase;color:var(--rust);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--rust);padding:.7rem 1rem;border-radius:999px;transition:background .35s,color .35s}
.at-op-cta:hover{background:var(--rust);color:#fff}
@media(max-width:1100px){.at-ops-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.at-ops-grid{grid-template-columns:1fr}}

/* TYPE OVERRIDES */
.at-tour-body h3{font-family:'Outfit',sans-serif;font-weight:700;font-size:1.1rem;color:var(--bark);letter-spacing:-.005em}
.at-tour-body h3 em{font-style:normal;color:var(--rust)}
.at-faq-item summary{font-family:'Outfit',sans-serif;font-weight:600;font-size:1.08rem}
.at-faq-item .a{font-family:'Outfit',sans-serif;font-size:.98rem;font-weight:300}
.at-shead h2{font-weight:400}

/* TYPOGRAPHY */
.at-hero p{font-family:'Outfit',sans-serif;font-size:1.05rem;font-weight:300;color:var(--bark);opacity:.78;line-height:1.6;max-width:620px}
.at-welcome p{font-family:'Outfit',sans-serif;font-size:1.05rem;font-weight:300;line-height:1.7;color:var(--bark);opacity:.82}
.at-shead p{font-family:'Outfit',sans-serif;font-size:1.02rem;font-weight:300;color:var(--bark);opacity:.72}
.at-ex h3{font-family:'Outfit',sans-serif;font-weight:700;font-size:1.4rem;letter-spacing:-.01em}
.at-ex p{font-family:'Outfit',sans-serif;font-weight:300;font-size:.96rem}
.at-why-l h2{font-weight:400}
.at-why-l p{font-family:'Outfit',sans-serif;font-size:1rem;font-weight:300;opacity:.82;line-height:1.65}
.at-why-l .sig{font-family:'Outfit',sans-serif;font-style:normal;font-size:.78rem;letter-spacing:.32em;text-transform:uppercase;color:var(--rust);font-weight:700}
.at-why-list h4{font-family:'Outfit',sans-serif;font-weight:700;font-size:1.05rem}
.at-why-list .n{font-family:'Outfit',sans-serif;font-style:normal;font-weight:800;font-size:1.3rem;color:var(--rust);letter-spacing:-.02em}
.at-why-list p{font-family:'Outfit',sans-serif;font-size:.94rem;font-weight:300}
.at-faq-head h2{font-weight:400}
.at-faq-head p{font-family:'Outfit',sans-serif;font-size:1.02rem;font-weight:300;opacity:.78}
.at-cta p{font-family:'Outfit',sans-serif;font-size:1.05rem;font-weight:300;opacity:.78}
.at-cta h2{font-weight:400}
.at-foot-brand h3{font-family:'Outfit',sans-serif;font-weight:800;font-size:1.4rem;letter-spacing:-.01em}
.at-foot-brand h3 b{font-weight:300;color:var(--clay)}
.at-tour-body .meta{color:var(--rust)}

/* INNER PAGE NAV — solid background since no dark hero behind it */
body:not(.home) nav.site-nav{
  background:#E85D1F;
  box-shadow:0 2px 20px rgba(10,24,48,.12);
}

/* INNER PAGE CONTENT */
.page-content{
  max-width:1280px;
  margin:0 auto;
  padding:5rem 4vw 6rem;
  font-family:'Outfit',sans-serif;
  font-size:1.22rem;
  line-height:1.75;
  color:var(--ink);
}
.page-content h1{
  font-family:'Sorts Mill Goudy',serif;
  font-size:clamp(2.6rem,5.4vw,4rem);
  font-weight:400;
  line-height:1.05;
  margin-bottom:1.4rem;
  color:var(--bark);
}
.page-content h1 em{font-style:italic;color:var(--rust)}
.page-content h2{font-family:'Sorts Mill Goudy',serif;font-size:2.1rem;font-weight:400;color:var(--bark);margin:2.6rem 0 1rem;line-height:1.15}
.page-content h3{font-family:'Outfit',sans-serif;font-size:1.5rem;font-weight:700;color:var(--bark);margin:1.8rem 0 .8rem;line-height:1.2}
.page-content p{margin-bottom:1.3rem}
.page-content a{color:var(--rust);border-bottom:1px solid rgba(232,93,31,.4);transition:border-color .25s}
.page-content a:hover{border-bottom-color:var(--rust)}
.page-content ul,.page-content ol{margin:1rem 0 1.5rem 1.5rem}
.page-content li{margin-bottom:.6rem}
.page-content img{border-radius:14px;margin:1.8rem 0}
.page-content blockquote{border-left:3px solid var(--rust);padding:.5rem 0 .5rem 1.4rem;margin:1.8rem 0;font-style:italic;color:var(--sand);font-size:1.18rem}
.page-rule{width:60px;height:1px;background:var(--rust);margin:2rem 0}
.page-meta{font-family:'Kumbh Sans',sans-serif;font-size:.55rem;letter-spacing:.5em;text-transform:uppercase;color:var(--sand);margin-bottom:1.5rem;display:block}
.post-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(10,24,48,.12);font-family:'Kumbh Sans',sans-serif;font-size:.6rem;letter-spacing:.4em;text-transform:uppercase;color:var(--rust)}
.post-nav a:hover{color:var(--bark)}

/* PAGE thumbnail */
.page-thumb{margin:0 0 2rem}
.page-thumb img{border-radius:14px;width:100%;height:auto}

/* SINGLE POST — 2-column layout with right sidebar */
.single-wrap{
  max-width:1280px;
  margin:0 auto;
  padding:5rem 4vw 6rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:3.5rem;
  align-items:start;
}
.single-wrap--full{
  max-width:1280px;
  grid-template-columns:1fr;
}
.single-content{
  font-family:'Outfit',sans-serif;
  font-size:1.22rem;
  line-height:1.75;
  color:var(--ink);
  min-width:0;
}
.single-content h1{
  font-family:'Sorts Mill Goudy',serif;
  font-size:clamp(2.6rem,5.4vw,4rem);
  font-weight:400;
  line-height:1.05;
  margin-bottom:1.4rem;
  color:var(--bark);
}
.single-content h1 em{font-style:italic;color:var(--rust)}
.single-content h2{font-family:'Sorts Mill Goudy',serif;font-size:2.1rem;font-weight:400;color:var(--bark);margin:2.6rem 0 1rem;line-height:1.15}
.single-content h3{font-family:'Outfit',sans-serif;font-size:1.5rem;font-weight:700;color:var(--bark);margin:1.8rem 0 .8rem;line-height:1.2}
.single-content p{margin-bottom:1.3rem}
.single-content a{color:var(--rust);border-bottom:1px solid rgba(232,93,31,.4);transition:border-color .25s}
.single-content a:hover{border-bottom-color:var(--rust)}
.single-content ul,.single-content ol{margin:1rem 0 1.5rem 1.5rem}
.single-content li{margin-bottom:.6rem}
.single-content blockquote{border-left:3px solid var(--rust);padding:.5rem 0 .5rem 1.4rem;margin:1.8rem 0;font-style:italic;color:var(--sand);font-family:'Sorts Mill Goudy',serif;font-size:1.18rem}
.single-content .page-meta{
  font-family:'Kumbh Sans',sans-serif;
  font-size:.62rem;
  letter-spacing:.5em;
  text-transform:uppercase;
  color:var(--rust);
  margin-bottom:1.5rem;
  display:inline-block;
  border-bottom:none;
}
.single-content .page-meta:hover{color:var(--bark)}
.single-thumb{margin:0 0 2rem}
.single-thumb img{border-radius:14px;width:100%;height:auto}

/* In-post CTA (after content, before sidebar nav) */
.post-cta{
  margin:3.5rem 0 2rem;
  padding:2.6rem 2.4rem;
  border-radius:22px;
  background:linear-gradient(135deg,#0A1830 0%,#0F1B30 100%);
  color:var(--paper);
  position:relative;
  overflow:hidden;
}
.post-cta::before{
  content:'';
  position:absolute;
  inset:auto -40px -60px auto;
  width:240px;height:240px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(232,93,31,.32) 0%, transparent 72%);
  pointer-events:none;
}
.post-cta-ek{
  font-family:'Kumbh Sans',sans-serif;
  font-size:.6rem;
  letter-spacing:.5em;
  text-transform:uppercase;
  color:var(--clay);
  font-weight:700;
  display:block;
  margin-bottom:.9rem;
}
.post-cta-h{
  font-family:'Sorts Mill Goudy',serif;
  font-size:clamp(1.8rem,3vw,2.4rem);
  font-weight:400;
  line-height:1.15;
  color:var(--paper);
  margin:0 0 1rem;
}
.post-cta-h em{font-style:italic;color:var(--clay)}
.post-cta-p{
  font-family:'Outfit',sans-serif;
  font-size:1.05rem;
  font-weight:300;
  line-height:1.6;
  color:rgba(244,247,251,.82);
  margin:0 0 1.6rem;
  max-width:560px;
}
.post-cta-pair{
  display:flex;
  gap:1rem;
  flex-wrap:wrap;
  position:relative;
  z-index:1;
}
.post-cta-btn{
  display:inline-block;
  padding:.95rem 1.8rem;
  border-radius:999px;
  font-family:'Kumbh Sans',sans-serif;
  font-size:.66rem;
  letter-spacing:.4em;
  text-transform:uppercase;
  font-weight:600;
  border:1px solid transparent;
  transition:background .35s,border-color .35s,color .35s,transform .35s;
}
.post-cta-btn.p{
  background:var(--rust);
  color:var(--paper);
  border-color:var(--rust);
}
.post-cta-btn.p:hover{background:var(--clay);border-color:var(--clay);color:var(--bark);transform:translateY(-1px)}
.post-cta-btn.s{
  border-color:rgba(244,247,251,.5);
  color:var(--paper);
}
.post-cta-btn.s:hover{background:var(--paper);color:var(--bark);border-color:var(--paper);transform:translateY(-1px)}

/* Sidebar */
.single-sidebar{position:sticky;top:2rem}
.sidebar-card{
  background:#fff;
  border:1px solid rgba(10,24,48,.1);
  border-radius:18px;
  padding:1.8rem 1.6rem;
}
.sidebar-ek{
  font-family:'Kumbh Sans',sans-serif;
  font-size:.55rem;
  letter-spacing:.5em;
  text-transform:uppercase;
  color:var(--rust);
  font-weight:700;
  display:block;
  margin-bottom:.5rem;
}
.sidebar-title{
  font-family:'Sorts Mill Goudy',serif;
  font-size:1.5rem;
  font-weight:400;
  line-height:1.15;
  color:var(--bark);
  margin:0;
}
.sidebar-title a{
  color:inherit;
  border-bottom:none;
  transition:color .25s;
}
.sidebar-title a:hover{color:var(--rust)}
.sidebar-rule{
  width:36px;
  height:1px;
  background:var(--rust);
  margin:1rem 0 1.2rem;
  opacity:.85;
}
.sidebar-list{
  list-style:none;
  margin:0;
  padding:0;
  max-height:560px;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
.sidebar-list::-webkit-scrollbar{width:4px}
.sidebar-list::-webkit-scrollbar-track{background:rgba(10,24,48,.04)}
.sidebar-list::-webkit-scrollbar-thumb{background:rgba(232,93,31,.5);border-radius:2px}
.sidebar-list li{
  border-bottom:1px solid rgba(10,24,48,.08);
  margin:0;
}
.sidebar-list li:last-child{border-bottom:none}
.sidebar-list a{
  display:flex;
  align-items:center;
  gap:.45rem;
  padding:.7rem 0;
  font-family:'Outfit',sans-serif;
  font-size:.92rem;
  font-weight:300;
  line-height:1.35;
  color:var(--bark);
  border-bottom:none;
  transition:color .25s,gap .25s,padding-left .25s;
}
.sidebar-list a::before{
  content:'';
  width:0;
  height:1px;
  background:var(--rust);
  transition:width .25s;
  flex-shrink:0;
}
.sidebar-list a:hover{
  color:var(--rust);
  border-bottom:none;
}
.sidebar-list a:hover::before{width:12px}
.sidebar-all{
  display:inline-block;
  margin-top:1.2rem;
  font-family:'Kumbh Sans',sans-serif;
  font-size:.55rem;
  letter-spacing:.4em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--rust);
  border-bottom:1px solid var(--rust);
  padding-bottom:3px;
  transition:color .25s,border-color .25s;
}
.sidebar-all:hover{color:var(--bark);border-color:var(--bark)}
.sidebar-empty{
  font-family:'Outfit',sans-serif;
  font-size:.9rem;
  color:var(--sand);
  font-style:italic;
}

/* Sidebar CTA card */
.sidebar-cta{
  margin-top:1.5rem;
  padding:1.8rem 1.5rem;
  border-radius:18px;
  background:linear-gradient(135deg,#0A1830 0%,#0F1B30 100%);
  color:var(--paper);
  position:relative;
  overflow:hidden;
}
.sidebar-cta::before{
  content:'';
  position:absolute;
  inset:auto -30px -40px auto;
  width:160px;height:160px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(232,93,31,.32) 0%, transparent 72%);
  pointer-events:none;
}
.sidebar-cta-ek{
  font-family:'Kumbh Sans',sans-serif;
  font-size:.55rem;
  letter-spacing:.5em;
  text-transform:uppercase;
  color:var(--clay);
  font-weight:700;
  display:block;
  margin-bottom:.7rem;
  position:relative;z-index:1;
}
.sidebar-cta-h{
  font-family:'Sorts Mill Goudy',serif;
  font-size:1.55rem;
  font-weight:400;
  line-height:1.15;
  color:var(--paper);
  margin:0 0 .8rem;
  position:relative;z-index:1;
}
.sidebar-cta-h em{font-style:italic;color:var(--clay)}
.sidebar-cta-p{
  font-family:'Outfit',sans-serif;
  font-size:.9rem;
  font-weight:300;
  line-height:1.55;
  color:rgba(244,247,251,.82);
  margin:0 0 1.2rem;
  position:relative;z-index:1;
}
.sidebar-cta-btn{
  display:block;
  text-align:center;
  padding:.85rem 1rem;
  border-radius:999px;
  font-family:'Kumbh Sans',sans-serif;
  font-size:.6rem;
  letter-spacing:.32em;
  text-transform:uppercase;
  font-weight:600;
  border:1px solid transparent;
  transition:background .35s,border-color .35s,color .35s,transform .35s;
  position:relative;z-index:1;
  margin-bottom:.6rem;
}
.sidebar-cta-btn:last-child{margin-bottom:0}
.sidebar-cta-btn.p{
  background:var(--rust);
  color:var(--paper);
  border-color:var(--rust);
}
.sidebar-cta-btn.p:hover{background:var(--clay);border-color:var(--clay);color:var(--bark)}
.sidebar-cta-btn.s{
  border-color:rgba(244,247,251,.5);
  color:var(--paper);
}
.sidebar-cta-btn.s:hover{background:var(--paper);color:var(--bark);border-color:var(--paper)}

@media(max-width:900px){
  .single-wrap{
    grid-template-columns:1fr;
    gap:2.4rem;
    padding:4rem 5vw 5rem;
  }
  .single-sidebar{position:static}
  .sidebar-list{max-height:none}
}

/* ===== FONT ENFORCEMENT — override Elementor / page builder fonts ===== */
body.single-post .single-content,
body.single-post .single-content p,
body.single-post .single-content li,
body.single-post .single-content blockquote,
body.single-post .single-content cite,
body.single-post .single-content figcaption,
body.single-post .single-content span,
body.single-post .single-content div,
body.single-post .single-content em,
body.single-post .single-content strong,
body.single-post .single-content a,
body.page .page-content,
body.page .page-content p,
body.page .page-content li,
body.page .page-content blockquote,
body.page .page-content cite,
body.page .page-content figcaption,
body.page .page-content span,
body.page .page-content div,
body.page .page-content em,
body.page .page-content strong,
body.page .page-content a {
  font-family: 'Outfit', sans-serif !important;
}
body.single-post .single-content h1,
body.single-post .single-content h2,
body.single-post .single-content blockquote,
body.page .page-content h1,
body.page .page-content h2,
body.page .page-content blockquote {
  font-family: 'Sorts Mill Goudy', serif !important;
}
body.single-post .single-content h3,
body.single-post .single-content h4,
body.single-post .single-content h5,
body.single-post .single-content h6,
body.page .page-content h3,
body.page .page-content h4,
body.page .page-content h5,
body.page .page-content h6 {
  font-family: 'Outfit', sans-serif !important;
}
body.single-post .single-content .page-meta,
body.page .page-content .page-meta {
  font-family: 'Kumbh Sans', sans-serif !important;
}
/* Sidebar fonts */
body.single-post .sidebar-ek,
body.single-post .sidebar-all { font-family: 'Kumbh Sans', sans-serif !important; }
body.single-post .sidebar-title,
body.single-post .sidebar-title a { font-family: 'Sorts Mill Goudy', serif !important; }
body.single-post .sidebar-list,
body.single-post .sidebar-list li,
body.single-post .sidebar-list a,
body.single-post .sidebar-empty { font-family: 'Outfit', sans-serif !important; }

/* Featured image inside post content (after first paragraph) */
.single-content .single-thumb,
.entry-content .single-thumb {
  margin: 2rem 0;
  display: block;
}
.single-content .single-thumb img,
.entry-content .single-thumb img {
  border-radius: 14px;
  width: 100%;
  height: auto;
  display: block;
}

/* Strip Elementor's column widget defaults that bleed onto post content */
body.single-post .elementor-widget-text-editor,
body.single-post .elementor-widget-heading,
body.page .elementor-widget-text-editor,
body.page .elementor-widget-heading {
  font-family: inherit !important;
}

/* ===== CONTENT TABLES — applied inside posts and pages ===== */
.entry-content table,
.page-content table,
.single-content table {
  width: 100%;
  margin: 2.4rem 0;
  border-collapse: separate;
  border-spacing: 0;
  font-family: 'Outfit', sans-serif;
  font-size: 1rem;
  line-height: 1.55;
  color: var(--ink);
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 1px 0 rgba(10,24,48,.04), 0 18px 44px -28px rgba(10,24,48,.18);
  border: 1px solid rgba(10,24,48,.08);
  /* allow horizontal scroll on overflow when wrapped */
  display: table;
}

/* Wrap wide tables for mobile scroll without breaking layout */
.entry-content .table-scroll,
.page-content .table-scroll,
.single-content .table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 2.4rem 0;
  border-radius: 16px;
}
.entry-content .table-scroll table,
.page-content .table-scroll table,
.single-content .table-scroll table {
  margin: 0;
}

/* Header */
.entry-content table thead th,
.entry-content table thead td,
.page-content table thead th,
.page-content table thead td,
.single-content table thead th,
.single-content table thead td,
/* Fallback: first row when no thead */
.entry-content table > tbody > tr:first-child > th,
.page-content table > tbody > tr:first-child > th,
.single-content table > tbody > tr:first-child > th {
  background: linear-gradient(135deg, #0A1830 0%, #0F1B30 100%);
  color: var(--paper);
  font-family: 'Kumbh Sans', sans-serif;
  font-size: .68rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  font-weight: 700;
  padding: 1.05rem 1.1rem;
  text-align: left;
  border: none;
  vertical-align: middle;
  position: relative;
}
.entry-content table thead th + th,
.entry-content table thead td + td,
.page-content table thead th + th,
.page-content table thead td + td,
.single-content table thead th + th,
.single-content table thead td + td {
  border-left: 1px solid rgba(232,93,31,.22);
}

/* Body cells */
.entry-content table tbody td,
.entry-content table tbody th,
.page-content table tbody td,
.page-content table tbody th,
.single-content table tbody td,
.single-content table tbody th {
  padding: .95rem 1.1rem;
  border-bottom: 1px solid rgba(10,24,48,.08);
  vertical-align: top;
  text-align: left;
  font-weight: 400;
  color: var(--ink);
}

/* Row striping */
.entry-content table tbody tr:nth-child(even),
.page-content table tbody tr:nth-child(even),
.single-content table tbody tr:nth-child(even) {
  background: var(--paper);
}
.entry-content table tbody tr:hover,
.page-content table tbody tr:hover,
.single-content table tbody tr:hover {
  background: rgba(232,93,31,.06);
}

/* First column emphasis */
.entry-content table tbody tr > td:first-child,
.entry-content table tbody tr > th:first-child,
.page-content table tbody tr > td:first-child,
.page-content table tbody tr > th:first-child,
.single-content table tbody tr > td:first-child,
.single-content table tbody tr > th:first-child {
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  color: var(--bark);
  border-left: 3px solid transparent;
  transition: border-color .25s;
}
.entry-content table tbody tr:hover > td:first-child,
.entry-content table tbody tr:hover > th:first-child,
.page-content table tbody tr:hover > td:first-child,
.page-content table tbody tr:hover > th:first-child,
.single-content table tbody tr:hover > td:first-child,
.single-content table tbody tr:hover > th:first-child {
  border-left-color: var(--rust);
}

/* Last row — drop the divider */
.entry-content table tbody tr:last-child > td,
.entry-content table tbody tr:last-child > th,
.page-content table tbody tr:last-child > td,
.page-content table tbody tr:last-child > th,
.single-content table tbody tr:last-child > td,
.single-content table tbody tr:last-child > th {
  border-bottom: none;
}

/* Links inside tables — match post link style */
.entry-content table a,
.page-content table a,
.single-content table a {
  color: var(--rust);
  border-bottom: 1px solid rgba(232,93,31,.4);
  font-weight: 600;
}
.entry-content table a:hover,
.page-content table a:hover,
.single-content table a:hover { border-bottom-color: var(--rust); }

/* Strong / em inside tables */
.entry-content table strong,
.page-content table strong,
.single-content table strong { color: var(--bark); font-weight: 700; }
.entry-content table em,
.page-content table em,
.single-content table em { color: var(--rust); font-style: italic; }

/* Caption */
.entry-content table caption,
.page-content table caption,
.single-content table caption {
  caption-side: top;
  text-align: left;
  font-family: 'Kumbh Sans', sans-serif;
  font-size: .6rem;
  letter-spacing: .42em;
  text-transform: uppercase;
  color: var(--rust);
  font-weight: 700;
  padding: 0 0 .75rem;
}

/* Scroll-arrow shell around overflowing tables */
.table-shell {
  position: relative;
  margin: 2.4rem 0;
}
.table-shell > table { margin: 0; }

.table-shell a.table-arrow {
  display: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  border: none !important;
  background: var(--rust) !important;
  background-color: var(--rust) !important;
  background-image: none !important;
  color: var(--paper) !important;
  font-family: 'Sorts Mill Goudy', serif !important;
  font-size: 1.6rem !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(10,24,48,.28), 0 0 0 4px #fff !important;
  z-index: 4;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  transition: opacity .25s, transform .25s, background-color .35s;
  -webkit-tap-highlight-color: transparent;
  text-shadow: none !important;
  opacity: 1;
}
.table-shell a.table-arrow span { display: block; transform: translateY(-2px); }
.table-shell a.table-arrow.table-arrow-l { left: -14px; }
.table-shell a.table-arrow.table-arrow-r { right: -14px; }
.table-shell a.table-arrow:hover,
.table-shell a.table-arrow:focus-visible {
  background: var(--bark) !important;
  background-color: var(--bark) !important;
  color: var(--paper) !important;
  outline: none;
}
.table-shell a.table-arrow:active { transform: translateY(-50%) scale(.94); }

.table-shell.has-overflow a.table-arrow { display: flex; }
.table-shell.at-start a.table-arrow.table-arrow-l {
  opacity: 0 !important;
  pointer-events: none;
  transform: translateY(-50%) scale(.85);
}
.table-shell.at-end a.table-arrow.table-arrow-r {
  opacity: 0 !important;
  pointer-events: none;
  transform: translateY(-50%) scale(.85);
}
/* Override the body link color inside .entry-content/.page-content for these */
.table-shell a.table-arrow,
.table-shell a.table-arrow:link,
.table-shell a.table-arrow:visited,
.table-shell a.table-arrow:hover {
  text-decoration: none !important;
  border-bottom: none !important;
}

.table-hint {
  display: none;
  font-family: 'Kumbh Sans', sans-serif;
  font-size: .55rem;
  letter-spacing: .42em;
  text-transform: uppercase;
  color: var(--rust);
  font-weight: 700;
  margin-top: .65rem;
  text-align: right;
}
.table-shell.has-overflow .table-hint { display: block; }
.table-shell.at-end .table-hint { opacity: 0; transition: opacity .35s; }

/* Mobile: shrink padding, let the table scroll horizontally */
@media (max-width: 760px) {
  .entry-content table,
  .page-content table,
  .single-content table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    font-size: .95rem;
    border-radius: 14px;
  }
  .entry-content table thead th,
  .entry-content table thead td,
  .page-content table thead th,
  .page-content table thead td,
  .single-content table thead th,
  .single-content table thead td {
    padding: .8rem .85rem;
    font-size: .58rem;
    letter-spacing: .22em;
    white-space: nowrap;
  }
  .entry-content table tbody td,
  .entry-content table tbody th,
  .page-content table tbody td,
  .page-content table tbody th,
  .single-content table tbody td,
  .single-content table tbody th {
    padding: .75rem .85rem;
  }
}

/* =====================================================================
   PAGE HERO — featured image as background, h1 on top (inner pages)
   ===================================================================== */
.page-hero{
  position:relative;
  min-height:62vh;
  display:flex;
  align-items:flex-end;
  padding:9rem 4vw 4.5rem;
  background-color:var(--ink);
  background-size:cover;
  background-position:center 35%;
  background-repeat:no-repeat;
  color:var(--paper);
  overflow:hidden;
  isolation:isolate;
}
/* Fallback when no featured image */
.page-hero:not(.page-hero--bg){
  background-image:radial-gradient(ellipse at top right, rgba(232,93,31,.28) 0%, transparent 55%),
                   linear-gradient(135deg, var(--bark) 0%, var(--ink) 100%);
}
/* Dark gradient overlay for legibility */
.page-hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(5,13,28,0.20) 0%, rgba(5,13,28,0.55) 45%, rgba(5,13,28,0.85) 100%);
  z-index:1;
  pointer-events:none;
}
.page-hero--bg .page-hero-overlay{
  background:linear-gradient(180deg, rgba(5,13,28,0.30) 0%, rgba(5,13,28,0.60) 50%, rgba(5,13,28,0.88) 100%);
}
.page-hero-inner{
  position:relative;
  z-index:2;
  max-width:1280px;
  width:100%;
  margin:0 auto;
}
.page-hero-eb{
  font-family:'Kumbh Sans',sans-serif;
  font-size:.6rem;
  letter-spacing:.6em;
  text-transform:uppercase;
  color:#FFC791;
  margin-bottom:1.6rem;
  display:inline-block;
}
.page-hero-title{
  font-family:'Sorts Mill Goudy',serif;
  font-size:clamp(2.6rem,6.2vw,5.4rem);
  font-weight:400;
  line-height:1.05;
  color:var(--paper);
  letter-spacing:-.015em;
  margin:0 0 1.6rem;
  max-width:980px;
  text-wrap:balance;
  text-shadow:0 1px 24px rgba(0,0,0,.18);
}
.page-hero-title em{
  font-style:italic;
  color:#FFC791;
}
.page-hero-rule{
  width:84px;
  height:1px;
  background:var(--rust);
  opacity:.95;
}

/* Spacing for content under hero */
.page-content--with-hero{
  padding-top:4rem;
}
/* Hide any in-content h1 just in case a page slips one through (defensive) */
.page-content--with-hero .entry-content h1{
  display:none;
}

/* TABLET */
@media (max-width:1024px){
  .page-hero{
    min-height:54vh;
    padding:7.5rem 5vw 3.5rem;
  }
}

/* MOBILE */
@media (max-width:640px){
  .page-hero{
    min-height:46vh;
    padding:6rem 5vw 2.6rem;
  }
  .page-hero-eb{
    font-size:.55rem;
    letter-spacing:.4em;
    margin-bottom:1.1rem;
  }
  .page-hero-title{
    font-size:clamp(2rem,9vw,2.8rem);
    margin-bottom:1.1rem;
  }
  .page-hero-rule{
    width:60px;
  }
  .page-content--with-hero{
    padding-top:2.6rem;
  }
}

/* =====================================================================
   END PAGE HERO
   ===================================================================== */

/* =====================================================================
   MEGA MENU — 3-column group layout (for Experiences & Holidays)
   ===================================================================== */
.mega-3col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2.2rem}
@media (max-width:1024px){
  .mega-3col{grid-template-columns:1fr;gap:1.5rem}
}

/* ── Homepage operators section cards wrapper ── */
.at-ops-cards{
  max-width:860px;
  margin:0 auto 2rem;
  display:flex;
  flex-direction:column;
  gap:0;
}
.at-ops-cards .ato-operator-card-horizontal{
  margin-bottom:1.2rem;
}

/* =====================================================================
   OPERATOR CARD — redesigned to match homepage card language
   ===================================================================== */

/* ── Card shell — same rounded style as homepage tour cards ── */
.ato-operator-card-horizontal{
  border-radius:12px;
  border:1px solid rgba(90,107,130,.15);
  background:#fff;
  overflow:hidden;
  box-shadow:0 2px 14px rgba(10,24,48,.06);
  transition:transform .45s cubic-bezier(.22,1,.36,1),
             box-shadow .45s cubic-bezier(.22,1,.36,1);
  margin-bottom:1.5rem;
}
.ato-operator-card-horizontal:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 40px rgba(10,24,48,.11);
}
.ato-operator-card-horizontal.ato-card-premium,
.ato-operator-card-horizontal.ato-card-featured{
  border-color:rgba(232,93,31,.28);
}

/* ── Top row ── */
.ato-card-top{
  display:flex;
  gap:0;
  padding:0;
  align-items:stretch;
  min-height:178px;
}

/* ── Photo — flush left, card's border-radius clips the corner ── */
.ato-card-image{
  flex-shrink:0;
  width:230px;
  min-width:230px;
  height:auto;
  min-height:178px;
  border-radius:0;
  background-size:cover;
  background-position:center;
  position:relative;
}
.ato-card-image::after{display:none}

/* ── Verified badge — small pill matching homepage verified badges ── */
.ato-badge-verified-corner{
  position:absolute !important;
  top:10px !important;
  left:10px !important;
  width:auto !important;
  height:auto !important;
  border-radius:50px !important;
  background:var(--rust) !important;
  box-shadow:0 1px 6px rgba(232,93,31,.4) !important;
  padding:3px 8px 3px 5px !important;
  display:flex !important;
  align-items:center !important;
  gap:3px !important;
}
.ato-badge-verified-corner .dashicons{
  font-size:10px !important;
  width:10px !important;
  height:10px !important;
  color:#fff !important;
  line-height:1 !important;
}
.ato-badge-verified-corner::after{
  content:'VERIFIED';
  font-family:'Kumbh Sans',sans-serif;
  font-size:.43rem;
  letter-spacing:.12em;
  font-weight:700;
  color:#fff;
}

/* ── Details — centre column ── */
.ato-card-details{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  padding:1.2rem 1.5rem;
  border-right:1px solid rgba(90,107,130,.12);
}

/* Operator name — Outfit bold, matches tour card title weight ── */
.ato-card-title{margin:0 0 3px}
.ato-card-title a{
  font-family:'Outfit',sans-serif;
  font-size:1.05rem;
  font-weight:700;
  color:var(--bark);
  line-height:1.25;
  text-decoration:none;
  transition:color .2s;
}
.ato-card-title a:hover{color:var(--rust)}
.ato-badge-premium-star{color:var(--rust);font-size:.85rem}

/* Rating row */
.ato-card-meta-row{
  font-family:'Outfit',sans-serif;
  font-size:.83rem;
  color:var(--bark);
  gap:.45rem;
  align-items:baseline;
}
.ato-rating-row{margin-bottom:1px}
.ato-review-text{
  font-family:'Outfit',sans-serif;
  font-size:.78rem;
  color:var(--sand);
}

/* Meta labels — muted, like ETHIOPIA / 4 DAYS on tour cards ── */
.ato-meta-label{
  font-family:'Kumbh Sans',sans-serif;
  font-size:.55rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--sand);
  flex-shrink:0;
}
.ato-meta-value{
  font-family:'Outfit',sans-serif;
  font-size:.83rem;
  font-weight:400;
  color:var(--bark);
}
.ato-destinations-text{
  font-family:'Outfit',sans-serif;
  font-size:.83rem;
  color:var(--bark);
}

/* ── Action panel — same white bg, subtle separator ── */
.ato-card-branding{
  flex-shrink:0;
  width:162px;
  min-width:162px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1rem;
  padding:1.4rem 1.2rem;
  background:#fff;
}

/* Logo */
.ato-operator-logo-wrapper{
  width:66px;
  height:66px;
  border-radius:8px;
  border:1px solid var(--linen);
  padding:4px;
  background:#fff;
  box-shadow:0 1px 6px rgba(10,24,48,.05);
  flex-shrink:0;
}

/* ── VIEW PROFILE — solid rust, matches homepage SEARCH button ── */
.ato-card-branding .ato-button.ato-button-primary{
  width:100% !important;
  font-family:'Kumbh Sans',sans-serif !important;
  font-size:.52rem !important;
  font-weight:700 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  padding:.65rem .5rem !important;
  border-radius:5px !important;
  background:var(--rust) !important;
  color:#fff !important;
  border:none !important;
  text-align:center !important;
  box-shadow:none !important;
  transition:background .22s,transform .3s cubic-bezier(.22,1,.36,1) !important;
}
/* Kill plugin shimmer ::before */
.ato-card-branding .ato-button.ato-button-primary::before{
  display:none !important;
}
.ato-card-branding .ato-button.ato-button-primary:hover{
  background:#c74b15 !important;
  color:#fff !important;
  box-shadow:0 4px 16px rgba(232,93,31,.32) !important;
  transform:translateY(-1px) !important;
}

/* ── Tours preview strip ── */
.ato-card-tours-preview{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  background:var(--paper);
  border-top:1px solid var(--linen);
  padding:.75rem 1.5rem;
}
.ato-preview-tours-list{gap:1rem;flex-wrap:nowrap}
.ato-preview-tours-list li{
  font-family:'Outfit',sans-serif;
  font-size:.8rem;
  padding-left:10px;
  min-width:0;
  overflow:hidden;
}
.ato-preview-tours-list li:nth-child(n+3){display:none}
.ato-preview-tours-list li::before{color:var(--rust)}
.ato-preview-tours-list a{
  color:var(--bark) !important;
  font-weight:500;
  font-family:'Outfit',sans-serif;
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:280px;
}
.ato-preview-tours-list a:hover{color:var(--rust) !important}
.ato-preview-tours-list .tour-meta{
  font-family:'Kumbh Sans',sans-serif;
  font-size:.63rem;
  letter-spacing:.05em;
  color:var(--sand);
  font-weight:500;
}

/* ── VIEW ALL N TOURS — outline pill, matches homepage secondary CTAs ── */
.ato-view-all-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:.3rem !important;
  font-family:'Kumbh Sans',sans-serif !important;
  font-size:.52rem !important;
  font-weight:700 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:var(--rust) !important;
  background:transparent !important;
  border:1.5px solid var(--rust) !important;
  border-radius:50px !important;
  padding:.42rem .9rem !important;
  box-shadow:none !important;
  white-space:nowrap !important;
  transition:background .22s,color .22s !important;
}
.ato-view-all-link:hover{
  background:var(--rust) !important;
  color:#fff !important;
  box-shadow:0 4px 14px rgba(232,93,31,.28) !important;
  transform:none !important;
}
.ato-view-all-link .dashicons{
  color:currentColor !important;
  font-size:13px !important;
  width:13px !important;
  height:13px !important;
  transition:none !important;
}

/* ── Mobile ── */
@media(max-width:768px){
  .ato-card-top{flex-direction:column;min-height:auto}
  .ato-card-image{width:100%;min-height:200px}
  .ato-card-details{border-right:none;border-bottom:1px solid var(--linen);padding:1.1rem 1.2rem}
  .ato-card-branding{width:100%;flex-direction:row;justify-content:space-between;padding:1rem 1.2rem;background:#fff}
  .ato-operator-logo-wrapper{width:52px;height:52px}
  .ato-card-branding .ato-button.ato-button-primary{width:auto !important;padding:.6rem 1.2rem !important}
  .ato-card-tours-preview{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.85rem 1.2rem}
}

/* ═══════════════════════════════════════════════════
   54 AFRICA FAQ CONTENT CARDS
   activity-card · season-card · cost-card
   ═══════════════════════════════════════════════════ */

/* ── Shared card grid wrappers ── */
.activity-cards,
.season-cards,
.cost-cards{
  display:grid;
  gap:1.4rem;
  margin:2rem 0 2.6rem;
}
.activity-cards{ grid-template-columns:repeat(3,1fr) }
.season-cards,
.cost-cards{     grid-template-columns:repeat(2,1fr) }

/* ── Shared card base — normal block flow (no flex/gap) ── */
.activity-card,
.season-card,
.cost-card{
  background:#fff;
  border-radius:18px;
  border:1px solid rgba(10,24,48,.1);
  padding:1.7rem 1.6rem;
  font-family:'Outfit',sans-serif;
  font-size:.96rem;
  font-weight:300;
  line-height:1.72;
  color:rgba(10,24,48,.82);
  transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1),border-color .4s cubic-bezier(.22,1,.36,1);
}
.activity-card:hover,
.season-card:hover,
.cost-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(10,24,48,.06);
  border-color:rgba(232,93,31,.25);
}

/* ── Card title ── */
.activity-card > h3,
.season-card   > h3,
.cost-card     > h3,
.activity-card > strong:first-child,
.season-card   > strong:first-child,
.cost-card     > strong:first-child{
  display:block;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--rust);
  line-height:1.4;
  margin-bottom:.7rem;
}

/* ── Kill any p margins inside cards (beat .page-content p specificity) ── */
.page-content .activity-card p,
.page-content .season-card p,
.page-content .cost-card p{
  margin:0;
  padding:0;
}

/* ── Section image (auto-injected after each card grid) ── */
.at-section-img{
  margin:2.5rem 0 0;
  overflow:hidden;
  border-radius:10px;
  position:relative;
}
.at-section-img a{ display:block; }
.at-section-img img{
  width:100%;
  height:420px;
  object-fit:cover;
  display:block;
  transition:transform .45s ease;
}
.at-section-img:hover img{ transform:scale(1.03); }
.at-section-img figcaption{
  position:absolute;
  bottom:0;left:0;right:0;
  background:linear-gradient(transparent,rgba(0,0,0,.58));
  color:#fff;
  padding:2.5rem 1.4rem .85rem;
  font-size:.82rem;
  font-weight:500;
  letter-spacing:.01em;
  line-height:1.4;
}

/* ── Responsive: tablet ── */
@media(max-width:900px){
  .activity-cards{ grid-template-columns:repeat(2,1fr) }
}

/* ── Responsive: mobile ── */
@media(max-width:600px){
  .activity-cards,
  .season-cards,
  .cost-cards{ grid-template-columns:1fr; gap:1rem }
  .activity-card,
  .season-card,
  .cost-card{ padding:1.3rem 1.2rem }
  .at-section-img img{ height:240px; }
}
