/* WSC theme styles: tokens first (tokens.css), then Bootstrap RTL, then this file. Values come from tokens only; the words left/right never appear. Built from the D3 prototypes (base + component theme + page sections). */
/* Rubik, self-hosted (DESIGN.md 3 and 10, amendment: 400/500/700, hebrew + latin subsets) */
@font-face{font-family:"Rubik";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/rubik-hebrew-400-normal.woff2") format("woff2");unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/rubik-hebrew-500-normal.woff2") format("woff2");unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/rubik-hebrew-700-normal.woff2") format("woff2");unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/rubik-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Rubik";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/rubik-latin-500-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Rubik";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/rubik-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Rubik Fallback";src:local("Arial");size-adjust:104%;ascent-override:88%;descent-override:24%;line-gap-override:0%}

/* ===== base (page-build base.css) ===== */
/* base.css: wsc-design-suite page-build. Tokens come first (tokens.css), this second, page CSS third.
   Logical properties only. Every value is a token or structural. */

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-body);line-height:var(--leading-body);color:var(--color-ink);background:var(--color-surface)}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}
:where(ul[class],ol[class]){list-style:none;padding:0}
img,svg,video{display:block;max-inline-size:100%;block-size:auto}
a{color:var(--color-brand-deep);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--color-brand)}
button,input,textarea,select{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}
.on-dark :focus-visible{outline-color:var(--color-accent)}
[dir=ltr]{--dir:1}[dir=rtl]{--dir:-1}
.icon-directional{transform:scaleX(var(--dir))}
bdi{unicode-bidi:isolate}

/* component theme: set these at the top of the page CSS from DESIGN.md sections 5 and 7 */
:root{--btn-radius:var(--radius-sm);--card-radius:var(--radius-md);--card-border:1px solid var(--color-line);--card-shadow:none;--img-radius:var(--radius-md);--section-pad:var(--space-section)}

/* type roles */
.display,.title,.subtitle{font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-wrap:balance;overflow-wrap:anywhere}
.display{font-size:var(--text-5xl)}
.title{font-size:var(--text-4xl)}
h2.title,.title--2{font-size:var(--text-3xl)}
.subtitle{font-size:var(--text-xl);font-weight:var(--weight-medium);line-height:1.35}
.lead{font-size:var(--text-lg);line-height:1.6}
.small{font-size:var(--text-sm);line-height:1.5}
.eyebrow{font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-eyebrow);line-height:1.3;color:var(--color-ink-muted)}
.on-dark .eyebrow{color:var(--color-accent)}
.muted{color:var(--color-ink-muted)}
p,li{text-wrap:pretty}
.signature-line::before{content:"";display:block;inline-size:3rem;block-size:1px;background:var(--color-accent);margin-block-end:var(--space-4)}

/* layout primitives */
.wrap{inline-size:100%;max-inline-size:var(--container);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,2.5rem)}
.measure{max-inline-size:var(--measure)}
.stack{display:flex;flex-direction:column;gap:var(--gap,var(--space-4))}
.cluster{display:flex;flex-wrap:wrap;gap:var(--gap,var(--space-3));align-items:center}
.grid{display:grid;gap:var(--gap,var(--space-5));grid-template-columns:repeat(auto-fit,minmax(min(var(--min,16rem),100%),1fr))}
.split{display:grid;gap:var(--gap,var(--space-6));align-items:center}
@media (min-width:768px){.split{grid-template-columns:var(--ratio,minmax(0,7fr) minmax(0,5fr))}}
section,[data-section=footer]{padding-block:var(--section-pad)}
.section--tight{padding-block-start:var(--space-6)}
.surface-subtle{background:var(--color-surface-subtle)}
.surface-tint{background:var(--color-brand-tint)}
.on-dark{background:var(--color-surface-inverse);color:var(--color-ink-on-dark)}
.on-dark a{color:inherit}
.on-dark .muted{color:var(--color-ink-on-dark-muted)}
.section-head{display:flex;flex-direction:column;gap:var(--space-4);margin-block-end:var(--space-6)}

/* skip link, header, drawer */
.skip-link{position:absolute;inset-inline-start:var(--space-4);inset-block-start:-100%;background:var(--color-surface);padding:var(--space-3) var(--space-4);z-index:20}
.skip-link:focus{inset-block-start:var(--space-4)}
[data-section=header]{position:sticky;inset-block-start:0;z-index:10;background:var(--color-surface);border-block-end:1px solid transparent}
[data-section=header]:has(.nav.is-open){z-index:40}
[data-section=header].is-scrolled{border-block-end-color:var(--color-line)}
.header__bar{display:flex;align-items:center;gap:var(--space-5);min-block-size:60px}
@media (min-width:768px){.header__bar{min-block-size:72px}}
.menu-btn{inline-size:44px;block-size:44px;border:0;background:none;display:grid;place-items:center;cursor:pointer}
.header__logo{margin-inline-end:auto;display:inline-flex;align-items:center;min-block-size:44px;text-decoration:none;color:var(--color-ink)}
/* one nav element: a row from 1024px, the drawer below it. The links exist once in the DOM. */
.nav a{text-decoration:none;color:var(--color-ink)}
.nav a[aria-current=page]{font-weight:var(--weight-medium);box-shadow:inset 0 -1px 0 currentColor}
.nav__dd--current>summary{font-weight:var(--weight-medium)}
@media (min-width:1024px){.nav__dd--current>summary{box-shadow:inset 0 -1px 0 currentColor}}
@media (max-width:1023.98px){
  .nav{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;overflow-y:auto;background:var(--color-surface);padding:var(--space-5);transform:translateX(calc(var(--dir) * -100%));visibility:hidden}
  .nav.is-open{transform:none;visibility:visible}
  .nav a{display:flex;align-items:center;min-block-size:56px;font-size:var(--text-xl);border-block-end:1px solid var(--color-line)}
  .nav__close{align-self:flex-start}
}
@media (max-width:1023.98px) and (prefers-reduced-motion:no-preference){.nav{transition:transform var(--duration-base) var(--ease-standard),visibility var(--duration-base)}}
@media (min-width:1024px){
  .nav{display:flex;align-items:center;gap:var(--space-5);margin-inline-end:auto}
  .nav a{display:inline-flex;align-items:center;min-block-size:44px}
  .nav__close,.nav__extra,[data-section=header] .menu-btn{display:none}
  .header__logo{margin-inline-end:0}
}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-block-size:48px;padding-inline:var(--space-6);border:1px solid transparent;border-radius:var(--btn-radius);background:var(--color-brand-deep);color:var(--color-on-brand-deep);font-weight:var(--weight-medium);text-decoration:none;cursor:pointer}
.btn:hover{background:var(--color-brand-hover);color:var(--color-on-brand-deep)}
.btn:active{transform:translateY(1px)}
.btn:disabled,.btn[aria-disabled=true]{background:var(--color-disabled-bg);color:var(--color-disabled-ink);border-color:transparent;cursor:not-allowed;transform:none}
.btn--secondary{background:transparent;color:var(--color-brand-deep);border-color:var(--color-brand-deep)}
.btn--secondary:hover{background:var(--color-brand-tint);color:var(--color-brand-deep)}
.on-dark .btn{background:var(--color-surface);color:var(--color-ink)}
.on-dark .btn--secondary{background:transparent;color:var(--color-ink-on-dark);border-color:var(--color-ink-on-dark)}
@media (prefers-reduced-motion:no-preference){.btn{transition:background-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}}

/* cards */
.card{position:relative;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--color-surface-raised);border:var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow)}
.card:hover{border-color:var(--color-brand)}
.card__link{color:inherit;text-decoration:none}
.card__link::after{content:"";position:absolute;inset:0;border-radius:inherit}
.card__more{margin-block-start:auto;color:var(--color-brand-deep);font-weight:var(--weight-medium)}

/* quotable blocks */
.answer{background:var(--color-brand-tint);border-inline-start:2px solid var(--color-brand);border-start-end-radius:var(--card-radius);border-end-end-radius:var(--card-radius);padding:var(--space-5)}
.key-facts{display:grid;gap:var(--space-4) var(--space-6)}
@media (min-width:768px){.key-facts{grid-template-columns:1fr 1fr}}
.key-facts div{border-block-start:1px solid var(--color-line);padding-block-start:var(--space-3)}
.key-facts dt{font-size:var(--text-sm);color:var(--color-ink-muted)}
.key-facts dd{font-weight:var(--weight-medium)}
.key-facts div,.key-facts dt,.key-facts dd,.key-facts dd *{text-align:right}
.key-facts dd{margin:0}
.callout{display:flex;gap:var(--space-3);align-items:flex-start;margin:0;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--color-surface-subtle);border:1px solid var(--color-line)}
.callout svg{flex:none;margin-block-start:.15em;color:var(--color-brand-deep)}
.proof-row{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);font-size:var(--text-sm);color:var(--color-ink-muted)}
.proof-row li+li{border-inline-start:1px solid var(--color-line);padding-inline-start:var(--space-5)}

/* route: staged process */
.route{position:relative;display:flex;flex-direction:column;gap:var(--space-6);padding-inline-start:var(--space-6);counter-reset:step}
.route::before{content:"";position:absolute;inset-block:var(--space-2);inset-inline-start:7px;inline-size:1px;background:var(--color-accent)}
.route>li{position:relative;counter-increment:step}
.route>li::before{content:"";position:absolute;inset-inline-start:calc(var(--space-6) * -1 + (15px - var(--route-dot,15px)) / 2);inset-block-start:.4em;inline-size:var(--route-dot,15px);block-size:var(--route-dot,15px);border-radius:50%;background:var(--color-secondary);box-shadow:0 0 0 4px var(--color-surface)}

