/* Kinship Fitness · concept app landing page by Brand Evolution */
:root{
  --night:#15120F;
  --night-2:#211C17;
  --cream:#F6EFE4;
  --cream-2:#EFE5D5;
  --ink:#1C1813;
  --ink-soft:#3D352C;
  --muted:#5E554A;
  --coral:#FF5A36;
  --coral-d:#C7381A;
  --haldi:#FFB627;
  --mint:#2FD39A;
  --sky:#62B6FF;
  --pink:#FF6FA3;
  --on-night:#F6EFE4;
  --on-night-soft:rgba(246,239,228,.74);
  --line:rgba(28,24,19,.12);
  --display:"Archivo", "Arial Black", system-ui, sans-serif;
  --body:"Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --gutter:clamp(16px,4vw,56px);
  --ease:cubic-bezier(.2,.8,.2,1);
  interpolate-size:allow-keywords;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;overflow-x:hidden}
svg{display:block}
a{color:inherit}
p{margin:0}
h1,h2,h3{margin:0;font-family:var(--display);font-weight:800;font-variation-settings:"wdth" 112;letter-spacing:-.02em;line-height:1}
em{font-style:normal;color:var(--coral-d)}
[data-tone="dark"] em{color:var(--haldi)}
:focus-visible{outline:3px solid var(--sky);outline-offset:3px;border-radius:8px}
.sa-skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--coral);color:#fff;padding:10px 14px}
.sa-skip:focus{left:8px}
button,input{font:inherit;color:inherit}
.sa-no{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-d);margin-bottom:14px}
[data-tone="dark"] .sa-no{color:var(--haldi)}
.sa-note{color:var(--muted);font-size:clamp(16px,1.25vw,18px);max-width:52ch;margin-top:18px}
[data-tone="dark"] .sa-note{color:var(--on-night-soft)}
.sa-small{font-size:14px;color:var(--muted);margin-top:12px}
[data-tone="dark"] .sa-small{color:var(--on-night-soft)}
.sa-center{text-align:center}

