@font-face{font-family:'Tinos';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/tinos-regular.woff2) format('woff2')}
@font-face{font-family:'Tinos';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/tinos-italic.woff2) format('woff2')}
@font-face{font-family:'Tinos';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/tinos-bold.woff2) format('woff2')}
:root{
  --green:#0c2e06;--green-d:#081f04;--green-l:#143d0d;
  --gold:#c6a755;--gold-l:#dcc27a;--gold-d:#8a6d26;
  --ivory:#f5f0e4;--paper:#ece4d1;--ink:#1b2417;--muted:#5c5f4c;
  --line:rgba(198,167,85,.28);--line-dark:rgba(27,36,23,.14);
  --serif:'Tinos','Times New Roman',Times,serif;
  --max:1240px;--ease:cubic-bezier(.2,.7,.2,1);
  /* legacy names still used inline */
  --coal:var(--green-d);--coal-2:var(--green);--ember:var(--gold);--ember-2:var(--gold-l);--copper:var(--gold-d);--cream:var(--ivory);--cream-2:var(--paper);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--serif);font-size:19px;line-height:1.75;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video,iframe{max-width:100%;display:block}
a{color:var(--gold-d);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--ink)}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.08;margin:0 0 .55em;letter-spacing:-.012em}
h1{font-size:clamp(2.6rem,6vw,5.4rem)}
h2{font-size:clamp(2rem,3.8vw,3.3rem)}
h3{font-size:1.45rem;line-height:1.25}
h1 em,h2 em{font-style:italic;color:var(--gold)}
.light h2 em,section:not(.dark):not(.darker):not(.cta) h2 em{color:var(--gold-d)}
p{margin:0 0 1.15em}
strong{font-weight:700}
.wrap{max-width:var(--max);margin:0 auto;padding:0 40px}
@media (max-width:640px){.wrap{padding:0 22px}}
.eyebrow{display:inline-flex;align-items:center;gap:16px;font-size:.74rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-d);margin-bottom:1.6rem;line-height:1}
.eyebrow::before{content:"";width:42px;height:1px;background:currentColor;opacity:.8}
.dark .eyebrow,.darker .eyebrow,.hero .eyebrow,.page-hero .eyebrow,.cta .eyebrow,.site-footer .eyebrow{color:var(--gold)}
.lead{font-size:1.3rem;font-style:italic;line-height:1.6}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:.9em;font-family:var(--serif);font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;padding:1.25em 2.1em;border-radius:0;text-decoration:none;transition:background .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease);border:1px solid transparent;cursor:pointer;line-height:1}
.btn::after{content:"\2192";font-size:1.1em;letter-spacing:0;transition:transform .35s var(--ease)}
.btn:hover::after{transform:translateX(4px)}
.btn-ember{background:var(--gold);color:var(--green-d)}
.btn-ember:hover{background:var(--gold-l);color:var(--green-d)}
.btn-ghost{border-color:rgba(245,240,228,.45);color:var(--ivory)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-l)}
.btn-line{border-color:var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:var(--ivory)}
.link-arrow{font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;color:inherit;border-bottom:1px solid currentColor;padding-bottom:.4em;display:inline-block}
.link-arrow::after{content:" \2192"}
/* header */
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .4s var(--ease),border-color .4s,height .4s;border-bottom:1px solid rgba(245,240,228,.14);background:rgba(8,31,4,.75);backdrop-filter:blur(6px)}
.site-header.scrolled{background:rgba(8,31,4,.96);border-bottom-color:var(--line);backdrop-filter:blur(10px)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:104px;max-width:1440px;transition:height .4s var(--ease)}
.site-header.scrolled .wrap{height:80px}
.logo img{height:62px;width:auto;transition:height .4s var(--ease)}
.site-header.scrolled .logo img{height:50px}
.nav{display:flex;align-items:center;gap:4px}
.nav a{color:#efe8d6;text-decoration:none;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;padding:.6em .75em;white-space:nowrap;position:relative}
.nav a:not(.btn)::after{content:"";position:absolute;left:.75em;right:.75em;bottom:.2em;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a:not(.btn):hover::after,.nav a.active::after{transform:scaleX(1)}
.nav a.active{color:var(--gold-l)}
.nav .btn{margin-left:14px;padding:1.05em 1.5em;font-size:.72rem}
.nav .btn::after{display:none}
.menu-toggle{display:none;background:none;border:0;color:var(--ivory);cursor:pointer;padding:8px}
.menu-toggle span{display:block;width:28px;height:1px;background:currentColor;margin:7px 0}
@media (max-width:1320px){.nav a{padding:.6em .5em;letter-spacing:.14em}}
@media (max-width:1200px){
  .menu-toggle{display:block}
  .nav{position:fixed;inset:80px 0 auto 0;flex-direction:column;align-items:stretch;background:var(--green-d);padding:16px 28px 30px;gap:0;transform:translateY(-130%);transition:transform .4s var(--ease);border-bottom:1px solid var(--line);max-height:calc(100vh - 80px);overflow:auto}
  .site-header:not(.scrolled) .nav{inset:104px 0 auto 0}
  .nav.open{transform:none}
  .nav a{padding:1em 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:.82rem}
  .nav a:not(.btn)::after{display:none}
  .nav .btn{margin:22px 0 0;justify-content:center}
}
@media (max-width:640px){.site-header .wrap,.site-header.scrolled .wrap{height:76px}.logo img,.site-header.scrolled .logo img{height:46px}.nav,.site-header:not(.scrolled) .nav{inset:76px 0 auto 0}}
/* home hero */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;color:var(--ivory);background:#000;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:center/cover no-repeat;animation:kenburns 26s ease-in-out infinite alternate;will-change:transform}
@keyframes kenburns{from{transform:scale(1.02)}to{transform:scale(1.14) translate(-1.5%,-1%)}}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.42) 50%,rgba(0,0,0,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.7) 0%,transparent 45%)}
.hero .wrap{position:relative;z-index:2;width:100%;max-width:1440px;padding-top:180px;padding-bottom:110px}
.hero-inner{max-width:820px}
.hero h1{color:#fff;margin-bottom:.45em}
.hero .lead{color:#ece4cc;max-width:600px;margin-bottom:2.4rem}
.hero .actions{display:flex;flex-wrap:wrap;gap:16px}
.hero .note{position:absolute;right:40px;bottom:110px;max-width:290px;font-size:.92rem;line-height:1.6;color:#d8cfb6;border-left:1px solid var(--gold);padding-left:18px;margin:0;z-index:2}
.hero .note a{color:var(--gold-l)}
.scroll-hint{position:absolute;left:50%;bottom:28px;z-index:2;width:1px;height:56px;background:linear-gradient(var(--gold),transparent);animation:hint 2.4s ease-in-out infinite}
@keyframes hint{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media (max-width:1100px){.hero .note{position:static;margin-top:2.6rem;max-width:520px}}
@media (max-width:640px){.hero .wrap{padding-bottom:90px}.scroll-hint{display:none}}
/* key figures */
.figures{background:var(--green-d);color:var(--ivory);padding:0;border-top:1px solid var(--line)}
.figures .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.figure{padding:46px 28px;border-right:1px solid var(--line);text-align:center}
.figure:last-child{border-right:0}
.figure b{display:block;font-weight:400;font-size:clamp(2rem,3.4vw,2.9rem);color:var(--gold);line-height:1;font-style:italic;margin-bottom:.35em}
.figure span{font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:#cfc7ab}
@media (max-width:860px){.figures .wrap{grid-template-columns:1fr 1fr}.figure:nth-child(2){border-right:0}.figure:nth-child(-n+2){border-bottom:1px solid var(--line)}}
/* page hero */
.page-hero{position:relative;color:var(--ivory);background:#000 center/cover no-repeat;min-height:68vh;display:flex;align-items:flex-end;padding:190px 0 90px;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.3)),linear-gradient(0deg,rgba(0,0,0,.55),transparent 55%)}
.page-hero .wrap{position:relative;width:100%;max-width:1440px}
.page-hero h1{color:#fff;max-width:980px;font-size:clamp(2.4rem,5.2vw,4.6rem)}
.page-hero .sub{font-style:italic;font-size:1.3rem;color:#ece4cc;margin:0;max-width:640px}
.crumbs{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:#cfc7ab;margin-bottom:1.6rem}
.crumbs a{color:#cfc7ab;text-decoration:none}.crumbs a:hover{color:var(--gold-l)}
.crumbs span{color:var(--gold);margin:0 .8em}
@media (max-width:640px){.page-hero{min-height:58vh;padding:150px 0 60px}}
/* sections */
section{padding:140px 0}
@media (max-width:860px){section{padding:90px 0}}
.dark{background:var(--green);color:#e4dcc3}
.dark h2,.dark h3,.darker h2,.darker h3{color:#fff}
.darker{background:var(--green-d);color:#e4dcc3}
.dark a:not(.btn),.darker a:not(.btn){color:var(--gold-l)}
.cream2{background:var(--paper)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:center}
.split.rev>:first-child{order:2}
.split img{width:100%}
.framed{position:relative}
.framed::before{content:"";position:absolute;inset:-22px 22px 22px -22px;border:1px solid var(--gold);opacity:.55;z-index:0;pointer-events:none}
.framed img{position:relative;z-index:1}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:56px}.split.rev>:first-child{order:0}.framed::before{inset:-14px 14px 14px -14px}}
.prose{max-width:760px}
.center{text-align:center}
.section-head{max-width:760px;margin:0 auto 76px;text-align:center}
.section-head .eyebrow{justify-content:center}
.section-head .eyebrow::after{content:"";width:42px;height:1px;background:currentColor;opacity:.8}
.section-head p{font-style:italic;font-size:1.2rem;color:var(--muted)}
.dark .section-head p,.darker .section-head p{color:#cfc7ab}
/* editorial intro */
.intro{display:grid;grid-template-columns:5fr 7fr;gap:100px;align-items:start}
.intro h2{position:sticky;top:130px}
.intro .cols2{columns:2 300px;column-gap:56px}
.intro .cols2 p{break-inside:avoid}
.intro .first::first-letter{float:left;font-size:4.6em;line-height:.82;padding:.06em .1em 0 0;color:var(--gold-d)}
@media (max-width:960px){.intro{grid-template-columns:1fr;gap:30px}.intro h2{position:static}}
.duo{position:relative;margin-top:110px;display:grid;grid-template-columns:repeat(12,1fr);align-items:end}
.duo .big{grid-column:1/9;aspect-ratio:4/3;overflow:hidden}
.duo .big img,.duo .small img{width:100%;height:100%;object-fit:cover}
.duo .small{grid-column:8/13;grid-row:1;aspect-ratio:3/4;margin-bottom:-90px;border:12px solid var(--ivory);position:relative;z-index:1}
.duo figcaption{grid-column:1/8;font-style:italic;color:var(--muted);font-size:.98rem;margin-top:18px}
@media (max-width:760px){.duo{display:block}.duo .small{width:62%;margin:-90px 0 0 auto}}
.intro-side h2{position:static}
.duo.duo-compact{margin:36px 0 40px;max-width:380px}
.duo-compact .big{grid-column:1/11}
.duo-compact .small{grid-column:7/13;margin-bottom:-40px;border-width:6px}
@media (max-width:960px){.intro-side{display:contents}.intro .duo-compact{order:2;max-width:560px;margin:20px 0 60px}}
@media (max-width:760px){.duo-compact{display:grid}.duo-compact .small{width:auto;margin:0 0 -60px}}
/* benefits */
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:0 64px}
.benefit{padding:38px 0 30px;border-top:1px solid var(--line)}
.benefit .num{display:block;font-size:.78rem;letter-spacing:.3em;color:var(--gold);margin-bottom:1.4em}
.benefit h3{margin-bottom:.6em;font-size:1.55rem}
.benefit p{color:#cfc7ab;margin:0;font-size:1.02rem}
section:not(.dark):not(.darker) .benefit{border-color:var(--line-dark)}
section:not(.dark):not(.darker) .benefit .num{color:var(--gold-d)}
section:not(.dark):not(.darker) .benefit p{color:var(--muted)}
@media (max-width:960px){.benefits{grid-template-columns:1fr 1fr;gap:0 40px}}
@media (max-width:620px){.benefits{grid-template-columns:1fr}}
.checks{list-style:none;padding:0;margin:0 0 1.6em;display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
.checks li{padding:.9em 0 .9em 30px;position:relative;border-top:1px solid var(--line)}
.checks li::before{content:"";position:absolute;left:0;top:1.55em;width:12px;height:1px;background:var(--gold)}
@media (max-width:620px){.checks{grid-template-columns:1fr}}
.media-wide{margin-top:90px}
/* quote band */
.band{position:relative;min-height:78vh;display:flex;align-items:center;background:#000 center/cover no-repeat fixed;color:#fff;text-align:center}
.band::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.5)}
.band .wrap{position:relative;max-width:980px}
.band blockquote{margin:0;font-size:clamp(1.8rem,3.6vw,3rem);line-height:1.25;font-style:italic}
.band cite{display:block;margin-top:1.6em;font-style:normal;font-size:.74rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
@media (max-width:1024px){.band{background-attachment:scroll;min-height:60vh}}
/* steps */
.steps-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s;border-top:1px solid var(--line-dark)}
.steps-row .st{padding:44px 32px 10px 0;position:relative}
.steps-row .st::before{counter-increment:s;content:counter(s,decimal-leading-zero);display:block;font-size:3.4rem;font-style:italic;color:var(--gold-d);line-height:1;margin-bottom:.5em}
.steps-row .st::after{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--gold-d)}
.steps-row h3{margin-bottom:.4em}
.steps-row p{color:var(--muted);font-size:1rem;margin:0}
@media (max-width:900px){.steps-row{grid-template-columns:1fr 1fr;gap:0 30px}}
@media (max-width:560px){.steps-row{grid-template-columns:1fr}}
.steps{display:grid;gap:0;counter-reset:s}
.step{display:grid;grid-template-columns:140px 1fr 420px;gap:56px;align-items:center;padding:64px 0;border-top:1px solid var(--line-dark)}
.step:last-child{border-bottom:1px solid var(--line-dark)}
.step .num{font-size:5.6rem;line-height:.9;color:var(--gold-d);font-style:italic}
.step img{width:100%;aspect-ratio:4/3;object-fit:cover}
.step h2{font-size:clamp(1.8rem,3vw,2.6rem)}
@media (max-width:900px){.step{grid-template-columns:1fr;gap:18px;padding:48px 0}.step .num{font-size:3.6rem}}
/* options (bestaand / nieuw) */
.options{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.option .ph{aspect-ratio:4/3;overflow:hidden;margin-bottom:34px}
.option .ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.option:hover .ph img{transform:scale(1.04)}
.option:nth-child(2){margin-top:120px}
@media (max-width:860px){.options{grid-template-columns:1fr}.option:nth-child(2){margin-top:0}}
/* tiles */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.tile{position:relative;display:block;text-decoration:none;color:#fff}
.tile .ph{display:block;aspect-ratio:3/4;overflow:hidden;background:#000;position:relative}
.tile img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),opacity .6s;opacity:.92}
.tile .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 50%)}
.tile .t{display:block;padding:22px 0 0;font-size:1.3rem;line-height:1.3;color:#fff}
.tile small{display:block;font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.tile .t::after{content:"\2192";display:inline-block;margin-left:.5em;color:var(--gold);transition:transform .35s var(--ease)}
.tile:hover img{transform:scale(1.06);opacity:1}
.tile:hover .t::after{transform:translateX(5px)}
.tile:hover{color:#fff}
@media (max-width:980px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.tiles{grid-template-columns:1fr}.tile .ph{aspect-ratio:16/11}}
/* gallery */
.gallery{columns:3 280px;column-gap:20px}
.gallery a{display:block;margin-bottom:20px;break-inside:avoid;overflow:hidden;cursor:zoom-in;position:relative}
.gallery img{width:100%;transition:transform 1s var(--ease)}
.gallery a:hover img{transform:scale(1.04)}
.gallery.wide{columns:3 300px}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);display:none;align-items:center;justify-content:center;z-index:100;padding:30px 80px;touch-action:pan-y}
.lightbox.open{display:flex}
.lightbox img{max-height:86vh;max-width:100%;box-shadow:0 30px 80px rgba(0,0,0,.6);user-select:none}
.lightbox button{position:absolute;background:none;border:0;color:#fff;cursor:pointer;font-family:var(--serif);line-height:1;opacity:.85;transition:opacity .2s,color .2s}
.lightbox button:hover{opacity:1;color:var(--gold-l)}
.lightbox .lb-close{top:14px;right:22px;font-size:2.6rem}
.lightbox .lb-prev,.lightbox .lb-next{top:50%;transform:translateY(-50%);font-size:3.4rem;padding:20px 14px}
.lightbox .lb-prev{left:10px}.lightbox .lb-next{right:10px}
.lightbox .lb-count{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#ece4cc;letter-spacing:.2em;font-size:.8rem}
@media (max-width:640px){.lightbox{padding:20px 8px 60px}.lightbox .lb-prev,.lightbox .lb-next{top:auto;bottom:4px;transform:none;font-size:2.6rem}.lightbox .lb-count{bottom:24px}}
/* video */
.video{position:relative;overflow:hidden;background:#000}
.video video{width:100%;height:auto}
.video.embed{aspect-ratio:16/9}
.video.embed iframe{width:100%;height:100%;border:0}
/* tips */
.tiplist{display:grid;gap:0;counter-reset:t}
.tip{padding:34px 0 22px 72px;border-top:1px solid var(--line-dark);position:relative}
.tip::before{counter-increment:t;content:counter(t,decimal-leading-zero);position:absolute;left:0;top:34px;font-size:2rem;font-style:italic;color:var(--gold-d);line-height:1}
.tip h2{font-size:1.6rem}
.subnav{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:2.6em;padding-top:2em;border-top:1px solid var(--line-dark)}
.subnav a{font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.subnav a:hover,.subnav a.on{color:var(--gold-d)}
.subnav a::after{content:" \2192";color:var(--gold-d)}
/* CTA */
.cta{position:relative;background:#000 center/cover no-repeat;color:#fff;text-align:center;padding:170px 0;overflow:hidden}
.cta::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.55)}
.cta .wrap{position:relative;max-width:900px}
.cta .eyebrow{justify-content:center}
.cta h2{color:#fff;font-size:clamp(2.2rem,4.6vw,4rem)}
.cta p{color:#ece4cc;font-style:italic;font-size:1.25rem;max-width:640px;margin:0 auto 2.6rem}
.cta .actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
/* booking */
.booking-grid{display:grid;grid-template-columns:1fr 500px;gap:80px;align-items:start}
.booking-frame{background:#fff;padding:12px;border-top:2px solid var(--gold);position:sticky;top:110px}
.booking-frame iframe{width:100%;height:760px;border:0}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:40px}
.info-card{padding:30px 0;border-top:1px solid var(--line-dark)}
.info-card h3{font-size:.76rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-d);margin-bottom:1em}
.info-card p:last-child{margin:0}
.map{border:0;width:100%;height:300px;filter:grayscale(.6) sepia(.15)}
@media (max-width:1040px){.booking-grid{grid-template-columns:1fr}.booking-frame{position:static}.booking-frame iframe{height:820px}}
@media (max-width:620px){.info-grid{grid-template-columns:1fr}}
/* hours */
.hours{width:100%;border-collapse:collapse;font-size:.98rem}
.hours td{padding:.32em 0;border-bottom:1px solid rgba(255,255,255,.08)}
.hours td:last-child{text-align:right;color:#d8cfb6}
.hours tr.closed td:last-child{color:#8e8f78}
.info-card .hours td{border-color:var(--line-dark)}
.info-card .hours td:last-child{color:var(--muted)}
/* footer */
.site-footer{background:var(--green-d);color:#c7bfa3;font-size:.98rem}
.foot-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:110px 0 70px;border-bottom:1px solid var(--line)}
.foot-top h2{color:#fff;margin:0;max-width:640px;font-size:clamp(2rem,4vw,3.4rem)}
.site-footer .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:64px;padding:70px 0}
.site-footer h4{color:var(--gold);font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;margin-bottom:1.4em}
.site-footer a{color:#efe8d6;text-decoration:none}
.site-footer a:hover{color:var(--gold-l)}
.site-footer .logo img{height:84px;margin-bottom:24px}
.site-footer .bottom{padding:26px 0 34px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 28px;font-size:.84rem;color:#8e8f78}
.site-footer .bottom a{color:#b0ab92}
.site-footer .bottom .left{display:flex;gap:28px;flex-wrap:wrap}
@media (max-width:860px){.foot-top{flex-direction:column;align-items:flex-start;padding:80px 0 50px}.site-footer .cols{grid-template-columns:1fr;gap:44px}}
.mobile-cta{display:none}
@media (max-width:640px){
  body{font-size:18px}
  .mobile-cta{display:flex;justify-content:center;position:fixed;left:14px;right:14px;bottom:14px;z-index:40}
  .site-footer{padding-bottom:84px}
}
.reveal{opacity:0;transform:translateY(30px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}.hero-bg,.scroll-hint{animation:none}}
