:root {
  --black: #11110f;
  --charcoal: #1b1b18;
  --cream: #f4efe5;
  --paper: #fbf9f4;
  --gold: #d9aa46;
  --gold-light: #f0cd78;
  --gold-deep: #a97117;
  --ink: #181714;
  --muted: #68635a;
  --line: rgba(24,23,20,.14);
  --shadow: 0 25px 70px rgba(17,17,15,.11);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--black); font-family: Tahoma, Verdana, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
.siteHeader, main>section, footer { padding-left: max(5.5vw, 24px); padding-right: max(5.5vw, 24px); }
.eyebrow { margin: 0 0 18px; color: var(--gold-deep); font-size: .7rem; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { letter-spacing: -.045em; }

.siteHeader { position: relative; z-index: 10; min-height: 82px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; color: #fff; background: var(--black); border-bottom: 1px solid rgba(255,255,255,.09); }
.logoLink { width: max-content; }
.wordmark { display: inline-flex; align-items: center; color: #fff; font-size: 2rem; font-weight: 500; line-height: 1; letter-spacing: -.06em; }
.orbitLetter { width: 1.05em; height: .92em; display: inline-block; margin: 0 -.04em 0 -.01em; background: linear-gradient(145deg,var(--gold-light),var(--gold-deep)); -webkit-mask: url("/mover-icon.png") center/contain no-repeat; mask: url("/mover-icon.png") center/contain no-repeat; }
.siteHeader nav { display: flex; align-items: center; gap: clamp(22px,3vw,46px); }
.siteHeader nav a { color: #d5d1c8; font-size: .82rem; transition: color .2s ease; }
.siteHeader nav a:hover { color: var(--gold); }
.headerButton { justify-self: end; min-height: 45px!important; min-width: 135px!important; padding: 0 17px!important; }

.button { min-height: 55px; display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; padding: 0 22px; border-radius: 9px; font-size: .88rem; font-weight: 800; transition: transform .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.buttonGold { color: #111; background: linear-gradient(135deg,var(--gold-light),var(--gold)); box-shadow: 0 10px 28px rgba(217,170,70,.18); }
.buttonOutline { color: #fff; border: 1px solid rgba(255,255,255,.28); }
.buttonDark { min-width: 245px; color: #fff; background: var(--black); }

.hero { min-height: 665px; display: grid; grid-template-columns: minmax(460px,1.05fr) minmax(410px,.72fr); align-items: center; gap: clamp(48px,7vw,120px); padding-top: 80px; padding-bottom: 85px; color: #fff; overflow: hidden; background: radial-gradient(circle at 76% 40%,rgba(217,170,70,.18),transparent 24rem),linear-gradient(125deg,#11110f 45%,#1a1915); }
.heroCopy { max-width: 790px; }
.hero .eyebrow { color: var(--gold); }
.hero h1 { margin-bottom: 28px; font-size: clamp(4.2rem,6.5vw,7.4rem); line-height: .91; }
.hero h1 em { color: var(--gold); font-style: normal; }
.heroLead { max-width: 670px; margin-bottom: 35px; color: #d6d1c8; font-size: clamp(1.1rem,1.5vw,1.35rem); line-height: 1.6; }
.heroActions { display: flex; flex-wrap: wrap; gap: 12px; }
.heroAssurance { display: flex; flex-wrap: wrap; gap: 25px; margin-top: 38px; color: #b9b4aa; font-size: .73rem; }
.heroAssurance i { width: 20px; height: 20px; display: inline-grid; place-items: center; margin-right: 6px; color: #111; border-radius: 50%; background: var(--gold); font-style: normal; font-size: .66rem; font-weight: 900; }

.actionPanel { position: relative; padding: 32px; color: var(--ink); border: 1px solid rgba(255,255,255,.35); border-radius: 20px; background: var(--paper); box-shadow: 0 35px 90px rgba(0,0,0,.38); }
.actionPanel::before { content: ""; position: absolute; inset: -20px 22px auto; height: 8px; border-radius: 20px 20px 0 0; background: var(--gold); opacity: .7; }
.panelHeading { display: grid; grid-template-columns: 54px 1fr; gap: 17px; align-items: center; padding-bottom: 27px; border-bottom: 1px solid var(--line); }
.panelOrbit, .miniOrbit { display: inline-block; background: linear-gradient(145deg,var(--gold-light),var(--gold-deep)); -webkit-mask: url("/mover-icon.png") center/contain no-repeat; mask: url("/mover-icon.png") center/contain no-repeat; }
.panelOrbit { width: 54px; height: 48px; }
.panelHeading small { display: block; margin-bottom: 8px; color: var(--gold-deep); font-size: .59rem; font-weight: 800; letter-spacing: .13em; }
.panelHeading strong { display: block; font-size: 1.15rem; line-height: 1.3; }
.panelSteps>div { display: grid; grid-template-columns: 56px 1fr; gap: 14px; align-items: center; padding: 20px 0; border-bottom: 1px solid var(--line); }
.panelSteps p { margin: 0; }
.panelSteps strong,.panelSteps small { display: block; }
.panelSteps strong { margin-bottom: 5px; font-size: .88rem; }
.panelSteps small { color: var(--muted); font-size: .7rem; line-height: 1.5; }
.actionPanel>a { display: flex; justify-content: space-between; margin-top: 24px; padding: 17px 19px; color: #fff; border-radius: 9px; background: var(--black); font-size: .8rem; font-weight: 800; }
.panelNote { margin: 13px 0 0; color: #858077; font-size: .61rem; text-align: center; }
.orbitNumber { position: relative; width: 54px; height: 48px; display: inline-grid; place-items: center; isolation: isolate; }
.orbitNumber::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(145deg,var(--gold-light),var(--gold-deep)); -webkit-mask: url("/mover-icon.png") center/contain no-repeat; mask: url("/mover-icon.png") center/contain no-repeat; }
.orbitNumber b { color: var(--black); font-size: 1rem; font-weight: 900; }

.trustStrip { min-height: 82px; display: grid; grid-template-columns: 1.2fr repeat(4,1fr); align-items: center; gap: 25px; color: #c5c0b6; background: #171714; border-top: 1px solid rgba(255,255,255,.08); }
.trustStrip strong { display: flex; align-items: center; gap: 10px; color: #fff; font-size: 1.1rem; font-weight: 500; }
.trustStrip .miniOrbit { width: 28px; height: 24px; }
.trustStrip>span { padding-left: 25px; border-left: 1px solid rgba(255,255,255,.12); font-size: .72rem; }

.sectionLight { background: var(--paper); }
.sectionCream { background: var(--cream); }
.platform,.process,.principles,.moreTools { padding-top: 105px; padding-bottom: 110px; }
.sectionHeading { display: grid; grid-template-columns: 1.45fr .7fr; gap: 80px; align-items: end; margin-bottom: 60px; }
.sectionHeading h2,.processIntro h2,.organisationCopy h2,.contact h2 { margin-bottom: 0; font-size: clamp(2.8rem,4.5vw,5.2rem); line-height: .98; }
.sectionHeading>p { margin-bottom: 3px; color: var(--muted); font-size: .97rem; line-height: 1.75; }
.sectionHeading.compact { grid-template-columns: minmax(300px,820px); }

.serviceGrid { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; }
.serviceCard { position: relative; min-height: 270px; display: grid; grid-template-columns: 76px 1fr; gap: 28px; padding: 34px; border: 1px solid var(--line); border-radius: 17px; background: #fff; box-shadow: 0 10px 35px rgba(17,17,15,.035); transition: transform .2s ease,box-shadow .2s ease; }
.serviceCard:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.serviceCard.featured { color: #fff; background: var(--black); }
.cardIcon { width: 67px; height: 67px; display: grid; place-items: center; border-radius: 16px; background: var(--cream); }
.featured .cardIcon { background: rgba(217,170,70,.14); }
.cardIcon i { position: relative; width: 27px; height: 27px; display: block; border: 2px solid var(--gold-deep); border-radius: 8px; }
.cardIcon .peopleIcon::after { content: ""; position: absolute; left: 5px; top: 5px; width: 12px; height: 12px; border: 2px solid var(--gold-deep); border-radius: 50%; }
.cardIcon .calendarIcon::before { content: ""; position: absolute; left: -2px; right: -2px; top: 6px; border-top: 2px solid var(--gold-deep); }
.cardIcon .scanIcon { border-style: dashed; border-radius: 2px; }
.cardIcon .adminIcon::before,.cardIcon .adminIcon::after { content: ""; position: absolute; left: 6px; right: 6px; height: 2px; background: var(--gold-deep); }
.cardIcon .adminIcon::before { top: 8px; }.cardIcon .adminIcon::after { bottom: 8px; }
.cardIcon .paymentIcon::before { content: "$"; position: absolute; inset: 0; display: grid; place-items: center; color: var(--gold-deep); font-style: normal; font-size: 1rem; font-weight: 900; }
.serviceCard small { color: var(--gold-deep); font-size: .6rem; font-weight: 900; letter-spacing: .14em; }
.serviceCard h3 { margin: 12px 0 14px; font-size: 1.65rem; }
.serviceCard p { max-width: 500px; margin-bottom: 0; color: var(--muted); font-size: .82rem; line-height: 1.7; }
.featured p { color: #bdb8ae; }
.cardArrow { position: absolute; right: 28px; bottom: 27px; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; }
.featured .cardArrow { border-color: rgba(255,255,255,.18); }

.overheadBanner { min-height: 315px; display: grid; grid-template-columns: 80px minmax(320px,1fr) auto; align-items: center; gap: 42px; padding-top: 65px; padding-bottom: 65px; color: #fff; background: var(--black); border-top: 1px solid rgba(255,255,255,.1); border-bottom: 1px solid rgba(255,255,255,.1); }
.overheadBanner .panelOrbit { width: 78px; height: 70px; }
.overheadBanner .eyebrow { color: var(--gold); }
.overheadBanner h2 { margin-bottom: 14px; font-size: clamp(2.4rem,3.8vw,4.5rem); line-height: 1; }
.overheadBanner p:last-child { max-width: 760px; margin-bottom: 0; color: #aaa69d; font-size: .88rem; line-height: 1.75; }
.overheadBanner>strong { color: #fff; font-size: clamp(1.8rem,3vw,3.3rem); line-height: .94; text-align: right; letter-spacing: -.06em; }
.overheadBanner>strong em { color: var(--gold); font-style: normal; }

.processIntro { max-width: 850px; margin-bottom: 65px; }
.process ol { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin: 0; padding: 0; list-style: none; }
.process li { min-height: 355px; padding: 34px; border: 1px solid var(--line); border-radius: 17px; background: var(--paper); }
.orbitNumber.large { width: 82px; height: 72px; margin-bottom: 62px; }
.orbitNumber.large b { font-size: 1.6rem; }
.process li small { color: var(--gold-deep); font-size: .6rem; font-weight: 900; letter-spacing: .15em; }
.process li h3 { margin: 11px 0 14px; font-size: 1.45rem; line-height: 1.15; }
.process li p { margin-bottom: 0; color: var(--muted); font-size: .8rem; line-height: 1.7; }

.organisationSection { display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; gap: clamp(55px,7vw,115px); padding-top: 120px; padding-bottom: 120px; color: #fff; background: radial-gradient(circle at 20% 50%,rgba(217,170,70,.13),transparent 30rem),var(--black); }
.organisationVisual { min-height: 435px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 19px; background: #181816; box-shadow: 0 35px 80px rgba(0,0,0,.35); }
.visualTop { height: 65px; display: flex; align-items: center; justify-content: space-between; padding: 0 22px; border-bottom: 1px solid rgba(255,255,255,.1); }
.visualTop>span { display: flex; align-items: center; gap: 9px; font-size: 1rem; }
.visualTop .miniOrbit { width: 25px; height: 22px; }
.visualTop small { color: #88847b; font-size: .53rem; letter-spacing: .12em; }
.visualBody { min-height: 370px; display: grid; grid-template-columns: 120px 1fr; }
.visualBody aside { display: flex; flex-direction: column; gap: 7px; padding: 22px 13px; border-right: 1px solid rgba(255,255,255,.09); }
.visualBody aside span,.visualBody aside strong { padding: 10px; color: #827e75; border-radius: 6px; font-size: .58rem; font-weight: 500; }
.visualBody aside strong { color: #fff; background: rgba(217,170,70,.17); }
.visualMain { padding: 26px; }
.visualMain>p { margin-bottom: 20px; font-size: .85rem; font-weight: 800; }
.metricCards { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.metricCards>div,.chartCard { padding: 13px; border: 1px solid rgba(255,255,255,.09); border-radius: 9px; background: #20201d; }
.metricCards small,.chartCard>small { color: #77736b; font-size: .47rem; letter-spacing: .08em; }
.metricCards strong { display: block; margin-top: 8px; font-size: .66rem; }
.metricCards i { width: 70%; height: 4px; display: block; margin-top: 12px; border-radius: 10px; background: #3c3b36; }
.chartCard { height: 180px; margin-top: 10px; }
.chartCard>div { height: 130px; display: flex; align-items: end; gap: 10px; margin-top: 12px; border-bottom: 1px solid #393832; }
.chartCard i { flex: 1; max-width: 25px; border-radius: 4px 4px 0 0; background: linear-gradient(var(--gold-light),#735017); }
.organisationCopy .eyebrow { color: var(--gold); }
.organisationCopy>p:not(.eyebrow) { max-width: 610px; margin: 28px 0; color: #bdb8ae; font-size: .96rem; line-height: 1.7; }
.organisationCopy ul { margin: 0 0 34px; padding: 0; list-style: none; }
.organisationCopy li { margin: 15px 0; color: #d7d2c8; font-size: .82rem; }
.organisationCopy li span { width: 22px; height: 22px; display: inline-grid; place-items: center; margin-right: 9px; color: #111; border-radius: 50%; background: var(--gold); font-size: .65rem; font-weight: 900; }

.principleGrid { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); border-radius: 17px; overflow: hidden; }
.principleGrid article { min-height: 260px; padding: 29px; border-right: 1px solid var(--line); background: #fff; }
.principleGrid article:last-child { border-right: 0; }
.principleGrid span { color: var(--gold-deep); font-size: .65rem; font-weight: 800; }
.principleGrid h3 { margin: 70px 0 13px; font-size: 1.25rem; }
.principleGrid p { margin-bottom: 0; color: var(--muted); font-size: .77rem; line-height: 1.65; }

.foundingOffer { min-height: 430px; display: grid; grid-template-columns: 190px minmax(420px,1fr) auto; align-items: center; gap: clamp(35px,5vw,80px); padding-top: 80px; padding-bottom: 80px; color: #fff; background: radial-gradient(circle at 75% 45%,rgba(217,170,70,.18),transparent 27rem),#181816; border-top: 1px solid rgba(255,255,255,.1); }
.foundingLabel { align-self: start; padding-top: 10px; }
.foundingLabel .panelOrbit { width: 75px; height: 67px; display: block; margin-bottom: 25px; }
.foundingOffer .foundingLabel small { color: var(--gold) !important; font-size: .62rem; font-weight: 900; letter-spacing: .14em; line-height: 1.5; }
.foundingOffer h2 { margin-bottom: 22px; color: #fff !important; font-size: clamp(2.8rem,4.5vw,5.1rem); line-height: .98; }
.foundingOffer p { max-width: 800px; margin-bottom: 17px; color: #d6d1c8 !important; font-size: .92rem; line-height: 1.75; }
.foundingOffer div>small { color: #aaa49a !important; font-size: .65rem; line-height: 1.6; }

.contact { min-height: 410px; display: flex; align-items: center; justify-content: space-between; gap: 70px; padding-top: 85px; padding-bottom: 85px; background: linear-gradient(120deg,var(--gold-light),var(--gold)); }
.contact .eyebrow { color: #6e480b; }
.contact>div { max-width: 900px; }
.contact h2 { max-width: 850px; }
.contact p:last-child { max-width: 670px; margin: 23px 0 0; color: #5f481e; line-height: 1.7; }

footer { min-height: 175px; display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 55px; color: #fff; background: var(--black); }
.wordmarkFooter { font-size: 2.6rem; }
footer p { margin: 12px 0 0; color: #87837b; font-size: .72rem; }
.footerLinks { display: flex; gap: 27px; color: #aaa69d; font-size: .72rem; }
footer>a:hover,.footerLinks a:hover { color: var(--gold); }
footer>span { color: #77736b; font-size: .68rem; }

@media (max-width:1100px) {
  .hero { grid-template-columns: 1fr; }
  .actionPanel { max-width: 650px; }
  .organisationSection { grid-template-columns: 1fr; }
  .organisationVisual { max-width: 800px; }
  .foundingOffer { grid-template-columns: 160px 1fr; }
  .foundingOffer>.button { grid-column: 2; width: max-content; }
  .principleGrid { grid-template-columns: repeat(2,1fr); }
  .principleGrid article:nth-child(2) { border-right: 0; }
  .principleGrid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}
@media (max-width:980px) {
  .siteHeader { grid-template-columns: 1fr auto; }
  .siteHeader nav { display: none; }
}
@media (max-width:800px) {
  .siteHeader { min-height: 70px; }
  .hero { min-height: auto; padding-top: 64px; padding-bottom: 70px; }
  .hero h1 { font-size: clamp(3.45rem,14vw,5.5rem); }
  .trustStrip { grid-template-columns: 1fr 1fr; padding-top: 23px; padding-bottom: 23px; }
  .trustStrip strong { grid-column: 1/-1; }
  .trustStrip>span { padding: 10px 0; border: 0; }
  .sectionHeading { grid-template-columns: 1fr; gap: 22px; }
  .serviceGrid,.process ol { grid-template-columns: 1fr; }
  .overheadBanner { grid-template-columns: 64px 1fr; }
  .overheadBanner>strong { grid-column: 2; text-align: left; }
  .foundingOffer { grid-template-columns: 1fr; }
  .foundingOffer>.button { grid-column: 1; }
  .process li { min-height: 300px; }
  .principleGrid { grid-template-columns: 1fr; }
  .principleGrid article,.principleGrid article:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--line); }
  .principleGrid article:last-child { border-bottom: 0; }
  .contact { flex-direction: column; align-items: flex-start; }
  footer { grid-template-columns: 1fr; padding-top: 45px; padding-bottom: 45px; }
  .footerLinks { flex-wrap: wrap; }
}
@media (max-width:520px) {
  .siteHeader,main>section,footer { padding-left: 19px; padding-right: 19px; }
  .wordmark { font-size: 1.75rem; }
  .headerButton { min-width: 112px!important; font-size: .72rem; }
  .hero { padding-top: 52px; }
  .heroActions { flex-direction: column; }
  .heroActions .button { width: 100%; }
  .heroAssurance { gap: 13px; }
  .actionPanel { padding: 24px 20px; border-radius: 15px; }
  .panelHeading { grid-template-columns: 45px 1fr; }
  .panelOrbit { width: 45px; height: 40px; }
  .platform,.process,.principles,.moreTools,.organisationSection { padding-top: 76px; padding-bottom: 80px; }
  .sectionHeading h2,.processIntro h2,.organisationCopy h2,.contact h2 { font-size: 2.7rem; }
  .serviceCard { min-height: 310px; grid-template-columns: 1fr; gap: 22px; padding: 26px; }
  .serviceCard p { padding-right: 20px; }
  .overheadBanner { grid-template-columns: 1fr; gap: 25px; padding-top: 58px; padding-bottom: 62px; }
  .overheadBanner .panelOrbit { width: 62px; height: 55px; }
  .overheadBanner>strong { grid-column: 1; }
  .foundingOffer { padding-top: 65px; padding-bottom: 70px; }
  .foundingLabel { display: flex; align-items: center; gap: 18px; }
  .foundingLabel .panelOrbit { width: 55px; height: 49px; margin: 0; }
  .foundingOffer>.button { width: 100%; }
  .visualBody { grid-template-columns: 82px 1fr; }
  .visualBody aside { padding: 16px 7px; }
  .visualMain { padding: 16px 11px; }
  .metricCards { grid-template-columns: 1fr; }
  .metricCards>div:nth-child(n+2) { display: none; }
  .visualTop small { display: none; }
  .contact .button { width: 100%; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  .button,.serviceCard { transition: none; }
}
