@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/font-font-0.5d3ebac533f8.woff) format('woff');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/font-font-1.ab801bff0098.woff) format('woff');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/font-font-2.f651a18e1f18.woff) format('woff');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/font-font-3.c9b84e383bc2.woff) format('woff');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/font-font-4.eccf325c5ea7.woff) format('woff');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/font-font-5.3c982ab99636.woff) format('woff');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/font-font-6.be78623da8fe.woff) format('woff');
}
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/font-font-7.55dc1410ad2e.woff) format('woff');
}
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/font-font-8.288bc794748a.woff) format('woff');
}
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/font-font-9.1133cf607916.woff) format('woff');
}


:root{
  --ink:#071613;
  --ink-2:#0b211c;
  --ink-3:#10342a;
  --ivory:#f4f0e7;
  --paper:#fbf9f4;
  --stone:#ded8ca;
  --stone-2:#c7c0b1;
  --muted:#746f66;
  --sage:#8da79a;
  --gold:#c9a662;
  --gold-2:#e6cf9a;
  --gold-dark:#8d6a34;
  --white:#fff;
  --line-dark:rgba(244,240,231,.13);
  --line-light:rgba(7,22,19,.12);
  --display:"Newsreader",Georgia,serif;
  --sans:"DM Sans",Arial,sans-serif;
  --ui:"Manrope",Arial,sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-soft:cubic-bezier(.22,.61,.36,1);
  --shell:min(1320px,calc(100vw - 96px));
  --header-h:82px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--ink)}