/* faq */
.faq details{border-block-end:1px solid var(--color-line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-block-size:56px;padding-block:var(--space-3);cursor:pointer;font-weight:var(--weight-medium);list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;inline-size:10px;block-size:10px;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;transform:rotate(45deg);margin-inline-end:4px}
.faq details[open] summary::after{transform:rotate(-135deg)}
.faq details>div{padding-block-end:var(--space-5);max-inline-size:var(--measure)}

/* slider: scroll-snap, user driven */
.slider__track{display:flex;gap:var(--space-5);overflow-x:auto;scroll-snap-type:inline mandatory;scrollbar-width:none;padding-block:var(--space-2)}
.slider__track::-webkit-scrollbar{display:none}
.slider__track>*{flex:0 0 min(85%,24rem);scroll-snap-align:start}
@media (min-width:1024px){.slider__track>*{flex-basis:calc((100% - 2 * var(--space-5)) / 3)}}
.slider__nav{display:flex;gap:var(--space-3);margin-block-start:var(--space-5)}
.slider__btn{inline-size:48px;block-size:48px;border-radius:50%;border:1px solid var(--color-line-strong);background:none;cursor:pointer;display:grid;place-items:center}
.quote{display:flex;flex-direction:column;gap:var(--space-4);block-size:100%}
.quote footer{margin-block-start:auto;font-size:var(--text-sm);color:var(--color-ink-muted)}

/* prose */
.prose{max-inline-size:var(--measure);display:flex;flex-direction:column;gap:var(--space-4)}
.prose h2{margin-block-start:var(--space-6)}
.prose h3{margin-block-start:var(--space-5)}
.link-list{display:grid;gap:var(--space-3)}
.link-list a{font-weight:var(--weight-medium);display:inline-flex;align-items:center;min-block-size:44px}
.link-list{gap:0}
.tel{display:inline-flex;align-items:center;min-block-size:44px}

/* placeholders and images */
.ph{aspect-ratio:var(--ratio,3 / 2);inline-size:100%;border-radius:var(--img-radius);background:repeating-linear-gradient(135deg,var(--color-surface-subtle) 0 12px,var(--color-line) 12px 13px);display:grid;place-items:end start;padding:var(--space-4);font-size:var(--text-xs);color:var(--color-ink-muted)}
.media{border-radius:var(--img-radius);overflow:hidden}

/* forms */
.field{display:flex;flex-direction:column;gap:var(--space-2)}
.field label{font-size:var(--text-sm);font-weight:var(--weight-medium)}
.field input,.field textarea,.field select{min-block-size:48px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);font-size:max(1rem,var(--text-base))}
.field [dir=ltr]{text-align:end}
.field input:disabled,.field textarea:disabled,.field select:disabled{background:var(--color-disabled-bg);color:var(--color-disabled-ink);cursor:not-allowed}
.field__error{font-size:var(--text-sm);color:var(--color-error)}

