/* Layout: warm coquina-cream paper, navy ink, terracotta accent, sea-glass teal; aqua glow kept only behind the bundle header; hero → marquee → pinned horizontal lineup → steps → menu grid → stats band → packages → order → footer wave */
:root{
  --bg:#F6EFE3; --paper:#FFFBF3; --mist:#EEE4D2; --mist-2:#E5D7BF; --ink:#16233F; --ink-2:#4A5165; --ink-3:#8A8171;
  --aqua:#2B8A82; --ocean:#C9562F; --lagoon:#F2C994; --deep:#16233F; --gold:#D9A441; --pop:#C9562F; --line:rgba(22,35,63,.14);
  --wet:linear-gradient(#D2603A,#C9562F);
  --display:"Bagel Fat One","Arial Black",system-ui,sans-serif; --head:"Archivo","Arial",system-ui,sans-serif; --hand:"Caveat","Segoe Print",cursive;
  --body:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"Archivo",system-ui,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;overflow-x:hidden}
img{display:block;max-width:100%}
body::after{content:"";position:fixed;inset:0;z-index:200;pointer-events:none;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.25 0 0 0 0 0.1 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
h1,h2,h3{font-family:var(--display);margin:0;line-height:.95;letter-spacing:-.03em;text-wrap:balance}
p{margin:0}
button{font:inherit;color:inherit}
a{color:inherit}
.wrap{max-width:1220px;margin:0 auto;padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}
.num{font-variant-numeric:tabular-nums}
.wet-text{background:var(--wet);-webkit-background-clip:text;background-clip:text;color:transparent}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:16px 26px;font-weight:700;cursor:pointer;text-decoration:none;will-change:transform;transition:box-shadow .3s}
.btn:focus-visible{outline:3px solid var(--ocean);outline-offset:3px}
.btn-wet{background:var(--wet);color:#fff;box-shadow:0 14px 34px -12px rgba(22,35,63,.65),inset 0 1px 0 rgba(255,255,255,.4)}
.btn-wet:hover{box-shadow:0 20px 44px -12px rgba(22,35,63,.8),inset 0 1px 0 rgba(255,255,255,.5)}
.btn-ink{background:var(--ink);color:#fff}
.btn-line{background:rgba(255,255,255,.6);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(22,35,63,.14);backdrop-filter:blur(8px)}

/* progress */
.progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:90;background:var(--wet);transform-origin:left;transform:scaleX(0)}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:95;background:var(--paper)}

/* nav */
.nav{position:fixed;left:0;right:0;top:env(safe-area-inset-top,0px);z-index:80;padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px));padding-top:12px;pointer-events:none}
.nav-in{pointer-events:auto;max-width:1220px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 18px;border-radius:999px;background:rgba(255,251,243,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px -18px rgba(60,40,15,.35),inset 0 0 0 1px rgba(255,255,255,.8)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-weight:800;font-size:19px;letter-spacing:-.02em;white-space:nowrap}
.logo img{height:34px;width:auto}
.drop{width:26px;height:26px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--wet);box-shadow:inset -3px -3px 6px rgba(60,40,15,.25),inset 3px 3px 6px rgba(255,255,255,.55);flex:none}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-links a{text-decoration:none;font-weight:600;font-size:15px;padding:9px 13px;border-radius:999px;color:var(--ink-2)}
.nav-links a:hover{background:var(--mist);color:var(--ink)}
.nav-links .btn{padding:11px 18px;font-size:15px}
.badge{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--paper);color:var(--ocean);font-size:12px;display:inline-grid;place-items:center}

