.landing-body {
    --landing-bg: #101010;
    --landing-panel: #191a19;
    --landing-line: #2c302d;
    --landing-ink: #f3f5f1;
    --landing-muted: #b0b7ae;
    --landing-green: #a6efad;
    --landing-paper: #eeefe9;
    --landing-dark: #18201a;
    background: var(--landing-bg);
    color: var(--landing-ink);
    font: 15px/1.65 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}

html:has(.landing-body) { scroll-padding-top: 108px; }
.has-open-dialog { overflow: hidden; }
.landing-body .wrap { width: min(1160px, calc(100% - 80px)); margin-inline: auto; }
.landing-body :is(a, button, input, select, summary):focus-visible { outline-color: var(--landing-green); }
.landing-body ::selection { background: var(--landing-green); color: var(--landing-dark); }
.icon-definitions { position: absolute; width: 0; height: 0; overflow: hidden; }
.landing-body img[data-reveal-image]:not([data-image-ready]) { opacity: 0; }
.landing-skip {
    position: absolute;
    top: -80px;
    left: 20px;
    z-index: 30;
    background: var(--landing-green);
    color: var(--landing-dark);
    padding: 10px 16px;
}
.landing-skip:focus { top: 12px; }
.landing-body :is(.site-header, #main, .site-footer, .landing-button) svg { fill: none; stroke: currentColor; stroke-width: 1.6; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 20;
    background: #101010ed;
    border-bottom: 1px solid var(--landing-line);
    backdrop-filter: blur(16px);
}
.header-inner {
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.landing-brand {
    display: inline-flex;
    gap: 12px;
    align-items: center;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -.7px;
    line-height: 1.16;
}
.brand-mark {
    display: grid;
    place-items: center;
    flex: 0 0 36px;
    height: 36px;
    border: 1px solid #3b4d3f;
    border-radius: 10px;
    background: #1c2820;
    color: var(--landing-green);
    font-size: 13px;
}
.brand-mark > *, .example-avatar > * { grid-area: 1 / 1; }
.brand-mark img { width: 32px; height: 32px; object-fit: contain; background: #1c2820; border-radius: 8px; }
.landing-brand small {
    display: block;
    margin-bottom: 4px;
    font-size: 10px;
    font-weight: 550;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    color: var(--landing-muted);
}
.landing-nav { display: flex; align-items: center; gap: 28px; color: var(--landing-muted); font-size: 13px; }
.landing-nav > a:not(.landing-button):hover, .site-footer a:hover { color: var(--landing-green); }
.landing-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    min-height: 50px;
    padding: 12px 20px;
    border: 1px solid transparent;
    border-radius: 7px;
    background: var(--landing-green);
    color: #17251b;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    transition: background .18s, border-color .18s;
}
.landing-button svg { width: 17px; height: 17px; flex: 0 0 17px; }
.landing-button:hover { background: #c0fac5; }
.landing-button.white { background: var(--landing-paper); color: var(--landing-dark); }
.landing-button.white:hover { background: #fff; }
.landing-button.outline { background: #1016108c; border-color: #526154; color: var(--landing-ink); }
.landing-button.outline:hover { background: #1e2921; border-color: var(--landing-green); }
.landing-button.small { min-height: 43px; padding: 10px 16px; font-size: 12px; }
.landing-button.full { width: 100%; }

.hero.hero-banner {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 70px 0 62px;
    min-height: 420px;
    border-bottom: 1px solid var(--landing-line);
    background: radial-gradient(ellipse at 92% 30%, #36523e, #1b2a1f 46%, #151715 80%);
}
.hero-banner-image, .hero-banner-overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-banner-image { object-fit: cover; object-position: center; opacity: .58; }
.hero-banner-fallback { opacity: .86; }
.hero-banner-image[data-image-ready] + .hero-banner-fallback { visibility: hidden; }
.hero-banner-overlay { background: linear-gradient(90deg, #101010f5, #101010c9 48%, #10101035); }
.hero-inner {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 382px;
    align-items: center;
    gap: 64px;
}
.hero-kicker {
    display: inline-block;
    max-width: 600px;
    margin-bottom: 23px;
    padding: 8px 13px;
    border: 1px solid #70856b80;
    border-radius: 10px;
    background: #1c2d20d9;
    color: #d4eccd;
    font-size: 12px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.hero-kicker strong { color: var(--landing-green); margin-right: 4px; font-size: 11px; letter-spacing: .6px; }
.hero h1 {
    margin: 0 0 21px;
    font-size: clamp(43px, 4.8vw, 68px);
    letter-spacing: -.045em;
    line-height: 1.075;
    font-weight: 580;
}
.hero h1 span { color: var(--landing-green); }
.hero-question { margin-bottom: 12px; font-size: 19px; font-weight: 550; letter-spacing: -.25px; }
.hero-answer { max-width: 570px; color: #d0d6cc; line-height: 1.85; }
.hero-actions { display: flex; margin-top: 27px; }
.contact-card.report-card {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--landing-paper);
    border-radius: 14px;
    background: var(--landing-paper);
    color: var(--landing-dark);
    padding: 28px;
    box-shadow: 0 16px 45px #05070540;
    color-scheme: light;
}
.contact-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 90px;
    height: 90px;
    background: repeating-linear-gradient(135deg, transparent 0 8px, #243b2b0b 8px 9px);
    pointer-events: none;
}
.card-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; border-bottom: 1px solid #cdd3c9; padding-bottom: 18px; }
.card-label { font-size: 10px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; }
.card-icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #b9c6b6;
    border-radius: 50%;
    color: #315d38;
}
.card-icon svg { width: 17px; height: 17px; }
.contact-card h2 { margin: 22px 0; font-size: 27px; line-height: 1.23; letter-spacing: -.8px; font-weight: 600; }
.contact-card label { display: block; margin-bottom: 7px; font-size: 13px; font-weight: 700; }
.landing-website {
    width: 100%;
    min-height: 58px;
    border: 1px solid #aebbad;
    border-radius: 7px;
    background: #fafbf7;
    color: var(--landing-dark);
    padding: 12px;
    font-size: 17px;
}
.landing-website::placeholder { color: #636e63; }
.landing-body .landing-website:focus-visible { outline-color: #315d38; }
.contact-card .landing-button { margin-top: 12px; background: #1d3424; color: #eff9ed; }
.contact-card .landing-button:hover { background: #2c4c35; }
.offer-note { margin-top: 15px; color: #4c584e; font-size: 12px; line-height: 1.65; }

.proof-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    padding-block: 25px;
    border-bottom: 1px solid var(--landing-line);
}
.proof + .proof { padding-left: 24px; border-left: 1px solid var(--landing-line); }
.proof b { display: block; color: var(--landing-ink); font-size: 17px; line-height: 1.4; font-weight: 600; }
.proof-number { margin-right: 9px; color: var(--landing-green); font-size: 11px; letter-spacing: .6px; }
.proof p { margin-top: 5px; color: var(--landing-muted); font-size: 12px; line-height: 1.65; }

.landing-section { padding-block: 76px; }
.section-kicker {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: var(--landing-green);
    font-size: 11px;
    font-weight: 650;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}
.section-kicker span { color: #a1ae9d; }
.section-heading { margin-bottom: 15px; font-size: clamp(29px, 3.1vw, 40px); line-height: 1.2; letter-spacing: -1.3px; font-weight: 550; }
.section-intro { color: var(--landing-muted); max-width: 540px; font-size: 14px; line-height: 1.85; }
.services-intro { margin-bottom: 28px; }
.service-list { border-top: 1px solid var(--landing-line); }
.service {
    display: grid;
    grid-template-columns: 106px minmax(0, 1fr) 38px;
    align-items: center;
    gap: 18px;
    padding-block: 19px;
    border-bottom: 1px solid var(--landing-line);
}
.service-image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    border: 1px solid #3b4738;
    border-radius: 10px;
    background: #202b22;
}
.service-link {
    display: grid;
    place-items: center;
    width: 100%;
    aspect-ratio: 1;
    border: 1px solid #48554a;
    border-radius: 50%;
    color: var(--landing-muted);
}
.service-link:hover { background: var(--landing-green); border-color: var(--landing-green); color: var(--landing-dark); }
.service-link svg { width: 17px; height: 17px; }
.service h3, .landing-step h4 { margin-bottom: 5px; font-size: 17px; font-weight: 600; letter-spacing: -.25px; }
.service p, .landing-step p { color: var(--landing-muted); font-size: 13px; line-height: 1.75; }
.approach, .calculator-section { border-block: 1px solid var(--landing-line); background: #151715; }
.landing-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 28px; }
.landing-step { padding-top: 16px; border-top: 1px solid #3e4b3c; }
.step-number { display: block; margin-bottom: 9px; color: var(--landing-green); font-size: 11px; letter-spacing: 1.5px; }
.how-group { margin-top: 32px; }
.how-group > h3 { font-size: 20px; font-weight: 650; }
.how-group .section-intro { margin-top: 8px; }
.how-group .landing-steps { margin-top: 18px; }
.report-searches { border-top: 1px solid var(--landing-line); }
.report-searches .example-questions strong { display: block; color: var(--landing-green); font-size: 12px; }
.example-layout, .calculator-layout, .faq-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.16fr); gap: 72px; }
.example-layout { align-items: center; }
.section-action { margin-top: 20px; }
.example-card {
    border: 1px solid #3e5340;
    border-radius: 14px;
    background: linear-gradient(140deg, #203526, #172019 80%);
    padding: 24px 27px;
}
.example-identity { display: flex; align-items: center; gap: 12px; margin-bottom: 17px; }
.example-identity strong { display: block; font-size: 17px; }
.example-identity small { display: block; color: #bbcebb; font-size: 12px; }
.example-avatar {
    display: grid;
    place-items: center;
    overflow: hidden;
    width: 48px;
    height: 48px;
    border: 1px solid #527658;
    border-radius: 50%;
    background: #284931;
    color: var(--landing-green);
    font-weight: 700;
}
.example-avatar img { width: 48px; height: 48px; object-fit: cover; }
.example-questions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; }
.example-questions li { display: flex; align-items: flex-start; gap: 10px; border-top: 1px solid #47604680; padding: 12px 0; font-size: 14px; }
.example-questions svg { width: 17px; height: 17px; flex: 0 0 17px; margin-top: 3px; color: var(--landing-green); }

.calculator-card {
    min-width: 0;
    padding: 24px;
    border: 1px solid #e0e5dc;
    border-radius: 14px;
    background: #fff;
    color: var(--landing-dark);
    color-scheme: light;
}
.calculator-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.calculator-card label { display: block; min-width: 0; color: var(--landing-dark); font-weight: 600; font-size: 13px; }
.calculator-card input, .calculator-card select {
    display: block;
    width: 100%;
    min-height: 44px;
    margin-top: 6px;
    border: 1px solid #adb9ae;
    border-radius: 7px;
    background: #f8faf6;
    color: var(--landing-dark);
    padding: 8px 10px;
    font-size: 15px;
    font-weight: 400;
}
.calculator-card input::placeholder { color: #59685c; }
.landing-body .calculator-card :focus-visible { outline-color: #315d38; }
.calculator-options { margin: 14px 0; }
.calculator-options summary { cursor: pointer; color: #213629; font-size: 13px; }
.calculator-options summary span { color: #556258; }
.calculator-options label { margin-top: 8px; }
.calculator-result { border: 1px solid #cbddc9; border-radius: 9px; background: #edf6eb; padding: 14px; }
#result-label { font-size: 12px; font-weight: 650; color: #253b2b; }
#result-value {
    display: block;
    margin: 3px 0 7px;
    font-size: clamp(27px, 4.5vw, 43px);
    line-height: 1.2;
    letter-spacing: -.04em;
    font-weight: 650;
    color: #214d2e;
    overflow-wrap: anywhere;
}
#result-explanation, .calculator-note { color: #47564b; font-size: 12px; line-height: 1.65; }
.calculator-note { margin: 14px 0; }
.calculator-card .landing-button { background: #1d3424; color: #eff9ed; }
.calculator-card .landing-button:hover { background: #2c4c35; }
.faq-list details { border-top: 1px solid var(--landing-line); }
.faq-list details:last-child { border-bottom: 1px solid var(--landing-line); }
.faq-list summary { display: flex; justify-content: space-between; gap: 13px; cursor: pointer; list-style: none; padding: 15px 2px; font-size: 15px; font-weight: 600; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; flex: 0 0 16px; color: var(--landing-green); font-size: 18px; line-height: 1.4; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { padding: 0 20px 15px 2px; color: var(--landing-muted); font-size: 13px; line-height: 1.8; }
.faq-list a { color: var(--landing-green); text-decoration: underline; text-underline-offset: 3px; }
.closing {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-block: 32px;
    border-top: 1px solid var(--landing-line);
}
.closing p { font-size: clamp(24px, 3vw, 36px); font-weight: 550; line-height: 1.18; letter-spacing: -.8px; }
.closing p span { color: var(--landing-green); }
.closing .closing-description { max-width: 530px; margin-top: 10px; color: var(--landing-muted); font-size: 14px; line-height: 1.65; letter-spacing: 0; }
.site-footer {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding-block: 23px;
    border-top: 1px solid var(--landing-line);
    color: var(--landing-muted);
    font-size: 12px;
}

.landing-dialog {
    position: fixed;
    inset: 0;
    margin: auto;
    width: min(760px, calc(100% - 36px));
    max-width: none;
    max-height: calc(100dvh - 36px);
    overflow: auto;
    overscroll-behavior: contain;
    border: 1px solid #415242;
    border-radius: 16px;
    background: var(--landing-bg);
    color: var(--landing-ink);
    box-shadow: 0 20px 60px #0009;
}
.landing-dialog::backdrop { background: #000b; }
.calculator-dialog {
    width: min(560px, calc(100% - 36px));
    border-color: #e0e5dc;
    background: #fff;
    color: var(--landing-dark);
    color-scheme: light;
}
.dialog-bar {
    position: sticky;
    top: 0;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 20px;
    border-bottom: 1px solid var(--landing-line);
    background: var(--landing-panel);
}
.dialog-bar h2 { font-size: 16px; font-weight: 700; letter-spacing: -.2px; }
.dialog-close {
    flex-shrink: 0;
    min-height: 38px;
    padding: 6px 11px;
    border: 1px solid #5a6a67;
    border-radius: 7px;
    background: #15221b;
    color: #eef6ed;
    font-size: 13px;
    font-weight: 600;
}
.dialog-close span { margin-left: 4px; }
.dialog-close:hover { background: #233b2a; }
.calculator-dialog .dialog-bar { border-color: #e0e5dc; background: #fff; }
.calculator-dialog .dialog-close { border-color: #b8c9ba; background: #f5f8f4; color: var(--landing-dark); }
.calculator-dialog .dialog-close:hover { background: #e7f1e6; }
.calculator-dialog .dialog-close:focus-visible { outline-color: #315d38; }
#calculator-dialog-body { padding: 18px; background: #fff; }
.dialog-problem { padding: 20px; color: #fde68a; }
.demo-dialog {
    --color-canvas: var(--landing-bg);
    --color-surface: var(--landing-panel);
    --color-line: #37433a;
    --color-brand: var(--landing-green);
}
.landing-body .demo-dialog {
    width: 100%;
    height: 100vh;
    height: 100dvh;
    max-height: none;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: rgb(16 16 16 / 90%);
    scroll-padding-top: 142px;
}
.landing-body .demo-dialog::backdrop { background: rgb(0 0 0 / 18%); }
.demo-dialog-top {
    position: sticky;
    top: 0;
    z-index: 20;
    background: var(--landing-bg);
    border-bottom: 1px solid var(--landing-line);
}
.demo-dialog-top .dialog-bar { position: static; }
.demo-progress {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    width: min(100%, 768px);
    margin-inline: auto;
    padding: 9px 16px;
}
.demo-progress .step { min-width: 0; line-height: 1.3; }
.demo-dialog #visitor { padding-block: 12px 24px; }
.demo-step-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.website-card .demo-step-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.report-step {
    max-width: 540px;
    margin: clamp(16px, 4vw, 30px) auto 0;
    text-align: center;
}
.report-step:not(.has-report) {
    padding: 20px;
    border: 1px solid var(--landing-line);
    border-radius: 14px;
    background: var(--landing-panel);
}
.report-step .demo-step-actions { justify-content: center; }
.report-step h2 { font-size: 25px; font-weight: 650; letter-spacing: -.4px; }
.report-status { margin-top: 8px; color: var(--landing-muted); }
.report-status:empty { display: none; }
.report-status.is-error { color: #fde68a; }
.report-result-card {
    width: min(100%, 428px);
    margin-inline: auto;
    padding: clamp(24px, 5vw, 38px) clamp(18px, 4vw, 32px);
    border: 1px solid #46644c;
    border-radius: 18px;
    background: radial-gradient(ellipse at top, #2b4932, #1b261e 62%, #191d1a);
    box-shadow: 0 14px 40px #0004;
}
.report-favicon {
    display: grid;
    place-items: center;
    width: 68px;
    height: 68px;
    margin-inline: auto;
    border: 1px solid #b8d6b9;
    border-radius: 17px;
    background: #e7f2e6;
    color: #285433;
}
.report-favicon img { border-radius: 8px; object-fit: contain; }
.report-favicon svg, #report-open svg { fill: none; stroke: currentColor; stroke-width: 1.6; }
.report-favicon svg { width: 32px; height: 32px; }
.report-business { display: grid; gap: 4px; margin-block: 16px 20px; overflow-wrap: anywhere; }
.report-business h3 { font-size: clamp(23px, 4vw, 29px); font-weight: 700; line-height: 1.2; }
.report-business span { color: var(--landing-muted); }
.report-result-actions { display: grid; justify-items: center; gap: 7px; }
#report-open { width: min(100%, 248px); min-height: 48px; letter-spacing: .08em; text-transform: uppercase; }
#report-open svg { width: 17px; height: 17px; flex-shrink: 0; }
#report-copy, #open-saved-report {
    font-size: 13px;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}
#report-copy { min-height: 32px; padding-inline: 8px; color: var(--landing-green); cursor: pointer; }
#report-copy:hover { color: #d4f9d7; }
.report-share-label { display: block; margin-top: 18px; color: var(--landing-muted); font-size: 13px; }
#report-share-url { text-align: center; }
#report-allowance { margin-top: 14px; }
#open-saved-report { display: inline-block; margin-top: 9px; padding-block: 3px; color: #245031; }
#open-saved-report:hover { color: #142d1b; }
#open-saved-report:focus-visible { outline-color: #315d38; }
@media (max-width: 620px) {
    .demo-progress { gap: 4px; padding-inline: 9px; }
    .demo-progress .step { flex-direction: column; gap: 4px; padding: 6px 3px; text-align: center; font-size: 11px; }
    .website-card .demo-step-actions { grid-template-columns: minmax(0, 1fr); }
    .website-card .site-action { min-height: 48px; }
}
.demo-dialog .card[data-step="2"] { border-width: 0; background-color: transparent; }
@media (min-width: 40rem) {
    .demo-dialog .card[data-step="2"] .profile-section > summary { background-color: var(--color-surface); }
}
.demo-dialog .review-actions { flex-wrap: wrap; gap: 8px; }
.demo-dialog .website-card { background: radial-gradient(ellipse at top right, #273c2d, transparent 65%), var(--landing-panel); }
.demo-dialog .step[aria-current="step"] { border-color: #64876b; background: #263a2b; color: #e5f4e4; }
.demo-dialog .button-primary { color: #17251b; }
.demo-dialog .button-primary:hover:not(:disabled) { background: #c0fac5; }
.demo-dialog .source-link { color: #b5eabb; text-decoration-color: #7da385; }
.demo-dialog .virtual-phone {
    border-color: #4a6550;
    background: linear-gradient(145deg, #304437, #101610 56%, #2a4031);
    box-shadow: 0 18px 48px #080e0a80, inset 0 0 0 2px #24332a;
}
.demo-dialog .phone-screen { border-color: #3c5643; background: radial-gradient(ellipse at 50% 14%, #284735, transparent 55%), #171d18; }
.demo-dialog .phone-speaker { background: #0a120d; box-shadow: 0 0 0 1px #425c49; }
.demo-dialog .phone-company { border-color: #dbe9d8; background: linear-gradient(145deg, #f3f8f0, #cbdcc9); }
.demo-dialog .phone-avatar { border-color: #78ab83; background: linear-gradient(140deg, #355a41, #1c3428); box-shadow: 0 0 0 6px #a6efad20; }
.demo-dialog .phone-start { background: var(--landing-green); box-shadow: 0 0 0 5px #a6efad26; }
.demo-dialog .phone-action:hover:not(:disabled) .phone-start { background: #c0fac5; }
.demo-complete {
    width: min(100%, 510px);
    margin-inline: auto;
    border: 1px solid #34473d;
    border-radius: 12px;
    background: #142019;
    padding: 17px;
    text-align: center;
}
.demo-complete h3 { margin-bottom: 12px; font-weight: 650; }
.demo-complete-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.demo-complete-actions .landing-button { flex: 1 1 165px; }

@media (min-width: 1440px) {
    .hero.hero-banner { padding-block: 82px; }
    .hero h1 { font-size: 70px; }
}
@media (max-width: 1100px) {
    .landing-body .wrap { width: calc(100% - 56px); }
    .hero-inner { grid-template-columns: minmax(0, 1fr) 350px; gap: 35px; }
    .example-layout, .calculator-layout, .faq-layout { gap: 40px; }
}
@media (max-width: 760px) {
    html:has(.landing-body) { scroll-padding-top: 90px; }
    .landing-body .wrap { width: calc(100% - 40px); }
    .header-inner { min-height: 74px; gap: 12px; }
    .landing-nav > a:not(.landing-button) { display: none; }
    .landing-brand { font-size: 18px; gap: 8px; }
    .landing-nav .landing-button { min-height: 40px; padding: 8px 11px; }
    .hero.hero-banner { padding: 38px 0; }
    .hero-inner, .example-layout, .calculator-layout, .faq-layout { grid-template-columns: minmax(0, 1fr); gap: 27px; }
    .hero-banner-image { object-position: 60% center; opacity: .4; }
    .hero-banner-fallback { opacity: .76; }
    .hero-banner-overlay { background: linear-gradient(130deg, #101010ea, #10101091); }
    .hero h1 { font-size: clamp(38px, 8.5vw, 62px); }
    .hero-answer { font-size: 14px; }
    .contact-card.report-card { max-width: 540px; padding: 23px; }
    .landing-section { padding-block: 50px; }
    .service { grid-template-columns: 88px minmax(0, 1fr) 32px; gap: 14px; }
    .proof-strip { gap: 14px; padding-block: 20px; }
    .proof + .proof { padding-left: 14px; }
    .proof b { font-size: 15px; }
    .landing-steps { gap: 17px; }
}
@media (max-width: 460px) {
    .landing-body .wrap { width: calc(100% - 32px); }
    .landing-brand { font-size: 15px; letter-spacing: -.35px; }
    .landing-brand small { font-size: 9px; }
    .brand-mark { height: 31px; flex-basis: 31px; }
    .brand-mark img { width: 29px; height: 29px; }
    .hero.hero-banner { padding-block: 27px; }
    .hero-inner { gap: 20px; }
    .hero-kicker { font-size: 11px; margin-bottom: 18px; }
    .hero-question { font-size: 17px; }
    .hero-answer { line-height: 1.65; }
    .hero-actions { margin-top: 20px; }
    .contact-card.report-card { padding: 19px; }
    .contact-card .card-top { padding-bottom: 11px; }
    .contact-card h2 { margin-block: 14px; font-size: 23px; }
    .service { grid-template-columns: 72px minmax(0, 1fr) 32px; gap: 12px; }
    .proof-strip, .landing-steps, .example-questions { grid-template-columns: minmax(0, 1fr); }
    .proof-strip { gap: 0; padding-block: 8px; }
    .proof { padding-block: 12px; }
    .proof + .proof { border-left: 0; border-top: 1px solid var(--landing-line); padding-left: 0; }
    .calculator-card { padding: 17px; }
    .calculator-fields { grid-template-columns: minmax(0, 1fr); }
    .landing-dialog { width: calc(100% - 18px); max-height: calc(100dvh - 18px); }
    .dialog-bar { padding: 11px 13px; }
    #calculator-dialog-body { padding: 10px; }
    .closing { flex-direction: column; align-items: stretch; gap: 16px; }
    .site-footer { flex-wrap: wrap; gap: 6px 15px; }
}
