:root{--navy:#0b1f5c;--blue:#1d4ed8;--gold:#f5b82e;--muted:#586784;--light:#f5f8ff;--shadow:0 3px 5px #0b1f5c05,0 12px 28px #0b1f5c12}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--light);color:var(--navy);font:14px/1.65 Poppins,Arial,sans-serif;overflow-x:clip;-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #3574ff;outline-offset:4px}
h1,h2,p{margin:0}
h2{font-size:clamp(26px,2.2vw,36px);letter-spacing:-.65px;line-height:1.22;font-weight:700;text-wrap:balance}
p{color:var(--muted)}
.wrap{width:min(1720px,94%);margin-inline:auto}
.section{padding:40px 0}
.eyebrow{font-size:10px;letter-spacing:.38em;font-weight:600;color:var(--navy);margin-bottom:7px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:12px 24px;border:0;border-radius:50px;font-size:11px;font-weight:600;white-space:nowrap;transition:transform .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 7px 16px #9c731f33}
.button span{font-size:19px;line-height:1}
.gold{background:linear-gradient(160deg,#ffe8a0 0%,#ffd166 40%,#f3b536 80%,#e7a028);color:#101b3d;border:1px solid #edbc5366;box-shadow:inset 0 2px 1px #fff9,inset 0 -2px 1px #d9901a33,0 5px 12px #b27b2225}
.blue{background:linear-gradient(130deg,#3559ff,#2e20a4);color:white;box-shadow:0 4px 12px #3433af33}
.nav{height:72px;background:#fffffff2;display:flex;align-items:center;justify-content:space-between;padding:0 max(4%,calc((100vw - 1560px)/2));gap:25px;position:sticky;top:0;z-index:10;box-shadow:0 2px 12px #0b1f5c08;backdrop-filter:blur(14px)}
.logo{font-size:27px;font-weight:800;line-height:1;letter-spacing:-1.1px;display:inline-block}
.logo span{color:#095be4}
.logo small{display:block;font-size:8px;letter-spacing:.24em;font-weight:500;text-align:center;margin-top:7px;color:#1556c9}
.nav nav{display:flex;gap:25px;align-items:center}
.nav nav a{font-size:12px;font-weight:500;padding:24px 0;position:relative}
.nav nav a.active{color:#0759e8}
.nav nav a.active:after{content:'';position:absolute;left:0;right:0;bottom:15px;height:2px;background:#0759e8}
.menu-toggle{display:none}
.hero{height:410px;position:relative;display:flex;align-items:center;background:#dcefff url('assets/hero.png') center/cover no-repeat;isolation:isolate}
.hero-content{width:57%;margin-left:16%;text-align:center;position:relative;padding-bottom:5px}
.hero .eyebrow{letter-spacing:.65em;font-size:12px;margin-bottom:9px;color:#0545bc}
.hero h1{font-family:'Great Vibes',cursive;font-size:clamp(62px,6.8vw,100px);font-weight:400;line-height:1.05;letter-spacing:-3px;white-space:nowrap;transform:rotate(-3deg)}
.anniversary{font:700 clamp(27px,2.3vw,38px) Cinzel,serif;letter-spacing:.19em;color:#bf861d;background:linear-gradient(#ffe39a,#d39a31 55%,#ae6e11);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 #fff8d9);margin-top:10px}
.hero h2{font-size:17px;letter-spacing:0;margin-top:13px}
.hero-values{font-size:10px;color:var(--navy);margin:9px 0 20px}
.hero-values i{font-style:normal;padding:0 6px}
.passion{position:absolute;top:27px;right:26%;font:27px/1.05 'Great Vibes',cursive;color:var(--navy);transform:rotate(-14deg);text-align:center}
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;position:relative;margin-top:-2px;z-index:1}
.stat{background:linear-gradient(145deg,#fff,#f9faff 65%,#edf2ff);border:1px solid #fff;border-radius:0 0 18px 18px;text-align:center;padding:17px 10px 20px;box-shadow:inset 0 1px 0 #fff,0 5px 18px #4469c00f}
.stat-icon{font-size:30px;color:#0860ed;line-height:1.1;filter:drop-shadow(0 3px 2px #1954c52b)}
.stat:nth-child(3) .stat-icon{color:#7231df}
.stat:nth-child(n+4) .stat-icon{color:#e2ad2c}
.stat strong{display:block;font-size:30px;line-height:1.5;letter-spacing:-1px}
.stat h3{font-size:13px;margin:0}
.stat p{font-size:11px}
.section-head{text-align:center;margin-bottom:30px}
.section-head>p:last-child{margin-top:8px;font-size:13px}
.journey{position:relative;overflow:hidden;background:radial-gradient(ellipse at 0 90%,#c8dffb,transparent 35%),radial-gradient(ellipse at 100% 95%,#c9ddf8,transparent 35%),linear-gradient(#f5f8ff,#fff);padding:38px 0 35px}
.timeline{display:grid;grid-template-columns:repeat(5,1fr);max-width:1120px;position:relative}
.timeline:before{content:'';position:absolute;left:10%;right:10%;top:32px;background:linear-gradient(90deg,#2089fa,#8154e4);height:3px;box-shadow:0 2px 8px #5f58ec44}
.timeline article{position:relative;text-align:center;padding:0 15px}
.timeline .circle{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;font-size:25px;color:#fff;background:radial-gradient(circle at 30% 15%,#28c3ff,#0879ef 50%,#0645d6);box-shadow:inset 0 2px 4px #ffffff80,inset 0 -3px 5px #102c9c40,0 5px 10px #155ad32a;border:3px solid #ffffff8c}
.timeline article:nth-child(4) .circle{background:linear-gradient(135deg,#445aff,#5823db)}
.timeline article:nth-child(5) .circle{background:linear-gradient(135deg,#7645ec,#3b17b8);color:#ffdc62}
.timeline small{font-size:12px;font-weight:600}
.timeline h3{margin:2px 0 8px;font-size:14px;line-height:1.35}
.timeline p{font-size:12px;line-height:1.5;max-width:175px;margin:auto}
.plane{position:absolute;color:#0873ef;font-size:35px;top:60px;transform:rotate(-25deg)}
.plane-left{left:9%}
.plane-right{right:8%;transform:rotate(-150deg)}
.milestones{background:radial-gradient(ellipse at 10% 20%,#38339480,transparent 35%),linear-gradient(110deg,#14194f,#24227a 60%,#211856);color:white;position:relative;overflow:hidden;padding:27px 0 30px}
.milestones:before,.celebration:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#ffc945 1.5px,transparent 2px),radial-gradient(#ffffff9c 1px,transparent 2px);background-size:113px 71px,163px 97px;opacity:.35}
.milestones .eyebrow,.celebration .eyebrow{color:#fff}
.milestones .section-head{margin-bottom:23px}
.milestones p{color:#e1e6ff}
.achievement-row{display:grid;grid-template-columns:repeat(5,1fr);padding-right:17%;position:relative;z-index:1}
.achievement{display:flex;align-items:center;gap:12px;border-right:1px solid #ffffff55;padding:0 15px}
.achievement:first-child{padding-left:0}
.achievement:last-child{border:0}
.achievement-icon{border-radius:50%;width:39px;height:39px;background:#fff;color:#3a35bc;display:grid;place-items:center;font-size:21px;flex-shrink:0}
.achievement strong{color:#ffd16b;font-size:25px;line-height:1.2;text-shadow:0 2px 8px #dfa83226}
.achievement p{font-size:12px;white-space:nowrap}
.trophy{position:absolute;right:3%;bottom:15px;text-align:center;width:15%}
.trophy>span{font-size:100px;filter:drop-shadow(0 0 18px #ffcf6366);line-height:1.2}
.trophy small{display:block;color:#ffdf8c;font-size:9px;letter-spacing:.12em}
.gallery{padding-top:25px;padding-bottom:20px}
.split-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:19px}
.split-heading h2{font-size:clamp(25px,2.1vw,33px)}
.split-heading p:last-child{font-size:13px;margin-top:7px}
.photo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.photo{padding:0;border:3px solid white;background:#d7e4f8;border-radius:11px;overflow:hidden;position:relative;aspect-ratio:1.45;display:block;box-shadow:0 6px 16px #0b1f5c12}
.photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.photo:hover img{transform:scale(1.08)}
.photo:after{content:'↗';position:absolute;bottom:6px;right:8px;color:white;background:#0b1f5c99;border-radius:50%;width:25px;height:25px;opacity:0;transition:opacity .2s}
.photo:hover:after,.photo:focus-visible:after{opacity:1}
.sample-note{font-size:9px;margin-top:8px}
form{margin-top:13px;position:relative;max-width:400px}
input,textarea{display:block;width:100%;border:1px solid #dbe2f4;background:#ffffffcf;color:var(--navy);border-radius:7px;padding:10px 12px;font-size:13px;margin-bottom:9px;resize:vertical}
textarea{min-height:94px;padding-bottom:47px}
form .button{position:absolute;bottom:10px;right:10px;padding:9px 20px}
input::placeholder,textarea::placeholder{color:#657397}
.celebration{position:relative;color:white;background:#09194d url('assets/celebration.png') center/cover no-repeat;padding:40px 0;min-height:285px}
.celebration-layout{display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:center;text-align:center;gap:10px;position:relative}
.celebration h2{font-size:29px;margin-bottom:12px}
.celebration p{font-size:11px;color:white}
.celebration .eyebrow{font-size:9px}
.cake-space{min-height:220px}
.thank-you h2{color:#ffd16b;font-size:25px;line-height:1.2}
.thank-you p{max-width:285px;margin:0 auto 15px;line-height:1.6}
.thank-you .button{font-size:9px;padding:11px 15px;gap:8px}
.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:22px}
.footer .logo{font-size:23px}
.footer p{font-size:9px;white-space:nowrap;color:var(--navy)}
.footer-links{display:flex;flex-wrap:wrap;gap:11px;font-size:9px}
.footer-links button{border:0;padding:0;background:none;color:inherit;font-size:inherit}
.share-button{border:1px solid #cbd7ee;background:#fff;border-radius:30px;padding:7px 12px;color:#2153b7;font-size:10px;white-space:nowrap}
dialog{border:0;border-radius:16px;padding:20px;background:white;color:var(--navy);max-width:min(860px,92vw);box-shadow:0 25px 90px #0006}
dialog::backdrop{background:#06143bd9;backdrop-filter:blur(6px)}
#photo-dialog img{display:block;max-width:100%;max-height:70vh;object-fit:contain;border-radius:9px;margin-top:20px}
#photo-dialog>p{margin-top:12px}
.dialog-close{position:absolute;right:8px;top:4px;border:0;background:transparent;font-size:28px;color:var(--navy);width:34px;height:34px}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-top:12px}
.gallery-controls button{border:0;border-radius:50%;width:40px;height:40px;font-size:24px;background:var(--light);color:var(--blue)}
#privacy-dialog{max-width:510px;padding:35px}
#privacy-dialog p{margin:15px 0}
.sr-only,.skip{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip:focus{width:auto;height:auto;clip:auto;z-index:100;background:white;padding:10px}
#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:10px 22px;background:var(--navy);color:white;border-radius:30px;z-index:30;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .2s}
#toast.visible{opacity:1}


/* Event wordmark. */
.event-title{margin:0 auto 18px;max-width:580px}

.event-company{font-size:10px;font-weight:700;letter-spacing:.28em;color:var(--navy)}

.event-celebrates{display:flex;align-items:center;justify-content:center;gap:12px;color:#b87916;font-size:10px;font-weight:600;letter-spacing:.3em;margin-top:3px}

.event-celebrates:before,.event-celebrates:after{content:'';height:1px;width:42px;background:linear-gradient(90deg,transparent,#d4a339,transparent)}

.event-name{position:relative;width:fit-content;max-width:100%;margin:3px auto 4px;font-family:Bangers,Impact,sans-serif;font-size:clamp(48px,5vw,84px);line-height:1.05;letter-spacing:.025em;color:var(--navy);transform:rotate(-3deg) skewX(-7deg);text-shadow:2px 3px 0 #f5b82e,3px 4px 0 #ce8c1c}

.event-name:after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:3px;border-radius:50%;background:linear-gradient(90deg,#b5750c,#ffdf72,#c28c19);transform:rotate(-1deg)}

.event-tagline{font-family:'Great Vibes',cursive;font-size:28px;line-height:1.2;color:var(--navy);margin-top:10px}


/* Desktop composition: complete banner artwork and live text. */
.hero{height:auto;aspect-ratio:3 / 1;background-size:100% 100%}

.hero-content{width:48%;margin-left:24%}

.hero h1{font-size:clamp(66px,7vw,118px)}
.hero h2{font-size:clamp(15px,1.2vw,20px)}
.hero-values{font-size:clamp(11px,.75vw,13px)}
.hero .button{font-size:13px;padding:13px 25px}

.passion{right:27%;top:12px;font-size:22px}

.journey{background:#f5f8ff url("assets/journey.png") center bottom/100% auto no-repeat;min-height:calc(100vw / 3);display:flex;flex-direction:column;justify-content:center;padding-top:190px}

.journey .stats{position:absolute;top:0;left:50%;transform:translateX(-50%);margin:0}

.timeline{width:74%}

.milestones{background:radial-gradient(ellipse at 82% 70%,#4b319b88,transparent 44%),linear-gradient(110deg,#14194f,#24227a 60%,#211856);isolation:isolate;min-height:240px;padding-block:32px}

.milestones:after{content:'';position:absolute;inset:0 0 0 auto;width:auto;aspect-ratio:3 / 1;background:url("assets/milestones.png") right center/100% 100% no-repeat;mask-image:linear-gradient(to right,transparent,#000 50%);pointer-events:none;z-index:-1}

.milestones .section-head{position:relative;z-index:1;text-align:left;width:74%;margin-left:3.5%;margin-right:0}

.milestones .achievement-row{width:74%;max-width:1100px;margin-left:3.5%;margin-right:0;padding-right:0}

.trophy{display:none}

.celebration{min-height:clamp(300px,22vw,410px);aspect-ratio:auto;padding:0;display:grid;align-items:center;background:#0b1548 url('assets/celebration-stage.png') center bottom/cover no-repeat;isolation:isolate;z-index:3;border-bottom:1px solid #e5ba5d99}

.celebration-layout{width:92%;max-width:1440px;grid-template-columns:31% 38% 31%;gap:0;align-items:center;min-height:inherit}

.celebration-layout>div:first-child,.thank-you{width:100%;max-width:390px;margin-inline:auto;padding-inline:12px;position:relative;z-index:2}

.celebration .cake-space{position:relative;min-height:inherit;align-self:stretch;z-index:3;pointer-events:none}

.celebration-art{display:block;position:absolute;left:50%;bottom:-12px;transform:translateX(-50%);height:calc(100% + 82px);width:auto;max-width:none;object-fit:contain;filter:drop-shadow(0 12px 10px #02061970)}
.celebration:before{background:linear-gradient(90deg,#040c288c 0%,#040c285e 26%,transparent 44%,transparent 56%,#040c285e 74%,#040c288c 100%);opacity:1}
.celebration h2{font-size:clamp(25px,2.1vw,35px);line-height:1.28;text-shadow:0 2px 14px #02061980}
.celebration p{font-size:13px;color:#f4f6ff}
.celebration .eyebrow{font-size:10px;letter-spacing:.32em;margin-bottom:13px}
.thank-you h2{font-size:clamp(24px,1.8vw,30px);color:#ffd477;text-shadow:0 2px 7px #02061980}
.thank-you p{max-width:330px;font-size:12px;line-height:1.75;margin-bottom:18px}
.thank-you .button{font-size:11px;padding:12px 15px;gap:9px;white-space:normal}
.footer{position:relative;z-index:4;background:#f8faff;padding-block:26px}
.footer p,.footer-links{font-size:10px}

.stat-icon svg,.circle svg{display:block;width:28px;height:28px;margin:auto}

.achievement-icon svg{display:block;width:22px;height:22px}

/* Premium live-text treatment for the Foundation Day hero only. */
.foundation-page .passion{right:17%;top:12px}

/* Approved YUGAARAMBH hierarchy: navy italic display face with a gold 3D offset. */
.foundation-page .event-name{margin:4px auto 5px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(56px,5.65vw,102px);font-style:italic;font-weight:900;line-height:.82;letter-spacing:-.025em;transform:skewX(-8deg);background:none;color:#071d67;-webkit-text-fill-color:#071d67;-webkit-text-stroke:0;text-shadow:2px 2px 0 #ffcd27,3px 3px 0 #ffcd27,4px 4px 0 #f4ae11,5px 5px 0 #d88908,6px 6px 0 #071d6745}.foundation-page .event-name:after{left:10%;right:7%;bottom:-10px;height:2px;border-radius:0;background:linear-gradient(90deg,transparent 0%,#d88a09 12%,#ffca1d 48%,#d88a09 88%,transparent 100%);box-shadow:none;transform:skewX(-24deg) rotate(-2deg)}.foundation-page .event-tagline{margin-top:16px;color:#071d67;font-family:'Great Vibes','Pinyon Script',cursive;font-size:clamp(25px,2.15vw,40px);font-weight:400;line-height:1;text-shadow:none}.foundation-page .hero h1{color:#071d67;font-family:'Great Vibes','Pinyon Script',cursive;font-size:clamp(66px,6vw,108px);font-weight:400;line-height:.86;letter-spacing:-.035em;-webkit-text-stroke:0;text-shadow:0 1px 0 #ffffffcc,0 2px 4px #071d6726}.foundation-page .anniversary{margin-top:13px;font-size:clamp(20px,1.75vw,31px);font-weight:700;letter-spacing:.29em;background:linear-gradient(180deg,#ffe9a1 0%,#d7981d 54%,#9a5a09 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 #fff4c9)}.foundation-page .anniversary:before,.foundation-page .anniversary:after{width:clamp(24px,2.6vw,50px);background:linear-gradient(90deg,transparent,#d3941a,#f5d36f)}
.foundation-page .hero-content{font-family:Montserrat,Poppins,sans-serif}.foundation-page .event-title{max-width:760px;margin:0 auto 15px}.foundation-page .event-company{margin:0;color:#071c58;font-family:Montserrat,Poppins,sans-serif;font-size:clamp(9px,.72vw,13px);font-weight:800;letter-spacing:.43em;line-height:1.2;text-shadow:0 1px 0 #fff}.foundation-page .event-celebrates{gap:16px;margin-top:8px;color:#c98a12;font-family:Montserrat,Poppins,sans-serif;font-size:clamp(9px,.68vw,12px);font-weight:700;letter-spacing:.46em;line-height:1.1}.foundation-page .event-celebrates:before,.foundation-page .event-celebrates:after{width:clamp(42px,4.3vw,78px);height:1px;background:linear-gradient(90deg,transparent,#d99c20 35%,#ffe795 50%,#d99c20 65%,transparent)}.foundation-page .event-name{margin:5px auto 4px;font-family:Cinzel,'Cormorant Garamond',serif;font-size:clamp(48px,4.75vw,88px);font-weight:900;line-height:.92;letter-spacing:.015em;transform:none;background:linear-gradient(180deg,#fff8bd 0%,#ffdc61 20%,#bd7009 50%,#fff09c 70%,#c17a0e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1px #875009;text-shadow:0 2px 0 #fff0a6,0 4px 0 #7a4a09,0 7px 0 #071c58,0 10px 13px #05113a88}.foundation-page .event-name:after{left:7%;right:7%;bottom:-9px;height:4px;background:linear-gradient(90deg,transparent,#a56508 10%,#ffe38d 46%,#fff7bd 50%,#d58e12 57%,#a56508 90%,transparent);box-shadow:0 3px 5px #06184c55;transform:none}.foundation-page .event-tagline{margin:15px 0 0;color:#062365;font-family:'Pinyon Script','Great Vibes',cursive;font-size:clamp(30px,2.7vw,49px);font-weight:400;line-height:.95;text-shadow:0 1px 0 #fff,0 2px 4px #0b1f5c28}.foundation-page .hero .eyebrow{margin:11px 0 7px;color:#0b3fae;font-family:Montserrat,Poppins,sans-serif;font-size:clamp(9px,.72vw,13px);font-weight:800;letter-spacing:.62em;text-shadow:0 1px 0 #fff}.foundation-page .hero h1{margin:0;color:#0b1f5c;font-family:'Great Vibes','Pinyon Script',cursive;font-size:clamp(69px,6.4vw,116px);font-weight:400;line-height:.84;letter-spacing:-.045em;transform:none;text-shadow:-1px 0 #e0ad3a,0 1px #e0ad3a,1px 0 #e0ad3a,0 2px 1px #fff,0 5px 8px #05184b48}.foundation-page .anniversary{position:relative;display:inline-flex;align-items:center;gap:18px;margin:14px 0 0;font-family:Cinzel,'Cormorant Garamond',serif;font-size:clamp(22px,2vw,35px);font-weight:800;letter-spacing:.33em;line-height:1.1;background:linear-gradient(180deg,#fff0a6,#d18a13 58%,#8f5007);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 #fff5c8)}.foundation-page .anniversary:before,.foundation-page .anniversary:after{content:'';width:clamp(28px,3vw,58px);height:1px;background:linear-gradient(90deg,transparent,#c88918,#f7d46f)}.foundation-page .anniversary:after{transform:scaleX(-1)}.foundation-page .hero h2{margin:14px 0 0;color:#0b1f5c;font-family:Montserrat,Poppins,sans-serif;font-size:clamp(15px,1.16vw,20px);font-weight:800;letter-spacing:-.025em;text-shadow:0 1px 0 #fff}.foundation-page .hero-values{margin:8px 0 19px;color:#0b1f5c;font-family:Montserrat,Poppins,sans-serif;font-size:clamp(9px,.74vw,13px);font-weight:500;letter-spacing:.015em}.foundation-page .hero-values i{color:#bd8318;font-weight:800}.foundation-page .passion{font-family:'Great Vibes',cursive;font-size:clamp(18px,1.7vw,28px);font-weight:400;line-height:1.04;color:#071d5e;text-shadow:0 1px 0 #fff,0 2px 5px #071d5e33}


/* YUGAARAMBH: full metallic gold with a glass glint every 3s and a slim gold rule. */
.foundation-page .event-name{background:linear-gradient(110deg,transparent 40%,#ffffffd9 48%,#fff 50%,#ffffffd9 52%,transparent 60%) -200% 0/200% 100% no-repeat,linear-gradient(180deg,#fff1a8 0%,#ffd84d 35%,#ffcc33 65%,#f5b623 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:0;text-shadow:none;filter:drop-shadow(1px 1px 0 #6b3d05) drop-shadow(1px 1px 0 #2a1802) drop-shadow(1px 1px 0 #111) drop-shadow(1px 1px 0 #111) drop-shadow(2px 4px 6px #000000aa);animation:glassGlint 3s ease-in-out infinite;padding:0 .14em 0 .06em}
.foundation-page .event-name:after{display:block;left:8%;right:8%;bottom:-14px;height:12px;background:none;border-top:2px solid #e9ad2a;border-radius:50% 50% 0 0 / 100% 100% 0 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);box-shadow:none;transform:none}
@keyframes glassGlint{0%{background-position:-200% 0,0 0}35%,100%{background-position:200% 0,0 0}}
@media (prefers-reduced-motion:reduce){.foundation-page .event-name{animation:none}}

/* Celebration section now holds only the cake: keep it in the centre column. */
.celebration-layout>.cake-space:first-child{grid-column:2;max-width:none;padding-inline:0}

/* Arrival animations + skeleton hand-off (see reveal.js and partials/skeleton). */
html{scroll-padding-top:80px}
.reveal-ready .reveal{opacity:0;transform:translateY(46px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.reveal-ready .reveal.is-visible{opacity:1;transform:none}
.reveal-ready .reveal-item{opacity:0;transform:translateY(28px) scale(.97);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(.15s + var(--i,0) * .09s)}
.reveal-ready .reveal.is-visible .reveal-item{opacity:1;transform:none}
/* Hero copy arrives line by line once the skeleton fades. */
.reveal-ready .hero-content>*,.reveal-ready .event-copy>*{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal-ready.page-loaded .hero-content>*,.reveal-ready.page-loaded .event-copy>*{opacity:1;transform:none}
.reveal-ready .hero-content>:nth-child(2),.reveal-ready .event-copy>:nth-child(2){transition-delay:.12s}
.reveal-ready .hero-content>:nth-child(3),.reveal-ready .event-copy>:nth-child(3){transition-delay:.24s}
.reveal-ready .hero-content>:nth-child(4),.reveal-ready .event-copy>:nth-child(4){transition-delay:.36s}
.reveal-ready .hero-content>:nth-child(5),.reveal-ready .event-copy>:nth-child(5){transition-delay:.48s}
.reveal-ready .hero-content>:nth-child(n+6),.reveal-ready .event-copy>:nth-child(n+6){transition-delay:.6s}
