/* =========================================================
   Sorprendo · Studio Creativo — impostazione "scroll studio"
   ========================================================= */
:root{
  --blue:#1438d1;
  --coral:#ff5b49;
  --lime:#c5f23b;
  --ivory:#f2eee7;
  --ink:#11110f;

  --bg:var(--ivory);
  --fg:var(--ink);
  --muted:color-mix(in srgb, var(--ink) 58%, var(--ivory));
  --hair:color-mix(in srgb, var(--ink) 14%, var(--ivory));
  --card:color-mix(in srgb, var(--ivory) 86%, #fff);

  --pad:clamp(18px,4vw,64px);
  --maxw:1680px;
  --radius:22px;
  --ease:cubic-bezier(.22,1,.36,1);
}
html[data-theme="dark"]{
  --bg:#0b0b0a;
  --fg:var(--ivory);
  --muted:color-mix(in srgb, var(--ivory) 62%, #0b0b0a);
  --hair:color-mix(in srgb, var(--ivory) 18%, #0b0b0a);
  --card:#141413;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--fg);
  font-family:"DM Sans",system-ui,sans-serif;font-weight:400;
  font-size:clamp(15px,1.05vw,17px);line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
  transition:background .5s var(--ease),color .5s var(--ease);
}
body.is-loading{overflow:hidden}
body.no-scroll{overflow:hidden}
img{display:block;max-width:100%;height:auto}
button{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}

/* ---------- tipografia ---------- */
.display{
  font-size:clamp(34px,5.6vw,96px);line-height:.98;letter-spacing:-.035em;
  font-weight:500;margin:0;text-wrap:balance;
}
.label{
  margin:0 0 18px;font-size:clamp(10px,.72vw,12px);letter-spacing:.2em;
  text-transform:uppercase;color:var(--muted);font-weight:500;
}
.lead{font-size:clamp(18px,1.6vw,26px);line-height:1.4;letter-spacing:-.015em;margin:0}

/* ---------- loader ---------- */
.loader{
  position:fixed;inset:0;z-index:120;background:var(--ink);color:var(--ivory);
  display:grid;place-content:center;justify-items:center;gap:6px;
}
.loader-mark{width:78px;color:var(--lime)}
.loader-mark svg{width:100%;height:auto}
.loader-word{font-family:"Archivo Black",sans-serif;font-size:clamp(26px,3.4vw,44px);margin:18px 0 0;letter-spacing:-.01em}
.loader-sub{margin:2px 0 0;font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--lime)}
.loader-count{
  position:absolute;left:var(--pad);bottom:calc(var(--pad) - 18px);
  font-size:clamp(56px,10vw,130px);line-height:1;letter-spacing:-.05em;color:color-mix(in srgb,var(--ivory) 80%,transparent);
}
.loader-bar{position:absolute;left:var(--pad);right:var(--pad);bottom:var(--pad);height:1px;background:rgba(242,238,231,.22)}
.loader-bar i{display:block;height:100%;width:0;background:var(--lime)}

/* ---------- chrome (header fisso) ---------- */
.chrome{
  position:fixed;inset:var(--pad) var(--pad) auto;z-index:80;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  pointer-events:none;
}
.chrome > *{pointer-events:auto}
.chrome-logo{display:flex;align-items:center;gap:11px}
.chrome-logo svg{width:34px;height:auto;flex:none}
.chrome-word{display:flex;flex-direction:column;line-height:1}
.chrome-word b{font-family:"Archivo Black",sans-serif;font-size:19px;letter-spacing:-.01em}
.chrome-word small{font-size:8.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.chrome-actions{display:flex;align-items:center;gap:8px}

.pill{
  display:inline-flex;align-items:center;gap:9px;border:0;cursor:pointer;
  padding:13px 20px;border-radius:999px;background:color-mix(in srgb,var(--fg) 8%,transparent);
  font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;
  backdrop-filter:blur(10px);transition:background .35s var(--ease),color .35s var(--ease),transform .35s var(--ease);
}
.pill:hover{transform:translateY(-2px)}
.pill .dot{width:5px;height:5px;border-radius:50%;background:currentColor;display:inline-block}
.pill-icon{padding:12px}
.pill-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.pill-dark{background:var(--ink);color:var(--ivory)}
.pill-dark .dot{background:var(--lime)}
.pill-light{background:var(--ivory);color:var(--ink)}
.pill-lime{background:var(--lime);color:var(--ink)}
.pill-menu .dot + .dot{margin-left:-5px}

/* header sopra le sezioni scure */
body.chrome-light .chrome{color:var(--ivory)}
body.chrome-light .chrome-word small{color:rgba(242,238,231,.62)}
body.chrome-light .pill{background:rgba(242,238,231,.16);color:var(--ivory)}
body.chrome-light .pill-dark{background:var(--ivory);color:var(--ink)}
body.chrome-light .pill-dark .dot{background:var(--coral)}

/* ---------- overlay menu ---------- */
.overlay{
  position:fixed;inset:0;z-index:90;background:var(--ink);color:var(--ivory);
  display:flex;flex-direction:column;justify-content:center;padding:var(--pad);
  clip-path:inset(0 0 100% 0);
}
.overlay[hidden]{display:none}
.overlay-close{position:absolute;top:var(--pad);right:var(--pad);background:rgba(242,238,231,.12);color:var(--ivory)}
.overlay nav{display:flex;flex-direction:column;gap:clamp(2px,.6vw,8px)}
.overlay nav a{
  font-size:clamp(34px,7vw,92px);line-height:1.02;letter-spacing:-.04em;font-weight:500;
  position:relative;overflow:hidden;display:block;height:1.02em;
}
.overlay nav a span{display:block;transition:transform .5s var(--ease)}
.overlay nav a span:last-child{color:var(--lime)}
.overlay nav a:hover span{transform:translateY(-100%)}
.overlay-foot{margin:clamp(28px,5vw,60px) 0 0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:rgba(242,238,231,.55)}

/* ---------- riga con i "+" ---------- */
.rule-plus{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  border-top:1px solid var(--hair);margin-top:clamp(28px,4vw,56px);padding-top:14px;
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
}
.rule-plus .plus{position:relative;width:11px;height:11px;flex:none}
.rule-plus .plus::before,.rule-plus .plus::after{
  content:"";position:absolute;background:var(--muted);
}
.rule-plus .plus::before{left:0;right:0;top:5px;height:1px}
.rule-plus .plus::after{top:0;bottom:0;left:5px;width:1px}
.rule-plus em{font-style:normal}

/* ---------- HERO ---------- */
.hero{height:340vh;position:relative}
.hero-sticky{
  position:sticky;top:0;height:100vh;display:flex;flex-direction:column;
  padding:calc(var(--pad) + 62px) var(--pad) var(--pad);gap:clamp(12px,1.6vw,26px);
}
.hero-head{display:flex;flex-direction:column;gap:10px;max-width:1100px;margin-left:auto;text-align:left}
.hero-kicker{margin:0;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.hero-title{
  margin:0;font-size:clamp(28px,4.4vw,74px);line-height:1;letter-spacing:-.04em;font-weight:500;
}
.hero-title .w{display:inline-block;overflow:hidden}
.hero-stage{
  position:relative;flex:1;min-height:0;border-radius:var(--radius);overflow:hidden;
  box-shadow:inset 0 0 0 1px rgba(242,238,231,.08);
  background:radial-gradient(120% 120% at 30% 20%, #1a1a18 0%, #0a0a09 70%);
}
.hero-stage canvas{width:100%;height:100%;display:block}
.hero-stage-note{
  position:absolute;left:18px;bottom:14px;margin:0;color:rgba(242,238,231,.6);
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
}
.hero-rule{margin-top:0;border-top:0;padding-top:0}
.hero-rule em{color:var(--fg)}

/* ---------- band marquee ---------- */
.band{
  border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);
  overflow:hidden;padding:16px 0;background:var(--bg);
}
.band-track{display:flex;gap:0;width:max-content;will-change:transform}
.band-track span{
  display:inline-flex;align-items:center;gap:26px;padding-right:26px;white-space:nowrap;
  font-size:clamp(22px,3.4vw,56px);letter-spacing:-.03em;font-weight:500;text-transform:none;
}
.band-track i{color:var(--coral);font-style:normal}

/* ---------- capitoli ---------- */
.chapter{padding:clamp(72px,10vw,170px) var(--pad);max-width:var(--maxw);margin:0 auto}
.chapter-top{max-width:1200px}
.chapter-note{margin:clamp(20px,2.4vw,34px) 0 0;max-width:62ch;font-size:clamp(16px,1.15vw,19px);color:var(--muted)}
.chapter-foot{margin:clamp(28px,4vw,56px) 0 0;font-size:15px;color:var(--muted);display:flex;flex-wrap:wrap;gap:12px;align-items:center}

.display .w{display:inline-block}
.sweep .w{opacity:.18}
.accent{color:var(--coral)}

.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,90px);margin-top:clamp(40px,6vw,86px)}
.steps{list-style:none;margin:0;padding:0;display:grid}
.steps li{padding:26px 0;border-bottom:1px solid var(--hair)}
.steps li:first-child{border-top:1px solid var(--hair)}
.steps .num{font-size:11px;letter-spacing:.2em;color:var(--coral)}
.steps b{display:block;font-size:clamp(20px,1.8vw,30px);letter-spacing:-.02em;font-weight:500;margin:8px 0 8px}
.steps p{margin:0;color:var(--muted);max-width:56ch}

/* ---------- griglia pacchetti ---------- */
.grid-work{
  list-style:none;margin:clamp(44px,6vw,90px) 0 0;padding:0;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4vw,72px) clamp(24px,3vw,56px);
}
.work-wide{grid-column:1 / -1}
.work-panel{
  position:relative;border-radius:var(--radius);aspect-ratio:16/10;overflow:hidden;
  display:grid;place-items:center;margin-bottom:22px;
}
.work-wide .work-panel{aspect-ratio:21/7}
.work-panel .work-num{
  position:absolute;top:16px;left:18px;font-size:12px;letter-spacing:.2em;opacity:.7;
}
.work-panel .scene{width:100%;height:100%;display:block}

.p-ivory{background:#e7e1d6;color:var(--ink)}
.p-blue{background:var(--blue);color:var(--ivory)}
.p-lime{background:var(--lime);color:var(--ink)}
.p-coral{background:var(--coral);color:var(--ivory)}
.p-ink{background:#17171a;color:var(--lime)}
.work-tags{
  margin:0 0 10px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
}
.work-tags i{color:var(--coral);font-style:normal;margin:0 4px}
.work h3{margin:0;font-size:clamp(26px,3.2vw,54px);line-height:1;letter-spacing:-.035em;font-weight:500}
.work-for{margin:12px 0 0;font-size:15px;color:var(--coral)}
.work-text{margin:10px 0 18px;color:var(--muted);max-width:56ch}
.link-cta{
  background:none;border:0;padding:0;cursor:pointer;font-size:13px;letter-spacing:.06em;
  border-bottom:1px solid var(--hair);padding-bottom:3px;transition:border-color .3s var(--ease)
}
.link-cta:hover{border-color:var(--coral);color:var(--coral)}

/* ---------- feature dark ---------- */
.feature{
  background:var(--blue);color:var(--ivory);padding:clamp(72px,10vw,160px) var(--pad);
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(34px,6vw,96px);align-items:start;
}
.feature .label{color:rgba(242,238,231,.65)}
.feature .accent{color:var(--lime)}
.feature > .feature-copy > p{max-width:62ch;color:rgba(242,238,231,.82);font-size:clamp(16px,1.2vw,20px)}
.ladder{list-style:none;margin:clamp(26px,3vw,44px) 0;padding:0;display:grid}
.ladder li{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:18px 0;align-items:baseline;border-bottom:1px solid rgba(242,238,231,.22)}
.ladder li:first-child{border-top:1px solid rgba(242,238,231,.22)}
.ladder li b{font-size:12px;letter-spacing:.18em;color:var(--lime);font-weight:500}
.ladder li span{font-size:clamp(16px,1.2vw,20px)}
.story .ladder li{grid-template-columns:1fr;gap:6px;border-bottom-color:var(--hair)}
.story .ladder li:first-child{border-top-color:var(--hair)}
.story .ladder li b{font-size:clamp(18px,1.5vw,24px);letter-spacing:-.01em;color:var(--fg)}
.story .ladder li span{color:var(--muted);font-size:16px}

.cycler{position:sticky;top:34vh}
.cycler-label{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:rgba(242,238,231,.6)}
.cycler-stack{position:relative;height:4.4em;margin-top:14px}
.cycler-stack b{
  position:absolute;inset:0;font-size:clamp(28px,3.6vw,60px);line-height:1.1;letter-spacing:-.03em;
  font-weight:500;color:var(--lime);opacity:0;transform:translateY(24px);
}
.cycler-stack b.on{opacity:1;transform:none}

/* ---------- story ---------- */
.story{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);
  align-items:center;padding:clamp(72px,10vw,170px) var(--pad);max-width:var(--maxw);margin:0 auto;
}
.story-media{border-radius:var(--radius);overflow:hidden}
.story-media img{width:100%;height:auto}
.story blockquote{
  margin:clamp(22px,3vw,38px) 0;padding-left:20px;border-left:2px solid var(--coral);
  font-size:clamp(18px,1.5vw,24px);letter-spacing:-.015em;
}
.story-copy > p{color:var(--muted);max-width:56ch}

/* ---------- wide ---------- */
.wide{position:relative;min-height:92vh;display:grid;align-items:end;color:var(--ivory);overflow:hidden}
.wide-media{position:absolute;inset:0}
.wide-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.1)}
.wide::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,7,.86) 0%,rgba(8,8,7,.25) 60%,rgba(8,8,7,.5) 100%)}
.wide-copy{position:relative;z-index:2;padding:clamp(56px,8vw,120px) var(--pad);max-width:1180px}
.wide-copy .label{color:var(--lime)}
.wide-copy p{max-width:58ch;color:rgba(242,238,231,.85);font-size:clamp(16px,1.2vw,20px)}
.wide-copy .pill{margin-top:20px}

