/* ============================================================
   SONNY & TEE — service × city landing pages
   Shared by /rome/manicure, /rome/pedicure, /calhoun/manicure,
   /calhoun/pedicure. Built entirely on the existing design tokens
   (/styles.css) — no new palette, no new type.

   Direction: warm ivory ground, drawn-gold arch geometry, Marcellus
   over Cormorant, prices set as an editorial carte with dot leaders
   rather than a table, and the pedicure ritual as a numbered
   vertical sequence.
   ============================================================ */

:root{
  --ivory:var(--color-ivory); --champagne:var(--color-champagne);
  --limestone:var(--color-limestone); --taupe:var(--color-taupe);
  --charcoal:var(--color-charcoal); --black:var(--color-black);
  --sand:var(--color-calhoun-sand); --cream:var(--color-calhoun-cream);
  --soft-gold:var(--color-calhoun-soft-gold); --gold:var(--color-gold);
  --burnished:var(--color-rome-burnished);
  --ink:#473f35; --ink-soft:#6E655A;   /* AA-safe secondary text on ivory */
  --display:var(--font-display); --serif:var(--font-serif); --sans:var(--font-sans);
  --ease:var(--ease-custom, cubic-bezier(.22,1,.36,1));
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--serif);font-weight:400;background:var(--ivory);color:var(--charcoal);
     line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
em{font-style:italic;color:var(--burnished)}
:focus-visible{outline:2px solid var(--burnished);outline-offset:3px}
.wrap{width:min(1180px,92vw);margin:0 auto}
.narrow{width:min(720px,92vw);margin:0 auto}
.label{font-family:var(--sans);font-weight:300;font-size:.66rem;letter-spacing:.34em;
       text-transform:uppercase;color:var(--ink-soft)}
.skip-link{position:absolute;left:-200vw;top:0;z-index:200;background:var(--charcoal);color:var(--ivory);
           font-family:var(--sans);font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;padding:.8rem 1.4rem}
.skip-link:focus{left:0}

/* reveal — with a no-JS fallback so everything renders scripts-off */
.rv{opacity:0;transform:translateY(2.2rem);filter:blur(6px);
    transition:opacity 1s var(--ease),transform 1s var(--ease),filter 1s var(--ease)}
.rv.in{opacity:1;transform:none;filter:none}
.rv-d1{transition-delay:.12s} .rv-d2{transition-delay:.24s} .rv-d3{transition-delay:.36s}
.no-js .rv{opacity:1;transform:none;filter:none}
@media (prefers-reduced-motion:reduce){
  .rv{transition:none;opacity:1;transform:none;filter:none}
}

/* ---------- nav (matches the studio pages) ---------- */
.site-nav{position:fixed;top:0;left:0;right:0;z-index:90;display:flex;align-items:center;
          justify-content:space-between;gap:1.5rem;padding:1.15rem clamp(1.2rem,4vw,3rem);
          transition:background .6s var(--ease),box-shadow .6s var(--ease)}
.site-nav.scrolled{background:rgba(247,244,239,.9);-webkit-backdrop-filter:blur(16px);
                   backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--champagne)}
.wordmark{font-family:var(--display);font-size:.92rem;letter-spacing:.3em;text-transform:uppercase;
          color:var(--charcoal);white-space:nowrap}
.nav-links{display:flex;align-items:center;gap:clamp(1.1rem,2.6vw,2.2rem)}
.nav-links a{font-family:var(--sans);font-weight:300;font-size:.68rem;letter-spacing:.28em;
             text-transform:uppercase;color:var(--charcoal);padding:.3rem 0;
             border-bottom:1px solid transparent;transition:border-color .6s var(--ease),color .6s var(--ease)}
.nav-links a:hover{border-bottom-color:var(--burnished);color:var(--burnished)}
.nav-reserve{font-family:var(--sans);font-weight:400;font-size:.66rem;letter-spacing:.28em;
             text-transform:uppercase;color:var(--charcoal);border:1px solid var(--charcoal);
             border-radius:999px;padding:.62rem 1.5rem;min-height:44px;display:inline-flex;align-items:center;
             transition:background .6s var(--ease),color .6s var(--ease);white-space:nowrap}
