:root {
  color-scheme: dark;
  --bg: #0a0a0d;
  --panel: #15151b;
  --panel-2: #1d1c23;
  --line: #2a2930;
  --muted: #a4a2ad;
  --text: #f4f3f5;
  --accent: #b09aff;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px}
a {text-decoration:none;color:inherit}
button,input,textarea {font:inherit}
a:focus-visible,button:focus-visible {outline:2px solid var(--accent);outline-offset:4px}
.skip-link {position:absolute;left:16px;top:-100px;padding:13px 16px;background:#fff;color:#000;z-index:99}
.skip-link:focus {top:12px}
.site-shell {max-width:1920px;margin-inline:auto;overflow:hidden}
.site-header {min-height:100px;display:flex;align-items:center;gap:36px;padding:18px clamp(22px,4.6vw,88px);border-bottom:1px solid var(--line);background:rgba(12,12,15,.98)}
.brand {display:inline-flex;align-items:center;flex-shrink:0;gap:13px}
.brand-symbol {width:52px;height:52px;border:1px solid #77727e;display:grid;place-items:center;font-size:31px;font-weight:800;letter-spacing:-.1em;line-height:1}
.brand-dot {color:var(--accent)}
.brand-name {font-size:20px;line-height:1.2;letter-spacing:.14em;font-weight:800}
.brand-name small {display:block;font-size:10px;font-weight:500;letter-spacing:.13em;color:var(--muted);margin-top:5px}
.nav {display:flex;align-items:center;gap:clamp(14px,2vw,34px);margin-inline:auto;color:#c0bec8;font-size:13px;white-space:nowrap}
.nav a {position:relative;padding:11px 0;transition:color .2s}
.nav a::after {content:"";position:absolute;bottom:3px;left:0;width:0;height:1px;background:var(--accent);transition:width .2s}
.nav a:hover,.nav a[aria-current] {color:#fff}
.nav a:hover::after,.nav a[aria-current]::after {width:100%}
.nav-action {display:inline-flex;align-items:center;gap:23px;border:1px solid #55505d;padding:17px 20px;font-size:12px;font-weight:650;white-space:nowrap;transition:background .2s,border-color .2s}
.nav-action:hover {background:var(--panel-2);border-color:var(--accent)}
.hero {display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);min-height:680px;border-bottom:1px solid var(--line)}
.hero-copy {display:flex;flex-direction:column;align-items:flex-start;padding:clamp(55px,7vw,120px) clamp(24px,5vw,94px) 34px;min-width:0}
.hero-topline {display:flex;align-items:center;justify-content:space-between;width:100%;gap:15px}
.eyebrow,.section-kicker,.hero-code {font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:650}
.eyebrow {color:#d3ccd9;margin:0;line-height:1.6}
.eyebrow-dot {width:7px;height:7px;background:var(--accent);display:inline-block;border-radius:50%;margin-right:10px}
.hero-code {color:#77727f;white-space:nowrap}
.hero h1 {font-size:clamp(43px,5.1vw,90px);line-height:1.05;letter-spacing:-.065em;font-weight:530;margin:clamp(48px,6vw,99px) 0 22px;max-width:830px}
.hero-lead {font-size:clamp(16px,1.2vw,19px);line-height:1.8;color:#b5b2bf;max-width:585px;margin:0}
.hero-actions {display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:39px}
.primary-button {min-height:58px;display:inline-flex;align-items:center;gap:34px;justify-content:space-between;background:#f2f0f4;color:#141318;font-size:14px;font-weight:750;padding:16px 19px;transition:background .2s,transform .2s}
.primary-button:hover {background:#cbbcfb;transform:translateY(-2px)}
.button-arrow {border-left:1px solid #b9b7bb;padding-left:19px;font-size:22px;line-height:1}
.quiet-link {font-size:14px;color:#d1ced8;display:inline-flex;align-items:center;gap:12px}
.quiet-link:hover {color:#fff}
.hero-bottom {display:flex;justify-content:space-between;gap:14px;width:100%;margin-top:auto;padding-top:70px;color:#8f8c98;font-size:11px;letter-spacing:.04em}
.hero-bottom span:last-child {white-space:nowrap}
.hero-art {position:relative;min-height:680px;overflow:hidden;isolation:isolate;border-left:1px solid #39323d;background:radial-gradient(circle at 50% 45%,#353040 0,#1a1822 36%,#111117 67%,#0b0b0e 100%)}
.hero-art::before {content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 76%,#0005),linear-gradient(0deg,#0009,transparent 27%);z-index:1;pointer-events:none}
.art-grid {position:absolute;inset:0;opacity:.15;background-image:linear-gradient(#a49ca6 1px,transparent 1px),linear-gradient(90deg,#a49ca6 1px,transparent 1px);background-size:72px 72px}
.art-ring {position:absolute;top:46%;left:52%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%) rotate(-17deg);box-shadow:15px 20px 40px #0009}
.ring-one {width:73%;border:32px solid #393743;box-shadow:0 0 0 2px #938b9a,0 0 0 22px #15141c,0 0 0 24px #554e5f,17px 23px 55px #000b}
.ring-two {width:52%;border:29px solid #1f1d28;box-shadow:0 0 0 2px #93869e,0 0 0 11px #0f0e15,inset 4px 5px 20px #000c}
.ring-three {width:25%;border:16px solid #3c3647;box-shadow:0 0 0 3px #8b839e,0 0 30px 3px #a48dff70,inset 0 0 28px #000;background:#111019}
.art-center {position:absolute;top:46%;left:52%;transform:translate(-50%,-50%);width:9%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ada0c3,#2c2638 40%,#07060c 76%);border:1px solid #9e94b0;box-shadow:0 0 26px #a58bf466}
.art-topnote,.art-index {position:absolute;z-index:2;color:#b0a8b9;letter-spacing:.17em;font-size:10px}
.art-topnote {top:8%;right:7%}.art-index {bottom:6%;right:7%}
.art-caption {position:absolute;z-index:2;left:7%;bottom:11%;line-height:.97;letter-spacing:-.06em;text-shadow:0 6px 20px #0007}
.art-caption span,.art-caption strong {display:block;font-size:clamp(30px,3.7vw,64px);font-weight:800}
.art-caption strong span {display:inline}
.service-strip {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}
.service-strip a {display:flex;align-items:center;gap:14px;padding:28px clamp(18px,3vw,58px);border-right:1px solid var(--line);font-weight:720;font-size:12px;letter-spacing:.1em;white-space:nowrap;transition:background .2s}
.service-strip a:last-child {border-right:0}
.service-strip a span:first-child {font-size:10px;color:var(--accent)}
.service-strip a span:last-child {margin-left:auto;color:#aba3bd;font-size:16px;transition:transform .2s}
.service-strip a:hover {background:#1b1923}
.service-strip a:hover span:last-child {transform:translate(2px,-2px)}
.section {display:grid;grid-template-columns:minmax(140px,24%) minmax(0,1fr);gap:clamp(30px,4vw,75px);padding:clamp(64px,7vw,115px) clamp(24px,5vw,94px);border-bottom:1px solid var(--line)}
.section-kicker {color:#a69fbc;margin-top:11px}
.section-content {min-width:0}
.section h2 {font-size:clamp(34px,3.9vw,64px);line-height:1.13;letter-spacing:-.05em;font-weight:550;margin:0 0 26px;max-width:900px}
.section p {color:#b5b3bf;line-height:1.8;font-size:clamp(16px,1.15vw,18px);max-width:820px;margin:0}
.section-text {background:#0d0d11}
.feature-grid,.services-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:42px}
.feature-card {min-height:260px;border:1px solid #36333b;background:linear-gradient(165deg,#24212b,#17161b 62%);padding:28px;display:flex;flex-direction:column;justify-content:space-between}
.feature-number,.service-card-index {font-size:11px;letter-spacing:.16em;color:#c6b5ff}
.feature-card h3 {font-size:clamp(18px,1.6vw,26px);line-height:1.28;font-weight:600;letter-spacing:-.025em;margin:40px 0 28px}
.feature-symbol {font-size:25px;color:#888193;align-self:flex-end;font-weight:300}
.section-services {background:#101015}
.service-card {position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:360px;padding:26px;border:1px solid #42404c;overflow:hidden;isolation:isolate;transition:border-color .2s,transform .2s}
.service-card::before {content:"";position:absolute;inset:0;z-index:-1;opacity:.9;transition:transform .35s}
.service-tone-1::before {background:radial-gradient(circle at 85% 70%,#5a426d 0,transparent 51%),linear-gradient(135deg,#312a39,#17151c)}
.service-tone-2::before {background:radial-gradient(circle at 70% 15%,#464c66 0,transparent 50%),linear-gradient(135deg,#262a32,#14161c)}
.service-tone-3::before {background:radial-gradient(circle at 85% 55%,#5a405f 0,transparent 50%),linear-gradient(135deg,#302431,#141116)}
.service-card:hover {border-color:#b09aff;transform:translateY(-3px)}
.service-card:hover::before {transform:scale(1.09)}
.service-card-copy {margin-top:auto;padding:55px 0 22px}
.service-card h3 {font-size:clamp(24px,2vw,34px);font-weight:630;letter-spacing:-.055em;line-height:1.16;margin:0 0 13px}
.service-card p {font-size:15px;line-height:1.65;color:#ddd8e5;max-width:320px}
.service-card-arrow {font-size:28px;align-self:flex-end;font-weight:300}
.process-grid {list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:40px 0 0;padding:0;border-top:1px solid var(--line)}
.process-grid li {border-right:1px solid var(--line);padding:30px 24px 30px 0;min-height:190px}
.process-grid li+li {padding-left:24px}
.process-grid li:last-child {border-right:0}
.process-grid li>span {color:var(--accent);letter-spacing:.16em;font-size:12px}
.process-grid p {font-size:17px;color:#f2f0f4;line-height:1.55;margin-top:36px}
.cta-section {display:flex;align-items:center;justify-content:space-between;gap:42px;background:#211d2a;padding-block:clamp(60px,8vw,115px)}
.cta-section h2 {margin:20px 0}
.cta-section p {font-size:17px}
.cta-content {max-width:790px}
.cta-section .primary-button {flex-shrink:0}
.site-footer {padding:57px clamp(24px,5vw,94px);display:grid;grid-template-columns:1.5fr 1fr auto;align-items:start;gap:28px;color:#b3b0bb;font-size:13px;line-height:1.7;background:#0b0b0e}
.site-footer strong {font-size:22px;color:white;letter-spacing:.16em}
.site-footer span {display:block;margin-top:8px;font-size:12px;color:#908d99}
.copyright {color:#898590}
@media(max-width:1200px) {
  .site-header {gap:22px}
  .nav {gap:15px;font-size:12px}
  .nav-action {display:none}
  .hero {min-height:610px}
  .hero-art {min-height:610px}
  .feature-grid,.services-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px) {
  .site-header {min-height:0;flex-wrap:wrap;gap:12px;padding:17px 22px}
  .brand-symbol {width:44px;height:44px;font-size:27px}
  .brand-name {font-size:17px}
  .nav {order:3;width:100%;overflow-x:auto;gap:22px;margin:5px 0 0;padding:8px 0 4px}
  .hero {grid-template-columns:1fr;min-height:0}
  .hero-copy {padding:60px 24px 34px}
  .hero h1 {margin:58px 0 20px;font-size:clamp(46px,9vw,76px)}
  .hero-bottom {padding-top:60px}
  .hero-art {min-height:460px;border-left:0;border-top:1px solid var(--line)}
  .service-strip {grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-strip a {border-bottom:1px solid var(--line)}
  .service-strip a:nth-child(2) {border-right:0}
  .service-strip a:nth-child(n+3) {border-bottom:0}
  .section {grid-template-columns:1fr;padding:64px 24px;gap:25px}
  .section-kicker {margin-top:0}
  .section h2 {font-size:clamp(36px,6vw,52px)}
  .cta-section {align-items:flex-start;flex-direction:column}
  .site-footer {grid-template-columns:1fr 1fr}
  .copyright {grid-column:1/-1}
}
@media(max-width:540px) {
  .hero-topline {flex-direction:column;align-items:flex-start}
  .hero h1 {font-size:clamp(40px,10.6vw,56px);margin-top:46px}
  .hero-lead {font-size:16px}
  .hero-actions {align-items:stretch;gap:22px}
  .primary-button {width:100%}
  .hero-bottom {align-items:flex-start;flex-direction:column;padding-top:50px}
  .hero-art {min-height:330px}
  .art-ring {top:43%}
  .art-center {top:43%}
  .ring-one {border-width:20px}
  .ring-two {border-width:18px}
  .ring-three {border-width:10px}
  .art-caption {bottom:10%}
  .art-caption span,.art-caption strong {font-size:clamp(27px,8vw,40px)}
  .art-index {font-size:8px}
  .service-strip a {padding:21px 13px;font-size:10px;gap:7px}
  .section {padding:58px 20px}
  .feature-grid,.services-grid,.process-grid {grid-template-columns:1fr}
  .feature-card {min-height:185px}
  .feature-card h3 {margin:24px 0}
  .service-card {min-height:285px}
  .process-grid li,.process-grid li+li {border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:24px 0}
  .process-grid p {margin-top:15px}
  .site-footer {grid-template-columns:1fr;padding:44px 20px;gap:20px}
  .copyright {grid-column:auto}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  *,*::before,*::after {transition:none!important}
}