body{font-family:var(--sans);background:var(--ink);color:var(--ink);font-size:16px;line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.is-loading{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
::selection{background:var(--gold);color:var(--ink)}
.shell{width:var(--shell);margin-inline:auto;position:relative}
.skip-link{position:fixed;top:12px;left:12px;padding:10px 16px;background:var(--gold);color:var(--ink);z-index:9999;transform:translateY(-160%);transition:.25s}
.skip-link:focus{transform:none}
.noise{position:fixed;inset:0;pointer-events:none;z-index:900;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.cursor{position:fixed;top:0;left:0;pointer-events:none;z-index:1000;border-radius:50%;mix-blend-mode:difference;will-change:transform}
.cursor-dot{width:5px;height:5px;background:#fff}
.cursor-ring{width:42px;height:42px;border:1px solid rgba(230,207,154,.75);mix-blend-mode:normal;transition:width .35s,height .35s,border-color .35s,background .35s}
.cursor-ring.is-hover{width:64px;height:64px;border-color:rgba(230,207,154,.35);background:rgba(230,207,154,.06)}
.cursor-ring{width:42px;height:42px;border:1px solid rgba(255,255,255,.7);transition:width .35s var(--ease),height .35s var(--ease),background .35s,border-color .35s}
.cursor-ring.is-hover{width:72px;height:72px;background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.3)}

/* Loader */
.loader{position:fixed;inset:0;z-index:1200;background:var(--ink);display:grid;place-items:center;overflow:hidden;color:var(--ivory)}
.loader-grid,.page-hero-grid,.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(circle at center,#000,transparent 76%)}
.loader-orbit{position:absolute;width:min(74vw,740px);aspect-ratio:1;border:1px solid rgba(199,165,106,.2);border-radius:50%}
.loader-orbit::before,.loader-orbit::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(244,240,231,.08)}
.loader-orbit::before{inset:11%}.loader-orbit::after{inset:26%}
.orbit-b{width:min(55vw,560px);border-style:dashed;opacity:.65}
.loader-centre{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center}
.loader-mark{width:68px;height:68px;border:1px solid rgba(224,197,143,.55);border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-size:20px;color:var(--gold-2);margin-bottom:28px;position:relative}
.loader-mark::before,.loader-mark::after{content:"";position:absolute;background:rgba(224,197,143,.45)}
.loader-mark::before{width:100px;height:1px}.loader-mark::after{height:100px;width:1px}
.loader-kicker,.loader-location{text-transform:uppercase;letter-spacing:.28em;font:600 10px var(--ui);color:var(--gold-2)}
.loader-name{display:flex;gap:.25em;font:300 clamp(42px,7vw,88px)/1 var(--display);margin:18px 0 28px;letter-spacing:-.035em}
.loader-name span{display:inline-block}
.loader-progress{width:240px;height:1px;background:rgba(255,255,255,.14);overflow:hidden;margin-bottom:20px}
.loader-progress i{display:block;height:100%;background:var(--gold-2);transform-origin:left;transform:scaleX(0)}
.loader-location{color:rgba(244,240,231,.5);letter-spacing:.22em}
.page-transition{position:fixed;inset:0;z-index:1100;background:var(--ink-2);display:grid;place-items:center;transform:translateY(101%);pointer-events:none;color:var(--gold-2)}
.transition-line{position:absolute;width:1px;height:35vh;background:linear-gradient(transparent,var(--gold),transparent);transform:scaleY(0)}
.transition-mark{font:300 34px var(--display);border:1px solid rgba(224,197,143,.35);border-radius:50%;width:82px;height:82px;display:grid;place-items:center;opacity:0}

/* Header */
.utility-bar{height:34px;background:#04100e;color:rgba(244,240,231,.65);font:500 11px var(--ui);letter-spacing:.07em;border-bottom:1px solid rgba(255,255,255,.06);position:relative;z-index:60}
.utility-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.utility-inner a{color:var(--gold-2)}
.site-header{height:var(--header-h);background:rgba(7,22,19,.82);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);position:sticky;top:0;z-index:70;border-bottom:1px solid transparent;transition:height .4s,background .4s,border-color .4s}
.site-header.scrolled{height:72px;background:rgba(7,22,19,.95);border-color:rgba(255,255,255,.08)}
.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:14px;color:var(--ivory)}
.brand-mark{width:40px;height:40px;border:1px solid rgba(224,197,143,.55);border-radius:50%;display:grid;place-items:center;font:400 13px var(--display);color:var(--gold-2);position:relative}
.brand-mark::after{content:"";position:absolute;inset:-5px;border:1px solid rgba(224,197,143,.12);border-radius:50%}
.brand-copy{display:flex;flex-direction:column;line-height:1.25}
.brand-copy strong{font:400 18px var(--display)}
.brand-copy small{font:600 8px var(--ui);letter-spacing:.2em;text-transform:uppercase;color:rgba(244,240,231,.48);margin-top:4px}
.desktop-nav{display:flex;align-items:center;gap:34px}
.desktop-nav a{color:rgba(244,240,231,.68);font:500 12px var(--ui);letter-spacing:.04em;position:relative;padding:12px 0;transition:color .3s}
.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.desktop-nav a:hover,.desktop-nav a.active{color:var(--ivory)}
.desktop-nav a:hover::after,.desktop-nav a.active::after{transform:scaleX(1);transform-origin:left}
.nav-actions{display:flex;align-items:center;gap:14px}
.menu-toggle{display:none;width:46px;height:46px;border:1px solid rgba(244,240,231,.16);background:transparent;border-radius:50%;position:relative}
.menu-toggle span{position:absolute;left:13px;width:18px;height:1px;background:var(--ivory);transition:.45s var(--ease)}
.menu-toggle span:first-child{top:19px}.menu-toggle span:last-child{top:26px}
.menu-toggle.open span:first-child{top:22px;transform:rotate(45deg)}.menu-toggle.open span:last-child{top:22px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:65;background:var(--ink);display:none;padding:150px 7vw 48px;transform:translateY(-105%);overflow:hidden;color:var(--ivory)}
.mobile-menu-bg{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(199,165,106,.15),transparent 36%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:auto,60px 60px,60px 60px}
.mobile-menu nav{position:relative;display:flex;flex-direction:column}
.mobile-menu nav a{font:300 clamp(34px,7vw,70px)/1.1 var(--display);padding:12px 0;border-bottom:1px solid var(--line-dark);display:flex;gap:24px;align-items:center}
.mobile-menu nav a span{font:600 9px var(--ui);letter-spacing:.16em;color:var(--gold-2)}
.mobile-menu-footer{position:absolute;bottom:38px;left:7vw;right:7vw;display:flex;justify-content:space-between;font-size:12px;color:rgba(244,240,231,.55)}
.mobile-menu-footer a{color:var(--gold-2)}

/* Common elements */
.page{display:none;background:var(--ivory)}
.page.active{display:block}
.eyebrow{display:flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.23em;font:600 10px var(--ui);color:var(--gold-dark)}
.eyebrow::before{content:"";width:30px;height:1px;background:currentColor}
.eyebrow.light{color:var(--gold-2)}
h1,h2,h3{font-family:var(--display);font-weight:300;letter-spacing:-.03em;line-height:.98}
h1{font-size:clamp(54px,7vw,104px)}
h2{font-size:clamp(42px,5.4vw,76px)}
h3{font-size:clamp(26px,2.5vw,38px)}
.section{padding:130px 0;position:relative}
.section-light{background:var(--ivory);color:var(--ink)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-width:230px;padding:18px 22px 18px 24px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.13em;font:600 10px var(--ui);position:relative;overflow:hidden;isolation:isolate;transition:color .45s,border-color .45s,transform .45s var(--ease),box-shadow .45s}
.button::before{content:"";position:absolute;inset:0;z-index:-1;transform:translateX(-105%);transition:transform .6s var(--ease);background:var(--ivory)}
.button:hover::before{transform:none}
.button i{font-style:normal;font-size:14px;transition:transform .4s var(--ease)}
.button:hover i{transform:translate(4px,-4px)}
.button-gold{background:var(--gold);color:var(--ink)}
.button-gold:hover{color:var(--ink);box-shadow:0 20px 60px rgba(199,165,106,.2)}
.button-ivory{background:var(--ivory);color:var(--ink)}
.button-ivory::before{background:var(--gold)}
.button-dark{background:var(--ink);color:var(--ivory)}
.button-dark::before{background:var(--gold)}
.button-small{min-width:0;padding:13px 17px;gap:18px}
.text-link{display:inline-flex;align-items:center;gap:20px;color:var(--ivory);text-transform:uppercase;letter-spacing:.12em;font:600 10px var(--ui);padding:12px 0;border-bottom:1px solid rgba(244,240,231,.25)}
.text-link.dark{color:var(--ink);border-color:rgba(7,22,19,.25)}
.text-link i{font-style:normal;transition:transform .4s var(--ease)}
.text-link:hover i{transform:translateX(6px)}
.section-heading{margin-bottom:72px}
.split-heading{display:grid;grid-template-columns:1fr .7fr;gap:100px;align-items:end}
.split-heading h2{margin-top:20px;max-width:780px}
.split-heading>p{font-size:18px;line-height:1.8;max-width:520px;color:rgba(244,240,231,.64)}
.section-light .split-heading>p{color:var(--muted)}
[data-reveal]{opacity:0;transform:translateY(36px)}
.tilt-card{transform-style:preserve-3d;will-change:transform}

/* Hero */
.hero{min-height:calc(100vh - 116px);background:var(--ink);color:var(--ivory);position:relative;overflow:hidden;display:flex;align-items:center;padding:90px 0 100px}
.hero-ambient{position:absolute;inset:0}
.hero-glow{position:absolute;border-radius:50%;filter:blur(4px)}
.glow-one{width:70vw;height:70vw;right:-26vw;top:-30vw;background:radial-gradient(circle,rgba(33,91,74,.38),transparent 66%)}
.glow-two{width:48vw;height:48vw;left:-18vw;bottom:-28vw;background:radial-gradient(circle,rgba(199,165,106,.11),transparent 65%)}
.hero-grid-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:80px;align-items:center;z-index:2}
.hero-copy{position:relative;z-index:3}
.hero-title{font-size:clamp(66px,8.5vw,126px);margin:30px 0 32px;max-width:800px}
.hero-line{display:block;overflow:hidden;padding-bottom:.05em}
.hero-line-accent{font-style:italic;color:var(--gold-2);margin-left:0}
.hero-lede{font-size:clamp(17px,1.35vw,21px);line-height:1.75;color:rgba(244,240,231,.67);max-width:610px;font-weight:300}
.hero-actions{display:flex;align-items:center;gap:34px;margin-top:38px;flex-wrap:wrap}
.hero-trust{display:grid;grid-template-columns:repeat(3,1fr);max-width:620px;margin-top:56px;border-top:1px solid var(--line-dark)}
.hero-trust>div{padding:25px 26px 0 0;border-right:1px solid var(--line-dark);margin-right:26px}
.hero-trust>div:last-child{border:0;margin:0}
.hero-trust strong{font:300 31px var(--display);color:var(--ivory) !important;display:block;line-height:1.1}
.hero-trust>div>span{font:500 9px var(--ui);letter-spacing:.13em;text-transform:uppercase;color:rgba(244,240,231,.43)}
.hero-visual{position:relative;min-height:590px;display:grid;place-items:center}







.portrait-frame{width:min(400px,80%);aspect-ratio:.74;position:relative;background:#15352d;border-radius:999px 999px 0 0;box-shadow:0 60px 110px -30px rgba(0,0,0,.55)}
.portrait-frame::before{content:"";position:absolute;inset:0;transform:translate(20px,20px);border:1px solid rgba(199,165,106,.5);border-radius:inherit;z-index:0;pointer-events:none;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.portrait-frame:hover::before{transform:translate(12px,12px)}
.portrait-frame::after{content:"";position:absolute;left:0;right:0;bottom:0;height:44%;z-index:2;background:linear-gradient(180deg,transparent,rgba(7,22,19,.85));pointer-events:none}
.portrait-inner{position:absolute;inset:0;overflow:hidden;z-index:1;border-radius:inherit}
.portrait-inner img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:saturate(.8) contrast(1.05);transform:scale(1.02);transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.portrait-frame:hover .portrait-inner img{transform:scale(1.06)}
.portrait-glass{position:absolute;inset:0;z-index:2;background:linear-gradient(150deg,rgba(255,255,255,.1),transparent 30%,transparent 70%,rgba(7,22,19,.25)),linear-gradient(to top,rgba(7,22,19,.74),transparent 42%)}
.portrait-scan{position:absolute;left:0;right:0;height:1px;top:20%;z-index:2;background:linear-gradient(90deg,transparent,rgba(224,197,143,.55),transparent);opacity:.6}
.portrait-caption{position:absolute;left:30px;right:30px;bottom:26px;z-index:3;display:flex;flex-direction:column;gap:5px}
.portrait-caption span{font:600 8.5px var(--ui);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-2)}
.portrait-caption strong{font:400 18px var(--display);color:var(--ivory)}
.portrait-caption em{font-style:normal;font:400 12.5px var(--ui);color:rgba(244,240,231,.55);letter-spacing:.03em}





.hero-scroll{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;color:rgba(244,240,231,.36);font:600 8px var(--ui);letter-spacing:.17em;text-transform:uppercase;z-index:3}
.hero-scroll i{width:48px;height:1px;background:rgba(244,240,231,.28);position:relative;overflow:hidden}.hero-scroll i::after{content:"";position:absolute;inset:0;background:var(--gold);transform:translateX(-100%);animation:scrollLine 2.6s infinite var(--ease)}
@keyframes scrollLine{0%{transform:translateX(-100%)}50%,100%{transform:translateX(100%)}}
.affiliations{height:90px;background:var(--paper);display:flex;align-items:center;border-bottom:1px solid var(--line-light);overflow:hidden}
.affiliations-label{padding:0 38px 0 max(48px,calc((100vw - 1320px)/2));font:600 9px var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dark);white-space:nowrap}
.marquee-window{overflow:hidden;flex:1;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.marquee-track{display:flex;align-items:center;gap:72px;width:max-content;animation:marquee 36s linear infinite}
.marquee-track .lg{display:flex;align-items:center;flex-shrink:0}.marquee-track .lg img{width:auto;display:block;filter:grayscale(1) opacity(.55);transition:filter .4s ease,transform .4s ease}.marquee-track .lg:hover img{filter:grayscale(0) opacity(1);transform:translateY(-2px)}.affiliations:hover .marquee-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}

/* Home sections */
.intro-layout{display:grid;grid-template-columns:170px 1.1fr .82fr;gap:70px}
.section-index{display:flex;align-items:flex-start;gap:16px;color:var(--gold-dark);font:600 9px var(--ui);letter-spacing:.16em;text-transform:uppercase;padding-top:7px}
.section-index i{width:1px;height:100px;background:var(--line-light)}
.section-index small{writing-mode:vertical-rl}
.intro-heading h2{margin-top:24px;max-width:780px}
.intro-copy>p{font-size:18px;line-height:1.85;color:var(--muted);margin-bottom:32px}
.micro-facts{border-top:1px solid var(--line-light);margin-bottom:30px}
.micro-facts>div{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--line-light)}
.micro-facts dt{text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:var(--gold-dark)}
.micro-facts dd{font-size:13px;color:var(--ink)}
.expertise-preview{background:var(--ink-2);color:var(--ivory);overflow:hidden}
.expertise-preview::before{content:"";position:absolute;width:700px;height:700px;border-radius:50%;border:1px solid rgba(224,197,143,.08);right:-350px;top:-300px;box-shadow:0 0 0 80px rgba(224,197,143,.025),0 0 0 160px rgba(224,197,143,.018)}
.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.expertise-card{min-height:470px;padding:32px;background:rgba(255,255,255,.025);border:1px solid var(--line-dark);display:flex;flex-direction:column;position:relative;overflow:hidden;transition:border-color .45s,background .45s}
.expertise-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(199,165,106,.18),transparent 35%);opacity:0;transition:opacity .4s}
.expertise-card:hover::before{opacity:1}.expertise-card:hover{border-color:rgba(224,197,143,.38);background:rgba(255,255,255,.04)}
.expertise-card.featured{background:linear-gradient(145deg,rgba(199,165,106,.16),rgba(255,255,255,.03));border-color:rgba(224,197,143,.35)}
.card-number{font:600 9px var(--ui);letter-spacing:.16em;color:var(--gold-2)}
.card-icon{width:86px;height:86px;margin:52px 0 34px;display:grid;place-items:center}
.card-icon svg{width:100%;height:100%;fill:none;stroke:rgba(224,197,143,.62);stroke-width:1}
.expertise-card h3{font-size:38px;margin-bottom:18px;position:relative}.expertise-card p{color:rgba(244,240,231,.55);line-height:1.8;position:relative}
.card-link{margin-top:auto;padding-top:38px;border-top:1px solid var(--line-dark);display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.15em;font:600 9px var(--ui);color:var(--gold-2);position:relative}.card-link i{font-style:normal}
.featured-label{position:absolute;right:24px;top:24px;text-transform:uppercase;letter-spacing:.16em;font:600 7px var(--ui);color:var(--gold-2)}
.metrics-section{background:#061310;color:var(--ivory);overflow:hidden}

.metrics-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:120px;align-items:center}
.metrics-layout h2{margin:22px 0 24px}.metrics-layout>div:first-child>p:last-child{color:rgba(244,240,231,.55);font-size:18px;max-width:430px}
.metrics-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.metric{min-height:210px;padding:38px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);display:flex;flex-direction:column;justify-content:flex-end}
.metric strong{font:300 clamp(54px,6vw,86px)/.9 var(--display);color:var(--gold-2) !important}
.metric>span{font:600 8px var(--ui);letter-spacing:.16em;text-transform:uppercase;color:rgba(244,240,231,.45);margin-top:14px}
.testimonial-feature{padding:150px 0}
.testimonial-layout{display:grid;grid-template-columns:170px 1fr 180px;gap:60px;align-items:start}
.quote-mark{font:300 160px/.6 var(--display);color:var(--gold);opacity:.7}
.testimonial-feature blockquote p{font:300 clamp(35px,4.2vw,62px)/1.16 var(--display);letter-spacing:-.025em}
.testimonial-feature blockquote footer{display:flex;gap:20px;margin-top:34px;text-transform:uppercase;letter-spacing:.13em;font:600 8px var(--ui)}
.testimonial-feature blockquote footer span{color:var(--muted)}
.quote-rating{border-left:1px solid var(--line-light);padding-left:28px}.quote-rating span{display:block;color:var(--gold-dark);letter-spacing:.13em}.quote-rating small{text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:var(--muted)}
.consultation-cta{padding:120px 0;background:var(--ink-3);color:var(--ivory);position:relative;overflow:hidden}

