/* Cuadra's site (store-assets/web/), rebuilt from the approved mock
   (LAUNCH-PREP SITE-BUILD, 2026-10-08). System fonts only, no inline styles
   (the CSP in _headers allows neither inline style nor any font host). */

/* Layout: Apple-style rhythm (one idea per section, big product, lots of air), carried by Cuadra's icon palette: a teal-to-coral hero tile, mist and deep-teal bands, coral used for the one word that matters. */
:root{
  --bg:#FFFFFF; --bg-alt:#F2F6F5; --ink:#101A1C; --muted:#5B6B6E; --line:#E1E9E8;
  --teal:#11646F; --teal-2:#1E7883; --sea:#64A0A6; --mist:#DCE7E6; --coral:#E37D65; --coral-ink:#C2563E; --on-dark:#F4F8F7; --on-dark-muted:#BFD3D2;
  --badge-bg:#000; --badge-fg:#fff; --shadow:0 30px 60px -20px rgba(16,40,44,.28);
  --grad:linear-gradient(155deg,#11646F 0%,#11646F 16%,#64A0A6 58%,#B89685 82%,#E37D65 100%);
  --sys:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  --display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0B1213; --bg-alt:#111B1D; --ink:#EEF4F3; --muted:#9AAEB0; --line:#22302F;
  --teal:#2FA3AF; --teal-2:#2FA3AF; --mist:#18292B; --coral-ink:#F09A82; --badge-bg:#fff; --badge-fg:#000; --shadow:0 30px 60px -20px rgba(0,0,0,.6); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0B1213; --bg-alt:#111B1D; --ink:#EEF4F3; --muted:#9AAEB0; --line:#22302F;
  --teal:#2FA3AF; --teal-2:#2FA3AF; --mist:#18292B; --coral-ink:#F09A82; --badge-bg:#fff; --badge-fg:#000; --shadow:0 30px 60px -20px rgba(0,0,0,.6); color-scheme:dark}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--sys);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;margin:0}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1120px;margin:0 auto;padding-inline:20px}
h1,h2,h3{font-family:var(--display);margin:0;letter-spacing:-0.022em;text-wrap:balance}
h1{font-size:clamp(2.6rem,6.4vw,5rem);font-weight:700;line-height:1.02}
h2{font-size:clamp(2rem,4.4vw,3.3rem);font-weight:700;line-height:1.06}
h3{font-size:1.3rem;font-weight:650;letter-spacing:-0.012em}
p{margin:0}
.lede{font-size:clamp(1.1rem,1.8vw,1.4rem);color:var(--muted);max-width:40ch}
.accent{color:var(--coral-ink)}
/* nav */
nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid var(--line)}
nav .wrap{display:flex;align-items:center;gap:28px;height:60px}
.brand{display:flex;align-items:center;gap:10px;font-weight:650;font-size:1rem;color:var(--ink);text-decoration:none}
.brand img{width:26px;height:26px;border-radius:6px}
nav ul{display:flex;gap:24px;list-style:none;margin:0 0 0 auto;padding:0;font-size:.88rem}
nav a{color:var(--muted);text-decoration:none}
nav a:hover{color:var(--ink)}
.badge{display:inline-flex;line-height:0;border-radius:7px}
.badge img{display:block;height:40px;width:auto}
/* "Coming soon" state: a plain label where the Mac App Store badge goes. Apple's badge is only for an app that can be downloaded. */
.soon{display:inline-flex;align-items:center;height:40px;padding:0 14px;border:1px solid var(--line);border-radius:10px;color:var(--ink);font-size:.85rem;font-weight:600;line-height:1.15}
nav .soon{height:36px;padding:0 12px;font-size:.78rem}
.soon .short{display:none}
@media (max-width:720px){nav ul li:not(:has(.keep)){display:none}}
/* hero */
.hero{padding-block:22px 0}
.hero-tile{position:relative;border-radius:28px;overflow:hidden;background:var(--grad);color:#fff;padding:clamp(40px,7vw,84px) clamp(22px,5vw,72px) 0;text-align:center}
.hero-tile h1 .accent{color:#FFC1AE}
.hero-tile .lede{color:#E2F0EF;margin:18px auto 0}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px;margin-top:30px}
.hero-cta .soon{color:#fff;border-color:rgba(255,255,255,.45)}
.hero-cta small{color:#fff;font-size:1.1rem;font-weight:600}
.hero-shot{margin:48px auto -2px;max-width:min(960px,100%);filter:drop-shadow(0 30px 40px rgba(6,36,40,.35))}
/* The hero recording, cropped to the window and rounded here (SITE-V1). */
.hero-media{position:relative}
.hero-media video,.hero-media img{display:block;width:100%;height:auto;border-radius:12px 12px 0 0}
/* The video, poster-less, sits exactly over the always-shown picture and paints nothing until its first frame. */
.hero-media .hero-video{position:absolute;inset:0;width:100%;height:100%}
@media (prefers-reduced-motion: reduce), (max-width:720px){.hero-media .hero-video{display:none}.hero-media .hero-poster{display:block}}
/* sections */
section{padding-block:clamp(72px,10vw,128px)}
.alt{background:var(--bg-alt)}
.center{text-align:center}
.center .lede{margin:18px auto 0}
.eyebrow{display:inline-block;font-weight:600;font-size:1rem;color:var(--teal);margin-bottom:12px}
/* templates */
.shotframe{border-radius:24px;background:var(--grad);padding:clamp(20px,4vw,48px) clamp(20px,4vw,48px) 0;margin-top:56px;overflow:hidden}
.shotframe img{filter:drop-shadow(0 24px 30px rgba(6,36,40,.35));margin-bottom:-2px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.groups{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin-top:28px;font-variant-numeric:tabular-nums}
.groups div{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line)}
.groups span{color:var(--teal-2);font-weight:600}
@media (max-width:820px){.split{grid-template-columns:1fr}}
/* privacy band */
.band{background:var(--teal);color:var(--on-dark)}
:root[data-theme="dark"] .band{background:#0F3A40}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .band{background:#0F3A40}}
.band .lede{color:var(--on-dark-muted)}
.band .accent{color:#FFC1AE}
/* pricing */
.plans{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:760px;margin:48px auto 0}
.plan{border-radius:24px;background:var(--bg);border:1px solid var(--line);padding:32px;display:flex;flex-direction:column;gap:6px;text-align:left}
.plan.best{border:2px solid var(--teal-2)}
.plan .price{font-family:var(--display);font-size:2.6rem;font-weight:700;letter-spacing:-0.02em;font-variant-numeric:tabular-nums}
.plan .per{color:var(--muted)}
.plan .save-line{color:var(--ink)}
.fine{color:var(--muted);font-size:.88rem;max-width:62ch;margin:24px auto 0}
@media (max-width:620px){.plans{grid-template-columns:1fr}}
/* end */
.end{padding-block:clamp(72px,9vw,112px)}
.end img.app{width:96px;height:96px;border-radius:22px;margin:0 auto 24px}
footer{border-top:1px solid var(--line);padding-block:28px;font-size:.82rem;color:var(--muted)}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 24px}
footer a{color:var(--muted);text-decoration:none}
footer .copy{margin-left:auto}
a:focus-visible{outline:2px solid var(--teal-2);outline-offset:3px;border-radius:6px}

/* sub-pages */
.page-head{padding-block:clamp(56px,8vw,96px) 8px}
.page-head .eyebrow{margin-bottom:10px}
.wrap.prose{max-width:1120px}
.prose > *{max-width:68ch}
.prose .release{max-width:none}
.prose .release > *{max-width:68ch}
.prose h2{font-size:clamp(1.5rem,2.6vw,1.9rem);margin:48px 0 14px}
.prose p,.prose li{color:var(--ink);font-size:1.02rem}
.prose p+p{margin-top:12px}
.prose ul{padding-left:1.2em;margin:12px 0 16px;display:grid;gap:8px}
.prose .meta{color:var(--muted);font-size:.92rem;margin-top:8px}
.prose a{color:var(--teal-2)}
.page-head a{color:var(--teal-2)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px;counter-reset:step;list-style:none;padding:0}
.steps li{background:var(--bg-alt);border-radius:20px;padding:24px;counter-increment:step;display:grid;gap:8px;min-width:0}
.steps li::before{content:counter(step);font-family:var(--display);font-weight:700;font-size:1.6rem;color:var(--coral-ink)}
@media (max-width:760px){.steps{grid-template-columns:1fr}}
.faq{margin-top:20px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq summary{cursor:pointer;font-weight:600;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--teal-2);font-size:1.3rem;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details p{color:var(--muted);margin-top:10px;max-width:64ch}
.contact{margin-top:56px;background:var(--grad);color:#fff;border-radius:24px;padding:36px}
.contact p{color:#E2F0EF}
.contact .addr{font-family:var(--display);font-size:clamp(1.3rem,2.6vw,1.8rem);font-weight:700;color:#fff;margin-top:6px;user-select:all}
.release{border-top:1px solid var(--line);padding-top:28px;margin-top:28px}
.release .ver{display:flex;align-items:baseline;gap:14px}
.release .ver span{color:var(--muted);font-size:.95rem}

/* Skip link, and the rules that were inline style attributes in the mock. */
.skip{position:absolute;left:-9999px;top:8px;z-index:10;background:var(--bg);color:var(--ink);padding:8px 12px;border-radius:8px}
.skip:focus{left:12px}
.lede.spaced{margin-top:18px}
.page-head .lede.spaced{margin-top:16px}
.page-head .meta{margin-top:14px;color:var(--muted)}
.wrap.prose.spaced{margin-top:28px}
.prose .lede{max-width:68ch;font-size:1.1rem}
section.flush{padding-block:0}
.sub{margin-top:56px}
section.flush + section.flush .sub{margin-top:72px}
.tip{margin-top:20px;font-size:1.05rem}
.contact h2{color:#fff}
.contact p{margin-top:10px}
.contact a{color:#fff;font-weight:700}
#main{padding-bottom:96px}
.release .ver h2{margin:0}
.release .ver + p{margin-top:14px}

/* Anchors land below the sticky nav; smooth scrolling only for those who want motion (SITE-V1). */
[id]{scroll-margin-top:72px}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}

/* The support page's contact form: plain HTML, posted to /contact (worker/). */
.contact-form{display:grid;gap:8px;max-width:560px;margin-top:22px}
.contact-form label{font-weight:600;font-size:.95rem;color:#fff;margin-top:8px}
.contact-form .opt{font-weight:400;color:#E2F0EF}
.contact-form input,.contact-form select,.contact-form textarea{font:inherit;font-size:1rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;width:100%;box-sizing:border-box}
.contact-form textarea{resize:vertical;min-height:140px}
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:2px solid #fff;outline-offset:2px}
.contact-form button{justify-self:start;margin-top:14px;font:inherit;font-weight:650;color:var(--teal);background:#fff;border:0;border-radius:999px;padding:11px 26px;cursor:pointer}
.contact-form button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.contact-form .hp{display:none}
.contact .alt-contact{margin-top:18px}
.contact-form select{-webkit-appearance:none;appearance:none;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.tip a,.flush a{color:var(--teal-2)}

.band a{color:var(--on-dark);text-underline-offset:3px}

/* Features as three rows, text and picture alternating (SITE-V1). */
.rows{display:grid;gap:clamp(72px,10vw,128px)}
.row{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,72px);align-items:center}
.row:nth-child(even){grid-template-columns:7fr 5fr}
.row:nth-child(even) .row-text{order:2}
.row-text h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
.row-text .lede{margin-top:16px;max-width:34ch}
.row-shot{border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.row-shot img{width:100%;filter:none}
/* Row 3: the panel's four forms straight on the page, each with its own shadow, no box behind them
   (the owner, 2026-10-12: the plate looked like a one-off). */
.row-shot.bare{border:0;border-radius:0;box-shadow:none;overflow:visible;background:none}
.row-shot.bare img{filter:drop-shadow(0 10px 16px rgba(6,36,40,.2))}
@media (prefers-color-scheme: dark){.row-shot.bare img{filter:drop-shadow(0 10px 18px rgba(0,0,0,.55))}}
.row.stack,.row.stack:nth-child(even){grid-template-columns:1fr}.row.stack .row-text{max-width:60ch;order:0}.row.stack .row-text .lede{max-width:48ch}
@media (max-width:820px){.row,.row:nth-child(even){grid-template-columns:1fr}.row:nth-child(even) .row-text{order:0}}
/* "Everything Cuadra does": text first, grouped, two or three columns. */
.everything{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 40px;margin-top:56px}
.everything .item{min-width:0;border-top:1px solid var(--line);padding-top:16px}
.everything h3{font-size:1.08rem}
.everything p{color:var(--muted);font-size:.98rem;margin-top:6px}
.lede b,.everything p b,.steps b,.tip-box b,.release li b{font-weight:600;color:inherit;white-space:nowrap}
.faq b{font-weight:600;color:inherit}
.lede,.everything p{text-wrap:pretty}.fine{text-wrap:balance}
@media (max-width:900px){.everything{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.everything{grid-template-columns:1fr 1fr;gap:22px 16px}.everything .item{padding-top:12px}.everything h3{font-size:.9rem;line-height:1.25}.everything p{font-size:.8rem;line-height:1.38;margin-top:4px}}

.flush .tip{max-width:60ch}
/* Row 1 crossfades from the nudged slide to the tidy one; reduced motion keeps the tidy one. */
.crossfade{position:relative}
.crossfade .before{position:absolute;inset:0;opacity:0}
.crossfade .before img{width:100%;height:100%}
@media (prefers-reduced-motion: no-preference){.crossfade .before{animation:untidy 7s ease-in-out infinite}}
@keyframes untidy{0%,30%{opacity:1}45%,85%{opacity:0}100%{opacity:1}}
.row-shot picture,.shotframe picture{display:block}

/* "Your screen, your way": four pills in the style of Apple's website switchers (a light capsule track, the picked
   pill a near-black capsule; inverted in dark), radio inputs underneath, and one 16:10 picture at a time. */
.forms{position:relative;display:grid;justify-items:center;gap:32px;margin-top:40px}
.forms .screens{order:1}.forms .pills{order:2}
.forms input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.pills{display:inline-flex;gap:4px;padding:4px;background:#F2F2F4;border-radius:999px}
.pills label{font:500 17px/1 var(--sys);letter-spacing:-.01em;padding:14px 26px;border-radius:999px;color:#424245;cursor:pointer;transition:background-color .35s,color .35s;white-space:nowrap}
.pills label[for="form-docked"]{background:#1D1D1F;color:#FFFFFF}
.forms input:checked ~ .pills label{background:transparent;color:#424245}
#form-docked:checked ~ .pills label[for="form-docked"],#form-floating:checked ~ .pills label[for="form-floating"],
#form-wide:checked ~ .pills label[for="form-wide"],#form-ribbon:checked ~ .pills label[for="form-ribbon"]{background:#1D1D1F;color:#FFFFFF}
#form-docked:focus-visible ~ .pills label[for="form-docked"],#form-floating:focus-visible ~ .pills label[for="form-floating"],
#form-wide:focus-visible ~ .pills label[for="form-wide"],#form-ribbon:focus-visible ~ .pills label[for="form-ribbon"]{outline:2px solid var(--teal-2,#0A6E78);outline-offset:3px}
.screens{position:relative;width:100%;aspect-ratio:16/10;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.screen{position:absolute;inset:0;opacity:0;transition:opacity .6s ease-in-out}
.screen img{display:block;width:100%;height:100%}
.screen-docked{opacity:1}
.forms input:checked ~ .screens .screen{opacity:0}
#form-docked:checked ~ .screens .screen-docked,#form-floating:checked ~ .screens .screen-floating,
#form-wide:checked ~ .screens .screen-wide,#form-ribbon:checked ~ .screens .screen-ribbon{opacity:1}
@media (prefers-reduced-motion: no-preference){
  .screen{animation:form-show 16s infinite}
  .pills label{animation:form-pill 16s infinite}
  .screen-floating,.pills label[for="form-floating"]{animation-delay:4s}
  .screen-wide,.pills label[for="form-wide"]{animation-delay:8s}
  .screen-ribbon,.pills label[for="form-ribbon"]{animation-delay:12s}
  .screen-floating,.screen-wide,.screen-ribbon{animation-fill-mode:backwards}
  .forms input:checked ~ .screens .screen,.forms input:checked ~ .pills label{animation:none}
}
@keyframes form-show{0%{opacity:0}3%,25%{opacity:1}28%,100%{opacity:0}}
@keyframes form-pill{0%,28%,100%{background:transparent;color:#424245}3%,25%{background:#1D1D1F;color:#FFFFFF}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .pills{background:#2C2C2E}
  :root:not([data-theme="light"]) .pills label{color:#D2D2D7}
  :root:not([data-theme="light"]) .forms input:checked ~ .pills label{background:transparent;color:#D2D2D7}
  :root:not([data-theme="light"]) .pills label[for="form-docked"],
  :root:not([data-theme="light"]) #form-docked:checked ~ .pills label[for="form-docked"],:root:not([data-theme="light"]) #form-floating:checked ~ .pills label[for="form-floating"],
  :root:not([data-theme="light"]) #form-wide:checked ~ .pills label[for="form-wide"],:root:not([data-theme="light"]) #form-ribbon:checked ~ .pills label[for="form-ribbon"]{background:#FFFFFF;color:#000000}
}
@media (prefers-color-scheme: dark) and (prefers-reduced-motion: no-preference){:root:not([data-theme="light"]) .pills label{animation-name:form-pill-dark}}
@keyframes form-pill-dark{0%,28%,100%{background:transparent;color:#D2D2D7}3%,25%{background:#FFFFFF;color:#000000}}
@media (max-width:560px){.pills{display:flex;width:100%;box-sizing:border-box}.pills label{flex:1;text-align:center;padding:14.5px 6px;font-size:15px}}

/* Vertical rhythm (the owner, 2026-10-13, on the phone): one step between blocks of a section, one between rows,
   and the band after the rows sits one row-step after the last row rather than two section paddings. */
:root{--step:clamp(40px,5vw,56px);--row-step:clamp(96px,11vw,136px)}
.rows{gap:var(--row-step)}
.row{row-gap:var(--step)}
#features{padding-bottom:0}
#features + #your-screen{padding-top:var(--row-step)}
.forms{margin-top:var(--step);gap:24px}
.shotframe{margin-top:var(--step)}
.everything{margin-top:var(--step)}
@media (max-width:820px){.split{gap:var(--step)}.row{gap:28px}.row-text .lede{max-width:none}}

/* The hero names the app (V5b, the owner, 2026-10-13): the icon, then "Cuadra", then the headline,
   centred. Ported from the reference mock (index-v5b.html, lines 48-54), not eyeballed. */
.hero-tile{padding-top:clamp(30px,3vw,37px)}
.hero-tile .lede{max-width:44ch;text-wrap:balance;margin-top:14px}
.hero-cta{margin-top:26px}
.hero-app{display:flex;flex-direction:column;align-items:center;gap:var(--g1);margin:0 0 var(--g2);--g1:16.8px;--g2:12px}
.hero-app img{width:72px;height:72px;border-radius:16.2px;box-shadow:0 12px 26px -8px rgba(6,36,40,.45),0 0 0 1px rgba(255,255,255,.28)}
.hero-app span{font-family:var(--display);font-weight:600;font-size:50px;letter-spacing:-0.02em;line-height:1.1;color:#fff}
@media (max-width:720px){.hero-tile{padding-top:26px}.hero-app{--g1:10.0px;--g2:7px}.hero-app img{width:42.3px;height:42.3px;border-radius:9.5px}.hero-app span{font-size:29.8px}.hero-cta{margin-top:20px}}
.hero-app .hero-name-sub{font-size:inherit;font-weight:400;letter-spacing:-0.015em;color:rgba(255,255,255,.82)}
.hero-app>span{white-space:nowrap}
@media (max-width:720px){.hero-app>span{font-size:min(29.8px,calc((100vw - 84px) / 10))}}
/* Narrow phones (10-14): the nav badge never wraps; the nav tightens, then the badge scales a step. */
nav .badge{white-space:nowrap;flex-shrink:0}
@media (max-width:400px){nav .wrap{gap:14px}}
@media (max-width:359px){nav .wrap{gap:10px;padding-inline:14px}nav .badge img{height:40px}nav .soon{padding:0 8px;font-size:.66rem}}
nav .soon{white-space:nowrap}
@media (max-width:560px){nav .soon .long{display:none}nav .soon .short{display:inline}}
.end h2 .name-sub{font-weight:400;color:var(--muted)}
/* Support (copy round 3, 2026-10-14): one centered column, so the FAQ text and its toggles line up;
   step titles; the tip box with its lightbulb (inline SVG: the CSP allows no other source). */
.support-page .wrap{max-width:800px}
.support-page .faq details p{max-width:none}
.support-page .flush .tip{max-width:none}
.steps h3{font-size:1.1rem;line-height:1.3}
.steps p{color:var(--muted)}
.steps p i{font-style:italic;color:var(--ink)}
.tip-box{display:flex;gap:12px;align-items:flex-start;margin-top:20px;padding:16px 20px;border-radius:16px;background:color-mix(in srgb,var(--teal-2) 9%,var(--bg));border:1px solid color-mix(in srgb,var(--teal-2) 22%,var(--bg))}
.tip-box p{margin:0;font-size:1.05rem}
.tip-icon{flex:none;width:22px;height:22px;margin-top:2px;fill:none;stroke:var(--teal-2);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.steps li{align-content:start}
.support-page .steps{grid-template-columns:1fr;gap:14px}
.support-page .steps li{grid-template-columns:34px 1fr;column-gap:10px;row-gap:6px;padding:22px 24px}
.support-page .steps li::before{grid-row:1 / span 3;line-height:1.15}
.support-page .steps li>*{grid-column:2}
.support-page .steps h3{line-height:1.6rem}
@media (max-width:560px){.steps b{white-space:normal}.support-page .steps li{padding:20px 18px;grid-template-columns:28px 1fr}}
