:root{--red:#bc101e;--ink:#171414;--cream:#f8f5f1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);margin:0;font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.announcement{background:var(--red);color:#fff;text-align:center;letter-spacing:.19em;text-transform:uppercase;padding:11px 16px;font-size:11px}.nav{background:#fff;justify-content:space-between;align-items:center;height:84px;padding:0 6%;display:flex}.brand{letter-spacing:-.06em;font-family:Playfair Display,serif;font-size:24px}.brand span{color:var(--red);font-style:italic}.navlinks{text-transform:uppercase;letter-spacing:.15em;align-items:center;gap:35px;font-size:11px;display:flex}.btn{border:1px solid var(--red);background:var(--red);color:#fff;text-transform:uppercase;letter-spacing:.14em;cursor:pointer;justify-content:center;align-items:center;padding:16px 27px;font-size:11px;font-weight:700;transition:all .2s;display:inline-flex}.btn:hover{background:#880b15;border-color:#880b15;transform:translateY(-2px)}.btn.outline{color:var(--ink);border-color:var(--ink);background:0 0}.btn.outline:hover{background:var(--ink);color:#fff}.hero{background:#fff;grid-template-columns:1.03fr .97fr;min-height:650px;display:grid}.hero-copy{flex-direction:column;justify-content:center;padding:100px 7% 85px 12%;display:flex}.eyebrow{letter-spacing:.29em;text-transform:uppercase;color:var(--red);font-size:11px;font-weight:700}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Playfair Display,serif;font-weight:400}h1{letter-spacing:-.07em;margin:27px 0;font-size:clamp(65px,7.2vw,115px);line-height:.99}h1 em,h2 em{color:var(--red);font-weight:400}.lead{color:#655d5b;max-width:430px;font-size:15px;line-height:1.95}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:25px;display:flex}.hero-photo{background:#e9e0d9;position:relative;overflow:hidden}.hero-photo img{object-fit:cover;object-position:center 22%;width:100%;height:100%;position:absolute;inset:0}.photo-stamp{background:#fff;padding:15px 20px;font-family:Playfair Display,serif;font-size:18px;font-style:italic;position:absolute;bottom:27px;left:26px;box-shadow:0 10px 25px #0002}.marquee{background:var(--ink);color:#fff;letter-spacing:.22em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:40px;padding:21px;font-size:11px;display:flex}.marquee b{color:#e2444b}.intro{text-align:center;max-width:1050px;margin:auto;padding:110px 8%}.intro h2{letter-spacing:-.05em;margin:20px 0;font-size:clamp(40px,5vw,72px);line-height:1.17}.intro p{color:#635d5b;max-width:650px;margin:auto;line-height:2}.dots{background-color:#fff;background-image:radial-gradient(#1c1a1a 2.8px,#0000 3px);background-size:30px 30px;padding:90px 7%}.dots-inner{background:#fff;grid-template-columns:.85fr 1.15fr;max-width:1100px;margin:auto;display:grid;box-shadow:0 25px 65px #0002}.dots-photo{min-height:540px;position:relative;overflow:hidden}.dots-photo img{object-fit:cover;object-position:center top;width:100%;height:100%;position:absolute}.dots-copy{flex-direction:column;justify-content:center;padding:85px 11%;display:flex}.dots-copy h2{letter-spacing:-.05em;margin:20px 0;font-size:clamp(44px,5vw,68px);line-height:1.1}.dots-copy p{color:#655d5b;line-height:1.9}.features{grid-template-columns:repeat(3,1fr);gap:25px;margin-top:24px;display:grid}.feature{border-top:1px solid #ded8d3;padding-top:17px}.feature strong{font-family:Playfair Display,serif;font-size:19px;font-weight:400;display:block}.feature small{color:#777;font-size:12px;line-height:1.6}.red-section{background:var(--red);color:#fff;text-align:center;padding:105px 8%;position:relative;overflow:hidden}.red-section:before,.red-section:after{content:"✦";color:#ffffff30;font-size:190px;position:absolute;top:-70px;left:0}.red-section:after{inset:auto 0 -80px auto}.red-section .eyebrow{color:#ffe1e3}.red-section h2{letter-spacing:-.06em;max-width:900px;margin:25px auto;font-size:clamp(53px,7vw,100px);line-height:1.05}.red-section h2 em{color:#fff}.red-section p{color:#ffe5e6;max-width:630px;margin:0 auto 30px;line-height:1.9}.red-section .btn{color:var(--red);background:#fff;border-color:#fff}.event{color:#fff;background:#171414;grid-template-columns:1fr 1fr;display:grid}.event-photo{min-height:640px;position:relative}.event-photo img{object-fit:cover;object-position:center top;width:100%;height:100%;position:absolute;inset:0}.event-copy{flex-direction:column;justify-content:center;padding:90px 10%;display:flex}.event-copy .eyebrow{color:#ef7b80}.event h2{letter-spacing:-.05em;margin:20px 0;font-size:clamp(46px,5vw,75px);line-height:1.13}.event h2 em{color:#ef7b80}.event p{color:#d4caca;line-height:1.9}.event-meta{gap:14px;margin:18px 0 32px;display:grid}.event-meta div{letter-spacing:.08em;border-bottom:1px solid #ffffff3d;padding:13px 0;font-size:13px}.event-meta strong{color:#ef8e94;text-transform:uppercase;letter-spacing:.17em;margin-bottom:5px;font-size:10px;display:block}.registration{text-align:center;background:#f8f5f1;padding:105px 7%}.registration h2{letter-spacing:-.05em;margin:18px 0;font-size:clamp(44px,5vw,72px)}.registration>p{color:#6b6260;max-width:560px;margin:0 auto 34px;line-height:1.9}.formbox{text-align:left;background:#fff;border:1px solid #e5dfd9;max-width:630px;margin:auto;padding:42px;box-shadow:0 14px 45px #2d1b1b0c}.formgrid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.field{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.field label{letter-spacing:.15em;text-transform:uppercase;font-size:10px;font-weight:700}.field input{background:#fff;border:1px solid #dcd4d1;border-radius:0;outline:none;width:100%;padding:15px}.field input:focus{border-color:var(--red)}.formbox .btn{width:100%}.note{color:#756c69;margin-top:18px;font-size:12px;line-height:1.7}.status{background:#f9f6f3;border:1px solid #ddd;margin-top:20px;padding:17px;font-size:13px;line-height:1.7;display:none}.status a{color:var(--red);text-decoration:underline}.footer{color:#fff;background:#111;justify-content:space-between;align-items:center;gap:25px;padding:55px 8%;display:flex}.footer .brand{font-size:30px}.footer p{color:#a99d9d;margin:10px 0 0;font-size:12px}.footer small{color:#a99d9d;font-size:11px}.mobile-nav{display:none}@media (width<=850px){.nav{height:70px;padding:0 5%}.navlinks a:not(.btn){display:none}.navlinks .btn{padding:13px;font-size:10px}.hero,.dots-inner,.event{grid-template-columns:1fr}.hero-copy{padding:70px 8%}.hero-photo{min-height:540px}.dots{padding:50px 5%}.dots-photo{min-height:470px}.dots-copy{padding:55px 8%}.event-photo{min-height:500px}.event-copy{padding:70px 8%}.intro,.registration{padding:80px 7%}.footer{text-align:center;flex-direction:column}.features{gap:12px}}@media (width<=520px){h1{font-size:67px}.hero-photo{min-height:450px}.dots-photo{min-height:400px}.event-photo{min-height:420px}.formbox{padding:25px}.formgrid,.features{grid-template-columns:1fr}.marquee{gap:12px;font-size:9px}.photo-stamp{font-size:14px}}html{line-height:normal}p{margin-bottom:1em}h1,h2,h3{font-weight:400}.field input::placeholder{color:#757575;opacity:1}.status{display:block}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.status.error{color:#7a0c15;background:#fdf3f4;border-color:#e3b3b7}.btn:disabled{opacity:.7;cursor:wait;transform:none}
