/* Shared navigation and viewer accessibility refinements. */
:focus-visible { outline: 3px solid #7dd3fc; outline-offset: 4px; }
.mobile-contact { display:none; }
.lightbox-header { height:auto!important; min-height:68px; flex-shrink:0; gap:12px; padding:16px 20px!important; }
.lightbox-title-wrap { min-width:0; max-width:100%!important; flex:1; }
.lightbox-title, .lightbox-title-text, .lightbox-concept-badge { white-space:normal!important; overflow:visible!important; text-overflow:clip!important; overflow-wrap:anywhere; max-width:100%!important; }
.lightbox-controls { flex-shrink:0; }
.lightbox-body { min-height:0; flex:1; container-type:size; }
.lightbox-img-wrapper { touch-action:none; max-height:100%; }
.lightbox-img { max-height:100cqh!important; max-width:100%; }
.lightbox-footer { justify-content:safe center!important; }
.story-image-wrap .story-image-badge { position:static; width:fit-content; margin:12px 14px; }
@media (max-width:420px) {
  #architecture-content .gallery-grid { grid-template-columns:minmax(0,1fr); }
  #architecture-content .btn { max-width:100%; white-space:normal; text-align:center; }
}
@media(max-width:768px) {
  .mobile-contact { display:block; }
  .nav-menu { max-height:calc(100dvh - 68px); overflow-y:auto; }
  .lightbox-header { flex-wrap:wrap; max-height:45dvh; overflow-y:auto; }
  .lightbox-title-wrap { flex:1 1 100%; }
  .lightbox-title { display:block; font-size:14px!important; }
  .lightbox-concept-badge { font-size:12px!important; line-height:1.5; }
  .lightbox-controls { margin-left:auto; }
  .lightbox-footer { justify-content:flex-start!important; }
  .lightbox-btn { min-width:44px; min-height:44px; }
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto!important;}
  *, *::before, *::after {animation:none!important;transition:none!important;}
}