.nav-reserve:hover{background:var(--charcoal);color:var(--ivory)}
@media (max-width:760px){ .nav-links a:nth-child(n+3){display:none} }

/* ---------- hero: the drawn arch ---------- */
.shero{position:relative;min-height:min(88dvh,780px);display:flex;align-items:center;
       padding:9rem 0 4.5rem;background:linear-gradient(180deg,var(--ivory) 0%,var(--cream) 100%);overflow:hidden}
.shero__breath{position:absolute;inset:-20%;pointer-events:none;
  background:radial-gradient(circle at 50% 44%,rgba(214,189,151,.30) 0%,rgba(214,189,151,.10) 36%,rgba(247,244,239,0) 64%);
  animation:sBreathe 15s ease-in-out infinite alternate}
@keyframes sBreathe{from{transform:scale(1)}to{transform:scale(1.06)}}
.shero__in{position:relative;z-index:2;text-align:center;width:min(760px,92vw);margin:0 auto}
.shero__arch{position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);
             width:min(470px,80vw);height:min(560px,68vh);z-index:1;pointer-events:none;overflow:visible}
.shero__arch path{fill:none;stroke:var(--soft-gold);stroke-width:1.2;vector-effect:non-scaling-stroke;
                  stroke-dasharray:1600;stroke-dashoffset:1600;animation:sArch 2.4s var(--ease) .25s forwards}
@keyframes sArch{to{stroke-dashoffset:0}}
.no-js .shero__arch path{stroke-dashoffset:0;animation:none}
.shero__eyebrow{font-family:var(--sans);font-weight:400;font-size:.64rem;letter-spacing:.4em;
                text-transform:uppercase;color:#5f5446;margin-bottom:1.6rem}
.shero h1{font-family:var(--display);font-weight:400;font-size:clamp(2.15rem,5.4vw,4rem);line-height:1.06;
          letter-spacing:.012em;color:var(--charcoal);
          text-shadow:0 2px 22px rgba(250,247,242,.8),0 1px 2px rgba(250,247,242,.7)}
.shero h1 em{font-style:italic;color:var(--burnished)}
.shero__statement{font-family:var(--serif);font-weight:300;font-size:clamp(1.18rem,2.3vw,1.6rem);
                  line-height:1.52;max-width:34ch;margin:1.8rem auto 0;color:var(--ink);
                  text-shadow:0 1px 14px rgba(250,247,242,.6)}
.shero__meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.5rem;margin-top:2.2rem;
             font-family:var(--sans);font-weight:300;font-size:.68rem;letter-spacing:.16em;
             text-transform:uppercase;color:var(--ink-soft)}
.shero__meta b{font-weight:400;color:var(--charcoal)}

/* ---------- prose ---------- */
.sprose{padding:clamp(4rem,8vw,6.5rem) 0}
.sprose--ivory{background:var(--ivory)} .sprose--sand{background:var(--sand)}
.sprose--grad{background:linear-gradient(180deg,var(--ivory),var(--cream))}
.sprose h2{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.16;
           color:var(--charcoal);margin:0}
.sprose h2 em{font-style:italic;color:var(--burnished)}
.sprose p{font-family:var(--serif);font-weight:400;font-size:clamp(1.06rem,1.5vw,1.2rem);line-height:1.72;
          color:var(--ink);margin-top:1.1rem;max-width:68ch}
.sprose p a{border-bottom:1px solid var(--soft-gold);transition:color .5s var(--ease)}
.sprose p a:hover{color:var(--burnished)}
.sprose strong{font-weight:500;color:var(--charcoal)}
.sprose .label{display:block;margin-bottom:.6rem}
.sblock+.sblock{margin-top:clamp(2.4rem,4.5vw,3.4rem)}

/* ---------- the carte: prices with dot leaders ---------- */
.carte{padding:clamp(4rem,8vw,6.5rem) 0;background:var(--ivory)}
.carte__head{text-align:center;margin-bottom:clamp(2.2rem,4.5vw,3.2rem)}
.carte__head h2{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,4vw,2.7rem);
                line-height:1.1;margin:.55rem 0 0;color:var(--charcoal)}
