/* =====================================================================
   v20 — Swiss editorial system / final shared polish
   Principles: grid, hierarchy, restraint, predictable rhythm, zero UI noise.
   ===================================================================== */
:root{
  --swiss-unit:8px;
  --swiss-space-1:8px;--swiss-space-2:16px;--swiss-space-3:24px;--swiss-space-4:32px;
  --swiss-space-5:48px;--swiss-space-6:64px;--swiss-space-7:88px;
  --swiss-max:1200px;
  --swiss-rule:rgba(170,191,231,.17);
}
html{scroll-padding-top:76px}
body{background:linear-gradient(180deg,#060b16 0%,#080f1d 48%,#050912 100%)}
.page-grid{opacity:.08;background-size:48px 48px}
.shell{width:min(var(--swiss-max),calc(100vw - 56px))}

/* Shared chrome */
.sysbar{min-height:58px;padding:11px max(24px,calc((100vw - var(--swiss-max))/2));border-bottom-color:var(--swiss-rule);background:rgba(5,9,18,.92);backdrop-filter:blur(14px);box-shadow:none}
.sys-id{font-size:10px;letter-spacing:.09em}.sys-actions{gap:18px}.sys-nav{gap:16px}.sys-nav a{font-size:10px;letter-spacing:.065em}
.header-story{background:transparent!important;border-color:var(--lineStrong)!important;box-shadow:none!important}
.header-story:hover{background:rgba(255,255,255,.035)!important}
.lang-switch{border-inline-start-color:var(--swiss-rule)}

/* Editorial type rhythm */
h1,h2,h3{font-feature-settings:"kern" 1,"liga" 1;text-wrap:balance}
.eyebrow{letter-spacing:.11em;color:#7592c5}
.intro,.project-desc,.section-head p,.mw-intro,.mw-project-head p,.site-footer-copy p{text-wrap:pretty}

/* Home: flatten decorative UI and let content lead */
.hero{gap:24px;padding:56px 0 32px}
.hero-copy,.hero-panel,.project-card,.contact-card,.proof-card{box-shadow:none;background:rgba(9,16,31,.62);border-color:var(--swiss-rule)}
.hero-copy{padding:34px}.hero-panel{padding:20px;gap:12px}
.hero-cta{margin-top:26px}.button{min-height:43px;padding:11px 16px;box-shadow:none}.button.primary{background:#214fd7}.button:hover{transform:none}
.stat-card{background:rgba(255,255,255,.018);padding:17px;border-color:rgba(255,255,255,.05)}
.stat-card strong{font-size:40px}
.archive-banner{grid-template-columns:auto minmax(0,1fr) auto;margin:10px auto 24px;padding:18px 20px;border-color:var(--swiss-rule);background:rgba(9,17,32,.68);box-shadow:none}
.archive-banner:hover{border-color:var(--lineStrong);background:rgba(11,21,39,.76)}
.archive-banner:before{display:none}.ab-tag{border-color:var(--lineStrong);color:#b8cdf4}.ab-cta{background:transparent;border:1px solid var(--lineStrong)}
.archive-banner:hover .ab-cta{background:rgba(255,255,255,.035)}
.filters-wrap{padding-top:38px}.section-head{margin-bottom:20px;padding-bottom:17px;border-bottom:1px solid var(--swiss-rule);align-items:start}.section-head h2{font-size:30px}
.filters{gap:6px;margin-bottom:18px}.filter-btn{background:transparent;border-color:var(--swiss-rule);padding:8px 11px}.filter-btn.active,.filter-btn:hover{background:#17399f;border-color:#17399f}
.project-list{gap:18px}.project-card{padding:20px;gap:22px;border-color:var(--swiss-rule);transition:border-color .35s ease,opacity .2s}.project-card:hover{transform:none;border-color:var(--lineStrong)}
.project-tags span{background:transparent;border-color:var(--swiss-rule)}.project-open{background:transparent}.project-open:hover{background:#17399f}
.media-frame{border-color:rgba(255,255,255,.05)}
.capability-section{padding-top:64px}.skill-primary{border-color:var(--swiss-rule)}.skill-pill{background:rgba(8,15,29,.48);border-color:var(--swiss-rule)}

/* More Work: strict vertical editorial flow */
.mw-main{padding-top:28px}.mw-intro-block{padding:22px 0 32px;border-bottom-color:var(--swiss-rule)}
.mw-projects{padding-top:38px}.mw-project{gap:12px;padding-top:24px}.mw-project+.mw-project{margin-top:38px}
.mw-project-head{max-width:72ch;gap:4px}.mw-kicker{color:#6682b3}.mw-project-head h2{font-size:clamp(22px,2.45vw,30px)}
.mw-section-divider{margin-top:82px;padding-top:14px;border-top:1px solid var(--swiss-rule);gap:18px}.mw-section-line{display:none}.mw-section-label{font-size:13px;font-family:"Space Mono",ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:#9fb5dc}
.mw-grid{gap:8px}.mw-card,.mw-hero-card,.mw-swap{outline-color:rgba(255,255,255,.035)}
.mw-card:hover .mw-card-media img,.mw-hero-card:hover .mw-card-media img{filter:none}
.mw-swap-layer{transition:opacity 2.15s cubic-bezier(.25,.1,.25,1)}
.mw-swap-hint{background:rgba(3,7,17,.62);border-color:rgba(255,255,255,.11)}

/* Video: same system, not a separate visual language */
.vp-main{padding-top:28px!important}.vp-hero{padding:38px 34px!important;border-color:var(--swiss-rule)!important;background:rgba(9,16,31,.62)!important;box-shadow:none!important}
.vp-hero:after{display:none!important}.vp-stats{gap:8px!important}.vp-stat{background:rgba(255,255,255,.018)!important;border-color:var(--swiss-rule)!important}
.vp-featured{border-top-color:var(--swiss-rule)!important}.vp-featured-grid{gap:8px!important}.vp-featured-grid a{background:transparent!important;border-color:var(--swiss-rule)!important;transition:background .35s ease,border-color .35s ease!important}.vp-featured-grid a:hover{transform:none!important;background:rgba(255,255,255,.028)!important;border-color:var(--lineStrong)!important}
.vp-filters{gap:6px!important}.vp-filter{background:transparent!important;border-color:var(--swiss-rule)!important}.vp-filter.active{background:#17399f!important;border-color:#17399f!important}
.vp-card,.vp-panel{background:rgba(9,16,31,.58)!important;border-color:var(--swiss-rule)!important;box-shadow:none!important}.vp-card{margin-bottom:18px!important}.vp-card-head,.vp-field,.vp-credit{border-color:var(--swiss-rule)!important}.vp-card-body{gap:26px!important;padding:22px!important}
.vp-poster{transition:background .45s ease!important}.vp-poster:hover{background:radial-gradient(120% 90% at 50% 0%,rgba(27,79,214,.38),transparent 62%),#050a15!important}
.vp-msg{background:rgba(27,79,214,.08)!important;border-color:var(--swiss-rule)!important}

/* One footer system */
.site-footer{margin-top:76px;border-top-color:var(--swiss-rule);background:#050a13;box-shadow:none}.site-footer-inner{padding-top:44px}.site-footer-top{gap:48px}.site-footer-contact,.site-footer-contact>a,.site-footer-bottom{border-color:var(--swiss-rule)}
.site-footer-contact>a:hover{background:rgba(255,255,255,.025)}

/* Accessibility + stability */
:focus-visible{outline:2px solid #7be4ff!important;outline-offset:3px}
img{height:auto}.noscript-note{margin:20px auto;max-width:var(--swiss-max);padding:12px 16px;border:1px solid var(--swiss-rule);color:var(--muted)}
@media(max-width:980px){
  .shell{width:min(var(--swiss-max),calc(100vw - 36px))}.sysbar{padding-inline:18px}.hero{padding-top:38px}
  .archive-banner{grid-template-columns:1fr}.mw-section-divider{margin-top:62px}.site-footer{margin-top:58px}
}
@media(max-width:640px){
  .shell{width:calc(100vw - 28px)}.sysbar{padding:10px 14px}.hero{padding-top:28px}.hero-copy{padding:24px}.hero-panel{padding:14px}
  .archive-banner{padding:15px;margin-bottom:18px}.section-head{padding-bottom:14px}.mw-main{padding-top:16px}.mw-intro-block{padding-top:14px}.mw-section-divider{margin-top:50px}
  .vp-hero{padding:26px 20px!important}.vp-card-body{padding:16px!important}.site-footer{margin-top:48px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
