
:root{--ink:#0b0b0b;--paper:#faf8f1;--gold:#c8a35a;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.nav{height:80px;padding:0 max(28px,calc((100vw - var(--max))/2));position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;background:rgba(8,8,8,.90);backdrop-filter:blur(12px);color:white;border-bottom:1px solid rgba(255,255,255,.1)}
.brand{display:flex;align-items:baseline;letter-spacing:.07em}.brand span{font-size:18px;font-weight:300}.brand strong{font-family:Georgia,serif;font-size:27px;color:var(--gold);margin-left:5px}
.nav nav{display:flex;gap:28px;align-items:center;font-size:13px;letter-spacing:.05em}.nav nav a{opacity:.78}.nav nav a:hover{opacity:1}.nav-book{border:1px solid var(--gold);padding:12px 17px;opacity:1!important}.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:25px}
.hero{min-height:760px;height:94vh;position:relative;background:#080808;color:#fff;display:flex;align-items:center}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}.hero-content{position:relative;z-index:2;width:min(var(--max),calc(100% - 56px));margin:70px auto 0}.eyebrow,.kicker{font-size:12px;font-weight:700;letter-spacing:.22em;color:#876d36;margin-bottom:25px}.hero .eyebrow{color:#e0c176}.hero h1{font-family:Georgia,Times,serif;font-weight:400;font-size:clamp(48px,6.3vw,91px);line-height:.98;max-width:940px;margin:0 0 28px;letter-spacing:-.035em}.hero h1 em,.intro h2 em,.media h2 em{color:var(--gold);font-weight:400}.hero p{font-family:Georgia,serif;font-size:20px;line-height:1.55;max-width:720px;color:rgba(255,255,255,.82)}.hero-actions{display:flex;gap:12px;margin-top:35px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700;cursor:pointer}.primary{background:var(--gold);color:#101010}.ghost{border-color:rgba(255,255,255,.45);color:#fff}.hero-proof{display:flex;align-items:center;gap:18px;margin-top:65px;color:rgba(255,255,255,.62);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.hero-proof i{width:3px;height:3px;background:var(--gold);border-radius:50%}
.marquee{background:var(--gold);padding:14px 20px;text-align:center;font-size:11px;font-weight:700;letter-spacing:.12em;overflow:hidden;white-space:nowrap}
.intro,.proof,.formats{padding:120px 28px;width:min(var(--max),100%);margin:auto}.intro h2,.proof h2,.formats h2,.story h2,.booking h2,.media h2{font-family:Georgia,Times,serif;font-size:clamp(42px,5vw,72px);line-height:1.02;font-weight:400;letter-spacing:-.03em;margin:0}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:100px;margin-top:65px}.intro-grid p{font-size:17px;line-height:1.75;color:#504d47}.intro-grid .lead{font-family:Georgia,serif;font-size:25px;line-height:1.55;color:#1d1c19;margin-top:0}.text-link{display:inline-block;margin-top:18px;border-bottom:1px solid #9a8355;padding-bottom:5px;font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.feature-image{width:min(1440px,100%);margin:auto;position:relative;background:#111}.feature-image img{width:100%;height:min(75vw,810px);object-fit:cover;object-position:center}.feature-caption{position:absolute;left:40px;bottom:38px;background:rgba(8,8,8,.84);color:#fff;padding:22px 25px;display:flex;flex-direction:column;gap:8px}.feature-caption span{font-size:10px;letter-spacing:.2em;color:var(--gold)}.feature-caption strong{font-family:Georgia,serif;font-size:22px;font-weight:400}
.story{display:grid;grid-template-columns:.92fr 1.08fr;min-height:760px;background:#e9e2d2}.story-image img{width:100%;height:100%;object-fit:cover}.story-copy{padding:100px clamp(35px,7vw,110px);align-self:center}.story-copy p{font-size:16px;line-height:1.75;color:#49453e}.credentials{margin-top:35px;border-top:1px solid #c8bdab}.credentials div{display:grid;grid-template-columns:90px 1fr;gap:22px;padding:20px 0;border-bottom:1px solid #c8bdab}.credentials strong{font-family:Georgia,serif;font-size:28px;color:#846b38}.credentials span{font-size:13px;line-height:1.5}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d8d1c4;margin-top:65px;border:1px solid #d8d1c4}.cards article{background:var(--paper);padding:45px 35px;min-height:340px}.cards span{font-family:Georgia,serif;color:var(--gold);font-size:14px}.cards h3{font-family:Georgia,serif;font-size:29px;font-weight:400;margin:80px 0 16px}.cards p{color:#625e56;font-size:14px;line-height:1.7}
.media{background:#0b0b0b;color:white;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;padding:100px max(28px,calc((100vw - var(--max))/2));gap:70px}.kicker.light{color:var(--gold)}.media-copy p{color:#aaa59b;line-height:1.7}.media-links{display:flex;flex-direction:column;gap:14px;margin-top:28px}.media-links a{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#e2c67e}.video-wrap{position:relative;padding-top:56.25%;background:#1a1a1a}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);height:390px;background:#111}.gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.04)}
.format-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:65px;border-top:1px solid #cfc8bb}.format-grid div{padding:34px 35px 34px 0;border-bottom:1px solid #cfc8bb}.format-grid div:nth-child(odd){border-right:1px solid #cfc8bb;padding-right:45px}.format-grid div:nth-child(even){padding-left:45px}.format-grid strong{font-family:Georgia,serif;font-size:26px;font-weight:400}.format-grid p{font-size:14px;color:#666158;line-height:1.7}
.booking{background:#111;color:white;padding:110px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.booking-copy p{color:#aaa59b;line-height:1.7}.direct{margin-top:38px;display:flex;flex-direction:column;gap:8px}.direct span{text-transform:uppercase;font-size:10px;letter-spacing:.16em;color:#777}.direct a{font-family:Georgia,serif;font-size:21px;color:#e5c576}.booking-form{display:grid;gap:17px;background:#181818;padding:38px;border:1px solid #292929}.booking-form label{display:grid;gap:8px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#aaa}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.booking-form input,.booking-form textarea,.booking-form select{width:100%;background:#111;border:1px solid #353535;color:#fff;padding:14px;font:inherit;border-radius:0}.booking-form textarea{resize:vertical}.wide{width:100%;border:0}.form-note{font-size:11px!important;color:#777!important;margin:0}.hp{position:absolute!important;left:-9999px!important}
footer{background:#050505;color:#888;padding:55px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr auto;gap:30px;border-top:1px solid #1d1d1d}.footer-brand{display:flex;align-items:baseline;letter-spacing:.07em;color:white}.footer-brand strong{font-family:Georgia,serif;color:var(--gold);font-size:26px;margin-left:5px}.footer-brand small{color:#777;margin-left:14px;letter-spacing:.03em}.footer-nav{display:flex;gap:24px;font-size:12px}.legal{grid-column:1/-1;max-width:900px;font-size:10px;line-height:1.6;color:#5f5f5f}
.thankyou{min-height:100vh;background:#0b0b0b;color:white;display:grid;place-items:center;text-align:center;padding:30px}.thankyou h1{font-family:Georgia,serif;font-size:60px;font-weight:400}.thankyou p{color:#aaa;max-width:600px;line-height:1.7}
@media(max-width:850px){.nav{height:68px}.nav-toggle{display:block}.nav nav{display:none;position:absolute;top:68px;left:0;right:0;background:#0b0b0b;flex-direction:column;align-items:stretch;padding:25px}.nav.open nav{display:flex}.hero{height:auto;min-height:790px}.hero-content{margin-top:100px}.hero-bg{background-position:58% center!important}.hero p{font-size:17px}.hero-proof{display:none}.intro,.proof,.formats{padding:80px 24px}.intro-grid,.story,.media,.booking{grid-template-columns:1fr;gap:45px}.story-image{height:600px}.cards{grid-template-columns:1fr}.cards article{min-height:0}.cards h3{margin-top:45px}.media,.booking{padding:80px 24px}.gallery{grid-template-columns:1fr 1fr;height:650px}.format-grid{grid-template-columns:1fr}.format-grid div,.format-grid div:nth-child(odd),.format-grid div:nth-child(even){padding:28px 0;border-right:0}.field-row{grid-template-columns:1fr}footer{grid-template-columns:1fr}.footer-nav{flex-wrap:wrap}.feature-caption{left:18px;bottom:18px;right:18px}.hero-actions{flex-direction:column;align-items:stretch;max-width:330px}}


/* V5 FIX — prevent fixed header from clipping anchored section headings */
html {
  scroll-padding-top: 112px;
}

section[id] {
  scroll-margin-top: 112px;
}

/* Extra breathing room above Booking Options */
.formats {
  padding-top: 155px !important;
}

@media (max-width: 850px) {
  html {
    scroll-padding-top: 88px;
  }

  section[id] {
    scroll-margin-top: 88px;
  }

  .formats {
    padding-top: 110px !important;
  }
}


/* V6 FORCE FIX — Booking Options heading clearance */
.formats {
  padding-top: 190px !important;
  overflow: visible !important;
  position: relative !important;
  z-index: 2 !important;
}

.formats .kicker {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.formats h2 {
  margin-top: 0 !important;
  padding-top: 12px !important;
  line-height: 1.10 !important;
  overflow: visible !important;
}

@media (max-width: 850px) {
  .formats {
    padding-top: 125px !important;
  }
  .formats h2 {
    padding-top: 8px !important;
  }
}


/* V7 — Hank Thomas / Drum Major for Justice featured video */
.special-video{
  background:#141414;
  color:#fff;
  padding:100px max(28px,calc((100vw - var(--max))/2));
  border-top:1px solid #242424;
}
.special-video-inner{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:70px;
  align-items:start;
}
.special-video-copy h2{
  font-family:Georgia,Times,serif;
  font-size:clamp(40px,4.6vw,68px);
  line-height:1.02;
  font-weight:400;
  letter-spacing:-.03em;
  margin:0 0 24px;
}
.special-video-copy h2 em{
  color:var(--gold);
  font-weight:400;
}
.special-video-copy p{
  color:#aaa59b;
  line-height:1.75;
  font-size:16px;
  max-width:520px;
}
.special-link{
  color:#e2c67e !important;
  border-bottom-color:#e2c67e !important;
}
.special-video-figure{
  margin:0;
}
.special-video-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#050505;
  border:1px solid #2e2e2e;
  overflow:hidden;
}
.special-video-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:#050505;
}
.special-video-figure figcaption{
  margin-top:14px;
  color:#c9c3b7;
  font-family:Georgia,serif;
  font-size:15px;
  line-height:1.55;
  font-style:italic;
}

@media(max-width:850px){
  .special-video{
    padding:80px 24px;
  }
  .special-video-inner{
    grid-template-columns:1fr;
    gap:35px;
  }
  .special-video-copy p{
    max-width:none;
  }
}


/* V8 — Two prominent featured video sections */
.featured-videos{
  background:#101010;
  color:#fff;
  padding:110px max(28px,calc((100vw - var(--max))/2));
  border-top:1px solid #222;
  border-bottom:1px solid #222;
}
.featured-videos-heading{
  max-width:920px;
  margin-bottom:70px;
}
.featured-videos-heading h2{
  font-family:Georgia,Times,serif;
  font-size:clamp(46px,5.4vw,78px);
  line-height:1.02;
  font-weight:400;
  letter-spacing:-.035em;
  margin:0 0 24px;
}
.featured-videos-heading h2 em{
  color:var(--gold);
  font-weight:400;
}
.featured-videos-heading p{
  max-width:760px;
  color:#aaa59b;
  line-height:1.75;
  font-size:17px;
}
.featured-video-card{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:64px;
  align-items:center;
  padding:64px 0;
  border-top:1px solid #2a2a2a;
}
.featured-video-card.reverse{
  grid-template-columns:1.28fr .72fr;
}
.featured-video-card.reverse .featured-video-copy{
  order:2;
}
.featured-video-card.reverse .featured-video-figure{
  order:1;
}
.featured-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:.2em;
  color:var(--gold);
  margin-bottom:20px;
}
.featured-video-copy h3{
  font-family:Georgia,Times,serif;
  font-size:clamp(34px,3.5vw,56px);
  line-height:1.04;
  font-weight:400;
  letter-spacing:-.025em;
  margin:0 0 22px;
}
.featured-video-copy h3 em{
  color:var(--gold);
  font-weight:400;
}
.featured-video-copy p{
  color:#aaa59b;
  line-height:1.7;
  font-size:16px;
}
.featured-links{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  margin-top:26px;
}
.featured-links a{
  color:#e4c777;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.11em;
  border-bottom:1px solid #6e5d33;
  padding-bottom:5px;
}
.featured-video-figure{
  margin:0;
}
.featured-video-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#000;
  border:1px solid #2b2b2b;
  box-shadow:0 24px 60px rgba(0,0,0,.35);
  overflow:hidden;
}
.featured-video-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.featured-video-figure figcaption{
  margin-top:14px;
  color:#c4beb2;
  font-family:Georgia,serif;
  font-size:15px;
  line-height:1.55;
  font-style:italic;
}

@media(max-width:850px){
  .featured-videos{
    padding:80px 24px;
  }
  .featured-video-card,
  .featured-video-card.reverse{
    grid-template-columns:1fr;
    gap:34px;
    padding:46px 0;
  }
  .featured-video-card.reverse .featured-video-copy,
  .featured-video-card.reverse .featured-video-figure{
    order:initial;
  }
  .featured-videos-heading{
    margin-bottom:45px;
  }
}


/* V9 — linked Distinction & Impact card titles with click icon */
.click-title{
  margin-top:72px !important;
}
.click-title a{
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:inherit;
  text-decoration:none;
}
.click-title a:hover{
  color:#7e6737;
}
.click-title img{
  width:34px;
  height:34px;
  object-fit:contain;
  flex:0 0 34px;
  mix-blend-mode:multiply;
  background:transparent;
}
@media(max-width:850px){
  .click-title{
    margin-top:38px !important;
  }
  .click-title img{
    width:30px;
    height:30px;
    flex-basis:30px;
  }
}

/* V9.2 photo refinements */
.gallery .gallery-red-bowtie{
  object-fit:cover;
  object-position:28% center !important;
}
.robert-smith-feature{
  background:#e9e2d2;
  padding:90px max(28px,calc((100vw - var(--max))/2));
}
.robert-smith-feature figure{
  margin:0 auto;
  max-width:760px;
}
.robert-smith-feature img{
  width:100%;
  height:auto;
  object-fit:contain;
  background:#111;
}
.robert-smith-feature figcaption{
  margin-top:14px;
  font-family:Georgia,serif;
  font-size:16px;
  line-height:1.5;
  color:#3e3a33;
  text-align:center;
  font-style:italic;
}
@media(max-width:850px){
  .robert-smith-feature{padding:65px 24px;}
  .gallery .gallery-red-bowtie{object-position:30% center !important;}
}


/* V9.4 Robert Smith section */
.robert-smith-feature{
  background:#efe7d7;
  padding:90px max(28px,calc((100vw - var(--max))/2));
  border-top:1px solid #d7cdbb;
  border-bottom:1px solid #d7cdbb;
}
.robert-smith-feature .kicker{
  margin-bottom:16px;
}
.robert-smith-feature h2{
  margin:0 0 34px;
}
.robert-smith-feature figure{
  margin:0 auto;
  max-width:760px;
}
.robert-smith-feature img{
  width:100%;
  height:auto;
  display:block;
  border:1px solid #cdbfa6;
  background:#111;
}
.robert-smith-feature figcaption{
  margin-top:14px;
  font-family:Georgia,serif;
  font-size:16px;
  line-height:1.55;
  color:#3f3a31;
  text-align:center;
  font-style:italic;
}
@media(max-width:850px){
  .robert-smith-feature{
    padding:64px 24px;
  }
}


/* V9.5 — Distinguished Company & Major Stages */
.distinguished-company{
  background:#efe7d7;
  padding:110px max(28px,calc((100vw - var(--max))/2));
  border-top:1px solid #d7cdbb;
  border-bottom:1px solid #d7cdbb;
}
.distinguished-company-heading{
  max-width:900px;
  margin-bottom:58px;
}
.distinguished-company-heading h2{
  font-family:Georgia,Times,serif;
  font-size:clamp(46px,5vw,72px);
  line-height:1.03;
  font-weight:400;
  letter-spacing:-.03em;
  margin:0 0 24px;
}
.distinguished-company-heading h2 em{
  color:#8c6f36;
  font-weight:400;
}
.distinguished-company-heading p{
  max-width:760px;
  color:#5b554b;
  font-size:17px;
  line-height:1.7;
}
.distinguished-grid{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:32px;
  align-items:start;
}
.distinguished-card{
  margin:0;
  background:#f8f3e9;
  border:1px solid #cdbfa6;
  box-shadow:0 18px 40px rgba(49,41,28,.08);
}
.distinguished-card img{
  width:100%;
  display:block;
  object-fit:cover;
}
.distinguished-card:not(.distinguished-card-tall) img{
  aspect-ratio:16/10;
}
.distinguished-card-tall img{
  aspect-ratio:3/4;
  object-position:center top;
}
.distinguished-card figcaption{
  padding:18px 20px 20px;
  font-family:Georgia,serif;
  font-size:15px;
  line-height:1.55;
  color:#3e392f;
}
@media(max-width:850px){
  .distinguished-company{
    padding:75px 24px;
  }
  .distinguished-company-heading{
    margin-bottom:38px;
  }
  .distinguished-grid{
    grid-template-columns:1fr;
    gap:24px;
  }
  .distinguished-card-tall{
    max-width:620px;
    margin-left:auto;
    margin-right:auto;
  }
}


/* V9.6 — forced heading clearance for Distinguished Company section */
.distinguished-company{
  padding-top:170px !important;
  overflow:visible !important;
  position:relative !important;
  z-index:2 !important;
}
.distinguished-company .kicker{
  margin-top:0 !important;
  padding-top:0 !important;
}
.distinguished-company h2{
  margin-top:0 !important;
  padding-top:14px !important;
  line-height:1.10 !important;
  overflow:visible !important;
}
@media(max-width:850px){
  .distinguished-company{
    padding-top:125px !important;
  }
  .distinguished-company h2{
    padding-top:8px !important;
  }
}


/* V9.7 — editorial refinement of Distinguished Company section */
.distinguished-company{
  background:#efe7d7;
  padding:145px max(28px,calc((100vw - var(--max))/2)) 125px !important;
  overflow:visible !important;
  position:relative !important;
  z-index:2 !important;
}
.distinguished-company-heading{
  max-width:820px;
  margin-bottom:74px !important;
}
.distinguished-company-heading .kicker{
  margin-bottom:22px !important;
}
.distinguished-company-heading h2{
  font-family:Georgia,Times,serif;
  font-size:clamp(42px,4.4vw,64px) !important;
  line-height:1.08 !important;
  font-weight:400;
  letter-spacing:-.025em;
  margin:0 0 28px !important;
  padding-top:10px !important;
  overflow:visible !important;
}
.distinguished-company-heading h2 em{
  color:#8c6f36;
  font-weight:400;
}
.distinguished-company-heading p{
  max-width:720px;
  color:#5b554b;
  font-size:17px;
  line-height:1.78;
}
.distinguished-grid{
  display:grid;
  grid-template-columns:1fr 1fr !important;
  gap:36px !important;
  align-items:stretch !important;
}
.distinguished-card{
  margin:0;
  background:#f8f3e9;
  border:1px solid #cdbfa6;
  box-shadow:0 16px 34px rgba(49,41,28,.07);
  display:flex;
  flex-direction:column;
}
.distinguished-card img{
  width:100%;
  display:block;
  object-fit:cover;
  aspect-ratio:4/3 !important;
}
.distinguished-card-tall img{
  aspect-ratio:4/3 !important;
  object-position:center 28% !important;
}
.distinguished-card:not(.distinguished-card-tall) img{
  aspect-ratio:4/3 !important;
  object-position:center center !important;
}
.distinguished-card figcaption{
  padding:20px 22px 22px;
  font-family:Georgia,serif;
  font-size:15px;
  line-height:1.6;
  color:#3e392f;
  min-height:92px;
}
@media(max-width:850px){
  .distinguished-company{
    padding:105px 24px 78px !important;
  }
  .distinguished-company-heading{
    margin-bottom:44px !important;
  }
  .distinguished-company-heading h2{
    font-size:clamp(38px,10vw,54px) !important;
    line-height:1.08 !important;
  }
  .distinguished-grid{
    grid-template-columns:1fr !important;
    gap:26px !important;
  }
  .distinguished-card{
    max-width:680px;
    margin-left:auto;
    margin-right:auto;
  }
  .distinguished-card figcaption{
    min-height:0;
  }
}
