@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap";.nicole-page{--cream:#f6e6d3;--pink:#e8a0d4;--purple:#a96ac6;min-height:100svh;color:var(--cream);background:radial-gradient(at 50% 8%,#42264d 0%,#1e152b 40%,#0b0a11 85%);padding:36px 16px 80px;font-family:DM Sans,sans-serif;position:relative;overflow:hidden}.nicole-page *{box-sizing:border-box}.nicole-page:before{content:"";pointer-events:none;opacity:.16;background-image:radial-gradient(#e9caee 1px,#0000 1px);background-size:61px 79px;position:absolute;inset:0}.floating-stars{text-align:center;letter-spacing:3rem;color:#f2b9e1;opacity:.5;width:100%;position:absolute;top:8px;left:0}.invitation-shell{background:linear-gradient(145deg,#342239,#160f25 40%,#291b33);border:1px solid #7e497c;border-radius:150px 150px 12px 12px;max-width:680px;margin:auto;padding:10px;position:relative;box-shadow:0 0 0 5px #140c1c,0 0 0 7px #714277,0 25px 100px #000b}.invitation-inner{text-align:center;background:radial-gradient(at 50% 18%,#422c5a 0%,#231832 39%,#100e1b 100%);border:1px solid #986b97;border-radius:141px 141px 5px 5px;padding:62px 33px 30px;position:relative;overflow:hidden}.invitation-inner:before{content:"";pointer-events:none;border:1px solid #67476b;border-radius:130px 130px 0 0;position:absolute;inset:10px}.corner-web{z-index:3;opacity:.6;font-size:65px;position:absolute;top:52px}.web-left{left:12px}.web-right{right:12px;transform:scaleX(-1)}.top-ribbon{letter-spacing:.06em;color:#251425;clip-path:polygon(0 0,100% 0,96% 50%,100% 100%,0 100%,4% 50%);background:linear-gradient(90deg,#b17caa,#f6dfcb,#b17caa);max-width:445px;margin:0 auto 14px;padding:15px 8px;font:700 clamp(12px,3vw,19px) Cinzel,serif;transform:rotate(-2deg);box-shadow:0 9px 30px #0008}.night-icons{color:#cda9eb;justify-content:space-between;align-items:center;max-width:230px;margin:10px auto 6px;font-size:32px;display:flex}.night-icons span:first-child{transform:rotate(-15deg)}.night-icons span:last-child{transform:rotate(12deg)}.invitation-eyebrow{letter-spacing:.24em;text-transform:uppercase;color:#d8bbd3;margin:10px 0;font:500 clamp(10px,2.8vw,13px) Cinzel,serif}.nicole-page h1{text-shadow:0 4px 18px #000;margin:0;font-family:Cinzel,serif;line-height:1.03}.nicole-page h1 span{letter-spacing:.05em;font-size:clamp(25px,6vw,46px);font-weight:600;display:block}.nicole-page h1 strong{letter-spacing:.015em;color:#0000;background:linear-gradient(175deg,#fff4e3 10%,#edc1e7 38%,#a967c3 78%,#f5cce9);-webkit-background-clip:text;background-clip:text;margin-top:10px;font-size:clamp(49px,13vw,99px);line-height:1.12;display:block}.ornament{color:#ba78b9;margin:9px auto 21px;font-size:18px}.invitation-intro{max-width:430px;margin:0 auto 12px;font-size:clamp(14px,3.4vw,17px);line-height:1.7}.invitation-intro em{color:#f1a5d9;font-style:normal;font-weight:700}.illustration{isolation:isolate;background:radial-gradient(circle at 52% 44%,#7c658e66,#0000 42%),linear-gradient(#0000 0%,#362a51 40%,#161622 93%);border-bottom:1px solid #7f5a7d;height:clamp(220px,58vw,335px);margin:14px -30px 27px;position:relative;overflow:hidden}.illustration-moon{aspect-ratio:1;background:radial-gradient(circle at 38% 34%,#fff2ed,#d9cce3 74%,#8d8aa9);border-radius:50%;width:clamp(95px,25vw,150px);position:absolute;top:11%;left:13%;box-shadow:0 0 50px 16px #c9a7e955}.illustration-bats{font-size:48px;position:absolute;top:13%;left:47%;transform:rotate(-20deg)}.castle{filter:drop-shadow(0 5px 14px #000a);width:59%;height:72%;position:absolute;bottom:10%;left:25%}.castle-main{background:linear-gradient(90deg,#151423,#403452 47%,#191726);border:2px solid #0b0c15;width:56%;height:63%;position:absolute;bottom:0;left:22%}.castle-main:before{content:"";clip-path:polygon(0 100%,50% 0,100% 100%);background:#222034;width:120%;height:48%;position:absolute;bottom:100%;left:-10%}.castle-wing{background:#29253a;border:2px solid #0f0b1a;width:33%;height:45%;position:absolute;bottom:0}.wing-left{left:0}.wing-right{right:0}.castle-wing:before{content:"";clip-path:polygon(0 100%,50% 0,100% 100%);background:#202033;width:116%;height:65%;position:absolute;bottom:100%;left:-8%}.castle-tower{z-index:2;background:#282238;border:2px solid #12101c;width:17%;height:89%;position:absolute;bottom:0}.tower-left{left:6%}.tower-right{height:100%;right:5%}.castle-tower:before{content:"";clip-path:polygon(0 100%,50% 0,100% 100%);background:#171628;width:152%;height:37%;position:absolute;bottom:100%;left:-26%}.castle i{background:#ffcb80;border-radius:14px 14px 0 0;width:14px;height:31px;display:block;position:absolute;top:37%;left:40%;box-shadow:0 0 18px #ffbc6ba9}.castle-main i:nth-child(2){left:73%}.castle-door{background:#120d1c;border:2px solid #69516c;border-radius:30px 30px 0 0;width:24%;height:35%;position:absolute;bottom:0;left:41%}.illustration-ground{background:radial-gradient(at top,#604d76 10%,#171522 72%);width:100%;height:18%;position:absolute;bottom:0}.scene-pumpkin{filter:drop-shadow(0 0 12px #e8824388);font-size:clamp(35px,9vw,61px);position:absolute;bottom:1%}.pumpkin-left{left:5%}.pumpkin-right{right:5%}.scene-cat{font-size:clamp(35px,8vw,57px);position:absolute;bottom:5%;left:18%}.illustration-trees{color:#171320;font-size:120px;position:absolute;bottom:15%}.left-tree{left:-8%}.right-tree{right:-8%}.event-card,.countdown-card{background:linear-gradient(135deg,#2e2038e9,#17121fe9);border:1px solid #a06e9c;border-radius:7px;margin-bottom:25px;padding:28px 27px;position:relative;box-shadow:inset 0 0 0 4px #18101e,0 15px 36px #0005}.event-heading,.countdown-heading{color:#e9bddf;justify-content:center;align-items:center;gap:10px;margin:0 0 25px;font:700 clamp(15px,3.8vw,22px) Cinzel,serif;display:flex}.event-line{text-align:left;border-bottom:1px solid #88628752;align-items:flex-start;gap:17px;padding:16px 0;display:flex}.event-line:last-of-type{border:0}.event-line>svg{color:#e6a1d5;flex-shrink:0;width:23px;height:23px;margin-top:4px}.event-line div{flex-direction:column;gap:5px;display:flex}.event-line small{letter-spacing:.17em;color:#eb9dcc;font:700 11px Cinzel,serif}.event-line strong{font-size:clamp(15px,3.7vw,18px);font-weight:600;line-height:1.35}.event-line span{color:#d0bdd6;font-size:13px;line-height:1.45}.invitation-button{letter-spacing:.02em;border-radius:5px;justify-content:center;align-items:center;gap:10px;max-width:100%;min-height:58px;padding:14px 12px;font:700 clamp(12px,3.2vw,15px) Cinzel,serif;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex}.invitation-button:hover{transform:translateY(-3px)}.outline-button{color:#f1d7e9;background:#38203c;border:1px solid #c992ba;margin-top:23px}.primary-button{color:#27132b;background:linear-gradient(120deg,#c486bc,#f5cfe6,#b175bb);border:1px solid #fae4f3;box-shadow:0 6px 30px #9a45844d}.countdown-card{padding:26px 18px}.countdown-heading{margin-bottom:23px}.countdown-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.countdown-cell{outline-offset:-5px;background:#1b1425;border:1px solid #87568e;outline:1px solid #3f2a4b;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;padding:18px 2px;display:flex}.countdown-cell strong{color:#ffe9ef;font-variant-numeric:tabular-nums;font:600 clamp(20px,6vw,40px) Cinzel,serif}.countdown-cell span{color:#d5b6d8;font:600 clamp(9px,2.2vw,12px) Cinzel,serif}.countdown-card p{color:#cdb9d0;margin:20px 0 0;font-size:12px;line-height:1.6}.rsvp-section{padding:15px 5px 25px}.rsvp-section>svg{color:#d6a3cc}.rsvp-section h2{color:#f6dbea;margin:13px 0;font:700 clamp(21px,5vw,30px) Cinzel,serif}.rsvp-section p{color:#d7c7d8;max-width:360px;margin:0 auto 22px;font-size:15px;line-height:1.65}.invitation-footer{color:#dfb7d5;border-top:1px solid #6b4a70;padding-top:28px;font:400 12px/1.7 Cinzel,serif}.invitation-footer b{font-weight:700}@media (width<=500px){.nicole-page{padding:17px 10px 50px}.invitation-shell{border-radius:100px 100px 9px 9px;padding:6px}.invitation-inner{border-radius:94px 94px 3px 3px;padding:49px 17px 22px}.invitation-inner:before{border-radius:89px 89px 0 0;inset:6px}.corner-web{font-size:38px;top:28px}.top-ribbon{max-width:90%;padding:11px 6px}.night-icons{margin-top:5px}.illustration{margin-left:-15px;margin-right:-15px}.event-card{padding:22px 18px}.event-line{gap:12px}.event-heading{gap:5px}.countdown-cell{padding:14px 1px}.invitation-button{min-height:58px}}@media (prefers-reduced-motion:no-preference){.night-icons span:first-child,.night-icons span:last-child{animation:5s ease-in-out infinite alternate bat-flap}.illustration-moon{animation:6s ease-in-out infinite alternate moonlight}@keyframes bat-flap{to{transform:translateY(-8px)rotate(8deg)}}@keyframes moonlight{to{box-shadow:0 0 65px 23px #c9a7e977}}}@media (prefers-reduced-motion:reduce){.invitation-button{transition:none}}.nicole-hero{border-radius:140px 140px 0 0;width:calc(100% + 66px);margin:-62px -33px 22px;position:relative;overflow:hidden}.nicole-hero img{object-fit:contain;width:100%;max-width:100%;height:auto;display:block}@media (width<=500px){.nicole-hero{border-radius:94px 94px 0 0;width:calc(100% + 34px);margin:-49px -17px 20px}}.nicole-hero,.nicole-hero img{border-radius:38px}@media (width<=500px){.nicole-hero,.nicole-hero img{border-radius:26px}}.nicole-intro{z-index:9999;background:#08050c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.nicole-intro-video{object-fit:contain;background:#08050c;width:100%;height:100%;display:block}.nicole-intro-actions{padding:24px 18px max(52px,env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;gap:14px;display:flex;position:absolute;inset:0}.nicole-intro-button{pointer-events:auto;appearance:none;color:#25132a;letter-spacing:.04em;cursor:pointer;background:linear-gradient(125deg,#d29bd0,#f4d9e7,#b981c8);border:1px solid #e9c5e7;border-radius:999px;max-width:90vw;min-height:58px;padding:18px 29px;font-family:Cinzel,Georgia,serif;font-size:clamp(14px,3.8vw,18px);font-weight:800;box-shadow:0 8px 40px #000c}.nicole-intro-button:focus-visible{outline-offset:4px;outline:3px solid #fff}.nicole-intro-error{color:#fff;text-align:center;text-shadow:0 2px 6px #000;pointer-events:none;max-width:300px;font-size:13px}.melopictures-credit{border-top:1px solid #725078;flex-direction:column;align-items:center;gap:9px;margin-top:25px;padding-top:23px;line-height:1.5;display:flex}.melopictures-credit p{color:#d8c2d6;margin:0;font-family:DM Sans,sans-serif;font-size:12px}.melopictures-credit strong{color:#f6d8eb;font-weight:700}.melopictures-credit a{color:#eac1df;text-underline-offset:3px;justify-content:center;align-items:center;gap:6px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;text-decoration:underline;display:inline-flex}.melopictures-credit a.melopictures-quote{color:#f8e7f4;background:#432746;border:1px solid #ad79a8;border-radius:8px;width:min(100%,310px);min-height:45px;margin-top:8px;padding:11px 14px;text-decoration:none;transition:background .2s}.melopictures-credit a.melopictures-quote:hover{background:#5c3561}.nicole-intro{background:#201329;width:100vw;height:100dvh;overflow:hidden}.nicole-intro-backdrop{filter:blur(26px)brightness(.46);pointer-events:none;background:url(/nicole%20frame%201.jpg) 50%/cover no-repeat;position:absolute;inset:-24px;transform:scale(1.1)}.nicole-intro-cover{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:100%;height:100%;padding:0;display:flex;position:absolute;inset:0;overflow:hidden}.nicole-intro-cover img{object-fit:contain;object-position:center;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.nicole-intro-cover .nicole-intro-button{bottom:max(7%,env(safe-area-inset-bottom));z-index:2;white-space:nowrap;pointer-events:none;position:absolute;left:50%;transform:translate(-50%)}.nicole-intro-video{object-fit:contain;opacity:0;visibility:hidden;pointer-events:none;background:0 0;width:100%;height:100%;display:block;position:absolute;inset:0}.nicole-intro-video.is-playing{opacity:1;visibility:visible}.nicole-intro-error{z-index:5;width:90%;position:absolute;bottom:2%;left:50%;transform:translate(-50%)}@media (width<=500px){.nicole-intro-cover .nicole-intro-button{bottom:max(9%,env(safe-area-inset-bottom))}}
