:root{--green:#002f25;--deep:#001e19;--forest:#063e31;--gold:#c9a44c;--lightgold:#e8d39a;--ivory:#f8f5ea;--white:#fff;--text:#23372f;--muted:#6c756f;--heading:'Cinzel',Georgia,serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--ivory);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.shell{max-width:1320px;margin:auto;padding-inline:clamp(22px,4.8vw,72px)}.skip-link{position:absolute;top:-80px;left:12px;background:white;z-index:1000;padding:12px}.skip-link:focus{top:12px}.site-header{height:78px;background:#00271f;position:sticky;top:0;z-index:30;border-bottom:1px solid #ffffff18;transition:box-shadow .3s}.site-header.scrolled{box-shadow:0 8px 25px #0005}.nav{display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:white;flex-shrink:0}.brand-mark{position:relative;border:1px solid var(--gold);font-family:var(--heading);font-size:28px;line-height:1;padding:9px 10px 7px;color:var(--lightgold)}.brand-star{position:absolute;right:-7px;top:-8px;font-size:11px;background:#00271f}.brand-text{font:700 14px var(--heading);letter-spacing:1.3px}.brand-text small{display:block;color:var(--lightgold);letter-spacing:3px;font:600 9px var(--body);margin-top:5px}.nav-links{display:flex;align-items:center;gap:clamp(14px,2.1vw,32px)}.nav-links>a{color:#e7eee9;font-size:12px;font-weight:700;transition:color .2s}.nav-links>a:hover{color:var(--lightgold)}.nav-links .nav-cta{padding:12px 19px;background:var(--gold);color:#072e25;border:1px solid var(--gold);text-transform:uppercase;letter-spacing:1px;font-size:11px}.nav-cta span{padding-left:9px}.menu-toggle{display:none}.hero{background:radial-gradient(ellipse at 56% 15%,#154938 0%,#002a22 57%,#001b16 100%);position:relative;color:white;overflow:hidden}.hero-glow{position:absolute;inset:0;background-image:linear-gradient(90deg,transparent 49.8%,#ffffff05 50%),linear-gradient(0deg,transparent 49.8%,#ffffff05 50%);background-size:80px 80px;pointer-events:none}.hero-content{position:relative;padding-top:47px;padding-bottom:65px}.eyebrow,.overline{font-size:11px;letter-spacing:2.6px;font-weight:700}.hero-eyebrow{color:var(--lightgold);display:flex;gap:15px;align-items:center;justify-content:center;margin-bottom:24px}.eyebrow-line{width:36px;height:1px;background:var(--gold)}.banner-frame{border:1px solid #b8a168b0;box-shadow:0 30px 70px #0006;position:relative}.banner-frame:after{content:'';position:absolute;inset:5px;border:1px solid #ffffff44;pointer-events:none}.banner-frame img{width:100%}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:35px;padding-top:45px}.hero-bottom h1{font:600 clamp(27px,3.25vw,48px)/1.32 var(--heading);letter-spacing:-.6px;margin:12px 0 16px}.hero-bottom h1 em,.section h2 em,.countdown-title h2 em,.closing-inner h2 em{color:var(--gold);font-style:normal}.hero-lead{max-width:640px;color:#c6d6cd;line-height:1.8;font-size:15px}.gold-dot{color:var(--gold);margin:0 9px}.hero-actions{display:flex;flex-direction:column;align-items:flex-end;gap:20px;flex-shrink:0;margin-bottom:13px}.btn{min-height:54px;padding:17px 26px;display:inline-flex;align-items:center;justify-content:center;gap:24px;text-align:center;text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s}.btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px #0003}.btn-gold{background:linear-gradient(120deg,#ead392,var(--gold));color:#092e23}.btn-gold span:first-child:not(:last-child){border-left:1px solid #13392d44;padding-left:14px}.text-link{color:white;font-size:12px;border-bottom:1px solid var(--gold);padding-bottom:7px}.text-link span{margin-left:9px;color:var(--gold)}.scroll-hint{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:2px;color:#cddad1}.scroll-hint span{color:var(--gold)}.countdown-section{background:#f0e9d9;border-bottom:1px solid #dccb9c;padding:37px 0}.countdown-layout{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.countdown-title h2{font:600 clamp(21px,2.2vw,32px) var(--heading);margin:9px 0}.countdown-title>p:last-child{color:var(--muted);margin:0;font-size:13px}.gold{color:#a88433}.countdown{display:flex;gap:11px;align-items:center}.time-unit{min-width:76px;text-align:center}.time-unit strong{display:block;font:600 clamp(31px,3.1vw,45px) var(--heading);color:var(--green);font-variant-numeric:tabular-nums}.time-unit span{display:block;font-size:9px;letter-spacing:2px;color:#88734b;margin-top:5px}.timer-sep{color:var(--gold);font-size:24px;margin-top:-20px}.countdown-complete{color:var(--green);font-weight:700}.section{padding:clamp(80px,10vw,138px) 0}.welcome-section{background:#fffdf7}.welcome-layout{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(45px,8vw,130px)}.welcome-accent{background:var(--green);min-height:465px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;border:10px solid #f1ebdb;box-shadow:0 15px 32px #112c211b;color:var(--lightgold)}.welcome-accent:before{content:'';position:absolute;inset:10px;border:1px solid #c9a44c55}.year-art{display:flex;align-items:center;font:500 clamp(70px,8vw,110px) var(--heading);line-height:1;letter-spacing:-8px}.year-divider{color:#d3b469;font-size:30px;margin:0 8px;letter-spacing:0}.year-to{letter-spacing:4px;font-size:10px;margin:20px 0}.future{color:#fff9e7}.welcome-copy h2,.section-heading h2,.register-copy h2,.faq-intro h2{font:600 clamp(31px,3.7vw,52px)/1.33 var(--heading);margin:16px 0 20px;letter-spacing:-.8px}.gold-rule{width:70px;height:2px;background:var(--gold);margin:26px 0}.welcome-copy>p:not(.overline){font-size:15px;line-height:1.85;color:#58675e}.inline-action{display:inline-block;margin-top:17px;color:var(--green);font-weight:700;font-size:13px;border-bottom:2px solid var(--gold);padding-bottom:9px}.inline-action span{color:#9a762c;margin-left:18px}.memories-section{background:#f3f0e7}.section-heading{max-width:790px;margin:0 auto 45px}.centered{text-align:center}.section-heading h2{margin-bottom:20px}.section-heading>p:last-child{font-size:15px;line-height:1.8;color:#68746b;max-width:620px;margin:auto}.montage-button{display:block;width:100%;background:none;border:0;padding:0;cursor:zoom-in;position:relative;box-shadow:0 25px 60px #0b211b24}.montage-button img{width:100%;border:5px solid white;transition:filter .35s}.montage-button:hover img{filter:brightness(.85)}.enlarge-label{position:absolute;right:20px;bottom:20px;background:#00291fe8;color:white;padding:13px 18px;letter-spacing:1.5px;font-size:11px;border:1px solid #c9a44c}.timeline{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:67px;position:relative}.timeline:before{content:'';height:2px;background:#c8b481;position:absolute;left:8%;right:8%;top:42px}.milestone{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px}.milestone-year{font:600 21px var(--heading);color:#174335}.milestone-dot{width:15px;height:15px;border:3px solid #b79a54;background:#f3f0e7;border-radius:50%;z-index:1}.milestone-title{font-weight:700;font-size:12px;line-height:1.5}.milestone-title small{font-size:11px;color:#78837b;display:block;font-weight:400;margin-top:3px}.milestone-final .milestone-year{color:#a47d2a}.milestone-final .milestone-dot{background:var(--gold);box-shadow:0 0 0 6px #c9a44c33}.details-section{background:white}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.detail-card{border:1px solid #e3e5df;background:#fcfcf8;padding:35px 27px 32px;min-height:325px;transition:transform .3s,box-shadow .3s,border .3s}.detail-card:hover{transform:translateY(-6px);border-color:#c9a44c;box-shadow:0 15px 35px #002b2014}.detail-icon{display:flex;align-items:center;justify-content:center;width:47px;height:47px;border:1px solid #cbb476;color:#99772d;font-size:27px}.detail-label{margin-top:30px;color:#ad9049;font-size:10px;letter-spacing:2px;font-weight:700}.detail-card h3{font:600 clamp(17px,1.5vw,22px)/1.4 var(--heading);margin:12px 0}.detail-card>p:not(.detail-label){color:#69746e;font-size:13px;line-height:1.8}.detail-card .price{font-size:39px}.price span{font:500 12px var(--body);color:var(--muted)}.card-link{font-weight:700;font-size:12px;color:#986e21;border-bottom:1px solid var(--gold)}.registration-section{background:radial-gradient(ellipse at 0% 0%,#10523e 0%,var(--green) 40%,#001d18 100%);color:white}.register-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(38px,6vw,96px);align-items:start}.register-copy h2{margin-top:15px}.register-lead{color:#cad9cf;line-height:1.8;font-size:15px;max-width:465px}.ticket-price{display:flex;align-items:center;gap:15px;margin:30px 0;border-bottom:1px solid #ffffff2b;padding-bottom:26px}.ticket-price strong{font:600 68px var(--heading);color:var(--lightgold)}.ticket-price span{font-size:11px;letter-spacing:2px;color:#d1c39f}.ticket-facts{padding:0;margin:0;list-style:none}.ticket-facts li{font-size:13px;line-height:1.8;margin-bottom:15px;color:#e2e8e1;display:flex;gap:12px}.ticket-facts li span{color:var(--gold)}.secure-note{color:#a8bdb0;font-size:12px;line-height:1.7;margin-top:25px}.register-widget-wrap{background:#fffdf6;color:var(--text);padding:clamp(25px,3.5vw,49px);box-shadow:0 30px 65px #0004;border-top:5px solid var(--gold)}.widget-topline{display:flex;align-items:center;justify-content:space-between;letter-spacing:1.5px;font-size:10px;color:#9a7b35;font-weight:700}.widget-dot{height:8px;width:8px;border-radius:50%;background:#c9a44c}.register-widget-wrap h3{font:600 31px var(--heading);margin:24px 0 10px}.register-widget-wrap>p{color:#67746c;font-size:13px}.widget-container{margin-top:24px;min-height:260px;overflow:visible}.tt-widget,.tt-widget iframe{max-width:100%!important}.tt-widget-fallback{background:#f4f0e6;padding:23px;text-align:center;border:1px solid #e5d8ba}.tt-widget-fallback a{color:#08533f;text-decoration:underline;font-weight:700}.tt-widget-fallback small{display:block;margin-top:10px;font-size:10px}.faq-section{background:#fcfaf3}.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(35px,8vw,110px)}.faq-intro>p:last-child{color:#758078;font-size:15px;line-height:1.7}.faq-list{border-top:1px solid #d7d8ce}.faq-list details{border-bottom:1px solid #d7d8ce}.faq-list summary{list-style:none;cursor:pointer;padding:23px 3px;display:flex;justify-content:space-between;gap:25px;color:#163d30;font-size:14px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-plus{font-size:22px;font-weight:400;color:#aa8b45;line-height:1;transition:transform .25s}.faq-list details[open] .faq-plus{transform:rotate(45deg)}.faq-list details p{font-size:13px;color:#647269;line-height:1.8;margin:0;padding:0 40px 23px 3px}.closing-section{padding:105px 0;background:radial-gradient(ellipse at 50% 100%,#1a543f,#002e25 65%,#001f1a);color:white;text-align:center;position:relative}.closing-section:before,.closing-section:after{content:'';position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);left:10%;right:10%}.closing-section:before{top:18px}.closing-section:after{bottom:18px}.closing-inner{max-width:1000px}.closing-inner .overline{color:var(--lightgold)}.closing-star{font-size:37px;color:var(--gold);display:block;margin:22px auto}.closing-inner h2{font:600 clamp(30px,4vw,55px)/1.35 var(--heading);margin:0}.closing-inner>p:not(.overline){max-width:610px;margin:24px auto 32px;color:#cadacf;line-height:1.8}.footer{background:#001a15;color:#dce7db;padding:50px 0 0}.footer-grid{display:flex;justify-content:space-between;align-items:start;gap:40px}.footer-brand{font:600 20px var(--heading)}.footer-brand span{display:block;letter-spacing:3px;color:var(--lightgold);font:700 10px var(--body);margin-top:8px}.footer-grid p{font-size:12px;color:#a2b5a8;line-height:1.7}.footer-side{text-align:right}.footer-side p{letter-spacing:1px}.footer-side a{font-size:10px;letter-spacing:2px;color:var(--lightgold)}.footer-bottom{margin-top:38px;border-top:1px solid #ffffff24;padding-block:18px;font-size:10px;color:#879f91}.photo-dialog{max-width:min(96vw,1500px);max-height:95vh;width:fit-content;border:1px solid var(--gold);background:#061c17;padding:12px;box-shadow:0 30px 90px #000a}.photo-dialog::backdrop{background:#00150edc}.photo-dialog img{max-height:87vh;max-width:100%;object-fit:contain}.dialog-close{position:absolute;right:14px;top:14px;background:var(--gold);color:#002d22;border:0;width:42px;height:42px;font-size:28px;cursor:pointer}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1050px){.nav-links{gap:15px}.nav-links>a{font-size:11px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-card{min-height:275px}.welcome-layout{gap:45px}.welcome-accent{min-height:420px}.year-art{font-size:76px}.timeline{gap:5px}.milestone-title{font-size:11px}}
@media(max-width:760px){html{scroll-padding-top:72px}.site-header{height:72px}.brand-text{font-size:12px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:none;border:1px solid #ffffff50;width:42px;height:40px;padding:10px;cursor:pointer}.menu-toggle span{height:2px;width:100%;background:var(--lightgold)}.nav-links{position:absolute;top:72px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:#00271f;padding:10px 24px 24px;box-shadow:0 20px 30px #0005}.nav-links.open{display:flex}.nav-links>a{padding:14px 4px;font-size:13px;border-bottom:1px solid #ffffff16}.nav-links .nav-cta{text-align:center;margin-top:10px}.hero-content{padding-top:29px;padding-bottom:65px}.hero-eyebrow{font-size:9px;letter-spacing:1.6px}.eyebrow-line{width:15px}.hero-bottom{display:block;padding-top:27px}.hero-bottom h1{font-size:clamp(25px,5.5vw,39px)}.hero-lead{font-size:14px}.hero-actions{align-items:flex-start;margin-top:22px}.scroll-hint{display:none}.countdown-layout{justify-content:center;text-align:center}.countdown-title{width:100%}.time-unit{min-width:57px}.time-unit strong{font-size:30px}.timer-sep{font-size:19px}.welcome-layout,.register-grid,.faq-layout{grid-template-columns:1fr}.welcome-accent{min-height:335px;max-width:500px;width:100%;margin:auto}.year-art{font-size:62px}.year-to{margin:12px 0}.section{padding:80px 0}.timeline{grid-template-columns:repeat(3,1fr);row-gap:34px}.timeline:before{display:none}.milestone{gap:9px}.milestone-year{font-size:19px}.milestone-title{font-size:11px}.montage-button{box-shadow:0 12px 30px #0002}.enlarge-label{font-size:9px;right:9px;bottom:9px;padding:9px}.register-grid{gap:32px}.ticket-price strong{font-size:57px}.footer-grid{display:block}.footer-side{text-align:left;margin-top:26px}.faq-layout{gap:24px}}
@media(max-width:440px){.shell{padding-inline:19px}.brand-mark{font-size:24px}.brand-text{letter-spacing:.5px}.hero-eyebrow{font-size:8px}.hero-bottom h1{font-size:25px}.overline{font-size:10px;letter-spacing:1.8px}.countdown{gap:3px}.time-unit{min-width:57px}.time-unit strong{font-size:26px}.timer-sep{font-size:15px}.detail-grid{grid-template-columns:1fr}.detail-card{min-height:0;padding:24px}.detail-label{margin-top:18px}.register-widget-wrap{padding:22px}.register-widget-wrap h3{font-size:25px}.closing-section{padding:78px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* 2026-10 Reunion v2: seven chronological milestones and accessible hero heading. */
@media (min-width:761px){.timeline{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.timeline:before{left:7%;right:7%}}
@media (min-width:761px) and (max-width:1120px){.milestone-title{font-size:11px}.milestone-title small{font-size:10px}.timeline{gap:5px}}
.hero-bottom h1{text-wrap:balance;max-width:820px;line-height:1.2}
.hero-bottom h1 em{display:block}
@media (max-width:760px){.hero-bottom h1{font-size:clamp(26px,6vw,39px)}.timeline{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:36px}}
@media (max-width:440px){.hero-bottom h1{font-size:clamp(25px,7vw,32px)}}

/* Version 3 registration eligibility and policy components */
.eligibility-section{background:#fcfaf3;padding-block:clamp(65px,8vw,105px)}
.eligibility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
.eligibility-card{background:#fff;border:1px solid #d9d1bd;border-top:4px solid var(--gold);padding:30px 27px;box-shadow:0 10px 28px #062b1c0b}
.eligibility-icon{color:#9c7c32;font-size:27px}.eligibility-label{color:#987733;font-size:10px;letter-spacing:1.6px;font-weight:700;margin:20px 0 9px}
.eligibility-card h3{font:600 clamp(18px,1.8vw,25px)/1.35 var(--heading);margin:0 0 14px;color:#123e2e}
.eligibility-card strong{display:block;color:#13503b;font-size:15px;line-height:1.4}.eligibility-card>p:last-child{color:#53665c;line-height:1.75;font-size:13px;margin-bottom:0}
.ticket-limit{margin:27px 0 0;text-align:center;background:#eae1c9;color:#173d2f;padding:19px 25px;line-height:1.7;font-size:14px;border-left:4px solid var(--gold)}
.policies-section{background:#f4f0e5;padding-block:clamp(65px,8vw,95px)}.policies-inner{max-width:1220px}
.policy-highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:31px 0 27px}
.policy-highlights>div{background:white;border:1px solid #dbd2bd;padding:22px 16px;text-align:center;min-width:0}
.policy-highlights span{display:block;font-size:10px;letter-spacing:1.2px;color:#866c34;font-weight:700}
.policy-highlights strong{display:block;font-size:clamp(14px,1.4vw,18px);color:#183e31;margin:12px 0 5px;line-height:1.4}
.policy-highlights small{display:block;color:#58695f;line-height:1.6;font-size:11px}
.policy-accordions{max-width:850px;margin:auto;border-top:1px solid #cfc3a9}.policy-accordions details{border-bottom:1px solid #cfc3a9}
.policy-accordions summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 8px;color:#153f30;font-weight:700;list-style:none}
.policy-accordions summary::-webkit-details-marker{display:none}.policy-accordions summary span{color:#94772f;font-size:25px;font-weight:400;transition:transform .2s}
.policy-accordions details[open] summary span{transform:rotate(45deg)}.policy-accordions details p{font-size:14px;line-height:1.85;color:#435a4e;margin:0;padding:0 30px 22px 8px}
@media(max-width:760px){.eligibility-grid{grid-template-columns:1fr;gap:13px}.eligibility-card{padding:25px}.policy-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.policy-highlights>div{padding:19px 10px}.ticket-limit{font-size:13px}}
@media(max-width:440px){.policy-highlights{gap:8px}.policy-highlights strong{font-size:14px}.policy-highlights small{font-size:10px}}

/* Version 4: highly visible, accessible registration action; Ticket Tailor embed remains untouched. */
.register-widget-wrap{border:2px solid #d4af37;border-top:6px solid #d4af37;border-radius:12px;box-shadow:0 22px 58px #00190f55}
.register-widget-wrap h3{font-size:clamp(26px,2.7vw,34px);color:#09382b}
.register-instruction{font-size:15px!important;line-height:1.65;color:#284b3a!important;margin-bottom:20px}
.registration-action{text-align:center;margin:18px 0 24px}
.registration-primary-cta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 13px;width:100%;min-height:66px;padding:19px 16px;border-radius:11px;border:2px solid #99731c;background:linear-gradient(125deg,#f0d579 0%,#d4af37 64%,#e2be4c 100%);box-shadow:0 6px 0 #8d721f,0 12px 23px #5e490b35;color:#002b20;font-family:var(--body);font-size:clamp(16px,1.6vw,19px);letter-spacing:.025em;font-weight:800;line-height:1.35;text-decoration:none;text-align:center;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.registration-primary-cta:hover{transform:translateY(-3px);filter:brightness(1.07);box-shadow:0 9px 0 #8d721f,0 15px 26px #5e490b45}
.registration-primary-cta:active{transform:translateY(2px);box-shadow:0 3px 0 #8d721f}
.registration-primary-cta:focus-visible{outline:3px solid #004d39;outline-offset:4px}
.registration-cta-price{font-weight:750}
.registration-cta-note{margin:16px auto 0!important;font-size:12px!important;line-height:1.5!important;color:#425e50!important}
.widget-divider{display:flex;flex-direction:column;align-items:center;gap:7px;margin:27px 0 7px;color:#275944;text-align:center;letter-spacing:1.25px;font-weight:800;font-size:11px}
.widget-divider:before{content:'';width:100%;height:1px;background:#d3bf85;margin-bottom:13px}
.widget-down-arrow{color:#98731a;font-size:24px;line-height:1}
@media(max-width:760px){.registration-primary-cta{min-height:60px;font-size:16px;padding:17px 12px}.register-widget-wrap{padding:24px 17px}.registration-cta-note{font-size:11px!important}}
@media(prefers-reduced-motion:reduce){.registration-primary-cta{transition:none!important}}

/* Version 7: focused registration section redesign; no embedded Ticket Tailor widget. */
.registration-section{background:radial-gradient(ellipse at 90% 20%,#17553e 0%,#073a2c 35%,#00251f 100%);overflow:hidden}
.registration-v7{max-width:1210px}.registration-v7-heading{text-align:center;max-width:690px;margin:0 auto 44px}.registration-v7-heading h2{margin:12px 0 15px;font:600 clamp(35px,4.5vw,58px)/1.15 var(--heading)}.registration-v7-heading h2 em{color:var(--lightgold)}.registration-v7-heading>p:last-child{font-size:15px;line-height:1.75;color:#dce8dc}
.registration-v7-grid{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(26px,4vw,55px);align-items:stretch}
.registration-v7-details{padding:clamp(24px,3vw,40px);border:1px solid #d9be7959;background:#002d2380;border-radius:17px;display:flex;flex-direction:column}
.registration-v7-price{border-bottom:1px solid #ead6a34b;padding-bottom:21px;display:flex;flex-direction:column;gap:8px}.registration-v7-price>span{font-size:11px;font-weight:700;letter-spacing:2.2px;color:#e5ce91}.registration-v7-price strong{font:600 clamp(48px,5vw,65px)/1.1 var(--heading);color:#f0d993}.registration-v7-price small{font:500 14px var(--body);color:#d6e5d9}
.registration-v7-highlights{margin:22px 0 27px;display:grid;gap:19px}.registration-v7-highlights>div{display:flex;gap:13px;align-items:start}.registration-v7-highlights>div>span{color:#dfbf62;font-size:16px;line-height:1.3}.registration-v7-highlights p{margin:0;display:flex;flex-direction:column;gap:5px}.registration-v7-highlights strong{color:#fff8e6;font-size:14px}.registration-v7-highlights small{color:#c6dbd0;font-size:12px;line-height:1.55}
.registration-v7-button{margin-top:auto;min-height:68px;font-size:clamp(17px,1.7vw,20px);letter-spacing:.065em;flex-wrap:nowrap}.registration-v7-note{text-align:center;color:#d7e3dc;font-size:11px;line-height:1.6;margin:15px 0 0}.registration-v7-terms{text-align:center;color:#d7e3dc;font-size:11px;line-height:1.65;margin:13px 0 0}.registration-v7-terms a{color:#f3d983;text-decoration:underline;text-underline-offset:3px}
.registration-v7-calendar-card{background:#f9f6e9;border-radius:18px;overflow:hidden;border:2px solid #c9a44c;color:#123d2c;box-shadow:0 25px 65px #0006;display:flex;flex-direction:column}.calendar-art-top{display:flex;align-items:center;justify-content:space-between;padding:19px 29px;background:#e8d6a7}.calendar-kicker{font-size:11px;letter-spacing:2.2px;font-weight:800;color:#345b43;margin:0}.calendar-art-icon{font-size:22px;color:#9c772a}.calendar-art{padding:clamp(19px,2.5vw,33px) clamp(15px,2.7vw,36px) 12px}.calendar-month{text-align:center;display:flex;flex-direction:column;gap:3px;padding-bottom:24px;border-bottom:1px solid #d7cba9}.calendar-month>span{font:600 clamp(26px,3vw,39px)/1.15 var(--heading);letter-spacing:.06em;color:#124732}.calendar-month>strong{font:700 14px var(--body);letter-spacing:5px;color:#957326}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(2px,.4vw,5px);text-align:center}.calendar-weekdays{padding-top:23px;padding-bottom:12px}.calendar-weekdays span{font-size:clamp(8px,.8vw,10px);font-weight:800;color:#52675b;letter-spacing:.03em}.calendar-day{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;position:relative;font-size:clamp(12px,1.4vw,18px);font-weight:600;color:#204c38;border-radius:9px}.calendar-day.reunion-day{background:#c9a44c;color:#002b20;box-shadow:0 4px 13px #95722b66;flex-direction:column;gap:2px;border:2px solid #947025}.reunion-day strong{font-size:clamp(15px,1.8vw,24px);line-height:1}.reunion-day small{font-size:clamp(5px,.55vw,8px);font-weight:800;letter-spacing:.01em}.calendar-art-footer{margin-top:auto;padding:22px 22px 25px;background:#e8d6a7;text-align:center;display:flex;flex-direction:column;gap:7px}.calendar-art-footer strong{font-size:clamp(13px,1.3vw,17px);color:#153d2b}.calendar-art-footer span{font-size:12px;color:#52614e}
@media(max-width:840px){.registration-v7-grid{grid-template-columns:1fr;max-width:650px;margin:auto}.registration-v7-heading{margin-bottom:28px}.registration-v7-details{order:2}.registration-v7-calendar-card{order:1}.calendar-day{font-size:clamp(16px,2.5vw,20px)}.reunion-day strong{font-size:clamp(20px,2.8vw,25px)}.reunion-day small{font-size:clamp(6px,.9vw,9px)}}
@media(max-width:440px){.registration-v7-details{padding:21px 17px}.calendar-art{padding:17px 12px 9px}.calendar-art-top{padding:17px 21px}.calendar-day{font-size:13px;border-radius:6px}.reunion-day strong{font-size:17px}.reunion-day small{font-size:5.5px}.calendar-weekdays span{font-size:8px}.calendar-month>span{font-size:29px}.calendar-art-footer{padding:18px 10px}.registration-v7-button{font-size:17px;padding-inline:8px}}
@media(prefers-reduced-motion:reduce){.registration-v7-button{transition:none!important}}

/* Version 8: alumni sharing */
.share-section{background:linear-gradient(135deg,#073d30,#00251c);color:#fff;padding-block:clamp(65px,8vw,100px)}.share-shell{max-width:1100px}.share-heading{text-align:center;max-width:760px;margin:0 auto 32px}.share-heading h2{font:600 clamp(27px,3.8vw,47px)/1.18 var(--heading);margin:13px 0}.share-heading h2 em{color:#e8d39a}.share-heading>p:last-child{color:#d5e2d6;font-size:15px;line-height:1.7}.share-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.share-button{min-height:65px;display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #d1b66b;border-radius:12px;cursor:pointer;font:700 15px var(--body);color:white;text-decoration:none;transition:transform .2s,filter .2s,box-shadow .2s;padding:14px 9px}.share-button:hover{transform:translateY(-3px);filter:brightness(1.12);box-shadow:0 8px 24px #0004}.share-button:focus-visible,.footer-share :is(a,button):focus-visible,.instagram-modal button:focus-visible,.instagram-images a:focus-visible{outline:3px solid #ffdb73;outline-offset:3px}.share-facebook{background:#174c93}.share-instagram{background:linear-gradient(125deg,#6b35ae,#c13584,#e67a41)}.share-email{background:#17624c}.share-copy{background:#bd902c;color:#082a20}.share-icon{display:inline-grid;place-items:center;font-size:25px;font-weight:800;width:27px}.share-status{min-height:23px;margin:17px 0 0;text-align:center;color:#f5dfa0;font-size:13px}.footer-share{margin:12px 0 20px}.footer-share>span{display:block;letter-spacing:1.2px;font-size:10px;color:#d7c78d;margin-bottom:9px}.footer-share>div{display:flex;gap:9px;justify-content:flex-end}.footer-share :is(a,button){display:grid;place-items:center;border-radius:50%;width:35px;height:35px;background:#b99039;border:1px solid #d9bc72;color:#082a20;font:700 20px var(--body);cursor:pointer;text-decoration:none}.instagram-dialog{border:1px solid #caa653;border-radius:18px;padding:0;max-width:min(92vw,620px);width:100%;background:#fffaf0;color:#123b2c;box-shadow:0 28px 90px #0008}.instagram-dialog::backdrop{background:#001e16ba}.instagram-modal{position:relative;padding:clamp(24px,4vw,40px)}.instagram-modal h2{font:600 clamp(25px,3vw,35px)/1.25 var(--heading);margin:10px 0}.instagram-modal p{line-height:1.7;font-size:14px}.instagram-close{position:absolute;right:17px;top:15px;font-size:30px;background:transparent;border:0;cursor:pointer;color:#123b2c}.instagram-images{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.instagram-images a,.instagram-modal-actions button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:15px 10px;background:#0b4a36;color:#fff;border-radius:8px;text-decoration:none;font:700 13px var(--body);border:0;cursor:pointer;text-align:center}.instagram-images small{font-weight:400;color:#d7eadb}.instagram-caption-label{display:block;font-weight:700;margin-bottom:8px}.instagram-modal textarea{width:100%;resize:vertical;padding:14px;border:1px solid #c5b99c;border-radius:7px;background:#fff;font:13px/1.6 var(--body);color:#173d30}.instagram-modal-actions{display:flex;gap:10px;margin-top:13px}.instagram-modal-actions button{flex:1;background:#bc9236;color:#092c21}.instagram-status{min-height:18px;color:#145c42;margin:8px 0 0!important}.footer-share~a{display:inline-block}@media(max-width:760px){.share-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-share>div{justify-content:flex-start}}@media(max-width:420px){.share-button{font-size:13px;gap:5px;min-height:60px}.share-icon{font-size:21px}.instagram-images{grid-template-columns:1fr}.instagram-modal-actions{flex-direction:column}}@media(prefers-reduced-motion:reduce){.share-button{transition:none}.share-button:hover{transform:none}}
