:root{
  --noir:#0E0D0B;
  --charcoal:#181613;
  --graphite:#2E2A24;
  --ivory:#F7F1E8;
  --taupe:#C8BFB2;
  --gold:#C8A96A;
  --gold-dark:#8A6A35;
  --warm-white:#FFF8EF;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--noir);color:var(--ivory);font-family:Manrope,system-ui,sans-serif;line-height:1.7}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:22px 5vw;background:linear-gradient(to bottom,rgba(14,13,11,.86),rgba(14,13,11,.2));backdrop-filter:blur(12px)}.brand{font-family:"Cormorant Garamond",serif;font-size:24px;letter-spacing:.08em;text-transform:uppercase}.site-header nav{display:flex;gap:28px;font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--taupe)}.site-header nav a:hover{color:var(--gold)}.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:128px 5vw 7vw;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('assets/hero-portrait.png') 83% 56%/auto 82% no-repeat;background-color:#03030d;transform:none}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,13,11,.98) 0%,rgba(14,13,11,.82) 35%,rgba(14,13,11,.26) 63%,rgba(14,13,11,.58) 100%),linear-gradient(0deg,rgba(14,13,11,1) 0%,rgba(14,13,11,.05) 46%)}.hero-content{position:relative;max-width:720px;padding-top:10px}.eyebrow,.section-kicker{color:var(--gold);text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:700}.hero h1,.hero h2,.section-heading h2,.split-section h2,.story h2,.career h2,.media-section h2,.closing-cta h2,footer h2{font-family:"Cormorant Garamond",serif;font-weight:500;line-height:1.02;margin:0}.hero h1{font-size:clamp(64px,8vw,118px);letter-spacing:.02em;line-height:.96}.hero h2{font-size:clamp(30px,4vw,56px);color:var(--taupe);margin-top:10px}.hero-copy{font-size:20px;max-width:640px;color:var(--warm-white);margin:28px 0 36px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gold);min-height:48px;padding:0 26px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700}.btn.primary{background:var(--gold);color:#111}.btn.secondary{color:var(--gold);background:rgba(255,255,255,.02)}.btn:hover{transform:translateY(-1px)}.cred-strip{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--graphite);border-bottom:1px solid var(--graphite);background:var(--charcoal)}.cred-strip span{text-align:center;padding:22px 14px;color:var(--taupe);font-size:12px;text-transform:uppercase;letter-spacing:.14em;border-right:1px solid var(--graphite)}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:110px 8vw}.split-section h2,.section-heading h2,.story h2,.career h2,.media-section h2,.closing-cta h2{font-size:clamp(42px,6vw,78px)}.split-section p,.story p,.closing-cta p{color:var(--taupe);font-size:18px}.portfolio,.career,.media-section,.experiences-section{padding:110px 5vw}.centered{text-align:center;max-width:980px;margin:0 auto 64px}.section-intro{color:var(--taupe);font-size:18px;max-width:760px;margin:18px auto 0}.gallery-grid{column-count:4;column-gap:18px;max-width:1500px;margin:0 auto}.gallery-item{position:relative;display:block;overflow:hidden;background:var(--charcoal);border:1px solid var(--graphite);cursor:zoom-in;margin:0 0 18px;break-inside:avoid;page-break-inside:avoid}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(14,13,11,.18));opacity:0;transition:opacity .45s ease}.gallery-item img{width:100%;height:auto;object-fit:cover;transition:transform .7s ease,filter .7s ease}.gallery-item:hover img{transform:scale(1.045);filter:brightness(1.08)}.gallery-item:hover:after{opacity:1}.gallery-item.tall,.gallery-item.wide{grid-row:auto;grid-column:auto}.lightbox{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:6vw;background:rgba(4,4,4,.9);backdrop-filter:blur(10px)}.lightbox.is-open{display:flex}.lightbox img{max-width:min(1180px,92vw);max-height:86vh;object-fit:contain;border:1px solid rgba(200,169,106,.25);box-shadow:0 28px 90px rgba(0,0,0,.65)}.lightbox-close{position:absolute;top:28px;right:34px;width:48px;height:48px;border:1px solid rgba(200,169,106,.45);border-radius:50%;background:rgba(14,13,11,.75);color:var(--ivory);font-size:34px;line-height:1;cursor:pointer}.lightbox-close:hover{color:var(--gold);border-color:var(--gold)}
.experiences-section{background:linear-gradient(180deg,#0E0D0B 0%,#14120F 100%);border-top:1px solid var(--graphite);border-bottom:1px solid var(--graphite)}
.experience-grid{display:grid;gap:36px;max-width:1320px;margin:0 auto}.experience-card{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:44px;background:rgba(255,255,255,.025);border:1px solid var(--graphite);padding:22px}.experience-card.reverse{grid-template-columns:.95fr 1.05fr}.experience-card.reverse .experience-image{order:2}.experience-image{overflow:hidden;border:1px solid rgba(200,169,106,.28);background:#090807}.experience-image img{width:100%;height:560px;object-fit:cover;transition:transform .7s ease}.experience-card:hover .experience-image img{transform:scale(1.035)}.experience-copy{padding:36px 28px}.experience-copy h3{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(36px,4vw,64px);line-height:1.05;margin:10px 0 22px}.experience-copy p{color:var(--taupe);font-size:17px}.experience-copy .section-kicker{color:var(--gold)}

.dark-card{background:linear-gradient(135deg,var(--charcoal),#100f0d);border-top:1px solid var(--graphite);border-bottom:1px solid var(--graphite)}.image-frame{border:1px solid var(--gold-dark);padding:12px;background:#0a0908}.image-frame img{aspect-ratio:4/3;width:100%;object-fit:cover}.lux-list{list-style:none;padding:0;margin:28px 0 0}.lux-list li{padding:12px 0;border-bottom:1px solid var(--graphite);color:var(--ivory)}.lux-list li:before{content:"•";color:var(--gold);margin-right:12px}.story{padding:130px 8vw;background:linear-gradient(90deg,rgba(14,13,11,.86) 0%,rgba(14,13,11,.65) 46%,rgba(14,13,11,.24) 100%),linear-gradient(0deg,rgba(14,13,11,.55),rgba(14,13,11,.08) 45%,rgba(14,13,11,.45)) center/cover fixed}.story-content{max-width:780px}.story blockquote{font-family:"Cormorant Garamond",serif;font-size:clamp(40px,5vw,74px);line-height:1.1;margin:90px 0 0;color:var(--warm-white)}.story blockquote span{display:block;font-family:Manrope,sans-serif;color:var(--gold);font-size:14px;text-transform:uppercase;letter-spacing:.18em;margin-top:18px}.timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--graphite);border:1px solid var(--graphite)}.timeline div{background:var(--charcoal);padding:34px 26px;min-height:220px}.timeline span{font-family:"Cormorant Garamond",serif;font-size:30px;color:var(--gold)}.timeline p{color:var(--taupe);font-size:15px}.media-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}.media-card{background:var(--charcoal);border:1px solid var(--graphite);padding:18px}.media-card.highlight-card{border-color:var(--gold-dark);box-shadow:0 0 0 1px rgba(200,169,106,.12)}.media-card img,.media-card video{width:100%;aspect-ratio:4/5;object-fit:cover;background:#000}.media-card video{border:1px solid rgba(200,169,106,.18)}.media-card h3{font-family:"Cormorant Garamond",serif;font-size:30px;margin:22px 0 6px}.media-card p{color:var(--taupe);font-size:14px}.closing-cta{text-align:center;padding:130px 5vw;background:radial-gradient(circle at center,rgba(200,169,106,.12),transparent 45%),var(--noir)}.closing-cta p{max-width:680px;margin:20px auto 34px}

footer{
  display:flex;
  justify-content:space-between;
  gap:40px;
  padding:58px 5vw;
  border-top:1px solid rgba(200,169,106,.25);
  background:#090807;
}

footer h2{
  font-size:36px;
  margin:0 0 8px;
}

footer p{
  margin:0;
}

.footer-tagline{
  margin-top:14px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:12px;
  font-weight:700;
}

.footer-note{
  margin-top:8px;
  color:var(--taupe);
  font-size:14px;
}

.footer-links{
  display:flex;
  gap:28px;
  align-items:center;
  color:var(--taupe);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
}

.footer-links a:hover{
  color:var(--gold);
}
@media(max-width:1100px){.media-grid{grid-template-columns:repeat(2,1fr)}.experience-card,.experience-card.reverse{grid-template-columns:1fr}.experience-card.reverse .experience-image{order:0}.experience-image img{height:480px}}
@media(max-width:900px){.site-header{position:absolute}.site-header nav{display:none}.hero{min-height:92vh;padding:120px 6vw 80px;align-items:flex-end}.hero-image{background-position:60% 20%;background-size:auto 64%}.cred-strip{grid-template-columns:1fr 1fr}.split-section{grid-template-columns:1fr;padding:80px 6vw}.gallery-grid{column-count:2;column-gap:14px}.gallery-item{margin-bottom:14px}.timeline{grid-template-columns:1fr}.media-grid{grid-template-columns:1fr}.story{background-attachment:scroll;padding:90px 6vw}footer{
  flex-direction:column;
  padding:46px 6vw;
}

.footer-links{
  align-items:flex-start;
}
.footer-links{flex-wrap:wrap}.hero-copy{font-size:17px}.cred-strip span:nth-child(2n){border-right:0}}
@media(max-width:520px){.hero-image{background-position:63% 10%;background-size:auto 56%;opacity:.88}.hero h1{font-size:56px}.gallery-grid{column-count:1}.portfolio,.career,.media-section,.experiences-section{padding:80px 5vw}.cred-strip{grid-template-columns:1fr}.cred-strip span{border-right:0;border-bottom:1px solid var(--graphite)}}

@media(max-width:620px){.experience-card{padding:14px;gap:18px}.experience-image img{height:340px}.experience-copy{padding:18px 8px}.experience-copy p{font-size:15px}}

/* Keep media videos clean: these clips are intended as silent visual features. */
.media-card video::-webkit-media-controls-mute-button,
.media-card video::-webkit-media-controls-volume-slider,
.media-card video::-webkit-media-controls-volume-control-container {
  display: none !important;
}

.authority-section,.achievements-section{padding:110px 5vw;border-top:1px solid var(--graphite);background:linear-gradient(180deg,#0E0D0B 0%,#15120F 100%)}
.authority-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1220px;margin:0 auto}.authority-card{background:rgba(255,255,255,.025);border:1px solid var(--graphite);padding:44px 48px;min-height:330px;display:flex;flex-direction:column;justify-content:flex-end}.authority-card.feature-card{border-color:rgba(200,169,106,.42);background:linear-gradient(135deg,rgba(200,169,106,.10),rgba(255,255,255,.02))}.authority-card h3{font-family:"Cormorant Garamond",serif;font-size:clamp(30px,3vw,48px);font-weight:500;line-height:1.06;margin:12px 0 18px}.authority-card p{color:var(--taupe);font-size:16px}.metric-card span{font-family:"Cormorant Garamond",serif;font-size:78px;line-height:.9;color:var(--gold);margin-bottom:24px}.metric-card h3{font-size:34px}.authority-section .section-heading{margin-bottom:48px}.authority-section .section-heading h2{font-size:clamp(42px,5vw,68px);max-width:1100px;margin:0 auto}.authority-card h3{font-size:clamp(34px,3.1vw,56px)}.authority-card p{font-size:17px;line-height:1.72}.metric-card span{font-size:92px}.metric-card h3{font-size:42px}.achievement-list{max-width:1180px;margin:0 auto;border-top:1px solid var(--graphite)}.achievement-list div{display:grid;grid-template-columns:90px 1fr;gap:28px;align-items:center;padding:24px 0;border-bottom:1px solid var(--graphite)}.achievement-list span{font-family:"Cormorant Garamond",serif;color:var(--gold);font-size:30px}.achievement-list p{margin:0;color:var(--ivory);font-size:20px}
@media(max-width:900px){.authority-grid{grid-template-columns:1fr}.authority-card{min-height:auto;padding:34px}}
@media(max-width:620px){.authority-section,.achievements-section{padding:80px 5vw}.authority-grid{grid-template-columns:1fr}.achievement-list div{grid-template-columns:54px 1fr;gap:16px}.achievement-list p{font-size:17px}.metric-card span{font-size:58px}}


/* v14: Editorial Media section */
.media-editorial .section-heading{margin-bottom:38px}.media-publications{max-width:1320px;margin:0 auto 52px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;border-top:1px solid var(--graphite);border-bottom:1px solid var(--graphite);padding:18px 0}.media-publications span{color:var(--taupe);font-size:12px;text-transform:uppercase;letter-spacing:.16em;padding:8px 16px}.featured-stories{max-width:1420px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.media-feature-card{background:linear-gradient(145deg,rgba(24,22,19,.95),rgba(14,13,11,.98));border:1px solid var(--graphite);padding:18px;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.media-feature-card:hover{transform:translateY(-4px);border-color:rgba(200,169,106,.65);box-shadow:0 20px 60px rgba(0,0,0,.35)}.story-media{background:#000;border:1px solid rgba(200,169,106,.16);overflow:hidden}.story-media img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#000}.story-media video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#000;max-height:560px}.story-caption{padding:22px 8px 6px}.story-caption h3{font-family:"Cormorant Garamond",serif;font-size:clamp(34px,4vw,56px);line-height:1;margin:8px 0 0;color:var(--ivory)}
@media(max-width:900px){.featured-stories{grid-template-columns:1fr;gap:22px}.media-publications{justify-content:flex-start}.story-caption h3{font-size:38px}}

.journey-divider{
  width:100px;
  height:1px;
  background:var(--gold);
  margin:24px 0 42px;
  opacity:.85;
}

.contact-form{
  max-width:720px;
  margin:44px auto 0;
  display:grid;
  gap:18px;
  text-align:left;
}

.form-row{
  display:grid;
  gap:8px;
}

.form-row label{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:11px;
  font-weight:700;
}

.form-row input,
.form-row textarea{
  width:100%;
  border:1px solid var(--graphite);
  background:rgba(255,255,255,.035);
  color:var(--ivory);
  font-family:Manrope,system-ui,sans-serif;
  font-size:16px;
  padding:16px 18px;
  outline:none;
  border-radius:0;
}

.form-row input:focus,
.form-row textarea:focus{
  border-color:var(--gold);
  background:rgba(255,255,255,.055);
}

.form-row textarea{
  resize:vertical;
  min-height:150px;
}

.contact-form .btn{
  margin:10px auto 0;
  border:0;
  cursor:pointer;
}

.form-message{
  display:none;
  margin:4px 0 0;
  color:var(--gold);
  font-size:14px;
  line-height:1.6;
  text-align:center;
  letter-spacing:.04em;
}

.contact-form.has-error .form-message{
  display:block;
}

.form-row.has-error input,
.form-row.has-error textarea{
  border-color:var(--gold);
  background:rgba(200,169,106,.07);
}

.contact-form.has-error .form-message,
.contact-form.is-success .form-message{
  display:block;
}

.contact-form.is-success .form-message{
  color:var(--gold);
}