/* KanKan website. One shared stylesheet. No external fonts or assets. */

:root{
  --bg:#fbfbf8;--bg-elev:#ffffff;--fg:#15201f;--muted:#55605f;--faint:#6b7574;
  --brand:#0b5e5a;--brand-ink:#fafaf6;--brand-soft:rgba(11,94,90,.08);
  --accent:#ffb03a;--accent-soft:rgba(255,176,58,.2);--accent-ink:#8a5300;
  --link:#0b5e5a;--focus:#0b7c76;
  --rule:rgba(21,32,31,.1);--card:#f1f2ed;
  --shadow:0 1px 2px rgba(11,42,40,.05),0 8px 24px -10px rgba(11,42,40,.14);
  --error:#b3261e;--ok:#1e7a3a;--field:#fff;
  --header-bg:rgba(251,251,248,.78);
  --radius:1.1rem;--max:72rem;
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#0c1312;--bg-elev:#141d1c;--fg:#ecf1ef;--muted:#a3b0ae;--faint:#83908e;
  --brand:#0e5a56;--brand-ink:#f4f7f5;--brand-soft:rgba(94,208,197,.1);
  --accent:#ffb03a;--accent-soft:rgba(255,176,58,.16);--accent-ink:#ffc46b;
  --link:#6fd3c8;--focus:#6fd3c8;
  --rule:rgba(236,241,239,.1);--card:#162120;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 10px 28px -12px rgba(0,0,0,.55);
  --error:#ff8a80;--ok:#7ddc94;--field:#141d1c;
  --header-bg:rgba(12,19,18,.72);
}}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:4.5rem}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;text-rendering:optimizeLegibility}
img,svg,video{display:block;max-width:100%}

/* Page column (legal, support, contact, 404) */
.wrap{max-width:42rem;margin:0 auto;padding:0 1.25rem 0}
main{padding:2.5rem 0 4rem}

/* Type */
h1{font-size:clamp(2.1rem,5.5vw,2.75rem);line-height:1.08;letter-spacing:-.03em;font-weight:700;margin:1rem 0 1rem}
h2{font-size:1.4rem;line-height:1.25;letter-spacing:-.015em;font-weight:650;margin:2.75rem 0 .6rem}
h3{font-size:1.06rem;line-height:1.35;letter-spacing:-.005em;font-weight:620;margin:1.75rem 0 .3rem}
p,li{margin:.6rem 0}
ul,ol{padding-left:1.3rem}
strong{font-weight:620}
a{color:var(--link);text-decoration-thickness:.07em;text-underline-offset:.18em;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent)}
a:hover{text-decoration-color:currentColor}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em;background:var(--card);border-radius:.35rem;padding:.12em .38em;word-break:break-word}
.lead{font-size:1.2rem;line-height:1.55;color:var(--muted)}
.meta{color:var(--muted);font-size:.9rem}
.note{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:.35rem 1.25rem}
p.note{padding:1rem 1.25rem}

/* Focus */
:focus{outline:none}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:.3rem}
.badge:focus,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}

.skip{position:absolute;left:1rem;top:-4rem;z-index:50;background:var(--bg-elev);color:var(--fg);padding:.6rem 1rem;border-radius:.6rem;box-shadow:var(--shadow)}
.skip:focus{top:.6rem}