/* ---------- cards custodia ---------- */
.cards{list-style:none;margin:clamp(40px,5vw,80px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.cards li{background:var(--card);border-radius:var(--radius);padding:clamp(24px,2.6vw,40px);display:grid;gap:10px;align-content:start}
.cards li b{font-size:clamp(18px,1.6vw,26px);letter-spacing:-.02em;font-weight:500}
.cards li span{color:var(--muted)}

/* ---------- closing ---------- */
.closing{padding:clamp(80px,11vw,180px) var(--pad) clamp(50px,6vw,90px);max-width:var(--maxw);margin:0 auto;text-align:center}
.closing-kicker{margin:0 0 18px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.closing-title{
  margin:0;font-size:clamp(34px,7.6vw,132px);line-height:.95;letter-spacing:-.045em;font-weight:500;text-transform:uppercase;
}
.closing-title .w{display:inline-block}
.closing-sign{display:block;width:min(200px,42vw);height:auto;margin:clamp(22px,3.4vw,44px) auto 0;color:var(--coral)}
.closing-lede{margin:clamp(16px,2vw,28px) auto 0;max-width:60ch;color:var(--muted);font-size:clamp(16px,1.2vw,20px)}

#contact-form{
  margin:clamp(40px,5vw,72px) auto 0;max-width:900px;text-align:left;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;
}
#contact-form .full{grid-column:1 / -1}
#contact-form label{display:grid;gap:8px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
#contact-form input,#contact-form select,#contact-form textarea,
#custodia-form input{
  font:inherit;color:var(--fg);background:transparent;border:0;border-bottom:1px solid var(--hair);
  padding:12px 2px;border-radius:0;text-transform:none;letter-spacing:normal;
}
#contact-form textarea{resize:vertical}
#contact-form input:focus,#contact-form select:focus,#contact-form textarea:focus,#custodia-form input:focus{outline:none;border-color:var(--coral)}
.check{grid-template-columns:auto 1fr;align-items:center;gap:12px !important}
.check input{width:18px;height:18px;accent-color:var(--blue)}
.check span{font-size:12px;letter-spacing:.02em;text-transform:none}
.full-cta{grid-column:1 / -1;justify-self:start}
#form-message,#cu-message{grid-column:1 / -1;margin:0;font-size:14px;color:var(--blue);min-height:1.2em}

/* ---------- modale ---------- */
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:var(--pad);background:rgba(10,10,9,.62);backdrop-filter:blur(6px)}
.modal[hidden]{display:none}
.modal-card{background:var(--bg);color:var(--fg);border-radius:var(--radius);padding:clamp(26px,3vw,46px);width:min(520px,100%);position:relative}
.modal-card h3{margin:0 0 10px;font-size:clamp(24px,2.4vw,36px);letter-spacing:-.03em;font-weight:500}
.modal-lede{margin:0 0 22px;color:var(--muted)}
#custodia-form{display:grid;gap:16px}
#custodia-form label{display:grid;gap:7px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.modal-close{position:absolute;top:14px;right:16px;background:none;border:0;font-size:26px;line-height:1;cursor:pointer}

