@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Great+Vibes&family=Playfair+Display:ital,wght@0,600;1,600&display=swap";@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--ink:#493b4d;--muted:#756878;--blue:#cff3fa;--mint:#cdf8df;--yellow:#fffbd0;--pink:#ffd8e8;--lavender:#f3d2f7;--plum:#8b4b96;--cream:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:DM Sans,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}.cover-screen{background:radial-gradient(circle at 15% 15%,#fffbd0 0 10%,#0000 32%),radial-gradient(circle at 85% 25%,#cff3fa 0 12%,#0000 34%),radial-gradient(circle at 50% 90%,#ffd8e8 0 14%,#0000 38%),linear-gradient(145deg,#fffdf8,#f3d2f7);place-items:center;min-height:100svh;padding:24px;display:grid;position:relative;overflow:hidden}.cover-screen:before,.cover-screen:after{content:"";filter:blur(2px);opacity:.6;border-radius:50%;width:260px;height:260px;position:absolute}.cover-screen:before{background:#cdf8df;bottom:-70px;left:-110px}.cover-screen:after{background:#cff3fa;top:-80px;right:-100px}.envelope{z-index:2;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffdb;border:1px solid #8b4b9629;border-radius:42px 42px 130px;width:min(620px,100%);padding:70px 60px;animation:.9s both rise;box-shadow:0 30px 90px #6f4a742e}.envelope:before{content:"✦";color:#d78eae;margin-bottom:18px;font-size:28px;display:block}.envelope h1{color:var(--plum);margin:12px 0 24px;font-family:Great Vibes,cursive;font-size:clamp(60px,11vw,96px);font-weight:400;line-height:.95}.envelope>p:not(.eyebrow){max-width:410px;margin:0 auto 30px;font-family:Playfair Display,serif;font-size:18px;font-style:italic;line-height:1.7}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#9a668f;margin:0 0 12px;font-size:12px;font-weight:700}.primary-button,.soft-button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:14px 24px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg,#a768b0,#d67ea0);box-shadow:0 10px 28px #9f599d47}.primary-button:hover,.soft-button:hover{transform:translateY(-2px)}.soft-button{color:var(--ink);background:#ffffffd6;border:1px solid #493b4d26}.floating-butterflies{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.floating-butterflies span{filter:saturate(.7);font-size:28px;animation:8s ease-in-out infinite flutter;position:absolute}.floating-butterflies span:first-child{animation-delay:-1s;top:18%;left:8%}.floating-butterflies span:nth-child(2){font-size:20px;animation-delay:-4s;top:12%;left:78%}.floating-butterflies span:nth-child(3){font-size:34px;animation-delay:-2s;top:72%;left:88%}.floating-butterflies span:nth-child(4){font-size:18px;animation-delay:-6s;top:76%;left:13%}.page-butterflies{z-index:20;position:fixed}.page-butterflies span:nth-child(5){font-size:16px;animation-delay:-5s;top:10%;left:48%}.page-butterflies span:nth-child(6){font-size:22px;animation-delay:-3s;top:82%;left:65%}.page-butterflies span:nth-child(7){font-size:14px;animation-delay:-7s;top:60%;left:34%}@keyframes flutter{0%,to{transform:translate(0)rotate(-8deg)}50%{transform:translate(28px,-36px)rotate(12deg)}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.site-shell{overflow:hidden}.hero{isolation:isolate;align-items:flex-end;min-height:100svh;padding:clamp(32px,7vw,90px);display:flex;position:relative}.hero-image{object-fit:cover;object-position:center 45%;z-index:-3;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{z-index:-2;background:linear-gradient(90deg,#331f38c7 0%,#331f3866 45%,#331f380d 75%),linear-gradient(#0000 50%,#2319287a);position:absolute;inset:0}.hero-copy{color:#fff;max-width:650px;padding-bottom:3vh}.hero-copy .eyebrow{color:#fffbd0}.hero-copy h1{margin:10px 0 20px;font-family:Playfair Display,serif;font-size:clamp(50px,7vw,86px);line-height:1.02}.hero-copy h1 span{color:#ffd8e8;font-family:Great Vibes,cursive;font-size:1.1em;font-weight:400;display:block}.hero-intro{color:#ffffffe6;max-width:560px;font-size:18px;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.scroll-hint{color:#fff;font-size:30px;text-decoration:none;animation:2s infinite bounce;position:absolute;bottom:28px;left:50%}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.section{padding:clamp(76px,10vw,140px) max(24px,50vw - 590px)}.section h2,footer h2{margin:8px 0 26px;font-family:Playfair Display,serif;font-size:clamp(38px,5vw,62px);line-height:1.1}.details-section{background:linear-gradient(135deg,#fffdf8 65%,#f3d2f7);grid-template-columns:minmax(300px,.82fr) 1.18fr;align-items:center;gap:clamp(42px,8vw,110px);display:grid}.portrait-frame{background:#fff;border-radius:180px 180px 40px 40px;padding:14px;position:relative;box-shadow:0 24px 70px #64426729}.portrait-frame img{aspect-ratio:4/5;object-fit:cover;border-radius:166px 166px 32px 32px;width:100%;display:block}.frame-butterfly{font-size:42px;position:absolute;top:22%;right:-14px;transform:rotate(14deg)}.detail-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.detail-grid>div{background:#fff;border:1px solid #493b4d17;border-radius:24px;padding:24px;box-shadow:0 9px 30px #493b4d0f}.detail-grid>div.wide{grid-column:1/-1}.detail-grid span{text-transform:uppercase;letter-spacing:.13em;color:#a17698;margin-bottom:8px;font-size:10px;display:block}.detail-grid strong{font-size:18px;line-height:1.5}.detail-grid small{color:var(--muted);font-weight:500}.inline-actions{flex-wrap:wrap;gap:24px;margin-top:24px;display:flex}.inline-actions a{color:var(--plum);text-underline-offset:5px;font-weight:700}.count-section{text-align:center;background:linear-gradient(135deg,#cdf8df,#cff3fa)}.count-section h2{max-width:780px;margin-left:auto;margin-right:auto}.countdown{grid-template-columns:repeat(4,1fr);gap:15px;max-width:760px;margin:40px auto 0;display:grid}.count-card{background:#ffffffc2;border-radius:28px;padding:30px 12px;box-shadow:0 12px 32px #41696914}.count-card strong{color:#7c5b87;font-family:Playfair Display,serif;font-size:clamp(40px,6vw,68px);display:block}.count-card span{text-transform:uppercase;letter-spacing:.13em;color:var(--muted);font-size:10px;font-weight:700}.attire-section{grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px;display:grid}.attire-copy p:last-child,.section-lead{color:var(--muted);font-size:17px;line-height:1.8}.palette{border-radius:36px;grid-template-columns:repeat(6,1fr);min-height:300px;display:grid;overflow:hidden;box-shadow:0 24px 70px #5b3d5d1f}.swatch{background:var(--swatch);justify-content:center;align-items:flex-end;padding:24px 8px;transition:flex .3s,filter .3s;display:flex}.swatch:hover{filter:saturate(1.2);flex:1.3}.swatch span{writing-mode:vertical-rl;letter-spacing:.08em;font-size:12px;font-weight:700;transform:rotate(180deg)}.gallery-section{text-align:center;background:#fff8fb}.gallery-stage{background:#fff;border-radius:42px;width:min(820px,100%);height:min(74vh,720px);margin:35px auto 0;padding:14px;position:relative;box-shadow:0 24px 70px #603a6629}.gallery-stage img{object-fit:contain;background:#f3e5ed;border-radius:30px;width:100%;height:100%}.gallery-arrow{width:48px;height:48px;color:var(--plum);cursor:pointer;background:#ffffffe6;border:0;border-radius:50%;font-size:34px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 24px #43284638}.gallery-arrow.previous{left:28px}.gallery-arrow.next{right:28px}.gallery-dots{justify-content:center;gap:10px;margin-top:24px;display:flex}.gallery-dots button{cursor:pointer;background:#d8c4d9;border:0;border-radius:50%;width:9px;height:9px}.gallery-dots button.active{background:#b070ae;border-radius:8px;width:28px}.bloom-moment{isolation:isolate;align-items:flex-end;min-height:min(72vw,780px);display:flex;position:relative;overflow:hidden}.bloom-moment>img{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.bloom-moment:after{content:"";z-index:-1;background:linear-gradient(#37223c0a 35%,#37223cc2);position:absolute;inset:0}.bloom-moment>div{color:#fff;text-align:center;width:min(760px,100% - 40px);margin:0 auto;padding:70px 20px}.bloom-moment .eyebrow{color:#fffbd0}.bloom-moment h2{color:#ffd8e8;margin:5px 0 12px;font-family:Great Vibes,cursive;font-size:clamp(64px,9vw,110px);font-weight:400;line-height:1}.bloom-moment p:last-child{margin:0;font-family:Playfair Display,serif;font-size:18px;line-height:1.7}.ceremony-section{text-align:center;background:linear-gradient(#fffdf8,#fffbd0 170%)}.section-lead{max-width:680px;margin:0 auto 42px}.ceremony-grid{text-align:left;grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.ceremony-card{background:#fff;border:0;border-radius:25px;overflow:hidden;box-shadow:0 9px 32px #4a354d12}.ceremony-card:last-child{grid-column:1/-1}.ceremony-card summary{cursor:pointer;align-items:center;gap:14px;padding:22px 24px;list-style:none;display:flex}.ceremony-card summary::-webkit-details-marker{display:none}.ceremony-card summary strong{font-family:Playfair Display,serif;font-size:22px}.ceremony-symbol{background:var(--card-color);border-radius:50%;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.plus{margin-left:auto;font-size:26px;transition:transform .2s}.ceremony-card[open] .plus{transform:rotate(45deg)}.ceremony-card ol{columns:2;color:var(--muted);margin:0;padding:0 30px 26px 70px;line-height:2}.ceremony-card.rose{--card-color:#ffd8e8}.ceremony-card.blue{--card-color:#cff3fa}.ceremony-card.yellow{--card-color:#fffbd0}.ceremony-card.mint{--card-color:#cdf8df}.ceremony-card.lavender{--card-color:#f3d2f7}.rsvp-section{background:linear-gradient(145deg,#f3d2f7,#cff3fa);grid-template-columns:.78fr 1.22fr;align-items:stretch;gap:0;display:grid}.rsvp-photo{border-radius:42px 0 0 42px;min-height:760px;overflow:hidden}.rsvp-photo img{object-fit:cover;width:100%;height:100%}.rsvp-panel{background:#ffffffeb;border-radius:0 42px 42px 0;padding:clamp(38px,6vw,76px);box-shadow:0 24px 70px #462f4a1f}.rsvp-panel h2{font-size:clamp(36px,4vw,54px)}form{gap:17px;margin-top:30px;display:grid}label{color:#6d5a70;gap:7px;font-size:13px;font-weight:700;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dfd3e0;border-radius:14px;outline:none;padding:13px 14px}input:focus,select:focus,textarea:focus{border-color:#a768b0;box-shadow:0 0 0 3px #a768b01f}textarea{resize:vertical}.submit-button{width:100%;margin-top:4px}.submit-button:disabled{opacity:.65;cursor:wait}.form-error{color:#9c374b;font-size:13px;line-height:1.5}.contact-note{text-align:center;color:var(--muted);margin:24px 0 0;font-size:13px;line-height:1.7}.contact-note a{color:var(--plum);font-size:18px;font-weight:700}.success-message{text-align:center;background:linear-gradient(135deg,#fffbd0,#cdf8df);border-radius:30px;margin-top:30px;padding:50px 20px}.success-message>span{font-size:56px}.success-message h3{margin:10px 0;font-family:Playfair Display,serif;font-size:30px}footer{text-align:center;color:#fff;background:#493b4d;padding:100px 24px}footer>span{font-size:46px}footer h2{color:#ffd8e8;margin-bottom:12px}footer p{color:#e7dce8}footer a{color:#fffbd0;text-underline-offset:5px;margin-top:24px;display:inline-block}footer small{color:#cbbdce;margin-top:28px;font-size:11px;display:block}.creator-credit{color:#cbbdce;letter-spacing:.04em;border-top:1px solid #ffffff21;width:fit-content;margin:24px auto 0;padding-top:20px;font-size:12px}.creator-credit a{color:#cff3fa;margin:0;font-weight:700;text-decoration:none}.creator-credit a:hover{text-underline-offset:4px;text-decoration:underline}.music-toggle{z-index:50;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#493b4de0;border:1px solid #ffffff8c;border-radius:999px;align-items:center;gap:9px;padding:10px 15px;font-size:12px;font-weight:700;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 30px #34213847}.music-toggle span{color:#7f4c87;background:#ffd8e8;border-radius:50%;place-items:center;width:29px;height:29px;font-size:17px;display:grid}.music-toggle.playing span{animation:1.8s ease-in-out infinite pulseMusic}@keyframes pulseMusic{50%{transform:scale(1.12);box-shadow:0 0 0 7px #ffd8e82b}}@media (width<=850px){.hero{align-items:flex-end;padding:90px 24px 72px}.hero-image{object-position:57% center}.hero-overlay{background:linear-gradient(#2f1e3414,#2f1e3461 32%,#2f1e34e0 100%)}.hero-copy h1{font-size:clamp(44px,12vw,68px)}.details-section,.attire-section,.rsvp-section{grid-template-columns:1fr}.portrait-frame{max-width:520px;margin:auto}.palette{min-height:230px}.rsvp-photo{border-radius:36px 36px 0 0;min-height:430px}.rsvp-photo img{object-position:center 24%}.rsvp-panel{border-radius:0 0 36px 36px}.ceremony-grid{grid-template-columns:1fr}.ceremony-card:last-child{grid-column:auto}}@media (width<=560px){.envelope{border-radius:34px 34px 90px;padding:58px 24px}.primary-button,.soft-button{width:100%}.countdown{grid-template-columns:repeat(2,1fr)}.count-card{padding:22px 8px}.detail-grid,.form-row{grid-template-columns:1fr}.palette{grid-template-columns:1fr;min-height:auto}.swatch{justify-content:flex-start;align-items:center;height:66px;padding:0 20px}.swatch span{writing-mode:initial;transform:none}.gallery-stage{border-radius:28px;height:68vh;padding:8px}.gallery-stage img{border-radius:21px}.gallery-arrow{width:42px;height:42px}.gallery-arrow.previous{left:14px}.gallery-arrow.next{right:14px}.ceremony-card ol{columns:1;padding-left:66px}.section{padding-left:20px;padding-right:20px}.rsvp-section{padding:70px 18px}.rsvp-panel{padding:34px 20px}.bloom-moment{min-height:72svh}.bloom-moment>img{object-position:55% center}.bloom-moment>div{padding:52px 18px}.bloom-moment h2{font-size:64px}.bloom-moment p:last-child{font-size:16px}}@media (width<=850px){.hero{background:#fff8fb;min-height:auto;padding:58svh 0 0;display:block}.hero-image{object-position:center center;height:58svh;top:0;bottom:auto}.hero-overlay{background:linear-gradient(#331f3808 45%,#331f3857 100%);height:58svh;top:0;bottom:auto}.hero-copy{max-width:none;color:var(--ink);text-align:center;background:linear-gradient(145deg,#fffdf8 0%,#fff1f8 52%,#f3e6fa 100%);padding:34px 22px 72px}.hero-copy .eyebrow{color:#9a668f;margin-bottom:14px}.hero-copy h1{max-width:600px;margin:0 auto 18px;font-size:clamp(39px,10.5vw,56px);line-height:1.02}.hero-copy h1 span{color:var(--plum);margin-bottom:5px;font-size:1.08em}.hero-intro{max-width:520px;color:var(--muted);margin:0 auto;font-size:16px;line-height:1.65}.hero-actions{grid-template-columns:1fr 1fr;gap:10px;max-width:520px;margin:25px auto 0;display:grid}.hero-actions .soft-button{background:#fff}.scroll-hint{display:none}}@media (width<=430px){.hero{padding-top:55svh}.hero-image,.hero-overlay{height:55svh}.hero-copy{padding:30px 18px 68px}.hero-copy h1{font-size:clamp(37px,10.5vw,46px)}.hero-actions{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.program-section{text-align:center;background:radial-gradient(circle at 10% 15%,#cff3facc,#0000 24%),radial-gradient(circle at 88% 80%,#f3d2f7bf,#0000 26%),#fffdf8}.flight-path{text-align:left;max-width:900px;margin:48px auto 0;position:relative}.flight-path:before{content:"";border-left:2px dashed #d4add5;position:absolute;top:25px;bottom:25px;left:31px}.flight-stop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7;border-radius:26px;grid-template-columns:64px 1fr;align-items:start;gap:22px;margin:0 0 20px;padding:18px 24px 18px 0;display:grid;position:relative;box-shadow:0 12px 34px #553d5912}.flight-stop>span{z-index:1;width:64px;height:64px;color:var(--plum);background:linear-gradient(135deg,#ffd8e8,#f3d2f7);border-radius:50%;place-items:center;font-family:Playfair Display,serif;font-weight:700;display:grid;box-shadow:0 0 0 7px #fffdf8}.flight-stop h3{margin:2px 0 5px;font-family:Playfair Display,serif;font-size:24px}.flight-stop p{color:var(--muted);margin:0;line-height:1.6}.wish-section{text-align:center;background:linear-gradient(145deg,#fff8fb,#f7fcff)}.wish-cloud{grid-template-columns:repeat(3,1fr);align-items:start;gap:18px;display:grid}.wish-card{text-align:left;border-radius:30px 30px 30px 8px;margin:0;padding:28px;transition:transform .25s;box-shadow:0 14px 38px #4e385214}.wish-card:hover{transform:translateY(-5px)rotate(-.5deg)}.wish-card>span{color:#af71a9;font-family:Playfair Display,serif;font-size:54px;line-height:.5}.wish-card p{font-family:Playfair Display,serif;font-size:18px;font-style:italic;line-height:1.6}.wish-card cite{color:var(--plum);font-size:12px;font-style:normal;font-weight:700}.wish-tone-0{background:#fffbd0}.wish-tone-1{background:#cdf8df}.wish-tone-2{background:#cff3fa}.wish-tone-3{background:#ffd8e8}.wish-tone-4{background:#f3d2f7}.empty-wishes{background:#fff;border:1px dashed #d5b8d6;border-radius:32px;grid-column:1/-1;padding:58px 24px}.empty-wishes>span{font-size:45px}.empty-wishes h3{margin:12px 0 5px;font-family:Playfair Display,serif;font-size:26px}.empty-wishes p{color:var(--muted)}.success-actions{justify-content:center;gap:10px;margin-top:22px;display:flex}.success-actions a{color:var(--plum);background:#fff;border-radius:999px;padding:11px 16px;font-size:13px;font-weight:700;text-decoration:none}.share-section{background:linear-gradient(135deg,#fffbd0,#fff8fb);grid-template-columns:1fr auto;align-items:center;gap:70px;display:grid}.share-section>div:first-child{max-width:650px}.share-section p:not(.eyebrow){color:var(--muted);line-height:1.7}.share-section .soft-button{margin-top:14px}.qr-frame{text-align:center;background:#fff;border-radius:28px;padding:18px;box-shadow:0 20px 55px #543e5721}.qr-frame img{width:210px;height:210px;display:block}.qr-frame small{color:var(--plum);margin-top:9px;font-weight:700;display:block}.hunt-counter{z-index:49;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border-radius:999px;align-items:center;gap:5px;padding:9px 13px;font-size:12px;display:flex;position:fixed;bottom:18px;left:18px;box-shadow:0 9px 28px #432c472e}.hunt-counter span{font-size:18px}.hunt-counter small{color:var(--muted)}.hunt-butterfly{z-index:21;cursor:pointer;filter:hue-rotate(22deg)saturate(.85);background:0 0;border:0;font-size:25px;transition:opacity .35s,transform .35s;animation:6s ease-in-out infinite flutter;position:absolute}.hunt-butterfly:hover{transform:scale(1.25)}.hunt-butterfly.found{opacity:0;pointer-events:none;transform:scale(1.8)}.hunt-1{top:118vh;left:7%}.hunt-2{top:248vh;right:8%}.hunt-3{top:386vh;left:12%}.hunt-4{top:505vh;right:12%}.hunt-5{top:660vh;left:6%}.hunt-6{top:800vh;right:7%}.hunt-7{top:925vh;left:11%}.game-win{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#3c2a409e;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.game-win-card{text-align:center;background:linear-gradient(145deg,#fffdf8,#f3d2f7);border-radius:40px;width:min(520px,100%);padding:54px 35px;animation:.5s both rise;box-shadow:0 30px 100px #1f142259}.game-win-card>span{font-size:62px}.game-win-card h2{margin:8px 0 12px;font-family:Playfair Display,serif;font-size:36px}.game-win-card p:not(.eyebrow){color:var(--muted)}.game-win-card .primary-button{margin-top:15px}.confetti{text-align:center;letter-spacing:1em;font-size:34px;animation:1.6s ease-in-out infinite bounce;position:absolute;inset:8% 0 auto}@media (width<=850px){.share-section{grid-template-columns:1fr}.wish-cloud{grid-template-columns:1fr 1fr}.qr-frame{justify-self:center}.hunt-counter{bottom:78px}.hunt-butterfly{font-size:29px}}@media (width<=560px){.wish-cloud{grid-template-columns:1fr}.success-actions{flex-direction:column}.flight-stop{grid-template-columns:52px 1fr;padding-right:14px}.flight-stop>span{width:52px;height:52px}.flight-path:before{left:25px}.share-section{text-align:center;gap:34px}.qr-frame img{width:190px;height:190px}.hunt-counter small{display:none}.hunt-counter{padding:8px 10px;left:10px}}