.carte__head h2 em{font-style:italic;color:var(--burnished)}
.carte__note{font-family:var(--serif);font-weight:300;font-style:italic;font-size:1.02rem;
             color:var(--ink-soft);max-width:54ch;margin:1rem auto 0}
.carte__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
             gap:clamp(1.6rem,3.2vw,2.6rem);align-items:start}
.cgroup{background:var(--cream);border:1px solid var(--champagne);border-radius:16px;
        padding:clamp(1.5rem,3vw,2.1rem)}
.cgroup h3{font-family:var(--display);font-weight:400;font-size:.95rem;letter-spacing:.2em;
           text-transform:uppercase;color:var(--charcoal);margin-bottom:1.1rem;
           padding-bottom:.8rem;border-bottom:1px solid var(--soft-gold)}
.cgroup h3 .k{font-family:var(--sans);font-weight:300;font-size:.6rem;letter-spacing:.14em;
              text-transform:none;color:var(--ink-soft);margin-left:.5em}
.crow{display:flex;align-items:baseline;gap:.55rem;padding:.62rem 0}
.crow+.crow{border-top:1px solid rgba(169,155,140,.16)}
.crow__name{font-family:var(--serif);font-weight:400;font-size:1.04rem;color:var(--charcoal);line-height:1.35}
.crow__name .sub{display:block;font-family:var(--sans);font-weight:300;font-size:.66rem;
                 letter-spacing:.02em;color:var(--ink-soft);margin-top:.18rem;line-height:1.45}
.crow__dots{flex:1 1 auto;min-width:1.5rem;border-bottom:1px dotted var(--limestone);
            transform:translateY(-.28em)}
.crow__price{font-family:var(--sans);font-weight:400;font-size:.94rem;color:var(--charcoal);
             white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}
.crow__price i{font-style:normal;color:var(--ink-soft);font-size:.84rem}
.carte__more{text-align:center;margin-top:clamp(2rem,4vw,2.8rem)}
.carte__more a{font-family:var(--sans);font-weight:300;font-size:.7rem;letter-spacing:.3em;
               text-transform:uppercase;color:var(--charcoal);border-bottom:1px solid var(--burnished);
               padding-bottom:.35rem;min-height:44px;display:inline-flex;align-items:center;
               transition:color .5s var(--ease)}
.carte__more a:hover{color:var(--burnished)}

/* ---------- the ritual: numbered vertical sequence ---------- */
.ritual{padding:clamp(4.5rem,9vw,7rem) 0;background:linear-gradient(180deg,var(--cream),var(--sand))}
.ritual__head{text-align:center;margin-bottom:clamp(2.4rem,5vw,3.6rem)}
.ritual__head h2{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,4vw,2.7rem);
                 margin:.55rem 0 0;color:var(--charcoal)}
.ritual__head .price{font-family:var(--serif);font-style:italic;font-size:1.35rem;color:var(--burnished);margin-top:.7rem}
.ritual__seq{list-style:none;width:min(640px,92vw);margin:0 auto;counter-reset:step}
.rstep{position:relative;display:grid;grid-template-columns:auto 1fr;gap:1.3rem;
       padding:1.15rem 0 1.35rem;counter-increment:step}
/* Roman numerals want no tracking — "VIII" with .2em reads as four letters.
   Sized to be legible rather than decorative. */
.rstep::before{content:counter(step,upper-roman);grid-column:1;
  font-family:var(--display);font-weight:400;font-size:.86rem;letter-spacing:.01em;color:var(--burnished);
  width:3rem;text-align:right;padding-top:.3rem;font-variant-numeric:lining-nums}
.rstep::after{content:"";position:absolute;left:3.75rem;top:1.9rem;bottom:-.35rem;width:1px;
              background:linear-gradient(180deg,var(--soft-gold),rgba(214,189,151,.15))}