.cta-layout{display:grid;grid-template-columns:1fr .7fr;gap:120px;align-items:end}.cta-layout h2{margin-top:22px}.cta-layout>div:last-child p{font-size:18px;color:rgba(244,240,231,.62);margin-bottom:30px;max-width:500px}

/* Page heroes */
.page-hero{background:var(--ink);color:var(--ivory);padding:118px 0 108px;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;width:700px;height:700px;border-radius:50%;border:1px solid rgba(199,165,106,.12);right:-220px;top:-360px;box-shadow:0 0 0 90px rgba(199,165,106,.025),0 0 0 180px rgba(199,165,106,.018)}
.page-hero-layout{display:grid;grid-template-columns:1fr .5fr;gap:100px;align-items:end}
.breadcrumb{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:rgba(244,240,231,.4);margin-bottom:32px}.breadcrumb a{color:var(--gold-2)}.breadcrumb i{font-style:normal}
.page-hero h1{font-size:clamp(56px,7.2vw,100px);max-width:950px;margin-top:25px}
.page-hero-layout>p{font-size:19px;color:rgba(244,240,231,.58);line-height:1.8;max-width:480px;padding-bottom:12px}

/* About */
.profile-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:120px;align-items:start}
.profile-visual{position:relative}.profile-image{max-width:430px;aspect-ratio:.8;overflow:hidden;clip-path:polygon(0 0,88% 0,100% 12%,100% 100%,12% 100%,0 88%);box-shadow:0 40px 90px rgba(7,22,19,.18)}
.profile-image img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:saturate(.75) contrast(1.04)}
.profile-review{position:absolute;right:-15px;bottom:45px;background:var(--ink);color:var(--ivory);padding:22px 26px;display:flex;flex-direction:column;box-shadow:0 20px 50px rgba(7,22,19,.2)}
.profile-review strong{font:300 34px var(--display);color:var(--gold-2)}.profile-review span{text-transform:uppercase;letter-spacing:.12em;font:600 7px var(--ui);color:rgba(244,240,231,.55)}
.profile-copy h2{margin:20px 0 36px}.profile-copy>p{font-size:17px;color:var(--muted);line-height:1.85;margin-bottom:22px;max-width:760px}
.facts-table{margin-top:45px;border-top:1px solid var(--line-light)}
.fact-link{color:var(--gold-dark);text-decoration:none;border-bottom:1px solid rgba(141,111,52,.4);padding-bottom:1px;transition:.3s}
.fact-link:hover{color:var(--gold);border-color:var(--gold)}
.fact-link i{font-style:normal;font-size:.85em}
.facts-table>div{display:grid;grid-template-columns:145px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--line-light)}
.facts-table span{text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:var(--gold-dark)}.facts-table strong{font-weight:400;color:var(--ink)}
.leadership-section{background:var(--ink-2);color:var(--ivory)}
.leadership-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.leadership-card{min-height:340px;padding:38px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);display:flex;flex-direction:column}
.leadership-card>span{font:600 9px var(--ui);letter-spacing:.16em;color:var(--gold-2)}.leadership-card h3{margin-top:auto;margin-bottom:18px}.leadership-card p{color:rgba(244,240,231,.52);line-height:1.75}
.timeline-layout{display:grid;grid-template-columns:.62fr 1.38fr;gap:120px}.timeline-intro{position:sticky;top:120px;align-self:start}.timeline-intro h2{margin:20px 0 25px}.timeline-intro p:last-child{color:var(--muted);font-size:17px}
.timeline{border-top:1px solid var(--line-light)}.timeline-item{display:grid;grid-template-columns:145px 1fr;gap:40px;padding:34px 0;border-bottom:1px solid var(--line-light)}.timeline-item>span{font:600 9px var(--ui);letter-spacing:.15em;text-transform:uppercase;color:var(--gold-dark)}.timeline-item h3{font-size:31px;line-height:1.15;margin-bottom:10px}.timeline-item p{color:var(--muted)}
.approach-section{background:#071815;color:var(--ivory)}.approach-layout{display:grid;grid-template-columns:.58fr 1.42fr;gap:120px}.approach-layout h2{margin-top:20px}.approach-list{list-style:none;border-top:1px solid var(--line-dark)}.approach-list li{display:grid;grid-template-columns:80px 1fr;gap:20px;padding:26px 0;border-bottom:1px solid var(--line-dark);align-items:center}.approach-list span{font:600 8px var(--ui);letter-spacing:.16em;color:var(--gold-2)}.approach-list p{font:300 24px/1.35 var(--display);color:rgba(244,240,231,.78)}

/* Expertise */
.directory-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.directory-card{min-height:390px;border:1px solid var(--line-light);padding:38px;display:flex;flex-direction:column;transition:background .5s,color .5s,border-color .5s,transform .5s var(--ease);position:relative;overflow:hidden}
.directory-card::before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;border:1px solid rgba(199,165,106,.16);right:-120px;top:-120px;transition:transform .6s var(--ease)}
.directory-card:hover{background:var(--ink);color:var(--ivory);border-color:var(--ink);transform:translateY(-6px)}.directory-card:hover::before{transform:scale(1.2)}
.directory-card>span{font:600 9px var(--ui);letter-spacing:.16em;color:var(--gold-dark)}.directory-card h2{font-size:50px;max-width:500px;margin-top:auto;margin-bottom:24px}.directory-card p{color:var(--muted);max-width:520px;transition:color .5s}.directory-card:hover p,.dark-card p{color:rgba(244,240,231,.55)}.directory-card>i{font-style:normal;margin-top:26px;text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:var(--gold-dark)}
.directory-card.dark-card{background:var(--ink);color:var(--ivory)}
.treatment-section{background:var(--ink-2);color:var(--ivory)}
.treatment-grid,.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.treatment-grid>div,.method-grid>div{padding:34px;border:1px solid var(--line-dark);min-height:300px;display:flex;flex-direction:column}.treatment-grid span,.method-grid span{font:600 9px var(--ui);letter-spacing:.16em;color:var(--gold-2)}.treatment-grid h3,.method-grid h3{margin-top:auto;margin-bottom:16px}.treatment-grid p,.method-grid p{color:rgba(244,240,231,.55);line-height:1.75}
.research-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:120px;align-items:center}.research-layout h2{margin:20px 0 30px}.research-layout>div:first-child>p:last-child{font-size:18px;color:var(--muted);line-height:1.8}.trial-cloud{display:flex;flex-wrap:wrap;gap:10px}.trial-cloud span{padding:13px 16px;border:1px solid var(--line-light);text-transform:uppercase;letter-spacing:.12em;font:600 8px var(--ui);transition:.35s}.trial-cloud span:hover{background:var(--ink);color:var(--ivory);border-color:var(--ink)}

