:root {
    --ink:#102d40;
    --muted:#506576;
    --blue:#126994;
    --navy:#0b2436;
    --accent:#92ebca;
    --line:#dbe3e5;
    --paper:#f7f9f8;
    --font:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    --heading:"Manrope",var(--font);
}
* {
    box-sizing:border-box;
}
html {
    scroll-behavior:smooth;
    scroll-padding-top:28px;
}
body {
    margin:0;
    background:#fff;
    color:var(--ink);
    font-family:var(--font);
    font-size:16px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
}
a {
    color:inherit;
    text-decoration:none;
}
button,summary,a {
    -webkit-tap-highlight-color:transparent;
}
a:focus-visible,button:focus-visible,summary:focus-visible {
    outline:3px solid #159ac3;
    outline-offset:5px;
    border-radius:3px;
}
button {
    font:inherit;
}
button,summary {
    cursor:pointer;
}
img {
    display:block;
    max-width:100%;
}
h1,h2,h3,p,figure {
    margin:0;
}
h1,h2,h3 {
    font-family:var(--heading);
    font-weight:700;
    line-height:1.2;
}
h2 {
    font-size:clamp(30px,3.1vw,42px);
    letter-spacing:-1.6px;
}
h3 {
    font-size:19px;
    letter-spacing:-.45px;
}
code {
    font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
}
.wrap {
    width:min(1200px,calc(100% - 80px));
    margin-inline:auto;
}
.skip-link {
    position:absolute;
    z-index:30;
    left:16px;
    top:-100px;
    padding:12px 20px;
    background:#fff;
    color:var(--ink);
}
.skip-link:focus {
    top:10px;
}
.site-header {
    position:relative;
    z-index:20;
    background:#fff;
    border-bottom:1px solid var(--line);
}
.header-inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:92px;
    gap:40px;
}
.brand {
    flex-shrink:0;
}
.brand img {
    width:218px;
    height:auto;
}
.site-nav {
    display:flex;
    align-items:center;
    gap:28px;
    font-size:14px;
    font-weight:600;
}
.site-nav>a:not(.button):hover,.products-menu summary:hover {
    color:var(--blue);
}
.nav-login {
    margin-left:20px;
}
.products-menu {
    position:relative;
}
.products-menu summary {
    list-style:none;
    display:flex;
    gap:9px;
    align-items:center;
}
summary::-webkit-details-marker {
    display:none;
}
.products-list {
    position:absolute;
    top:40px;
    left:-24px;
    background:#fff;
    border:1px solid var(--line);
    padding:12px;
    min-width:235px;
    box-shadow:0 20px 50px #102d401a;
    border-radius:8px;
}
.products-list a {
    display:block;
    padding:8px 12px;
    border-radius:4px;
    font-size:14px;
}
.products-list a:hover,.products-list a[aria-current] {
    background:#edf6f8;
    color:var(--blue);
}
.products-list a span {
    display:block;
    font-size:11px;
    font-weight:400;
}
.button {
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:22px;
    min-height:52px;
    padding:12px 23px;
    border-radius:5px;
    background:var(--ink);
    color:#fff;
    font-size:15px;
    font-weight:700;
    transition:background .15s,transform .15s;
}
.button:hover {
    background:#19455f;
    transform:translateY(-1px);
}
.button span {
    font-size:22px;
    font-weight:400;
    line-height:1;
}
.button-small {
    min-height:43px;
    padding:10px 17px;
    font-size:13px;
    gap:15px;
}
.button-accent {
    background:var(--accent);
    color:#092e2a;
}
.button-accent:hover {
    background:#b2f6de;
}
.menu-toggle {
    display:none;
    border:0;
    background:transparent;
    color:var(--ink);
    padding:10px 0 10px 10px;
    font-size:14px;
    font-weight:600;
    align-items:center;
    gap:12px;
}
.menu-toggle span {
    font-size:19px;
}
.hero {
    position:relative;
    overflow:hidden;
    background:var(--navy);
    color:#fff;
}
.hero:before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:radial-gradient(ellipse at 94% 22%,#16566b55,transparent 55%);
}
.hero-grid {
    position:relative;
    display:grid;
    grid-template-columns:1.1fr 1fr;
    gap:60px;
    align-items:center;
    padding-block:76px 65px;
}
.eyebrow {
    font-size:11px;
    letter-spacing:1.65px;
    font-weight:700;
    text-transform:uppercase;
    color:var(--blue);
    margin-bottom:19px;
}
.hero-eyebrow {
    display:flex;
    align-items:center;
    gap:11px;
    color:#c6d8e0;
    font-size:10px;
    letter-spacing:1.2px;
    margin-bottom:26px;
}
.product-mark {
    display:grid;
    place-items:center;
    width:29px;
    height:31px;
    font-family:var(--heading);
    font-size:17px;
    background:var(--accent);
    color:#0c3932;
    clip-path:polygon(0 0,100% 0,100% 73%,50% 100%,0 73%);
}
.eyebrow-divider {
    width:1px;
    height:13px;
    background:#496575;
    margin-inline:2px;
}
h1 {
    font-size:clamp(43px,4.15vw,59px);
    font-weight:600;
    line-height:1.12;
    letter-spacing:-2.6px;
    max-width:650px;
}
h1>span {
    color:var(--accent);
}
.hero-lede {
    font-size:17px;
    line-height:1.8;
    color:#bcd0dc;
    max-width:480px;
    margin-top:25px;
}
.hero-actions {
    display:flex;
    align-items:center;
    gap:26px;
    margin-top:31px;
    flex-wrap:wrap;
}
.text-link {
    font-size:13px;
    font-weight:600;
    display:inline-flex;
    gap:16px;
    align-items:center;
    min-height:44px;
}
.text-link:hover {
    color:var(--accent);
}
.text-link span {
    font-size:20px;
}
.hero-note {
    color:#a5bdcb;
    font-size:12px;
    margin-top:18px;
}
.attack-story {
    border:1px solid #395568;
    background:#102c40;
    border-radius:12px;
    box-shadow:0 30px 80px #03152144;
    position:relative;
    margin-top:9px;
}
.attack-story figcaption {
    padding:17px 22px;
    border-bottom:1px solid #395568;
    display:flex;
    align-items:center;
    gap:9px;
    color:#c9dbe4;
    font-size:12px;
    font-weight:600;
}
.live-dot {
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--accent);
    box-shadow:0 0 0 4px #92ebca0f;
    flex-shrink:0;
}
.example-tag {
    margin-left:auto;
    color:#9ab2c3;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:1px;
}
.source-line {
    padding:22px 22px 15px;
    display:flex;
    justify-content:space-between;
    gap:8px;
    align-items:center;
    font-size:11px;
    color:#a3bdcc;
}
.source-line code {
    color:#d9e8ef;
    font-size:12px;
}
.request-list {
    padding:0 22px;
}
.request-list>div {
    display:flex;
    align-items:center;
    gap:13px;
    border-bottom:1px solid #294557;
    padding:13px 0;
}
.request-list>div:first-child {
    border-top:1px solid #294557;
}
.request-number {
    font-size:10px;
    font-family:ui-monospace,monospace;
    color:#7894a6;
}
.request-list strong {
    display:block;
    font-weight:500;
    font-size:13px;
    line-height:1.45;
}
.request-list code {
    display:block;
    font-size:10px;
    color:#92abba;
    margin-top:2px;
}
.status {
    margin-left:auto;
    font-size:10px;
    white-space:nowrap;
    border-radius:3px;
    padding:3px 7px;
}
.status-caught {
    color:#efb99b;
    background:#efb99b0c;
    border:1px solid #efb99b26;
}
.decision-bridge {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-size:10px;
    color:#9bb8c8;
    padding:14px;
}
.decision-bridge>span {
    color:var(--accent);
    font-size:18px;
}
.decision-box {
    margin:0 21px;
    background:#123d42;
    border:1px solid #69c8ab73;
    border-radius:6px;
    padding:15px;
}
.decision-title {
    display:flex;
    align-items:center;
    gap:10px;
}
.decision-title svg {
    width:24px;
    height:24px;
    color:var(--accent);
    flex-shrink:0;
}
.decision-title strong {
    font-size:12px;
    font-weight:600;
    color:#ddfff0;
}
.decision-title>span {
    font-size:11px;
    margin-left:auto;
    color:var(--accent);
    white-space:nowrap;
}
.decision-box p {
    font-size:10px;
    color:#a6cdc6;
    margin:8px 0 0 34px;
}
.decision-box p span {
    padding-inline:5px;
}
.sync-line {
    padding:17px 22px;
    display:flex;
    align-items:flex-start;
    gap:11px;
    color:#c5dce7;
}
.sync-line>span:first-child {
    font-size:21px;
    line-height:1.1;
    color:#789fb4;
}
.sync-line strong {
    font-size:11px;
    font-weight:500;
    display:block;
}
.sync-line div>span {
    font-size:10px;
    color:#94b2c3;
    display:block;
    line-height:1.6;
    margin-top:3px;
    max-width:240px;
}
.optional-tag {
    font-size:9px;
    border:1px solid #405d70;
    border-radius:20px;
    padding:1px 7px;
    margin-left:auto;
}
.example-note {
    font-size:9px;
    color:#9bb3c3;
    border-top:1px solid #294557;
    text-align:center;
    padding:12px;
}
.trust-strip {
    position:relative;
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding-block:22px;
    border-top:1px solid #315062;
    font-size:12px;
    color:#c1d4df;
}
.trust-strip>span {
    display:flex;
    gap:12px;
    align-items:center;
}
.trust-strip>span>span {
    color:var(--accent);
    font-size:14px;
}
.section {
    padding-block:88px;
}
.problem-section {
    background:var(--paper);
    border-bottom:1px solid var(--line);
}
.problem-grid {
    display:grid;
    grid-template-columns:1.1fr 1fr;
    gap:100px;
    align-items:start;
}
.problem-copy {
    padding-top:2px;
}
.problem-copy p {
    color:var(--muted);
    font-size:16px;
    line-height:1.85;
}
.problem-copy p+p {
    margin-top:15px;
}
.section-heading {
    display:flex;
    justify-content:space-between;
    gap:40px;
    align-items:flex-end;
    margin-bottom:48px;
}
.section-heading>p {
    font-size:14px;
    color:var(--muted);
    line-height:1.8;
    padding-bottom:3px;
}
.workflow {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    list-style:none;
    margin:0;
    padding:0;
    gap:0;
}
.workflow li {
    position:relative;
    padding:27px 26px 0 0;
    border-top:1px solid #b7cdd5;
}
.workflow li:last-child {
    padding-right:0;
}
.workflow li:before {
    position:absolute;
    content:"";
    width:7px;
    height:7px;
    background:var(--blue);
    border:3px solid #fff;
    box-sizing:content-box;
    border-radius:50%;
    top:-7px;
    left:0;
}
.workflow h3 {
    font-size:18px;
    margin:16px 0 12px;
}
.step-number {
    font-size:11px;
    font-family:ui-monospace,monospace;
    color:var(--blue);
}
.workflow p {
    font-size:14px;
    line-height:1.8;
    color:var(--muted);
    max-width:235px;
}
.step-detail {
    display:block;
    font-size:10px;
    font-weight:600;
    color:var(--blue);
    margin-top:20px;
}
.controls-section {
    background:#eef4f4;
}
.controls-grid {
    display:grid;
    grid-template-columns:1fr 1.05fr;
    gap:100px;
    align-items:center;
}
.controls-copy>p:not(.eyebrow) {
    max-width:390px;
    font-size:16px;
    line-height:1.85;
    color:var(--muted);
    margin-top:22px;
}
.inline-link {
    display:inline-flex;
    align-items:center;
    gap:15px;
    color:var(--blue);
    font-size:13px;
    font-weight:600;
    padding-block:8px;
}
.inline-link:hover {
    text-decoration:underline;
    text-underline-offset:4px;
}
.controls-copy>.inline-link {
    margin-top:20px;
}
.mode-panel {
    background:white;
    border:1px solid #cfdddd;
    border-radius:8px;
    padding:4px 29px 0;
}
.mode-row {
    display:flex;
    gap:19px;
    padding:25px 0;
    border-bottom:1px solid var(--line);
}
.mode-number {
    color:#527884;
    font-family:ui-monospace,monospace;
    font-size:12px;
    line-height:25px;
}
.mode-row h3 {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    font-size:19px;
}
.default-badge {
    background:#e5f4ed;
    color:#216947;
    border-radius:3px;
    padding:3px 6px;
    font-family:var(--font);
    font-size:10px;
    letter-spacing:0;
    font-weight:500;
}
.mode-opt-in {
    font-family:var(--font);
    font-size:10px;
    color:#59717e;
    letter-spacing:0;
    font-weight:400;
}
.mode-row p {
    margin-top:10px;
    font-size:13px;
    line-height:1.8;
    color:var(--muted);
}
.policy-controls {
    padding-block:21px;
}
.policy-controls>div {
    display:flex;
    justify-content:space-between;
    gap:20px;
    font-size:11px;
    padding-block:5px;
}
.policy-controls span {
    color:var(--muted);
}
.policy-controls strong {
    font-weight:500;
    text-align:right;
}
.deployment-grid {
    display:grid;
    grid-template-columns:1.1fr 1fr;
    gap:100px;
    align-items:center;
}
.deployment-grid>div>p:not(.eyebrow) {
    margin-top:23px;
    color:var(--muted);
    font-size:15px;
    line-height:1.8;
    max-width:490px;
}
.deployment-grid>div>p.privacy-note {
    font-size:12px;
    border-left:2px solid #b2d7d2;
    padding-left:15px;
    margin-top:19px;
}
.requirements {
    border-left:1px solid var(--line);
    padding:12px 0 12px 48px;
}
.requirements h3 {
    font-size:18px;
}
.requirements ul {
    padding:0;
    list-style:none;
    margin:24px 0;
    font-size:14px;
    display:grid;
    gap:15px;
}
.requirements li {
    display:flex;
    gap:14px;
    align-items:center;
}
.requirements li>span {
    color:#257668;
    font-size:15px;
}
.requirements-foot {
    font-size:12px;
    color:var(--muted);
    border-top:1px solid var(--line);
    padding-top:19px;
    line-height:1.8;
}
.resource-links {
    display:flex;
    flex-wrap:wrap;
    gap:4px 24px;
    margin-top:16px;
}
.faq-section {
    background:var(--paper);
    border-top:1px solid var(--line);
}
.faq-grid {
    display:grid;
    grid-template-columns:1fr 1.6fr;
    gap:90px;
}
.faq-grid h2 {
    font-size:35px;
}
.faq-grid .inline-link {
    margin-top:21px;
}
.faq-list details {
    border-bottom:1px solid #d3dfe2;
}
.faq-list details:first-child {
    border-top:1px solid #d3dfe2;
}
.faq-list summary {
    display:flex;
    justify-content:space-between;
    gap:25px;
    align-items:center;
    list-style:none;
    padding:21px 0;
    font-size:15px;
    font-weight:600;
    line-height:1.5;
}
.faq-list summary:after {
    content:"+";
    color:var(--blue);
    font-size:22px;
    font-weight:400;
    line-height:1;
}
.faq-list details[open] summary:after {
    content:"−";
}
.faq-list details[open] summary {
    color:var(--blue);
}
.faq-list p {
    font-size:14px;
    line-height:1.9;
    color:var(--muted);
    padding:0 34px 23px 0;
}
.closing {
    background:var(--navy);
    color:#fff;
    padding-block:73px;
}
.closing-grid {
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:120px;
    align-items:center;
}
.closing .eyebrow {
    color:var(--accent);
}
.closing h2 {
    font-size:43px;
    font-weight:600;
}
.closing-grid>div>p:not(.eyebrow) {
    margin-block:20px 28px;
    color:#b8d0de;
    font-size:15px;
    line-height:1.8;
}
.plan-summary {
    border-left:1px solid #39576b;
    padding:10px 0 10px 45px;
}
.plan-label {
    text-transform:uppercase;
    letter-spacing:1.2px;
    font-size:10px;
    color:#a9c4d4;
}
.plan-summary h3 {
    font-size:22px;
    font-weight:600;
    margin-top:8px;
}
.plan-summary .plan-price {
    font-family:var(--heading);
    font-size:48px;
    color:#fff;
    font-weight:600;
    line-height:1.3;
    margin:13px 0;
}
.plan-price span {
    font-family:var(--font);
    font-size:14px;
    color:#abc5d5;
    font-weight:400;
    margin-left:5px;
}
.plan-summary>p:not(.plan-price) {
    font-size:13px;
    color:#bdd2df;
    line-height:1.9;
}
.plan-summary a {
    display:inline-flex;
    gap:20px;
    color:var(--accent);
    font-size:13px;
    font-weight:500;
    margin-top:17px;
    padding-block:5px;
}
.plan-summary a:hover {
    text-decoration:underline;
    text-underline-offset:4px;
}
.plan-summary small {
    display:block;
    font-size:10px;
    color:#a2bdcd;
    margin-top:14px;
    line-height:1.7;
}
.site-footer {
    background:#fff;
    padding-block:31px;
}
.footer-inner {
    display:flex;
    justify-content:space-between;
    gap:40px;
    align-items:center;
}
.footer-brand {
    font-family:var(--heading);
    font-size:19px;
    font-weight:800;
    letter-spacing:-.6px;
}
.footer-brand span {
    color:var(--blue);
    font-weight:500;
}
.footer-inner p {
    font-size:10px;
    color:var(--muted);
    margin-top:5px;
}
.footer-inner nav {
    display:flex;
    gap:24px;
    font-size:12px;
    color:var(--muted);
    flex-wrap:wrap;
}
.footer-inner nav a:hover {
    color:var(--blue);
    text-decoration:underline;
}
@media(min-width:1440px) {
    .hero-grid {
        gap:75px;
        padding-block:85px 75px;
    }
    h1 {
        font-size:61px;
    }
}
@media(max-width:1100px) {
    .wrap {
        width:calc(100% - 56px);
    }
    .site-nav {
        gap:21px;
    }
    .brand img {
        width:190px;
    }
    .nav-login {
        margin-left:0;
    }
    .hero-grid {
        gap:32px;
    }
    .hero-actions {
        gap:18px;
    }
    .hero-actions .text-link {
        font-size:12px;
    }
    .hero-actions .button {
        font-size:13px;
        padding-inline:17px;
    }
    .problem-grid,.controls-grid,.deployment-grid {
        gap:55px;
    }
    .closing-grid {
        gap:70px;
    }
    .request-list,.source-line {
        padding-inline:17px;
    }
    .decision-box {
        margin-inline:16px;
    }
    .sync-line {
        padding-inline:17px;
    }
    .source-line {
        flex-wrap:wrap;
    }
    .faq-grid {
        gap:50px;
    }
    .decision-title {
        gap:7px;
    }
    .decision-title strong {
        font-size:11px;
    }
    .trust-strip {
        font-size:11px;
    }
}
@media(max-width:900px) {
    .header-inner {
        min-height:78px;
        gap:20px;
    }
    .site-nav {
        gap:17px;
        font-size:12px;
    }
    .button-small {
        font-size:12px;
        padding-inline:12px;
        gap:8px;
    }
    .brand img {
        width:176px;
    }
    .hero-grid {
        grid-template-columns:1fr 1fr;
        gap:28px;
        padding-block:58px;
    }
    h1 {
        font-size:43px;
        letter-spacing:-2px;
    }
    .hero-lede {
        font-size:15px;
    }
    .hero-eyebrow {
        font-size:9px;
        gap:7px;
        letter-spacing:.7px;
    }
    .hero-actions {
        gap:8px;
    }
    .hero-actions .text-link {
        width:100%;
        gap:12px;
    }
    .hero-note {
        font-size:11px;
        margin-top:10px;
    }
    .attack-story figcaption {
        font-size:10px;
        padding-inline:16px;
    }
    .example-tag {
        font-size:8px;
    }
    .source-line>span {
        font-size:10px;
    }
    .request-list>div {
        gap:9px;
    }
    .request-list strong {
        font-size:11px;
    }
    .status {
        font-size:8px;
        padding-inline:5px;
    }
    .decision-title strong {
        font-size:10px;
    }
    .decision-title svg {
        width:19px;
    }
    .decision-box {
        padding:12px;
    }
    .decision-box p {
        font-size:9px;
        margin-left:0;
    }
    .section {
        padding-block:65px;
    }
    .problem-grid,.deployment-grid {
        gap:40px;
    }
    .problem-grid h2 {
        font-size:31px;
    }
    .problem-copy p {
        font-size:14px;
    }
    .section-heading>p {
        font-size:12px;
    }
    .workflow {
        grid-template-columns:1fr 1fr;
        gap:35px 0;
    }
    .workflow p {
        max-width:90%;
    }
    .controls-grid {
        gap:35px;
    }
    .controls-copy>p:not(.eyebrow) {
        font-size:14px;
    }
    .mode-panel {
        padding-inline:20px;
    }
    .policy-controls>div {
        font-size:10px;
        gap:10px;
    }
    .requirements {
        padding-left:30px;
    }
    .requirements li {
        font-size:12px;
    }
    .closing-grid {
        gap:50px;
    }
    .faq-grid {
        grid-template-columns:1fr 1.5fr;
        gap:35px;
    }
    .faq-grid h2 {
        font-size:29px;
    }
    .faq-grid .inline-link {
        font-size:11px;
    }
    .faq-list summary {
        font-size:13px;
    }
    .closing h2 {
        font-size:36px;
    }
    .plan-summary {
        padding-left:30px;
    }
    .footer-inner nav {
        gap:17px;
    }
}
@media(max-width:700px) {
    .wrap {
        width:calc(100% - 40px);
    }
    .header-inner {
        min-height:73px;
        flex-wrap:wrap;
        gap:0;
    }
    .brand img {
        width:190px;
    }
    .menu-toggle {
        display:flex;
    }
    .site-nav {
        width:100%;
        align-items:stretch;
        gap:0;
        flex-direction:column;
        font-size:15px;
        padding-bottom:20px;
    }
    .js .site-nav {
        display:none;
    }
    .js .site-nav.is-open {
        display:flex;
    }
    .site-nav>a,.products-menu summary {
        padding:12px 0;
    }
    .site-nav>.button {
        margin-top:8px;
        padding:12px;
        font-size:14px;
        gap:20px;
    }
    .products-list {
        position:static;
        box-shadow:none;
        border:0;
        border-left:2px solid #d3e4e6;
        border-radius:0;
        margin:3px 0 12px 5px;
        padding:0 0 0 9px;
        min-width:0;
    }
    .products-list a {
        padding-block:9px;
    }
    .hero-grid {
        grid-template-columns:1fr;
        padding-block:42px 32px;
        gap:35px;
    }
    .hero-eyebrow {
        font-size:9px;
        gap:10px;
        letter-spacing:1px;
        margin-bottom:22px;
    }
    .hero h1 {
        font-size:clamp(37px,8.8vw,53px);
        letter-spacing:-1.9px;
        line-height:1.13;
    }
    .desktop-break {
        display:none;
    }
    .hero-lede {
        font-size:15px;
        max-width:480px;
        line-height:1.8;
        margin-top:22px;
    }
    .hero-actions {
        gap:18px;
        margin-top:26px;
    }
    .hero-actions .button {
        font-size:13px;
        padding-inline:18px;
        gap:18px;
    }
    .hero-actions .text-link {
        width:auto;
        font-size:12px;
        gap:10px;
    }
    .hero-note {
        margin-top:15px;
        font-size:11px;
    }
    .attack-story {
        max-width:500px;
        width:100%;
        margin:0 auto;
    }
    .attack-story figcaption {
        font-size:11px;
        padding:15px 18px;
    }
    .example-tag {
        font-size:9px;
    }
    .source-line {
        padding:18px 18px 13px;
        flex-wrap:nowrap;
    }
    .source-line>span {
        font-size:10px;
    }
    .source-line code {
        font-size:11px;
    }
    .request-list {
        padding-inline:18px;
    }
    .request-list strong {
        font-size:12px;
    }
    .request-list code {
        font-size:10px;
    }
    .status {
        font-size:9px;
        padding:3px 6px;
    }
    .request-list>div {
        gap:12px;
        padding-block:11px;
    }
    .decision-box {
        margin-inline:17px;
        padding:13px;
    }
    .decision-title strong {
        font-size:12px;
    }
    .decision-title svg {
        width:23px;
    }
    .decision-title>span {
        font-size:10px;
    }
    .decision-box p {
        font-size:10px;
        margin-left:30px;
    }
    .sync-line {
        padding:15px 18px;
        gap:9px;
    }
    .sync-line div>span {
        max-width:260px;
    }
    .sync-line strong {
        font-size:11px;
    }
    .example-note {
        font-size:8px;
        padding:10px;
    }
    .trust-strip {
        display:grid;
        grid-template-columns:1fr;
        gap:12px;
        font-size:11px;
        padding-block:20px 27px;
    }
    .trust-strip>span {
        gap:10px;
    }
    .section {
        padding-block:49px;
    }
    .eyebrow {
        font-size:10px;
        letter-spacing:1.2px;
        margin-bottom:16px;
    }
    h2 {
        font-size:31px;
        letter-spacing:-1.2px;
    }
    .problem-grid,.controls-grid,.deployment-grid,.faq-grid,.closing-grid {
        grid-template-columns:1fr;
        gap:28px;
    }
    .problem-grid h2 {
        font-size:30px;
    }
    .problem-copy p {
        font-size:14px;
        line-height:1.9;
    }
    .problem-copy p+p {
        margin-top:12px;
    }
    .section-heading {
        display:block;
        margin-bottom:29px;
    }
    .section-heading>p {
        margin-top:20px;
        font-size:13px;
    }
    .workflow {
        grid-template-columns:1fr;
        gap:0;
    }
    .workflow li,.workflow li:last-child {
        border-top:0;
        border-left:1px solid #b7cdd5;
        padding:0 0 29px 24px;
        margin-left:4px;
    }
    .workflow li:last-child {
        padding-bottom:0;
    }
    .workflow li:before {
        top:0;
        left:-7px;
    }
    .workflow li:last-child:after {
        content:"";
        position:absolute;
        left:-1px;
        top:16px;
        bottom:0;
        width:1px;
        background:#fff;
    }
    .workflow h3 {
        font-size:19px;
        margin:7px 0 9px;
    }
    .workflow p {
        max-width:none;
        font-size:14px;
    }
    .step-detail {
        font-size:10px;
        margin-top:13px;
    }
    .controls-copy>p:not(.eyebrow) {
        max-width:none;
        margin-top:20px;
    }
    .controls-copy>.inline-link {
        margin-top:12px;
    }
    .mode-panel {
        padding-inline:21px;
    }
    .mode-row {
        padding-block:22px;
        gap:16px;
    }
    .mode-row h3 {
        font-size:20px;
    }
    .mode-row p {
        font-size:13px;
    }
    .policy-controls>div {
        font-size:11px;
        padding-block:6px;
    }
    .deployment-grid>div>p:not(.eyebrow) {
        font-size:14px;
        margin-top:20px;
    }
    .deployment-grid>div>p.privacy-note {
        font-size:12px;
    }
    .requirements {
        border-left:0;
        border-top:1px solid var(--line);
        padding:26px 0 0;
    }
    .requirements li {
        font-size:14px;
    }
    .requirements-foot {
        font-size:12px;
    }
    .faq-grid {
        gap:22px;
    }
    .faq-grid h2 {
        font-size:31px;
    }
    .faq-grid .inline-link {
        font-size:12px;
        margin-top:12px;
    }
    .faq-list summary {
        font-size:14px;
        padding-block:20px;
    }
    .faq-list p {
        font-size:13px;
        padding-right:16px;
    }
    .closing {
        padding-block:49px;
    }
    .closing h2 {
        font-size:35px;
    }
    .closing-grid>div>p:not(.eyebrow) {
        font-size:14px;
    }
    .closing-grid {
        gap:35px;
    }
    .plan-summary {
        border-left:0;
        border-top:1px solid #39576b;
        padding:27px 0 0;
    }
    .plan-summary .plan-price {
        font-size:44px;
        margin-block:9px;
    }
    .plan-summary h3 {
        font-size:22px;
    }
    .plan-summary small {
        font-size:11px;
    }
    .site-footer {
        padding-block:27px;
    }
    .footer-inner {
        align-items:flex-start;
        gap:25px;
        flex-direction:column;
    }
    .footer-inner nav {
        gap:14px 24px;
        font-size:12px;
    }
}
@media(max-width:375px) {
    .wrap {
        width:calc(100% - 32px);
    }
    .hero-actions {
        gap:10px;
    }
    .hero-actions .button {
        padding-inline:14px;
        font-size:12px;
        gap:13px;
    }
    .hero-actions .text-link {
        font-size:11px;
        gap:7px;
    }
    .hero-eyebrow {
        font-size:8px;
        gap:7px;
    }
    .request-list strong {
        font-size:11px;
    }
    .decision-title strong {
        font-size:10px;
    }
    .decision-title svg {
        width:21px;
    }
    .decision-box p {
        font-size:9px;
        margin-left:0;
    }
    .source-line {
        gap:5px;
    }
    .source-line>span {
        font-size:9px;
    }
    .source-line code {
        font-size:10px;
    }
    .status {
        font-size:8px;
    }
    .policy-controls>div {
        font-size:10px;
    }
    .mode-row h3 {
        font-size:18px;
    }
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto;
    }
    .button {
        transition:none;
    }
    .button:hover {
        transform:none;
    }
}
