:root{--purple:#2b103f;--purple-2:#4c1769;--red:#a41d35;--gold:#f5c45d;--gold-dark:#7a5300;--cream:#fffaf0;--ink:#20182a;--muted:#62586b;--line:#ded4e5;--white:#fff;--radius:18px;--shadow:0 20px 55px rgba(25,9,35,.16);--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif;font-size:18px;line-height:1.65}body.modal-open{overflow:hidden}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:4px solid #1683d8;outline-offset:4px}.skip-link{position:fixed;left:16px;top:-100px;z-index:999;background:#fff;color:#000;padding:14px 20px;font-weight:700;border-radius:8px}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:100;min-height:82px;padding:10px max(20px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(43,16,63,.98);color:#fff;border-bottom:3px solid var(--gold);box-shadow:0 4px 20px rgba(0,0,0,.22)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;font-size:17px;line-height:1.2}.brand-mark{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:58px;border:2px solid var(--gold);border-radius:50%;font-family:Georgia,serif;font-size:23px;letter-spacing:-2px}.brand-mark span{color:var(--gold);margin:0 2px}.nav-links{display:flex;align-items:center;gap:5px}.nav-links a{padding:13px 14px;border-radius:10px;text-decoration:none;font-size:16px;font-weight:700}.nav-links a:hover{background:#fff;color:var(--purple)}.menu-toggle{display:none;min-width:92px;min-height:52px;border:2px solid var(--gold);border-radius:10px;background:transparent;color:#fff;font-weight:700}.menu-toggle>span:first-child{font-size:24px;margin-right:6px}.hero{position:relative;overflow:hidden;isolation:isolate;min-height:720px;display:grid;place-items:center;padding:80px 24px;background:linear-gradient(140deg,#160820 0%,var(--purple) 48%,#53102a 100%);color:#fff;text-align:center}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:46px 46px}.glow{position:absolute;z-index:-1;width:430px;height:430px;border-radius:50%;filter:blur(80px);opacity:.45}.glow-one{left:-100px;top:80px;background:#e62439}.glow-two{right:-120px;bottom:40px;background:#f5c45d}.hero-inner{width:min(940px,100%)}.hero-logo{font-family:Georgia,serif;font-weight:700;font-size:clamp(38px,8vw,92px);line-height:1;letter-spacing:-.04em;text-shadow:0 5px 30px rgba(245,196,93,.24)}.hero-logo span{color:var(--gold)}.kicker,.eyebrow{margin:16px 0;color:var(--gold-dark);font-size:15px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.hero .kicker{color:var(--gold);font-size:clamp(18px,2.4vw,25px)}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{line-height:1.14}h1{margin:18px 0;font-family:Georgia,serif;font-size:clamp(40px,7vw,74px)}h2{margin:8px 0 22px;font-family:Georgia,serif;font-size:clamp(38px,5vw,60px)}h3{font-size:25px}.hero-details{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:16px 0;font-size:clamp(21px,3vw,29px)}.slogan{margin:18px 0 30px;color:#f5e8c7;font-family:Georgia,serif;font-size:clamp(20px,2.6vw,28px);font-style:italic}.hero-actions,.hotel-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.button{min-height:56px;display:inline-flex;align-items:center;justify-content:center;padding:12px 25px;border:2px solid transparent;border-radius:12px;text-decoration:none;text-align:center;font-weight:800;cursor:pointer}.button-gold{background:var(--gold);color:#211426;border-color:var(--gold)}.button-gold:hover{background:#ffe092;transform:translateY(-2px)}.button-outline{background:transparent;color:#fff;border-color:#fff}.button-outline:hover{background:#fff;color:var(--purple)}.countdown-wrap{width:min(760px,100%);margin:50px auto 0;padding:22px;background:rgba(10,4,16,.5);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius)}.countdown-wrap>p{margin:0 0 12px;font-weight:700;font-size:20px}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.countdown div{padding:10px;background:rgba(255,255,255,.08);border-radius:12px}.countdown strong,.countdown span{display:block}.countdown strong{font-size:clamp(28px,5vw,48px);line-height:1.2;color:var(--gold)}.countdown span{font-size:15px}.section{padding:100px max(24px,calc((100vw - var(--max))/2))}.section-intro{max-width:790px;margin-bottom:48px}.section-intro>p:last-child{color:var(--muted);font-size:20px}.section-intro.light>p:last-child{color:#e2dbe8}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.value-grid article{padding:34px;background:#fff;border:1px solid var(--line);border-top:6px solid var(--gold);border-radius:var(--radius);box-shadow:var(--shadow)}.value-grid article>span{color:var(--red);font-weight:800}.value-grid h3{margin:12px 0}.value-grid p{margin:0;color:var(--muted)}.schedule-section{background:var(--purple);color:#fff}.schedule-section .eyebrow,.atlanta-section .eyebrow{color:var(--gold)}.day-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:26px}.day-tabs button{min-height:78px;padding:10px;border:2px solid rgba(255,255,255,.45);border-radius:14px;background:transparent;color:#fff;font-weight:800;cursor:pointer}.day-tabs button small{display:block;font-size:14px;font-weight:500}.day-tabs button[aria-selected="true"]{background:var(--gold);color:var(--ink);border-color:var(--gold)}.day-panel{display:grid;gap:16px}.event{display:grid;grid-template-columns:210px 1fr;gap:30px;padding:30px;background:#fff;color:var(--ink);border-radius:var(--radius)}.event h3{margin:0 0 10px}.event p{margin:8px 0}.event-time{font-weight:900;color:var(--red);font-size:20px}.notice{margin-top:16px;padding:18px;border-left:6px solid var(--gold);background:#fff4d6;border-radius:8px}.optional-label{width:max-content;max-width:100%;padding:8px 14px;background:var(--gold);color:var(--ink);border-radius:8px;font-weight:800}.schedule-poster{margin-top:50px;padding:42px;border:1px solid rgba(255,255,255,.28);border-radius:var(--radius);background:linear-gradient(135deg,#160820,#46124f 58%,#7d1833);box-shadow:var(--shadow)}.poster-head{text-align:center;border-bottom:2px solid var(--gold);padding-bottom:25px}.poster-head span,.poster-head strong,.poster-head small{display:block}.poster-head span{color:var(--gold);font-family:Georgia,serif;font-size:clamp(24px,4vw,44px)}.poster-head strong{font-size:clamp(32px,5vw,62px)}.poster-days{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-top:28px}.poster-days div{display:flex;flex-direction:column;gap:8px}.poster-days b{color:var(--gold);font-size:22px}.poster-button{display:flex;margin:24px auto 0}.rsvp-section{background:#f7f1fa}.rsvp-form{max-width:970px;padding:clamp(20px,5vw,50px);background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}fieldset{margin:0 0 34px;padding:0;border:0}legend{width:100%;padding-bottom:12px;border-bottom:2px solid var(--line);font-family:Georgia,serif;font-size:30px;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:24px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700}.form-grid label>span{color:var(--muted);font-size:14px;font-weight:500}.wide{grid-column:1/-1}input,select,textarea{width:100%;min-height:54px;padding:11px 13px;border:2px solid #aca1b2;border-radius:9px;background:#fff;color:var(--ink)}textarea{resize:vertical}input:invalid.touched,select:invalid.touched{border-color:#b00020;background:#fff3f5}.choice-list{display:grid;gap:12px;margin-top:20px}.choice-list.two-col{grid-template-columns:repeat(2,1fr)}.choice-list label,.confirm{display:flex;align-items:flex-start;gap:12px;min-height:58px;padding:14px;border:2px solid var(--line);border-radius:10px;font-weight:700;cursor:pointer}.choice-list input,.confirm input{width:24px;height:24px;min-height:24px;flex:0 0 auto;margin:2px 0}.field-help{margin:8px 0 0;color:var(--muted)}.confirm{margin-bottom:22px;background:#fff8e8}.form-error{margin:14px 0;padding:16px;border-left:6px solid #b00020;background:#fff0f2;color:#7a0015;font-weight:700}.submit-button{width:100%;min-height:66px;font-size:20px}.success-message{margin-top:22px;padding:24px;border:2px solid #328457;border-radius:12px;background:#edfff5;color:#174c31;font-size:20px}.success-message strong{display:block;font-size:25px}.privacy-note{color:var(--muted);font-size:15px}.hotel-section{background:var(--red)}.hotel-card{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:40px;padding:clamp(30px,5vw,58px);background:var(--purple);color:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.hotel-card .eyebrow{color:var(--gold)}address{font-style:normal;font-size:21px}.hotel-actions{flex-direction:column}.hotel-actions .button{width:100%}.atlanta-section{position:relative;overflow:hidden;background:#170b22;color:#fff}.atlanta-section .section-intro{position:relative;z-index:2}.skyline{position:absolute;right:3%;bottom:0;width:45%;height:70%;display:flex;align-items:flex-end;gap:8px;opacity:.25}.skyline i{flex:1;background:linear-gradient(#f5c45d,#8d5d00);border-radius:4px 4px 0 0}.skyline i:nth-child(1){height:36%}.skyline i:nth-child(2){height:56%}.skyline i:nth-child(3){height:43%}.skyline i:nth-child(4){height:80%}.skyline i:nth-child(5){height:63%}.skyline i:nth-child(6){height:95%}.skyline i:nth-child(7){height:51%}.skyline i:nth-child(8){height:72%}.atlanta-tags{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:12px}.atlanta-tags span{padding:10px 15px;border:1px solid var(--gold);border-radius:999px;background:#271135}.faq-list{max-width:930px}.faq-list details{border-bottom:2px solid var(--line)}.faq-list summary{position:relative;padding:24px 56px 24px 4px;font-size:21px;font-weight:800;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:12px;top:17px;font-size:34px;color:var(--red)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{margin:0;padding:0 55px 25px 4px;color:var(--muted)}.contact-section{text-align:center;background:#fff}.contact-section h2{max-width:800px;margin-left:auto;margin-right:auto}.contact-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.contact-links a{padding:12px 18px;color:var(--purple);font-weight:800}footer{padding:55px 24px;background:#100717;color:#fff;text-align:center}.footer-mark{margin:auto}footer strong{display:block;margin:18px 0 5px;font-family:Georgia,serif;font-size:25px}footer a{display:inline-block;margin-top:12px;color:var(--gold);font-weight:700}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88)}.modal-content{position:relative;width:min(1100px,100%);max-height:92vh;overflow:auto;padding:25px;background:var(--purple);color:#fff;border-radius:16px}.modal-content h2{text-align:center}.modal-close{position:sticky;top:0;z-index:2;float:right;min-height:50px;padding:8px 14px;border:2px solid #fff;border-radius:8px;background:#fff;color:#111;font-weight:800}.modal .schedule-poster{margin-top:15px}.toast{position:fixed;left:50%;bottom:25px;z-index:600;transform:translate(-50%,150%);max-width:90%;padding:14px 22px;border-radius:10px;background:#fff;color:#111;box-shadow:var(--shadow);transition:.25s}.toast.show{transform:translate(-50%,0)}
@media(max-width:850px){.menu-toggle{display:block}.nav-links{display:none;position:absolute;left:0;right:0;top:82px;flex-direction:column;align-items:stretch;padding:12px 20px 22px;background:var(--purple);border-bottom:3px solid var(--gold)}.nav-links.open{display:flex}.nav-links a{min-height:52px;padding:13px 16px;background:rgba(255,255,255,.06)}.value-grid,.poster-days{grid-template-columns:1fr}.event{grid-template-columns:1fr;gap:8px}.hotel-card{grid-template-columns:1fr}.skyline{width:70%;opacity:.17}.section{padding-top:74px;padding-bottom:74px}}
@media(max-width:620px){body{font-size:17px}.brand>span:last-child{display:none}.hero{min-height:auto;padding:72px 20px}.countdown-wrap{padding:13px}.countdown{gap:5px}.countdown div{padding:8px 3px}.countdown strong{font-size:28px}.countdown span{font-size:12px}.day-tabs{grid-template-columns:1fr}.day-tabs button{text-align:left;padding-left:18px}.day-tabs button small{display:inline;margin-left:6px}.form-grid,.choice-list.two-col{grid-template-columns:1fr}.wide{grid-column:auto}.schedule-poster{padding:24px}.poster-days{gap:18px}.hero-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* 2027 reunion campaign — bold editorial direction */
:root{--purple:#1e0b31;--purple-2:#7b2cff;--red:#ed214c;--gold:#ffd329;--gold-dark:#8b6500;--cream:#f7f1e6;--ink:#180d22;--muted:#64596b;--line:#d7cbdc;--radius:0;--shadow:12px 12px 0 #180d22}
body{background:var(--cream);font-family:"Arial Black","Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.6}
p,address,label,input,select,textarea,.field-help,.privacy-note,.faq-list details p{font-family:"Helvetica Neue",Arial,sans-serif}
.site-header{min-height:76px;padding-top:8px;padding-bottom:8px;background:rgba(24,13,34,.94);border-bottom:0;backdrop-filter:blur(16px)}
.brand{font-size:15px;letter-spacing:.08em;text-transform:uppercase}.brand-mark{min-width:54px;height:54px;border:0;background:var(--gold);color:var(--ink);font-size:21px;transform:rotate(-5deg)}.brand-mark span{color:var(--red)}
.nav-links a{border-radius:999px;font-size:14px;text-transform:uppercase;letter-spacing:.06em}.nav-links a:nth-last-child(3){background:var(--gold);color:var(--ink)}
.hero{min-height:calc(100svh - 76px);padding:74px 24px 64px;background:radial-gradient(circle at 18% 15%,#ed214c 0 2px,transparent 3px),radial-gradient(circle at 82% 74%,#ffd329 0 2px,transparent 3px),linear-gradient(125deg,#150820 0 44%,#381061 72%,#7b173f 100%);background-size:38px 38px,54px 54px,auto;text-align:left}
.hero:before{background:linear-gradient(112deg,transparent 0 66%,rgba(255,211,41,.95) 66% 67%,transparent 67% 100%);background-size:auto;opacity:.8}
.hero-inner{position:relative;width:min(1160px,100%)}.hero-stamp{position:absolute;right:2%;top:2%;display:grid;place-items:center;width:120px;height:120px;border:3px solid var(--gold);border-radius:50%;color:var(--gold);font-size:17px;letter-spacing:.12em;transform:rotate(12deg)}
.hero-logo{width:max-content;max-width:100%;padding:8px 15px;background:var(--gold);color:var(--ink);font-family:Impact,"Arial Black",sans-serif;font-size:clamp(32px,6.5vw,84px);font-style:italic;letter-spacing:-.025em;line-height:.9;transform:rotate(-2deg);box-shadow:9px 9px 0 var(--red);text-shadow:none}.hero-logo span{color:var(--red)}
.hero .kicker{margin:28px 0 8px;color:#fff;font-size:clamp(14px,2vw,20px);letter-spacing:.22em}.hero h1{max-width:980px;margin:6px 0 18px;font-family:Impact,"Arial Black",sans-serif;font-size:clamp(54px,9.7vw,126px);font-weight:900;letter-spacing:-.04em;line-height:.82;text-transform:uppercase}.hero h1 em{color:var(--gold);font-style:normal;-webkit-text-stroke:1px var(--gold);text-shadow:7px 7px 0 var(--red)}
.hero-details{justify-content:flex-start;font-size:clamp(19px,2.5vw,28px)}.slogan{font-family:"Helvetica Neue",Arial,sans-serif;font-size:clamp(18px,2vw,24px);font-style:normal;font-weight:800}.hero-actions{justify-content:flex-start}.button{border-radius:999px;text-transform:uppercase;letter-spacing:.05em;transition:transform .18s ease,box-shadow .18s ease}.button-gold{box-shadow:6px 6px 0 var(--red)}.button:hover{transform:translate(-2px,-2px)}
.countdown-wrap{width:min(690px,100%);margin:38px 0 0;padding:12px 16px 16px;border:2px solid rgba(255,255,255,.5);border-radius:20px;background:rgba(10,4,16,.62);backdrop-filter:blur(8px)}.countdown-wrap>p{text-transform:uppercase;letter-spacing:.08em}.countdown div{background:transparent;border-right:1px solid rgba(255,255,255,.24);border-radius:0}.countdown div:last-child{border-right:0}.countdown strong{font-family:Impact,"Arial Black",sans-serif;letter-spacing:.04em}
.vibe-strip{overflow:hidden;background:var(--gold);color:var(--ink);border-block:4px solid var(--ink);transform:rotate(-1deg) scale(1.01)}.vibe-strip>div{display:flex;width:max-content;gap:24px;padding:13px 0;font-family:Impact,"Arial Black",sans-serif;font-size:24px;letter-spacing:.05em;animation:vibe-scroll 24s linear infinite}.vibe-strip b{color:var(--red)}@keyframes vibe-scroll{to{transform:translateX(-50%)}}
.section{position:relative;padding-top:120px;padding-bottom:120px}.section-intro{max-width:900px}.eyebrow{display:inline-block;margin-bottom:18px;padding:5px 10px;background:var(--gold);color:var(--ink)!important;letter-spacing:.16em;transform:rotate(-2deg)}h2{font-family:Impact,"Arial Black",sans-serif;font-size:clamp(52px,7.2vw,92px);font-weight:900;letter-spacing:-.035em;line-height:.88;text-transform:uppercase}.section-intro>p:last-child{max-width:720px;font-size:19px}
.about{background:linear-gradient(90deg,transparent 49.8%,rgba(24,13,34,.06) 50%,transparent 50.2%);background-size:80px 80px}.value-grid{gap:30px}.value-grid article{position:relative;border:3px solid var(--ink);border-top:3px solid var(--ink);box-shadow:var(--shadow);transition:transform .2s}.value-grid article:nth-child(2){background:var(--gold);transform:translateY(22px) rotate(1deg)}.value-grid article:nth-child(3){background:#fff;transform:rotate(-1deg)}.value-grid article:hover{transform:translate(-4px,-4px)}.value-grid article>span{font-family:Impact,"Arial Black",sans-serif;font-size:42px;color:var(--red)}
.schedule-section{overflow:hidden;background:linear-gradient(150deg,#180d22,#2d1049);color:#fff}.schedule-section:before{content:"2027";position:absolute;right:-2vw;top:40px;color:rgba(255,255,255,.035);font-family:Impact,sans-serif;font-size:32vw;line-height:1}.day-tabs{position:relative;z-index:1}.day-tabs button{border:2px solid #fff;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}.day-tabs button[aria-selected="true"]{box-shadow:6px 6px 0 var(--red)}.event{position:relative;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--gold)}.event-time{width:max-content;height:max-content;padding:7px 12px;background:var(--red);color:#fff;transform:rotate(-2deg)}.notice{border-left:0;border:2px solid var(--ink);background:var(--gold);box-shadow:4px 4px 0 var(--ink)}.optional-label{background:var(--red);color:#fff;transform:rotate(-1deg)}
.schedule-poster{position:relative;overflow:hidden;border:3px solid var(--gold);border-radius:0;background:radial-gradient(circle at 90% 10%,rgba(237,33,76,.7),transparent 28%),linear-gradient(135deg,#100617,#42105e);box-shadow:12px 12px 0 var(--red)}.schedule-poster:after{content:"ATL";position:absolute;right:-10px;bottom:-65px;color:rgba(255,255,255,.07);font-family:Impact,sans-serif;font-size:190px;line-height:1}.poster-head,.poster-days{position:relative;z-index:1}.poster-head span{font-family:Impact,"Arial Black",sans-serif;font-style:italic}.poster-head strong{font-family:Impact,"Arial Black",sans-serif;letter-spacing:-.02em}.poster-days b{display:inline-block;width:max-content;padding:2px 9px;background:var(--gold);color:var(--ink);transform:rotate(-2deg)}
.rsvp-section{background:linear-gradient(135deg,#f7f1e6 0 50%,#efe5f2 50%)}.rsvp-form{border:3px solid var(--ink);border-radius:0;box-shadow:var(--shadow)}legend{font-family:Impact,"Arial Black",sans-serif;font-size:35px;text-transform:uppercase}.choice-list label,.confirm,input,select,textarea{border-radius:6px}.choice-list label:hover{background:#fff8d4;border-color:var(--ink)}.submit-button{box-shadow:8px 8px 0 var(--red)}
.hotel-section{background:var(--gold)}.hotel-card{position:relative;overflow:hidden;border:3px solid var(--ink);border-radius:0;background:var(--ink);box-shadow:14px 14px 0 var(--red)}.hotel-card:after{content:"STAY";position:absolute;right:-10px;top:-30px;color:rgba(255,255,255,.06);font-family:Impact,sans-serif;font-size:150px}.hotel-card>div{position:relative;z-index:1}
.atlanta-section{background:linear-gradient(135deg,#ed214c,#6f174b 50%,#1e0b31)}.skyline{opacity:.38}.atlanta-tags span{border:2px solid var(--gold);border-radius:999px;background:var(--ink);font-family:"Helvetica Neue",Arial,sans-serif;font-weight:800;box-shadow:4px 4px 0 var(--gold)}
.faq-list details{border-bottom:3px solid var(--ink)}.faq-list summary{font-size:22px;text-transform:uppercase}.faq-list summary:after{color:var(--red)}.contact-section{background:var(--gold)}.contact-links a{border:3px solid var(--ink);border-radius:999px;background:#fff;box-shadow:5px 5px 0 var(--red);text-decoration:none}footer{background:var(--ink)}
.modal-content{border:3px solid var(--gold);border-radius:0;box-shadow:14px 14px 0 var(--red)}
@media(max-width:850px){.site-header{min-height:70px}.nav-links{top:70px}.hero-stamp{width:86px;height:86px;font-size:12px}.value-grid article:nth-child(2){transform:none}.hero h1{font-size:clamp(52px,13vw,92px)}.section{padding-top:90px;padding-bottom:90px}}
@media(max-width:620px){.hero{padding-top:94px}.hero-stamp{right:-4px;top:-76px}.hero-logo{font-size:31px}.hero h1{font-size:clamp(48px,15vw,78px)}.hero h1 em{text-shadow:4px 4px 0 var(--red)}.countdown strong{font-size:25px}.vibe-strip>div{font-size:19px}.section{padding-top:76px;padding-bottom:76px}.value-grid{gap:22px}.value-grid article{box-shadow:7px 7px 0 var(--ink)}.event{box-shadow:6px 6px 0 var(--gold)}.schedule-poster{box-shadow:7px 7px 0 var(--red)}}
@media(prefers-reduced-motion:reduce){.vibe-strip>div{animation:none}}

/* Crown & chrome edition */
:root{--black:#050505;--carbon:#0c0c0f;--carbon-2:#151219;--purple:#6510a8;--red:#c90020;--gold:#f5b932;--gold-bright:#ffd96a;--cream:#f7f0df;--ink:#0a080c;--muted:#bdb5c3;--line:rgba(245,185,50,.3);--shadow:0 25px 80px rgba(0,0,0,.52)}
body{background:var(--black);color:#f8f3e9}
.site-header{background:rgba(3,3,4,.9);border-bottom:1px solid rgba(245,185,50,.24);box-shadow:0 12px 40px rgba(0,0,0,.45)}
.brand-image{width:58px;height:58px;object-fit:cover;border-radius:50%;filter:drop-shadow(0 0 8px rgba(245,185,50,.28))}.brand span{background:linear-gradient(180deg,#fff4c9,#d99714);-webkit-background-clip:text;background-clip:text;color:transparent}
.nav-links a:hover{background:var(--gold);color:#050505}.nav-links a:nth-last-child(3){background:linear-gradient(135deg,#9b0019,#e11136);color:#fff}
.hero{min-height:calc(100svh - 76px);padding:54px max(24px,calc((100vw - 1280px)/2));background:radial-gradient(circle at 78% 45%,rgba(111,17,168,.35),transparent 32%),radial-gradient(circle at 70% 48%,rgba(201,0,32,.22),transparent 48%),linear-gradient(118deg,#020203 0%,#09070c 58%,#17061e 100%);text-align:left}
.hero:before{opacity:.3;background:repeating-linear-gradient(120deg,transparent 0 80px,rgba(245,185,50,.11) 81px,transparent 82px),linear-gradient(90deg,transparent 49.8%,rgba(245,185,50,.14) 50%,transparent 50.2%);background-size:auto,76px 76px}
.glow{display:none}.hero-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;gap:30px;width:100%;max-width:1280px}.hero-copy-block{position:relative;z-index:2;padding:35px 0}.hero-art-wrap{position:relative;display:grid;place-items:center;min-width:0}.hero-art-glow{position:absolute;width:70%;height:70%;border-radius:50%;background:conic-gradient(from 20deg,var(--red),var(--gold),var(--purple),var(--red));filter:blur(75px);opacity:.27;animation:glow-turn 14s linear infinite}.hero-art{position:relative;z-index:1;width:min(680px,100%);height:auto;mix-blend-mode:screen;filter:drop-shadow(0 30px 45px rgba(0,0,0,.75));animation:art-float 5s ease-in-out infinite}
@keyframes glow-turn{to{transform:rotate(360deg)}}@keyframes art-float{50%{transform:translateY(-10px)}}
.hero-stamp{right:-20px;top:-15px;width:105px;height:105px;border:1px solid var(--gold);background:rgba(5,5,5,.75);box-shadow:inset 0 0 0 5px #050505,inset 0 0 0 6px rgba(245,185,50,.45);font-size:14px}
.hero .kicker{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--gold);font-family:"Helvetica Neue",Arial,sans-serif;font-size:13px}.hero .kicker:before{content:"";width:38px;height:2px;background:var(--red)}
.hero h1{margin:0;font-family:Impact,"Arial Narrow",sans-serif;font-size:clamp(68px,8vw,122px);line-height:.78;letter-spacing:-.035em}.hero h1 em{display:inline-block;margin-top:12px;background:linear-gradient(180deg,#fff3bd 0%,#b87505 55%,#ffe889 72%,#8f5600 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:0;text-shadow:none}.hero-details{margin-top:25px}.slogan{color:#ddd3e1;font-size:18px}.hero-actions .button{min-width:168px;border-radius:5px}.button-gold{border-color:#ffd86a;background:linear-gradient(145deg,#ffe98e 0%,#cb8108 45%,#ffdc6d 100%);box-shadow:0 8px 25px rgba(245,185,50,.2);color:#090609}.button-outline{border-color:rgba(255,255,255,.6);border-radius:5px}.countdown-wrap{margin-top:30px;border:1px solid rgba(245,185,50,.35);border-radius:6px;background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.015));box-shadow:inset 0 1px rgba(255,255,255,.08)}.countdown-wrap>p{color:var(--gold);font-size:12px}.countdown strong{background:linear-gradient(#fff7dc,#e1a630);-webkit-background-clip:text;background-clip:text;color:transparent}
.vibe-strip{border-block:1px solid #e0a52c;background:linear-gradient(90deg,#6811a8,#c80020,#6811a8);color:#fff;transform:none}.vibe-strip>div{font-family:"Arial Black",sans-serif;font-size:18px;letter-spacing:.12em}.vibe-strip b{color:var(--gold)}
.section{background:var(--black);color:#f8f3e9}.section:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.025;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:5px 5px}.section>*{position:relative;z-index:1}.section-intro .eyebrow{border:1px solid rgba(245,185,50,.6);background:transparent;color:var(--gold)!important;transform:none}.section-intro>p:last-child{color:#b9b0bd}.section h2{background:linear-gradient(180deg,#fff 25%,#9f98a5 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.about{background:radial-gradient(circle at 90% 10%,rgba(102,16,168,.18),transparent 35%),#070708}.value-grid article{overflow:hidden;border:1px solid rgba(245,185,50,.35);background:linear-gradient(145deg,#17131a,#09090b);box-shadow:0 20px 45px rgba(0,0,0,.35);color:#fff}.value-grid article:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--red),var(--gold),var(--purple))}.value-grid article:nth-child(2),.value-grid article:nth-child(3){background:linear-gradient(145deg,#17131a,#09090b);transform:none}.value-grid article>span{color:var(--gold)}.value-grid article p{color:#bcb4c0}.value-grid article:hover{transform:translateY(-6px);border-color:var(--gold)}
.schedule-section{background:radial-gradient(circle at 10% 20%,rgba(201,0,32,.15),transparent 30%),radial-gradient(circle at 90% 50%,rgba(102,16,168,.2),transparent 35%),#050506}.schedule-section:before{color:rgba(245,185,50,.025)}.day-tabs button{border:1px solid rgba(245,185,50,.35);border-radius:5px;background:#0f0e12}.day-tabs button[aria-selected="true"]{border-color:var(--gold);background:linear-gradient(90deg,#a5001b,#5e0d8f);color:#fff;box-shadow:0 10px 32px rgba(142,10,70,.32)}.event{border:1px solid rgba(245,185,50,.25);border-radius:8px;background:linear-gradient(135deg,#151218,#09090b);box-shadow:0 18px 50px rgba(0,0,0,.42);color:#fff}.event-time{border:1px solid #ff4a68;border-radius:3px;background:rgba(201,0,32,.18);color:#ffbdc8;transform:none}.notice{border:1px solid rgba(245,185,50,.55);border-radius:5px;background:rgba(245,185,50,.08);box-shadow:none;color:#fff}.optional-label{border-radius:3px;background:linear-gradient(90deg,#a5001b,#5e0d8f);transform:none}
.schedule-poster{width:min(740px,100%);margin:60px auto 0;padding:0;border:1px solid rgba(245,185,50,.6);background:#020202;box-shadow:0 30px 85px rgba(0,0,0,.8),0 0 50px rgba(103,16,168,.15)}.schedule-poster:after{display:none}.schedule-poster img{display:block;width:100%;height:auto}.schedule-poster figcaption{padding:13px 18px;border-top:1px solid rgba(245,185,50,.35);color:#cfc6d1;font-family:"Helvetica Neue",Arial,sans-serif;font-size:14px;text-align:center}.poster-button{border-radius:5px}
.rsvp-section{background:radial-gradient(circle at 80% 20%,rgba(102,16,168,.16),transparent 28%),#08070a}.rsvp-form{border:1px solid rgba(245,185,50,.35);border-radius:8px;background:linear-gradient(140deg,#151218,#09090b);box-shadow:0 35px 80px rgba(0,0,0,.55);color:#fff}legend{border-color:rgba(245,185,50,.24)}.form-grid label>span,.privacy-note,.field-help{color:#aaa1ae}input,select,textarea{border:1px solid #514a55;background:#08080a;color:#fff}.choice-list label,.confirm{border:1px solid #3d3841;background:#0b0a0d}.choice-list label:hover{border-color:var(--gold);background:rgba(245,185,50,.07)}.confirm{background:rgba(245,185,50,.07)}.submit-button{box-shadow:0 12px 30px rgba(245,185,50,.15)}
.hotel-section{background:linear-gradient(135deg,#7210a6 0%,#16081f 45%,#840018 100%)}.hotel-card{border:1px solid rgba(245,185,50,.7);border-radius:8px;background:rgba(2,2,3,.86);box-shadow:0 30px 80px rgba(0,0,0,.6)}.hotel-card:after{color:rgba(245,185,50,.055)}
.atlanta-section{background:radial-gradient(circle at 60% 30%,rgba(201,0,32,.34),transparent 30%),linear-gradient(140deg,#050506,#190723 55%,#050506)}.skyline{opacity:.28}.atlanta-tags span{border:1px solid rgba(245,185,50,.7);background:rgba(5,5,6,.78);box-shadow:none}
.faq-section{background:#080709}.faq-list details{border-color:#302b33}.faq-list summary:after{color:var(--gold)}.faq-list details p{color:#b9b0bd}.contact-section{background:linear-gradient(135deg,#13071a,#050506);color:#fff}.contact-links a{border:1px solid rgba(245,185,50,.65);border-radius:4px;background:#0b0a0d;box-shadow:none;color:var(--gold)}footer{border-top:1px solid rgba(245,185,50,.25);background:#020203}.footer-mark{background:linear-gradient(145deg,#ffe98e,#b66a00);color:#050505}.footer-mark span{color:var(--red)}
.modal-content{border:1px solid var(--gold);border-radius:8px;background:#050506;box-shadow:0 30px 100px #000}.modal .schedule-poster{margin-top:15px}
.honey-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.submit-button:disabled{cursor:wait;opacity:.72;transform:none}
@media(max-width:940px){.hero-inner{grid-template-columns:1fr}.hero-copy-block{order:2}.hero-art-wrap{order:1;max-height:43vh}.hero-art{width:min(500px,82vw);max-height:43vh;object-fit:contain}.hero-stamp{right:3%;top:0}.hero h1{font-size:clamp(64px,15vw,100px)}.countdown-wrap{max-width:680px}}
@media(max-width:620px){.brand-image{width:50px;height:50px}.hero{padding-top:42px}.hero-art-wrap{max-height:36vh}.hero-art{max-height:36vh}.hero-copy-block{padding-top:15px}.hero-stamp{width:76px;height:76px;font-size:10px}.hero h1{font-size:clamp(58px,18vw,82px)}.hero .kicker{margin-bottom:12px}.schedule-poster{margin-top:38px}.event{border-radius:6px}.rsvp-form{border-radius:6px}}
@media(prefers-reduced-motion:reduce){.hero-art,.hero-art-glow{animation:none}}

/* Responsive image and mobile layout fixes */
.hero-art-wrap picture{display:block;width:100%;line-height:0}.schedule-poster picture{display:block}.schedule-poster picture img{display:block;width:100%;height:auto}
@media(max-width:850px){
  .site-header{padding-inline:16px}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
  .nav-links{position:absolute;left:0;right:0;top:70px;display:none;max-height:calc(100svh - 70px);overflow-y:auto;padding:12px 16px 18px;background:rgba(3,3,4,.98);border-bottom:1px solid rgba(245,185,50,.35);box-shadow:0 18px 35px rgba(0,0,0,.5)}
  .nav-links.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .nav-links a{min-height:48px;display:flex;align-items:center;justify-content:center;padding:10px;text-align:center}
  .hero{padding-inline:20px}
  .hero-inner{display:flex;flex-direction:column;gap:18px}
  .hero-copy-block{order:1;width:100%}
  .hero-art-wrap{order:2;width:min(360px,62vw);max-height:none;margin-inline:auto}
  .hero-art{width:100%;max-height:none}
  .section{padding-inline:20px}
}
@media(max-width:620px){
  html{scroll-padding-top:78px}
  body{overflow-x:hidden;font-size:16px;line-height:1.55}
  .site-header{min-height:68px;padding-block:8px}
  .brand-image{width:48px;height:48px}
  .menu-toggle{min-width:88px;min-height:48px;font-size:15px}
  .nav-links{top:68px;max-height:calc(100svh - 68px)}
  .hero{min-height:auto;padding:28px 18px 46px}
  .hero-inner{display:flex;flex-direction:column;gap:12px}
  .hero-copy-block{order:1;width:100%;padding:0;text-align:left}
  .hero-art-wrap{order:2;width:min(270px,76vw);max-height:none;margin-top:8px}
  .hero-art{width:100%;max-height:none}
  .hero-stamp{display:none}
  .hero h1{font-size:clamp(52px,17vw,72px);line-height:.82}
  .hero-details{justify-content:flex-start;gap:7px;font-size:18px}
  .slogan{margin:14px 0 22px;font-size:17px}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .hero-actions .button{width:auto;min-width:0;min-height:52px;padding:10px 12px;font-size:14px}
  .countdown-wrap{margin-top:22px;padding:10px}
  .countdown-wrap>p{margin-bottom:6px}
  .countdown{gap:0}
  .countdown div{min-width:0;padding:7px 2px}
  .countdown strong{font-size:24px}
  .section{padding:64px 18px}
  .section-intro{margin-bottom:34px}
  h2{font-size:clamp(42px,13vw,58px)}
  h3{font-size:22px}
  .value-grid article{padding:25px 22px}
  .day-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .day-tabs button{min-width:0;min-height:68px;padding:8px 3px;text-align:center;font-size:13px}
  .day-tabs button small{display:block;margin:0;font-size:11px}
  .event{padding:22px 18px}
  .event-time{font-size:16px}
  .notice{padding:14px}
  .schedule-poster{width:100%;margin-top:36px}
  .rsvp-form{padding:24px 16px}
  legend{font-size:27px;line-height:1.1}
  .form-grid{gap:16px}
  .choice-list label,.confirm{padding:12px}
  .hotel-card{padding:28px 20px}
  .hotel-actions{display:grid;grid-template-columns:1fr;width:100%}
  .hotel-actions .button{width:100%}
  .contact-links a{max-width:100%;padding:12px 14px;font-size:15px;overflow-wrap:anywhere}
  .modal{padding:8px}
  .modal-content{max-height:calc(100svh - 16px);padding:16px 10px}
  .modal-content h2{font-size:34px}
  .modal .schedule-poster{margin-top:10px}
  .shirt-size-grid{grid-template-columns:1fr}
}

.shirt-sizes>p{margin:0;font-weight:700}
.shirt-sizes>.field-help{display:block;margin:0 0 12px}
.shirt-size-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.shirt-size-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700}

@media(max-width:620px){.shirt-size-grid{grid-template-columns:1fr}}