/* Condition pages */
.condition-hero{background:var(--ink);color:var(--ivory);padding:100px 0 110px;position:relative;overflow:hidden}.condition-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 50%,rgba(39,100,82,.23),transparent 36%);pointer-events:none}.condition-hero-layout{display:grid;grid-template-columns:1fr .75fr;gap:80px;align-items:center;z-index:2}.condition-hero h1{font-size:clamp(60px,7vw,100px);margin:24px 0 30px;max-width:900px}.condition-hero-layout>div:first-child>p:last-child{font-size:19px;line-height:1.8;color:rgba(244,240,231,.58);max-width:700px}
.condition-visual{min-height:490px;position:relative;display:grid;place-items:center}.target-system{width:360px;height:360px;border:1px solid rgba(224,197,143,.24);border-radius:50%;position:relative;display:grid;place-items:center}.target-system::before,.target-system::after,.target-system i{content:"";position:absolute;border-radius:50%;border:1px solid rgba(224,197,143,.16)}.target-system::before{inset:48px}.target-system::after{inset:96px}.target-system i:nth-child(1){inset:-26px;border-style:dashed}.target-system i:nth-child(2){left:50%;top:-40px;width:1px;height:440px;border:0;background:rgba(224,197,143,.16)}.target-system i:nth-child(3){top:50%;left:-40px;height:1px;width:440px;border:0;background:rgba(224,197,143,.16)}.target-system span{width:18px;height:18px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 14px rgba(199,165,106,.11),0 0 70px rgba(199,165,106,.5)}
.gi-visual{border:1px solid rgba(224,197,143,.14);clip-path:polygon(10% 0,100% 0,100% 90%,90% 100%,0 100%,0 10%)}.anatomy-line{width:160px;height:300px;border:1px solid rgba(224,197,143,.32);border-radius:50% 50% 45% 55%/30% 30% 70% 70%;transform:rotate(14deg);position:relative}.anatomy-line::after{content:"";position:absolute;right:-70px;top:45%;width:110px;height:150px;border-left:1px solid rgba(224,197,143,.28);border-radius:50%}.pulse-node{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 8px rgba(199,165,106,.12)}.n1{left:43%;top:28%}.n2{left:59%;top:48%}.n3{left:48%;top:68%}
.sabr-rings{width:390px;height:390px;position:relative;display:grid;place-items:center}.sabr-rings i{position:absolute;border-radius:50%;border:1px solid rgba(224,197,143,.22)}.sabr-rings i:nth-child(1){inset:0;border-style:dashed}.sabr-rings i:nth-child(2){inset:50px}.sabr-rings i:nth-child(3){inset:100px;border-color:rgba(141,167,154,.32)}.sabr-rings i:nth-child(4){left:50%;top:-25px;height:440px;width:1px;border:0;background:rgba(224,197,143,.14)}.sabr-rings::after{content:"";position:absolute;top:50%;left:-25px;width:440px;height:1px;background:rgba(224,197,143,.14)}.sabr-rings span{width:24px;height:24px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 15px rgba(199,165,106,.1),0 0 90px rgba(224,197,143,.8)}
.complex-lines{width:390px;height:390px;position:relative}.complex-lines i{position:absolute;inset:50%;border:1px solid rgba(224,197,143,.2);transform-origin:0 0}.complex-lines i:nth-child(1){width:300px;transform:rotate(0deg)}.complex-lines i:nth-child(2){width:300px;transform:rotate(90deg)}.complex-lines i:nth-child(3){width:300px;transform:rotate(45deg)}.complex-lines i:nth-child(4){width:300px;transform:rotate(-45deg)}.complex-lines::before,.complex-lines::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(224,197,143,.22)}.complex-lines::before{inset:40px}.complex-lines::after{inset:110px;border-style:dashed}
.two-column{display:grid;grid-template-columns:.8fr 1.2fr;gap:120px}.two-column h2{margin-top:20px}.two-column>div:last-child>p{font-size:18px;color:var(--muted);line-height:1.85;margin-bottom:20px}.condition-list-section{background:var(--ink-2);color:var(--ivory)}.condition-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin-top:44px}.condition-list span{min-height:145px;padding:28px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);display:flex;align-items:flex-end;font:300 28px/1.2 var(--display)}
.method-section .split-heading>p{color:var(--muted)}.method-grid>div{border-color:var(--line-light);color:var(--ink)}.method-grid p{color:var(--muted)}.method-grid span{color:var(--gold-dark)}
.innovation-band{background:#071815;color:var(--ivory)}.innovation-band .two-column>div:last-child>p{color:rgba(244,240,231,.6)}.innovation-band ul,.second-opinion ul{list-style:none;border-top:1px solid var(--line-dark)}.innovation-band li,.second-opinion li{padding:17px 0;border-bottom:1px solid var(--line-dark);font:300 24px var(--display);position:relative;padding-left:30px}.innovation-band li::before,.second-opinion li::before{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--gold);left:0;top:30px}.second-opinion ul{border-color:var(--line-light);margin-top:28px}.second-opinion li{border-color:var(--line-light);font-size:20px}.second-opinion li::before{top:27px}

/* Care */
.journey-section{overflow:hidden}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:70px;position:relative}.journey-line{position:absolute;left:10%;right:10%;top:176px;height:1px;background:var(--line-light)}.journey-line::after{content:"";position:absolute;left:0;top:0;height:1px;width:33%;background:var(--gold)}.journey-step{position:relative}.journey-step>span{width:78px;height:78px;border-radius:50%;border:1px solid var(--line-light);display:grid;place-items:center;background:var(--ivory);font:600 9px var(--ui);letter-spacing:.15em;color:var(--gold-dark);margin-bottom:64px;position:relative;z-index:2}.journey-step h2{font-size:46px;margin-bottom:18px}.journey-step p{color:var(--muted);line-height:1.8}
.right-place-section{background:var(--ink-2);color:var(--ivory)}.right-place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.right-place-grid>div{min-height:300px;border:1px solid var(--line-dark);padding:34px;display:flex;flex-direction:column}.right-place-grid span{font:600 9px var(--ui);color:var(--gold-2)}.right-place-grid h3{margin-top:auto;margin-bottom:16px}.right-place-grid p{color:rgba(244,240,231,.52);line-height:1.75}
.testimonials-section h2{margin:20px 0 60px}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.testimonials-grid blockquote{padding:34px;border:1px solid var(--line-light);min-height:390px;display:flex;flex-direction:column}.testimonials-grid blockquote>span{color:var(--gold-dark);letter-spacing:.15em;font-size:11px}.testimonials-grid p{font:300 25px/1.42 var(--display);margin:34px 0}.testimonials-grid footer{margin-top:auto;text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:var(--muted)}
.appointment-section{background:#071815;color:var(--ivory)}.appointment-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:120px}.appointment-layout h2{margin:20px 0 25px}.appointment-layout>div p:last-child{color:rgba(244,240,231,.55);font-size:18px}.appointment-layout ul{list-style:none;border-top:1px solid var(--line-dark)}.appointment-layout li{padding:22px 0;border-bottom:1px solid var(--line-dark);font:300 28px var(--display)}

/* Locations */
.locations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.location-card{min-height:480px;padding:36px;border:1px solid var(--line-light);display:flex;flex-direction:column}.location-card-dark{background:var(--ink);color:var(--ivory);border-color:var(--ink)}.location-top{display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:var(--gold-dark)}.location-card-dark .location-top{color:var(--gold-2)}.location-card h2{font-size:40px;margin-top:80px;margin-bottom:22px}.location-card p{color:var(--muted);max-width:500px}.location-card-dark p{color:rgba(244,240,231,.54)}.location-card address{font-style:normal;margin-top:auto;margin-bottom:26px;color:var(--muted)}.location-card-dark address{color:rgba(244,240,231,.54)}
.insurance-section{background:var(--ink-2);color:var(--ivory)}.insurance-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:100px;align-items:center}.insurance-layout h2{margin:20px 0 25px}.insurance-layout>div:first-child p:last-child{color:rgba(244,240,231,.55);font-size:18px}.insurer-list{display:flex;flex-wrap:wrap;gap:10px}.insurer-list span{padding:16px 20px;border:1px solid var(--line-dark);font:500 13px var(--ui);color:rgba(244,240,231,.74)}
.network-section .two-column>div:last-child a:not(.button){color:var(--gold-dark);font-weight:600}.network-section .button{margin-top:20px}

