@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600;700;800;900&family=Nunito:wght@700;800;900&family=Baloo+2:wght@700;800&display=swap');
:root{
  --navy:#071a46;--navy2:#102b61;--blue:#8fb9df;--sky:#d8ecff;--cream:#fff7e8;--gold:#d7a747;--gold2:#ffe39a;--white:#fff;--ink:#071a46;
  --glass:rgba(255,255,255,.50);--glass2:rgba(255,255,255,.72);--shadow:0 28px 90px rgba(7,26,70,.22);--radius:34px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Poppins","Nunito",system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);min-height:100vh;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.glass-card{background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(255,255,255,.35));border:1px solid rgba(255,255,255,.85);box-shadow:var(--shadow);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.royal-body{background:radial-gradient(circle at 70% 10%,#fff8dc 0 2%,transparent 15%),radial-gradient(circle at 0% 70%,#f4dca7 0 0.5%,transparent 18%),linear-gradient(135deg,#dbeefa 0%,#f7f4ed 46%,#a7c9e8 100%)}
.royal-body:before,.gallery-body:before,.countdown-body:before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 10% 16%,rgba(255,255,255,.95) 0 2px,transparent 3px),radial-gradient(circle at 84% 11%,rgba(255,227,154,.9) 0 3px,transparent 6px),radial-gradient(circle at 75% 77%,rgba(255,255,255,.8) 0 2px,transparent 4px),radial-gradient(circle at 30% 68%,rgba(255,234,177,.9) 0 2px,transparent 5px);pointer-events:none;animation:twinkle 6s linear infinite;z-index:-1}.ambient-lights{position:fixed;inset:-10%;background:radial-gradient(circle at 6% 86%,rgba(217,167,71,.35),transparent 11%),radial-gradient(circle at 92% 12%,rgba(255,255,255,.6),transparent 14%);filter:blur(4px);z-index:-2}.hero-shell{width:min(1860px,calc(100% - 48px));min-height:calc(100vh - 54px);margin:27px auto;border-radius:42px;padding:25px 34px 40px;border:2px solid rgba(255,255,255,.82);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 45px 110px rgba(5,24,63,.24);position:relative;overflow:hidden}.hero-shell:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 62%,rgba(255,255,255,.58) 0 12%,transparent 32%),radial-gradient(circle at 0 95%,rgba(255,255,255,.96) 0 8%,transparent 24%),radial-gradient(circle at 96% 92%,rgba(255,255,255,.9) 0 6%,transparent 25%);pointer-events:none}.hero-shell:after{content:"";position:absolute;right:-100px;bottom:-70px;width:760px;height:210px;background:radial-gradient(ellipse at center,rgba(255,255,255,.86),rgba(255,255,255,.3) 55%,transparent 70%);filter:blur(4px);pointer-events:none}.royal-nav{height:108px;border-radius:64px;display:flex;align-items:center;justify-content:space-between;padding:0 22px 0 44px;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:18px}.brand-crown{width:72px;height:72px;border-radius:26px;display:grid;place-items:center;font-size:46px;color:var(--gold);filter:drop-shadow(0 6px 8px rgba(139,83,0,.25))}.brand strong{display:block;font-size:26px;line-height:1;color:var(--navy)}.brand small{display:block;margin-top:7px;color:#b47a16;font-size:18px}.nav-links{display:flex;align-items:center;gap:58px;font-size:21px;font-weight:700}.nav-links a,.linklike{background:transparent;border:0;color:var(--navy);position:relative;padding:12px 0}.nav-links a.active:after{content:"";position:absolute;left:-6px;right:-6px;bottom:0;height:3px;border-radius:9px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.lang-toggle,.modal-language button,.page-header nav button{border:1px solid rgba(215,167,71,.4);background:rgba(255,255,255,.55);border-radius:18px;padding:10px 14px;font-weight:900;color:var(--navy)}.nav-medal{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 25%,#1c3c79,var(--navy));color:var(--gold2);font-size:34px;box-shadow:inset 0 0 0 4px rgba(255,255,255,.28),0 13px 32px rgba(7,26,70,.22)}.nav-toggle{display:none;background:rgba(255,255,255,.7);border:0;border-radius:18px;padding:10px 14px;color:var(--navy);font-size:24px}.hero-grid{display:grid;grid-template-columns:minmax(410px,46%) 1fr;gap:18px;position:relative;z-index:2;min-height:760px}.hero-copy{padding:130px 0 0 100px;position:relative}.mini-crown{font-size:68px;text-align:center;width:330px;margin-bottom:12px;color:var(--gold);filter:drop-shadow(0 8px 9px rgba(156,98,12,.22))}.gold-line{width:330px;text-align:center;margin-bottom:14px;color:var(--gold);letter-spacing:11px}.gold-line:before,.gold-line:after{content:"";display:inline-block;width:62px;height:2px;background:var(--gold);vertical-align:middle;margin:0 14px}.hero-copy h1{font-size:clamp(48px,5.6vw,92px);line-height:.98;margin:0;color:var(--navy);letter-spacing:-3px;text-transform:uppercase;text-shadow:0 8px 0 rgba(5,31,80,.06),0 10px 18px rgba(7,26,70,.18);max-width:760px}.hero-copy h1::first-line{font-size:.78em}.event-date{display:flex;align-items:center;justify-content:center;gap:24px;width:min(500px,100%);font-size:31px;letter-spacing:18px;font-weight:900;color:var(--navy);margin:34px 0}.event-date:before,.event-date:after{content:"❧";color:var(--gold);font-size:34px;letter-spacing:0}.memory-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:2px solid rgba(255,241,190,.95);padding:22px 58px;border-radius:42px;color:var(--navy);font-weight:900;font-size:22px;background:linear-gradient(135deg,#ffe9a8 0,#d99b2f 48%,#fff1b9 100%);box-shadow:0 0 0 5px rgba(255,217,119,.25),0 0 38px rgba(255,204,83,.78),inset 0 5px 13px rgba(255,255,255,.5);position:relative;overflow:hidden;transition:.25s transform}.memory-btn:hover{transform:translateY(-3px) scale(1.01)}.memory-btn:before{content:"";position:absolute;inset:-40% -10%;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.85),transparent 60%);transform:translateX(-120%);animation:shine 3.4s ease-in-out infinite}.memory-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:2px solid rgba(255,255,255,.8);background:rgba(255,255,255,.23);z-index:1}.memory-btn span{z-index:1}.memory-btn.small{font-size:16px;padding:14px 26px;border-radius:24px}.event-info{width:min(675px,100%);min-height:116px;margin-top:76px;border-radius:28px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:18px 28px}.event-info div{display:grid;grid-template-columns:48px 1fr;gap:4px 14px;padding:0 18px;border-right:1px solid rgba(215,167,71,.55)}.event-info div:last-child{border-right:0}.info-icon{grid-row:span 2;font-size:34px}.event-info strong{font-size:17px}.event-info small{font-size:16px;line-height:1.3;color:#14295e}.hero-art{position:relative;min-height:760px}.castle-window{position:absolute;left:14%;top:6%;width:420px;height:620px;border-radius:230px 230px 40px 40px;border:9px solid rgba(230,181,105,.4);background:linear-gradient(rgba(151,195,235,.35),rgba(255,255,255,.08)),url('../img/castle.svg') center/68% no-repeat;box-shadow:inset 0 0 70px rgba(255,255,255,.75)}.cupcake-stage{position:absolute;left:3%;bottom:20px;width:610px;height:650px;transform-style:preserve-3d}.plate{position:absolute;left:65px;bottom:0;width:480px;height:112px;border-radius:50%;background:linear-gradient(#fff,#eaf3fb);border:6px solid rgba(215,167,71,.52);box-shadow:0 30px 0 #24466f,0 55px 34px rgba(7,26,70,.25)}.cup{position:absolute;left:150px;bottom:95px;width:305px;height:240px;background:linear-gradient(90deg,#06204c,#183e7d 50%,#082452);clip-path:polygon(10% 0,90% 0,78% 100%,22% 100%);border-radius:0 0 36px 36px;box-shadow:inset 24px 0 30px rgba(255,255,255,.08),inset -18px 0 30px rgba(0,0,0,.18)}.cup:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 30px,rgba(255,255,255,.08) 31px 34px),radial-gradient(circle at 20% 40%,var(--gold) 0 3px,transparent 4px),radial-gradient(circle at 70% 70%,var(--gold) 0 3px,transparent 4px),radial-gradient(circle at 45% 20%,var(--gold) 0 2px,transparent 3px)}.cake{position:absolute;left:135px;bottom:275px;width:340px;height:92px;border-radius:48% 48% 25px 25px;background:linear-gradient(#b97831,#7d421c);box-shadow:inset 0 18px 24px rgba(255,255,255,.15)}.frosting{position:absolute;left:92px;bottom:330px;width:430px;height:210px;filter:drop-shadow(0 12px 14px rgba(87,57,24,.2))}.frosting span{position:absolute;border-radius:50%;background:radial-gradient(circle at 40% 25%,#fffdf7,#fff4df 55%,#e9c792 100%);box-shadow:inset 0 -16px 24px rgba(208,162,83,.18)}.frosting span:nth-child(1){left:10px;bottom:0;width:410px;height:150px}.frosting span:nth-child(2){left:70px;bottom:65px;width:300px;height:120px}.frosting span:nth-child(3){left:140px;bottom:135px;width:155px;height:80px}.frosting:after{content:"★ • • ★ •";position:absolute;left:140px;bottom:42px;color:var(--gold);font-size:28px;letter-spacing:18px}.gold-one{position:absolute;left:225px;bottom:470px;font-size:250px;line-height:.8;font-weight:1000;color:#e2ac4c;text-shadow:0 4px 0 #fff0bb,0 15px 22px rgba(103,66,16,.3);z-index:3}.gold-one:before{content:"";position:absolute;inset:24px 25px 20px;border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.32),transparent);z-index:-1}.flame{position:absolute;left:83px;top:-56px;width:26px;height:70px;border-radius:70% 70% 50% 50%;background:radial-gradient(circle at 45% 65%,#08235c 0 7px,transparent 8px),radial-gradient(ellipse at center,#fff 0 20%,#ffd07a 38%,#ff9f33 65%,transparent 70%);animation:flicker .8s ease-in-out infinite}.tilted-crown{position:absolute;left:340px;bottom:405px;font-size:130px;color:var(--gold);transform:rotate(-13deg);text-shadow:0 10px 18px rgba(93,60,10,.2)}.photo-orbit{position:absolute;border:8px solid rgba(219,164,63,.72);border-radius:50%;background:rgba(255,255,255,.34);box-shadow:0 18px 40px rgba(7,26,70,.2),inset 0 0 0 7px rgba(255,255,255,.28);overflow:hidden;z-index:3}.photo-orbit img{width:100%;height:100%;object-fit:cover;display:block}.photo-main{right:22px;top:90px;width:310px;height:310px}.photo-main:before{content:"♕";position:absolute;top:-55px;left:52px;color:var(--gold);font-size:92px;z-index:2}.photo-small-a{right:70px;top:420px;width:210px;height:210px}.photo-small-b{right:340px;top:130px;width:120px;height:120px}.count-card{position:absolute;right:60px;bottom:42px;z-index:4;border-radius:28px;display:flex;align-items:center;gap:18px;padding:24px 32px;max-width:310px}.count-card span{font-size:44px}.count-card p{margin:0;font-size:18px;font-weight:700}.count-card a{display:block;margin-top:6px;color:#b47a16;font-weight:900}.sparkle{position:absolute;color:#fff2b8;text-shadow:0 0 20px #fff;animation:float 5s ease-in-out infinite;z-index:4}.s1{left:19%;top:18%;font-size:60px}.s2{left:62%;top:20%;font-size:42px;animation-delay:.6s}.s3{left:45%;top:9%;font-size:26px;animation-delay:1.4s}.balloon{position:fixed;border-radius:50% 50% 48% 52%;width:86px;height:105px;background:linear-gradient(135deg,rgba(255,255,255,.6),#8fb9df);opacity:.72;z-index:-1;animation:rise 13s ease-in-out infinite}.balloon:after{content:"";position:absolute;left:50%;top:100%;height:80px;border-left:2px solid rgba(158,117,44,.55)}.balloon-a{left:3%;bottom:6%;background:linear-gradient(135deg,#fff,#8fb9df)}.balloon-b{left:1%;bottom:20%;animation-delay:3s;background:linear-gradient(135deg,#fff,#d7a747)}.balloon-c{right:7%;bottom:2%;animation-delay:1.4s;background:linear-gradient(135deg,#fff,#f5e1ac)}
.modal-backdrop{position:fixed;inset:0;background:rgba(5,15,38,.42);backdrop-filter:blur(12px);display:none;align-items:center;justify-content:center;padding:20px;z-index:80}.modal-backdrop.open{display:flex}.memory-modal{width:550px;max-width:94vw;max-height:88vh;overflow:auto;border-radius:32px;padding:24px;position:relative}.modal-close{position:absolute;right:18px;top:14px;width:42px;height:42px;border:0;border-radius:50%;font-size:28px;background:rgba(255,255,255,.7);color:var(--navy)}.modal-language{text-align:right;margin-right:46px}.modal-progress span{font-weight:900;color:var(--navy)}.modal-progress b{display:block;margin-top:8px;height:10px;background:rgba(7,26,70,.12);border-radius:99px;overflow:hidden}.modal-progress i{display:block;height:100%;width:12.5%;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:99px;transition:.25s}.step-image{text-align:center;margin:18px 0}.step-image img{width:122px;height:122px;border-radius:50%;object-fit:cover;border:5px solid rgba(215,167,71,.7);box-shadow:0 12px 32px rgba(7,26,70,.18)}.form-step{display:none;animation:slideIn .25s ease}.form-step.active{display:block}.form-step h2{font-size:26px;line-height:1.25;margin:0 0 18px;color:var(--navy);text-align:center}.form-step input,.form-step textarea{width:100%;border:1px solid rgba(14,39,83,.12);border-radius:20px;padding:16px 18px;background:rgba(255,255,255,.78);outline:none;margin-bottom:12px;color:var(--navy)}.form-step input:focus,.form-step textarea:focus{box-shadow:0 0 0 4px rgba(215,167,71,.22);border-color:var(--gold)}.upload-box{display:flex;align-items:center;justify-content:center;border:2px dashed rgba(215,167,71,.65);border-radius:22px;padding:16px;background:rgba(255,249,226,.55);font-weight:900}.upload-box input{display:none}.upload-preview{width:100%;max-height:190px;object-fit:cover;border-radius:22px;margin-top:10px}.modal-actions{display:flex;gap:12px;justify-content:space-between;margin-top:14px}.royal-btn,.ghost-btn{border:0;border-radius:18px;padding:14px 22px;font-weight:900}.royal-btn{color:var(--navy);background:linear-gradient(135deg,#ffe7a0,#d49b32);box-shadow:0 12px 28px rgba(212,155,50,.28)}.ghost-btn{background:rgba(255,255,255,.64);color:var(--navy)}.submit-final{display:none}.form-message{font-weight:900;text-align:center}.section-wrap{width:min(1180px,calc(100% - 32px));margin:60px auto}.section-head{text-align:center;margin-bottom:24px}.section-head p{text-transform:uppercase;letter-spacing:4px;color:#b47a16;font-weight:900}.section-head h1,.section-head h2{font-size:clamp(32px,5vw,56px);color:var(--navy);margin:0}.top-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.top-card,.empty-card{border-radius:30px;padding:18px;text-align:center;position:relative}.top-card img{width:100%;height:260px;object-fit:cover;border-radius:24px}.badge{position:absolute;left:24px;top:24px;font-size:42px}.gallery-body,.countdown-body{background:linear-gradient(135deg,#ddecff,#fff8ec 52%,#8fb9df)}.page-header{width:min(1180px,calc(100% - 32px));margin:22px auto 0;border-radius:30px;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.page-header nav{display:flex;align-items:center;gap:18px;font-weight:900}.thank-banner{width:min(900px,calc(100% - 32px));margin:24px auto;padding:16px 22px;border-radius:22px;background:#fff4cb;color:var(--navy);font-weight:900;text-align:center}.gallery-slider{position:relative;border-radius:34px;min-height:520px;overflow:hidden}.gallery-slide{display:none;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;padding:26px}.gallery-slide.active{display:grid}.gallery-slide img{width:100%;height:460px;object-fit:cover;border-radius:30px}.gallery-slide h3{font-size:34px;margin:0}.gallery-slide p{font-size:19px;line-height:1.6}.like-btn{border:0;background:linear-gradient(135deg,#ffe7a0,#d49b32);border-radius:20px;padding:14px 24px;font-weight:900;color:var(--navy)}.slide-control{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.7);font-size:40px;color:var(--navy);display:grid;place-items:center}.slide-control.prev{left:16px}.slide-control.next{right:16px}.wish-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.wish-card{border-radius:24px;padding:22px;animation:fadeUp .5s ease both}.wish-card p{font-size:18px;line-height:1.55}.filter-row{text-align:center;margin-bottom:18px}.filter-row button{border:0;border-radius:18px;padding:12px 18px;background:rgba(255,255,255,.7);font-weight:900;color:var(--navy);margin:4px}.countdown-shell{width:min(1180px,calc(100% - 32px));min-height:100vh;margin:auto;display:grid;grid-template-columns:.95fr 1.05fr;gap:24px;align-items:center}.countdown-copy,.countdown-slider{border-radius:38px;padding:34px}.countdown-copy p{font-weight:900;color:#b47a16;letter-spacing:2px}.countdown-copy h1{font-size:clamp(42px,6vw,78px);line-height:.95;margin:10px 0 24px;color:var(--navy)}.timer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.timer-grid div{background:rgba(255,255,255,.65);border-radius:28px;padding:26px;text-align:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.timer-grid strong{font-size:60px;display:block;color:var(--navy)}.timer-grid span{font-weight:900;color:#b47a16}.countdown-note{margin-top:20px}.countdown-slider{position:relative;min-height:560px;overflow:hidden}.count-slide{display:none;position:absolute;inset:26px;margin:0}.count-slide.active{display:block;animation:fade .45s ease}.count-slide img{width:100%;height:100%;object-fit:cover;border-radius:30px}.count-slide figcaption{position:absolute;left:24px;bottom:24px;background:rgba(255,255,255,.75);border-radius:18px;padding:12px 16px;font-weight:900;color:var(--navy)}.dots{position:absolute;left:0;right:0;bottom:18px;text-align:center}.dots button{width:12px;height:12px;border-radius:50%;border:0;margin:4px;background:rgba(255,255,255,.8)}.dots button.active{background:var(--gold)}.celebration-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;flex-direction:column;background:rgba(7,26,70,.82);z-index:99;color:#fff;text-align:center}.celebration-overlay.show{display:flex}.celebration-overlay h2{font-size:clamp(46px,8vw,118px);color:var(--gold2);text-shadow:0 8px 30px rgba(0,0,0,.3)}.celebration-overlay a{background:var(--gold2);color:var(--navy);border-radius:20px;padding:16px 28px;font-weight:1000}.confetti{position:fixed;width:9px;height:14px;top:-20px;z-index:120;animation:fall 2.8s linear forwards}.firework{position:fixed;width:6px;height:6px;border-radius:50%;background:#ffe39a;z-index:90;box-shadow:0 0 30px 8px #ffe39a;animation:burst .8s ease-out forwards}.spark-cursor{position:fixed;pointer-events:none;width:7px;height:7px;border-radius:50%;background:#ffe39a;box-shadow:0 0 15px #fff;z-index:70;animation:sparkFade .8s ease forwards}
@keyframes shine{to{transform:translateX(140%)}}@keyframes twinkle{50%{opacity:.62}}@keyframes float{50%{transform:translateY(-18px) rotate(8deg)}}@keyframes rise{50%{transform:translateY(-42px) translateX(16px)}}@keyframes flicker{50%{transform:scaleY(1.1) rotate(3deg)}}@keyframes slideIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes fall{to{transform:translateY(105vh) rotate(540deg);opacity:.1}}@keyframes burst{to{transform:scale(18);opacity:0}}@keyframes sparkFade{to{transform:translateY(-18px) scale(.2);opacity:0}}
@media (max-width:1100px){.hero-shell{width:calc(100% - 20px);margin:10px auto;padding:16px;border-radius:30px}.royal-nav{height:auto;min-height:86px;padding:14px 18px}.nav-toggle{display:block}.nav-links{display:none;position:absolute;left:16px;right:16px;top:92px;padding:16px;background:rgba(255,255,255,.88);border-radius:24px;flex-direction:column;gap:10px}.nav-links.open{display:flex}.nav-medal{display:none}.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:56px 14px 0;text-align:center}.mini-crown,.gold-line{margin-left:auto;margin-right:auto}.event-date{margin-left:auto;margin-right:auto}.event-info{margin:28px auto;grid-template-columns:1fr}.event-info div{border-right:0;border-bottom:1px solid rgba(215,167,71,.4);padding:12px}.event-info div:last-child{border-bottom:0}.hero-art{min-height:680px;transform:scale(.92);transform-origin:top center}.photo-main{right:40px;width:220px;height:220px}.photo-small-a{right:80px;top:330px}.photo-small-b{display:none}.count-card{position:relative;right:auto;bottom:auto;margin:10px auto 0}.countdown-shell{grid-template-columns:1fr;padding:30px 0}.top-grid{grid-template-columns:1fr}.gallery-slide.active{display:block}.gallery-slide img{height:330px}.page-header{display:block;text-align:center}.page-header nav{justify-content:center;flex-wrap:wrap;margin-top:12px}}
@media (max-width:640px){.brand strong{font-size:20px}.brand small{font-size:14px}.brand-crown{width:54px;height:54px;font-size:34px}.hero-copy h1{font-size:44px;letter-spacing:-1px}.event-date{font-size:18px;letter-spacing:7px}.memory-btn{width:100%;padding:18px 18px;font-size:18px}.hero-art{min-height:520px;transform:scale(.72);margin-left:-72px;width:720px}.castle-window{left:8%;width:360px;height:500px}.count-card{max-width:100%}.modal-actions{display:grid;grid-template-columns:1fr 1fr}.submit-final{grid-column:1/-1}.timer-grid strong{font-size:42px}.countdown-copy,.countdown-slider{padding:22px;border-radius:28px}.countdown-slider{min-height:430px}.section-wrap{margin:36px auto}.top-card img{height:210px}}

/* === Noah v2 requested enhancements === */
.royal-body{background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.92) 0 4%,transparent 18%),radial-gradient(circle at 86% 8%,rgba(115,190,255,.35),transparent 24%),radial-gradient(circle at 74% 78%,rgba(255,225,149,.55),transparent 26%),linear-gradient(135deg,#dff1ff 0%,#fff8e9 52%,#b9d9f3 100%)}
.hero-shell{width:min(1800px,100%);min-height:100vh;margin:0 auto;border:0;border-radius:0;box-shadow:none;padding:24px clamp(16px,3vw,58px) 34px;background:transparent;overflow:hidden}.hero-shell:before{background:radial-gradient(circle at 68% 60%,rgba(255,255,255,.48) 0 12%,transparent 34%),radial-gradient(circle at 0 96%,rgba(255,255,255,.82) 0 9%,transparent 25%),radial-gradient(circle at 100% 92%,rgba(255,255,255,.86) 0 8%,transparent 25%)}.hero-shell:after{opacity:.72}.royal-nav{box-shadow:0 18px 64px rgba(7,26,70,.12)}
.hero-copy{padding-top:112px}.event-info{margin-top:54px;background:linear-gradient(135deg,rgba(255,255,255,.64),rgba(230,245,255,.40));box-shadow:0 18px 60px rgba(7,26,70,.11)}
.cupcake-stage{filter:drop-shadow(0 38px 42px rgba(7,26,70,.25))}.gold-one{font-size:282px;color:#f2bf52;background:linear-gradient(120deg,#9d6816 0,#fff0b8 24%,#d99b2f 48%,#fff9ce 64%,#b77919 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 3px 0 rgba(255,248,210,.65),0 22px 28px rgba(103,66,16,.28)}.gold-one:after{content:"";position:absolute;left:24px;top:28px;width:92px;height:210px;border-radius:48px;background:linear-gradient(90deg,rgba(255,255,255,.45),transparent);transform:rotate(9deg);pointer-events:none}.flame{filter:drop-shadow(0 0 20px #6bc8ff)}.frosting span{background:radial-gradient(circle at 38% 22%,#fff,#fff7ea 50%,#e9c188 100%)}.frosting:after{content:"★  ✦  ★  ✦";left:112px;color:#e0aa43;text-shadow:0 0 12px rgba(255,235,166,.9)}.cake{height:106px;background:linear-gradient(180deg,#d39345,#8c4d22);box-shadow:inset 0 18px 24px rgba(255,255,255,.18),0 14px 18px rgba(72,39,11,.16)}.cup{background:linear-gradient(100deg,#061b48,#1d4b90 42%,#082454 100%)}
.photo-orbit{border-width:10px;box-shadow:0 24px 54px rgba(7,26,70,.28),inset 0 0 0 8px rgba(255,255,255,.36);transition:transform .3s ease}.photo-orbit:hover{transform:translateY(-8px) rotate(-2deg) scale(1.025)}.photo-main{width:390px;height:390px;right:8px;top:70px;z-index:8}.photo-small-a{width:280px;height:280px;right:300px;top:300px;z-index:9}.photo-small-b{width:305px;height:305px;right:44px;top:425px;z-index:7}.photo-main:before,.photo-small-a:before,.photo-small-b:before{content:"";position:absolute;inset:-18px;border-radius:50%;background:radial-gradient(circle,rgba(90,180,255,.28),transparent 64%);z-index:-1}.tilted-crown{filter:drop-shadow(0 14px 20px rgba(92,61,13,.22))}
.blue-firework-layer{position:fixed;inset:0;z-index:4;pointer-events:none;overflow:hidden}.blue-firework{position:fixed;width:7px;height:7px;border-radius:999px;background:#56b9ff;box-shadow:0 0 14px 4px #70c7ff,0 0 28px 8px rgba(0,91,255,.45);animation:blueBurst 1s ease-out forwards}.blue-firework:after{content:"";position:absolute;inset:-2px;border-radius:inherit;background:#eaf8ff;opacity:.75}.music-toggle{position:fixed;right:22px;bottom:22px;z-index:75;border:1px solid rgba(255,255,255,.82);border-radius:999px;padding:12px 18px;display:flex;align-items:center;gap:9px;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(212,236,255,.58));backdrop-filter:blur(18px);color:#071a46;font-weight:1000;box-shadow:0 16px 48px rgba(7,26,70,.18)}.music-toggle span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#74c7ff,#0f64d8);color:#fff;box-shadow:0 0 22px rgba(73,177,255,.7)}.music-toggle.muted span{background:linear-gradient(135deg,#d9e2ef,#8192aa)}.music-toggle.muted{opacity:.82}.site-footer{width:min(1180px,calc(100% - 32px));margin:34px auto 28px;border-radius:28px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#071a46}.site-footer strong{letter-spacing:.12em}.site-footer span{font-weight:800;color:#102b61}.site-footer em{font-style:normal;color:#a66d11;font-weight:1000}.countdown-footer{margin-top:-90px;position:relative;z-index:3}.gallery-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:24px}.gallery-card{border-radius:28px;overflow:hidden;padding:0}.gallery-card img{width:100%;height:260px;object-fit:cover;display:block}.gallery-card-body{padding:18px}.gallery-card-body h3{margin:0 0 6px;font-size:22px}.gallery-card-body p{min-height:48px;color:#243b66;line-height:1.45}.like-btn{box-shadow:0 12px 26px rgba(215,167,71,.25);transition:.2s transform,.2s filter}.like-btn:hover{transform:translateY(-2px)}.like-btn.liked,.like-btn:disabled.liked{background:linear-gradient(135deg,#cfeaff,#76beff);color:#06224f;filter:saturate(.95);cursor:not-allowed}.gallery-slide .like-btn{background:linear-gradient(135deg,#cfeaff,#65bbff)}
@keyframes blueBurst{0%{opacity:1;transform:rotate(var(--angle)) translateX(0) scale(1)}70%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(var(--distance)) scale(.08)}}
@media(max-width:1100px){.hero-shell{width:100%;margin:0;padding:14px}.hero-art{overflow:visible}.photo-main{width:270px;height:270px;right:88px;top:60px}.photo-small-a{width:205px;height:205px;right:245px;top:270px}.photo-small-b{display:block;width:220px;height:220px;right:92px;top:370px}.music-toggle{right:14px;bottom:14px}.site-footer{display:grid;text-align:center}.countdown-footer{margin-top:18px}}
@media(max-width:640px){.hero-art{min-height:560px;transform:scale(.70);margin-left:-96px;width:760px}.photo-main{width:290px;height:290px;right:88px;top:35px}.photo-small-a{width:215px;height:215px;right:275px;top:260px}.photo-small-b{width:235px;height:235px;right:82px;top:365px}.gold-one{font-size:260px}.gallery-card img{height:220px}.site-footer{margin-bottom:86px}.music-toggle b{display:none}.music-toggle{padding:10px}}

/* === Noah v3 enhancements: shared page menu, fancy hero font, mini countdown, saved-memory flow === */
.public-nav{width:min(1180px,calc(100% - 32px));margin:18px auto 0;position:relative;z-index:50}.countdown-nav{margin-top:18px}.public-menu a,.public-menu button{position:relative}.public-menu a.active:after,.public-menu button.active:after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:3px;border-radius:999px;background:linear-gradient(90deg,#56b9ff,#d7a747);box-shadow:0 0 14px rgba(86,185,255,.85)}.public-menu a.active,.public-menu button.active{color:#071a46;background:rgba(255,255,255,.55)}
.fancy-prince-title{font-family:"Great Vibes","Brush Script MT",cursive!important;font-weight:400!important;letter-spacing:.01em!important;line-height:.95!important;text-shadow:0 5px 0 rgba(255,255,255,.9),0 16px 38px rgba(7,26,70,.15)}.fancy-prince-title span{background:linear-gradient(120deg,#071a46 0%,#123d85 38%,#d7a747 68%,#8a5d13 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.mini-hero-countdown{width:min(460px,100%);display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0 22px;padding:10px;border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(217,240,255,.58));box-shadow:0 18px 42px rgba(7,26,70,.10)}.mini-hero-countdown span{display:grid;place-items:center;border-right:1px solid rgba(215,167,71,.38);min-height:58px}.mini-hero-countdown span:last-child{border-right:0}.mini-hero-countdown b{font-size:24px;line-height:1;color:#071a46}.mini-hero-countdown small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#936512;font-weight:900}.step-note{margin:-4px 0 12px;color:#395077;font-weight:800;line-height:1.5}.existing-result{text-align:center;animation:fadeUp .35s ease both}.result-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:4px auto 10px;background:linear-gradient(135deg,#dff8eb,#75d8a6);color:#075b35;font-weight:1000;font-size:34px;box-shadow:0 14px 38px rgba(19,141,80,.22)}.result-summary{background:rgba(255,255,255,.70);border:1px solid rgba(255,255,255,.9);border-radius:22px;padding:14px 16px;text-align:left;margin:14px 0}.result-summary p{margin:8px 0;line-height:1.45}.existing-photo-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:10px;margin:14px 0}.existing-photo-strip figure{margin:0;background:rgba(255,255,255,.72);border-radius:18px;overflow:hidden;box-shadow:0 10px 24px rgba(7,26,70,.08)}.existing-photo-strip img{width:100%;height:86px;object-fit:cover;display:block}.existing-photo-strip figcaption{font-size:11px;font-weight:900;padding:5px;color:#445777}.upload-existing-card{margin-top:16px;padding:16px;border-radius:24px;background:linear-gradient(135deg,rgba(216,238,255,.68),rgba(255,245,218,.78));border:1px solid rgba(255,255,255,.9)}.upload-existing-card h3{margin:0 0 10px}.upload-existing-card input[type=text]{width:100%;border:1px solid rgba(7,26,70,.12);border-radius:16px;padding:13px 14px;margin-bottom:10px}.muted-text{color:#64748b;font-weight:800}.form-message.ok{color:#0a7a3d}.form-message.error{color:#b42318}.memory-modal{max-height:86vh;overflow:auto}.memory-modal input,.memory-modal textarea{font-size:16px}.upload-box input[capture]{cursor:pointer}.page-header{display:none}.gallery-body .public-nav{margin-bottom:20px}.countdown-body{padding-top:0}.countdown-shell{padding-top:34px}.hero-shell .public-nav{width:100%;margin:0}.hero-copy .memory-btn{margin-top:0}
@media(max-width:1100px){.public-nav{width:calc(100% - 24px)}.public-menu a.active:after,.public-menu button.active:after{left:12px;right:auto;width:52px;bottom:3px}.mini-hero-countdown{margin-left:auto;margin-right:auto}.fancy-prince-title{font-size:72px!important}.gallery-body .public-nav,.countdown-nav{margin-top:12px}.countdown-shell{padding-top:24px}}
@media(max-width:640px){.fancy-prince-title{font-size:54px!important}.mini-hero-countdown{grid-template-columns:repeat(4,1fr);gap:4px;padding:8px}.mini-hero-countdown b{font-size:19px}.mini-hero-countdown small{font-size:8px;letter-spacing:.08em}.modal-progress{position:sticky;top:0;z-index:2;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);padding-top:6px}.memory-modal{width:94%;max-height:88vh;border-radius:26px;padding:18px}.existing-photo-strip{grid-template-columns:repeat(2,1fr)}.public-nav{border-radius:24px}.nav-links.open{top:78px}.gallery-photo-grid{grid-template-columns:1fr}.countdown-shell{width:calc(100% - 22px)}}


/* === Noah v4 responsive polish: consistent menu, simple prince title, visible big candle === */
:root{
  --page-max:1180px;
  --nav-height:86px;
  --soft-blue:#eaf6ff;
  --royal-blue:#0b2c6b;
  --line-blue:#5bbcff;
}
html,body{max-width:100%;overflow-x:hidden}
body{background-attachment:fixed}.royal-body,.gallery-body,.countdown-body{background:radial-gradient(circle at 12% 12%,rgba(255,255,255,.92),transparent 24%),radial-gradient(circle at 86% 18%,rgba(126,197,255,.24),transparent 26%),linear-gradient(135deg,#eaf7ff 0%,#fff7e8 56%,#cbe7ff 100%)}
.royal-nav.public-nav,.hero-shell .royal-nav.public-nav{width:min(var(--page-max),calc(100% - 32px));height:var(--nav-height);min-height:var(--nav-height);margin:18px auto 0;border-radius:32px;padding:0 18px 0 22px;display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(227,245,255,.58));box-shadow:0 18px 56px rgba(7,26,70,.12);position:relative;z-index:60}
.hero-shell .royal-nav.public-nav{width:100%;margin:0}.countdown-nav,.gallery-body .public-nav{margin-top:18px!important;margin-bottom:20px}.brand{min-width:0;gap:12px}.brand-crown{width:54px;height:54px;border-radius:18px;font-size:34px;flex:0 0 54px;background:rgba(255,255,255,.42)}.brand strong{font-size:21px;letter-spacing:-.01em}.brand small{font-size:13px;margin-top:4px;line-height:1.1}.nav-links{margin-left:auto;gap:clamp(12px,2.2vw,28px);font-size:15px;font-weight:900;white-space:nowrap}.nav-links a,.linklike{padding:10px 0}.public-menu a.active:after,.public-menu button.active:after,.nav-links a.active:after{left:0;right:0;bottom:-4px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--line-blue),var(--gold));box-shadow:0 0 16px rgba(91,188,255,.72)}.lang-toggle,.modal-language button,.page-header nav button{font-size:14px;padding:8px 11px;border-radius:14px}.nav-medal{width:54px;height:54px;font-size:25px;flex:0 0 54px}
.hero-shell{width:min(1420px,calc(100% - 32px));min-height:auto;margin:18px auto 24px;border-radius:34px;padding:18px 22px 28px;border:1px solid rgba(255,255,255,.72);box-shadow:0 30px 88px rgba(5,24,63,.17);overflow:hidden}.hero-grid{grid-template-columns:minmax(390px,43%) 1fr;gap:12px;min-height:650px;align-items:center}.hero-copy{padding:70px 0 0 54px}.mini-crown{font-size:48px;width:min(280px,100%);margin-bottom:8px}.gold-line{width:min(280px,100%);letter-spacing:7px}.gold-line:before,.gold-line:after{width:44px;margin:0 10px}.fancy-prince-title,.hero-copy h1.fancy-prince-title{font-family:"Baloo 2","Poppins","Trebuchet MS",system-ui,sans-serif!important;font-weight:800!important;letter-spacing:-.045em!important;line-height:.9!important;text-transform:uppercase;text-shadow:0 6px 0 rgba(255,255,255,.75),0 18px 36px rgba(7,26,70,.14)}.fancy-prince-title span{background:linear-gradient(115deg,#071a46 0%,#114080 48%,#d7a747 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-copy h1{font-size:clamp(46px,5.1vw,78px);max-width:680px}.event-date{font-size:clamp(18px,2.2vw,27px);letter-spacing:clamp(6px,1.2vw,14px);margin:22px 0}.mini-hero-countdown{width:min(420px,100%);margin:12px 0 18px;border-radius:18px;padding:8px}.mini-hero-countdown span{min-height:52px}.mini-hero-countdown b{font-size:22px}.memory-btn{padding:18px 40px;font-size:19px;border-radius:32px}.event-info{margin-top:36px;width:min(610px,100%);padding:14px 18px;min-height:98px}.event-info strong{font-size:15px}.event-info small{font-size:14px}.hero-art{min-height:650px;overflow:visible}.castle-window{left:13%;top:5%;width:360px;height:540px;opacity:.72}.cupcake-stage{z-index:14;left:0;bottom:2px;width:610px;height:650px;filter:drop-shadow(0 36px 42px rgba(7,26,70,.24))}.gold-one{z-index:32!important;font-size:330px!important;left:200px!important;bottom:455px!important;line-height:.82}.flame{left:103px!important;top:-62px!important;width:32px!important;height:82px!important;z-index:33}.tilted-crown{z-index:18}.photo-orbit{z-index:6;border-width:8px}.photo-main{width:330px;height:330px;right:4px;top:70px}.photo-small-a{width:235px;height:235px;right:260px;top:310px}.photo-small-b{width:250px;height:250px;right:36px;top:408px}.count-card{right:28px;bottom:28px;max-width:280px;padding:18px 22px;border-radius:22px}.section-wrap{width:min(var(--page-max),calc(100% - 32px));margin:46px auto}.section-head h1,.section-head h2{font-size:clamp(32px,5vw,56px);line-height:1.02}.gallery-slider{border-radius:30px;padding:18px}.gallery-slide.active{align-items:center;gap:24px}.gallery-slide img{max-height:520px}.gallery-card,.top-card,.wish-card,.countdown-copy,.countdown-slider{background:linear-gradient(135deg,rgba(255,255,255,.83),rgba(229,245,255,.55));box-shadow:0 20px 60px rgba(7,26,70,.11)}.countdown-shell{width:min(var(--page-max),calc(100% - 32px));min-height:calc(100vh - 128px);padding:18px 0 24px}.countdown-copy h1{font-family:"Baloo 2","Trebuchet MS",system-ui,sans-serif;font-weight:800;letter-spacing:-.04em}.site-footer{width:min(var(--page-max),calc(100% - 32px));border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.84),rgba(227,245,255,.62));box-shadow:0 18px 54px rgba(7,26,70,.10)}
@media(max-width:1180px){.royal-nav.public-nav,.hero-shell .royal-nav.public-nav{height:auto;min-height:78px;padding:12px 14px}.nav-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 10px);padding:14px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.92);border-radius:22px;box-shadow:0 18px 56px rgba(7,26,70,.16);flex-direction:column;align-items:stretch;gap:2px;white-space:normal;z-index:90}.nav-links.open{display:flex}.nav-links a,.nav-links button{width:100%;text-align:left;padding:12px 14px!important;border-radius:14px}.public-menu a.active:after,.public-menu button.active:after,.nav-links a.active:after{left:14px;right:auto;width:52px;bottom:5px}.nav-medal{display:none}.hero-shell{width:calc(100% - 20px);padding:12px;border-radius:26px}.hero-grid{grid-template-columns:1fr;gap:0;min-height:auto}.hero-copy{padding:44px 12px 0;text-align:center}.hero-copy h1{margin-left:auto;margin-right:auto}.mini-crown,.gold-line,.event-date,.mini-hero-countdown{margin-left:auto;margin-right:auto}.event-info{margin:24px auto 10px}.hero-art{min-height:590px;width:100%;margin:0 auto;overflow:visible}.castle-window{left:50%;top:18px;transform:translateX(-50%);width:350px;height:500px}.cupcake-stage{left:50%;bottom:-46px;transform:translateX(-50%) scale(.78);transform-origin:bottom center}.photo-main{width:248px;height:248px;right:auto;left:50%;top:40px;transform:translateX(34%)}.photo-small-a{width:190px;height:190px;right:auto;left:50%;top:280px;transform:translateX(-116%)}.photo-small-b{width:200px;height:200px;right:auto;left:50%;top:352px;transform:translateX(18%)}.count-card{position:relative;right:auto;bottom:auto;margin:8px auto 0}.gallery-slide.active{display:block;text-align:center}.gallery-slide img{width:100%;height:360px;max-height:none}.countdown-shell{grid-template-columns:1fr;min-height:auto}.countdown-slider{min-height:460px}.site-footer{display:grid;text-align:center}}
@media(max-width:760px){:root{--nav-height:74px}.royal-nav.public-nav,.hero-shell .royal-nav.public-nav{width:calc(100% - 18px);min-height:74px;margin-top:10px;border-radius:22px}.hero-shell .royal-nav.public-nav{width:100%;margin-top:0}.brand-crown{width:46px;height:46px;font-size:29px;flex-basis:46px}.brand strong{font-size:18px}.brand small{font-size:12px}.nav-toggle{font-size:21px;padding:8px 11px;border-radius:14px}.hero-shell{width:100%;margin:0;border-radius:0;padding:10px 10px 22px}.hero-copy{padding-top:34px}.hero-copy h1{font-size:clamp(42px,12vw,64px)!important;letter-spacing:-.055em!important}.event-date{font-size:17px;letter-spacing:5px;gap:10px}.event-date:before,.event-date:after{font-size:22px}.mini-hero-countdown{grid-template-columns:repeat(4,1fr);gap:4px;padding:7px}.mini-hero-countdown span{min-height:46px}.mini-hero-countdown b{font-size:18px}.mini-hero-countdown small{font-size:8px}.memory-btn{width:100%;padding:16px 14px;font-size:16px}.event-info{grid-template-columns:1fr;gap:0;padding:10px}.event-info div{border-right:0;border-bottom:1px solid rgba(215,167,71,.35);padding:10px}.event-info div:last-child{border-bottom:0}.hero-art{min-height:465px;overflow:hidden}.castle-window{width:278px;height:392px;top:16px;border-width:6px}.cupcake-stage{bottom:-124px;transform:translateX(-50%) scale(.58)}.gold-one{font-size:340px!important;left:198px!important;bottom:458px!important}.photo-main{width:158px;height:158px;left:56%;top:34px;transform:translateX(0);border-width:6px}.photo-small-a{width:128px;height:128px;left:12%;top:238px;transform:none;border-width:6px}.photo-small-b{display:block;width:136px;height:136px;left:62%;top:280px;transform:none;border-width:6px}.count-card{display:none}.section-wrap{width:calc(100% - 22px);margin:34px auto}.top-grid,.gallery-photo-grid,.wish-grid{grid-template-columns:1fr!important}.top-card img,.gallery-card img{height:230px}.gallery-slider{padding:12px;border-radius:22px}.gallery-slide img{height:280px;border-radius:22px}.gallery-slide div{padding:14px}.slide-control{width:40px;height:40px;font-size:30px}.slide-control.prev{left:8px}.slide-control.next{right:8px}.countdown-copy,.countdown-slider{padding:18px;border-radius:24px}.timer-grid{grid-template-columns:repeat(2,1fr);gap:10px}.timer-grid div{padding:16px;border-radius:20px}.timer-grid strong{font-size:38px}.countdown-slider{min-height:380px}.count-slide{inset:14px}.count-slide img{border-radius:22px}.site-footer{width:calc(100% - 22px);margin:26px auto 70px;padding:16px;font-size:13px}.music-toggle{bottom:12px;right:12px}.memory-modal{width:94%;max-height:88vh}.modal-actions{grid-template-columns:1fr!important}.modal-actions button{width:100%;justify-content:center}.upload-box{min-height:88px}}
@media(max-width:390px){.brand small{display:none}.brand strong{font-size:16px}.hero-copy h1{font-size:40px!important}.hero-art{min-height:430px}.cupcake-stage{transform:translateX(-50%) scale(.52);bottom:-138px}.photo-main{width:138px;height:138px;top:38px}.photo-small-a{width:112px;height:112px;top:226px}.photo-small-b{width:120px;height:120px;top:262px}.timer-grid strong{font-size:32px}.countdown-slider{min-height:330px}}


/* v5 home hero fixes: solid blue title, clearer photo/cake layering, removed countdown card */
.hero-copy h1.fancy-prince-title,
.fancy-prince-title,
.fancy-prince-title span{
  font-family:"Poppins","Nunito","Baloo 2",system-ui,-apple-system,Segoe UI,sans-serif!important;
  color:#0b63ce!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  -webkit-text-fill-color:#0b63ce!important;
  text-shadow:0 5px 0 rgba(255,255,255,.72),0 16px 30px rgba(11,99,206,.20)!important;
  letter-spacing:-.035em!important;
}
.count-card{display:none!important}
.hero-art{isolation:isolate; overflow:visible!important; padding-top:18px}
.cupcake-stage{z-index:auto!important; filter:none!important; pointer-events:none}
.cake,.cup,.plate,.frosting,.tilted-crown{z-index:18; position:absolute}
.photo-orbit{z-index:42!important}
.gold-one{z-index:75!important}
.flame{z-index:76!important}
.photo-main{right:0!important; top:108px!important; width:318px!important; height:318px!important}
.photo-small-a{right:300px!important; top:340px!important; width:226px!important; height:226px!important}
.photo-small-b{right:38px!important; top:424px!important; width:236px!important; height:236px!important}
@media(max-width:1180px){
  .hero-art{padding-top:12px; min-height:610px!important; overflow:visible!important}
  .cupcake-stage{bottom:-72px!important; transform:translateX(-50%) scale(.72)!important}
  .photo-main{left:50%!important; right:auto!important; top:72px!important; width:230px!important; height:230px!important; transform:translateX(30%)!important}
  .photo-small-a{left:50%!important; right:auto!important; top:318px!important; width:176px!important; height:176px!important; transform:translateX(-118%)!important}
  .photo-small-b{left:50%!important; right:auto!important; top:400px!important; width:184px!important; height:184px!important; transform:translateX(28%)!important}
}
@media(max-width:760px){
  .hero-copy h1.fancy-prince-title,
  .fancy-prince-title{font-size:clamp(39px,10.8vw,58px)!important; line-height:.96!important; letter-spacing:-.04em!important}
  .hero-art{min-height:500px!important; overflow:visible!important; padding-top:22px!important}
  .cupcake-stage{bottom:-116px!important; transform:translateX(-50%) scale(.54)!important}
  .gold-one{font-size:315px!important; left:204px!important; bottom:468px!important}
  .flame{left:98px!important; top:-62px!important}
  .photo-main{left:55%!important; top:90px!important; width:150px!important; height:150px!important; transform:none!important; border-width:6px!important}
  .photo-small-a{left:6%!important; top:270px!important; width:124px!important; height:124px!important; transform:none!important; border-width:6px!important}
  .photo-small-b{left:64%!important; top:334px!important; width:126px!important; height:126px!important; transform:none!important; border-width:6px!important}
}
@media(max-width:390px){
  .hero-copy h1.fancy-prince-title,
  .fancy-prince-title{font-size:38px!important}
  .hero-art{min-height:470px!important}
  .cupcake-stage{bottom:-132px!important; transform:translateX(-50%) scale(.49)!important}
  .photo-main{width:132px!important;height:132px!important;top:88px!important}
  .photo-small-a{width:108px!important;height:108px!important;top:260px!important}
  .photo-small-b{width:112px!important;height:112px!important;top:314px!important}
}

/* v6 home art update: public admin button removed, cupcake removed, larger overlapping photos */
.hero-art[aria-label]{
  min-height:800px;
  isolation:isolate;
}
.hero-art .castle-window{
  opacity:.38;
  transform:translateX(-2%) scale(.94);
}
.number-one-hero{
  position:absolute;
  left:46%;
  top:24px;
  width:330px;
  height:390px;
  transform:translateX(-50%) rotate(-2deg);
  z-index:68;
  pointer-events:none;
  display:grid;
  place-items:center;
}
.royal-one{
  position:relative;
  display:inline-block;
  font-family:"Poppins","Nunito",system-ui,sans-serif;
  font-size:360px;
  font-weight:1000;
  line-height:.78;
  color:#e0a742;
  background:linear-gradient(135deg,#fff4c9 0%,#e4ad43 34%,#b87219 56%,#ffe8a4 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 5px 0 rgba(255,248,217,.85),0 20px 36px rgba(74,43,6,.26);
  filter:drop-shadow(0 22px 34px rgba(7,26,70,.17));
}
.royal-one::before{
  content:"";
  position:absolute;
  left:20%;
  right:16%;
  top:14%;
  bottom:8%;
  border-radius:34px;
  background:linear-gradient(140deg,rgba(255,255,255,.34),rgba(255,255,255,0) 55%);
  -webkit-text-fill-color:initial;
  z-index:-1;
}
.one-flame{
  position:absolute;
  left:50%;
  top:-64px;
  width:34px;
  height:86px;
  transform:translateX(-50%);
  border-radius:70% 70% 50% 50%;
  background:radial-gradient(circle at 50% 66%,#08235c 0 8px,transparent 9px),radial-gradient(ellipse at center,#fff 0 20%,#ffd477 40%,#ff8a25 68%,transparent 72%);
  filter:drop-shadow(0 0 12px rgba(255,179,60,.65));
  animation:flicker .8s ease-in-out infinite;
}
.photo-orbit{
  border-width:10px!important;
  box-shadow:0 26px 64px rgba(7,26,70,.22),inset 0 0 0 8px rgba(255,255,255,.34)!important;
}
.photo-main{
  width:410px!important;
  height:410px!important;
  right:28px!important;
  top:246px!important;
  z-index:54!important;
}
.photo-small-a{
  width:315px!important;
  height:315px!important;
  right:355px!important;
  top:330px!important;
  z-index:58!important;
}
.photo-small-b{
  width:335px!important;
  height:335px!important;
  right:96px!important;
  top:504px!important;
  z-index:62!important;
}
.photo-orbit:hover{
  transform:translateY(-8px) scale(1.02);
}
.photo-small-a:hover{transform:rotate(-5deg) translateY(-8px) scale(1.02)}
.photo-small-b:hover{transform:rotate(4deg) translateY(-8px) scale(1.02)}

@media(max-width:1180px){
  .hero-art[aria-label]{min-height:680px!important; overflow:visible!important; padding-top:0!important}
  .number-one-hero{left:50%; top:4px; width:300px; height:340px; transform:translateX(-50%) rotate(-2deg);}
  .royal-one{font-size:315px;}
  .one-flame{top:-58px; width:30px; height:78px;}
  .photo-main{left:50%!important; right:auto!important; top:255px!important; width:315px!important; height:315px!important; transform:translateX(-4%)!important;}
  .photo-small-a{left:50%!important; right:auto!important; top:320px!important; width:250px!important; height:250px!important; transform:translateX(-98%) rotate(-5deg)!important;}
  .photo-small-b{left:50%!important; right:auto!important; top:440px!important; width:260px!important; height:260px!important; transform:translateX(20%) rotate(4deg)!important;}
}
@media(max-width:760px){
  .hero-art[aria-label]{min-height:565px!important; overflow:visible!important; padding-top:0!important;}
  .number-one-hero{left:50%; top:0; width:230px; height:255px; transform:translateX(-50%) rotate(-2deg);}
  .royal-one{font-size:235px; line-height:.8;}
  .one-flame{top:-48px; width:24px; height:64px;}
  .photo-orbit{border-width:7px!important;}
  .photo-main{left:50%!important; right:auto!important; top:205px!important; width:205px!important; height:205px!important; transform:translateX(-2%)!important;}
  .photo-small-a{left:50%!important; right:auto!important; top:265px!important; width:160px!important; height:160px!important; transform:translateX(-102%) rotate(-5deg)!important;}
  .photo-small-b{left:50%!important; right:auto!important; top:355px!important; width:168px!important; height:168px!important; transform:translateX(20%) rotate(4deg)!important;}
}
@media(max-width:390px){
  .hero-art[aria-label]{min-height:535px!important;}
  .number-one-hero{top:0; width:210px; height:240px;}
  .royal-one{font-size:215px;}
  .one-flame{top:-44px; width:22px; height:60px;}
  .photo-main{top:198px!important; width:184px!important; height:184px!important; transform:translateX(-2%)!important;}
  .photo-small-a{top:260px!important; width:145px!important; height:145px!important; transform:translateX(-103%) rotate(-5deg)!important;}
  .photo-small-b{top:338px!important; width:150px!important; height:150px!important; transform:translateX(18%) rotate(4deg)!important;}
}

/* v7 home-only art update: amazing golden number 1 behind the photos but still visible */
body.royal-body .hero-art[aria-label]{
  min-height:820px!important;
  overflow:visible!important;
  isolation:isolate!important;
}
body.royal-body .hero-art .castle-window{
  opacity:.26!important;
  filter:blur(.2px)!important;
}
body.royal-body .number-one-hero{
  left:50%!important;
  top:8px!important;
  width:560px!important;
  height:640px!important;
  transform:translateX(-50%) rotate(-3deg)!important;
  z-index:28!important;
  display:grid!important;
  place-items:center!important;
  pointer-events:none!important;
}
body.royal-body .number-one-hero::before{
  content:"";
  position:absolute;
  inset:28px 10px 18px;
  border-radius:46% 54% 48% 52%;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.88),rgba(255,242,184,.52) 12%,transparent 24%),
    radial-gradient(circle at 48% 48%,rgba(255,218,110,.55),transparent 43%),
    conic-gradient(from 0deg,transparent 0 8%,rgba(255,230,139,.52) 9% 10%,transparent 11% 18%,rgba(95,174,255,.24) 19% 20%,transparent 21% 100%);
  filter:blur(1px) drop-shadow(0 0 38px rgba(255,214,100,.44));
  animation:royalAuraPulse 3.6s ease-in-out infinite;
  z-index:-2;
}
body.royal-body .number-one-hero::after{
  content:"✦  ✧  ✦";
  position:absolute;
  left:50%;
  top:52px;
  transform:translateX(-50%);
  width:100%;
  text-align:center;
  color:#fff2b5;
  font-size:42px;
  letter-spacing:44px;
  text-shadow:0 0 18px #fff,0 0 34px rgba(255,214,91,.85),0 0 48px rgba(21,107,214,.35);
  animation:royalSparkleDrift 4.2s ease-in-out infinite;
  z-index:1;
}
body.royal-body .royal-one{
  font-size:560px!important;
  line-height:.76!important;
  font-weight:1000!important;
  letter-spacing:-.09em!important;
  background:linear-gradient(128deg,#fff8d6 0%,#ffd86e 18%,#d99623 39%,#9f5e0f 55%,#ffe9a7 78%,#fff6cf 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  opacity:.95!important;
  text-shadow:
    0 3px 0 rgba(255,255,255,.92),
    0 12px 0 rgba(145,91,16,.18),
    0 32px 54px rgba(5,24,63,.28),
    0 0 54px rgba(255,210,90,.72)!important;
  filter:drop-shadow(0 22px 34px rgba(7,26,70,.22)) drop-shadow(0 0 28px rgba(255,217,96,.38))!important;
  animation:royalOneGlow 3s ease-in-out infinite;
}
body.royal-body .royal-one::before{
  left:13%!important;
  right:15%!important;
  top:10%!important;
  bottom:10%!important;
  border-radius:42px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,255,255,.16) 38%,rgba(255,255,255,0) 60%)!important;
}
body.royal-body .one-flame{
  top:-74px!important;
  width:38px!important;
  height:98px!important;
  background:
    radial-gradient(circle at 50% 67%,#0b2a70 0 8px,transparent 9px),
    radial-gradient(ellipse at 50% 50%,#fff 0 18%,#ffe19a 35%,#ff9f2e 58%,#ff5d1f 72%,transparent 75%)!important;
  filter:drop-shadow(0 0 16px rgba(255,199,72,.9)) drop-shadow(0 0 28px rgba(255,111,38,.55))!important;
  animation:flicker .68s ease-in-out infinite!important;
}
body.royal-body .photo-orbit{
  z-index:72!important;
  border-width:11px!important;
  border-color:rgba(230,177,70,.78)!important;
  background:rgba(255,255,255,.46)!important;
  box-shadow:
    0 28px 68px rgba(7,26,70,.24),
    0 0 0 8px rgba(255,255,255,.34),
    inset 0 0 0 8px rgba(255,255,255,.36)!important;
}
body.royal-body .photo-main{
  width:390px!important;
  height:390px!important;
  right:52px!important;
  top:286px!important;
  z-index:82!important;
}
body.royal-body .photo-small-a{
  width:315px!important;
  height:315px!important;
  right:365px!important;
  top:365px!important;
  transform:rotate(-5deg)!important;
  z-index:86!important;
}
body.royal-body .photo-small-b{
  width:320px!important;
  height:320px!important;
  right:150px!important;
  top:540px!important;
  transform:rotate(5deg)!important;
  z-index:90!important;
}
@keyframes royalOneGlow{
  0%,100%{filter:drop-shadow(0 22px 34px rgba(7,26,70,.22)) drop-shadow(0 0 26px rgba(255,217,96,.34)); transform:scale(1)}
  50%{filter:drop-shadow(0 25px 39px rgba(7,26,70,.25)) drop-shadow(0 0 44px rgba(255,217,96,.58)); transform:scale(1.012)}
}
@keyframes royalAuraPulse{
  0%,100%{opacity:.74; transform:scale(.98) rotate(0deg)}
  50%{opacity:1; transform:scale(1.03) rotate(3deg)}
}
@keyframes royalSparkleDrift{
  0%,100%{opacity:.72; transform:translateX(-50%) translateY(0) scale(.96)}
  50%{opacity:1; transform:translateX(-50%) translateY(-12px) scale(1.04)}
}
@media(max-width:1180px){
  body.royal-body .hero-art[aria-label]{min-height:710px!important;}
  body.royal-body .number-one-hero{left:50%!important; top:0!important; width:430px!important; height:500px!important;}
  body.royal-body .royal-one{font-size:430px!important;}
  body.royal-body .one-flame{top:-64px!important; width:32px!important; height:82px!important;}
  body.royal-body .photo-main{left:50%!important; right:auto!important; top:270px!important; width:320px!important; height:320px!important; transform:translateX(-2%) rotate(0deg)!important;}
  body.royal-body .photo-small-a{left:50%!important; right:auto!important; top:348px!important; width:255px!important; height:255px!important; transform:translateX(-96%) rotate(-5deg)!important;}
  body.royal-body .photo-small-b{left:50%!important; right:auto!important; top:470px!important; width:260px!important; height:260px!important; transform:translateX(20%) rotate(5deg)!important;}
}
@media(max-width:760px){
  body.royal-body .hero-art[aria-label]{min-height:590px!important; padding-top:0!important; overflow:visible!important;}
  body.royal-body .number-one-hero{left:50%!important; top:4px!important; width:335px!important; height:395px!important; transform:translateX(-50%) rotate(-2deg)!important;}
  body.royal-body .number-one-hero::after{font-size:25px; letter-spacing:24px; top:42px;}
  body.royal-body .royal-one{font-size:335px!important; line-height:.76!important;}
  body.royal-body .one-flame{top:-50px!important; width:25px!important; height:66px!important;}
  body.royal-body .photo-orbit{border-width:7px!important;}
  body.royal-body .photo-main{left:50%!important; right:auto!important; top:238px!important; width:215px!important; height:215px!important; transform:translateX(-2%)!important;}
  body.royal-body .photo-small-a{left:50%!important; right:auto!important; top:304px!important; width:170px!important; height:170px!important; transform:translateX(-100%) rotate(-5deg)!important;}
  body.royal-body .photo-small-b{left:50%!important; right:auto!important; top:410px!important; width:174px!important; height:174px!important; transform:translateX(20%) rotate(5deg)!important;}
}
@media(max-width:390px){
  body.royal-body .hero-art[aria-label]{min-height:560px!important;}
  body.royal-body .number-one-hero{width:300px!important; height:352px!important; top:2px!important;}
  body.royal-body .royal-one{font-size:300px!important;}
  body.royal-body .one-flame{top:-46px!important; width:22px!important; height:60px!important;}
  body.royal-body .photo-main{top:220px!important; width:190px!important; height:190px!important;}
  body.royal-body .photo-small-a{top:288px!important; width:148px!important; height:148px!important;}
  body.royal-body .photo-small-b{top:384px!important; width:152px!important; height:152px!important;}
}

/* v8 home-only refinement: circles slightly up, no candle, premium visible number 1 */
body.royal-body .one-flame{display:none!important;}
body.royal-body .number-one-hero{
  top:-12px!important;
  width:600px!important;
  height:690px!important;
  z-index:24!important;
}
body.royal-body .number-one-hero::before{
  inset:42px 0 0!important;
  border-radius:50%!important;
  background:
    radial-gradient(circle at 50% 42%,rgba(112,190,255,.24),transparent 28%),
    radial-gradient(circle at 52% 48%,rgba(255,227,137,.72),transparent 40%),
    radial-gradient(circle at 50% 50%,rgba(255,255,255,.58),transparent 55%)!important;
  filter:blur(1px) drop-shadow(0 0 48px rgba(73,160,255,.32)) drop-shadow(0 0 52px rgba(255,211,92,.42))!important;
}
body.royal-body .number-one-hero::after{
  content:"✦ ✧ ✦ ✧"!important;
  top:92px!important;
  font-size:34px!important;
  letter-spacing:34px!important;
  color:#fff3bc!important;
  text-shadow:0 0 18px #fff,0 0 32px rgba(255,211,87,.82),0 0 48px rgba(63,153,255,.42)!important;
}
body.royal-body .royal-one{
  font-family:"Baloo 2","Poppins",system-ui,sans-serif!important;
  font-size:585px!important;
  line-height:.74!important;
  opacity:.96!important;
  background:linear-gradient(135deg,#fff9d9 0%,#ffdc73 17%,#db9823 38%,#946016 53%,#ffedac 72%,#58b8ff 88%,#fff8d6 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  -webkit-text-stroke:2px rgba(255,246,210,.66)!important;
  text-shadow:
    0 4px 0 rgba(255,255,255,.88),
    0 17px 0 rgba(80,49,8,.12),
    0 35px 62px rgba(5,24,63,.30),
    0 0 42px rgba(255,214,85,.72),
    0 0 66px rgba(45,140,255,.35)!important;
  filter:drop-shadow(0 22px 38px rgba(7,26,70,.22)) drop-shadow(0 0 34px rgba(255,217,96,.44))!important;
}
body.royal-body .royal-one::after{
  content:"";
  position:absolute;
  left:18%;
  top:13%;
  width:22%;
  height:68%;
  border-radius:50px;
  background:linear-gradient(120deg,rgba(255,255,255,.78),rgba(255,255,255,.16) 48%,transparent 72%);
  transform:rotate(3deg);
  pointer-events:none;
}
body.royal-body .photo-main{top:246px!important;}
body.royal-body .photo-small-a{top:326px!important;}
body.royal-body .photo-small-b{top:500px!important;}
@media(max-width:1180px){
  body.royal-body .number-one-hero{top:-10px!important; width:465px!important; height:540px!important;}
  body.royal-body .royal-one{font-size:465px!important;}
  body.royal-body .photo-main{top:240px!important;}
  body.royal-body .photo-small-a{top:318px!important;}
  body.royal-body .photo-small-b{top:438px!important;}
}
@media(max-width:760px){
  body.royal-body .number-one-hero{top:-6px!important; width:360px!important; height:420px!important;}
  body.royal-body .number-one-hero::after{top:58px!important;font-size:22px!important;letter-spacing:20px!important;}
  body.royal-body .royal-one{font-size:360px!important;}
  body.royal-body .photo-main{top:212px!important;}
  body.royal-body .photo-small-a{top:278px!important;}
  body.royal-body .photo-small-b{top:382px!important;}
}
@media(max-width:390px){
  body.royal-body .number-one-hero{top:-4px!important; width:315px!important; height:370px!important;}
  body.royal-body .royal-one{font-size:315px!important;}
  body.royal-body .photo-main{top:198px!important;}
  body.royal-body .photo-small-a{top:264px!important;}
  body.royal-body .photo-small-b{top:360px!important;}
}


/* v9 home refinement: additional white balloons, circles slightly higher, no candle, stronger premium number shape */
.white-balloon{
  position:fixed;
  width:58px;
  height:76px;
  border-radius:50% 50% 47% 47%;
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.98),rgba(255,255,255,.92) 24%,rgba(228,244,255,.86) 62%,rgba(205,230,255,.78) 100%);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:inset -10px -14px 24px rgba(98,158,218,.16),0 18px 40px rgba(13,55,118,.12);
  z-index:3;
  pointer-events:none;
  opacity:.72;
  animation:whiteBalloonRise 14s ease-in-out infinite;
}
.white-balloon::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:-8px;
  width:12px;
  height:11px;
  transform:translateX(-50%) rotate(45deg);
  background:rgba(235,246,255,.92);
  border-radius:2px;
}
.white-balloon::after{
  content:"";
  position:absolute;
  left:50%;
  top:100%;
  width:1px;
  height:76px;
  background:linear-gradient(to bottom,rgba(255,255,255,.9),rgba(58,116,190,.22),transparent);
}
.white-balloon-a{left:5%; top:48%; transform:scale(.82); animation-delay:-2s;}
.white-balloon-b{right:7%; top:27%; transform:scale(.7); animation-delay:-6s;}
.white-balloon-c{left:72%; top:68%; transform:scale(.58); animation-delay:-10s; opacity:.58;}
@keyframes whiteBalloonRise{
  0%,100%{margin-top:0; margin-left:0; filter:blur(0)}
  35%{margin-top:-24px; margin-left:12px; filter:blur(.1px)}
  65%{margin-top:18px; margin-left:-10px; filter:blur(0)}
}

body.royal-body .number-one-hero{
  top:-42px!important;
  width:650px!important;
  height:720px!important;
  z-index:22!important;
}
body.royal-body .one-flame,
body.royal-body .number-one-hero .one-flame{display:none!important; opacity:0!important; visibility:hidden!important;}
body.royal-body .number-one-hero::before{
  inset:70px 26px 20px!important;
  border-radius:42% 58% 48% 52%!important;
  background:
    radial-gradient(circle at 50% 32%,rgba(255,255,255,.74),rgba(255,255,255,.18) 18%,transparent 29%),
    radial-gradient(circle at 45% 47%,rgba(255,226,129,.76),transparent 44%),
    radial-gradient(circle at 62% 60%,rgba(82,176,255,.34),transparent 34%),
    conic-gradient(from 20deg,rgba(255,255,255,0),rgba(255,231,153,.55),rgba(255,255,255,0),rgba(75,167,255,.28),rgba(255,255,255,0))!important;
  filter:blur(1px) drop-shadow(0 0 54px rgba(73,160,255,.34)) drop-shadow(0 0 64px rgba(255,211,92,.52))!important;
}
body.royal-body .royal-one{
  font-family:"Baloo 2","Poppins",system-ui,sans-serif!important;
  font-size:610px!important;
  line-height:.72!important;
  transform:skewX(-4deg)!important;
  background:linear-gradient(130deg,#fffdf1 0%,#ffe786 16%,#df9e26 34%,#995f13 50%,#ffd66f 64%,#ffffff 73%,#51b5ff 86%,#fff7d4 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  -webkit-text-stroke:2.5px rgba(255,248,216,.72)!important;
  text-shadow:
    0 4px 0 rgba(255,255,255,.9),
    0 18px 0 rgba(110,66,8,.13),
    0 38px 70px rgba(5,24,63,.34),
    0 0 46px rgba(255,220,91,.78),
    0 0 78px rgba(50,153,255,.42)!important;
}
body.royal-body .number-one-hero::after{
  top:112px!important;
  font-size:36px!important;
  letter-spacing:38px!important;
  content:"✦ ✧ ✦ ✧"!important;
}
body.royal-body .photo-main{top:222px!important; z-index:84!important;}
body.royal-body .photo-small-a{top:302px!important; z-index:88!important;}
body.royal-body .photo-small-b{top:472px!important; z-index:92!important;}
body.royal-body .photo-orbit{backdrop-filter:blur(3px);}
.inline-delete{display:inline-flex;margin:0}.order-pill{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:7px 10px;border-radius:999px;background:#eef5ff;color:#0b63ce;font-weight:900;border:1px solid #cfe2ff}

@media(max-width:1180px){
  body.royal-body .number-one-hero{top:-34px!important; width:500px!important; height:565px!important;}
  body.royal-body .royal-one{font-size:500px!important;}
  body.royal-body .number-one-hero::after{top:88px!important;}
  body.royal-body .photo-main{top:218px!important;}
  body.royal-body .photo-small-a{top:294px!important;}
  body.royal-body .photo-small-b{top:414px!important;}
}
@media(max-width:760px){
  .white-balloon{width:42px;height:56px;opacity:.58}.white-balloon-a{left:3%;top:56%}.white-balloon-b{right:5%;top:20%}.white-balloon-c{display:none}
  body.royal-body .number-one-hero{top:-20px!important; width:382px!important; height:430px!important;}
  body.royal-body .royal-one{font-size:382px!important; -webkit-text-stroke:1.5px rgba(255,248,216,.72)!important;}
  body.royal-body .number-one-hero::after{top:66px!important;font-size:22px!important;letter-spacing:21px!important;}
  body.royal-body .photo-main{top:190px!important; width:218px!important; height:218px!important;}
  body.royal-body .photo-small-a{top:252px!important; width:174px!important; height:174px!important;}
  body.royal-body .photo-small-b{top:354px!important; width:178px!important; height:178px!important;}
}
@media(max-width:390px){
  body.royal-body .number-one-hero{top:-16px!important; width:330px!important; height:380px!important;}
  body.royal-body .royal-one{font-size:330px!important;}
  body.royal-body .number-one-hero::after{top:58px!important;font-size:19px!important;letter-spacing:18px!important;}
  body.royal-body .photo-main{top:184px!important; width:194px!important; height:194px!important;}
  body.royal-body .photo-small-a{top:246px!important; width:152px!important; height:152px!important;}
  body.royal-body .photo-small-b{top:334px!important; width:156px!important; height:156px!important;}
}

/* v12 Luxury compact Birthday Memory popup - no database changes */
#memoryModal.modal-backdrop{
  background:
    radial-gradient(circle at 18% 12%, rgba(99,188,255,.28), transparent 30%),
    radial-gradient(circle at 82% 18%, rgba(255,222,133,.27), transparent 28%),
    radial-gradient(circle at 50% 88%, rgba(255,255,255,.22), transparent 34%),
    rgba(3,12,34,.56) !important;
  backdrop-filter: blur(18px) saturate(1.25) !important;
  padding: clamp(10px,2.4vw,24px) !important;
}
#memoryModal .memory-modal{
  width: min(560px, 96vw) !important;
  max-height: min(91vh, 830px) !important;
  overflow: auto !important;
  overscroll-behavior: contain !important;
  border-radius: 34px !important;
  padding: 18px 18px 16px !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,.92), rgba(231,244,255,.78) 45%, rgba(255,247,224,.86)) !important;
  box-shadow:
    0 28px 90px rgba(3,14,43,.34),
    inset 0 1px 0 rgba(255,255,255,.95),
    0 0 0 8px rgba(255,255,255,.12) !important;
}
#memoryModal .memory-modal::before{
  content:"NOAH'S ROYAL MEMORY";
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width: fit-content;
  max-width: calc(100% - 92px);
  min-height: 34px;
  margin: 0 auto 10px;
  padding: 8px 18px;
  border-radius: 999px;
  color:#08245b;
  font-size: 12px;
  font-weight: 1000;
  letter-spacing: .16em;
  background: linear-gradient(135deg, rgba(255,232,157,.95), rgba(255,255,255,.72), rgba(123,196,255,.60));
  border:1px solid rgba(215,167,71,.48);
  box-shadow:0 12px 28px rgba(10,54,117,.12), inset 0 1px 0 rgba(255,255,255,.95);
}
#memoryModal .memory-modal::after{
  content:"✦";
  position:absolute;
  left:22px;
  top:24px;
  width:36px;
  height:36px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#d49b32;
  background:rgba(255,255,255,.72);
  box-shadow:0 10px 24px rgba(7,26,70,.10);
  pointer-events:none;
}
#memoryModal .modal-close{
  right: 14px !important;
  top: 14px !important;
  width: 40px !important;
  height: 40px !important;
  font-size: 26px !important;
  color:#08245b !important;
  background:rgba(255,255,255,.78) !important;
  box-shadow:0 12px 30px rgba(7,26,70,.14) !important;
  z-index:5 !important;
}
#memoryModal .modal-language{
  position:absolute !important;
  top: 16px !important;
  right: 60px !important;
  margin:0 !important;
  z-index:4 !important;
}
#memoryModal .modal-language button{
  border:0;
  border-radius:999px;
  padding:9px 12px;
  font-size:12px;
  font-weight:1000;
  color:#08245b;
  background:rgba(255,255,255,.72);
  box-shadow:0 10px 22px rgba(7,26,70,.10);
}
#memoryModal .modal-progress{
  display:grid !important;
  grid-template-columns: auto 1fr !important;
  gap: 12px !important;
  align-items:center !important;
  margin: 4px 0 12px !important;
  padding: 10px 12px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.58) !important;
  border: 1px solid rgba(255,255,255,.78) !important;
}
#memoryModal .modal-progress span{
  white-space:nowrap !important;
  color:#0b2f73 !important;
  font-size: 13px !important;
  letter-spacing:.02em !important;
}
#memoryModal .modal-progress b{
  margin:0 !important;
  height: 9px !important;
  background: rgba(8,36,91,.12) !important;
  box-shadow: inset 0 1px 3px rgba(7,26,70,.08) !important;
}
#memoryModal .modal-progress i{
  background: linear-gradient(90deg,#0b66d8,#65c7ff,#ffe28a,#d49b32) !important;
  box-shadow: 0 0 16px rgba(49,155,255,.46) !important;
}
#memoryModal .step-image{
  margin: 8px auto 10px !important;
  width: 98px !important;
  height: 98px !important;
  position:relative !important;
}
#memoryModal .step-image::before{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:50%;
  background: conic-gradient(from 120deg,#ffe59a,#66c4ff,#fff,#d7a747,#ffe59a);
  filter: blur(.2px);
  animation: modalHaloSpin 7s linear infinite;
}
#memoryModal .step-image::after{
  content:"👑";
  position:absolute;
  right:-12px;
  top:-12px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff8df;
  box-shadow:0 10px 24px rgba(7,26,70,.14);
  font-size:19px;
}
#memoryModal .step-image img{
  position:relative;
  z-index:1;
  width:98px !important;
  height:98px !important;
  border:4px solid rgba(255,255,255,.92) !important;
  outline:2px solid rgba(215,167,71,.72) !important;
  box-shadow:0 16px 42px rgba(8,36,91,.20) !important;
}
@keyframes modalHaloSpin{to{transform:rotate(360deg)}}
#memoryModal .form-step{
  padding: 4px 2px 0 !important;
}
#memoryModal .form-step h2{
  margin: 0 auto 12px !important;
  max-width: 470px !important;
  color:#08245b !important;
  font-family:"Baloo 2","Nunito","Poppins",system-ui,sans-serif !important;
  font-size: clamp(23px,3.3vw,30px) !important;
  line-height:1.12 !important;
  font-weight:1000 !important;
  letter-spacing:-.025em !important;
  text-shadow:0 1px 0 rgba(255,255,255,.95) !important;
}
#memoryModal .step-note{
  text-align:center !important;
  margin: -4px auto 12px !important;
  color:#486087 !important;
  font-size:14px !important;
}
#memoryModal .form-step input,
#memoryModal .form-step textarea,
#memoryModal .upload-existing-card input[type=text]{
  border-radius: 18px !important;
  padding: 14px 16px !important;
  margin-bottom: 10px !important;
  border: 1px solid rgba(10,48,113,.14) !important;
  background: rgba(255,255,255,.80) !important;
  color:#08245b !important;
  font-weight:800 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 10px 24px rgba(7,26,70,.06) !important;
}
#memoryModal .form-step textarea{
  min-height: 106px !important;
  resize: vertical !important;
}
#memoryModal .form-step input:focus,
#memoryModal .form-step textarea:focus,
#memoryModal .upload-existing-card input[type=text]:focus{
  border-color:#61bdf8 !important;
  box-shadow:0 0 0 4px rgba(97,189,248,.20), 0 10px 24px rgba(7,26,70,.08) !important;
}
#memoryModal .upload-box{
  min-height: 76px !important;
  border-radius: 20px !important;
  border: 1.8px dashed rgba(11,102,216,.48) !important;
  background: linear-gradient(135deg,rgba(222,241,255,.75),rgba(255,248,226,.80)) !important;
  color:#0b2f73 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9) !important;
}
#memoryModal .upload-preview{
  max-height: 154px !important;
  border-radius: 20px !important;
  border: 3px solid rgba(255,255,255,.78) !important;
  box-shadow:0 14px 34px rgba(7,26,70,.14) !important;
}
#memoryModal .modal-actions{
  position: sticky !important;
  bottom: -1px !important;
  z-index:3 !important;
  display:grid !important;
  grid-template-columns: 1fr 1.2fr !important;
  gap:10px !important;
  padding: 10px 0 0 !important;
  margin-top: 10px !important;
  background: linear-gradient(180deg,rgba(255,255,255,0),rgba(241,249,255,.96) 30%,rgba(255,248,228,.96)) !important;
}
#memoryModal .modal-actions button{
  min-height: 48px !important;
  border-radius: 16px !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
