/* A luminous, human-centred future. */
:root{color-scheme:dark;--ink:#edf5ff;--muted:#afbed3;--paper:#070d19;--soft:#0c1425;--gold:#8ccaff;--border:#ffffff22;--serif:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-family:var(--serif)}
body{background:radial-gradient(ellipse at 85% 5%,#27366b55,transparent 35%),radial-gradient(ellipse at 0% 42%,#09555d33,transparent 35%),var(--paper)}
::selection{background:#8ccaff;color:#070d19}
.header{height:90px;background:#070d19cc;border-color:#ffffff18;backdrop-filter:blur(24px)}
.brand{font-weight:500}.monogram{font-style:normal;font-weight:650;letter-spacing:-4px}.brand small{color:var(--muted)}
nav>a:not(.button):hover,.text-link:hover{color:var(--gold)}
.button{border-radius:8px;background:var(--gold);color:#071922;border-color:var(--gold);font-weight:650;box-shadow:0 0 26px #8ccaff14;transition:transform .2s,box-shadow .2s,background .2s}
.button:hover{background:#c4e7ff;transform:translateY(-2px);box-shadow:0 0 32px #8ccaff36}
.button.small{background:transparent;color:var(--gold);border-color:#8ccaff66}
.hero{min-height:730px;gap:50px;padding-block:85px;position:relative}
h1{font-size:clamp(48px,5.3vw,78px);font-weight:550;letter-spacing:-3.8px;line-height:1.08}
h1 em,h2 em{font-style:normal;color:var(--gold)}h1 em{background:linear-gradient(100deg,#d5edff,#78acff);background-clip:text;-webkit-background-clip:text;color:transparent}
h2{font-weight:500;letter-spacing:-1.8px}h3{font-weight:550}.eyebrow{font-size:12px;letter-spacing:2.5px}.hero-copy{position:relative;z-index:2}.intro{font-size:18px}.signature{font-size:13px}
.hero-visual{min-height:500px;align-self:center;isolation:isolate;border-radius:50%;background:radial-gradient(ellipse,#6584ff28,transparent 68%);display:grid;place-items:center}
.hero-visual img{width:76%;height:76%;max-height:none;inset:12%;border-radius:50%;object-position:48% 50%;filter:grayscale(1) brightness(.48) contrast(1.1);opacity:.72;border:1px solid #8ccaff44}
.hero-visual:after{content:'';position:absolute;inset:12%;border-radius:50%;background:linear-gradient(140deg,#728cff44,#8ccaff22);box-shadow:inset 0 0 70px #070d19,0 0 80px #8abaff22;pointer-events:none}
.orbital{position:absolute;border:1px solid #8ccaff55;border-radius:50%;inset:4%;box-shadow:0 0 18px #8abaff16;pointer-events:none;animation:orbit-breathe 9s ease-in-out infinite alternate}
.orbital-one{transform:rotate(-25deg) scaleY(.8);border-top:2px solid #b5dfff;inset:-1% -6%}
.orbital-two{transform:rotate(38deg) scaleX(.78);border-right:2px solid #728cff;inset:-4% 7%;animation-delay:-4s}
.photo-note{z-index:2;left:0;bottom:26px;max-width:330px;border:1px solid #8ccaff33;border-radius:14px;background:#0b172bd9;backdrop-filter:blur(18px);box-shadow:0 20px 50px #0005;padding:26px 30px}
.photo-note span{color:var(--gold);font-size:12px}.photo-note p{font-size:27px;letter-spacing:-.8px}.photo-index{background:transparent;color:var(--muted);bottom:-18px;font-size:12px;letter-spacing:1.2px}
.principles{border-color:#8ccaff22;font-size:14px;padding-block:28px}.principles span:before{color:#8ccaff}
.services{gap:18px}.services article{background:linear-gradient(145deg,#182b405c,#0b1325b3);border:1px solid var(--border);border-radius:18px;padding:30px 26px;transition:transform .25s,border-color .25s}.services article:hover{transform:translateY(-6px);border-color:#8ccaff77}.number{font-size:14px;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#8ccaff12;border:1px solid #8ccaff33}.services h3{font-size:24px;letter-spacing:-.8px}.services p,.services li,.steps p,.trust-items p,details p{font-size:16px}
.example-section{background:linear-gradient(120deg,#0d1b2b,#10172a);border-block:1px solid var(--border)}.example-tabs{border-color:var(--border)}.example-tabs button{font-size:15px}.example-tabs button[aria-selected=true]{color:var(--gold)}
.workflow{background:linear-gradient(140deg,#1a2b40aa,#080f20);border-color:#8ccaff44;border-radius:18px;box-shadow:0 24px 90px #0004}.workflow-head{font-size:12px;color:#c0d8ef}.workflow li>span{background:#8ccaff15;color:var(--gold);border:1px solid #8ccaff44;border-radius:10px}.workflow small{font-size:14px}.workflow-foot{font-size:13px}.pill{color:#bddcff;font-size:12px}.toolkit>div span{background:#8ccaff09;border-color:#8ccaff2e;border-radius:6px}.example-story h3{letter-spacing:-1px}
.steps article{position:relative;border-top-color:#8ccaff55;padding-top:28px}.steps article>span{font-size:12px}.steps h3{font-size:23px}
.about-section{background:radial-gradient(ellipse at 10% 80%,#17626955,transparent 65%),linear-gradient(125deg,#142132,#17172d);border-block:1px solid #ffffff22;padding-block:100px}.about-section .eyebrow,.about-section em{color:var(--gold);font-style:normal}.about-section h2{font-weight:500;letter-spacing:-2px}.large-copy{font-weight:400;line-height:1.5}.trust-items article>span{font-size:14px}
.faq-section{background:#0c1422}.faqs details{border-color:var(--border)}summary{font-size:18px}details[open] summary{color:var(--gold)}
form{padding:30px;background:linear-gradient(145deg,#16263a88,#0b1325);border:1px solid var(--border);border-radius:18px;min-width:0}input,select,textarea{background:#080f1d;border-color:#8199bc55;border-radius:7px;color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--gold)}::placeholder{color:#93a5be}.form-note{font-size:13px}.email{font-size:24px;color:var(--gold)}
footer{background:#060b14}.footer-link{color:var(--muted)}dialog{background:#101a2b;border-color:#8ccaff55;border-radius:18px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#020611bd;backdrop-filter:blur(7px)}.dialog-close,.menu-toggle{background:#101c30;color:var(--ink);border-color:#94bddd66;border-radius:6px}.skip{background:var(--gold);color:#070d19}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:var(--gold)}
@keyframes orbit-breathe{from{opacity:.45}to{opacity:1}}
@media(max-width:1050px){.hero{gap:25px}h1{font-size:58px}.hero-visual{min-height:430px}.services article{padding:24px 20px}.photo-note{left:0;padding:23px}.photo-note p{font-size:25px}.form-actions{flex-wrap:wrap}}
@media(max-width:760px){.header{height:80px}nav{background:#0b1425f5;backdrop-filter:blur(24px)}.hero{min-height:0;padding-top:55px;gap:45px;padding-bottom:65px}h1{font-size:clamp(42px,10.5vw,68px);letter-spacing:-2.4px}.hero-actions{flex-wrap:wrap}.hero-visual{min-height:370px;width:min(100%,430px);margin:0 auto}.hero-visual img{height:76%}.orbital-one{inset:0}.orbital-two{inset:0 10%}.photo-note{bottom:12px;left:0}.photo-index{bottom:-22px;font-size:12px}.services{gap:16px}.services article{padding:26px}.about-section{padding-block:65px}.about-section h2{font-size:43px}.section-heading h2,.trust h2,.contact h2,.faq-grid h2{font-size:34px}.example-tabs button{font-size:14px}.hero-copy .eyebrow{font-size:12px}.steps{gap:22px}.steps h3{font-size:21px}form{padding:22px}.principles{font-size:14px}.brand small{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{body,.example-section,.faq-section,.about-section{background:white;color:#15283a}:root{--ink:#15283a;--muted:#45566a;--gold:#236674}.services article,.workflow{background:white;box-shadow:none}.about-section em,.about-section .eyebrow{color:#236674}}


/* Clear photography with cool, restrained accents. */
.hero-visual{min-height:0;display:block;align-self:center;border-radius:16px;background:none;padding:0;border:1px solid #8ccaff40;overflow:hidden;box-shadow:0 18px 45px #0004}
.hero-visual img{position:relative;display:block;inset:auto;width:100%;height:auto;max-height:none;aspect-ratio:4/5;object-fit:cover;object-position:center;filter:none;opacity:1;border:0;border-radius:0}
.hero-visual:after{display:none}
.orbital{display:none}
.photo-note{position:static;max-width:none;border:0;border-top:1px solid #8ccaff30;border-radius:0;background:#101c2d;backdrop-filter:none;box-shadow:none;padding:23px 28px}
.photo-note p{font-size:24px;margin-top:10px}.photo-note p br{display:none}.photo-note p br:after{content:' '}
.photo-index{position:static;background:#101c2d;padding:0 28px 20px;color:var(--muted);font-size:12px}
@media(max-width:760px){.hero-visual{min-height:0;width:100%;margin:0}.hero-visual img{height:auto;aspect-ratio:4/3}.photo-note{padding:22px}.photo-index{padding:0 22px 20px}}