/* Contact */
.contact-hero{background:var(--ink);color:var(--ivory);min-height:calc(100vh - 116px);padding:100px 0 120px;position:relative;overflow:hidden}.contact-radiance{position:absolute;width:900px;height:900px;border-radius:50%;right:-420px;top:-380px;background:radial-gradient(circle,rgba(37,96,78,.35),transparent 64%);border:1px solid rgba(224,197,143,.09);box-shadow:0 0 0 100px rgba(224,197,143,.02),0 0 0 200px rgba(224,197,143,.015)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;align-items:start}.contact-intro h1{font-size:clamp(56px,7vw,96px);margin:24px 0 30px}.contact-intro>p:not(.breadcrumb):not(.eyebrow){font-size:18px;color:rgba(244,240,231,.56);line-height:1.8}.contact-details{margin-top:55px;border-top:1px solid var(--line-dark)}.contact-details>a,.contact-details>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line-dark)}.contact-details span{text-transform:uppercase;letter-spacing:.15em;font:600 8px var(--ui);color:var(--gold-2)}.contact-details strong{font-weight:400;color:rgba(244,240,231,.78)}


/* Footer */
.site-footer{background:#030c0a;color:var(--ivory);padding:100px 0 34px;position:relative;overflow:hidden}.footer-top{display:grid;grid-template-columns:1.4fr .55fr .65fr;gap:90px;padding-bottom:70px}.footer-brand .brand-mark{margin-bottom:30px}.footer-brand h2{font-size:54px}.footer-brand p{color:rgba(244,240,231,.45);max-width:500px;margin-top:22px}.footer-links{display:flex;flex-direction:column;align-items:flex-start}.footer-links h3{font:600 8px var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2);margin-bottom:24px}.footer-links a{font-size:13px;color:rgba(244,240,231,.56);padding:7px 0;transition:color .3s}.footer-links a:hover{color:var(--ivory)}.footer-bottom{padding-top:28px;border-top:1px solid var(--line-dark);display:flex;justify-content:space-between;color:rgba(244,240,231,.35);font:500 9px var(--ui);letter-spacing:.08em}
.back-to-top{position:fixed;right:24px;bottom:24px;width:52px;height:52px;border:1px solid rgba(244,240,231,.18);background:rgba(7,22,19,.8);color:var(--gold-2);border-radius:50%;z-index:55;opacity:0;transform:translateY(20px);pointer-events:none;transition:.4s var(--ease);backdrop-filter:blur(12px)}.back-to-top.show{opacity:1;transform:none;pointer-events:auto}.back-to-top:hover{background:var(--gold);color:var(--ink)}

/* Responsive */

/* ===== luxe additions ===== */
.curtain-panel{position:absolute;inset:0;background:linear-gradient(170deg,var(--ink-2),var(--ink));z-index:4;transform-origin:top;pointer-events:none}
@media(prefers-reduced-motion:reduce){.curtain-panel{display:none}}
::selection{background:var(--gold);color:var(--ink)}
::-webkit-scrollbar{width:9px}::-webkit-scrollbar-track{background:var(--ink)}::-webkit-scrollbar-thumb{background:var(--gold-dark);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--gold)}
.metric-of{font:400 22px var(--display);color:var(--gold-2);font-style:normal;margin-left:2px}