/* buttons */
.sa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:999px;font-weight:800;font-size:15.5px;text-decoration:none;border:0;cursor:pointer;transition:transform .3s var(--ease),background .25s,color .25s,box-shadow .25s}
.sa-btn:hover{transform:translateY(-2px)}
.sa-btn-coral{background:var(--coral);color:#1A0C06}
.sa-btn-coral:hover{background:#FF7652;box-shadow:0 10px 30px -10px rgba(255,90,54,.7)}
.sa-btn-line{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}
.sa-btn-line:hover{background:var(--ink);color:var(--cream)}
.sa-btn-light{background:var(--cream);color:var(--night)}
.sa-btn-light:hover{background:var(--haldi)}
.sa-btn-sm{padding:9px 18px;font-size:14px}
.sa-round{width:46px;height:46px;border-radius:50%;border:0;background:var(--ink);color:var(--cream);font-size:20px;cursor:pointer;transition:transform .25s var(--ease),background .25s}
.sa-round:hover{background:var(--coral);color:#1A0C06;transform:scale(1.06)}

/* NAV: glass tinted to the section beneath */
.sa-nav{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px var(--gutter);color:var(--ink);transition:background .35s,color .35s,box-shadow .35s,padding .35s}
.sa-nav.on-dark{color:var(--on-night)}
.sa-nav.solid{background:rgba(246,239,228,.82);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:0 1px 0 var(--line);padding-top:10px;padding-bottom:10px}
.sa-nav.solid.on-dark{background:rgba(21,18,15,.78);box-shadow:0 1px 0 rgba(246,239,228,.1)}
.sa-logo{display:flex;align-items:center;gap:8px;text-decoration:none}
.sa-logo svg{width:34px;height:34px}
.sa-logo span{font-family:var(--display);font-weight:900;font-variation-settings:"wdth" 120;font-size:24px;letter-spacing:-.03em}
.sa-nav nav{display:flex;gap:28px;font-weight:700;font-size:15px}
.sa-nav nav a{text-decoration:none;opacity:.8}
.sa-nav nav a:hover{opacity:1}
@media (max-width:860px){.sa-nav nav{display:none}}

/* HERO */
.sa-hero{position:relative;height:280vh;background:radial-gradient(45% 50% at 72% 50%,rgba(255,90,54,.2),transparent 70%),radial-gradient(40% 40% at 85% 85%,rgba(47,211,154,.12),transparent 70%),var(--night);color:var(--on-night)}
.sa-pin{position:sticky;top:0;height:100svh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(16px,4vw,64px);align-items:center;padding:88px var(--gutter) 28px;overflow:hidden}
.sa-hero-copy{max-width:620px;animation:saIn .7s var(--ease) both}
@keyframes saIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.sa-kicker{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;font-weight:700;color:var(--on-night-soft);padding:7px 14px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(246,239,228,.18)}
.sa-dot{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(47,211,154,.2)}
.sa-hero-copy h1{font-size:clamp(46px,6.4vw,100px);font-variation-settings:"wdth" 118;margin:22px 0 20px;line-height:.92}
.sa-grad{color:var(--haldi)}
.sa-lede{font-size:clamp(16px,1.3vw,19px);color:var(--on-night-soft);max-width:46ch}
.sa-stores{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.sa-store{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 14px;border-radius:14px;border:1.5px solid rgba(246,239,228,.35);background:#000;color:#fff;cursor:pointer;text-align:left;transition:transform .25s var(--ease),border-color .25s}
.sa-store:hover{transform:translateY(-2px);border-color:#fff}
.sa-store svg{width:26px;height:26px;flex:none}
.sa-store span{display:grid;font-weight:800;font-size:17px;line-height:1.1}
.sa-store small{font-size:11px;font-weight:600;opacity:.75;letter-spacing:.02em}
.sa-store-note{font-size:13px;color:var(--on-night-soft);margin-top:10px;max-width:46ch}
.sa-scroll-hint{display:flex;align-items:center;gap:10px;margin-top:26px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--on-night-soft);transition:opacity .3s}
.sa-scroll-hint span{width:22px;height:34px;border-radius:12px;box-shadow:inset 0 0 0 2px rgba(246,239,228,.5);position:relative}
.sa-scroll-hint span::after{content:"";position:absolute;left:50%;top:7px;width:4px;height:7px;margin-left:-2px;border-radius:2px;background:var(--haldi);animation:saWheel 1.6s infinite}
@keyframes saWheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(10px)}}

/* phone */
.sa-phone-col{height:100%;min-height:0;display:flex;align-items:center;justify-content:center;perspective:1400px}
.sa-phone-tilt{position:relative;transform-style:preserve-3d;transition:transform .2s linear;will-change:transform}
.sa-phone{position:relative;height:min(640px,76svh);aspect-ratio:300/620;border-radius:15% / 7.3%;padding:3.2%;background:linear-gradient(145deg,#3A332C,#0E0C0A 40%,#2A241F);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.12),0 40px 80px -30px rgba(0,0,0,.8),0 0 0 1px #000;container-type:inline-size}
.sa-island{position:absolute;top:4.2%;left:50%;width:30%;height:3.6%;margin-left:-15%;border-radius:99px;background:#000;z-index:3}
.sa-screen{position:relative;height:100%;border-radius:12% / 5.9%;overflow:hidden;background:linear-gradient(180deg,#FBF6EE,#F3EADB);color:var(--ink);padding:14cqi 6.5cqi 0;font-size:4.3cqi;display:flex;flex-direction:column;gap:2.6cqi}
.sa-status{position:absolute;top:4.6cqi;left:9cqi;right:9cqi;display:flex;justify-content:space-between;align-items:center;font-size:4.2cqi}
.sa-sig{display:flex;align-items:flex-end;gap:.8cqi;height:3.4cqi}
.sa-sig i{width:1.2cqi;background:var(--ink);border-radius:1px}
.sa-sig i:nth-child(1){height:35%}.sa-sig i:nth-child(2){height:55%}.sa-sig i:nth-child(3){height:78%}.sa-sig i:nth-child(4){height:100%}
.sa-hello{font-size:4cqi;color:var(--muted);font-weight:700}
.sa-today{font-family:var(--display);font-weight:800;font-variation-settings:"wdth" 110;font-size:8.4cqi;line-height:1;margin-top:-1.6cqi}
.sa-today span{font-family:var(--body);font-weight:700;font-size:4cqi;color:var(--muted)}
.sa-rings-wrap{position:relative;width:64cqi;margin:1cqi auto 0}
.sa-rings{width:100%;height:auto;overflow:visible}
.sa-r{stroke-dasharray:0 100;transition:none}
.sa-closed{position:absolute;inset:auto 0 -2cqi;margin:auto;width:max-content;max-width:100%;padding:1.6cqi 3.6cqi;border-radius:99px;background:var(--night);color:#fff;text-align:center;font-size:3.6cqi;line-height:1.25;opacity:0;transform:translateY(3cqi) scale(.8);transition:opacity .4s var(--ease),transform .5s cubic-bezier(.3,1.6,.5,1)}
.sa-closed b{display:block;font-size:4cqi}
.sa-closed span{color:var(--haldi);font-weight:700}
.sa-phone.closed .sa-closed{opacity:1;transform:none}
.sa-phone.closed .sa-rings{filter:drop-shadow(0 0 3cqi rgba(255,140,60,.45))}
.sa-legend{list-style:none;margin:2cqi 0 0;padding:0;display:grid;gap:1.4cqi}
.sa-legend li{display:grid;grid-template-columns:3cqi 1fr auto;align-items:center;gap:2cqi;font-size:3.9cqi}
.sa-legend i{width:3cqi;height:3cqi;border-radius:50%}
.sa-legend span{font-weight:700}
.sa-legend b{font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink-soft)}
.sa-legend output{color:var(--ink);font-weight:800}
.sa-fam{list-style:none;margin:1cqi 0 0;padding:2.6cqi 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);text-align:center;font-size:3.4cqi;font-weight:700;color:var(--ink-soft)}
.sa-fam svg{width:11cqi;height:11cqi;margin:0 auto .8cqi;transform:rotate(-90deg)}
.sa-ft{fill:none;stroke:rgba(28,24,19,.1);stroke-width:5}
.sa-fr{fill:none;stroke-width:5;stroke-linecap:round;stroke-dasharray:0 100}
.sa-next{margin-top:auto;padding:3cqi 3.6cqi;border-radius:4.6cqi;background:var(--night);color:#fff;display:grid;gap:.4cqi;font-size:3.6cqi}
.sa-next span{color:var(--haldi);font-weight:800}
.sa-next b{font-size:4.4cqi}
.sa-next em{font-style:normal;opacity:.7}
.sa-tabs{display:flex;justify-content:space-around;padding:3cqi 0 5cqi;font-size:3.3cqi;font-weight:700;color:var(--muted)}
.sa-tabs .on{color:var(--coral-d)}
.sa-phone-shadow{position:absolute;left:10%;right:10%;bottom:-5%;height:6%;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.6),transparent);filter:blur(6px);transform:translateZ(-40px)}
@media (max-width:860px){
  .sa-hero{height:240vh}
  .sa-pin{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;padding:70px var(--gutter) 58px;gap:10px}
  .sa-phone-col{order:-1}
  .sa-phone{height:min(46svh,520px)}
  .sa-hero-copy h1{font-size:clamp(34px,10vw,52px);margin:0 0 8px}
  .sa-kicker,.sa-lede,.sa-scroll-hint{display:none}
  .sa-stores{margin-top:10px;gap:8px}
  .sa-store{padding:8px 14px 8px 10px}
  .sa-store span{font-size:15px}
  .sa-store-note{font-size:12px;margin-top:6px}
}

/* WORKOUTS */
.sa-workouts{padding:120px var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,90px);align-items:center;overflow:hidden}
.sa-workouts h2,.sa-family h2,.sa-features h2,.sa-pricing h2,.sa-faq h2,.sa-cta h2{font-size:clamp(34px,4.8vw,64px);text-wrap:balance}
.sa-deck-ctrl{display:flex;align-items:center;gap:18px;margin-top:30px}
.sa-deck-count{font-weight:800;font-size:18px;min-width:9ch}
.sa-deck-count span{display:block;font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.sa-deck{position:relative;width:min(360px,100%);aspect-ratio:36/46;justify-self:center;touch-action:pan-y;outline-offset:10px;border-radius:30px}
.sa-wcard{position:absolute;inset:0;border-radius:30px;padding:26px 24px;background:linear-gradient(160deg,var(--c1),var(--c2));color:var(--night);display:flex;flex-direction:column;gap:8px;box-shadow:0 30px 60px -30px rgba(28,24,19,.55),inset 0 0 0 1px rgba(255,255,255,.25);transform-origin:50% 100%;transition:transform .5s var(--ease),opacity .4s;user-select:none;-webkit-user-select:none;cursor:grab}
.sa-wcard.dragging{transition:none;cursor:grabbing}
.sa-wart{width:100%;height:auto;max-height:42%;margin-bottom:auto;padding:4px 0 10px}
.sa-wphoto{display:block;width:100%;height:42%;max-height:none;object-fit:cover;padding:0;border-radius:18px;margin-bottom:auto;box-shadow:0 10px 24px -14px rgba(21,18,15,.6);pointer-events:none;-webkit-user-drag:none}
.sa-tphoto{display:block;width:100%;height:120px;object-fit:cover;border-radius:16px;margin-bottom:14px}
@media (max-width:560px){.sa-tphoto{height:auto;aspect-ratio:960/448}}
.sa-wtag{display:inline-block;align-self:flex-start;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 11px;border-radius:99px;background:rgba(21,18,15,.12)}
.sa-wcard h3{font-size:clamp(26px,2.6vw,32px);font-variation-settings:"wdth" 105}
.sa-wmeta{font-weight:800}
.sa-wcard p:last-child{font-size:15px;color:rgba(21,18,15,.82)}
@media (max-width:860px){.sa-workouts{grid-template-columns:1fr}.sa-deck{width:min(330px,88vw)}}

/* FAMILY LEADERBOARD */
.sa-family{background:radial-gradient(50% 60% at 80% 40%,rgba(255,182,39,.12),transparent 70%),var(--night);color:var(--on-night);padding:120px var(--gutter);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,6vw,90px);align-items:center}
.sa-lb-ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:28px}
.sa-day{display:flex;align-items:center;gap:10px;font-weight:700;font-size:14px}
.sa-day input{width:150px;accent-color:var(--haldi)}
.sa-day output{min-width:3ch;font-weight:800;color:var(--haldi)}
.sa-lb{background:var(--night-2);border-radius:28px;padding:22px;box-shadow:inset 0 0 0 1px rgba(246,239,228,.08)}
.sa-lb-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px;font-weight:700;color:var(--on-night-soft);margin-bottom:14px}
.sa-lb-head b{color:var(--mint)}
.sa-lb-list{list-style:none;margin:0;padding:0;position:relative;height:calc(5 * 74px)}
.sa-lb-row{position:absolute;left:0;right:0;top:0;height:64px;display:grid;grid-template-columns:28px 44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:0 14px;border-radius:18px;background:rgba(246,239,228,.05);transition:transform .7s var(--ease),background .4s}
.sa-lb-row.lead{background:rgba(255,182,39,.12)}
.sa-rank{font-family:var(--display);font-weight:800;font-size:20px;color:var(--on-night-soft)}
.sa-av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:var(--night);background:var(--c);position:relative}
.sa-crown{position:absolute;top:-13px;left:50%;width:22px;margin-left:-11px;opacity:0;transform:translateY(4px) scale(.6);transition:opacity .3s,transform .4s cubic-bezier(.3,1.6,.5,1)}
.lead .sa-crown{opacity:1;transform:none}
.sa-who{min-width:0}
.sa-who b{display:block;font-size:15.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-who small{display:block;font-size:12.5px;color:var(--on-night-soft)}
.sa-bar{height:6px;border-radius:3px;background:rgba(246,239,228,.08);margin-top:6px;overflow:hidden}
.sa-bar i{display:block;height:100%;background:var(--c);transform-origin:0 50%;transform:scaleX(0);transition:transform .7s var(--ease)}
.sa-pts{font-family:var(--display);font-weight:800;font-size:22px;font-variant-numeric:tabular-nums;text-align:right;min-width:3.4ch}
.sa-pts small{display:block;font-family:var(--body);font-size:11px;font-weight:700;color:var(--on-night-soft)}
@media (max-width:860px){.sa-family{grid-template-columns:1fr}}
@media (max-width:420px){.sa-lb{padding:14px}.sa-lb-row{grid-template-columns:20px 38px minmax(0,1fr) auto;gap:9px;padding:0 10px}.sa-av{width:38px;height:38px}}

/* FEATURES BENTO */
.sa-features{padding:120px var(--gutter)}
.sa-features h2{max-width:20ch;margin-bottom:44px}
.sa-bento{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sa-tile{position:relative;overflow:hidden;background:#fff;border-radius:26px;padding:26px;display:flex;flex-direction:column;gap:8px;box-shadow:inset 0 0 0 1px var(--line);isolation:isolate;transition:transform .4s var(--ease)}
.sa-tile::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(255,182,39,.28),transparent 70%);opacity:0;transition:opacity .35s}
.sa-tile:hover::before{opacity:1}
.sa-tile:hover{transform:translateY(-4px)}
.sa-t-wide{grid-column:span 2}
.sa-tile h3{font-size:24px;font-variation-settings:"wdth" 104;margin-top:auto}
.sa-tile p:last-child{color:var(--muted);font-size:15.5px}
.sa-big{font-family:var(--display);font-weight:900;font-size:44px;line-height:1;color:var(--coral-d);margin-bottom:22px;font-variation-settings:"wdth" 110}
.sa-langs{font-size:21px;letter-spacing:0;white-space:nowrap;color:var(--ink);padding-top:12px}
.sa-lock{width:46px;height:46px;color:var(--coral-d);margin-bottom:22px}
.sa-avs{display:flex;margin-bottom:22px}
.sa-avs i{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:800;background:var(--c);color:var(--night);border:3px solid #fff;margin-right:-10px;transition:transform .4s var(--ease)}
.sa-tile:hover .sa-avs i{transform:translateY(-4px)}
.sa-tile:hover .sa-avs i:nth-child(2n){transform:translateY(3px)}
.sa-avs .sa-plus{background:var(--cream-2)}
@media (max-width:980px){.sa-bento{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.sa-bento{grid-template-columns:1fr}.sa-t-wide{grid-column:auto}}

/* PRICING */
.sa-pricing{padding:110px var(--gutter);background:var(--cream-2)}
.sa-pr-head{display:grid;justify-items:center;text-align:center;gap:6px;margin-bottom:44px}
.sa-pr-head h2{max-width:22ch}
.sa-billing{display:inline-flex;margin-top:24px;padding:5px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.sa-billing button{border:0;background:transparent;padding:10px 20px;border-radius:999px;font-weight:800;cursor:pointer;transition:background .25s,color .25s}
.sa-billing button small{font-weight:700;font-size:12px;color:var(--coral-d);margin-left:4px}
.sa-billing button[aria-pressed="true"]{background:var(--night);color:var(--cream)}
.sa-billing button[aria-pressed="true"] small{color:var(--haldi)}
.sa-plans{list-style:none;margin:0 auto;padding:0;max-width:1100px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.sa-plan{position:relative;background:#fff;border-radius:28px;padding:30px 26px;display:flex;flex-direction:column;gap:10px;box-shadow:inset 0 0 0 1px var(--line)}
.sa-plan h3{font-size:26px}
.sa-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.sa-price b{font-family:var(--display);font-size:50px;font-weight:900;font-variation-settings:"wdth" 108;line-height:1;font-variant-numeric:tabular-nums}
.sa-price span{color:var(--muted);font-weight:700;font-size:14px}
.sa-plan-sub{color:var(--muted)}
.sa-plan ul{list-style:none;margin:6px 0 14px;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:8px;font-size:15px;flex:1}
.sa-plan ul li{padding-left:24px;position:relative}
.sa-plan ul li::before{content:"";position:absolute;left:0;top:.38em;width:13px;height:13px;border-radius:50%;border:3px solid var(--mint)}
.sa-plan .sa-btn{width:100%}
.sa-plan-hot{background:var(--night);color:var(--on-night);box-shadow:0 30px 60px -30px rgba(21,18,15,.6)}
.sa-plan-hot .sa-price span,.sa-plan-hot .sa-plan-sub{color:var(--on-night-soft)}
.sa-plan-hot ul{border-color:rgba(246,239,228,.14)}
.sa-plan-hot ul li::before{border-color:var(--haldi)}
.sa-ribbon{position:absolute;top:-14px;left:26px;background:var(--coral);color:#1A0C06;font-size:12.5px;font-weight:800;padding:5px 12px;border-radius:99px}
@media (max-width:900px){.sa-plans{grid-template-columns:1fr;max-width:480px}}

/* FAQ */
.sa-faq{padding:110px var(--gutter);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px clamp(30px,6vw,90px);align-items:start}
.sa-faq .sa-no{grid-column:1}
.sa-faq h2{grid-column:1}
.sa-faq-list{grid-column:2;grid-row:1/span 2;display:grid;gap:10px}
.sa-faq details{background:#fff;border-radius:20px;box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}
.sa-faq summary{list-style:none;cursor:pointer;padding:20px 60px 20px 22px;font-weight:800;font-size:17px;position:relative}
.sa-faq summary::-webkit-details-marker{display:none}
.sa-faq summary::after{content:"";position:absolute;right:22px;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--cream-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='M7 11h8M11 7v8' stroke='%231C1813' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/22px;transition:transform .35s var(--ease)}
.sa-faq details[open] summary::after{transform:rotate(45deg)}
.sa-faq details > div{padding:0 22px 20px;color:var(--ink-soft)}
.sa-faq details::details-content{height:0;overflow:hidden;transition:height .4s var(--ease),content-visibility .4s allow-discrete}
.sa-faq details[open]::details-content{height:auto}
@media (max-width:860px){.sa-faq{grid-template-columns:1fr}.sa-faq-list{grid-column:1;grid-row:auto;margin-top:24px}}

/* CTA */
.sa-cta{position:relative;overflow:hidden;background:var(--night);color:var(--on-night);padding:120px var(--gutter);display:grid;justify-items:center;text-align:center}
.sa-cta h2{max-width:16ch;position:relative}
.sa-cta .sa-stores{justify-content:center;position:relative}
.sa-cta .sa-store-note{position:relative}
.sa-cta-rings{position:absolute;width:min(560px,120vw);height:auto;left:50%;top:50%;transform:translate(-50%,-50%);opacity:.16;pointer-events:none}
.sa-cr{stroke-dasharray:0 100;transition:stroke-dasharray 1.6s var(--ease)}
.sa-cr:nth-child(2){transition-delay:.15s}.sa-cr:nth-child(3){transition-delay:.3s}
.sa-cta.in .sa-cr{stroke-dasharray:100 0}

/* FOOTER */
.sa-foot{background:var(--night);color:var(--on-night);padding:20px var(--gutter) 90px;border-top:1px solid rgba(246,239,228,.08);overflow:hidden}
.sa-foot-big{font-family:var(--display);font-weight:900;font-variation-settings:"wdth" 125;font-size:clamp(80px,20vw,300px);line-height:.9;letter-spacing:-.05em;color:var(--coral);white-space:nowrap}
.sa-foot-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;margin-top:20px;font-size:15px;color:var(--on-night-soft)}
.sa-foot nav{display:flex;flex-wrap:wrap;gap:18px}
.sa-foot nav a{text-decoration:none}
.sa-foot nav a:hover{color:var(--haldi)}

.sa-toast{position:fixed;left:50%;bottom:24px;z-index:80;max-width:min(440px,calc(100% - 32px));transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--cream);color:var(--night);padding:13px 18px;border-radius:16px;font-weight:700;font-size:14.5px;box-shadow:0 20px 50px -20px rgba(0,0,0,.6);transition:opacity .3s,transform .4s var(--ease)}
.sa-toast.show{opacity:1;transform:translate(-50%,0)}
.concept-badge{position:fixed;left:14px;bottom:14px;z-index:60;font-size:12px;font-weight:800;text-decoration:none;background:rgba(21,18,15,.9);color:var(--cream);padding:8px 12px;border-radius:999px;box-shadow:0 0 0 1px rgba(246,239,228,.18)}
.concept-badge:hover{background:var(--coral);color:#1A0C06}

.rv{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .sa-hero{height:auto}
  .sa-pin{position:relative;height:auto;min-height:100svh}
  .sa-hero-copy{animation:none}
  .sa-scroll-hint{display:none}
  .sa-wcard,.sa-lb-row,.sa-bar i,.sa-closed,.sa-btn,.sa-tile,.sa-cr{transition:none}
  .sa-faq details::details-content{transition:none}
}
/* touch screens: scroll-driven spotlight (app.js adds .lit while a tile crosses the screen) */
@media (hover:none){
  .sa-tile.lit::before{opacity:1}
  .sa-tile.lit .sa-avs i{transform:translateY(-4px)}
  .sa-tile.lit .sa-avs i:nth-child(2n){transform:translateY(3px)}
}