.rstep:last-child::after{display:none}
.rstep__dot{position:absolute;left:3.45rem;top:1.48rem;width:7px;height:7px;border-radius:50%;
            background:var(--burnished)}
.rstep__b{grid-column:2;padding-left:.9rem}
.rstep h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.08rem,1.7vw,1.24rem);
          color:var(--charcoal);line-height:1.4}
.rstep p{font-family:var(--serif);font-weight:300;font-size:1rem;line-height:1.65;color:var(--ink-soft);margin-top:.3rem}
@media (max-width:560px){
  .rstep{grid-template-columns:auto 1fr;gap:.8rem}
  .rstep::before{width:2.1rem;font-size:.8rem}
  .rstep::after{left:2.55rem} .rstep__dot{left:2.25rem}
  .rstep__b{padding-left:.5rem}
}

/* ---------- picks: which one is for you ---------- */
.picks{padding:clamp(4.5rem,9vw,7rem) 0;background:var(--ivory)}
.picks__head{text-align:center;margin-bottom:clamp(2.2rem,4.5vw,3.2rem)}
.picks__head h2{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,4vw,2.7rem);
                margin:.55rem 0 0;color:var(--charcoal)}
/* Four picks: 4-up on wide, a balanced 2x2 on tablet, stacked on phone.
   Never 3+1 — an orphaned fourth card reads as a mistake. */
.picks__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.2rem,2.4vw,1.8rem)}
@media (max-width:1000px){ .picks__grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:520px){ .picks__grid{grid-template-columns:1fr} }
.pick{position:relative;background:var(--cream);border:1px solid var(--champagne);
      border-radius:190px 190px 16px 16px;padding:3.4rem 1.7rem 2rem;text-align:center;
      box-shadow:0 24px 50px -32px rgba(44,40,37,.2);
      transition:transform .7s var(--ease),box-shadow .7s var(--ease)}
.pick:hover{transform:translateY(-4px);box-shadow:0 34px 62px -32px rgba(44,40,37,.28)}
.pick__g{width:30px;height:30px;margin:0 auto 1.1rem}
.pick__g path,.pick__g circle{fill:none;stroke:var(--burnished);stroke-width:1.1}
.pick h3{font-family:var(--display);font-weight:400;font-size:1rem;letter-spacing:.18em;
         text-transform:uppercase;color:var(--charcoal);margin-bottom:.5rem}
.pick .from{font-family:var(--serif);font-style:italic;font-size:1.08rem;color:var(--burnished);margin-bottom:.8rem}
.pick p{font-family:var(--serif);font-weight:400;font-size:1.02rem;line-height:1.62;color:var(--ink)}
.pick .who{display:block;margin-top:.7rem;font-family:var(--sans);font-weight:300;font-size:.64rem;
           letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}

/* ---------- visit ---------- */
.svisit{padding:clamp(4.5rem,9vw,7rem) 0;background:var(--sand)}
.svisit__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);
              gap:clamp(2.2rem,5vw,4rem);align-items:start}
@media (max-width:820px){ .svisit__grid{grid-template-columns:1fr} }
.svisit__addr{font-family:var(--serif);font-weight:300;font-size:1.4rem;line-height:1.5;margin:.7rem 0 1rem}
.svisit__tel{display:inline-block;font-family:var(--serif);font-weight:300;
             font-size:clamp(1.55rem,3vw,2.05rem);color:var(--charcoal);
             border-bottom:1px solid var(--soft-gold);margin-bottom:1.6rem;
             min-height:44px;transition:color .5s var(--ease)}
.svisit__tel:hover{color:var(--burnished)}
.shours{width:100%;border-collapse:collapse;margin-bottom:1.5rem}
.shours th,.shours td{font-weight:400;text-align:left;padding:.48rem .2rem;border-bottom:1px solid var(--champagne)}
.shours th{font-family:var(--sans);font-weight:300;font-size:.68rem;letter-spacing:.24em;
           text-transform:uppercase;color:var(--charcoal)}
.shours td{font-family:var(--serif);font-size:1.02rem;text-align:right;color:var(--charcoal);
           font-variant-numeric:tabular-nums lining-nums}