/* Shared content system: overview, reference, and legal pages. */
#capabilities,#capability-scope{scroll-margin-top:90px}
#capabilities .scope-note{margin-top:24px;line-height:1.7}
#capabilities .scope-note a{color:#7dd3fc}
#capabilities>.container>.section-desc{max-width:960px;margin:24px auto 0;color:#bac5d7;line-height:1.75}
#capabilities .overview-card p+p{margin-top:12px}
.skip-link{position:fixed;top:-80px;left:16px;z-index:9999;background:#e0f2fe;color:#082f49;padding:12px 20px;border-radius:8px}
.skip-link:focus{top:12px}
main{display:block}
.home-hero{padding-bottom:64px}
.home-hero .hero-title{font-size:clamp(2.6rem,6vw,5rem)}
.hero-footnote,.contact-note{color:#b1bfd3;font-size:.9rem;margin-top:24px}
.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.overview-card{padding:30px;border:1px solid var(--border-subtle);border-radius:18px;background:rgba(15,23,42,.72)}
.overview-card h3{font-size:1.25rem;line-height:1.35;margin:14px 0}
.overview-card p,.workflow-feature p,.faq p{color:#bac5d7;line-height:1.75}
.step-label,.status-label{color:#7dd3fc;font-size:.8rem;font-weight:700;letter-spacing:.06em}
.workflow-feature{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:48px;border:1px solid var(--border-subtle);border-radius:24px;background:linear-gradient(130deg,#111c33,#141629)}
.workflow-feature .section-title{font-size:clamp(1.8rem,3.5vw,2.8rem);margin:20px 0}
.workflow-feature .btn{margin-top:24px}
.workflow-list{list-style:decimal-leading-zero;padding-left:36px}
.workflow-list li{padding:16px 0 16px 12px;border-bottom:1px solid #334155}
.workflow-list li::marker{color:#7dd3fc;font-weight:700}
.workflow-list strong,.workflow-list span{display:block}
.workflow-list span{color:#bac5d7;margin-top:5px}
.compact-section{padding-top:64px;padding-bottom:64px}
.section-link{text-align:center;margin-top:28px}
.section-link a,.faq a{color:#7dd3fc}
.faq{max-width:900px}
.faq details{border-bottom:1px solid #334155;padding:22px 0}
.faq summary{cursor:pointer;font-size:1.1rem;font-weight:600;padding-right:12px}
.faq p{margin-top:16px}
.nav-link[aria-current]{color:#7dd3fc;background:rgba(56,189,248,.08)}
.architecture-hero{padding-bottom:64px}
@media(min-width:769px){.hero-specs{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:768px){
.overview-grid,.workflow-feature{grid-template-columns:1fr}
.workflow-feature{padding:24px;gap:24px}
.overview-card{padding:24px}
.home-hero{padding-top:116px}
.hero-cta-group .btn{width:100%}
.section{padding-top:56px;padding-bottom:56px}
.section-title{font-size:2rem}
}

.marketing-figure{margin:32px 0 48px;border:1px solid #334155;border-radius:16px;overflow:hidden;background:#101b2e}
.marketing-figure img{display:block;width:100%;height:auto}
.marketing-figure figcaption{padding:20px 24px;color:#bac5d7;line-height:1.7;font-size:.9rem}
.marketing-figure figcaption strong{display:block;color:#fde68a;margin-bottom:8px}
.marketing-detail{padding:40px 0;border-top:1px solid #334155;scroll-margin-top:90px}
#adoption-scenarios{scroll-margin-top:90px}
.marketing-detail h3{font-size:clamp(1.5rem,3vw,2rem);margin:14px 0}
.marketing-detail>p{max-width:900px;color:#bac5d7;line-height:1.8;margin:18px 0}
.marketing-detail a,.overview-card>a,.marketing-figure a,.related-concept a{color:#7dd3fc}
.concept-flow{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0;margin:28px 0}
.concept-flow li{border:1px solid #334155;border-top:3px solid #38bdf8;padding:24px 20px;border-radius:12px;background:#111d30}
.concept-flow strong,.concept-flow span{display:block}
.concept-flow span{color:#bac5d7;line-height:1.6;margin-top:10px}
.scope-note,.related-concept{border-left:3px solid #38bdf8;background:#111c30;padding:18px 24px}
.related-concept{margin-top:24px;margin-bottom:24px;max-width:900px}
.related-concept p{color:#bac5d7;margin:8px 0;line-height:1.7}
@media(max-width:768px){.concept-flow{grid-template-columns:1fr 1fr}.marketing-figure figcaption{padding:16px}.related-concept{width:calc(100% - 48px)}}
@media(max-width:420px){.concept-flow{grid-template-columns:1fr}}

/* Public visual guides and iceberg cover. */
.hero-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:center}
.hero-split .hero-content{text-align:left;max-width:none;margin:0}
.hero-split .hero-title{font-size:clamp(2.5rem,4.3vw,4.1rem)}
.hero-split .hero-subtitle{font-size:1.05rem}
.hero-split .hero-cta-group{justify-content:flex-start}
.hero-split .hero-pill{font-size:.72rem;line-height:1.6}
.iceberg-hero{margin:0;border:1px solid #24364d;border-radius:22px;overflow:hidden;background:#061224;box-shadow:0 24px 80px #02061766}
.iceberg-hero img{display:block;width:100%;height:auto}
.iceberg-hero figcaption{padding:20px 24px;background:linear-gradient(120deg,#0a192d,#101729)}
.iceberg-hero figcaption span{display:block;color:#7dd3fc;font-size:.7rem;letter-spacing:.14em;font-weight:700;margin-bottom:8px}
.iceberg-hero figcaption strong{display:block;font-size:1.1rem;line-height:1.5}
.iceberg-hero figcaption a{display:inline-block;color:#7dd3fc;font-size:.86rem;margin-top:12px}
.iceberg-hero figcaption small{display:block;color:#a9b8cd;font-size:.75rem;margin-top:12px}
.resource-entry-links{display:grid;gap:16px}
.resource-entry-links a{display:block;padding:16px 0;border-bottom:1px solid #334155;color:#7dd3fc;line-height:1.5}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.hero-split{grid-template-columns:1fr;gap:32px}.hero-split .hero-content{max-width:680px}.iceberg-hero{max-width:680px}.hero-split .hero-title{font-size:clamp(2.6rem,7vw,4rem)}}

/* Whitepaper-bound content hierarchy; existing visual identity retained. */
.company-footer{padding-top:24px;padding-bottom:28px;color:#bac5d7;font-size:.85rem;line-height:1.8}.company-footer a{color:#7dd3fc}.company-footer p+p{margin-top:10px}.hero-tagline{font-size:clamp(1.2rem,2vw,1.55rem);font-weight:600;line-height:1.5;margin:20px 0;color:#e2e8f0}.operating-flow{grid-template-columns:repeat(5,minmax(0,1fr))}.operating-flow li{padding:24px 16px}.whitepaper-reference{margin:36px 0}.whitepaper-reference h2{font-size:1.5rem;margin:20px 0}#whitepaper a{font-weight:600;color:#7dd3fc;font-size:1.1rem;line-height:1.7}.hero-split .hero-title{font-size:clamp(2.4rem,3.8vw,3.6rem)}@media(max-width:1000px){.operating-flow{grid-template-columns:1fr 1fr}.nav-menu{gap:14px}}@media(max-width:600px){.operating-flow{grid-template-columns:1fr}.hero-split .hero-title{font-size:2.4rem}.company-footer{padding-left:24px;padding-right:24px}}

/* Homepage-only first-view hierarchy. Existing shared rules above are preserved. */
.home-page .home-hero{padding:126px 0 60px}
.home-page .hero-split{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:56px;align-items:center}
.home-page .hero-title{font-size:clamp(2.5rem,4.2vw,3.65rem);line-height:1.12;margin-bottom:22px}
.home-page .hero-subtitle{font-size:1.08rem;line-height:1.65;margin-bottom:20px;color:#c5d0e1}
.home-page .hero-boundary{font-size:.94rem;line-height:1.7;color:#c5d0e1;border-left:2px solid #7dd3fc;padding-left:14px}
.home-page .hero-boundary strong{color:#f8d2db;font-weight:600}
.home-page .hero-tagline{font-size:1.05rem;margin:22px 0 18px}
.home-page .hero-cta-group{gap:12px;margin-bottom:20px}
.home-page .hero-cta-group .btn{font-size:.9rem;padding:13px 18px;white-space:normal;text-align:center}
.home-page .hero-category{font-size:.78rem;color:#9cacc3;line-height:1.6}
.home-page .execution-view{padding:26px;border:1px solid #344762;border-radius:22px;background:linear-gradient(145deg,#111e32,#0b1425);box-shadow:0 20px 65px #02061740}
.home-page .execution-kicker{font-size:.65rem;font-weight:700;letter-spacing:.14em;color:#8ccde8;margin-bottom:10px}
.home-page .execution-view h2{font-size:1.25rem;line-height:1.35;letter-spacing:-.02em}
.home-page .execution-scope{font-size:.78rem;line-height:1.55;color:#adbed4;margin:10px 0 18px}
.home-page .execution-checks{list-style:none;padding:0;margin:0 0 14px}
.home-page .execution-checks li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #344762;font-size:.88rem;line-height:1.5}
.home-page .execution-checks li span{color:#8ccde8;font-size:.7rem;font-weight:700}
.home-page .execution-checks li strong{font-weight:600}
.home-page .execution-branches{display:grid;grid-template-columns:1.25fr 1fr;gap:12px}
.home-page .execution-permitted,.home-page .execution-denied{border:1px solid #3b7167;border-radius:12px;padding:16px 14px;background:#102927}
.home-page .execution-status{font-size:.66rem;font-weight:800;letter-spacing:.08em;color:#a6efd7;margin-bottom:14px;line-height:1.4}
.home-page .execution-permitted ol{list-style:none;padding:0;margin:0;font-size:.82rem;line-height:1.5;font-weight:600}
.home-page .execution-permitted li+li{margin-top:9px}
.home-page .execution-permitted li+li::before{content:'↓';display:block;color:#8ec9bc;margin-bottom:9px}
.home-page .execution-denied{background:#2a1a27;border-color:#7c4e60}
.home-page .execution-denied .execution-status{color:#ffb9ce}
.home-page .execution-denied strong{font-size:.91rem;line-height:1.5;color:#ffe6ed}
.home-page .execution-denied>p:last-child{font-size:.78rem;line-height:1.55;color:#d1b5c2;margin-top:10px}
.home-page .execution-acceptance{border-top:1px solid #344762;padding-top:16px;margin-top:18px;color:#adbed4;font-size:.78rem;line-height:1.6}
.home-page .execution-acceptance strong{color:#e2e8f0;font-weight:500}
.home-page #workflow{padding-top:32px}
.home-page #workflow .workflow-limit{font-size:.82rem;line-height:1.6;margin-top:16px;color:#a8b6ca}
.home-page .operating-iceberg{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;max-width:960px;margin:0 auto 48px}
.home-page .operating-iceberg figcaption{background:none;padding:28px}
@media(max-width:1000px){
  .home-page .hero-split{grid-template-columns:1fr;gap:30px;max-width:760px}
  .home-page .hero-content{max-width:none}
}
@media(max-width:700px){
  .home-page .home-hero{padding-top:106px;padding-bottom:30px}
  .home-page .hero-title{font-size:clamp(2.25rem,8.5vw,3rem)}
  .home-page .hero-subtitle{font-size:1rem;line-height:1.6;margin-bottom:18px}
  .home-page .hero-tagline{font-size:.95rem;margin:18px 0 16px}
  .home-page .hero-cta-group{gap:10px;margin-bottom:16px}
  .home-page .execution-view{padding:22px 18px}
  .home-page .operating-iceberg{grid-template-columns:1fr}
  .home-page .operating-iceberg figcaption{padding:24px}
}
@media(max-width:360px){
  .home-page .execution-view{padding:20px 14px}
  .home-page .execution-branches{gap:8px}
  .home-page .execution-permitted,.home-page .execution-denied{padding:14px 10px}
}