/* band, footer, sticky bar */
.band .split{--ratio:minmax(0,7fr) minmax(0,4fr)}
[data-section=footer] a{text-decoration:none}
/* footer columns: details elements, accordions on mobile, opened by script from 768px (and openable without it) */
.footer__acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;min-block-size:48px;cursor:pointer}
.footer__acc summary::-webkit-details-marker{display:none}
.footer__acc summary::after{content:"";inline-size:8px;block-size:8px;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;transform:rotate(45deg)}
.footer__acc[open] summary::after{transform:rotate(-135deg)}
@media (max-width:767.98px){.footer__acc{border-block-end:1px solid color-mix(in srgb,currentColor 20%,transparent)}}
@media (min-width:768px){.footer__acc summary{pointer-events:none;min-block-size:0}.footer__acc summary::after{display:none}}
[data-section=footer] a:hover{text-decoration:underline}
.footer__cols{display:grid;gap:var(--space-6)}
@media (min-width:768px){.footer__cols{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.footer__legal{margin-block-start:var(--space-6);padding-block-start:var(--space-4);border-block-start:1px solid color-mix(in srgb,currentColor 20%,transparent);font-size:var(--text-sm)}
.sticky-cta{position:fixed;inset-inline:0;inset-block-end:0;z-index:15;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--color-line);box-shadow:var(--shadow-2)}
.sticky-cta a{display:grid;place-items:center;min-block-size:60px;background:var(--color-surface);color:var(--color-ink);font-weight:var(--weight-medium);text-decoration:none}
.sticky-cta a:first-child{background:var(--color-brand-deep);color:var(--color-on-brand-deep)}
@media (max-width:767px){body.has-sticky{padding-block-end:60px}}
@media (min-width:768px){.sticky-cta{display:none}}
.visually-hidden{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ===== component theme (shared) ===== */

:root{--btn-radius:var(--radius-pill);--card-radius:var(--radius-md);--card-border:1px solid var(--color-line);--card-shadow:none;--img-radius:var(--radius-sm)}
/* spec 5: primary button is the one orange element; dark ink on it */
.btn{background:var(--color-secondary);color:var(--color-on-secondary);border-color:transparent}
.btn:hover{background:var(--color-secondary-hover);color:var(--color-on-secondary)}
.on-dark .btn{background:var(--color-secondary);color:var(--color-on-secondary)}
.on-dark .btn:hover{background:var(--color-secondary-hover)}
.btn--secondary,.btn--secondary:hover{background:transparent;color:var(--color-brand-deep);border-color:var(--color-brand-deep)}
.btn--secondary:hover{background:var(--color-brand-tint)}
/* spec 5: cards hover by border only, title underlines */
.card:hover{border-color:var(--color-line-strong)}
.card:hover .card__link{text-decoration:underline}
/* spec 5: answer block is plain, start border only */
.answer{background:none;border-inline-start:3px solid var(--color-brand);border-radius:0;padding-block:var(--space-2);padding-inline-start:var(--space-5);padding-inline-end:0;font-size:var(--text-lg);line-height:var(--leading-body)}
@media (min-width:768px){.answer{font-size:var(--text-xl)}}
/* header */
html,body{overflow-x:clip}
.nav a,.header__logo,.btn{white-space:nowrap}
.header__logo{font-size:var(--text-base)}
@media (min-width:1024px){.nav .nav__extra,.nav .nav__close{display:none}.nav{gap:var(--space-4)}}
.header__logo{gap:var(--space-3);font-weight:var(--weight-display);font-size:var(--text-lg)}
.header__logo img{inline-size:40px;block-size:40px}
/* amendment 3: wordmark shrinks under 480, hidden only under 360 */
@media (max-width:479.98px){.header__logo span{font-size:var(--text-sm)}.header__bar{gap:var(--space-3)}.header__cta{padding-inline:var(--space-4)}}
@media (max-width:359.98px){.header__logo span{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%)}}
/* amendment 2: header button is secondary while the hero is in view */
.header__cta{background:transparent;color:var(--color-brand-deep);border-color:var(--color-brand-deep)}
.header__cta:hover{background:var(--color-brand-tint);color:var(--color-brand-deep)}
body.hero-out .header__cta{background:var(--color-secondary);color:var(--color-on-secondary);border-color:transparent}
body.hero-out .header__cta:hover{background:var(--color-secondary-hover)}
/* services dropdown: details in the nav row, plain list in the drawer */
.nav__dd{position:relative}
.nav__dd summary{list-style:none;cursor:pointer;display:flex;align-items:center;min-block-size:44px;gap:var(--space-1)}
.nav__dd summary::-webkit-details-marker{display:none}
.nav__dd summary::after{content:"";inline-size:8px;block-size:8px;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-inline-start:var(--space-1)}
.nav__dd>div{display:grid}
@media (min-width:1024px){.nav__dd>div{position:absolute;inset-block-start:100%;inset-inline-start:0;min-inline-size:240px;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-3);gap:0;z-index:5}.nav__dd>div a{min-block-size:44px;padding-inline:var(--space-3)}}
/* 5.11: the services dropdown, grouped by stage */
.nav__dd-group{display:grid}
.nav__dd-h{display:block;font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-ink-muted);padding:var(--space-3) var(--space-3) var(--space-1)}
.nav__dd-top{font-weight:var(--weight-medium)}
@media (min-width:1024px){.nav__dd--wide>div{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:0 var(--space-4);min-inline-size:520px}.nav__dd--wide>div>.nav__dd-top{grid-column:1/-1;border-block-end:1px solid var(--color-line);margin-block-end:var(--space-2)}.nav__dd--wide .nav__dd-group{display:block}.nav__dd--wide .nav__dd-group a{display:flex;align-items:center}}
@media (max-width:1023.98px){.nav__dd summary{min-block-size:56px;font-size:var(--text-xl);border-block-end:1px solid var(--color-line)}.nav__dd div a{padding-inline-start:var(--space-5);font-size:var(--text-lg)}.nav__dd>div{inline-size:100%}.nav__dd-h{padding-inline-start:var(--space-5)}.nav__dd-top{border-block-end:1px solid var(--color-line)}}
/* amendments: focus ring 3 px; tap targets; body 18 px on desktop */
:focus-visible{outline-width:3px}
.on-dark :focus-visible{box-shadow:0 0 0 1px var(--color-ink-on-dark)}
.steps a,.footer__legal a{display:inline-flex;min-block-size:44px;align-items:center}
.related a{min-block-size:56px}
@media (min-width:768px){body{font-size:var(--text-lg)}}
/* amendment 4: tight joins on both sides, hairline on the following white section */
.section--tight{padding-block:var(--space-6)}
.hairline{padding-block-start:0}
.hairline>.wrap{border-block-start:1px solid var(--color-line);padding-block-start:var(--space-6)}
/* amendment 5: one link per card, stretched */
.card{position:relative}
.card__link::after{content:"";position:absolute;inset:0}
.card .btn{position:relative;z-index:1}
/* cradle for tall content: the ring spans the height */
.wsc-cradle--tall::after{inline-size:auto;block-size:100%}
.nav a:hover{text-decoration:underline}
.header__cta{margin-inline-start:auto}
@media (min-width:1024px){.header__cta{margin-inline-start:0}}
/* breadcrumb: flush to the start edge, one baseline, an arrow between items, no underline */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--space-2);list-style:none;margin:0;padding:0;font-size:var(--text-sm);line-height:1.4;color:var(--color-ink-muted)}
.crumbs>li{display:inline-flex;align-items:center;min-block-size:44px;margin:0}
.crumbs>li~li::before{content:"\203A";display:inline-block;margin-inline-end:var(--space-2);color:var(--color-ink-muted)} /* › as typed: reads ">" in the Hebrew trail (5.5) */
.crumbs>.separator{display:none}
.crumbs a{color:var(--color-ink-muted);text-decoration:none}
.crumbs a:hover,.crumbs a:focus-visible{color:var(--color-link,var(--color-ink));text-decoration:underline;text-underline-offset:3px}
.crumbs [aria-current=page]{color:var(--color-ink)}
[data-section=breadcrumb]{padding-block:var(--space-4) 0}
/* hero */
[data-section=hero]{padding-block-start:var(--space-6);padding-block-end:var(--space-6)}
.hero .split{--ratio:minmax(0,7fr) minmax(0,5fr);align-items:center}
/* pillar hero: text + answer at inline-start, cradle-framed card at inline-end spanning both rows (amendment 14) */
.hero__grid{display:grid;gap:var(--space-5)}
@media (min-width:1024px){.hero__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto auto;align-items:center;column-gap:var(--space-7)}.hero__visual{grid-column:2;grid-row:1/3}.hero__answer{grid-column:1}}
.hero__answer{padding:0}
@media (max-width:1023.98px){.hero__visual{max-inline-size:480px}}
.tool-card__next{background:none;border:0;padding:0;color:var(--color-brand-deep);text-decoration:underline;text-underline-offset:.2em;font:inherit;cursor:pointer;min-block-size:44px}
@media (max-width:767.98px){.tool-card{gap:var(--space-3)}} /* 5.5: all answers show, a tap answers */
.hero__eyebrow{color:var(--color-accent)}
.hero__actions{margin-block-start:var(--space-2)}
.hero__visual{padding:clamp(var(--space-5),6vw,var(--space-7))}
.tool-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface-raised);border:var(--card-border);border-radius:var(--card-radius)}
.tool-card fieldset{border:0;padding:0;margin:0;display:grid;gap:var(--space-2)}
.tool-card legend{font-weight:var(--weight-medium);margin-block-end:var(--space-2)}
.tool-card label{display:flex;align-items:center;gap:var(--space-3);min-block-size:44px;padding-inline:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);cursor:pointer}
.tool-card label:hover{border-color:var(--color-line-strong)}
@media (max-width:767.98px){.hero__visual{padding:var(--space-4)}}
/* key facts */
.key-facts{grid-template-columns:1fr}
@media (min-width:768px){.key-facts{grid-template-columns:repeat(3,1fr)}}
.key-facts dd{font-size:var(--text-xl)}
.key-facts dd .small{display:block;font-weight:var(--weight-body);color:var(--color-ink-muted)}
/* body with in-page nav */
.body-grid{display:grid;gap:var(--space-6)}
@media (min-width:1024px){.body-grid{grid-template-columns:minmax(0,8fr) minmax(0,4fr);align-items:start}}
.toc{border:var(--card-border);border-radius:var(--card-radius);padding:var(--space-5);display:grid;gap:var(--space-2)}
@media (min-width:1024px){.toc{position:sticky;inset-block-start:calc(72px + var(--space-5))}}
.toc a{display:inline-flex;min-block-size:44px;align-items:center;text-decoration:none}
.toc a:hover{text-decoration:underline}
.included{display:grid;gap:var(--space-3);padding-inline-start:var(--space-5);list-style:disc}
.included li strong{font-weight:var(--weight-medium)}
/* process */
.steps{display:grid;gap:var(--space-5);counter-reset:s}
@media (min-width:768px){.steps{grid-template-columns:repeat(4,1fr)}}
.steps li{counter-increment:s;display:grid;gap:var(--space-2);padding-block-start:var(--space-4);border-block-start:1px solid var(--color-line)}
.steps li::before{content:counter(s);font-size:var(--text-2xl);font-weight:var(--weight-display);color:var(--color-brand);line-height:1}
/* pricing */
.plans{display:grid;gap:var(--space-5)}
@media (min-width:768px){.plans{grid-template-columns:repeat(3,1fr)}}
.plan{display:flex;flex-direction:column;gap:var(--space-4)}
.plan--rec{border-color:var(--color-brand)}
.plan__price{font-size:var(--text-3xl);font-weight:var(--weight-display);font-variant-numeric:tabular-nums}
.plan ul{display:grid;gap:var(--space-2);padding-inline-start:var(--space-4);list-style:disc}
.table-wrap{overflow-x:auto}
.table{inline-size:100%;border-collapse:collapse;font-size:var(--text-sm)}
.table th,.table td{padding:var(--space-3);border-block-end:1px solid var(--color-line);text-align:start;vertical-align:top}
.table thead th{background:var(--color-surface-subtle)}
.table th:first-child,.table td:first-child{position:sticky;inset-inline-start:0;background:var(--color-surface)}
.table .num{text-align:end;font-variant-numeric:tabular-nums}
@media (min-width:768px){.table-wrap{display:none}}
@media (max-width:767.98px){.plans{display:none}}
/* proof */
.stats{display:grid;gap:var(--space-5)}
@media (min-width:768px){.stats{grid-template-columns:repeat(3,1fr)}}
.stat{display:grid;gap:var(--space-1);padding-block-start:var(--space-4);border-block-start:1px solid var(--color-line)}
.stat__value{font-size:var(--text-4xl);font-weight:var(--weight-display);line-height:1;font-variant-numeric:tabular-nums}
.stat--key .stat__value{color:var(--color-accent)}
.quotes{display:grid;gap:var(--space-5);margin-block-start:var(--space-7)}
@media (min-width:768px){.quotes{grid-template-columns:1fr 1fr}}
.logos{display:flex;flex-wrap:wrap;gap:var(--space-5);align-items:center;margin-block-start:var(--space-6)}
.logos .ph{inline-size:120px;block-size:32px;aspect-ratio:auto;border-radius:var(--radius-sm);padding:0;place-items:center;font-size:var(--text-2xs)}
/* related */
.related{display:grid;gap:0}
.related a{display:grid;gap:var(--space-1);padding-block:var(--space-4);border-block-end:1px solid var(--color-line);text-decoration:none}
.related a:hover .related__t{text-decoration:underline}
.related__t{font-weight:var(--weight-medium)}
/* cta band with form */
.band .split{--ratio:minmax(0,5fr) minmax(0,6fr);align-items:start}
.form{display:grid;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface);color:var(--color-ink);border-radius:var(--card-radius)}
.form .row{display:grid;gap:var(--space-4)}
@media (min-width:768px){.form .row{grid-template-columns:1fr 1fr}}
.check{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--text-sm)}
.check input{inline-size:20px;block-size:20px;margin-block-start:2px}
/* footer on subtle surface per spec */
[data-section=footer]{background:var(--color-surface-subtle);color:var(--color-ink)}
[data-section=footer] .eyebrow{margin-block-end:var(--space-3)}
.footer__list{display:grid;gap:var(--space-1)}
.footer__list a{display:inline-flex;min-block-size:44px;align-items:center}
.badge{display:inline-block;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-brand-tint);color:var(--color-brand-deep);font-size:var(--text-xs);font-weight:var(--weight-medium)}
/* sticky bar per spec: surface bg, first half primary style */
.sticky-cta{box-shadow:none;border-block-start:1px solid var(--color-line-strong);gap:var(--space-3);background:var(--color-surface);padding:var(--space-2);grid-template-columns:1fr 1fr}
.sticky-cta a{min-block-size:48px;border-radius:var(--btn-radius)}
.sticky-cta a:first-child{background:var(--color-secondary);color:var(--color-on-secondary)}
.sticky-cta a:last-child{border:1px solid var(--color-brand-deep);color:var(--color-brand-deep)}
@media (max-width:767px){body.has-sticky{padding-block-end:64px}}
/* one section-level reveal, spec 8 */
@media (prefers-reduced-motion:no-preference){[data-section=proof] .wrap{animation:rise var(--duration-slow) var(--ease-entrance) both}@keyframes rise{from{opacity:.001;transform:translateY(12px)}}}
.visually-hidden{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ===== home ===== */

/* home: hero image in the cradle, 16:10 desktop, 4:3 mobile */
.hero__visual .ph{inline-size:100%;aspect-ratio:4/3;border-radius:var(--img-radius)}
@media (max-width:767.98px){.hero__visual .ph{aspect-ratio:4/3;max-block-size:240px}}
.hero .title{font-size:var(--text-4xl)}
@media (min-width:1024px){.hero .title{font-size:var(--text-5xl)}}
/* logo strip: a quiet band, not a section */
.logo-band{padding-block:var(--space-5)}
.logo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);align-items:center;justify-items:center}
@media (min-width:768px){.logo-strip{grid-template-columns:repeat(8,1fr)}}
.logo-strip .ph{inline-size:100%;max-inline-size:140px;block-size:40px;aspect-ratio:auto;padding:0;place-items:center;font-size:var(--text-2xs);border-radius:var(--radius-sm)}
/* services grid: 3 up, pillar card spans the row */
.services{display:grid;gap:var(--space-5)}
@media (min-width:768px){.services{grid-template-columns:repeat(3,1fr)}.services .card--wide{grid-column:1/-1}}
.card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}
.card--wide{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;border-color:var(--color-brand)}
.card--wide .card__body{flex:1 1 420px;display:grid;gap:var(--space-2)}
.card__title{font-size:var(--text-xl);font-weight:var(--weight-medium)}
.card__link{color:inherit;text-decoration:none}
.card__icon{inline-size:28px;block-size:28px;color:var(--color-brand)}
/* process: horizontal steps on desktop, vertical timeline on mobile */
@media (max-width:767.98px){.steps li{grid-template-columns:auto 1fr;column-gap:var(--space-4);border-block-start:0;border-inline-start:1px solid var(--color-line);padding-block-start:0;padding-inline-start:var(--space-4)}.steps li::before{grid-row:1/3}}
/* testimonials 3 up */
.quotes--3{margin-block-start:var(--space-7)}
@media (min-width:1024px){.quotes--3{grid-template-columns:repeat(3,1fr)}}
/* tools grid */
.tools{display:grid;gap:var(--space-5)}
@media (min-width:768px){.tools{grid-template-columns:repeat(3,1fr)}}
/* related with dates */
.related time{font-variant-numeric:tabular-nums}