/* ---------- footer ---------- */
.foot{background:var(--ink);color:var(--ivory);padding:clamp(56px,7vw,110px) var(--pad) var(--pad)}
.foot-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:34px;align-items:flex-end}
.foot .chrome-word small{color:rgba(242,238,231,.6)}
.foot-claim{margin:0;font-size:clamp(22px,3vw,48px);line-height:1.05;letter-spacing:-.035em;font-weight:500;text-align:right}
.foot-bottom{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;
  margin-top:clamp(40px,6vw,90px);padding-top:16px;border-top:1px solid rgba(242,238,231,.2);
}
.foot-bottom small{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(242,238,231,.6)}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(22px)}
.is-visible.reveal,.reveal.is-visible{opacity:1;transform:none}

/* ---------- responsive ---------- */
@media (max-width:1080px){
  .split,.story,.feature{grid-template-columns:1fr}
  .grid-work{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .cycler{position:static}
  .foot-claim{text-align:left}
  .work-wide .work-panel{aspect-ratio:16/10}
}
@media (max-width:760px){
  .chrome-actions .pill-dark{display:none}
  .hero{height:300vh}
  .hero-head{margin-left:0}
  .hero-title{font-size:clamp(26px,7.6vw,46px)}
  .rule-plus .plus:nth-child(2),.rule-plus .plus:nth-last-child(2){display:none}
  #contact-form{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none}
  *{animation-duration:.01ms !important;transition-duration:.01ms !important}
}

/* ---------- contatti: schede, nota, faq ---------- */
.contact-cards{
  list-style:none;margin:clamp(34px,4vw,60px) auto 0;padding:0;max-width:900px;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;
  background:var(--hair);border:1px solid var(--hair);border-radius:var(--radius);overflow:hidden;text-align:left;
}
.contact-cards li{background:var(--bg);padding:clamp(18px,2vw,26px);display:grid;gap:7px;min-width:0}
.contact-cards .label{margin:0}
.contact-cards > li > a{font-size:clamp(14.5px,1.05vw,17px);font-weight:500;letter-spacing:-.01em;line-height:1.35;border-bottom:1px solid transparent;justify-self:start;max-width:100%;overflow-wrap:anywhere}
.contact-cards a[aria-disabled="true"]{pointer-events:none}
.contact-cards a:hover{border-color:var(--coral)}
.contact-cards em{font-style:normal;font-size:13px;color:var(--muted);line-height:1.5}
.contact-cards .inline-link{display:inline;font-size:13px;font-weight:400;letter-spacing:0;border-bottom:1px solid var(--hair)}
.contact-cards .inline-link:hover{border-color:var(--coral);color:var(--fg)}
.contact-note{
  margin:clamp(26px,3vw,40px) auto 0;max-width:62ch;text-align:left;
  font-size:14px;line-height:1.6;color:var(--muted);
  border-left:2px solid var(--coral);padding-left:16px;
}
.contact-faq{
  margin:clamp(34px,4vw,60px) auto 0;max-width:900px;text-align:left;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,34px);
}
.contact-faq dt{font-weight:500;letter-spacing:-.01em;margin:0 0 6px;font-size:clamp(15px,1.15vw,18px)}
.contact-faq dd{margin:0;font-size:14px;color:var(--muted);line-height:1.6}
.foot-legal{
  display:flex;flex-wrap:wrap;gap:10px clamp(18px,3vw,44px);align-items:center;
  margin-top:clamp(30px,4vw,54px);padding-top:clamp(18px,2vw,26px);
  border-top:1px solid rgba(242,238,231,.16);
}
.foot-legal small{font-size:12px;letter-spacing:.02em;color:rgba(242,238,231,.72)}
.foot-legal a{border-bottom:1px solid rgba(242,238,231,.34)}
.foot-legal a:hover{border-color:var(--lime);color:var(--lime)}

