/* Phase 03 public experience: plain CSS, inherits the Jarvis design tokens. */
.site-body{position:relative;min-height:100vh;overflow-x:hidden;color:var(--text-primary)}
.site-body h1,.site-body h2,.site-body h3{letter-spacing:-.047em;line-height:1.13}
.site-body h1{font-size:clamp(2.8rem,5.8vw,5.8rem);font-weight:760}
.site-body h2{font-size:clamp(1.9rem,3.1vw,3rem);margin:0}
.site-body p{line-height:1.7}.site-body a{text-decoration:none}
.site-ambient{position:absolute;z-index:-1;inset:0 0 auto;height:850px;pointer-events:none;background:radial-gradient(ellipse 600px 400px at 86% 18%,rgba(4,160,201,.15),transparent 75%),radial-gradient(ellipse 620px 340px at 9% 10%,rgba(19,83,121,.15),transparent 82%)}
.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-base) 90%,transparent);backdrop-filter:blur(24px)}
.site-nav-wrap{max-width:1420px;margin:auto;min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 38px}
.site-brand{display:flex;align-items:center;gap:10px;font-weight:790;letter-spacing:-.04em;font-size:1.28rem;color:var(--text-primary)}
.site-brand small{font-size:.57rem;letter-spacing:.21em;color:var(--text-muted);align-self:flex-end;padding-bottom:4px}
.site-brand-symbol{display:grid;place-items:center;width:31px;height:31px;transform:rotate(45deg);border:2px solid var(--accent);border-radius:9px;box-shadow:0 0 22px color-mix(in srgb,var(--accent) 25%,transparent)}
.site-brand-symbol span{height:9px;width:9px;border:2px solid var(--accent);border-radius:50%;display:block}
.site-nav{display:flex;gap:31px;flex-wrap:wrap}.site-nav a,.site-signin{color:var(--text-muted);font-size:.9rem;font-weight:600;transition:color .15s}.site-nav a:hover,.site-nav a[aria-current=page],.site-signin:hover{color:var(--text-primary)}
.site-nav-actions{display:flex;gap:16px;align-items:center}.site-nav-actions .btn{padding:8px 10px;font-size:.76rem}.site-nav-actions .theme-toggle{color:var(--text-muted)}
.site-cta{background:var(--accent);color:var(--accent-contrast);border:1px solid var(--accent);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:11px 17px;font-weight:760;font-size:.92rem;cursor:pointer;transition:transform .16s,box-shadow .16s}.site-cta:hover{color:var(--accent-contrast);transform:translateY(-2px);box-shadow:0 9px 28px color-mix(in srgb,var(--accent) 21%,transparent)}.site-cta-big{padding:16px 24px;min-height:52px}
.site-cta span{font-size:1.12rem}.site-outline-btn{display:inline-flex;align-items:center;gap:12px;padding:14px 19px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);border-radius:10px;font-weight:650}.site-outline-btn:hover{border-color:var(--accent)}
.site-hero{max-width:1360px;min-height:540px;margin:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:30px;align-items:center;padding:100px 48px 96px;position:relative}
.site-hero-home{min-height:690px}.site-hero-content{z-index:1}.site-kicker,.section-overline{color:var(--accent);letter-spacing:.20em;font-weight:730;font-size:.72rem;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px}.site-kicker .status-dot{height:7px;width:7px;flex:none}
.site-hero h1{max-width:790px;margin:26px 0}.site-lead{max-width:610px;font-size:1.16rem;color:var(--text-muted);margin:0 0 32px}.site-hero-actions{display:flex;flex-wrap:wrap;gap:14px}.site-caveat{font-size:.78rem;color:var(--text-muted);margin:22px 0 0}
.site-core{aspect-ratio:1;position:relative;max-width:470px;min-height:370px;margin:auto;width:100%;display:grid;place-items:center;filter:drop-shadow(0 0 30px rgba(34,211,238,.13))}
.site-core:before,.site-core:after{content:'';position:absolute;width:95%;height:1px;left:2%;top:50%;background:linear-gradient(90deg,transparent,var(--border),transparent)}.site-core:after{transform:rotate(90deg)}
.site-core-ring{position:absolute;inset:12%;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:50%;box-shadow:inset 0 0 24px rgba(34,211,238,.02)}
.ring-a{inset:5%;border-style:dashed;animation:rotate 90s linear infinite}.ring-b{inset:19%;border-width:2px;border-color:color-mix(in srgb,var(--accent) 45%,transparent);border-top-color:var(--accent);animation:rotate 34s linear infinite reverse}.ring-c{inset:31%;border-style:dotted;border-width:2px;animation:rotate 15s linear infinite}
.site-core-orb{width:33%;height:33%;border-radius:50%;z-index:2;background:radial-gradient(circle at 30% 27%,#d5fcff,#4daac2 14%,#1e607c 42%,#071e30 73%);box-shadow:0 0 80px rgba(34,211,238,.23),inset -20px -19px 22px #0b2333,inset 9px 8px 22px rgba(172,249,255,.42)}
.core-label{position:absolute;z-index:3;display:flex;flex-direction:column;gap:4px;font-size:.62rem;font-family:var(--font-mono);letter-spacing:.09em;color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:12px 16px;box-shadow:0 10px 35px rgba(0,0,0,.12)}.core-label b{font-size:.72rem;color:var(--accent)}.core-label.top{right:0;top:14%}.core-label.bottom{left:0;bottom:12%}.core-dots{position:absolute;bottom:13%;right:7%;display:flex;gap:6px}.core-dots span{height:4px;width:4px;border-radius:50%;background:var(--accent);opacity:.35}.core-dots span:nth-child(2),.core-dots span:nth-child(4){opacity:.9}
.site-hero-motif{width:min(320px,80%);aspect-ratio:1;display:grid;place-items:center;margin:auto;border:1px solid var(--border);border-radius:50%;box-shadow:0 0 0 30px color-mix(in srgb,var(--accent) 2%,transparent),0 0 0 60px color-mix(in srgb,var(--accent) 2%,transparent);color:var(--accent)}.site-hero-motif span{font-size:10rem;font-weight:200;text-shadow:0 0 40px color-mix(in srgb,var(--accent) 35%,transparent)}
.site-divider-band{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg-surface);padding:22px 24px;display:flex;align-items:center;justify-content:center;gap:36px;flex-wrap:wrap;color:var(--text-muted);font-size:.73rem;font-weight:700;letter-spacing:.16em}.site-divider-band i{width:5px;height:5px;background:var(--accent);transform:rotate(45deg)}
.site-features{padding:105px 40px 125px;max-width:1310px;margin:auto}.site-section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin:19px 0 35px}.site-section-heading h2{max-width:620px}.site-section-heading p{max-width:390px;color:var(--text-muted)}
.site-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.site-feature-card{background:var(--bg-surface);border:1px solid var(--border);padding:30px;border-radius:16px;min-height:330px;display:flex;flex-direction:column;position:relative;overflow:hidden}.site-feature-card:before{content:'';position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.3}.feature-number{display:flex;justify-content:space-between;color:var(--text-muted);font-size:.78rem;font-family:var(--font-mono);letter-spacing:.12em}.feature-number span{font-size:1rem}.feature-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;margin:36px 0 24px;border:1px solid color-mix(in srgb,var(--accent) 27%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--bg-elevated));color:var(--accent);font-size:1.7rem}.site-feature-card h3{font-size:1.35rem;margin:0 0 9px}.site-feature-card p{color:var(--text-muted);margin:0;font-size:.93rem}
.site-note-section,.site-contact-section{max-width:1250px;margin:0 auto 100px;padding:60px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(115deg,var(--bg-surface),var(--bg-elevated));display:flex;align-items:center;gap:35px;justify-content:space-between}.site-note-section p,.site-contact-section p{color:var(--text-muted);max-width:600px}.site-note-section h2,.site-contact-section h2{margin-top:15px}
.site-bottom-cta{max-width:1250px;margin:0 auto 100px;padding:68px;background:radial-gradient(ellipse at right bottom,color-mix(in srgb,var(--accent) 13%,var(--bg-surface)),var(--bg-surface) 64%);border:1px solid var(--border);border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:30px}.site-bottom-cta h2{margin:19px 0 10px}.site-bottom-cta p{color:var(--text-muted)}
.site-footer{border-top:1px solid var(--border);background:var(--bg-surface)}.site-footer-inner{max-width:1310px;margin:auto;padding:65px 40px;display:flex;justify-content:space-between;gap:50px}.site-footer p,.site-footer small{font-size:.85rem;color:var(--text-muted)}.site-footer nav{display:flex;align-items:start;gap:20px 32px;flex-wrap:wrap;max-width:380px}.site-footer nav a{color:var(--text-muted);font-size:.88rem}.site-footer nav a:hover{color:var(--accent)}
.form-page{max-width:920px;margin:0 auto;padding:90px 24px 130px}.form-head{text-align:center;max-width:660px;margin:0 auto 38px}.form-head h1{font-size:clamp(2.4rem,4vw,3.8rem);margin:20px 0 14px}.form-head p{color:var(--text-muted)}.form-card{border:1px solid var(--border);border-radius:18px;padding:42px;background:var(--bg-surface)}.form-card h2{font-size:1.5rem;margin-bottom:15px}.site-form{display:flex;flex-direction:column;gap:20px}.site-form label{display:flex;flex-direction:column;gap:7px;font-size:.9rem;font-weight:630}.site-form input,.site-form textarea{width:100%;padding:13px 15px;border:1px solid var(--border);border-radius:9px;color:var(--text-primary);background:var(--bg-elevated);font:inherit}.site-form input:focus,.site-form textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.site-form textarea{resize:vertical}.site-form small,.form-hint{font-size:.78rem;color:var(--text-muted)}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-under{text-align:center;color:var(--text-muted);margin-top:24px}.trap-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.site-contact-section{display:grid;grid-template-columns:1fr 1fr}.site-contact-section .site-form{width:100%}
.preview-banner{background:var(--bg-elevated);color:var(--text-primary);padding:12px 24px;border-bottom:1px solid var(--border);font-size:.9rem;text-align:center}
.skip-link{position:absolute;top:-100px;left:20px;background:var(--accent);color:var(--accent-contrast);z-index:100;padding:10px}.skip-link:focus{top:12px}
.cms-section-editor{padding:24px;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated);display:flex;flex-direction:column;gap:14px}.cms-section-editor h3{font-size:1rem;margin:0}.check-label{display:flex;gap:9px;align-items:center;align-self:center}.check-label input{width:17px;height:17px}.revision-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.revision-row span{display:flex;flex-direction:column}.message-cell{max-width:420px;white-space:normal;overflow-wrap:anywhere}
html{scrollbar-color:var(--border) var(--bg-base)}*::-webkit-scrollbar{width:11px;height:11px}*::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px;border:2px solid var(--bg-base)}
@keyframes rotate{to{transform:rotate(360deg)}}
@media(max-width:1070px){.site-nav-wrap{padding:12px 24px;gap:16px;flex-wrap:wrap}.site-nav{order:3;width:100%;justify-content:center;gap:22px}.site-hero{padding:65px 30px;grid-template-columns:1fr 320px;min-height:550px}.site-core{min-height:300px}.site-hero-motif{width:220px}.site-feature-card{min-height:320px}}
@media(max-width:760px){.site-nav-wrap{padding:12px 18px}.site-brand{font-size:1.03rem}.site-brand small{display:none}.site-nav-actions{margin-left:auto;gap:9px}.site-nav-actions .site-signin{display:none}.site-nav-actions .site-cta{padding:9px 12px;font-size:.78rem}.site-nav{gap:12px 18px}.site-nav a{font-size:.77rem}.site-hero,.site-hero-home{display:block;min-height:0;padding:70px 22px 65px}.site-hero h1{margin:20px 0;font-size:clamp(2.5rem,9vw,4.4rem)}.site-lead{font-size:1.02rem}.site-core{max-width:340px;min-height:300px;margin:55px auto 0}.site-hero-motif{display:none}.site-divider-band{gap:14px;padding:19px;font-size:.62rem}.site-divider-band i{display:none}.site-features{padding:70px 20px}.site-section-heading{display:block}.site-section-heading p{max-width:100%}.site-card-grid{grid-template-columns:1fr}.site-feature-card{min-height:250px}.feature-icon{margin:24px 0 15px}.site-note-section,.site-contact-section,.site-bottom-cta{margin:0 18px 70px;padding:30px;display:block}.site-contact-section{display:block}.site-contact-section .site-form{margin-top:30px}.site-bottom-cta .site-cta{margin-top:12px}.site-footer-inner{padding:50px 24px;display:block}.site-footer nav{margin-top:28px}.form-page{padding:60px 18px 90px}.form-card{padding:24px}.form-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Phase 28 audit patch: public navigation is readable and operable on phones. */
.site-nav-toggle { display: none; }
@media(max-width:760px){
 .site-nav-ready .site-nav-toggle { display: inline-flex; order:2; margin-left:auto; min-height:44px; }
 .site-nav-ready .site-nav { display:none; order:4; width:100%; flex-direction:column; align-items:stretch; gap:4px; }
 .site-nav-ready .site-nav.is-open { display:flex; max-height:45vh; overflow-y:auto; }
 .site-nav-ready .site-nav a { min-height:44px; display:flex; align-items:center; padding:8px 12px; border-radius:8px; }
 .site-nav-ready .site-nav a:focus-visible { outline:3px solid var(--accent); outline-offset:2px; }
 .site-nav-ready .site-nav-actions { order:3; margin-left:0; }
 .site-nav-ready .site-nav-wrap { align-items:center; }
}
@media(max-width:390px){
 .site-nav-ready .site-nav-actions { width:100%; justify-content:space-between; order:3; }
 .site-nav-ready .site-nav-toggle { order:2; }
}