/* ===== service ===== */

/* service: text-only hero at measure, no cradle on this page type */
.hero--text .stack{max-inline-size:var(--measure-wide,60rem)}
.hero__eyebrow--muted{color:var(--color-ink-muted)}
/* body with sticky contact card at inline-end */
.contact-card{display:grid;gap:var(--space-3);padding:var(--space-5);border:var(--card-border);border-radius:var(--card-radius)}
@media (min-width:1024px){.contact-card{position:sticky;inset-block-start:calc(72px + var(--space-5))}}
.contact-card .btn{justify-self:start}
@media (max-width:1023.98px){.contact-card{order:-1}}
.contact-card a.tel{font-size:var(--text-lg);font-weight:var(--weight-medium);text-decoration:none}
/* browser frame, DESIGN.md 6 */
.browser-frame{border:1px solid var(--color-line);border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface)}
.browser-frame__bar{display:flex;gap:var(--space-2);padding:var(--space-3);border-block-end:1px solid var(--color-line)}
.browser-frame__bar i{inline-size:10px;block-size:10px;border-radius:50%;background:var(--color-line-strong)}
.browser-frame .ph{border-radius:0;--ratio:16/10}
.proof-split{--ratio:minmax(0,5fr) minmax(0,7fr);align-items:center}
.proof-split .quote{margin:0}
.band__form{padding:var(--space-5)}
@media (max-width:1023.98px){.band__form{padding:0}.band__form::after{display:none}}
.band__form .form{position:relative;z-index:1}
.proof-split>*{align-self:center}
.proof-split .quote{display:grid;gap:var(--space-3)}
/* related as a 3-up card row */
.related-cards{display:grid;gap:var(--space-5)}
@media (min-width:768px){.related-cards{grid-template-columns:repeat(3,1fr)}}
.card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}
.card__title{font-size:var(--text-xl);font-weight:var(--weight-medium)}
.card__link{color:inherit;text-decoration:none}
/* steps mobile timeline (same rule as home) */
@media (max-width:767.98px){.steps li{grid-template-columns:auto 1fr;column-gap:var(--space-4);border-block-start:0;border-inline-start:1px solid var(--color-line);padding-block-start:0;padding-inline-start:var(--space-4)}.steps li::before{grid-row:1/3}}

/* ===== pricing ===== */

.hero--text .stack{max-inline-size:var(--measure-wide,60rem)}
.hero__eyebrow--muted{color:var(--color-ink-muted)}
.hero--text .lead{font-size:var(--text-lg)}
/* plans: the recommended one carries the only primary button */
.plan--rec .btn{background:var(--color-secondary);color:var(--color-on-secondary);border-color:transparent}
/* amendment 10: one structure, cards stack under 768 */
@media (max-width:767.98px){.plans{display:grid}}
.plan .btn{margin-block-start:auto;align-self:flex-start}
.plan--rec{border-color:var(--color-line)}
.plan__cradle{padding:var(--space-4) var(--space-5);justify-self:start}
.plan__cradle .plan__price{margin:0}
.plan__price .small{display:block;margin-block-start:var(--space-1)}
.plan__meta{font-size:var(--text-sm);color:var(--color-ink-muted)}
/* comparison table, all widths */
.compare-wrap{overflow-x:auto;position:relative;margin-block-start:var(--space-5)} /* position: the sticky cells and the hidden caption otherwise resolve against body and widen the document */
.compare{inline-size:100%;border-collapse:collapse;font-size:var(--text-sm)}
.compare th,.compare td{padding:var(--space-3);border-block-end:1px solid var(--color-line);text-align:start;vertical-align:top;min-inline-size:120px}
.compare thead th{background:var(--color-surface);font-weight:var(--weight-medium)}
.compare th:first-child,.compare td:first-child{position:sticky;inset-inline-start:0;background:var(--color-surface-subtle);min-inline-size:200px}
.compare thead th:first-child{background:var(--color-surface)}
.compare td{text-align:center}
.compare .yes{color:var(--color-brand-deep)}.compare .no{color:var(--color-ink-muted)}
.compare svg{inline-size:20px;block-size:20px;vertical-align:middle}
/* which-plan panel in the body */
.tool-panel{border:1px solid var(--color-line-strong);border-radius:var(--card-radius);padding:var(--space-6);display:grid;gap:var(--space-4);margin-block-start:var(--space-5)}
.tool-panel fieldset{border:0;padding:0;margin:0;display:grid;gap:var(--space-2)}
.tool-panel legend{font-weight:var(--weight-medium);margin-block-end:var(--space-2)}
.tool-panel label{display:flex;align-items:center;gap:var(--space-3);min-block-size:44px;padding-inline:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);cursor:pointer}
.tool-panel .btn{justify-self:start}

/* ===== tool ===== */

.hero--text .stack{max-inline-size:var(--measure-wide,60rem)}
.hero__eyebrow--muted{color:var(--color-ink-muted)}
/* the input row: one focal element, tools spec 4.1 */
.tool-input{display:grid;gap:var(--space-3);margin-block-start:var(--space-2)}
@media (min-width:768px){.tool-input{grid-template-columns:minmax(0,1fr) auto;align-items:end}}
.tool-input input[type=url]{direction:ltr;text-align:end;min-block-size:48px;font-size:var(--text-base)}
.tool-input .btn{min-block-size:48px}
.band .stack .btn{align-self:flex-start}
/* result panel: replaces the hero visual in place */
.result-slot:empty{display:none}
.result-slot:not(:empty){min-block-size:640px}
.result{margin-block-start:var(--space-6);border:1px solid var(--color-line-strong);border-radius:var(--card-radius);padding:var(--space-5);display:grid;gap:var(--space-5)}
.result__head{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:baseline;justify-content:space-between}
.gauges{display:grid;gap:var(--space-5)}
@media (min-width:768px){.gauges{grid-template-columns:1fr 1fr}}
.gauge{display:grid;justify-items:center;gap:var(--space-2);text-align:center}
.gauge svg{inline-size:160px;block-size:88px;overflow:visible}
.gauge__track{stroke:var(--color-line);stroke-width:10;fill:none;stroke-linecap:round}
.gauge__fill{stroke:var(--color-brand);stroke-width:10;fill:none;stroke-linecap:round;stroke-dasharray:251;stroke-dashoffset:251}
.gauge__value{font-size:var(--text-3xl);font-weight:var(--weight-display);line-height:1;font-variant-numeric:tabular-nums}
.vitals{display:grid;gap:var(--space-3)}
@media (min-width:768px){.vitals{grid-template-columns:repeat(3,1fr)}}
/* four cards (ownership, email-check, checkout-check): two by two, never three plus one */
.vitals:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.vitals:has(>:nth-child(4):last-child) .vital__v{overflow-wrap:anywhere}
@media (max-width:479px){.vitals:has(>:nth-child(4):last-child) .vital__v{font-size:var(--text-lg)}}
.vital{display:grid;gap:var(--space-1);padding:var(--space-4);border:var(--card-border);border-radius:var(--radius-sm)}
.vital__v{font-size:var(--text-xl);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}
.status{display:inline-block;inline-size:10px;block-size:10px;border-radius:50%;background:var(--color-line-strong);margin-inline-end:var(--space-2)}
.findings{display:grid;gap:var(--space-2)}
.findings li{display:grid;grid-template-columns:auto 1fr;gap:var(--space-3);align-items:start;padding-block:var(--space-3);border-block-end:1px solid var(--color-line)}
.lead-form{display:grid;gap:var(--space-3);padding:var(--space-5);background:var(--color-surface-subtle);border-radius:var(--card-radius)}
.lead-form .row{display:grid;gap:var(--space-3)}
@media (min-width:768px){.lead-form .row{grid-template-columns:1fr 1fr}}
/* checks list */
.checks{display:grid;gap:var(--space-3);padding-inline-start:var(--space-5);list-style:disc}
@media (min-width:768px){.checks{grid-template-columns:1fr 1fr;column-gap:var(--space-7)}}
/* steps 3 up */
@media (min-width:768px){.steps--3{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767.98px){.steps li{grid-template-columns:auto 1fr;column-gap:var(--space-4);border-block-start:0;border-inline-start:1px solid var(--color-line);padding-block-start:0;padding-inline-start:var(--space-4)}.steps li::before{grid-row:1/3}}
/* related cards */
.related-cards{display:grid;gap:var(--space-5)}
@media (min-width:768px){.related-cards{grid-template-columns:repeat(3,1fr)}}
.card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}
.card__title{font-size:var(--text-xl);font-weight:var(--weight-medium)}
.card__link{color:inherit;text-decoration:none}