/* silk texture: layered gradients + fine noise */
.silk{position:relative;background:radial-gradient(120% 90% at 12% 8%,#16352c 0%,var(--ink-2) 48%,var(--ink) 100%)}
.silk::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background:radial-gradient(70% 46% at 82% 100%,rgba(199,165,106,.11),transparent 62%),radial-gradient(46% 34% at 4% 92%,rgba(141,167,154,.08),transparent 60%),linear-gradient(112deg,transparent 42%,rgba(224,197,143,.05) 50%,transparent 58%)}
.silk::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}

/* cursor spotlight on dark surfaces */
.spot{--mx:50%;--my:50%}
.spot .spot-glow{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .45s;background:radial-gradient(340px circle at var(--mx) var(--my),rgba(224,197,143,.13),transparent 72%);z-index:1}
.spot.spot-on .spot-glow{opacity:1}

/* featured patient story */
.patient-story{display:grid;grid-template-columns:.82fr 1.18fr;margin:74px 0 84px;color:var(--ivory);overflow:hidden}
.patient-story>*{position:relative;z-index:2}
.story-media{padding:46px;display:flex;flex-direction:column;gap:22px;border-right:1px solid rgba(224,197,143,.14)}
.story-photo{position:relative;aspect-ratio:4/4.6;overflow:hidden;background:linear-gradient(160deg,#123129,#0b211c)}
.story-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.2)}
.story-caption strong{display:block;font:400 21px var(--display);color:var(--ivory)}
.story-caption span{font-size:13px;color:rgba(244,240,231,.5)}
.story-body{padding:52px 54px}
.story-quote p{font:300 clamp(27px,2.9vw,42px)/1.2 var(--display);letter-spacing:-.02em;color:var(--gold-2);margin:20px 0 26px}
.story-text p{color:rgba(244,240,231,.62);max-width:560px;margin-bottom:16px;font-size:15.5px;line-height:1.72}
.story-body .text-link{color:var(--gold-2);margin-top:10px}
@media(max-width:900px){.patient-story{grid-template-columns:1fr}.story-media{border-right:0;border-bottom:1px solid rgba(224,197,143,.14);padding:34px}.story-body{padding:36px 30px}.story-photo{max-width:320px}}

/* review portals */
.review-actions{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:72px;padding-top:58px;border-top:1px solid var(--line-light)}
.review-actions-copy h3{font:300 34px var(--display);letter-spacing:-.02em;margin:12px 0 10px}
.review-actions-copy p:last-child{color:var(--muted);max-width:400px}
.review-actions-links{display:flex;flex-direction:column;gap:12px}
.review-portal{position:relative;display:flex;align-items:center;gap:16px;padding:22px 26px;border:1px solid var(--line-dark);color:var(--ink);text-decoration:none;transition:.35s;overflow:hidden}
.review-portal::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateX(-101%);transition:transform .45s cubic-bezier(.65,0,.35,1)}
.review-portal:hover::before{transform:translateX(0)}
.review-portal>*{position:relative;z-index:1;transition:color .35s}
.review-portal .rp-name{font:400 23px var(--display)}
.review-portal .rp-sub{font:600 9px var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dark);margin-left:auto}
.review-portal i{font-style:normal;color:var(--gold-dark)}
.review-portal:hover .rp-name{color:var(--ivory)}.review-portal:hover .rp-sub,.review-portal:hover i{color:var(--gold-2)}
@media(max-width:900px){.review-actions{grid-template-columns:1fr;gap:26px}}

/* video feature */
.video-section{background:var(--ink);color:var(--ivory);position:relative;overflow:hidden}
.video-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;position:relative;z-index:2}
.video-copy{color:rgba(244,240,231,.6);max-width:460px;margin-top:22px}
.video-src{font:600 9px var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dark);margin-top:22px}
.video-frame{position:relative;aspect-ratio:16/9;border:1px solid rgba(224,197,143,.2);background:rgba(224,197,143,.03)}
.video-frame::before{content:"";position:absolute;width:22px;height:22px;border-top:1px solid var(--gold);border-left:1px solid var(--gold);top:-1px;left:-1px}
.video-frame::after{content:"";position:absolute;width:22px;height:22px;border-bottom:1px solid var(--gold);border-right:1px solid var(--gold);bottom:-1px;right:-1px}
.video-poster{position:absolute;inset:12px;background-size:cover;background-position:center;cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:hidden}
.video-poster::before{content:"";position:absolute;inset:0;background:linear-gradient(165deg,rgba(7,22,19,.28),rgba(7,22,19,.62));transition:.5s}
.video-poster:hover::before{background:linear-gradient(165deg,rgba(7,22,19,.14),rgba(7,22,19,.5))}
.video-play{position:relative;z-index:2;width:86px;height:86px;border-radius:50%;background:rgba(244,240,231,.94);display:flex;align-items:center;justify-content:center;transition:.4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 22px 48px -14px rgba(0,0,0,.6)}
.video-poster:hover .video-play{transform:scale(1.1);background:var(--gold-2)}
.video-play i{width:0;height:0;border-left:24px solid var(--ink);border-top:15px solid transparent;border-bottom:15px solid transparent;margin-left:6px}
.video-play::before{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px solid rgba(244,240,231,.65);animation:playpulse 2.6s ease-out infinite}
@keyframes playpulse{0%{transform:scale(1);opacity:.8}70%{transform:scale(1.55);opacity:0}100%{opacity:0}}
.video-tag{position:absolute;left:22px;bottom:20px;z-index:2;color:#fff;font-size:12px;text-shadow:0 1px 10px rgba(0,0,0,.6)}
.video-tag strong{display:block;font:400 18px var(--display)}
.video-frame iframe{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);border:0}
@media(max-width:900px){.video-layout{grid-template-columns:1fr;gap:38px}}


