:root { --ink:#183d31;--ink-deep:#112b23;--lime:#d8f772;--lime-light:#f0f7d8;--paper:#f5f6f2;--white:#fff;--muted:#626e64;--line:#dce2d9;--danger:#9c352d;--radius:24px;--ease:cubic-bezier(.23,1,.32,1);--container:1200px }
* { box-sizing:border-box }
html { scroll-padding-top:110px }
body { margin:0;background:var(--white);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65 }
button, input, select { font:inherit }
button, a, input { -webkit-tap-highlight-color:transparent }
button, a { touch-action:manipulation }
a { color:inherit;text-decoration:none }
p { margin:0 0 1.25rem }
h1, h2, h3 { line-height:1.12;margin:0;font-weight:700;letter-spacing:-.055em }
h2 { font-size:clamp(32px,3.5vw,48px) }
h3 { font-size:23px;letter-spacing:-.035em }
svg { width:24px;height:24px;flex-shrink:0 }
button { cursor:pointer }
button:disabled { cursor:not-allowed;opacity:.6 }
a, button { outline-offset:5px }
:focus-visible { outline:3px solid #5b751f }
button { border:0 }
input:focus-visible { outline:3px solid #5b751f;outline-offset:4px }
::selection { background:var(--lime);color:var(--ink) }
.container { max-width:var(--container);padding:0 28px;margin:auto }
.site-header { background:white;border-bottom:1px solid var(--line) }
.header-inner { height:96px;display:flex;align-items:center;gap:34px }
.logo { display:inline-flex;align-items:center;gap:8px;flex-shrink:0;font-size:28px;font-weight:800;letter-spacing:-1.4px;line-height:1 }
.logo>svg { width:39px;height:39px }
.logo-light { font-weight:500 }
.logo small { display:block;font-size:8px;letter-spacing:3px;font-weight:700;margin-top:7px }
.desktop-nav { display:flex;gap:26px;align-items:center;margin-left:auto }
.desktop-nav a { font-size:14px;font-weight:650;padding:14px 0;position:relative;white-space:nowrap }
.desktop-nav a:hover, .desktop-nav a[aria-current] { text-decoration:underline;text-underline-offset:8px }
.button { display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:15px 22px;min-height:52px;border-radius:11px;font-weight:700;font-size:14px;line-height:1.45;transition:background 180ms var(--ease),transform 180ms var(--ease) }
.button:hover { transform:translateY(-2px) }
.button svg { width:20px;height:20px }
.button-dark { background:var(--ink);color:white }
.button-dark:hover { background:var(--ink-deep) }
.button-lime { background:var(--lime);color:var(--ink-deep) }
.button-lime:hover { background:#cbea5b }
.button-outline { border:1px solid var(--line);background:transparent }
.menu-toggle { display:none;background:var(--paper);border-radius:10px;width:48px;height:48px;align-items:center;justify-content:center }
.mobile-menu { padding:16px 24px;border-top:1px solid var(--line) }
.mobile-menu a { display:block;padding:12px }
.hero { background:var(--paper);overflow:hidden }
.hero-grid { display:grid;grid-template-columns:1.15fr .85fr;gap:80px;padding-top:64px;padding-bottom:55px;align-items:start }
.hero-eyebrow { display:flex;align-items:center;gap:9px;font-weight:700;letter-spacing:.12em;font-size:11px;margin-bottom:25px }
.tiny-star svg { height:18px;width:18px;display:block }
.hero h1 { font-size:clamp(52px,5.4vw,76px);line-height:1.05;letter-spacing:-.064em;font-weight:750 }
.highlight { position:relative;display:inline-block;z-index:0 }
.highlight>svg { position:absolute;left:0;bottom:-10px;width:100%;height:16px;stroke:#b2d453;stroke-width:9;fill:none;z-index:-1 }
.hero-description { margin:27px 0 19px;max-width:490px;font-size:16px;color:#536054;line-height:1.75 }
.hero-brand-art { height:192px;position:relative;max-width:490px;margin-top:24px;overflow:hidden;border-radius:18px;background:var(--ink) }
.nova-mark { position:absolute;right:18px;top:-20px;color:var(--lime);transform:rotate(-10deg) }
.nova-mark svg { width:225px;height:225px }
.orbit { position:absolute;border:1px solid #8caa8299;border-radius:50%;width:270px;height:125px;right:-9px;top:30px;transform:rotate(-32deg) }
.orbit-two { transform:rotate(35deg);right:-30px }
.art-caption { color:white;position:absolute;left:24px;bottom:21px;z-index:1 }
.art-caption span { color:#bfcca9;font-size:10px;letter-spacing:.17em }
.art-caption p { font-size:21px;letter-spacing:-.03em;line-height:1.3;margin:10px 0 0 }
.calculator { background:white;border:1px solid #e5e9df;border-radius:var(--radius);padding:28px;box-shadow:0 18px 45px #233a2210;position:relative }
.calc-heading { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px }
.eyebrow { font-size:11px;letter-spacing:.12em;font-weight:800;display:block }
.mini-badge { font-size:10px;font-weight:700;color:#52643d;border:1px solid var(--line);padding:3px 8px;border-radius:5px }
.calculator h2 { font-size:29px;letter-spacing:-.05em;margin-bottom:23px }
input[type=range] { width:100%;height:28px;margin:11px 0 0;appearance:none;background:transparent;cursor:pointer }
input[type=range]::-webkit-slider-runnable-track { height:6px;border-radius:8px;background:linear-gradient(to right,var(--ink) 0%,var(--ink) var(--range-percent,50%),#e4e9dd var(--range-percent,50%)) }
input[type=range]::-webkit-slider-thumb { appearance:none;height:22px;width:22px;border:5px solid var(--ink);background:var(--lime);border-radius:50%;margin-top:-8px;box-shadow:0 0 0 4px white }
input[type=range]::-moz-range-track { height:6px;background:#e4e9dd }
input[type=range]::-moz-range-progress { background:var(--ink);height:6px }
input[type=range]::-moz-range-thumb { background:var(--lime);border:5px solid var(--ink);height:13px;width:13px;border-radius:50% }
.calc-summary { background:var(--paper);padding:16px;border-radius:10px }
.calc-summary>div { display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px }
.calc-summary strong { font-size:16px;font-variant-numeric:tabular-nums }
.calc-summary small { font-size:9px;font-weight:500 }
.calc-summary .calc-total { padding:13px 0 0;margin-top:10px;border-top:1px solid var(--line) }
.calc-total>span { font-weight:600 }
.calc-total>span small { display:block;color:var(--muted);font-size:10px }
.calc-total strong { font-size:21px;letter-spacing:-.04em }
.calc-summary .payment-mini { justify-content:flex-start;margin-top:13px;gap:6px;color:var(--muted);font-size:11px }
.payment-mini svg { width:15px;height:15px }
.calc-button { width:100%;margin-top:20px;justify-content:space-between;font-size:14px;min-height:51px }
.calc-notice { font-size:10px;line-height:1.7;text-align:center;color:var(--muted);margin:12px 5px 0 }
.calc-notice a { text-decoration:underline;text-underline-offset:3px }
.field-error { font-size:12px;color:var(--danger);margin:5px 0 }
.trust-strip { border-bottom:1px solid var(--line);background:white }
.trust-inner { min-height:102px;display:flex;align-items:center;gap:35px }
.trust-inner p { display:flex;align-items:center;gap:12px;margin:0;font-size:13px;flex:1 }
.trust-inner a { display:flex;align-items:center;gap:12px;font-size:12px;text-decoration:underline;text-underline-offset:4px }
.trust-inner>span { border-left:1px solid var(--line);padding-left:30px;font-size:14px;font-weight:800;letter-spacing:.06em }
.trust-inner>span small { display:block;letter-spacing:0;font-size:10px;color:var(--muted);font-weight:400;margin-top:2px }
.section { padding-top:88px;padding-bottom:88px }
.section-head { display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px }
.section-head .eyebrow { margin-bottom:15px }
.text-link { display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:5px;min-height:44px }
.text-link svg { width:19px;height:19px }
.steps { display:grid;grid-template-columns:repeat(3,1fr);gap:28px }
.steps article { position:relative;border-top:1px solid var(--line);padding-top:28px }
.step-number { position:absolute;right:0;top:25px;font-size:13px;color:var(--muted) }
.step-icon { width:53px;height:53px;border-radius:13px;background:var(--lime-light);display:flex;align-items:center;justify-content:center;margin-bottom:22px }
.steps h3 { margin-bottom:12px }
.steps p { font-size:14px;color:var(--muted);max-width:320px;margin:0 }
.site-footer { background:var(--ink-deep);color:#e4eddf;padding:62px 0 25px }
.site-footer .logo { color:white }
.site-footer .logo>svg { color:var(--lime) }
.footer-top { display:flex;justify-content:space-between;gap:35px;padding-bottom:44px;border-bottom:1px solid #40584b }
.footer-top p { font-size:13px;line-height:1.65;color:#aebeb0;margin:22px 0 0 }
.footer-contact { display:flex;flex-direction:column;text-align:right;gap:8px }
.footer-contact>span { font-size:12px;color:#aebeb0 }
.footer-contact>a:nth-child(2) { font-size:29px;letter-spacing:-.04em }
.footer-contact>a:nth-child(3) { font-size:13px }
.footer-links { display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding:37px 0 44px }
.footer-links h3 { font-size:13px;letter-spacing:0;margin-bottom:16px }
.footer-links a { display:block;color:#aebeb0;font-size:12px;padding:5px 0 }
.footer-links a:hover { color:var(--lime) }
.footer-legal { font-size:10px;line-height:1.8;color:#aebeb0;max-width:1020px }
.footer-legal p { margin-bottom:10px }
.footer-bottom { border-top:1px solid #40584b;display:flex;justify-content:space-between;gap:20px;font-size:10px;margin-top:26px;padding-top:24px;color:#aebeb0 }
.footer-bottom>div { display:flex;gap:22px }
.mobile-dock { display:none }
.skip-link { position:absolute;top:-80px;left:16px;padding:12px 24px;background:var(--lime);z-index:99 }
.skip-link:focus { top:10px }
dialog { border:1px solid var(--line);border-radius:24px;max-width:640px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;padding:30px;color:var(--ink) }
dialog::backdrop { background:#102a22b3;backdrop-filter:blur(4px) }
.dialog-header { display:flex;align-items:center;justify-content:space-between;gap:15px }
.dialog-close { width:44px;height:44px;background:var(--paper);font-size:28px;border-radius:50%;color:var(--ink) }
dialog h2 { font-size:35px;margin:18px 0 }
.notice { background:var(--lime-light);padding:16px 20px;border-radius:10px;font-size:13px;line-height:1.6 }
.small { font-size:12px;color:var(--muted);line-height:1.8 }
.dialog-actions { display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 }
.breakdown-list { margin:20px 0 }
.breakdown-list>div { display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:10px 0;font-size:14px }
.breakdown-list dt, .breakdown-list dd { margin:0 }
.breakdown-list dd { font-weight:700 }
.breakdown-list .grand-total { font-size:20px }
.table-wrap { overflow-x:auto }
table { width:100%;border-collapse:collapse;font-size:14px }
th, td { text-align:left;border-bottom:1px solid var(--line);padding:12px 8px }
th { background:var(--paper);font-size:12px }
td:last-child, th:last-child { text-align:right }
.print-meta { font-size:11px;color:var(--muted);margin-top:15px }
@media(min-width:1500px) {
:root { --container:1280px }
.hero-grid { gap:100px }
.hero h1 { font-size:84px }
}
@media(max-width:1100px) {
.desktop-nav { gap:16px }
.header-inner { gap:22px }
.header-cta { font-size:12px;padding:14px }
.hero-grid { gap:40px }
.hero h1 { font-size:62px }
.calculator { padding:23px }
.logo { font-size:25px }
.trust-inner { gap:20px }
.trust-inner>span { padding-left:20px }
}
@media(max-width:900px) {
.desktop-nav { display:none }
.header-cta { margin-left:auto }
.menu-toggle { display:flex }
.hero-grid { gap:27px }
.hero h1 { font-size:53px }
.hero-description { font-size:14px }
.hero-brand-art { height:195px }
.art-caption p { font-size:18px }
.nova-mark { right:-70px;top:0 }
.trust-inner>span { display:none }
.calculator { padding:21px }
.calculator h2 { font-size:26px }
.steps { gap:20px }
.steps h3 { font-size:20px }
}
@media(max-width:700px) {
.container { padding-left:22px;padding-right:22px }
.header-inner { height:79px;gap:12px }
.logo { font-size:25px }
.logo>svg { height:32px;width:32px }
.header-cta { font-size:10px;min-height:43px;padding:10px 12px;gap:6px }
.header-cta svg { display:none }
.menu-toggle { height:43px;width:43px;flex-shrink:0 }
.hero-grid { grid-template-columns:1fr;padding-top:37px;padding-bottom:36px;gap:31px }
.hero-eyebrow { font-size:9px;margin-bottom:20px }
.hero h1 { font-size:clamp(45px,10.5vw,64px) }
.hero-description { font-size:15px;max-width:480px;margin-top:24px }
.hero-brand-art { display:none }
.calculator { padding:25px }
.calculator h2 { font-size:29px }
.calc-notice { font-size:11px }
.trust-inner { min-height:auto;display:block;padding-top:23px;padding-bottom:22px }
.trust-inner p { font-size:12px;margin-bottom:12px;gap:8px }
.trust-inner a { margin-left:32px }
.section { padding-top:56px;padding-bottom:56px }
.section-head { align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:29px }
h2 { font-size:34px }
.steps { grid-template-columns:1fr;gap:27px }
.steps article { padding-left:72px;padding-top:23px;min-height:150px }
.steps .step-icon { position:absolute;left:0;top:25px }
.steps h3 { font-size:22px;padding-right:25px }
.steps p { font-size:14px }
.step-number { top:24px;font-size:11px }
.footer-top { flex-direction:column }
.footer-contact { text-align:left }
.footer-links { grid-template-columns:1fr 1fr;gap:28px 18px }
.site-footer { padding-top:42px;padding-bottom:100px }
.footer-bottom { flex-wrap:wrap;line-height:1.7 }
.footer-bottom>div { flex-wrap:wrap;gap:8px 18px }
.footer-bottom>span:last-child { display:none }
.footer-legal { font-size:11px }
.footer-links a { font-size:12px;padding:6px 0 }
.mobile-dock { display:flex;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;padding:8px 15px max(8px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);z-index:10;box-shadow:0 -4px 20px #112b2308 }
.mobile-dock a { display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;font-size:10px;font-weight:700;min-height:47px;min-width:80px }
.mobile-dock svg { height:20px;width:20px }
.mobile-dock a:first-child { background:var(--lime-light);border-radius:10px }
.dialog-actions .button { width:100% }
dialog { padding:22px }
dialog h2 { font-size:30px }
.grand-total { font-size:18px!important }
.small { font-size:11px }
}
@media(prefers-reduced-motion:reduce) {
*, *::before, *::after { scroll-behavior:auto!important;animation:none!important;transition:none!important }
.button:hover { transform:none }
}
@media(forced-colors:active) {
.button { border:1px solid ButtonText }
.nova-mark { color:CanvasText }
}
@media print {
body:has(dialog[open])>*:not(dialog) { display:none!important }
dialog[open] { display:block;position:static;max-width:none;width:100%;max-height:none;border:0;overflow:visible }
dialog::backdrop, .dialog-actions, .dialog-close { display:none!important }
body { color:#000;background:#fff }
dialog { color:#000 }
.notice { border:1px solid #555 }
}
[hidden] { display:none!important }
.clarity-section { background:#eff3e9;padding:70px 0 }
.clarity-grid { display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center }
.clarity-grid h2 { margin:18px 0 24px }
.clarity-grid>div>p { font-size:16px;color:var(--muted);line-height:1.7 }
.clarity-grid .button { margin-top:8px;border-color:#a7b59c }
.cost-visual { background:white;border:1px solid var(--line);border-radius:19px;padding:28px 30px;transform:rotate(1deg) }
.cost-label { display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.1em;font-weight:700 }
.cost-label>span:last-child { letter-spacing:0;border:1px solid var(--line);padding:4px 8px;border-radius:5px }
.cost-amount { display:flex;align-items:center;justify-content:space-between;margin:22px 0 16px;font-size:14px }
.cost-amount strong { font-size:42px;font-weight:700;line-height:1;letter-spacing:-.06em }
.cost-amount small { font-size:12px;letter-spacing:0;margin-left:6px }
.cost-bar { height:23px;display:flex;gap:4px;overflow:hidden;border-radius:5px }
.cost-bar span:nth-child(1) { width:89.6%;background:var(--ink) }
.cost-bar span:nth-child(2) { width:8.96%;background:#9abc58 }
.cost-bar span:nth-child(3) { width:1.44%;min-width:8px;background:#dce7c8 }
.cost-legend { display:flex;justify-content:space-between;gap:12px;margin-top:18px;font-size:10px }
.cost-legend span { position:relative;padding-left:13px;line-height:1.5;color:var(--muted) }
.cost-legend i { width:6px;height:6px;position:absolute;background:var(--ink);border-radius:50%;left:0;top:5px }
.cost-legend span:nth-child(2) i { background:#9abc58 }
.cost-legend span:nth-child(3) i { background:#dce7c8 }
.cost-legend b { display:block;font-weight:700;color:var(--ink);font-size:13px;margin-top:3px }
.cost-total { display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:22px;padding-top:15px;align-items:center;font-size:13px;font-weight:650 }
.cost-total strong { font-size:27px;letter-spacing:-.05em }
.cost-total small { font-size:11px;letter-spacing:0 }
.cost-visual>p { font-size:10px;line-height:1.7;color:var(--muted);margin:14px 0 0 }
.benefits-section { background:var(--ink);color:white;padding:70px 0;overflow:hidden }
.benefits-grid { display:grid;grid-template-columns:1fr 1.1fr;gap:30px;align-items:center }
.benefits-copy { position:relative;z-index:1 }
.benefits-copy .eyebrow { color:var(--lime);font-size:10px }
.benefits-copy h2 { margin:19px 0 24px;font-size:48px }
.benefits-copy>p:not(.small) { max-width:390px;color:#bfd0bf;font-size:15px }
.benefits-copy .small { font-size:10px;color:#bfd0bf;margin-top:15px }
.resource-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px }
.resource-card { padding:27px;border:1px solid var(--line);border-radius:14px;position:relative;display:block;background:white;transition:background 180ms }
.resource-card:hover { background:var(--paper) }
.resource-icon { display:flex;align-items:center;justify-content:center;background:var(--paper);height:44px;width:44px;border-radius:9px;margin-bottom:24px }
.resource-card h3, .resource-card h2 { font-size:22px;line-height:1.25;letter-spacing:-.04em;margin:0 0 12px }
.resource-card p { font-size:14px;color:var(--muted);margin:0 0 37px }
.card-arrow { position:absolute;bottom:20px;right:24px }
.card-arrow svg { height:21px;width:21px }
.security-banner { border:1px solid var(--line);border-radius:12px;padding:26px 30px;margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:30px }
.security-banner>div { display:flex;align-items:center;gap:18px }
.security-banner strong { display:block;font-size:15px }
.security-banner small { display:block;color:var(--muted);font-size:12px;max-width:650px;margin-top:4px }
.security-banner a { white-space:nowrap;font-size:12px }
.security-banner>div>svg { height:31px;width:31px }
.faq-section { background:var(--paper);padding:77px 0 }
.faq-grid { display:grid;grid-template-columns:.85fr 1.15fr;gap:85px }
.faq-grid h2 { margin:18px 0 24px;font-size:42px }
.faq-grid>div>p { font-size:14px;color:var(--muted);max-width:300px }
.faq-list details { border-bottom:1px solid #ccd5c6 }
.faq-list details:first-child { border-top:1px solid #ccd5c6 }
.faq-list summary { display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:14px;line-height:1.6;font-weight:650;padding:19px 0;list-style:none;cursor:pointer }
.faq-list summary::-webkit-details-marker { display:none }
.faq-list summary>span { display:flex }
.faq-list summary svg { width:18px;height:18px;transition:transform 180ms }
.faq-list details[open] summary svg { transform:rotate(45deg) }
.faq-list details>div { padding:0 35px 22px 0;color:var(--muted);font-size:13px;line-height:1.85 }
.faq-list details>div p { margin-bottom:9px }
.faq-list details>div a { color:var(--ink);font-weight:650;text-decoration:underline;text-underline-offset:4px }
.guide-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:26px }
.guide-card h3 { font-size:22px;line-height:1.3 }
.guide-card p { font-size:13px;color:var(--muted);margin:10px 0 0 }
.guide-art { height:185px;border-radius:13px;margin-bottom:22px;padding:25px;display:flex;flex-direction:column;position:relative;overflow:hidden }
.guide-art>span { font-size:59px;line-height:1.2;font-weight:700;letter-spacing:-.07em }
.guide-art small { font-size:12px;margin-top:auto }
.guide-art svg { position:absolute;right:25px;bottom:23px }
.cta-section { background:var(--lime);overflow:hidden }
.cta-inner { position:relative;min-height:295px;display:flex;align-items:center;justify-content:space-between;gap:35px }
.cta-inner h2 { font-size:43px;margin-top:17px }
.cta-inner>.button { position:relative;z-index:1;margin-right:85px }
.cta-star { position:absolute;right:-130px;top:-100px;color:#bbdc58;transform:rotate(14deg) }
.cta-star svg { height:480px;width:480px }
.cta-inner>div:first-child { position:relative;z-index:1 }
.page-intro { background:var(--paper);padding:24px 0 57px }
.breadcrumbs { font-size:11px;display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);margin-bottom:37px }
.breadcrumbs a { text-decoration:underline;text-underline-offset:3px }
.page-intro h1 { font-size:clamp(38px,4.6vw,63px);max-width:890px;margin:17px 0 20px;line-height:1.08 }
.page-intro>.container>p { font-size:17px;color:var(--muted);max-width:720px;margin:0 }
.article-layout { display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:85px;padding-top:56px;padding-bottom:78px }
.wide-article { display:block }
.article-content { min-width:0 }
.article-content p { font-size:15px;line-height:1.85;color:#4e6054 }
.article-content>p a, .article-section p a { text-decoration:underline;text-underline-offset:3px }
.article-section { margin:38px 0 }
.article-section:first-child { margin-top:0 }
.article-section h2 { font-size:29px;line-height:1.2;letter-spacing:-.04em;margin-bottom:19px }
.article-section h3 { font-size:20px;margin-bottom:12px }
.article-section .text-link { margin:0 18px 10px 0;font-size:13px }
.article-content>.notice { margin-bottom:32px }
.article-content .notice p { font-size:13px;margin:7px 0 0;line-height:1.7 }
.article-content .notice strong { font-size:14px }
.content-list { padding-left:24px;font-size:15px;color:#4e6054;line-height:1.8 }
.content-list li { padding:5px 0 6px 5px }
.content-list li::marker { color:var(--ink) }
.aside-box { border-radius:15px;background:var(--paper);padding:25px }
.aside-box .eyebrow { font-size:9px }
.aside-box h3 { font-size:25px;line-height:1.2;margin:18px 0 }
.aside-box p { font-size:13px;color:var(--muted) }
.aside-box .button { width:100%;font-size:12px;gap:10px }
.aside-box>.text-link { margin-top:12px;font-size:12px }
.aside-help { margin-top:25px;padding:0 25px }
.aside-help>svg { height:25px;width:25px }
.aside-help h3 { font-size:18px;margin:12px 0 }
.aside-help a { font-size:20px;font-weight:700 }
.aside-help p { font-size:11px;color:var(--muted);margin-top:8px;line-height:1.8 }
.editorial-note { border-top:1px solid var(--line);padding-top:20px;margin-top:45px;font-size:10px;color:var(--muted);line-height:1.9 }
.article-content .resource-grid { grid-template-columns:repeat(2,1fr);margin:28px 0 }
.article-content .resource-card h3 { font-size:19px }
.article-content .resource-card p { font-size:13px }
.article-content .resource-card { padding:22px }
.article-content .resource-grid>.resource-card:only-child { grid-column:1/-1 }
.article-content>.resource-grid { grid-template-columns:repeat(3,1fr) }
.sources { border-top:1px solid var(--line);padding-top:24px;margin-top:35px;display:flex;flex-direction:column;gap:10px }
.sources h3 { font-size:17px;letter-spacing:-.025em }
.sources a { font-size:12px;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere }
.legal-facts { margin:0 }
.legal-facts>div { padding:13px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:150px 1fr;gap:20px;font-size:14px }
.legal-facts dt { color:var(--muted) }
.legal-facts dd { margin:0;font-weight:600;overflow-wrap:anywhere }
.contact-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px }
.contact-grid>div { padding:25px;border:1px solid var(--line);border-radius:12px;min-width:0 }
.contact-grid h2 { font-size:23px;margin-bottom:20px }
.contact-grid a { display:block;font-size:13px;margin:10px 0;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere }
.contact-grid p { font-size:12px;margin-top:14px }
.search-label { font-size:14px;font-weight:700;display:block;margin-bottom:10px }
.search-box { max-width:700px;position:relative }
.search-box input { width:100%;min-height:60px;padding:16px 52px 16px 20px;border-radius:12px;border:1px solid #b7c4af;color:var(--ink);background:var(--paper);font-size:16px }
.search-box>span { position:absolute;right:20px;top:5px;font-size:31px;pointer-events:none }
.help-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:27px 0 40px }
.help-grid h2 { font-size:22px }
.help-grid>div, .help-grid>a { min-width:0 }
.help-grid .resource-card p { margin-bottom:20px }
.help-grid .resource-card>svg { height:20px;width:20px }
.search-box+.small { margin-top:13px }
.calculator-page { display:grid;grid-template-columns:1fr 440px;gap:90px;padding-top:58px;padding-bottom:80px;align-items:start }
.calculator-page>div h2 { font-size:40px;margin-bottom:24px }
.calculator-page>div>p { font-size:15px;color:var(--muted) }
.calculator-page .notice p { font-size:13px;margin-top:7px }
.calculator-page .notice { margin:25px 0 }
.check-list { padding:0;list-style:none;font-size:14px }
.check-list li { display:flex;gap:10px;margin:14px 0 }
.check-list svg { height:19px;width:19px;margin-top:3px }
.calculator-page>div>.small { font-size:12px;line-height:1.9;margin-top:18px }
.clabe-diagram { display:flex;gap:10px;flex-wrap:wrap;background:var(--paper);border-radius:12px;padding:20px;margin:25px 0 }
.clabe-diagram span { font-size:10px;border-left:1px solid var(--line);padding:0 10px;display:block }
.clabe-diagram span:first-child { border:0 }
.clabe-diagram b { font-size:19px;letter-spacing:2px;display:block }
.not-found { padding-top:65px;padding-bottom:80px;text-align:center }
.error-code { display:flex;align-items:center;justify-content:center;gap:25px;font-size:105px;letter-spacing:-.08em;font-weight:700;line-height:1;color:#789d28 }
.error-code svg { width:70px;height:70px }
.not-found h1 { font-size:56px;margin:28px 0 }
.not-found p { font-size:16px;color:var(--muted) }
.not-found>div { display:flex;justify-content:center;gap:15px;margin-top:30px }
caption { text-align:left;font-size:12px;color:var(--muted);margin-bottom:10px }
.notice a { text-decoration:underline;text-underline-offset:3px }
.article-content .faq-list { margin:22px 0 0 }
@media(max-width:1100px) {
.clarity-grid { gap:50px }
.benefits-grid { grid-template-columns:1fr 1fr }
.faq-grid { gap:45px }
.faq-grid h2 { font-size:36px }
.article-layout { gap:45px;grid-template-columns:minmax(0,1fr) 270px }
.calculator-page { gap:45px;grid-template-columns:1fr 420px }
.guide-art>span { font-size:50px }
.security-banner .text-link { white-space:normal }
.resource-card { padding:24px }
.resource-card h3 { font-size:20px }
}
@media(max-width:900px) {
.clarity-grid { gap:35px }
.cost-visual { padding:25px }
.cost-amount strong { font-size:35px }
.cost-legend { flex-wrap:wrap }
.benefits-grid { grid-template-columns:1fr }
.benefits-copy>p:not(.small) { max-width:550px }
.faq-grid { grid-template-columns:1fr }
.faq-grid>div>p { max-width:none }
.guide-art { padding:20px;height:170px }
.guide-art>span { font-size:43px }
.guide-art small { font-size:10px }
.guide-card h3 { font-size:19px }
.guide-grid { gap:20px }
.resource-grid { gap:15px }
.resource-card { padding:21px }
.resource-card h3 { font-size:19px }
.resource-card p { font-size:12px }
.security-banner { padding:25px;gap:20px }
.security-banner small { font-size:11px }
.cta-inner>.button { margin-right:0 }
.cta-inner h2 { font-size:39px }
.article-layout { grid-template-columns:minmax(0,1fr);gap:30px }
.article-aside { display:grid;grid-template-columns:1fr 1fr;gap:25px }
.calculator-page { grid-template-columns:1fr 390px;gap:25px }
.calculator-page>div h2 { font-size:32px }
.calculator-page>div>p { font-size:13px }
.help-grid { grid-template-columns:1fr 1fr }
.contact-grid { grid-template-columns:1fr }
.contact-grid h2 { font-size:25px }
.contact-grid a { font-size:15px }
}
@media(max-width:700px) {
.clarity-section { padding:51px 0 }
.clarity-grid { grid-template-columns:1fr;gap:35px }
.clarity-grid h2 { margin:15px 0 20px }
.clarity-grid>div>p { font-size:14px }
.cost-visual { padding:24px;transform:none }
.cost-legend { gap:13px }
.cost-amount strong { font-size:39px }
.cost-visual>p { font-size:11px }
.cost-label { font-size:9px }
.benefits-section { padding:48px 0 27px }
.benefits-copy h2 { font-size:39px }
.benefits-copy .small { font-size:11px }
.resource-grid { grid-template-columns:1fr;gap:16px }
.resource-card { padding:25px }
.resource-card h3 { font-size:22px }
.resource-card p { font-size:14px;margin-bottom:15px;max-width:calc(100% - 22px) }
.resource-icon { margin-bottom:19px }
.security-banner { align-items:flex-start;flex-direction:column;gap:14px;padding:23px;margin-top:22px }
.security-banner>div { align-items:flex-start;gap:13px }
.security-banner strong { font-size:14px }
.security-banner small { font-size:12px;margin-top:8px }
.security-banner a { margin-left:43px }
.faq-section { padding:53px 0 }
.faq-grid { gap:25px }
.faq-grid h2 { font-size:34px }
.faq-list summary { font-size:14px;padding:19px 0 }
.faq-list details>div { font-size:14px;padding-right:10px }
.guide-grid { grid-template-columns:1fr;gap:32px }
.guide-art { height:184px;padding:25px;margin-bottom:16px }
.guide-art>span { font-size:63px }
.guide-art small { font-size:13px }
.guide-card h3 { font-size:24px }
.guide-card p { font-size:14px }
.cta-inner { min-height:310px;align-items:flex-start;justify-content:center;flex-direction:column;gap:26px;padding-top:43px;padding-bottom:43px }
.cta-inner h2 { font-size:34px }
.cta-inner .eyebrow { font-size:9px }
.cta-star { right:-175px;top:-10px }
.cta-star svg { height:400px;width:400px }
.cta-inner>.button { margin-right:0 }
.page-intro { padding:21px 0 40px }
.breadcrumbs { font-size:11px;margin-bottom:27px }
.page-intro h1 { font-size:41px;margin-top:15px }
.page-intro>.container>p { font-size:15px }
.page-intro .eyebrow { font-size:10px }
.article-layout { padding-top:35px;padding-bottom:50px }
.article-section h2 { font-size:27px }
.article-content p, .content-list { font-size:15px }
.article-section { margin:31px 0 }
.article-aside { display:block }
.aside-help { padding:5px 0 }
.article-content>.resource-grid, .article-content .resource-grid { grid-template-columns:1fr }
.editorial-note { font-size:11px }
.legal-facts>div { grid-template-columns:1fr;gap:5px;font-size:14px }
.help-grid { grid-template-columns:1fr;gap:17px }
.help-grid .resource-card h2 { font-size:23px }
.help-grid .resource-card p { font-size:14px }
.search-box input { font-size:14px }
.contact-grid a { font-size:14px }
.calculator-page { grid-template-columns:1fr;padding-top:34px;padding-bottom:48px;gap:26px }
.calculator-page>div h2 { font-size:33px }
.calculator-page>div>p { font-size:14px }
.calculator-page .calculator { order:-1 }
.calculator-page .check-list { font-size:14px }
.not-found { padding-top:45px;padding-bottom:55px }
.not-found h1 { font-size:39px }
.not-found p { font-size:14px }
.not-found>div { flex-direction:column }
.error-code { font-size:90px }
.clabe-diagram { gap:12px;padding:16px }
.clabe-diagram span { padding:0 7px }
.clabe-diagram b { font-size:16px;letter-spacing:1px }
.article-content .notice { font-size:13px }
.sources a { font-size:13px }
.cost-legend span { font-size:11px }
}
.calc-notice { font-size:12px }
.calc-summary>div { font-size:13px }
.calc-summary small, .calc-total>span small { font-size:11px }
.calc-summary .payment-mini { font-size:12px }
.menu-toggle { height:48px;width:48px }
.mobile-dock a { min-height:48px }
.field-error { font-size:13px }
.calculator .eyebrow { font-size:11px }
.mini-badge { font-size:11px }
.art-caption span { z-index:2 }
@media(max-width:700px) {
.header-cta { min-height:48px }
.calc-notice { font-size:12px }
.hero-grid { padding-bottom:33px }
.header-inner { gap:10px }
.header-cta { padding:10px;font-size:10px }
}
@media(max-width:360px) {
.header-cta { display:none }
.menu-toggle { margin-left:auto }
.hero h1 { font-size:45px }
.calculator { padding:21px }
.calc-total strong { font-size:19px }
.calc-summary>div { flex-wrap:wrap }
}
.benefits-grid>* { min-width:0 }
@media(max-width:900px) {
.benefits-grid { grid-template-columns:minmax(0,1fr) }
}
@media(max-width:700px) {
.benefits-copy>p:not(.small) { max-width:100% }
}