/* WordPress and plugin hooks */
.screen-reader-text{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.prose img,.prose figure{max-inline-size:100%;block-size:auto;border-radius:var(--img-radius)}
.prose h2{margin-block:var(--space-7) var(--space-4)}
.prose h3{margin-block:var(--space-6) var(--space-3)}
.prose ul,.prose ol{padding-inline-start:var(--space-5);display:grid;gap:var(--space-2)}
.prose ul{list-style:disc}
.prose ol{list-style:decimal}
.prose :is(ul,ol)[class]{list-style:revert;padding-inline-start:var(--space-5)}
.prose ul[class]{list-style:disc}
.prose ol[class]{list-style:decimal}
.prose li>:is(ul,ol){margin-block-start:var(--space-2)}
.prose table{inline-size:100%;border-collapse:collapse}
.prose th,.prose td{padding:var(--space-3);border-block-end:1px solid var(--color-line);text-align:start}
.wp-block-image img{block-size:auto}
/* Contact Form 7 rendered inside .form */
.form .wpcf7-form{display:grid;gap:var(--space-4)}
.form .wpcf7-form p{display:grid;gap:var(--space-2)}
.form .wpcf7-form label{font-weight:var(--weight-medium)}
.form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-acceptance):not(.wpcf7-checkbox):not(.wpcf7-radio){inline-size:100%;min-block-size:48px;padding-inline:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);font:inherit;font-size:max(16px,1em)}
.form .wpcf7-form-control:not(.wpcf7-submit):focus{border-color:var(--color-line-strong)}
.form .wpcf7-form-control[type=tel],.form .wpcf7-form-control[type=email],.form .wpcf7-form-control[type=url]{direction:ltr;text-align:end}
.form .wpcf7-not-valid-tip{color:var(--color-error);font-size:var(--text-sm);display:flex;gap:var(--space-2);align-items:center}
.form .wpcf7-not-valid{border-color:var(--color-error)!important}
.form .wpcf7-response-output{margin:0;padding:var(--space-4);border:0;border-radius:var(--radius-sm);background:var(--color-brand-tint);color:var(--color-ink)}
.form .wpcf7-form.sent>*:not(.wpcf7-response-output){display:none}
.form .wpcf7-spinner{display:none}
.form .wpcf7-acceptance .wpcf7-list-item,.form .wpcf7-checkbox .wpcf7-list-item,.form .wpcf7-radio .wpcf7-list-item{margin:0;display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--text-sm)}
.form .wpcf7-checkbox,.form .wpcf7-radio{display:grid;gap:var(--space-2);border:0;padding:0;background:none}
.form .wpcf7-acceptance label,.form .wpcf7-checkbox label,.form .wpcf7-radio label{display:flex;gap:var(--space-3);align-items:flex-start;margin:0;font-weight:var(--weight-body);cursor:pointer} /* 5.6: the newsletter row looks like the privacy row */
.form .wpcf7-acceptance input,.form .wpcf7-checkbox input,.form .wpcf7-radio input{inline-size:20px;block-size:20px;margin-block-start:2px;flex:none;accent-color:var(--color-brand-deep)}

/* sticky bar appears after the hero leaves the viewport (theme.js); without JS it is shown */
@media (max-width:767.98px){.sticky-cta{transform:translateY(100%);transition:transform var(--duration-base) var(--ease-standard)}.sticky-cta.is-shown,.no-js .sticky-cta{transform:none}}

/* precedence fixes for rules the page sections repeat */
.card.card--wide{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}
.icon{display:inline-block;vertical-align:middle;flex:none}
.plan__ask{margin:0}.plan__ask a{color:var(--color-brand-deep)}

/* ===== 5.1 (2026-10-01) ===== */

/* shared: icon badge, "more" link under a section */
.card__badge{display:inline-grid;place-items:center;inline-size:44px;block-size:44px;border-radius:var(--radius-md);background:var(--color-brand-tint);color:var(--color-brand-deep);flex:none}
.section-more{margin-block-start:var(--space-6)}
.section-more a{display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:44px;font-weight:var(--weight-medium)}

/* process: the number, title and line sit on shared rows, so every line starts at the same height */
.steps li>a,.steps li>strong{min-block-size:44px;display:flex;align-items:center}
@media (min-width:768px){
  .steps{grid-template-rows:auto auto 1fr;row-gap:0}
  .steps li{grid-row:span 3;grid-template-rows:subgrid;row-gap:var(--space-2);align-content:start}
}

/* services and tools cards: badge on top, equal heights */
.services,.tools{align-items:stretch}
.card--svc,.card--tool{gap:var(--space-3)}
.card--tool .eyebrow{margin-block-start:var(--space-1)}
@media (min-width:1024px){.tools{grid-template-columns:repeat(3,1fr)}}

/* about + SLA */
.about__grid{display:grid;gap:var(--space-7);align-items:start}
@media (min-width:1024px){.about__grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}}
.about .section-head{margin-block-end:0}
.about__points{display:grid;gap:var(--space-4)}
.about__points li{display:flex;gap:var(--space-4);align-items:center;font-weight:var(--weight-medium)}
.sla{border:1px solid var(--color-line-strong);border-block-start:4px solid var(--color-brand);border-radius:var(--card-radius);padding:var(--space-5);display:grid;gap:var(--space-4);background:var(--color-surface-raised)}
.sla__title{font-size:var(--text-xl);font-weight:var(--weight-medium)}
.sla__table{inline-size:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.sla__table th,.sla__table td{padding:var(--space-3) var(--space-2);border-block-end:1px solid var(--color-line);text-align:start;vertical-align:top}
.sla__table thead th{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-ink-muted)}
.sla__table tbody th{display:grid;gap:var(--space-1);font-weight:var(--weight-body)}
.sla__table td{font-weight:var(--weight-medium);white-space:nowrap}
.sla__level{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-medium)}
.sla__level::before{content:"";inline-size:10px;block-size:10px;border-radius:50%;background:var(--color-line-strong)}
.sla__row--0 .sla__level::before{background:var(--color-error)}
.sla__row--1 .sla__level::before{background:var(--color-warning)}
.sla__row--2 .sla__level::before{background:var(--color-success)}
@media (max-width:479.98px){.sla{padding:var(--space-4)}.sla__table td{white-space:normal}}

/* article cards */
.posts{display:grid;gap:var(--space-5)}
@media (min-width:768px){.posts{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.posts{grid-template-columns:repeat(3,1fr)}}
.post-card{padding:0;overflow:hidden;gap:0}
.post-card__media{aspect-ratio:16/10;background:var(--color-surface-subtle);overflow:hidden}
.post-card__media img{inline-size:100%;block-size:100%;object-fit:cover}
.post-card__ph{block-size:100%;display:grid;place-items:center;color:var(--color-brand);background:linear-gradient(135deg,var(--color-brand-tint),var(--color-surface-subtle))}
.post-card__body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}
.post-card .eyebrow time{font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:no-preference){.post-card__media img{transition:transform var(--duration-slow) var(--ease-standard)}.post-card:hover .post-card__media img{transform:scale(1.03)}}
@media (min-width:1024px){
  .posts--lead .post-card--wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center}
  .posts--lead .post-card--wide .post-card__media{aspect-ratio:16/9;block-size:100%}
  .posts--lead .post-card--wide .post-card__body{padding:var(--space-7)}
  .posts--lead .post-card--wide .card__title{font-size:var(--text-2xl);font-weight:var(--weight-display)}
}
/* blog chips and pager */
.chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-end:var(--space-6)}
.chips a{display:inline-flex;align-items:center;min-block-size:44px;padding-inline:var(--space-4);border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);text-decoration:none;color:var(--color-ink);font-size:var(--text-sm)}
.chips a:hover{border-color:var(--color-brand-deep)}
.chips a[aria-current=page]{background:var(--color-brand-deep);border-color:var(--color-brand-deep);color:var(--color-on-brand-deep)}
.pager{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-start:var(--space-7)}
.pager .page-numbers{display:inline-grid;place-items:center;min-inline-size:44px;min-block-size:44px;padding-inline:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);text-decoration:none}
.pager .current{background:var(--color-brand-deep);color:var(--color-on-brand-deep);border-color:var(--color-brand-deep)}