#memoryModal .royal-btn{
  color:#071a46 !important;
  background: linear-gradient(135deg,#fff0b5 0%,#d59c32 45%,#62c5ff 100%) !important;
  box-shadow:0 14px 30px rgba(11,102,216,.18), 0 10px 25px rgba(212,155,50,.18) !important;
}
#memoryModal .ghost-btn{
  background: rgba(255,255,255,.76) !important;
  color:#0b2f73 !important;
  box-shadow:0 10px 22px rgba(7,26,70,.08) !important;
}
#memoryModal .form-message{
  min-height: 20px !important;
  margin: 10px 0 0 !important;
  font-size: 13px !important;
}
#memoryModal .existing-result h2{
  margin: 4px auto 12px !important;
  color:#08245b !important;
  font-size: clamp(24px,4vw,32px) !important;
  line-height:1.08 !important;
}
#memoryModal .result-icon{
  width: 58px !important;
  height: 58px !important;
  font-size: 30px !important;
  margin-top: 0 !important;
  background:linear-gradient(135deg,#daf9ec,#6bd7a1,#e9fff5) !important;
}
#memoryModal .result-summary{
  border-radius: 20px !important;
  padding: 12px 14px !important;
  margin: 10px 0 !important;
  background:rgba(255,255,255,.72) !important;
}
#memoryModal .result-summary p{
  margin: 6px 0 !important;
  font-size:14px !important;
}
#memoryModal .existing-photo-strip{
  gap:8px !important;
  margin:10px 0 !important;
}
#memoryModal .existing-photo-strip img{
  height: 80px !important;
}
#memoryModal .upload-existing-card{
  margin-top: 10px !important;
  padding: 12px !important;
  border-radius: 22px !important;
}
#memoryModal .upload-existing-card h3{
  color:#08245b !important;
  font-size:18px !important;
  margin-bottom:8px !important;
}
@media(max-width:640px){
  #memoryModal.modal-backdrop{
    align-items:flex-end !important;
    padding: 8px !important;
  }
  #memoryModal .memory-modal{
    width:100% !important;
    max-width:100% !important;
    max-height: 94svh !important;
    border-radius: 26px 26px 18px 18px !important;
    padding: 12px 12px max(12px, env(safe-area-inset-bottom)) !important;
  }
  #memoryModal .memory-modal::before{
    min-height: 28px !important;
    max-width: calc(100% - 92px) !important;
    margin-bottom: 8px !important;
    padding: 7px 12px !important;
    font-size: 10px !important;
    letter-spacing: .10em !important;
  }
  #memoryModal .memory-modal::after{display:none !important;}
  #memoryModal .modal-close{
    width: 36px !important;
    height: 36px !important;
    top: 10px !important;
    right: 10px !important;
  }
  #memoryModal .modal-language{
    top: 11px !important;
    right: 52px !important;
  }
  #memoryModal .modal-language button{
    padding:8px 10px !important;
    font-size:11px !important;
  }
  #memoryModal .modal-progress{
    position: sticky !important;
    top: -12px !important;
    z-index:4 !important;
    grid-template-columns:1fr !important;
    gap: 6px !important;
    padding: 8px 10px !important;
    margin: 0 0 8px !important;
    border-radius: 16px !important;
    background:rgba(255,255,255,.86) !important;
  }
  #memoryModal .modal-progress span{
    font-size: 12px !important;
  }
  #memoryModal .modal-progress b{height:8px !important;}
  #memoryModal .step-image{
    width: 74px !important;
    height: 74px !important;
    margin: 4px auto 8px !important;
  }
  #memoryModal .step-image img{
    width:74px !important;
    height:74px !important;
    border-width:3px !important;
  }
  #memoryModal .step-image::before{inset:-6px !important;}
  #memoryModal .step-image::after{
    width:26px !important;
    height:26px !important;
    font-size:15px !important;
    right:-10px !important;
    top:-10px !important;
  }
  #memoryModal .form-step h2{
    font-size: clamp(20px,6vw,24px) !important;
    line-height: 1.10 !important;
    margin-bottom: 9px !important;
  }
  #memoryModal .step-note{
    font-size:12px !important;
    line-height:1.35 !important;
    margin-bottom:8px !important;
  }
  #memoryModal .form-step input,
  #memoryModal .form-step textarea,
  #memoryModal .upload-existing-card input[type=text]{
    border-radius: 15px !important;
    padding: 12px 13px !important;
    margin-bottom: 8px !important;
    font-size: 16px !important;
  }
  #memoryModal .form-step textarea{
    min-height: 86px !important;
    max-height: 150px !important;
  }
  #memoryModal .upload-box{
    min-height: 58px !important;
    padding: 12px !important;
    border-radius: 16px !important;
    font-size: 14px !important;
  }
  #memoryModal .upload-preview{
    max-height: 120px !important;
    border-radius: 16px !important;
  }
  #memoryModal .modal-actions{
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    padding-top: 8px !important;
  }
  #memoryModal .modal-actions button{
    min-height: 46px !important;
    border-radius: 15px !important;
    padding: 10px 8px !important;
    font-size: 14px !important;
  }
  #memoryModal .submit-final{
    grid-column: 1 / -1 !important;
  }
  #memoryModal .form-message{
    font-size: 12px !important;
    margin-top: 7px !important;
  }
  #memoryModal .existing-result h2{
    font-size:22px !important;
  }
  #memoryModal .result-icon{
    width:48px !important;
    height:48px !important;
    font-size:25px !important;
  }
  #memoryModal .result-summary p{
    font-size:13px !important;
  }
  #memoryModal .existing-photo-strip{
    grid-template-columns:repeat(2,1fr) !important;
  }
  #memoryModal .existing-photo-strip img{
    height:72px !important;
  }
}
@media(max-width:380px){
  #memoryModal .memory-modal{padding-left:10px !important;padding-right:10px !important;}
  #memoryModal .memory-modal::before{font-size:9px !important;padding-left:9px !important;padding-right:9px !important;}
  #memoryModal .form-step h2{font-size:19px !important;}
  #memoryModal .modal-actions button{font-size:13px !important;}
}


