/* vanilla base reset (no framework) */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--brand-font, system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif); line-height: 1.5; color: var(--brand-ink, #111); background: var(--brand-bg, #fff); }
h1, h2, h3, h4, h5, h6 { font-family: var(--brand-font-display, var(--brand-font, system-ui, sans-serif)); }
img, svg, video, canvas { max-width: 100%; height: auto; }
a { color: inherit; }
*:focus-visible { outline: 2px solid var(--brand-primary, #2563eb); outline-offset: 2px; }
/* visibility shim for framework toggles */
.hidden { display: none !important; }

/* design tokens */
:root {
  --brand-primary: #0B2A3D;
  --brand-secondary: #0F4C5D;
  --brand-accent: #F26B2B;
  --brand-ink: #0A1F2B;
  --brand-slate: #4B5A63;
  --brand-mist: #B9C3CC;
  --brand-border: #E3E6EA;
  --brand-surface: #F6F7F8;
  --brand-bg: #FFFFFF;
  --brand-text: #1F2933;
  --brand-font: Charter, 'Sitka Text', Cambria, Georgia, serif;
  --brand-font-display: Charter, 'Bitstream Charter', 'Sitka Text', Cambria, Georgia, serif;
}

/* state utilities */
.is-open { display: block !important; }
.is-active { display: block !important; }
[hidden] { display: none !important; }

/* framework-injected components (vanilla) */
[data-ui="cookie-banner"] { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 9999; margin: 0 auto; max-width: 56rem; border: 1px solid var(--brand-border, #e5e7eb); background: var(--brand-surface, #fff); border-radius: 1rem; padding: 1rem; box-shadow: 0 10px 30px rgba(0,0,0,.15); }
[data-ui="cookie-banner"] > div { display: flex; flex-wrap: wrap; gap: 1rem; align-items: flex-start; justify-content: space-between; }
[data-ui="cookie-banner"] > div > div:last-child { display: flex; flex-wrap: wrap; gap: .5rem; }
[data-ui="cookie-banner"] a { text-decoration: underline; }
[data-consent-action], [data-age-gate-action] { cursor: pointer; border-radius: .5rem; padding: .5rem .9rem; font-size: .8rem; border: 1px solid var(--brand-border, #d1d5db); background: transparent; color: var(--brand-ink, #111); }
[data-consent-action="accept-all"], [data-consent-action="save"], [data-age-gate-action="confirm"] { background: var(--brand-primary, #2563eb); color: #fff; border-color: transparent; font-weight: 600; }
[data-consent-action="reject-all"] { background: var(--brand-ink, #111); color: #fff; border-color: transparent; font-weight: 600; }
[data-consent-panel] { margin-top: 1rem; border: 1px solid var(--brand-border, #e5e7eb); background: var(--brand-surface, #fff); border-radius: .75rem; padding: 1rem; font-size: .875rem; }
[data-consent-panel] > div { display: flex; flex-wrap: wrap; gap: .75rem; }
[data-ui="cookie-banner"] label { display: inline-flex; align-items: center; gap: .5rem; }
[data-ui="age-gate-overlay"] { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.8); }
[data-ui="age-gate-overlay"] > div { width: 100%; max-width: 28rem; margin: 0 1rem; background: var(--brand-surface, #1a1a2e); color: var(--brand-ink, #fff); border-radius: 1rem; padding: 2rem; text-align: center; box-shadow: 0 20px 60px rgba(0,0,0,.4); }
[data-ui="age-gate-overlay"] > div > div:last-of-type { display: flex; flex-direction: column; gap: .75rem; }
[data-age-gate-action] { padding: .75rem 1.5rem; }

/* sections */
/* section:header */
/* section:header */
#header{--hpad:clamp(16px,2.4vw,28px);--vpad:14px;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--brand-bg) 86%, white 14%);border-bottom:1px solid var(--brand-border);backdrop-filter:saturate(140%) blur(8px)}
#header .header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:var(--vpad) var(--hpad)}
#header .brand{display:flex;align-items:center;gap:12px;min-width:220px;text-decoration:none}
#header .brand-mark{width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));box-shadow:0 10px 25px rgba(11,42,61,.18);position:relative}
#header .brand-mark:after{content:"";position:absolute;inset:9px;border-radius:10px;border:1px solid rgba(246,247,248,.55)}
#header .brand-text{display:flex;flex-direction:column;line-height:1.05}
#header .brand-name{font-family:var(--brand-font-display);font-weight:800;font-size:18px;letter-spacing:-.02em;color:var(--brand-ink)}
#header .brand-sub{margin-top:4px;font-size:12.5px;color:color-mix(in srgb,var(--brand-slate) 82%, var(--brand-text) 18%)}
#header .menu-toggle{display:none;align-items:center;gap:10px;border:1px solid var(--brand-border);background:var(--brand-bg);color:var(--brand-ink);padding:10px 12px;border-radius:var(--brand-radius-md,14px);cursor:pointer;font:600 13.5px/1.1 var(--brand-font-display)}
#header .menu-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-accent) 55%, white 45%);outline-offset:2px}
#header .menu-toggle-icon{width:18px;height:12px;position:relative;display:inline-block}
#header .menu-toggle-icon:before,#header .menu-toggle-icon:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--brand-secondary);border-radius:2px}
#header .menu-toggle-icon:before{top:0}
#header .menu-toggle-icon:after{bottom:0}
#header .menu-toggle-icon{background:linear-gradient(var(--brand-secondary),var(--brand-secondary)) center/100% 2px no-repeat}
#header .nav{display:block}
#header .nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:18px}
#header .nav-link{display:inline-flex;align-items:center;text-decoration:none;color:color-mix(in srgb,var(--brand-ink) 78%, var(--brand-text) 22%);font:600 13.5px/1.1 var(--brand-font-display);padding:10px 10px;border-radius:12px;border:1px solid transparent;white-space:nowrap}
#header .nav-link:hover{border-color:color-mix(in srgb,var(--brand-border) 82%, var(--brand-secondary) 18%);background:color-mix(in srgb,var(--brand-surface) 75%, white 25%)}
#header .nav-link:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-accent) 45%, white 55%);outline-offset:2px}
#header .nav-link-cta{background:var(--brand-primary);color:var(--brand-bg);border-color:color-mix(in srgb,var(--brand-primary) 70%, var(--brand-border) 30%);box-shadow:0 12px 30px rgba(11,42,61,.18)}
#header .nav-link-cta:hover{background:color-mix(in srgb,var(--brand-primary) 86%, var(--brand-secondary) 14%)}
#header ::selection{background:color-mix(in srgb,var(--brand-accent) 26%, white 74%);color:var(--brand-ink)}
@media (max-width: 860px){#header .header-inner{gap:12px}#header .brand{min-width:0}#header .menu-toggle{display:flex}#header .nav{display:none}#header .nav[aria-hidden="false"]{display:block}#header .nav{position:absolute;left:0;right:0;top:100%;background:var(--brand-bg);border-bottom:1px solid var(--brand-border)}#header .nav-list{flex-direction:column;align-items:stretch;gap:0;padding:10px var(--hpad) 18px;max-width:1200px;margin:0 auto}#header .nav-link{justify-content:flex-start;padding:12px 12px}#header .nav-link-cta{width:100%;justify-content:center;margin-top:6px}}
@media (prefers-reduced-motion: reduce){#header *{scroll-behavior:auto;transition:none!important;animation:none!important}}
/* section:footer */
/* section:footer */
#footer.footer{--pad:clamp(20px,4vw,44px);background:var(--brand-primary);color:var(--brand-bg);position:relative;overflow:hidden}
#footer.footer::before{content:"";position:absolute;inset:-2px;background:radial-gradient(900px 400px at 10% 0%, rgba(242,107,43,.22), transparent 55%),radial-gradient(700px 360px at 95% 20%, rgba(15,76,93,.35), transparent 55%);pointer-events:none}
#footer.footer *{box-sizing:border-box}
#footer.footer .footer-inner{position:relative;max-width:1120px;margin:0 auto;padding:var(--pad) var(--pad) calc(var(--pad)*.85)}
#footer.footer .footer-top{display:grid;grid-template-columns:1.15fr .85fr .95fr;gap:28px;align-items:start}
#footer.footer .footer-brand{display:flex;gap:14px;align-items:flex-start}
#footer.footer .footer-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(180deg, rgba(246,247,248,.12), rgba(246,247,248,.06));border:1px solid rgba(227,230,234,.22);box-shadow:0 10px 26px rgba(0,0,0,.18) inset}
#footer.footer .footer-name{margin:0 0 8px;font-family:var(--brand-font-display);font-size:22px;letter-spacing:-.02em;line-height:1.15}
#footer.footer .footer-desc{margin:0;color:rgba(246,247,248,.86);font-size:14.5px;line-height:1.6;max-width:360px}
#footer.footer .footer-contacts,#footer.footer .footer-nav{background:rgba(246,247,248,.06);border:1px solid rgba(227,230,234,.18);border-radius:var(--brand-radius,14px);padding:16px 16px 14px}
#footer.footer .footer-heading{margin:0 0 10px;font-family:var(--brand-font-display);font-size:15px;letter-spacing:.02em;color:rgba(246,247,248,.95)}
#footer.footer .footer-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
#footer.footer .footer-item{display:grid;grid-template-columns:110px 1fr;gap:10px}
#footer.footer .footer-label{color:rgba(246,247,248,.78);font-size:13px}
#footer.footer .footer-value{color:rgba(246,247,248,.96);font-size:13.5px}
#footer.footer .footer-links,#footer.footer .footer-policy-links{list-style:none;margin:0;padding:0;display:grid;gap:10px}
#footer.footer a.footer-link{color:rgba(246,247,248,.95);text-decoration:none;border-bottom:1px solid rgba(242,107,43,.35)}
#footer.footer a.footer-link:focus-visible{outline:3px solid rgba(242,107,43,.6);outline-offset:3px;border-bottom-color:rgba(242,107,43,.7)}
#footer.footer a.footer-link:hover{border-bottom-color:rgba(242,107,43,.85)}
#footer.footer .footer-policy{margin-top:22px;display:flex;gap:18px;justify-content:space-between;align-items:flex-start;padding-top:18px;border-top:1px solid rgba(227,230,234,.16)}
#footer.footer .footer-meta{margin:0 0 8px;color:rgba(246,247,248,.86);font-size:13.5px;line-height:1.5}
#footer.footer .footer-legal{margin:0;color:rgba(246,247,248,.78);font-size:13px;line-height:1.5}
#footer.footer .footer-strong{color:rgba(246,247,248,.98);font-weight:700}
#footer.footer .footer-policy-right{min-width:220px}
#footer.footer .footer-policy-links{gap:8px;grid-template-columns:1fr;}
#footer.footer .footer-bottom{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid rgba(227,230,234,.12);padding-top:14px}
#footer.footer .footer-copy{margin:0;color:rgba(246,247,248,.80);font-size:13px}
#footer.footer .footer-to-top{border-bottom-color:rgba(227,230,234,.35);padding-bottom:2px}
#footer.footer .footer-to-top:hover{border-bottom-color:rgba(242,107,43,.8)}
#footer.footer ::selection{background:rgba(242,107,43,.35);color:var(--brand-bg)}
@media (max-width: 980px){#footer.footer .footer-top{grid-template-columns:1fr;gap:16px}#footer.footer .footer-contacts,#footer.footer .footer-nav{padding:14px 14px 12px}#footer.footer .footer-item{grid-template-columns:96px 1fr}}
@media (prefers-reduced-motion: reduce){#footer.footer a.footer-link{scroll-behavior:auto}}
/* section:hero */
/* section:hero */
#hero{--radius-sm:var(--brand-radius-sm,10px);--radius-md:var(--brand-radius-md,14px);--radius-lg:var(--brand-radius-lg,20px);background:var(--brand-bg);color:var(--brand-text);padding:48px 0 26px 0;position:relative;overflow:hidden;}
#hero::before{content:"";position:absolute;inset:-140px -120px auto -120px;height:420px;background:linear-gradient(180deg, rgba(15,76,93,0.14), rgba(15,76,93,0));pointer-events:none;}
#hero::after{content:"";position:absolute;top:0;right:-220px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle at 30% 30%, rgba(242,107,43,0.22), rgba(242,107,43,0) 60%);pointer-events:none;}
.hero__container{max-width:1120px;margin:0 auto;padding:0 20px;position:relative;z-index:1;}
.hero__grid{display:grid;grid-template-columns:1.08fr 0.92fr;gap:28px;align-items:start;}
.hero__eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--brand-secondary);font-weight:700;letter-spacing:-0.02em;font-size:14px;text-transform:uppercase;}
.hero__eyebrow::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--brand-accent);box-shadow:0 0 0 6px rgba(242,107,43,0.10);}
.hero__title{margin:12px 0 12px 0;font-family:var(--brand-font-display);font-weight:800;letter-spacing:-0.03em;font-size:46px;line-height:1.06;text-wrap:balance;}
.hero__lede{margin:0 0 18px 0;max-width:52ch;font-size:17px;line-height:1.6;color:var(--brand-text);}
.hero__cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 18px 0;}
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-radius:var(--radius-md);text-decoration:none;font-weight:800;font-size:15px;line-height:1;white-space:nowrap;transition:background-color .18s ease,border-color .18s ease,transform .18s ease;}
.button:focus-visible{outline:3px solid rgba(15,76,93,0.35);outline-offset:3px;}
.button--primary{background:var(--brand-primary);color:var(--brand-bg);border:1px solid var(--brand-primary);}
.button--primary:hover{background:rgba(11,42,61,0.92);transform:translateY(-1px);}
.button--ghost{background:var(--brand-bg);color:var(--brand-primary);border:2px solid var(--brand-border);}
.button--ghost:hover{border-color:rgba(15,76,93,0.55);background:rgba(15,76,93,0.06);transform:translateY(-1px);}
.hero__deliverables{list-style:none;padding:0;margin:16px 0 18px 0;display:grid;gap:10px;}
.deliverable{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid rgba(227,230,234,0.9);border-radius:var(--radius-md);background:rgba(246,247,248,0.7);}
.deliverable__icon{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(15,76,93,0.10);color:var(--brand-secondary);font-weight:900;flex:0 0 auto;margin-top:1px;}
.deliverable__text{font-size:15px;line-height:1.45;color:var(--brand-ink, var(--brand-ink));}
.hero__meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;}
.meta-card{flex:1 1 220px;border-radius:var(--radius-lg);border:1px solid rgba(227,230,234,0.95);background:var(--brand-surface);padding:14px 14px 12px 14px;}
.meta-card--accent{border-color:rgba(242,107,43,0.35);background:linear-gradient(180deg, rgba(242,107,43,0.10), rgba(246,247,248,0) 70%);}
.meta-card__label{font-size:13px;color:var(--brand-slate);font-weight:800;text-transform:uppercase;letter-spacing:0.02em;}
.meta-card__value{margin-top:6px;font-weight:900;font-size:16px;letter-spacing:-0.01em;}
.hero__visual{position:relative;}
.flow-panel{border-radius:var(--radius-lg);border:1px solid rgba(227,230,234,0.95);background:linear-gradient(180deg, var(--brand-surface), rgba(246,247,248,0.7));padding:16px;box-shadow:0 18px 44px rgba(11,42,61,0.10);}
.flow-panel__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.flow-panel__title{font-weight:1000;font-size:16px;letter-spacing:-0.01em;}
.flow-panel__badge{font-size:12px;color:var(--brand-secondary);font-weight:900;border:1px solid rgba(15,76,93,0.25);background:rgba(15,76,93,0.08);padding:8px 10px;border-radius:999px;white-space:nowrap;}
.flow-diagram{margin:12px 0 12px 0;position:relative;padding:10px 0 6px 0;display:grid;gap:10px;}
.node{border-radius:var(--radius-md);padding:10px 12px;border:1px solid rgba(227,230,234,0.95);background:rgba(255,255,255,0.75);font-weight:900;letter-spacing:-0.01em;}
.node--start{background:rgba(15,76,93,0.10);border-color:rgba(15,76,93,0.25);color:var(--brand-secondary);}
.node--step{background:rgba(11,42,61,0.04);}
.node--decision{background:rgba(242,107,43,0.10);border-color:rgba(242,107,43,0.30);color:var(--brand-primary);}
.node__sub{display:block;margin-top:4px;font-weight:800;color:var(--brand-secondary);font-size:12px;}
.node--result{background:rgba(11,42,61,0.92);border-color:rgba(11,42,61,0.92);color:var(--brand-bg);}
.edge{height:10px;position:relative;}
.edge::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46%;height:2px;background:linear-gradient(90deg, rgba(15,76,93,0), rgba(15,76,93,0.55), rgba(15,76,93,0));}
.flow-panel__bottom{border-top:1px solid rgba(227,230,234,0.95);padding-top:12px;display:grid;gap:8px;}
.check-row{display:flex;gap:10px;align-items:center;color:var(--brand-text);font-weight:800;font-size:13.5px;}
.check-row__dot{width:10px;height:10px;border-radius:50%;background:rgba(242,107,43,0.9);box-shadow:0 0 0 6px rgba(242,107,43,0.10);}
.hero__note{margin-top:12px;border-radius:var(--radius-lg);border:1px solid rgba(227,230,234,0.95);background:rgba(255,255,255,0.7);padding:14px;}
.hero__note-title{font-weight:1000;font-size:14px;text-transform:uppercase;letter-spacing:0.02em;color:var(--brand-primary);}
.hero__note-text{margin-top:8px;color:var(--brand-text);line-height:1.6;font-size:14.5px;}
::selection{background:rgba(242,107,43,0.30);}
@media (max-width: 980px){#hero{padding:38px 0 22px 0;}
.hero__grid{grid-template-columns:1fr;gap:18px;}
.hero__title{font-size:38px;}
.hero__visual{order:2;}
}
@media (max-width: 520px){.hero__title{font-size:32px;}
.hero__lede{font-size:16px;}
.flow-panel{padding:14px;}
.button{width:100%;}
.button--ghost{justify-content:center;}
.hero__cta-row{flex-direction:column;align-items:stretch;}
}
@media (prefers-reduced-motion: reduce){.button{transition:none;}}

/* section:how-it-works */
/* section:how-it-works */
#how-it-works{--radius-sm:var(--brand-radius-sm,10px);--radius-md:var(--brand-radius-md,14px);--radius-lg:var(--brand-radius-lg,20px);background:var(--brand-bg);color:var(--brand-text);padding:48px 18px;}
#how-it-works .howit-works-wrap{max-width:1060px;margin:0 auto;}
#how-it-works .howit-works-header{max-width:820px;margin:0 auto 22px auto;text-align:left;}
#how-it-works .howit-works-kicker{margin:0 0 10px 0;font-family:var(--brand-font-display);letter-spacing:0.01em;font-size:13px;color:var(--brand-secondary);text-transform:uppercase;font-weight:700;}
#how-it-works .howit-works-title{margin:0 0 12px 0;font-family:var(--brand-font-display);font-weight:800;letter-spacing:-0.02em;font-size:40px;line-height:1.08;text-wrap:balance;}
#how-it-works .howit-works-subtitle{margin:0;font-size:16px;line-height:1.6;color:var(--brand-text);max-width:76ch;}
#how-it-works .howit-works-steps{list-style:none;padding:0;margin:28px 0 0 0;display:flex;flex-direction:column;gap:14px;}
#how-it-works .step{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;padding:18px 18px 18px 16px;border:1px solid var(--brand-border);background:var(--brand-bg);border-radius:var(--brand-radius-lg,20px);}
#how-it-works .step-badge{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb, var(--brand-secondary) 10%, var(--brand-bg));border:1px solid color-mix(in srgb, var(--brand-secondary) 30%, var(--brand-border));color:var(--brand-secondary);font-weight:900;font-family:var(--brand-font-display);letter-spacing:-0.02em;font-size:18px;}
#how-it-works .step:nth-child(2) .step-badge{background:color-mix(in srgb, var(--brand-primary) 8%, var(--brand-bg));border-color:color-mix(in srgb, var(--brand-primary) 30%, var(--brand-border));color:var(--brand-primary);} 
#how-it-works .step:nth-child(3) .step-badge{background:color-mix(in srgb, var(--brand-accent) 12%, var(--brand-bg));border-color:color-mix(in srgb, var(--brand-accent) 30%, var(--brand-border));color:color-mix(in srgb, var(--brand-accent) 85%, var(--brand-primary));}
#how-it-works .step:nth-child(4) .step-badge{background:color-mix(in srgb, var(--brand-slate) 12%, var(--brand-bg));border-color:color-mix(in srgb, var(--brand-slate) 28%, var(--brand-border));color:var(--brand-slate);} 
#how-it-works .step-title{margin:0 0 8px 0;font-family:var(--brand-font-display);font-weight:850;letter-spacing:-0.015em;font-size:22px;line-height:1.25;}
#how-it-works .step-text{margin:0 0 12px 0;font-size:15.5px;line-height:1.65;color:var(--brand-text);max-width:78ch;}
#how-it-works .step-bullets{margin:0;padding-left:18px;color:var(--brand-text);}
#how-it-works .step-bullets li{margin:7px 0;font-size:14.5px;line-height:1.45;}
#how-it-works .howit-works-cta-row{margin:26px auto 0 auto;max-width:980px;display:flex;gap:16px;align-items:flex-start;justify-content:space-between;padding:18px 18px;border-radius:var(--brand-radius-lg,20px);border:1px solid var(--brand-border);background:var(--brand-surface);}
#how-it-works .howit-works-cta-title{margin:0 0 8px 0;font-family:var(--brand-font-display);font-weight:850;font-size:20px;letter-spacing:-0.01em;}
#how-it-works .howit-works-cta-text{margin:0;font-size:15px;line-height:1.6;color:var(--brand-text);max-width:60ch;}
#how-it-works .primary-link{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:14px;background:var(--brand-primary);color:var(--brand-bg);text-decoration:none;font-weight:800;border:1px solid var(--brand-primary);box-shadow:0 10px 26px color-mix(in srgb, var(--brand-secondary) 18%, transparent);} 
#how-it-works .primary-link:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 55%, var(--brand-primary));outline-offset:3px;}
#how-it-works .primary-link:hover{background:color-mix(in srgb, var(--brand-primary) 86%, var(--brand-accent));border-color:color-mix(in srgb, var(--brand-primary) 85%, var(--brand-accent));}
#how-it-works ::selection{background:color-mix(in srgb, var(--brand-accent) 26%, var(--brand-primary));}
@media (max-width:820px){#how-it-works{padding:40px 14px;}#how-it-works .howit-works-title{font-size:34px;}#howit-works .howit-works-cta-row{flex-direction:column;gap:12px;}#how-it-works .step{grid-template-columns:58px 1fr;}}
@media (max-width:520px){#how-it-works .howit-works-title{font-size:30px;}#how-it-works .step{padding:16px 14px 16px 12px;}#how-it-works .step-badge{width:48px;height:48px;border-radius:12px;}}
@media (prefers-reduced-motion:reduce){#how-it-works *{scroll-behavior:auto;transition:none !important;animation:none !important;}}

/* section:features */
/* section:features */
#features{--pad:clamp(18px,3vw,34px);background:var(--brand-bg);color:var(--brand-text);} 
#features .features__container{max-width:1120px;margin:0 auto;padding:56px var(--pad) 64px;} 
#features .features__header{max-width:720px;margin-bottom:28px;} 
#features .features__eyebrow{font-family:var(--brand-font);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-secondary);margin:0 0 12px;} 
#features .features__title{font-family:var(--brand-font-display);font-weight:750;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-.02em;margin:0 0 14px;text-wrap:balance;color:var(--brand-ink);} 
#features .features__subtitle{margin:0;font-size:16px;line-height:1.65;color:var(--brand-text);} 
#features .features__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;align-items:start;} 
#features .feature{grid-column:span 6;background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--brand-radius-lg,20px);padding:18px 18px 16px;position:relative;overflow:hidden;} 
#features .feature:before{content:"";position:absolute;inset:-2px;pointer-events:none;background:radial-gradient(600px 220px at 20% 0%, color-mix(in srgb, var(--brand-secondary) 28%, transparent), transparent 55%);} 
#features .feature__badge{position:relative;z-index:1;width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb, var(--brand-accent) 16%, var(--brand-surface));border:1px solid color-mix(in srgb, var(--brand-accent) 45%, var(--brand-border));color:var(--brand-secondary);font-weight:800;font-size:16px;margin-bottom:10px;font-variant-numeric:tabular-nums;} 
#features .feature__heading{position:relative;z-index:1;margin:0 0 8px;font-family:var(--brand-font);font-weight:800;font-size:18px;color:var(--brand-ink);} 
#features .feature__text{position:relative;z-index:1;margin:0 0 12px;font-size:15px;line-height:1.6;color:var(--brand-text);} 
#features .feature__meta{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;} 
#features .feature__pill{font-size:13px;line-height:1;padding:8px 10px;border-radius:999px;background:color-mix(in srgb, var(--brand-primary) 6%, var(--brand-surface));border:1px solid color-mix(in srgb, var(--brand-border) 85%, transparent);color:color-mix(in srgb, var(--brand-ink) 86%, var(--brand-slate));} 
#features .features__bento{grid-column:span 12;display:grid;grid-template-columns:repeat(12,1fr);gap:18px;margin-top:6px;} 
#features .bento__panel{grid-column:span 7;background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--brand-radius-lg,20px);padding:18px;} 
#features .bento__panel--accent{grid-column:span 5;background:color-mix(in srgb, var(--brand-secondary) 8%, var(--brand-surface));border-color:color-mix(in srgb, var(--brand-secondary) 22%, var(--brand-border));} 
#features .bento__title{margin:0 0 12px;font-size:16px;font-weight:900;color:var(--brand-ink);} 
#features .bento__list{margin:0;padding-left:18px;display:grid;gap:10px;color:var(--brand-text);} 
#features .bento__list li{line-height:1.55;font-size:14.5px;} 
#features .bento__panel--accent .bento__list li{color:color-mix(in srgb, var(--brand-text) 92%, var(--brand-ink));} 
#features .bento__steps{display:grid;gap:12px;} 
#features .bento__step{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:14px;background:color-mix(in srgb, var(--brand-bg) 40%, transparent);border:1px solid color-mix(in srgb, var(--brand-border) 70%, transparent);} 
#features .bento__stepNo{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--brand-accent);color:var(--brand-bg);font-weight:900;font-size:14px;flex:0 0 auto;margin-top:2px;} 
#features .bento__stepLabel{margin:0 0 4px;font-weight:900;color:var(--brand-ink);font-size:14.5px;} 
#features .bento__stepText{margin:0;font-size:14.2px;line-height:1.55;color:var(--brand-text);} 
#features .features__ctaRow{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:color-mix(in srgb, var(--brand-primary) 6%, var(--brand-surface));border:1px solid var(--brand-border);border-radius:var(--brand-radius-lg,20px);padding:16px 18px;} 
#features .features__ctaNote{margin:0;font-size:15px;line-height:1.5;color:var(--brand-text);max-width:720px;} 
#features .button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;padding:12px 16px;font-weight:900;text-decoration:none;border:1px solid transparent;transition:transform .12s ease, background .12s ease, border-color .12s ease, color .12s ease;}
#features .button:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 65%, white);outline-offset:3px;} 
#features .button--primary{background:var(--brand-accent);color:var(--brand-bg);border-color:color-mix(in srgb, var(--brand-accent) 40%, var(--brand-accent));box-shadow:0 10px 24px color-mix(in srgb, var(--brand-accent) 22%, transparent);} 
#features .button--primary:hover{transform:translateY(-1px);} 
#features ::selection{background:color-mix(in srgb, var(--brand-accent) 35%, transparent);color:var(--brand-ink);} 
@media (max-width: 900px){#features .feature{grid-column:span 12;}#features .bento__panel{grid-column:span 12;}#features .bento__panel--accent{grid-column:span 12;}#features .features__ctaRow{flex-direction:column;align-items:flex-start;}}
@media (prefers-reduced-motion: reduce){#features .button{transition:none;}}

/* section:pricing-explainer */
/* section:pricing-explainer */
#pricing-explainer.pricing-explainer{--pad-inline: clamp(16px,4vw,28px); padding: clamp(28px,5vw,54px) var(--pad-inline); background: var(--brand-bg);} 
#pricing-explainer .pricing-explainer__inner{max-width:1120px; margin:0 auto;} 
#pricing-explainer .pricing-explainer__top{margin-bottom:28px;} 
#pricing-explainer .pricing-explainer__eyebrow{display:inline-flex; align-items:center; gap:10px; font: 600 13px/1.2 var(--brand-font-display); color: var(--brand-secondary); letter-spacing:0.02em; text-transform:uppercase; margin-bottom:12px;} 
#pricing-explainer .pricing-explainer__eyebrow::before{content:""; width:12px; height:12px; border-radius:50%; background: var(--brand-accent);} 
#pricing-explainer .pricing-explainer__title{font: 700 clamp(22px,2.7vw,34px)/1.12 var(--brand-font-display); color: var(--brand-ink); letter-spacing:-0.02em; text-wrap:balance; margin:0 0 12px;} 
#pricing-explainer .pricing-explainer__lead{margin:0; color: var(--brand-text); font: 400 16px/1.6 var(--brand-font);} 
#pricing-explainer .pricing-explainer__grid{display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:14px; margin: 18px 0 26px; padding: 0; list-style:none;} 
#pricing-explainer .pricing-explainer__metric{border:1px solid var(--brand-border); background: var(--brand-surface); border-radius: var(--brand-radius-lg, 20px); padding: 16px 16px 14px; } 
#pricing-explainer .pricing-explainer__metric-title{margin:0 0 8px; font: 700 16px/1.3 var(--brand-font-display); color: var(--brand-primary);} 
#pricing-explainer .pricing-explainer__metric-text{margin:0; color: var(--brand-text); font: 400 14px/1.6 var(--brand-font);} 
#pricing-explainer .pricing-explainer__bento{display:grid; grid-template-columns: 1.1fr 1fr; gap:14px; align-items:stretch; margin-top: 10px;} 
#pricing-explainer .pricing-explainer__step{border:1px solid var(--brand-border); border-radius: var(--brand-radius-lg, 20px); background: var(--brand-surface); padding: 18px 18px 16px; position:relative; overflow:hidden;} 
#pricing-explainer .pricing-explainer__step::after{content:""; position:absolute; inset:auto -40px -80px auto; width:160px; height:160px; background: radial-gradient(circle at 30% 30%, rgba(242,107,43,0.22), rgba(242,107,43,0)); transform: rotate(20deg);} 
#pricing-explainer .pricing-explainer__step--c{grid-column: 1 / -1;} 
#pricing-explainer .pricing-explainer__step-title{margin:0 0 10px; font:700 18px/1.25 var(--brand-font-display); color: var(--brand-ink);} 
#pricing-explainer .pricing-explainer__step-text{margin:0 0 12px; color: var(--brand-text); font: 400 14px/1.65 var(--brand-font);} 
#pricing-explainer .pricing-explainer__list{margin:0; padding-left:18px; color: var(--brand-text); font: 400 14px/1.65 var(--brand-font);} 
#pricing-explainer .pricing-explainer__cta-row{display:flex; gap:12px; flex-wrap:wrap; margin-top: 10px;} 
#pricing-explainer .pricing-explainer__cta{display:inline-flex; align-items:center; justify-content:center; padding: 11px 14px; border-radius: var(--brand-radius-md, 14px); font: 700 14px/1 var(--brand-font-display); text-decoration:none; border:1px solid var(--brand-accent); background: var(--brand-accent); color: var(--brand-bg);} 
#pricing-explainer .pricing-explainer__cta--ghost{background: transparent; color: var(--brand-primary); border-color: var(--brand-border);} 
#pricing-explainer .pricing-explainer__cta:focus-visible{outline:3px solid rgba(242,107,43,0.35); outline-offset:2px;} 
#pricing-explainer .pricing-explainer__cta--ghost:focus-visible{outline:3px solid rgba(11,42,61,0.25); outline-offset:2px;} 
#pricing-explainer .pricing-explainer__fineprint{margin:10px 0 0; color: var(--brand-slate); font: 400 13px/1.6 var(--brand-font);} 
#pricing-explainer .pricing-explainer__note{margin-top:16px; display:flex; gap:12px; align-items:flex-start; padding:14px 16px; border:1px solid var(--brand-border); border-radius: var(--brand-radius-md, 14px); background: #fff;} 
#pricing-explainer .pricing-explainer__note-mark{color: var(--brand-accent); font: 900 18px/1 var(--brand-font-display); margin-top: 2px;} 
#pricing-explainer .pricing-explainer__note-text{margin:0; color: var(--brand-text); font: 400 14px/1.65 var(--brand-font);} 
#pricing-explainer .pricing-explainer__note-text strong{color: var(--brand-ink);} 
#pricing-explainer ::selection{background: rgba(242,107,43,0.25);} 
@media (max-width: 860px){
  #pricing-explainer .pricing-explainer__grid{grid-template-columns:1fr;}
  #pricing-explainer .pricing-explainer__bento{grid-template-columns:1fr;}
  #pricing-explainer .pricing-explainer__step--a,#pricing-explainer .pricing-explainer__step--b,#pricing-explainer .pricing-explainer__step--c{grid-column:auto;}
}
@media (prefers-reduced-motion: reduce){
  #pricing-explainer *{scroll-behavior:auto;}
}

/* section:faq */
/* section:faq */
#faq.faq-section{background:var(--brand-surface);color:var(--brand-ink);padding:clamp(28px,5vw,56px) 16px;}
#faq.faq-section .faq-inner{max-width:1040px;margin:0 auto;}
#faq.faq-section .faq-title{font-family:var(--brand-font-display);font-size:clamp(28px,4vw,44px);line-height:1.05;letter-spacing:-0.02em;margin:0 0 10px;}
#faq.faq-section .faq-lead{margin:0 0 22px;max-width:70ch;font-size:16px;line-height:1.7;color:var(--brand-text);}
#faq.faq-section .faq-grid{display:grid;gap:12px;}
#faq.faq-section .faq-item{background:var(--brand-bg);border:1px solid var(--brand-border);border-radius:var(--radius-lg,20px);padding:0;overflow:hidden;}
#faq.faq-section .faq-question{cursor:pointer;list-style:none;outline:none;display:flex;align-items:flex-start;gap:12px;padding:16px 16px;font-family:var(--brand-font);font-weight:700;font-size:16px;line-height:1.35;}
#faq.faq-section .faq-question::-webkit-details-marker{display:none;}
#faq.faq-section .faq-question::before{content:"";width:12px;height:12px;border-radius:4px;background:var(--brand-secondary);flex:0 0 auto;margin-top:4px;box-shadow:0 0 0 3px rgba(15,76,93,.12);}
#faq.faq-section .faq-answer{padding:0 16px 16px 16px;border-top:1px solid rgba(227,230,234,.9);margin-top:0;}
#faq.faq-section .faq-answer p{margin:14px 0 0;font-size:15px;line-height:1.7;color:var(--brand-text);}
#faq.faq-section details[open] .faq-question::before{background:var(--brand-accent);box-shadow:0 0 0 3px rgba(242,107,43,.14);}
#faq.faq-section .faq-cta-row{margin-top:18px;padding:14px 16px;border:1px dashed var(--brand-border);border-radius:var(--radius-md,14px);display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
#faq.faq-section .faq-legal{margin:0;color:var(--brand-text);font-size:14px;line-height:1.6;max-width:72ch;}
#faq.faq-section .faq-contact-link{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:10px 14px;border-radius:var(--radius-md,14px);background:var(--brand-primary);color:var(--brand-bg);text-decoration:none;font-weight:700;font-size:14px;border:1px solid var(--brand-primary);}
#faq.faq-section .faq-contact-link:focus-visible{outline:3px solid rgba(242,107,43,.45);outline-offset:2px;}
#faq.faq-section .faq-item:focus-within{box-shadow:0 10px 30px rgba(10,31,43,.08);}
#faq.faq-section details summary:focus-visible{outline:3px solid rgba(242,107,43,.45);outline-offset:3px;border-radius:12px;}
#faq.faq-section ::selection{background:rgba(242,107,43,.25);}
@media (min-width:900px){#faq.faq-section .faq-grid{grid-template-columns:1fr 1fr;gap:14px;}#faq.faq-section .faq-item:nth-child(5),#faq.faq-section .faq-item:nth-child(6){grid-column:span 2;}}
@media (prefers-reduced-motion:reduce){#faq.faq-section details{transition:none;}#faq.faq-section *{scroll-behavior:auto;}}

/* section:contacts */
/* section:contacts */
#contacts{--section-pad:clamp(22px,4.2vw,44px);padding:var(--section-pad) 0;background:var(--brand-bg);color:var(--brand-text);font-family:var(--brand-font);} 
#contacts *{box-sizing:border-box;} 
#contacts ::selection{background:rgba(242,107,43,.22);} 
#contacts .contacts__inner{max-width:1120px;margin:0 auto;padding:0 18px;} 
#contacts .contacts__header{max-width:720px;margin:0 0 26px;} 
#contacts .contacts__eyebrow{margin:0 0 10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-secondary);} 
#contacts .contacts__title{margin:0 0 10px;font-size:clamp(26px,3.2vw,40px);line-height:1.08;letter-spacing:-.02em;font-weight:800;text-wrap:balance;color:var(--brand-ink);} 
#contacts .contacts__lead{margin:0;font-size:16px;line-height:1.6;color:var(--brand-text);} 
#contacts .contacts__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:start;} 
#contacts .contacts__aside{display:flex;flex-direction:column;gap:14px;} 
#contacts .contacts__aside-block{border:1px solid var(--brand-border);background:#fff;border-radius:var(--radius-lg);padding:18px 18px;} 
#contacts .contacts__aside-block--alt{background:var(--brand-surface);} 
#contacts .contacts__aside-title{margin:0 0 10px;font-size:16px;line-height:1.3;font-weight:800;color:var(--brand-ink);} 
#contacts .contacts__aside-text{margin:8px 0 0;font-size:14px;line-height:1.55;color:var(--brand-text);} 
#contacts .contacts__aside-label{display:inline-block;min-width:70px;font-weight:700;color:var(--brand-secondary);} 
#contacts .contacts__link{color:var(--brand-secondary);text-decoration:underline;text-underline-offset:3px;} 
#contacts .contacts__link:focus-visible{outline:3px solid rgba(15,76,93,.35);outline-offset:3px;border-radius:8px;} 
#contacts .contacts__steps{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;} 
#contacts .contacts__step{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--brand-text);} 
#contacts .contacts__step-num{flex:0 0 26px;height:26px;border-radius:9px;background:rgba(15,76,93,.10);border:1px solid rgba(15,76,93,.20);display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:var(--brand-secondary);} 
#contacts .contacts__form-wrap{border-radius:var(--radius-lg);} 
#contacts .contacts__form{border:1px solid var(--brand-border);background:var(--brand-surface);border-radius:var(--radius-lg);padding:18px;display:flex;flex-direction:column;gap:12px;} 
#contacts .field{display:flex;flex-direction:column;gap:7px;} 
#contacts .label{font-size:13px;font-weight:800;color:var(--brand-ink);} 
#contacts .input,.contacts .textarea{width:100%;border:1px solid rgba(10,31,43,.18);background:#fff;color:var(--brand-ink);border-radius:var(--radius-md);padding:12px 12px;font-size:15px;line-height:1.4;outline:none;} 
#contacts .textarea{resize:vertical;min-height:132px;max-height:340px;} 
#contacts .input::placeholder,.contacts .textarea::placeholder{color:rgba(31,41,51,.62);} 
#contacts .input:focus-visible,.contacts .textarea:focus-visible{border-color:rgba(15,76,93,.65);box-shadow:0 0 0 4px rgba(15,76,93,.14);} 
#contacts .contacts__consent{margin-top:2px;padding:12px 12px;border-radius:var(--radius-md);background:#fff;border:1px solid rgba(227,230,234,.9);} 
#contacts .contacts__consent-text{margin:0;font-size:13px;line-height:1.5;color:var(--brand-text);} 
#contacts .contacts__consent-text--small{margin-top:6px;color:rgba(31,41,51,.86);} 
#contacts .contacts__cta-row{display:flex;gap:12px;align-items:center;margin-top:2px;} 
#contacts .btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);padding:12px 14px;font-weight:900;font-size:15px;text-decoration:none;cursor:pointer;border:1px solid transparent;white-space:nowrap;} 
#contacts .btn--primary{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary);} 
#contacts .btn--primary:hover{background:#082235;} 
#contacts .btn--primary:focus-visible{outline:3px solid rgba(11,42,61,.35);outline-offset:3px;} 
#contacts .btn--ghost{background:#fff;color:var(--brand-ink);border-color:rgba(10,31,43,.25);} 
#contacts .btn--ghost:hover{background:rgba(10,31,43,.04);} 
#contacts .btn--ghost:focus-visible{outline:3px solid rgba(10,31,43,.20);outline-offset:3px;} 
#contacts .contacts__fineprint{margin-top:18px;} 
#contacts .contacts__fineprint-text{margin:0;font-size:13px;line-height:1.6;color:rgba(31,41,51,.86);} 
@media (max-width: 920px){#contacts .contacts__grid{grid-template-columns:1fr;gap:16px;} #contacts .contacts__cta-row{flex-direction:column;align-items:stretch;} .btn{width:100%;}}
@media (prefers-reduced-motion: reduce){#contacts *{scroll-behavior:auto;transition:none !important;animation:none !important;}}

/* section:blog-list */
/* section:blog-list */
#blog-list{--radius-sm:var(--brand-radius-sm,10px);--radius-md:var(--brand-radius-md,14px);--radius-lg:var(--brand-radius-lg,20px);padding:48px 0;background:var(--brand-bg);color:var(--brand-text)}
#blog-list .blog-list__inner{max-width:1060px;margin:0 auto;padding:0 20px}
#blog-list .blog-list__header{display:block;margin-bottom:28px}
#blog-list .eyebrow{display:inline-flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid var(--brand-border);border-radius:999px;background:var(--brand-surface);color:var(--brand-secondary);font-family:var(--brand-font);font-size:13px;letter-spacing:.2px}
#blog-list .blog-list__title{margin:14px 0 10px 0;font-family:var(--brand-font-display, var(--brand-font));font-size:34px;line-height:1.1;letter-spacing:-.02em;text-wrap:balance}
#blog-list .blog-list__subtitle{margin:0;max-width:70ch;color:var(--brand-text);font-size:16px;line-height:1.65}
#blog-list .blog-list__grid{display:grid;grid-template-columns:repeat(3, minmax(0,1fr));gap:16px;margin-top:26px}
#blog-list .post-card{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--brand-radius-lg,20px);padding:18px 18px 16px 18px;box-shadow:0 10px 24px rgba(15,76,93,.08);display:flex;flex-direction:column;min-height:260px}
#blog-list .post-card--featured{background:#fbf3ef;border-color:rgba(242,107,43,.35);box-shadow:0 16px 34px rgba(242,107,43,.14)}
#blog-list .post-card__meta{display:flex;align-items:center;justify-content:space-between;gap:12px}
#blog-list .post-card__tag{font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid var(--brand-border);background:var(--brand-bg);color:var(--brand-secondary)}
#blog-list .post-card__tag--accent{border-color:rgba(242,107,43,.35);background:rgba(242,107,43,.10);color:var(--brand-accent)}
#blog-list .post-card__date{color:var(--brand-slate);font-size:13px;white-space:nowrap}
#blog-list .post-card__title{margin:14px 0 10px 0;font-family:var(--brand-font);font-size:18px;line-height:1.35;letter-spacing:-.01em}
#blog-list .post-card__excerpt{margin:0;color:var(--brand-slate);font-size:14.5px;line-height:1.7;flex:1}
#blog-list .post-card__link{margin-top:14px;display:inline-flex;align-items:center;gap:10px;color:var(--brand-secondary);text-decoration:none;font-weight:650;border-radius:12px;padding:10px 12px;border:1px solid var(--brand-border);background:var(--brand-bg)}
#blog-list .post-card__link::after{content:"→";font-weight:700}
#blog-list .post-card__link:hover{border-color:rgba(15,76,93,.55);background:rgba(15,76,93,.04)}
#blog-list .post-card__link:focus-visible{outline:3px solid rgba(15,76,93,.35);outline-offset:2px}
#blog-list .post-card__link--accent{color:var(--brand-accent);border-color:rgba(242,107,43,.45);background:rgba(242,107,43,.08)}
#blog-list .post-card__link--accent:hover{border-color:rgba(242,107,43,.75);background:rgba(242,107,43,.14)}
#blog-list .post-card__link--accent:focus-visible{outline-color:rgba(242,107,43,.35)}
#blog-list .blog-list__footer{margin-top:26px;padding:16px 18px;border:1px solid var(--brand-border);background:linear-gradient(0deg, rgba(15,76,93,.04), rgba(15,76,93,.04)), var(--brand-surface);border-radius:var(--brand-radius-md,14px)}
#blog-list .blog-list__footnote{margin:0 0 14px 0;color:var(--brand-slate);line-height:1.65}
#blog-list .blog-list__cta-row{display:flex;gap:12px;flex-wrap:wrap}
#blog-list .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 14px;border-radius:14px;text-decoration:none;font-weight:720;font-size:14px;line-height:1;min-width:150px}
#blog-list .btn--primary{background:var(--brand-primary);color:var(--brand-bg);border:1px solid rgba(0,0,0,.0)}
#blog-list .btn--primary:hover{background:#0a2538}
#blog-list .btn--primary:focus-visible{outline:3px solid rgba(11,42,61,.35);outline-offset:2px}
#blog-list .btn--ghost{background:var(--brand-bg);color:var(--brand-secondary);border:1px solid var(--brand-border)}
#blog-list .btn--ghost:hover{border-color:rgba(15,76,93,.65);background:rgba(15,76,93,.04)}
#blog-list .btn--ghost:focus-visible{outline:3px solid rgba(15,76,93,.35);outline-offset:2px}
#blog-list ::selection{background:rgba(242,107,43,.22);color:var(--brand-ink)}
@media (max-width: 980px){#blog-list .blog-list__grid{grid-template-columns:1fr;gap:14px}#blog-list .blog-list__title{font-size:30px}#blog-list .post-card{min-height:auto}}
@media (prefers-reduced-motion: reduce){#blog-list *{scroll-behavior:auto;transition:none!important;animation:none!important}}
/* section:article-hero */
/* section:article-hero */
#article-hero{--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--gap-1:0.25rem;--gap-2:0.5rem;--gap-3:0.75rem;--gap-4:1rem;--gap-6:1.5rem;--gap-8:2rem;--gap-12:3rem;background:var(--brand-bg);color:var(--brand-text);padding:clamp(28px,5vw,64px) 0 28px;}
#article-hero .article-hero__inner{max-width:1080px;margin:0 auto;padding:0 18px;}
#article-hero .article-hero__eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--brand-border);border-radius:999px;background:color-mix(in srgb,var(--brand-surface) 68%, white 32%);color:var(--brand-secondary);font-family:var(--brand-font);font-size:14px;letter-spacing:0.01em;}
#article-hero .article-hero__title{margin:14px 0 12px;max-width:900px;font-family:var(--brand-font-display);font-size:clamp(34px,4.4vw,54px);line-height:1.06;letter-spacing:-0.02em;font-weight:800;text-wrap:balance;color:var(--brand-ink);}
#article-hero .article-hero__meta{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;margin:0 0 14px;color:var(--brand-slate);font-size:14px;}
#article-hero .article-hero__meta-item{display:flex;gap:8px;align-items:baseline;}
#article-hero .article-hero__meta-label{font-weight:700;color:color-mix(in srgb,var(--brand-slate) 78%, var(--brand-ink) 22%);}
#article-hero .article-hero__meta-value{font-weight:600;color:var(--brand-slate);}
#article-hero .article-hero__meta-sep{color:color-mix(in srgb,var(--brand-slate) 70%, var(--brand-border) 30%);}
#article-hero .article-hero__lede{margin:0 0 22px;max-width:820px;font-family:var(--brand-font);font-size:18px;line-height:1.6;color:var(--brand-text);}
#article-hero .article-hero__cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 18px;}
#article-hero .article-hero__cta{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:var(--radius-md);text-decoration:none;font-family:var(--brand-font);font-weight:800;font-size:16px;line-height:1.2;min-height:44px;}
#article-hero .article-hero__cta--primary{background:var(--brand-primary);color:var(--brand-bg);border:1px solid color-mix(in srgb,var(--brand-primary) 70%, var(--brand-border) 30%);}
#article-hero .article-hero__cta--ghost{background:transparent;color:var(--brand-primary);border:2px solid var(--brand-primary);}
#article-hero .article-hero__cta:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-accent) 60%, var(--brand-secondary) 40%);outline-offset:3px;}
#article-hero .article-hero__cta--primary:hover{background:color-mix(in srgb,var(--brand-primary) 86%, var(--brand-accent) 14%);}
#article-hero .article-hero__cta--ghost:hover{background:color-mix(in srgb,var(--brand-primary) 6%, white 94%);}
#article-hero .article-hero__highlight{margin-top:10px;padding:16px 16px;border-radius:var(--radius-lg);border:1px solid var(--brand-border);background:linear-gradient(180deg, color-mix(in srgb,var(--brand-surface) 88%, white 12%), color-mix(in srgb,var(--brand-surface) 78%, white 22%));}
#article-hero .article-hero__highlight-title{font-weight:900;color:var(--brand-secondary);font-size:15px;margin-bottom:10px;}
#article-hero .article-hero__bullets{margin:0;padding-left:18px;display:grid;gap:8px;}
#article-hero .article-hero__bullet{color:var(--brand-text);font-size:16px;line-height:1.55;}
#article-hero .article-hero__bullets li::marker{color:var(--brand-accent);}
#article-hero ::selection{background:color-mix(in srgb,var(--brand-accent) 28%, white 72%);color:var(--brand-ink);}
@media (prefers-reduced-motion: reduce){#article-hero *{scroll-behavior:auto;transition:none!important;animation:none!important;}}
@media (max-width:720px){#article-hero .article-hero__lede{font-size:16px;}
#article-hero .article-hero__meta{font-size:13.5px;}
#article-hero .article-hero__highlight{padding:14px;}
}

/* section:article-content */
/* section:article-content */
#article-content{--section-max:980px; background:var(--brand-bg); color:var(--brand-text); font-family:var(--brand-font);} 
#article-content .article{max-width:var(--section-max); margin:0 auto; padding:40px 18px 10px;} 
#article-content .article-intro{padding:0 0 18px;} 
#article-content .article-kicker{margin:0 0 12px; color:var(--brand-secondary); font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:12.5px;} 
#article-content .article-title{margin:0 0 14px; font-size:44px; line-height:1.08; letter-spacing:-.02em; font-weight:840; text-wrap:balance;} 
#article-content .article-lead{margin:0; max-width:820px; font-size:18.5px; line-height:1.6; color:var(--brand-text);} 
#article-content .article-meta{display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:16px; color:var(--brand-slate);} 
#article-content .meta-item{font-size:14.5px;} 
#article-content .meta-value{color:var(--brand-ink); font-weight:700;} 
#article-content .meta-sep{color:var(--brand-border);} 
#article-content .article-body{border-top:1px solid var(--brand-border); padding-top:26px;} 
#article-content .h2{margin:28px 0 12px; font-size:26px; line-height:1.25; letter-spacing:-.01em; font-weight:820;} 
#article-content .h3{margin:20px 0 10px; font-size:18px; line-height:1.35; font-weight:780; color:var(--brand-primary);} 
#article-content .p{margin:0 0 14px; font-size:16.5px; line-height:1.75; color:var(--brand-text);} 
#article-content .list,#article-content .ol{margin:10px 0 16px 20px; padding:0;} 
#article-content .li{margin:8px 0; font-size:16.5px; line-height:1.65;} 
#article-content .decision-skeleton{margin:12px 0 18px; border:1px solid var(--brand-border); background:var(--brand-surface); border-radius:var(--brand-radius-md, 14px); padding:16px;} 
#article-content .skeleton-row{display:grid; grid-template-columns: 160px 1fr; gap:14px; padding:10px 0; border-top:1px solid var(--brand-border);} 
#article-content .skeleton-row:first-child{border-top:none; padding-top:0;} 
#article-content .skeleton-label{font-size:13px; font-weight:800; letter-spacing:.02em; color:var(--brand-secondary); text-transform:uppercase;} 
#article-content .skeleton-value{font-size:16px; line-height:1.6; color:var(--brand-text);} 
#article-content .closing{margin-top:18px; font-size:16.5px;} 
#article-content .inline-link{color:var(--brand-secondary); text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px;} 
#article-content .inline-link:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 45%, transparent); outline-offset:3px; border-radius:6px;} 
#article-content ::selection{background:color-mix(in srgb, var(--brand-accent) 22%, transparent); color:var(--brand-ink);} 
#article-content .p a{font-weight:700;} 
@media (max-width:860px){#article-content .article{padding-top:26px;} #article-content .article-title{font-size:36px;} #article-content .decision-skeleton{padding:14px;} #article-content .skeleton-row{grid-template-columns: 1fr; gap:6px;} #article-content .skeleton-label{font-size:12.5px;} }
@media (prefers-reduced-motion:reduce){#article-content *{scroll-behavior:auto;}}
/* section:related-articles */
/* section:related-articles */
#related-articles{background:var(--brand-bg);color:var(--brand-text);padding:48px 0 56px;border-top:1px solid var(--brand-border);}
#related-articles .container{max-width:1080px;margin:0 auto;padding:0 20px;}
#related-articles .section-header{margin-bottom:22px;}
#related-articles .section-title{font-family:var(--brand-font);font-size:34px;line-height:1.15;letter-spacing:-0.02em;margin:0 0 10px;font-weight:750;text-wrap:balance;}
#related-articles .section-subtitle{margin:0;max-width:70ch;color:color-mix(in oklab, var(--brand-text) 82%, var(--brand-slate));font-size:16px;line-height:1.6;}
#related-articles .articles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch;}
#related-articles .related-article-card{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--brand-radius-md,14px);padding:18px 18px 16px;display:flex;flex-direction:column;min-height:170px;}
#related-articles .card-kicker{margin:0 0 8px;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:color-mix(in oklab, var(--brand-primary) 78%, var(--brand-slate));font-weight:700;}
#related-articles .card-title{margin:0 0 10px;font-size:18px;line-height:1.35;font-weight:780;letter-spacing:-0.01em;}
#related-articles .card-link{color:var(--brand-ink);text-decoration:none;}
#related-articles .card-link:hover{text-decoration:underline;}
#related-articles .card-description{margin:0 0 14px;color:color-mix(in oklab, var(--brand-text) 78%, var(--brand-slate));font-size:14px;line-height:1.6;}
#related-articles .card-cta{margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:var(--brand-primary);text-decoration:none;font-weight:760;padding:10px 12px;border-radius:12px;border:1px solid color-mix(in oklab, var(--brand-primary) 35%, var(--brand-border));background:color-mix(in oklab, var(--brand-surface) 92%, var(--brand-bg));}
#related-articles .card-cta:hover{background:color-mix(in oklab, var(--brand-surface) 70%, var(--brand-accent) 10%);border-color:color-mix(in oklab, var(--brand-primary) 55%, var(--brand-border));}
#related-articles .card-cta:focus-visible{outline:3px solid color-mix(in oklab, var(--brand-accent) 60%, white);outline-offset:2px;}
#related-articles .card-link:focus-visible{outline:3px solid color-mix(in oklab, var(--brand-accent) 60%, white);outline-offset:3px;border-radius:10px;}
#related-articles ::selection{background:color-mix(in oklab, var(--brand-accent) 30%, white);}
@media (max-width: 900px){#related-articles .articles-grid{grid-template-columns:1fr;gap:12px;}#related-articles .section-title{font-size:30px;}}
@media (prefers-reduced-motion: reduce){#related-articles *{scroll-behavior:auto;transition:none !important;animation:none !important;}}

/* section:article-hero */
/* section:article-hero */
#article-hero{--r-lg:var(--brand-radius-lg,20px);--r-md:var(--brand-radius-md,14px);--r-sm:var(--brand-radius-sm,10px);position:relative;background:var(--brand-bg);color:var(--brand-text);padding:48px 0 28px;overflow:hidden;}
#article-hero::before{content:"";position:absolute;inset:-2px -10% auto -10%;height:260px;background:linear-gradient(180deg, color-mix(in srgb, var(--brand-secondary) 14%, transparent 86%) 0%, transparent 75%);pointer-events:none;}
#article-hero::after{content:"";position:absolute;top:-120px;right:-120px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 30% 30%, color-mix(in srgb, var(--brand-accent) 28%, transparent 72%) 0%, transparent 60%);pointer-events:none;}
.article-hero__inner{position:relative;max-width:980px;margin:0 auto;padding:0 20px;}
.article-hero__eyebrow{display:inline-block;font-family:var(--brand-font);font-weight:700;letter-spacing:.02em;color:var(--brand-secondary);background:color-mix(in srgb, var(--brand-secondary) 8%, transparent 92%);border:1px solid color-mix(in srgb, var(--brand-secondary) 22%, var(--brand-border) 78%);padding:8px 12px;border-radius:999px;text-transform:none;font-size:14px;}
.article-hero__title{margin:16px 0 10px;font-family:var(--brand-font-display);font-size:44px;line-height:1.08;letter-spacing:-0.02em;color:var(--brand-ink);text-wrap:balance;font-weight:820;}
.article-hero__meta{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;margin:14px 0 10px;padding:0;list-style:none;}
.article-hero__meta-item{display:flex;gap:8px;align-items:baseline;}
.article-hero__meta-label{font-size:13px;color:var(--brand-slate);font-weight:700;}
.article-hero__meta-value{font-size:13px;color:var(--brand-ink);font-weight:800;font-variant-numeric:tabular-nums;}
.article-hero__dek{margin:14px 0 22px;max-width:72ch;font-size:18px;line-height:1.55;color:color-mix(in srgb, var(--brand-text) 86%, var(--brand-ink) 14%);}
.article-hero__cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.article-hero__btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;font-weight:850;text-decoration:none;white-space:nowrap;padding:12px 16px;font-size:15px;min-height:44px;}
.article-hero__btn--primary{background:var(--brand-primary);color:var(--brand-bg);border:1px solid color-mix(in srgb, var(--brand-primary) 92%, var(--brand-primary) 8%);}
.article-hero__btn--primary:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 55%, white 45%);outline-offset:2px;}
.article-hero__btn--ghost{background:transparent;color:var(--brand-primary);border:1px solid color-mix(in srgb, var(--brand-primary) 55%, var(--brand-border) 45%);}
.article-hero__btn--ghost:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 45%, white 55%);outline-offset:2px;}
.article-hero__btn:active{transform:translateY(1px);}
.article-hero__btn[aria-disabled="true"],.article-hero__btn:disabled{opacity:.6;cursor:not-allowed;}
::selection{background:color-mix(in srgb, var(--brand-accent) 30%, white 70%);}
@media (max-width: 760px){#article-hero{padding:34px 0 18px;} .article-hero__title{font-size:32px;} .article-hero__dek{font-size:16px;} .article-hero__cta-row{gap:10px;} .article-hero__btn{width:100%;}}
@media (prefers-reduced-motion: reduce){#article-hero::before,#article-hero::after{display:none;}}

/* section:article-content */
/* section:article-content */
#article-content.article-content{background:var(--brand-bg);color:var(--brand-text);font-family:var(--brand-font);}
#article-content .article-content__inner{max-width:860px;margin:0 auto;padding:28px 18px 34px;}
#article-content .article-content__header{padding-bottom:14px;}
#article-content .article-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
#article-content .article-meta__pill{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--brand-border);border-radius:999px;background:var(--brand-surface);font-size:13px;letter-spacing:0.02em;color:var(--brand-ink);}
#article-content .article-meta__sep{color:var(--brand-slate);font-size:14px;}
#article-content .article-meta__text{font-size:14px;color:var(--brand-slate);}
#article-content .article-body{padding-top:6px;}
#article-content .article-title{margin:10px 0 14px;font-family:var(--brand-font);font-size:36px;line-height:1.08;letter-spacing:-0.02em;text-wrap:balance;color:var(--brand-ink);}
#article-content .article-lede{margin:0 0 20px;font-size:18px;line-height:1.6;color:var(--brand-text);}
#article-content h2{margin:26px 0 10px;font-size:22px;line-height:1.25;letter-spacing:-0.01em;color:var(--brand-ink);}
#article-content h3{margin:18px 0 8px;font-size:16px;line-height:1.35;color:var(--brand-primary);}
#article-content p{margin:10px 0;font-size:16px;line-height:1.75;}
#article-content .emphasis{color:var(--brand-secondary);font-weight:700;}
#article-content .article-list{margin:12px 0 18px;padding-left:20px;}
#article-content .article-list li{margin:8px 0;font-size:16px;line-height:1.7;color:var(--brand-text);}
#article-content .article-list strong{color:var(--brand-ink);}
#article-content .article-list--compact{padding-left:20px;}
#article-content .article-steps{margin:10px 0 18px;padding-left:20px;}
#article-content .article-steps li{margin:10px 0;font-size:16px;line-height:1.7;color:var(--brand-text);}
#article-content .article-steps strong{color:var(--brand-ink);}
#article-content .checklist{margin:16px 0 14px;border:1px solid var(--brand-border);border-radius:var(--brand-radius,14px);background:linear-gradient(180deg,var(--brand-surface),var(--brand-bg));padding:10px;}
#article-content .checklist__item{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:12px 10px;border-radius:12px;}
#article-content .checklist__item + .checklist__item{border-top:1px solid var(--brand-border);}
#article-content .checklist__index{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--brand-secondary);color:var(--brand-bg);font-weight:800;letter-spacing:0.01em;}
#article-content .checklist__title{margin:0;font-size:16px;line-height:1.35;color:var(--brand-ink);}
#article-content .checklist__text{margin:6px 0 0;font-size:15px;line-height:1.6;color:var(--brand-text);}
#article-content .callout{margin:18px 0 12px;padding:16px 16px;border-radius:var(--brand-radius,14px);border:1px solid var(--brand-border);background:var(--brand-surface);}
#article-content .callout__title{font-weight:900;color:var(--brand-primary);letter-spacing:0.01em;}
#article-content .callout__text{margin-top:8px;font-size:16px;line-height:1.7;color:var(--brand-text);}
#article-content .article-list--final{margin-top:10px;}
#article-content .article-list--final li{font-size:16px;line-height:1.7;}
#article-content .article-fineprint{margin-top:18px;color:var(--brand-slate);font-size:15px;line-height:1.65;}
#article-content a{color:var(--brand-secondary);text-decoration:underline;text-underline-offset:3px;}
#article-content a:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 55%, white 45%);outline-offset:3px;border-radius:8px;}
#article-content ::selection{background:color-mix(in srgb, var(--brand-accent) 30%, white 70%);color:var(--brand-ink);}
@media (max-width:640px){
  #article-content .article-content__inner{padding:22px 14px 26px;}
  #article-content .article-title{font-size:30px;}
  #article-content .article-lede{font-size:16px;}
}
@media (prefers-reduced-motion:reduce){
  #article-content *{scroll-behavior:auto;}
}

/* section:related-articles */
/* section:related-articles */
#related-articles.related-articles{--ra-primary:var(--brand-primary);--ra-secondary:var(--brand-secondary);--ra-accent:var(--brand-accent);--ra-ink:var(--brand-ink);--ra-slate:var(--brand-slate);--ra-mist:var(--brand-mist);--ra-border:var(--brand-border);--ra-surface:var(--brand-surface);--ra-bg:var(--brand-bg);background:var(--ra-bg);color:var(--ra-ink);padding:56px 0;}
#related-articles .related-articles__inner{max-width:1080px;margin:0 auto;padding:0 20px;}
#related-articles .related-articles__header{display:flex;flex-direction:column;gap:10px;margin-bottom:22px;}
#related-articles .related-articles__title{font-family:var(--brand-font-display, var(--brand-font));font-size:36px;line-height:1.1;letter-spacing:-0.02em;margin:0;color:var(--ra-ink);text-wrap:balance;}
#related-articles .related-articles__lede{margin:0;max-width:68ch;font-size:16px;line-height:1.7;color:var(--ra-slate);}
#related-articles .related-articles__list{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:14px;}
#related-articles .related-articles__item{margin:0;}
#related-articles .related-articles__card{display:flex;align-items:flex-start;gap:14px;border:1px solid var(--ra-border);border-radius:var(--brand-radius-md, 14px);background:var(--ra-surface);padding:16px 16px;position:relative;text-decoration:none;}
#related-articles .related-articles__card:focus-visible{outline:3px solid color-mix(in srgb, var(--ra-accent) 55%, white);outline-offset:3px;}
#related-articles .related-articles__card:hover{border-color:color-mix(in srgb, var(--ra-accent) 45%, var(--ra-border));}
#related-articles .related-articles__meta{display:inline-block;font-size:12px;line-height:1.2;color:color-mix(in srgb, var(--ra-secondary) 70%, var(--ra-ink));text-transform:uppercase;letter-spacing:0.08em;font-weight:700;margin-top:2px;}
#related-articles .related-articles__card-title{font-family:var(--brand-font);font-size:18px;line-height:1.35;color:var(--ra-ink);font-weight:750;letter-spacing:-0.01em;}
#related-articles .related-articles__arrow{margin-left:auto;font-size:20px;color:var(--ra-accent);padding-top:2px;}
#related-articles .related-articles__footer{margin-top:18px;display:flex;justify-content:flex-start;}
#related-articles .related-articles__backlink{display:inline-flex;align-items:center;gap:10px;color:var(--ra-secondary);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:700;}
#related-articles .related-articles__backlink:focus-visible{outline:3px solid color-mix(in srgb, var(--ra-accent) 55%, white);outline-offset:3px;border-radius:10px;}
#related-articles .related-articles__backlink:hover{color:color-mix(in srgb, var(--ra-accent) 40%, var(--ra-secondary));}
#related-articles *::selection{background:color-mix(in srgb, var(--ra-accent) 25%, white);}
@media (min-width: 760px){
  #related-articles .related-articles__list{grid-template-columns:repeat(2, 1fr);gap:16px;}
  #related-articles .related-articles__card{padding:18px 18px;}
}
@media (min-width: 1020px){
  #related-articles .related-articles__title{font-size:44px;}
  #related-articles .related-articles__list{grid-template-columns:repeat(3, 1fr);}
}
@media (prefers-reduced-motion: reduce){
  #related-articles .related-articles__card{transition:none;}
}

/* section:article-hero */
/* section:article-hero */
#article-hero{--a-ink:var(--brand-ink);--a-secondary:var(--brand-secondary);--a-primary:var(--brand-primary);--a-accent:var(--brand-accent);--a-mist:var(--brand-mist);--a-border:var(--brand-border);color:var(--brand-text);background:linear-gradient(180deg,var(--brand-bg) 0%,var(--brand-surface) 100%);border-bottom:1px solid var(--brand-border);}
#article-hero .article-hero__inner{max-width:1040px;margin:0 auto;padding:56px 20px 34px;position:relative;}
#article-hero .article-hero__inner:before{content:"";position:absolute;left:-120px;top:10px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(242,107,43,.22) 0%,rgba(242,107,43,0) 60%);filter:saturate(1.05);pointer-events:none;}
#article-hero .article-hero__inner:after{content:"";position:absolute;right:-120px;bottom:-70px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(15,76,93,.16) 0%,rgba(15,76,93,0) 62%);pointer-events:none;}
#article-hero .article-hero__eyebrow{display:inline-block;position:relative;z-index:1;font-family:var(--brand-font);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-secondary);background:rgba(15,76,93,.06);border:1px solid rgba(15,76,93,.18);padding:8px 12px;border-radius:999px;}
#article-hero .article-hero__title{position:relative;z-index:1;margin:16px 0 10px;font-family:var(--brand-font-display, var(--brand-font));font-weight:800;letter-spacing:-.02em;line-height:1.06;font-size:44px;color:var(--brand-ink);text-wrap:balance;}
#article-hero .article-hero__lede{position:relative;z-index:1;max-width:780px;margin:0 0 22px;font-size:18px;line-height:1.6;color:var(--brand-text);}
#article-hero .article-hero__meta{position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 26px;}
#article-hero .meta-pill{display:flex;align-items:baseline;gap:8px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--brand-border);background:rgba(255,255,255,.7);}
#article-hero .meta-pill__label{font-size:12px;color:var(--brand-slate);text-transform:uppercase;letter-spacing:.08em;}
#article-hero .meta-pill__value{font-size:14px;font-weight:700;color:var(--brand-ink);font-variant-numeric:tabular-nums;}
#article-hero .article-hero__actions{position:relative;z-index:1;display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:8px 0 18px;}
#article-hero .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-radius:var(--radius-md);font-weight:800;font-size:14px;letter-spacing:.01em;text-decoration:none;border:1px solid transparent;min-height:44px;}
#article-hero .btn--primary{background:var(--brand-primary);color:var(--brand-bg);border-color:rgba(0,0,0,0);box-shadow:0 10px 24px rgba(11,42,61,.18);}
#article-hero .btn--ghost{background:rgba(246,247,248,.7);color:var(--brand-primary);border-color:rgba(11,42,61,.22);}
#article-hero .btn:focus-visible{outline:3px solid rgba(242,107,43,.35);outline-offset:2px;}
#article-hero .btn--primary:hover{background:#0a273b;}
#article-hero .btn--ghost:hover{background:var(--brand-surface);border-color:rgba(11,42,61,.32);}
#article-hero .article-hero__separator{position:relative;z-index:1;height:1px;background:linear-gradient(90deg,rgba(227,230,234,0) 0%,rgba(227,230,234,1) 15%,rgba(227,230,234,1) 85%,rgba(227,230,234,0) 100%);margin:14px 0 14px;}
#article-hero .article-hero__note{position:relative;z-index:1;margin:0;font-size:14px;line-height:1.6;color:var(--brand-slate);max-width:860px;}
#article-hero ::selection{background:rgba(242,107,43,.28);}
@media (max-width: 720px){
  #article-hero .article-hero__inner{padding:40px 16px 26px;}
  #article-hero .article-hero__inner:before,#article-hero .article-hero__inner:after{display:none;}
  #article-hero .article-hero__title{font-size:34px;}
  #article-hero .article-hero__lede{font-size:16px;}
  #article-hero .meta-pill{width:fit-content;}
}
@media (prefers-reduced-motion: reduce){
  #article-hero .btn{transition:none;}
}

/* section:article-content */
/* section:article-content */
#article-content{--pad:clamp(16px,3vw,28px);background:var(--brand-bg);color:var(--brand-text);font-family:var(--brand-font);padding:0;margin:0}
#article-content .article-body{max-width:980px;margin:0 auto;padding:48px var(--pad) 56px}
#article-content .article-lede{margin-bottom:26px}
#article-content .article-kicker{font:600 12px/1.2 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-slate);margin:0 0 10px}
#article-content .article-title{margin:0 0 12px;font-family:var(--brand-font-display);font-weight:760;font-size:clamp(26px,3.7vw,44px);letter-spacing:-0.02em;line-height:1.07;text-wrap:balance}
#article-content .article-subtitle{margin:0;max-width:70ch;font-size:16px;line-height:1.7;color:var(--brand-text)}
#article-content .section-block{margin:0 0 22px;padding:18px 0 0}
#article-content .section-block--callout{padding:18px 18px 18px;border-radius:var(--radius-lg,20px);background:color-mix(in srgb, var(--brand-secondary) 10%, var(--brand-bg));border:1px solid color-mix(in srgb, var(--brand-border) 70%, var(--brand-secondary));box-shadow:0 10px 24px color-mix(in srgb, var(--brand-secondary) 18%, transparent)}
#article-content .section-title{margin:0 0 10px;font-size:18px;font-weight:720;letter-spacing:-0.01em}
#article-content .section-text{margin:0 0 12px;font-size:16px;line-height:1.8;color:var(--brand-text)}
#article-content .list-check{list-style:none;margin:14px 0 14px;padding:0}
#article-content .list-check li{display:flex;gap:10px;align-items:flex-start;margin:10px 0;font-size:16px;line-height:1.6}
#article-content .list-marker{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:8px;background:color-mix(in srgb, var(--brand-accent) 12%, var(--brand-bg));color:var(--brand-primary);border:1px solid color-mix(in srgb, var(--brand-accent) 40%, var(--brand-border));font-weight:800;flex:0 0 auto;margin-top:1px}
#article-content .list-check--alt .list-marker{background:color-mix(in srgb, var(--brand-secondary) 12%, var(--brand-bg));border-color:color-mix(in srgb, var(--brand-secondary) 45%, var(--brand-border))}
#article-content .comparison{border:1px solid var(--brand-border);border-radius:var(--radius-lg,20px);overflow:hidden;background:var(--brand-surface)}
#article-content .comparison-row{display:grid;grid-template-columns:220px 1fr 1fr;gap:0;border-top:1px solid var(--brand-border)}
#article-content .comparison-row:first-child{border-top:none}
#article-content .comparison-head{padding:14px 16px;background:color-mix(in srgb, var(--brand-primary) 5%, var(--brand-surface));font-weight:760}
#article-content .comparison-cell{padding:14px 16px;line-height:1.7;font-size:15px}
#article-content .callout-title{margin:0 0 10px;font-size:18px;font-weight:820}
#article-content .callout-text{margin:0;font-size:16px;line-height:1.8}
#article-content .related{margin-top:28px;padding-top:14px;border-top:1px solid var(--brand-border)}
#article-content .related-title{margin:0 0 12px;font-size:16px;font-weight:760}
#article-content .related-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
#article-content .related-link{display:inline-flex;align-items:center;gap:10px;color:var(--brand-primary);text-decoration:none;border:1px solid var(--brand-border);background:var(--brand-surface);padding:12px 14px;border-radius:var(--radius-md,14px);font-weight:650;line-height:1.3}
#article-content .related-link:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 45%, transparent);outline-offset:2px}
#article-content .related-link:hover{background:color-mix(in srgb, var(--brand-secondary) 6%, var(--brand-surface));border-color:color-mix(in srgb, var(--brand-secondary) 35%, var(--brand-border))}
#article-content .article-foot{margin-top:18px;padding-top:16px;border-top:1px dashed color-mix(in srgb, var(--brand-border) 75%, var(--brand-text));color:var(--brand-text)}
#article-content .article-foot-text{margin:0 0 10px;font-size:16px;line-height:1.7}
#article-content .article-foot-meta{margin:0 0 10px;color:color-mix(in srgb, var(--brand-text) 80%, var(--brand-slate));font-size:14px;line-height:1.6}
#article-content .article-foot-links{margin:0;font-size:15px;line-height:1.6}
#article-content .inline-link{color:var(--brand-secondary);text-decoration:underline;text-underline-offset:3px}
#article-content .inline-link:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 45%, transparent);outline-offset:2px;border-radius:8px}
::selection{background:color-mix(in srgb, var(--brand-accent) 30%, white);color:var(--brand-ink)}
@media (max-width:860px){#article-content .article-body{padding-top:32px}#article-content .comparison-row{grid-template-columns:1fr}.comparison-head{background:color-mix(in srgb, var(--brand-primary) 4%, var(--brand-surface))}}
@media (prefers-reduced-motion:reduce){#article-content *{scroll-behavior:auto}}

/* section:related-articles */
/* section:related-articles */
#related-articles{background:var(--brand-bg);color:var(--brand-text);padding:56px 16px;}
#related-articles .container{max-width:980px;margin:0 auto;}
#related-articles .related-header{margin-bottom:22px;}
#related-articles .kicker{margin:0 0 10px 0;font:600 12px/1.2 var(--brand-font);letter-spacing:.12em;text-transform:uppercase;color:var(--brand-secondary);}
#related-articles .related-title{margin:0 0 10px 0;font:700 34px/1.12 var(--brand-font-display);letter-spacing:-0.02em;text-wrap:balance;}
#related-articles .related-subtitle{margin:0;max-width:74ch;color:var(--brand-slate);font:500 16px/1.65 var(--brand-font);}
#related-articles .related-list{display:grid;grid-template-columns:1fr;gap:14px;margin-top:22px;}
#related-articles .related-item{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--brand-radius-md,14px);padding:18px 16px;}
#related-articles .related-item-title{margin:0 0 8px 0;font:700 18px/1.35 var(--brand-font);}
#related-articles .related-link{color:var(--brand-primary);text-decoration:none;display:inline-block;}
#related-articles .related-link:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 55%, white);outline-offset:3px;border-radius:8px;}
#related-articles .related-item-text{margin:0;color:var(--brand-slate);font:500 14.5px/1.7 var(--brand-font);}
#related-articles .related-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px;}
#related-articles .btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:12px;font:700 14.5px/1 var(--brand-font);text-decoration:none;min-height:44px;}
#related-articles .btn-primary{background:var(--brand-primary);color:var(--brand-bg);border:1px solid color-mix(in srgb, var(--brand-primary) 82%, black);}
#related-articles .btn-primary:hover{background:color-mix(in srgb, var(--brand-primary) 86%, black 14%);}
#related-articles .btn-ghost{background:transparent;color:var(--brand-primary);border:1px solid var(--brand-border);}
#related-articles .btn-ghost:hover{border-color:color-mix(in srgb, var(--brand-accent) 35%, var(--brand-border));background:color-mix(in srgb, var(--brand-surface) 70%, white);}
#related-articles .btn:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-accent) 55%, white);outline-offset:3px;}
#related-articles ::selection{background:color-mix(in srgb, var(--brand-accent) 28%, white);}
@media (min-width: 740px){
  #related-articles{padding:72px 24px;}
  #related-articles .related-list{grid-template-columns:1fr 1fr;}
}
@media (min-width: 980px){
  #related-articles .related-list{grid-template-columns:1fr 1fr 1fr;}
}
@media (prefers-reduced-motion: reduce){
  #related-articles .btn-primary:hover,#related-articles .btn-ghost:hover{transition:none;}
}

.related-articles{border-radius:0;}

/* Design-system base */
.policy-page{background:var(--brand-bg);color:var(--brand-text);font-family:var(--brand-font);line-height:1.55;}
.policy-wrapper{max-width:980px;margin:0 auto;padding:28px 18px 40px;}
.policy-header{padding:18px 16px;border:1px solid var(--brand-border);border-radius:var(--radius-lg);background:var(--brand-surface);}
.policy-title{margin:0 0 10px;font-size:28px;letter-spacing:-0.3px;color:var(--brand-ink);} 
.policy-lead{margin:0;color:var(--brand-slate);font-size:16px;}
.policy-section{margin-top:18px;padding:18px 16px;border:1px solid var(--brand-border);border-radius:var(--radius-lg);background:#fff;}
.policy-section-title{margin:0 0 10px;font-size:18px;color:var(--brand-primary);} 
.policy-paragraph{margin:0 0 10px;color:var(--brand-text);font-size:15px;}
.policy-paragraph strong{color:var(--brand-primary);} 
.policy-list{margin:8px 0 0;padding-left:18px;color:var(--brand-text);}
.policy-list li{margin:6px 0;font-size:15px;}
.policy-link{color:var(--brand-secondary);text-decoration:underline;}
.policy-link:focus{outline:2px solid var(--brand-accent);outline-offset:2px;border-radius:6px;}
.policy-small{font-size:13px;color:var(--brand-slate);}
.policy-footer{margin-top:18px;}
.policy-footer-box{padding:16px;border:1px solid var(--brand-border);border-radius:var(--radius-lg);background:var(--brand-surface);}
.policy-footer-text{margin:0 0 10px;color:var(--brand-ink);font-size:14px;}
.policy-footer-text:last-child{margin-bottom:0;}
.policy-page{background:var(--brand-bg);color:var(--brand-text);font-family:var(--brand-font);line-height:1.55;}
.policy-wrapper{max-width:980px;margin:0 auto;padding:24px 18px 40px 18px;}
.policy-heading{font-size:28px;line-height:1.2;margin:0 0 10px 0;color:var(--brand-primary);letter-spacing:-0.2px;}
.policy-lead{margin:0 0 18px 0;color:var(--brand-ink);font-size:15.5px;}
.policy-section{margin:18px 0;padding:16px 16px;border:1px solid var(--brand-border);border-radius:14px;background:var(--brand-surface);}
.policy-subheading{margin:0 0 10px 0;font-size:18px;color:var(--brand-secondary);}
.policy-text{margin:0 0 10px 0;font-size:15px;color:var(--brand-text);}
.policy-list{margin:0;padding-left:20px;}
.policy-list li{margin:8px 0;font-size:15px;color:var(--brand-text);}
.policy-link{color:var(--brand-secondary);text-decoration:underline;}
.policy-link:hover{color:var(--brand-accent);}
.policy-footer{background:linear-gradient(180deg, rgba(15,76,93,0.06), rgba(15,76,93,0.02));}
.policy-footer .policy-subheading{color:var(--brand-primary);} 
@media (max-width:520px){.policy-wrapper{padding:18px 12px 30px 12px;}.policy-heading{font-size:24px;}}

/* Design-system based, no external dependencies */
:root{
  --brand-primary:#0B2A3D;
  --brand-secondary:#0F4C5D;
  --brand-accent:#F26B2B;
  --brand-ink:#0A1F2B;
  --brand-slate:#4B5A63;
  --brand-mist:#B9C3CC;
  --brand-border:#E3E6EA;
  --brand-surface:#F6F7F8;
  --brand-bg:#FFFFFF;
  --brand-text:#1F2933;
  --brand-font: Charter, 'Sitka Text', Cambria, Georgia, serif;
  --brand-font-display: Charter, 'Bitstream Charter', 'Sitka Text', Cambria, Georgia, serif;
}

.policy-page{background:var(--brand-bg);color:var(--brand-text);font-family:var(--brand-font);line-height:1.55;}
.policy-wrap{max-width:980px;margin:0 auto;padding:24px 18px 36px;}
.policy-header{padding:18px 18px 14px;border:1px solid var(--brand-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--brand-surface), var(--brand-bg));}
.policy-title{margin:0 0 8px;font-family:var(--brand-font-display);font-weight:700;font-size:28px;letter-spacing:-0.02em;color:var(--brand-ink);}
.policy-lead{margin:0 0 10px;color:var(--brand-slate);font-size:15.5px;}
.policy-meta{margin:0;color:var(--brand-slate);font-size:13.5px;}
.policy-date{font-weight:700;color:var(--brand-ink);}

.policy-section{margin-top:18px;padding:18px;border:1px solid var(--brand-border);border-radius:var(--radius-lg);background:var(--brand-bg);}
.policy-h2{margin:0 0 10px;font-size:18px;color:var(--brand-primary);font-weight:800;}
.policy-p{margin:10px 0;color:var(--brand-text);}
.policy-list{margin:10px 0 0;padding-left:18px;color:var(--brand-text);} 
.policy-list li{margin:8px 0;}
.policy-link{color:var(--brand-secondary);text-decoration:underline;text-underline-offset:3px;}
.policy-link:hover{color:var(--brand-primary;)}

.policy-callout{margin-top:10px;padding:14px;border-radius:var(--radius-md);border:1px solid var(--brand-border);background:var(--brand-surface);} 
.policy-callout-title{margin:0 0 8px;color:var(--brand-primary);font-weight:800;}

.policy-footer{margin-top:20px;padding:18px;border:1px solid var(--brand-border);border-radius:var(--radius-lg);background:var(--brand-primary);color:#fff;}
.policy-footer-title{margin:0 0 10px;font-size:16px;font-weight:900;color:#fff;}
.policy-footer .policy-p{color:rgba(255,255,255,0.9);} 
.policy-footer-small{margin-top:12px;font-size:13px;color:rgba(255,255,255,0.85);} 

@media (max-width:600px){
  .policy-title{font-size:24px;}
  .policy-wrap{padding:18px 14px 28px;}
  .policy-section{padding:14px;}
  .policy-header{padding:14px;}
}

/* Design system (no external libs). */
.policy-page{background:var(--brand-bg);color:var(--brand-text);font-family:var(--brand-font);line-height:1.45;}
.policy-wrap{max-width:920px;margin:0 auto;padding:24px 16px 36px 16px;}
.policy-header{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--radius-lg);padding:20px 18px;}
.policy-badge{width:44px;height:44px;border-radius:50%;background:color-mix(in srgb,var(--brand-secondary) 18%, var(--brand-surface));border:1px solid color-mix(in srgb,var(--brand-secondary) 35%, var(--brand-border));display:flex;align-items:center;justify-content:center;color:var(--brand-secondary);font-weight:700;font-size:20px;}
.policy-title{margin:10px 0 6px 0;font-family:var(--brand-font-display);font-weight:800;letter-spacing:-0.02em;font-size:34px;}
.policy-lead{margin:0;color:var(--brand-slate);font-size:16px;}
.policy-section{margin-top:18px;background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--radius-md);padding:16px 16px;}
.policy-subtitle{margin:0 0 8px 0;font-size:18px;font-weight:800;color:var(--brand-ink);}
.policy-text{margin:10px 0 0 0;color:var(--brand-slate);font-size:15px;}
.policy-strong{color:var(--brand-ink);}
.policy-label{display:inline-block;min-width:78px;color:var(--brand-ink);font-weight:700;}
.policy-link{color:var(--brand-primary);text-decoration:underline; text-underline-offset:3px;}
.policy-link:hover{color:var(--brand-secondary);}
.policy-footer{margin-top:18px;padding:0 2px;}
.policy-divider{height:1px;background:var(--brand-border);margin:0 0 12px 0;}
.policy-footnote{margin:10px 0 0 0;color:var(--brand-slate);font-size:13px;}
.policy-offscreen-form{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;}
@media (max-width:480px){.policy-title{font-size:28px;}.policy-wrap{padding:18px 12px 28px 12px;}.policy-header{padding:16px 14px;}}