/* pillar: services by stage */
.stage-cols{display:grid;gap:var(--space-5);counter-reset:none}
@media (min-width:768px){.stage-cols{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1200px){.stage-cols{grid-template-columns:repeat(4,1fr)}}
.stage-col{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);border:var(--card-border);border-radius:var(--card-radius);background:var(--color-surface-raised)}
.stage-col__head{display:grid;gap:var(--space-2);padding-block-end:var(--space-4);border-block-end:1px solid var(--color-line)}
.stage-col__n{font-size:var(--text-2xl);font-weight:var(--weight-display);color:var(--color-brand);line-height:1}
.stage-col__head a{color:inherit;text-decoration:none}
.stage-col__head a:hover{text-decoration:underline}
.stage-col__list{display:grid;gap:0}
.stage-col__list li{display:flex;align-items:center;gap:var(--space-3)}
.stage-col__list a{display:inline-flex;align-items:center;min-block-size:44px;text-decoration:none;color:var(--color-ink);font-weight:var(--weight-medium)}
.stage-col__list a:hover{color:var(--color-brand-deep);text-decoration:underline}
.stage-col__icon{color:var(--color-brand)}

/* pricing: four plans in one row from 1024 */
@media (min-width:1024px){.plans--4{grid-template-columns:repeat(4,1fr)}}
@media (min-width:768px) and (max-width:1023.98px){.plans--4{grid-template-columns:repeat(2,1fr)}}

/* thank-you page */
.thanks{padding-block:var(--space-7) var(--space-section)}
.thanks__panel{max-inline-size:640px;margin-inline:auto;display:grid;justify-items:center;gap:var(--space-4);text-align:center;padding:var(--space-7) var(--space-5);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-1)}
.thanks__check{display:grid;place-items:center;inline-size:64px;block-size:64px;border-radius:50%;background:var(--color-secondary-tint);color:var(--color-accent)}
.thanks__panel .wsc-thanks{display:grid;gap:var(--space-4);justify-items:center}
.thanks__panel .wsc-thanks__got{font-size:var(--text-lg);font-weight:var(--weight-medium)}
.thanks__panel .wsc-next{display:grid;gap:var(--space-3);justify-items:center}
.thanks__panel .wsc-next__lead{font-size:var(--text-xl);font-weight:var(--weight-display)}
.thanks__panel .wsc-next .cluster{justify-content:center}
.thanks__panel .wsc-next__tel{font-weight:var(--weight-medium);display:inline-flex;align-items:center;min-block-size:44px}
.thanks__steps{max-inline-size:860px;margin:var(--space-7) auto 0;display:grid;gap:var(--space-5);counter-reset:t}
@media (min-width:768px){.thanks__steps{grid-template-columns:repeat(3,1fr)}}
.thanks__steps li{counter-increment:t;display:grid;gap:var(--space-1);padding-block-start:var(--space-4);border-block-start:2px solid var(--color-line);text-align:start}
.thanks__steps li::before{content:counter(t);font-weight:var(--weight-display);color:var(--color-brand)}
.thanks__steps li.is-done{border-block-start-color:var(--color-success)}
.thanks__steps li.is-done::before{content:"\2713";color:var(--color-success)}
.thanks__more{max-inline-size:640px;margin:var(--space-6) auto 0}
.status.is-good{background:var(--color-success)}.status.is-warn{background:var(--color-warning)}.status.is-bad{background:var(--color-error)}
/* mobile: service and tool cards as compact rows (badge beside the text) */
@media (max-width:767.98px){
  .card--svc,.card--tool{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-4);row-gap:var(--space-1);padding:var(--space-4);align-items:start}
  .card--svc .card__badge,.card--tool .card__badge{grid-row:1/span 3;grid-column:1}
  .card--svc>:not(.card__badge),.card--tool>:not(.card__badge){grid-column:2}
  .services,.tools,.posts{gap:var(--space-3)}
  .sla__table thead th{font-size:var(--text-xs)}
}

/* ===== 5.2 home hero: care panel over a full-height photo (concept A in layout C) ===== */
.hero-care{padding:0;overflow:clip}
.hero-care__grid{display:grid;gap:var(--space-6)}
.hero-care__text{padding:var(--space-6) clamp(1.25rem,4vw,2.5rem) 0;max-inline-size:640px}
.hero-care__media{position:relative;min-block-size:420px;margin-inline:clamp(1.25rem,4vw,2.5rem);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface-subtle)}
.hero-care__img,.hero-care__video{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover}
.hero-care__ph{position:absolute;inset:0;background:repeating-linear-gradient(135deg,var(--color-surface-subtle) 0 14px,var(--color-line) 14px 15px)}
.hero-care__pause{position:absolute;inset-block-start:var(--space-4);inset-inline-end:var(--space-4);inline-size:44px;block-size:44px;border-radius:50%;border:0;background:rgba(28,52,83,.72);color:#fff;display:grid;place-items:center;cursor:pointer;z-index:2}
.care-panel{position:absolute;inset-inline:var(--space-4);inset-block-end:var(--space-4);z-index:1;background:var(--color-surface-raised);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);overflow:hidden;font-size:var(--text-sm)}
.care-panel__head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-subtle);border-block-end:1px solid var(--color-line)}
.care-panel__site{font-weight:var(--weight-display)}
.care-panel__ok{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-success) 12%,var(--color-surface));color:var(--color-success);font-weight:var(--weight-medium)}
.care-panel__ok span{inline-size:8px;block-size:8px;border-radius:50%;background:currentColor}
.care-panel__rows{display:grid;padding-inline:var(--space-4)}
.care-panel__rows li{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding-block:var(--space-3);border-block-end:1px solid var(--color-line)}
.care-panel__rows li:last-child{border-block-end:0}
.care-panel__rows span{display:inline-flex;align-items:center;gap:var(--space-2)}
.care-panel__rows .icon{color:var(--color-success)}
.care-panel__rows strong{font-weight:var(--weight-medium);text-align:end}
@media (min-width:1024px){
  .hero-care__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;min-block-size:min(760px,calc(100svh - 72px))}
  .hero-care__text{align-self:center;justify-self:end;padding-block:var(--space-7);padding-inline:clamp(2rem,4vw,4rem);max-inline-size:640px}
  /* 5.11: every hero bleeds to the viewport edge on the media side; the text column's start edge is the container's
     edge (same math as .wrap), so the headline lines up with the page grid on every template. */
  .hero-care__text{justify-self:start;inline-size:100%;max-inline-size:none;padding-inline-start:max(clamp(1.25rem,4vw,2.5rem),calc((100vw - var(--container)) / 2 + clamp(1.25rem,4vw,2.5rem)));padding-inline-end:clamp(2rem,4vw,4rem);box-sizing:border-box}
  .hero-care__text>*{max-inline-size:640px}
  .hero-care__grid{inline-size:100%}
  .hero-care__media{margin:0;border-radius:0;border-start-start-radius:var(--radius-lg);border-end-start-radius:var(--radius-lg);min-block-size:100%}
  .care-panel{inset-inline:auto;inset-inline-start:clamp(2rem,5vw,4.5rem);inset-block-end:clamp(2rem,6vh,4rem);inline-size:min(400px,80%);font-size:var(--text-base)}
}
@media (max-width:1023.98px){.hero-care__media{min-block-size:0;aspect-ratio:4/5;max-block-size:560px}.care-panel__rows li:nth-child(n+3){display:none}.care-panel{font-size:var(--text-xs)}}
@media (min-width:600px) and (max-width:1023.98px){.hero-care__media{aspect-ratio:16/10}}