.svisit__near{font-family:var(--serif);font-weight:400;font-size:1.04rem;line-height:1.7;color:var(--ink)}
.svisit__acts{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.5rem}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;
     font-family:var(--sans);font-weight:400;font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;
     border-radius:999px;padding:.85rem 1.8rem;text-align:center;
     transition:background .5s var(--ease),color .5s var(--ease),border-color .5s var(--ease)}
.btn-solid{background:var(--charcoal);color:var(--ivory);border:1px solid var(--charcoal)}
.btn-solid:hover{background:var(--black)}
.btn-outline{border:1px solid var(--charcoal);color:var(--charcoal)}
.btn-outline:hover{background:var(--charcoal);color:var(--ivory)}
.btn-burnished{background:var(--burnished);color:var(--ivory);border:1px solid var(--burnished)}
.btn-burnished:hover{background:var(--charcoal);border-color:var(--charcoal)}

/* ---------- FAQ (native details — works without JS) ---------- */
.sfaq{padding:clamp(4.5rem,9vw,7rem) 0;background:linear-gradient(180deg,var(--cream),var(--ivory))}
.sfaq__in{width:min(820px,92vw);margin:0 auto}
.sfaq__head{margin-bottom:clamp(1.5rem,3.5vw,2.2rem)}
.sfaq details{background:var(--cream);border:1px solid var(--champagne);border-radius:12px;
              margin-top:.9rem;overflow:hidden}
.sfaq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
              gap:1rem;padding:1.2rem 1.5rem;min-height:44px;
              font-family:var(--display);font-weight:400;font-size:1.02rem;color:var(--charcoal)}
.sfaq summary::-webkit-details-marker{display:none}
.sfaq .ic{flex:0 0 auto;width:26px;height:26px;border:1px solid var(--soft-gold);border-radius:50%;position:relative}
.sfaq .ic::before,.sfaq .ic::after{content:"";position:absolute;background:var(--burnished);
  top:50%;left:50%;transform:translate(-50%,-50%)}
.sfaq .ic::before{width:11px;height:1px}
.sfaq .ic::after{width:1px;height:11px;transition:transform .4s var(--ease)}
.sfaq details[open] .ic::after{transform:translate(-50%,-50%) scaleY(0)}
.sfaq .a{padding:0 1.5rem 1.4rem;font-family:var(--serif);font-weight:400;font-size:1.06rem;
         line-height:1.7;color:var(--ink);max-width:70ch}
@media (max-width:560px){ .sfaq summary{font-size:.95rem;padding:1.05rem 1.15rem} .sfaq .a{padding:0 1.15rem 1.2rem} }

/* ---------- close + CTA ---------- */
.sclose{padding:clamp(4.5rem,9vw,7rem) 0;background:linear-gradient(180deg,var(--cream),var(--champagne));text-align:center}
.sclose__card{max-width:820px;margin:0 auto;padding:clamp(2.6rem,6vw,4.2rem) clamp(1.4rem,5vw,3.6rem);
              border-radius:24px;background:linear-gradient(160deg,#fff,var(--cream));
              border:1px solid var(--champagne);box-shadow:0 40px 90px -54px rgba(44,40,37,.32)}
.sclose h2{font-family:var(--serif);font-weight:300;font-size:clamp(1.9rem,4.4vw,2.9rem);
           line-height:1.14;color:var(--charcoal)}
.sclose h2 em{font-style:italic;color:var(--gold)}
.sclose p{font-family:var(--serif);font-weight:300;font-size:clamp(1rem,1.9vw,1.14rem);line-height:1.62;
          color:var(--ink-soft);max-width:46ch;margin:1rem auto 0}
.sclose__acts{display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:1.9rem}

/* ---------- breadcrumb ---------- */
.crumb{padding:1.1rem 0 0;font-family:var(--sans);font-weight:300;font-size:.64rem;
       letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}
.crumb a{border-bottom:1px solid transparent;transition:border-color .4s var(--ease)}
.crumb a:hover{border-bottom-color:var(--burnished)}
.crumb span{padding:0 .5em;color:var(--soft-gold)}

/* ---------- sibling link ---------- */
.sibling{padding:clamp(2.6rem,5vw,3.6rem) 0;background:var(--ivory);text-align:center}
.sibling a{font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,2vw,1.3rem);
           color:var(--charcoal);border-bottom:1px solid var(--soft-gold);padding-bottom:.25rem;
           min-height:44px;display:inline-flex;align-items:center;transition:color .5s var(--ease)}
