/* site.css — the public Estobi site (rebuild 2026-10-08, lane WEBSITE-BUILD; premium redesign 2026-10-09, lane Fable premium).
   One stylesheet for every public page. Colors, type and spacing come from the site-wide tokens in
   /portal/estobi-tokens.css (the brand kit); this file adds the public-page layout plus the public-only
   dark-surface, glow and elevation tokens below. Public pages are light only: <html class="light-mode">.
   Portal components are never restyled here. */
@import url('/portal/estobi-tokens.css');

/* ── Public-only tokens (dark surfaces, glow, elevation, motion) ── */
:root {
  --dark-0: #030f0c;
  --dark-1: #041d16;
  --dark-2: #06382a;
  --glow: rgba(18, 196, 142, .32);
  --glow-soft: rgba(14, 146, 104, .18);
  --on-dark: rgba(255, 255, 255, .84);
  --on-dark-muted: rgba(255, 255, 255, .62);
  --line-dark: rgba(255, 255, 255, .12);
  --shadow-sm: 0 1px 2px rgba(15, 26, 22, .05), 0 2px 10px rgba(15, 26, 22, .05);
  --shadow-md: 0 2px 6px rgba(15, 26, 22, .06), 0 18px 44px -14px rgba(15, 26, 22, .16);
  --shadow-float: 0 44px 90px -26px rgba(2, 12, 9, .62), 0 14px 30px -14px rgba(2, 12, 9, .5);
  --ease: cubic-bezier(.2, .7, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--sans);
  background: var(--card);
  color: var(--ink);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img, svg { max-width: 100%; display: block; }
a { color: var(--g-deep); }
button { font: inherit; }
:focus-visible { outline: 3px solid var(--g-bright); outline-offset: 2px; }
.s-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ── Layout ── */
.s-container { width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.s-section { padding: 104px 0; }
.s-section--tint { background: var(--bg); }
.s-section--line { border-top: 1px solid var(--line); }
.s-section-head { max-width: 760px; margin-bottom: 52px; }
.s-section-head--center { margin-left: auto; margin-right: auto; text-align: center; }
.s-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.s-grid-2:has(> .s-shot.is-missing) { grid-template-columns: minmax(0, 1fr); max-width: 760px; }
.s-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.s-grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.s-stack { display: grid; gap: 16px; }

/* ── Type ── */
.s-eyebrow {
  font-family: var(--mono); font-size: 12px; font-weight: 700; line-height: 1.2;
  letter-spacing: .22em; text-transform: uppercase; color: var(--g-primary); margin-bottom: 16px;
}
.s-h1 { font-size: clamp(38px, 5.4vw, 66px); font-weight: 800; line-height: 1.02; letter-spacing: -.035em; color: var(--ink); }
.s-h2 { font-size: clamp(30px, 3.6vw, 44px); font-weight: 800; line-height: 1.1; letter-spacing: -.03em; color: var(--ink); margin-bottom: 16px; }
.s-h3 { font-size: 20px; font-weight: 750; line-height: 1.3; letter-spacing: -.015em; color: var(--ink); margin-bottom: 8px; }
.s-lead { font-size: 18px; line-height: 1.65; color: var(--gray); }
.s-small { font-size: 13.5px; color: var(--muted-readable); line-height: 1.5; }
.s-accent { background: linear-gradient(92deg, var(--g-bright) 0%, #8ff0cf 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.s-prose p { margin-bottom: 16px; color: var(--gray); font-size: 16.5px; line-height: 1.75; }
.s-prose p:last-child { margin-bottom: 0; }
.s-prose h2 { font-size: 24px; font-weight: 800; margin: 40px 0 12px; letter-spacing: -.02em; }
.s-prose h3 { font-size: 18px; font-weight: 750; margin: 28px 0 8px; }
.s-prose ul, .s-prose ol { margin: 0 0 16px 22px; color: var(--gray); }
.s-prose li { margin-bottom: 6px; line-height: 1.6; }
.s-prose strong { color: var(--ink); }
.s-prose table { width: 100%; border-collapse: collapse; margin: 0 0 20px; font-size: 15px; }
.s-prose th, .s-prose td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
.s-prose th { color: var(--ink); font-weight: 700; background: var(--bg); }
.s-measure { max-width: var(--copy-measure); }

/* ── Buttons ── */
.s-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 50px; padding: 0 24px; border-radius: 12px; border: 1px solid transparent;
  background: var(--g-primary); color: #fff; font-weight: 700; font-size: 15.5px; line-height: 1;
  text-decoration: none; cursor: pointer; box-shadow: 0 10px 24px -12px rgba(14, 146, 104, .7);
  transition: background .18s, border-color .18s, color .18s, transform .22s var(--ease), box-shadow .22s var(--ease);
}
.s-btn:hover { background: var(--g-deep); transform: translateY(-1px); box-shadow: 0 14px 28px -12px rgba(8, 99, 68, .7); }
.s-btn--ghost { background: transparent; color: var(--ink); border-color: var(--line); box-shadow: none; }
.s-btn--ghost:hover { background: var(--bg); border-color: var(--gray-lt); box-shadow: none; }
.s-btn--light { background: #fff; color: var(--g-deep); box-shadow: 0 16px 34px -14px rgba(18, 196, 142, .55); }
.s-btn--light:hover { background: var(--g-tint); }
.s-btn--outline-light { background: transparent; color: #fff; border-color: rgba(255,255,255,.45); box-shadow: none; }
.s-btn--outline-light:hover { background: rgba(255,255,255,.1); box-shadow: none; }
.s-btn--sm { min-height: 40px; padding: 0 16px; font-size: 14px; border-radius: 10px; }
.s-btn--block { width: 100%; }
.s-btn[aria-disabled="true"], .s-btn:disabled { opacity: .5; cursor: not-allowed; }
.s-link { color: var(--g-deep); font-weight: 650; text-decoration: none; }
.s-link:hover { text-decoration: underline; }
.s-link--light { color: #fff; }
.s-cta-row { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.s-cta-row--center { justify-content: center; }
.s-note { font-size: 13.5px; color: var(--muted-readable); }

/* ── Top bar + nav ── */
.s-topbar { background: var(--dark-1); color: #fff; font-size: 13.5px; font-weight: 600; text-align: center; }
.s-topbar a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 38px; padding: 6px 16px; color: #fff; text-decoration: none; }
.s-topbar a:hover { background: rgba(255,255,255,.06); }
.s-topbar b { color: var(--g-bright); font-weight: 700; }
.s-topbar-arrow { color: var(--g-bright); transition: transform .2s var(--ease); }
.s-topbar a:hover .s-topbar-arrow { transform: translateX(3px); }
.s-nav { position: sticky; top: 0; z-index: 200; background: rgba(255,255,255,.94); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid var(--line); transition: box-shadow .25s; }
.s-nav.is-scrolled { box-shadow: 0 6px 24px -12px rgba(15, 26, 22, .18); }
.s-nav-inner { max-width: 1180px; margin: 0 auto; padding: 0 24px; height: 66px; display: flex; align-items: center; gap: 24px; }
.s-brand { font-size: 22px; font-weight: 800; letter-spacing: -.02em; color: var(--ink); text-decoration: none; flex-shrink: 0; }
.s-brand span { color: var(--g-primary); }
.s-nav-links { display: flex; align-items: center; gap: 2px; list-style: none; flex: 1; }
.s-nav-item { position: relative; }
.s-nav-link {
  display: inline-flex; align-items: center; gap: 5px; padding: 9px 12px; border-radius: 8px; border: 0; background: none;
  color: var(--gray); font-size: 14.5px; font-weight: 550; text-decoration: none; cursor: pointer; white-space: nowrap;
}
.s-nav-link:hover, .s-nav-item.open > .s-nav-link { color: var(--ink); background: var(--bg); }
.s-nav-link svg { width: 12px; height: 12px; transition: transform .15s; }
.s-nav-item.open > .s-nav-link svg { transform: rotate(180deg); }
.s-nav-menu {
  display: none; position: absolute; top: calc(100% + 8px); left: 0; min-width: 300px; padding: 8px;
  background: var(--card); border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-md); z-index: 300;
}
.s-nav-item.open > .s-nav-menu { display: grid; gap: 2px; }
.s-nav-menu a { display: grid; gap: 2px; padding: 9px 12px; border-radius: 8px; text-decoration: none; }
.s-nav-menu a:hover { background: var(--bg); }
.s-nav-menu strong { font-size: 14px; color: var(--ink); font-weight: 650; }
.s-nav-menu small { font-size: 12.5px; color: var(--gray); line-height: 1.35; }
.s-nav-right { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.s-nav-cta-m { display: none; }
.s-nav-burger { display: none; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 10px; background: var(--card); cursor: pointer; place-items: center; flex-shrink: 0; }
.s-nav-burger span { display: block; width: 18px; height: 2px; background: var(--ink); margin: 2.5px auto; border-radius: 2px; }
.s-mobile { display: none; position: fixed; inset: 66px 0 0 0; z-index: 199; background: var(--card); overflow-y: auto; padding: 16px 24px 48px; border-top: 1px solid var(--line); }
.s-mobile.open { display: block; }
.s-mobile-group { padding: 10px 0 14px; border-bottom: 1px solid var(--line); }
.s-mobile-label { font-family: var(--mono); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--gray-lt); margin: 8px 0 6px; }
.s-mobile-group a { display: block; padding: 11px 0; font-size: 16px; font-weight: 550; color: var(--ink); text-decoration: none; }
.s-mobile-cta { display: grid; gap: 10px; padding-top: 18px; }
@media (max-width: 960px) {
  .s-nav-links, .s-nav-right { display: none; }
  .s-nav-cta-m { display: inline-flex; margin-left: auto; }
  .s-nav-burger { display: grid; }
}

/* ── Dark surfaces (hero, page hero, mid-page band, closing CTA) ── */
.s-dark {
  position: relative; overflow: hidden; color: #fff; isolation: isolate;
  background:
    radial-gradient(1000px 620px at 82% 8%, var(--glow), transparent 62%),
    radial-gradient(760px 560px at 4% 96%, var(--glow-soft), transparent 60%),
    linear-gradient(165deg, var(--dark-2) 0%, var(--dark-1) 50%, var(--dark-0) 100%);
}
.s-dark::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(ellipse 75% 85% at 60% 40%, #000 25%, transparent 78%);
  mask-image: radial-gradient(ellipse 75% 85% at 60% 40%, #000 25%, transparent 78%);
}
.s-dark .s-eyebrow { color: var(--g-bright); }
.s-dark .s-h1, .s-dark .s-h2, .s-dark .s-h3 { color: #fff; }
.s-dark .s-lead { color: var(--on-dark); }
.s-dark .s-note, .s-dark .s-small { color: var(--on-dark-muted); }
.s-dark .s-link { color: #fff; }
.s-dark .s-btn:not(.s-btn--ghost):not(.s-btn--outline-light):not(.s-btn--light) { background: #fff; color: var(--g-deep); box-shadow: 0 16px 34px -14px rgba(18, 196, 142, .55); }
.s-dark .s-btn:not(.s-btn--ghost):not(.s-btn--outline-light):not(.s-btn--light):hover { background: var(--g-tint); }
.s-dark .s-btn--ghost { color: #fff; border-color: rgba(255,255,255,.42); background: transparent; }
.s-dark .s-btn--ghost:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.6); }

/* Cards, steps and lists on a dark surface */
.s-dark .s-card, .s-dark .s-step, .s-dark .s-avail { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.12); box-shadow: none; color: #fff; }
.s-dark .s-card:hover, .s-dark .s-step:hover { background: rgba(255,255,255,.09); box-shadow: 0 18px 40px -20px rgba(0,0,0,.6); }
.s-dark .s-card--tint { background: rgba(18, 196, 142, .14); border-color: rgba(18, 196, 142, .25); }
.s-dark .s-card p, .s-dark .s-step p, .s-dark .s-list li, .s-dark .s-avail-row, .s-dark .s-control { color: var(--on-dark); }
.s-dark .s-control { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.12); }
.s-dark .s-control b, .s-dark .s-kv dt { color: #fff; }
.s-dark .s-kv dd { color: var(--on-dark); }
.s-dark .s-card-num, .s-dark .s-step::before { color: var(--g-bright); }
.s-dark .s-list li::before { border-color: var(--g-bright); }
.s-dark .s-list--plain li::before, .s-dark .s-list--never li::before { background: rgba(255,255,255,.5); }
.s-dark .s-state { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.14); color: var(--on-dark); }
.s-dark .s-state--on { background: rgba(18, 196, 142, .18); border-color: rgba(18, 196, 142, .4); color: #fff; }
.s-dark .s-chip { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.18); color: #fff; }
.s-dark .s-faq, .s-dark .s-faq details { border-color: rgba(255,255,255,.12); }
.s-dark .s-faq summary { color: #fff; }
.s-dark .s-faq .s-faq-a { color: var(--on-dark); }
.s-dark .s-shot-frame { border-color: rgba(255,255,255,.14); box-shadow: var(--shadow-float); }
.s-dark .s-feature-index .s-h3 { color: #fff; }

/* ── Hero (home) ── */
.s-hero { padding: 96px 0 110px; }
.s-hero-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 56px; align-items: center; }
.s-hero .s-h1 { margin-bottom: 22px; font-size: clamp(38px, 4.7vw, 60px); }
.s-hero .s-lead { margin-bottom: 32px; max-width: 540px; font-size: 18.5px; }
.s-hero-line { position: absolute; left: 0; right: 0; bottom: -2px; width: 100%; height: 62%; z-index: -1; pointer-events: none; }
.s-hero-line path.s-hero-stroke { fill: none; stroke: url(#s-hero-grad); stroke-width: 2.2; stroke-linecap: round; stroke-dasharray: 2600; stroke-dashoffset: 2600; animation: s-draw 3s var(--ease) .4s forwards; filter: drop-shadow(0 0 10px rgba(18, 196, 142, .55)); }
.s-hero-line path.s-hero-area { fill: url(#s-hero-area); opacity: 0; animation: s-fade 1.4s ease 2.4s forwards; }
@keyframes s-draw { to { stroke-dashoffset: 0; } }
@keyframes s-fade { to { opacity: 1; } }

/* Floating screen stack */
.s-hstack { position: relative; min-height: 560px; perspective: 1600px; display: block; }
.s-hstack-main { position: relative; width: 92%; margin-left: auto; transform: rotateY(-7deg) rotateX(2deg) translate3d(var(--tx, 0), var(--ty, 0), 0); transform-origin: 50% 50%; }
.s-win { background: var(--card); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-float), 0 0 0 1px rgba(255,255,255,.1); }
.s-win-bar { height: 34px; display: flex; align-items: center; gap: 6px; padding: 0 12px; background: var(--inset); border-bottom: 1px solid var(--line); }
.s-win-bar i { width: 10px; height: 10px; border-radius: 50%; background: #d7dde3; }
.s-win-bar span { margin: 0 auto; font-family: var(--mono); font-size: 11px; letter-spacing: .02em; color: var(--muted-readable); transform: translateX(-16px); }
.s-win-body { aspect-ratio: 1440 / 1380; overflow: hidden; background: var(--bg); }
.s-win-body img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.s-hstack-side { display: contents; }
.s-mini { position: absolute; z-index: 2; width: 252px; padding: 14px 16px 16px; background: var(--card); color: var(--ink); border-radius: 14px; border: 1px solid rgba(15, 26, 22, .06); box-shadow: var(--shadow-float); }
.s-mini--bb { top: -46px; right: -26px; width: 236px; transform: translate3d(var(--tx, 0), var(--ty, 0), 0) rotate(2.5deg); }
.s-mini--rp { right: -30px; bottom: 44px; width: 262px; transform: translate3d(var(--tx, 0), var(--ty, 0), 0) rotate(-2deg); }
.s-mini-eyebrow { font-family: var(--mono); font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--g-primary); margin-bottom: 8px; }
.s-mini-big { font-size: 28px; font-weight: 800; letter-spacing: -.03em; line-height: 1; color: var(--ink); font-variant-numeric: tabular-nums; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.s-mini-big small { font-size: 12px; font-weight: 500; color: var(--gray); letter-spacing: 0; line-height: 1.3; }
.s-mini-row { display: flex; justify-content: space-between; gap: 10px; font-size: 12px; color: var(--gray); margin-top: 10px; }
.s-mini-row b { color: var(--ink); font-weight: 700; }
.s-mini-bars { display: flex; gap: 3px; height: 8px; margin-top: 10px; border-radius: 999px; overflow: hidden; background: var(--inset); }
.s-mini-bars i { display: block; height: 100%; width: var(--w); background: var(--gray-lt); }
.s-mini-bars i.you { background: var(--g-primary); }
.s-mini-why { font-size: 12.5px; color: var(--gray); line-height: 1.45; margin-top: 10px; }
.s-mini-lines { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 10px; }
.s-mini-lines span { font-size: 11.5px; font-weight: 650; color: var(--g-deep); background: var(--g-tint); border-radius: 999px; padding: 3px 8px; }
.s-needs { position: absolute; z-index: 3; left: -40px; bottom: -40px; width: 340px; padding: 16px 18px 14px; background: var(--card); color: var(--ink); border-radius: 16px; border: 1px solid rgba(15, 26, 22, .06); box-shadow: var(--shadow-float); transform: translate3d(var(--tx, 0), var(--ty, 0), 0); }
.s-needs-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.s-badge { font-size: 11.5px; font-weight: 700; color: var(--g-deep); background: var(--g-tint); border-radius: 999px; padding: 3px 9px; white-space: nowrap; }
.s-needs-title { font-size: 17px; font-weight: 800; letter-spacing: -.015em; margin: 2px 0 10px; }
.s-needs-list { list-style: none; display: grid; gap: 8px; }
.s-needs-item { display: grid; grid-template-columns: 4px 1fr auto; gap: 10px; align-items: center; padding: 9px 10px 9px 0; border: 1px solid var(--line); border-radius: 10px; background: var(--card); opacity: 0; transform: translateY(10px); animation: s-pop .6s var(--ease) forwards; animation-delay: calc(1.2s + var(--i) * .45s); }
.s-needs-item::before { content: ""; width: 4px; height: 100%; min-height: 36px; border-radius: 0 3px 3px 0; background: var(--g-primary); }
.s-needs-item b { display: block; font-size: 13px; font-weight: 700; line-height: 1.3; color: var(--ink); }
.s-needs-item small { display: block; font-size: 11.5px; color: var(--gray); line-height: 1.35; margin-top: 2px; }
.s-needs-act { font-size: 11.5px; font-weight: 700; color: var(--g-deep); white-space: nowrap; }
.s-needs-act::after { content: " \203A"; }
@keyframes s-pop { to { opacity: 1; transform: none; } }

/* ── Facts strip (product facts, count-up) ── */
.s-facts { background: var(--card); border-bottom: 1px solid var(--line); padding: 48px 0 40px; }
.s-facts-grid { list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; }
.s-facts-grid li { display: grid; gap: 6px; align-content: start; padding: 0 20px; border-left: 1px solid var(--line); }
.s-facts-grid li:first-child { border-left: 0; padding-left: 0; }
.s-facts-grid b { font-size: 42px; font-weight: 800; letter-spacing: -.035em; line-height: 1; color: var(--ink); font-variant-numeric: tabular-nums; }
.s-facts-grid b em { font-style: normal; color: var(--g-primary); }
.s-facts-grid li > span { font-size: 14px; color: var(--gray); line-height: 1.4; }
.s-facts-note { margin-top: 28px; font-size: 13.5px; color: var(--muted-readable); text-align: center; }

/* ── Product screenshots (feature pages, tabs) ── */
.s-shot { margin: 0; display: grid; gap: 8px; }
.s-shot-frame { border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: var(--card); box-shadow: var(--shadow-md); }
.s-shot-frame img { width: 100%; height: auto; display: block; }
.s-shot figcaption { font-size: 12.5px; color: var(--muted-readable); }
.s-shot.is-missing { display: none; }
.s-stories-lead .when-images { display: none; }
.s-section:has(.s-shot.is-present) .s-stories-lead .when-images { display: inline; }
.s-section:has(.s-shot.is-present) .s-stories-lead .when-no-images { display: none; }

/* ── Strip (own store / no card) ── */
.s-strip { background: var(--card); border-bottom: 1px solid var(--line); padding: 22px 0; }
.s-strip-inner { display: flex; flex-wrap: wrap; gap: 14px 36px; justify-content: center; align-items: center; }
.s-strip-item { display: inline-flex; align-items: center; gap: 10px; font-size: 14.5px; color: var(--gray); font-weight: 550; }
.s-strip-item::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--g-primary); flex-shrink: 0; }

/* ── Feature stories (two-column, feature pages) ── */
.s-story { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 48px; align-items: center; padding: 56px 0; border-top: 1px solid var(--line); }
.s-story:first-of-type { border-top: 0; padding-top: 0; }
.s-story--flip { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); }
.s-story--flip .s-story-text { order: 2; }
.s-story:has(.s-shot.is-missing) { grid-template-columns: minmax(0, 1fr); max-width: 760px; }
.s-story-text .s-h2 { font-size: clamp(24px, 2.6vw, 32px); }
.s-story-text .s-lead { font-size: 16.5px; margin-bottom: 16px; }
.s-control { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); font-size: 14px; color: var(--gray); line-height: 1.5; margin-bottom: 16px; }
.s-control b { color: var(--ink); font-weight: 700; white-space: nowrap; }
.s-control::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--g-primary); margin-top: 6px; flex-shrink: 0; }

/* ── Bento grid (home tools) ── */
.s-bento { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; }
.s-bento-card { grid-column: span var(--span, 4); position: relative; display: flex; flex-direction: column; min-width: 0; background: var(--card); border: 1px solid var(--line); border-radius: 20px; overflow: hidden; text-decoration: none; color: inherit; box-shadow: var(--shadow-sm); transition: transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s; }
.s-bento-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: rgba(14, 146, 104, .4); }
.s-bento-media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: var(--inset); border-bottom: 1px solid var(--line); container-type: inline-size; }
.s-bento-media img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; object-position: top left; transition: transform .6s var(--ease); }
.s-bento-media.s-crop img { width: var(--w); max-width: none; height: auto; left: var(--x); top: var(--y); object-fit: unset; }
.s-bento-card:hover .s-bento-media img { transform: scale(1.015); }
.s-bento-media.is-missing img { display: none; }
.s-bento-fallback { display: none; position: absolute; inset: 0; padding: 18px; }
.s-bento-media.is-missing .s-bento-fallback { display: flex; }
.s-bento-body { padding: 20px 22px 22px; display: grid; gap: 7px; flex: 1; align-content: start; }
.s-bento-kicker { font-family: var(--mono); font-size: 10.5px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--g-primary); }
.s-bento-title { font-size: 19px; font-weight: 750; letter-spacing: -.015em; color: var(--ink); line-height: 1.25; }
.s-bento-text { font-size: 14.5px; color: var(--gray); line-height: 1.55; }
.s-bento-control { display: flex; gap: 8px; align-items: flex-start; font-size: 13px; color: var(--g-deep); font-weight: 650; line-height: 1.45; margin-top: auto; padding-top: 8px; }
.s-bento-control::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--g-primary); flex-shrink: 0; margin-top: 5px; }
/* Fallback mini screens (shown until a real image is published) */
.s-fb { width: 100%; height: 100%; display: grid; gap: 10px; align-content: center; }
.s-fb-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 12px; background: var(--card); border: 1px solid var(--line); border-radius: 10px; font-size: 12.5px; color: var(--gray); }
.s-fb-row b { color: var(--ink); font-weight: 700; font-variant-numeric: tabular-nums; }
.s-fb-pills { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.s-fb-pill { font-size: 11.5px; font-weight: 700; padding: 5px 10px; border-radius: 999px; border: 1px solid var(--line); background: var(--card); color: var(--gray); }
.s-fb-pill.on { background: var(--g-tint); color: var(--g-deep); border-color: transparent; }
.s-fb-ring { width: 92px; height: 92px; border-radius: 50%; background: conic-gradient(var(--g-primary) calc(var(--p) * 1%), var(--line) 0); display: grid; place-items: center; margin: 0 auto; }
.s-fb-ring span { width: 70px; height: 70px; border-radius: 50%; background: var(--card); display: grid; place-items: center; font-size: 20px; font-weight: 800; letter-spacing: -.03em; color: var(--ink); }
.s-fb-ring small { font-size: 10px; font-weight: 600; color: var(--gray); letter-spacing: 0; }
.s-fb-bar { height: 8px; border-radius: 999px; background: var(--inset); overflow: hidden; }
.s-fb-bar i { display: block; height: 100%; width: var(--w); background: var(--g-primary); border-radius: 999px; }

/* ── Tabs (See / Decide / Act) ── */
.s-tabs { display: grid; gap: 28px; }
.s-tablist { display: inline-flex; gap: 4px; padding: 4px; margin: 0 auto; background: var(--card); border: 1px solid var(--line); border-radius: 999px; box-shadow: var(--shadow-sm); }
.s-tablist button { min-height: 44px; padding: 0 24px; border: 0; border-radius: 999px; background: transparent; color: var(--gray); font-weight: 700; font-size: 15px; cursor: pointer; transition: background .2s, color .2s; }
.s-tablist button:hover { color: var(--ink); }
.s-tablist button[aria-selected="true"] { background: var(--ink); color: #fff; }
.s-tabpanel[hidden] { display: none; }
.s-tabpanel { animation: s-fadein .4s var(--ease); }
@keyframes s-fadein { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.s-tabpanel-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.s-tab-shot { aspect-ratio: 16 / 11; overflow: hidden; border-radius: 18px; border: 1px solid var(--line); background: var(--card); box-shadow: var(--shadow-md); }
.s-tab-shot img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.s-callout-list { list-style: none; display: grid; gap: 14px; counter-reset: co; }
.s-callout-list li { counter-increment: co; display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px 16px; background: var(--card); border: 1px solid var(--line); border-radius: 14px; }
.s-callout-list li::before { content: counter(co, decimal-leading-zero); font-family: var(--mono); font-size: 12px; font-weight: 700; color: var(--g-primary); letter-spacing: .1em; padding-top: 3px; }
.s-callout-list b { display: block; font-size: 15.5px; font-weight: 700; color: var(--ink); line-height: 1.35; }
.s-callout-list span { display: block; font-size: 14px; color: var(--gray); line-height: 1.5; margin-top: 3px; }

/* ── Dark mid-page band with the glowing step line ── */
.s-band { padding: 104px 0; }
.s-glow-steps { list-style: none; counter-reset: gs; position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; margin-top: 8px; }
.s-glow-steps::before, .s-glow-steps::after { content: ""; position: absolute; left: 12%; right: 12%; top: 27px; height: 2px; border-radius: 2px; }
.s-glow-steps::before { background: rgba(255,255,255,.12); }
.s-glow-steps::after { background: linear-gradient(90deg, var(--g-bright), var(--g-primary)); box-shadow: 0 0 18px rgba(18, 196, 142, .6); transform: scaleX(0); transform-origin: left center; transition: transform 1.8s var(--ease) .2s; }
.s-glow-steps.is-lit::after { transform: scaleX(1); }
.s-glow-steps li { counter-increment: gs; text-align: center; position: relative; }
.s-glow-dot { width: 56px; height: 56px; border-radius: 50%; margin: 0 auto 20px; display: grid; place-items: center; background: var(--dark-1); border: 2px solid rgba(255,255,255,.18); font-family: var(--mono); font-size: 14px; font-weight: 700; color: rgba(255,255,255,.6); position: relative; z-index: 1; transition: border-color .5s, color .5s, box-shadow .7s var(--ease), background .5s; }
.s-glow-dot::before { content: counter(gs); }
.s-glow-steps li.is-lit .s-glow-dot { border-color: var(--g-bright); color: #fff; background: var(--dark-2); box-shadow: 0 0 0 7px rgba(18, 196, 142, .12), 0 0 30px rgba(18, 196, 142, .6); }
.s-glow-steps h3 { font-size: 19px; font-weight: 750; letter-spacing: -.015em; color: #fff; margin-bottom: 8px; }
.s-glow-steps p { font-size: 14.5px; color: var(--on-dark-muted); line-height: 1.55; max-width: 260px; margin: 0 auto; }

/* ── Cards ── */
.s-card { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 26px; min-width: 0; box-shadow: var(--shadow-sm); transition: transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s; }
.s-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.s-card--tint { background: var(--g-tint); border-color: transparent; }
.s-card .s-h3 { margin-bottom: 8px; }
.s-card p { color: var(--gray); font-size: 15px; line-height: 1.6; }
.s-card-num { font-family: var(--mono); font-size: 12px; letter-spacing: .2em; color: var(--g-primary); font-weight: 700; margin-bottom: 12px; }
.s-list { list-style: none; display: grid; gap: 10px; }
.s-list li { position: relative; padding-left: 26px; color: var(--gray); font-size: 15px; line-height: 1.55; }
.s-list li::before { content: ""; position: absolute; left: 0; top: 7px; width: 14px; height: 8px; border-left: 2.5px solid var(--g-primary); border-bottom: 2.5px solid var(--g-primary); transform: rotate(-45deg); }
.s-list--plain li::before { border: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--gray-lt); top: 8px; left: 4px; transform: none; }
.s-list--never li::before { border: 0; width: 12px; height: 2.5px; background: var(--gray-lt); top: 10px; left: 2px; transform: none; }
.s-kv { display: grid; grid-template-columns: max-content 1fr; gap: 10px 18px; font-size: 15px; }
.s-kv dt { color: var(--ink); font-weight: 700; }
.s-kv dd { color: var(--gray); }
.s-chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; border: 1px solid var(--line); background: var(--card); font-size: 12.5px; font-weight: 650; color: var(--g-deep); }
.s-chip--muted { color: var(--gray); }

/* ── Plan cards (teaser + pricing) ── */
.s-plans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.s-plan { position: relative; display: flex; flex-direction: column; gap: 14px; background: var(--card); border: 1px solid var(--line); border-radius: 20px; padding: 28px; min-width: 0; box-shadow: var(--shadow-sm); transition: transform .3s var(--ease), box-shadow .3s var(--ease); }
.s-plan:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.s-plan--featured { border-color: var(--g-primary); box-shadow: 0 0 0 1px var(--g-primary), var(--shadow-md); }
.s-plan-band { margin: -28px -28px 6px; padding: 11px 28px; border-radius: 19px 19px 0 0; background: linear-gradient(90deg, var(--g-deep), var(--g-primary)); color: #fff; font-family: var(--mono); font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.s-plan-name { font-size: 21px; font-weight: 800; letter-spacing: -.015em; color: var(--ink); }
.s-plan-tag { font-size: 14px; color: var(--gray); margin-top: -8px; }
.s-plan-price { display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.s-plan-amount { font-size: 46px; font-weight: 800; letter-spacing: -.035em; line-height: 1; color: var(--ink); font-variant-numeric: tabular-nums; }
.s-plan-per { font-size: 15px; color: var(--gray); }
.s-plan-billing { font-size: 13.5px; color: var(--muted-readable); line-height: 1.5; min-height: 20px; }
.s-plan-billing b { color: var(--g-deep); font-weight: 700; }
.s-plan-save { display: inline-block; font-size: 12px; font-weight: 700; color: var(--g-deep); background: var(--g-tint); border-radius: 999px; padding: 2px 9px; margin-left: 4px; }
.s-plan-includes { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--gray-lt); margin-top: 6px; }
.s-plan .s-list { flex: 1; align-content: start; }
.s-plan .s-list li { font-size: 14.5px; }
.s-plan-foot { display: grid; gap: 10px; margin-top: auto; }
.s-plan-meta { display: grid; gap: 6px; padding: 12px 14px; border-radius: 12px; background: var(--bg); font-size: 13.5px; color: var(--gray); }
.s-plan-meta b { color: var(--ink); font-weight: 700; }
.s-plan-skel { height: 44px; border-radius: 8px; background: linear-gradient(90deg, var(--inset), var(--line), var(--inset)); background-size: 200% 100%; animation: s-shimmer 1.2s linear infinite; }
@keyframes s-shimmer { from { background-position: 200% 0; } to { background-position: -200% 0; } }
.s-plans-state { padding: 18px 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); color: var(--gray); font-size: 15px; }
.s-plans-state[hidden] { display: none; }

/* Pricing page: cards raised over the dark hero, reassurance row, managed strip */
.s-page-hero.s-page-hero--pricing { padding-bottom: 176px; }
.s-page-hero--pricing .s-seg-row { margin-bottom: 0; }
.s-section--raised { padding-top: 0; margin-top: -96px; position: relative; z-index: 2; }
.s-reassure { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; margin-top: 28px; }
.s-reassure span { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 600; color: var(--gray); }
.s-reassure span::before { content: ""; width: 14px; height: 8px; border-left: 2.5px solid var(--g-primary); border-bottom: 2.5px solid var(--g-primary); transform: rotate(-45deg) translateY(-2px); flex-shrink: 0; }
.s-managed-strip { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between; }
.s-managed-strip:hover { transform: none; }

/* Billing toggle (segmented, two real buttons) */
.s-seg { display: inline-flex; padding: 4px; border: 1px solid var(--line); border-radius: 999px; background: var(--card); gap: 2px; }
.s-seg button { min-height: 42px; padding: 0 18px; border: 0; border-radius: 999px; background: transparent; color: var(--gray); font-weight: 650; font-size: 14.5px; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; }
.s-seg button[aria-pressed="true"] { background: var(--ink); color: #fff; }
.s-seg .s-seg-save { font-size: 11.5px; font-weight: 700; color: var(--g-deep); background: var(--g-tint); border-radius: 999px; padding: 2px 8px; }
.s-seg button[aria-pressed="true"] .s-seg-save { background: var(--g-bright); color: var(--dark-1); }
.s-seg-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px; margin-bottom: 36px; }
.s-dark .s-seg { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.22); }
.s-dark .s-seg button { color: rgba(255,255,255,.78); }
.s-dark .s-seg button[aria-pressed="true"] { background: #fff; color: var(--ink); }

/* Comparison matrix */
.s-matrix-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 18px; background: var(--card); box-shadow: var(--shadow-sm); }
.s-matrix { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 640px; }
.s-matrix th, .s-matrix td { padding: 13px 18px; text-align: center; border-bottom: 1px solid var(--line); }
.s-matrix th:first-child, .s-matrix td:first-child { text-align: left; }
.s-matrix thead th { font-weight: 800; color: var(--ink); background: var(--bg); font-size: 15px; }
.s-matrix thead th.is-featured { color: var(--g-deep); }
.s-matrix tbody th { font-weight: 500; color: var(--ink); }
.s-matrix .s-matrix-group th { background: var(--bg); font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--gray); text-align: left; }
.s-matrix .yes { color: var(--g-deep); font-weight: 800; }
.s-matrix .no { color: var(--gray-lt); }
.s-matrix tbody tr:last-child td, .s-matrix tbody tr:last-child th { border-bottom: 0; }

/* ── Steps ── */
.s-steps { counter-reset: step; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.s-step { counter-increment: step; background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 26px; box-shadow: var(--shadow-sm); transition: transform .3s var(--ease), box-shadow .3s var(--ease); }
.s-step:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.s-step::before { content: counter(step, decimal-leading-zero); display: block; font-family: var(--mono); font-size: 12px; letter-spacing: .2em; color: var(--g-primary); font-weight: 700; margin-bottom: 12px; }
.s-step .s-h3 { font-size: 18px; }
.s-step p { color: var(--gray); font-size: 15px; }
.s-steps--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.s-states { display: flex; flex-wrap: wrap; gap: 8px; }
.s-state { padding: 6px 12px; border-radius: 999px; border: 1px solid var(--line); background: var(--card); font-size: 13px; font-weight: 650; color: var(--gray); }
.s-state--on { color: var(--g-deep); border-color: var(--g-tint); background: var(--g-tint); }

/* ── Trust block ── */
.s-trust { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }

/* ── CTA band ── */
.s-cta { padding: 104px 0; }
.s-cta-inner { max-width: 720px; margin: 0 auto; text-align: center; display: grid; gap: 18px; justify-items: center; }

/* ── FAQ ── */
.s-faq { max-width: 820px; margin: 0 auto; border-top: 1px solid var(--line); }
.s-faq details { border-bottom: 1px solid var(--line); }
.s-faq summary { list-style: none; cursor: pointer; padding: 20px 36px 20px 0; font-size: 17px; font-weight: 700; color: var(--ink); position: relative; }
.s-faq summary::-webkit-details-marker { display: none; }
.s-faq summary::after { content: "+"; position: absolute; right: 4px; top: 16px; font-size: 24px; color: var(--g-primary); font-weight: 400; transition: transform .25s var(--ease); }
.s-faq details[open] summary::after { content: "\2013"; }
.s-faq .s-faq-a { padding: 0 0 22px; color: var(--gray); font-size: 15.5px; line-height: 1.7; }
.s-faq .s-faq-a a { color: var(--g-deep); }

/* ── Page hero (every page but home): the same dark premium surface ── */
.s-page-hero { padding: 84px 0 76px; }
.s-page-hero:not(.s-dark) { background: var(--bg); border-bottom: 1px solid var(--line); }
.s-page-hero .s-h1 { max-width: 800px; margin-bottom: 18px; }
.s-page-hero .s-lead { max-width: 660px; }
.s-page-hero .s-cta-row { margin-top: 30px; }
.s-page-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; }
.s-page-hero:has(.s-shot.is-missing) .s-page-hero-grid { grid-template-columns: minmax(0, 1fr); }
.s-page-hero .s-shot-frame { border-color: rgba(255,255,255,.14); box-shadow: var(--shadow-float); }
.s-page-hero .s-section-head--center .s-lead { margin: 0 auto; }
.s-callouts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.s-limits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.s-limits .s-card { padding: 28px; }
.s-avail { display: grid; gap: 10px; padding: 18px 20px; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.s-avail-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 14.5px; color: var(--gray); }
.s-feature-index { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.s-feature-index a { text-decoration: none; display: grid; gap: 8px; }
.s-feature-index a:hover { border-color: var(--g-primary); }
.s-feature-index .s-h3 { color: var(--ink); }

/* ── Forms (contact) ── */
.s-field { display: grid; gap: 6px; margin-bottom: 16px; }
.s-field label { font-size: 13.5px; font-weight: 650; color: var(--ink); }
.s-field small { font-size: 12.5px; color: var(--muted-readable); }
.s-input, .s-select, .s-textarea {
  width: 100%; min-height: 46px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 10px;
  background: var(--card); color: var(--ink); font: inherit; font-size: 16px; outline: none; transition: border-color .15s, box-shadow .15s;
}
.s-textarea { min-height: 120px; resize: vertical; line-height: 1.5; }
.s-input:focus, .s-select:focus, .s-textarea:focus { border-color: var(--g-primary); box-shadow: 0 0 0 3px var(--g-tint); }
.s-input[aria-invalid="true"], .s-select[aria-invalid="true"], .s-textarea[aria-invalid="true"] { border-color: var(--error); }
.s-field-error { display: none; font-size: 13px; color: var(--error); }
.s-field.has-error .s-field-error { display: block; }
.s-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.s-alert { padding: 14px 16px; border-radius: 12px; border: 1px solid var(--line); background: var(--bg); font-size: 14.5px; color: var(--ink); line-height: 1.5; }
.s-alert--ok { background: var(--g-tint); border-color: transparent; color: var(--g-deep); }
.s-alert--bad { background: #fff; border-color: var(--error); color: var(--error); }
.s-alert[hidden] { display: none; }
.s-choice { display: flex; gap: 10px; align-items: flex-start; font-size: 14.5px; color: var(--gray); padding: 8px 0; }
.s-choice input { margin-top: 4px; accent-color: var(--g-primary); width: 18px; height: 18px; }

/* ── Footer ── */
.s-footer { background: var(--bg); border-top: 1px solid var(--line); padding: 72px 0 40px; }
.s-footer-top { display: grid; grid-template-columns: 1.3fr repeat(4, 1fr); gap: 36px; padding-bottom: 36px; border-bottom: 1px solid var(--line); }
.s-footer-brand p { font-size: 14px; color: var(--gray); line-height: 1.6; margin-top: 10px; max-width: 300px; }
.s-footer h4 { font-family: var(--mono); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--gray); margin-bottom: 14px; }
.s-footer ul { list-style: none; display: grid; gap: 9px; }
.s-footer ul a { font-size: 14px; color: var(--ink); text-decoration: none; }
.s-footer ul a:hover { color: var(--g-deep); }
.s-footer-social { display: flex; flex-wrap: wrap; gap: 6px 18px; padding-top: 24px; font-size: 13px; }
.s-footer-social a { color: var(--muted-readable); text-decoration: none; font-weight: 600; }
.s-footer-social a:hover { color: var(--ink); text-decoration: underline; }
.s-footer-bottom { padding-top: 16px; display: grid; gap: 8px; font-size: 12.5px; color: var(--muted-readable); line-height: 1.6; }
.s-footer-bottom a { color: inherit; }

/* ── Motion (scroll reveal; everything respects reduced motion) ── */
.s-reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ease), transform .7s var(--ease); transition-delay: var(--d, 0s); }
.s-reveal.is-in, html.s-noanim .s-reveal { opacity: 1; transform: none; }
html.s-noanim .s-reveal, html.s-noanim .s-needs-item, html.s-noanim .s-hero-line path { transition: none !important; animation: none !important; opacity: 1; transform: none; stroke-dashoffset: 0; }
@media print { .s-reveal { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .s-reveal { opacity: 1; transform: none; transition: none; }
  .s-needs-item { opacity: 1; transform: none; animation: none; }
  .s-hero-line path.s-hero-stroke { stroke-dashoffset: 0; animation: none; }
  .s-hero-line path.s-hero-area { opacity: 1; animation: none; }
  .s-glow-steps::after { transform: scaleX(1); transition: none; }
  .s-glow-steps li .s-glow-dot { border-color: var(--g-bright); color: #fff; box-shadow: 0 0 0 7px rgba(18, 196, 142, .12), 0 0 30px rgba(18, 196, 142, .6); }
  .s-tabpanel { animation: none; }
  .s-btn, .s-card, .s-step, .s-plan, .s-bento-card, .s-bento-media img, .s-hstack-main, .s-mini, .s-needs { transition: none; }
  .s-btn:hover, .s-card:hover, .s-step:hover, .s-plan:hover, .s-bento-card:hover { transform: none; }
  .s-bento-card:hover .s-bento-media img { transform: none; }
}

/* ── Responsive ── */
@media (max-width: 960px) {
  .s-grid-3, .s-grid-4, .s-steps, .s-trust, .s-callouts, .s-feature-index, .s-plans { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s-footer-top { grid-template-columns: 1fr 1fr 1fr; }
  .s-hero-grid, .s-story, .s-story--flip, .s-page-hero-grid, .s-tabpanel-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .s-story--flip .s-story-text { order: 0; }
  .s-hero { padding: 64px 0 64px; }
  .s-section, .s-band, .s-cta { padding: 72px 0; }
  .s-page-hero { padding: 64px 0 56px; }
  .s-page-hero.s-page-hero--pricing { padding-bottom: 150px; }
  .s-hstack { min-height: 0; perspective: none; display: grid; gap: 16px; }
  .s-hstack-main { width: 100%; transform: none; }
  .s-hstack-side { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  .s-mini, .s-needs { position: static; width: auto; transform: none; box-shadow: var(--shadow-md); }
  .s-needs { order: -1; }
  .s-facts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
  .s-facts-grid li:nth-child(odd) { border-left: 0; padding-left: 0; }
  .s-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s-bento-card { grid-column: span 1 !important; }
  .s-glow-steps { grid-template-columns: 1fr; gap: 26px; }
  .s-glow-steps::before, .s-glow-steps::after { left: 27px; right: auto; top: 10px; bottom: 10px; width: 2px; height: auto; }
  .s-glow-steps::after { transform: scaleY(0); transform-origin: center top; }
  .s-glow-steps.is-lit::after { transform: scaleY(1); }
  .s-glow-steps li { display: grid; grid-template-columns: 56px 1fr; gap: 18px; text-align: left; align-items: start; }
  .s-glow-dot { margin: 0; }
  .s-glow-steps p { margin: 0; max-width: none; }
}
@media (max-width: 640px) {
  .s-container { padding: 0 20px; }
  .s-nav-inner { padding: 0 20px; }
  .s-grid-2, .s-grid-3, .s-grid-4, .s-steps, .s-trust, .s-callouts, .s-feature-index, .s-plans, .s-limits, .s-form-row { grid-template-columns: minmax(0, 1fr); }
  .s-footer-top { grid-template-columns: 1fr 1fr; }
  .s-footer-brand { grid-column: 1 / -1; }
  .s-hero { padding: 48px 0 48px; }
  .s-section, .s-band { padding: 56px 0; }
  .s-cta { padding: 60px 0; }
  .s-page-hero { padding: 48px 0 44px; }
  .s-page-hero.s-page-hero--pricing { padding-bottom: 130px; }
  .s-story { padding: 36px 0; }
  .s-cta-row .s-btn { width: 100%; }
  .s-h1 { font-size: 36px; }
  .s-plan-amount { font-size: 40px; }
  .s-kv { grid-template-columns: 1fr; gap: 4px 0; }
  .s-kv dd { margin-bottom: 8px; }
  .s-win-body { aspect-ratio: 390 / 714; }
  .s-hstack-side { grid-template-columns: 1fr; }
  .s-mini--rp { display: none; }
  .s-tab-shot { aspect-ratio: 1 / 1; }
  .s-facts-grid b { font-size: 34px; }
  .s-bento { grid-template-columns: minmax(0, 1fr); }
  .s-tablist { width: 100%; }
  .s-tablist button { flex: 1; padding: 0 10px; }
  .s-topbar { font-size: 12.5px; }
}

/* ── Layout modifiers (no inline column rules on pages; these collapse on phones) ── */
.s-grid-2--wide { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
.s-grid-2--form { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); }
.s-steps--4, .s-plans--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.s-prose table { display: block; overflow-x: auto; max-width: 100%; }
@media (max-width: 960px) {
  .s-grid-2--wide, .s-grid-2--form { grid-template-columns: minmax(0, 1fr); }
  .s-steps--4, .s-plans--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .s-steps--4, .s-plans--4 { grid-template-columns: minmax(0, 1fr); }
}

/* ASTRA CREATIVE R1 — home editorial system; public home only. */
.s-astra-home { --a-paper:#f7f9f5; --a-forest:#06291f; --a-hairline:#dfe7df; background:var(--a-paper); }
.s-astra-home .s-container { max-width:1240px; }
.s-astra-home .s-h2 { font-weight:650; letter-spacing:-.045em; font-size:clamp(32px,3.5vw,50px); line-height:1.12; }
.s-astra-home .s-eyebrow { font-family:var(--sans); font-size:11px; font-weight:650; letter-spacing:.19em; }
.s-astra-home .s-section { padding:112px 0; }
.s-astra-home .s-btn { border-radius:8px; min-height:52px; }
.s-astra-home .s-hero { padding:68px 0 0; background:radial-gradient(ellipse 55% 46% at 50% 90%,#16865c 0%,transparent 100%),radial-gradient(ellipse 55% 50% at 100% 0%,#0a4935 0%,transparent 80%),#041e17; }
.s-astra-home .s-hero::before { background-size:96px 96px; opacity:.36; mask-image:linear-gradient(transparent,#000); }
.s-astra-home .s-hero::after { content:""; position:absolute; width:1100px; height:1100px; border:1px solid #88d6b31b; border-radius:50%; top:270px; left:50%; transform:translateX(-50%); z-index:-1; box-shadow:0 0 0 85px #88d6b309,0 0 0 170px #88d6b305; }
.s-astra-home .s-hero-line { display:none; }
.s-astra-home .s-hero-grid { display:block; }
.a-hero-copy { text-align:center; position:relative; z-index:2; }
.s-astra-home .s-hero .s-eyebrow { display:inline-flex; align-items:center; gap:10px; padding:8px 15px; border:1px solid #94d7b933; border-radius:100px; color:#b9dccd; margin-bottom:24px; background:#ffffff05; }
.s-astra-home .s-hero .s-eyebrow::before { content:""; width:6px; height:6px; border-radius:50%; background:#68dfad; box-shadow:0 0 15px #68dfad; }
.s-astra-home .s-hero .s-h1 { font-size:clamp(46px,5.9vw,85px); line-height:1.015; letter-spacing:-.065em; font-weight:600; margin:0 auto 25px; max-width:1040px; }
.a-title-line { display:block; }
.s-astra-home .s-accent { background:linear-gradient(100deg,#7de2b5,#d3f7a5); background-clip:text; -webkit-background-clip:text; }
.s-astra-home .s-hero .s-lead { max-width:660px; margin:0 auto 26px; font-size:17px; line-height:1.65; color:#c0d5cb; }
.s-astra-home .s-hero .s-cta-row { justify-content:center; }
.s-astra-home .s-hero .s-btn--light { background:#c7f4ac; color:#103924; border-color:#e6ffd6; box-shadow:0 5px 30px #89d9a52a; }
.s-astra-home .s-hero .s-btn--light::after { content:"↗"; margin-left:14px; font-size:20px; font-weight:400; }
.s-astra-home .s-hero .s-btn--outline-light { border-color:#ffffff30; }
.s-astra-home .s-hero .s-note { color:#9eb9ac; font-size:12px; }
.s-astra-home .s-hstack { margin:56px auto 0; width:100%; max-width:1100px; min-height:0; height:430px; perspective:1600px; }
.s-astra-home .s-hstack-main { width:90%; margin:0 auto; transform:rotateX(7deg) translate3d(var(--tx,0),var(--ty,0),0); transform-origin:center bottom; border:1px solid #ffffff55; border-radius:17px 17px 0 0; padding:7px; background:#ffffff16; box-shadow:0 0 80px #67e1a72a; }
.s-astra-home .s-win { border-radius:10px; }
.s-astra-home .s-win-bar { height:30px; }
.s-astra-home .s-win-bar span { font-family:var(--sans); font-size:10px; color:#758679; }
.s-astra-home .s-win-body { aspect-ratio:1440/1380; }
.a-map-detail { position:absolute; width:310px; right:-8px; top:135px; background:#fff; border:1px solid #d9e3dd; border-radius:14px; box-shadow:0 28px 50px #001c1744; overflow:hidden; transform:translate3d(var(--tx,0),var(--ty,0),0) rotate(3deg); }
.a-map-detail figcaption { display:flex; justify-content:space-between; padding:12px 17px; color:#1b4835; font-size:12px; font-weight:650; border-bottom:1px solid #e3e9e4; }
.a-map-crop { height:170px; overflow:hidden; position:relative; }
.a-map-crop img { position:absolute; max-width:none; width:490px; left:-18px; top:-214px; height:auto; }
.s-astra-home .s-facts { position:relative; background:#edf3eb; padding:44px 0 28px; border:0; }
.s-astra-home .s-facts-grid b { font-weight:500; font-size:38px; letter-spacing:-.055em; color:#143f2d; }
.s-astra-home .s-facts-grid li { border-color:#cbdaca; }
.s-astra-home .s-facts-grid li>span { font-size:12px; max-width:190px; }
.s-astra-home .s-facts-note { font-size:11px; margin-top:26px; }
.s-astra-home #tools .s-section-head { max-width:820px; }
.s-astra-home .s-bento { gap:22px; counter-reset:tool; }
.s-astra-home .s-bento-card { border:1px solid #dce5dd; border-radius:16px; box-shadow:none; counter-increment:tool; }
.s-astra-home .s-bento-body { padding:25px; gap:12px; }
.s-astra-home .s-bento-kicker { display:flex; justify-content:space-between; font-family:var(--sans); font-weight:600; letter-spacing:.12em; font-size:10px; }
.s-astra-home .s-bento-kicker::after { content:counter(tool,decimal-leading-zero) " /"; color:#98ab9d; font-weight:400; }
.s-astra-home .s-bento-title { font-size:22px; font-weight:600; letter-spacing:-.035em; line-height:1.2; }
.s-astra-home .s-bento-control { margin-top:8px; padding-top:14px; border-top:1px solid #e7ece5; font-size:12px; font-weight:500; }
.s-astra-home .s-bento-media { background:#e7eee6; border-bottom:1px solid #e2e8e0; }
.s-astra-home .s-bento-card:nth-child(n+3) .s-bento-media { aspect-ratio:16/8; }
.s-astra-home #see-decide-act { background:#eaf0e7; }
.s-astra-home .s-tablist { border-radius:8px; padding:5px; box-shadow:none; background:#dce6d8; border:none; }
.s-astra-home .s-tablist button { border-radius:5px; min-width:115px; font-size:13px; }
.s-astra-home .s-tablist button[aria-selected=true] { background:#fff; color:#16412e; box-shadow:0 2px 6px #12341f12; }
.s-astra-home .s-tabpanel-grid { padding:26px; background:#f7faf4; border:1px solid #d7e2d1; border-radius:20px; gap:40px; }
.s-astra-home .s-tab-shot { border-radius:10px; box-shadow:0 18px 35px #12341f14; }
.s-astra-home .s-callout-list li { border:0; border-bottom:1px solid #dce6d8; border-radius:0; background:none; padding:16px 0; }
.s-astra-home .s-callout-list li:last-child { border:0; }
.s-astra-home .s-callout-list b { font-weight:600; }
.s-astra-home #how-estobi-works { background:radial-gradient(ellipse at 100% 0,#175039,transparent 70%),#08271c; }
.s-astra-home .s-glow-steps { gap:20px; }
.s-astra-home .s-glow-steps li { padding:26px 20px; border:1px solid #ffffff20; border-radius:12px; text-align:left; background:#ffffff04; }
.s-astra-home .s-glow-steps::before,.s-astra-home .s-glow-steps::after { display:none; }
.s-astra-home .s-glow-dot { margin:0 0 28px; width:auto; height:auto; display:block; border:0!important; box-shadow:none!important; background:none!important; color:#c5f1ac!important; font-size:28px; font-weight:400; letter-spacing:-.05em; }
.s-astra-home .s-glow-dot::before { content:counter(gs,decimal-leading-zero); }
.s-astra-home .s-glow-steps h3 { font-weight:550; }
.s-astra-home .s-glow-steps p { color:#bed0c3; margin:0; }
.s-astra-home .s-plan { border-radius:12px; box-shadow:none; background:#fff; }
.s-astra-home .s-plan--featured { border-color:#267c51; box-shadow:0 20px 50px #153d2112; }
.s-astra-home .s-plan-band { background:#1b4e35; }
.s-astra-home #trust { background:#edf2e9; }
.s-astra-home .s-trust .s-card { background:transparent; border:0; border-top:1px solid #aabfaa; border-radius:0; box-shadow:none; padding:26px 0; }
.s-astra-home .s-trust { gap:36px; }
.s-astra-home #questions>.s-container { display:grid; grid-template-columns:.85fr 1.15fr; gap:24px 65px; }
.s-astra-home #questions .s-section-head { text-align:left; margin:0; }
.s-astra-home #questions .s-cta-row { grid-column:2; justify-content:flex-start; }
.s-astra-home .s-faq { width:100%; }
.s-astra-home .s-faq summary { font-weight:550; }
.s-astra-home .s-cta { background:radial-gradient(ellipse at 50% 140%,#297349,transparent 70%),#062b1d; padding:100px 0; border-bottom:1px solid #ffffff20; }
.s-astra-home .s-cta .s-h2 { font-size:clamp(42px,5.8vw,80px); font-weight:500; letter-spacing:-.06em; }
.s-astra-home .s-cta .s-btn { background:#c7f4ac; color:#103924; }
@media(max-width:960px) {
 .s-astra-home .s-hstack { height:330px; }
 .s-astra-home .s-hstack-main { width:95%; }
 .a-map-detail { width:240px; right:0; top:140px; }
 .s-astra-home .s-glow-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .s-astra-home .s-glow-steps li { display:block; }
 .s-astra-home #questions>.s-container { grid-template-columns:1fr; }
 .s-astra-home #questions .s-cta-row { grid-column:auto; }
 .s-astra-home .s-section { padding:80px 0; }
}
@media(max-width:640px) {
 .s-astra-home .s-hero { padding:43px 0 0; }
 .s-astra-home .s-hero .s-h1 { font-size:clamp(35px,9.6vw,56px); letter-spacing:-.055em; line-height:1.06; margin-bottom:21px; }
 .s-astra-home .s-hero .s-eyebrow { font-size:9px; margin-bottom:22px; }
 .s-astra-home .s-hero .s-lead { font-size:14px; line-height:1.65; margin-bottom:24px; max-width:330px; }
 .s-astra-home .s-hero .s-cta-row { gap:8px; flex-wrap:nowrap; }
 .s-astra-home .s-hero .s-btn { width:auto; padding:0 15px; font-size:12px; min-height:48px; }
 .s-astra-home .s-hero .s-btn--light::after { margin-left:3px; font-size:15px; }
 .s-astra-home .s-hero .s-note { font-size:10px; }
 .s-astra-home .s-hstack { margin-top:34px; height:304px; width:100%; display:block; }
 .s-astra-home .s-hstack-main { width:90%; margin:0; padding:5px; transform:rotate(-2deg); border-radius:12px; }
 .s-astra-home .s-win-bar { height:22px; padding:0 6px; }
 .s-astra-home .s-win-bar i { width:5px; height:5px; }
 .s-astra-home .s-win-bar span { font-size:7px; transform:none; }
 .s-astra-home .s-win-body { aspect-ratio:390/714; }
 .a-map-detail { width:178px; right:0; top:174px; transform:rotate(4deg); border-radius:8px; }
 .a-map-detail figcaption { font-size:9px; padding:7px 10px; }
 .a-map-crop { height:96px; }
 .a-map-crop img { width:280px; left:-10px; top:-122px; }
 .s-astra-home .s-facts { padding:30px 0 24px; }
 .s-astra-home .s-facts-grid { gap:23px 20px; }
 .s-astra-home .s-facts-grid li { padding:0; border:0; }
 .s-astra-home .s-facts-grid li:last-child { grid-column:1/-1; display:flex; align-items:center; gap:20px; border-top:1px solid #d2dece; padding-top:20px; }
 .s-astra-home .s-facts-grid b { font-size:34px; }
 .s-astra-home .s-facts-note { text-align:left; font-size:10px; }
 .s-astra-home .s-section { padding:64px 0; }
 .s-astra-home .s-section-head { margin-bottom:30px; }
 .s-astra-home .s-h2 { font-size:32px; }
 .s-astra-home .s-lead { font-size:15px; }
 .s-astra-home .s-bento { gap:18px; }
 .s-astra-home .s-bento-body { padding:22px; }
 .s-astra-home .s-bento-title { font-size:23px; }
 .s-astra-home .s-tabpanel-grid { padding:16px; gap:18px; }
 .s-astra-home .s-tablist button { min-width:0; }
 .s-astra-home .s-glow-steps { grid-template-columns:1fr; gap:12px; }
 .s-astra-home .s-glow-steps li { padding:24px; }
 .s-astra-home .s-glow-dot { margin-bottom:14px; }
 .s-astra-home .s-trust { gap:14px; }
 .s-astra-home .s-cta { padding:70px 0; }
 .s-astra-home .s-cta .s-h2 { font-size:47px; }
}
@media(prefers-reduced-motion:reduce) {
 .s-astra-home .s-hstack-main,.a-map-detail { transform:none; }
}

/* Astra creative R2 — public pricing + free audit only. No portal overrides. */
.s-astra-page { --a-paper:#f6f8f2; --a-forest:#123f2b; --a-lime:#cdf4b5; background:var(--a-paper); }
.s-astra-page .s-container { max-width:1200px; }
.s-astra-page .s-eyebrow { font-family:var(--sans); font-weight:600; font-size:10px; letter-spacing:.19em; }
.s-astra-page .s-h1 { font-weight:500; letter-spacing:-.06em; line-height:1.04; }
.s-astra-page .s-h2 { font-weight:500; font-size:clamp(34px,4.4vw,54px); letter-spacing:-.05em; line-height:1.08; }
.s-astra-page .s-h3 { font-weight:600; letter-spacing:-.025em; }
.s-astra-page .s-lead { font-size:17px; line-height:1.75; }
.s-astra-page .s-btn { border-radius:7px; font-size:14px; font-weight:600; box-shadow:none; min-height:50px; }
.s-astra-page .s-dark { background:radial-gradient(ellipse at 85% 10%,#215e3d88,transparent 57%),#08291c; }
.s-astra-page .s-dark::before { background-image:none; }
.s-astra-page .s-dark .s-eyebrow { color:#b9d9b6; }
.s-astra-page .s-dark .s-lead { color:#c4d2c5; }
.s-astra-page .s-dark .s-accent { color:var(--a-lime); background:none; }
.s-astra-page .s-dark .s-btn:not(.s-btn--ghost):not(.s-btn--outline-light) { color:#153c25; background:var(--a-lime); box-shadow:none; }
.s-astra-page .s-dark .s-btn:not(.s-btn--ghost):not(.s-btn--outline-light):hover { background:#defbcd; }
.s-astra-page .s-section--tint { background:#edf2e8; }
.s-astra-page .a-questions>.s-container { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start; }
.s-astra-page .a-questions .s-section-head { text-align:left; margin:0; }
.s-astra-page .a-questions .s-faq { width:100%; }
.s-astra-page .s-faq summary { font-weight:550; font-size:16px; padding-top:23px; padding-bottom:23px; }
.s-astra-page .s-faq-a { font-size:14.5px; }
.s-astra-page .s-cta { padding:100px 0; background:radial-gradient(ellipse at 50% 160%,#357b4b,transparent 72%),#08291c; }
.s-astra-page .s-cta-inner { max-width:850px; gap:24px; }
.s-astra-page .s-cta .s-h2 { font-size:clamp(40px,5.3vw,72px); letter-spacing:-.055em; margin-bottom:0; }
.s-astra-page .s-cta .s-lead { max-width:620px; }

/* Pricing — a quiet editorial masthead and three architectural plan columns. */
.s-astra-pricing .s-page-hero--pricing { padding:76px 0 168px; background:radial-gradient(ellipse at 50% -25%,#31654499,transparent 62%),#08291c; }
.s-astra-pricing .s-page-hero--pricing::after { content:""; position:absolute; width:1080px; height:640px; border:1px solid #b9e7bc13; border-radius:50%; left:50%; top:-350px; transform:translateX(-50%); z-index:-1; box-shadow:0 0 0 95px #b9e7bc04,0 0 0 190px #b9e7bc03; pointer-events:none; }
.s-astra-pricing .s-page-hero .s-section-head { max-width:1040px; }
.s-astra-pricing .s-page-hero .s-h1 { font-size:clamp(42px,5.8vw,76px); max-width:none; margin:24px 0; }
.s-astra-pricing .s-page-hero .s-lead { max-width:650px; font-size:16px; }
.s-astra-pricing .s-seg-row { flex-direction:column; gap:15px; margin-top:32px; }
.s-astra-pricing .s-seg { padding:5px; border-radius:9px; background:#ffffff08; }
.s-astra-pricing .s-seg button { min-height:44px; border-radius:5px; padding:0 22px; font-size:13px; }
.s-astra-pricing .s-seg button[aria-pressed=true] { background:var(--a-lime); color:#163b27; }
.s-astra-pricing .s-seg-save { font-size:10px; padding:2px 6px; background:#cdf4b520; color:#d8f8c6; }
.s-astra-pricing .s-seg button[aria-pressed=true] .s-seg-save { background:#1b4e3520; color:#153c25; }
.s-astra-pricing #seg-note { font-size:11px; min-height:36px; max-width:490px; text-align:center; }
.s-astra-pricing .s-section--raised { margin-top:-108px; padding-bottom:62px; }
.s-astra-pricing .s-plans { gap:18px; }
.s-astra-pricing .s-plan { padding:32px; padding-top:65px; border:1px solid #d4dfd0; border-radius:14px; background:#fff; box-shadow:0 24px 55px -35px #15351d45; gap:17px; }
.s-astra-pricing .s-plan:hover { transform:translateY(-3px); box-shadow:0 28px 55px -30px #15351d50; }
.s-astra-pricing .s-plan-name { display:flex; gap:12px; align-items:center; font-size:23px; font-weight:600; letter-spacing:-.045em; }
.s-astra-pricing .s-plan-name::before { content:""; width:26px; height:26px; border:1px solid #548462; border-radius:50%; box-shadow:inset 0 0 0 5px #e9f1e5; flex-shrink:0; }
.s-astra-pricing .s-plan:nth-child(2) .s-plan-name::before { border-color:#c8edb2; box-shadow:inset 0 0 0 5px #174932; border-radius:7px; transform:rotate(45deg); }
.s-astra-pricing .s-plan:nth-child(3) .s-plan-name::before { border-radius:5px; box-shadow:inset 0 0 0 5px #e9f1e5; }
.s-astra-pricing .s-plan-tag { font-size:13px; line-height:1.55; min-height:40px; margin-top:-7px; }
.s-astra-pricing .s-plan-price { margin-top:6px; gap:9px; }
.s-astra-pricing .s-plan-amount { font-size:53px; font-weight:500; letter-spacing:-.055em; }
.s-astra-pricing .s-plan-per { font-size:12px; }
.s-astra-pricing .s-plan-billing { min-height:43px; font-size:11px; }
.s-astra-pricing .s-plan-save { font-size:10px; font-weight:600; padding:2px 7px; margin-left:0; margin-top:4px; }
.s-astra-pricing .s-plan-meta { padding:18px 0; border-radius:0; border-top:1px solid #e1e8dc; border-bottom:1px solid #e1e8dc; background:none; gap:8px; font-size:12px; }
.s-astra-pricing .s-plan-meta b { font-weight:650; }
.s-astra-pricing .s-plan-includes { font-family:var(--sans); font-size:9px; color:#667460; font-weight:600; }
.s-astra-pricing .s-plan .s-list { gap:14px; padding-bottom:14px; }
.s-astra-pricing .s-plan .s-list li { padding-left:21px; font-size:12.5px; line-height:1.6; }
.s-astra-pricing .s-plan .s-list li::before { width:10px; height:6px; top:7px; border-width:1.5px; }
.s-astra-pricing .s-plan-foot .s-btn { min-height:48px; }
.s-astra-pricing .s-plan--featured { color:#fff; background:linear-gradient(145deg,#174d33,#0a2c1d); border-color:#245b38; box-shadow:0 30px 70px -30px #133f2e70; }
.s-astra-pricing .s-plan--featured .s-plan-band { position:absolute; inset:0 0 auto; margin:0; padding:12px 20px; background:#c9e8b5; color:#193f26; border-radius:13px 13px 0 0; text-align:center; font-family:var(--sans); font-size:9px; letter-spacing:.12em; }
.s-astra-pricing .s-plan--featured .s-plan-name,.s-astra-pricing .s-plan--featured .s-plan-amount,.s-astra-pricing .s-plan--featured .s-plan-meta b { color:#fff; }
.s-astra-pricing .s-plan--featured .s-plan-tag,.s-astra-pricing .s-plan--featured .s-plan-per,.s-astra-pricing .s-plan--featured .s-plan-billing,.s-astra-pricing .s-plan--featured .s-plan-meta,.s-astra-pricing .s-plan--featured .s-list li { color:#ccdbca; }
.s-astra-pricing .s-plan--featured .s-plan-includes { color:#b0c5ac; }
.s-astra-pricing .s-plan--featured .s-plan-meta { border-color:#ffffff21; }
.s-astra-pricing .s-plan--featured .s-plan-save { background:#cdf4b519; color:#d4f5bf; }
.s-astra-pricing .s-plan--featured .s-list li::before { border-color:#bae799; }
.s-astra-pricing .s-plan--featured .s-btn { background:var(--a-lime); color:#123b25; }
.s-astra-pricing .s-plan--featured .s-btn:hover { background:#e0ffd0; }
.s-astra-pricing #extra-audit-note { font-size:12px; margin-top:30px!important; }
.s-astra-pricing .s-reassure { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:34px; gap:20px; padding:28px 0 0; border-top:1px solid #d5dfcf; }
.s-astra-pricing .s-reassure span { align-items:flex-start; font-size:11px; font-weight:500; }
.s-astra-pricing .s-reassure span::before { margin-top:4px; width:10px; height:6px; border-width:1.5px; }
.s-astra-pricing .a-managed { padding:0 0 70px; background:var(--a-paper); }
.s-astra-pricing .a-managed-inner { border:1px solid #d9e5d2; border-radius:14px; padding:36px 40px; background:linear-gradient(110deg,#e5efd9,#eff4e8); box-shadow:none; gap:24px; }
.s-astra-pricing .a-managed-inner>div { flex:1; min-width:0; }
.s-astra-pricing .a-managed-inner .s-h3 { font-size:27px!important; font-weight:500; }
.s-astra-pricing #managed-strip-copy { font-size:13px!important; max-width:630px; }
.s-astra-pricing .a-managed-inner .s-btn { border-color:#8fa486; white-space:nowrap; }
.s-astra-pricing #compare { padding-top:75px; background:#fff; border-top:1px solid #e2e9dd; }
.s-astra-pricing #compare .s-section-head { display:grid; grid-template-columns:1.1fr .9fr; max-width:none; gap:0 65px; align-items:end; }
.s-astra-pricing #compare .s-eyebrow { grid-column:1/-1; }
.s-astra-pricing #compare .s-h2 { margin-bottom:0; }
.s-astra-pricing #compare .s-lead { font-size:15px; }
.s-astra-pricing .s-matrix-wrap { border-radius:12px; border-color:#dce4d6; box-shadow:none; }
.s-astra-pricing .s-matrix { min-width:0; table-layout:fixed; }
.s-astra-pricing .s-matrix th:first-child { width:44%; }
.s-astra-pricing .s-matrix th,.s-astra-pricing .s-matrix td { padding:17px 20px; font-size:13px; }
.s-astra-pricing .s-matrix thead th { background:#123f2b; color:#fff; font-size:15px; padding-top:24px; padding-bottom:24px; font-weight:500; }
.s-astra-pricing .s-matrix thead th.is-featured { background:#1c5033; color:#d4f4bc; }
.s-astra-pricing .s-matrix .s-matrix-group th { background:#edf2e7; color:#38543b; font-family:var(--sans); font-size:9px; font-weight:650; padding-top:12px; padding-bottom:12px; }
.s-astra-pricing #compare>.s-container>.s-small { font-size:11px; line-height:1.7; }

/* Free audit — a typographic report cover, not a fabricated product screen. */
.s-astra-audit .s-page-hero { padding:92px 0 96px; }
.s-astra-audit .s-page-hero-grid { grid-template-columns:1.08fr .92fr; gap:40px; }
.s-astra-audit .s-page-hero .s-h1 { font-size:clamp(42px,4.7vw,64px); margin:24px 0; }
.s-astra-audit .s-page-hero .s-lead { font-size:15px; max-width:500px; }
.s-astra-audit .s-page-hero .s-note { max-width:460px; font-size:11px; line-height:1.7; }
.s-astra-audit .s-page-hero .s-cta-row { gap:10px; margin-top:28px; }
.s-astra-audit .s-page-hero .s-btn { padding:0 20px; font-size:13px; }
.s-astra-audit .a-audit-art { position:relative; width:100%; height:520px; perspective:1200px; isolation:isolate; }
.s-astra-audit .a-audit-orbit { position:absolute; border:1px solid #b9e9a92a; border-radius:50%; left:50%; top:50%; transform:translate(-50%,-50%) rotate(-28deg); pointer-events:none; }
.s-astra-audit .a-audit-orbit--outer { width:116%; height:85%; }
.s-astra-audit .a-audit-orbit--inner { width:104%; height:67%; border-color:#b9e9a915; }
.s-astra-audit .a-audit-paper { position:absolute; width:71%; height:432px; left:15%; top:38px; border-radius:6px 24px 24px 6px; }
.s-astra-audit .a-audit-paper--back { background:linear-gradient(145deg,#5f9561,#1c5238); border:1px solid #afd59755; transform:rotate(8deg) translate(21px,0); box-shadow:0 30px 90px #0005; }
.s-astra-audit .a-audit-paper--front { background:linear-gradient(120deg,#f1f5e8,#dcebd0); color:#153b28; transform:rotate(-7deg); box-shadow:-8px 6px 12px #09291e11,0 32px 60px #0004,inset 8px 0 15px #65805310; padding:28px 29px 20px; border:1px solid #d9e8d1; }
.s-astra-audit .a-paper-eyebrow { font-size:8px; text-transform:uppercase; letter-spacing:.2em; font-weight:600; }
.s-astra-audit .a-paper-mark { position:absolute; right:24px; top:22px; width:46px; height:46px; color:#4f8152; }
.s-astra-audit .a-paper-title { font-size:38px; font-weight:500; line-height:1.08; letter-spacing:-.055em; margin:34px 0 27px; }
.s-astra-audit .a-paper-contents { display:grid; gap:0; border-top:1px solid #8eaf8155; }
.s-astra-audit .a-paper-contents span { font-size:11px; padding:10px 0; display:flex; gap:13px; border-bottom:1px solid #8eaf8133; }
.s-astra-audit .a-paper-contents i { font-style:normal; font-size:9px; color:#587951; }
.s-astra-audit .a-paper-foot { font-size:9px; margin-top:20px; color:#53704b; }
.s-astra-audit .a-orbit-point { position:absolute; width:9px; height:9px; border-radius:50%; background:#c8edb0; box-shadow:0 0 0 7px #b9e9a912,0 0 30px #b9e9a970; }
.s-astra-audit .a-orbit-point--one { top:63px; left:10%; }
.s-astra-audit .a-orbit-point--two { bottom:44px; right:5%; width:5px; height:5px; }
.s-astra-audit .a-audit-steps { background:#edf2e7; }
.s-astra-audit .a-audit-steps .s-section-head { max-width:none; text-align:left; }
.s-astra-audit .s-steps { gap:36px; }
.s-astra-audit .s-step { background:none; border:0; border-top:1px solid #abc1a3; box-shadow:none; border-radius:0; padding:24px 0 0; }
.s-astra-audit .s-step:hover { transform:none; }
.s-astra-audit .s-step::before { font-family:var(--sans); font-weight:400; font-size:38px; letter-spacing:-.06em; color:#2d6641; margin-bottom:23px; }
.s-astra-audit .s-step .s-h3 { font-size:20px; max-width:290px; }
.s-astra-audit .s-step p { font-size:13px; line-height:1.75; }
.s-astra-audit #what-you-get { background:radial-gradient(ellipse at 100% 0,#1e5a3a55,transparent 60%),#08291c; }
.s-astra-audit #what-you-get .s-section-head { max-width:860px; }
.s-astra-audit #what-you-get .s-lead { font-size:15px; max-width:740px; }
.s-astra-audit .a-report-grid { gap:16px; }
.s-astra-audit .a-report-grid .s-card { padding:30px; border-radius:12px; background:#ffffff04; border:1px solid #a7cd9a30; box-shadow:none; position:relative; overflow:hidden; }
.s-astra-audit .a-report-grid .s-card:hover { background:#ffffff09; transform:translateY(-3px); border-color:#a7cd9a60; }
.s-astra-audit .a-report-grid .s-card-num { font-size:36px; font-family:var(--sans); font-weight:400; letter-spacing:-.055em; color:#c6e9ae; margin-bottom:24px; }
.s-astra-audit .a-report-grid .s-card p { font-size:13px; line-height:1.7; color:#c5d2c3; }
.s-astra-audit .a-report-grid .s-h3 { font-size:20px; margin-bottom:13px; }
.s-astra-audit .a-report-grid .s-card:first-child { background:linear-gradient(135deg,#d6eac4,#bedba9); border-color:#c8dfb7; }
.s-astra-audit .a-report-grid .s-card:first-child .s-card-num { color:#52734d; }
.s-astra-audit .a-report-grid .s-card:first-child .s-h3 { color:#153b27; }
.s-astra-audit .a-report-grid .s-card:first-child p { color:#355739; }
.s-astra-audit .a-report-grid .s-card--tint { display:flex; flex-direction:column; justify-content:center; border-style:dashed; background:transparent; }
.s-astra-audit .a-report-grid .s-card--tint .s-h3 { color:#c5dbaF; }
.s-astra-audit .a-after-audit .s-grid-2 { align-items:center!important; gap:80px!important; }
.s-astra-audit .a-after-audit .s-lead { font-size:15px; }
.s-astra-audit .a-after-audit .s-list { gap:14px; padding-top:10px; }
.s-astra-audit .a-after-audit .s-list li { font-size:13px; line-height:1.65; }
.s-astra-audit .a-access-art { height:410px; position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; overflow:hidden; border-radius:20px; background:radial-gradient(ellipse at 50% 40%,#dae9c9,transparent 70%),#ecf1e5; border:1px solid #dce7d3; }
.s-astra-audit .a-access-ring { position:absolute; width:280px; height:280px; border-radius:50%; border:1px solid #98b98733; top:29px; }
.s-astra-audit .a-access-ring--two { width:380px; height:380px; top:-21px; }
.s-astra-audit .a-access-lock { color:#426d43; width:116px; margin-bottom:27px; transform:rotate(-9deg); filter:drop-shadow(0 9px 9px #42743120); }
.s-astra-audit .a-access-caption { position:relative; font-size:30px; font-weight:400; line-height:1.13; text-align:center; letter-spacing:-.05em; color:#597a50; }
.s-astra-audit .a-access-caption b { font-weight:500; color:#183f2b; }
@media (min-width:961px) {
 .s-astra-pricing .s-plan { min-height:920px; }
}
@media (max-width:960px) {
 .s-astra-page .a-questions>.s-container { grid-template-columns:1fr; gap:35px; }
 .s-astra-page .s-section,.s-astra-page .s-band { padding:76px 0; }
 .s-astra-pricing .s-section--raised { padding-top:0; padding-bottom:55px; }
 .s-astra-pricing .s-plans { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
 .s-astra-pricing .s-plan { padding:58px 18px 24px; }
 .s-astra-pricing .s-plan-amount { font-size:43px; }
 .s-astra-pricing .s-plan-name { font-size:20px; gap:8px; }
 .s-astra-pricing .s-plan-name::before { width:21px; height:21px; }
 .s-astra-pricing .s-reassure { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .s-astra-pricing .a-managed { padding:0 0 60px; }
 .s-astra-pricing .a-managed-inner { padding:30px; }
 .s-astra-pricing #compare .s-section-head { grid-template-columns:1fr; gap:16px; }
 .s-astra-audit .s-page-hero { padding:64px 0; }
 .s-astra-audit .s-page-hero-grid { grid-template-columns:1fr 1fr; gap:24px; }
 .s-astra-audit .s-page-hero .s-h1 { font-size:45px; }
 .s-astra-audit .a-audit-art { height:460px; }
 .s-astra-audit .a-audit-paper { width:82%; left:8%; height:390px; }
 .s-astra-audit .a-audit-paper--front { padding:25px 22px; }
 .s-astra-audit .a-paper-title { font-size:33px; margin-bottom:20px; }
 .s-astra-audit .a-paper-mark { width:34px; right:20px; }
 .s-astra-audit .a-paper-contents span { font-size:10px; padding:9px 0; }
 .s-astra-audit .s-steps { gap:24px; grid-template-columns:repeat(3,minmax(0,1fr)); }
 .s-astra-audit .s-step .s-h3 { font-size:18px; }
 .s-astra-audit .a-after-audit .s-grid-2 { gap:35px!important; }
 .s-astra-audit .a-access-art { height:350px; }
}
@media (max-width:600px) {
 .s-astra-page .s-container { padding-left:22px; padding-right:22px; }
 .s-astra-page .s-h2 { font-size:34px; }
 .s-astra-page .s-section,.s-astra-page .s-band { padding:64px 0; }
 .s-astra-page .s-lead { font-size:15px; }
 .s-astra-page .s-section-head { margin-bottom:32px; }
 .s-astra-page .s-cta { padding:72px 0; }
 .s-astra-page .s-cta .s-h2 { font-size:43px; }
 .s-astra-page .s-faq summary { font-size:15px; line-height:1.4; }
 .s-astra-page .s-faq-a { font-size:13px; }
 .s-astra-pricing .s-page-hero.s-page-hero--pricing { padding:53px 0 119px; }
 .s-astra-pricing .s-page-hero .s-h1 { font-size:43px; margin:23px 0; }
 .s-astra-pricing .s-page-hero .s-h1 br { display:none; }
 .s-astra-pricing .s-page-hero .s-accent { display:block; }
 .s-astra-pricing .s-page-hero .s-lead { font-size:14px; }
 .s-astra-pricing .s-seg-row { margin-top:28px; }
 .s-astra-pricing .s-seg { max-width:100%; }
 .s-astra-pricing .s-seg button { font-size:12px; padding:0 14px; gap:5px; }
 .s-astra-pricing .s-seg-save { font-size:9px; padding:2px 5px; }
 .s-astra-pricing #seg-note { font-size:10px; max-width:310px; }
 .s-astra-pricing .s-section--raised { margin-top:-74px; padding-top:0; padding-bottom:45px; }
 .s-astra-pricing .s-plans { grid-template-columns:1fr; gap:18px; }
 .s-astra-pricing .s-plan { padding:28px; gap:16px; }
 .s-astra-pricing .s-plan--featured { padding-top:64px; }
 .s-astra-pricing .s-plan-name { font-size:25px; }
 .s-astra-pricing .s-plan-name::before { width:26px; height:26px; }
 .s-astra-pricing .s-plan-tag { min-height:0; font-size:13px; }
 .s-astra-pricing .s-plan-amount { font-size:53px; }
 .s-astra-pricing .s-plan-billing { min-height:23px; }
 .s-astra-pricing .s-plan .s-list li { font-size:13px; }
 .s-astra-pricing #extra-audit-note { font-size:11px; text-align:left!important; }
 .s-astra-pricing .s-reassure { gap:20px 18px; }
 .s-astra-pricing .s-reassure span { font-size:10.5px; }
 .s-astra-pricing .a-managed { padding:0 0 55px; }
 .s-astra-pricing .a-managed-inner { padding:28px; }
 .s-astra-pricing .a-managed-inner>div { flex-basis:100%; }
 .s-astra-pricing .a-managed-inner .s-h3 { font-size:25px!important; }
 .s-astra-pricing .a-managed-inner .s-btn { font-size:12px; width:100%; }
 .s-astra-pricing #compare { padding-top:58px; }
 .s-astra-pricing .s-matrix th:first-child { width:43%; }
 .s-astra-pricing .s-matrix th,.s-astra-pricing .s-matrix td { padding:14px 6px; font-size:11px; overflow-wrap:anywhere; }
 .s-astra-pricing .s-matrix th:first-child { padding-left:12px; }
 .s-astra-pricing .s-matrix thead th { font-size:10px; padding:20px 4px; }
 .s-astra-pricing .s-matrix thead th:first-child { padding-left:12px; }
 .s-astra-pricing .s-matrix .s-matrix-group th { font-size:8px; padding:10px 12px; }
 .s-astra-pricing .s-matrix .s-link { font-size:10px; }
 .s-astra-pricing #compare>.s-container>.s-small { font-size:10px; }
 .s-astra-audit .s-page-hero { padding:53px 0 26px; }
 .s-astra-audit .s-page-hero-grid { grid-template-columns:1fr; gap:10px; }
 .s-astra-audit .s-page-hero .s-h1 { font-size:43px; margin:23px 0; }
 .s-astra-audit .s-page-hero .s-lead { font-size:14px; }
 .s-astra-audit .s-page-hero .s-cta-row { flex-wrap:nowrap; gap:8px; }
 .s-astra-audit .s-page-hero .s-btn { font-size:11px; padding:0 12px; width:auto; flex:1; min-height:48px; }
 .s-astra-audit .s-page-hero .s-note { font-size:10px; }
 .s-astra-audit .a-audit-art { height:425px; max-width:380px; margin:0 auto; }
 .s-astra-audit .a-audit-paper { width:73%; left:13%; top:28px; height:356px; }
 .s-astra-audit .a-audit-paper--front { padding:23px 25px; }
 .s-astra-audit .a-paper-title { font-size:31px; margin:32px 0 20px; }
 .s-astra-audit .a-paper-mark { width:34px; height:34px; right:20px; top:19px; }
 .s-astra-audit .a-paper-contents span { font-size:9px; padding:8px 0; }
 .s-astra-audit .a-paper-foot { font-size:8px; margin-top:15px; }
 .s-astra-audit .a-orbit-point--one { top:62px; left:7%; }
 .s-astra-audit .a-orbit-point--two { bottom:45px; }
 .s-astra-audit .s-steps { grid-template-columns:1fr; gap:29px; }
 .s-astra-audit .s-step { padding-top:23px; display:grid; grid-template-columns:40px 1fr; gap:0 18px; }
 .s-astra-audit .s-step::before { grid-row:1/3; font-size:30px; margin:0; }
 .s-astra-audit .s-step .s-h3 { font-size:20px; margin-bottom:10px; }
 .s-astra-audit .s-step p { grid-column:2; font-size:13px; }
 .s-astra-audit .a-report-grid { gap:13px; }
 .s-astra-audit .a-report-grid .s-card { padding:26px; }
 .s-astra-audit .a-report-grid .s-card-num { font-size:30px; margin-bottom:20px; }
 .s-astra-audit .a-report-grid .s-card--tint { padding:26px; }
 .s-astra-audit .a-after-audit .s-grid-2 { gap:34px!important; }
 .s-astra-audit .a-access-art { height:310px; border-radius:14px; }
 .s-astra-audit .a-access-lock { width:90px; margin-bottom:20px; }
 .s-astra-audit .a-access-caption { font-size:26px; }
 .s-astra-audit .a-access-ring { top:-4px; }
 .s-astra-audit .a-access-ring--two { top:-54px; }
}
@media (prefers-reduced-motion:reduce) {
 .s-astra-page .s-plan:hover,.s-astra-audit .a-report-grid .s-card:hover { transform:none; }
}

/* Astra creative R3 — public feature family; no portal selectors. */
.s-astra-features .s-page-hero { padding:94px 0 88px; overflow:hidden; position:relative; }
.s-astra-features .s-page-hero::after { content:""; position:absolute; width:680px; height:680px; border:1px solid #c5eab515; border-radius:50%; right:-180px; top:-240px; pointer-events:none; }
.s-astra-features .s-page-hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:60px; }
.s-astra-features .s-h1 { font-size:clamp(44px,4.3vw,62px); text-wrap:balance; }
.s-astra-features .s-page-hero .s-eyebrow { margin-bottom:25px; }
.s-astra-features .s-page-hero .s-lead { font-size:16px; max-width:520px; }
.s-astra-features .s-page-hero .s-shot { transform:rotate(-2deg); margin:0; padding:11px; background:#c6e9b81a; border:1px solid #cde7ba36; border-radius:20px; box-shadow:0 35px 75px #0005; }
.s-astra-features .s-shot-frame { border-radius:12px; overflow:hidden; }
.s-astra-features .s-shot img { display:block; width:100%; height:auto; }
.s-astra-features .s-section { padding:100px 0; }
.s-astra-features .s-callouts { gap:36px; }
.s-astra-features .s-callouts .s-card { background:transparent; border:0; border-top:1px solid #bbcabb; border-radius:0; padding:27px 0 0; box-shadow:none; }
.s-astra-features .s-card-num { color:#3d7051; font-size:13px; background:none; width:auto; height:auto; padding:0; margin-bottom:32px; font-weight:500; }
.s-astra-features .s-callouts .s-h3 { font-size:23px; max-width:310px; line-height:1.22; margin-bottom:17px; }
.s-astra-features .s-card p { line-height:1.8; }
.s-astra-features .s-band { padding:94px 0; }
.s-astra-features .s-band .s-card { background:#ffffff05; border:1px solid #ccdfca30; border-radius:12px; box-shadow:none; padding:30px; }
.s-astra-features .s-band .s-card p { color:#c4d2c5; }
.s-astra-features .s-section-head { text-align:left; max-width:800px; margin-left:0; }
.s-astra-features .s-limits { gap:24px; }
.s-astra-features .s-limits .s-card { border-radius:12px; box-shadow:none; padding:36px; }
.s-astra-features .s-limits .s-card:first-child { background:#e7efdf; border-color:#d0ddc8; }
.s-astra-features .s-band .s-limits .s-card:first-child { background:#cde7ba0c; border-color:#ccdfca30; }
.s-astra-features .s-list li { padding-top:11px; padding-bottom:11px; line-height:1.7; }
.s-astra-features .s-avail { border-radius:10px; padding:24px; }
.s-astra-features .s-cta { border-top:1px solid #a7c4a325; }
.s-astra-feature-index .s-page-hero { text-align:center; padding-bottom:95px; }
.s-astra-feature-index .s-page-hero .s-h1 { max-width:850px; margin:0 auto 26px; font-size:clamp(48px,6vw,82px); }
.s-astra-feature-index .s-page-hero .s-lead { max-width:630px; margin:0 auto; }
.s-astra-feature-index .s-page-hero .s-cta-row { justify-content:center; }
.s-astra-features .a-product-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin:-145px 0 75px; position:relative; z-index:1; align-items:start; }
.s-astra-features .a-gallery-panel { display:block; background:#e8efe1; padding:13px; border:1px solid #ced9c7; border-radius:15px; box-shadow:0 18px 34px #15382112; text-decoration:none; overflow:hidden; }
.s-astra-features .a-gallery-panel:nth-child(2) { margin-top:35px; }
.s-astra-features .a-gallery-panel span { display:block; padding:5px 4px 14px; font-size:12px; font-weight:600; color:#1d4932; }
.s-astra-features .a-gallery-panel img { width:100%; height:220px; display:block; object-fit:cover; object-position:top; border-radius:7px; }
.s-astra-features .s-feature-index { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.s-astra-features .s-feature-index .s-card { position:relative; overflow:hidden; padding:25px; border-radius:14px; box-shadow:none; background:#fff; display:flex; flex-direction:column; gap:12px; transition:transform .25s,border-color .25s; }
.s-astra-features .s-feature-index .s-card:hover { transform:translateY(-5px); }
.s-astra-features .s-feature-index .s-card:focus-visible { outline:3px solid #39744d; outline-offset:4px; }
.s-astra-features .s-feature-index .s-card .s-h3 { font-size:25px; line-height:1.2; }
.s-astra-features .s-feature-index .s-card p { margin:0; }
.s-astra-features .s-feature-index .s-card::after { content:"↗"; position:absolute; right:24px; top:25px; font-size:20px; color:#d2eabc; }
.s-astra-features .s-feature-index .s-card:last-child { grid-column:2; }
@media(min-width:1000px) { .s-astra-feature-reviews .s-h1 { font-size:55px; } }
@media(max-width:1000px) {
 .s-astra-features .s-page-hero-grid { gap:32px; }
 .s-astra-features .s-h1 { font-size:46px; }
 .s-astra-features .s-feature-index { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .s-astra-features .s-feature-index .s-card:last-child { grid-column:auto; }
 .s-astra-features .s-callouts { gap:24px; }
 .s-astra-features .a-gallery-panel img { height:175px; }
}
@media(max-width:700px) {
 .s-astra-features .s-page-hero { padding:57px 0 55px; }
 .s-astra-features .s-page-hero-grid { grid-template-columns:minmax(0,1fr); gap:30px; }
 .s-astra-features .s-h1 { font-size:45px; }
 .s-astra-features .s-page-hero .s-lead { font-size:15px; }
 .s-astra-features .s-page-hero .s-shot { transform:none; padding:8px; border-radius:15px; }
 .s-astra-features .s-section,.s-astra-features .s-band { padding:64px 0; }
 .s-astra-features .s-callouts,.s-astra-features .s-feature-index { grid-template-columns:minmax(0,1fr); gap:30px; }
 .s-astra-features .s-card-num { margin-bottom:20px; }
 .s-astra-features .s-limits .s-card { padding:25px; }
 .s-astra-features .s-band .s-grid-2 { gap:28px!important; }
 .s-astra-feature-index .s-page-hero { text-align:left; padding-bottom:75px; }
 .s-astra-feature-index .s-page-hero .s-h1 { font-size:49px; }
 .s-astra-feature-index .s-page-hero .s-cta-row { justify-content:flex-start; }
 .s-astra-features .a-product-gallery { margin:-95px 0 48px; gap:9px; }
 .s-astra-features .a-gallery-panel { padding:6px; border-radius:8px; }
 .s-astra-features .a-gallery-panel img { height:115px; border-radius:4px; }
 .s-astra-features .a-gallery-panel span { font-size:9px; padding:3px 0 8px; }
 .s-astra-features .a-gallery-panel:nth-child(2) { margin-top:20px; }
}
@media(prefers-reduced-motion:reduce) { .s-astra-features .s-feature-index .s-card { transition:none; } .s-astra-features .s-feature-index .s-card:hover { transform:none; } }

/* Astra creative R4: public-site completion and the R2/R3 live-feedback batch. */
body.s-astra-page #site-nav,body.s-astra-home #site-nav { min-height:105px; }
.s-astra-page { --g-primary:#0a7552; }
.s-astra-page .s-h1,.s-astra-page .s-h2,.s-astra-page .s-h3 { text-wrap:balance; }
.s-astra-page .s-lead,.s-astra-page .s-note,.s-astra-page .s-card p { text-wrap:pretty; }
.s-astra-page .s-eyebrow { font-size:12px; color:#0a7552; letter-spacing:.15em; }
.s-astra-page .s-dark .s-eyebrow { color:#b9d9b6; }
.s-astra-page .s-faq-a,.s-astra-page .s-small { font-size:14px; }
.s-astra-page .a-nowrap { white-space:nowrap; }
.s-astra-page .a-r4-art { position:relative; width:100%; max-width:520px; aspect-ratio:520/460; margin:auto; border-radius:28px; background:radial-gradient(ellipse at 60% 35%,#71a66633,transparent 68%); overflow:hidden; }
.s-astra-page .a-r4-art svg { display:block; width:100%; height:100%; filter:drop-shadow(0 25px 22px #00160838); }
.s-astra-page .a-real-screen { margin:0; }
.s-astra-page .a-real-screen img { display:block; width:100%; height:auto; }
@media(min-width:961px) { .s-astra-page .a-questions .s-section-head { position:sticky; top:100px; } }

/* R3: inherited home pseudo-elements must never draw across the feature copy. */
.s-astra-features .s-feature-index .s-card::after { content:"↗" / ""; }
.s-astra-features .s-feature-index .s-card:last-child { grid-column:auto; }
.s-astra-features .s-limits { align-items:start; }
.s-astra-features #keywords .s-card { box-shadow:none; border-radius:12px; padding:30px; border:1px solid #d1ddc9; }
.s-astra-features .s-cta-row--center { justify-content:flex-start; }
.s-astra-features .s-cta-row--center .s-btn { min-height:36px; padding:0; background:none; color:#0a7552; border:0; border-radius:0; text-decoration:underline; text-underline-offset:5px; }
.s-astra-features .s-band .s-cta-row--center .s-btn { color:#cdeab4; background:none; }
.s-astra-features .a-product-gallery { gap:22px; }
.s-astra-features .a-gallery-panel { padding:15px; transition:border-color .2s,transform .2s; }
.s-astra-features .a-gallery-panel:hover { border-color:#688c5d; transform:translateY(-3px); }
.s-astra-features .a-gallery-panel:focus-visible { outline:3px solid #39744d; outline-offset:4px; }
.s-astra-features .a-gallery-panel>span { font-size:14px; padding-bottom:14px; }
.s-astra-features .a-gallery-panel>span::after { content:"↗" / ""; float:right; }
.s-astra-features .a-gallery-panel:nth-child(2) { margin-top:25px; }
.s-astra-features .a-gallery-panel .s-shot-frame { height:300px; background:#f4f6f5; box-shadow:none; }
.s-astra-features .a-gallery-panel img { height:auto; width:100%; object-fit:contain; }
.s-astra-features .a-gallery-panel .a-repricer-crop { height:auto; }
.s-astra-features .a-profit-method .s-card { background:#e7efdf; padding:40px; box-shadow:none; border-radius:12px; border:1px solid #d0ddc8; }
.s-astra-features .a-profit-method .s-list { display:grid; grid-template-columns:1fr 1fr; gap:0 42px; }
.s-astra-features .a-health-copy { max-width:880px; }
.s-astra-page .a-launch-choices { display:flex; flex-basis:100%; gap:24px; padding:14px 0 0; margin-top:4px; border-top:1px solid #93b68a44; font-size:13px; font-weight:500; }
.s-astra-page .s-states .s-state { border-radius:2px; background:transparent; border:0; border-bottom:1px solid #93b68a55; padding:8px 2px; }
.s-astra-page .s-states .s-state:not(:nth-child(4))::after { content:"→" / ""; margin-left:12px; opacity:.55; }
/* R5 M3: live source 1440x1428 (@2x 2880x2856), chart (134,201,642,632).
   1x SHA-256 a5667985d5dfba039d2d2fdcd72e8734e789c8e77a1840ef4018f75113f593b3
   2x SHA-256 7c818f31e32d80c0f074299a6fd4531be001905dc220806a7eb67fddc7176b80
   Ratios derive from that real file: width=1440/642, left=-134/642, top=-201/642.
   Phone remains (0,0,390,752) in its own 390x1168 source. Re-measure if source hashes change. */
body.s-astra-home .a-repricer-crop,body.s-astra-features .a-repricer-crop { display:block; position:relative; container-type:inline-size; aspect-ratio:642/632; height:auto; min-height:0; overflow:hidden; background:#f7f8f9; }
body.s-astra-home .a-repricer-crop img,body.s-astra-features .a-repricer-crop img { position:absolute; width:224.299%; max-width:none; height:auto; left:-20.872274%; top:-31.308411cqw; object-fit:unset; border-radius:0; }
@media(min-width:1200px) { .s-astra-features .s-feature-index { grid-template-columns:repeat(4,minmax(0,1fr)); } .s-astra-features .s-feature-index .s-card:last-child { grid-column:span 2; } }
@media(max-width:700px) {
 .s-astra-features .a-product-gallery { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:15px; padding:2px 2px 18px; margin-top:-90px; }
 .s-astra-features .a-gallery-panel { flex:0 0 88%; scroll-snap-align:start; padding:13px; border-radius:12px; box-shadow:none; }
 .s-astra-features .a-gallery-panel:nth-child(2) { margin-top:0; }
 .s-astra-features .a-gallery-panel .s-shot-frame { height:300px; }
 .s-astra-features .a-gallery-panel .a-repricer-crop { height:300px; aspect-ratio:auto; }
 .s-astra-features .a-gallery-panel>span { font-size:13px; }
 .s-astra-features .s-band .a-r4-art { max-width:300px; }
 .s-astra-feature-reviews .s-h1 { font-size:40px; }
 .s-astra-feature-repricer .s-page-hero .s-shot { max-width:308px; width:100%; margin:auto; }
 .s-astra-features .a-profit-method .s-card { padding:25px; }
 .s-astra-features .a-profit-method .s-list { grid-template-columns:1fr; }
 .s-astra-features .a-real-screen img { max-height:590px; object-fit:contain; }
}
@media(max-width:600px) {
 body.s-astra-home .a-repricer-crop,body.s-astra-features .a-repricer-crop { aspect-ratio:390/752; }
 body.s-astra-home .a-repricer-crop img,body.s-astra-features .a-repricer-crop img { left:0; top:0; width:100%; max-height:none; }
 .s-astra-features .a-gallery-panel .a-repricer-crop { height:300px; }
}

/* R2: legible, source-driven money and quiet editorial details. */
.s-astra-pricing .s-page-hero.s-page-hero--pricing { padding-top:48px; padding-bottom:137px; }
.s-astra-pricing .s-page-hero .s-h1 { font-size:clamp(42px,5vw,64px); margin:20px 0; }
.s-astra-pricing .s-seg-row { margin-top:24px; }
.s-astra-pricing #seg-note,.s-astra-pricing #compare>.s-container>.s-small,.s-astra-pricing #extra-audit-note { font-size:13px; }
.s-astra-pricing #extra-audit-note { color:#50604e; }
.s-astra-pricing .s-plan-name { margin:0; }
.s-astra-pricing .s-plan-name::before { display:none; }
.s-astra-pricing .s-plan-includes,.s-astra-pricing .s-plan--featured .s-plan-band,.s-astra-pricing .s-seg-save,.s-astra-pricing .s-matrix .s-matrix-group th { font-size:12px; }
.s-astra-pricing .s-plan-billing { font-size:14px; color:#4b5e4b; line-height:1.7; }
.s-astra-pricing .s-plan-save { display:table; font-size:12px; margin:7px 0 0; }
.s-astra-pricing .s-plan-per,.s-astra-pricing .s-plan-meta,.s-astra-pricing .s-reassure span { font-size:13px; }
.s-astra-pricing .s-plan .s-list li { font-size:14px; }
.s-astra-pricing .s-plan--featured .s-plan-billing { color:#d7e4d3; }
.s-astra-pricing .s-matrix .no { color:#647365; }
.s-astra-pricing .s-matrix .yes,.s-astra-pricing .s-matrix .no { font-size:17px; }
.s-astra-pricing .a-group-plan { visibility:hidden; font-size:12px; letter-spacing:0; text-transform:none; }
.s-astra-audit .s-step p,.s-astra-audit .a-report-grid .s-card p,.s-astra-audit .a-after-audit .s-list li { font-size:14px; }
.s-astra-audit .s-page-hero .s-note { font-size:13px; }
.s-astra-audit .s-step .s-h3 { max-width:none; min-height:52px; }
.s-astra-audit .a-audit-steps .s-cta-row { justify-content:flex-start; }
.s-astra-audit .a-orbit-point--one,.s-astra-audit .a-paper-mark { display:none; }
.s-astra-audit .a-report-grid .s-card:hover { transform:none; background:#ffffff04; border-color:#a7cd9a30; }
.s-astra-audit .a-report-grid .s-card:first-child { background:#ffffff04; border-color:#a7cd9a30; }
.s-astra-audit .a-report-grid .s-card:first-child .s-card-num { color:#c6e9ae; }
.s-astra-audit .a-report-grid .s-card:first-child .s-h3 { color:#fff; }
.s-astra-audit .a-report-grid .s-card:first-child p { color:#c5d2c3; }
@media(min-width:961px) { .s-astra-pricing .s-plan { min-height:1070px; } }
@media(max-width:600px) {
 .s-astra-pricing .s-page-hero.s-page-hero--pricing { padding:44px 0 116px; }
 .s-astra-pricing .s-plan { min-height:620px; }
 .s-astra-pricing .a-group-plan { visibility:visible; font-size:11px; }
 .s-astra-pricing .s-matrix .s-matrix-group th { padding:14px 4px; letter-spacing:0; font-size:11px; }
 .s-astra-pricing .s-matrix .s-matrix-group th:first-child { padding-left:12px; }
 .s-astra-audit .a-audit-art { height:320px; }
 .s-astra-audit .a-audit-paper { transform-origin:top center; scale:.75; top:20px; }
 .s-astra-audit .a-audit-paper--back { top:20px; }
 .s-astra-audit .s-step .s-h3 { min-height:0; }
}

/* R4: a coherent site, with compositions designed around each page's purpose. */
.s-astra-secondary .s-page-hero { position:relative; overflow:hidden; padding:76px 0 86px; }
.s-astra-secondary .s-page-hero::after { content:""; position:absolute; width:650px; height:650px; border:1px solid #b3d4a417; border-radius:50%; top:-420px; right:-80px; pointer-events:none; }
.s-astra-secondary .a-secondary-hero { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:60px; align-items:center; }
.s-astra-secondary .a-secondary-copy { min-width:0; }
.s-astra-secondary .s-page-hero .s-eyebrow { margin-bottom:24px; }
.s-astra-secondary .s-h1 { font-size:clamp(45px,4.8vw,68px); margin:0 0 26px; }
.s-astra-secondary .s-page-hero .s-lead { font-size:16px; max-width:590px; }
.s-astra-secondary .s-section,.s-astra-secondary .s-band { padding:96px 0; }
.s-astra-secondary .s-card { border:1px solid #d3dfcb; border-radius:12px; padding:32px; box-shadow:none; }
.s-astra-secondary .s-card:not(a):hover,.s-astra-secondary .s-step:hover { transform:none; box-shadow:none; }
.s-astra-secondary .s-h3 { font-size:23px; line-height:1.25; }
.s-astra-secondary .s-card p,.s-astra-secondary .s-step p,.s-astra-secondary .s-list li { font-size:15px; line-height:1.75; }
.s-astra-secondary .s-dark .s-card { background:#ffffff04; border-color:#bbd5ad33; }
.s-astra-secondary .s-dark .s-card p { color:#c4d2c5; }
.s-astra-secondary .s-dark .s-card:not(a):hover { background:#ffffff04; }
.s-astra-secondary .s-steps { gap:28px; }
.s-astra-secondary .s-step { background:none; padding:27px 0 0; border:0; border-top:1px solid #a8bea0; border-radius:0; box-shadow:none; }
.s-astra-secondary .s-step::before { font-family:var(--sans); font-size:42px; font-weight:400; color:#497750; letter-spacing:-.07em; margin-bottom:25px; }
.s-astra-secondary .s-step .s-h3 { min-height:58px; }
.s-astra-secondary .s-band .s-step { border-color:#bed6ae3a; }
.s-astra-secondary .s-band .s-step::before { color:#b8d9a2; }
.s-astra-secondary .s-cta-row--center { justify-content:flex-start; }
.s-astra-how-it-works .s-steps--6 { grid-template-columns:1fr 1fr; gap:0 75px; counter-reset:step; }
.s-astra-how-it-works .s-steps--6 .s-step { position:relative; padding:32px 0 35px 74px; }
.s-astra-how-it-works .s-steps--6 .s-step::before { position:absolute; left:0; top:28px; }
.s-astra-how-it-works .s-steps--6 .s-h3 { min-height:0; margin-bottom:14px; }
.s-astra-how-it-works .s-band .s-grid-3 { gap:18px; }
.s-astra-managed .a-secondary-hero { grid-template-columns:1.08fr .92fr; gap:60px; }
.s-astra-managed .s-page-hero .s-shot { padding:10px; border:1px solid #b9d8a83a; background:#bedaa815; border-radius:18px; transform:rotate(-2deg); box-shadow:0 32px 70px #0005; }
.s-astra-managed .s-page-hero .s-shot-frame { border-radius:10px; overflow:hidden; }
.s-astra-managed .s-limits { gap:24px; }
.s-astra-managed .s-limits .s-card:first-child { background:#e9f0e1; }
.s-astra-managed .s-limits .s-card:last-child { background:#123f2b; border-color:#123f2b; color:#d1decd; }
.s-astra-managed .s-limits .s-card:last-child .s-h3 { color:#fff; }
.s-astra-managed .s-limits .s-card:last-child li::before { border-color:#cde4b4; }
.s-astra-managed #plans .s-section-head { max-width:840px; }
.s-astra-managed #managed-plans { gap:16px; }
.s-astra-managed .s-plan { padding:27px; border:1px solid #cdddc4; border-radius:12px; box-shadow:none; min-height:500px; background:#fff; }
.s-astra-managed .s-plan-name { font-size:24px; letter-spacing:-.04em; }
.s-astra-managed .s-plan-amount { font-size:40px; font-weight:500; letter-spacing:-.055em; }
.s-astra-managed .s-plan-price { align-items:flex-start; flex-direction:column; gap:6px; }
.s-astra-managed .s-plan-tag,.s-astra-managed .s-plan-per,.s-astra-managed .s-plan-meta { font-size:14px; }
.s-astra-managed .s-plan-billing { font-size:13px; line-height:1.7; min-height:48px; color:#50604e; }
.s-astra-managed .s-plan-foot .s-btn { padding:12px 14px; white-space:normal; font-size:13px; }
.s-astra-managed .s-plan:last-child { background:#e2edda; }
.s-astra-about .s-page-hero .s-h1 { font-size:clamp(45px,5.1vw,72px); }
.s-astra-about .s-prose { border-left:1px solid #c2d2b9; padding-left:40px; }
.s-astra-about .s-prose p { font-size:17px; line-height:1.85; }
.s-astra-about .s-section--tint .s-card { border:0; background:transparent; border-top:1px solid #adc3a2; border-radius:0; padding:30px 0 0; }
.s-astra-about .s-card--tint { background:#153f2b; color:#d3decf; }
.s-astra-about .s-card--tint .s-h3 { color:white; }
.s-astra-about .s-card--tint .s-link { color:#cfe9b9; overflow-wrap:anywhere; }
.s-astra-contact .s-page-hero { padding-bottom:124px; }
.s-astra-contact .s-h1 { font-size:clamp(52px,6vw,84px); }
.s-astra-contact .a-r4-art { max-width:320px; }
.s-astra-contact>.s-section { padding-top:0; margin-top:-62px; position:relative; z-index:1; }
.s-astra-contact .s-grid-2--form { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:32px!important; }
.s-astra-contact .s-grid-2--form>.s-card { padding:38px; box-shadow:0 22px 65px -40px #143b2e66; }
.s-astra-contact .s-stack { gap:18px; }
.s-astra-contact .s-kv dt { font-size:12px; text-transform:uppercase; letter-spacing:.1em; margin-top:19px; color:#50664d; }
.s-astra-contact .s-kv dt:first-child { margin-top:0; }
.s-astra-contact .s-kv dd { font-size:15px; line-height:1.7; overflow-wrap:anywhere; }
.s-astra-contact .s-input,.s-astra-contact .s-select,.s-astra-contact .s-textarea { background:#f8faf5; border-color:#c9d8bf; border-radius:6px; font-size:16px; min-height:48px; }
.s-astra-contact .s-field>label { font-size:14px; }
.s-astra-contact .s-small,.s-astra-contact .s-choice { font-size:13px; line-height:1.7; }
.s-astra-contact #ct-consent { border-top:1px solid #d9e3d1; padding-top:22px; }
.s-astra-wholesale .s-page-hero .s-h1 { font-size:clamp(42px,4.6vw,65px); }
.s-astra-wholesale .s-page-hero .s-btn--ghost { border:0; padding-left:0; padding-right:0; font-size:13px; text-decoration:underline; text-underline-offset:5px; }
.s-astra-wholesale .s-section--tint .s-card { background:#fff; border-top:3px solid #8eae78; }

/* Legal: light touch, original policy language and order completely preserved. */
.s-astra-legal .s-page-hero { padding:60px 0 65px; }
.s-astra-legal .s-h1 { max-width:930px; font-size:clamp(40px,4.5vw,62px); }
.s-astra-legal .s-section { padding:65px 0 85px; }
.s-astra-legal .s-prose.s-measure { max-width:850px; padding:42px 50px; background:white; border:1px solid #d7e1d0; border-radius:12px; }
.s-astra-legal .s-prose h2 { font-weight:550; letter-spacing:-.035em; text-wrap:balance; padding-top:28px; border-top:1px solid #dbe5d6; margin-top:40px; }
.s-astra-legal .s-prose h2:first-child { border-top:0; margin-top:0; padding-top:0; }
.s-astra-legal .s-prose p,.s-astra-legal .s-prose li { font-size:15px; line-height:1.85; }
.s-astra-legal .s-prose table { table-layout:fixed; width:100%; font-size:14px; }
.s-astra-legal .s-prose th,.s-astra-legal .s-prose td { overflow-wrap:anywhere; padding:13px; }
.s-astra-legal .s-prose th { background:#e8efdf; }
.s-astra-legal aside { position:sticky; top:100px; }
.s-astra-legal aside .s-card { padding:25px; }
.s-astra-legal .s-prose a { overflow-wrap:anywhere; }
@media(max-width:1000px) {
 .s-astra-secondary .a-secondary-hero,.s-astra-managed .a-secondary-hero { gap:32px; }
 .s-astra-secondary .s-h1 { font-size:48px; }
 .s-astra-managed #managed-plans { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .s-astra-contact .s-grid-2--form { gap:24px!important; }
}
@media(max-width:700px) {
 .s-astra-secondary .s-page-hero { padding:54px 0 52px; }
 .s-astra-secondary .a-secondary-hero,.s-astra-managed .a-secondary-hero { grid-template-columns:minmax(0,1fr); gap:20px; }
 .s-astra-secondary .s-h1,.s-astra-about .s-page-hero .s-h1,.s-astra-wholesale .s-page-hero .s-h1 { font-size:44px; }
 .s-astra-secondary .s-page-hero .s-lead { font-size:15px; }
 .s-astra-secondary .a-r4-art { max-width:320px; }
 .s-astra-secondary .s-section,.s-astra-secondary .s-band { padding:64px 0; }
 .s-astra-secondary .s-card { padding:25px; }
 .s-astra-secondary .s-step .s-h3 { min-height:0; }
 .s-astra-how-it-works .s-steps--6 { grid-template-columns:1fr; gap:0; }
 .s-astra-how-it-works .s-steps--6 .s-step { padding-left:57px; padding-bottom:28px; }
 .s-astra-secondary .s-step::before { font-size:34px; }
 .s-astra-secondary .s-steps--4 { grid-template-columns:1fr; gap:28px; }
 .s-astra-managed .s-page-hero .s-shot { transform:none; max-width:320px; margin:15px auto 0; }
 .s-astra-managed #managed-plans { grid-template-columns:1fr; }
 .s-astra-managed .s-plan { min-height:440px; }
 .s-astra-managed .s-plan-amount { font-size:48px; }
 .s-astra-about .s-prose { padding-left:0; border-left:0; }
 .s-astra-about .s-prose p { font-size:16px; }
 .s-astra-secondary .s-grid-2 { gap:30px!important; grid-template-columns:1fr; }
 .s-astra-contact .s-page-hero { padding-bottom:90px; }
 .s-astra-contact .a-r4-art { display:none; }
 .s-astra-contact>.s-section { margin-top:-42px; padding-top:0; }
 .s-astra-contact .s-grid-2--form { grid-template-columns:1fr; }
 .s-astra-contact .s-grid-2--form>.s-card { padding:25px; order:-1; }
 .s-astra-contact .s-h1 { font-size:53px; }
 .s-astra-legal .s-page-hero { padding:48px 0; }
 .s-astra-legal .s-h1 { font-size:39px; }
 .s-astra-legal .s-prose.s-measure { padding:25px 20px; }
 .s-astra-legal .s-prose h2 { font-size:25px; }
 .s-astra-legal .s-prose p,.s-astra-legal .s-prose li { font-size:14px; }
 .s-astra-legal .s-prose th,.s-astra-legal .s-prose td { padding:10px 8px; font-size:12px; }
 .s-astra-legal aside { position:static; }
}
@media(prefers-reduced-motion:reduce) {
 .s-astra-page .a-gallery-panel { transition:none; }
 .s-astra-page .a-gallery-panel:hover { transform:none; }
 .s-astra-secondary .s-page-hero .s-shot { transform:none; }
}

/* R4 live inspection: explicit text colors and complete, touch-friendly text links. */
.s-astra-managed .s-limits .s-card:last-child .s-list li { color:#d1decd; }
.s-astra-about .s-card--tint p { color:#d3decf; }
.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center { align-items:flex-start; }
.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center .s-btn { width:fit-content; min-height:44px; align-self:flex-start; color:#0a7552; background:transparent; border:0; }
.s-astra-page.s-astra-features .s-dark .s-cta-row.s-cta-row--center .s-btn { color:#cdeab4; background:transparent; }
.s-astra-audit .a-audit-steps .s-cta-row { justify-content:flex-start!important; }

/* Astra Round 5: bounded corrections to the live R4 design; public pages only. */
.s-astra-home .a-bento-chart { display:flex; align-items:center; justify-content:center; background:#f4f6f5; }
.s-astra-home .a-desktop-repricer-crop { position:relative; container-type:inline-size; width:60%; aspect-ratio:642/632; overflow:hidden; border-radius:9px; }
.s-astra-home .a-desktop-repricer-crop img { position:absolute; width:224.299065%; max-width:none; height:auto; left:-20.872274%; top:-31.308411cqw; object-fit:unset; border-radius:0; }
.s-astra-home .s-bento-card:hover .a-desktop-repricer-crop img { transform:none; }
.s-astra-home .s-bento-kicker::after { content:none; }
.s-astra-page .a-headline-line { display:block; }
.s-astra-feature-index .s-page-hero .s-h1 { line-height:1.05; }
@media(min-width:961px) {
 .s-astra-feature-index .s-page-hero .a-headline-line { white-space:nowrap; }
}
/* The complete handoff image is always contained, including long phone portfolios. */
body.s-astra-page .a-r5-proof { margin:0; min-width:0; }
body.s-astra-page .a-r5-proof .s-shot-frame { height:auto; aspect-ratio:auto; overflow:hidden; background:#f6f7f8; }
body.s-astra-page .a-r5-proof picture { display:block; }
body.s-astra-page .a-r5-proof img { position:static; display:block; width:100%; max-width:100%; height:auto; max-height:none; object-fit:contain; transform:none; border-radius:0; }
.s-astra-features .a-dashboard-proof { max-width:860px; margin-left:auto; margin-right:auto; }
.s-astra-how-it-works .a-launch-proof-layout { grid-template-columns:1fr; }
.s-astra-how-it-works .a-launch-proof-layout>div:first-child { max-width:800px; }
.s-astra-how-it-works .a-launch-guide { width:100%; }
/* One baseline, weight and target size for the feature family's middle CTA pair. */
.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center { align-items:baseline; gap:16px 28px; }
.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center>a { display:inline-flex; align-items:center; align-self:auto; min-height:44px; width:auto; padding:0; margin:0; font-family:var(--sans); font-size:15px; font-weight:600; line-height:1.5; text-decoration:underline; text-underline-offset:5px; border:0; border-radius:0; background:transparent; color:#0a7552; }
.s-astra-page.s-astra-features .s-dark .s-cta-row.s-cta-row--center>a { color:#cdeab4; }
.s-astra-contact .s-kv { align-items:baseline; row-gap:18px; }
.s-astra-contact .s-kv dt { margin-top:0; line-height:1.7; }
.s-astra-contact .s-kv dd,.s-astra-contact .s-kv dd a { margin:0; line-height:1.7; }
.s-astra-contact .a-mobile-contact { display:none; }
/* Managed allowances line up; Enterprise uses the same clear action affordance. */
.s-astra-managed .s-plan-meta>span:first-child b { display:block; }
.s-astra-managed .s-plan:last-child .s-plan-foot .s-btn--ghost { border:1px solid #396847; border-radius:8px; padding:12px 14px; text-decoration:none; justify-content:center; }
/* Existing launch wording, shown as a process illustration, never imitation app buttons. */
.s-astra-page .a-launch-stepper { display:grid; gap:0; padding:30px; border:1px solid #8bac7444; border-radius:14px; background:#ffffff04; }
.s-astra-page .a-launch-stepper .s-state { position:relative; margin-left:12px; padding:16px 0 20px 29px; border:0; border-left:1px solid #86ac76; font-size:18px; font-weight:500; }
.s-astra-page .a-launch-stepper .s-state::before { content:""; position:absolute; left:-6px; top:24px; width:11px; height:11px; border:2px solid #bed8ad; border-radius:50%; background:#204e33; }
.s-astra-page .a-launch-stepper .s-state::after { content:none; }
.s-astra-page .a-launch-stepper .s-state--on { border-left-color:transparent; color:#d3edb9; }
.s-astra-page .a-launch-stepper .s-state--on::before { width:13px; height:8px; border:0; border-left:2px solid #ccebad; border-bottom:2px solid #ccebad; border-radius:0; background:transparent; transform:rotate(-45deg); }
.s-astra-page .a-launch-choices { flex-wrap:wrap; gap:10px; }
.s-astra-page .a-launch-choices>span { display:inline-block; padding:5px 10px; border:1px solid #88a37b66; border-radius:999px; font-size:12px; line-height:1.5; color:inherit; cursor:default; }
.s-astra-about .a-company-address { padding-top:0; }
.s-astra-about .a-company-address .s-card { background:#123f2b; color:#fff; max-width:760px; }
.s-astra-about .a-company-address .s-card .s-h3 { color:#fff; }
.s-astra-about .a-company-address .s-card p,.s-astra-about .a-company-address .s-card a { color:#d8e6d1; }
/* Same dark-card/mint-ribbon recommendation as pricing; amounts remain source-driven. */
.s-astra-home .s-plan--featured { background:linear-gradient(145deg,#174d33,#0a2c1d); border-color:#245b38; color:#fff; }
.s-astra-home .s-plan--featured .s-plan-band { background:#c9e8b5; color:#193f26; }
.s-astra-home .s-plan--featured .s-plan-name,.s-astra-home .s-plan--featured .s-plan-amount,.s-astra-home .s-plan--featured .s-plan-meta b { color:#fff; }
.s-astra-home .s-plan--featured .s-plan-tag,.s-astra-home .s-plan--featured .s-plan-per,.s-astra-home .s-plan--featured .s-plan-billing,.s-astra-home .s-plan--featured .s-plan-meta { color:#ccdbca; }
.s-astra-home .s-plan--featured .s-plan-meta { background:#ffffff08; }
.s-astra-home .s-plan--featured .s-plan-save { background:#cdf4b519; color:#d4f5bf; }
.s-astra-home .s-plan--featured .s-btn { background:#d1efb8; color:#123b25; }
/* Shared public navigation: the visible icon agrees with aria-expanded. */
.s-nav-burger { position:relative; }
.s-nav-burger[aria-expanded="true"] span { position:absolute; left:11px; top:18px; margin:0; }
.s-nav-burger[aria-expanded="true"] span:nth-child(1) { transform:rotate(45deg); }
.s-nav-burger[aria-expanded="true"] span:nth-child(2) { opacity:0; }
.s-nav-burger[aria-expanded="true"] span:nth-child(3) { transform:rotate(-45deg); }
@media(max-width:900px) {
 .s-astra-sp-api-compliance .s-grid-2--wide { grid-template-columns:1fr; }
 .s-astra-sp-api-compliance aside { order:-1; position:static; }
}
@media(max-width:600px) {
 .s-astra-home .a-bento-chart { aspect-ratio:642/632; }
 .s-astra-home .a-desktop-repricer-crop { width:calc(100% - 24px); }
 .s-astra-pricing .s-matrix { min-width:600px; }
 .s-astra-pricing .s-matrix th:first-child { width:40%; }
 .s-astra-pricing .s-matrix th,.s-astra-pricing .s-matrix td { padding:14px 12px; font-size:13px; overflow-wrap:normal; word-break:normal; }
 .s-astra-pricing .s-matrix thead th,.s-astra-pricing .s-matrix .s-matrix-group th,.s-astra-pricing .a-group-plan { font-size:12px; white-space:nowrap; }
 .s-astra-pricing .s-matrix .s-link { font-size:13px; }
 .s-astra-pricing .s-matrix-wrap:focus-visible { outline:2px solid #39744d; outline-offset:4px; }
 .s-astra-privacy-policy .s-prose table,.s-astra-privacy-policy .s-prose tbody,.s-astra-privacy-policy .s-prose tr,.s-astra-privacy-policy .s-prose td { display:block; width:100%; }
 .s-astra-privacy-policy .s-prose thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .s-astra-privacy-policy .s-prose tr { border-bottom:1px solid #d7e1d0; padding:12px 0; }
 .s-astra-privacy-policy .s-prose td { overflow-wrap:normal; word-break:normal; padding:4px 0; border:0; font-size:14px; }
 .s-astra-privacy-policy .s-prose td:first-child { font-weight:700; color:#163f2a; }
 .s-astra-managed .s-plan { min-height:0; }
 .s-astra-managed .s-plan:last-child .s-plan-billing { min-height:0; }
 .s-astra-contact .a-mobile-contact { display:flex; flex-wrap:wrap; gap:5px; align-items:baseline; font-size:12px; margin:0 0 22px; color:#245a3b; }
 .s-astra-contact .a-mobile-contact a { color:inherit; text-underline-offset:3px; }
 .s-astra-contact .s-kv { row-gap:4px; }
 .s-astra-contact .s-kv dd { margin-bottom:14px; }
 .s-astra-how-it-works .s-states { display:grid; grid-template-columns:1fr 1fr; gap:6px 14px; }
 .s-astra-how-it-works .s-states .s-state::after { content:none; }
 .s-astra-how-it-works .a-launch-choices { grid-column:1/-1; }
 .s-astra-page .a-launch-stepper { padding:20px; }
 .s-astra-feature-index .s-page-hero .s-h1 .a-headline-line:last-child { font-size:40px; }
}

/* R5 live-inspection tidy: home heading, contact contrast, legacy process arrows only. */
.s-astra-home .a-headline-line { display:block; }
.s-astra-page .a-launch-stepper.s-states .s-state:not(:nth-child(4))::after { content:none; }
@media(max-width:600px) {
 .s-astra-contact .a-mobile-contact { padding:12px; border:1px solid #d4e1cd; border-radius:8px; background:#f1f6eb; color:#245a3b; }
 .s-astra-how-it-works .s-states .s-state:not(:nth-child(4))::after { content:none; }
}

/* Astra Round 6: measured real-screen crops and shared public-site presentation. */
/* card-listings: m9-listings.png 1440x1639, crop (971, 300, 428, 268); source SHA256 e7430ea364abfb82616c7c189c046692347bf0effe54ffa83746e0e1e2b3899a. */
.a-focus-card-listings{--fw:336.448598%;--fx:-226.869159%;--fy:-70.093458cqw;--fr:428/268}
/* card-ads: m4-ads.png 1200x1788, crop (405, 356, 179, 121); source SHA256 89c41d1019f2655559b0ba5d938199a2b9496be72ed78beb70d183b919e22c3f. */
.a-focus-card-ads{--fw:670.391061%;--fx:-226.256983%;--fy:-198.882682cqw;--fr:179/121}
/* card-fba-map: m5-fba-map.png 1440x1475, crop (1053, 768, 333, 195); source SHA256 fa083672cd3315955253d4534aa5f63a65f6dc5bb7fed7533406f192df9171d2. */
.a-focus-card-fba-map{--fw:432.432432%;--fx:-316.216216%;--fy:-230.630631cqw;--fr:333/195}
/* card-reviews: m10-feedback.png 1440x971, crop (69, 544, 314, 86); source SHA256 74538b19df7cfb923e7b15f024ac4beeaabf685c5061ab30101f4eaa41b2bca7. */
.a-focus-card-reviews{--fw:458.598726%;--fx:-21.974522%;--fy:-173.248408cqw;--fr:314/86}
/* tile-listings: m9-listings.png 1440x1639, crop (971, 300, 428, 268); source SHA256 e7430ea364abfb82616c7c189c046692347bf0effe54ffa83746e0e1e2b3899a. */
.a-focus-tile-listings{--fw:336.448598%;--fx:-226.869159%;--fy:-70.093458cqw;--fr:428/268}
/* tile-repricer: m3-repricer.png 1440x1428, crop (134, 848, 276, 288); source SHA256 a5667985d5dfba039d2d2fdcd72e8734e789c8e77a1840ef4018f75113f593b3. */
.a-focus-tile-repricer{--fw:521.739130%;--fx:-48.550725%;--fy:-307.246377cqw;--fr:276/288}
/* tile-buy-box: m2-buy-box.png 1440x1298, crop (40, 440, 328, 124); source SHA256 208401c9deee01f1b5f7d530e04c28604ffc0fc46cd64ce24fa81eda03a4580e. */
.a-focus-tile-buy-box{--fw:439.024390%;--fx:-12.195122%;--fy:-134.146341cqw;--fr:328/124}
/* tile-ads: m4-ads.png 1200x1788, crop (405, 356, 179, 121); source SHA256 89c41d1019f2655559b0ba5d938199a2b9496be72ed78beb70d183b919e22c3f. */
.a-focus-tile-ads{--fw:670.391061%;--fx:-226.256983%;--fy:-198.882682cqw;--fr:179/121}
/* tile-fba-map: m5-fba-map.png 1440x1475, crop (1053, 768, 333, 195); source SHA256 fa083672cd3315955253d4534aa5f63a65f6dc5bb7fed7533406f192df9171d2. */
.a-focus-tile-fba-map{--fw:432.432432%;--fx:-316.216216%;--fy:-230.630631cqw;--fr:333/195}
/* tile-profits: m1-dashboard.png 1440x1380, crop (957, 272, 443, 174); source SHA256 8d651258dae93f0e55b90c6c0d680ae93b1ab90f0005e780642b4340d06b0da2. */
.a-focus-tile-profits{--fw:325.056433%;--fx:-216.027088%;--fy:-61.399549cqw;--fr:443/174}
/* tile-reviews: m10-feedback.png 1440x971, crop (69, 544, 314, 86); source SHA256 74538b19df7cfb923e7b15f024ac4beeaabf685c5061ab30101f4eaa41b2bca7. */
.a-focus-tile-reviews{--fw:458.598726%;--fx:-21.974522%;--fy:-173.248408cqw;--fr:314/86}
/* portfolio: m9-listings.png 1440x1639, crop (40, 292, 1360, 434); source SHA256 e7430ea364abfb82616c7c189c046692347bf0effe54ffa83746e0e1e2b3899a. */
.a-focus-portfolio{--fw:105.882353%;--fx:-2.941176%;--fy:-21.470588cqw;--fr:1360/434}
/* Phone: m9-listings-mobile.png 390x4130, crop (0, 346, 390, 648). */
@media(max-width:600px){.a-focus-portfolio{--fw:100.000000%;--fx:0.000000%;--fy:-88.717949cqw;--fr:390/648}}
/* map: m2-buy-box.png 1440x1298, crop (40, 580, 1360, 718); source SHA256 208401c9deee01f1b5f7d530e04c28604ffc0fc46cd64ce24fa81eda03a4580e. */
.a-focus-map{--fw:105.882353%;--fx:-2.941176%;--fy:-42.647059cqw;--fr:1360/718}
/* Phone: m2-buy-box-mobile.png 390x786, crop (0, 0, 390, 786). */
@media(max-width:600px){.a-focus-map{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:390/786}}
/* ads: m4-ads.png 1200x1788, crop (10, 316, 1174, 844); source SHA256 89c41d1019f2655559b0ba5d938199a2b9496be72ed78beb70d183b919e22c3f. */
.a-focus-ads{--fw:102.214651%;--fx:-0.851789%;--fy:-26.916525cqw;--fr:1174/844}
/* Phone: m4-ads-mobile.png 390x1221, crop (0, 642, 390, 579). */
@media(max-width:600px){.a-focus-ads{--fw:100.000000%;--fx:0.000000%;--fy:-164.615385cqw;--fr:390/579}}
/* inventory: m5-fba-map.png 1440x1475, crop (40, 694, 1360, 781); source SHA256 fa083672cd3315955253d4534aa5f63a65f6dc5bb7fed7533406f192df9171d2. */
.a-focus-inventory{--fw:105.882353%;--fx:-2.941176%;--fy:-51.029412cqw;--fr:1360/781}
/* Phone: m5-fba-map-mobile.png 390x1123, crop (0, 0, 390, 612). */
@media(max-width:600px){.a-focus-inventory{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:390/612}}
/* profits: m6-profits.png 1440x2293, crop (40, 298, 1360, 732); source SHA256 ae952d4b642d638b95e1452dff7032eb0a54170cf4b3e08dc7057455c38b986c. */
.a-focus-profits{--fw:105.882353%;--fx:-2.941176%;--fy:-21.911765cqw;--fr:1360/732}
/* Phone: m6-profits-mobile.png 390x1373, crop (0, 330, 390, 607). */
@media(max-width:600px){.a-focus-profits{--fw:100.000000%;--fx:0.000000%;--fy:-84.615385cqw;--fr:390/607}}
/* requests: m10-feedback.png 1440x971, crop (40, 292, 1360, 679); source SHA256 74538b19df7cfb923e7b15f024ac4beeaabf685c5061ab30101f4eaa41b2bca7. */
.a-focus-requests{--fw:105.882353%;--fx:-2.941176%;--fy:-21.470588cqw;--fr:1360/679}
/* Phone: m10-feedback-mobile.png 390x1443, crop (0, 307, 390, 614). */
@media(max-width:600px){.a-focus-requests{--fw:100.000000%;--fx:0.000000%;--fy:-78.717949cqw;--fr:390/614}}
/* verdict: m7b-audit-free.png 1440x833, crop (188, 385, 1064, 433); source SHA256 b03ccda5e58270ea47d9f10e1fa9cd5e2e3267e365138331202d03bde559a0e5. */
.a-focus-verdict{--fw:135.338346%;--fx:-17.669173%;--fy:-36.184211cqw;--fr:1064/433}
/* Phone: m7b-audit-free-mobile.png 390x1250, crop (0, 346, 390, 526). */
@media(max-width:600px){.a-focus-verdict{--fw:100.000000%;--fx:0.000000%;--fy:-88.717949cqw;--fr:390/526}}
/* lock: m11-lock-card.png 1440x900, crop (410, 244, 620, 414); source SHA256 083491149b8dcf767a9dc2ba5a632e56a80d8ff1988c65eb15eb60d578c54a01. */
.a-focus-lock{--fw:232.258065%;--fx:-66.129032%;--fy:-39.354839cqw;--fr:620/414}
/* Phone: m11-lock-card-mobile.png 390x844, crop (0, 204, 390, 436). */
@media(max-width:600px){.a-focus-lock{--fw:100.000000%;--fx:0.000000%;--fy:-52.307692cqw;--fr:390/436}}
/* approval: m7a-audit.png 1440x1235, crop (190, 474, 1060, 653); source SHA256 40ff01bdd8ab5560742f4b2a237fa5f8974a67a24843ddbccb8cb0ea79b4e4e4. */
.a-focus-approval{--fw:135.849057%;--fx:-17.924528%;--fy:-44.716981cqw;--fr:1060/653}
/* Phone: m7a-audit-mobile.png 390x1522, crop (0, 510, 390, 560). */
@media(max-width:600px){.a-focus-approval{--fw:100.000000%;--fx:0.000000%;--fy:-130.769231cqw;--fr:390/560}}
/* managed: m1-dashboard.png 1440x1380, crop (957, 272, 443, 574); source SHA256 8d651258dae93f0e55b90c6c0d680ae93b1ab90f0005e780642b4340d06b0da2. */
.a-focus-managed{--fw:325.056433%;--fx:-216.027088%;--fy:-61.399549cqw;--fr:443/574}
/* Phone: m1-dashboard-mobile.png 390x714, crop (0, 0, 390, 714). */
@media(max-width:600px){.a-focus-managed{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:390/714}}
/* setup: m8-ads-how-it-works.png 1156x333, crop (0, 0, 1156, 333); source SHA256 b05de42e61df2ce118c658b1eb30659d021eb8d329bace3141b1043ca5f14489. */
.a-focus-setup{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:1156/333}
/* Phone: m8-ads-how-it-works-mobile.png 362x1006, crop (0, 99, 362, 532). */
@media(max-width:600px){.a-focus-setup{--fw:100.000000%;--fx:0.000000%;--fy:-27.348066cqw;--fr:362/532}}
/* home-map: m2-buy-box.png 1440x1298, crop (60, 652, 1004, 606); source SHA256 208401c9deee01f1b5f7d530e04c28604ffc0fc46cd64ce24fa81eda03a4580e. */
.a-focus-home-map{--fw:143.426295%;--fx:-5.976096%;--fy:-64.940239cqw;--fr:1004/606}
/* home-profit: m1-dashboard.png 1440x1380, crop (957, 272, 443, 174); source SHA256 8d651258dae93f0e55b90c6c0d680ae93b1ab90f0005e780642b4340d06b0da2. */
.a-focus-home-profit{--fw:325.056433%;--fx:-216.027088%;--fy:-61.399549cqw;--fr:443/174}
/* home-health: m1-dashboard.png 1440x1380, crop (843, 862, 557, 271); source SHA256 8d651258dae93f0e55b90c6c0d680ae93b1ab90f0005e780642b4340d06b0da2. */
.a-focus-home-health{--fw:258.527828%;--fx:-151.346499%;--fy:-154.757630cqw;--fr:557/271}
/* hero-share: m2-buy-box.png 1440x1298, crop (40, 440, 328, 124); source SHA256 208401c9deee01f1b5f7d530e04c28604ffc0fc46cd64ce24fa81eda03a4580e. */
.a-focus-hero-share{--fw:439.024390%;--fx:-12.195122%;--fy:-134.146341cqw;--fr:328/124}
/* tab-sales: m1-dashboard.png 1440x1380, crop (40, 272, 902, 574); source SHA256 8d651258dae93f0e55b90c6c0d680ae93b1ab90f0005e780642b4340d06b0da2. */
.a-focus-tab-sales{--fw:159.645233%;--fx:-4.434590%;--fy:-30.155211cqw;--fr:902/574}
/* Phone: m1-dashboard-mobile.png 390x714, crop (0, 0, 390, 714). */
@media(max-width:600px){.a-focus-tab-sales{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:390/714}}
/* tab-map: m2-buy-box.png 1440x1298, crop (40, 580, 1360, 718); source SHA256 208401c9deee01f1b5f7d530e04c28604ffc0fc46cd64ce24fa81eda03a4580e. */
.a-focus-tab-map{--fw:105.882353%;--fx:-2.941176%;--fy:-42.647059cqw;--fr:1360/718}
/* Phone: m2-buy-box-mobile.png 390x786, crop (0, 0, 390, 786). */
@media(max-width:600px){.a-focus-tab-map{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:390/786}}
/* gallery-map: m2-buy-box.png 1440x1298, crop (1073, 650, 315, 382); source SHA256 208401c9deee01f1b5f7d530e04c28604ffc0fc46cd64ce24fa81eda03a4580e. */
.a-focus-gallery-map{--fw:457.142857%;--fx:-340.634921%;--fy:-206.349206cqw;--fr:315/382}
/* Phone: m2-buy-box-mobile.png 390x786, crop (0, 0, 390, 786). */
@media(max-width:600px){.a-focus-gallery-map{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:390/786}}
/* gallery-profit: m1-dashboard.png 1440x1380, crop (957, 272, 443, 574); source SHA256 8d651258dae93f0e55b90c6c0d680ae93b1ab90f0005e780642b4340d06b0da2. */
.a-focus-gallery-profit{--fw:325.056433%;--fx:-216.027088%;--fy:-61.399549cqw;--fr:443/574}
/* Phone: m1-dashboard-mobile.png 390x714, crop (0, 0, 390, 714). */
@media(max-width:600px){.a-focus-gallery-profit{--fw:100.000000%;--fx:0.000000%;--fy:0.000000cqw;--fr:390/714}}
/* Shared type: two hero sizes, one weight; original wording and source-driven prices unchanged. */
body:is(.s-astra-home,.s-astra-page) :is(.s-hero,.s-page-hero) .s-h1 {font-size:clamp(42px,4.5vw,64px);font-weight:600;line-height:1.07;letter-spacing:-.05em;text-wrap:balance}
body:is(.s-astra-home,.s-astra-feature-index) :is(.s-hero,.s-page-hero) .s-h1 {font-size:clamp(46px,5.4vw,78px)}
body:is(.s-astra-home,.s-astra-page) :is(.s-section,.s-band,.s-cta) .s-h2 {font-weight:600;letter-spacing:-.045em}
body:is(.s-astra-home,.s-astra-page) .s-cta .s-cta-inner {max-width:920px;margin-inline:auto;width:100%}
body:is(.s-astra-home,.s-astra-page) .s-cta .s-h2 {font-size:clamp(40px,4.7vw,66px);line-height:1.08;max-width:920px;text-wrap:balance}
/* Genuine image windows: each percentage is derived from the source rectangle above. */
body:is(.s-astra-home,.s-astra-page) .a-focus-window,
body.s-astra-page .a-r5-proof .a-focus-window {position:relative;display:block;container-type:inline-size;overflow:hidden;aspect-ratio:var(--fr);height:auto;background:#f5f7f8;border-radius:10px}
body:is(.s-astra-home,.s-astra-page) .a-focus-window picture {display:block}
body:is(.s-astra-home,.s-astra-page) .a-focus-window img,
body.s-astra-page .a-r5-proof .a-focus-window img {position:absolute;display:block;width:var(--fw);max-width:none;height:auto;max-height:none;left:var(--fx);top:var(--fy);object-fit:unset;object-position:initial;transform:none;border-radius:0}
body:is(.s-astra-home,.s-astra-page) .a-focus-window.is-missing img {display:none}
body:is(.s-astra-home,.s-astra-page) .a-focus-window.is-missing::after {content:"Product screenshot unavailable";position:absolute;inset:0;display:grid;place-items:center;font-size:14px;color:#254536;background:#edf3e9}
.s-astra-page .a-screen-caption {padding:13px 5px 2px;text-align:right;font-size:12px;font-weight:500;line-height:1.5}
.s-astra-page .a-screen-caption a {color:inherit;text-decoration:underline;text-underline-offset:4px;display:inline-block;min-height:28px}
.s-astra-page .a-screen-phone {display:none!important}
/* Wide evidence is deliberate: full map/chart panels remain at >=0.7 native desktop scale. */
.s-astra-page .s-page-hero-grid.a-wide-proof-hero {display:grid;grid-template-columns:minmax(0,1fr);gap:44px;align-items:start}
.s-astra-page .a-wide-proof-hero>div:first-child {max-width:860px;margin-inline:auto;text-align:center}
.s-astra-page .a-wide-proof-hero .s-h1,.s-astra-page .a-wide-proof-hero .s-lead {max-width:860px;margin-inline:auto}
.s-astra-page .a-wide-proof-hero .s-cta-row {justify-content:center}
body.s-astra-page .s-page-hero .a-wide-proof-hero>.s-shot {width:100%;max-width:1064px;margin:0 auto;padding:12px;border:1px solid #a8c49b55;border-radius:18px;transform:none;background:#ffffff08}
.s-astra-page .s-page-hero .a-screen-caption {color:#d5e8c9}
.s-astra-page .a-wide-evidence {grid-template-columns:minmax(0,1fr)}
.s-astra-page .a-wide-evidence>div:first-child {max-width:820px}
.s-astra-page .a-wide-evidence .s-shot {max-width:1040px;width:100%;margin:auto}
.s-astra-page .a-wide-evidence .a-screen-caption {color:#d5e8c9}
.s-astra-page .a-launch-guide {margin:40px 0 28px}
.s-astra-managed .s-page-hero .s-shot {transform:none;max-width:443px;width:100%;margin-inline:auto}
/* One consistent media stage per card family; complete panels are centered, never enlarged past an edge. */
body:is(.s-astra-home,.s-astra-page) .a-proof-card {display:flex;align-items:center;justify-content:center;padding:16px;background:linear-gradient(145deg,#eff4ee,#e2ebdf);overflow:hidden}
body:is(.s-astra-home,.s-astra-page) .a-proof-card .a-focus-window {width:min(100%,var(--fit));flex:none;box-shadow:0 7px 22px #173b2610;border:1px solid #d9e3d9;border-radius:9px}
.s-astra-home .s-bento-card:nth-child(n+3) .s-bento-media {height:224px;aspect-ratio:auto}
.s-astra-home .s-bento-card:nth-child(-n+2) .s-bento-media {height:360px;aspect-ratio:auto}
.s-astra-home .a-focus-home-map {--fit:1000px!important}
.s-astra-home .s-bento-card:hover .a-focus-window img {transform:none}
.s-astra-home .a-map-crop.a-focus-window {height:auto;aspect-ratio:328/124}
.s-astra-home #panel-decide .s-tabpanel-grid {grid-template-columns:1fr}
.s-astra-home #panel-decide .s-callout-list {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.s-astra-home #panel-decide .s-callout-list>li {margin:0;padding-top:0;border:0}
.s-astra-features .s-feature-index {grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.s-astra-features .s-feature-index .s-card:last-child {grid-column:2}
.s-astra-features .s-feature-index .a-tile-media {height:224px;margin:-25px -25px 12px;flex:none;border-bottom:1px solid #d9e4d4;border-radius:14px 14px 0 0}
.s-astra-features .s-feature-index .s-card::after {top:250px;color:#426d4b}
.s-astra-features .s-feature-index .s-h3 {padding-right:12px}
.s-astra-features .a-product-gallery {align-items:start}
.s-astra-features .a-gallery-panel .s-shot-frame {height:auto}
.s-astra-features .a-gallery-panel .a-repricer-crop {height:auto;aspect-ratio:642/632}
.s-astra-features .a-gallery-panel .s-shot {padding:0;background:transparent;box-shadow:none}
.s-astra-features .a-gallery-panel .a-focus-window {width:100%;max-width:300px;margin:auto}
/* Primary button plus a quieter, comfortably tappable text link. */
.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center {align-items:center}
.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center>a:first-child.s-btn {padding:12px 22px;min-height:48px;background:#087752;color:#fff;border:1px solid #087752;border-radius:8px;text-decoration:none;line-height:1.5}
.s-astra-page.s-astra-features .s-dark .s-cta-row.s-cta-row--center>a:first-child.s-btn {background:#d1edb9;border-color:#d1edb9;color:#153f2a}
.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center>a:first-child.s-btn:hover {filter:brightness(.95)}
/* Give the final CTA its own dark stage; preceding controls retain the shared light treatment. */
.s-astra-features .s-band.a-soft-band {background:#edf3e7;color:#223d2a;border-color:#d6e2ce}
.s-astra-features .s-band.a-soft-band :is(.s-h2,.s-h3) {color:#163e29}
.s-astra-features .s-band.a-soft-band .s-eyebrow {color:#47734e}
.s-astra-features .s-band.a-soft-band .s-card {background:#fff;border-color:#d0dfc7;color:#2d4535}
.s-astra-features .s-band.a-soft-band :is(p,.s-list li) {color:#405a48}
.s-astra-features .s-band.a-soft-band .s-list li::before {border-color:#4c7954}
.s-astra-page.s-astra-features .a-soft-band .s-cta-row.s-cta-row--center>a {color:#087752}
.s-astra-features .a-soft-band .s-avail {background:#f6faf2;color:#405a48;border-color:#d0dfc7}
.s-astra-page .a-launch-choices>span {border:0;border-radius:0;background:transparent;padding:2px 0;font-size:12px;font-weight:400;opacity:.78;box-shadow:none}
.s-astra-page .a-launch-choices>span+span::before {content:"/";margin-right:10px;opacity:.6}
.s-astra-about .a-five-rules {grid-template-columns:repeat(6,minmax(0,1fr))}
.s-astra-about .a-five-rules>.s-card {grid-column:span 2}
.s-astra-about .a-five-rules>.s-card:nth-last-child(-n+2) {grid-column:span 3}
.s-astra-about .a-founder-company {margin-top:32px;max-width:390px}
.s-astra-about .a-founder-company .s-card {padding:28px}
.s-astra-about .a-founder-company p {line-height:1.8}
.s-astra-contact .s-choice input {flex:0 0 18px;width:18px;height:18px}
.s-astra-contact .s-form-row {row-gap:0}
.s-astra-legal .s-prose.s-measure {margin-inline:auto}
.s-astra-privacy-policy .s-prose table th:first-child {width:25%}
.s-astra-privacy-policy .s-prose table :is(th,td) {overflow-wrap:normal;word-break:normal}
.s-astra-wholesale .s-card p {white-space:normal;text-wrap:wrap}
.a-comparison-hint {display:none}
@media(max-width:1000px) and (min-width:701px) {
 .s-astra-features .s-feature-index {grid-template-columns:repeat(2,minmax(0,1fr))}
 .s-astra-features .s-feature-index .s-card:last-child {grid-column:auto}
}
@media(max-width:700px) {
 body:is(.s-astra-home,.s-astra-page) :is(.s-hero,.s-page-hero) .s-h1 {font-size:42px}
 body:is(.s-astra-home,.s-astra-feature-index) :is(.s-hero,.s-page-hero) .s-h1 {font-size:46px}
 .s-astra-feature-index .s-page-hero .s-h1 .a-headline-line:last-child {font-size:inherit}
 body:is(.s-astra-home,.s-astra-page) .s-cta .s-h2 {font-size:40px}
 .s-astra-page .a-wide-proof-hero>div:first-child {text-align:left}
 .s-astra-page .a-wide-proof-hero .s-cta-row {justify-content:flex-start}
 .s-astra-page .s-page-hero-grid.a-wide-proof-hero {gap:30px}
 body.s-astra-page .s-page-hero .a-wide-proof-hero>.s-shot {padding:8px}
 .s-astra-feature-repricer .s-page-hero .s-shot,.s-astra-managed .s-page-hero .s-shot {max-width:none;width:100%;margin:0}
 .s-astra-features .s-feature-index {grid-template-columns:minmax(0,1fr)}
 .s-astra-features .s-feature-index .s-card:last-child {grid-column:auto}
 .s-astra-about .a-five-rules {grid-template-columns:minmax(0,1fr)}
 .s-astra-about .a-five-rules>.s-card,.s-astra-about .a-five-rules>.s-card:nth-last-child(-n+2) {grid-column:auto}
 .s-astra-home #panel-decide .s-callout-list {grid-template-columns:1fr;gap:20px}
 .s-astra-home #panel-decide .s-callout-list>li {padding-top:20px;border-top:1px solid #d7e2d1}
 .s-astra-home #panel-decide .s-callout-list>li:first-child {padding-top:0;border:0}
}
@media(max-width:600px) {
 .s-astra-page .a-screen-desktop {display:none!important}
 .s-astra-page .a-screen-phone {display:inline-block!important}
 .s-astra-page .a-screen-caption {font-size:12px}
 .s-astra-home .s-bento-card:first-child .s-bento-media {height:auto;aspect-ratio:642/632}
 .s-astra-home .s-bento-card:nth-child(2) .s-bento-media {height:224px}
 .s-astra-features .a-gallery-panel .a-repricer-crop {aspect-ratio:390/752}
 .s-astra-features .a-gallery-panel .a-focus-window {max-width:none}
 .s-astra-contact>.s-section {margin-top:0;padding-top:24px}
 .s-astra-contact .s-page-hero {padding-bottom:40px}
 .s-astra-contact .a-mobile-contact {margin-bottom:24px}
 .s-astra-pricing .a-comparison-hint {display:block;font-size:13px;font-weight:500;color:#365c41;margin:0 0 12px}
 .s-astra-pricing .s-matrix th:first-child {width:180px}
 .s-astra-pricing .s-matrix :is(th,td):first-child {position:sticky;left:0;z-index:2;background:#fff;box-shadow:1px 0 0 #cbdcc2,6px 0 10px -7px #24482b77}
 .s-astra-pricing .s-matrix thead th:first-child,.s-astra-pricing .s-matrix .s-matrix-group th:first-child {background:#e9f0e2}
 .s-astra-sp-api-compliance .s-prose :is(table,tbody,tr,td) {display:block;width:100%}
 .s-astra-sp-api-compliance .s-prose thead {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .s-astra-sp-api-compliance .s-prose tr {border-bottom:1px solid #d7e1d0;padding:12px 0}
 .s-astra-sp-api-compliance .s-prose td {overflow-wrap:normal;word-break:normal;padding:6px 0;border:0;font-size:14px}
 .s-astra-sp-api-compliance .s-prose td::before {content:attr(data-label);display:block;font-size:11px;font-weight:700;color:#47734e;letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px}
 .s-astra-sp-api-compliance .s-prose td:first-child {font-weight:600;color:#163f2a}
}

/* R6 live-inspection tidy. Only home chart fit and pricing phone-header contrast.
   M3 chart source 1440x1428; complete rect (134,201,642,632).
   344px chart width = 339px tall inside the 360px desktop stage. */
@media(min-width:601px){.s-astra-home .a-desktop-repricer-crop{width:min(60%,344px)}}
@media(max-width:600px){.s-astra-pricing .s-matrix thead th:first-child{color:#254536}}

/* R6 final mobile comparison action: keep the spanning-row link visible at both scroll ends. */
@media(max-width:600px){.s-astra-pricing .s-matrix td[colspan] .s-link{display:inline-block;position:sticky;left:188px;right:8px;white-space:nowrap;font-size:12px}}

/* Astra R7: fixes bound to the R6 live review. Public website only. */
.s-mobile-cta .s-btn{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;font-size:14px;color:#fff}
.s-mobile-cta .s-btn--ghost{color:var(--ink)}
@media(min-width:701px){.s-astra-audit .s-page-hero .s-note{margin-inline:auto}}

/* These windows use untouched, hash-bound real PNGs. Rectangles are recorded in
   CREATIVE-CROPS-ASTRA-R7.json. Desktop and phone export dimensions are explicit. */
body:is(.s-astra-home,.s-astra-page) .a-r7-stage{height:420px;display:flex;align-items:center;justify-content:center;padding:16px;background:#eaf0e7;border:1px solid #d7e2d1;border-radius:12px;overflow:hidden}
body:is(.s-astra-home,.s-astra-page) .a-r7-stage .a-focus-window{width:min(100%,var(--fit));flex:none}
.s-astra-home .s-bento-card:first-child .s-bento-media{height:360px;aspect-ratio:auto}
.s-astra-home .s-bento-card:first-child .a-focus-window{--fit:334px}
.s-astra-features .a-gallery-panel .a-r7-repricer-small{max-width:340px}
.s-astra-feature-repricer .a-r7-repricer-metrics{margin-bottom:16px}
@media(max-width:600px){.s-astra-feature-repricer .a-r7-repricer-metrics{display:none!important}}
body.s-astra-home .s-tabs .s-tabpanel-grid,body.s-astra-home #panel-decide .s-tabpanel-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);height:476px;align-items:center}
body.s-astra-home #panel-decide .s-callout-list{display:grid;grid-template-columns:1fr;gap:14px}
body.s-astra-home #panel-decide .s-callout-list>li{margin:0;padding:16px 0;border:0;border-bottom:1px solid #dce6d8}
body.s-astra-home #panel-decide .s-callout-list>li:last-child{border:0}
body.s-astra-home .s-tabs .s-tab-shot{box-shadow:none}
/* Give the complete chart/map a quiet, equally sized stage, not a stretched frame. */
body.s-astra-home .s-tabs .a-r7-tab-see{--fit:560px}
body.s-astra-home .s-tabs .a-r7-tab-decide{--fit:550px}
body.s-astra-home .s-tabs .a-r7-tab-act{--fit:358px}
@media(min-width:701px){
 .s-astra-home .a-map-detail{top:310px;right:-28px}
 .s-astra-home .s-hstack{height:530px}
 .s-astra-home .s-hstack-main{max-height:530px;overflow:hidden;mask-image:linear-gradient(#000 0%,#000 76%,transparent 100%)}
}

/* The same stepper component as /features/ads, on a light section here. */
.s-astra-how-it-works .a-launch-proof-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.s-astra-how-it-works .a-launch-stepper{background:#fff;border-color:#d0dfc7}
.s-astra-how-it-works .a-launch-stepper.s-states{grid-template-columns:1fr;gap:0}
.s-astra-how-it-works .a-launch-stepper .s-state{color:#173d29}
.s-astra-how-it-works .a-launch-stepper .s-state--on{color:#087752}
.s-astra-how-it-works .a-launch-stepper .s-state--on::before{border-color:#087752}
.s-astra-how-it-works .a-launch-stepper .a-launch-choices{color:#405a48}
.s-astra-features .a-health-copy{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:48px;max-width:none}
.s-astra-features .a-health-copy .s-shot{margin:0;padding:12px;background:#fff;border:1px solid #d0dfc7;border-radius:14px}

/* Shared secondary-action style, across home and every inner page. */
body:is(.s-astra-home,.s-astra-page) .s-link,
body.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center>a:not(:first-child){font-weight:650;text-decoration:none;color:#087752}
body:is(.s-astra-home,.s-astra-page) .s-cta-row .s-link{display:inline-flex;align-items:center;min-height:44px}
body:is(.s-astra-home,.s-astra-page) .s-link:hover,
body.s-astra-page.s-astra-features .s-cta-row.s-cta-row--center>a:not(:first-child):hover{text-decoration:underline;text-underline-offset:4px}
body:is(.s-astra-home,.s-astra-page) .s-dark .s-link,
body.s-astra-page.s-astra-features .s-dark .s-cta-row.s-cta-row--center>a:not(:first-child){color:#d1edb9}
body.s-astra-about .s-card--tint .s-link{color:#d1edb9}
body.s-astra-home .s-btn:not(.s-btn--light):not(.s-btn--outline-light):not(.s-btn--ghost){background:#087752;border-color:#087752;color:#fff;box-shadow:none;font-size:14px}
body.s-astra-home .s-plan--featured .s-btn{background:#d1edb9!important;border-color:#d1edb9!important;color:#153f2a!important}

/* /managed adopts /pricing's visual components, not its product allowances. */
.s-astra-managed .s-seg{padding:5px;border-radius:9px;background:#123f2b;border-color:#24583e}
.s-astra-managed .s-seg button{min-height:44px;border-radius:5px;padding:0 20px;font-size:13px;color:#d7e4d3}
.s-astra-managed .s-seg button[aria-pressed=true]{background:#d1edb9;color:#163b27}
.s-astra-managed .s-seg-save{font-size:12px;padding:2px 6px;background:#cdf4b520;color:#d8f8c6}
.s-astra-managed .s-seg button[aria-pressed=true] .s-seg-save{background:#1b4e3520;color:#153c25}
.s-astra-managed .s-plan{border-color:#d4dfd0;border-radius:14px;padding:28px 22px;gap:17px;box-shadow:0 24px 55px -35px #15351d45}
.s-astra-managed .s-plan-name{font-size:23px;font-weight:600;letter-spacing:-.045em}
.s-astra-managed .s-plan-price{flex-direction:row;align-items:baseline;gap:7px;flex-wrap:wrap}
.s-astra-managed .s-plan-amount{font-size:40px;font-weight:500;letter-spacing:-.055em}
.s-astra-managed .s-plan-per{font-size:13px;white-space:nowrap}
.s-astra-managed .s-plan-tag{font-size:13px;line-height:1.55}
.s-astra-managed .s-plan-billing{font-size:14px;color:#4b5e4b;line-height:1.7}
.s-astra-managed .s-plan-billing b{display:table;font-size:12px;font-weight:600;background:#d9efe3;color:#07543b;border-radius:999px;padding:2px 7px;margin:7px 0 0}
.s-astra-managed .s-plan-meta{padding:18px 0;border-radius:0;border-top:1px solid #e1e8dc;border-bottom:1px solid #e1e8dc;background:none;gap:8px;font-size:13px}
.s-astra-managed .s-plan-foot .s-btn{background:transparent;color:var(--ink);border:1px solid #d4dfd0;border-radius:8px;box-shadow:none;min-height:48px}

.s-astra-features .s-band.a-soft-band :is(.s-h2,.s-h3){color:var(--ink)}
.s-astra-features .s-limits{align-items:stretch}
.s-astra-features .s-limits>.s-card{height:100%}
.s-astra-home .s-bento-card{display:flex;flex-direction:column}
.s-astra-home .s-bento-body{display:flex;flex-direction:column;flex:1}
.s-astra-home .s-bento-control{margin-top:auto}
@media(min-width:1001px){
 .s-astra-feature-index .s-feature-index>.s-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:340px minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:40px;min-height:272px}
 .s-astra-feature-index .s-feature-index>.s-card:last-child .a-tile-media{grid-column:1;grid-row:1/4;margin:-25px 0 -25px -25px;height:auto;min-height:272px;border-radius:14px 0 0 14px;border-bottom:0;border-right:1px solid #d9e4d4}
 .s-astra-feature-index .s-feature-index>.s-card:last-child::after{top:28px}
 .s-astra-feature-index .s-feature-index>.s-card:last-child .s-small{align-self:end}
}
.s-astra-wholesale .s-section--tint .s-card{border:1px solid #d4dfd0;border-radius:14px;background:#fff}
.s-astra-legal .s-alert{border-color:#d4dfd0;background:#edf3e7;color:#344b3b}
@media(max-width:700px){
 body:is(.s-astra-home,.s-astra-page) :is(.s-hero,.s-page-hero) :is(.a-hero-copy,.s-section-head){text-align:left}
 body:is(.s-astra-home,.s-astra-page) :is(.s-hero,.s-page-hero) .s-h1{margin-inline:0;text-align:left;text-wrap:pretty}
 body:is(.s-astra-home,.s-astra-page) :is(.s-hero,.s-page-hero) .s-cta-row{display:grid;grid-template-columns:1fr;width:100%;gap:12px}
 body:is(.s-astra-home,.s-astra-page) :is(.s-hero,.s-page-hero) .s-cta-row .s-btn{width:100%;min-height:50px;font-size:14px;justify-content:center}
 .s-astra-pricing .s-seg-row{align-items:flex-start}
 .s-astra-pricing #seg-note{text-align:left}
 .s-astra-audit .s-page-hero .s-note{margin-inline:0}
 .s-astra-home .s-hero .s-lead{margin-inline:0}
 .s-astra-home .s-hstack-main{mask-image:linear-gradient(#000 0%,#000 72%,transparent 100%);max-height:100%;overflow:hidden}
 body.s-astra-home .s-tabs .s-tabpanel-grid,body.s-astra-home #panel-decide .s-tabpanel-grid{grid-template-columns:1fr;grid-template-rows:540px minmax(0,1fr);height:1080px;gap:24px;align-items:start}
 body.s-astra-home .s-tabs .a-r7-stage{height:540px;padding:10px}
 body.s-astra-home .s-tabs .s-callout-list{margin:0;gap:0;align-content:start}
 body.s-astra-home .s-tabs .s-callout-list>li{padding:14px 0}
 body.s-astra-home .s-tabs .a-r7-tab-see{--fit:280px}
 body.s-astra-home .s-tabs .a-r7-tab-decide{--fit:254px}
 body.s-astra-home .s-tabs .a-r7-tab-act{--fit:310px}
 .s-astra-how-it-works .a-launch-proof-layout,.s-astra-features .a-health-copy{grid-template-columns:1fr;gap:30px}
 .s-astra-about .a-founder-grid{display:flex;flex-direction:column;gap:28px!important}
 .s-astra-about .a-founder-grid>div:first-child{display:contents}
 .s-astra-about .a-founder-grid .s-eyebrow{order:0;margin:0}
 .s-astra-about .a-founder-grid .s-h2{order:1;margin:0}
 .s-astra-about .a-founder-grid .s-prose{order:2}
 .s-astra-about .a-founder-company{order:3;margin:0;width:100%;max-width:none}
}
@media(max-width:600px){
 .s-astra-pricing .s-matrix-wrap{mask-image:linear-gradient(to right,#000 calc(100% - 26px),transparent)}
 .s-astra-pricing .s-matrix-wrap.a-r7-at-end{mask-image:none}
 .s-astra-home .s-bento-card:first-child .s-bento-media{height:360px;aspect-ratio:auto}
}

/* R7 m3-repricer-mobile.png 390x1168, crop (16, 818, 358, 344), SHA256 af29e75c101cb78c957b36cb7fd5ac7b7c084c38044608c46515925e065e4ad7. */
.a-r7-repricer-small{--fw:108.938547%;--fx:-4.469274%;--fy:-228.491620cqw;--fr:358/344}

/* R7 m3-repricer-mobile.png 390x1168, crop (16, 818, 358, 248), SHA256 af29e75c101cb78c957b36cb7fd5ac7b7c084c38044608c46515925e065e4ad7. */
.a-r7-repricer-tile{--fw:108.938547%;--fx:-4.469274%;--fy:-228.491620cqw;--fr:358/248}

/* R7 m3-repricer.png 1440x1428, crop (134, 848, 1154, 288), SHA256 a5667985d5dfba039d2d2fdcd72e8734e789c8e77a1840ef4018f75113f593b3. */
.a-r7-repricer-metrics{--fw:124.783362%;--fx:-11.611785%;--fy:-73.483536cqw;--fr:1154/288}

/* R7 m3-repricer.png 1440x1428, crop (134, 1198, 1154, 224), SHA256 a5667985d5dfba039d2d2fdcd72e8734e789c8e77a1840ef4018f75113f593b3. */
.a-r7-repricer-settings{--fw:124.783362%;--fx:-11.611785%;--fy:-103.812825cqw;--fr:1154/224}

/* R7 m3-repricer-mobile.png 390x1168, crop (16, 818, 358, 344), SHA256 af29e75c101cb78c957b36cb7fd5ac7b7c084c38044608c46515925e065e4ad7. */
@media(max-width:600px){.a-r7-repricer-settings{--fw:108.938547%;--fx:-4.469274%;--fy:-228.491620cqw;--fr:358/344}}

/* R7 m4-ads-mobile.png 390x1221, crop (14, 679, 362, 222), SHA256 bc4b90afce4464c1c4eae38db491578a9910a3fabb43dfc420da7d08fbfd44f1. */
.a-r7-ads-card{--fw:107.734807%;--fx:-3.867403%;--fy:-187.569061cqw;--fr:362/222}

/* R7 m10-feedback-mobile.png 390x1443, crop (20, 318, 350, 252), SHA256 974dfee818cb9dc968c8e78e41c30303b8a5a1fc68d284cd946145d1dfe57334. */
.a-r7-reviews-card{--fw:111.428571%;--fx:-5.714286%;--fy:-90.857143cqw;--fr:350/252}

/* R7 m4-ads.png 1200x1788, crop (0, 306, 1184, 304), SHA256 89c41d1019f2655559b0ba5d938199a2b9496be72ed78beb70d183b919e22c3f. */
@media(min-width:601px){.a-focus-ads{--fw:101.351351%;--fx:0.000000%;--fy:-25.844595cqw;--fr:1184/304}}

/* R7 m10-feedback.png 1440x971, crop (40, 292, 1360, 347), SHA256 74538b19df7cfb923e7b15f024ac4beeaabf685c5061ab30101f4eaa41b2bca7. */
@media(min-width:601px){.a-focus-requests{--fw:105.882353%;--fx:-2.941176%;--fy:-21.470588cqw;--fr:1360/347}}

/* R7 m8-ads-how-it-works-mobile.png 362x1006, crop (0, 99, 362, 907), SHA256 b57d4b9aa0cff1f8a639048ef8caeb899c4f7e7278fa73de4ffc70a933ddb1a0. */
@media(max-width:600px){.a-focus-setup{--fw:100.000000%;--fx:0.000000%;--fy:-27.348066cqw;--fr:362/907}}

/* R7 live finishing: clear the complete profit caption and equalize gallery frames.
   Scope: home desktop hero and features-index gallery only; all other pages retain
   their exact rendered rules. Native product images remain untouched. */
@media(min-width:701px){.s-astra-home .a-map-detail{top:360px}}
.s-astra-feature-index .a-product-gallery{align-items:stretch}
.s-astra-feature-index .a-gallery-panel{display:flex;flex-direction:column}
.s-astra-feature-index .a-gallery-panel .s-shot{display:flex;align-items:center;justify-content:center;flex:1;min-height:0}

/* R7 N4: R11 m10-feedback.png 1440x971 moved its desktop status block.
   Crop (20,222,1400,320), SHA256 bd74e5468162b7e0d0abe969250d4cfb583bc19d103adb59d0764e245a3baa56.
   Preserve the complete On/Last/Next strip and all four metrics; omit the chart.
   Only this desktop hero changes. Image pixels and phone crop remain untouched. */
@media(min-width:601px){.s-astra-feature-reviews .a-focus-requests{--fw:102.857143%;--fx:-1.428571%;--fy:-15.857143cqw;--fr:1400/320}}

/* R7 N5: one full plan beside the 180px sticky label at each phone scroll end.
   Three equal plan columns each use (visible width - 180px); no prior-column sliver. */
@media(max-width:600px){.s-astra-pricing .s-matrix{width:calc(300% - 360px);min-width:0}}