/* liquid blobs */
.blobs{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.6;will-change:transform}
.blobs{-webkit-mask:linear-gradient(transparent,#000 14%,#000 86%,transparent);mask:linear-gradient(transparent,#000 14%,#000 86%,transparent)}
.hero .blobs{-webkit-mask:linear-gradient(#000 80%,transparent);mask:linear-gradient(#000 80%,transparent)}
.aqua .b1{background:radial-gradient(circle at 30% 30%,#94F4E8,#11D0DE 60%,transparent 70%)}
.aqua .b3{background:radial-gradient(circle,#C9FFF6,#94F4E8 50%,transparent 70%)}
.aqua-text{background:linear-gradient(115deg,#11D0DE 0%,#1F8BFF 55%,#1458FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.b1{width:46vmax;height:46vmax;background:radial-gradient(circle at 30% 30%,#F6D7AE,#EDB98A 60%,transparent 70%);left:-12vmax;top:-14vmax;animation:drift1 18s ease-in-out infinite}
.b2{width:40vmax;height:40vmax;background:radial-gradient(circle at 60% 40%,#A9D3CB,#5FA79E 60%,transparent 72%);right:-14vmax;top:4vmax;opacity:.35;animation:drift2 22s ease-in-out infinite}
.b3{width:30vmax;height:30vmax;background:radial-gradient(circle,#FBE6CC,#F2CFA3 50%,transparent 70%);left:30%;bottom:-16vmax;opacity:.8;animation:drift3 16s ease-in-out infinite}
@keyframes drift1{50%{transform:translate(8vmax,6vmax) scale(1.12)}}
@keyframes drift2{50%{transform:translate(-6vmax,8vmax) scale(.9)}}
@keyframes drift3{50%{transform:translate(-8vmax,-4vmax) scale(1.2)}}

/* HERO */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden;padding-block:120px 60px}
.hero .wrap{position:relative;z-index:2;width:100%}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}
.kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:999px;background:rgba(255,255,255,.7);backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.9),0 8px 24px -16px rgba(60,40,15,.4);font-weight:600;font-size:14px}
.kicker b{background:var(--ink);color:#fff;border-radius:999px;padding:4px 10px;font-family:var(--mono);font-size:11px;letter-spacing:.08em}
.hero h1{font-size:clamp(48px,7.2vw,112px);font-weight:800;margin-top:22px;line-height:.9}
.hero h1 .hl{display:block;overflow:hidden;padding-bottom:.06em}
.hero h1 .w{display:inline-block}
.hero .lede{margin-top:26px;font-size:clamp(17px,1.6vw,20px);color:var(--ink-2);max-width:44ch}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.hero-stage{position:relative;aspect-ratio:1/1.05;width:100%;max-width:560px;justify-self:center}
.orbit{position:absolute;left:50%;top:50%;width:78%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;border:1px dashed rgba(22,35,63,.25);animation:spin 40s linear infinite}
.orbit::after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--aqua);top:-7px;left:50%;box-shadow:0 0 0 6px rgba(43,138,130,.2)}
@keyframes spin{to{rotate:360deg}}
.floaty{position:absolute;will-change:transform;filter:drop-shadow(0 30px 30px rgba(60,40,15,.22)) drop-shadow(0 6px 8px rgba(60,40,15,.12))}
.floaty img{width:100%;height:auto}
.f1{width:46%;left:27%;top:14%;z-index:3}
.f2{width:34%;left:-2%;top:52%;z-index:2}
.f3{width:30%;right:0;top:4%;z-index:2}
.f4{width:36%;right:-2%;bottom:6%;z-index:4}
.f5{width:24%;left:6%;top:6%;z-index:1;opacity:.95}
.bob{animation:bob 6s ease-in-out infinite}
.f2 .bob{animation-duration:7s;animation-delay:-2s}.f3 .bob{animation-duration:8s;animation-delay:-4s}.f4 .bob{animation-duration:6.5s;animation-delay:-1s}.f5 .bob{animation-duration:9s;animation-delay:-3s}
@keyframes bob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-16px) rotate(1.5deg)}}
.ping{position:absolute;left:50%;top:48%;width:120px;height:120px;border-radius:50%;translate:-50% -50%;border:2px solid var(--aqua);animation:ping 2.8s cubic-bezier(.2,.7,.3,1) infinite;z-index:0}
.ping:nth-of-type(2){animation-delay:.9s;border-color:var(--ocean)}.ping:nth-of-type(3){animation-delay:1.8s}
@keyframes ping{0%{transform:scale(.4);opacity:.9}100%{transform:scale(4);opacity:0}}
.hero-foot{position:relative;z-index:2;margin-top:46px;display:flex;gap:26px;flex-wrap:wrap;color:var(--ink-2)}
.hero-foot span{display:inline-flex;gap:8px;align-items:center}
.hero-foot i{width:8px;height:8px;border-radius:50%;background:var(--aqua);box-shadow:0 0 0 4px rgba(43,138,130,.18)}
canvas#ripples{position:absolute;inset:0;z-index:1;pointer-events:none}

/* MARQUEE */
.mq{position:relative;padding-block:28px;overflow:hidden;background:var(--ink);color:#fff}
.mq-row{display:flex;gap:40px;width:max-content;font-family:var(--display);font-weight:800;font-size:clamp(40px,7vw,96px);letter-spacing:-.03em;line-height:1.05;will-change:transform}
.mq-row span{display:inline-flex;align-items:center;gap:40px}
.mq-row span::after{content:"";width:.62em;height:.62em;background:url(brand/mark-light.webp) center/contain no-repeat}
.mq-row.out{color:transparent;-webkit-text-stroke:1px rgba(242,201,148,.6)}

/* LINEUP (stacked rows) */
.lineup{position:relative;background:var(--mist);padding-block:110px 60px}
.cats{display:flex;flex-direction:column;gap:22px;margin-top:40px}
.cat{position:relative;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:center;background:var(--paper);border-radius:34px;padding:34px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(22,35,63,.08),0 30px 60px -44px rgba(60,40,15,.5)}
.cat .pnum{position:absolute;right:24px;top:6px;font-family:var(--display);font-weight:800;font-size:clamp(80px,12vw,170px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(22,35,63,.13);pointer-events:none}
.cat .ptxt{display:flex;flex-direction:column;gap:16px;position:relative;z-index:2;min-width:0}
.cat h3{font-size:clamp(38px,4.6vw,66px);font-weight:800}
.price-bubble{display:inline-flex;align-items:baseline;gap:6px;align-self:flex-start;padding:10px 18px;border-radius:999px;background:var(--mist)}
.price-bubble b{font-family:var(--display);font-size:34px;font-weight:800}
.cat .spec{color:var(--ink-2);max-width:38ch}
.pgrid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;min-width:0}
.pg{position:relative;height:150px;border-radius:20px;background:var(--mist);border:0;padding:0;cursor:pointer;min-width:0;transition:translate .4s cubic-bezier(.2,.8,.2,1),rotate .4s}
.pg:hover{translate:0 -6px;rotate:-2deg}
.pg:focus-visible{outline:3px solid var(--ocean);outline-offset:2px}
.pg img{position:absolute;left:10%;top:10%;width:80%;height:80%;object-fit:contain;filter:drop-shadow(0 14px 12px rgba(60,40,15,.2))}
/* STEPS */
.band{position:relative;padding-block:120px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:46px}
.sec-head h2{font-size:clamp(46px,7.5vw,112px);font-weight:800;margin-top:12px}
.sec-head p{max-width:40ch;color:var(--ink-2);font-size:18px}
.eyebrow{display:inline-flex;gap:8px;align-items:center;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--ocean)}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--wet)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{position:relative;border-radius:28px;padding:30px;background:var(--paper);box-shadow:inset 0 0 0 1px rgba(22,35,63,.08),0 30px 60px -40px rgba(60,40,15,.45);display:flex;flex-direction:column;gap:16px;min-width:0;overflow:hidden}
.step .n{font-family:var(--display);font-weight:800;font-size:64px;line-height:1}
.step h3{font-size:30px}
.step p{color:var(--ink-2)}
.step-vis{height:150px;border-radius:20px;background:var(--paper);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(22,35,63,.08)}
.sv-phone{position:absolute;width:52px;height:92px;border-radius:12px;border:3px solid var(--ink);background:var(--paper);left:50%;top:50%;translate:-50% -50%;animation:tap 2.6s ease-in-out infinite}
.sv-phone::after{content:"";position:absolute;left:50%;top:6px;width:16px;height:4px;border-radius:4px;background:var(--ink);translate:-50% 0}
.sv-card{position:absolute;width:86px;height:54px;border-radius:10px;background:var(--wet);left:50%;bottom:16px;translate:-50% 0}
.sv-ring{position:absolute;left:50%;bottom:43px;width:40px;height:40px;border-radius:50%;border:2px solid var(--aqua);translate:-50% 50%;animation:ring 2.6s ease-out infinite}
@keyframes tap{0%,100%{translate:-50% -96%}45%,62%{translate:-50% -40%}}
@keyframes ring{0%,44%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(3.4)}}
.sv-stars{position:absolute;inset:0;display:grid;place-items:center;font-size:36px;letter-spacing:6px;color:var(--gold)}
.sv-stars span{display:inline-block;animation:pop 2.4s ease-in-out infinite}
.sv-stars span:nth-child(2){animation-delay:.15s}.sv-stars span:nth-child(3){animation-delay:.3s}.sv-stars span:nth-child(4){animation-delay:.45s}.sv-stars span:nth-child(5){animation-delay:.6s}
@keyframes pop{0%,100%{transform:scale(.6);opacity:.25}20%,70%{transform:scale(1.15);opacity:1}}
.sv-bars{position:absolute;inset:22px;display:flex;gap:10px;align-items:flex-end}
.sv-bars i:nth-child(even){background:var(--aqua)}
.sv-bars i{flex:1;border-radius:8px 8px 3px 3px;background:var(--wet);transform-origin:bottom;animation:grow 2.8s ease-in-out infinite}
@keyframes grow{0%{transform:scaleY(.12)}55%,100%{transform:scaleY(1)}}

/* MENU */
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.chip{border:0;cursor:pointer;padding:12px 18px;border-radius:999px;background:var(--mist);font-weight:700;color:var(--ink-2);transition:background .25s,color .25s}
.chip:hover{color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);color:#fff}
.chip:focus-visible{outline:3px solid var(--ocean);outline-offset:2px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.prod{position:relative;border:0;padding:0;text-align:left;cursor:pointer;background:var(--paper);border-radius:28px;overflow:hidden;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(22,35,63,.08),0 24px 50px -40px rgba(60,40,15,.5);transition:translate .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s;min-width:0}
.prod:hover{translate:0 -8px;box-shadow:inset 0 0 0 1px rgba(22,35,63,.12),0 40px 60px -36px rgba(60,40,15,.55)}
.prod:focus-visible{outline:3px solid var(--ocean);outline-offset:3px}
.prod .well{position:relative;aspect-ratio:1/.92;background:#F1E7D5;overflow:hidden}
.prod .well img{position:absolute;left:12%;top:10%;width:76%;height:80%;object-fit:contain;filter:drop-shadow(0 22px 18px rgba(60,40,15,.22)) drop-shadow(0 4px 6px rgba(60,40,15,.12));transition:translate .6s cubic-bezier(.2,.8,.2,1),rotate .6s,scale .6s}
.prod:hover .well img{translate:0 -10px;rotate:-3deg;scale:1.05}
.prod .shine{position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.85) 50%,transparent 60%);transform:translateX(-60%);transition:transform .9s ease;pointer-events:none}
.prod:hover .shine{transform:translateX(60%)}
.prod .tag{position:absolute;left:14px;top:14px;z-index:2;font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.85);color:var(--ocean);box-shadow:inset 0 0 0 1px rgba(22,35,63,.12)}
.prod .meta{padding:16px 20px 20px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.prod .meta b{display:block;font-size:17px}
.prod .meta small{display:block;color:var(--ink-3);font-size:13px;margin-top:2px}
.prod .price{font-family:var(--display);font-weight:800;font-size:26px}
.plus{position:absolute;right:14px;top:14px;z-index:2;width:36px;height:36px;border-radius:50%;background:var(--wet);color:#fff;display:grid;place-items:center;font-size:22px;line-height:1;transform:scale(.6) rotate(-90deg);opacity:0;transition:.35s cubic-bezier(.2,.8,.2,1)}
.prod:hover .plus,.prod:focus-visible .plus{transform:none;opacity:1}

/* STATS */
.stats{position:relative;overflow:hidden;background:var(--deep);color:#fff;padding-block:90px}
.stats .blobs{display:none}
.stat{border-left:1px solid rgba(242,201,148,.35);padding-left:20px}
.stat b{color:var(--paper);white-space:nowrap}
.stat:nth-child(odd) b{color:var(--lagoon)}
.stat-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.stat b{display:block;font-family:var(--display);font-weight:800;font-size:clamp(54px,7vw,96px);line-height:1}
.stat span{color:rgba(255,255,255,.72);font-size:16px}

/* PACKAGES */
.pk-wrap{position:relative;overflow:hidden;overflow:clip}
.pk-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.pk{position:relative;border-radius:30px;padding:30px;overflow:visible;display:flex;flex-direction:column;gap:16px;min-width:0;background:rgba(255,255,255,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.9),0 30px 60px -40px rgba(60,40,15,.5)}
.pk h3{font-size:32px}
.pk .p{font-family:var(--display);font-weight:800;font-size:64px;line-height:1}
.pk ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;color:var(--ink-2)}
.pk-sub{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:-6px}
.pk.hot .pk-sub{color:rgba(255,255,255,.55)}
.box li{display:grid;grid-template-columns:44px auto 1fr;gap:10px;align-items:center;background:rgba(22,35,63,.05);border-radius:14px;padding:6px 10px 6px 6px}
.pk.hot .box li{background:rgba(255,255,255,.07)}
.bth{width:44px;height:44px;border-radius:10px;background:var(--paper);display:grid;place-items:center;padding:4px}
.bth img{max-width:100%;max-height:100%;object-fit:contain}
.bq{font-family:var(--display);font-weight:800;font-size:20px;color:var(--ocean);min-width:34px}
.pk.hot .bq{color:var(--lagoon)}
.box b{display:block;font-size:14px;color:var(--ink)}
.pk.hot .box b{color:#fff}
.box small{display:block;font-size:12px;line-height:1.35}
.pk .incl li{display:flex;gap:10px;font-size:14px}
.pk .incl li::before{content:"";flex:none;width:18px;height:18px;margin-top:3px;border-radius:50%;background:var(--wet);-webkit-mask:radial-gradient(circle,#000 30%,transparent 32%);mask:radial-gradient(circle,#000 30%,transparent 32%)}
.pk .btn{margin-top:auto}
.pk .extra{color:var(--ink-3)}
.pk.hot{background:var(--ink);color:#fff}
.pk.hot ul,.pk.hot .extra{color:rgba(255,255,255,.72)}
.pk.gold::before{content:"";position:absolute;inset:0;border-radius:30px;padding:2px;background:conic-gradient(from var(--a,0deg),#E2B44A,#FFF1C7,#E2B44A,#B98A1E,#E2B44A);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rot 4s linear infinite}
@property --a{syntax:"<angle>";initial-value:0deg;inherits:false}
@keyframes rot{to{--a:360deg}}
.pk .hot-tag{position:absolute;right:20px;top:-13px;z-index:3;padding:6px 12px;border-radius:999px;background:var(--wet);color:#fff;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.08em}
.care{position:relative;z-index:2;margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:26px 30px;border-radius:30px;background:var(--wet);color:#fff;box-shadow:0 30px 60px -36px rgba(22,35,63,.8)}
.care b{font-family:var(--display);font-size:30px}
.care p{opacity:.9;max-width:56ch}

/* BUNDLE BUILDER */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}
.tier{border-radius:22px;padding:16px 18px;background:rgba(255,255,255,.75);backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.9),0 16px 30px -24px rgba(60,40,15,.5);display:flex;justify-content:space-between;align-items:center;gap:10px;transition:background .3s,color .3s}
.tier b{font-family:var(--display);font-size:30px;font-weight:800;line-height:1}
.tier span{font-weight:600;color:var(--ink-2);font-size:14px}
.tier.on{background:var(--ink);color:#fff}
.tier.on span{color:var(--lagoon)}
.starters{display:grid;grid-template-columns:auto 1fr 1fr;gap:12px;align-items:stretch;margin-bottom:18px}
.starters>.mono{align-self:center}
.starter{border-radius:22px;padding:16px 18px;background:var(--paper);box-shadow:inset 0 0 0 1px rgba(22,35,63,.08);display:flex;flex-direction:column;gap:6px;min-width:0}
.starter b{font-size:16px}
.starter>span{font-size:13px;color:var(--ink-3)}
.st-items{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px}
.st-item{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:12px;background:var(--mist);font-size:12.5px;font-weight:600;color:var(--ink-2)}
.st-item img{width:34px;height:34px;object-fit:contain;background:var(--paper);border-radius:8px;padding:2px}
.st-item b{color:var(--ocean);font-family:var(--mono);font-size:12px}
.st-row{display:flex;gap:8px;align-items:center;margin-top:auto;flex-wrap:wrap}
.st-row .btn{padding:11px 16px;font-size:14px}
.st-in{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--ink-2)}
.st-in input{width:72px;padding:10px 12px;text-align:center;font-weight:700}
.bb{display:grid;grid-template-columns:1fr 360px;gap:18px;align-items:start}
.bb-list{display:flex;flex-direction:column;gap:14px;min-width:0}
.bb-group{background:var(--paper);border-radius:26px;padding:18px;box-shadow:inset 0 0 0 1px rgba(22,35,63,.08),0 24px 50px -44px rgba(60,40,15,.5)}
.bb-group h3{font-size:22px;display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px}
.bb-group h3 span{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--ocean)}
.bb-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.bb-row{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;padding:6px 6px 6px 6px;border-radius:16px;background:var(--mist);transition:background .25s,box-shadow .25s}
.bb-row.has{background:var(--paper);box-shadow:inset 0 0 0 2px var(--ocean)}
.bb-row .th{width:48px;height:48px;border-radius:12px;background:var(--paper);display:grid;place-items:center;padding:4px}
.bb-row .th img{max-width:100%;max-height:100%;object-fit:contain}
.bb-row b{display:block;font-size:13.5px;line-height:1.25}
.bb-row small{color:var(--ink-3);font-size:12px}
.bb-row .stepper button{width:32px;height:32px}
.bb-sum{position:sticky;top:90px;border-radius:28px;padding:24px;background:var(--ink);color:#fff;display:flex;flex-direction:column;gap:14px;box-shadow:0 40px 70px -40px rgba(22,35,63,.7)}
.bb-count{display:flex;align-items:baseline;gap:8px}
.bb-count b{font-family:var(--display);font-weight:800;font-size:64px;line-height:1}
.bb-count span{color:rgba(255,255,255,.6)}
.bb-bar{position:relative;height:10px;border-radius:999px;background:rgba(255,255,255,.12)}
.bb-bar i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:999px;background:var(--wet);transition:width .5s cubic-bezier(.2,.8,.2,1)}
.bb-bar .tick{position:absolute;top:-3px;width:3px;height:16px;border-radius:2px;background:rgba(255,255,255,.45);translate:-50% 0}
.bb-next{font-size:14px;color:var(--lagoon);font-weight:600;min-height:1.4em}
.bb-rows{display:flex;flex-direction:column;gap:8px;color:rgba(255,255,255,.75);border-top:1px dashed rgba(255,255,255,.18);padding-top:14px}
.bb-rows>div{display:flex;justify-content:space-between}
.bb-rows .save{color:var(--lagoon);font-weight:600}
.bb-rows .grand{color:#fff;font-family:var(--display);font-weight:800;font-size:34px;margin-top:4px}
.bb-care{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;background:rgba(255,255,255,.07);cursor:pointer;color:#fff;font-size:14px}
.bb-care input{width:18px;height:18px;margin-top:2px;accent-color:var(--aqua);flex:none;padding:0}
.bb-care small{display:block;color:rgba(255,255,255,.6);font-size:12px}
.bb-clear{background:none;color:rgba(255,255,255,.6);padding:6px;font-size:13px;font-weight:600}
.bb-clear:hover{color:#fff}
.bb-mini{display:none}
@media (max-width:900px){.bb-mini{display:flex;position:sticky;bottom:12px;z-index:5;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;text-align:left;box-shadow:0 20px 40px -16px rgba(22,35,63,.7)}.bb-mini em{font-style:normal;color:var(--lagoon)}.bb-mini .num{font-family:var(--display);font-weight:800;font-size:20px;white-space:nowrap}}
.tier b{white-space:nowrap}
.totals .save{color:var(--aqua);font-weight:600}

/* ORDER */
.order{display:grid;grid-template-columns:1.05fr 1fr;gap:20px;align-items:start}
.panel-c{background:var(--paper);border-radius:30px;padding:26px;min-width:0;box-shadow:inset 0 0 0 1px rgba(22,35,63,.08),0 30px 60px -44px rgba(60,40,15,.5)}
.panel-c h3{font-size:30px;margin-bottom:16px}
.lines{display:flex;flex-direction:column;gap:10px}
.line{display:grid;grid-template-columns:60px 1fr auto auto;gap:12px;align-items:center;background:var(--mist);border-radius:18px;padding:8px 10px 8px 8px}
.line .th{width:60px;height:60px;border-radius:14px;background:var(--paper);display:grid;place-items:center;padding:6px}
.line .th img{max-width:100%;max-height:100%;object-fit:contain}
.line b{display:block;font-size:15px}
.line small{color:var(--ink-3)}
.stepper{display:inline-flex;align-items:center;border-radius:999px;background:var(--paper);box-shadow:inset 0 0 0 1px rgba(22,35,63,.1)}
.stepper button{width:36px;height:36px;border:0;background:none;cursor:pointer;font-size:18px;font-weight:700}
.stepper output{min-width:28px;text-align:center;font-weight:700}
.lt{font-weight:700;min-width:56px;text-align:right}
.empty{padding:20px;border-radius:18px;background:repeating-linear-gradient(135deg,var(--mist) 0 12px,var(--paper) 12px 24px);color:var(--ink-2);font-weight:500}
.adder{display:flex;gap:8px;margin-top:14px}
select,input,textarea{font:inherit;color:var(--ink);background:var(--mist);border:0;border-radius:16px;padding:14px 16px;width:100%;min-width:0;box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .2s,background .2s}
select:focus,input:focus,textarea:focus{outline:none;background:var(--paper);box-shadow:inset 0 0 0 2px var(--ocean),0 0 0 5px rgba(22,35,63,.12)}
.pills{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:20px}
.pill{position:relative}
.pill input{position:absolute;opacity:0;width:1px;height:1px}
.pill span{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:14px 16px;border-radius:16px;background:var(--mist);font-weight:700;font-size:14px;cursor:pointer;transition:.25s}
.pill span em{font-style:normal;color:var(--ink-3);font-weight:600}
.pill input:checked+span{background:var(--ink);color:#fff}
.pill input:checked+span em{color:var(--lagoon)}
.pill input:focus-visible+span{box-shadow:0 0 0 3px var(--ocean)}
.pill.wide{grid-column:1/-1}
.totals{margin-top:20px;padding-top:16px;border-top:1px dashed rgba(22,35,63,.12);display:flex;flex-direction:column;gap:8px;color:var(--ink-2)}
.totals div{display:flex;justify-content:space-between}
.totals .grand{color:var(--ink);font-family:var(--display);font-weight:800;font-size:36px;margin-top:6px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fields .full{grid-column:1/-1}
.fields label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;color:var(--ink-2)}
.submit-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}
.status{font-weight:600;font-size:14px;flex-basis:100%}
.status.ok{color:var(--aqua)}.status.err{color:#C42B4C}
.ord{background:var(--mist);border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;font-size:14px}
.ord b{font-size:16px}

.handles{display:flex;flex-direction:column;gap:8px}
.fields label.handle{display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:center;flex-direction:row}
.handle span{font-size:13px;font-weight:700;color:var(--ink-2);display:flex;align-items:center;gap:8px}
.handle span img{width:26px;height:26px;object-fit:contain}
.at{position:relative}
.at::before{content:"@";position:absolute;left:14px;top:50%;translate:0 -50%;font-weight:700;color:var(--ocean);pointer-events:none}
.at input{padding-left:32px}
.hint{font-size:12.5px;font-weight:500;color:var(--ink-3)}
/* MODAL */
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:rgba(22,35,63,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.sheet{position:relative;width:min(980px,100%);max-height:100%;overflow:auto;background:var(--paper);border-radius:32px;display:grid;grid-template-columns:1.1fr 1fr;box-shadow:0 50px 100px -40px rgba(22,35,63,.6)}
.flip-stage{position:relative;aspect-ratio:1;background:#F1E7D5;perspective:1400px;display:grid;place-items:center;overflow:hidden}
.flipper{position:relative;width:70%;height:66%;margin-bottom:9%;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.3,1.3,.4,1);cursor:pointer}
.flipper.back{transform:rotateY(180deg)}
.flipper .face{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.flipper .face img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 30px 24px rgba(60,40,15,.25))}
.flipper .face.b{transform:rotateY(180deg)}
.shop-pic{position:absolute;inset:0;opacity:0;transition:opacity .5s;pointer-events:none}
.shop-pic img{width:100%;height:100%;object-fit:cover}
.flip-stage.shop .shop-pic{opacity:1}
.views{position:absolute;left:14px;bottom:14px;z-index:3;display:flex;gap:6px;padding:5px;border-radius:999px;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);box-shadow:0 8px 20px -12px rgba(22,35,63,.5)}
.views button{border:0;background:none;padding:8px 14px;border-radius:999px;font-weight:700;font-size:13px;cursor:pointer}
.views button[aria-pressed="true"]{background:var(--ink);color:#fff}
.info{padding:32px;display:flex;flex-direction:column;gap:16px;min-width:0}
.info h3{font-size:clamp(28px,3.4vw,40px);overflow-wrap:anywhere}
.info .spec{color:var(--ink-2)}
.bigprice{font-family:var(--display);font-weight:800;font-size:54px;line-height:1}
.close{position:absolute;right:14px;top:14px;z-index:5;width:42px;height:42px;border-radius:50%;border:0;background:var(--paper);box-shadow:0 8px 20px -10px rgba(22,35,63,.5);cursor:pointer;font-size:22px}

/* ABOUT + FOOTER */
.about{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.person{position:relative;border-radius:30px;padding:26px;min-height:260px;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;overflow:hidden;color:#fff;background:var(--wet)}
.person:nth-child(2){background:var(--aqua)}
.person{background:var(--ocean)}
.person .big{position:absolute;right:-6px;top:-34px;font-family:var(--display);font-weight:800;font-size:210px;line-height:1;color:rgba(255,255,255,.16)}
.person b{font-family:var(--display);font-size:34px}
.person span{opacity:.85}
.facts{display:flex;flex-direction:column;gap:14px;margin-top:26px}
.facts div{display:flex;gap:14px;align-items:baseline}
.facts b{font-family:var(--display);font-weight:800;font-size:28px;min-width:96px}
.facts span{color:var(--ink-2)}
footer{position:relative;background:var(--ink);color:#fff;padding-block:90px max(40px,env(safe-area-inset-bottom,0px));overflow:hidden}
.wave{position:absolute;left:0;right:0;top:-1px;height:80px;width:100%}
.foot-big{font-family:var(--display);font-weight:800;font-size:clamp(56px,12vw,180px);line-height:.9;letter-spacing:-.04em}
.foot-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:36px;color:rgba(255,255,255,.65)}

@media (max-width:960px){
  .hero-grid,.order,.about,.sheet{grid-template-columns:1fr}
  .hero-stage{max-width:440px}
  .steps,.pk-grid,.bb{grid-template-columns:1fr}
  .bb-sum{position:relative;top:0}
  .starters{grid-template-columns:1fr 1fr}.starters>.mono{grid-column:1/-1}
  .stat-grid{grid-template-columns:1fr 1fr}
  .cat{grid-template-columns:1fr;padding:24px}
  .nav-links a:not(.btn){display:none}
}
@media (max-width:760px){.tiers{grid-template-columns:1fr 1fr 1fr;gap:8px}.tier{flex-direction:column;align-items:flex-start;padding:14px;border-radius:18px}.tier b{font-size:22px}.tier span{font-size:12px}.starters{grid-template-columns:1fr}.hero-stage{overflow:hidden}}
@media (max-width:540px){.tiers{grid-template-columns:1fr 1fr 1fr;gap:6px}.tier{flex-direction:column;align-items:flex-start;padding:12px;border-radius:16px}.tier b{font-size:19px}.tier span{font-size:11px}.starters{grid-template-columns:1fr}.bb-items{grid-template-columns:1fr}.fields,.pills,.duo{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.prod{border-radius:22px}.prod .meta{flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px 14px}.prod .meta b{font-size:14px}.prod .meta small{font-size:12px}.prod .price{font-size:20px}.prod .tag{font-size:9px;left:10px;top:10px;padding:4px 8px}.pgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pg{height:110px}.line{grid-template-columns:52px 1fr auto}.line .th{width:52px;height:52px}.lt{display:none}.logo span.t{font-size:17px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* ===== HUMAN PASS: print-shop look. Flat paper, ink rules, hard edges, real photos ===== */
.wrap{padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:.92}
h3{font-family:var(--head);font-weight:800;letter-spacing:-.02em;line-height:1.05}
.mono{font-family:var(--head);text-transform:none;letter-spacing:0;font-size:13px;font-weight:700}
.eyebrow{font-family:var(--head);letter-spacing:0;text-transform:none;font-size:15px;font-weight:700;color:var(--ocean)}
.eyebrow::before{width:28px;height:2px;background:var(--ocean)}
.wet-text{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:var(--ocean)}
.hero .blobs,.lineup .blobs,.stats .blobs,#ripples,.progress{display:none}
body::after{opacity:.09}
/* nav: plain bar, not a floating glass pill */
.nav{padding:0;top:0}
.nav-in{max-width:none;border-radius:0;padding:12px max(24px,calc((100vw - 1220px)/2 + 24px));background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-bottom:1px solid var(--ink)}
.logo img{height:40px}
.nav-links a{border-radius:6px;font-family:var(--head);font-weight:700;color:var(--ink)}
.nav-links a:hover{background:transparent;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
/* buttons: printed-sticker style */
.btn{border-radius:8px;font-family:var(--head);font-weight:800;letter-spacing:-.01em;box-shadow:none!important;border:1px solid var(--ink);transition:translate .15s,box-shadow .15s}
.btn:hover{translate:-2px -2px;box-shadow:4px 4px 0 var(--ink)!important;text-decoration:none!important}
.btn:active{translate:0 0;box-shadow:none!important}
.btn-wet{background:var(--ocean)}
.btn-line{background:var(--paper);backdrop-filter:none}
.badge{border-radius:4px;color:var(--ink)}
.nav-links .btn{padding:10px 16px}
.nav-links .btn-wet{color:#fff}
.bb-row .th,.line .th,.bth{position:relative;overflow:hidden;padding:0}
.bb-row .th img,.line .th img,.bth img{position:absolute;inset:4px;width:calc(100% - 8px);height:calc(100% - 8px);max-width:none;max-height:none;object-fit:contain}
.st-item img{object-fit:contain;flex:none}
/* hero */
.hero{min-height:auto;padding-block:130px 40px;align-items:flex-start;background:var(--bg)}
.hero-grid{grid-template-columns:1.05fr .95fr;gap:48px}
.hero h1{font-size:clamp(46px,6.2vw,92px);margin-top:14px;line-height:.92}
.hero h1 .hl{overflow:visible;padding-bottom:.02em}
.hero .lede{color:var(--ink-2)}
.note{font-family:var(--hand);font-size:26px;color:var(--ocean);font-weight:700;display:inline-block;rotate:-2deg}
.hero-foot{margin-top:40px;padding-top:18px;border-top:1px solid var(--ink);gap:0;font-family:var(--head);font-weight:700;font-size:14px;color:var(--ink)}
.hero-foot{justify-content:space-between;gap:10px 24px}
.hero-foot i{display:inline-block;width:20px;height:20px;flex:none;border-radius:0;box-shadow:none;background:url(brand/mark.webp) center/contain no-repeat}
/* hero photos: clean three-up grid, framed like the product cards */
.hero-photos{display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:1fr 1fr;gap:12px;aspect-ratio:1/1;max-width:560px;width:100%;justify-self:center}
.ph{position:relative;margin:0;min-height:0;overflow:hidden;border:1px solid var(--ink);border-radius:12px;background:var(--mist)}
.ph1{grid-row:1/3}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* marquee: small ticker */
.mq{padding-block:14px;background:var(--ink);border-block:1px solid var(--ink)}
.mq-row{font-family:var(--head);font-weight:800;font-size:clamp(20px,2.4vw,28px);letter-spacing:-.01em;color:var(--lagoon)}
.mq-row.out{display:none}
/* cards: flat paper with ink rule, no soft glows */
.cat,.step,.prod,.bb-group,.panel-c,.starter,.tier,.sheet,.ord{border-radius:12px!important;box-shadow:none!important;border:1px solid var(--ink)}
.cat .pnum{display:none}
.cat{background:var(--paper)}
.lineup{background:var(--mist);border-top:1px solid var(--ink)}
.price-bubble{border-radius:6px;background:var(--bg);border:1px dashed var(--ink)}
.price-bubble b{font-family:var(--head)}
.pg{border-radius:8px;background:var(--bg)}
.pg img{filter:drop-shadow(0 8px 6px rgba(22,35,63,.18))}
.step .n{font-family:var(--display);font-weight:400}
.step-vis{border-radius:8px;box-shadow:none;border:1px dashed rgba(22,35,63,.3);background:var(--bg)}
.prod{transition:translate .15s,box-shadow .15s}
.prod:hover{translate:-3px -3px;box-shadow:5px 5px 0 var(--ink)!important}
.prod .shine{display:none}
.prod .well{background:#EFE5D3;border-bottom:1px solid var(--ink)}
.prod .tag{border-radius:4px;font-family:var(--head);letter-spacing:0;text-transform:none;font-size:12px;box-shadow:none;background:var(--paper);color:var(--ink);border:1px solid var(--ink)}
.prod .price,.bigprice,.bb-count b,.totals .grand,.bb-rows .grand,.stat b,.facts b,.tier b,.price-bubble b{font-family:var(--head);font-weight:800;letter-spacing:-.03em}
.plus{border-radius:6px}
.chip{border-radius:6px;font-family:var(--head);background:transparent;border:1px solid var(--ink);color:var(--ink)}
.stepper{border-radius:6px;box-shadow:inset 0 0 0 1px var(--ink)}
select,input,textarea{border-radius:8px;background:var(--paper);box-shadow:inset 0 0 0 1px rgba(22,35,63,.25)}
select:focus,input:focus,textarea:focus{box-shadow:inset 0 0 0 2px var(--ink)}
.pill span,.line,.bb-row,.st-item,.ord{border-radius:8px}
.bb-row.has{box-shadow:inset 0 0 0 2px var(--ink);background:#FBEFE4}
.bb-sum{border-radius:12px;box-shadow:6px 6px 0 var(--ocean)}
.bb-mini{border-radius:10px}
.tier.on{box-shadow:4px 4px 0 var(--ocean)!important}
.stats{border-block:1px solid var(--ink)}
.person{border-radius:12px;border:1px solid var(--ink)}
.person .big{font-family:var(--display);font-weight:400}
.duo{align-items:start}
.person-ph{position:relative;margin:0;background:#fff;padding:10px 10px 0;box-shadow:0 1px 2px rgba(22,35,63,.2),0 14px 28px -14px rgba(22,35,63,.4)}
.person-ph img{width:100%;aspect-ratio:4/5;object-fit:cover}
.person-ph figcaption{font-family:var(--hand);font-size:22px;font-weight:700;color:var(--ink-2);padding:6px 4px 12px;line-height:1.05}
.person-ph figcaption b{display:block;font-size:32px;color:var(--ink)}
.person-ph::after{content:"";position:absolute;top:-12px;left:50%;width:96px;height:26px;translate:-50% 0;rotate:-4deg;background:rgba(242,201,148,.75);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.person-ph.p1{rotate:-2deg}
.person-ph.p2{rotate:2.5deg;margin-top:30px}
.person-ph.p2::after{rotate:5deg}
.views,.close{border-radius:8px}
.views button{border-radius:6px}
.foot-big{font-family:var(--display);font-weight:400;letter-spacing:0}
#order{border-top:1px solid var(--ink)}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:36px}.hero-photos{max-width:480px}.hero{padding-top:110px}.note{font-size:24px;line-height:1.1}}
@media (max-width:540px){.duo{grid-template-columns:1fr 1fr!important;gap:14px}.person-ph{padding:7px 7px 0}.person-ph figcaption{font-size:15px;padding:4px 2px 9px}.person-ph figcaption b{font-size:22px}.person-ph.p2{margin-top:18px}.hero-photos{gap:8px}.hero-foot{font-size:12.5px;display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.hero-foot i{width:16px;height:16px}}
/* TAP DEMO */
.demo{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:22px;align-items:center}
.demo-stage{position:relative;aspect-ratio:1/1;border:1px solid var(--ink);border-radius:12px;overflow:hidden;background:#efe5d4}
.demo-stage>canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.demo-fade{position:absolute;inset:0;background:#efe5d4;opacity:0;pointer-events:none}
.demo-fallback{position:absolute;inset:0;display:none;align-items:center;justify-content:center}
.demo-stage.fallback .demo-fallback{display:flex}
.demo-stage.fallback>canvas{display:none}
.demo-phone{height:86%;aspect-ratio:600/1300;border-radius:44px;padding:9px;background:#2b2d31;box-shadow:0 30px 50px -24px rgba(22,35,63,.5)}
.demo-phone canvas{width:100%;height:100%;border-radius:36px;display:block}
.demo-pp{position:absolute;right:12px;bottom:12px;z-index:3;width:40px;height:40px;border-radius:8px;border:1px solid var(--ink);background:var(--paper);color:var(--ink);cursor:pointer;display:grid;place-items:center;padding:0}
.demo-pp .i-play,.demo-pp.paused .i-pause{display:none}.demo-pp.paused .i-play{display:block}
.demo-pp:focus-visible,.demo-steps button:focus-visible{outline:3px solid var(--ocean);outline-offset:2px}
.demo-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.demo-steps button{width:100%;text-align:left;display:grid;grid-template-columns:44px 1fr;gap:2px 14px;align-items:center;padding:14px 16px;border:1px solid var(--ink);border-radius:12px;background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;transition:background .25s,color .25s}
.demo-steps .n{grid-row:span 2;width:44px;height:44px;border-radius:8px;display:grid;place-items:center;font-family:var(--display);font-size:22px;background:var(--bg);border:1px solid var(--ink);transition:background .25s,color .25s}
.demo-steps b{font-family:var(--head);font-weight:800;font-size:19px;line-height:1.15}
.demo-steps .d{color:var(--ink-2);font-size:14.5px;line-height:1.35}
.demo-steps .bar{grid-column:1/-1;display:block;height:4px;border-radius:2px;background:rgba(22,35,63,.12);overflow:hidden;margin-top:10px}
.demo-steps .bar i{display:block;height:100%;width:calc(var(--p,0)*100%);background:var(--ocean)}
.demo-steps button.on{background:var(--ink);color:var(--paper)}
.demo-steps button.on .n{background:var(--ocean);border-color:var(--ocean);color:#fff}
.demo-steps button.on .d{color:rgba(255,251,243,.75)}
.demo-steps button.on .bar{background:rgba(255,255,255,.18)}
@media (max-width:960px){.demo{grid-template-columns:1fr}.demo-stage{aspect-ratio:4/5}.demo-steps{display:grid;grid-template-columns:1fr 1fr}}
@media (max-width:540px){.demo-steps{gap:8px}.demo-steps button{grid-template-columns:32px 1fr;padding:11px 12px;gap:2px 10px}.demo-steps .n{width:32px;height:32px;font-size:17px}.demo-steps b{font-size:15.5px}.demo-steps .d{display:none}.demo-steps .bar{margin-top:8px}}

/* ===== TUNE-UP PASS: same look, less work for the phone ===== */
/* no sideways drift on phones (clip doesn't break the sticky bundle summary) */
html{overflow-x:hidden;scroll-behavior:auto;scroll-padding-top:calc(76px + env(safe-area-inset-top,0px))}
body{overflow-x:visible}
@supports (overflow:clip){html,body{overflow-x:clip}}
/* paper grain: same texture, but a plain layer instead of a full-screen blend the GPU redoes every scroll frame */
body::after{mix-blend-mode:normal;opacity:.09;transform:translateZ(0);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.08 0 0 0 0 0.06 0 0 0 0 0.03 0 0 0 .8 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
/* fewer GPU layers */
.btn{will-change:auto}
.tier{backdrop-filter:none;-webkit-backdrop-filter:none}
/* WHO WE SET UP: one big statement + real installs (replaces the scrolling ticker) */
.who{background:var(--ink);color:var(--paper);padding-block:110px;border-block:1px solid var(--ink)}
.who-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center}
.who .eyebrow{color:var(--lagoon)}
.who .eyebrow::before{background:var(--lagoon)}
.who-title{margin-top:18px;font-size:clamp(44px,5.6vw,84px);line-height:.98;letter-spacing:-.01em;color:var(--paper)}
.who-title em{font-style:normal;color:var(--lagoon)}
.who-copy p{margin-top:26px;max-width:46ch;font-size:18px;color:rgba(255,251,243,.72)}
.who-copy .btn{margin-top:30px;border-color:var(--paper)}
.who-copy .btn:hover{box-shadow:4px 4px 0 var(--lagoon)!important}
.who-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.who-photos figure{margin:0;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#22304f}
.who-photos img{width:100%;height:100%;object-fit:cover}
.who-photos figure:nth-child(2n){translate:0 36px}
@media (max-width:960px){.who-grid{grid-template-columns:minmax(0,1fr);gap:48px}.who-photos{max-width:560px}}
@media (max-width:540px){.who{padding-block:72px}.who-copy p{font-size:16.5px}.who-photos{gap:8px}.who-photos figure:nth-child(2n){translate:0 22px}.who{padding-bottom:94px}}
/* product cards: content starts at the top (buttons center it by default, which left a strip above some images) */
.prod{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}
.prod .well{flex:none}
.prod .meta{flex:1}
/* SHOP: one place to browse + add, savings shown up front */
.savings{display:flex;flex-direction:column;gap:12px;margin-bottom:30px}
.savings .tiers{margin:0}
.cat-spec{margin:-14px 0 24px;min-height:1.5em;color:var(--ink-2)}
.cat-spec:empty{margin:-14px 0 10px;min-height:0}
.prod .tag{display:none}
.shop-foot{display:flex;justify-content:space-between;align-items:center;gap:14px 20px;flex-wrap:wrap;margin-top:28px;padding:18px 20px;border:1px solid var(--ink);border-radius:12px;background:var(--paper)}
.shop-foot b{display:block;font-family:var(--head);font-weight:800;font-size:20px}
.shop-foot span{display:block;margin-top:2px;font-size:14px;font-weight:600;color:var(--ocean)}
.empty a{color:var(--ocean);font-weight:700}
@media (max-width:540px){.shop-foot.has{position:sticky;bottom:max(12px,env(safe-area-inset-bottom,0px));z-index:5}.shop-foot .btn{width:100%}}
/* crisp text: no full-page grain sitting on top of the words */
body::after{display:none}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
/* team photos: boxed like the rest of the site, no tape or tilt */
.person-ph{rotate:none!important;margin-top:0!important;padding:0;background:var(--paper);border:1px solid var(--ink);border-radius:12px;overflow:hidden;box-shadow:none}
.person-ph::after{display:none}
.person-ph img{display:block;border-bottom:1px solid var(--ink)}
.person-ph figcaption{font-family:var(--body);font-size:14px;font-weight:500;line-height:1.3;color:var(--ink-2);padding:12px 14px 14px}
.person-ph figcaption b{font-family:var(--head);font-weight:800;font-size:20px;line-height:1.2;color:var(--ink)}
@media (max-width:540px){.person-ph{padding:0}.person-ph figcaption{font-size:12.5px;padding:9px 10px 11px}.person-ph figcaption b{font-size:17px}}
/* pause looping animations while their section is off screen */
.is-off,.is-off *,.is-off *::before,.is-off *::after{animation-play-state:paused!important}
/* grids that could push past the screen edge on small phones */
.bb-row{grid-template-columns:48px minmax(0,1fr) auto}
.line{grid-template-columns:60px minmax(0,1fr) auto auto}
.bb-row b,.line b{overflow-wrap:anywhere}
@media (max-width:960px){.hero-grid,.order,.about,.sheet,.steps,.pk-grid,.bb,.cat{grid-template-columns:minmax(0,1fr)}.stat-grid,.demo-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.tiers{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:540px){.tier b{font-size:clamp(15px,5vw,19px)}.stat b{font-size:clamp(40px,13vw,54px)}.bb-items{grid-template-columns:minmax(0,1fr)}.line{grid-template-columns:52px minmax(0,1fr) auto}.hero-foot{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== MULTI-PAGE SITE ===== */
/* smooth cross-page fade where supported; the header stays put */
::view-transition-old(root),::view-transition-new(root){animation-duration:.22s;animation-timing-function:cubic-bezier(.4,0,.2,1)}
html{background:var(--bg)}
.nav{view-transition-name:site-nav}
.skip{position:absolute;left:12px;top:-60px;z-index:300;padding:10px 14px;border-radius:8px;background:var(--ink);color:var(--paper);font-weight:700;text-decoration:none}
.skip:focus{top:12px}
.nav-links a[aria-current="page"]:not(.btn){text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
/* every page fills the screen, so the footer always sits at the bottom */
html,body{margin:0;padding:0}
body{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
main{flex:1 0 auto}
.page-top{padding-top:150px}
@media (max-width:960px){.page-top{padding-top:118px}}
.sec-head h1{font-size:clamp(46px,7.5vw,112px);margin-top:12px}
#order.page-top{background:var(--bg);border-top:0}
@keyframes rise{from{opacity:0;transform:translateY(22px)}}
/* home: how-it-works teaser */
.home-how{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.home-how-pic{margin:0;aspect-ratio:1;border:1px solid var(--ink);border-radius:12px;overflow:hidden;background:var(--mist)}
.home-how-pic img{width:100%;height:100%;object-fit:cover}
.home-how-copy .big{font-family:var(--head);font-weight:700;font-size:clamp(22px,2.2vw,30px);line-height:1.3;color:var(--ink);letter-spacing:-.01em}
.home-how-copy p+p{margin-top:18px;font-size:18px;color:var(--ink-2)}
.home-how-copy .btn{margin-top:28px}
.home-steps{border-top:1px solid var(--ink)}
@media (max-width:960px){.home-how{grid-template-columns:minmax(0,1fr);gap:32px}.home-how-pic{max-width:520px}}
/* FAQ */
.faq-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
.faq-side h2{font-size:clamp(44px,5.5vw,84px);margin-top:12px}
.faq-side p{margin-top:18px;color:var(--ink-2);font-size:18px;max-width:30ch}
.faq{border-top:1px solid var(--ink)}
.faq details{border-bottom:1px solid var(--ink)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 2px;font-family:var(--head);font-weight:800;font-size:clamp(18px,1.6vw,22px);letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:14px;height:14px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);rotate:45deg;translate:0 -4px;transition:rotate .2s,translate .2s}
.faq details[open] summary::after{rotate:225deg;translate:0 4px}
.faq summary:focus-visible{outline:3px solid var(--ocean);outline-offset:2px}
.faq details p{padding:0 2px 22px;max-width:62ch;font-size:17px;color:var(--ink-2)}
@media (max-width:960px){.faq-wrap{grid-template-columns:minmax(0,1fr);gap:28px}}
/* closing band, same on every page */
.cta-band{background:var(--bg);border-top:1px solid var(--ink);padding-block:100px 110px}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:flex-end;gap:28px 40px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(40px,5.6vw,84px);margin-top:12px;max-width:14ch}
.cta-band .cta{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:540px){.cta-band{padding-block:72px 84px}}
/* footer: identical on every page */
footer{margin-top:-1px}
.foot-big{margin:0}
.foot-links{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:40px}
.foot-links a{font-family:var(--head);font-weight:700;font-size:16px;color:var(--paper);text-decoration:none}
.foot-links a:hover{text-decoration:underline;text-underline-offset:4px}
/* toast + close-up open */
#toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom,0px));translate:-50% 0;z-index:120;max-width:calc(100vw - 32px);text-align:center;background:var(--ink);color:var(--paper);font-weight:700;padding:14px 20px;border-radius:10px;box-shadow:0 18px 40px -14px rgba(22,35,63,.6)}
#toast.in{animation:toastIn .35s cubic-bezier(.2,.8,.2,1)}
@keyframes toastIn{from{opacity:0;transform:translateY(16px)}}
.modal:not([hidden]){animation:fadeIn .2s ease}
.modal:not([hidden]) .sheet{animation:sheetIn .35s cubic-bezier(.2,.8,.2,1)}
@keyframes fadeIn{from{opacity:0}}
@keyframes sheetIn{from{opacity:0;transform:translateY(30px) scale(.97)}}
@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
@media (max-width:540px){.chips{gap:6px}.chip{padding:9px 12px;font-size:14px}}

/* ===== CLEAN EDGES: no outline unless it's needed; shapes separate by fill and soft shadow ===== */
:root{--lift:0 1px 2px rgba(22,35,63,.05),0 12px 32px -16px rgba(22,35,63,.22);--lift-hi:0 2px 4px rgba(22,35,63,.06),0 22px 44px -18px rgba(22,35,63,.3)}
/* photos: rounded corners only */
.ph,.home-how-pic,.who-photos figure,.demo-stage{border:0!important}
.ph,.home-how-pic{border-radius:14px}
/* cards + panels */
.cat,.step,.prod,.bb-group,.panel-c,.starter,.tier,.sheet,.ord,.shop-foot,.person-ph{border:0!important;box-shadow:var(--lift)!important;border-radius:14px!important}
.sheet{box-shadow:0 40px 80px -30px rgba(22,35,63,.5)!important}
.prod .well{border-bottom:0}
.prod{transition:translate .2s ease,box-shadow .2s ease}
.prod:hover{translate:0 -4px;box-shadow:var(--lift-hi)!important}
.person-ph{background:var(--paper)}
.person-ph img{border-bottom:0!important}
/* buttons: solid fills, soft hover lift */
.btn{border:0!important;transition:translate .15s ease,box-shadow .15s ease,background .15s ease}
.btn:hover{translate:0 -2px;box-shadow:0 10px 22px -10px rgba(22,35,63,.45)!important}
.btn:active{translate:0 0;box-shadow:none!important}
.btn-line{background:var(--paper);box-shadow:var(--lift)!important}
.who-copy .btn:hover{box-shadow:0 10px 22px -10px rgba(0,0,0,.5)!important}
.chip{border:0!important;background:var(--mist);color:var(--ink)}
.chip:hover{background:var(--mist-2)}
.chip[aria-pressed="true"]{background:var(--ink);color:#fff}
.tier{background:var(--paper)}
.tier.on{box-shadow:var(--lift-hi)!important}
.stepper{box-shadow:none;background:var(--mist)}
.views,.close{box-shadow:0 6px 16px -8px rgba(22,35,63,.4)}
/* form fields: filled, ring only on focus */
select,input,textarea{background:var(--mist);box-shadow:none}
select:focus,input:focus,textarea:focus{background:var(--paper);box-shadow:0 0 0 2px var(--ink)}
.empty{background:var(--mist)}
/* demo */
.demo-steps button{border:0;background:var(--paper);box-shadow:var(--lift)}
.demo-steps .n{border:0;background:var(--mist)}
.demo-pp{border:0;box-shadow:0 6px 16px -8px rgba(22,35,63,.45)}
/* section dividers off; sections separate by color and space */
.nav-in{border-bottom:0;box-shadow:0 1px 0 rgba(22,35,63,.07)}
.hero-foot{border-top:0;padding-top:0}
.who,.stats,.home-steps,.lineup,#order{border:0!important}
.stat{border-left:0;padding-left:0}
/* FAQ as soft cards instead of ruled lines */
.faq{border-top:0;display:flex;flex-direction:column;gap:10px}
.faq details{border-bottom:0;background:var(--paper);border-radius:14px;box-shadow:var(--lift);padding:0 20px}
.faq summary{padding:20px 0}
.faq details p{padding:0 0 20px}
/* closing band sits on a slightly deeper cream so it reads as its own block; the footer wave matches it */
.cta-band{border-top:0;background:var(--mist)}

/* stats: thin gold dividers between the numbers (kept) */
.stat{border-left:1px solid rgba(242,201,148,.35);padding-left:20px}

/* ===== QUIET MOTION: nothing is ever hidden; content only settles into place ===== */
@media (prefers-reduced-motion:no-preference){
  /* nav links: underline slides in on hover */
  .nav-links a:not(.btn){position:relative;text-decoration:none!important}
  .nav-links a:not(.btn)::after{content:"";position:absolute;left:13px;right:13px;bottom:5px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s cubic-bezier(.2,.7,.2,1)}
  .nav-links a:not(.btn):hover::after,.nav-links a[aria-current="page"]:not(.btn)::after{transform:scaleX(1)}
  /* product photo nudges up a touch on hover */
  .prod .well img{transition:translate .35s cubic-bezier(.2,.7,.2,1),scale .35s cubic-bezier(.2,.7,.2,1)}
  .prod:hover .well img{translate:0 -6px;rotate:none;scale:1.04}
  /* FAQ answers open smoothly where supported */
  :root{interpolate-size:allow-keywords}
  .faq details::details-content{block-size:0;overflow:hidden;transition:block-size .3s cubic-bezier(.2,.7,.2,1),content-visibility .3s allow-discrete}
  .faq details[open]::details-content{block-size:auto}
  /* photos ease from a slight zoom to rest as you scroll past (runs on the GPU, no script) */
  @supports (animation-timeline:view()){
    .who-photos img,.home-how-pic img,.person-ph img{animation:settle linear both;animation-timeline:view();animation-range:entry 0% cover 45%}
    .who-photos figure:nth-child(2n){animation:drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
  }
}
@keyframes settle{from{transform:scale(1.1)}to{transform:scale(1)}}
@keyframes drift{from{translate:0 70px}to{translate:0 0}}
@media (prefers-reduced-motion:no-preference) and (max-width:540px){@supports (animation-timeline:view()){.who-photos figure:nth-child(2n){animation-name:driftSm}}}
@keyframes driftSm{from{translate:0 40px}to{translate:0 4px}}

/* ===== FOOTER: links up top beside the logo, moving wave edge ===== */
.foot-top{display:flex;justify-content:space-between;align-items:center;gap:20px 40px;flex-wrap:wrap;margin-bottom:56px}
.foot-logo img{display:block;height:64px;width:auto}
.foot-links{margin-top:0;gap:8px 30px}
.foot-links a{font-size:16px;opacity:.85;transition:opacity .2s}
.foot-links a:hover{opacity:1}
.foot-row{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,251,243,.12)}
@media (max-width:540px){.foot-top{margin-bottom:40px}.foot-logo img{height:52px}.foot-links{gap:10px 16px}.foot-links a{font-size:15px}}
/* footer wave: gently swells in place (native SVG animation, paused when the footer is off screen) */
.wave{position:absolute;left:0;right:0;top:-1px;height:80px;width:100%;display:block;pointer-events:none}
@media (max-width:540px){.wave{height:56px}}

/* ===== FEWER COLOR BANDS: stats + closing band share the page cream; navy is kept for the footer and one feature block ===== */
.stats{background:var(--bg);color:var(--ink);padding-block:70px 90px}
.stat{border-left:1px solid rgba(22,35,63,.16)}
.stat b,.stat:nth-child(odd) b{color:var(--ink)}
.stat:nth-child(odd) b{color:var(--ocean)}
.stat span{color:var(--ink-2)}
.cta-band{background:var(--bg)}

/* about: three quick facts in a row, divided like the stats */
.about-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px}
.about-stats div{padding:0 20px;border-left:1px solid rgba(22,35,63,.16)}
.about-stats div:first-child{padding-left:0;border-left:0}
.about-stats b{display:block;font-family:var(--head);font-weight:800;font-size:clamp(28px,3vw,40px);letter-spacing:-.03em;line-height:1.05;color:var(--ink)}
.about-stats div:nth-child(odd) b{color:var(--ocean)}
.about-stats span{display:block;margin-top:6px;font-size:15px;line-height:1.35;color:var(--ink-2)}
@media (max-width:540px){.about-stats div{padding:0 12px}.about-stats b{font-size:24px}.about-stats span{font-size:13.5px}}

/* about intro spacing */
#about.page-top{padding-bottom:100px}
#about .about{gap:56px}
#about .about h1{margin-top:16px!important}
#about .about p{margin-top:26px!important}
@media (max-width:960px){#about.page-top{padding-bottom:72px}#about .about{gap:36px}}

/* ===== ENTRANCE SLIDE: set up before first paint, transform/opacity only (GPU), short stagger ===== */
@keyframes slideIn{from{opacity:0;transform:translate3d(0,26px,0)}to{opacity:1;transform:none}}
html.anim-in :is(.hero .note,#heroTitle .hl,.hero .lede,.hero .cta,.ph,.hero-foot,.page-top .eyebrow,.page-top h1,.page-top .sec-head p,.page-top .about p,.page-top .duo,.page-top .demo,.page-top .savings,.page-top .order){animation:slideIn .75s cubic-bezier(.16,1,.3,1) both;will-change:transform,opacity}
html.anim-in :is(#heroTitle .hl:nth-child(2),.page-top h1){animation-delay:.06s}
html.anim-in :is(#heroTitle .hl:nth-child(3),.hero .lede,.page-top .sec-head p,.page-top .about p){animation-delay:.12s}
html.anim-in :is(.hero .cta,.ph1,.page-top .duo,.page-top .demo,.page-top .savings,.page-top .order){animation-delay:.18s}
html.anim-in :is(.ph2,.hero-foot){animation-delay:.24s}
html.anim-in .ph3{animation-delay:.3s}

/* ===== HOME: no repeated photo blocks. Who = type list, How = three steps ===== */
.who-grid{align-items:start}
.who-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,251,243,.18)}
.who-list li{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:18px 0;border-bottom:1px solid rgba(255,251,243,.18)}
.who-list b{font-family:var(--display);font-weight:400;font-size:clamp(26px,2.7vw,38px);line-height:1.05;color:var(--paper);letter-spacing:-.01em}
.who-list li:nth-child(odd) b{color:var(--lagoon)}
.who-list span{flex:none;max-width:24ch;text-align:right;font-size:15px;line-height:1.35;color:rgba(255,251,243,.66)}
.home-steps-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:none}
.home-steps-list li{position:relative;display:flex;flex-direction:column;gap:10px;padding:28px 26px 30px;border-radius:14px;background:var(--paper);box-shadow:0 1px 2px rgba(22,35,63,.08),0 18px 36px -26px rgba(22,35,63,.35)}
.home-steps-list .n{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--ocean);color:#fff;font-family:var(--head);font-weight:800;font-size:18px}
.home-steps-list b{margin-top:8px;font-family:var(--display);font-weight:400;font-size:clamp(34px,3.4vw,48px);line-height:1;color:var(--ink)}
.home-steps-list p{margin:0;font-size:16.5px;line-height:1.45;color:var(--ink-2)}
.home-steps-btn{margin-top:30px}
@media (max-width:960px){.who-grid{gap:40px}}
@media (max-width:760px){.home-steps-list{grid-template-columns:minmax(0,1fr);gap:12px}.home-steps-list li{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:16px;padding:20px 20px 22px}.home-steps-list b{margin-top:0}.home-steps-list p{flex-basis:100%}}
@media (max-width:540px){.who-list li{flex-direction:column;align-items:flex-start;gap:4px;padding:16px 0}.who-list span{text-align:left;max-width:none;font-size:14.5px}}
.home-steps{padding-bottom:84px}
@media (max-width:540px){.home-steps{padding-bottom:52px}.home-steps+.stats{padding-top:44px}}
