@media (max-width: 1050px) {
    :root { --shell-gutter: 34px; }
    .hero { min-height: 610px; gap: 1%; }
    .hero h1 { font-size: clamp(52px, 6.6vw, 72px); }
    .hero-visual { min-height: 430px; }
    .tag-top { right: 0; }
    .feature-card { padding-inline: 21px; }
    .report-section { grid-template-columns: .72fr 1.28fr; gap: 5%; }
}

@media (max-width: 800px) {
    :root { --shell-gutter: 26px; }
    .site-header { padding-top: 12px; }
    .nav-shell { min-height: 64px; }
    .nav-toggle {
        width: 42px; height: 42px; display: flex; flex-direction: column; align-items: center;
        justify-content: center; gap: 6px; border: 1px solid var(--color-border-strong);
        border-radius: 8px; background: transparent; cursor: pointer;
    }
    .nav-toggle span { width: 17px; height: 1px; background: var(--color-text); transition: transform .2s ease; }
    .nav-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
    .nav-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
    .primary-navigation {
        position: absolute; top: calc(100% + 9px); right: var(--shell-gutter); left: var(--shell-gutter);
        display: none; align-items: stretch; gap: 0; padding: 10px; border: 1px solid var(--color-border);
        border-radius: 12px; background: rgba(20, 20, 19, .98); box-shadow: 0 20px 40px rgba(0, 0, 0, .35);
    }
    .primary-navigation.is-open { display: flex; flex-direction: column; }
    .primary-navigation > a:not(.button) { padding: 12px 10px; border-bottom: 1px solid var(--color-border); }
    .primary-navigation .nav-login { margin-left: 0; }
    .primary-navigation .button-nav { margin-top: 10px; }
    .hero { grid-template-columns: 1fr; gap: 12px; padding-top: 72px; padding-bottom: 54px; }
    .hero-copy { max-width: 630px; }
    .hero h1 { font-size: clamp(60px, 10vw, 82px); }
    .hero-visual { min-height: 390px; margin-top: 10px; }
    .score-card { width: min(370px, 76%); }
    .tag-top { right: 7%; }
    .tag-bottom { left: 7%; }
    .feature-section, .process-inner { padding-top: 75px; padding-bottom: 80px; }
    .feature-grid { grid-template-columns: repeat(2, 1fr); }
    .feature-card { min-height: 230px; }
    .section-heading { align-items: flex-start; flex-direction: column; gap: 18px; margin-bottom: 36px; }
    .section-intro { max-width: 520px; }
    .process-grid { gap: 22px; }
    .process-step h3 { font-size: 15px; }
    .report-section { grid-template-columns: 1fr; gap: 38px; padding-top: 85px; padding-bottom: 85px; }
    .report-intro { max-width: 580px; }
    .report-mockup { max-width: 670px; width: 100%; margin-inline: auto; }
    .pricing-section { align-items: flex-start; flex-direction: column; gap: 25px; padding: 40px; }
    .pricing-card { max-width: 100%; padding: 20px 0 0; border-top: 1px solid var(--color-border-strong); border-left: 0; }
}

@media (max-width: 540px) {
    :root { --shell-gutter: 19px; }
    html { scroll-padding-top: 83px; }
    .site-header { padding: 9px 12px 0; }
    .nav-shell { width: 100%; min-height: 60px; padding: 7px 8px 7px 13px; }
    .brand { gap: 8px; }
    .brand-mark { width: 25px; height: 25px; }
    .brand-name { font-size: 15px; }
    .brand-name small { font-size: 6px; }
    .primary-navigation { right: 12px; left: 12px; }
    .hero { padding-top: 59px; }
    .eyebrow { gap: 8px; font-size: 8px; letter-spacing: 1.35px; }
    .hero h1 { font-size: clamp(49px, 14vw, 68px); }
    .hero-description { font-size: 14px; }
    .scan-form { flex-wrap: wrap; gap: 3px; padding: 7px; }
    .scan-form input { width: calc(100% - 38px); height: 43px; }
    .button-primary { width: 100%; min-height: 45px; }
    .trust-points { gap: 8px 12px; }
    .trust-points li { font-size: 9px; }
    .hero-visual { min-height: 330px; margin: 0 -3px; }
    .score-card { width: 83%; padding: 19px 18px; }
    .score-ring { width: 95px; height: 95px; }
    .score-ring-inner { width: 78px; height: 78px; }
    .score-ring-inner strong { font-size: 30px; }
    .score-display { gap: 13px; }
    .floating-tag { padding: 9px 10px; }
    .tag-top { top: 17px; right: 0; width: 142px; }
    .tag-bottom { bottom: 27px; left: 0; }
    .visual-index { bottom: 1px; font-size: 7px; }
    .feature-section, .process-inner { padding-top: 64px; padding-bottom: 68px; }
    .section-heading h2, .report-intro h2 { font-size: clamp(36px, 10vw, 47px); }
    .section-heading { gap: 14px; margin-bottom: 27px; }
    .feature-grid { grid-template-columns: 1fr; }
    .feature-card { min-height: 0; padding: 22px; }
    .feature-icon { margin-bottom: 16px; }
    .feature-number { top: 33px; right: 22px; }
    .process-grid { grid-template-columns: 1fr; gap: 12px; }
    .process-step { padding-top: 9px; }
    .step-number { font-size: 25px; }
    .step-rule { margin: 11px 0 16px; }
    .report-section { gap: 28px; padding-top: 69px; padding-bottom: 69px; }
    .pricing-section { gap: 21px; padding: 29px 22px; }
    .pricing-section h2 { font-size: clamp(32px, 9vw, 43px); }
    .report-score { font-size: 40px; }
    .mockup-content { padding: 17px 13px; }
    .mockup-title { font-size: 7px; letter-spacing: .8px; }
    .category-row { grid-template-columns: 90px 1fr 20px; gap: 8px; font-size: 8px; }
    .finding-card { grid-template-columns: 1fr; justify-items: center; gap: 4px; padding: 9px 4px; text-align: center; }
    .finding-symbol { grid-row: auto; }
    .finding-card > span:last-child { font-size: 6px; }
    .recommendation { gap: 8px; padding: 9px; }
    .recommendation strong { font-size: 8px; }
    .recommendation p { font-size: 7px; }
    .final-cta { margin-top: 10px; padding: 64px 0; }
    .final-cta h2 { font-size: clamp(44px, 12.5vw, 60px); }
    .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 20px; padding-top: 34px; padding-bottom: 30px; }
    .footer-brand-block { grid-column: 1 / -1; }
    .footer-bottom { min-height: 60px; align-items: flex-start; flex-direction: column; justify-content: center; gap: 2px; font-size: 8px; }
}

@media (max-width: 360px) {
    :root { --shell-gutter: 15px; }
    .hero h1 { font-size: 46px; }
    .trust-points { display: grid; grid-template-columns: 1fr; }
    .score-card { width: 88%; }
    .tag-top { right: -2px; }
    .tag-bottom { left: -2px; }
    .mockup-topbar { padding-inline: 11px; }
    .category-row { grid-template-columns: 82px 1fr 18px; gap: 6px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
