:root { --black:#050505; --white:#fff; --soft:#b9b9b9; --line:#303030; }
* { box-sizing:border-box; }
html { background:var(--black); scroll-behavior:smooth; }
body { margin:0; background:var(--black); color:var(--white); font-family:Arial, Helvetica, sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
.shell { width:min(100% - 80px, 1440px); margin-inline:auto; }
.site-header { height:104px; display:flex; align-items:center; justify-content:space-between; }
.wordmark { font-size:25px; font-weight:700; letter-spacing:-1.8px; white-space:nowrap; }
.wordmark em { font-style:italic; }
.menu-link { font-size:15px; font-weight:700; letter-spacing:-.4px; }
.menu-link span { margin-left:6px; }
.eyebrow { margin:0; color:var(--soft); font-size:12px; font-weight:700; letter-spacing:.08em; }
.hero { min-height:calc(100vh - 104px); display:flex; flex-direction:column; padding-block:40px 72px; }
.hero h1, h1, h2 { margin:0; font-size:clamp(60px, 10.2vw, 157px); line-height:.86; font-weight:700; letter-spacing:-.095em; }
h1 em, h2 em { font-style:italic; }
.hero h1 { margin:auto 0; }
.hero-bottom { display:flex; align-items:end; justify-content:space-between; gap:32px; }
.hero-bottom p { max-width:300px; margin:0; font-size:20px; line-height:1.2; letter-spacing:-.9px; }
.button { display:inline-flex; align-items:center; gap:42px; padding:19px 22px; border:2px solid var(--white); font-size:15px; font-weight:700; transition:background .2s,color .2s; }
.button:hover { background:var(--white); color:var(--black); }
.rule-top { border-top:2px solid var(--white); }
.statement { display:grid; grid-template-columns:1fr 3fr; gap:40px; padding-block:120px 146px; }
.section-number { margin:3px 0 0; color:var(--soft); font-size:13px; font-weight:700; }
.statement .large-copy { max-width:640px; margin:68px 0 0; font-size:clamp(24px, 2.6vw, 42px); line-height:1.05; letter-spacing:-.055em; }
.services { padding-block:28px 120px; }
.section-intro { display:flex; justify-content:space-between; margin-bottom:84px; }
.services ol { margin:0; padding:0; list-style:none; }
.services li { display:grid; grid-template-columns:1fr 3fr; gap:40px; padding:24px 0 34px; border-top:1px solid var(--line); }
.services li > span { color:var(--soft); font-size:13px; font-weight:700; }
h3 { margin:0; font-size:clamp(33px, 4.3vw, 67px); line-height:.93; letter-spacing:-.075em; }
.services li p { max-width:410px; margin:24px 0 0; color:var(--soft); font-size:17px; line-height:1.25; letter-spacing:-.5px; }
.audience { display:grid; grid-template-columns:1fr 3fr; gap:40px; padding-block:30px 130px; }
.audience h2 { margin-top:65px; font-size:clamp(47px, 7.2vw, 111px); }
.cta { padding-block:30px 112px; }
.cta > a { display:flex; align-items:center; justify-content:space-between; margin-top:80px; font-size:clamp(48px, 8.3vw, 128px); font-weight:700; line-height:.9; letter-spacing:-.085em; }
.cta > a span { font-size:.65em; font-weight:400; }
.site-footer { display:grid; grid-template-columns:1fr 1fr 1fr; gap:25px; padding-block:28px 42px; border-top:1px solid var(--line); color:var(--soft); font-size:13px; }
.site-footer .wordmark { color:var(--white); }
.site-footer div { display:flex; flex-direction:column; gap:8px; }
.site-footer p { margin:0; text-align:right; }
.contact-page { min-height:calc(100vh - 104px); padding-top:72px; padding-bottom:140px; }
.contact-page h1 { margin-top:75px; }
.contact-intro { max-width:560px; margin:64px 0 96px; font-size:clamp(23px, 2.8vw, 40px); line-height:1.04; letter-spacing:-.055em; }
.event-form { max-width:980px; padding-top:28px; }
.form-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:30px 40px; }
.event-form label { display:flex; flex-direction:column; gap:12px; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.event-form label small { color:var(--soft); font-size:10px; font-weight:400; letter-spacing:.04em; }
.event-form input:not([type="checkbox"]), .event-form select, .event-form textarea { width:100%; appearance:none; border:0; border-bottom:1px solid var(--soft); border-radius:0; background:transparent; color:var(--white); font:400 21px/1.2 Arial, Helvetica, sans-serif; letter-spacing:-.65px; outline:none; padding:0 0 12px; }
.event-form input:focus, .event-form select:focus, .event-form textarea:focus { border-color:var(--white); }
.event-form select { background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M2 5l6 6 6-6' fill='none' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 2px center; }
.event-form option { background:var(--black); }
.event-form textarea { min-height:115px; resize:vertical; }
.event-form textarea::placeholder { color:#777; }
.message-label { margin-top:45px; }
.consent { flex-direction:row !important; align-items:flex-start; margin-top:28px; max-width:610px; color:var(--soft); font-size:12px !important; font-weight:400 !important; letter-spacing:0 !important; line-height:1.3; text-transform:none !important; }
.consent input { width:16px; height:16px; margin:0; accent-color:var(--white); }
.form-button { display:flex; justify-content:space-between; width:100%; margin-top:38px; border:2px solid var(--white); background:transparent; color:var(--white); cursor:pointer; padding:19px 22px; font:700 15px Arial, Helvetica, sans-serif; transition:background .2s,color .2s; }
.form-button:hover { background:var(--white); color:var(--black); }
.form-privacy { margin:18px 0 0; color:var(--soft); font-size:12px; line-height:1.3; }
.honeypot { display:none; }
.form-success { margin:35px 0 0; max-width:620px; font-size:clamp(27px, 4vw, 54px); font-weight:700; line-height:.95; letter-spacing:-.07em; }
.contact-note { max-width:360px; margin:74px 0 0; color:var(--soft); font-size:15px; line-height:1.3; }
.contact-note p { margin:0; }
@media (max-width:680px) { .shell { width:min(100% - 40px, 1440px); }.site-header { height:78px; }.wordmark { font-size:22px; }.hero { min-height:calc(100svh - 78px); padding-block:25px 42px; }.hero h1 { font-size:clamp(58px, 16.5vw, 105px); }.hero-bottom { display:block; }.hero-bottom p { margin-bottom:28px; font-size:18px; }.button { width:100%; justify-content:space-between; }.statement, .audience { grid-template-columns:1fr; gap:48px; padding-block:70px; }.statement .large-copy { margin-top:45px; }.services { padding-bottom:70px; }.section-intro { margin-bottom:50px; }.services li { grid-template-columns:1fr; gap:15px; }.services li p { margin-top:18px; }.audience h2 { margin-top:45px; }.cta { padding-bottom:75px; }.cta > a { margin-top:55px; font-size:clamp(46px, 13.2vw, 76px); }.site-footer { grid-template-columns:1fr; padding-bottom:32px; }.site-footer p { text-align:left; }.contact-page { min-height:calc(100svh - 78px); padding-top:45px; padding-bottom:80px; }.contact-page h1 { margin-top:55px; font-size:clamp(56px, 15.8vw, 93px); }.contact-intro { margin-block:52px 70px; }.form-grid { grid-template-columns:1fr; gap:28px; }.event-form input:not([type="checkbox"]), .event-form select, .event-form textarea { font-size:19px; } }
