/* A midnight-blue invitation, warm champagne details and quiet celebration. */
:root{--bg:#091427;--ink:#faf5e9;--gold:#e8c68b;--muted:#b4bed0}body{background:#091427}::selection{background:#e8c68b;color:#091427}nav{background:#091427df;border-bottom:1px solid #e8c68b22;box-shadow:0 12px 40px #0001}nav.is-scrolled{background:#091427f2}.official-brand{filter:drop-shadow(0 0 14px #ffffff12)}nav>div{font-size:11px;letter-spacing:.3px}.nav-cta{border:1px solid #e8c68b80;background:linear-gradient(135deg,#e8c68b12,#e8c68b03);box-shadow:inset 0 1px #fff1}
.hero{padding:95px 8% 105px;gap:7%;min-height:780px;background:radial-gradient(ellipse at 83% 25%,#395e943d,transparent 48%),radial-gradient(ellipse at 7% 100%,#c5943a16,transparent 50%),#091427;align-items:center}.hero:before{content:'';position:absolute;inset:22px;border:1px solid #e8c68b18;border-radius:3px;z-index:-1;pointer-events:none}.hero .eyebrow{line-height:2.1;letter-spacing:2.2px;color:#e8c68b}.hero h1{font-size:clamp(50px,5.6vw,88px);line-height:1.13;letter-spacing:-2.8px;text-shadow:0 8px 40px #0003}.hero h1 em{background:linear-gradient(110deg,#b48c4b,#ffe7ad 40%,#e8c68b 70%,#ad8447);background-clip:text;-webkit-background-clip:text;color:transparent}.hero .intro{font-size:15px;line-height:1.9;color:#c1cada;max-width:420px}.hero .actions{gap:25px}.button.gold{background:linear-gradient(120deg,#cda366,#f4d9a3 52%,#d6ae70);color:#14203a;box-shadow:0 8px 30px #d5ae6d20,inset 0 1px #fff8;border:1px solid #ebcf9b;border-radius:5px}.button.gold:hover{box-shadow:0 12px 40px #d5ae6d40}.text-link{color:#e8c68b}.event-meta{border-top:1px solid #e8c68b25;padding-top:25px;gap:35px}.event-meta small{color:#c8ac79}.hero .official-graduation{position:relative;padding:14px}.hero .official-graduation:before{display:block;content:'';position:absolute;inset:0;border:1px solid #e8c68b55;border-radius:180px 180px 16px 16px;pointer-events:none}.ceremony-portal{border:1px solid #eed59e70;border-radius:170px 170px 9px 9px;box-shadow:0 35px 80px #0006,0 0 70px #e8c68b12;background:#132341;animation:portal-reveal 1.4s both,ceremony-drift 8s 1.4s ease-in-out infinite}.ceremony-portal>img{border:0;box-shadow:none}.portal-caption{background:linear-gradient(130deg,#142643,#0c1c36);border-top:1px solid #e8c68b33;padding:22px 25px}.portal-caption strong{font-family:Georgia,serif;font-size:17px;font-weight:400}.portal-caption small{letter-spacing:1.7px}.portal-arrow{background:#e8c68b0d}.orbits{opacity:.65}.motion-stars{opacity:1}.scroll{bottom:43px;left:8%}
.celebration-ribbon{order:0;display:flex;justify-content:center;align-items:center;gap:35px;padding:20px 6%;background:linear-gradient(90deg,#d2af74,#f3dfb6,#d2af74);color:#25324a;font-size:9px;letter-spacing:3px;text-align:center}.celebration-ribbon span[aria-hidden]{font-size:17px;letter-spacing:0}.eyebrow{letter-spacing:2.3px}section:not(.hero){padding:100px 8%}h2{font-size:clamp(38px,4.4vw,62px);letter-spacing:-1.8px}.section-head{margin-bottom:44px}.section-head>p{line-height:1.9;color:#b4bed0}.seat-section{background:radial-gradient(ellipse at top right,#223e612c,transparent 55%),#0d1a30}.finder{background:#101f38;border:1px solid #e8c68b3d;border-radius:16px;box-shadow:0 24px 70px #0003,inset 0 1px #ffffff06}.finder-simple{grid-template-columns:.95fr 1.05fr}.finder-form{padding:42px}.finder-form>h3{font-size:32px}.input-row{border:1px solid #cdb17c66;background:#091629;border-radius:6px;box-shadow:inset 0 2px 10px #0002}.input-row:focus-within{border-color:#e8c68b;box-shadow:0 0 0 4px #e8c68b0c}.input-row input{padding:18px;font-size:15px}.input-row .button{border:0;border-radius:0}.interactive-seat-map{background:radial-gradient(ellipse at 50% 0,#314d7230,transparent 70%),#0b172d;padding:35px}.interactive-seat-map h3{color:#f4e6ca}.interactive-seat-map svg{filter:drop-shadow(0 10px 20px #0002)}.map-ticket-choices button{border-radius:20px;padding:9px 14px}.map-ticket-choices button[aria-pressed=true]{background:linear-gradient(120deg,#cda366,#f4d9a3);border-color:transparent}.seat-walking-directions{background:#e8c68b08;border-radius:0 8px 8px 0;padding:10px 16px;margin-top:20px}.seat-walking-directions p{margin:6px 0}.ticket{border-top:1px solid #e8c68b22}.ticket strong{font-size:17px}.graduate-seat-note{color:#d4bd92!important}.map-selection{line-height:1.8}
.arrival-section{background:#f5f0e6;color:#17273e}.arrival-section h2 em{color:#96713e}.arrival-section .eyebrow{color:#987241}.arrival-date{color:#6e7580}.arrival-times{background:#fff8;border:1px solid #c4a77a55;border-radius:12px;padding:26px 28px;box-shadow:0 10px 30px #2b354608;gap:25px}.arrival-times time{color:#9c743d;font-size:30px}.arrival-times strong{color:#24344c}.arrival-times span{color:#6b7483}.arrival-grid{gap:32px}.arrival-grid>article{border:1px solid #bca27a33;background:#ffffff55;padding:30px;border-radius:10px}.arrival-grid h3{font-size:28px;color:#24344c}.arrival-grid ul{color:#626e80;margin-bottom:0}.arrival-grid strong{color:#22324a}.arrival-grid li{padding-bottom:11px}.arabic-instructions,.hotel-note{border-color:#bca27a55}.arabic-instructions summary,.hotel-note summary{color:#876331}.accessibility-note{background:#ebe4d7;border:1px solid #bca27a55;border-radius:10px;margin-top:35px}.accessibility-note h3{color:#24344c}.accessibility-note p,.parking-panel p,.hotel-note p{color:#657183}.accessibility-note .button{color:#876331;border-color:#bca27a}.accessibility-note .eyebrow{color:#876331}.parking-panel{background:#fff9;border:1px solid #bca27a55;padding:30px;border-radius:12px;margin-top:40px}.parking-panel h3{color:#24344c;font-size:32px}.parking-actions a{background:#f4efe5;border:1px solid #bca27a66;color:#22324a;padding:16px;border-radius:8px}.parking-actions a:hover{border-color:#9c743d;transform:translateY(-3px);box-shadow:0 8px 20px #1526410a}.parking-actions b{background:#1b2b45;color:#e8c68b}.parking-actions small{color:#76808c}.parking-actions i{color:#987241}.parking-allocation strong{color:#876331}.parking-plan{box-shadow:0 8px 30px #17273e0d}.hotel-note a{color:#876331}.arrival-grid .eyebrow{font-size:8px}
.day{background:radial-gradient(ellipse at 25% 90%,#8063341c,transparent 55%),#0b172c}.timeline{border-top:0;gap:20px;padding-top:10px}.timeline article{border:1px solid #e8c68b33;border-radius:10px;padding:25px 22px;background:linear-gradient(140deg,#ffffff05,transparent);overflow:hidden}.timeline article:before{display:none}.timeline article>span{font:italic 48px/1 Georgia,serif;color:#d9b77980;margin-bottom:20px}.timeline article h3{color:#f3e5c9;font-size:16px}.timeline article p{line-height:1.9}.timeline article:hover{border-color:#e8c68b80;background:#e8c68b08}
.story{background:#eee6d6;color:#22324a;gap:6%;row-gap:40px}.story h2{font-size:48px}.story em{color:#96713e}.story .large{font-size:29px;line-height:1.5}.story p:not(.eyebrow){color:#69717b}.university-highlights{gap:30px;border-color:#bca27a66}.university-highlights article{padding-right:24px;border-right:1px solid #bca27a44}.university-highlights article:last-child{border-right:0}.university-highlights h3{font-size:25px;color:#25354a}.university-highlights a{color:#876331}.story .eyebrow,.uni-kicker{color:#876331}.faq{background:#f8f4ed;color:#22324a}.faq h2{font-size:45px}.faq details{border-color:#bca27a55;padding:23px 0}.faq summary{font-size:16px;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:24px;font-weight:400;color:#9c743d}.faq details[open] summary:after{content:'−'}.faq details p{line-height:1.9;color:#69717b}.closing{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 120%,#b68b4140,transparent 65%),#0b172c;padding-top:110px!important;padding-bottom:110px!important}.closing:before,.closing:after{content:'';position:absolute;width:600px;height:600px;border:1px solid #e8c68b15;border-radius:50%;pointer-events:none;left:calc(50% - 300px);top:60px}.closing:after{width:700px;height:700px;left:calc(50% - 350px);top:10px}.closing>*{position:relative;z-index:1}.closing h2{font-size:66px;line-height:1.18}.closing .eyebrow{letter-spacing:3px}footer{background:#081222;border-color:#e8c68b22;padding-top:30px;padding-bottom:30px}.celebration-spark{position:absolute;pointer-events:none;color:#f3d69a;z-index:0;animation:celebration-glint 5s ease-in-out infinite;font-family:Georgia,serif;font-weight:400}.celebration-spark:nth-of-type(2n){color:#fff1d0}@keyframes celebration-glint{0%,100%{opacity:.15;transform:scale(.6) rotate(0)}50%{opacity:.8;transform:scale(1) rotate(35deg)}}
@media(min-width:1600px){.hero{min-height:850px}}@media(max-width:1050px){.hero{padding-left:6%;padding-right:6%;gap:4%;min-height:680px}.hero h1{font-size:60px}.hero .actions{flex-wrap:wrap}.finder-form,.interactive-seat-map{padding:28px}.arrival-grid>article{padding:24px}.parking-actions{grid-template-columns:repeat(3,1fr)}.timeline{gap:14px}.timeline article{padding:22px 17px}.story h2{font-size:40px}.celebration-ribbon{gap:22px;font-size:8px;letter-spacing:2px}}@media(max-width:650px){nav{height:80px}.hero{padding:48px 6% 55px;gap:38px;min-height:auto}.hero:before{inset:12px}.hero h1{font-size:clamp(46px,11vw,64px);letter-spacing:-1.8px}.hero .eyebrow{font-size:8px;line-height:2;letter-spacing:1.5px}.hero .intro{font-size:14px}.hero .official-graduation{padding:10px;max-width:360px}.hero .official-graduation:before{border-radius:145px 145px 13px 13px}.ceremony-portal{border-radius:140px 140px 7px 7px}.portal-caption{padding:18px}.portal-caption strong{font-size:16px}.event-meta{gap:22px;padding-top:20px}.celebration-ribbon{gap:12px;letter-spacing:1.2px;font-size:7px;padding:16px 5%}.celebration-ribbon span[aria-hidden]{font-size:12px}.celebration-ribbon .ribbon-extra{display:none}section:not(.hero){padding:65px 6%}h2{font-size:39px}.finder-simple{grid-template-columns:1fr}.finder-form{padding:28px 22px}.finder-form>h3{font-size:29px}.interactive-seat-map{padding:26px 16px}.arrival-times{padding:22px 18px;gap:24px 16px}.arrival-times time{font-size:25px}.arrival-grid>article{padding:22px}.arrival-grid{gap:18px}.arrival-grid h3{font-size:26px}.parking-panel{padding:20px}.parking-actions{grid-template-columns:1fr 1fr}.parking-actions a{padding:13px 10px}.timeline{grid-template-columns:1fr 1fr;gap:12px}.timeline article{padding:22px 16px}.timeline article>span{font-size:39px;margin-bottom:14px}.timeline article h3{font-size:15px;line-height:1.4}.timeline article p{font-size:11px}.story h2{font-size:38px}.story .large{font-size:26px}.university-highlights article{border-right:0;padding-right:0}.faq h2{font-size:38px}.faq summary{font-size:14px}.closing{padding-top:80px!important;padding-bottom:80px!important}.closing h2{font-size:46px}.closing .eyebrow{font-size:8px;letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){.celebration-spark,.ceremony-portal{animation:none!important}.celebration-spark{opacity:.4}.timeline article:hover{transform:none}}
