@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--ink:#14212c;--green:#091b2d;--lime:#e7b27c;--cream:#f6f2ec;--muted:#5c6871}
body{background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}
header{height:88px;background:rgba(9,27,45,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.15);padding:0 5vw;position:relative}
header .brand img{width:242px;max-height:64px;object-fit:contain;background:#f6f2ec;border:1px solid #d3ad8d;border-radius:2px;padding:8px 16px}
header nav a{color:#fff;font-size:14px}header nav a:hover,header nav a:focus-visible{color:var(--lime)}header .navcta{border-color:#82909a;padding:12px 17px}
.menu{color:#fff;border:1px solid #8493a0;padding:7px 12px}
.hero{min-height:730px;display:block;position:relative;background:#091b2d;color:#fff;overflow:hidden}
.hero-art.photo-hero{position:absolute;inset:0;min-height:0;border-radius:0;box-shadow:none;background:#091b2d;z-index:0}
.hero-art.photo-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#081724 0%,rgba(8,23,36,.94) 27%,rgba(8,23,36,.56) 58%,rgba(8,23,36,.06) 100%)}
.hero-art.photo-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;min-height:0}
.hero-badge{display:none}.hero-copy{position:relative;z-index:1;padding:86px 8vw 145px;max-width:1100px;pointer-events:none}.hero-copy a{pointer-events:auto}
.eyebrow{color:#b46d42;letter-spacing:.19em;font-size:12px}.hero .eyebrow{color:#e0a778}
.hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(3.8rem,6.5vw,6.5rem);letter-spacing:-.035em;line-height:1.04;max-width:760px;margin:32px 0 20px}
.hero h1 em{font-style:normal;color:#fff;font-weight:700}.hero .lead{color:#e0e5e8;font-size:19px;max-width:675px;line-height:1.65}
.hero .actions{margin-top:35px}.btn{background:#c87945;color:#fff;padding:15px 21px;font-size:14px}.btn:hover{background:#af6535}.textlink{color:inherit}.hero .textlink{border:1px solid #77838c;padding:14px 20px;color:#fff}
.stats{position:absolute;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);width:min(710px,60%);margin:0;padding:0;background:#10253a;border:0;pointer-events:auto}
.stats div{padding:23px 25px;border-right:1px solid #3b4b58}.stats b{font-family:'Playfair Display',Georgia,serif;color:#e7b27c;font-size:22px}.stats span{color:#bbc6cf}
.intro,.experience{background:#f6f2ec}.services,.service-directory{background:#f0ebe3}.outputs{background:#e9e1d6}.dark{background:#091b2d}.dark .eyebrow{color:#e7b27c}.contact{background:#c87945;color:#fff}.contact .eyebrow{color:#fff}.contact .btn{background:#091b2d}.contact .btn.light{background:#fff;color:#091b2d}
.intro h2,.services h2,.experience h2,.outputs h2,.contact h2,.dark h2,.service-hero h1,.service-content h2,.related h2,.service-directory h2,.social h2{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.025em}
.grid{border-color:#cfc5ba}.grid details{background:#f8f4ee;border-color:#cfc5ba}.grid h3,.cards h3,.seo-card h3,.steps h3,.service-aside h3{font-family:'Playfair Display',Georgia,serif}.grid i,.steps b{color:#b96d40}.grid p,.grid li,.seo-card p{font-size:15px}.cards article,.seo-card{background:#f9f6f1}.experience blockquote{border-color:#c87945}.monogram{background:#091b2d}.chips span{background:#f8f4ee;border-color:#bfafa0}
.service-hero{background:linear-gradient(90deg,rgba(9,27,45,.98),rgba(9,27,45,.72)),url('/assets/hero.png') center/cover;color:#fff}.service-hero .eyebrow{color:#e7b27c}.service-hero p:not(.eyebrow){color:#e0e5e8}.service-aside{background:#e9e1d6}.related{background:#f6f2ec}.related-links a{border-color:#c9b8a9;background:#fff}.related-links a:hover,.seo-card:hover{border-color:#c87945;color:#a95c31}
.social{background:#f6f2ec}.social-grid a{background:#fff;border:1px solid #d4c8bd;color:#091b2d}.social-grid img{width:30px;height:30px;display:block}.social-grid a:hover{border-color:#c87945;transform:translateY(-2px)}
.news-feature{background:#102b42;color:#fff;padding:70px 8vw;display:flex;gap:32px;align-items:center;justify-content:space-between}.news-feature h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.2rem,4vw,4rem);margin:12px 0}.news-feature p{max-width:660px;color:#d4dee6}.news-feature .btn{white-space:nowrap}
footer{background:#091b2d;color:#fff}footer .brand img{width:190px;background:#f6f2ec;padding:5px 9px}
.news-page{max-width:1280px;margin:auto;padding:55px 6vw 100px}.news-page h1{font:700 clamp(2.8rem,5vw,5rem)/1.1 'Playfair Display',Georgia,serif;margin:15px 0}.news-intro{max-width:760px;color:#54616a;font-size:18px}.feed-nav{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 35px}.feed-nav a{border:1px solid #bdad9f;padding:10px 15px;text-decoration:none;color:#091b2d}.feed-nav a:hover{background:#091b2d;color:white}.feed-section{margin:55px 0}.feed-section h2{font:700 2.2rem 'Playfair Display',Georgia,serif}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.story{background:#fff;border:1px solid #ded3c9;padding:24px;display:flex;flex-direction:column}.story h3{font:700 1.25rem/1.35 'Playfair Display',Georgia,serif}.story a{text-decoration:none;color:#091b2d}.story a:hover{text-decoration:underline}.story p{color:#5c6871;margin:auto 0 0}.feed-status{font-size:14px;color:#6b747d}.feed-fallback{background:#fff;padding:24px;border-left:4px solid #c87945}
@media(max-width:900px){header{height:72px}.hero{min-height:710px}.hero-copy{padding:75px 6vw 195px}.stats{width:100%}.news-feature{display:block}.story-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){header .brand img{width:165px;padding:5px 8px}header nav{background:#091b2d!important;top:72px!important}header nav a{color:#fff}.hero{min-height:790px}.hero-art.photo-hero:after{background:linear-gradient(90deg,rgba(8,23,36,.94),rgba(8,23,36,.65)),linear-gradient(0deg,rgba(8,23,36,.85),transparent)}.hero-copy{padding:52px 6vw 220px}.hero h1{font-size:clamp(3.15rem,12vw,4.5rem)}.hero .lead{font-size:16px}.stats div{padding:15px 10px}.stats b{font-size:17px}.stats span{font-size:11px}.story-grid{grid-template-columns:1fr}.news-feature{padding:55px 6vw}}
