:root{--ink:#06121b;--navy:#0a1d2a;--navy-2:#102b3c;--paper:#f3f0e9;--cream:#ddd6c9;--gold:#d3b479;--gold-bright:#e5c889;--line:rgba(255,255,255,.16);--muted:#9ca9b1;--serif:"Newsreader",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--display:"Manrope",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--ink);color:#f5f5f2;font-family:var(--sans);font-size:16px;line-height:1.65;overflow-x:hidden}.noise{position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.035;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:fixed;top:0;left:0;width:100%;height:92px;padding:0 clamp(24px,4vw,70px);display:flex;align-items:center;justify-content:space-between;z-index:50;transition:background .35s,height .35s,border-color .35s;border-bottom:1px solid transparent}.site-header.scrolled,.site-header.inner-active{height:74px;background:rgba(6,18,27,.9);backdrop-filter:blur(18px);border-color:var(--line)}.wordmark{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none;line-height:1}.wordmark-mark{width:38px;height:38px;border:1px solid var(--gold);display:grid;place-items:center;font:500 22px var(--serif);color:var(--gold)}.wordmark strong,.wordmark small{display:block;text-transform:uppercase;letter-spacing:.14em}.wordmark strong{font:600 16px var(--display)}.wordmark small{font:500 9px var(--display);color:#b8c0c5;margin-top:5px}.primary-nav{display:flex;align-items:center;gap:34px}.primary-nav a{color:#e8ebed;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:600;position:relative}.primary-nav a:not(.phone-link):after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}.primary-nav a:hover:after,.primary-nav a.active:after{transform:scaleX(1)}.primary-nav .phone-link{padding:10px 16px;border:1px solid rgba(211,180,121,.5);color:var(--gold-bright)}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span:not(.sr-only){display:block;width:26px;height:1px;background:#fff;margin:6px 0}.view{display:none}.view.is-active{display:block;animation:viewIn .55s ease both}@keyframes viewIn{from{opacity:0}to{opacity:1}}.hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:center;overflow:hidden;background:#0a0b0c}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 31%}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,15,.97) 0%,rgba(4,14,22,.85) 31%,rgba(5,13,19,.21) 61%,rgba(2,8,12,.17) 100%),linear-gradient(0deg,rgba(4,12,18,.65),transparent 38%)}.hero-copy{position:relative;z-index:2;width:min(810px,57vw);padding:8vh 0 0 clamp(24px,8vw,145px)}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:600;color:var(--gold);margin:0 0 24px}.eyebrow span{display:inline-block;width:24px;height:1px;background:currentColor;vertical-align:middle;margin:0 10px}.hero h1,.inner-hero h1,.about-hero h1,.contact-copy h1{font:500 clamp(3.5rem,6.8vw,7.4rem)/.91 var(--serif);letter-spacing:-.035em;margin:0;color:#fff}.hero h1 em,.inner-hero h1 em,.about-hero h1 em,.contact-copy h1 em,.section-heading h2 em,.team-copy h2 em,.closing-cta h2 em{font-weight:300;color:var(--gold);font-style:italic}.hero-intro{max-width:580px;color:#c3cbd0;font-size:clamp(1rem,1.25vw,1.18rem);margin:30px 0 0;line-height:1.7}.hero-actions{display:flex;gap:31px;align-items:center;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 25px;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:700;border:0;cursor:pointer;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:var(--ink)}.button-gold:hover{background:var(--gold-bright)}.text-link{color:#fff;text-decoration:none;font-size:.82rem;text-transform:uppercase;letter-spacing:.13em;font-weight:600;border-bottom:1px solid rgba(255,255,255,.35);padding:7px 0}.text-link span{color:var(--gold);margin-left:8px}.scroll-cue{position:absolute;z-index:2;right:clamp(24px,4vw,70px);bottom:42px;text-decoration:none;color:#aab4ba;text-transform:uppercase;letter-spacing:.16em;font-size:.62rem;display:flex;align-items:center;gap:14px;writing-mode:vertical-rl}.scroll-cue i{height:62px;width:1px;background:linear-gradient(var(--gold),transparent)}.credibility{background:#0d2331;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:0 clamp(24px,5vw,90px)}.credibility div{min-height:170px;padding:36px clamp(18px,2.5vw,42px);display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line)}.credibility div:last-child{border-right:0}.credibility strong{font:400 2.1rem var(--serif);color:var(--gold);margin-bottom:6px}.credibility span{color:#aeb9c0;font-size:.82rem;line-height:1.45;max-width:190px}.section-pad{padding:clamp(90px,11vw,180px) clamp(24px,8vw,145px)}.home-intro{background:var(--paper);color:var(--ink)}.home-intro .section-kicker,.about-story .section-kicker{color:#87734f}.editorial-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(50px,9vw,150px);align-items:start}.editorial-grid h2,.section-heading h2,.team-copy h2,.closing-cta h2{font:400 clamp(2.7rem,5vw,5.6rem)/1 var(--serif);letter-spacing:-.03em;margin:0}.intro-body{font-size:1.05rem;max-width:570px;color:#3d464c}.intro-body p:first-child{margin-top:10px}.intro-body p+p{margin-top:28px}.service-story{background:var(--ink)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:80px}.section-heading .section-kicker{align-self:start;min-width:190px}.section-heading h2{width:min(760px,68%)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:70px 1.2fr 1fr 40px;gap:30px;align-items:center;min-height:150px;border-bottom:1px solid var(--line);text-decoration:none;color:#fff;transition:background .25s,padding .25s}.service-row:hover{background:rgba(255,255,255,.035);padding-left:15px}.service-number{font-size:.66rem;letter-spacing:.18em;color:var(--gold)}.service-row h3{font:400 clamp(1.7rem,2.5vw,2.8rem) var(--serif);margin:0}.service-row p{margin:0;color:#9facb4;font-size:.9rem;max-width:390px}.row-arrow{color:var(--gold);font-size:1.25rem}.team-feature{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:1.35fr .65fr;min-height:90vh}.team-image-wrap{position:relative;min-height:650px;overflow:hidden}.team-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center}.image-caption{position:absolute;bottom:20px;left:25px;background:rgba(6,18,27,.85);color:#fff;padding:7px 11px;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase}.team-copy{display:flex;flex-direction:column;justify-content:center;padding:80px clamp(40px,6vw,110px)}.team-copy h2{font-size:clamp(2.8rem,4.4vw,5.1rem)}.team-copy p:not(.section-kicker){color:#4e565a;margin:31px 0;max-width:520px}.dark-link{color:var(--ink);border-color:rgba(6,18,27,.3);align-self:start}.audience{background:#0c2230}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.audience-grid article{min-height:340px;padding:45px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.audience-grid article>span{font-size:.65rem;letter-spacing:.2em;color:var(--gold)}.audience-grid h3{font:400 2rem var(--serif);margin:92px 0 15px}.audience-grid p{color:#aab5bc;font-size:.88rem;max-width:330px}.closing-cta{min-height:66vh;padding:110px clamp(24px,8vw,145px);display:grid;grid-template-columns:1.3fr .7fr;gap:90px;align-items:center;background:linear-gradient(120deg,#07151f,#102d3f)}.closing-action p{color:#b6c0c6;max-width:440px;margin:0 0 30px}.site-footer{background:#040d13;border-top:1px solid var(--line);padding:65px clamp(24px,5vw,85px) 35px;display:grid;grid-template-columns:1.5fr .7fr .8fr;gap:50px}.footer-brand p{max-width:350px;color:#81909a;font-size:.8rem;margin-top:25px}.footer-nav{display:flex;flex-direction:column;gap:12px}.footer-nav a{color:#c7ced2;text-decoration:none;font-size:.82rem}.footer-meta{text-align:right;color:#81909a;font-size:.72rem;display:flex;flex-direction:column;justify-content:flex-end}.inner-view{padding-top:74px;min-height:100vh}.inner-hero{min-height:72vh;padding:15vh clamp(24px,8vw,145px) 10vh;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 80% 35%,#153f57,transparent 40%),linear-gradient(135deg,#06131d,#0a2130)}.inner-hero h1{font-size:clamp(3.5rem,7.2vw,7.8rem);max-width:1200px}.inner-hero>p:last-child{max-width:630px;color:#b5c0c7;font-size:1.04rem;margin:35px 0 0}.services-detail{background:var(--paper);color:var(--ink);padding-top:80px}.services-detail article{display:grid;grid-template-columns:100px 1fr;padding:68px 0;border-bottom:1px solid #c8c3b9}.services-detail article>div{display:grid;grid-template-columns:1fr .9fr .7fr;gap:60px}.services-detail h2{font:400 clamp(2.3rem,3.8vw,4.2rem)/1 var(--serif);margin:0}.services-detail p{margin:0;color:#485158}.services-detail ul{list-style:none;padding:0;margin:0}.services-detail li{padding:7px 0;border-bottom:1px solid #d6d0c5;font-size:.85rem}.closing-cta.compact{min-height:auto;display:flex;justify-content:space-between}.closing-cta.compact h2{font-size:clamp(2.5rem,4vw,4.5rem)}.about-hero{min-height:92vh;position:relative;overflow:hidden;background:#050f16;display:flex;align-items:flex-end}.about-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.about-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,15,.94),rgba(3,10,15,.3) 60%,rgba(3,10,15,.15)),linear-gradient(0deg,rgba(3,10,15,.8),transparent 50%)}.about-hero-copy{position:relative;z-index:2;padding:0 0 11vh clamp(24px,8vw,145px)}.about-hero h1{font-size:clamp(3.4rem,6.5vw,7rem)}.about-story{background:var(--paper);color:var(--ink)}.team-roster{background:#0c2230}.roster-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.roster-grid article{padding:40px;min-height:260px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.roster-grid h3{font:400 2.2rem var(--serif);margin:0 0 7px}.roster-grid p{color:var(--gold);font-size:.75rem;text-transform:uppercase;letter-spacing:.11em}.roster-grid span{display:block;color:#9cabb4;font-size:.84rem;margin-top:55px}.contact-view{background:linear-gradient(120deg,#07151f,#0c2939)}.contact-grid{min-height:calc(100vh - 74px);display:grid;grid-template-columns:1fr 1fr}.contact-copy{padding:clamp(90px,10vw,155px) clamp(24px,7vw,120px)}.contact-copy h1{font-size:clamp(3.4rem,6vw,6.5rem)}.contact-copy>p:not(.eyebrow){max-width:520px;color:#adbac1;margin:35px 0}.contact-details{display:grid;gap:20px;margin-top:55px}.contact-details a,.contact-details span{color:#fff;text-decoration:none;font:400 1.15rem var(--serif)}.contact-details small{display:block;color:var(--gold);font:600 .62rem var(--sans);text-transform:uppercase;letter-spacing:.16em}.contact-form{background:var(--paper);color:var(--ink);padding:clamp(85px,9vw,145px) clamp(24px,6vw,100px);display:flex;flex-direction:column;gap:24px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form label{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;font-weight:600}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #aaa69f;background:transparent;border-radius:0;padding:12px 0;font:1rem var(--sans);color:var(--ink);margin-top:6px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:0;border-color:#7a6640}.contact-form .button{align-self:start;margin-top:8px}.form-note,.form-success{font-size:.73rem;color:#6a706f;margin:0}.form-success{color:#355f4d;font-weight:600}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:72px}.menu-toggle{display:block;position:relative;z-index:3}.primary-nav{position:fixed;inset:0;background:#06151f;display:flex;flex-direction:column;justify-content:center;gap:28px;transform:translateX(100%);transition:transform .35s}.primary-nav.open{transform:none}.primary-nav a{font-size:1.1rem}.hero{min-height:680px}.hero-image{object-position:59% center}.hero-scrim{background:linear-gradient(0deg,rgba(4,12,18,.95) 0%,rgba(4,12,18,.55) 58%,rgba(4,12,18,.15))}.hero-copy{width:100%;padding:22vh 24px 10vh;align-self:flex-end}.hero h1{font-size:clamp(3.2rem,13vw,5rem)}.hero-intro{max-width:88%}.scroll-cue{display:none}.credibility{grid-template-columns:1fr 1fr;padding:0}.credibility div{min-height:140px;border-bottom:1px solid var(--line)}.credibility div:nth-child(2){border-right:0}.editorial-grid{grid-template-columns:1fr;gap:35px}.section-heading{display:block;margin-bottom:50px}.section-heading h2{width:100%}.service-row{grid-template-columns:42px 1fr 25px;gap:15px;padding:30px 0}.service-row p{grid-column:2/3}.row-arrow{grid-column:3;grid-row:1}.team-feature{grid-template-columns:1fr}.team-image-wrap{min-height:55vh}.team-copy{padding:80px 24px}.audience-grid{grid-template-columns:1fr}.audience-grid article{min-height:260px}.audience-grid h3{margin-top:65px}.closing-cta{grid-template-columns:1fr;gap:35px;min-height:70vh}.site-footer{grid-template-columns:1fr;text-align:left}.footer-meta{text-align:left}.services-detail article{grid-template-columns:48px 1fr}.services-detail article>div{grid-template-columns:1fr;gap:24px}.about-hero{min-height:78vh}.about-hero img{object-position:58% center}.roster-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}.contact-copy{padding-top:110px}.contact-form{padding-top:70px}}
@media(max-width:560px){.wordmark strong{font-size:14px}.wordmark-mark{width:34px;height:34px}.hero{min-height:720px}.hero-image{object-position:61% 15%}.hero-copy{padding-top:30vh}.hero h1{font-size:3.25rem}.hero-intro{font-size:.94rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px;margin-top:28px}.credibility{grid-template-columns:1fr}.credibility div{border-right:0;min-height:120px;padding:25px 30px}.section-pad{padding:85px 24px}.editorial-grid h2,.section-heading h2,.team-copy h2,.closing-cta h2{font-size:2.9rem}.service-row h3{font-size:1.65rem}.team-image-wrap{min-height:390px}.team-image-wrap img{object-position:52% center}.audience-grid article{padding:32px}.closing-cta{padding:85px 24px}.site-footer{padding:55px 24px 30px}.inner-hero{min-height:78svh;padding-top:18vh}.inner-hero h1{font-size:3.25rem}.services-detail article{grid-template-columns:1fr}.services-detail article>.service-number{margin-bottom:16px}.services-detail article>div{grid-template-columns:1fr}.closing-cta.compact{align-items:flex-start;flex-direction:column;gap:35px}.about-hero{min-height:80svh}.about-hero:after{background:linear-gradient(0deg,rgba(3,10,15,.92),rgba(3,10,15,.2) 75%)}.about-hero-copy{padding:0 24px 9vh}.about-hero h1{font-size:3.35rem}.roster-grid{grid-template-columns:1fr}.roster-grid article{min-height:220px}.contact-copy{padding:110px 24px 70px}.contact-copy h1{font-size:3.5rem}.contact-form{padding:70px 24px}.field-pair{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.view.is-active{animation:none}*{transition-duration:.01ms!important}}

/* Brand mark and controlled interface icons */
.wordmark{gap:0}
.wordmark img{display:block;width:auto;height:52px;object-fit:contain;transition:height .3s}
.site-header.scrolled .wordmark img,.site-header.inner-active .wordmark img{height:45px}
.row-arrow{font-size:0}

@media(max-width:900px){
  .site-header .wordmark img,.site-header.scrolled .wordmark img,.site-header.inner-active .wordmark img{height:42px}
  .menu-toggle{display:block;position:relative;z-index:53;width:42px;height:42px;margin-right:-8px;padding:0}
  .menu-toggle span:not(.sr-only){position:absolute;left:8px;width:26px;height:1.5px;background:#fff;margin:0;transition:transform .3s,opacity .2s,top .3s}
  .menu-toggle span:nth-child(1){top:12px}.menu-toggle span:nth-child(2){top:20px}.menu-toggle span:nth-child(3){top:28px}
  .menu-toggle[aria-expanded="true"] span:nth-child(1){top:20px;transform:rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] span:nth-child(3){top:20px;transform:rotate(-45deg)}
  .primary-nav{position:fixed;inset:0;width:100vw;height:100dvh;padding:100px 32px 54px;background:rgba(6,21,31,.985);backdrop-filter:blur(20px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:26px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-14px);transition:opacity .28s,visibility .28s,transform .28s;z-index:52}
  .primary-nav.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .primary-nav a{font:400 clamp(2.2rem,10vw,3.4rem)/1 var(--serif);text-transform:none;letter-spacing:-.02em}
  .primary-nav a:not(.phone-link):after{bottom:-5px}
  .primary-nav .phone-link{font:600 .82rem var(--sans);letter-spacing:.13em;text-transform:uppercase;margin-top:15px;padding:13px 17px}
  body.menu-open{overflow:hidden}
}
@media(max-width:560px){.site-header .wordmark img,.site-header.scrolled .wordmark img,.site-header.inner-active .wordmark img{height:38px}}

/* Homepage rhythm refinement */
.service-story{position:relative;background:#06151f;overflow:hidden}
.service-story:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(211,180,121,.12);border-radius:50%;top:-250px;right:-180px;pointer-events:none}
.service-intro{display:grid;grid-template-columns:1.15fr .55fr;gap:clamp(55px,10vw,150px);align-items:end;margin-bottom:78px}
.service-intro h2{font:400 clamp(3rem,5.6vw,6.4rem)/.95 var(--serif);letter-spacing:-.04em;margin:0}
.service-intro h2 em{font-weight:300;color:var(--gold)}
.service-intro>p{color:#9facb4;margin:0 0 8px;max-width:450px}
.service-cards{display:grid;grid-template-columns:1.25fr .75fr;grid-auto-flow:dense;gap:1px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.13)}
.service-card{min-height:330px;padding:42px;background:#0a202e;color:#fff;text-decoration:none;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:background .3s,transform .3s}
.service-card-wide{min-height:400px;background:#0d2939}
.service-card:nth-child(4){grid-column:1}
.service-card:nth-child(3){grid-column:2;grid-row:2}
.service-card:after{content:"";position:absolute;right:-90px;bottom:-90px;width:180px;height:180px;border:1px solid rgba(211,180,121,.2);border-radius:50%;transition:transform .4s}
.service-card:hover{background:#123449}.service-card:hover:after{transform:scale(1.35)}
.service-card .service-number{margin-bottom:auto}
.service-card h3{font:400 clamp(2.2rem,3.4vw,4rem)/1 var(--serif);margin:70px 0 18px;max-width:520px}
.service-card p{color:#9facb4;max-width:520px;margin:0 0 36px}
.card-action{display:flex;align-items:center;gap:9px;color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:.67rem;font-weight:600}

.team-feature{position:relative;display:block;min-height:100svh;background:#050e14;overflow:hidden}
.team-image-wrap{position:absolute;inset:0;min-height:0}
.team-image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,15,.9) 0%,rgba(3,10,15,.28) 60%,rgba(3,10,15,.1)),linear-gradient(0deg,rgba(3,10,15,.78),transparent 48%)}
.team-image-wrap img{object-position:center 48%;transition:transform 1.2s ease}
.team-feature:hover .team-image-wrap img{transform:scale(1.015)}
.team-copy{position:absolute;z-index:2;left:clamp(24px,8vw,145px);bottom:clamp(60px,9vw,130px);width:min(590px,44vw);padding:0;color:#fff;display:block}
.team-copy h2{font-size:clamp(3rem,5.2vw,6rem)}
.team-copy p:not(.section-kicker){color:#c0c9ce;margin:26px 0 32px}
.team-copy .dark-link{color:#fff;border-color:rgba(255,255,255,.35)}
.team-feature .image-caption{left:auto;right:26px;color:#dbe1e4}
.team-feature .image-caption{z-index:2}

.service-card:focus-visible,.audience-grid article:focus-visible,.text-link:focus-visible,.button:focus-visible,.primary-nav a:focus-visible{outline:2px solid var(--gold-bright);outline-offset:5px}

.audience{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(50px,8vw,120px)}
.audience .section-heading{display:block;position:sticky;top:120px;align-self:start;margin:0}
.audience .section-heading .section-kicker{color:#87734f}
.audience .section-heading h2{width:100%;font-size:clamp(3rem,4.8vw,5.4rem)}
.audience .section-heading h2 em{color:#8a7041}
.audience-grid{display:block;border:0}
.audience-grid article{min-height:0;padding:44px 0;display:grid;grid-template-columns:72px 1fr;column-gap:25px;border:0;border-top:1px solid #c9c3b8}
.audience-grid article:last-child{border-bottom:1px solid #c9c3b8}
.audience-grid article>span{grid-row:1 / 3;color:#8a7041;padding-top:7px}
.audience-grid h3{font:400 clamp(1.9rem,2.6vw,3rem)/1.1 var(--serif);margin:0 0 13px}
.audience-grid p{color:#525a5e;font-size:.95rem;margin:0;max-width:500px}

.home-cta{min-height:72vh;display:flex;flex-direction:column;text-align:center;justify-content:center;gap:35px;background:var(--gold);color:var(--ink);position:relative;overflow:hidden}
.home-cta:before,.home-cta:after{content:"";position:absolute;border:1px solid rgba(6,18,27,.16);border-radius:50%;width:420px;height:420px}
.home-cta:before{left:-230px;top:-210px}.home-cta:after{right:-220px;bottom:-230px}
.home-cta .closing-copy,.home-cta .closing-action{position:relative;z-index:1}
.home-cta .section-kicker{color:#56431f}
.home-cta h2{font-size:clamp(3.2rem,6.2vw,7.1rem)}
.home-cta h2 em{color:#fff8e9}
.home-cta .closing-action p{color:#3f392d;margin:0 auto 30px}
.home-cta .button-gold{background:var(--ink);color:#fff}
.home-cta .button-gold:hover{background:#163246}

@media(max-width:900px){
  .service-intro{grid-template-columns:1fr;gap:28px}
  .service-cards{grid-template-columns:1fr 1fr}
  .service-card,.service-card-wide{min-height:340px;padding:32px}
  .service-card:nth-child(4),.service-card:nth-child(3){grid-column:auto;grid-row:auto}
  .team-feature{min-height:820px}
  .team-copy{width:min(620px,75vw)}
  .audience{grid-template-columns:1fr}
  .audience .section-heading{position:static}
  .home-cta{display:flex;min-height:650px;padding-top:100px;padding-bottom:100px}
}
@media(max-width:560px){
  .service-cards{grid-template-columns:1fr}
  .service-card,.service-card-wide{min-height:310px}
  .service-card h3{margin-top:58px}
  .team-feature{min-height:760px}
  .team-image-wrap img{object-position:51% center}
  .team-image-wrap:after{background:linear-gradient(0deg,rgba(3,10,15,.96) 0%,rgba(3,10,15,.35) 66%,rgba(3,10,15,.1))}
  .team-copy{left:24px;right:24px;bottom:65px;width:auto}
  .team-copy h2{font-size:3.1rem}
  .team-feature .image-caption{top:85px;bottom:auto;right:18px}
  .audience-grid article{grid-template-columns:42px 1fr;column-gap:15px}
  .home-cta{min-height:620px}
}

/* Client-led opening story */
.client-story-grid{grid-template-columns:1fr .66fr .72fr;gap:clamp(34px,5vw,78px);align-items:start}
.client-story-grid>h2{position:sticky;top:120px}
.client-story-image{margin:0;position:relative}
.client-story-image:before{content:"";position:absolute;inset:-12px 12px 12px -12px;border:1px solid rgba(93,76,48,.28);pointer-events:none}
.client-story-image img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 46%}
.client-story-image figcaption{font-size:.67rem;text-transform:uppercase;letter-spacing:.16em;color:#756d61;margin-top:16px}
.client-story-grid .intro-body{padding-top:clamp(20px,8vw,115px)}
.client-story-grid .intro-body p:first-child{font:400 clamp(1.45rem,2vw,2rem)/1.35 var(--serif);color:#1f2b31;margin-top:0}

@media(max-width:1050px){.client-story-grid{grid-template-columns:1fr .8fr}.client-story-grid>h2{position:static;grid-column:1 / -1;max-width:820px}.client-story-grid .intro-body{padding-top:30px}}
@media(max-width:650px){.client-story-grid{grid-template-columns:1fr}.client-story-grid>h2{grid-column:auto}.client-story-image{margin-top:10px}.client-story-image img{aspect-ratio:4/5;object-position:center 42%}.client-story-grid .intro-body{padding-top:10px}}

/* Preserve the complete team portrait in the About hero on narrow screens */
@media(max-width:900px){
  .about-hero{min-height:clamp(720px,100svh,940px);padding-top:72px;background:#050f16}
  .about-hero img{inset:72px 0 auto 0;width:100%;height:auto;object-fit:contain;object-position:center top}
  .about-hero:after{background:linear-gradient(0deg,#050f16 0%,rgba(5,15,22,.97) 26%,rgba(5,15,22,.38) 63%,rgba(5,15,22,.06) 100%)}
  .about-hero-copy{padding:0 24px 8vh}
}

/* Show the entire standing team portrait on phones without an oversized section */
.team-image-wrap picture{display:block;width:100%;height:100%}
@media(max-width:560px){
  .team-feature{min-height:650px;background:#050e14}
  .team-image-wrap img{object-fit:contain;object-position:center top;transform:none}
  .team-feature:hover .team-image-wrap img{transform:none}
  .team-image-wrap:after{background:linear-gradient(0deg,#050e14 0%,rgba(5,14,20,.97) 38%,rgba(5,14,20,.18) 70%,rgba(5,14,20,.04) 100%)}
  .team-copy{left:24px;right:24px;bottom:34px;width:auto}
  .team-copy .section-kicker{margin-bottom:14px}
  .team-copy h2{font-size:2.75rem;line-height:.94}
  .team-copy p:not(.section-kicker){font-size:.9rem;line-height:1.55;margin:18px 0 22px}
  .team-feature .image-caption{top:16px;right:16px;bottom:auto}
}

/* Team-led homepage hero, using the original full-viewport structure */
.hero-picture{position:absolute;inset:0;display:block;overflow:hidden}
.hero-picture .hero-image{object-position:center 43%}

/* Image-led team story creates a clear break between services and audiences */
.legacy-feature{padding:0;display:grid;grid-template-columns:1.35fr .65fr;min-height:88vh;background:#071722;position:relative;overflow:hidden}
.legacy-photo{position:relative;min-height:88vh;overflow:hidden}
.legacy-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 68%,rgba(7,23,34,.18))}
.legacy-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center;transition:transform 1.1s ease}
.legacy-feature:hover .legacy-photo img{transform:scale(1.012)}
.legacy-photo .image-caption{z-index:2}
.legacy-copy{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;padding:clamp(70px,8vw,125px) clamp(38px,6vw,95px)}
.legacy-copy h2{font:400 clamp(3rem,5.4vw,6.1rem)/.96 var(--serif);letter-spacing:-.035em;margin:0}
.legacy-copy h2 em{font-weight:300;color:var(--gold)}
.legacy-copy>p:not(.section-kicker){max-width:620px;color:#b4c0c7;margin:30px 0}
.legacy-copy .dark-link{color:#fff;border-color:rgba(255,255,255,.35)}

/* About page team story */
.team-roster-intro{display:grid;grid-template-columns:.55fr 1.05fr .8fr;gap:clamp(35px,6vw,90px);align-items:start;margin-bottom:75px}
.team-roster-intro h2{font:400 clamp(3rem,5vw,5.6rem)/.98 var(--serif);letter-spacing:-.035em;margin:0}
.team-roster-intro h2 em{font-weight:300;color:var(--gold)}
.team-roster-intro>p:last-child{color:#aebbc2;margin:12px 0 0}
.leadership-card{display:grid;grid-template-columns:minmax(320px,.72fr) 1fr;min-height:680px;background:var(--paper);color:var(--ink);margin-bottom:1px}
.leadership-card>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%}
.leadership-card>div{padding:clamp(55px,8vw,120px);display:flex;flex-direction:column;justify-content:center}
.leadership-card h3{font:400 clamp(3rem,5vw,5.6rem)/1 var(--serif);letter-spacing:-.035em;margin:0 0 12px}
.leadership-card .section-kicker{color:#867149}
.leadership-card .role{color:#7f673a;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:600;margin:0 0 30px}
.leadership-card>div>p:last-child{max-width:520px;color:#4d575c;margin:0}
.team-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.team-gallery figure{margin:0;overflow:hidden;background:#071722;aspect-ratio:3/4}
.team-gallery img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .7s ease}
.team-gallery figure:nth-child(3) img{object-position:center 17%}
.team-gallery figure:nth-child(4) img{object-position:center 28%}
.team-gallery figure:hover img{transform:scale(1.025)}

@media(max-width:900px){
  .legacy-feature{grid-template-columns:1fr;min-height:0}
  .legacy-photo{min-height:0;aspect-ratio:1.4/1}
  .legacy-photo img{object-position:right center}
  .legacy-copy{padding:80px 24px 90px}
  .team-roster-intro{grid-template-columns:1fr}
  .team-roster-intro .section-kicker{margin-bottom:0}
  .leadership-card{grid-template-columns:1fr 1fr;min-height:600px}
  .leadership-card>div{padding:55px 40px}
  .team-gallery{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:560px){
  .hero{height:100svh;min-height:720px;background:#050e14}
  .hero-picture{inset:72px -6% auto;height:auto}
  .hero-picture .hero-image{position:static;width:100%;height:auto;object-fit:contain;object-position:center top}
  .hero-scrim{background:linear-gradient(0deg,#050e14 0%,rgba(5,14,20,.97) 40%,rgba(5,14,20,.58) 56%,rgba(5,14,20,.04) 86%)}
  .hero-copy{position:absolute;left:0;right:0;bottom:0;width:100%;padding:0 24px 42px}
  .hero h1{font-size:3.25rem}
  .hero-intro{max-width:100%}
  .legacy-feature{padding:0}
  .legacy-photo{aspect-ratio:1.32/1}
  .legacy-copy h2{font-size:3rem}
  .team-roster-intro{margin-bottom:45px}
  .team-roster-intro h2{font-size:3rem}
  .leadership-card{grid-template-columns:1fr;min-height:0}
  .leadership-card>img{height:auto;aspect-ratio:4/5;object-position:center 24%}
  .leadership-card>div{padding:48px 28px 55px}
  .leadership-card h3{font-size:2.8rem}
  .team-gallery{grid-template-columns:1fr 1fr}
  .team-gallery figure{aspect-ratio:3/4}
}

/* Refined About hero and individual profile cards */
.about-hero{min-height:78vh;display:grid;grid-template-columns:.78fr 1.22fr;grid-template-areas:"copy image";align-items:stretch;background:#050f16}
.about-hero:after{display:none}
.about-hero-copy{grid-area:copy;position:relative;z-index:2;padding:clamp(130px,14vh,180px) clamp(45px,7vw,115px) clamp(75px,10vh,125px);display:flex;flex-direction:column;justify-content:flex-end}
.about-hero-copy:before{content:"";position:absolute;left:clamp(45px,7vw,115px);top:clamp(115px,13vh,165px);width:68px;height:1px;background:var(--gold)}
.about-hero img{grid-area:image;position:static;inset:auto;width:100%;height:100%;object-fit:contain;object-position:center;background:#050f16}
.about-hero h1{font-size:clamp(3.5rem,5.6vw,6.4rem)}

.profile-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.profile-card{grid-column:span 2;background:#081b28;min-width:0}
.profile-card:nth-child(4){grid-column:2 / span 2}
.profile-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 22%}
.profile-card:nth-child(2) img{object-position:center 19%}
.profile-card:nth-child(5) img{object-position:center 28%}
.profile-card>div{padding:30px 28px 34px;min-height:235px}
.profile-card h3{font:400 clamp(1.9rem,2.5vw,2.7rem)/1 var(--serif);margin:0 0 9px}
.profile-card p{color:var(--gold);font-size:.7rem;text-transform:uppercase;letter-spacing:.11em;line-height:1.5;margin:0}
.profile-card span{display:block;color:#9fadb5;font-size:.86rem;line-height:1.55;margin-top:25px}

@media(max-width:900px){
  .about-hero{min-height:0;display:grid;grid-template-columns:1fr;grid-template-areas:"image" "copy";padding-top:0}
  .about-hero img{width:100%;height:auto;aspect-ratio:1.4/1;object-fit:contain}
  .about-hero-copy{padding:70px 24px 85px}
  .about-hero-copy:before{left:24px;top:45px}
  .profile-grid{grid-template-columns:repeat(2,1fr)}
  .profile-card,.profile-card:nth-child(4){grid-column:span 1}
}

@media(max-width:560px){
  .about-hero img{aspect-ratio:1.35/1}
  .about-hero h1{font-size:3.25rem}
  .profile-grid{grid-template-columns:1fr}
  .profile-card,.profile-card:nth-child(4){grid-column:1}
  .profile-card>div{min-height:0;padding:27px 24px 31px}
}

/* Legal pages */
.policy-view{background:var(--paper);color:var(--ink)}
.policy-hero{padding:clamp(125px,16vh,185px) clamp(24px,8vw,145px) clamp(60px,8vw,100px);background:linear-gradient(135deg,#06131d,#0c2b3d);color:#fff}
.policy-hero h1{font:400 clamp(3.4rem,6.5vw,6.7rem)/.95 var(--serif);letter-spacing:-.035em;margin:0}
.policy-hero>p:last-child{margin:25px 0 0;color:#aeb9c0;font-size:.82rem}
.policy-content{width:min(820px,calc(100% - 48px));margin:0 auto;padding:clamp(70px,9vw,120px) 0}
.policy-content>p:first-child{font:400 clamp(1.35rem,2vw,1.75rem)/1.5 var(--serif);color:#25323a;margin-top:0}
.policy-content h2{font:400 clamp(1.8rem,2.7vw,2.5rem)/1.1 var(--serif);margin:52px 0 13px}
.policy-content p{color:#475159;margin:0 0 18px}
.policy-content a{color:#755f37;text-underline-offset:3px}

@media(max-width:560px){
  .policy-hero{padding:125px 24px 65px}
  .policy-hero h1{font-size:3.25rem}
  .policy-content{width:calc(100% - 48px);padding:65px 0 80px}
  .policy-content h2{margin-top:42px}
}

/* Password screen */
body.site-locked{overflow:hidden}
body.site-locked>.noise,
body.site-locked>.site-header,
body.site-locked>main,
body.site-locked>.site-footer{visibility:hidden}
.lock-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;min-height:100svh;padding:40px 24px;background:radial-gradient(circle at 78% 22%,rgba(29,87,115,.55),transparent 34%),linear-gradient(135deg,#041018,#0b2737);overflow:auto}
.lock-screen[hidden]{display:none}
.lock-screen:before{content:"";position:absolute;inset:0;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none}
.lock-panel{position:relative;width:min(610px,100%);padding:clamp(38px,6vw,70px);border:1px solid rgba(211,180,121,.32);background:rgba(4,16,24,.78);box-shadow:0 35px 90px rgba(0,0,0,.35);backdrop-filter:blur(16px)}
.lock-logo{display:block;width:min(245px,72%);height:auto;margin:0 0 clamp(48px,7vw,72px)}
.lock-kicker{margin:0 0 17px;color:var(--gold);font-size:.72rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase}
.lock-panel h1{margin:0;color:#fff;font:400 clamp(2.85rem,6vw,4.9rem)/.96 var(--serif);letter-spacing:-.035em}
.lock-panel h1 em{color:var(--gold);font-weight:300}
.lock-form{margin-top:45px}
.lock-form label{display:block;margin-bottom:9px;color:#b8c3c9;font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.lock-field{display:grid;grid-template-columns:1fr auto;gap:12px}
.lock-field input{min-width:0;height:54px;padding:0 17px;border:1px solid rgba(255,255,255,.24);border-radius:0;background:rgba(255,255,255,.06);color:#fff;font:1rem var(--sans)}
.lock-field input:focus{outline:2px solid var(--gold);outline-offset:2px;border-color:var(--gold)}
.lock-error{margin:15px 0 0;color:#f0b7aa;font-size:.82rem}
.lock-form.is-invalid{animation:lockShake .28s ease}
.lock-footer{position:absolute;bottom:22px;margin:0;color:#71838e;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}
@keyframes lockShake{25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}

@media(max-width:560px){
  .lock-screen{place-items:center;padding:22px}
  .lock-panel{padding:36px 25px}
  .lock-logo{width:210px;margin-bottom:45px}
  .lock-panel h1{font-size:3rem}
  .lock-field{grid-template-columns:1fr}
  .lock-field .button{width:100%}
  .lock-footer{position:static;margin:25px 0 0;text-align:center}
}

/* Keep the mobile hero headline to its intentional two-line composition */
@media(max-width:560px){
  .hero h1{font-size:clamp(2rem,11.5vw,2.9rem);white-space:nowrap}
}
