:root{--navy: #07111c;--navy-2: #0c1a2b;--navy-3: #142536;--navy-4: #1c3348;--gold: #c4a15a;--gold-2: #d8bc7a;--gold-dim: rgba(196, 161, 90, .18);--ivory: #f3eee5;--paper: #faf7f2;--ink: #14181f;--muted: #5c6573;--muted-2: #8a8478;--rule: #d9d1c4;--stone: #e8e2d6;--white: #ffffff;--shadow: 0 24px 60px rgba(7, 17, 28, .18);--header-h: 84px;--serif: "Cormorant Garamond", "Times New Roman", serif;--sans: "Outfit", "Helvetica Neue", sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-weight:400;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}h1,h2,h3,h4,p{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}.wrap-wide{width:min(1360px,calc(100% - 48px));margin:0 auto}.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--gold);font-size:12px;font-weight:500;letter-spacing:.28em;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor}.eyebrow.light{color:var(--gold-2)}.hero-regions{flex-wrap:wrap}.hero-regions a{color:inherit;border-bottom:1px solid transparent;transition:border-color .2s ease,color .2s ease}.hero-regions a:hover{color:var(--ivory);border-bottom-color:currentColor}.hero-regions span{opacity:.55}.display{font-family:var(--serif);font-weight:500;letter-spacing:-.02em;line-height:1.08}.lead{font-size:1.15rem;line-height:1.75;color:var(--muted)}.gold-rule{width:56px;height:1px;background:var(--gold);border:0;margin:24px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 26px;border:1px solid transparent;border-radius:0;cursor:pointer;font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;transition:.25s ease;background:none}.btn-gold{background:var(--gold);color:var(--navy)}.btn-gold:hover{background:var(--gold-2)}.btn-ghost{border-color:#ffffff59;color:var(--white)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.btn-line{border-color:var(--navy);color:var(--navy)}.btn-line:hover{background:var(--navy);color:var(--ivory)}.btn-line-gold{border-color:var(--gold);color:var(--gold)}.btn-line-gold:hover{background:var(--gold);color:var(--navy)}.site-header{position:fixed;inset:0 0 auto;z-index:50;height:var(--header-h);display:flex;align-items:center;transition:background .3s ease,box-shadow .3s ease,border-color .3s ease;border-bottom:1px solid transparent}.site-header.scrolled,.site-header.solid{background:#07111cf0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom-color:#c4a15a29}.header-inner{width:min(1360px,calc(100% - 48px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;flex-shrink:0}.brand-logo{display:block;height:46px;width:auto;max-width:210px;object-fit:contain;object-position:left center}.brand.compact .brand-logo{height:40px;max-width:180px}.nav{display:flex;align-items:center;gap:4px}.nav-link,.nav-drop>button{position:relative;background:none;border:0;color:#f3eee5d1;font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;padding:10px 14px;cursor:pointer}.nav-link:hover,.nav-drop>button:hover,.nav-link.active,.nav-drop>button.active{color:var(--gold-2)}.nav-drop{position:relative}.nav-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:240px;padding:12px 0;background:var(--navy-2);border:1px solid rgba(196,161,90,.18);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease}.nav-drop.open .nav-menu{opacity:1;visibility:visible;transform:none}.nav-menu a{display:block;padding:10px 20px;color:#f3eee5d1;font-size:14px;letter-spacing:.02em}.nav-menu a:hover{color:var(--gold-2);background:#ffffff08}.menu-toggle{display:none;width:44px;height:44px;border:0;background:none;color:var(--ivory);cursor:pointer}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:22px;height:2px;background:currentColor;position:relative;transition:.2s ease}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0}.menu-toggle span:before{top:-7px}.menu-toggle span:after{top:7px}.menu-toggle.open span{background:transparent}.menu-toggle.open span:before{top:0;transform:rotate(45deg)}.menu-toggle.open span:after{top:0;transform:rotate(-45deg)}body.menu-open{overflow:hidden}.hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:flex-end;color:var(--ivory);overflow:hidden;background:var(--navy)}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 46%;transform:scale(1.1);animation:hero-drift 36s ease-in-out infinite alternate;will-change:transform}@keyframes hero-drift{0%{transform:scale(1.08) translateZ(0)}to{transform:scale(1.18) translate3d(-2.4%,-1.6%,0)}}@media (prefers-reduced-motion: reduce){.hero-media img{animation:none;transform:scale(1.06)}}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#07111c47,#07111c38 40%,#07111ce0),linear-gradient(90deg,#07111c8c,#07111c26 60%)}.hero-copy{position:relative;z-index:1;padding:0 0 88px;width:min(1180px,calc(100% - 48px));margin:0 auto}.hero-credit{position:absolute;right:24px;bottom:16px;z-index:2;color:#f3eee573;font-size:11px;letter-spacing:.04em}.hero-credit a{color:inherit;border-bottom:0}.hero h1{max-width:920px;margin-top:18px;font-size:clamp(48px,7vw,92px);color:var(--white)}.hero .lead{max-width:640px;margin-top:22px;color:#f3eee5c7}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}.page-hero{position:relative;min-height:52vh;display:flex;align-items:flex-end;color:var(--ivory);background:var(--navy);overflow:hidden}.page-hero .hero-media img{object-position:center 40%}.page-hero-copy{position:relative;z-index:1;width:min(1180px,calc(100% - 48px));margin:0 auto;padding:140px 0 64px}.page-hero h1{margin-top:14px;font-size:clamp(42px,6vw,76px)}.section{padding:108px 0}.section-head{max-width:720px;margin-bottom:56px}.section-head h2{margin-top:14px;font-size:clamp(36px,4.4vw,56px)}.section-navy{background:var(--navy);color:var(--ivory)}.section-navy .lead,.section-navy p{color:#f3eee5bd}.section-ivory{background:var(--ivory)}.section-paper{background:var(--paper)}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:start}.split.middle{align-items:center}.split.reverse{grid-template-columns:.95fr 1.05fr}.split-photo{position:relative;min-height:520px;overflow:hidden}.split-photo img{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;object-fit:cover}.split-photo:after{content:"";position:absolute;inset:auto 24px -16px auto;width:40%;height:40%;border:1px solid var(--gold);pointer-events:none}.split-copy p+p{margin-top:18px}.prose p+p{margin-top:18px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(196,161,90,.22);border-bottom:1px solid rgba(196,161,90,.22)}.stat{padding:36px 28px;border-right:1px solid rgba(196,161,90,.16)}.stat:last-child{border-right:0}.stat b{display:block;font-family:var(--serif);font-size:42px;font-weight:500;color:var(--gold-2);line-height:1}.stat span{display:block;margin-top:10px;color:#f3eee5b3;font-size:13px;letter-spacing:.12em;text-transform:uppercase}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{padding:32px 28px 28px;background:var(--white);border:1px solid var(--rule);min-height:240px;transition:.25s ease}.service-card:hover{border-color:var(--gold);transform:translateY(-3px)}.service-card .num{color:var(--gold);font-size:12px;letter-spacing:.22em}.service-card h3{margin:16px 0 12px;font-family:var(--serif);font-size:28px;font-weight:500}.service-card p{color:var(--muted);font-size:15.5px}.person-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 22px}.person-card{display:block;color:inherit}.person-photo{position:relative;aspect-ratio:3 / 4;overflow:hidden;background:var(--navy-3)}.person-photo img{width:100%;height:100%;object-fit:cover;object-position:center 12%;transition:transform .7s ease,filter .4s ease;filter:saturate(.88)}.person-card:hover img{transform:scale(1.04);filter:saturate(1)}.person-photo .mono{width:100%;height:100%;display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-size:42px;letter-spacing:.08em;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent),var(--navy-3)}.person-meta{padding-top:16px}.person-meta h3{font-family:var(--serif);font-size:24px;font-weight:500}.person-meta p{margin-top:4px;color:var(--muted);font-size:14px}.person-meta .loc{margin-top:6px;color:var(--gold);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.office-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.office-card{position:relative;display:block;min-height:280px;overflow:hidden;color:var(--ivory)}.office-card img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.office-card:hover img{transform:scale(1.06)}.office-card .shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#07111c0d 20%,#07111cd1)}.office-card .txt{position:absolute;inset:auto 20px 20px}.office-card h3{font-family:var(--serif);font-size:30px;font-weight:500}.office-card span{display:block;margin-top:4px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2)}.clients{display:flex;flex-wrap:wrap;gap:10px 28px}.clients span{color:var(--muted);font-size:15px;letter-spacing:.04em}.clients span:after{content:"·";margin-left:28px;color:var(--gold)}.clients span:last-child:after{content:none}.cred-row{display:flex;flex-wrap:wrap;align-items:center;gap:36px 48px}.cred-row img{height:64px;width:auto;max-width:180px;object-fit:contain}.award-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.award-card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:28px 18px 22px;background:var(--white);border:1px solid var(--rule);text-align:center;min-height:220px;transition:border-color .2s ease,transform .2s ease}.award-card:hover{border-color:var(--gold);transform:translateY(-2px)}.award-logo{display:grid;place-items:center;height:96px;width:100%}.award-logo img{max-height:96px;max-width:140px;width:auto;height:auto;object-fit:contain}.award-name{font-size:13px;line-height:1.45;color:var(--muted);letter-spacing:.01em}.featured-award{display:grid;grid-template-columns:220px 1fr;gap:56px;align-items:center}.featured-award-mark{display:grid;place-items:center;background:var(--white);border:1px solid var(--rule);padding:28px;min-height:220px}.featured-award-mark img{max-width:160px;width:100%;height:auto;object-fit:contain}.article{max-width:980px}.article-meta{color:var(--gold);font-size:12px;letter-spacing:.18em;text-transform:uppercase}.article-title{margin:14px 0 36px;font-size:clamp(36px,4.4vw,56px)}.article-grid{display:grid;grid-template-columns:1fr 280px;gap:48px;align-items:start}.article-aside{position:sticky;top:110px;padding:28px 24px;background:var(--ivory);border-top:2px solid var(--gold)}.article-aside blockquote{margin:0;font-family:var(--serif);font-size:22px;font-style:italic;line-height:1.4}.article-aside-person{display:flex;align-items:center;gap:12px;margin-top:22px}.article-aside-person img{width:64px;height:64px;object-fit:cover;object-position:center 12%;border-radius:50%}.article-aside-person strong{display:block;font-size:14px}.article-aside-person span{display:block;color:var(--muted);font-size:13px}.article-aside-logo{display:block;margin-top:24px;max-width:120px;height:auto}.article-continue{margin-top:36px}.article-continue h2{margin:36px 0 16px;font-family:var(--serif);font-size:34px;font-weight:500}.article-correction{margin-top:28px;padding:18px 20px;background:var(--ivory);font-style:italic}.article-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}.profile-award{display:flex;gap:16px;align-items:center;margin-top:28px;padding:18px;background:var(--ivory);border:1px solid var(--rule)}.profile-award img{width:72px;height:auto;object-fit:contain}.profile-award p{margin:4px 0 8px;color:var(--muted);font-size:14px}.profile-award a{color:var(--navy);border-bottom:1px solid var(--gold);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.framed-main{min-height:100dvh}.award-frame{display:flex;flex-direction:column;height:100dvh;padding-top:var(--header-h);background:var(--paper)}.award-frame-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px;background:var(--ivory);border-bottom:1px solid var(--rule);font-size:13px}.award-frame-bar a{flex-shrink:0;color:var(--navy);border-bottom:1px solid var(--gold);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.award-frame iframe{flex:1;width:100%;border:0;background:var(--white)}.award-fallback{max-width:640px;text-align:center;padding-bottom:40px}.award-fallback img{display:block;margin:0 auto 28px;max-width:180px;height:auto;object-fit:contain}.award-fallback .eyebrow{justify-content:center}.award-fallback .eyebrow:before{display:none}.award-fallback h1{margin:12px 0 18px;font-size:clamp(36px,4vw,52px)}.award-fallback .lead{margin-bottom:28px}.quote{max-width:820px;margin:0 auto;text-align:center}.quote blockquote{margin:0;font-family:var(--serif);font-size:clamp(26px,3vw,36px);font-style:italic;font-weight:400;line-height:1.4;color:var(--ivory)}.quote cite{display:block;margin-top:22px;font-style:normal;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.profile{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;align-items:start}.profile-photo{aspect-ratio:3 / 4;overflow:hidden;background:var(--navy-3)}.profile-photo img{width:100%;height:100%;object-fit:cover;object-position:center 12%}.profile h1{margin-top:12px;font-size:clamp(40px,5vw,64px)}.profile .role{margin-top:10px;color:var(--muted);font-size:18px}.profile .office-tag{margin-top:10px;color:var(--gold);font-size:12px;letter-spacing:.18em;text-transform:uppercase}.profile .prose{margin-top:32px}.service-block+.service-block{margin-top:22px;padding-top:22px;border-top:1px solid var(--rule)}.section-navy .service-block+.service-block{border-top-color:#c4a15a33}#public-affairs,#government-relations,#campaigns,#clients,#recognition{scroll-margin-top:96px}.service-block h3{font-family:var(--serif);font-size:26px;font-weight:500;margin-bottom:8px}.service-block p{color:var(--muted)}.pillar-list{display:grid;gap:14px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px}.address-block+.address-block{margin-top:32px}.address-block h3{font-family:var(--serif);font-size:28px;font-weight:500}.address-block p{margin-top:8px;color:var(--muted)}.address-block a{color:var(--navy);border-bottom:1px solid var(--gold)}.form{display:grid;gap:16px}.field{display:grid;gap:8px}.field label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.field input,.field textarea,.field select{width:100%;border:1px solid var(--rule);background:var(--white);color:var(--ink);padding:14px 16px;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold)}.field textarea{min-height:160px;resize:vertical}.form-note{font-size:14px;color:var(--muted)}.form-success{padding:28px;background:var(--ivory);border:1px solid var(--gold)}.site-footer{background:var(--navy);color:#f3eee5bd;padding:72px 0 28px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}.site-footer h4{color:var(--ivory);font-size:12px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:16px}.site-footer a{display:block;padding:4px 0;color:#f3eee5b3}.site-footer a:hover{color:var(--gold-2)}.footer-legal{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:16px;font-size:13px;color:#f3eee573}.reveal{opacity:0;transform:translateY(18px);animation:rise .8s ease forwards}@keyframes rise{to{opacity:1;transform:none}}.cta-band{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.cta-band h2{max-width:640px;font-size:clamp(36px,4vw,54px)}.office-services{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;margin:0;padding:0;list-style:none}.office-services li{padding:12px 0;border-bottom:1px solid var(--rule);font-size:16px}.not-found{min-height:70vh;display:grid;place-items:center;text-align:center;padding:140px 24px 80px}.not-found h1{font-size:72px}@media (max-width: 1024px){.split,.split.reverse,.profile,.contact-grid,.footer-grid,.featured-award,.article-grid{grid-template-columns:1fr;gap:36px}.article-aside{position:static}.stats,.card-grid,.person-grid,.office-grid,.award-grid{grid-template-columns:1fr 1fr}.split-photo{min-height:360px}.cta-band{flex-direction:column;align-items:flex-start}}@media (max-width: 1100px){.nav{display:none;position:fixed;inset:var(--header-h) 0 0;background:#07111cfa;flex-direction:column;align-items:stretch;padding:20px 24px 48px;gap:4px;overflow:auto;z-index:40}.nav.open{display:flex}.nav-link,.nav-drop>button{font-size:18px;letter-spacing:.12em;padding:14px 0;color:var(--ivory);text-align:left}.nav-menu{position:static;opacity:0;visibility:hidden;transform:none;background:none;border:0;box-shadow:none;padding:0;max-height:0;overflow:hidden}.nav-drop.open .nav-menu{opacity:1;visibility:visible;padding:0 0 10px 12px;max-height:70vh}.nav .btn{margin:16px 0 0;align-self:flex-start}.menu-toggle{display:grid;place-items:center}}@media (max-width: 780px){.stats,.card-grid,.person-grid,.office-grid,.office-services,.award-grid{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid rgba(196,161,90,.16)}.hero{min-height:92vh}.hero-copy{padding-bottom:56px}.section{padding:76px 0}.footer-legal{flex-direction:column}.wrap,.wrap-wide,.header-inner,.hero-copy,.page-hero-copy{width:calc(100% - 32px)}.brand-logo{height:38px;max-width:170px}.hero-credit{right:16px;bottom:10px;font-size:10px}}