.form-disclaimer{font-size:11px;line-height:1.65;color:rgba(244,240,231,.45);margin-top:24px;padding-top:20px;border-top:1px solid rgba(224,197,143,.16)}

/* ===== contact call panel ===== */
.contact-call{position:relative;display:flex;align-items:center;justify-content:center;border:1px solid rgba(224,197,143,.22);background:rgba(224,197,143,.04);padding:54px 46px;border-radius:2px}
.contact-call::before,.contact-call::after{content:"";position:absolute;width:22px;height:22px}
.contact-call::before{top:-1px;left:-1px;border-top:1px solid var(--gold);border-left:1px solid var(--gold)}
.contact-call::after{bottom:-1px;right:-1px;border-bottom:1px solid var(--gold);border-right:1px solid var(--gold)}
.contact-call-inner{text-align:center;max-width:400px}
.call-number{display:block;font:300 clamp(38px,4.6vw,60px)/1.05 var(--display);letter-spacing:-.02em;color:var(--ivory);text-decoration:none;margin:20px 0 18px;transition:color .4s}
.call-number:hover{color:var(--gold-2)}
.call-note{color:rgba(244,240,231,.62);font-size:15.5px;line-height:1.7;margin-bottom:28px}
.call-cta{margin-bottom:26px}
@media(max-width:900px){.contact-call{padding:40px 26px}}

/* ===== craft pass ===== */
.scroll-progress{position:fixed;top:0;left:0;height:2px;width:100%;z-index:1200;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--gold-dark),var(--gold-2));pointer-events:none}

/* nav underline draw */
.desktop-nav a{position:relative}
.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--gold-2);transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.65,0,.35,1)}
.desktop-nav a:hover::after,.desktop-nav a.active::after{transform:scaleX(1);transform-origin:left}

/* button gold shine sweep */
.button::after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-18deg);transition:left .7s cubic-bezier(.65,0,.35,1);z-index:1;pointer-events:none}
.button:hover::after{left:125%}

/* text-link arrow nudge */
.text-link:hover i{transform:translateX(7px)}

/* card hover physics */
.expertise-card,.leadership-card,.directory-card,.location-card,.testimonials-grid blockquote,.metric{transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s,border-color .55s,background .55s}
.expertise-card:hover{border-color:rgba(199,165,106,.45)}
.leadership-card:hover,.directory-card:hover{transform:translateY(-7px);border-color:rgba(199,165,106,.45)}
.location-card:hover{transform:translateY(-7px);border-color:rgba(199,165,106,.55);box-shadow:0 34px 60px -30px rgba(7,22,19,.35)}
.testimonials-grid blockquote:hover{transform:translateY(-6px);border-color:rgba(141,111,52,.4);box-shadow:0 30px 55px -32px rgba(7,22,19,.28)}
.metric:hover{transform:translateY(-5px)}

/* form focus: gold underline grows from left */

/* back-to-top arrow lift */
.back-to-top i,.back-to-top span{display:inline-block;transition:transform .35s}
.back-to-top:hover i,.back-to-top:hover span{transform:translateY(-3px)}

/* portrait breathing shadow */
@keyframes breathe-shadow{0%,100%{box-shadow:0 60px 110px -30px rgba(0,0,0,.55)}50%{box-shadow:0 70px 130px -30px rgba(0,0,0,.65)}}
.portrait-frame{animation:breathe-shadow 7s ease-in-out infinite}

@media(prefers-reduced-motion:reduce){.scroll-progress,.button::after,.video-play::before{display:none}.portrait-frame{animation:none}}

