/* Veyron 1.2 — private, cinematic, unmistakably independent. */
:root { --veyron-ease:cubic-bezier(.16,1,.3,1); }
h2[data-split] { white-space:pre-line; }
.private-masthead { inset:24px max(24px,3.2vw) auto; border:1px solid var(--line); border-radius:2px; background:color-mix(in srgb,var(--bg) 78%,transparent); backdrop-filter:blur(22px); box-shadow:0 8px 50px rgba(0,0,0,.15); }
.private-masthead.is-scrolled { background:color-mix(in srgb,var(--bg) 94%,transparent); border-color:color-mix(in srgb,var(--gold) 37%,transparent); }
.private-masthead .header-inner { width:100%; max-width:none; padding:0 30px; min-height:77px; display:grid; grid-template-columns:1fr auto 1fr; gap:25px; }
.private-masthead .brand { grid-column:2; justify-self:center; }
.private-masthead .brand-wordmark { font-size:34px; letter-spacing:-.025em; }
.private-masthead .menu-toggle { display:inline-flex; grid-column:1; grid-row:1; align-items:center; justify-self:start; gap:16px; padding:12px 0; margin:0; width:auto; height:auto; border:0; color:var(--gold); }
.private-masthead .menu-toggle svg { transition:width .5s var(--veyron-ease),transform .5s var(--veyron-ease); }
.private-masthead .menu-toggle:hover svg { transform:translateX(3px); }
.private-masthead .menu-toggle .menu-toggle-label { display:inline; width:auto; height:auto; margin:0; background:none; color:var(--text); font:400 9px/1.5 var(--body); letter-spacing:.22em; text-transform:uppercase; }
.private-masthead .header-cta { display:inline-flex; grid-column:3; grid-row:1; justify-self:end; margin:0; padding:12px 0 12px 20px; border:0; border-left:1px solid var(--line); gap:23px; letter-spacing:.16em; }
.private-masthead .header-cta .masthead-cta-label { font-size:9px; }
.private-masthead .header-cta > span:last-child { font-size:21px; }
.admin-bar .private-masthead { top:56px; }
.private-menu { padding:35px max(28px,6vw) 50px; overflow:auto; background:var(--bg); }
.private-menu .mobile-menu-top { padding-bottom:28px; margin-bottom:55px; border-bottom:1px solid var(--line); }
.private-menu .brand-wordmark { font-size:38px; }
.private-menu .menu-close { border:0; width:50px; height:50px; font-size:36px; }
.private-menu-body { display:grid; grid-template-columns:1.25fr 1fr; gap:14%; align-items:center; max-width:1400px; margin:auto; }
.private-menu nav .menu { counter-reset:veyron-nav; }
.private-menu nav a { position:relative; font:400 clamp(45px,6.2vw,91px)/1.12 var(--heading); padding:18px 0 18px 45px; border-color:var(--line); }
.private-menu nav li { counter-increment:veyron-nav; }
.private-menu nav a::before { content:"0" counter(veyron-nav); position:absolute; left:0; top:31px; font:400 10px/1 var(--body); letter-spacing:.1em; color:var(--gold); }
.private-menu nav a:hover { color:var(--gold-light); }
.private-menu-aside { border-left:1px solid var(--line); padding-left:45px; }
.private-menu-aside .eyebrow { line-height:2; max-width:260px; font-size:9px; }
.private-menu-thought { font:400 43px/1.24 var(--heading); max-width:360px; color:var(--champagne); }
.private-menu .mobile-email { font-size:13px; margin-top:18px; }
.private-menu .mobile-email span { color:var(--gold); margin-left:12px; }
.no-js-nav { margin-top:125px; padding:20px 0; }
.no-js-nav .menu { flex-wrap:wrap; font-size:12px; color:var(--gold); }
.hero { padding-top:180px; }
.hero-inner { z-index:3; }
.hero h1 { text-shadow:0 5px 60px rgba(0,0,0,.18); }
.hero h1 > .hero-title-line > span { transform-origin:left bottom; }
.hero-footnote { display:flex; position:absolute; right:0; bottom:5px; max-width:290px; white-space:normal; text-align:right; line-height:1.9; letter-spacing:.1em; color:var(--champagne); }
.hero-footnote .fine-rule { width:40px; flex-shrink:0; }
.hero-photo figcaption { display:none; }
.expertise,.advisory { position:relative; isolation:isolate; overflow:hidden; }
.expertise > .container,.advisory > .container { position:relative; z-index:2; }
.veyron-ambient { position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:1; isolation:isolate; opacity:1; }
.ambient-orbits { position:absolute; width:110%; height:120%; inset:-7% -5%; color:var(--gold); overflow:visible; }
.orbital-field { transform-box:fill-box; transform-origin:center; stroke:currentColor; stroke-width:.7; vector-effect:non-scaling-stroke; }
.orbital-field-one { opacity:.46; animation:veyron-orbit-one 38s linear infinite; }
.orbital-field-two { opacity:.25; animation:veyron-orbit-two 49s linear infinite; }
.orbital-field-three { opacity:.18; stroke-width:1; animation:veyron-contour 22s ease-in-out infinite alternate; }
.ambient-spotlight { position:absolute; width:80%; height:105%; right:-12%; top:-20%; background:radial-gradient(ellipse at center,color-mix(in srgb,var(--gold) 24%,transparent),transparent 64%); mix-blend-mode:screen; opacity:.55; transform-origin:center; animation:veyron-spotlight 17s ease-in-out infinite alternate; }
.ambient-sweep { position:absolute; inset:-45%; background:conic-gradient(from 0deg at 62% 45%,transparent 0deg,transparent 29deg,color-mix(in srgb,var(--champagne) 13%,transparent) 33deg,transparent 38deg,transparent 360deg); mix-blend-mode:screen; opacity:.65; animation:veyron-light-sweep 29s linear infinite; }
.veyron-ambient * { animation-play-state:paused; }
.veyron-ambient.is-running * { animation-play-state:running; }
.expertise .veyron-ambient { opacity:.33; }
.expertise .ambient-orbits { width:130%; height:100%; left:22%; top:-18%; }
.expertise .ambient-spotlight { width:75%; right:-30%; }
.expertise .ambient-sweep { opacity:.4; }
.advisory .veyron-ambient { opacity:.55; }
.advisory .ambient-orbits { width:125%; height:150%; inset:-25% -12%; }
.advisory .orbital-field-one { animation-duration:48s; }
.advisory .orbital-field-two { animation-duration:60s; }
.advisory::before { display:none; }
.photo-frame { position:relative; }
.motion-ready [data-photo] .photo-frame::before { content:""; position:absolute; z-index:2; inset:0; border:1px solid transparent; border-top-color:var(--gold-light); border-right-color:color-mix(in srgb,var(--gold) 40%,transparent); clip-path:inset(0 100% 0 0); pointer-events:none; }
.motion-ready [data-photo].is-visible .photo-frame::before { animation:veyron-edge-glint 2.8s .8s var(--veyron-ease) both; }
.motion-ready .hero-title-line > span[data-reveal] { transform:translateY(65px) rotateX(15deg) rotate(-1deg); filter:blur(5px); opacity:0; transition:transform 1.55s var(--veyron-ease),filter 1.45s,opacity 1s; transition-delay:var(--reveal-delay,0ms); }
.motion-ready .hero-title-line > span.is-visible { transform:none; filter:blur(0); opacity:1; }
.motion-ready [data-split] .word-reveal { transform:translateY(.5em) rotate(2.5deg); transition-duration:1.25s; }
.motion-ready [data-split].is-visible .word-reveal { transform:none; }
.veyron-footer { position:relative; overflow:hidden; background:var(--bg); border-top:1px solid var(--line); padding:50px 0 28px; }
.footer-topline { display:flex; justify-content:space-between; align-items:center; gap:30px; padding-bottom:36px; border-bottom:1px solid var(--line); }
.veyron-footer .footer-description { margin:0; color:var(--gold); font-size:9px; text-transform:uppercase; letter-spacing:.18em; }
.veyron-footer .back-top { font-size:9px; letter-spacing:.07em; color:var(--muted); gap:28px; }
.veyron-footer .footer-main { display:grid; grid-template-columns:1.5fr 1fr .55fr; align-items:center; gap:65px; margin:62px 0 0; }
.footer-callout { font:400 clamp(40px,4.5vw,69px)/1.12 var(--heading); max-width:460px; margin:0 0 28px; }
.veyron-footer .footer-contact { justify-self:start; font-size:13px; color:var(--muted); gap:13px; }
.veyron-footer .footer-main nav .menu { grid-template-columns:1fr 1fr; gap:22px 34px; font-size:12px; }
.veyron-footer .footer-main nav a { position:relative; }
.veyron-footer .footer-main nav a::after { content:""; display:block; height:1px; width:100%; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform .6s var(--veyron-ease); }
.veyron-footer .footer-main nav a:hover::after { transform:scaleX(1); }
.footer-monogram { width:150px; height:190px; display:flex; flex-direction:column; justify-content:center; align-items:center; border-inline:1px solid var(--line); justify-self:end; }
.footer-monogram > span { color:var(--gold); font:400 140px/.8 var(--heading); }
.footer-monogram > i { width:30px; height:1px; background:var(--gold); margin-top:22px; }
.footer-display { display:flex; align-items:center; gap:50px; padding:65px 0 43px; }
.footer-display .brand { min-width:0; }
.footer-display .brand-wordmark { font:400 clamp(70px,13vw,196px)/.94 var(--heading); letter-spacing:-.06em; color:var(--text); overflow-wrap:anywhere; }
.footer-display .brand-logo { width:min(580px,70vw); height:auto; max-width:100%; max-height:230px; object-fit:contain; }
.footer-display-line { flex:1; height:1px; min-width:55px; background:var(--line); transform-origin:left; }
.veyron-footer .footer-bottom { padding-top:25px; gap:28px; font-size:9px; }
.veyron-footer .legal-links { margin-left:auto; }
.motion-toggle { display:inline-flex; align-items:center; justify-content:center; gap:9px; background:none; border:1px solid var(--line); color:var(--muted); padding:9px 12px; font:400 9px/1.3 var(--body); letter-spacing:.03em; white-space:nowrap; }
.motion-toggle[hidden] { display:none; }
.motion-toggle:disabled { cursor:default; opacity:.65; }
.motion-toggle-dot { display:block; width:5px; height:5px; border:1px solid var(--gold); border-radius:50%; }
.motion-toggle[aria-pressed=true] .motion-toggle-dot { background:var(--gold); }
.motion-toggle:hover:not(:disabled) { color:var(--gold-light); border-color:var(--gold); }
@keyframes veyron-orbit-one { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
@keyframes veyron-orbit-two { from { transform:rotate(0deg); } to { transform:rotate(-360deg); } }
@keyframes veyron-contour { from { transform:translate(-6%,-6%) rotate(-6deg); } to { transform:translate(8%,8%) rotate(7deg); } }
@keyframes veyron-spotlight { from { transform:translate(-28%,8%) scale(.8); opacity:.4; } to { transform:translate(8%,22%) scale(1.2); opacity:.7; } }
@keyframes veyron-light-sweep { from { transform:rotate(-35deg); } to { transform:rotate(325deg); } }
@keyframes veyron-edge-glint { 0% { clip-path:inset(0 100% 0 0); opacity:0; } 35% { opacity:.85; } 100% { clip-path:inset(0); opacity:0; } }
@media(max-width:1150px) {
    .private-masthead .header-inner { padding-inline:23px; }
    .private-masthead .brand-wordmark { font-size:31px; }
    .hero-footnote { display:none; }
    .veyron-footer .footer-main { gap:38px; grid-template-columns:1.4fr 1fr .4fr; }
    .footer-monogram { width:115px; height:165px; }
    .footer-monogram > span { font-size:115px; }
}
@media(max-width:900px) {
    .private-masthead { inset:20px 24px auto; }
    .private-masthead .header-inner { min-height:73px; grid-template-columns:1fr auto 1fr; }
    .private-masthead .menu-toggle { display:inline-flex; margin:0; }
    .private-masthead .header-cta { margin:0; gap:15px; }
    .private-menu-body { gap:8%; grid-template-columns:1.2fr 1fr; }
    .private-menu nav a { font-size:60px; padding-left:35px; }
    .private-menu-aside { padding-left:25px; }
    .private-menu-thought { font-size:34px; }
    .veyron-footer .footer-main { grid-template-columns:1.4fr 1fr; gap:42px; }
    .footer-monogram { display:none; }
    .veyron-footer .footer-contact { grid-column:auto; }
    .footer-display { padding-top:54px; gap:30px; }
    .footer-display .brand-wordmark { font-size:clamp(70px,13vw,130px); }
    .footer-display-line { min-width:20px; }
    .ambient-orbits { width:140%; height:120%; inset:-5% -20%; }
}
@media(max-width:600px) {
    .private-masthead { inset:15px 16px auto; }
    .private-masthead .header-inner { min-height:67px; padding-inline:15px; gap:10px; grid-template-columns:1fr auto 1fr; }
    .private-masthead .brand-wordmark { font-size:26px; white-space:nowrap; }
    .private-masthead .brand-logo { max-width:145px; max-height:42px; }
    .private-masthead .menu-toggle { gap:7px; }
    .private-masthead .menu-toggle svg { width:20px; height:14px; }
    .private-masthead .menu-toggle .menu-toggle-label { font-size:7px; letter-spacing:.11em; }
    .private-masthead .header-cta { display:inline-flex; min-width:27px; padding:9px 0; gap:0; border:0; }
    .private-masthead .header-cta .masthead-cta-label { display:none; }
    .private-masthead .header-cta > span:last-child { font-size:24px; }
    .admin-bar .private-masthead { top:61px; }
    .private-menu { padding:24px; }
    .private-menu .brand-wordmark { font-size:29px; }
    .private-menu .mobile-menu-top { margin-bottom:27px; padding-bottom:20px; }
    .private-menu-body { display:block; }
    .private-menu nav a { font-size:43px; padding:13px 0 13px 32px; }
    .private-menu nav a::before { top:25px; font-size:8px; }
    .private-menu-aside { border-left:0; padding:26px 0 0; }
    .private-menu-aside .eyebrow { margin-bottom:14px; font-size:8px; max-width:none; }
    .private-menu-thought { font-size:25px; margin-bottom:12px; max-width:300px; }
    .private-menu .mobile-email { margin-top:4px; font-size:12px; }
    .hero { padding-top:140px; }
    .hero .veyron-ambient { opacity:.8; }
    .ambient-orbits { width:190%; height:90%; inset:-4% -45%; }
    .orbital-field-one { stroke-width:.8; }
    .ambient-spotlight { width:130%; right:-45%; }
    .ambient-sweep { opacity:.5; }
    .advisory .ambient-orbits { width:190%; height:145%; inset:-15% -45%; }
    .veyron-footer { padding-top:34px; }
    .footer-topline { gap:25px; align-items:flex-start; padding-bottom:27px; }
    .veyron-footer .footer-description { max-width:190px; font-size:8px; line-height:1.9; letter-spacing:.12em; }
    .veyron-footer .back-top { font-size:8px; gap:10px; }
    .veyron-footer .footer-main { grid-template-columns:1fr; gap:30px; margin-top:32px; }
    .footer-callout { font-size:45px; margin-bottom:24px; max-width:280px; }
    .veyron-footer .footer-contact { font-size:12px; gap:10px; }
    .veyron-footer .footer-main nav .menu { grid-template-columns:repeat(4,auto); gap:16px; font-size:10px; }
    .footer-display { padding:42px 0 30px; gap:0; }
    .footer-display .brand-wordmark { font-size:clamp(56px,15.7vw,91px); letter-spacing:-.055em; }
    .footer-display-line { display:none; }
    .veyron-footer .footer-bottom { gap:16px; align-items:center; font-size:8px; }
    .veyron-footer .footer-bottom > p { width:100%; }
    .veyron-footer .legal-links { margin:0; gap:15px; }
    .motion-toggle { margin-left:auto; font-size:8px; padding:8px 10px; }
    .no-js-nav { margin-top:101px; }
}
body[data-animations=false] .veyron-ambient { opacity:.22; }
body[data-animations=false] .ambient-spotlight,body[data-animations=false] .ambient-sweep { display:none; }
body[data-animations=false] .photo-media { scale:1!important; transform:none!important; }
body[data-animations=false] .button > span:last-child,body[data-animations=false] .service-arrow,body[data-animations=false] .value-tick,body[data-animations=false] .menu-toggle svg { transform:none!important; }
html[data-motion-active=false] { scroll-behavior:auto!important; }
@media(prefers-reduced-motion:reduce) {
    .veyron-ambient { opacity:.22!important; }
    .ambient-spotlight,.ambient-sweep { display:none!important; }
    .veyron-ambient * { animation:none!important; }
    .button > span:last-child,.service-arrow,.value-tick,.menu-toggle svg { transform:none!important; }
}
@media print {
    .veyron-ambient,.private-masthead,.veyron-footer,.motion-toggle { display:none!important; }
}