.sibling a:hover{color:var(--burnished)}


/* ---------- shared footer (ported verbatim from the studio pages so the
   service pages carry the identical footer) ---------- */
.sfoot{background:var(--color-black);color:var(--color-ivory);text-align:left;padding:clamp(4.5rem,9vh,7rem) clamp(1.5rem,6vw,5rem) clamp(2.6rem,5vh,3.6rem);font-family:var(--font-sans);}
.sfoot__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1.3fr;gap:clamp(2.4rem,6vw,5rem);align-items:start;}
.sfoot__brand{display:inline-flex;flex-direction:column;gap:.8rem;align-items:flex-start;text-decoration:none;}
.sfoot__logo{height:clamp(52px,7vw,78px);width:auto;max-width:100%;display:block;object-fit:contain;object-position:left center;}
.sfoot__wordmark,.sfoot__sub{display:none;}
.sfoot__brand--nologo .sfoot__logo{display:none;}
.sfoot__brand--nologo .sfoot__wordmark{display:block;font-family:var(--font-display);font-size:clamp(1.2rem,2.4vw,1.6rem);letter-spacing:.34em;text-indent:.34em;color:var(--color-ivory);}
.sfoot__brand--nologo .sfoot__sub{display:block;font-family:var(--font-sans);font-weight:300;font-size:.56rem;letter-spacing:.42em;text-transform:uppercase;color:var(--color-gold);margin-top:.5rem;}
.sfoot__cols{display:grid;grid-template-columns:1fr 1fr auto;gap:clamp(1.6rem,4vw,3rem);}
.sfoot__loc{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start;}
.sfoot__loc-name{font-family:var(--font-display);font-size:1rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-ivory);text-decoration:none;transition:color .6s var(--ease-custom);}
.sfoot__loc-name:hover{color:var(--color-gold);}
.sfoot__loc-addr{font-family:var(--font-sans);font-weight:300;font-size:.72rem;line-height:1.9;letter-spacing:.04em;color:var(--color-taupe);}
.sfoot__loc-tel{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--color-gold);text-decoration:none;transition:color .6s var(--ease-custom);}
.sfoot__loc-tel:hover{color:var(--color-ivory);}
.sfoot__nav{display:flex;flex-direction:column;gap:.7rem;align-items:flex-start;}
.sfoot__nav a{font-family:var(--font-sans);font-weight:300;font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;color:var(--color-taupe);text-decoration:none;transition:color .6s var(--ease-custom);padding:.55rem .15rem;display:inline-flex;align-items:center;min-height:44px;}
@media(max-width:760px){.sfoot__nav a{font-size:.72rem;letter-spacing:.26em;}.sfoot__loc-addr{font-size:.82rem;}}
.sfoot__nav a:hover{color:var(--color-gold);}
.sfoot__fine{max-width:1180px;margin:clamp(2.6rem,5vw,3.6rem) auto 0;padding-top:clamp(1.6rem,3vw,2.2rem);border-top:1px solid rgba(216,195,165,.14);text-align:center;font-family:var(--font-sans);font-weight:300;font-size:.56rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(169,155,140,.5);}
@media(max-width:760px){.sfoot{text-align:center;}.sfoot__inner{grid-template-columns:1fr;gap:2.8rem;justify-items:center;}.sfoot__brand{align-items:center;}.sfoot__cols{width:100%;max-width:520px;grid-template-columns:1fr 1fr;}.sfoot__loc{align-items:center;}.sfoot__nav{align-items:center;}}
@media(max-width:560px){.sfoot__cols{grid-template-columns:1fr;gap:1.8rem;}}
/* ---------- reduced motion ---------- */