/* ===== 5.4: management pillar, pricing by layers, about ===== */
@media (min-width:1024px){.stage-cols--3{grid-template-columns:repeat(3,1fr)}}
.layer-list{display:grid;gap:var(--space-2)}
.layer-list li{display:flex;align-items:flex-start;gap:var(--space-2);line-height:1.5}
.layer-list__icon{flex:none;margin-block-start:3px;color:var(--color-success)}
.layer-links{display:grid;gap:0;margin-block-start:auto;padding-block-start:var(--space-3);border-block-start:1px solid var(--color-line)}
.layer-links a{display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:44px;color:var(--color-brand-deep);font-weight:var(--weight-medium);text-decoration:none}
.layer-links a:hover{text-decoration:underline}
.layer-card,.promise-card{display:grid;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface-raised);border:var(--card-border);border-radius:var(--card-radius)}
.layer-card ol,.promise-card ul{display:grid;gap:var(--space-3)}
.layer-card li,.promise-card li{display:flex;align-items:center;gap:var(--space-3)}
.layer-card li>span:last-child{display:grid;gap:2px}
.card--rec{border-color:var(--color-brand)}
/* pricing by layers */
.layers{display:grid;gap:var(--space-5);margin-block-end:var(--space-6)}
@media (min-width:768px){.layers{grid-template-columns:repeat(3,1fr)}}
.layer{position:relative}
.layer__n{font-size:var(--text-2xl);font-weight:var(--weight-display);color:var(--color-brand);line-height:1}
.layer__price{font-size:var(--text-xl);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}
.layers .layer:not(:last-child)::after{content:"+";position:absolute;inset-block-start:50%;inset-inline-end:calc(var(--space-5) / -2 - 14px);transform:translateY(-50%);display:none;place-items:center;inline-size:28px;block-size:28px;border-radius:50%;background:var(--color-surface);border:1px solid var(--color-line);color:var(--color-ink-muted);font-weight:var(--weight-medium);z-index:1}
@media (min-width:768px){.layers .layer:not(:last-child)::after{display:grid}}
.estimator{display:grid;gap:var(--space-4);max-inline-size:640px;padding:var(--space-5);border:1px solid var(--color-brand);border-radius:var(--card-radius);background:var(--color-brand-tint)}
.estimator__row{display:grid;gap:var(--space-2)}
.estimator__row label{font-weight:var(--weight-medium)}
.estimator select{min-block-size:44px;padding-inline:var(--space-3);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);font:inherit}
.estimator input[type=range]{inline-size:100%;accent-color:var(--color-brand-deep);min-block-size:44px}
.estimator__check{display:inline-flex;align-items:center;gap:var(--space-2);min-block-size:44px}
.estimator__check input{inline-size:20px;block-size:20px;accent-color:var(--color-brand-deep)}
.estimator__total{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);margin:0;padding-block-start:var(--space-4);border-block-start:1px solid var(--color-line-strong)}
.estimator__total bdi{font-size:var(--text-3xl);font-weight:var(--weight-display);font-variant-numeric:tabular-nums;color:var(--color-ink)}
.data-table{inline-size:100%;max-inline-size:640px;border-collapse:collapse;font-variant-numeric:tabular-nums}
.data-table th,.data-table td{padding:var(--space-3) var(--space-2);border-block-end:1px solid var(--color-line);text-align:start}
.data-table thead th{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-ink-muted)}
.data-table .is-best td{background:var(--color-brand-tint)}
.mgmt-calc{display:grid;gap:var(--space-6);align-items:start}
@media (min-width:900px){.mgmt-calc{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.mgmt-calc noscript{grid-column:1/-1}
.ladder{display:grid;gap:var(--space-3)}
.promise-card{min-inline-size:min(100%,340px)}
/* about */
.diffs{display:grid;gap:var(--space-5)}
@media (min-width:768px){.diffs{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.diffs{grid-template-columns:repeat(3,1fr)}}
.diff__head{display:flex;align-items:center;justify-content:space-between}
.diff__n{font-size:var(--text-2xl);font-weight:var(--weight-display);color:var(--color-line-strong);line-height:1;font-variant-numeric:tabular-nums}
.hero--about .split{align-items:center}
@media (min-width:992px){.hero--about .split{grid-template-columns:1.2fr 1fr}}

/* 5.5: the hero side cards: title centred */
.hero__visual .layer-card>.eyebrow,.hero__visual .promise-card>.eyebrow,.hero__visual .tool-card>.eyebrow,.hero__visual .tool-card>.subtitle,.hero__visual .wsc-tool-card>.eyebrow{text-align:center}

/* ===== 5.5 plan builder (price list) ===== */
.builder{display:grid;gap:var(--space-6);align-items:start}
@media (min-width:1100px){.builder{grid-template-columns:minmax(0,1fr) 320px}}
.builder__steps{display:grid;gap:var(--space-7)}
.builder__step{display:grid;gap:var(--space-4);margin:0;padding:0;border:0;min-inline-size:0}
.builder__legend{display:flex;align-items:center;gap:var(--space-4);padding:0;float:none;inline-size:100%;margin:0}
.builder__n{display:inline-grid;place-items:center;inline-size:44px;block-size:44px;border-radius:50%;background:var(--color-brand-deep);color:var(--color-on-brand-deep);font-weight:var(--weight-display);flex:none}
.builder__lt{display:grid;gap:2px}
.builder__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-display);line-height:1.2}
.builder__help{margin:0}
.choices{display:grid;gap:var(--space-4)}
@media (min-width:640px){.choices--2,.choices--3,.choices--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.choices--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1280px){.choices--4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.choice{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border:1px solid var(--color-line-strong);border-radius:var(--card-radius);background:var(--color-surface-raised);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
.choice:hover{border-color:var(--color-brand)}
.choice input{position:absolute;inset-block-start:var(--space-5);inset-inline-end:var(--space-5);inline-size:20px;block-size:20px;margin:0;accent-color:var(--color-brand-deep)}
.choice:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}
.choice:has(input:checked),.choice.is-on{border-color:var(--color-brand-deep);background:var(--color-brand-tint);box-shadow:inset 0 0 0 1px var(--color-brand-deep)}
.choice__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding-inline-end:28px}
.choice__name{font-weight:var(--weight-medium);font-size:var(--text-lg)}
.choice__price{font-size:var(--text-xl);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}
.choice__note{line-height:1.5}
.choice__list{display:grid;gap:var(--space-1);margin-block-start:var(--space-2);padding-block-start:var(--space-3);border-block-start:1px solid var(--color-line)}
.choice__list span{display:flex;align-items:flex-start;gap:var(--space-2);line-height:1.45}
.choice__list svg{flex:none;margin-block-start:2px;color:var(--color-success)}
.choice--rec{border-color:var(--color-brand);background:color-mix(in srgb,var(--color-brand) 6%,var(--color-surface-raised))}
.choice__flag{position:absolute;inset-block-start:0;inset-inline-start:var(--space-4);transform:translateY(-50%);padding:.15em .7em;border-radius:999px;background:var(--color-brand);color:#fff;font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.6}
.builder__sum{display:grid;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-brand-deep);border-radius:var(--card-radius);background:var(--color-surface-raised);box-shadow:var(--shadow-1, 0 2px 12px rgba(28,52,83,.08))}
@media (min-width:1100px){.builder__sum{position:sticky;inset-block-start:96px}}
.builder__lines{display:grid;gap:var(--space-3);margin:0}
.builder__lines div{display:grid;gap:2px;padding-block-end:var(--space-3);border-block-end:1px solid var(--color-line)}
.builder__lines dt{font-size:var(--text-sm);color:var(--color-ink-muted)}
.builder__lines dd{margin:0;font-weight:var(--weight-medium)}
.builder__total{display:grid;gap:var(--space-1);margin:0}
.builder__total bdi{font-size:var(--text-4xl);font-weight:var(--weight-display);line-height:1.1;font-variant-numeric:tabular-nums}
.builder__sum .btn{inline-size:100%;justify-content:center}
.builder__buy{text-align:center}
.form__plan{display:grid;gap:var(--space-1);margin:0 0 var(--space-4);padding:var(--space-4);border-radius:var(--radius-sm);background:var(--color-brand-tint);border-inline-start:3px solid var(--color-brand-deep)}

/* ===== 5.5 article ===== */
.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4)}
.article-meta span{display:inline-flex;align-items:center;gap:var(--space-1)}
.article-meta span+span::before{content:"·";margin-inline-end:var(--space-3);color:var(--color-line-strong)}
.article-media{padding-block:0 var(--space-6)}
.article-media__fig{margin:0;display:grid;gap:var(--space-2)}
.article-media__fig img{inline-size:100%;block-size:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--img-radius)}
.body-aside{display:grid;gap:var(--space-5);align-content:start}
@media (min-width:1024px){.body-aside{position:sticky;inset-block-start:calc(72px + var(--space-5))}.body-aside .toc{position:static}}
.side-cta{display:grid;gap:var(--space-3);justify-items:start;padding:var(--space-5);border-radius:var(--card-radius);background:var(--color-brand-tint);border:1px solid var(--color-brand)}
.side-cta__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-display);line-height:1.25;margin:0}
.side-cta p{margin:0}
.author-sec{padding-block:var(--space-7)}
.author-bio{display:flex;gap:var(--space-5);align-items:flex-start;padding:var(--space-5);border:var(--card-border);border-radius:var(--card-radius);background:var(--color-surface-raised)}
.author-bio__img{inline-size:96px;block-size:96px;border-radius:50%;flex:none;object-fit:cover}
.author-bio__body{display:grid;gap:var(--space-1)}
.author-bio__body p{margin:0}
.author-bio__name{font-size:var(--text-lg);font-weight:var(--weight-medium)}
@media (max-width:560px){.author-bio{flex-direction:column}}
.author-bio__img--logo{object-fit:contain;padding:var(--space-3);background:var(--color-brand-tint)}

/* ===== 5.5 inner-page hero photo (about, maintenance, management) ===== */
.hero-photo{position:relative;padding:0;display:grid}
.hero-photo__media{position:relative;aspect-ratio:4/5;max-block-size:640px;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface-subtle)}
.hero-photo__img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover}
.hero-photo__card{position:relative;z-index:1;margin-block-start:calc(-1 * var(--space-7));margin-inline:var(--space-4)}
.hero-photo__card>*{box-shadow:var(--shadow-3, 0 12px 32px rgba(28,52,83,.18))}
@media (min-width:1024px){
  .hero-photo__card{position:absolute;inset-block-end:var(--space-5);inset-inline-end:calc(-1 * var(--space-5));inline-size:min(360px,85%);margin:0} /* lower corner away from the text, where the photos keep a calm area */
}
@media (max-width:1023.98px){.hero-photo__media{aspect-ratio:16/10}}
@media (max-width:1023.98px){.hero-photo__img{object-position:50% 25%}}

