@font-face{font-family:Archivo;src:url('/assets/archivo-latin.woff2') format('woff2');font-weight:100 900;font-display:optional}

html{scroll-behavior:smooth}
.public-site{--ink:#1c2926;--muted:#54625d;--paper:#f3f5f2;--accent:#a44b20;--action:#f0b17a;--surface:#ffffff;--line:#c8d3cb;--green:var(--accent);--dark:#7b3819;--connection-pattern:url('/assets/data-background.svg');--connection-size:720px 720px;background-color:var(--paper);background-image:radial-gradient(ellipse at 72% -12%,#77aa951f,transparent 58%),radial-gradient(ellipse at 90% 112%,#77aa9517,transparent 56%);background-attachment:fixed;isolation:isolate;color:var(--ink);font-family:'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased;color-scheme:light}
.public-site a{color:inherit}
.public-site :is(a,button,summary):focus-visible{outline:2px solid var(--accent);outline-offset:6px}
.public-site :is(h1,h2,h3){font-family:Archivo,Arial,sans-serif;font-weight:600;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:normal}
.public-site em{font-style:normal;color:var(--accent)}
.public-site p{text-wrap:pretty}
.public-site button:disabled{cursor:default;opacity:.55}
.public-site .eyebrow{color:var(--muted);font-size:.75rem;font-weight:500;letter-spacing:.1em;margin:0 0 28px}
.skip-link{position:fixed;top:12px;left:12px;z-index:20;background:var(--paper);padding:12px 20px;transform:translateY(-180%)}
.skip-link:focus{transform:none}

.public-site .topbar{max-width:1600px;min-height:104px;padding:24px 4.5%;margin:auto;background:none;align-items:center;position:relative;z-index:5}
.public-site .brand{display:flex;align-items:center;gap:12px;color:var(--ink)}
.public-site .brand .brand-name{color:inherit;font-family:Archivo,Arial,sans-serif;font-size:1.45rem;font-weight:700;letter-spacing:-.065em}
.brand-symbol{width:30px;height:30px;color:var(--accent)}
.public-site .topbar nav{gap:34px}
.public-site .topbar nav>a{color:var(--ink);font-size:.83rem;font-weight:400}
.public-site .topbar nav>a:hover{color:var(--accent)}
.public-site .topbar .nav-cta{border:1px solid #6c6b61;border-radius:3px;padding:12px 22px}
.public-site main{max-width:1600px;padding:0 4.5%;overflow:clip}
.public-site .button{background:var(--action);color:#201d19;border:0;border-radius:3px;padding:18px 26px;min-height:56px;font-size:.9rem;font-weight:650;gap:25px;transition:background .2s,transform .3s}
.public-site .button:hover{background:#ffca9f;transform:translateY(-3px)}
.public-site .button:active{transform:translateY(1px) scale(.98)}

.journey{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start;padding-bottom:70px}
.journey-copy{grid-column:1;grid-row:1;min-width:0;z-index:2;pointer-events:none}
.journey-copy :is(a,button,aside){pointer-events:auto}
.hero-copy{min-height:calc(100svh - 104px);padding:50px 0 90px;display:flex;flex-direction:column;justify-content:center;align-items:start}
.hero-kicker{color:var(--muted);font-size:.76rem;margin:0 0 28px;letter-spacing:.035em}
.public-site .hero-copy h1{font-size:clamp(4.5rem,7.55vw,7.5rem);line-height:.94;font-weight:550;margin:0 0 36px;letter-spacing:-.065em;text-wrap:nowrap}
.hero-copy h1 span{color:var(--accent)}
.hero-description{max-width:36ch;font-size:1.04rem;line-height:1.7;color:#d0cac1;margin:0 0 26px}
.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.explore-link{display:inline-flex;align-items:center;gap:12px;font-size:.8rem;min-height:44px;text-decoration:none}
.explore-link span{display:inline-block;font-size:1.2rem;transition:transform .3s}
.explore-link:hover span{transform:translateY(5px)}
.public-site .hero-note{margin:20px 0 0;padding:0;border:0;border-radius:0;background:none;color:var(--muted);font-size:.72rem}

.visual-stage{position:sticky;top:45px;grid-column:2;grid-row:1;align-self:start;min-width:0;margin-left:-35px;padding-top:35px;isolation:isolate}
.scene-heading{display:flex;align-items:center;gap:9px;font-size:.72rem;padding:0 12px;color:var(--muted)}
.live-dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}
.public-site .motion-toggle{margin-left:auto;min-height:44px;font-size:.68rem;padding:8px 0 8px 15px;font-weight:400;background:none;color:var(--muted);text-decoration:underline;text-underline-offset:5px}
.signal-scene{position:relative;aspect-ratio:720/550;margin:0 -55px;perspective:800px}
.route-field{position:absolute;width:100%;height:100%;inset:0;pointer-events:none;opacity:.95}
.route-art{position:relative;width:100%;height:100%;overflow:visible;transform-origin:center}
.cloud-name{fill:#fff5e5;font-family:Archivo,Arial,sans-serif;font-size:21px;font-weight:500;letter-spacing:-.03em}
.orbit-lines{opacity:.2;transform-origin:367px 245px}
.demo-active .orbit-lines{animation:orbit-turn 24s linear infinite}
.normal-track,.direct-track{opacity:.45}
.normal-signal,.direct-signal{stroke-linecap:round;transition:opacity .5s,stroke-dashoffset .7s;stroke:#f3ba8b}
.normal-signal{stroke-dasharray:100}
.direct-signal{opacity:0;stroke-dasharray:100;stroke-dashoffset:100}
.relay{transform-origin:367px 245px;transition:opacity .45s,transform .65s;filter:drop-shadow(0 0 38px #e7893f35)}
.block-mark{opacity:0;transition:opacity .25s}
.route-label{position:absolute;font-size:.76rem;padding:6px 0;color:#eee5d8}
.visitors-label{left:5%;top:61%}
.origin-label{right:3%;top:47%}
.relay-label{position:absolute;top:70%;left:50%;transform:translateX(-50%);font-size:.68rem;color:var(--muted);white-space:nowrap}
.bypass-label{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);font-size:.7rem;opacity:0;transition:opacity .3s}
[data-state='blocked'] .normal-signal{opacity:.2;stroke-dashoffset:62}
[data-state='blocked'] .block-mark{opacity:1}
[data-state='blocked'] .relay{opacity:.5;transform:scale(.9)}
[data-state='direct'] .normal-signal{opacity:.08}
[data-state='direct'] .direct-signal{opacity:1;stroke-dashoffset:0}
[data-state='direct'] .relay{opacity:.3;transform:scale(.78)}
[data-state='direct'] .bypass-label{opacity:1}
.demo-active[data-state='normal'] .normal-signal,.demo-active[data-state='restored'] .normal-signal,.demo-active[data-state='direct'] .direct-signal{stroke-dasharray:8 8;animation:signal-travel 2s linear infinite}
.motion-paused :is(.orbit-lines,.normal-signal,.direct-signal),.motion-paused .route-moving,.motion-stopped *{animation-play-state:paused!important}

.demo-controls{display:flex;justify-content:center;gap:3px;padding:4px;margin:0 auto;width:fit-content;max-width:100%;background:#292b26;border-radius:4px}
.demo-controls button{color:var(--muted);background:none;min-height:44px;padding:11px 14px;border-radius:2px;font-size:.72rem;font-weight:500;white-space:nowrap}
.demo-controls button:hover{color:#fff}
.demo-controls button[aria-pressed='true']{background:#eee4d6;color:#22221d}
.demo-status{text-align:center;font-size:.78rem;color:var(--muted);max-width:45ch;min-height:44px;line-height:1.6;margin:18px auto 0}
.demo-risk{color:var(--accent);font-size:.69rem;text-align:center;line-height:1.6;max-width:46ch;margin:0 auto;min-height:35px}
.demo-risk[hidden]{display:block;visibility:hidden}
.journey-chapter{min-height:65svh;padding:75px 30px 75px 0;display:flex;flex-direction:column;align-items:start;justify-content:center;scroll-margin-top:100px}
.public-site .journey-chapter h2{font-size:clamp(3rem,4.7vw,4.7rem);line-height:1.02;font-weight:500;margin:0 0 28px}
.journey-chapter>p{color:var(--muted);font-size:1.03rem;line-height:1.8;max-width:35ch;margin:0 0 20px}
.journey-chapter .chapter-detail{color:var(--ink);font-size:.83rem}
.route-condition{color:var(--muted);font-size:.77rem;line-height:1.75;max-width:43ch;padding:18px 0}
.route-condition strong{display:block;color:var(--accent);font-weight:500;margin-bottom:7px}

.public-site h2{font-size:clamp(2.9rem,5.7vw,5.5rem);line-height:1.02;font-weight:500}
.public-site h3{font-size:1.8rem;font-weight:500}
.case-section{position:relative;padding:90px 6%;background:#23251f;margin:40px -4.95% 0;overflow:hidden}
.case-heading{max-width:800px}
.case-heading h2{margin-bottom:35px}
.case-controls{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0 50px}
.case-controls button{min-height:48px;border:1px solid #666759;border-radius:3px;padding:13px 22px;background:none;color:var(--muted);font-size:.83rem;font-weight:400}
.case-controls button[aria-pressed='true']{background:#eae0d0;border-color:#eae0d0;color:#24261f}
.case-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:center;min-height:270px}
.case-panel[hidden]{display:none}
.case-panel h3{font-size:2rem}
.case-panel p{color:var(--muted);font-size:.92rem;line-height:1.8}
.case-panel .case-result{color:var(--accent)}
.case-diagram{width:100%;height:auto;overflow:visible}
.case-diagram text{font-family:'Segoe UI',sans-serif;font-size:15px;fill:var(--ink)}
.case-diagram circle{fill:#343a2e}
.case-diagram .route-moving{stroke:#efbd8b;stroke-dasharray:12 7;animation:case-travel 1.8s linear infinite}
.case-diagram .broken-node{fill:#9a5540}
.case-panels:not(.is-enhanced) .case-panel+.case-panel{margin-top:45px}

.onboarding-section{position:relative;padding:135px 0 120px}
.onboarding-section h2{font-size:clamp(3rem,6.8vw,7rem);max-width:1000px;margin-bottom:50px}
.onboarding-bottom{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-left:25%}
.onboarding-bottom p{color:var(--muted);font-size:1.05rem;line-height:1.8;max-width:39ch}
.onboarding-bottom .button{flex-shrink:0}
.plans-section{padding:75px 0 100px;scroll-margin-top:35px}
.plans-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:60px}
.plans-heading h2{font-size:clamp(3rem,5.2vw,5rem);max-width:21ch}
.plans-heading p{color:var(--muted);max-width:55ch;font-size:.85rem;line-height:1.75}
.billing-switch{display:flex;gap:3px;flex-shrink:0;background:#2d2e28;padding:4px;border-radius:3px}
.billing-switch button{min-height:44px;background:none;color:var(--muted);border-radius:2px;font-size:.8rem;padding:12px 20px;font-weight:400}
.billing-switch button[aria-pressed='true']{background:var(--ink);color:var(--paper)}
.plans-list{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.plan-row{position:relative;display:flex;flex-direction:column;align-items:start;padding:45px;border-radius:4px;background:#242621;min-width:0;overflow:hidden;transition:transform .35s,background .35s}
.plan-row:hover{transform:translateY(-8px);background:#303329}
.agency-plan{background:#343329}
.plan-identity h3{font-size:2.1rem;margin-bottom:8px}
.plan-identity p{margin:0;color:var(--muted);font-size:.84rem}
.plan-details{flex:1}
.public-site .plan-price{font-family:Archivo,Arial,sans-serif;font-size:clamp(4rem,6.5vw,6rem);font-weight:500;letter-spacing:-.065em;font-variant-numeric:tabular-nums;line-height:1;margin:40px 0 13px}
.plan-price span{font-family:'Segoe UI',sans-serif;font-size:.9rem;letter-spacing:0;margin-left:8px;color:var(--muted)}
.plan-alternative{font-size:.8rem;color:var(--muted);margin:0 0 36px}
.domain-count{font-size:1rem}
.plan-details>p:last-child{color:var(--muted);font-size:.87rem;margin:14px 0 32px}
.plan-row .button{background:#e8decf;font-size:.8rem}
.plans-disclaimer,.plan-conditions{color:var(--muted);font-size:.76rem;line-height:1.8;margin:26px 0 0;max-width:98ch}

.questions-section{display:grid;grid-template-columns:1fr 1.25fr;gap:10%;padding:60px 0 110px}
.questions-section h2{font-size:clamp(3rem,4.9vw,4.7rem)}
.questions-list details{padding:25px 0}
.questions-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:44px;font-size:1rem}
.questions-list summary::-webkit-details-marker{display:none}
.questions-list summary::after{content:'+';font-size:1.5rem;font-weight:300;color:var(--accent)}
.questions-list details[open] summary::after{content:'−'}
.questions-list p{color:var(--muted);font-size:.88rem;line-height:1.8;max-width:60ch}
.signal-closing{position:relative;padding:85px 0 100px;display:flex;align-items:end;justify-content:space-between;gap:40px}
.public-site .signal-closing h2{font-size:clamp(3rem,6.4vw,6.5rem);margin-bottom:25px}
.signal-closing p{color:var(--muted);font-size:.92rem}
.signal-closing .button{flex-shrink:0;margin-bottom:25px}
.public-site footer{border:0;max-width:1600px;padding:50px 4.5%;gap:50px}
.public-site footer p{color:var(--muted);font-size:.72rem;max-width:60ch}
.footer-brand{font-family:Archivo,Arial,sans-serif;font-size:1.5rem;letter-spacing:-.05em;font-weight:600}
.access-site{color-scheme:light}
.access-site .topbar{min-height:96px}
.access-site .access-card .button{border-radius:2px;min-height:54px;padding:17px 23px;font-size:14px}
.access-site .access-back{display:inline-flex;align-items:center;min-height:44px;font-size:.85rem}
.access-site .access-layout .lead{max-width:42ch}
.access-site footer{border-top:1px solid var(--line);padding-block:30px}
.public-site .access-layout{min-height:65svh;padding:100px 0;gap:10%}
.public-site .access-layout h1{font-size:clamp(3rem,6vw,5.5rem);font-weight:500}
.public-site .access-card{background:var(--surface);border:0;border-radius:4px;padding:40px;box-shadow:none}
.public-site .access-card h2{font-size:1.7rem}
.public-site .access-card p{color:var(--muted);font-size:.9rem;line-height:1.8}
.access-site .access-layout{padding:80px 0}
.access-site .access-card{background:var(--surface)}

.demo-controls,.billing-switch{position:relative;isolation:isolate;overflow:hidden}
.motion-chip{position:absolute;left:0;top:4px;bottom:4px;border-radius:2px;background:#eee4d6;z-index:-1;pointer-events:none}
.motion-ready .demo-controls button[aria-pressed='true'],.motion-ready .billing-switch button[aria-pressed='true']{background:transparent}
.motion-ready .relay{transition:none}

@keyframes orbit-turn{to{transform:rotate(360deg)}
}
@keyframes signal-travel{to{stroke-dashoffset:-32}
}
@keyframes case-travel{to{stroke-dashoffset:-38}
}

@media(min-width:1600px){.hero-copy{min-height:850px}
}

@media(max-width:1050px){.public-site .topbar nav{gap:20px}
.public-site .hero-copy h1{font-size:7.5vw}
.visual-stage{margin-left:-15px}
.demo-controls button{font-size:.64rem;padding-inline:9px}
.onboarding-bottom{padding-left:0}
.plan-row{padding:30px}
}

@media(max-width:767px){.public-site .topbar{min-height:86px;padding:20px 22px;gap:12px}
.public-site .brand .brand-name{font-size:1.19rem}
.brand-symbol{width:25px;height:25px}
.public-site .topbar nav{gap:18px;flex-wrap:nowrap}
.public-site .topbar nav>a{font-size:.75rem}
.public-site .topbar .nav-cta{padding:10px 12px}
.public-site .section-link{display:none}
.public-site main{padding:0 22px}
.journey{display:flex;flex-direction:column;gap:0;padding-bottom:30px}
.journey-copy{display:contents}
.hero-copy{order:0;min-height:auto;padding:48px 0 25px}
.hero-kicker{font-size:.7rem;margin-bottom:22px}
.public-site .hero-copy h1{font-size:clamp(3.1rem,12.4vw,5.3rem);margin-bottom:28px;line-height:.99}
.hero-description{font-size:.95rem;line-height:1.75;max-width:37ch}
.hero-actions{gap:18px}
.public-site .button{padding:17px 21px;min-height:54px;font-size:.8rem}
.explore-link{font-size:.74rem;gap:8px}
.public-site .hero-note{font-size:.68rem;margin-top:16px}
.visual-stage{order:1;top:0;width:calc(100% + 44px);margin:0 -22px;padding:12px 22px 8px;background:var(--paper);z-index:3}
.scene-heading{font-size:.61rem;padding:0}
.public-site .motion-toggle{font-size:.6rem;min-height:44px}
.signal-scene{height:215px;margin:-10px -28px 0;aspect-ratio:auto}
.route-field{opacity:.8}
.route-label{font-size:.6rem}
.visitors-label{left:9%;top:60%}
.origin-label{right:8%}
.relay-label,.bypass-label{font-size:.6rem}
.relay-label{top:72%}
.bypass-label{bottom:6%}
.demo-controls{gap:0;padding:3px;margin-top:0}
.demo-controls button{font-size:.62rem;padding:10px;min-height:44px}
.demo-status{font-size:.67rem;margin-top:10px;min-height:32px;max-width:44ch}
.demo-risk{font-size:.6rem;min-height:29px;line-height:1.5;margin-top:0}
.journey-chapter{order:2;min-height:60svh;padding:55px 0;scroll-margin-top:375px}
.public-site .journey-chapter h2{font-size:2.65rem;line-height:1.05}
.journey-chapter>p{font-size:.92rem}
.route-condition{padding:0;font-size:.73rem}
.case-section{margin:20px -22px 0;padding:60px 26px}
.public-site h2{font-size:2.8rem}
.case-heading h2{margin-bottom:28px}
.case-controls{margin-bottom:30px;gap:8px}
.case-controls button{font-size:.72rem;padding:12px}
.case-panel{grid-template-columns:1fr;gap:25px}
.case-panel h3{font-size:1.8rem}
.case-panel p{font-size:.85rem}
.onboarding-section{padding:80px 0 55px}
.onboarding-section h2{font-size:2.85rem;margin-bottom:28px}
.onboarding-bottom{display:block}
.onboarding-bottom p{font-size:.94rem;margin-bottom:25px}
.plans-section{padding:50px 0}
.plans-heading{display:block;margin-bottom:30px}
.plans-heading h2{font-size:2.7rem}
.plans-heading p{font-size:.8rem}
.billing-switch{width:fit-content;margin-top:25px}
.plans-list{grid-template-columns:1fr;gap:16px}
.plan-row{padding:32px}
.plan-row:hover{transform:none}
.public-site .plan-price{font-size:4.5rem}
.plans-disclaimer,.plan-conditions{font-size:.71rem}
.questions-section{grid-template-columns:1fr;gap:18px;padding:50px 0}
.questions-list details{padding:15px 0}
.questions-list summary{font-size:.9rem}
.questions-list p{font-size:.81rem}
.signal-closing{display:block;padding:50px 0}
.public-site .signal-closing h2{font-size:3rem}
.signal-closing .button{margin:20px 0 0}
.public-site footer{display:block;padding:35px 22px}
.public-site footer p{font-size:.68rem;margin-top:20px}
.public-site .access-layout{grid-template-columns:1fr;padding:40px 0;gap:30px}
.public-site .access-layout h1{font-size:3.1rem}
.public-site .access-card{padding:28px}
.access-site .topbar{min-height:78px;padding:19px 22px;flex-wrap:wrap}
.access-site .brand .brand-name{font-size:21px}
.access-site .brand-symbol{width:24px}
.access-site .topbar nav{width:100%;justify-content:space-between;gap:15px}
.access-site .topbar nav>a{display:inline-flex;align-items:center;min-height:44px}
.access-site .access-layout h1{font-size:clamp(2.5rem,10vw,3.1rem)}
.access-site .access-card{padding:24px}
}

@media(max-width:767px) and (max-height:740px){.signal-scene{height:150px}
.journey-chapter{scroll-margin-top:315px}
}

@media(max-width:360px){.public-site .topbar{padding-inline:18px}
.brand-symbol{display:none}
.public-site .topbar nav{gap:12px}
.demo-controls button{padding-inline:8px;font-size:.6rem}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.public-site *,.public-site *::before,.public-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.public-site .button:hover,.plan-row:hover{transform:none}
}

.public-site::before{content:'';position:fixed;inset:-90px;z-index:-1;pointer-events:none;background-image:url('/assets/data-background.svg');background-size:720px 720px;opacity:.65;mask-image:radial-gradient(ellipse at 72% 48%,#000 18%,#0009 52%,transparent 85%);animation:wep-data-drift 360s linear infinite}
@keyframes wep-data-drift{from{background-position:0 0}to{background-position:720px 720px}}
@media(prefers-reduced-motion:reduce){.public-site::before{animation:none}}
