:root{--ivory: #fff7ef;--ivory-2: #fbefe2;--maroon: #7b1e3a;--maroon-deep: #5a1128;--gold: #c9a24b;--gold-light: #ead9ac;--blush: #f3c9c6;--charcoal: #2a1b20;--surface: #ffffff;--surface-glass: rgba(255, 255, 255, .72);--text: #2a1b20;--text-muted: #7a6a63;--border: rgba(123, 30, 58, .16);--success: #2e7d5b;--danger: #b23a48;--radius: 16px;--radius-sm: 10px;--shadow: 0 10px 30px rgba(90, 17, 40, .1);--shadow-lg: 0 18px 50px rgba(90, 17, 40, .16);--font-heading: "Playfair Display", Georgia, serif;--font-body: "Poppins", system-ui, -apple-system, sans-serif;--header-h: 60px;--sticky-cta-h: 64px;--ease: cubic-bezier(.22, .9, .32, 1.1)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);color:var(--text);background:linear-gradient(180deg,var(--ivory) 0%,var(--ivory-2) 100%);min-height:100dvh;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-heading);margin:0 0 .5rem;line-height:1.2}h1{font-size:clamp(1.7rem,5vw,2.8rem)}h2{font-size:clamp(1.4rem,4vw,2rem)}p{line-height:1.6}a{color:var(--maroon);text-decoration:none}img{max-width:100%;display:block}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;width:100%;padding:.7rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.75rem 1.4rem;border:none;border-radius:999px;font-weight:600;background:var(--maroon);color:#fff;transition:transform .15s var(--ease),background .2s,box-shadow .2s;min-height:44px}.btn:hover{background:var(--maroon-deep);transform:translateY(-2px);box-shadow:var(--shadow)}.btn:active{transform:translateY(1px);box-shadow:none}.btn .btn-arrow{transition:transform .2s var(--ease)}.btn:hover .btn-arrow{transform:translate(3px)}.btn.outline{background:transparent;color:var(--maroon);border:1.5px solid var(--maroon)}.btn.gold{background:var(--gold);color:var(--maroon-deep)}.btn.block{width:100%}.btn.sm{padding:.45rem .9rem;min-height:36px;font-size:.9rem}.btn:disabled{opacity:.55;cursor:not-allowed}.shell{min-height:100dvh;display:flex;flex-direction:column}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 clamp(1rem,4vw,2rem)}.site-header{position:sticky;top:0;z-index:40;height:var(--header-h);display:flex;align-items:center;background:var(--surface-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);transition:box-shadow .25s var(--ease),background .25s var(--ease)}.site-header.scrolled{background:var(--surface);box-shadow:var(--shadow)}.site-header .container{display:flex;align-items:center;justify-content:space-between}.brand{font-family:var(--font-heading);font-size:1.4rem;color:var(--maroon);font-weight:700}.header-nav{display:none;gap:1.25rem;align-items:center}.header-nav a{color:var(--text);font-weight:500}.header-nav a.active{color:var(--maroon)}.header-actions{display:flex;gap:.5rem;align-items:center}.lang-toggle{background:transparent;border:1px solid var(--border);border-radius:999px;padding:.35rem .7rem;color:var(--maroon);font-weight:600}.hamburger{background:none;border:none;font-size:1.5rem;color:var(--maroon);padding:.25rem}.main{flex:1;padding-bottom:calc(var(--sticky-cta-h) + env(safe-area-inset-bottom))}@media(min-width:900px){.main{padding-bottom:0}}.wizard-page{display:flex;flex-direction:column;min-height:calc(100dvh - var(--header-h));padding:clamp(1rem,3vw,2rem) 0 1.25rem}.wizard-head{flex:0 0 auto}.wizard-body{flex:1 1 auto;display:flex;margin-top:1rem}.wizard-card{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;padding:0;overflow:hidden}.wizard-card-scroll{flex:1 1 auto;overflow-y:auto;padding:clamp(1.25rem,3vw,2rem)}.wizard-footer{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:.7rem;padding:1rem clamp(1.25rem,3vw,2rem);border-top:1px solid var(--border, #eadfce);background:var(--surface, #fff)}@media(max-width:899px){.wizard-page{min-height:calc(100dvh - var(--header-h) - var(--sticky-cta-h))}}.site-footer{background:var(--maroon-deep);color:#f0dfd5;padding:2rem 0 calc(2rem + env(safe-area-inset-bottom));font-size:.9rem}.site-footer a{color:var(--gold-light)}.footer-cols{display:grid;grid-template-columns:1fr;gap:1.25rem}.drawer-nav{position:fixed;top:0;right:20%;bottom:0;left:0;max-width:320px;background:var(--maroon-deep);color:#f0dfd5;transform:translate(-100%);transition:transform .22s var(--ease);z-index:60;padding:1.25rem;display:flex;flex-direction:column;gap:.25rem}.drawer-nav.open{transform:translate(0)}.drawer-nav a{color:#f0dfd5;padding:.7rem .5rem;border-radius:8px;transition:background .15s var(--ease),transform .15s var(--ease)}.drawer-nav a:hover{background:#ffffff14;transform:translate(3px)}.drawer-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#2a1b2066;z-index:55;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s var(--ease),visibility 0s linear .22s}.drawer-mask.show{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s var(--ease)}.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:45;padding:.6rem clamp(1rem,4vw,1.5rem) calc(.6rem + env(safe-area-inset-bottom));background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);display:flex;gap:.6rem;align-items:center;transition:transform .25s var(--ease)}.sticky-cta.hidden{transform:translateY(120%)}.sticky-cta .btn{flex:1}.sticky-cta .secondary{color:var(--maroon);font-weight:600;white-space:nowrap}@media(min-width:900px){.sticky-cta{display:none}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1rem,3vw,1.4rem);transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--gold-light)}.card.accent{border-top:3px solid var(--gold)}.grid{display:grid;gap:clamp(.9rem,2.5vw,1.4rem)}.grid.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.section{padding:clamp(2.5rem,8vw,5rem) 0}.section.tint{background:var(--surface)}.section.gradient{background:linear-gradient(180deg,var(--ivory),var(--surface))}.section h2{text-align:center}.section .lead{text-align:center;color:var(--text-muted);max-width:620px;margin:0 auto 2rem}.section-divider{display:flex;align-items:center;justify-content:center;gap:.9rem;max-width:420px;margin:0 auto;padding:0 1rem;color:var(--gold)}.section-divider:before,.section-divider:after{content:"";flex:1;height:1px;background-size:200% 100%;animation:shimmer 4s linear infinite}.section-divider:before{background-image:linear-gradient(90deg,transparent,var(--gold-light) 60%,var(--gold))}.section-divider:after{background-image:linear-gradient(90deg,var(--gold),var(--gold-light) 40%,transparent)}.section-divider span{font-size:.75rem;transform:rotate(45deg);animation:floatSoft 5s ease-in-out infinite}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease);will-change:opacity,transform}.reveal.reveal-left{transform:translate(-24px)}.reveal.reveal-right{transform:translate(24px)}.reveal.reveal-scale{transform:scale(.96)}.reveal.is-visible{opacity:1;transform:none}.icon-list{list-style:none;margin:1.25rem 0;padding:0}.icon-list li{display:flex;gap:.85rem;align-items:flex-start;padding:.7rem 0;border-bottom:1px solid var(--border);line-height:1.7}.icon-list li:last-child{border-bottom:none}.icon-list .icon-list-mark{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--ivory-2);border:1px solid var(--border);font-size:1rem}.legal-updated{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 1.25rem}.legal-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.4rem;margin:1rem 0;box-shadow:var(--shadow)}.legal-section h3{display:flex;align-items:baseline;gap:.6rem;color:var(--maroon);margin-top:0}.legal-section .legal-n{font-family:var(--font-heading);color:var(--gold);font-size:.85rem;font-weight:700}.legal-section>p:last-child,.legal-section ul:last-child{margin-bottom:0}.legal-section a{text-decoration:underline}.contact-card{background:var(--ivory-2);border-inline-start:4px solid var(--gold);border-radius:var(--radius-sm);padding:.9rem 1.1rem}.callout{margin:1.5rem 0;padding:1rem 1.15rem;border-inline-start:4px solid var(--gold);background:var(--ivory-2);border-radius:var(--radius-sm);color:var(--text);line-height:1.75;font-size:.92rem}.hiw-timeline{list-style:none;margin:0;padding:0 0 0 4px;position:relative}.hiw-timeline:before{content:"";position:absolute;left:32px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,var(--gold-light),var(--gold),var(--gold-light))}@media(min-width:760px){.hiw-timeline:before{left:50%;transform:translate(-1px)}}.hiw-step{position:relative;display:grid;grid-template-columns:56px 1fr;gap:1.1rem;align-items:center;margin:1.5rem 0}.hiw-art{grid-column:1;width:56px;height:56px;border-radius:50%;overflow:hidden;border:2px solid var(--gold);background:var(--surface);box-shadow:var(--shadow);z-index:1}.hiw-art .step-art{width:100%;height:100%}.hiw-text{grid-column:2}.hiw-text .hiw-n{font-family:var(--font-heading);color:var(--gold);font-weight:700;font-size:.9rem}.hiw-text h3{margin:.15rem 0 .4rem;color:var(--maroon)}.hiw-text p{color:var(--text-muted);line-height:1.75;margin:0 0 .7rem}@media(min-width:760px){.hiw-step{grid-template-columns:1fr 72px 1fr;gap:1.5rem}.hiw-art{grid-column:2;width:72px;height:72px}.hiw-step:nth-child(odd) .hiw-text{grid-column:1;text-align:right}.hiw-step:nth-child(odd) .hiw-art{grid-column:2}.hiw-step:nth-child(2n) .hiw-text{grid-column:3}}.sa-pulse{animation:saPulse 2s ease-in-out infinite;transform-origin:60px 46px}@keyframes saPulse{0%,to{r:6;opacity:1}50%{r:9;opacity:.55}}.step-art .sa-bar{transform-origin:left center;animation:saGrow 2.4s ease-in-out infinite}.step-art .sa-bar2{animation-delay:.2s}.step-art .sa-bar3{animation-delay:.4s}.step-art .sa-bar4{animation-delay:.6s}@keyframes saGrow{0%,to{transform:scaleX(.3)}50%{transform:scaleX(2.4)}}.sa-check{stroke-dasharray:40;stroke-dashoffset:40;animation:saDraw 2.6s ease-in-out infinite}@keyframes saDraw{0%,20%{stroke-dashoffset:40}55%,80%{stroke-dashoffset:0}to{stroke-dashoffset:40}}.sa-scan{animation:saScan 3s ease-in-out infinite;transform-origin:center}@keyframes saScan{0%,to{transform:translate(-14px,-4px)}50%{transform:translate(2px)}}.sa-heart{transform-origin:60px 55px;animation:saBeat 1.6s ease-in-out infinite}@keyframes saBeat{0%,to{transform:scale(1)}15%{transform:scale(1.14)}30%{transform:scale(1)}}.sa-spark{animation:saTwinkle 2s ease-in-out infinite}.sa-spark-b{animation-delay:.6s}@keyframes saTwinkle{0%,to{opacity:.2}50%{opacity:1}}.sa-bubble{transform-origin:center;animation:saPop 3s ease-in-out infinite}.sa-bubble-r{animation-delay:.5s}@keyframes saPop{0%,20%{transform:scale(.6);opacity:0}40%,80%{transform:scale(1);opacity:1}to{transform:scale(.6);opacity:0}}.feature-card{display:flex;flex-direction:column;gap:.35rem}.feature-card .feature-icon{font-size:1.7rem;line-height:1}.feature-card b{font-family:var(--font-heading);color:var(--maroon);font-size:1.02rem}.stats-band{background:linear-gradient(135deg,var(--maroon),var(--maroon-deep));color:var(--ivory);padding:clamp(1.75rem,5vw,2.75rem) 0}.stats-band-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;text-align:center}@media(min-width:720px){.stats-band-row{grid-template-columns:repeat(4,1fr)}}.stats-band .stat-item b{display:block;font-family:var(--font-heading);font-size:clamp(1.5rem,4vw,2.1rem);color:var(--gold-light)}.stats-band .stat-item span{font-size:.85rem;opacity:.9}.community-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.community-links.center{justify-content:center}.community-links .pill{background:var(--surface);border-color:var(--border);padding:.4rem .9rem;transition:background .15s var(--ease),border-color .15s var(--ease),transform .15s var(--ease)}.community-links .pill:hover{background:var(--gold-light);border-color:var(--gold);transform:translateY(-2px)}.faq-group{margin-bottom:1.75rem}.faq-group h3{color:var(--maroon)}.faq-item{border-bottom:1px solid var(--border)}.faq-q{width:100%;background:none;border:none;text-align:left;padding:.95rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-weight:600;color:var(--text);font-family:var(--font-body)}.faq-chev{transition:transform .2s var(--ease);color:var(--maroon);flex:0 0 auto}.faq-item.open .faq-chev{transform:rotate(180deg)}.faq-a{overflow:hidden;max-height:0;transition:max-height .25s var(--ease)}.faq-item.open .faq-a{max-height:320px}.faq-a p{margin:0 0 1rem;color:var(--text-muted);line-height:1.8}.rashi-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))}.rashi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem .75rem;display:flex;flex-direction:column;align-items:center;gap:.2rem;font-family:var(--font-body);transition:transform .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease)}.rashi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.rashi-card.selected{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-light)}.rashi-card .rashi-symbol{font-size:1.6rem;color:var(--maroon)}.rashi-card b{font-size:.9rem}.rashi-card .rashi-hi{font-size:.8rem;color:var(--text-muted)}.horo-daily .horo-facts{display:flex;flex-wrap:wrap;gap:1.25rem}.horo-daily .horo-facts span{display:flex;flex-direction:column;font-size:.78rem;color:var(--text-muted)}.horo-daily .horo-facts b{font-family:var(--font-heading);font-size:1.1rem;color:var(--maroon)}.horo-finder-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.horo-result{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.horo-result b{color:var(--maroon);font-family:var(--font-heading);font-size:1.1rem}.story-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.story-card{display:flex;flex-direction:column;gap:.35rem}.story-card .couple-art{width:100%;height:auto;border-radius:12px;box-shadow:var(--shadow);margin-bottom:.6rem}.story-card .story-stars{color:var(--gold);letter-spacing:2px;font-size:.9rem}.story-card b{font-family:var(--font-heading);font-size:1.05rem;color:var(--maroon)}.story-card .story-place{font-size:.78rem;color:var(--text-muted)}.story-card p{margin-top:.35rem;font-size:.9rem}.page-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--maroon),var(--maroon-deep));color:var(--ivory);padding:clamp(2.5rem,7vw,4rem) 0;text-align:center}.page-hero h1{color:var(--ivory);margin:0}.page-hero p{color:var(--gold-light);margin:.5rem 0 0}.page-hero:after{content:"";position:absolute;top:-40%;right:-10%;width:60%;aspect-ratio:1;background:radial-gradient(circle,rgba(201,162,75,.35),transparent 65%);pointer-events:none;animation:pageHeroGlow 14s ease-in-out infinite}@keyframes pageHeroGlow{0%,to{transform:translate(0) scale(1);opacity:.8}50%{transform:translate(-6%,8%) scale(1.15);opacity:1}}.form-card{max-width:440px;margin:clamp(1.5rem,6vw,4rem) auto}.auth-wrap{min-height:calc(100dvh - var(--header-h));display:grid;grid-template-columns:1fr}@media(min-width:820px){.auth-wrap{grid-template-columns:.85fr 1.15fr}}.auth-aside{background:linear-gradient(150deg,var(--maroon),var(--maroon-deep));color:var(--ivory);display:flex;align-items:flex-start;justify-content:center;padding:clamp(2rem,6vw,4rem) clamp(1.5rem,5vw,3rem);position:relative;overflow:hidden}@media(min-width:820px){.auth-aside{align-items:center}}.auth-aside:after{content:"";position:absolute;bottom:-30%;left:-10%;width:60%;aspect-ratio:1;background:radial-gradient(circle,rgba(201,162,75,.3),transparent 65%);animation:pageHeroGlow 14s ease-in-out infinite;pointer-events:none}.auth-aside-inner{position:relative;z-index:1;max-width:340px;width:100%}.auth-tag{color:var(--gold-light);margin:.4rem 0 1.5rem}.auth-art{width:180px;margin:0 0 1.5rem;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg)}@media(max-width:819px){.auth-art{display:none}.auth-aside{padding:1.25rem clamp(1rem,4vw,2rem)}}.auth-points{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.auth-points li{display:flex;align-items:center;gap:.6rem;font-size:.9rem}@media(max-width:819px){.auth-points{grid-template-columns:1fr 1fr;gap:.4rem}.auth-points li{font-size:.8rem}}.auth-main{display:flex;align-items:flex-start;justify-content:center;padding:clamp(1.5rem,5vw,3.5rem) 1rem}.auth-card{margin:0;width:100%;max-width:440px;animation:modalIn .3s var(--ease)}.step-dots{list-style:none;display:flex;gap:.5rem;margin:1.1rem 0 .5rem;padding:0}.step-dots li{flex:1;display:flex;flex-direction:column;align-items:center;gap:.3rem;font-size:.72rem;color:var(--text-muted);text-align:center}.step-dots .step-dot-n{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;border:2px solid var(--border);background:var(--surface);font-weight:700;font-size:.8rem;transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease)}.step-dots li.active .step-dot-n{border-color:var(--maroon);color:var(--maroon)}.step-dots li.active{color:var(--maroon);font-weight:600}.step-dots li.done .step-dot-n{background:var(--gold);border-color:var(--gold);color:var(--maroon-deep)}.field{margin:.9rem 0}.field label{display:block;font-size:.85rem;color:var(--text-muted);margin-bottom:.3rem}.field .hint{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.err-text{color:var(--danger);font-size:.85rem;margin-top:.5rem}.ok-text{color:var(--success);font-size:.85rem}.radio-row{display:flex;flex-wrap:wrap;gap:.5rem}.radio-row label{border:1px solid var(--border);border-radius:999px;padding:.5rem .9rem;cursor:pointer;display:flex;gap:.35rem;align-items:center}.radio-row input{width:auto}.radio-row label:has(input:checked){background:var(--gold);border-color:var(--gold);color:var(--maroon-deep)}.pill{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.78rem;background:var(--ivory-2);border:1px solid var(--border)}.pill.ok{background:#e7f4ee;color:var(--success);border-color:transparent}.verify-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.78rem;color:var(--maroon);font-weight:600}.toasts{position:fixed;left:50%;transform:translate(-50%);bottom:calc(var(--sticky-cta-h) + 1rem);display:flex;flex-direction:column;gap:.5rem;z-index:100;width:min(92vw,420px)}@media(min-width:900px){.toasts{bottom:1rem;left:auto;right:1rem;transform:none}}.toast{background:var(--charcoal);color:#fff;padding:.75rem 1rem;border-radius:12px;font-size:.9rem;box-shadow:var(--shadow-lg)}.toast.err{background:var(--danger)}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(201,162,75,.1),transparent 40%),radial-gradient(circle at 85% 80%,rgba(123,30,58,.08),transparent 45%),linear-gradient(180deg,var(--ivory) 0%,var(--ivory-2) 100%);padding:clamp(1.5rem,5vw,3rem) 0 clamp(2.5rem,7vw,4rem)}.gold-rule{position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,transparent,var(--gold) 20%,var(--gold-light) 50%,var(--gold) 80%,transparent);background-size:200% 100%;animation:shimmer 4s linear infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.hero-inner{display:grid;gap:clamp(1.5rem,5vw,2.5rem);align-items:center}@media(min-width:900px){.hero-inner{grid-template-columns:1.05fr 1fr}}.stage{position:relative;width:100%;max-width:520px;margin:0 auto;aspect-ratio:5 / 4}.stage .arch{position:absolute;left:50%;top:2%;transform:translate(-50%) scale(.85);width:68%;height:90%;opacity:0;transition:opacity 1s ease,transform 1.2s ease}.stage.wedding .arch{opacity:1;transform:translate(-50%) scale(1)}.arch-glow{opacity:0;transition:opacity 1.4s ease}.stage.wedding .arch-glow{opacity:1;animation:archGlow 3.4s ease-in-out 1.4s infinite}@keyframes archGlow{0%,to{opacity:.55}50%{opacity:1}}.toran-bud{opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(0)}.stage.wedding .toran-bud{animation:toranPop .5s var(--ease) forwards}@keyframes toranPop{to{opacity:1;transform:scale(1)}}.char-outer{position:absolute;bottom:6%;width:34%;max-width:210px;transition:transform 1.3s var(--ease)}.char-outer.boy{left:10%;transform:translate(-260%) rotate(-4deg)}.char-outer.girl{right:10%;transform:translate(260%) rotate(4deg)}.stage.entered .char-outer.boy,.stage.entered .char-outer.girl{transform:translate(0) rotate(0)}.stage.shaking .char-outer.boy{animation:bowL .7s ease}.stage.shaking .char-outer.girl{animation:bowR .7s ease}@keyframes bowL{0%,to{transform:translate(0) rotate(0)}45%{transform:translate(4%) rotate(3deg)}}@keyframes bowR{0%,to{transform:translate(0) rotate(0)}45%{transform:translate(-4%) rotate(-3deg)}}.photo-stack{position:relative}.ph-casual{width:100%;border-radius:14px;box-shadow:var(--shadow);transition:opacity 1.1s ease}.ph-wedding{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;border-radius:14px;box-shadow:0 12px 40px #7b1e3a47;transition:opacity 1.1s ease}.char-outer.girl .photo-stack{transform:scaleX(1)}.stage.wedding .ph-wedding{opacity:1}.stage.wedding .char-outer.boy{animation:swayL 5s ease-in-out 1s infinite}.stage.wedding .char-outer.girl{animation:swayR 5s ease-in-out 1s infinite}@keyframes swayL{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-1.5%) rotate(-.6deg)}}@keyframes swayR{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(1.5%) rotate(.6deg)}}.rangoli{position:absolute;left:50%;bottom:2%;width:62%;transform:translate(-50%) scale(.4);opacity:0;transition:opacity 1s ease,transform 1s var(--ease)}.stage.entered .rangoli{opacity:.9;transform:translate(-50%) scale(1)}.stage.wedding .rangoli{animation:rangoliSpin 40s linear infinite}@keyframes rangoliSpin{to{transform:translate(-50%) rotate(360deg)}}.varmala{position:absolute;left:50%;top:30%;width:46%;transform:translate(-50%,-50%) scale(.3);opacity:0;transition:opacity .5s ease,transform .7s var(--ease)}.varmala-string{stroke-dasharray:300;stroke-dashoffset:300}.stage.shaking .varmala{opacity:1;transform:translate(-50%,-50%) scale(1)}.stage.shaking .varmala-string{animation:varmalaDraw 1s ease forwards}@keyframes varmalaDraw{to{stroke-dashoffset:0}}.varmala-flower{opacity:0}.stage.shaking .varmala-flower{animation:varmalaBud .4s ease forwards}@keyframes varmalaBud{to{opacity:1}}.stage.wedding .varmala{top:24%;animation:varmalaHang 4s ease-in-out 1s infinite}@keyframes varmalaHang{0%,to{transform:translate(-50%,-50%) rotate(-1.5deg)}50%{transform:translate(-50%,-50%) rotate(1.5deg)}}.diya{position:absolute;bottom:3%;font-size:clamp(20px,4vw,30px);opacity:0;filter:drop-shadow(0 0 8px #ffb347);transition:opacity .8s ease}.diya-l{left:12%}.diya-r{right:12%}.stage.wedding .diya{opacity:1;animation:diyaFlicker 1.6s ease-in-out infinite}.stage.wedding .diya-r{animation-delay:.5s}@keyframes diyaFlicker{0%,to{transform:scale(1);filter:drop-shadow(0 0 8px #ffb347)}50%{transform:scale(1.08);filter:drop-shadow(0 0 14px #ffd27a)}}.blessing-ring{position:absolute;left:50%;top:40%;width:78%;transform:translate(-50%,-50%) scale(.6);opacity:0;transition:opacity 1s ease}.stage.wedding .blessing-ring{opacity:.8;animation:ringSpin 18s linear infinite}@keyframes ringSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}.spark{position:absolute;left:50%;top:34%;width:84px;height:84px;transform:translate(-50%,-50%) scale(0) rotate(0);opacity:0;transition:transform .6s var(--ease),opacity .5s}.stage.shaking .spark{transform:translate(-50%,-50%) scale(1) rotate(0);opacity:1}.stage.sparkle .spark{animation:sparkPulse 1.6s ease-in-out infinite}@keyframes sparkPulse{0%,to{transform:translate(-50%,-50%) scale(1) rotate(0);opacity:1}50%{transform:translate(-50%,-50%) scale(1.25) rotate(45deg);opacity:.85}}.stage.sparkle:after{content:"";position:absolute;left:50%;top:30%;width:6px;height:6px;border-radius:2px;background:var(--gold);box-shadow:-60px -10px 0 var(--maroon),55px -20px 0 var(--gold),-30px 20px 0 var(--blush),40px 25px 0 var(--gold-light),0 -40px 0 var(--maroon),70px 5px 0 var(--blush),-75px 15px 0 var(--gold);animation:confettiBurst 1.1s ease-out forwards;pointer-events:none}@keyframes confettiBurst{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}30%{opacity:1}to{transform:translate(-50%,40%) scale(1.4) rotate(90deg);opacity:0}}.petals{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.petal{position:absolute;top:-8%;font-size:clamp(12px,2.4vw,18px);opacity:0}.stage.wedding .petal{animation-name:petalFall;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes petalFall{0%{transform:translateY(-10%) rotate(0);opacity:0}12%{opacity:.95}85%{opacity:.8}to{transform:translateY(340%) rotate(300deg);opacity:0}}.ambient{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.floaty{position:absolute;bottom:-40px;opacity:.5;animation:floatUp linear infinite}@keyframes floatUp{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:.5}90%{opacity:.3}to{transform:translateY(-115vh) rotate(25deg);opacity:0}}.hero-copy{display:grid;text-align:center;justify-items:center}.hero-slide{grid-area:1 / 1;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .6s ease,transform .6s ease,visibility 0s linear .6s;display:flex;flex-direction:column;align-items:center}.hero-slide.active{opacity:1;visibility:visible;transform:none;transition:opacity .6s ease,transform .6s ease}.hero-slide .eyebrow{color:var(--gold);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}.hero-slide .subline{color:var(--text-muted);max-width:520px;margin:.6rem auto 1.1rem}.cta-row{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center}.stat-row{display:flex;flex-wrap:wrap;gap:1.25rem;margin:1rem 0;justify-content:center}.stat-row .stat b{font-family:var(--font-heading);font-size:1.4rem;color:var(--maroon);display:block}.stat-row .stat span{font-size:.82rem;color:var(--text-muted)}.badge-row{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0;justify-content:center}.badge-row .badge{display:flex;align-items:center;gap:.4rem;font-size:.85rem}.badge-row .badge svg{width:26px;height:26px}.hero-search-label{margin-top:1.5rem;text-align:center;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}.hero-search{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.5rem;width:100%;max-width:640px}.hero-search .full{grid-column:1 / -1}@media(min-width:560px){.hero-search{grid-template-columns:repeat(4,1fr)}.hero-search .full{grid-column:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.char-outer,.ph-wedding,.arch,.spark,.floaty,.hero-slide{transition:none!important;animation:none!important;visibility:visible}.stage.sparkle:after{display:none}.char-outer.boy,.char-outer.girl{transform:none!important}.petals,.varmala,.blessing-ring,.rangoli,.diya{display:none!important}.reveal{opacity:1!important;transform:none!important}}@media(min-width:900px){.header-nav{display:flex}.hamburger{display:none}.footer-cols{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}.call-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#140a0eb8;display:grid;place-items:center;padding:1rem}.call-card{background:var(--surface, #fff);border-radius:20px;padding:2rem 1.75rem;text-align:center;max-width:340px;width:100%;box-shadow:0 24px 60px #00000059}.call-avatar{width:72px;height:72px;border-radius:50%;margin:0 auto 1rem;display:grid;place-items:center;font-family:var(--font-heading);font-size:1.8rem;color:#fff;background:var(--maroon)}.call-avatar.big{width:120px;height:120px;font-size:3rem}.call-actions{display:flex;gap:.75rem;justify-content:center;margin-top:1.25rem}.call-stage{position:relative;width:min(960px,96vw);height:min(680px,88vh);background:#10080b;border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center}.call-stage.voice{height:auto;padding:3rem 2rem 5.5rem}.call-voice-body{text-align:center;color:#fff}.call-remote-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#000}.call-local-video{position:absolute;right:14px;bottom:84px;width:132px;max-width:34vw;aspect-ratio:3 / 4;object-fit:cover;border-radius:12px;border:2px solid rgba(255,255,255,.6);background:#222}.call-overlay-top{position:absolute;top:0;left:0;right:0;padding:.9rem 1.1rem;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:.95rem;background:linear-gradient(rgba(0,0,0,.5),transparent)}.call-controls{position:absolute;left:0;right:0;bottom:0;padding:1rem;display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;background:linear-gradient(transparent,#0000008c)}.call-btn{border:none;cursor:pointer;padding:.7rem 1.2rem;border-radius:999px;font-weight:600;font-size:.9rem;background:#ffffffe6;color:var(--charcoal, #2a1b20)}.call-btn.on{background:var(--gold, #c9a24b);color:#fff}.call-btn.accept{background:#1f9d55;color:#fff}.call-btn.end{background:#c0392b;color:#fff}.call-toast{position:fixed;left:50%;bottom:calc(var(--sticky-cta-h) + 1rem);transform:translate(-50%);background:var(--charcoal, #2a1b20);color:#fff;padding:.7rem 1.1rem;border-radius:10px;z-index:210;font-size:.9rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes floatSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes fabPulse{0%{box-shadow:0 0 #c9a24b8c}70%{box-shadow:0 0 0 16px #c9a24b00}to{box-shadow:0 0 #c9a24b00}}.modal-card{animation:modalIn .28s var(--ease)}.support-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#2a1b2066;animation:fadeIn .2s var(--ease)}@media(min-width:720px){.support-backdrop{display:none}}.support-widget{position:fixed;right:clamp(1rem,4vw,1.75rem);bottom:calc(var(--sticky-cta-h) + 1.25rem + env(safe-area-inset-bottom));z-index:95;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}@media(min-width:900px){.support-widget{bottom:calc(1.25rem + env(safe-area-inset-bottom))}}.support-fab{width:56px;height:56px;border:none;border-radius:50%;font-size:1.5rem;line-height:1;color:#fff;background:linear-gradient(135deg,var(--maroon),var(--gold));box-shadow:var(--shadow-lg);animation:floatSoft 6s ease-in-out infinite;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.support-fab:hover{transform:scale(1.08);box-shadow:0 22px 55px #5a112847}.support-fab.pulse{animation:floatSoft 6s ease-in-out infinite,fabPulse 2s ease-out 3}.support-panel{width:min(92vw,340px);max-height:min(70vh,520px);display:flex;flex-direction:column;padding:0;overflow:hidden;animation:modalIn .28s var(--ease)}.support-head{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;background:linear-gradient(135deg,var(--maroon),var(--maroon-deep));color:var(--ivory);font-family:var(--font-heading);font-weight:600}.support-head .lang-toggle{color:var(--ivory);border-color:#fff6}.support-thread{padding:.9rem 1rem;display:flex;flex-direction:column;gap:.6rem;overflow-y:auto;background:var(--ivory-2)}.support-thread .msg{max-width:85%;padding:.6rem .8rem;border-radius:14px;font-size:.88rem;line-height:1.5}.support-thread .msg.sys{align-self:flex-start;background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px}.support-thread .msg.user{align-self:flex-end;background:var(--gold-light);color:var(--maroon-deep);border-bottom-right-radius:4px}.support-form{padding:.9rem 1rem 1rem;overflow-y:auto}.support-form .field{margin:.6rem 0}.support-form .field:first-child{margin-top:0}.plan-grid{display:grid;gap:clamp(.9rem,2.5vw,1.4rem);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));margin-top:1rem;align-items:stretch}.plan-card{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.1rem,3vw,1.5rem)}.plan-card.featured{border-color:var(--gold);box-shadow:0 14px 40px #c9a24b47}.plan-card.current{border-color:var(--maroon)}.plan-ribbon{position:absolute;top:12px;right:-1px;background:var(--gold);color:var(--maroon-deep);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.25rem .7rem;border-radius:999px 0 0 999px}.plan-ribbon.current{background:var(--maroon);color:#fff}.plan-card h3{margin-bottom:.35rem}.plan-price{font-family:var(--font-heading);font-size:1.7rem;color:var(--maroon);margin:.2rem 0 .4rem}.plan-price span{font-family:var(--font-body);font-size:.8rem;color:var(--text-muted)}.plan-desc{color:var(--text-muted);font-size:.88rem;margin:0 0 .75rem}.plan-features{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.4rem;font-size:.85rem}.plan-features li{display:flex;gap:.5rem;align-items:flex-start;color:var(--text)}.plan-features li span{color:var(--success);font-weight:700;flex-shrink:0}.plan-features li.off,.plan-features li.off span{color:var(--text-muted)}.plan-card .btn.block{margin-top:auto}
