:root{--max-width:1100px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace}:root,:root[data-theme=dark]{--color-bg:#0a0a0f;--color-surface:#12121a;--color-border:#1e1e2e;--color-text:#e4e4ef;--color-text-muted:#8888a0;--color-accent:#6c63ff;--color-accent-hover:#7f78ff;--color-green:#34d399;--color-nav-bg:#0a0a0fd9;--color-shadow:#0006}:root[data-theme=light]{--color-bg:#fff;--color-surface:#f6f7fb;--color-border:#e2e4ee;--color-text:#16161d;--color-text-muted:#5c5c72;--color-accent:#5b52e0;--color-accent-hover:#4a41d0;--color-green:#0f9d6a;--color-nav-bg:#ffffffd9;--color-shadow:#14142814}*{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);scroll-behavior:smooth;transition:background .3s,color .3s}body{line-height:1.7;overflow-x:hidden}a{color:var(--color-accent);text-decoration:none;transition:color .2s}a:hover{color:var(--color-accent-hover)}nav{z-index:100;background:var(--color-nav-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);padding:1rem 2rem;transition:background .3s,border-color .3s;position:sticky;top:0}nav .nav-inner{max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;display:flex}nav .logo{color:var(--color-text);letter-spacing:-.02em;font-size:1.2rem;font-weight:700}nav .logo span{color:var(--color-accent)}nav .nav-links{align-items:center;gap:2rem;list-style:none;display:flex}nav .nav-links a{color:var(--color-text-muted);font-size:.9rem;font-weight:500}nav .nav-links a:hover{color:var(--color-text)}nav .nav-links a.btn-primary{color:#fff}nav .nav-controls{align-items:center;gap:.75rem;display:flex}.theme-toggle{background:var(--color-surface);border:1px solid var(--color-border);width:2.4rem;height:2.4rem;color:var(--color-text);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;transition:border-color .2s,background .2s;display:inline-flex}.theme-toggle:hover{border-color:var(--color-accent)}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon,:root[data-theme=light] .theme-toggle .icon-sun{display:inline}:root[data-theme=light] .theme-toggle .icon-moon{display:none}.nav-toggle{background:var(--color-surface);border:1px solid var(--color-border);width:2.4rem;height:2.4rem;color:var(--color-text);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;display:none}.nav-toggle:hover{border-color:var(--color-accent)}.hero{max-width:var(--max-width);text-align:center;margin:0 auto;padding:6rem 2rem 4rem}.hero h1{letter-spacing:-.03em;overflow-wrap:break-word;word-wrap:break-word;margin-bottom:1.5rem;font-size:clamp(2rem,7vw,3.6rem);font-weight:800;line-height:1.15}.hero h1 .highlight{background:linear-gradient(135deg, var(--color-accent), var(--color-green));-webkit-text-fill-color:transparent;background-clip:text}.hero p{color:var(--color-text-muted);max-width:640px;margin:0 auto 2.5rem;font-size:1.2rem}.hero .badge{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-green);border-radius:999px;margin-bottom:2rem;padding:.4rem 1.2rem;font-size:.85rem;font-weight:500;display:inline-block}.btn{cursor:pointer;border:none;border-radius:8px;padding:.85rem 2rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-block}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover);color:#fff;transform:translateY(-1px)}.btn-outline{color:var(--color-text);border:1px solid var(--color-border);background:0 0}.btn-outline:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn-group{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}section{max-width:var(--max-width);margin:0 auto;padding:5rem 2rem}section h2{letter-spacing:-.02em;margin-bottom:1rem;font-size:2rem;font-weight:700}section .section-subtitle{color:var(--color-text-muted);max-width:600px;margin-bottom:3rem;font-size:1.1rem}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.feature-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:2rem;transition:border-color .2s}.feature-card:hover{border-color:var(--color-accent)}.feature-card .icon{margin-bottom:1rem;font-size:1.8rem}.feature-card h3{margin-bottom:.5rem;font-size:1.15rem;font-weight:600}.feature-card p{color:var(--color-text-muted);font-size:.95rem}.vertical-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.vertical-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:2.5rem 2rem}.vertical-card h3{margin-bottom:.75rem;font-size:1.3rem;font-weight:700}.vertical-card ul{padding:0;list-style:none}.vertical-card li{color:var(--color-text-muted);padding:.3rem 0;font-size:.95rem}.vertical-card li:before{content:"→ ";color:var(--color-green)}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;display:grid}.step{padding-top:.5rem;position:relative}.step:before{counter-increment:step;content:counter(step);text-align:center;background:var(--color-accent);color:#fff;border-radius:50%;width:2.5rem;height:2.5rem;margin-bottom:1rem;font-size:1rem;font-weight:700;line-height:2.5rem;display:inline-block}.step h3{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.step p{color:var(--color-text-muted);font-size:.95rem}.about-grid{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}.about-text p{color:var(--color-text-muted);margin-bottom:1rem}.about-highlights{flex-direction:column;gap:1rem;display:flex}.about-highlight{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:1.5rem}.about-highlight h4{margin-bottom:.3rem;font-weight:600}.about-highlight p{color:var(--color-text-muted);font-size:.9rem}.cta-section{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);max-width:var(--max-width);border-radius:16px;margin:2rem auto;padding:4rem 2rem}.cta-section h2{margin-bottom:1rem}.cta-section p{color:var(--color-text-muted);margin-bottom:2rem;font-size:1.1rem}footer{border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-muted);padding:2rem;font-size:.85rem}.arch-visual{justify-content:center;margin:3rem 0;display:flex}.arch-box{background:var(--color-surface);border:2px solid var(--color-border);text-align:center;border-radius:16px;width:100%;max-width:420px;padding:2.5rem 3rem;position:relative}.arch-label{background:var(--color-surface);color:var(--color-green);letter-spacing:.03em;padding:0 .75rem;font-size:.85rem;font-weight:600;position:absolute;top:-.8rem;left:1.5rem}.arch-node{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;margin:.75rem 0;padding:1.2rem}.arch-node .arch-icon{margin-bottom:.4rem;font-size:1.5rem;display:block}.arch-node strong{margin-bottom:.25rem;font-size:1rem;display:block}.arch-node small{color:var(--color-text-muted);font-size:.85rem}.arch-appliance{border-color:var(--color-accent)}.arch-arrow{color:var(--color-text-muted);padding:.5rem 0;font-size:.9rem;font-weight:500}.arch-footer{color:var(--color-text-muted);margin-top:1.2rem;font-size:.9rem;font-weight:500}.pii-grid{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}.pii-flow{text-align:center}.pii-node{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;margin:.5rem 0;padding:1.2rem}.pii-node .arch-icon{margin-bottom:.4rem;font-size:1.5rem;display:block}.pii-node strong{margin-bottom:.25rem;font-size:1rem;display:block}.pii-node small{color:var(--color-text-muted);font-size:.85rem}.pii-guard-node{border-color:var(--color-green);background:#34d3990d}.pii-external{border-color:var(--color-text-muted);opacity:.7}.pii-rehydrate{border-color:var(--color-accent)}.pii-features{flex-direction:column;gap:1rem;display:flex}.pii-features .feature-card{padding:1.5rem}.enabler-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-top:1rem;display:grid}.enabler-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:2rem;transition:border-color .2s,transform .2s}.enabler-card:hover{border-color:var(--color-accent);transform:translateY(-2px)}.enabler-card .icon{margin-bottom:.9rem;font-size:1.8rem}.enabler-card h3{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.enabler-card p{color:var(--color-text-muted);font-size:.95rem}.enabler-card.primary{border-color:var(--color-accent);background:linear-gradient(160deg, var(--color-surface), color-mix(in srgb, var(--color-accent) 12%, var(--color-surface)))}.enabler-card .tag{letter-spacing:.05em;text-transform:uppercase;color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 15%, transparent);border-radius:999px;margin-bottom:.75rem;padding:.15rem .6rem;font-size:.7rem;font-weight:700;display:inline-block}@media (width<=860px){nav{padding:.85rem 1.25rem}.nav-toggle{display:inline-flex}nav .nav-links{background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 12px 24px var(--color-shadow);flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.25rem 1rem;display:none;position:absolute;top:100%;left:0;right:0}nav .nav-links.open{display:flex}nav .nav-links li{width:100%}nav .nav-links a{border-bottom:1px solid var(--color-border);padding:.85rem .25rem;font-size:1rem;display:block}nav .nav-links li:last-child a{border-bottom:none}nav .nav-links a.btn-primary{text-align:center;border-radius:8px;margin-top:.75rem;border-bottom:none!important}}@media (width<=768px){.about-grid,.pii-grid{grid-template-columns:1fr}.hero{padding:4rem 1.5rem 3rem}.hero p{font-size:1.05rem}section{padding:3rem 1.5rem}section h2{font-size:1.6rem}.btn{text-align:center;width:100%}.btn-group{flex-direction:column;align-items:stretch}.cta-section{padding:2.5rem 1.5rem}.arch-box{padding:2rem 1.5rem}}@media (width<=420px){nav .logo{font-size:1.05rem}.hero h1{font-size:2rem}.feature-card,.vertical-card{padding:1.5rem}}