/* ===== 5.6 home: three core services ===== */
.core-3{display:grid;gap:var(--space-5);margin-block-end:var(--space-7)}
@media (min-width:900px){.core-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.core-card{gap:var(--space-2);padding:var(--space-6) var(--space-5);border-color:var(--color-line-strong)}
.core-card:first-child{border-color:var(--color-brand);background:var(--color-brand-tint)}
.core-card__head{display:flex;justify-content:space-between;align-items:center;margin-block-end:var(--space-3)}
.core-card__n{font-size:var(--text-2xl);font-weight:var(--weight-display);color:var(--color-line-strong);line-height:1}
.core-card .card__title{font-size:var(--text-2xl)}
.core-card__price{margin:var(--space-2) 0 0;font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}
.services__h{margin-block-end:var(--space-4)}

/* ===== 5.6 inner-page hero in the home layout ===== */
.hero-care__card{position:absolute;z-index:1;inset-inline:var(--space-4);inset-block-end:var(--space-4)}
.hero-care__card>*{box-shadow:var(--shadow-3, 0 12px 32px rgba(28,52,83,.18));margin:0}
.hero-care--inner .hero-care__text .title{font-size:var(--text-4xl)}
.crumbs-bare{margin-block-end:calc(-1 * var(--space-2))}.crumbs-bare .crumbs>li{min-block-size:32px}
@media (min-width:1024px){
  .hero-care__card{inset-inline:auto;inset-inline-start:clamp(2rem,5vw,4.5rem);inset-block-end:clamp(2rem,6vh,4rem);inline-size:min(380px,80%)}
  .hero-care--inner .hero-care__grid{min-block-size:min(680px,calc(100svh - 120px))}
}
@media (max-width:1023.98px){
  .hero-care--inner .hero-care__media{aspect-ratio:auto;max-block-size:none;min-block-size:0;display:grid;overflow:visible;background:none}
  .hero-care--inner .hero-care__img,.hero-care--inner .hero-care__video{position:relative;aspect-ratio:4/3;border-radius:var(--radius-lg);object-position:50% 25%}
  .hero-care--inner .hero-care__card{position:relative;inset:auto;margin:calc(-1 * var(--space-7)) var(--space-4) 0}
}

/* 5.6 business card (page-card.php): one column, mobile first; on wide screens a centred card on surface-subtle */
.card-page{background:var(--color-surface)}
.vcard__foot{background:none!important;margin:0}
.vcard{max-inline-size:480px;margin-inline:auto;background:var(--color-surface);min-block-size:100svh;padding-block-end:var(--space-6)}
.vcard__cover{background:var(--color-brand-deep);color:var(--color-on-brand-deep);block-size:132px;padding:var(--space-4) var(--space-5);display:flex;align-items:flex-start}
.vcard__brand{display:inline-flex;align-items:center;gap:var(--space-2);color:inherit;text-decoration:none;font-weight:var(--weight-medium);font-size:var(--text-sm)}
.vcard__brand img{background:#fff;border-radius:50%;padding:2px}
.vcard__id{text-align:center;padding:0 var(--space-5) var(--space-5);display:grid;justify-items:center;gap:var(--space-2)}
.vcard__photo{inline-size:128px;block-size:128px;margin-block-start:-64px;border-radius:50%;border:4px solid var(--color-surface);overflow:hidden;background:var(--color-brand-tint);display:grid;place-items:center;box-shadow:var(--shadow-2)}
.vcard__photo img{inline-size:100%;block-size:100%;object-fit:cover}
.vcard__photo span{font-family:var(--font-display);font-size:var(--text-4xl);color:var(--color-brand-deep)}
.vcard__name{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-3xl);line-height:var(--leading-display);margin:var(--space-2) 0 0}
.vcard__role{margin:0;color:var(--color-ink-muted)}
.vcard__tagline{margin:0;font-size:var(--text-lg);color:var(--color-brand-deep);font-weight:var(--weight-medium)}
.vcard__quick{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(56px,1fr));gap:var(--space-2);inline-size:100%}
.vcard__quick a{display:grid;justify-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-ink);text-decoration:none}
.vcard__qi{inline-size:56px;block-size:56px;border-radius:50%;display:grid;place-items:center;background:var(--color-brand-tint);color:var(--color-brand-deep);transition:background var(--duration-fast) var(--ease-standard)}
.vcard__quick a:hover .vcard__qi,.vcard__quick a:focus-visible .vcard__qi{background:var(--color-brand-deep);color:var(--color-on-brand-deep)}
.vcard__save{inline-size:100%;justify-content:center;gap:var(--space-2);margin-block-start:var(--space-4);display:inline-flex;align-items:center}
.vcard__sec{padding:var(--space-5);border-block-start:1px solid var(--color-line)}
.vcard__h{font-family:var(--font-display);font-size:var(--text-xl);margin:0 0 var(--space-3)}
.vcard__k{display:block;font-size:var(--text-xs);color:var(--color-ink-muted)}
.vcard__rows,.vcard__svc,.vcard__posts{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}
.vcard__rows a,.vcard__addr-text{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;color:var(--color-ink);text-decoration:none;min-block-size:48px}
.vcard__rows .icon,.vcard__addr-text>.icon{color:var(--color-brand);flex:none}
.vcard__rows a:hover bdi{text-decoration:underline}
.vcard__nav{display:flex;gap:var(--space-2);padding-inline-start:calc(20px + var(--space-3))}
.vcard__nav a{min-block-size:40px;padding:0 var(--space-3);border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);font-size:var(--text-sm);gap:var(--space-1)}
.vcard__about p{margin:0 0 var(--space-2)}
.vcard__svc a{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-md);color:var(--color-ink);text-decoration:none}
.vcard__svc a:hover{border-color:var(--color-brand)}
.vcard__svc strong{display:block}
.vcard__svc .card__badge{flex:none}
.vcard__more{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin:var(--space-3) 0 0;font-size:var(--text-sm)}
.vcard__posts a{display:flex;gap:var(--space-3);align-items:center;color:var(--color-ink);text-decoration:none;font-weight:var(--weight-medium);line-height:1.35}
.vcard__posts a:hover span:last-child{text-decoration:underline}
.vcard__thumb{flex:none;inline-size:64px;block-size:64px;border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface-subtle);display:grid;place-items:center;color:var(--color-ink-muted)}
.vcard__thumb img{inline-size:100%;block-size:100%;object-fit:cover}
.vcard__share{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2)}
.vcard__qr{margin:var(--space-4) 0 0;display:grid;justify-items:center;gap:var(--space-2);text-align:center}
.vcard__qr img{inline-size:160px;block-size:160px;padding:var(--space-2);background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-md)}
.vcard__tiles{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.vcard__tiles a{display:grid;justify-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-md);color:var(--color-ink);text-decoration:none;text-align:center;font-size:var(--text-sm)}
.vcard__tiles a:hover{border-color:var(--color-brand)}
.vcard__cta{inline-size:100%}
.vcard__copied{text-align:center}
.vcard__share a,.vcard__share button{inline-size:48px;block-size:48px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-brand-deep);cursor:pointer}
.vcard__share a:hover,.vcard__share button:hover{background:var(--color-brand-tint)}
.vcard__copied{margin:var(--space-2) 0 0}
.vcard__foot{text-align:center;color:var(--color-ink-muted);padding:var(--space-5) var(--space-5) 0;line-height:2}
.vcard__foot a{color:inherit}
@media (min-width:600px){.card-page{background:var(--color-surface-subtle)}.vcard{margin-block:var(--space-6);min-block-size:0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-3)}}

/* 5.6 tool pages: what the check does / what to do with a bad result */
.tool-about{display:grid;gap:var(--space-5)}
.tool-about>div{display:grid;gap:var(--space-3);align-content:start}
.tool-about h2{margin:0}
.tool-about p{margin:0}
.tool-about__bad{background:var(--color-surface-subtle);border-radius:var(--radius-lg);padding:var(--space-5)}
.tool-about__limits{display:flex;gap:var(--space-2);align-items:flex-start;color:var(--color-ink-muted);border-inline-start:3px solid var(--color-line-strong);padding-inline-start:var(--space-3)}
.tool-about__limits .icon{flex:none;margin-block-start:2px}
.tool-about__steps{list-style:decimal;margin:0;padding-inline-start:var(--space-5);display:grid;gap:var(--space-2)}
.tool-about__steps li::marker{color:var(--color-brand);font-weight:var(--weight-medium)}
.tool-about__cta{font-weight:var(--weight-medium);display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);align-items:baseline}
@media (min-width:900px){.tool-about{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-7)}}
/* 5.6 management child pages: the monthly package options */
.pkg-row{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
.pkg-row .card{display:grid;gap:var(--space-2);align-content:start}
.pkg-row .card p{margin:0}
.pkg-row__price{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-display)}

/* 5.7 secondary heroes (tools, tool, price list, blog, accessibility, privacy): the home layout, shorter */
.hero-care--sec .hero-care__text .title{font-size:var(--text-3xl)}
.hero-care--sec .hero-care__text{max-inline-size:680px}
.hero-care__text,.hero-care__text .title,.hero-care__text .lead,.hero-care__text p{text-align:start}
@media (min-width:1024px){
  .hero-care--sec .hero-care__grid{min-block-size:560px}
  .hero-care--sec .hero-care__text{padding-block:var(--space-6)}
  .hero-care--sec .care-panel{inline-size:min(360px,78%);font-size:var(--text-sm)}
}
@media (max-width:1023.98px){.hero-care--sec .hero-care__media{aspect-ratio:4/3;max-block-size:460px}.hero-care--sec .care-panel{font-size:var(--text-xs)}}
/* 5.7 focused services */
.extras{list-style:none;margin:0;padding:0}
.extra{display:flex;flex-direction:column;gap:var(--space-3);block-size:100%}
.extra p,.extra h3{margin:0}
.extra .layer-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-1)}
.extra .card__more{margin-block-start:auto;padding-block-start:var(--space-2)}

/* 5.8 tool pages: the tool under the hero */
.tool-sec{padding-block:var(--space-6)}
.tool-sec__box{max-inline-size:880px;margin-inline:auto}
.tool-sec__box>.tool-input,.tool-sec__box .wsc-tool{margin-block-start:0}