/* V13: final popup button order + luxury countdown page */
#memoryModal .modal-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  align-items:center !important;
}
#memoryModal #prevBtn{order:1 !important;}
#memoryModal #nextBtn{order:2 !important;}
#memoryModal #submitBtn{
  order:3 !important;
  grid-column:1 / -1 !important;
  display:none !important;
  width:100% !important;
  justify-content:center !important;
}
#memoryModal #submitBtn.is-visible{display:inline-flex !important;}
#memoryModal #submitBtn::before{content:'✨';margin-right:8px;}

.countdown-body{
  min-height:100vh;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(107,184,255,.55), transparent 24%),
    radial-gradient(circle at 78% 12%, rgba(255,227,154,.65), transparent 26%),
    radial-gradient(circle at 50% 95%, rgba(255,255,255,.85), transparent 34%),
    linear-gradient(135deg,#dcefff 0%,#fff9ed 44%,#b7d8f7 100%) !important;
}
.luxury-countdown-glow{position:fixed;border-radius:999px;pointer-events:none;filter:blur(5px);opacity:.75;z-index:0;animation:luxGlow 7s ease-in-out infinite alternate;}
.glow-one{width:420px;height:420px;left:-140px;top:90px;background:radial-gradient(circle,rgba(18,101,210,.28),transparent 68%);}
.glow-two{width:500px;height:500px;right:-180px;bottom:-90px;background:radial-gradient(circle,rgba(215,167,71,.30),transparent 68%);animation-delay:-2s;}
@keyframes luxGlow{from{transform:translateY(0) scale(.94)}to{transform:translateY(-28px) scale(1.05)}}
.luxury-countdown-shell{
  position:relative;
  z-index:2;
  width:min(1240px,calc(100% - 36px)) !important;
  min-height:calc(100vh - 112px) !important;
  padding:28px 0 34px !important;
  gap:30px !important;
}
.luxury-countdown-card,
.luxury-countdown-slider{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.82) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(233,247,255,.58) 48%,rgba(255,245,218,.72)) !important;
  box-shadow:0 34px 90px rgba(6,31,78,.18), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.luxury-countdown-card::before{
  content:'';
  position:absolute;
  inset:-2px;
  background:linear-gradient(135deg,rgba(26,111,231,.20),transparent 30%,rgba(215,167,71,.28) 72%,transparent);
  pointer-events:none;
}
.luxury-countdown-card::after{
  content:'✦ ✧ ✦';
  position:absolute;
  right:24px;
  top:22px;
  color:#1d76df;
  font-size:22px;
  letter-spacing:10px;
  text-shadow:0 0 18px rgba(67,163,255,.85);
  animation:twinkle 2.2s ease-in-out infinite alternate;
}
.countdown-crown{
  width:78px;height:78px;border-radius:50%;display:grid;place-items:center;
  font-size:48px;color:#073577;
  background:linear-gradient(135deg,#fff,#fff4ca 60%,#d7a747);
  box-shadow:0 18px 38px rgba(7,26,70,.18),0 0 0 9px rgba(255,255,255,.42);
  margin-bottom:18px;
}
.royal-countdown-kicker{
  color:#1265d2 !important;
  letter-spacing:5px !important;
  font-size:13px;
  margin:0 0 6px !important;
}
.luxury-countdown-card h1{
  position:relative;
  font-family:"Baloo 2","Poppins",system-ui,sans-serif !important;
  color:#083a7c !important;
  text-shadow:0 8px 0 rgba(255,255,255,.65),0 22px 42px rgba(9,53,114,.18);
  max-width:620px;
}
.countdown-subtitle{
  position:relative;
  color:#183d72 !important;
  letter-spacing:0 !important;
  font-weight:800 !important;
  font-size:clamp(17px,2vw,22px);
  margin:-8px 0 22px !important;
}
.luxury-timer{position:relative;z-index:2;gap:18px !important;}
.luxury-timer div{
  position:relative;
  overflow:hidden;
  background:linear-gradient(150deg,rgba(255,255,255,.92),rgba(223,242,255,.72)) !important;
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 18px 44px rgba(7,58,124,.13), inset 0 -10px 28px rgba(18,101,210,.06) !important;
}
.luxury-timer div::before{
  content:'';position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#1265d2,#8ed0ff,#d7a747);
}
.luxury-timer strong{
  color:#063a80 !important;
  font-size:clamp(42px,5.2vw,74px) !important;
  line-height:.95;
  text-shadow:0 5px 0 rgba(255,255,255,.8),0 14px 24px rgba(6,45,98,.18);
}
.luxury-timer span{color:#b47a16 !important;letter-spacing:2px;font-size:12px;}
.countdown-details{position:relative;display:grid;gap:10px;margin:22px 0 20px;}
.countdown-details span{
  display:inline-flex;align-items:center;width:max-content;max-width:100%;
  padding:11px 15px;border-radius:999px;
  background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.8);
  color:#0b2e66;font-weight:900;box-shadow:0 12px 28px rgba(7,26,70,.08);
}
.countdown-enter{width:max-content;min-width:210px;justify-content:center;}
.luxury-countdown-slider{min-height:590px !important;padding:0 !important;}
.slider-royal-label{
  position:absolute;left:28px;top:26px;z-index:4;
  padding:10px 15px;border-radius:999px;
  background:rgba(255,255,255,.72);backdrop-filter:blur(12px);
  color:#073577;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;font-size:12px;
  box-shadow:0 12px 34px rgba(7,26,70,.12);
}
.luxury-countdown-slider .count-slide{inset:18px !important;}
.luxury-countdown-slider .count-slide::after{
  content:'';position:absolute;inset:0;border-radius:32px;
  background:linear-gradient(180deg,rgba(4,30,75,.04),rgba(4,30,75,.25));pointer-events:none;
}
.luxury-countdown-slider .count-slide img{
  border-radius:32px !important;
  box-shadow:0 22px 58px rgba(7,26,70,.20);
}
.luxury-countdown-slider .count-slide figcaption{
  z-index:3;left:28px !important;right:28px !important;bottom:28px !important;
  background:rgba(255,255,255,.78) !important;backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.86);
  color:#073577 !important;
  box-shadow:0 18px 44px rgba(7,26,70,.16);
}
.luxury-countdown-slider .slide-control{
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(223,242,255,.76)) !important;
  border:1px solid rgba(255,255,255,.88);
  color:#073577 !important;
  box-shadow:0 14px 35px rgba(7,26,70,.16);
}
.countdown-footer{position:relative;z-index:2;}
@media(max-width:1180px){
  .luxury-countdown-shell{grid-template-columns:1fr !important;min-height:auto !important;padding-top:18px !important;}
  .luxury-countdown-card{text-align:center;}
  .countdown-crown{margin-left:auto;margin-right:auto;}
  .countdown-details span{width:100%;justify-content:center;}
  .countdown-enter{margin-left:auto;margin-right:auto;}
  .luxury-countdown-slider{min-height:470px !important;}
}
@media(max-width:640px){
  #memoryModal .modal-actions{grid-template-columns:1fr !important;}
  #memoryModal #prevBtn,#memoryModal #nextBtn,#memoryModal #submitBtn{grid-column:1 / -1 !important;}
  .luxury-countdown-shell{width:calc(100% - 20px) !important;padding-top:10px !important;gap:18px !important;}
  .luxury-countdown-card,.luxury-countdown-slider{border-radius:26px !important;padding:18px !important;}
  .luxury-countdown-card::after{font-size:16px;right:12px;top:14px;letter-spacing:4px;}
  .countdown-crown{width:58px;height:58px;font-size:36px;margin-bottom:12px;}
  .royal-countdown-kicker{letter-spacing:3px !important;font-size:11px;}
  .luxury-countdown-card h1{font-size:clamp(38px,12vw,54px) !important;margin-bottom:14px !important;}
  .countdown-subtitle{font-size:15px;margin-top:-4px !important;}
  .luxury-timer{grid-template-columns:repeat(2,1fr) !important;gap:10px !important;}
  .luxury-timer div{padding:16px 8px !important;border-radius:20px !important;}
  .luxury-timer strong{font-size:38px !important;}
  .luxury-timer span{font-size:10px;letter-spacing:1px;}
  .countdown-details{margin:16px 0;}
  .countdown-details span{border-radius:18px;font-size:13px;text-align:center;}
  .luxury-countdown-slider{min-height:380px !important;padding:0 !important;}
  .luxury-countdown-slider .count-slide{inset:12px !important;}
  .slider-royal-label{left:18px;top:18px;font-size:10px;padding:8px 11px;}
  .luxury-countdown-slider .count-slide figcaption{left:18px !important;right:18px !important;bottom:18px !important;font-size:13px;}
}

