/* Poster inspired home page: scale, overlap and strong type hierarchy. */
.home-body{--bg:#0c111c;--bg-deep:#0c111c;--panel:#171e2d;--line:#2d4566;--text:#f5f8ff;--muted:#ced7e7;--gold:#347cf4;--gold-soft:#a8ceff;background:#0c111c}
.home-body .site-header{background:#0c111c;border-bottom-color:#438bff2e}
.home-body .brand-cross{color:#4b95ff}
.home-body .site-brand small{color:#a8ceff}
.home-body .site-nav a[aria-current=page],.home-body .site-nav a:hover{color:#a8ceff;border-color:#4b95ff}
.home-body .mobile-site-nav{background:#0c111c}
.home-body .mobile-site-nav a[aria-current=page]{color:#fff;background:#286ddd;border-color:#286ddd}
.home-body .button{color:#fff;border-color:#347cf4;background:#286ddd}
.home-body .button:hover{background:#347cf4}
.home-body .button-ghost{background:#101827;border-color:#5f9dff;color:#fff}
.home-body .button-ghost:hover{background:#1a3558}
.home-body .accent{color:#67a7ff}
.home-body .eyebrow{color:#a8ceff}
.home-body .eyebrow:before{color:#4b95ff}

.poster-hero{position:relative;isolation:isolate;overflow:hidden;min-height:calc(100svh - 94px);background:radial-gradient(ellipse at 52% 55%,#173b775c 0,transparent 47%),linear-gradient(130deg,#101827,#080d16 69%);border-bottom:1px solid #3867a865}
.poster-hero:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.45;background-image:repeating-linear-gradient(0deg,#fff0 0 3px,#ffffff05 3px 4px),repeating-linear-gradient(90deg,#fff0 0 7px,#ffffff04 7px 8px);mask-image:linear-gradient(#000a,#0004)}
.poster-topline{position:relative;z-index:5;width:min(1500px,calc(100% - 70px));margin:0 auto;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#a8ceff;font-size:11px;font-weight:700;letter-spacing:.17em}
.poster-emblem{font-size:31px;line-height:1;color:#4b95ff;letter-spacing:0}
.poster-stage{position:relative;width:min(1500px,100%);height:clamp(500px,48vw,660px);margin:0 auto;overflow:hidden}
.poster-title{position:absolute;z-index:1;top:6%;left:50%;width:max-content;max-width:none;transform:translateX(-50%);margin:0;color:#347cf4;font-family:'Outfit',Arial,sans-serif;font-size:clamp(94px,15.5vw,236px);font-weight:900;line-height:.81;letter-spacing:-.105em;text-align:center;white-space:nowrap;text-shadow:0 0 50px #347cf43d;animation:poster-title-in .9s cubic-bezier(.2,.7,.2,1) both}
.poster-title span{display:inline}
.poster-title b{font-weight:900;color:#98c5ff}
.poster-artwork{position:absolute;z-index:2;inset:7% 0 0;pointer-events:none}
.poster-art-glow{position:absolute;inset:14% 13% 4%;background:radial-gradient(ellipse at center,#236edf5c 0,#143e8038 32%,transparent 68%);filter:blur(45px)}
.poster-art-ring{position:absolute;left:50%;top:52%;width:min(680px,58vw);aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid #5fa6ff38;border-radius:50%;box-shadow:0 0 0 42px #1e5cb52b,0 0 0 95px #2275dd16}
.poster-ear,.poster-brain{position:absolute;height:auto;object-fit:contain;filter:drop-shadow(0 24px 28px #000c);animation:poster-float 8s ease-in-out infinite}
.poster-ear{z-index:2;width:39%;left:9%;top:26%;transform:rotate(-8deg)}
.poster-brain{z-index:3;width:49%;right:8%;top:17%;animation-delay:-3s}
.poster-art-link{position:absolute;z-index:4;display:flex;align-items:center;gap:26px;min-height:43px;padding:9px 15px;border:1px solid #5f9dff;background:#0c111ced;color:#fff;font-size:12px;font-weight:800;letter-spacing:.13em;backdrop-filter:blur(9px);transition:background .2s,transform .2s}
.poster-art-link:hover{background:#225fc0;transform:translateY(-3px)}
.poster-art-link span{color:#9bc6ff;font-size:20px;line-height:1}
.poster-art-link-ear{left:9%;bottom:9%}
.poster-art-link-brain{right:8%;top:35%}
.poster-footer{position:relative;z-index:5;display:flex;align-items:end;justify-content:space-between;gap:36px;width:min(1360px,calc(100% - 80px));margin:-17px auto 0;padding-bottom:30px}
.poster-footer>div:first-child{max-width:560px}
.poster-kicker{margin:0 0 9px;color:#6dabff;font-size:12px;font-weight:800;letter-spacing:.2em}
.poster-intro{margin:0;color:#f3f7ff;font-size:clamp(19px,2vw,28px);font-weight:500;line-height:1.27;letter-spacing:-.025em}
.poster-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.poster-actions .button{gap:15px;white-space:nowrap}
.poster-actions .button span{font-size:20px;line-height:1}
.poster-scroll{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;width:min(1360px,calc(100% - 80px));margin:0 auto;padding:14px 0 19px;border-top:1px solid #4274b558;color:#bbcee9;font-size:10px;font-weight:800;letter-spacing:.19em}
.poster-scroll span{color:#67a7ff;font-size:19px;line-height:1}

.home-body .intro-band{background:#111827;border-color:#2d4566}
.home-body .specialty-section{background:#0c111c;border-color:#2d4566}
.home-body .specialty-section.reverse{background:#141d2c}
.home-body .specialty-visual:before{border-color:#4b95ff66;box-shadow:0 0 0 38px #347cf414}
.home-body .specialty-visual:after{background:#347cf43d}
.home-body .specialty-tag{color:#a8ceff}
.home-body .contact-band{background:#141d2c}
.home-body .site-map{background:#172338;border-color:#38557d}
.home-body .site-map p{color:#dceaff}
.home-body .site-footer{background:#0c111c;border-color:#2d4566}
.home-body .intro-points i{background:#4b95ff;box-shadow:0 0 10px #4b95ff}

@keyframes poster-title-in{from{opacity:0;translate:0 26px}to{opacity:1;translate:0 0}}
@keyframes poster-float{0%,100%{translate:0 0}50%{translate:0 -11px}}
@media(max-width:1050px){
  .poster-title{font-size:clamp(94px,15vw,165px)}
  .poster-stage{height:530px}
  .poster-ear{width:43%;left:5%;top:31%}
  .poster-brain{width:54%;right:4%;top:21%}
  .poster-art-link-ear{left:4%}
  .poster-art-link-brain{right:4%}
  .poster-footer{margin:0 auto}
}
@media(max-width:760px){
  .poster-hero{min-height:0}
  .poster-topline{width:calc(100% - 40px);padding-top:17px;font-size:9px;letter-spacing:.08em}
  .poster-emblem{font-size:22px}
  .poster-stage{height:565px}
  .poster-title{top:6%;left:14px;transform:none;font-size:clamp(78px,21.8vw,112px);line-height:.77;letter-spacing:-.095em;text-align:left}
  .poster-title span{display:block}
  .poster-title b{position:absolute;right:-.09em;bottom:0}
  .poster-artwork{inset:0}
  .poster-art-ring{top:62%;width:88vw}
  .poster-art-glow{inset:28% -5% 5%}
  .poster-ear{width:80%;left:-21%;top:45%}
  .poster-brain{width:91%;right:-16%;top:32%}
  .poster-art-link{gap:12px;min-height:37px;padding:7px 9px;font-size:10px;letter-spacing:.07em}
  .poster-art-link span{font-size:16px}
  .poster-art-link-ear{left:5%;bottom:6%}
  .poster-art-link-brain{right:4%;top:38%}
  .poster-footer{display:block;width:calc(100% - 40px);margin:0 auto;padding:20px 0 28px}
  .poster-intro{font-size:22px;max-width:450px}
  .poster-actions{justify-content:flex-start;margin-top:24px}
  .poster-actions .button{min-height:44px;padding:9px 13px;font-size:12px}
  .poster-scroll{width:calc(100% - 40px)}
}
@media(max-width:380px){
  .poster-stage{height:510px}
  .poster-title{font-size:clamp(70px,21vw,80px)}
  .poster-ear{top:47%}
  .poster-art-link-brain{top:40%}
}
@media(prefers-reduced-motion:reduce){.poster-title,.poster-ear,.poster-brain{animation:none}}