/* Header: full width bar on every page, content on a 72rem column */
header{position:sticky;top:0;z-index:20;margin-inline:calc(50% - 50vw);padding-inline:max(1.25rem,calc(50vw - var(--max) / 2 + 1.25rem));background:var(--header-bg);-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid var(--rule)}
header nav{display:flex;align-items:center;gap:1.6rem;min-height:3.4rem;font-size:.88rem;border:0;margin:0;padding:0}
header nav a{color:var(--muted);text-decoration:none;margin:0;transition:color .15s}
header nav a:hover{color:var(--fg)}
header nav a:first-child{display:inline-flex;align-items:center;gap:.6rem;margin-right:auto;color:var(--fg);font-size:1.02rem;letter-spacing:-.01em}
header nav a:first-child strong{font-weight:680}
header nav a:first-child::before{content:"";flex:none;width:1.75rem;height:1.75rem;border-radius:.45rem;background:url(img/kankan-icon-128.png) center/cover no-repeat;box-shadow:0 0 0 1px var(--rule)}
@media (max-width:30rem){
  header nav{gap:1.05rem;font-size:.84rem}
  header nav a:first-child strong{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
}

/* Footer */
footer{margin-inline:calc(50% - 50vw);padding:2.25rem max(1.25rem,calc(50vw - var(--max) / 2 + 1.25rem)) 2.75rem;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;color:var(--muted);font-size:.86rem}
footer a{color:var(--muted);text-decoration:none;margin:0}
footer a:hover{color:var(--fg);text-decoration:underline}
footer p{flex-basis:100%;margin:.9rem 0 0;color:var(--faint)}

/* Legacy */
.badge{display:inline-block;margin:1rem 0;padding:.7rem 1.2rem;border:2px solid var(--fg);border-radius:.6rem;font-weight:600;text-decoration:none;color:var(--fg)}

/* ---------- Contact form (contact.html + contact.js) ---------- */
.field{display:flex;flex-direction:column;gap:.35rem;margin:1.2rem 0}
.field label,legend{font-weight:620}
textarea,input[type=email]{width:100%;font:inherit;color:var(--fg);background:var(--field);border:1px solid color-mix(in srgb,var(--muted) 55%,transparent);border-radius:.7rem;padding:.65rem .8rem}
textarea{min-height:10rem;resize:vertical}
fieldset.kind{border:0;margin:1.2rem 0 0;padding:0}
.check{display:flex;align-items:center;gap:.5rem;margin:.4rem 0;font-weight:400}
.check input{width:1.15rem;height:1.15rem;margin:0;accent-color:var(--brand)}
.button{font:inherit;font-weight:620;color:var(--brand-ink);background:var(--brand);border:1.5px solid var(--brand);border-radius:999px;padding:.6rem 1.5rem;cursor:pointer;min-height:44px;transition:filter .15s}
.button:hover{filter:brightness(1.1)}
.button:disabled{opacity:.55;cursor:progress}
.button.secondary{color:var(--fg);background:transparent;border-color:color-mix(in srgb,var(--fg) 30%,transparent)}
textarea:focus,input:focus,.button:focus,summary:focus,.report-text:focus,#done-heading:focus{outline:3px solid var(--focus);outline-offset:2px}
.status{min-height:1.6em}
.status-error{color:var(--error);font-weight:620}
.report-box{padding:.5rem 1.25rem 1.1rem;margin:1.4rem 0}
.report-box h2{margin-top:.7rem;font-size:1.12rem}
summary{cursor:pointer;color:var(--link)}
.report-text{white-space:pre-wrap;word-break:break-word;max-height:20rem;overflow:auto;font-size:.85rem;background:var(--bg);border:1px solid var(--rule);border-radius:.6rem;padding:.7rem}
.reference{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
[hidden]{display:none!important}
.ph{background:#fff3b0;color:#000;padding:0 .2em;border-radius:.2em}
.actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0}

/* ====================== Home page ====================== */
.home .wrap{max-width:none;padding:0}
.home main{padding:0}
.inner{max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.home section{position:relative}
.eyebrow{font-size:.8rem;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--link);margin:0 0 .9rem}
.home h2{font-size:clamp(1.85rem,4.2vw,2.75rem);line-height:1.1;letter-spacing:-.03em;font-weight:700;margin:0 0 1rem;max-width:22ch}

/* Hero */
.hero{padding:clamp(2.5rem,7vw,5.5rem) 0 clamp(3rem,7vw,6rem);overflow:hidden;isolation:isolate}
.hero::before{content:"";position:absolute;inset:-20% -10% auto;height:120%;z-index:-1;
  background:radial-gradient(42rem 28rem at 78% 30%,rgba(11,94,90,.16),transparent 70%),radial-gradient(26rem 18rem at 92% 75%,rgba(255,176,58,.16),transparent 70%),radial-gradient(30rem 20rem at 8% 10%,rgba(11,94,90,.06),transparent 70%)}
@media (prefers-color-scheme:dark){.hero::before{background:radial-gradient(42rem 28rem at 78% 30%,rgba(63,183,174,.2),transparent 70%),radial-gradient(26rem 18rem at 92% 75%,rgba(255,176,58,.1),transparent 70%),radial-gradient(30rem 20rem at 8% 10%,rgba(63,183,174,.07),transparent 70%)}}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4rem);align-items:center}
.hero h1{font-size:clamp(2.2rem,4.7vw,3.75rem);line-height:1.05;letter-spacing:-.04em;font-weight:750;margin:0 0 1rem;max-width:16ch}
.subline{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.3;max-width:30ch;letter-spacing:-.02em;font-weight:620;color:var(--fg);margin:0 0 1.4rem;opacity:.72}
.brandword{color:var(--brand);background:linear-gradient(100deg,#0b5e5a 10%,#13857e 90%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@media (prefers-color-scheme:dark){.brandword{background:linear-gradient(100deg,#6fd3c8 10%,#a6e6dd 90%);-webkit-background-clip:text;background-clip:text}}
.hero .lead{font-size:clamp(1.12rem,1.8vw,1.3rem);max-width:34rem;margin:0 0 2rem}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.6rem}
.soon{display:inline-flex;align-items:center;gap:.65rem;margin:0;padding:.8rem 1.35rem;border-radius:999px;background:var(--fg);color:var(--bg);font-weight:620;font-size:1rem;letter-spacing:-.005em;box-shadow:var(--shadow)}
.soon .dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(255,176,58,.28)}
.textlink{font-weight:600;text-decoration:none}
.textlink:hover{text-decoration:underline}
.hero-facts{list-style:none;padding:0;margin:2.2rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;color:var(--muted);font-size:.92rem}
.hero-facts li{margin:0;display:flex;align-items:center;gap:.45rem}
.hero-facts li::before{content:"";width:1rem;height:1rem;flex:none;border-radius:50%;background:var(--brand-soft) url(img/check.svg) center/100% no-repeat}

