/* Rapunzel: lavanda, sol dorado y faroles sobre el lago. */
:root{--bg:#faf6ff;--text:#493260;--card:#fffdf9;--line:#e7d9f2;--accent:#8153aa;--accent-text:#fff;--nav-bg:#25143ae8;--nav-solid:#25143a;--input-bg:#fff;--shadow:0 15px 45px #50306412;--success-bg:#eaf5e9;--success-text:#285339}
body{background:radial-gradient(ellipse at 100% 40%,#eee0fa,transparent 45%),#faf6ff}
.topbar{color:#fff0cd;border-color:#e5bd6c40}.logo{letter-spacing:.18em}.top-nav a:hover{color:#f3ca78}
.hero{background:linear-gradient(0deg,#21133724,#23133455),url('../scene.svg') center/cover;color:#fff6dc;min-height:100svh}
.hero h1{text-shadow:0 3px 30px #120d30;font-size:clamp(3.7rem,10vw,8rem)}.hero .kicker{color:#f6d892}.hero p{color:#f8ecff}.hero .btn.primary{background:#eac67c;color:#382348;box-shadow:0 5px 30px #eac67c33}.hero .btn.ghost{border-color:#edd4a680;color:#fff;background:#38224f66}
.sun-emblem{font-size:3.5rem;color:#f4ce79;line-height:1.3;margin-bottom:20px;text-shadow:0 0 32px #ffd480}
.countdown{max-width:580px;gap:12px}.countdown div{background:#fff4dd10;border:1px solid #f3d59566;backdrop-filter:blur(12px);border-radius:22px}.countdown strong{font-weight:500;color:#ffe3a5}.countdown span{color:#f7e9ff}
.section-heading h2,.quote{color:#735195}.kicker{color:#987239}.event-feature .photo{border:7px solid #fff;outline:1px solid #d9b975;transform:rotate(-2deg)}.gallery-item{border-radius:26px!important;box-shadow:0 10px 30px #50306418}.extras-symbol{color:#c59b4a}.extras-rule{background:#d7b56e}.footer{background:#29183e;color:#f1dca7}.deadline-card{border-color:#e4ce9f;background:#fff9eb}.btn-agenda,.intro-open-btn{background:#8153aa!important;color:white!important}.btn:hover,.btn-agenda:hover{box-shadow:0 8px 25px #8153aa30}
.rose-intro{background:radial-gradient(ellipse at 50% 40%,#b79acb,#654780 65%,#30203f);color:#fff4dc}.intro-heading,.intro-eyebrow,.intro-hint,.intro-skip{color:#fff0cd}.intro-envelope-back{background:#b28bc7!important}.intro-envelope-front{filter:hue-rotate(35deg)}.intro-card{background:#fff9ec!important;color:#674381!important}.intro-wax{background:linear-gradient(135deg,#f4d791,#b48a3f)!important;color:#4b305f!important}.intro-flower{color:#c09b47}.intro-open-btn{border:1px solid #ecd39a!important}.gift-modal{border-radius:28px;border:1px solid #dec693}
.floating-lanterns{position:absolute;inset:0;pointer-events:none;overflow:hidden}.floating-lanterns span{position:absolute;left:calc(var(--i)*8.3%);bottom:-100px;width:22px;height:33px;border-radius:6px 6px 9px 9px;background:linear-gradient(#fff2ae,#e9a457);box-shadow:0 0 28px #ffd17899,inset 0 -7px 8px #c97d3b77;opacity:0;animation:lantern-rise 21s linear infinite;animation-delay:calc(var(--i)*-2.1s)}
@keyframes lantern-rise{0%{transform:translate(0,0) rotate(-7deg);opacity:0}10%{opacity:.8}85%{opacity:.65}100%{transform:translate(35px,-115vh) rotate(9deg);opacity:0}}
@media(max-width:560px){.hero{background-position:62% center;padding-top:115px}.hero h1{overflow-wrap:anywhere}.countdown{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:32px}.countdown div{padding:14px 4px}.countdown strong{font-size:1.6rem}.countdown span{font-size:.65rem}.sun-emblem{font-size:2.7rem}.event-feature .photo{min-height:380px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.floating-lanterns span{animation:none;bottom:auto;top:calc(15% + var(--i)*5%);opacity:.45}.reveal{opacity:1;transform:none;transition:none}.intro-glow,.intro-sparkles{animation:none}}

/* Identidad propia: un libro de cuentos y una ceremonia de faroles. */
:root{--display-font:"Cormorant Garamond",Georgia,serif;--bg:#fbf5e8;--text:#493359;--card:#fffdf6;--line:#ddcdab;--accent:#785291}
.hero{min-height:105svh;background-position:center}.hero-inner{max-width:850px;padding:30px 24px 45px;border:1px solid #f5daa45c;border-radius:48% 48% 24px 24px;background:radial-gradient(ellipse,#271940c9,transparent 75%)}
.hero h1{font-family:"Great Vibes",cursive;font-size:clamp(4.8rem,11vw,9rem);margin:20px 0 28px}.hero .kicker{font-size:.64rem;letter-spacing:.4em}.storybook-age{font:italic clamp(1.7rem,4vw,2.8rem) "Cormorant Garamond",serif;color:#f9df9f;display:block;margin-top:12px}.sun-emblem{font-size:4rem;margin:0;color:#fbd07b}
.hero .countdown{border-top:1px solid #f1cf8c66;padding-top:26px}.hero .countdown div{border:0;background:transparent;box-shadow:none;backdrop-filter:none;border-radius:0;border-right:1px solid #f1cf8c44}.hero .countdown div:last-child{border-right:0}.countdown strong{font:2.6rem "Cormorant Garamond",serif}
.story-chapter{position:relative;background:#fbf5e8;padding-top:65px}.chapter-ornament{text-align:center;color:#b28c44;letter-spacing:12px;margin-bottom:65px}.event-feature{gap:70px}.event-feature .photo{border-radius:48% 48% 8px 8px;transform:none;border:8px solid #fffaf0;outline:1px solid #c9a86b;box-shadow:15px 18px 0 #eaddc4}.section-heading h2{font-size:clamp(2.8rem,5vw,4rem);font-weight:500}.quote{font-style:italic;font-size:clamp(2rem,5vw,3.7rem);line-height:1.2;padding:35px;border-block:1px solid #d6bc8655}.kingdom-gallery{background:#eee4f1}.gallery-grid{gap:22px}.gallery-item:nth-child(even){transform:translateY(25px) rotate(2deg)}.gallery-item:nth-child(odd){transform:rotate(-2deg)}.gallery-item{border:7px solid #fff9ec;border-radius:8px!important}.extras-section{background:#fbf5e8}.gifts-section{background:#efe6f4}.gift-tile{border-radius:70px 70px 18px 18px!important;border-color:#c7acd8!important}.confirm-card{border:1px solid #ceb783;border-radius:36px 36px 12px 12px!important}.footer{background:#241632;color:#ead2a0}
body.rapunzel-intro-locked{overflow:hidden}.rapunzel-intro{position:fixed;inset:0;z-index:999;display:grid;place-items:center;overflow:hidden;background:linear-gradient(#241839aa,#2c1a40c9),url('../scene.svg') center/cover;color:#ffebbd;transition:opacity .7s,visibility .7s}.rapunzel-intro.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.rapunzel-intro .intro-content{width:min(94vw,600px);padding:35px 12px}.rapunzel-intro .intro-heading{font:italic clamp(2.2rem,6vw,3.6rem) "Cormorant Garamond",serif;margin:15px 0 30px;color:#ffebbd}.rapunzel-intro .intro-eyebrow{color:#e7c890;font-size:9px}.rapunzel-intro .intro-skip{color:#fff2d3}.rapunzel-intro .intro-hint{color:#dfcce9}.wish-lantern{display:block;position:relative;width:205px;margin:0 auto 28px;padding:0;border:0;background:none;cursor:pointer;color:#795025;filter:drop-shadow(0 0 25px #ffca6b55);transition:transform 1.6s ease-in,filter .7s}.wish-lantern-paper{height:235px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border-radius:25px 25px 40px 40px;border:1px solid #ffdf93;background:repeating-linear-gradient(90deg,transparent 0 32px,#dca95533 33px 35px),radial-gradient(ellipse at bottom,#fff5bc,#efc376 75%);box-shadow:inset 0 -20px 40px #ef9e3e66}.wish-sun{font-size:55px;line-height:1}.wish-age{font:60px "Cormorant Garamond",serif;line-height:1}.wish-name{font:28px "Great Vibes",cursive;max-width:180px;overflow-wrap:anywhere}.wish-lantern-cap,.wish-lantern-base{display:block;height:9px;background:#c89b52;border-radius:50%;margin:0 10px}.wish-lantern-base{margin:-5px 22px 0;background:#ad773b}.wish-lantern:focus-visible{outline:3px solid #fff;outline-offset:12px;border-radius:30px}.wish-instruction{font-size:.8rem;letter-spacing:.05em;color:#ffebbd}.opening .wish-lantern{transform:translateY(-110vh) scale(.55) rotate(-5deg);filter:drop-shadow(0 0 55px #ffd36d)}.rapunzel-demo-switch{position:fixed;bottom:16px;right:16px;z-index:1000;background:#fff4df;padding:8px;border-radius:30px;font-size:11px}.rapunzel-demo-switch button{border:0;background:none;cursor:pointer;padding:8px;color:#654374}
@media(max-width:600px){.hero-inner{width:calc(100% - 26px);padding:35px 10px;border-radius:180px 180px 20px 20px}.hero h1{font-size:clamp(4rem,16vw,6rem)}.hero .kicker{letter-spacing:.2em}.event-feature{gap:40px}.gallery-item:nth-child(n){transform:none}.wish-lantern{width:170px}.wish-lantern-paper{height:200px}.rapunzel-intro .intro-heading{margin-bottom:22px}.chapter-ornament{letter-spacing:6px}.gallery-grid{gap:12px}}
@media(prefers-reduced-motion:reduce){.wish-lantern,.rapunzel-intro{transition:none}.opening .wish-lantern{transform:none}}