/* ---------- pagina legale ---------- */
.legal{max-width:860px;margin:0 auto;padding:clamp(120px,13vw,190px) var(--pad) clamp(60px,8vw,120px)}
.legal-head{margin-bottom:clamp(34px,4vw,60px)}
.legal h1{font-size:clamp(30px,4.6vw,66px);line-height:1;letter-spacing:-.04em;font-weight:500;margin:10px 0 0}
.legal-date{margin:clamp(14px,1.6vw,22px) 0 0;font-size:13px;color:var(--muted)}
.legal h2{font-size:clamp(20px,2vw,30px);line-height:1.15;letter-spacing:-.025em;font-weight:500;margin:clamp(40px,4.4vw,72px) 0 12px}
.legal h3{font-size:clamp(16px,1.3vw,20px);font-weight:500;margin:clamp(24px,2.6vw,36px) 0 8px}
.legal p,.legal li{font-size:clamp(15px,1.1vw,17px);line-height:1.7;color:var(--muted)}
.legal p{margin:0 0 14px}
.legal strong{color:var(--fg);font-weight:500}
.legal ul{margin:0 0 14px;padding-left:20px;display:grid;gap:7px}
.legal a{border-bottom:1px solid var(--hair)}
.legal a:hover{border-color:var(--coral);color:var(--fg)}
.legal-table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:clamp(14px,1vw,16px)}
.legal-table th,.legal-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--hair);vertical-align:top;color:var(--muted)}
.legal-table th{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg);font-weight:500}
.legal-back{display:inline-flex;align-items:center;gap:9px;margin-top:clamp(34px,4vw,56px);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.legal-back:hover{color:var(--fg)}

@media (max-width:860px){
  .contact-cards{grid-template-columns:1fr}
  .contact-faq{grid-template-columns:1fr;gap:20px}
}
.legal-page .chrome{position:absolute}

.contact-cards .card-main{margin:0;font-size:clamp(14.5px,1.05vw,17px);font-weight:500;letter-spacing:-.01em;line-height:1.35}

.tm{font-family:"DM Sans",sans-serif;font-weight:500;font-size:.42em;letter-spacing:0;vertical-align:super;line-height:0;margin-left:.08em;position:relative;top:-.15em}
