@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/font-6.ttf) format('truetype');
}

:root{
  --black:#0a0a0a; --charcoal:#151515; --gold:#d7a536; --gold2:#f1c75b;
  --cream:#f7f1e8; --white:#fff; --ink:#1b1b1b; --line:rgba(255,255,255,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif;line-height:1.6}
a{color:inherit}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:16px 5vw;background:rgba(8,8,8,.96);color:#fff;border-bottom:1px solid rgba(215,165,54,.25)}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:700;letter-spacing:.08em}
.brand small{display:block;color:var(--gold);font-size:.67rem;letter-spacing:.23em}
.brand-mark{color:var(--gold);font-size:1.25rem}
nav{display:flex;gap:24px;align-items:center}
nav a{text-decoration:none;font-size:.88rem}
.nav-cta{border:1px solid var(--gold);padding:8px 14px}
.menu-button{display:none}
.hero{position:relative;min-height:82vh;display:grid;place-items:center;text-align:center;color:white;background:url('assets/ball.webp') center/cover no-repeat}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.48),rgba(0,0,0,.82))}
.hero-content{position:relative;max-width:980px;padding:80px 24px}
.eyebrow,.section-kicker{font-weight:700;letter-spacing:.18em;color:var(--gold);font-size:.78rem}
h1,h2,h3{font-family:Georgia,serif;line-height:1}
h1{font-size:clamp(3.3rem,8vw,7rem);margin:.2em 0}
h1 span{color:var(--gold2);font-style:italic}
.lede{font-size:1.25rem;max-width:720px;margin:0 auto 28px}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.button{display:inline-block;text-decoration:none;padding:13px 22px;font-weight:700;letter-spacing:.05em}
.gold{background:var(--gold);color:#0a0a0a}
.outline{border:1px solid #fff;color:#fff}
.dark{background:#111;color:#fff}
.presented{margin-top:28px;font-size:.85rem;letter-spacing:.12em}
.intro,.tickets,.program-ads{padding:84px 7vw}
.intro{display:grid;grid-template-columns:1fr 1.15fr;gap:54px;align-items:center}
h2{font-size:clamp(2.6rem,5vw,4.8rem);margin:.15em 0 .35em}
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pillars article{padding:24px;background:white;border-left:4px solid var(--gold)}
.pillars strong{display:block;letter-spacing:.12em;font-size:.85rem}
.pillars span{display:block;margin-top:5px;color:#555}
.split{display:grid;grid-template-columns:1fr 1fr;min-height:620px}
.split.reverse .feature-image{order:2}
.feature-image{min-height:560px;background-position:center;background-size:cover}
.feature-image.ball{background-image:url('assets/ball.webp')}
.feature-image.expo{background-image:url('assets/market2.webp')}
.feature-copy{padding:72px 7vw;background:#111;color:#fff;display:flex;flex-direction:column;justify-content:center}
.feature-copy ul{padding-left:20px}
.feature-copy li{margin:7px 0}
.note,.fineprint{font-size:.78rem;opacity:.75;margin-top:22px}
.section-heading{text-align:center;max-width:820px;margin:0 auto 40px}
.section-heading.light{color:#fff}
.cards{display:grid;gap:18px;max-width:1200px;margin:0 auto}
.cards.three{grid-template-columns:repeat(3,1fr)}
.cards.four{grid-template-columns:repeat(4,1fr)}
.cards.two{grid-template-columns:repeat(2,1fr)}
.card{background:white;border:1px solid #e5dfd4;padding:30px}
.card-label{letter-spacing:.14em;font-size:.75rem;font-weight:700}
.price{font-family:Georgia,serif;font-size:3.4rem;color:#a96f00;font-weight:700}
.card a{font-weight:700;color:#8b5b00}
.featured-card{border:2px solid var(--gold);transform:translateY(-8px)}
.sponsors,.exhibit{padding:84px 7vw;background:#0c0c0c;color:#fff}
.sponsor-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.sponsor-grid article{padding:24px;background:#171717;border-top:3px solid var(--gold)}
.sponsor-grid span{color:var(--gold2);font-weight:700}
.sponsor-grid h3{font-size:2rem;margin:.3em 0}
.center{text-align:center;margin-top:34px}
.fineprint{max-width:1000px;margin:24px auto 0;text-align:center}
.dark-text{color:#444}
.dark-cards .card{background:#171717;border-color:#333;color:#fff}
.contact{display:grid;grid-template-columns:280px 1fr;gap:50px;align-items:center;padding:72px 7vw;background:#f7f1e8}
.cosbe-logo{width:100%;max-width:260px;background:white}
footer{background:#050505;color:#aaa;padding:24px 7vw;text-align:center;font-size:.78rem}

@media(max-width:1000px){
  nav{position:absolute;display:none;top:72px;left:0;right:0;background:#090909;padding:20px 5vw;flex-direction:column;align-items:flex-start}
  nav.open{display:flex}
  .menu-button{display:block;background:none;color:#fff;border:1px solid #555;padding:8px 12px}
  .intro,.split,.contact{grid-template-columns:1fr}
  .split.reverse .feature-image{order:0}
  .cards.three,.cards.four,.sponsor-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .brand{font-size:.8rem}
  .hero{min-height:72vh}
  .intro,.tickets,.program-ads,.sponsors,.exhibit{padding:60px 6vw}
  .pillars,.cards.three,.cards.four,.cards.two,.sponsor-grid{grid-template-columns:1fr}
  .featured-card{transform:none}
  .feature-copy{padding:52px 6vw}
  .feature-image{min-height:390px}
  .contact{grid-template-columns:1fr;padding:56px 6vw}
}

/* Launch review refinements */
html{scroll-padding-top:105px}.skip-link{position:absolute;top:-80px;left:20px;z-index:100;background:#fff;color:#111;padding:12px}.skip-link:focus{top:10px}a:focus-visible,button:focus-visible{outline:3px solid #efc45b;outline-offset:5px}h1{font-size:clamp(3rem,7vw,6rem);line-height:1.08}h2{font-size:clamp(2.35rem,4.2vw,4.2rem);line-height:1.1}.hero{min-height:78vh}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.62),rgba(0,0,0,.86))}.venue-line{font-size:.8rem;color:#e0d7c3}.sponsor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sponsor-grid h3{line-height:1.15;font-size:1.9rem}.dark-cards .card a{color:#f1c75b}.section-kicker{color:#89620f}.light .section-kicker,.feature-copy .section-kicker{color:#e4bc60}.registration-note{margin-bottom:28px}.card{display:flex;flex-direction:column}.card a{margin-top:auto;padding-top:15px}.note,.fineprint{opacity:1;line-height:1.7}.sponsors .fineprint,.exhibit .fineprint{color:#c8c4ba}.feature-copy .note{color:#c8c4ba}@media(max-width:1000px){.sponsor-grid{grid-template-columns:1fr 1fr}nav{top:100%}}@media(max-width:640px){.sponsor-grid{grid-template-columns:1fr}.hero-content{padding:64px 20px}.brand{letter-spacing:.03em}.brand small{letter-spacing:.12em}.button{min-height:48px}.hero{min-height:660px}.feature-image{min-height:300px}.cards .card{padding:26px}.contact{gap:24px}.cosbe-logo{max-width:150px}h1{font-size:clamp(2.5rem,10vw,3.4rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Editorial typography */
body{font-family:'Manrope',Arial,sans-serif;line-height:1.75}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-.025em;text-wrap:balance}
h1{font-size:clamp(3.7rem,8.5vw,7.2rem);line-height:.98}
h1 span{font-weight:500}
h2{font-size:clamp(3rem,5.4vw,5.2rem);line-height:1.02}
h3{font-size:2rem;line-height:1.12}
.lede{font-size:1.12rem;line-height:1.8;max-width:660px}
.brand{font-weight:600;letter-spacing:.05em}
.eyebrow,.section-kicker,.card-label{font-weight:600;letter-spacing:.2em}
.button,nav a{font-size:.85rem;font-weight:600}
.price{font-family:'Manrope',Arial,sans-serif;font-size:3rem;font-weight:500;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.sponsor-grid h3{font-size:2.2rem;font-weight:600}
.contact .button{max-width:100%;overflow-wrap:anywhere;letter-spacing:0}
@media(max-width:640px){h1{font-size:clamp(3.1rem,12vw,4.4rem)}h2{font-size:clamp(2.8rem,11vw,3.7rem)}.lede{font-size:1rem}.brand{font-size:.75rem}.hero-content{padding:64px 20px}}

a[href^="mailto:"],.fineprint{overflow-wrap:anywhere}

/* Sculpted rounded-square controls */
.button,.nav-cta,.menu-button,.card > a{
 --edge:#80601c;--shadow:rgba(20,14,3,.24);
 position:relative;border-radius:13px;border:1px solid #e6c778;
 background:linear-gradient(155deg,#f7dfa0 0%,#deb347 45%,#c89529 100%);
 color:#19150c;font-family:'Manrope',Arial,sans-serif;font-weight:700;
 text-align:center;text-decoration:none;line-height:1.5;min-height:48px;
 padding:14px 22px;isolation:isolate;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.7),inset 0 -1px 0 rgba(92,57,0,.14),0 5px 0 var(--edge),0 12px 22px var(--shadow);
 transform:translateY(0);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.button.outline,.button.dark,.menu-button{
 --edge:#080808;--shadow:rgba(0,0,0,.35);
 background:linear-gradient(150deg,#41403c,#22221f 55%,#141413);
 border-color:#77705d;color:#fff;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 #080808,0 5px 0 var(--edge),0 12px 22px var(--shadow);
}
.card > a{display:block;margin-top:auto;padding:13px 16px;font-size:.82rem;letter-spacing:.01em;color:#19150c}
.dark-cards .card > a{color:#19150c}
.nav-cta,.menu-button{padding:10px 17px;min-height:44px;border-radius:11px;font-size:.8rem}
.cta-row{gap:18px}.center .button{margin:8px}.contact .button{font-size:.82rem;padding:15px 18px}
@media(hover:hover) and (pointer:fine){
 .button:hover,.nav-cta:hover,.menu-button:hover,.card > a:hover{
 transform:translateY(-4px);filter:brightness(1.06);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 8px 0 var(--edge),0 20px 30px var(--shadow);
 }
}
.button:active,.nav-cta:active,.menu-button:active,.card > a:active{
 transform:translateY(4px);box-shadow:inset 0 1px 3px rgba(0,0,0,.15),0 1px 0 var(--edge),0 4px 8px var(--shadow);
}
.button:focus-visible,.nav-cta:focus-visible,.menu-button:focus-visible,.card > a:focus-visible{outline:3px solid #c48b1b;outline-offset:8px}
@media(prefers-reduced-motion:reduce){.button,.nav-cta,.menu-button,.card > a{transition:none}.button:hover,.nav-cta:hover,.menu-button:hover,.card > a:hover,.button:active,.nav-cta:active,.menu-button:active,.card > a:active{transform:none}}
