/* Local homepage concept. Header styles live unchanged in the HTML above this file. */
.home { --line:#d7ddd5; --secondary:#52665e; }
.home *, .home *::before, .home *::after { box-sizing:border-box; }
.home [hidden] { display:none !important; }
.home h2,.home h3,.home p { margin:0; }
.home h2 { font-size:clamp(30px,3.2vw,44px); line-height:1.15; letter-spacing:-.035em; font-weight:650; }
.home h3 { font-weight:650; }
.home p { line-height:1.65; }
.home a { color:inherit; }
.home button,.home select { font:inherit; }
.home button,.home summary,.home select { cursor:pointer; }
.home a:focus-visible,.home button:focus-visible,.home summary:focus-visible,.home select:focus-visible { outline:3px solid #2fa45c; outline-offset:5px; }
.home section[id],.home article[id] { scroll-margin-top:28px; }
.home-section { padding:88px 0; }
.home-eyebrow { display:block; font-size:11px; letter-spacing:.13em; text-transform:uppercase; font-weight:750; margin-bottom:19px; color:var(--secondary); }
.home-lead { color:var(--secondary); max-width:600px; margin-top:20px !important; font-size:17px; }
.home-link { font-size:14px; font-weight:650; text-underline-offset:5px; }
.home-button { display:inline-flex; align-items:center; justify-content:center; gap:22px; padding:15px 20px; min-height:50px; border:1px solid transparent; border-radius:5px; text-decoration:none; background:var(--cta); color:white !important; font-size:14px; font-weight:650; line-height:1.3; transition:background .15s; }
.home-button:hover { background:var(--cta-press); }
.home-button.is-disabled { background:#687b72; cursor:not-allowed; }
.home-button.secondary { background:transparent; border-color:var(--line); color:var(--pine) !important; }
.home-button.secondary:hover { background:#e8eee7; }
.home-button:disabled { cursor:not-allowed; opacity:.45; }
.home-note { font-size:12px; color:var(--secondary); line-height:1.6; }
.home-status { display:inline-flex; align-items:center; gap:6px; color:#236440; font-size:11px; font-weight:650; white-space:nowrap; }
.home-status::before { content:''; width:6px; height:6px; border-radius:50%; background:currentColor; }
.home-status.is-planned { color:#736546; }
.home-status.is-planned::before { background:transparent; border:1px solid currentColor; }
.intro-layout { display:grid; grid-template-columns:1.03fr 1fr; gap:90px; align-items:center; }
.intro-layout .home-lead { max-width:490px; }
.intro-note { margin-top:22px !important; font-size:14px; color:var(--secondary); }
.app-directory { display:grid; grid-template-columns:1fr 1fr; gap:0 27px; }
.directory-item { padding:20px 0; border-top:1px solid var(--line); text-decoration:none; display:flex; flex-direction:column; gap:7px; transition:transform .15s; }
.directory-item:hover { transform:translateY(-3px); }
.directory-title { display:flex; justify-content:space-between; align-items:center; font-size:22px; font-weight:650; letter-spacing:-.025em; }
.directory-title b { font-size:15px; font-weight:400; color:var(--secondary); }
.directory-item small { font-size:13px; color:var(--secondary); line-height:1.5; }
.directory-item .home-status { margin-top:7px; }
.intro-shortcuts { display:flex; gap:24px; flex-wrap:wrap; margin-top:32px; }
.family-section { background:#f6f6f1; }
.family-intro { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:end; margin-bottom:32px; }
.family-intro-copy .home-lead { margin-top:0 !important; max-width:520px; }
.family-connection { margin-top:18px !important; padding-left:17px; border-left:3px solid var(--cta); color:var(--pine); font-size:14px; font-weight:650; }
.family-free-start { display:grid; grid-template-columns:.8fr 1.2fr; gap:38px; align-items:center; margin:0 0 28px; padding:21px 25px; background:var(--pine); color:var(--cream); border-radius:6px; }
.family-free-start span,.family-free-start strong { display:block; }
.family-free-start span { margin-bottom:5px; color:#bcd1c3; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.family-free-start strong { font-size:20px; }
.family-free-start p { color:#d8e2da; font-size:13px; line-height:1.55; }
.family-app-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.family-app-card { position:relative; display:flex; flex-direction:column; min-width:0; min-height:285px; padding:25px 23px 22px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:#fffefa; transition:background .15s,transform .15s; }
.family-app-card:hover { z-index:1; background:#fff; transform:translateY(-4px); }
.family-app-number { color:#bfcac0; font-size:12px; letter-spacing:.08em; margin-bottom:37px; }
.family-audience { color:var(--secondary); font-size:11px; text-transform:uppercase; letter-spacing:.07em; line-height:1.4; }
.family-app-card h3 { margin-top:8px; color:var(--pine); font-size:24px; letter-spacing:-.03em; }
.family-app-card > p { margin-top:13px !important; color:var(--secondary); font-size:13px; line-height:1.55; }
.family-app-footer { display:flex; justify-content:space-between; align-items:end; gap:12px; margin-top:auto; padding-top:24px; }
.family-app-footer .home-link,.family-page-pending { font-size:11px; }
.family-page-pending { color:#8a816d; }
.advisor-section { background:var(--pine); color:var(--cream); padding:70px 0; }
.advisor-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:72px; align-items:start; }
.advisor-copy { padding:18px 0; }
.advisor-copy h2 { max-width:370px; }
.advisor-copy .home-eyebrow,.advisor-copy .home-lead,.advisor-copy .home-note { color:#c3d2c8; }
.advisor-copy .home-lead { font-size:16px; max-width:340px; }
.advisor-copy .home-link { display:inline-block; margin-top:26px; }
.advisor-assurance { display:flex; gap:12px; align-items:center; margin-top:44px; color:#c3d2c8; font-size:12px; }
.advisor-assurance svg { width:20px; height:20px; flex-shrink:0; }
.quiz-card { background:var(--cream); padding:32px; color:var(--ink); border-radius:8px; min-height:420px; box-shadow:0 18px 45px #082b2630; }
.quiz-top { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:24px; font-size:12px; color:var(--secondary); }
.quiz-track { display:flex; gap:5px; width:125px; }
.quiz-track span { height:3px; flex:1; background:var(--line); border-radius:1px; }
.quiz-track .is-done { background:var(--cta); }
.quiz-fieldset { border:0; padding:0; margin:0; min-width:0; }
.quiz-fieldset legend { font-size:25px; font-weight:650; line-height:1.25; letter-spacing:-.025em; padding:0; margin-bottom:8px; }
.quiz-helper { font-size:13px; color:var(--secondary); margin-bottom:23px !important; }
.quiz-options { display:grid; gap:10px; }
.quiz-option { display:flex; gap:13px; align-items:center; border:1px solid var(--line); border-radius:5px; padding:14px; cursor:pointer; background:#fffaf4; }
.quiz-option:hover { border-color:#7c9787; }
.quiz-option:has(input:checked) { background:#e4eee5; border-color:var(--cta); box-shadow:inset 3px 0 var(--cta); }
.quiz-option:focus-within { outline:2px solid var(--cta); outline-offset:2px; }
.quiz-option input { accent-color:var(--cta); width:17px; height:17px; margin:0; flex-shrink:0; }
.quiz-option strong { display:block; font-size:15px; font-weight:650; }
.quiz-option small { display:block; font-size:12px; color:var(--secondary); line-height:1.45; margin-top:4px; }
.quiz-controls { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:24px; }
.quiz-back { background:transparent; border:0; padding:12px 0; color:var(--secondary); font-size:13px !important; }
.quiz-back:disabled { visibility:hidden; }
.quiz-result h3 { margin:12px 0; font-size:30px; letter-spacing:-.03em; }
.quiz-result p { font-size:14px; }
.quiz-result .home-button { margin-top:20px; }
.quiz-reasons { padding-left:20px; margin:20px 0; color:var(--secondary); font-size:13px; line-height:1.65; }
.quiz-reasons li + li { margin-top:5px; }
.quiz-caveat { border-left:3px solid #ad9160; padding-left:12px; margin-top:16px !important; color:#6c5839; }
.quiz-complement { border-top:1px solid var(--line); padding-top:18px; margin-top:24px; }
.quiz-complement .home-link { display:inline-block; margin-top:9px; }
.quiz-result-actions { display:flex; gap:12px; flex-wrap:wrap; }
.quiz-result details { margin-top:22px; font-size:12px; color:var(--secondary); }
.quiz-result details dl { display:grid; grid-template-columns:auto 1fr; gap:10px 15px; }
.quiz-result details dd { margin:0; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:36px; margin-bottom:34px; }
.section-heading .home-lead { max-width:375px; font-size:15px; margin-top:0 !important; }
.product-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.product-card { padding:34px; border:1px solid var(--line); border-radius:7px; background:#fcfcf9; display:flex; flex-direction:column; }
.product-top { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:26px; }
.product-tag { display:flex; align-items:center; gap:10px; font-size:15px; font-weight:750; }
.product-symbol { display:grid; place-items:center; width:32px; height:32px; border:1px solid var(--line); border-radius:6px; font-size:17px; color:var(--pine); background:var(--cream); }
.product-card h3 { font-size:27px; line-height:1.18; letter-spacing:-.025em; max-width:390px; }
.product-description { margin-top:14px !important; color:var(--secondary); font-size:14px; }
.product-features { padding:0; margin:23px 0; list-style:none; font-size:14px; line-height:1.6; }
.product-features li { padding-left:22px; position:relative; }
.product-features li::before { content:'✓'; position:absolute; left:0; color:var(--cta); }
.product-features li + li { margin-top:7px; }
.product-example { border-top:1px solid var(--line); padding-top:17px; font-size:13px; color:var(--secondary); margin-bottom:26px; }
.product-example summary { font-weight:650; color:var(--pine); }
.product-example p { margin-top:10px; }
.product-actions { margin-top:auto; display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.planned-launch { display:inline-flex; align-items:center; gap:9px; padding:14px 17px; border:1px dashed #c5c6b7; border-radius:5px; color:#736546; font-size:13px; }
.products-footnote { margin-top:22px !important; }
.prices-section { background:#e9eee7; }
.product-choice-section { position:relative; }
.section-anchor { position:absolute; top:0; }
.product-switcher-section { position:relative; background:#e9eee7; }
.switcher-heading { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:30px; }
.switcher-heading h2 { font-size:clamp(38px,4.5vw,58px); line-height:1.02; letter-spacing:-.045em; }
.product-switcher { display:grid; grid-template-columns:285px minmax(0,1fr); border-radius:10px; overflow:hidden; box-shadow:0 18px 45px #17372e1a; }
.product-tabs { display:flex; flex-direction:column; gap:5px; padding:10px; background:var(--pine); }
.product-tabs button { position:relative; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; flex:1; min-height:105px; padding:18px 20px; border:0; border-radius:6px; background:transparent; color:#d7e3da; text-align:left; cursor:pointer; }
.product-tabs button::after { content:'→'; position:absolute; right:18px; top:50%; transform:translateY(-50%); font-size:20px; opacity:.35; }
.product-tabs button span { max-width:195px; font-size:20px; font-weight:650; line-height:1.15; letter-spacing:-.025em; }
.product-tabs button b { margin-top:8px; color:#9fb6a7; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.product-tabs button[aria-selected="true"] { background:var(--cream); color:var(--pine); }
.product-tabs button[aria-selected="true"]::after { color:var(--cta); opacity:1; }
.product-tabs button[aria-selected="true"] b { color:var(--cta); }
.product-tabs button:focus-visible { outline:3px solid var(--accent-soft); outline-offset:-4px; }
.product-stages { min-width:0; background:#fffefa; }
.product-stage { min-height:555px; padding:38px 42px 34px; animation:stage-in .18s ease-out; }
.stage-head { display:flex; justify-content:space-between; align-items:start; gap:28px; }
.stage-head > div:first-child > span { display:block; margin-bottom:12px; color:var(--cta); font-size:14px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.stage-head h3 { color:var(--pine); font-size:clamp(31px,3.1vw,44px); line-height:1.08; letter-spacing:-.04em; }
.stage-free { display:flex; align-items:end; gap:8px; flex-shrink:0; color:var(--pine); }
.stage-free > b { font-size:68px; line-height:.85; letter-spacing:-.07em; }
.stage-free > span { display:flex; flex-direction:column; gap:4px; padding-bottom:4px; }
.stage-free strong { font-size:17px; }
.stage-free small { color:var(--secondary); font-size:13px; }
.stage-trial > b { color:var(--cta); }
.stage-benefits { display:grid; grid-template-columns:repeat(3,1fr); margin:30px 0 27px; border-block:1px solid var(--line); }
.stage-benefits strong { position:relative; padding:17px 12px 17px 26px; color:var(--pine); font-size:16px; }
.stage-benefits strong::before { content:'✓'; position:absolute; left:5px; color:var(--cta); }
.stage-plans { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.stage-plans-three { grid-template-columns:repeat(3,1fr); }
.stage-plans > div { min-width:0; padding:16px; border:1px solid var(--line); border-radius:6px; background:#f5f7f1; }
.stage-plans > div > strong,.stage-plans > div > b,.stage-plans > div > span { display:block; }
.stage-plans > div > strong { color:var(--secondary); font-size:14px; }
.stage-plans > div > b { margin-top:10px; color:var(--pine); font-size:25px; }
.stage-plans > div > b span { font-size:15px; }
.stage-plans > div > span { margin-top:8px; color:var(--secondary); font-size:13px; font-weight:550; line-height:1.35; }
.product-stage > .home-button { min-width:260px; margin-top:25px; }
@keyframes stage-in { from { opacity:.35; transform:translateX(7px); } to { opacity:1; transform:translateX(0); } }
.choice-heading { display:flex; justify-content:space-between; align-items:end; gap:35px; margin-bottom:31px; }
.choice-heading h2 { font-size:clamp(38px,5vw,64px); line-height:1; }
.choice-price-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.choice-price-card { display:flex; flex-direction:column; min-width:0; padding:30px; border:1px solid #bdcbbb; border-radius:8px; background:#fffefa; box-shadow:0 10px 30px #193b3010; }
.choice-card-head { min-height:123px; padding-bottom:23px; border-bottom:1px solid var(--line); }
.choice-need { display:block; max-width:470px; color:var(--pine); font-size:clamp(25px,2.5vw,34px); font-weight:650; line-height:1.12; letter-spacing:-.035em; }
.choice-app-line { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-top:19px; }
.choice-app-line h3 { font-size:18px; letter-spacing:-.015em; }
.choice-free { padding:25px 0 22px; }
.choice-price { display:flex; align-items:end; gap:9px; color:var(--pine); line-height:1; }
.choice-price > b { font-size:70px; letter-spacing:-.065em; }
.choice-price > span { display:flex; flex-direction:column; gap:4px; padding-bottom:10px; font-size:17px; font-weight:700; }
.choice-price small { font-size:13px; font-weight:500; color:var(--secondary); }
.choice-free > strong { display:block; margin-top:8px; color:var(--cta); font-size:18px; }
.choice-trial > strong { color:#6e603f; }
.choice-facts { display:flex; flex-wrap:wrap; gap:8px; margin-top:17px; }
.choice-facts span { padding:8px 10px; border-radius:4px; background:#e7eee4; color:#304a40; font-size:14px; font-weight:600; line-height:1.25; }
.choice-tier { display:grid; grid-template-columns:1fr auto; gap:20px; align-items:center; padding:17px 0; border-top:1px solid var(--line); }
.choice-tier > div strong,.choice-tier > div span { display:block; }
.choice-tier > div strong { color:var(--pine); font-size:17px; }
.choice-tier > div span { margin-top:5px; color:var(--secondary); font-size:14px; line-height:1.35; }
.choice-tier > b { color:var(--pine); font-size:24px; white-space:nowrap; }
.choice-tier > b span { font-size:15px; }
.choice-tier > b small { display:block; margin-top:4px; color:var(--secondary); font-size:11px; font-weight:500; text-align:right; }
.choice-price-card > .home-button { width:100%; margin-top:auto; transform:translateY(8px); }
.price-head { margin-bottom:30px; }
.currency-field { display:flex; align-items:center; gap:10px; color:var(--secondary); font-size:13px; white-space:nowrap; }
.currency-field select { color:var(--pine); border:1px solid #b8c5b9; border-radius:4px; padding:10px; background:transparent; }
.free-banner { display:grid; grid-template-columns:1fr auto; gap:20px; align-items:center; border-left:4px solid var(--cta); background:#f8faf5; padding:22px 26px; margin-bottom:26px; }
.free-banner strong { font-size:18px; font-weight:650; }
.free-banner p { color:var(--secondary); font-size:13px; margin-top:5px; }
.price-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.price-start-note { display:grid; grid-template-columns:.8fr 1.2fr; gap:35px; align-items:center; margin-bottom:25px; padding:20px 23px; border-left:4px solid var(--cta); background:#f8faf5; }
.price-start-note span,.price-start-note strong { display:block; }
.price-start-note span { margin-bottom:6px; color:var(--secondary); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.price-start-note strong { font-size:18px; }
.price-start-note p { color:var(--secondary); font-size:13px; line-height:1.55; }
.price-grid-all { align-items:stretch; }
.price-grid-all .price-panel { display:flex; flex-direction:column; }
.price-panel-planned { background:#f3f4ee; }
.price-panel-action { margin-top:auto; padding-top:20px; }
.price-model-note { margin-top:25px !important; padding:17px 20px; border:1px solid #c7d1c4; border-radius:5px; color:var(--pine); font-size:13px; font-weight:650; text-align:center; }
.price-panel { border:1px solid #c7d1c4; border-radius:7px; padding:28px; background:#f9fbf6; }
.price-panel h3 { font-size:24px; letter-spacing:-.025em; }
.price-panel-heading { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:19px; }
.price-row { display:grid; grid-template-columns:1fr auto; gap:5px 18px; padding:20px 0; border-top:1px solid var(--line); align-items:baseline; }
.price-row strong { font-size:15px; font-weight:650; }
.price-value { text-align:right; font-weight:700; font-size:23px; white-space:nowrap; letter-spacing:-.03em; }
.price-value small { font-size:11px; font-weight:450; letter-spacing:0; }
.price-row p { color:var(--secondary); grid-column:1/-1; font-size:12px; line-height:1.5; }
.price-panel > .home-button { width:100%; margin-top:13px; }
.price-panel > .home-note { margin-top:13px; }
.annual-prices { margin-top:22px; font-size:12px; line-height:1.6; color:var(--secondary); }
.annual-prices summary { font-weight:650; color:var(--pine); }
.annual-prices p { margin-top:12px; }
.planned-prices { margin-top:24px; }
.planned-prices > summary { font-size:15px; font-weight:650; padding:18px 0; }
.planned-prices .price-grid { margin-top:4px; }
.planned-prices .price-panel { background:transparent; }
.price-fineprint { margin-top:24px !important; max-width:850px; }
.home-faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:75px; }
.faq-list details { border-top:1px solid var(--line); padding:21px 0; }
.faq-list details:last-child { border-bottom:1px solid var(--line); }
.faq-list summary { font-size:16px; font-weight:650; line-height:1.4; }
.faq-list p { margin-top:14px; font-size:14px; color:var(--secondary); }
.closing-section { padding:80px 0; border-top:1px solid var(--line); }
.closing-layout { display:grid; grid-template-columns:1.35fr 1fr; gap:80px; align-items:center; }
.closing-layout h2 { font-size:clamp(34px,4vw,54px); line-height:1.15; }
.closing-layout h2 span { color:var(--cta); }
.closing-layout p { color:var(--secondary); font-size:15px; }
.closing-layout .home-button { margin-top:25px; }
.home-footer { padding:27px 0; border-top:1px solid var(--line); }
.home-footer .wrap { display:flex; justify-content:space-between; align-items:center; gap:22px; font-size:12px; color:var(--secondary); }
.home-footer nav { display:flex; gap:22px; }
.home-footer a { text-underline-offset:4px; }
.home-skip { position:absolute; left:15px; top:-90px; z-index:10; padding:14px; background:white; color:var(--pine); }
.home-skip:focus { top:10px; }
@media (max-width:1000px) {
  .intro-layout { gap:45px; }
  .advisor-layout { gap:40px; }
  .product-card { padding:26px; }
  .product-actions { gap:14px; }
  .home-faq { gap:35px; }
  .family-intro { gap:45px; }
  .family-app-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .home-section { padding:58px 0; }
  .intro-layout,.advisor-layout,.home-faq,.closing-layout { grid-template-columns:1fr; gap:32px; }
  .intro-layout .home-lead,.advisor-copy h2,.advisor-copy .home-lead { max-width:100%; }
  .advisor-section { padding:42px 0; }
  .advisor-assurance { margin-top:25px; }
  .advisor-copy { padding:0; }
  .product-grid,.price-grid { grid-template-columns:1fr; }
  .choice-heading { align-items:start; flex-direction:column; }
  .choice-price-grid { grid-template-columns:1fr; }
  .switcher-heading { align-items:start; flex-direction:column; }
  .product-switcher { grid-template-columns:1fr; }
  .product-tabs { display:grid; grid-template-columns:1fr 1fr; }
  .product-tabs button { min-height:92px; }
  .product-stage { min-height:0; padding:29px 24px; }
  .stage-plans-three { grid-template-columns:1fr; }
  .stage-plans-three > div { display:grid; grid-template-columns:1fr auto; gap:4px 15px; align-items:center; }
  .stage-plans-three > div > b { grid-column:2; grid-row:1 / 3; margin:0; }
  .stage-plans-three > div > span { margin-top:2px; }
  .choice-card-head { min-height:0; }
  .section-heading { align-items:start; flex-direction:column; gap:19px; }
  .section-heading .home-lead { max-width:100%; }
  .free-banner { grid-template-columns:1fr; padding:21px; }
  .family-intro { grid-template-columns:1fr; gap:22px; }
  .family-free-start,.price-start-note { grid-template-columns:1fr; gap:10px; }
  .family-app-card { min-height:245px; }
  .free-banner .home-link { justify-self:start; }
  .closing-section { padding:58px 0; }
}
@media (max-width:420px) {
  .quiz-card,.product-card,.price-panel { padding:23px 19px; }
  .quiz-fieldset legend { font-size:23px; }
  .app-directory { gap:0 17px; }
  .product-top { align-items:start; }
  .product-tag { gap:7px; font-size:14px; }
  .product-symbol { width:27px; height:27px; }
  .product-card h3 { font-size:25px; }
  .home-footer .wrap { align-items:start; flex-direction:column; }
  .price-value { font-size:21px; }
  .choice-price-card { padding:24px 19px; }
  .choice-need { font-size:27px; }
  .choice-price > b { font-size:61px; }
  .choice-tier { gap:12px; }
  .choice-tier > b { font-size:21px; }
  .product-tabs { gap:4px; padding:6px; }
  .product-tabs button { min-height:82px; padding:13px; }
  .product-tabs button span { font-size:17px; }
  .product-tabs button::after { display:none; }
  .stage-head { gap:14px; }
  .stage-head h3 { font-size:29px; }
  .stage-free > b { font-size:52px; }
  .stage-free strong { font-size:14px; }
  .stage-benefits { grid-template-columns:1fr; padding:10px 0; }
  .stage-benefits strong { padding:7px 12px 7px 26px; }
  .stage-plans { grid-template-columns:1fr; }
  .stage-plans > div { display:grid; grid-template-columns:1fr auto; gap:4px 12px; align-items:center; }
  .stage-plans > div > b { grid-column:2; grid-row:1 / 3; margin:0; }
  .stage-plans > div > span { margin-top:2px; }
  .product-stage > .home-button { width:100%; min-width:0; }
  .family-app-grid { grid-template-columns:1fr; }
  .family-app-card { min-height:225px; }
  .family-app-number { margin-bottom:25px; }
}
@media (prefers-reduced-motion:reduce) {
  .home * { transition:none !important; }
  .directory-item:hover { transform:none; }
  .product-stage { animation:none; }
}
