/* ============================================================
   RST CABINETS — Stylesheet
   Palette sampled directly from the logo:
   navy #1B3047 · gold #C4A078 · cream #F5F2ED
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Lora:wght@400;600&display=swap');


:root{
  --navy:#1B3047;
  --navy-dk:#11202F;
  --navy-lt:#2C4763;
  --gold:#C4A078;
  --gold-dk:#9A7442;      /* button gold — passes contrast with white text */
  --gold-pale:#EFE4D6;
  --cream:#F5F2ED;
  --cream-2:#EAE5DC;
  --ink:#16202B;
  --grey:#5A6673;
  --grey-2:#8B95A0;
  --line:#DDDFE3;
  --line-2:#EDEEF1;
  --white:#fff;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --wrap:1200px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--white);
     font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block;height:auto}
a{color:var(--navy)}
h1,h2,h3,h4{margin:0 0 .5em;line-height:1.14;letter-spacing:-.021em;font-weight:750;color:var(--navy)}
h1,h2{font-family:'Lora',Georgia,serif;font-weight:400;letter-spacing:-.01em}
h1{font-size:clamp(2rem,4.3vw,3.2rem)}
h2{font-size:clamp(1.6rem,2.9vw,2.3rem)}
h3{font-size:1.15rem;line-height:1.3}
h4{font-size:1.02rem}
p{margin:0 0 1.05em}
p:last-child{margin-bottom:0}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.sec{padding:clamp(48px,6.5vw,84px) 0}
.sec-sm{padding:clamp(32px,4.2vw,52px) 0}
.bg-cream{background:var(--cream)}
.bg-navy{background:var(--navy);color:#fff}
.bg-navy h1,.bg-navy h2,.bg-navy h3{color:#fff}
.bg-navy p,.bg-navy .lede{color:#CBD5E0}
.kicker{font-size:.73rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-dk);margin:0 0 .7rem}
.bg-navy .kicker{color:var(--gold)}
.lede{font-size:clamp(1.02rem,1.6vw,1.16rem);color:var(--grey)}
.center{text-align:center}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:inherit;
     font-weight:700;font-size:.97rem;padding:.95rem 1.7rem;border-radius:4px;
     border:2px solid transparent;text-decoration:none;cursor:pointer;transition:.16s}
.btn-cta{background:var(--gold-dk);color:#fff;border-color:var(--gold-dk)}
.btn-cta:hover{background:#835F32;border-color:#835F32;color:#fff}
.btn-navy{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-navy:hover{background:var(--navy-dk);border-color:var(--navy-dk);color:#fff}
.btn-out{background:#fff;color:var(--navy);border-color:var(--line)}
.btn-out:hover{border-color:var(--navy)}
.btn-outw{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.btn-outw:hover{background:#fff;color:var(--navy)}
.btns{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}
.center .btns{justify-content:center}

/* ---------- HEADER ---------- */
.util{background:var(--navy);color:#C3CEDB;font-size:.82rem}
.util .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:38px;flex-wrap:wrap}
.util b{color:#fff}.util a{color:#fff;text-decoration:none}
.util a:hover{color:var(--gold)}

header{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;min-height:84px}
.logo{display:block;text-decoration:none}
.logo img{height:56px;width:auto}
nav{display:flex;align-items:center;gap:1.45rem}
nav a{font-size:.93rem;font-weight:600;color:var(--ink);text-decoration:none;padding:.3rem 0;position:relative;white-space:nowrap}
nav a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--gold);transition:width .22s}
nav a:hover::after,nav a.on::after{width:100%}
nav a.pro{color:var(--gold-dk);font-weight:700}
.hdrph{font-size:1.05rem;font-weight:800;color:var(--navy);text-decoration:none;white-space:nowrap}
.hdrph small{display:block;font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--grey-2)}
.navtog{display:none;background:none;border:1px solid var(--line);border-radius:4px;padding:.6rem .7rem;cursor:pointer}
.navtog span{display:block;width:22px;height:2px;background:var(--navy);margin:4px 0;transition:.24s}
.navtog[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.navtog[aria-expanded=true] span:nth-child(2){opacity:0}
.navtog[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:1100px){
  .navtog{display:block}
  nav{position:fixed;inset:84px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;gap:0;
       padding:.5rem clamp(18px,4vw,40px) 1.6rem;border-bottom:1px solid var(--line);
       max-height:calc(100vh - 84px);overflow-y:auto;transform:translateY(-125%);
       transition:transform .3s;box-shadow:0 20px 40px -24px rgba(22,32,43,.5)}
  nav.open{transform:translateY(0)}
  nav a{padding:.95rem 0;border-bottom:1px solid var(--line-2);font-size:1rem}
  nav a::after{display:none}
  .hdrph{display:none}
}

/* ---------- HERO ---------- */
.hero{background:var(--cream);border-bottom:1px solid var(--line);padding:clamp(36px,4.6vw,58px) 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(26px,4vw,54px);align-items:start}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr}}
.hero h1{max-width:15ch}
.hero .lede{max-width:50ch;margin-bottom:1.3rem}
.ticks{list-style:none;padding:0;margin:0 0 1.5rem}
.ticks li{position:relative;padding-left:1.9rem;margin-bottom:.5rem;font-weight:600;font-size:1rem}
.ticks li::before{content:"";position:absolute;left:0;top:.4em;width:1.15rem;height:1.15rem;border-radius:50%;background:var(--navy)}
.ticks li::after{content:"";position:absolute;left:.36rem;top:.66em;width:.42rem;height:.22rem;
                 border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.callbox{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.callbox a{font-size:1.8rem;font-weight:800;letter-spacing:-.02em;color:var(--navy);text-decoration:none}
.callbox span{font-size:.86rem;color:var(--grey)}
.hero-photo{border-radius:6px;overflow:hidden;box-shadow:0 18px 40px -22px rgba(22,32,43,.55)}
.hero-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hero-photo figcaption{font-size:.78rem;color:var(--grey-2);padding:.55rem .1rem 0}

/* page hero */
.phero{background:var(--navy);color:#fff;padding:clamp(46px,6vw,76px) 0;position:relative;overflow:hidden}
.phero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--gold)}
.phero h1{color:#fff;max-width:18ch}
.phero p,.phero .lede{color:#CBD5E0;max-width:62ch}
.phero .kicker{color:var(--gold)}
.crumb{font-size:.84rem;color:#9FB0C2;margin-bottom:.9rem}
.crumb a{color:#CBD5E0;text-decoration:none}
.crumb a:hover{color:#fff}
.badge{display:inline-block;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
       padding:.32rem .65rem;border-radius:3px;background:var(--gold);color:var(--navy-dk);margin-bottom:.9rem}

/* ---------- TRUST BAR ---------- */
.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.trust div{background:#fff;padding:1.35rem .6rem;text-align:center}
.trust b{display:block;font-size:1.45rem;font-weight:800;color:var(--navy);letter-spacing:-.02em}
.trust span{display:block;font-size:.79rem;font-weight:600;color:var(--grey);margin-top:.2rem}
@media(max-width:760px){.trust .wrap{grid-template-columns:repeat(2,1fr)}}

/* ---------- TILES ---------- */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.tiles a{background:#fff;padding:clamp(20px,2.4vw,28px);text-decoration:none;color:var(--ink);display:block;transition:.15s}
.tiles a:hover{background:var(--cream)}
.tiles h3{margin-bottom:.3rem}
.tiles p{font-size:.92rem;color:var(--grey);margin:0}
.tiles .go{display:inline-block;margin-top:.7rem;font-size:.82rem;font-weight:700;color:var(--gold-dk)}
@media(max-width:860px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.tiles{grid-template-columns:1fr}}

/* ---------- COLUMNS / CARDS ---------- */
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.2vw,26px)}
.cols2{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.4vw,28px)}
@media(max-width:900px){.cols3{grid-template-columns:1fr}}
@media(max-width:820px){.cols2{grid-template-columns:1fr}}
.card{border:1px solid var(--line);border-radius:6px;padding:clamp(20px,2.4vw,28px);background:#fff;display:flex;flex-direction:column}
.card.top{border-top:4px solid var(--gold)}
.card h3{margin-bottom:.4rem}
.card p{font-size:.94rem;color:var(--grey)}
.card .styles{margin-top:.9rem;font-size:.88rem;color:var(--navy);font-weight:600}
.card .best{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--line-2);font-size:.88rem;color:var(--grey)}
.card .best b{display:block;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;color:var(--gold-dk);margin-bottom:.2rem}
.card .go{margin-top:1.1rem;font-size:.85rem;font-weight:700;color:var(--gold-dk);text-decoration:none}
.tag{align-self:flex-start;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
     padding:.3rem .6rem;border-radius:3px;background:var(--gold-pale);color:var(--gold-dk);margin-bottom:.8rem}
.perk{padding:clamp(20px,2.4vw,26px);background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:4px}
.perk h4{margin-bottom:.35rem}
.perk p{font-size:.93rem;color:var(--grey);margin:0}

/* ---------- FEATURE ROWS ---------- */
.feat{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4.4vw,60px);align-items:center}
.feat+.feat{margin-top:clamp(40px,5vw,68px)}
.feat img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;box-shadow:0 18px 40px -24px rgba(22,32,43,.5)}
.feat.rev .fm{order:2}
@media(max-width:860px){.feat{grid-template-columns:1fr}.feat.rev .fm{order:0}}

/* ---------- GALLERY ---------- */
.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.8rem}
.filters button{font:inherit;font-size:.88rem;font-weight:600;padding:.6rem 1.1rem;border-radius:30px;
                border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;transition:.15s}
.filters button:hover{border-color:var(--navy)}
.filters button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.6vw,18px)}
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.grid{grid-template-columns:1fr}}
.gitem{margin:0;border-radius:5px;overflow:hidden;position:relative;background:var(--cream-2);border:1px solid var(--line)}
.gitem img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .45s}
.gitem:hover img{transform:scale(1.05)}
.gcap{position:absolute;left:0;right:0;bottom:0;padding:1.5rem .8rem .65rem;
      background:linear-gradient(transparent,rgba(17,32,47,.88));color:#fff;font-size:.85rem;font-weight:600}
.gbrand{display:block;font-size:.63rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--gold);margin-bottom:.1rem}
.ghide{display:none}
.gsection h2{margin-top:0}
.gsection+.gsection{margin-top:clamp(38px,5vw,60px)}

/* ---------- BEFORE / AFTER ---------- */
.bapair{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:var(--navy);padding:5px;border-radius:6px}
.bapair figure{margin:0;position:relative;overflow:hidden;border-radius:3px}
.bapair img{width:100%;aspect-ratio:3/4;object-fit:cover}
.balbl{position:absolute;top:10px;left:10px;font-size:.63rem;font-weight:800;letter-spacing:.11em;
       text-transform:uppercase;padding:.3rem .55rem;border-radius:3px;background:rgba(17,32,47,.85);color:#fff}
.bapair figure:last-child .balbl{left:auto;right:10px;background:var(--gold);color:var(--navy-dk)}
.bacap{margin-top:.75rem;font-size:.87rem;color:var(--grey);text-align:center}
@media(max-width:520px){.bapair{grid-template-columns:1fr}}

/* ---------- STEPS ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2.2vw,26px);counter-reset:s}
@media(max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.steps{grid-template-columns:1fr}}
.step{counter-increment:s;padding-top:1.05rem;border-top:3px solid var(--gold)}
.step::before{content:"Step " counter(s);display:block;font-size:.71rem;font-weight:800;letter-spacing:.11em;
              text-transform:uppercase;color:var(--gold-dk);margin-bottom:.45rem}
.step p{font-size:.93rem;color:var(--grey)}
.bg-navy .step{border-top-color:var(--gold)}
.bg-navy .step::before{color:var(--gold)}

/* ---------- FORM ---------- */
.formcard{background:#fff;border:1px solid var(--line);border-top:5px solid var(--gold);border-radius:6px;
          overflow:hidden;box-shadow:0 16px 38px -20px rgba(22,32,43,.45)}
.formcard .fhd{padding:1.2rem 1.35rem .85rem}
.formcard .fhd h3{margin-bottom:.2rem}
.formcard .fhd p{font-size:.9rem;color:var(--grey);margin:0}
.formcard iframe{width:100%;height:660px;border:0;display:block}
.formcard .fft{padding:.8rem 1.35rem;background:var(--cream);border-top:1px solid var(--line);font-size:.81rem;color:var(--grey)}

.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,3.8vw,52px);align-items:start}
@media(max-width:920px){.split{grid-template-columns:1fr}}

/* ---------- LISTS ---------- */
.facts{list-style:none;padding:0;margin:1.1rem 0 0}
.facts li{display:grid;grid-template-columns:150px 1fr;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line);font-size:.95rem}
.facts li:first-child{border-top:1px solid var(--line)}
.facts b{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dk);padding-top:.22rem}
.bg-navy .facts li{border-color:rgba(255,255,255,.16)}
.bg-navy .facts b{color:var(--gold)}
@media(max-width:520px){.facts li{grid-template-columns:1fr;gap:.15rem}}
.bullets{list-style:none;padding:0;margin:.9rem 0 0}
.bullets li{position:relative;padding-left:1.1rem;font-size:.93rem;color:var(--grey);margin-bottom:.4rem}
.bullets li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;background:var(--gold);border-radius:50%}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem}
.chip{font-size:.8rem;padding:.32rem .7rem;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--ink)}