@media(max-width:1120px){
  :root{--shell:min(100% - 56px,1080px)}
  .desktop-nav{display:none}.menu-toggle{display:block}.mobile-menu{display:block}
  .hero-grid-layout{gap:30px;grid-template-columns:1fr .8fr}.hero-visual{min-height:500px}.hero-title{font-size:clamp(62px,8vw,96px)}
  .intro-layout{grid-template-columns:100px 1fr}.intro-copy{grid-column:2}.split-heading{gap:50px}.profile-grid,.metrics-layout,.timeline-layout,.approach-layout,.research-layout,.contact-grid{gap:70px}
  .condition-hero-layout{grid-template-columns:1fr .6fr}.condition-visual{min-height:400px;transform:scale(.85)}
}
@media(max-width:900px){
  :root{--shell:calc(100% - 44px)}
  .utility-centre{display:none}.section{padding:100px 0}.hero{padding:80px 0 90px}.hero-grid-layout{grid-template-columns:1fr}.hero-copy{padding-top:20px}.hero-title{max-width:760px}.hero-visual{min-height:530px;width:min(600px,100%);margin:10px auto 0}.hero-line-accent{margin-left:0}.hero-trust{max-width:100%}
  .intro-layout{grid-template-columns:1fr}.section-index{display:none}.intro-copy{grid-column:auto}.expertise-grid,.leadership-grid,.treatment-grid,.method-grid,.right-place-grid,.testimonials-grid{grid-template-columns:1fr}.expertise-card{min-height:400px}.metrics-layout,.profile-grid,.timeline-layout,.approach-layout,.research-layout,.insurance-layout,.appointment-layout,.contact-grid,.two-column{grid-template-columns:1fr}.testimonial-layout{grid-template-columns:90px 1fr}.quote-rating{display:none}.cta-layout,.page-hero-layout{grid-template-columns:1fr;gap:50px}.page-hero-layout>p{max-width:700px}.directory-grid,.locations-grid{grid-template-columns:1fr}.timeline-intro{position:relative;top:auto}.condition-hero-layout{grid-template-columns:1fr}.condition-visual{min-height:360px}.condition-list{grid-template-columns:1fr 1fr}.journey-grid{grid-template-columns:1fr;gap:50px}.journey-line{display:none}.journey-step>span{margin-bottom:24px}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media(max-width:620px){
  :root{--shell:calc(100% - 32px);--header-h:72px}
  body{font-size:15px}.cursor{display:none}.utility-bar{display:none}.brand-copy small{display:none}.nav-shell .button{display:none}.site-header{top:0}.hero{min-height:auto;padding-top:72px}.hero-title{font-size:clamp(54px,17vw,78px)}.hero-line-accent{margin-left:0}.hero-lede{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.button{width:100%;min-width:0}.hero-trust{grid-template-columns:1fr;margin-top:42px}.hero-trust>div{border-right:0;border-bottom:1px solid var(--line-dark);margin:0;padding:17px 0}.hero-visual{min-height:440px}.portrait-frame{width:72%}.hero-scroll{display:none}.affiliations{height:74px}.affiliations-label{display:none}.section{padding:80px 0}h2{font-size:clamp(39px,12vw,56px)}.split-heading{grid-template-columns:1fr;gap:28px;margin-bottom:46px}.intro-heading h2{font-size:48px}.intro-copy>p{font-size:16px}.micro-facts>div,.facts-table>div,.contact-details>a,.contact-details>div{grid-template-columns:1fr;gap:4px}.expertise-card{padding:24px}.card-icon{margin:38px 0 25px}.metrics-grid{grid-template-columns:1fr}.metric{min-height:155px}.testimonial-layout{grid-template-columns:1fr}.quote-mark{font-size:100px}.testimonial-feature blockquote p{font-size:34px}.cta-layout{grid-template-columns:1fr;gap:35px}.page-hero{padding:80px 0}.page-hero h1,.condition-hero h1,.contact-intro h1{font-size:clamp(50px,14vw,74px)}.profile-review{right:-5px}.leadership-card{min-height:290px}.timeline-item{grid-template-columns:1fr;gap:8px}.approach-list li{grid-template-columns:40px 1fr}.approach-list p{font-size:21px}.directory-card{min-height:330px;padding:26px}.directory-card h2{font-size:42px}.condition-hero{padding:80px 0}.condition-visual{min-height:300px;transform:scale(.72);margin:-20px}.condition-list{grid-template-columns:1fr}.condition-list span{min-height:100px}.journey-step h2{font-size:40px}.testimonials-grid blockquote{min-height:320px}.location-card{min-height:460px;padding:28px}.location-card h2{font-size:46px;margin-top:65px}.footer-top{grid-template-columns:1fr;gap:46px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:10px}.mobile-menu{padding-top:120px}.mobile-menu-footer{flex-direction:column;gap:8px}.loader-name{font-size:46px;flex-direction:column;gap:0}.loader-progress{width:180px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  [data-reveal]{opacity:1!important;transform:none!important}.cursor{display:none}.noise{display:none}
}


/* Progressive enhancement: every page is readable before JavaScript runs. */
.page{display:block}
[data-reveal]{opacity:1;transform:none}
.curtain-panel,.loader,.page-transition,.cursor{display:none!important}
.mobile-menu{visibility:hidden;transform:translateY(-105%);transition:transform .4s var(--ease),visibility .4s;overflow-y:auto;overscroll-behavior:contain}
.mobile-menu.is-open{visibility:visible;transform:translateY(0)}
.mobile-menu nav{padding-bottom:120px}
.mobile-menu-footer{position:relative;bottom:auto;left:auto;right:auto;margin-top:32px;gap:24px}
body.menu-open{overflow:hidden}
:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
main:focus{outline:none}
address{font-style:normal}
details summary{cursor:pointer}
.editorial-page .page-hero h1{max-width:1050px;font-size:clamp(46px,6.4vw,88px);line-height:1.06}
.editorial-intro{max-width:770px;font-size:clamp(18px,2vw,22px);line-height:1.7;color:#c7cec6;margin-top:32px}
.editorial-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:90px;align-items:start}
.editorial-copy{max-width:820px;min-width:0}
.editorial-block{margin-bottom:52px}
.editorial-block h2{font-size:clamp(32px,3.4vw,46px);line-height:1.12;margin-bottom:24px}
.editorial-copy p,.editorial-copy address{margin:0 0 20px;line-height:1.85;font-size:17px;color:#514f47}
.editorial-copy ul{padding-left:24px;margin:20px 0;line-height:1.85;color:#514f47}
.editorial-copy li{padding:5px 0}
.editorial-copy a:not(.button){text-decoration:underline;text-underline-offset:4px;text-decoration-color:#9b814f}
.editorial-copy a:hover{color:#6e521d}
.appointment-aside{position:sticky;top:130px;background:var(--ink);padding:34px;color:var(--ivory);border-top:2px solid var(--gold)}
.appointment-aside .eyebrow{color:var(--gold-2)}
.appointment-aside h2{font-size:38px;line-height:1.1;margin:22px 0}
.appointment-aside p{font-size:15px;color:#c7cec6;margin-bottom:24px;line-height:1.8}
.appointment-aside .button{width:100%;min-width:0;padding-inline:16px;gap:10px;letter-spacing:.06em}
.appointment-aside .text-link{font-size:9px;letter-spacing:.06em}
.appointment-aside .aside-small{font-size:12px;margin-top:20px;margin-bottom:0}
.information-note{padding:24px;border-left:2px solid var(--gold);background:#eee9df;font-size:14px!important}
.patient-faq details{border-top:1px solid var(--line-light);padding:22px 0}
.patient-faq details:last-child{border-bottom:1px solid var(--line-light)}
.patient-faq summary{font-size:18px;font-weight:500;line-height:1.6;padding-right:12px;color:var(--ink)}
.patient-faq details>div{padding-top:20px}
.patient-faq details p{margin-bottom:0}
.source-links{list-style:none;padding-left:0!important}
.source-links li{padding:10px 0}
.related-section{border-top:1px solid var(--line-light)}
.related-section h2{font-size:clamp(38px,4.2vw,62px);line-height:1.1;margin-top:22px;margin-bottom:42px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.related-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #c7c0b1;padding:26px;font-size:17px;transition:background .2s}
.related-card:hover{background:#e8e1d4}
.related-card span:last-child{color:var(--gold-dark)}
.review-source{display:block;margin-top:10px;font-size:11px;text-decoration:underline;text-underline-offset:4px;color:inherit}
.location-detail{margin-top:22px}
.video-poster{background:linear-gradient(135deg,#10342a,#071613)!important}
.video-poster .video-tag{color:var(--ivory)}
.footer-bottom a{text-decoration:underline;text-underline-offset:3px}
.footer-bottom{gap:24px;flex-wrap:wrap}
.nojs-nav{display:flex;flex-wrap:wrap;gap:18px;padding:18px 24px;background:var(--ink);color:var(--ivory)}
.nojs-nav a{text-decoration:underline}
.hero-line{overflow:visible}
.hero-title{font-size:clamp(60px,7.2vw,108px)}
.breadcrumb{flex-wrap:wrap;line-height:1.7}
.brand-copy strong{white-space:nowrap}
@media(min-width:901px){.hero-trust{min-height:118px}}
@media(max-width:1100px){.editorial-layout{gap:45px;grid-template-columns:minmax(0,1fr) 290px}.appointment-aside{padding:26px}.hero-title{font-size:clamp(54px,7.2vw,92px)}}
@media(max-width:900px){.editorial-layout{grid-template-columns:1fr;gap:36px}.appointment-aside{position:static;max-width:600px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-intro{font-size:18px}}
@media(max-width:600px){.related-grid{grid-template-columns:1fr}.editorial-page .page-hero h1{font-size:44px}.editorial-page .page-hero{padding:66px 0}.editorial-block{margin-bottom:38px}.editorial-copy p,.editorial-copy ul{font-size:16px}.related-card{padding:22px}.hero-title{font-size:clamp(48px,13.8vw,76px)}.mobile-menu nav a{font-size:32px;padding:12px 0}.mobile-menu-footer{flex-direction:column;gap:10px}.footer-bottom{font-size:11px}.appointment-aside{padding:26px}.hero-trust{min-height:110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.marquee-track,.affiliations-track{animation:none!important}}