/* v14 modern gallery grid, preview lightbox, and mobile footer polish */
.gallery-body{overflow-x:hidden}.luxury-gallery-section{position:relative}.gallery-title-row{display:flex;align-items:end;justify-content:space-between;gap:18px}.gallery-hint{max-width:420px;padding:12px 16px;border-radius:18px;background:rgba(255,255,255,.64);border:1px solid rgba(255,255,255,.82);color:#123267;font-weight:800;box-shadow:0 14px 38px rgba(7,26,70,.08)}
.modern-gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;align-items:stretch}.modern-gallery-item{grid-column:span 4;overflow:hidden;border-radius:30px;padding:0;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(230,245,255,.66));border:1px solid rgba(255,255,255,.86);box-shadow:0 22px 60px rgba(7,26,70,.12);transition:transform .25s ease,box-shadow .25s ease}.modern-gallery-item:hover{transform:translateY(-5px);box-shadow:0 32px 76px rgba(7,26,70,.17)}.modern-gallery-item:nth-child(7n+1),.modern-gallery-item:nth-child(7n+5){grid-column:span 6}.gallery-open-area{position:relative;display:block;width:100%;height:340px;padding:0;border:0;background:transparent;cursor:pointer;overflow:hidden;border-radius:30px 30px 22px 22px}.gallery-open-area img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease,filter .35s ease}.modern-gallery-item:hover .gallery-open-area img{transform:scale(1.055);filter:saturate(1.08)}.gallery-open-area:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,20,58,0) 40%,rgba(4,20,58,.46));pointer-events:none}.tap-badge{position:absolute;left:16px;bottom:16px;z-index:2;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);color:#0d2d64;font-size:13px;font-weight:900;box-shadow:0 10px 24px rgba(7,26,70,.14)}.modern-gallery-info{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px}.modern-gallery-info h3{margin:0;color:var(--navy);font-size:20px}.modern-gallery-info p{margin:5px 0 0;color:#45628d;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery-like,.lightbox-like{flex:0 0 auto;border:0;border-radius:20px;padding:12px 14px;background:linear-gradient(135deg,#eaf7ff,#ffffff);color:#0a3472;font-weight:1000;box-shadow:inset 0 0 0 1px rgba(91,188,255,.25),0 12px 28px rgba(7,26,70,.12);display:inline-flex;align-items:center;gap:7px;cursor:pointer;transition:.2s}.gallery-like:hover,.lightbox-like:hover{transform:translateY(-2px)}.gallery-like b,.lightbox-like b{min-width:26px;height:26px;border-radius:999px;display:grid;place-items:center;background:#0e4f9a;color:#fff;font-size:13px}.like-btn.liked{background:linear-gradient(135deg,#dff2ff,#edf8ff)!important;color:#0b5fae!important;opacity:1}.like-btn.liked b{background:#0b5fae}.gallery-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:22px}.gallery-lightbox.open{display:flex}.gallery-lightbox-backdrop{position:absolute;inset:0;background:rgba(4,16,44,.72);backdrop-filter:blur(18px)}.gallery-lightbox-panel{position:relative;width:min(1180px,100%);height:min(82vh,760px);display:grid;grid-template-rows:minmax(0,1fr) auto;border-radius:36px;background:linear-gradient(135deg,rgba(255,255,255,.30),rgba(232,246,255,.14));border:1px solid rgba(255,255,255,.42);box-shadow:0 36px 110px rgba(0,0,0,.34);overflow:hidden}.lightbox-figure{margin:0;min-height:0;display:grid;place-items:center;padding:24px 76px 16px}.lightbox-figure img{max-width:100%;max-height:100%;object-fit:contain;border-radius:26px;box-shadow:0 24px 70px rgba(0,0,0,.28);transition:opacity .18s ease;background:#fff}.lightbox-close{position:absolute;top:16px;right:16px;z-index:4;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.88);color:#0b2858;font-size:30px;line-height:1;box-shadow:0 14px 34px rgba(0,0,0,.18);cursor:pointer}.lightbox-nav{position:absolute;top:45%;z-index:4;width:54px;height:74px;border:0;border-radius:22px;background:rgba(255,255,255,.82);color:#0d2d64;font-size:54px;line-height:1;box-shadow:0 16px 40px rgba(0,0,0,.16);cursor:pointer}.lightbox-prev{left:16px}.lightbox-next{right:16px}.lightbox-caption{margin:0 18px 18px;padding:16px 18px;border-radius:26px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:rgba(255,255,255,.84)}.lightbox-caption strong{display:block;color:#061b4b;font-size:22px}.lightbox-caption p{margin:4px 0 0;color:#435d88;line-height:1.35}.lightbox-actions{display:flex;align-items:center;gap:10px}.lightbox-play{border:0;border-radius:20px;padding:13px 16px;font-weight:1000;color:#08275b;background:linear-gradient(135deg,#fff1b9,#d9a747);box-shadow:0 12px 28px rgba(149,95,14,.18);cursor:pointer}.lightbox-open{overflow:hidden}.filter-row{display:flex;gap:10px;flex-wrap:wrap}.filter-row button{border:1px solid rgba(91,188,255,.25);border-radius:16px;padding:10px 16px;background:rgba(255,255,255,.72);color:#102d63;font-weight:900}.filter-row button.active{background:#0e4f9a;color:#fff}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;line-height:1.35}.site-footer strong,.site-footer span,.site-footer em{min-width:0}.site-footer em{font-style:normal;color:#0e4f9a;font-weight:900}
@media(max-width:1120px){.modern-gallery-grid{grid-template-columns:repeat(6,1fr)}.modern-gallery-item,.modern-gallery-item:nth-child(7n+1),.modern-gallery-item:nth-child(7n+5){grid-column:span 3}.gallery-open-area{height:300px}.gallery-title-row{align-items:start;flex-direction:column}.gallery-hint{max-width:none;width:100%}}
@media(max-width:760px){.modern-gallery-grid{grid-template-columns:1fr;gap:14px}.modern-gallery-item,.modern-gallery-item:nth-child(7n+1),.modern-gallery-item:nth-child(7n+5){grid-column:span 1;border-radius:24px}.gallery-open-area{height:255px;border-radius:24px 24px 18px 18px}.modern-gallery-info{padding:13px;gap:10px}.modern-gallery-info h3{font-size:17px}.modern-gallery-info p{-webkit-line-clamp:1;font-size:13px}.gallery-like{border-radius:17px;padding:10px 11px;font-size:13px}.gallery-like b{min-width:24px;height:24px}.gallery-lightbox{padding:0;align-items:end}.gallery-lightbox-panel{width:100%;height:88vh;border-radius:30px 30px 0 0}.lightbox-figure{padding:56px 12px 10px}.lightbox-figure img{border-radius:20px;max-height:100%}.lightbox-close{top:10px;right:10px;width:42px;height:42px;font-size:26px}.lightbox-nav{top:44%;width:42px;height:58px;border-radius:18px;font-size:42px;background:rgba(255,255,255,.74)}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-caption{margin:0 10px 12px;padding:12px;border-radius:20px;align-items:stretch;flex-direction:column}.lightbox-caption strong{font-size:18px}.lightbox-caption p{font-size:13px;max-height:40px;overflow:auto}.lightbox-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lightbox-like,.lightbox-play{width:100%;justify-content:center;border-radius:16px;padding:12px}.site-footer{width:calc(100% - 18px)!important;margin:24px auto 76px!important;padding:14px 12px!important;border-radius:20px!important;display:grid!important;grid-template-columns:1fr;text-align:center;gap:6px;font-size:12px}.site-footer strong{font-size:13px}.site-footer span{font-size:12px;word-break:normal}.site-footer em{font-size:12px;padding-top:4px;border-top:1px solid rgba(91,188,255,.18)}}
@media(max-width:390px){.gallery-open-area{height:225px}.tap-badge{font-size:12px;left:12px;bottom:12px}.modern-gallery-info{flex-direction:column;align-items:stretch}.gallery-like{justify-content:center}.lightbox-actions{grid-template-columns:1fr}.gallery-lightbox-panel{height:90vh}}