/* ---------- CITY GRID ---------- */
.cities{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.cities a{background:#fff;padding:.95rem 1.1rem;text-decoration:none;font-size:.92rem;color:var(--ink);
          display:flex;justify-content:space-between;align-items:center;gap:.5rem;transition:.15s}
.cities a::after{content:"\2192";color:var(--gold);opacity:0;transition:.15s}
.cities a:hover{background:var(--navy);color:#fff}
.cities a:hover::after{opacity:1}
.bg-cream .cities a{background:#fff}

.note{font-size:.88rem;color:var(--grey);background:var(--gold-pale);border-left:3px solid var(--gold);
      padding:.85rem 1.1rem;border-radius:0 4px 4px 0;margin-top:1.4rem}
.exbox{border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:6px;
       padding:clamp(20px,2.6vw,30px);background:#fff;box-shadow:0 14px 32px -22px rgba(22,32,43,.45)}
.exbox p{font-size:.94rem;color:var(--grey)}
.ext{font-size:.81rem;color:var(--grey-2);margin-top:.8rem}
.quote{max-width:780px;margin:0 auto;text-align:center}
.quote p{font-size:clamp(1.2rem,2.4vw,1.6rem);line-height:1.45;font-weight:600;color:#fff}
.quote cite{display:block;margin-top:1.2rem;font-style:normal;font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}

/* ---------- FOOTER ---------- */
footer{background:var(--navy);color:#A7B5C4;font-size:.92rem;padding:clamp(42px,5vw,66px) 0 0}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.25fr;gap:clamp(22px,3vw,44px)}
@media(max-width:900px){.fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.fgrid{grid-template-columns:1fr}}
footer h4{color:var(--gold);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:.95rem}
footer a{color:#CBD5E0;text-decoration:none}
footer a:hover{color:#fff}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin-bottom:.45rem}
.flogo{height:64px;width:auto;margin-bottom:.9rem;background:var(--cream);padding:8px 12px;border-radius:4px}
.fph{display:inline-block;color:#fff!important;font-size:1.4rem;font-weight:800;text-decoration:none;margin:.5rem 0 .3rem}
.fbot{margin-top:2.3rem;border-top:1px solid rgba(255,255,255,.15);padding:1.1rem 0 5.2rem;font-size:.79rem;
      display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:#8C9CAD}
@media(min-width:721px){.fbot{padding-bottom:1.1rem}}

/* ---------- MOBILE BAR ---------- */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;grid-template-columns:1fr 1fr;
      box-shadow:0 -2px 12px rgba(0,0,0,.22)}
.mbar a{padding:1rem;text-align:center;font-weight:700;text-decoration:none;font-size:.95rem}
.mbar a:first-child{background:var(--navy);color:#fff}
.mbar a:last-child{background:var(--gold-dk);color:#fff}
@media(max-width:720px){.mbar{display:grid}}

.skip{position:absolute;left:-9999px;top:0;background:var(--gold);color:var(--navy-dk);padding:.8rem 1.2rem;z-index:200;font-weight:700}
.skip:focus{left:0}
:focus-visible{outline:3px solid var(--gold-dk);outline-offset:2px}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ============================================================
   HERO CAROUSEL — photos lead, copy overlays
   ============================================================ */
.chero{position:relative;background:var(--navy-dk);overflow:hidden}
.chero-stage{position:relative;height:min(74vh,660px);min-height:440px}
.chero-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;pointer-events:none}
.chero-slide.on{opacity:1;pointer-events:auto}
.chero-slide img{width:100%;height:100%;object-fit:cover}
.chero-scrim{position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(17,32,47,.90) 0%,rgba(17,32,47,.68) 38%,rgba(17,32,47,.22) 68%,rgba(17,32,47,.04) 100%)}
@media(max-width:820px){.chero-scrim{background:linear-gradient(180deg,rgba(17,32,47,.72) 0%,rgba(17,32,47,.88) 62%)}}
.chero-copy{position:absolute;inset:0;display:flex;align-items:center;z-index:3}
.chero-copy .wrap{width:100%}
.chero-inner{max-width:620px;color:#fff}
.chero-inner .kicker{color:var(--gold)}
.chero-inner h1{color:#fff;margin-bottom:.75rem;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.chero-inner p{color:#E4EAF0;text-shadow:0 1px 10px rgba(0,0,0,.45);font-size:clamp(1.02rem,1.55vw,1.18rem);max-width:52ch}
.chero-inner .btns{margin-top:1.6rem}
.chero-call{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap;margin-top:1.5rem;
  padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.22)}
.chero-call a{font-size:clamp(1.5rem,2.6vw,1.95rem);font-weight:800;color:#fff;text-decoration:none;letter-spacing:-.02em}
.chero-call a:hover{color:var(--gold)}
.chero-call span{font-size:.86rem;color:#B9C6D3;line-height:1.45}

/* slide caption — names the style/finish in the photo */
.chero-tag{position:absolute;right:clamp(16px,3vw,34px);bottom:clamp(52px,7vw,74px);z-index:4;
  background:rgba(17,32,47,.78);border-left:3px solid var(--gold);padding:.55rem .85rem;border-radius:0 4px 4px 0;
  color:#fff;font-size:.82rem;max-width:min(46vw,300px)}
.chero-tag b{display:block;font-size:.63rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--gold)}
@media(max-width:820px){.chero-tag{display:none}}

/* controls */
.chero-dots{position:absolute;left:0;right:0;bottom:clamp(16px,2.4vw,24px);z-index:5;display:flex;justify-content:center;gap:.5rem}
.chero-dots button{width:34px;height:4px;border:0;padding:0;border-radius:2px;background:rgba(255,255,255,.38);cursor:pointer;transition:.2s}
.chero-dots button.on{background:var(--gold);width:52px}
.chero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:46px;height:46px;border-radius:50%;
  border:1px solid rgba(255,255,255,.35);background:rgba(17,32,47,.42);color:#fff;font-size:1.3rem;line-height:1;
  cursor:pointer;display:grid;place-items:center;transition:.18s}
.chero-arrow:hover{background:var(--gold-dk);border-color:var(--gold-dk)}
.chero-prev{left:clamp(10px,1.6vw,18px)}
.chero-next{right:clamp(10px,1.6vw,18px)}
@media(max-width:820px){
  .chero-arrow{display:none}
  /* stage grows with the copy; photos stay absolute so they always fill it */
  .chero-stage{height:auto;min-height:62vh;padding:clamp(44px,11vw,68px) 0 clamp(52px,12vw,72px)}
  .chero-copy{position:relative;inset:auto;align-items:flex-start}
  .chero-inner h1{font-size:clamp(1.85rem,7.4vw,2.5rem)}
  .chero-inner p{font-size:1rem}
  .chero-inner .btns{margin-top:1.3rem}
  .chero-inner .btns .btn{width:100%}
  .chero-call{margin-top:1.3rem;padding-top:1rem}
}

/* scheduling strip under the hero */
.sched{background:var(--gold-pale);border-bottom:1px solid var(--line)}
.sched .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;flex-wrap:wrap;padding-top:1.05rem;padding-bottom:1.05rem}
.sched p{margin:0;font-size:.97rem;color:var(--ink)}
.sched b{color:var(--navy)}
.sched .btns{margin:0}
