:root {
  --bg:#08090b; --panel:#101216; --panel-2:#171a20; --ink:#f5f7f8; --muted:#8c929a;
  --line:rgba(255,255,255,.12); --silver:#cfd5da; --accent:#a8e8ff; --mouse-x:50vw; --mouse-y:50vh;
  --font-body:Arial,Helvetica,sans-serif; --font-display:"Arial Narrow",Arial,Helvetica,sans-serif;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--bg); }
body { margin:0; background:var(--bg); color:var(--ink); font-family:var(--font-body),sans-serif; overflow-x:hidden; }
html.menu-open,body.menu-open { overflow:hidden; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
::selection { background:var(--accent); color:#050607; }
.noise { position:fixed; inset:0; z-index:60; pointer-events:none; opacity:.025; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E"); }
.cursor-glow { position:fixed; width:580px; height:580px; left:var(--mouse-x); top:var(--mouse-y); transform:translate(-50%,-50%); border-radius:50%; pointer-events:none; z-index:0; background:radial-gradient(circle,rgba(168,232,255,.08),transparent 68%); }

.nav-shell { position:absolute; z-index:30; inset:0 0 auto; height:96px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:11px; min-width:205px; }
.brand-mark { width:42px; height:42px; position:relative; overflow:hidden; background:#fff; flex:0 0 42px; }
.brand-mark img { position:absolute; width:130px; max-width:none; left:-45px; top:-17px; }
.brand-name { font:600 19px/1 var(--font-display),sans-serif; letter-spacing:.16em; }
.brand-name>span { color:#8c9298; }
.brand-name small { display:block; margin-top:7px; color:#6c737b; font:600 6px/1 var(--font-body),sans-serif; letter-spacing:.25em; }
.nav-links { display:flex; align-items:center; gap:32px; font-size:13px; }
.nav-links>a:not(.nav-cta) { color:#b4b9be; transition:.25s; }
.nav-links>a:not(.nav-cta):hover { color:#fff; }
.nav-cta { padding:13px 19px; border:1px solid rgba(255,255,255,.28); transition:.25s; }
.nav-cta:hover { background:#fff; color:#08090b; border-color:#fff; }
.nav-cta span,.button span { margin-left:8px; }
.menu-toggle,.menu-backdrop { display:none; }
.menu-toggle { border:0; background:none; padding:12px; cursor:pointer; }
.menu-toggle-line { display:block; width:26px; height:1px; margin:6px 0; background:#fff; }

.hero { min-height:100svh; position:relative; padding:155px 5vw 36px; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr); align-content:center; isolation:isolate; overflow:hidden; }
.hero:before { content:""; position:absolute; inset:96px 0 0; z-index:-2; background-image:linear-gradient(rgba(255,255,255,.038) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.038) 1px,transparent 1px); background-size:76px 76px; mask-image:linear-gradient(to bottom,black,transparent 92%); }
.slash { position:absolute; height:1px; background:linear-gradient(90deg,transparent,#89929a,transparent); z-index:-1; transform:rotate(-31deg); transform-origin:center; opacity:.34; }
.slash-one { width:78vw; right:-21vw; top:42%; }.slash-two { width:44vw; left:-13vw; bottom:24%; opacity:.15; }
.hero-copy { position:relative; z-index:2; max-width:940px; animation:rise .8s ease-out both; }
.eyebrow { display:inline-flex; gap:11px; align-items:center; margin-bottom:29px; color:#9aa1a8; font-size:10px; font-weight:700; letter-spacing:.18em; }
.pulse { width:7px; height:7px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 0 rgba(168,232,255,.5); animation:pulse 1.8s infinite; }
h1 { margin:0; font:520 clamp(58px,7.5vw,122px)/.84 var(--font-display),sans-serif; letter-spacing:-.07em; text-transform:uppercase; }
.outline-word { color:transparent; -webkit-text-stroke:1.4px rgba(242,245,247,.76); }
.accent-word { display:inline-block; padding-left:4.5vw; color:var(--silver); }
.hero-lead { max-width:670px; margin:35px 0 29px; color:#9ba0a6; font-size:clamp(16px,1.25vw,19px); line-height:1.7; }
.hero-actions { display:flex; flex-wrap:wrap; gap:11px; }
.button { min-height:56px; padding:0 24px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--line); font-size:13px; font-weight:750; transition:.25s; }
.button.primary { background:#f4f6f7; color:#07090a; border-color:#f4f6f7; }
.button.primary:hover { background:var(--accent); border-color:var(--accent); transform:translateY(-3px); box-shadow:0 15px 40px rgba(168,232,255,.14); }
.button.ghost:hover { border-color:#737b83; background:#111419; }
.hero-side { position:relative; z-index:2; display:grid; place-items:center; min-width:0; }
.logo-stage { width:min(440px,88%); position:relative; padding:19px; border:1px solid rgba(255,255,255,.2); background:rgba(12,14,17,.72); backdrop-filter:blur(14px); box-shadow:0 40px 120px rgba(0,0,0,.5); transform:perspective(900px) rotateY(-7deg) rotateX(2deg); animation:stage-float 6s ease-in-out infinite; }
.logo-stage:before { content:""; position:absolute; inset:11px; border:1px solid rgba(255,255,255,.07); pointer-events:none; }
.logo-stage>img { display:block; width:100%; aspect-ratio:1.2; object-fit:cover; background:white; }
.stage-corner { position:absolute; width:24px; height:24px; z-index:2; }.top-left { left:-1px; top:-1px; border-left:2px solid var(--accent); border-top:2px solid var(--accent); }.bottom-right { right:-1px; bottom:-1px; border-right:2px solid var(--accent); border-bottom:2px solid var(--accent); }
.stage-status { display:flex; justify-content:space-between; align-items:center; padding:16px 4px 0; color:#787f86; font-size:8px; text-transform:uppercase; letter-spacing:.14em; }.stage-status b { color:var(--accent); font-weight:700; }
/* .orbit-mark { position:absolute; right:0; bottom:-2%; width:142px; height:142px; border:1px solid rgba(255,255,255,.16); border-radius:50%; display:grid; place-items:center; color:#71777d; font-size:9px; letter-spacing:.1em; animation:spin 18s linear infinite; }.orbit-mark span { position:absolute; text-align:center; width:100%; }.orbit-mark b { color:#fff; font-size:28px; animation:spin-reverse 18s linear infinite; } */
.hero-foot { grid-column:1/-1; margin-top:52px; padding-top:24px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; color:#656b71; font-size:9px; letter-spacing:.13em; text-transform:uppercase; }
.trust-row { display:flex; gap:26px; color:#aeb3b8; font-size:11px; font-weight:700; letter-spacing:0; text-transform:none; }

.ticker { position:relative; z-index:5; overflow:hidden; padding:18px 0; background:#e6e9eb; color:#0b0d0f; border-block:1px solid #fff; }
.ticker div { width:max-content; font:650 18px/1 var(--font-display); letter-spacing:.05em; word-spacing:17px; animation:marquee 24s linear infinite; }.ticker b { color:#7d858c; }
.section { padding:140px 5vw; }
.section-head { display:grid; grid-template-columns:.72fr 2fr 1.15fr; gap:42px; align-items:end; margin-bottom:72px; }
.section-index { align-self:start; color:#71777d; font-size:9px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.section-index.light { color:#8f969d; }
.section h2,.results h2,.contact h2 { margin:0; font:500 clamp(45px,5.7vw,84px)/.96 var(--font-display); letter-spacing:-.062em; text-transform:uppercase; }
.section h2 em,.results h2 em,.contact h2 em { color:#9ca5ad; font-style:normal; }
.section-head>p,.calc-copy>p,.faq-title>p { margin:0; color:#838990; font-size:14px; line-height:1.75; }

.service-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; border:1px solid #272b30; background:#272b30; }
.service-card { min-height:390px; position:relative; display:flex; flex-direction:column; padding:28px; overflow:hidden; background:#0c0e11; transition:.35s; }
.service-card:before { content:""; position:absolute; right:-110%; bottom:-130%; width:230%; aspect-ratio:1; background:conic-gradient(from 90deg,transparent,rgba(168,232,255,.12),transparent 28%); transition:.7s; }
.service-card:hover { background:#13161a; transform:translateY(-8px); z-index:2; }.service-card:hover:before { transform:rotate(36deg); }
.card-number { color:#626970; font:600 11px var(--font-display); }.card-arrow { position:absolute; right:28px; top:21px; color:#959da5; font-size:24px; transition:.3s; }.service-card:hover .card-arrow { color:var(--accent); transform:rotate(45deg); }
.service-card h3 { margin:auto 0 19px; font:500 27px/1.05 var(--font-display); letter-spacing:-.04em; }.service-card p { margin:0 0 25px; color:#7f858c; font-size:13px; line-height:1.7; }.service-card small { padding-top:15px; border-top:1px solid #2a2e33; color:#adb2b7; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }

.results { padding:140px 5vw; background:#e9ecee; color:#0b0d0f; }
.results-intro { display:grid; grid-template-columns:.72fr 3.15fr; gap:42px; margin-bottom:64px; }.results-intro>div { display:grid; grid-template-columns:2fr 1fr; gap:45px; align-items:end; }.results-intro p { margin:0; color:#63696e; font-size:13px; line-height:1.7; }.results h2 em { color:#7a838a; }
.case-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.case { min-height:690px; padding:36px; display:flex; flex-direction:column; overflow:hidden; }.case-dark { background:#0b0d10; color:white; }.case-light { background:#cfd4d8; color:#0b0d0f; }
.case-top { display:flex; justify-content:space-between; font-size:9px; font-weight:800; letter-spacing:.15em; }.case-visual { min-height:320px; position:relative; display:grid; place-items:center; }
.telemetry strong { font:500 clamp(130px,17vw,250px)/1 var(--font-display); letter-spacing:-.09em; color:#e8ecef; }.telemetry>span { position:absolute; top:68%; right:17%; color:var(--accent); font-size:10px; letter-spacing:.2em; }.signal { position:absolute; border:1px solid rgba(168,232,255,.25); border-radius:50%; animation:ripple 3s ease-out infinite; }.signal-a { width:180px; height:180px; }.signal-b { width:260px; height:260px; animation-delay:1.2s; }
.flow-map { width:300px; margin:auto; aspect-ratio:1; min-height:0; border:1px solid rgba(0,0,0,.14); border-radius:50%; }.flow-map:before,.flow-map:after { content:""; position:absolute; inset:15%; border:1px solid rgba(0,0,0,.12); border-radius:50%; }.flow-map:after { inset:31%; }.flow-core { z-index:2; display:flex; flex-direction:column; align-items:center; font:500 63px/1 var(--font-display); }.flow-core small { margin-top:6px; font:700 9px var(--font-body); letter-spacing:.14em; text-transform:uppercase; }.flow-node { position:absolute; z-index:3; padding:8px 11px; border:1px solid rgba(0,0,0,.28); background:#dde1e3; font-size:8px; font-weight:800; letter-spacing:.12em; }.n1 { top:6%; left:43%; }.n2 { bottom:18%; left:4%; }.n3 { bottom:12%; right:7%; }
.case h3 { margin:auto 0 34px; font:500 clamp(29px,3vw,45px)/1.06 var(--font-display); letter-spacing:-.05em; }.case-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; padding-top:22px; border-top:1px solid rgba(0,0,0,.2); }.case-dark .case-stats { border-color:rgba(255,255,255,.2); }.case-stats div { display:flex; flex-direction:column; }.case-stats b { font:550 24px var(--font-display); }.case-stats span { margin-top:4px; font-size:8px; letter-spacing:.08em; text-transform:uppercase; opacity:.62; }

.calculator-section { display:grid; grid-template-columns:.9fr 1.1fr; gap:8vw; align-items:center; background:#101216; }.calc-copy h2 { margin:30px 0; }.calculator { padding:39px; border:1px solid #30353a; background:#15181d; box-shadow:0 35px 100px rgba(0,0,0,.35); }.range-label { display:flex; justify-content:space-between; align-items:end; color:#888f96; font-size:12px; }.range-label strong { color:#f0f3f5; font:550 29px var(--font-display); }.calculator input[type=range] { --progress:14%; width:100%; height:4px; margin:38px 0 8px; appearance:none; border-radius:8px; background:linear-gradient(90deg,var(--accent) var(--progress),#353a40 var(--progress)); }.calculator input::-webkit-slider-thumb { width:24px; height:24px; appearance:none; border:6px solid #111419; border-radius:50%; background:#f5f7f8; box-shadow:0 0 0 2px var(--accent); cursor:grab; }.range-limits { display:flex; justify-content:space-between; color:#62686e; font-size:9px; }.calc-output { display:grid; grid-template-columns:1fr 1fr; gap:11px; margin-top:43px; }.calc-output>div { display:flex; flex-direction:column; padding:21px; border:1px solid #272c32; background:#0e1013; }.calc-output small { color:#737a81; font-size:9px; text-transform:uppercase; letter-spacing:.1em; }.calc-output b { margin-top:8px; font:520 31px var(--font-display); }.calc-output span { margin-top:4px; color:#626970; font-size:9px; }.fineprint { margin:18px 0 0; color:#5e646a; font-size:9px; line-height:1.5; }

.process { background:#08090b; }.steps { border-top:1px solid #292d31; }.step { min-height:140px; display:grid; grid-template-columns:.72fr 3fr 70px; align-items:center; padding:29px 10px; border-bottom:1px solid #292d31; transition:.3s; }.step:hover { padding-left:25px; background:#0f1114; }.step>span { color:var(--accent); font:600 11px var(--font-display); }.step h3 { margin:0 0 8px; font:500 28px var(--font-display); }.step p { margin:0; color:#747a80; font-size:13px; }.step>b { text-align:right; color:#4f565c; font-size:28px; }
.faq-section { display:grid; grid-template-columns:.9fr 1.1fr; gap:8vw; background:#e4e7e9; color:#0c0e10; }.faq-title h2 { margin:29px 0 24px; }.faq-title h2 em { color:#717a81; }.faq-title>p { color:#6b7176; }.faq-item { border-bottom:1px solid #bec3c7; }.faq-item button { width:100%; padding:27px 0; display:flex; justify-content:space-between; gap:22px; border:0; background:none; text-align:left; font-weight:750; cursor:pointer; }.faq-item button b { color:#67727a; font-size:23px; }.faq-item>div { display:grid; grid-template-rows:0fr; transition:.35s; }.faq-item>div p { margin:0; overflow:hidden; color:#62686d; font-size:13px; line-height:1.7; }.faq-item.open>div { grid-template-rows:1fr; }.faq-item.open>div p { padding-bottom:27px; }

.contact { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:8vw; overflow:hidden; padding:140px 5vw 100px; background:#0e1115; }.contact:before { content:""; position:absolute; inset:0; background:linear-gradient(120deg,transparent 47%,rgba(168,232,255,.04) 47%,rgba(168,232,255,.04) 48%,transparent 48%); }.contact-line { position:absolute; width:1000px; height:1px; right:-300px; top:38%; background:linear-gradient(90deg,transparent,var(--accent),transparent); transform:rotate(-31deg); opacity:.25; }.contact-copy,.contact-form,.success-box { position:relative; z-index:1; }.contact h2 { margin:31px 0; }.contact h2 em { color:#aeb6bc; }.contact-copy>p { max-width:490px; color:#858c93; line-height:1.75; }.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:24px 16px; padding:34px; border:1px solid #30353a; background:rgba(8,10,12,.66); backdrop-filter:blur(12px); }.contact-form label { color:#777f86; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }.contact-form label.wide { grid-column:1/-1; }.contact-form input,.contact-form select,.contact-form textarea { width:100%; margin-top:8px; padding:13px 0; resize:none; outline:0; border:0; border-bottom:1px solid #363b40; background:transparent; color:white; font-size:13px; }.contact-form option { color:#101214; }.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color:var(--accent); }.submit { grid-column:1/-1; min-height:57px; border:0; background:#f2f4f5; color:#090b0d; font-weight:800; cursor:pointer; transition:.25s; }.submit:hover { background:var(--accent); transform:translateY(-3px); }.form-note { grid-column:1/-1; color:#555c62; font-size:8px; line-height:1.5; text-align:center; }.success-box { align-self:center; padding:48px; border:1px solid #30353a; background:#111419; }.success-box>span { width:53px; height:53px; display:grid; place-items:center; border:1px solid var(--accent); color:var(--accent); font-size:23px; }.success-box h3 { margin:24px 0 8px; font:500 34px var(--font-display); }.success-box p { color:#858c93; }

footer { min-height:190px; padding:52px 5vw; display:grid; grid-template-columns:1fr 2fr 1fr; gap:22px; align-items:start; border-top:1px solid #272b30; }.footer-logo { width:60px; height:56px; overflow:hidden; background:white; }.footer-logo img { width:100%; height:100%; object-fit:cover; object-position:center 56%; }.footer-logo+p { margin:0; color:#6f767d; }.footer-logo~div { display:flex; justify-content:flex-end; gap:23px; font-size:12px; }.footer-logo~div a:hover { color:var(--accent); }footer>small { grid-column:1/-1; margin-top:34px; color:#4f565c; font-size:8px; letter-spacing:.08em; }
.reveal { opacity:0; transform:translateY(27px); transition:opacity .75s ease,transform .75s ease; }.reveal.visible { opacity:1; transform:none; }

@keyframes rise { from { opacity:0; transform:translateY(28px); } }
@keyframes pulse { 70% { box-shadow:0 0 0 9px rgba(168,232,255,0); } }
@keyframes stage-float { 50% { transform:perspective(900px) rotateY(-3deg) rotateX(-1deg) translateY(-11px); } }
@keyframes spin { to { transform:rotate(360deg); } } @keyframes spin-reverse { to { transform:rotate(-360deg); } }
@keyframes ripple { from { transform:scale(.7); opacity:.8; } to { transform:scale(1.25); opacity:0; } }
@keyframes marquee { to { transform:translateX(-50%); } }

@media (max-width:1100px) {
  .hero { grid-template-columns:1.08fr .92fr; }
  .service-grid { grid-template-columns:1fr 1fr; }
  .section-head { grid-template-columns:.55fr 2.2fr; }.section-head>p { grid-column:2; }
  .results-intro>div { grid-template-columns:1fr; gap:22px; }.case { min-height:620px; }
  .calculator-section,.faq-section,.contact { grid-template-columns:1fr; }.calc-copy,.contact-copy { max-width:760px; }
}
@media (max-width:900px) {
  .nav-shell { height:78px; padding-inline:24px; }.menu-toggle { position:relative; z-index:45; width:50px; height:50px; display:grid; place-content:center; padding:0; }.menu-toggle-line { grid-area:1 / 1; margin:0; transition:transform .25s ease; }.menu-toggle[aria-expanded="true"] .menu-toggle-line:first-child { transform:rotate(45deg); }.menu-toggle[aria-expanded="true"] .menu-toggle-line:last-child { transform:rotate(-45deg); }.menu-backdrop { position:fixed; z-index:35; inset:0; display:block; border:0; background:rgba(0,0,0,.56); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .3s ease,visibility .3s ease; }.menu-backdrop.open { opacity:1; visibility:visible; pointer-events:auto; }.nav-links { position:fixed; top:0; right:0; width:min(84vw,390px); height:100dvh; padding:108px 36px 42px; flex-direction:column; align-items:flex-start; gap:28px; background:#0e1115; border-left:1px solid #2b3035; box-shadow:-24px 0 70px rgba(0,0,0,.28); transform:translateX(100%); opacity:0; visibility:hidden; pointer-events:none; transition:transform .35s ease,opacity .35s ease,visibility .35s ease; overflow-y:auto; overscroll-behavior:contain; z-index:40; }.nav-links.open { transform:none; opacity:1; visibility:visible; pointer-events:auto; }.nav-links>a:not(.nav-cta) { font-size:17px; }.nav-links .nav-cta { margin-top:6px; }
  .hero { min-height:auto; grid-template-columns:1fr; padding-top:130px; }.hero-side { min-height:470px; margin-top:35px; }.logo-stage { width:min(470px,82vw); }.hero-foot { margin-top:25px; }.accent-word { padding-left:0; }
  .case-grid { grid-template-columns:1fr; }.case { min-height:610px; }.results-intro { grid-template-columns:1fr; gap:24px; }
}
@media (max-width:640px) {
  .nav-shell { padding-inline:18px; }.brand { min-width:0; }.brand-mark { width:37px; height:37px; flex-basis:37px; }.brand-mark img { width:114px; left:-39px; top:-15px; }.brand-name { font-size:16px; }.brand-name small { font-size:5px; }
  .hero { padding:117px 19px 30px; }h1 { font-size:clamp(44px,14.4vw,72px); line-height:.88; }.hero-lead { margin-top:25px; font-size:15px; }.hero-actions { flex-direction:column; }.button { width:100%; }.hero-side { min-height:360px; }.logo-stage { width:94vw; padding:13px; }.orbit-mark { width:96px; height:96px; right:3px; }.hero-foot { align-items:flex-start; gap:20px; flex-direction:column; }.trust-row { width:100%; gap:0; justify-content:space-between; font-size:9px; }
  .ticker div { font-size:14px; }.section,.results,.contact { padding:88px 19px; }.section-head { grid-template-columns:1fr; gap:24px; margin-bottom:45px; }.section-head>p { grid-column:auto; }.section h2,.results h2,.contact h2 { font-size:clamp(39px,12vw,58px); }.service-grid { grid-template-columns:1fr; }.service-card { min-height:315px; }
  .results-intro { margin-bottom:42px; }.case { min-height:540px; padding:23px; }.case-visual { min-height:255px; }.flow-map { width:235px; }.case-stats b { font-size:20px; }.telemetry strong { font-size:150px; }
  .calculator { padding:25px 19px; }.range-label { align-items:flex-start; gap:15px; flex-direction:column; }.calc-output { grid-template-columns:1fr; }.step { grid-template-columns:40px 1fr 25px; padding-block:24px; }.step h3 { font-size:23px; }.step p { font-size:12px; line-height:1.55; }
  .contact-form { grid-template-columns:1fr; padding:24px 19px; }.contact-form label.wide,.submit,.form-note { grid-column:auto; }
  footer { grid-template-columns:1fr; padding:42px 19px; }.footer-logo~div { justify-content:flex-start; }footer>small { grid-column:auto; }
}
@media (max-width:380px) { .brand-name small { display:none; }.trust-row span:nth-child(4),.trust-row span:nth-child(5) { display:none; } }
@media (prefers-reduced-motion:reduce) { *,*:before,*:after {  scroll-behavior:auto!important; } }

/* DREAMCORE content system */
.service-grid-seven { grid-template-columns:repeat(4,1fr); }
.service-grid-seven .service-card:last-child { grid-column:2 / 4; }
.directions { background:#e9ecee; color:#0b0d0f; }
.directions .section-index { color:#626a71; }
.directions .section-head>p { color:#62696f; }
.direction-grid { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #c4c9cd; background:#c4c9cd; gap:1px; }
.direction-card { min-height:320px; padding:30px; display:flex; flex-direction:column; background:#e9ecee; transition:.35s; }
.direction-card:hover { background:#dce1e4; transform:translateY(-7px); }
.direction-card>span,.advantage-card>span { color:#66727a; font:600 11px var(--font-display); }
.direction-card h3,.advantage-card h3 { margin:auto 0 18px; font:500 29px/1.05 var(--font-display); letter-spacing:-.04em; }
.direction-card p,.advantage-card p { margin:0; color:#62696f; font-size:13px; line-height:1.7; }
.about { min-height:760px; padding:140px 5vw; display:grid; grid-template-columns:.9fr 1.1fr; gap:8vw; align-items:center; position:relative; overflow:hidden; background:#0d0f12; }
.about:before { content:""; position:absolute; inset:0; background:linear-gradient(128deg,transparent 48%,rgba(168,232,255,.05) 48%,rgba(168,232,255,.05) 49%,transparent 49%); }
.about-mark { position:relative; width:min(42vw,490px); aspect-ratio:1; display:grid; place-items:center; border:1px solid #2a3035; color:transparent; -webkit-text-stroke:2px rgba(232,237,240,.28); font:600 min(34vw,420px)/1 var(--font-display); transform:rotate(-7deg); }
.about-mark:before,.about-mark:after { content:""; position:absolute; inset:9%; border:1px solid rgba(168,232,255,.18); transform:rotate(19deg); }
.about-mark:after { inset:23%; transform:rotate(-31deg); }
.about-copy { position:relative; }
.about-copy h2 { margin:32px 0; font:500 clamp(45px,5.7vw,84px)/.96 var(--font-display); letter-spacing:-.062em; text-transform:uppercase; }
.about-copy h2 em { color:#9ca5ad; font-style:normal; }
.about-copy p { max-width:650px; color:#7d858c; line-height:1.8; }
.about-copy .about-lead { color:#d4d9dc; font-size:clamp(18px,1.7vw,25px); line-height:1.5; }
.advantages { background:#101216; }
.advantage-grid { display:grid; grid-template-columns:repeat(2,1fr); border:1px solid #292e33; background:#292e33; gap:1px; }
.advantage-card { min-height:280px; padding:34px; display:flex; flex-direction:column; background:#0d0f12; transition:.35s; }
.advantage-card:hover { background:#15191d; }
.advantage-card p { max-width:520px; color:#747c83; }
.contact { align-items:start; }
.chat-button { width:max-content; margin-top:25px; }
.direct-contacts { margin-top:26px; display:flex; flex-direction:column; gap:9px; color:#aeb5ba; font-size:13px; }
.direct-contacts a { width:max-content; border-bottom:1px solid transparent; transition:.25s; }
.direct-contacts a:hover { color:var(--accent); border-color:var(--accent); }
.requisites { position:relative; z-index:1; border:1px solid #30353a; background:rgba(8,10,12,.74); backdrop-filter:blur(12px); }
.requisites-head { padding:21px 25px; display:flex; justify-content:space-between; gap:20px; border-bottom:1px solid #30353a; color:#b8bec3; font-size:9px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.requisites-head b { color:var(--accent); }
.requisites dl { margin:0; display:grid; grid-template-columns:1fr 1fr; }
.requisites dl>div { min-width:0; padding:21px 25px; border-bottom:1px solid #282d32; }
.requisites dl>div:nth-child(odd):not(.wide-row) { border-right:1px solid #282d32; }
.requisites .wide-row { grid-column:1/-1; }
.requisites dt { margin-bottom:8px; color:#626a71; font-size:8px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.requisites dd { margin:0; color:#d5dadd; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
.requisites .wide-row dd { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.requisites button { flex:none; padding:8px 10px; border:1px solid #3a4147; background:transparent; color:#aab1b6; font-size:8px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; transition:.25s; }
.requisites button:hover { color:#08090b; background:var(--accent); border-color:var(--accent); }

@media (max-width:1100px) {
  .service-grid-seven { grid-template-columns:1fr 1fr; }
  .service-grid-seven .service-card:last-child { grid-column:1/-1; }
  .direction-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:900px) {
  .about { min-height:auto; grid-template-columns:1fr; }
  .about-mark { width:min(70vw,440px); justify-self:center; }
}

@media (max-width:640px) {
  .hero { position:relative; min-height:100svh; display:flex; flex-direction:column; justify-content:center; isolation:isolate; }
  .hero-copy { z-index:3; text-shadow:0 2px 30px rgba(0,0,0,.95); }
  .hero-copy:before { content:""; position:absolute; z-index:-1; inset:-28px -19px -32px; background:linear-gradient(90deg,rgba(8,9,11,.93) 0%,rgba(8,9,11,.72) 61%,rgba(8,9,11,.28) 100%); }
  .hero h1 { font-size:clamp(43px,12.2vw,55px); line-height:.9; }
  .hero .outline-word { color:rgba(244,247,248,.92); -webkit-text-stroke:0; }
  .hero .accent-word { color:#d8dde0; }
  .hero-side { position:absolute; z-index:0; inset:92px -35% 100px 17%; min-height:0; margin:0; display:grid; place-items:center; opacity:.25; pointer-events:none; filter:grayscale(1) contrast(1.25); }
  .logo-stage { width:min(600px,128vw); padding:0; border:0; background:transparent; box-shadow:none; transform:rotate(-7deg); animation:mobile-stage-float 8s ease-in-out infinite; mask-image:linear-gradient(to bottom,transparent 0%,black 15%,black 74%,transparent 100%); }
  .logo-stage:before,.stage-corner,.stage-status,.orbit-mark { display:none; }
  .logo-stage>img { aspect-ratio:auto; filter:invert(1); mix-blend-mode:screen; }
  .hero-foot { position:relative; z-index:3; margin-top:45px; }
  .service-grid-seven,.direction-grid,.advantage-grid { grid-template-columns:1fr; }
  .service-grid-seven .service-card:last-child { grid-column:auto; }
  .direction-card,.advantage-card { min-height:245px; padding:25px; }
  .about { padding:88px 19px; gap:60px; }
  .about-mark { width:82vw; }
  .requisites dl { grid-template-columns:1fr; }
  .requisites dl>div,.requisites dl>div:nth-child(odd):not(.wide-row) { border-right:0; }
  .requisites .wide-row { grid-column:auto; }
  .requisites .wide-row dd { align-items:flex-start; flex-direction:column; }
  .requisites button { width:100%; }
  .chat-button { width:100%; }
  .direct-contacts a { width:auto; overflow-wrap:anywhere; }
}

@keyframes mobile-stage-float { 50% { transform:rotate(-4deg) translate3d(-10px,-12px,0) scale(1.03); } }

/* Service balance, legal footer and documents */
.service-grid-seven { grid-template-columns:repeat(3,1fr); }
.service-grid-seven .service-card:last-child { grid-column:1 / -1; }
.featured-service { min-height:270px; display:grid; grid-template-columns:80px minmax(260px,1.2fr) minmax(240px,1fr); grid-template-rows:1fr auto; column-gap:36px; align-items:end; background:linear-gradient(125deg,#111419,#161b20); }
.featured-service .card-number { grid-column:1; grid-row:1; align-self:start; }
.featured-service .card-arrow { font-size:34px; }
.featured-service h3 { grid-column:2; grid-row:1; margin:0; max-width:430px; font-size:clamp(30px,3vw,47px); }
.featured-service p { grid-column:3; grid-row:1; margin:0; max-width:470px; }
.featured-service small { grid-column:2 / -1; grid-row:2; margin-top:28px; }

footer { grid-template-columns:1fr 1.35fr auto; }
footer .footer-nav { display:flex; justify-content:flex-end; gap:23px; font-size:12px; }
footer .footer-nav a:hover,footer .footer-legal button:hover,footer .footer-legal a:hover { color:var(--accent); }
footer .footer-legal { grid-column:1/-1; display:flex; flex-wrap:wrap; justify-content:flex-start; gap:11px 26px; padding-top:24px; margin-top:18px; border-top:1px solid #202429; }
footer .footer-legal button,footer .footer-legal a { padding:0; border:0; background:none; color:#777e84; font-size:10px; cursor:pointer; transition:.25s; }
footer>small { grid-column:1/-1; margin-top:12px; }

.legal-overlay { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:24px; background:rgba(2,3,4,.86); backdrop-filter:blur(12px); animation:legal-fade .25s ease-out; }
.legal-modal { width:min(920px,100%); max-height:calc(100svh - 48px); overflow:hidden; border:1px solid #363d43; background:#0d1013; box-shadow:0 40px 140px rgba(0,0,0,.75); animation:legal-rise .35s ease-out; }
.legal-modal-head { position:sticky; top:0; z-index:2; display:flex; justify-content:space-between; gap:30px; padding:30px 34px; border-bottom:1px solid #30363b; background:#11151a; }
.legal-modal-head span { color:#697178; font-size:8px; font-weight:800; letter-spacing:.13em; }
.legal-modal-head h2 { margin:11px 0 5px; font:500 clamp(30px,4vw,48px)/1 var(--font-display); letter-spacing:-.05em; text-transform:uppercase; }
.legal-modal-head p { margin:0; color:#868e95; font-size:12px; }
.legal-close { flex:0 0 43px; width:43px; height:43px; border:1px solid #3a4248; background:transparent; color:#dbe0e3; font-size:26px; line-height:1; cursor:pointer; transition:.25s; }
.legal-close:hover { background:var(--accent); border-color:var(--accent); color:#08090b; transform:rotate(90deg); }
.legal-content { max-height:calc(100svh - 200px); overflow-y:auto; padding:10px 34px 34px; scrollbar-color:#495158 #11151a; }
.legal-content article { display:grid; grid-template-columns:minmax(180px,.65fr) 1.35fr; gap:35px; padding:28px 0; border-bottom:1px solid #24292e; }
.legal-content h3 { margin:0; color:#d1d7db; font:500 17px/1.3 var(--font-display); }
.legal-content p { margin:0; color:#838b92; font-size:12px; line-height:1.8; }
.legal-details { margin-top:26px; padding:24px; border:1px solid #2f363c; background:#12161a; }
.legal-details h3 { margin-bottom:10px; color:var(--accent); }

@media (max-width:1100px) {
  .service-grid-seven { grid-template-columns:1fr 1fr; }
  .service-grid-seven .service-card:last-child { grid-column:1/-1; }
}

@media (max-width:640px) {
  .featured-service { min-height:315px; display:flex; background:linear-gradient(150deg,#101318,#172027); }
  .featured-service h3 { margin:auto 0 19px; font-size:28px; }
  .featured-service p { margin:0 0 25px; }
  .featured-service small { margin-top:0; }
  .about { min-height:700px; display:flex; align-items:center; padding:9px 19px; isolation:isolate; }
  .about-mark { position:absolute; z-index:0;  left:30%; border:0; opacity:.27; transform:translateY(-50%) rotate(-9deg); font-size:104vw; pointer-events:none; -webkit-text-stroke:2px rgba(222,232,238,.55); mask-image:linear-gradient(90deg,transparent 0%,black 22%,black 72%,transparent 100%); }
  .about-mark:before,.about-mark:after { border-color:rgba(168,232,255,.28); }
  .about-copy { z-index:1; padding:34px 0; text-shadow:0 3px 28px rgba(0,0,0,.95); }
  .about-copy:before { content:""; position:absolute; z-index:-1; inset:-32px -19px; background:linear-gradient(90deg,rgba(13,15,18,.94),rgba(13,15,18,.7) 62%,rgba(13,15,18,.16)); }
  footer { grid-template-columns:1fr 1fr; }
  footer .footer-nav { justify-content:flex-start; flex-wrap:wrap; }
  footer .footer-legal { grid-column:auto; flex-direction:column; align-items:flex-start; gap:15px; }
  footer>small { grid-column:auto; line-height:1.65; }
  .legal-overlay { padding:0; place-items:stretch; }
  .legal-modal { width:100%; max-height:100svh; border:0; }
  .legal-modal-head { padding:22px 19px; }
  .legal-modal-head span { display:block; max-width:240px; line-height:1.5; }
  .legal-modal-head h2 { font-size:31px; }
  .legal-close { flex-basis:40px; width:40px; height:40px; }
  .legal-content { max-height:calc(100svh - 156px); padding:4px 19px 28px; }
  .legal-content article { grid-template-columns:1fr; gap:12px; padding:23px 0; }
}

@keyframes legal-fade { from { opacity:0; } }
@keyframes legal-rise { from { opacity:0; transform:translateY(18px) scale(.985); } }

/* Standalone HTML version */
.legal-overlay[hidden] { display:none; }
.legal-page { min-height:100svh; padding:46px 5vw 90px; background:#090b0e; }
.legal-page-nav { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-bottom:28px; border-bottom:1px solid #2b3035; }
.legal-page-nav .brand-mark img { position:absolute; }
.back-link { padding:12px 16px; border:1px solid #343b41; color:#b8bec3; font-size:11px; transition:.25s; }
.back-link:hover { color:#08090b; background:var(--accent); border-color:var(--accent); }
.legal-page-head { max-width:900px; padding:80px 0 54px; }
.legal-page-head span { color:#6f777e; font-size:9px; font-weight:800; letter-spacing:.15em; }
.legal-page-head h1 { margin:18px 0 15px; font-size:clamp(42px,7vw,92px); }
.legal-page-head p { color:#8b9399; line-height:1.7; }
.legal-page-content { max-width:1050px; }
.legal-page-content article { display:grid; grid-template-columns:minmax(210px,.65fr) 1.35fr; gap:45px; padding:31px 0; border-top:1px solid #252a2f; }
.legal-page-content h2 { margin:0; font:500 20px/1.35 var(--font-display); }
.legal-page-content p { margin:0; color:#818990; font-size:13px; line-height:1.85; }
.legal-page .legal-details { max-width:1050px; }
@media (max-width:640px) {
  .legal-page { padding:24px 19px 60px; }
  .legal-page-nav .brand-name small { display:none; }
  .legal-page-head { padding:60px 0 38px; }
  .legal-page-content article { grid-template-columns:1fr; gap:12px; padding:25px 0; }
}