/* Phone frame + video slot */
.device{margin:0;display:flex;justify-content:center}
.phone{position:relative;width:min(19.5rem,74vw);padding:.62rem;border-radius:3.2rem;background:linear-gradient(145deg,#2b3231,#0d1111 45%,#1f2524);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.12),0 0 0 1px rgba(0,0,0,.35),0 50px 90px -30px rgba(11,60,57,.55),0 30px 50px -30px rgba(0,0,0,.45)}
.phone::before{content:"";position:absolute;right:-3px;top:24%;width:3px;height:12%;border-radius:0 3px 3px 0;background:#1a1f1f}
.screen{position:relative;aspect-ratio:1320/2868;border-radius:2.6rem;overflow:hidden;background:#f4f4ef;transform:translateZ(0)}
.screen img,.screen video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.screen picture{position:absolute;inset:0}
html:not(.js) .screen video{display:none}
.screen video{opacity:0;transition:opacity .3s}
.screen video.is-live{opacity:1}
.device{flex-direction:column;align-items:center;gap:1rem}
.vbtn{display:inline-flex;align-items:center;gap:.5rem;font:inherit;font-size:.82rem;font-weight:600;color:var(--muted);background:var(--bg-elev);border:1px solid var(--rule);border-radius:999px;padding:.4rem .85rem .4rem .65rem;min-height:2.25rem;cursor:pointer;box-shadow:var(--shadow)}
.vbtn:hover{color:var(--fg)}
.vbtn-icon{width:.8rem;height:.8rem;background:linear-gradient(90deg,currentColor 0 35%,transparent 35% 65%,currentColor 65%)}
.vbtn.is-paused .vbtn-icon{background:currentColor;clip-path:polygon(10% 0,100% 50%,10% 100%)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* How it works */
.how{padding:clamp(4rem,9vw,7.5rem) 0;border-top:1px solid var(--rule)}
.section-lead{color:var(--muted);font-size:1.1rem;margin:0;max-width:36rem}
.walk{list-style:none;counter-reset:step;padding:0;margin:3rem 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem 1.5rem}
.walk li{counter-increment:step;margin:0}
.walk h3{margin:1.4rem 0 .35rem;font-size:1.08rem;display:flex;align-items:baseline;gap:.55rem}
.walk h3::before{content:counter(step);flex:none;display:inline-grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:50%;background:var(--brand-soft);color:var(--link);font-size:.78rem;font-weight:700;transform:translateY(-.1rem)}
.walk p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
.mini-phone{margin:0;padding:.38rem;border-radius:1.9rem;background:linear-gradient(145deg,#2b3231,#0d1111 45%,#1f2524);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 24px 44px -24px rgba(11,60,57,.5),0 12px 24px -16px rgba(0,0,0,.35);max-width:15rem}
.mini-phone img{width:100%;height:auto;border-radius:1.55rem;background:#f2f2f7}
@media (prefers-color-scheme:dark){.mini-phone img{background:#000}.mini-phone,.phone{outline:1px solid rgba(255,255,255,.1);outline-offset:0}}


/* Activity log */
.activity{padding:clamp(4rem,9vw,7rem) 0;border-top:1px solid var(--rule)}
.act-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.act-list{list-style:none;padding:0;margin:2rem 0 1.5rem;display:grid;gap:1rem}
.act-list li{margin:0;padding-left:1.6rem;position:relative;color:var(--muted)}
.act-list li::before{content:"";position:absolute;left:0;top:.5rem;width:.6rem;height:.6rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.act-list strong{color:var(--fg)}
.act-copy .meta{max-width:30rem}
.act-shots{display:flex;justify-content:center}
.act-shots .mini-phone{width:100%;max-width:17rem}
.walk-2{grid-template-columns:repeat(2,minmax(0,17rem));gap:2rem 4rem}
.activity{border-top:0;padding-top:clamp(1rem,3vw,2rem)}
.feature-grid.fg-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.how .inner{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(2rem,5vw,4.5rem);align-items:start}
.how .inner>*:not(.walk){grid-column:1}
.how .inner{grid-template-rows:auto auto auto auto 1fr}
.how .walk-2{grid-column:2;grid-row:1 / span 5;margin:0}
.how .section-lead+.section-lead{margin-top:.9rem}
.how .eyebrow{margin-top:4rem}
.bigger{padding:clamp(4rem,9vw,7rem) 0;border-top:1px solid var(--rule)}
.pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:3rem 0 1rem}
.pair-item{display:grid;grid-template-columns:minmax(0,11.5rem) minmax(0,1fr);gap:1.75rem;align-items:center;padding:clamp(1.25rem,2.5vw,2rem);border-radius:1.6rem;background:var(--card);border:1px solid var(--rule)}
.pair-item h3{margin:0 0 .45rem;font-size:1.2rem;letter-spacing:-.015em}
.pair-item p{margin:0;color:var(--muted);font-size:.97rem;line-height:1.55}
.pair-1{grid-template-columns:1fr}
.pair-1 .pair-item{grid-template-columns:minmax(0,13rem) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);padding:clamp(1.5rem,4vw,3rem) clamp(1.5rem,5vw,4rem)}
.pair-1 .pair-item h3{font-size:clamp(1.35rem,2.4vw,1.75rem);letter-spacing:-.025em;margin-bottom:.7rem}
.pair-1 .pair-item p{font-size:1.05rem;max-width:34rem}
.focus-sec{border-top:1px solid var(--rule);padding-top:clamp(4rem,9vw,7rem)}
.nest2{display:grid;grid-template-columns:minmax(0,13rem) auto minmax(0,13rem) minmax(0,1fr);gap:1.5rem 2rem;align-items:center;margin:3rem 0 1.5rem;padding:clamp(1.5rem,4vw,3rem);border-radius:1.75rem;background:var(--card);border:1px solid var(--rule)}
.nest-step{margin:0}
.nest-step figcaption{margin-top:1rem;font-size:.9rem;line-height:1.45;color:var(--muted);text-align:center}
.nest-arrow{display:flex;flex-direction:column;align-items:center;gap:.5rem;max-width:7.5rem;text-align:center;color:var(--link);font-size:.78rem;font-weight:650;line-height:1.3}
.nest-text{padding-left:clamp(0rem,2vw,1.5rem)}
.nest-text h3{margin:0 0 .6rem;font-size:clamp(1.3rem,2.2vw,1.6rem);letter-spacing:-.025em}
.nest-text p{margin:0;color:var(--muted)}
.hl{position:relative}
.hl .ring{position:absolute;left:49.848%;top:16.981%;width:39.318%;height:6.311%;border-radius:5% / 14.4%;box-shadow:0 0 0 2px var(--accent),0 0 0 6px var(--accent-soft);pointer-events:none}
.tagline{font-size:clamp(1.3rem,2.6vw,1.6rem);font-weight:620;letter-spacing:-.02em;color:var(--link);margin:0 0 .6rem}

/* Features */
.features{padding:clamp(4rem,9vw,7.5rem) 0;background:linear-gradient(180deg,transparent,var(--card) 40%,transparent)}
.feature-grid{list-style:none;padding:0;margin:3rem 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.feature-grid li{margin:0;padding:1.5rem 1.4rem 1.6rem;background:var(--bg-elev);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow)}
.feature-grid h3{margin:1rem 0 .4rem;font-size:1.05rem}
.feature-grid p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
.ficon{width:2.6rem;height:2.6rem;padding:.55rem;border-radius:.8rem;background:var(--brand-soft);fill:none;stroke:var(--link);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Privacy band */
.privacy-band{padding:clamp(1rem,4vw,2.5rem) 0 clamp(4rem,8vw,6rem)}
.band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:center;padding:clamp(2rem,5vw,3.75rem);border-radius:2rem;background:radial-gradient(40rem 22rem at 100% 0,rgba(255,176,58,.16),transparent 60%),linear-gradient(150deg,#0e6a65,#0b5e5a 45%,#08443f);color:#eef5f3}
@media (prefers-color-scheme:dark){.band{background:radial-gradient(40rem 22rem at 100% 0,rgba(255,176,58,.1),transparent 60%),linear-gradient(150deg,#0f4f4b,#0b3d3a 50%,#082c2a);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}}
.band .eyebrow{color:#ffc46b}
.band h2{color:#fff}
.band p{color:rgba(238,245,243,.85);margin:.8rem 0 0;max-width:32rem}
.band a{color:#fff;font-weight:600}
.band :focus-visible{outline-color:#ffc46b}
.band-list{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}
.band-list li{margin:0;padding:1.05rem 1.25rem;border-radius:1rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(238,245,243,.82);font-size:.97rem}
.band-list strong{display:block;color:#fff;font-size:1.02rem}

/* Closing */
.closing{padding:clamp(3rem,7vw,5rem) 0 clamp(4rem,8vw,6.5rem);text-align:center}
.closing-icon{margin:0 auto 1.4rem;width:6rem;height:6rem;border-radius:1.4rem;box-shadow:0 18px 40px -16px rgba(11,94,90,.6),0 0 0 1px var(--rule)}
.home .closing h2{margin:0 auto .4rem;max-width:none}
.closing-lead{font-size:1.1rem;color:var(--muted);margin:0 0 1.2rem}
.home footer{padding-top:2rem}

/* Responsive */
@media (max-width:60rem){
  .hero-grid{grid-template-columns:1fr}
  .hero h1{max-width:17ch}
  .device{margin-top:1rem}
  .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .band{grid-template-columns:1fr}
  .walk{gap:2.5rem 2rem}
  .feature-grid.fg-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .how .inner{display:block}
  .how .eyebrow{margin-top:0}
  .how .walk-2{margin-top:2.5rem}
  .pair{grid-template-columns:1fr}
  .nest2{grid-template-columns:minmax(0,13rem) auto minmax(0,13rem);justify-content:center}
  .nest-text{grid-column:1 / -1;padding:1rem 0 0;max-width:36rem}
  .walk .mini-phone{max-width:14rem}
  .act-grid{grid-template-columns:1fr}
  .focus-sec .act-shots{order:2}
}
@media (max-width:44rem){
  .feature-grid{grid-template-columns:1fr}
  .walk-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
  .walk-2 h3{font-size:1rem}
  .feature-grid.fg-4{grid-template-columns:1fr}
  .nest2{grid-template-columns:minmax(0,15rem);justify-content:center;padding:1.5rem 1.25rem}
  .nest-arrow{max-width:none;flex-direction:row;justify-content:center}
  .nest-arrow svg{transform:rotate(90deg)}
  .pair-item,.pair-1 .pair-item{grid-template-columns:minmax(0,8.5rem) minmax(0,1fr);gap:1.1rem;padding:1rem}
  .pair-1 .pair-item h3{font-size:1.1rem}
  .pair-1 .pair-item p{font-size:.92rem}
  .pair-item h3{font-size:1.05rem}
  .pair-item p{font-size:.9rem}
  .act-shots .mini-phone{max-width:15rem}
  .band{border-radius:1.5rem}
  .phone{width:min(16.5rem,70vw);border-radius:2.8rem;padding:.55rem}
  .screen{border-radius:2.3rem}
  .feature-grid li{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:1rem;padding:1.15rem 1.15rem 1.25rem}
  .feature-grid .ficon{grid-row:span 2}
  .feature-grid h3{margin:.3rem 0 .25rem}
}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
