:root {
  --teal: #0d4249;
  --deep: #082b30;
  --ink: #092f35;
  --ivory: #e9e5da;
  --white: #faf8f2;
}

body { font-weight: 500; }
.site-header { border-bottom-color:rgba(255,255,255,.2); color:var(--white); }
.brand img { filter:brightness(0) invert(1); }
nav, .header-cta { font-weight: 700; }
.header-cta { border-left-color:rgba(255,255,255,.24); }
.hero { background:#0a292e; color:var(--white); }
.hero:before { border-color:rgba(255,255,255,.13); }
h1, h2, blockquote { font-weight: 500; }
h1 em, h2 em { color: #426f6b; font-weight: 500; }
.hero h1 em { color:#9bb8b0; }
.hero-intro { color:#c2cfcc; }
.mark-wrap { background:rgba(255,255,255,.08); box-shadow:0 28px 80px rgba(0,0,0,.2); }
.mark-wrap img { filter:brightness(0) invert(1); opacity:.9; }
.orbit { border-color:rgba(255,255,255,.24); }
.hero-footnote { color:#a7bbb7; font-weight:700; }
.section-number { color: #45666a; }
.statement div > p { color: #31565a; }
.service-list article { border-top-color: rgba(9,47,53,.32); }
.service-list article:last-child { border-bottom-color: rgba(9,47,53,.32); }
.service-list article > span { color: #496a6d; font-weight: 700; }
.service-list h3 { font-weight: 600; }
.service-list p { color: #34595d; }
.about-visual { background: #8fa9a1; }
footer > p { color: #c2cfcc; }

.feature-visual { min-height:760px; display:grid; grid-template-columns:52% 48%; background:var(--deep); color:var(--white); overflow:hidden; }
.feature-image { min-height:760px; position:relative; overflow:hidden; display:grid; place-items:center; background:radial-gradient(circle at center,rgba(143,169,161,.18),transparent 58%); }
.feature-image:after { content:""; position:absolute; width:68%; aspect-ratio:1; border:1px solid rgba(155,184,176,.2); border-radius:50%; }
.feature-image img { width:36%; height:auto; max-height:none; object-fit:contain; display:block; position:relative; z-index:2; box-shadow:0 28px 70px rgba(0,0,0,.32); border:1px solid rgba(255,255,255,.18); }
.feature-copy { padding:110px 8vw 90px 6vw; display:flex; flex-direction:column; justify-content:center; }
.feature-copy h2 { font-size:clamp(56px,5.5vw,88px); margin:42px 0 34px; }
.feature-copy h2 em { color:#9bb8b0; }
.feature-copy > p:not(.section-number) { color:#c5d0ce; font-size:16px; line-height:1.8; max-width:560px; }
.feature-tags { display:flex; gap:10px; flex-wrap:wrap; margin-top:42px; }
.feature-tags span { border:1px solid rgba(255,255,255,.3); padding:10px 14px; font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.about-visual img.portrait { width:54%; height:auto; aspect-ratio:1; object-fit:cover; object-position:center top; opacity:1; filter:none; position:relative; z-index:2; box-shadow:0 28px 70px rgba(8,43,48,.3); }
.portrait-frame { position:absolute; width:54%; aspect-ratio:1; border:1px solid rgba(255,255,255,.55); z-index:3; pointer-events:none; transform:translate(16px,16px); }
.bio { border-top:1px solid rgba(255,255,255,.22); padding-top:28px; margin-top:42px; max-width:720px; }
.bio-label { margin:0 0 8px; color:#9bb8b0; font-size:10px; font-weight:700; letter-spacing:.17em; text-transform:uppercase; }
.bio h3 { margin:0 0 16px; font-family:"Cormorant Garamond",Georgia,serif; font-size:36px; font-weight:600; }
.bio > p:last-child { margin:0; color:#c4d0cd; font-size:14px; line-height:1.75; }
@media(max-width:850px){.feature-visual{grid-template-columns:1fr}.feature-image{min-height:560px}.feature-image img{width:48%;max-height:none}.feature-copy{padding:90px 6vw}.about-visual{min-height:540px}.about-visual img.portrait,.portrait-frame{width:62%}}
@media(max-width:520px){.feature-image{min-height:440px}.feature-image img{width:56%}.about-visual img.portrait,.portrait-frame{width:70%}}
