:root{--color-primary:#002d42;--color-secondary:#ffd100;--color-accent:#00a8b5;--color-bg:#f7f5f2;--color-text:#333;--color-light:#fff;--font-heading:"Playfair Display", serif;--font-body:"Outfit", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,.logo{font-family:var(--font-heading)}.text-center{text-align:center}.glassmorphism{z-index:100;-webkit-backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #ffffff80;border-radius:12px;transition:transform .3s,box-shadow .3s;position:relative;box-shadow:0 4px 16px #0000000d}.glassmorphism:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.container{width:100%;margin:0 auto;padding:0 1.5rem}.section-padding{padding:4rem 0}.section-title{text-align:center;color:var(--color-primary);margin-bottom:2rem;font-size:2rem}.navbar{z-index:1000;background:0 0;justify-content:center;width:100%;padding:1rem 1.5rem;transition:all .3s;display:flex;position:fixed;top:0}.navbar.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#002d42f2}.navbar .logo{flex-direction:column;justify-content:center;align-items:center;display:flex}.navbar .logo-text{color:var(--color-light);letter-spacing:2px;text-transform:uppercase;font-size:1.25rem;font-weight:600;transition:all .3s}.navbar .nav-date{opacity:0;height:0;color:var(--color-light);font-family:Outfit,sans-serif;font-size:0;font-weight:400;transition:all .3s}@media (width<=768px){.navbar .logo.show-date .logo-text{opacity:.8;font-size:.75rem}.navbar .logo.show-date .nav-date{color:var(--color-secondary);text-transform:uppercase;opacity:1;height:auto;margin-top:.2rem;font-size:.85rem}}#floral-container{pointer-events:none;z-index:90;width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.petal{background:var(--color-accent);opacity:.6;border-radius:10px 0;position:absolute}.hero{justify-content:center;align-items:center;height:100vh;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;width:100%;height:100%;position:absolute;top:0;left:0}.hero-bg img{object-fit:cover;width:100%;height:100%;transform:scale(1.1)}.hero-bg .overlay{background:linear-gradient(#002d4233 0%,#002d4299 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:100;text-align:center;color:var(--color-light);padding:0 1.5rem;position:relative}.hero-content .subtitle{letter-spacing:3px;text-transform:uppercase;font-size:1rem;font-family:var(--font-body);margin-bottom:1rem;font-weight:300}.hero-content .title{text-shadow:2px 4px 10px #0000004d;margin-bottom:1rem;font-size:3.5rem;line-height:1.1}.highlight-3rd{color:var(--color-secondary);font-style:italic;font-weight:700}.hero-content .theme{color:var(--color-secondary);font-size:1.5rem;font-style:italic}.countdown-wrapper{justify-content:center;gap:1.5rem;margin-top:3rem;display:flex}.countdown-item{-webkit-backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;flex-direction:column;align-items:center;min-width:90px;padding:1rem;display:flex;box-shadow:0 4px 15px #0000001a}.countdown-item span:first-child{color:var(--color-secondary);font-family:Oswald,sans-serif;font-size:2.5rem;font-weight:500;line-height:1.2}.countdown-item .label{text-transform:uppercase;letter-spacing:2px;opacity:.9;margin-top:.25rem;font-size:.75rem}@media (width<=768px){.countdown-wrapper{gap:.75rem}.countdown-item{min-width:70px;padding:.75rem}.countdown-wrapper .countdown-item:last-child{display:none}}.scroll-indicator{color:var(--color-light);z-index:10;flex-direction:column;align-items:center;font-size:.875rem;transition:opacity .4s;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-indicator.hidden{pointer-events:none;opacity:0!important}.mouse{border:2px solid var(--color-light);border-radius:12px;width:20px;height:32px;margin-bottom:.5rem;position:relative}.wheel{background-color:var(--color-light);border-radius:50%;width:4px;height:4px;animation:1.5s infinite scroll;position:absolute;top:6px;left:50%;transform:translate(-50%)}@keyframes scroll{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,12px)}}.welcome{z-index:10;margin-top:-30px;position:relative}.welcome-card{text-align:center;padding:2rem;font-size:1rem}.welcome-card p{margin-bottom:1rem}.welcome-card .signature{color:var(--color-primary);margin-top:2rem;font-style:italic}.special-day{background:var(--color-primary);color:var(--color-light);position:relative}.special-day .section-title{color:var(--color-secondary)}.special-day-content{text-align:center;background:#ffffff0d;border-color:#ffffff1a;padding:2rem 1.5rem}.special-day-content .date{font-size:1.25rem;font-family:var(--font-body);color:var(--color-accent);letter-spacing:1px;margin-bottom:1.5rem}.special-desc{opacity:.9;margin-bottom:2rem}.highlight-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch;gap:1.5rem;margin-top:2rem;display:grid}.highlight-item{border-radius:12px;flex-direction:column;height:100%;transition:transform .4s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000004d}.highlight-item img{object-fit:cover;width:100%;height:250px;transition:transform .5s;display:block}.highlight-item:hover{transform:translateY(-5px)}.highlight-item:hover img{transform:scale(1.05)}.highlight-info{background:var(--color-light);color:var(--color-text);text-align:left;flex-direction:column;flex:1;padding:1.5rem;display:flex}.highlight-info h4{color:var(--color-primary);margin-bottom:.5rem;font-size:1.2rem}.timeline{background-color:var(--color-bg);background-image:url(/floral_bg.png);background-position:50%;background-repeat:repeat;background-size:400px;background-attachment:fixed}.timeline-container{width:100%;position:relative}.day-block{flex-direction:column;margin-bottom:4rem;display:flex}.day-visual{background:var(--color-primary);border-radius:16px;width:100%;margin-bottom:2rem;overflow:hidden;box-shadow:0 10px 30px #0000001a}.day-header-content{color:var(--color-light);padding:1.5rem}.day-header-content h3{color:var(--color-secondary);margin-bottom:.5rem;font-size:1.25rem}.day-header-content p{opacity:.9;font-size:.95rem}.day-visual img{object-fit:cover;width:100%;height:250px;display:block}.day-events{width:100%;position:relative}.anniversary-feature{background:linear-gradient(135deg, var(--color-primary) 0%, #001f2e 100%);color:var(--color-light);border-top:2px solid var(--color-secondary);border-bottom:2px solid var(--color-secondary);position:relative}.anniversary-feature .container{z-index:999;position:relative}.anniversary-header{margin-bottom:3rem}.anniversary-header .title{color:var(--color-secondary);text-shadow:0 0 20px #ffd10066;margin-bottom:.5rem;font-size:3.5rem}.anniversary-header .subtitle{text-transform:uppercase;letter-spacing:2px;opacity:.9;font-size:1.2rem}.main-events-grid{margin-bottom:4rem}.main-events-grid .highlight-info .desc{opacity:.8;margin-top:.5rem;font-size:.9rem;line-height:1.4}.mini-timeline{background:#ffffff0d;border:1px solid #ffd10033;border-radius:12px;padding:2rem}.mini-title{color:var(--color-secondary);margin-bottom:1.5rem;font-size:1.5rem}.mini-events{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}.mini-event{background:#0a192f99;border-radius:8px;flex-direction:column;flex:250px;align-items:flex-start;gap:.8rem;min-width:250px;padding:1.2rem 1.5rem;display:flex}.mini-event .time{background:var(--color-secondary);color:var(--color-primary);border-radius:20px;padding:.4rem .8rem;font-size:.9rem;font-weight:600}.mini-event .detail{font-size:.95rem;line-height:1.4}.mini-event .event-desc{opacity:.85;border-top:1px solid #ffffff1a;margin-top:.2rem;padding-top:.6rem;font-size:.85rem;line-height:1.4}.timeline-line{background:linear-gradient(to bottom, var(--color-secondary), var(--color-accent));border-radius:2px;width:3px;height:100%;position:absolute;top:0;left:20px}.timeline-event{justify-content:flex-start;width:100%;margin-bottom:1.5rem;padding-left:45px;display:flex;position:relative}.event-dot{background-color:var(--color-light);border:3px solid var(--color-accent);z-index:2;border-radius:50%;width:16px;height:16px;position:absolute;top:20px;left:20px;transform:translate(-50%);box-shadow:0 0 0 3px #00a8b533}.event-content{width:100%;padding:1.25rem;transition:all .4s;position:relative}.event-content:before{content:"";mix-blend-mode:multiply;opacity:0;pointer-events:none;z-index:0;background-image:url(/selectbg.svg);background-position:50%;background-size:100%;transition:opacity .6s cubic-bezier(.34,1.56,.64,1);position:absolute;inset:0}.event-content>*{z-index:2;position:relative}.timeline-event:hover .event-content:before{opacity:.35}.timeline-event:hover .event-content{transform:translateY(-5px);box-shadow:0 12px 30px #0000001a}.event-content .time{background:var(--color-accent);color:var(--color-light);border-radius:12px;margin-bottom:.75rem;padding:.2rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.event-header-row{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.price-badge{color:var(--secondary);text-transform:uppercase;background:#d4af3733;border:1px solid #d4af3766;border-radius:12px;padding:.2rem .6rem;font-size:.75rem;font-weight:700}.event-content h3{color:var(--color-primary);text-transform:capitalize;margin-bottom:.2rem;font-size:1.25rem}.event-content .location-txt{opacity:.8;text-transform:uppercase;letter-spacing:1px;margin-bottom:.8rem;font-size:.85rem;font-weight:500}.event-content .event-desc{opacity:.9;border-top:1px solid #0000000d;padding-top:.8rem;font-size:.95rem;line-height:1.5}.event-content p{color:#555;font-size:.9rem}.closing-message{text-align:center;justify-content:center;align-items:center;padding:8rem 1.5rem;display:flex;position:relative;overflow:hidden}.closing-bg{z-index:0;background-image:url(/images/web/A%20beautiful%20farewell%20filled%20with%20wine,%20acoustic%20jams,%20and%20fond%20memories.jpg);background-position:50%;background-size:cover;background-attachment:fixed;position:absolute;inset:0}.closing-bg .overlay{background:#002d4266;position:absolute;inset:0}.closing-content{z-index:2;max-width:600px;color:var(--color-primary);padding:3rem 2rem;position:relative}.closing-content h2{color:var(--color-primary);margin-bottom:1rem;font-size:2.5rem}.closing-content p{font-size:1.1rem;line-height:1.6}.footer{background:var(--color-primary);color:#ffffffb3;text-align:center;padding:2rem 0}.footer .logo{color:var(--color-secondary);margin-bottom:.5rem;font-size:1.5rem}@media (width>=992px){.container{max-width:1200px;padding:0 2rem}.section-padding{padding:6rem 0}.section-title{font-size:2.5rem}.hero-content .title{font-size:5rem}.hero-content .subtitle{font-size:1.2rem}.welcome-card{padding:4rem;font-size:1.2rem}.special-day-content{padding:4rem}.day-block{flex-direction:row;align-items:flex-start;gap:4rem;margin-bottom:6rem}.day-visual{flex-direction:column;width:40%;height:70vh;margin-bottom:0;display:flex;position:sticky;top:100px}.day-visual img{flex:1;min-height:200px}.day-events{width:60%}}.mini-event .time{min-width:130px}.mini-event .price-badge{margin-left:.5rem;padding:.1rem .4rem;font-size:.7rem}.hidden{display:none!important}#secret-trigger{-webkit-user-select:none;user-select:none;cursor:default}#game-overlay{z-index:10000;background:#f7f7f7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#game-canvas{cursor:pointer;touch-action:manipulation;background:0 0;border:none;width:100%;max-width:800px;height:300px}
