:root {
  color-scheme: light;
  --ink: #152237;
  --ink-2: #26364c;
  --muted: #536171;
  --line: #dce2e6;
  --paper: #f5f5f0;
  --white: #fffefa;
  --navy: #101b2c;
  --navy-2: #18273c;
  --lime: #fff46f;
  --lime-2: #ede05e;
  --amber: #f0a445;
  --teal: #7fd9ca;
  --font-display: "Manrope", "DM Sans", sans-serif;
  --font-body: "DM Sans", sans-serif;
  --container: 1180px;
  --radius: 18px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 84px; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--font-body); font-size: 15px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
.container { width: min(var(--container), calc(100% - 64px)); margin-inline: auto; }
.skip-link { position: fixed; z-index: 999; top: 10px; left: 10px; transform: translateY(-160%); padding: 10px 14px; background: var(--lime); color: var(--navy); border-radius: 6px; font-weight: 700; }
.skip-link:focus { transform: translateY(0); }

.site-header { position: sticky; z-index: 50; top: 0; background: rgba(255,254,250,.94); border-bottom: 1px solid rgba(21,34,55,.09); backdrop-filter: blur(16px); }
.header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.brand { display: inline-flex; align-items: center; gap: 10px; min-width: 205px; }
.brand-mark-frame { flex: 0 0 auto; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 8px; background: #000; }
.brand-mark { width: 31px; height: 29px; object-fit: contain; }
.brand-identity { display: flex; flex-direction: column; gap: 4px; line-height: 1; }
.brand-wordmark { width: 145px; height: auto; }
.brand-identity small { color: #52606e; font-size: 6.6px; letter-spacing: .065em; font-weight: 700; white-space: nowrap; }
.main-nav { display: flex; align-items: center; gap: clamp(18px, 2.6vw, 36px); color: #4e5a6d; font-size: 12px; font-weight: 600; }
.main-nav > a:not(.nav-cta) { min-height: 44px; display: inline-flex; align-items: center; transition: color .2s ease; }
.main-nav > a:not(.nav-cta):hover, .main-nav > a:not(.nav-cta):focus-visible { color: var(--ink); }
.nav-cta { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 11px 16px; color: var(--navy); background: var(--lime); border-radius: 5px; font-size: 11px; font-weight: 700; transition: transform .2s, background .2s; }
.nav-cta span { margin-left: 7px; font-size: 14px; }
.nav-cta:hover { background: var(--lime-2); transform: translateY(-2px); }
.menu-toggle { display: none; }

.section-dark { position: relative; color: var(--white); background: var(--navy); overflow: hidden; }
.hero { min-height: 615px; padding: 74px 0 0; }
.hero-gridlines { position: absolute; inset: 0; pointer-events: none; opacity: .22; background-image: linear-gradient(90deg, transparent 0 97%, rgba(255,255,255,.12) 97% 97.15%, transparent 97.15%), linear-gradient(0deg, transparent 0 95%, rgba(255,255,255,.08) 95% 95.2%, transparent 95.2%); background-size: 94px 94px; mask-image: linear-gradient(90deg, transparent, #000 48%, #000); }
.hero::after { content: ""; position: absolute; width: 470px; height: 470px; right: 10%; top: 6%; border-radius: 50%; background: radial-gradient(circle, rgba(107,181,174,.13), transparent 67%); pointer-events: none; }
.hero-layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr); align-items: center; gap: clamp(34px, 6vw, 84px); }
.hero-copy { max-width: 555px; padding: 8px 0 29px; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 21px; color: #586776; font-size: 10px; line-height: 1.4; letter-spacing: .14em; font-weight: 700; }
.eyebrow-light { color: #a8b5c4; }
.eyebrow-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 4px rgba(201,243,106,.13); }
.eyebrow-number { color: #566574; font-family: var(--font-display); font-size: 11px; letter-spacing: 0; }
.eyebrow-light .eyebrow-number { color: #b7c3cf; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--font-display); }
h1 { max-width: 600px; margin-bottom: 24px; color: #fffefa; font-size: clamp(38px, 5vw, 62px); line-height: 1.08; letter-spacing: -.055em; font-weight: 700; }
h1 span, .hero h1 span { color: var(--lime); }
.hero-intro { max-width: 515px; margin-bottom: 30px; color: #bac5d1; font-size: 15px; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; }
.button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 17px; padding: 0 18px; border: 0; border-radius: 5px; font-size: 12px; font-weight: 700; transition: transform .2s, background .2s, box-shadow .2s; cursor: pointer; }
.button span { font-size: 16px; }
.button:hover { transform: translateY(-2px); }
.button-lime { color: var(--navy); background: var(--lime); }
.button-lime:hover { background: var(--lime-2); box-shadow: 0 10px 28px rgba(201,243,106,.16); }
.button-dark { color: var(--white); background: var(--navy); }
.button-dark:hover { background: #22344b; box-shadow: 0 10px 28px rgba(16,27,44,.14); }
.text-link { min-height: 44px; display: inline-flex; align-items: center; gap: 10px; padding: 4px 0; border-bottom: 1px solid currentColor; font-size: 12px; font-weight: 700; }
.text-link span { font-size: 16px; transition: transform .2s; }
.text-link:hover span { transform: translate(3px, -2px); }
.text-link-light { color: #d8e0e6; }
.text-link-dark { color: var(--ink); }
.hero-proofline { display: flex; align-items: center; gap: 11px; margin-top: 34px; color: #8593a5; font-size: 11px; }
.proof-mark { width: 19px; height: 19px; display: grid; place-items: center; border: 1px solid rgba(201,243,106,.45); border-radius: 50%; color: var(--lime); font-size: 10px; }
.hero-visual { position: relative; min-height: 418px; margin: 0 -14px 0 0; padding: 14px; border: 1px solid rgba(213,225,231,.18); background: rgba(255,255,255,.04); box-shadow: 0 24px 85px rgba(0,0,0,.2); }
.hero-image { width: 100%; height: 388px; object-fit: cover; object-position: center; background: linear-gradient(135deg, #203148, #0b1625); }
.visual-topline { position: absolute; top: 28px; left: 29px; right: 29px; display: flex; align-items: center; gap: 8px; color: #f4f7f2; font-size: 9px; letter-spacing: .12em; font-weight: 700; text-shadow: 0 1px 8px rgba(0,0,0,.5); }
.live-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 12px rgba(201,243,106,.9); }
.visual-index { margin-left: auto; color: #e1e5e7; font-size: 8px; }
.visual-callout { position: absolute; right: 28px; bottom: 48px; left: 28px; display: flex; align-items: center; gap: 12px; padding: 14px; color: var(--ink); background: rgba(255,254,250,.96); box-shadow: 0 15px 40px rgba(0,0,0,.2); }
.callout-icon { flex: 0 0 28px; width: 28px; height: 28px; display: grid; place-items: center; color: #643e13; background: #f7d59d; border-radius: 50%; font-size: 15px; font-weight: 800; }
.visual-callout div:nth-child(2) { display: flex; flex-direction: column; gap: 3px; }
.visual-callout small { color: #566270; font-size: 8px; letter-spacing: .12em; font-weight: 700; }
.visual-callout strong { font-family: var(--font-display); font-size: 12px; line-height: 1.4; }
.callout-arrow { margin-left: auto; color: #647187; }
.visual-caption { position: absolute; bottom: 22px; left: 29px; color: #fff; font-size: 8px; text-shadow: 0 1px 8px rgba(0,0,0,.7); }
.hero-bottom { position: relative; z-index: 2; display: flex; align-items: center; gap: 15px; min-height: 67px; margin-top: 42px; border-top: 1px solid rgba(255,255,255,.12); }
.hero-bottom-label { color: #8693a2; font-size: 9px; letter-spacing: .14em; font-weight: 700; }
.hero-bottom-rule { flex: 1; height: 1px; background: rgba(255,255,255,.16); }
.hero-bottom-note { color: #cad2d9; font-size: 10px; }

.systems-strip { padding: 22px 0 20px; background: #e9ece8; border-bottom: 1px solid #dce2dd; }
.systems-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 10px 28px; }
.systems-inner > p { margin: 0; color: #596678; font-size: 11px; font-weight: 600; }
.system-tags { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.system-tags span { padding: 6px 10px; border: 1px solid #ccd5d2; color: #526174; font-size: 9px; letter-spacing: .11em; font-weight: 700; }
.systems-inner > small { grid-column: 1 / -1; color: #53606c; font-size: 10px; text-align: right; }

.section { padding: 104px 0; }
.section-problem { background: var(--paper); }
.section-heading { margin-bottom: 42px; }
.split-heading { display: grid; grid-template-columns: 1.15fr .65fr; align-items: end; gap: 65px; }
.section-heading h2, .how-copy h2, .alerts-copy h2, .diagnostic-main h2, .trust-copy h2, .contact-copy h2 { max-width: 700px; margin-bottom: 0; color: var(--ink); font-size: clamp(31px, 4vw, 47px); line-height: 1.13; letter-spacing: -.055em; font-weight: 650; }
.section-heading h2 span, .how-copy h2 span, .trust-copy h2 span { color: #788896; }
.heading-aside { max-width: 340px; margin: 0 0 4px auto; color: var(--muted); font-size: 13px; line-height: 1.75; }
.risk-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.risk-card { min-height: 242px; padding: 23px 24px 22px; border: 1px solid #dce1df; background: rgba(255,254,250,.58); transition: transform .25s, box-shadow .25s, border-color .25s; }
.risk-card:hover { transform: translateY(-4px); border-color: #bcc9c6; box-shadow: 0 16px 32px rgba(22,38,56,.06); }
.risk-card-highlight { background: #e9efeb; }
.risk-card-top { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 27px; }
.risk-number { color: #566372; font-family: var(--font-display); font-size: 10px; font-weight: 700; }
.risk-icon { width: 33px; height: 33px; display: grid; place-items: center; border: 1px solid #ccd5d4; border-radius: 50%; color: #536477; font-size: 15px; }
.risk-card h3 { margin-bottom: 10px; font-size: 17px; letter-spacing: -.03em; }
.risk-card p { min-height: 54px; margin-bottom: 20px; color: #536171; font-size: 12px; line-height: 1.65; }
.risk-tag { color: #53616d; font-size: 9px; letter-spacing: .13em; font-weight: 700; }
.section-footnote { max-width: 760px; margin: 20px 0 0; color: #7d8792; font-size: 10px; }
.section-footnote span { color: #bd7b2c; font-weight: 700; }

.section-how { background: #e9ece8; }
.how-layout { display: grid; grid-template-columns: .9fr 1.1fr; align-items: start; gap: 90px; }
.how-copy { position: sticky; top: 116px; }
.how-copy h2 { margin-bottom: 21px; }
.section-intro { max-width: 460px; margin: 19px 0 24px; color: #536171; font-size: 14px; line-height: 1.8; }
.flow-list { border-top: 1px solid #cfd7d3; }
.flow-step { display: grid; grid-template-columns: 35px 17px 1fr 28px; gap: 13px; min-height: 135px; padding: 25px 0 24px; border-bottom: 1px solid #cfd7d3; }
.flow-step-num { padding-top: 2px; color: #53606b; font-family: var(--font-display); font-size: 10px; font-weight: 700; }
.flow-step-line { position: relative; width: 17px; display: flex; justify-content: center; }
.flow-step-line::before { content: ""; position: absolute; top: -25px; bottom: -25px; width: 1px; background: #bec8c4; }
.flow-step:first-child .flow-step-line::before { top: 7px; }
.flow-step:last-child .flow-step-line::before { bottom: calc(100% - 9px); }
.flow-step-line span { position: relative; z-index: 1; width: 9px; height: 9px; margin-top: 5px; border: 2px solid #72848b; border-radius: 50%; background: #e9ece8; }
.flow-step:nth-child(2) .flow-step-line span { border-color: #74a99c; }
.flow-step:nth-child(3) .flow-step-line span { border-color: #91af59; background: var(--lime); }
.flow-step-content h3 { margin: 0 0 8px; font-size: 16px; letter-spacing: -.03em; }
.flow-step-content p { max-width: 420px; margin: 0; color: #51606e; font-size: 12px; line-height: 1.7; }
.flow-step-symbol { display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid #c8d1ce; color: #566a74; font-size: 13px; }

.section-timeline { background: var(--white); }
.timeline-heading { margin-bottom: 40px; }
.timeline-example { margin: 0; border: 1px solid #e0e4e0; background: #fcfcf8; box-shadow: 0 18px 45px rgba(20,40,55,.045); }
.timeline-image-scroll { overflow-x: auto; overscroll-behavior-x: contain; scrollbar-color: #9eaaa7 #edf0ec; scrollbar-width: thin; }
.timeline-image-scroll img { width: 100%; height: auto; }
.timeline-image-scroll:focus-visible { outline: 3px solid #6e9a7c; outline-offset: 3px; }
.timeline-example figcaption { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 16px; color: #53616d; font-size: 11px; line-height: 1.6; }
.timeline-example figcaption a { flex: 0 0 auto; min-height: 44px; display: inline-flex; align-items: center; color: #254e39; font-size: 11px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

.section-alerts { color: #eef2ef; background: var(--navy); overflow: hidden; }
.alerts-layout { display: grid; grid-template-columns: 1fr .84fr; align-items: center; gap: 90px; }
.alerts-copy .eyebrow-number { color: #9aa8b8; }
.alerts-copy h2 { max-width: 500px; color: #fffefa; }
.alerts-copy h2 span, .contact-copy h2 span { color: var(--lime); }
.alerts-copy > p:not(.eyebrow) { max-width: 490px; margin: 22px 0 18px; color: #aebbc9; font-size: 13px; line-height: 1.8; }
.alert-channel-note { display: flex; align-items: flex-start; gap: 9px; color: #8797a8 !important; font-size: 10px !important; }
.channel-mark { color: var(--lime); }
.notification-example { max-width: 435px; justify-self: end; width: 100%; padding: 18px; color: var(--ink); background: #f5f6f1; box-shadow: 0 24px 70px rgba(0,0,0,.26); transform: rotate(1deg); }
.notification-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 15px; border-bottom: 1px solid #dde3df; }
.notification-brand { display: flex; align-items: center; gap: 8px; font-family: var(--font-display); font-size: 11px; font-weight: 800; }
.notification-brand small { color: #53616b; font-family: var(--font-body); font-size: 9px; letter-spacing: .08em; }
.notification-brand-icon { width: 25px; height: 25px; display: grid; place-items: center; color: var(--navy); background: var(--lime); border-radius: 6px; font-size: 9px; }
.notification-menu { color: #53616b; font-size: 12px; letter-spacing: 2px; }
.notification-body { display: flex; gap: 13px; align-items: flex-start; padding: 22px 3px 18px; }
.notification-alert-icon { flex: 0 0 34px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: #78511f; background: #f5d9ad; font-weight: 800; }
.notice-kicker { color: #754a19; font-size: 9px; letter-spacing: .12em; font-weight: 700; }
.notification-body h3 { margin: 3px 0 4px; font-size: 16px; letter-spacing: -.03em; }
.notification-body p { margin: 0; color: #526171; font-size: 11px; }
.notification-detail { display: flex; flex-direction: column; gap: 5px; padding: 12px 14px; background: #e9eeea; }
.notification-detail span { color: #53616b; font-size: 9px; letter-spacing: .11em; font-weight: 700; }
.notification-detail strong { color: #35495a; font-size: 10px; }
.notification-footer { display: flex; align-items: center; justify-content: space-between; padding: 14px 2px 6px; color: #52606c; font-size: 10px; }
.notification-footer span:first-child { display: flex; align-items: center; gap: 6px; }
.notification-footer i { width: 6px; height: 6px; border-radius: 50%; background: var(--amber); }
.notification-disclaimer { margin: 5px 0 0; color: #929ba2; font-size: 8px; line-height: 1.45; }

.section-diagnostic { background: var(--lime); }
.diagnostic-layout { display: grid; grid-template-columns: .8fr 1.1fr; align-items: start; gap: 88px; }
.diagnostic-main .eyebrow { color: #455632; }
.diagnostic-main .eyebrow-number { color: #455632; }
.diagnostic-main h2 { max-width: 510px; color: var(--navy); }
.diagnostic-main h2 span { color: #41552e; }
.diagnostic-main .section-intro { max-width: 465px; margin: 21px 0 24px; color: #40513c; }
.diagnostic-note { max-width: 440px; margin: 16px 0 0; color: #536444; font-size: 10px; line-height: 1.65; }
.diagnostic-note strong { color: #293b27; }
.diagnostic-deliverables { border-top: 1px solid rgba(31,48,32,.28); }
.deliverable-heading { display: flex; align-items: center; justify-content: space-between; padding: 0 0 11px; color: #405531; font-size: 9px; letter-spacing: .13em; font-weight: 700; }
.deliverable-days { padding: 4px 8px; border: 1px solid rgba(54,78,40,.28); color: #40582d; }
.deliverable { display: grid; grid-template-columns: 32px 1fr 24px; gap: 12px; align-items: start; padding: 18px 0 17px; border-top: 1px solid rgba(31,48,32,.24); }
.deliverable-index { padding-top: 2px; color: #435731; font-family: var(--font-display); font-size: 10px; font-weight: 700; }
.deliverable h3 { margin: 0 0 4px; color: #1f3026; font-size: 13px; }
.deliverable p { max-width: 440px; margin: 0; color: #506046; font-size: 10px; line-height: 1.6; }
.deliverable-check { display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid rgba(54,78,40,.32); color: #40582d; font-size: 12px; }

.section-trust { background: #eef0ec; }
.trust-intro { max-width: 920px; margin-bottom: 42px; }
.trust-intro .eyebrow { margin-bottom: 16px; }
.trust-intro h2 { max-width: 850px; margin-bottom: 18px; color: var(--navy); font-size: clamp(34px, 4.1vw, 52px); line-height: 1.12; letter-spacing: -.045em; }
.trust-lede { max-width: 830px; margin: 0; padding-left: 17px; border-left: 3px solid var(--lime-2); color: #40515f; font-size: 15px; line-height: 1.75; }
.founder-profile { display: grid; grid-template-columns: 144px minmax(0, 1fr); gap: clamp(24px, 3.5vw, 42px); align-items: start; padding: 34px 38px; border: 1px solid #d6ddd9; background: #fffefa; }
.founder-portrait { display: flex; flex-direction: column; align-items: center; gap: 14px; margin: 0; text-align: center; }
.founder-portrait-frame { width: 112px; height: 112px; flex: 0 0 112px; display: grid; place-items: center; overflow: hidden; border: 4px solid var(--lime); border-radius: 50%; background: #0b1422; box-shadow: 0 0 0 1px #d4dbd6; }
.founder-portrait-frame img { display: block; width: 100%; height: 100%; max-width: 112px; object-fit: contain; }
.founder-portrait figcaption { display: grid; gap: 3px; }
.founder-portrait figcaption strong { color: #1c2c40; font-family: var(--font-display); font-size: 16px; }
.founder-portrait figcaption span { color: #4f5e6d; font-size: 11px; }
.founder-story { max-width: 880px; min-width: 0; }
.founder-story-block + .founder-story-block { margin-top: 18px; padding-top: 16px; border-top: 1px solid #e4e9e4; }
.founder-story-block h3 { margin: 0 0 7px; color: #536844; font-family: var(--font-display); font-size: 10px; line-height: 1.35; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.founder-story-block p { margin: 0 0 10px; color: #40515f; font-size: 14px; line-height: 1.72; }
.founder-story-block p:last-child { margin-bottom: 0; }
.founder-story-block .founder-bio { color: #24364b; font-size: 15px; }
.founder-story .founder-conclusion { margin: 20px 0 0; padding: 15px 18px; border-left: 3px solid var(--lime-2); color: #233447; background: #f4f5ef; font-size: 14px; line-height: 1.7; }
.validation-block { margin-top: 48px; }
.validation-heading { margin-bottom: 18px; }
.validation-heading .eyebrow { margin-bottom: 8px; }
.validation-heading h3 { max-width: 680px; margin: 0; color: var(--navy); font-size: 24px; line-height: 1.25; letter-spacing: -.03em; }
.validation-grid { display: grid; grid-template-columns: minmax(0, 980px); gap: 10px; }
.validation-card { min-height: 96px; display: grid; grid-template-columns: 140px minmax(0, 1fr); align-items: center; gap: 18px; padding: 13px 18px; border: 1px solid #d6ddd9; background: rgba(255,254,250,.92); }
.validation-logo-panel { min-height: 70px; display: grid; place-items: center; margin: 0; border-right: 1px solid #e6ebe7; background: #fff; }
.validation-logo-panel img { width: auto; max-width: 112px; height: auto; max-height: 62px; object-fit: contain; }
.validation-card h4 { margin: 0 0 6px; color: #1e2f43; font-family: var(--font-display); font-size: 14px; line-height: 1.35; }
.validation-card p { margin: 0; color: #4f5e6d; font-size: 12px; line-height: 1.65; }
.validation-note { margin: 12px 0 0; color: #53616b; font-size: 10px; line-height: 1.6; }

.section-faq { background: #fffefa; }
.faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 76px; align-items: start; }
.faq-heading { position: sticky; top: 110px; }
.faq-heading h2 { max-width: 410px; }
.faq-heading h2 span { color: #516273; }
.faq-heading > p:not(.eyebrow) { max-width: 340px; margin: 18px 0 20px; color: #536171; font-size: 13px; line-height: 1.7; }
.faq-list { border-top: 1px solid #d8dfdc; }
.faq-list-guidance { margin: 0; padding: 13px 0; color: #536171; font-size: 12px; line-height: 1.5; }
.faq-item { border-bottom: 1px solid #d8dfdc; }
.faq-item summary { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 14px 10px; color: #1b2a3d; font-size: 14px; line-height: 1.45; font-weight: 700; list-style: none; cursor: pointer; transition: background .18s ease, color .18s ease; }
.faq-item summary:hover, .faq-item[open] summary { color: #254e39; background: #f4f6f1; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: "+"; flex: 0 0 26px; width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid #82938e; border-radius: 50%; color: #254e39; background: #f4f6f1; font-size: 17px; font-weight: 500; }
.faq-item[open] summary::after { content: "−"; color: #fffefa; border-color: #254e39; background: #254e39; }
.faq-item p { max-width: 710px; margin: 0; padding: 0 42px 20px 0; color: #4f5e6d; font-size: 13px; line-height: 1.7; }

.section-contact { color: var(--white); background: var(--navy); }
.contact-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 94px; align-items: start; }
.contact-copy .eyebrow-number { color: #9ba9b7; }
.contact-copy h2 { max-width: 470px; color: #fffefa; }
.contact-copy > p:not(.eyebrow) { max-width: 410px; margin: 20px 0 31px; color: #adb9c7; font-size: 13px; line-height: 1.8; }
.contact-direct { display: flex; align-items: flex-start; gap: 12px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.16); }
.contact-direct-icon { width: 27px; height: 27px; display: grid; place-items: center; border: 1px solid rgba(201,243,106,.4); color: var(--lime); border-radius: 50%; }
.contact-direct div { display: flex; flex-direction: column; gap: 5px; }
.contact-direct small { margin-bottom: 2px; color: #8291a3; font-size: 9px; letter-spacing: .13em; font-weight: 700; }
.contact-direct a { min-height: 44px; display: inline-flex; align-items: center; color: #dbe2e6; font-size: 12px; }
.contact-direct a:hover { color: var(--lime); }
.company-details { display: grid; gap: 3px; margin-top: 20px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.16); color: #c0cad4; font-size: 12px; font-style: normal; line-height: 1.55; }
.company-details strong { color: #fffefa; font-size: 13px; }
.contact-form-wrap { padding: 25px; color: var(--ink); background: #f5f6f1; }
.form-title { display: flex; flex-direction: column; gap: 5px; margin-bottom: 22px; }
.form-title span { color: #52616b; font-size: 9px; letter-spacing: .14em; font-weight: 700; }
.form-title strong { color: #1b2a3d; font-family: var(--font-display); font-size: 20px; letter-spacing: -.035em; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.form-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 13px; color: #435466; font-size: 11px; font-weight: 700; }
.form-field input, .form-field select { width: 100%; min-height: 44px; padding: 10px 11px; border: 1px solid #d6deda; border-radius: 2px; color: #29394d; background: #fffefa; outline: none; font-size: 13px; font-weight: 400; }
.form-field input::placeholder { color: #65717c; }
.form-field input:focus, .form-field select:focus { border-color: #809a78; box-shadow: 0 0 0 3px rgba(128,154,120,.15); }
.form-submit { width: 100%; margin-top: 1px; }
.form-privacy { margin: 11px 0 0; color: #53616b; font-size: 11px; line-height: 1.6; }
.privacy-details { margin-top: 9px; border: 1px solid #d4dcd8; background: #fbfcf8; scroll-margin-top: 90px; }
.privacy-details summary { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 11px; color: #334653; font-size: 11px; line-height: 1.4; font-weight: 700; list-style: none; cursor: pointer; }
.privacy-details summary::-webkit-details-marker { display: none; }
.privacy-details summary::after { content: "+"; color: #405531; font-size: 16px; font-weight: 400; }
.privacy-details[open] summary::after { content: "−"; }
.privacy-details-content { padding: 0 11px 12px; }
.privacy-details-content p { margin: 8px 0; color: #4f5e6d; font-size: 11px; line-height: 1.65; }
.privacy-policy-link { min-height: 44px; display: inline-flex; align-items: center; color: #254e39; font-size: 11px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.form-status { min-height: 0; color: #305c43; font-size: 10px; line-height: 1.55; }
.form-status:not(:empty) { margin-top: 13px; padding: 12px; border: 1px solid #b7d6bb; background: #edf7eb; }
.form-status a { min-height: 44px; display: inline-flex; align-items: center; margin-top: 5px; padding: 7px 4px; color: #254e39; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }

.site-footer { color: #c0cad4; background: #0b1422; }
.footer-top { min-height: 109px; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 20px; border-bottom: 1px solid rgba(255,255,255,.13); }
.brand-footer { min-width: 0; }
.brand-footer-logo { width: min(218px, 100%); height: auto; object-fit: contain; }
.footer-top > p { margin: 0; color: #dbe2e7; font-family: var(--font-display); font-size: 11px; font-weight: 700; }
.footer-top > p span { color: #8795a6; font-family: var(--font-body); font-size: 9px; font-weight: 400; }
.footer-top-link { min-height: 44px; display: inline-flex; align-items: center; justify-self: end; color: #aab5c0; font-size: 11px; }
.footer-top-link:hover { color: var(--lime); }
.footer-bottom { display: flex; justify-content: space-between; gap: 24px; padding-top: 16px; padding-bottom: 17px; color: #758294; font-size: 10px; line-height: 1.55; }
.footer-company-data { display: block; }
.footer-bottom a { min-height: 44px; display: inline-flex; align-items: center; color: #a7b3bf; }
.footer-bottom a:hover { color: var(--lime); }

:focus-visible { outline: 3px solid #6e9a7c; outline-offset: 3px; }

@media (max-width: 980px) {
  .container { width: min(100% - 48px, var(--container)); }
  .hero { padding-top: 60px; }
  .hero-layout { grid-template-columns: 1fr .9fr; gap: 28px; }
  .hero-visual { min-height: 360px; margin-right: 0; }
  .hero-image { height: 330px; }
  .hero h1 { font-size: clamp(38px, 5.2vw, 52px); }
  .hero-intro { font-size: 13px; }
  .how-layout, .diagnostic-layout, .contact-layout, .faq-layout { gap: 55px; }
  .alerts-layout { gap: 55px; }
  .founder-profile { grid-template-columns: 136px minmax(0, 1fr); gap: 22px; padding: 24px; }
  .founder-portrait-frame { width: 108px; height: 108px; flex-basis: 108px; }
  .validation-grid { gap: 10px; }
  .validation-card { grid-template-columns: 128px minmax(0, 1fr); gap: 14px; padding: 12px 14px; }
  .validation-logo-panel { min-height: 68px; }
  .validation-logo-panel img { max-width: 96px; max-height: 56px; }
  .timeline-image-scroll img { width: 1100px; max-width: none; }
  .section { padding: 84px 0; }
}

@media (max-width: 760px) {
  html { scroll-padding-top: 68px; }
  .container { width: calc(100% - 40px); }
  .header-inner { min-height: 66px; }
  .menu-toggle { width: 44px; height: 44px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; border: 1px solid #dce2e0; border-radius: 4px; background: transparent; cursor: pointer; }
  .menu-toggle span { width: 17px; height: 1.5px; background: var(--navy); transition: transform .2s; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.75px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.75px) rotate(-45deg); }
  .main-nav { position: absolute; top: calc(100% + 1px); right: 0; left: 0; display: none; align-items: stretch; gap: 0; padding: 8px 20px 18px; border-bottom: 1px solid #dce2e0; background: var(--white); box-shadow: 0 16px 28px rgba(20,35,50,.08); }
  .main-nav.is-open { display: flex; flex-direction: column; }
  .main-nav > a:not(.nav-cta) { min-height: 48px; padding: 12px 2px; border-bottom: 1px solid #edf0ed; }
  .nav-cta { margin-top: 12px; text-align: center; }
  .hero { padding: 48px 0 0; }
  .hero-layout { grid-template-columns: 1fr; gap: 30px; }
  .hero-copy { max-width: 630px; padding-bottom: 0; }
  .hero h1 { max-width: 620px; font-size: clamp(40px, 9vw, 60px); }
  .hero-intro { max-width: 560px; font-size: 14px; }
  .hero-visual { min-height: 330px; margin: 0; }
  .hero-image { height: 300px; }
  .hero-bottom { margin-top: 30px; }
  .systems-inner { grid-template-columns: 1fr; gap: 12px; }
  .system-tags { justify-content: flex-start; flex-wrap: wrap; }
  .systems-inner > small { text-align: left; }
  .section { padding: 74px 0; }
  .split-heading { grid-template-columns: 1fr; gap: 18px; }
  .heading-aside { margin: 0; }
  .risk-grid { grid-template-columns: 1fr; gap: 9px; }
  .risk-card { min-height: 0; padding: 20px; }
  .risk-card-top { margin-bottom: 16px; }
  .risk-card p { min-height: 0; margin-bottom: 15px; }
  .how-layout, .diagnostic-layout, .contact-layout, .alerts-layout, .faq-layout { grid-template-columns: 1fr; gap: 38px; }
  .faq-heading { position: static; }
  .how-copy { position: static; }
  .founder-profile { grid-template-columns: 1fr; gap: 22px; padding: 24px; }
  .founder-portrait { flex-direction: row; align-items: center; justify-content: flex-start; gap: 14px; text-align: left; }
  .founder-portrait-frame { width: 96px; height: 96px; flex-basis: 96px; border-width: 3px; }
  .founder-story { max-width: none; }
  .validation-grid { grid-template-columns: 1fr; gap: 10px; }
  .validation-card { min-height: 88px; grid-template-columns: 100px minmax(0, 1fr); gap: 12px; padding: 11px 13px; }
  .validation-logo-panel { min-height: 64px; }
  .validation-logo-panel img { max-width: 78px; max-height: 52px; }
  .flow-step { min-height: 120px; }
  .timeline-image-scroll img { width: 1547px; max-width: none; }
  .notification-example { justify-self: stretch; max-width: 500px; transform: none; }
  .diagnostic-layout { gap: 33px; }
  .contact-layout { gap: 32px; }
  .footer-top { grid-template-columns: 1fr auto; padding: 20px 0; }
  .footer-top > p { grid-row: 2; grid-column: 1 / -1; }
  .footer-top-link { grid-column: 2; grid-row: 1; }
}

@media (max-width: 480px) {
  .container { width: calc(100% - 32px); }
  .brand { min-width: 0; gap: 6px; }
  .brand-mark-frame { width: 30px; height: 30px; border-radius: 6px; }
  .brand-mark { width: 24px; height: 22px; }
  .brand-wordmark { width: 112px; }
  .brand-identity small { font-size: 6px; letter-spacing: .045em; }
  .hero { padding-top: 40px; }
  .hero .eyebrow { font-size: 9px; }
  .hero h1 { font-size: 40px; }
  .hero-intro { font-size: 13px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 17px; }
  .hero-proofline { margin-top: 23px; }
  .hero-visual { min-height: 280px; padding: 9px; }
  .hero-image { height: 262px; }
  .visual-topline { top: 20px; left: 20px; right: 20px; font-size: 8px; }
  .visual-callout { right: 17px; bottom: 38px; left: 17px; padding: 10px; gap: 8px; }
  .visual-callout strong { font-size: 10px; }
  .visual-caption { bottom: 17px; left: 20px; font-size: 8px; }
  .hero-bottom { flex-wrap: wrap; gap: 8px; padding: 14px 0; }
  .hero-bottom-rule { display: none; }
  .hero-bottom-note { width: 100%; }
  .section { padding: 62px 0; }
  .section-heading h2, .how-copy h2, .alerts-copy h2, .diagnostic-main h2, .trust-intro h2, .contact-copy h2, .faq-heading h2 { font-size: 34px; }
  .section-heading .eyebrow, .how-copy .eyebrow, .alerts-copy .eyebrow, .diagnostic-main .eyebrow, .trust-intro .eyebrow, .contact-copy .eyebrow { font-size: 9px; }
  .trust-intro { margin-bottom: 29px; }
  .trust-lede { font-size: 13px; }
  .founder-profile { padding: 18px 14px; }
  .founder-portrait-frame { width: 84px; height: 84px; flex-basis: 84px; }
  .founder-portrait figcaption strong { font-size: 14px; }
  .founder-portrait figcaption span { font-size: 10px; }
  .founder-story-block h3 { font-size: 9px; }
  .founder-story-block p { font-size: 12px; line-height: 1.68; }
  .founder-story-block .founder-bio { font-size: 13px; }
  .founder-story .founder-conclusion { margin-top: 16px; padding: 12px 13px; font-size: 12px; }
  .validation-heading h3 { font-size: 21px; }
  .validation-card { grid-template-columns: 78px 1fr; gap: 10px; padding: 11px 10px; }
  .validation-logo-panel img { max-width: 64px; max-height: 48px; }
  .validation-card h4 { font-size: 13px; }
  .validation-card p { font-size: 11px; }
  .timeline-card-head { align-items: flex-start; flex-direction: column; }
  .timeline-status { font-size: 8px; }
  .timeline-insight { padding: 12px; }
  .field-row { grid-template-columns: 1fr; gap: 0; }
  .faq-item summary { min-height: 60px; font-size: 13px; }
  .faq-item p { padding-right: 0; font-size: 12px; }
  .contact-form-wrap { padding: 19px 15px; }
  .footer-bottom { flex-direction: column; gap: 4px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}


/* Capturas demonstrativas do produto e seleção do canal de contato */
.hero-intro { margin-bottom: 18px; }
.hero-pillars { display: flex; flex-wrap: wrap; gap: 7px 9px; margin: 0 0 25px; padding: 0; list-style: none; }
.hero-pillars li { display: inline-flex; align-items: center; gap: 7px; padding: 6px 9px; border: 1px solid rgba(229,237,230,.2); color: #e2e9e8; background: rgba(255,255,255,.045); font-size: 10px; line-height: 1.3; }
.hero-pillars li::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--lime); }
.hero-visual.hero-dashboard { min-height: 0; margin-right: -14px; padding: 12px; }
.hero-dashboard .hero-image { height: auto; aspect-ratio: 16 / 10; object-fit: contain; object-position: top center; background: #e9edf2; }
.hero-dashboard figcaption { margin-top: 8px; color: #b6c1cd; font-size: 9px; line-height: 1.5; letter-spacing: .07em; }
.hero-dashboard .hero-tagline { margin-top: 14px; color: #f4f7f2; font-family: var(--font-display); font-size: clamp(18px, 2vw, 24px); font-weight: 700; line-height: 1.25; letter-spacing: -.035em; text-align: center; }
.hero-tagline-highlight { color: var(--lime); }

.section-platform { background: #eef0ec; }
.platform-heading { margin-bottom: 24px; }
.platform-demo-note { margin: 0 0 24px; padding: 12px 16px; border-left: 3px solid #a8c84b; color: #435261; background: #fffefa; font-size: 12px; line-height: 1.65; }
.platform-demo-note strong { color: #24384d; }
.platform-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.platform-card { grid-column: span 2; min-width: 0; border: 1px solid #d7dfda; background: #fffefa; box-shadow: 0 8px 24px rgba(22,38,56,.035); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.platform-card:nth-child(4), .platform-card:nth-child(5) { grid-column: span 3; }
.platform-card:hover { transform: translateY(-3px); border-color: #b8c7be; box-shadow: 0 15px 32px rgba(22,38,56,.075); }
.platform-screenshot { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 10; background: #13233b; }
.platform-screenshot img { width: 100%; height: 100%; object-fit: cover; object-position: top left; transition: transform .28s ease; }
.platform-screenshot:hover img { transform: scale(1.018); }
.platform-card-body { padding: 15px 17px 18px; }
.platform-demo-label { display: block; margin-bottom: 8px; color: #566c4a; font-size: 8px; line-height: 1.4; letter-spacing: .1em; font-weight: 700; }
.platform-card h3 { margin: 0 0 7px; color: #1b2a3d; font-size: 16px; line-height: 1.3; letter-spacing: -.025em; }
.platform-card p { margin: 0; color: #526171; font-size: 12px; line-height: 1.65; }
.platform-screenshot:focus-visible { outline: 3px solid #6e9a7c; outline-offset: 3px; }

.form-status-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 8px; }
.form-status-actions .button { min-height: 44px; margin-top: 0; padding: 0 14px; font-size: 11px; text-decoration: none; }
.form-status-actions .button-dark { color: #fffefa; }
.form-status-actions .button-outline { color: #1c2b3f; }
.button-outline { border: 1px solid #aebbb7; color: #1c2b3f; background: #fffefa; }
.button-outline:hover { border-color: #71867e; background: #f5f7f2; }

@media (max-width: 980px) {
  .platform-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-card, .platform-card:nth-child(4), .platform-card:nth-child(5) { grid-column: auto; }
}

@media (max-width: 760px) {
  .platform-grid { grid-template-columns: 1fr; gap: 13px; }
  .platform-card, .platform-card:nth-child(4), .platform-card:nth-child(5) { grid-column: auto; }
  .platform-heading { margin-bottom: 18px; }
  .platform-demo-note { margin-bottom: 18px; }
  .hero-dashboard .hero-tagline { margin-top: 12px; font-size: clamp(15px, 4.2vw, 20px); }
  .hero-dashboard figcaption { font-size: 8px; }
}

@media (max-width: 480px) {
  .hero-visual.hero-dashboard { padding: 9px; }
  .hero-pillars { gap: 6px; margin-bottom: 22px; }
  .hero-pillars li { font-size: 9px; }
  .platform-card-body { padding: 13px 14px 15px; }
  .platform-card h3 { font-size: 15px; }
  .form-status-actions { flex-direction: column; }
  .form-status-actions .button { width: 100%; }
}


/* Consentimento de cookies e página dedicada da política */
.footer-privacy-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px 18px; }
.footer-privacy-actions a, .footer-cookie-preferences { min-height: 44px; display: inline-flex; align-items: center; color: #a7b3bf; font-size: 10px; line-height: 1.5; }
.footer-cookie-preferences { padding: 0; border: 0; background: transparent; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.footer-privacy-actions a:hover, .footer-cookie-preferences:hover { color: var(--lime); }

.cookie-banner { position: fixed; z-index: 1000; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 15px max(24px, calc((100vw - var(--container)) / 2)); border-top: 1px solid #d4dcd8; color: var(--ink); background: var(--white); box-shadow: 0 -10px 36px rgba(9, 22, 38, .18); }
.cookie-banner[hidden] { display: none !important; }
.cookie-banner-copy { max-width: 760px; }
.cookie-banner-title { margin: 0 0 3px; color: var(--navy); font-family: var(--font-display); font-size: 14px; font-weight: 800; }
.cookie-banner-copy > p:last-child { margin: 0; color: #455465; font-size: 12px; line-height: 1.55; }
.cookie-banner-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
.cookie-banner-actions .button { min-height: 44px; padding: 0 14px; font-size: 11px; white-space: nowrap; }
.cookie-customize { min-height: 44px; padding: 0 8px; border: 0; color: #273b50; background: transparent; font-size: 11px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.cookie-customize:hover { color: #375c3d; }

.cookie-dialog { width: min(590px, calc(100vw - 28px)); max-width: none; max-height: min(88vh, 760px); margin: auto; padding: 0; overflow: auto; border: 1px solid #d4dcd8; border-radius: 4px; color: var(--ink); background: var(--white); box-shadow: 0 24px 70px rgba(8, 20, 34, .28); }
.cookie-dialog::backdrop { background: rgba(8, 17, 29, .62); backdrop-filter: blur(2px); }
.cookie-dialog-inner { padding: clamp(20px, 4vw, 32px); }
.cookie-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.cookie-dialog-header .eyebrow { margin: 0; font-size: 9px; }
.cookie-dialog-close { min-height: 44px; padding: 0 8px; border: 0; color: #455465; background: transparent; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.cookie-dialog h2 { margin: 8px 0 8px; color: var(--navy); font-family: var(--font-display); font-size: clamp(23px, 4vw, 30px); line-height: 1.2; letter-spacing: -.035em; }
.cookie-dialog-intro { margin: 0 0 18px; color: #4d5c6a; font-size: 13px; line-height: 1.6; }
.cookie-category { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 0; border-top: 1px solid #dce2e6; }
.cookie-category strong { display: block; color: #24364b; font-size: 13px; }
.cookie-category p { margin: 4px 0 0; color: #536171; font-size: 11px; line-height: 1.55; }
.cookie-switch { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; color: #374a5d; font-size: 11px; font-weight: 700; cursor: pointer; }
.cookie-switch input { width: 20px; height: 20px; min-height: 20px; margin: 0; accent-color: #385f42; }
.cookie-switch input:disabled { opacity: 1; }
.cookie-analytics-note { margin: 9px 0 0; padding: 11px 13px; border-left: 3px solid #9fb244; color: #4b5b65; background: #f1f3e9; font-size: 11px; line-height: 1.55; }
.cookie-dialog-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; margin-top: 18px; }
.cookie-dialog-actions .button { min-height: 44px; padding: 0 14px; font-size: 11px; }

.policy-page { min-height: 100vh; background: var(--paper); }
.policy-header { color: var(--white); background: var(--navy); }
.policy-header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.policy-brand { display: inline-flex; align-items: center; min-height: 44px; }
.policy-brand img { width: min(205px, 52vw); height: auto; }
.policy-back-link { min-height: 44px; display: inline-flex; align-items: center; gap: 7px; color: #e3e8eb; font-size: 12px; font-weight: 600; }
.policy-back-link:hover { color: var(--lime); }
.policy-main { width: min(850px, calc(100% - 48px)); margin: 46px auto 68px; }
.policy-main > .eyebrow { margin: 0 0 10px; color: #49634f; font-size: 9px; }
.policy-main > h1 { margin: 0 0 22px; color: var(--navy); font-family: var(--font-display); font-size: clamp(32px, 5vw, 48px); line-height: 1.12; letter-spacing: -.045em; }
.policy-site-note { margin: 0 0 22px; padding: 16px 18px; border-left: 3px solid #a9c650; color: #435261; background: #edf0e7; font-size: 12px; line-height: 1.65; }
.policy-site-note strong { color: #23364b; }
.policy-site-note p { margin: 5px 0 0; }
.policy-document { padding: clamp(22px, 5vw, 46px); border: 1px solid #d8dfdc; background: var(--white); box-shadow: 0 8px 28px rgba(22, 38, 56, .035); }
.policy-document > p { margin: 0 0 22px; color: #334457; font-size: 14px; line-height: 1.8; }
.policy-document section { padding-top: 21px; border-top: 1px solid #e0e5e3; }
.policy-document section + section { margin-top: 19px; }
.policy-document h2 { margin: 0 0 10px; color: #20334a; font-family: var(--font-display); font-size: 18px; line-height: 1.35; letter-spacing: -.02em; }
.policy-document p, .policy-document li { color: #405164; font-size: 13px; line-height: 1.75; }
.policy-document p { margin: 0 0 11px; }
.policy-document ul { margin: 8px 0 2px; padding-left: 23px; }
.policy-document li + li { margin-top: 8px; }
.policy-document strong { color: #24374b; }
.policy-document a { color: #28533c; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.policy-return { margin: 24px 0 0; }
.policy-return .button { min-height: 46px; padding: 0 17px; font-size: 12px; }

@media (max-width: 980px) {
  .cookie-banner { grid-template-columns: 1fr; gap: 11px; }
  .cookie-banner-actions { justify-content: flex-start; }
}

@media (max-width: 760px) {
  .footer-privacy-actions { justify-content: flex-start; }
  .cookie-banner { padding: 13px 18px max(13px, env(safe-area-inset-bottom)); }
  .cookie-banner-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
  .cookie-banner-actions .button { width: 100%; padding-inline: 8px; white-space: normal; }
  .cookie-banner-actions .cookie-customize { grid-column: 1 / -1; width: 100%; }
  .policy-main { width: min(100% - 32px, 850px); margin-top: 32px; }
  .policy-document { padding: 22px 18px; }
  .policy-header-inner { min-height: 68px; }
}

@media (max-width: 480px) {
  .cookie-banner { padding-inline: 14px; }
  .cookie-banner-copy > p:last-child { font-size: 10.5px; line-height: 1.4; }
  .cookie-banner-actions { grid-template-columns: 1fr 1fr; }
  .cookie-banner-actions .cookie-customize { grid-column: 1 / -1; }
  .cookie-dialog-actions { flex-direction: column; }
  .cookie-dialog-actions .button { width: 100%; }
  .cookie-category { align-items: flex-start; gap: 10px; }
  .cookie-category > div { min-width: 0; }
  .policy-header-inner { gap: 10px; }
  .policy-back-link { font-size: 10px; }
}
