:root {
  --ink: #f3f0ff;
  --muted: #b8b2cf;
  --surface: #0b0920;
  --panel: #171232;
  --line: #433675;
  --accent: #7652ff;
  --accent-2: #ff6a62;
  --dark: #090718;
  --on-dark: #faf8ff;
  --radius: 8px;
  --radius-lg: 18px;
  --serif: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body { background: radial-gradient(circle at 85% 5%, #291c63 0, #0b0920 34%); color: var(--ink); }
.site-header { background: rgba(9,7,24,.9); border-bottom: 1px solid var(--line); backdrop-filter: blur(18px); }
.brand strong { font-family: var(--sans); font-weight: 900; letter-spacing: -.04em; }
.brand small { color: var(--accent-2); }
.site-nav > a::after { background: var(--accent-2); }
.button { border-radius: 4px; background: linear-gradient(110deg, var(--accent), #9c3eff); border-color: transparent; }
.button--ghost { border-color: var(--accent-2); background: transparent; color: var(--ink); }
.display-title, .page-title, .section-title { font-family: var(--sans); font-weight: 900; letter-spacing: -.06em; }
.home-hero { background: transparent; }
.home-hero__inner { grid-template-columns: 1fr; gap: 32px; }
.home-hero__copy { display: grid; grid-template-columns: 1.25fr .75fr; gap: 40px; align-items: end; }
.home-hero__copy .eyebrow, .home-hero__copy .display-title { grid-column: 1; }
.home-hero__copy .lead, .home-hero__copy .hero-actions { grid-column: 2; }
.home-hero__copy .lead { grid-row: 2; color: var(--muted); }
.home-hero__copy .hero-actions { grid-row: 3; }
.home-hero__media { height: 480px; border: 1px solid var(--line); border-radius: 4px; }
.home-hero__media > img { object-position: center 24%; }
.home-hero__note { right: 0; bottom: 0; border: 1px solid var(--accent-2); border-radius: 0; background: rgba(9,7,24,.92); color: var(--ink); }
.home-hero__inner > .hero-kicker { display: grid; grid-template-columns: 1fr 1fr; margin-top: 0; border-color: var(--line); }
.home-hero__inner > .hero-kicker span { color: var(--muted); }
.home-hero__inner > .hero-kicker strong { color: var(--accent-2); }
.intro-band { background: linear-gradient(110deg, #7652ff, #e64b78); }
.section--light, .page-hero { background: #100d28; }
.section-head > p, .feature-story__copy p, .lead { color: var(--muted); }
.service-card { border: 1px solid var(--line); background: #14102e; }
.service-card:nth-child(1) { grid-column: span 3; background: var(--accent); }
.service-card:nth-child(1) p, .service-card:nth-child(1) a { color: #fff; }
.service-card:nth-child(4) { grid-column: span 3; background: linear-gradient(145deg, #21135a, #371146); }
.service-card a { color: var(--accent-2); }
.feature-story__media img { border: 1px solid var(--accent-2); border-radius: 4px; box-shadow: 24px 24px 0 #2c1c65; }
.section--dark { background: #090718; }
.work-card { border: 1px solid var(--line); border-radius: 4px; }
.home-work .work-card:nth-child(1) { grid-column: span 6; }
.home-work .work-card:nth-child(2), .home-work .work-card:nth-child(3) { grid-column: span 3; }
.age-declined .home-work .work-card:nth-child(2), .age-declined .home-work .work-card:nth-child(3) { grid-column: span 6; }
.process-grid { border-color: var(--accent-2); }
.process-grid article { border-color: var(--line); }
.page-hero { border-bottom: 1px solid var(--line); }
.page-hero__media img { border: 1px solid var(--accent); border-radius: 4px; box-shadow: 20px 20px 0 #2b1c61; }
.page-hero__media figcaption { border: 1px solid var(--accent-2); border-radius: 0; background: #0b0920; }
.detail-row, .check-list li { border-color: var(--line); }
.fact-card, .enquiry-form, .legal-nav { border-color: var(--line); background: #16112f; }
.fact-card p, .form-actions p, .legal-content p, .legal-content li { color: var(--muted); }
.enquiry-form label { color: var(--ink); }
.form-result.is-success { color: #aee8c2; }
.form-result.is-error { color: #ff9ca8; }
.contact-card { border: 1px solid var(--accent-2); background: #0d0a24; }
.legal-hero { background: #100d28; }
.cta-panel { border: 1px solid var(--accent-2); border-radius: 4px; background: linear-gradient(125deg, #22145a, #601f5c); }
.site-footer { border-top: 4px solid var(--accent-2); background: #070615; }
.footer-disclaimer { border-radius: 0; }

@media (max-width: 1040px) {
  .service-card:nth-child(1), .service-card:nth-child(4) { grid-column: span 6; }
  .home-work .work-card:nth-child(1), .home-work .work-card:nth-child(2) { grid-column: span 6; }
  .home-work .work-card:nth-child(3) { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  .home-hero__inner, .page-hero__grid { grid-template-columns: 1fr; }
  .site-nav { background: #100d28; color: var(--ink); border-color: var(--line); }
  .home-hero__copy { display: block; }
  .home-hero__copy .lead { margin-top: 0; }
}

@media (max-width: 560px) {
  .service-card:nth-child(1), .service-card:nth-child(4) { grid-column: 1 / -1; }
  .home-work .work-card:nth-child(1), .home-work .work-card:nth-child(2), .home-work .work-card:nth-child(3) { grid-column: 1 / -1; }
}
