@import "https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600;700&family=Oswald:wght@400;500;600;700&family=Poppins:wght@300;400;500;600;700&display=swap";
.tpl-wedding-landing{font-family:var(--font-body,"Inter"), sans-serif;background:var(--paper,#faf5ec);color:var(--ink,#2a1826);-webkit-font-smoothing:antialiased;--muted:#6e5c62;font-weight:300;overflow-x:hidden}.tpl-wedding-landing *{box-sizing:border-box;margin:0;padding:0}.tpl-wedding-landing .serif{font-family:var(--font-heading,"Cormorant Garamond"), serif}.tpl-wedding-landing .sans{font-family:var(--font-body,"Inter"), sans-serif}.tpl-wedding-landing .mono{font-family:JetBrains Mono,monospace}.tpl-wedding-landing .label{font-family:var(--font-body,"Inter"), sans-serif;letter-spacing:.28em;text-transform:uppercase;font-size:11px;font-weight:500}.tpl-wedding-landing .grain:before{content:"";pointer-events:none;opacity:.35;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:absolute;inset:0}.tpl-wedding-landing .img-ph{background:repeating-linear-gradient(135deg, #4a254514, #4a254514 2px, #4a254505 2px, #4a254505 14px), var(--ivory-warm,#efe4d1);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.tpl-wedding-landing .img-ph.on-dark{background:repeating-linear-gradient(135deg,#f5ede014,#f5ede014 2px,#f5ede005 2px 14px),#341a3099}.tpl-wedding-landing .img-ph .ph-label{letter-spacing:.14em;text-transform:uppercase;color:var(--plum,#4a2545);background:var(--paper,#faf5ec);border:1px solid var(--line,#4a254529);white-space:nowrap;padding:6px 10px;font-family:JetBrains Mono,monospace;font-size:10px}.tpl-wedding-landing .img-ph.on-dark .ph-label{color:var(--ivory,#f5ede0);background:#341a30cc;border-color:#f5ede033}.tpl-wedding-landing .hero{grid-template-columns:minmax(360px,42%) 1fr;min-height:100vh;display:grid;position:relative}.tpl-wedding-landing .hero-left{background:var(--plum,#4a2545);color:var(--ivory,#f5ede0);flex-direction:column;padding:44px 56px 56px;display:flex;position:relative}.tpl-wedding-landing .nav{align-items:center;gap:44px;display:flex}.tpl-wedding-landing .nav a{color:var(--ivory,#f5ede0);letter-spacing:.32em;text-transform:uppercase;font-size:11px;font-weight:400;text-decoration:none;transition:opacity .2s}.tpl-wedding-landing .nav a:hover{opacity:.65}.tpl-wedding-landing .monogram{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--marigold-soft,#f2c77a);letter-spacing:.02em;font-size:22px;font-style:italic;position:absolute;top:44px;right:56px}.tpl-wedding-landing .hero-content{flex-direction:column;gap:28px;margin-top:auto;display:flex}.tpl-wedding-landing .hero-date{color:var(--marigold-soft,#f2c77a);letter-spacing:.38em;font-size:12px}.tpl-wedding-landing .hero-names{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:-.01em;font-size:clamp(68px,9vw,128px);font-weight:400;line-height:.95}.tpl-wedding-landing .hero-names .amp{color:var(--marigold,#e8a33d);font-style:italic;font-weight:300}.tpl-wedding-landing .hero-meta{border-top:1px solid #f5ede026;flex-direction:column;gap:4px;max-width:320px;margin-top:20px;padding-top:28px;display:flex}.tpl-wedding-landing .hero-meta .loc{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--ivory,#f5ede0);font-size:20px;font-style:italic}.tpl-wedding-landing .hero-meta .sub{letter-spacing:.18em;color:#f5ede099;text-transform:uppercase;font-size:12px}.tpl-wedding-landing .hero-right{position:relative}.tpl-wedding-landing .hero-img{background:repeating-linear-gradient(135deg,#c86a4d47,#c86a4d47 3px,#e8a33d24 3px 22px),linear-gradient(#8b4a3a 0%,#4a2545 100%);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tpl-wedding-landing .hero-img .ph-label{letter-spacing:.2em;color:var(--ivory,#f5ede0);background:#341a30b3;border:1px solid #f5ede04d;padding:10px 16px;font-family:JetBrains Mono,monospace;font-size:11px}.tpl-wedding-landing .rsvp-btn{-webkit-backdrop-filter:blur(8px);cursor:pointer;z-index:10;width:108px;height:108px;color:var(--ivory,#f5ede0);font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.15em;background:#341a3059;border:1px solid #f5ede080;border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-style:italic;text-decoration:none;transition:all .3s;display:flex;position:absolute;top:50%;left:-54px;transform:translateY(-50%)}.tpl-wedding-landing .rsvp-btn:hover{background:var(--marigold,#e8a33d);border-color:var(--marigold,#e8a33d);color:var(--plum-deep,#341a30);transform:translateY(-50%)scale(1.06)}.tpl-wedding-landing .side-index{z-index:50;mix-blend-mode:difference;flex-direction:column;gap:18px;display:flex;position:fixed;top:50%;right:32px;transform:translateY(-50%)}.tpl-wedding-landing .side-index a{letter-spacing:.24em;text-transform:uppercase;color:var(--ivory,#f5ede0);opacity:.45;writing-mode:vertical-rl;font-size:10px;text-decoration:none;transition:opacity .2s;transform:rotate(180deg)}.tpl-wedding-landing .side-index a.active,.tpl-wedding-landing .side-index a:hover{opacity:1}.tpl-wedding-landing section.event{padding:140px 8vw 160px;position:relative;overflow:hidden}.tpl-wedding-landing .eyebrow{align-items:center;gap:14px;margin-bottom:28px;display:flex}.tpl-wedding-landing .eyebrow .num{opacity:.55;font-family:JetBrains Mono,monospace;font-size:11px}.tpl-wedding-landing .eyebrow .dash{opacity:.35;background:currentColor;width:36px;height:1px}.tpl-wedding-landing .eyebrow .tag{letter-spacing:.3em;text-transform:uppercase;font-size:11px;font-weight:500}.tpl-wedding-landing .event-title{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:-.015em;padding-bottom:.12em;font-size:clamp(54px,7.2vw,112px);font-weight:400;line-height:1.06}.tpl-wedding-landing .event-title em{font-style:italic;font-weight:300}.tpl-wedding-landing .event-body{font-family:var(--font-heading,"Cormorant Garamond"), serif;opacity:.82;max-width:460px;margin-top:48px;font-size:20px;font-style:italic;font-weight:300;line-height:1.55}.tpl-wedding-landing .detail-row{grid-template-columns:1fr 1fr;gap:36px 56px;max-width:520px;margin-top:48px;display:grid}.tpl-wedding-landing .detail{border-color:#4a25452e;border-top-style:solid;border-top-width:1px;flex-direction:column;gap:8px;padding-top:16px;display:flex}.tpl-wedding-landing .detail.on-dark{border-color:#f5ede038}.tpl-wedding-landing .detail .k{letter-spacing:.3em;text-transform:uppercase;opacity:.6;font-size:10px;font-weight:500}.tpl-wedding-landing .detail .v{font-family:var(--font-heading,"Cormorant Garamond"), serif;font-size:22px;line-height:1.25}.tpl-wedding-landing .layout-light-two-col{background:var(--ivory,#f5ede0);color:var(--ink,#2a1826)}.tpl-wedding-landing .layout-light-two-col .event-inner{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.tpl-wedding-landing .layout-light-two-col .event-img{height:620px;position:relative}.tpl-wedding-landing .layout-light-two-col .corner-mark{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--terracotta,#c86a4d);opacity:.18;pointer-events:none;font-size:120px;font-style:italic;line-height:1;position:absolute;top:80px;left:8vw}.tpl-wedding-landing .layout-decorative-circle{color:var(--plum-deep,#341a30);background:linear-gradient(160deg,#f6d477 0%,#e8a33d 55%,#d98a20 100%)}.tpl-wedding-landing .layout-decorative-circle .event-inner{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.tpl-wedding-landing .layout-decorative-circle .event-img{height:620px;position:relative}.tpl-wedding-landing .layout-decorative-circle .decor-circle{pointer-events:none;border:1px solid #4a254540;border-radius:50%;width:320px;height:320px;position:absolute;top:-80px;right:-80px}.tpl-wedding-landing .layout-dark-marigold{background:var(--plum-deep,#341a30);color:var(--ivory,#f5ede0)}.tpl-wedding-landing .layout-dark-marigold .event-inner{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.tpl-wedding-landing .layout-dark-marigold .event-img{order:-1;height:620px;position:relative}.tpl-wedding-landing .layout-dark-marigold .decor-dots{opacity:.4;grid-template-columns:repeat(5,6px);gap:12px;display:grid;position:absolute;top:80px;right:8vw}.tpl-wedding-landing .layout-dark-marigold .decor-dots span{background:var(--marigold-soft,#f2c77a);border-radius:50%;width:6px;height:6px}.tpl-wedding-landing .layout-dark-marigold .marigold-em,.tpl-wedding-landing .layout-dark-marigold .marigold-eyebrow{color:var(--marigold-soft,#f2c77a)}.tpl-wedding-landing .layout-dark-centered{background:var(--plum,#4a2545);color:var(--ivory,#f5ede0);padding-bottom:180px}.tpl-wedding-landing .layout-dark-centered .event-inner{text-align:center;flex-direction:column;align-items:center;display:flex}.tpl-wedding-landing .layout-dark-centered .event-body{text-align:center;max-width:520px;margin-left:auto;margin-right:auto}.tpl-wedding-landing .layout-dark-centered .detail-row{grid-template-columns:repeat(4,1fr);gap:40px;max-width:860px;margin-left:auto;margin-right:auto}.tpl-wedding-landing .layout-dark-centered .event-img{width:100%;max-width:1100px;height:440px;margin-top:80px;position:relative}.tpl-wedding-landing .layout-dark-centered .seal{width:120px;height:120px;font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--marigold-soft,#f2c77a);border:1px solid #f5ede073;border-radius:50%;justify-content:center;align-items:center;margin-bottom:40px;font-size:24px;font-style:italic;display:flex}.tpl-wedding-landing .layout-dark-centered .reserve-btn{color:var(--ivory,#f5ede0);border:1px solid var(--marigold,#e8a33d);letter-spacing:.36em;text-transform:uppercase;font-size:11px;font-family:var(--font-body,"Inter"), sans-serif;cursor:pointer;background:0 0;margin-top:56px;padding:18px 48px;font-weight:500;text-decoration:none;transition:all .3s;display:inline-block}.tpl-wedding-landing .layout-dark-centered .reserve-btn:hover{background:var(--marigold,#e8a33d);color:var(--plum-deep,#341a30)}.tpl-wedding-landing .timeline-strip{background:var(--paper,#faf5ec);border-top:1px solid var(--line,#4a254529);border-bottom:1px solid var(--line,#4a254529);z-index:40;padding:32px 0;position:sticky;top:0;overflow:hidden}.tpl-wedding-landing .timeline-track{flex-wrap:wrap;justify-content:center;gap:0;padding:0 8vw;display:flex}.tpl-wedding-landing .tl-item{border-right:1px solid var(--line,#4a254529);text-align:center;cursor:pointer;color:var(--ink,#2a1826);min-width:180px;padding:0 32px;text-decoration:none;transition:all .2s}.tpl-wedding-landing .tl-item:last-child{border-right:none}.tpl-wedding-landing .tl-item .tl-name{font-family:var(--font-heading,"Cormorant Garamond"), serif;margin-bottom:4px;font-size:24px;font-style:italic;line-height:1}.tpl-wedding-landing .tl-item .tl-date{letter-spacing:.18em;opacity:.6;font-family:JetBrains Mono,monospace;font-size:10px}.tpl-wedding-landing .tl-item:hover .tl-name,.tpl-wedding-landing .tl-item.active .tl-name{color:var(--marigold,#e8a33d)}.tpl-wedding-landing .story{background:var(--paper,#faf5ec);text-align:center;padding:140px 8vw;position:relative;overflow:hidden}.tpl-wedding-landing .story .quote{font-family:var(--font-heading,"Cormorant Garamond"), serif;max-width:900px;color:var(--ink,#2a1826);text-wrap:pretty;margin:0 auto;font-size:clamp(28px,3.2vw,42px);font-style:italic;font-weight:300;line-height:1.35}.tpl-wedding-landing .story .signoff{letter-spacing:.28em;text-transform:uppercase;color:var(--muted,#8a7a80);margin-top:48px;font-family:JetBrains Mono,monospace;font-size:11px}.tpl-wedding-landing .story .eyebrow-text{color:var(--terracotta,#c86a4d);margin-bottom:28px}.tpl-wedding-landing footer{background:var(--plum-deep,#341a30);color:var(--ivory,#f5ede0);padding:80px 8vw 40px}.tpl-wedding-landing .foot-top{border-bottom:1px solid #f5ede01f;grid-template-columns:1fr 1fr 1fr;gap:60px;padding-bottom:60px;display:grid}.tpl-wedding-landing .foot-col h4{letter-spacing:.28em;text-transform:uppercase;color:var(--marigold-soft,#f2c77a);margin-bottom:20px;font-size:11px;font-weight:500}.tpl-wedding-landing .foot-col p,.tpl-wedding-landing .foot-col a{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:#f5ede0d1;font-size:18px;line-height:1.65;text-decoration:none;display:block}.tpl-wedding-landing .foot-col a:hover{color:var(--marigold,#e8a33d)}.tpl-wedding-landing .foot-big{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--ivory,#f5ede0);text-align:center;margin-top:40px;font-size:72px;font-style:italic;line-height:1}.tpl-wedding-landing .foot-bot{letter-spacing:.24em;text-transform:uppercase;opacity:.5;justify-content:space-between;margin-top:40px;font-size:10px;display:flex}@media (max-width:880px){.tpl-wedding-landing .hero{grid-template-columns:1fr}.tpl-wedding-landing .hero-left{min-height:90vh;padding:32px}.tpl-wedding-landing .hero-right{min-height:70vh}.tpl-wedding-landing .rsvp-btn{width:84px;height:84px;top:24px;left:auto;right:24px;transform:none}.tpl-wedding-landing .rsvp-btn:hover{transform:scale(1.06)}.tpl-wedding-landing .nav{gap:24px}.tpl-wedding-landing .monogram{top:32px;right:32px}.tpl-wedding-landing .layout-light-two-col .event-inner,.tpl-wedding-landing .layout-decorative-circle .event-inner,.tpl-wedding-landing .layout-dark-marigold .event-inner{grid-template-columns:1fr;gap:48px}.tpl-wedding-landing .layout-dark-marigold .event-img{order:0}.tpl-wedding-landing .layout-light-two-col .event-img,.tpl-wedding-landing .layout-decorative-circle .event-img,.tpl-wedding-landing .layout-dark-marigold .event-img{height:380px}.tpl-wedding-landing .layout-dark-centered .detail-row{grid-template-columns:repeat(2,1fr)}.tpl-wedding-landing .layout-dark-centered .event-img{height:280px}.tpl-wedding-landing section.event{padding:80px 24px 100px}.tpl-wedding-landing .foot-top{grid-template-columns:1fr;gap:40px}.tpl-wedding-landing .foot-big{font-size:44px}.tpl-wedding-landing .side-index{display:none}.tpl-wedding-landing .tl-item{min-width:140px;padding:0 20px}}
.tpl-love-story{font-family:var(--font-body,"Nunito"), system-ui, sans-serif;background:var(--paper,#fff8ee);color:var(--ink,#2a2438);-webkit-font-smoothing:antialiased;--muted:#6b6378;--line:#2a24382e;font-weight:400;line-height:1.5;overflow-x:hidden}.tpl-love-story *{box-sizing:border-box;margin:0;padding:0}.tpl-love-story .hand{font-family:Caveat,cursive}.tpl-love-story .serif{font-family:var(--font-heading,"Fraunces"), serif}.tpl-love-story:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle at 20% 20%,#ffdcb433 0%,#0000 40%),radial-gradient(circle at 80% 60%,#bfdff033 0%,#0000 40%),radial-gradient(circle at 50% 90%,#f7c4cf33 0%,#0000 40%);position:fixed;inset:0}.tpl-love-story .banner{z-index:100;background:var(--paper,#fff8ee);border:2px solid var(--ink,#2a2438);color:var(--ink,#2a2438);box-shadow:4px 4px 0 var(--ink,#2a2438);border-radius:999px;padding:10px 24px;font-family:Caveat,cursive;font-size:22px;position:fixed;top:24px;left:50%;transform:translate(-50%)}.tpl-love-story .banner .heart{color:var(--coral,#e87461);animation:1.6s ease-in-out infinite heartbeat;display:inline-block}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.tpl-love-story .progress{background:linear-gradient(90deg, var(--coral,#e87461) 0%, var(--plum,#7a5c8a) 100%);z-index:200;height:4px;transition:width .1s linear;position:fixed;top:0;left:0}.tpl-love-story .chapter-nav{z-index:50;flex-direction:column;gap:14px;display:flex;position:fixed;top:50%;right:24px;transform:translateY(-50%)}.tpl-love-story .chapter-nav a{color:var(--muted,#8a8298);opacity:.6;align-items:center;gap:10px;font-family:Caveat,cursive;font-size:16px;text-decoration:none;transition:all .2s;display:flex}.tpl-love-story .chapter-nav a .dot{background:var(--paper,#fff8ee);border:2px solid var(--ink,#2a2438);border-radius:50%;width:12px;height:12px;transition:all .2s}.tpl-love-story .chapter-nav a .lbl{opacity:0;transition:all .2s;transform:translate(6px)}.tpl-love-story .chapter-nav a:hover,.tpl-love-story .chapter-nav a.on{opacity:1;color:var(--ink,#2a2438)}.tpl-love-story .chapter-nav a:hover .dot,.tpl-love-story .chapter-nav a.on .dot{background:var(--coral,#e87461);transform:scale(1.3)}.tpl-love-story .chapter-nav a:hover .lbl,.tpl-love-story .chapter-nav a.on .lbl{opacity:1;transform:translate(0)}.tpl-love-story .scene{z-index:1;justify-content:center;align-items:center;min-height:100vh;padding:120px 40px 80px;display:flex;position:relative}.tpl-love-story .scene-inner{grid-template-columns:1fr 1fr;align-items:center;gap:60px;width:100%;max-width:1100px;display:grid}.tpl-love-story .scene.reverse .scene-inner{grid-template-columns:1fr 1fr}.tpl-love-story .scene.reverse .scene-text{order:2}.tpl-love-story .scene.reverse .scene-illo{order:1}.tpl-love-story .scene-text{padding:20px}.tpl-love-story .scene-text .chapter{color:var(--coral,#e87461);align-items:center;gap:10px;margin-bottom:6px;font-family:Caveat,cursive;font-size:26px;display:flex}.tpl-love-story .scene-text .chapter .num{border:2px solid var(--ink,#2a2438);width:36px;height:36px;font-size:16px;font-family:var(--font-body,"Nunito"), system-ui, sans-serif;color:var(--ink,#2a2438);background:var(--butter,#ffe79a);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.tpl-love-story .scene-text h2{font-family:var(--font-heading,"Fraunces"), serif;letter-spacing:-.01em;color:var(--ink,#2a2438);margin-bottom:20px;font-size:clamp(36px,4.5vw,56px);font-weight:500;line-height:1.05}.tpl-love-story .scene-text h2 em{color:var(--coral,#e87461);font-family:Caveat,cursive;font-size:1.3em;font-style:italic;font-weight:600}.tpl-love-story .scene-text p.body{color:var(--ink-soft,#4a4058);max-width:460px;margin-bottom:24px;font-size:17px;line-height:1.65}.tpl-love-story .detail-card{background:var(--paper,#fff8ee);border:2px solid var(--ink,#2a2438);box-shadow:5px 5px 0 var(--ink,#2a2438);border-radius:14px;max-width:440px;padding:20px 24px;position:relative;transform:rotate(-1deg)}.tpl-love-story .detail-card.tilt-r{transform:rotate(1.5deg)}.tpl-love-story .detail-card .tag{background:var(--coral,#e87461);color:#fff;border:2px solid var(--ink,#2a2438);border-radius:6px;padding:3px 12px;font-family:Caveat,cursive;font-size:16px;position:absolute;top:-12px;left:20px}.tpl-love-story .detail-card .tag.peach{background:var(--peach,#ffd2b5);color:var(--ink,#2a2438)}.tpl-love-story .detail-card .tag.mint{background:var(--mint,#b8e6d1);color:var(--ink,#2a2438)}.tpl-love-story .detail-card .tag.butter{background:var(--butter,#ffe79a);color:var(--ink,#2a2438)}.tpl-love-story .detail-card .tag.blush{background:var(--blush,#f7c4cf);color:var(--ink,#2a2438)}.tpl-love-story .detail-card .tag.plum{background:var(--plum,#7a5c8a);color:#fff}.tpl-love-story .detail-row{border-bottom:1px dashed var(--line,#2a243824);gap:14px;padding:10px 0;font-size:14px;display:flex}.tpl-love-story .detail-row:last-child{border-bottom:none}.tpl-love-story .detail-row .k{color:var(--muted,#8a8298);flex-shrink:0;width:80px;font-family:Caveat,cursive;font-size:18px}.tpl-love-story .detail-row .v{color:var(--ink,#2a2438);flex:1;font-weight:500}.tpl-love-story .scene-illo{aspect-ratio:1;justify-content:center;align-items:center;display:flex;position:relative}.tpl-love-story .scene-illo svg{width:100%;max-width:480px;height:auto;overflow:visible}.tpl-love-story .bg-peach{background:linear-gradient(#0000 0%,#ffd2b559 50%,#0000 100%)}.tpl-love-story .bg-mint{background:linear-gradient(#0000 0%,#b8e6d159 50%,#0000 100%)}.tpl-love-story .bg-butter{background:linear-gradient(#0000 0%,#ffe79a59 50%,#0000 100%)}.tpl-love-story .bg-sky{background:linear-gradient(#0000 0%,#bfdff059 50%,#0000 100%)}.tpl-love-story .bg-blush{background:linear-gradient(#0000 0%,#f7c4cf66 50%,#0000 100%)}.tpl-love-story .bg-plum{background:linear-gradient(#0000 0%,#7a5c8a26 50%,#0000 100%)}.tpl-love-story .floater{pointer-events:none;animation:6s ease-in-out infinite float;position:absolute}@keyframes float{0%,to{transform:translateY(0)rotate(-5deg)}50%{transform:translateY(-14px)rotate(5deg)}}@keyframes wave{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes twinkle{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.tpl-love-story .wave-arm{transform-origin:var(--ox,50%) var(--oy,50%);animation:2s ease-in-out infinite wave}.tpl-love-story .bob{animation:3s ease-in-out infinite bob}.tpl-love-story .twinkle{animation:2s ease-in-out infinite twinkle}.tpl-love-story .cover{text-align:center;z-index:1;justify-content:center;align-items:center;min-height:100vh;padding:140px 40px 40px;display:flex;position:relative}.tpl-love-story .cover-inner{width:100%;max-width:860px}.tpl-love-story .cover .once{color:var(--coral,#e87461);margin-bottom:8px;font-family:Caveat,cursive;font-size:36px}.tpl-love-story .cover h1{font-family:var(--font-heading,"Fraunces"), serif;letter-spacing:-.03em;color:var(--ink,#2a2438);font-size:clamp(56px,10vw,128px);font-weight:500;line-height:.95}.tpl-love-story .cover h1 em{color:var(--coral,#e87461);margin:4px 0;font-family:Caveat,cursive;font-size:.8em;font-style:normal;font-weight:600;display:block}.tpl-love-story .cover .illo{max-width:560px;margin:40px auto 30px}.tpl-love-story .cover .meta{background:var(--paper,#fff8ee);border:2px solid var(--ink,#2a2438);box-shadow:4px 4px 0 var(--ink,#2a2438);color:var(--ink,#2a2438);border-radius:999px;align-items:center;gap:18px;padding:12px 28px;font-family:Caveat,cursive;font-size:22px;display:inline-flex}.tpl-love-story .cover .meta .dot{background:var(--coral,#e87461);border-radius:50%;width:6px;height:6px}.tpl-love-story .cover .scroll-hint{color:var(--muted,#8a8298);margin-top:40px;font-family:Caveat,cursive;font-size:20px;animation:2.5s ease-in-out infinite bob}.tpl-love-story .closing-scene{text-align:center;z-index:1;padding:100px 40px;position:relative}.tpl-love-story .closing-scene .inner{background:var(--paper,#fff8ee);border:2px solid var(--ink,#2a2438);max-width:720px;box-shadow:8px 8px 0 var(--ink,#2a2438);border-radius:20px;margin:0 auto;padding:48px 40px;position:relative}.tpl-love-story .closing-scene .inner:before{content:"";border:2px dashed var(--coral,#e87461);pointer-events:none;opacity:.5;border-radius:20px;margin:6px;position:absolute;inset:-2px}.tpl-love-story .closing-scene .inner h2{font-family:var(--font-heading,"Fraunces"), serif;margin-bottom:10px;font-size:clamp(40px,6vw,64px);line-height:1}.tpl-love-story .closing-scene .sweet{color:var(--coral,#e87461);margin-bottom:22px;font-family:Caveat,cursive;font-size:30px}.tpl-love-story .closing-scene p{color:var(--ink-soft,#4a4058);max-width:520px;margin:0 auto 28px;font-size:16px;line-height:1.7}.tpl-love-story .rsvp-btn{background:var(--coral,#e87461);color:#fff;border:2px solid var(--ink,#2a2438);box-shadow:5px 5px 0 var(--ink,#2a2438);font-family:var(--font-body,"Nunito"), system-ui, sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:14px 32px;font-size:14px;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex}.tpl-love-story .rsvp-btn:hover{box-shadow:7px 7px 0 var(--ink,#2a2438);transform:translate(-2px,-2px)}.tpl-love-story .rsvp-btn:active{box-shadow:2px 2px 0 var(--ink,#2a2438);transform:translate(2px,2px)}.tpl-love-story .modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:300;opacity:0;pointer-events:none;background:#2a24388c;justify-content:center;align-items:center;padding:40px 20px;transition:opacity .25s;display:flex;position:fixed;inset:0}.tpl-love-story .modal-backdrop.open{opacity:1;pointer-events:auto}.tpl-love-story .modal{background:var(--paper,#fff8ee);border:2px solid var(--ink,#2a2438);width:100%;max-width:480px;box-shadow:8px 8px 0 var(--ink,#2a2438);border-radius:18px;max-height:92vh;padding:36px;transition:transform .25s;position:relative;overflow-y:auto;transform:translateY(20px)rotate(-.5deg)}.tpl-love-story .modal-backdrop.open .modal{transform:translateY(0)rotate(0)}.tpl-love-story .modal-close{cursor:pointer;color:var(--ink,#2a2438);opacity:.6;background:0 0;border:none;font-size:22px;position:absolute;top:14px;right:18px}.tpl-love-story .modal-close:hover{opacity:1}.tpl-love-story .modal .kick{color:var(--coral,#e87461);text-align:center;font-family:Caveat,cursive;font-size:26px}.tpl-love-story .modal h3{font-family:var(--font-heading,"Fraunces"), serif;text-align:center;margin-bottom:24px;font-size:32px}.tpl-love-story .field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.tpl-love-story .field label{color:var(--plum,#7a5c8a);font-family:Caveat,cursive;font-size:18px}.tpl-love-story .field input,.tpl-love-story .field select{border:2px solid var(--ink,#2a2438);font-family:var(--font-body,"Nunito"), system-ui, sans-serif;color:var(--ink,#2a2438);background:#fff;border-radius:10px;outline:none;padding:10px 14px;font-size:15px}.tpl-love-story .field input:focus,.tpl-love-story .field select:focus{background:var(--butter,#ffe79a)}.tpl-love-story .chips{flex-wrap:wrap;gap:6px;display:flex}.tpl-love-story .chip{border:2px solid var(--ink,#2a2438);font-family:var(--font-body,"Nunito"), system-ui, sans-serif;cursor:pointer;color:var(--ink,#2a2438);background:#fff;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600}.tpl-love-story .chip.on{background:var(--mint,#b8e6d1)}.tpl-love-story .submit{background:var(--coral,#e87461);color:#fff;border:2px solid var(--ink,#2a2438);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;width:100%;font-size:13px;font-weight:700;font-family:var(--font-body,"Nunito"), system-ui, sans-serif;box-shadow:4px 4px 0 var(--ink,#2a2438);border-radius:12px;margin-top:18px;padding:14px;transition:transform .15s,box-shadow .15s}.tpl-love-story .submit:hover{box-shadow:6px 6px 0 var(--ink,#2a2438);transform:translate(-2px,-2px)}.tpl-love-story .tweaks{background:var(--paper,#fff8ee);border:2px solid var(--ink,#2a2438);z-index:250;width:260px;box-shadow:5px 5px 0 var(--ink,#2a2438);font-family:var(--font-body,"Nunito"), system-ui, sans-serif;border-radius:14px;padding:18px;position:fixed;bottom:24px;left:24px}.tpl-love-story .tweaks h5{color:var(--coral,#e87461);margin-bottom:12px;font-family:Caveat,cursive;font-size:22px;font-weight:600}.tpl-love-story .tweak-row{margin-bottom:12px}.tpl-love-story .tweak-row label{color:var(--plum,#7a5c8a);margin-bottom:4px;font-family:Caveat,cursive;font-size:16px;display:block}.tpl-love-story .tweaks input[type=text]{border:2px solid var(--ink,#2a2438);width:100%;font-family:var(--font-body,"Nunito"), system-ui, sans-serif;background:#fff;border-radius:8px;outline:none;padding:8px 10px}.tpl-love-story .sw-row{flex-wrap:wrap;gap:6px;display:flex}.tpl-love-story .sw{cursor:pointer;border:2px solid var(--ink,#2a2438);border-radius:50%;width:32px;height:32px;transition:transform .15s}.tpl-love-story .sw.on{box-shadow:0 0 0 2px var(--paper,#fff8ee), 0 0 0 4px var(--ink,#2a2438);transform:scale(1.15)}@media (max-width:840px){.tpl-love-story .chapter-nav{display:none}.tpl-love-story .scene{min-height:auto;padding:100px 24px 60px}.tpl-love-story .scene-inner{grid-template-columns:1fr;gap:30px}.tpl-love-story .scene.reverse .scene-text{order:2}.tpl-love-story .scene.reverse .scene-illo{order:1}.tpl-love-story .scene-illo svg{max-width:360px;margin:0 auto}.tpl-love-story .detail-card{margin:0 auto}.tpl-love-story .cover h1{font-size:64px}.tpl-love-story .tweaks{width:auto;bottom:12px;left:12px;right:12px}.tpl-love-story .banner{padding:8px 18px;font-size:18px}}
.tpl-arch-elegance{font-family:var(--font-body,"Inter"), system-ui, sans-serif;background:var(--bg,#efe4d2);color:var(--ink,#3a1e12);-webkit-font-smoothing:antialiased;--muted:#7a6452;font-weight:300;overflow-x:hidden}.tpl-arch-elegance *{box-sizing:border-box;margin:0;padding:0}.tpl-arch-elegance .display{font-family:Italiana,serif;font-weight:400}.tpl-arch-elegance .serif{font-family:var(--font-heading,"Bodoni Moda"), serif;font-weight:400}.tpl-arch-elegance .mono{font-family:JetBrains Mono,monospace}.tpl-arch-elegance .label{font-family:var(--font-body,"Inter"), system-ui, sans-serif;letter-spacing:.32em;text-transform:uppercase;font-size:10px;font-weight:500}.tpl-arch-elegance .page-shell{background:var(--card,#f7ecd8);max-width:1680px;margin:32px auto;position:relative;overflow:hidden;box-shadow:0 40px 80px #1a1a1a14}.tpl-arch-elegance .hero{flex-direction:column;min-height:88vh;padding:40px 60px 80px;display:flex;position:relative}.tpl-arch-elegance .top-bar{justify-content:space-between;align-items:center;margin-bottom:60px;display:flex}.tpl-arch-elegance .logo{font-family:var(--font-heading,"Bodoni Moda"), serif;letter-spacing:-.02em;font-size:26px;font-style:italic;font-weight:500}.tpl-arch-elegance .nav{align-items:center;gap:44px;margin-left:60px;display:flex}.tpl-arch-elegance .nav a{color:var(--ink,#3a1e12);letter-spacing:.3em;text-transform:uppercase;font-size:10px;font-weight:400;text-decoration:none;transition:opacity .2s}.tpl-arch-elegance .nav a:hover{opacity:.55}.tpl-arch-elegance .direction-link{letter-spacing:.3em;text-transform:uppercase;color:var(--ink,#3a1e12);align-items:center;gap:10px;font-size:10px;text-decoration:none;transition:gap .2s;display:flex}.tpl-arch-elegance .direction-link:hover{gap:14px}.tpl-arch-elegance .hero-body{flex:1;grid-template-columns:minmax(300px,1fr) 2.2fr;align-items:center;gap:40px;display:grid}.tpl-arch-elegance .save-stack{padding-top:20px;position:relative}.tpl-arch-elegance .save-stack .line{letter-spacing:.01em;color:var(--ink,#3a1e12);font-family:Italiana,serif;font-size:clamp(72px,9vw,148px);line-height:.92}.tpl-arch-elegance .save-stack .line:nth-child(2){padding-left:32px}.tpl-arch-elegance .save-stack .line:nth-child(3){padding-left:72px}.tpl-arch-elegance .invite-badge{width:140px;height:140px;position:absolute;bottom:60px;left:0}.tpl-arch-elegance .invite-badge svg{width:100%;height:100%}.tpl-arch-elegance .invite-badge text{letter-spacing:.28em;text-transform:uppercase;fill:var(--ink,#3a1e12);font-family:JetBrains Mono,monospace;font-size:9px}.tpl-arch-elegance .invite-badge .glyph{color:var(--ink,#3a1e12);font-family:Italiana,serif;font-size:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tpl-arch-elegance .arches{grid-template-columns:repeat(3,1fr);align-items:center;gap:28px;height:100%;display:grid}.tpl-arch-elegance .arch-col{flex-direction:column;align-items:center;display:flex;position:relative}.tpl-arch-elegance .arch{aspect-ratio:.62;background:#2a2825;border-radius:9999px 9999px 0 0;width:100%;max-height:560px;position:relative;overflow:hidden}.tpl-arch-elegance .arch .ph-bg{filter:grayscale()contrast(1.05);background-position:50%;background-size:cover;position:absolute;inset:0}.tpl-arch-elegance .arch .img-ph{width:100%;height:100%;position:absolute;inset:0}.tpl-arch-elegance .arch .ph-overlay{pointer-events:none;background:repeating-linear-gradient(120deg,#ffffff0f,#ffffff0f 2px,#fff0 2px 18px);position:absolute;inset:0}.tpl-arch-elegance .arch .ph-label{letter-spacing:.2em;text-transform:uppercase;color:#fffc;white-space:nowrap;background:#00000059;padding:6px 10px;font-family:JetBrains Mono,monospace;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tpl-arch-elegance .arch-num{color:#0000;-webkit-text-stroke:1px var(--ink,#3a1e12);letter-spacing:-.02em;pointer-events:none;font-family:Italiana,serif;font-size:120px;line-height:1;position:absolute;bottom:-36px;right:-12px}.tpl-arch-elegance .arch-caption{text-align:center;margin-top:72px;position:relative}.tpl-arch-elegance .arch-caption:before{content:"";background:var(--line,#3a1e1229);width:1px;height:28px;position:absolute;top:-40px;left:50%}.tpl-arch-elegance .arch-caption .date{letter-spacing:.26em;color:var(--muted,#9a7a65);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:10px}.tpl-arch-elegance .arch-caption .name{letter-spacing:.15em;text-transform:uppercase;color:var(--ink,#3a1e12);font-family:Italiana,serif;font-size:22px}.tpl-arch-elegance .events-strip{border-top:1px solid var(--line,#3a1e1229);background:var(--card,#f7ecd8);text-align:center;padding:140px 60px 100px}.tpl-arch-elegance .events-strip .kicker{color:var(--muted,#9a7a65);margin-bottom:28px}.tpl-arch-elegance .events-strip h2{margin-bottom:24px;font-family:Italiana,serif;font-size:clamp(56px,7vw,104px);line-height:1}.tpl-arch-elegance .events-strip p.lede{font-family:var(--font-heading,"Bodoni Moda"), serif;max-width:640px;color:var(--ink-soft,#5c2e1e);margin:0 auto;font-size:22px;font-style:italic;line-height:1.5}.tpl-arch-elegance .event-grid{border-top:1px solid var(--line,#3a1e1229);border-bottom:1px solid var(--line,#3a1e1229);grid-template-columns:repeat(4,1fr);gap:0;margin-top:100px;display:grid}.tpl-arch-elegance .event-card{border-right:1px solid var(--line,#3a1e1229);text-align:left;padding:56px 36px;transition:background .3s;position:relative}.tpl-arch-elegance .event-card:last-child{border-right:none}.tpl-arch-elegance .event-card:hover{background:#1a1a1a05}.tpl-arch-elegance .event-card .num{color:#0000;-webkit-text-stroke:1px var(--ink,#3a1e12);margin-bottom:20px;font-family:Italiana,serif;font-size:56px;line-height:1}.tpl-arch-elegance .event-card h3{letter-spacing:.04em;margin-bottom:6px;font-family:Italiana,serif;font-size:44px;line-height:1}.tpl-arch-elegance .event-card .subtitle{font-family:var(--font-heading,"Bodoni Moda"), serif;color:var(--muted,#9a7a65);margin-bottom:32px;font-size:16px;font-style:italic}.tpl-arch-elegance .event-card .detail{border-top:1px solid var(--line,#3a1e1229);flex-direction:column;gap:4px;padding:14px 0;display:flex}.tpl-arch-elegance .event-card .detail:last-child{border-bottom:1px solid var(--line,#3a1e1229)}.tpl-arch-elegance .event-card .detail .k{letter-spacing:.28em;text-transform:uppercase;color:var(--muted,#9a7a65);font-size:9px;font-weight:500}.tpl-arch-elegance .event-card .detail .v{font-family:var(--font-heading,"Bodoni Moda"), serif;color:var(--ink,#3a1e12);font-size:16px;line-height:1.35}.tpl-arch-elegance .feature-strip{background:var(--card,#f7ecd8);text-align:center;border-top:1px solid var(--line,#3a1e1229);padding:120px 60px}.tpl-arch-elegance .feature-img{aspect-ratio:16/7;background:#2a2825;width:100%;max-width:1100px;margin:0 auto;position:relative;overflow:hidden}.tpl-arch-elegance .feature-img .img-ph{width:100%;height:100%;position:absolute;inset:0}.tpl-arch-elegance .feature-img .ph-label{letter-spacing:.22em;text-transform:uppercase;color:#ffffffd9;background:#00000080;padding:8px 14px;font-family:JetBrains Mono,monospace;font-size:11px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tpl-arch-elegance .feature-img .ph-overlay{pointer-events:none;background:repeating-linear-gradient(120deg,#ffffff0f,#ffffff0f 2px,#fff0 2px 18px);position:absolute;inset:0}.tpl-arch-elegance .feature-caption{letter-spacing:.02em;margin-top:64px;font-family:Italiana,serif;font-size:clamp(40px,5vw,76px);line-height:1}.tpl-arch-elegance .feature-caption em{font-family:var(--font-heading,"Bodoni Moda"), serif;font-style:italic;font-weight:400}.tpl-arch-elegance .feature-sub{font-family:var(--font-heading,"Bodoni Moda"), serif;color:var(--muted,#9a7a65);margin-top:20px;font-size:18px;font-style:italic}.tpl-arch-elegance .rsvp-block{background:var(--card,#f7ecd8);text-align:center;border-top:1px solid var(--line,#3a1e1229);padding:140px 60px 160px;position:relative}.tpl-arch-elegance .rsvp-block h3{margin-bottom:28px;font-family:Italiana,serif;font-size:clamp(60px,7vw,100px);line-height:1}.tpl-arch-elegance .rsvp-block p{font-family:var(--font-heading,"Bodoni Moda"), serif;color:var(--ink-soft,#5c2e1e);max-width:520px;margin:0 auto 48px;font-size:20px;font-style:italic;line-height:1.55}.tpl-arch-elegance .rsvp-btn{background:var(--ink,#3a1e12);color:var(--card,#f7ecd8);letter-spacing:.36em;text-transform:uppercase;cursor:pointer;font-size:10px;font-weight:500;font-family:var(--font-body,"Inter"), system-ui, sans-serif;border:none;align-items:center;gap:14px;padding:18px 40px;transition:background .2s,letter-spacing .2s;display:inline-flex}.tpl-arch-elegance .rsvp-btn:hover{background:var(--ink-soft,#5c2e1e);letter-spacing:.42em}.tpl-arch-elegance footer{border-top:1px solid var(--line,#3a1e1229);background:var(--card,#f7ecd8);justify-content:space-between;align-items:flex-end;gap:40px;padding:60px;display:flex}.tpl-arch-elegance footer .monogram{letter-spacing:.02em;font-family:Italiana,serif;font-size:clamp(60px,8vw,120px);line-height:1}.tpl-arch-elegance footer .monogram em{font-family:var(--font-heading,"Bodoni Moda"), serif;font-style:italic}.tpl-arch-elegance footer .foot-meta{text-align:right;font-family:var(--font-heading,"Bodoni Moda"), serif;color:var(--muted,#9a7a65);font-size:14px;line-height:1.8}.tpl-arch-elegance footer .foot-meta a{color:var(--ink,#3a1e12);border-bottom:1px solid var(--line,#3a1e1229);text-decoration:none}.tpl-arch-elegance .modal-backdrop{-webkit-backdrop-filter:blur(12px);z-index:100;opacity:0;pointer-events:none;background:#1a1a1a80;justify-content:center;align-items:center;padding:40px 20px;transition:opacity .3s;display:flex;position:fixed;inset:0}.tpl-arch-elegance .modal-backdrop.open{opacity:1;pointer-events:auto}.tpl-arch-elegance .modal{background:var(--card,#f7ecd8);width:100%;max-width:540px;max-height:92vh;padding:56px 56px 48px;transition:transform .3s;position:relative;overflow-y:auto;transform:translateY(20px)}.tpl-arch-elegance .modal-backdrop.open .modal{transform:translateY(0)}.tpl-arch-elegance .modal-close{cursor:pointer;color:var(--ink,#3a1e12);opacity:.55;background:0 0;border:none;font-size:20px;position:absolute;top:20px;right:24px}.tpl-arch-elegance .modal-close:hover{opacity:1}.tpl-arch-elegance .modal h2{margin-bottom:8px;font-family:Italiana,serif;font-size:52px;line-height:1}.tpl-arch-elegance .modal p.sub{font-family:var(--font-heading,"Bodoni Moda"), serif;color:var(--muted,#9a7a65);margin-bottom:32px;font-size:16px;font-style:italic}.tpl-arch-elegance .field{flex-direction:column;gap:6px;margin-bottom:20px;display:flex}.tpl-arch-elegance .field label{letter-spacing:.24em;text-transform:uppercase;color:var(--ink,#3a1e12);font-size:10px;font-weight:500}.tpl-arch-elegance .field input,.tpl-arch-elegance .field select{border:none;border-bottom:1px solid var(--line,#3a1e1229);font-family:var(--font-heading,"Bodoni Moda"), serif;color:var(--ink,#3a1e12);background:0 0;outline:none;padding:10px 0;font-size:18px;transition:border-color .2s}.tpl-arch-elegance .field input:focus,.tpl-arch-elegance .field select:focus{border-color:var(--ink,#3a1e12)}.tpl-arch-elegance .event-chips{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.tpl-arch-elegance .chip{border:1px solid var(--line,#3a1e1229);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;color:var(--ink,#3a1e12);font-size:10px;font-family:var(--font-body,"Inter"), system-ui, sans-serif;background:0 0;padding:10px 16px;font-weight:500;transition:all .2s}.tpl-arch-elegance .chip.on{background:var(--ink,#3a1e12);color:var(--card,#f7ecd8);border-color:var(--ink,#3a1e12)}.tpl-arch-elegance .submit-btn{background:var(--ink,#3a1e12);color:var(--card,#f7ecd8);letter-spacing:.32em;text-transform:uppercase;cursor:pointer;width:100%;font-size:10px;font-weight:500;font-family:var(--font-body,"Inter"), system-ui, sans-serif;border:none;margin-top:28px;padding:16px 28px}.tpl-arch-elegance .success-state{text-align:center;padding:40px 0}.tpl-arch-elegance .success-state .seal{border:1px solid var(--ink,#3a1e12);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 24px;font-family:Italiana,serif;font-size:28px;display:flex}.tpl-arch-elegance .tweaks{background:var(--card,#f7ecd8);border:1px solid var(--line,#3a1e1229);z-index:200;width:280px;font-family:var(--font-body,"Inter"), system-ui, sans-serif;padding:20px;position:fixed;bottom:24px;right:24px;box-shadow:0 20px 60px #1a1a1a26}.tpl-arch-elegance .tweaks h5{letter-spacing:.3em;text-transform:uppercase;margin-bottom:16px;font-size:10px}.tpl-arch-elegance .tweak-row{margin-bottom:14px}.tpl-arch-elegance .tweak-row label{letter-spacing:.18em;text-transform:uppercase;color:var(--muted,#9a7a65);margin-bottom:6px;font-size:10px;display:block}.tpl-arch-elegance .palette-row{flex-wrap:wrap;gap:6px;display:flex}.tpl-arch-elegance .sw{cursor:pointer;border:2px solid #0000;border-radius:50%;width:32px;height:32px;transition:border-color .15s}.tpl-arch-elegance .sw.on{border-color:var(--ink,#3a1e12)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tpl-arch-elegance .invite-badge svg{animation:32s linear infinite spin}@media (max-width:1080px){.tpl-arch-elegance .page-shell{margin:0}.tpl-arch-elegance .hero{min-height:auto;padding:28px 24px 60px}.tpl-arch-elegance .nav{gap:20px;margin-left:28px}.tpl-arch-elegance .nav a:nth-child(n+3){display:none}.tpl-arch-elegance .top-bar{margin-bottom:40px}.tpl-arch-elegance .hero-body{grid-template-columns:1fr;gap:60px}.tpl-arch-elegance .save-stack .line:nth-child(2){padding-left:16px}.tpl-arch-elegance .save-stack .line:nth-child(3){padding-left:36px}.tpl-arch-elegance .invite-badge{margin-top:24px;position:relative;bottom:auto;left:auto}.tpl-arch-elegance .arches{grid-template-columns:repeat(3,1fr);gap:12px}.tpl-arch-elegance .arch-num{font-size:64px}.tpl-arch-elegance .arch-caption{margin-top:56px}.tpl-arch-elegance .event-grid{grid-template-columns:repeat(2,1fr)}.tpl-arch-elegance .event-card{border-right:none;border-bottom:1px solid var(--line,#3a1e1229);padding:36px 24px}.tpl-arch-elegance .event-card:nth-child(2){border-right:none}.tpl-arch-elegance .event-card:nth-child(odd){border-right:1px solid var(--line,#3a1e1229)}.tpl-arch-elegance .events-strip,.tpl-arch-elegance .feature-strip,.tpl-arch-elegance .rsvp-block{padding:80px 24px}.tpl-arch-elegance footer{flex-direction:column;align-items:flex-start;gap:28px;padding:40px 24px}.tpl-arch-elegance footer .foot-meta{text-align:left}}@media (max-width:640px){.tpl-arch-elegance .arches{grid-template-columns:1fr;gap:56px}.tpl-arch-elegance .event-grid{grid-template-columns:1fr}.tpl-arch-elegance .event-card{border-right:none!important}}
.tpl-vibrant-modern{font-family:var(--font-body,"Poppins"), sans-serif;background:linear-gradient(180deg, var(--page-bg,#f8e5e4) 0%, var(--page-bg-2,#fdf2f1) 50%, var(--page-bg,#f8e5e4) 100%);color:var(--ink,#1f1f1f);-webkit-font-smoothing:antialiased;--muted:#1f1f1f99;min-height:100vh;font-weight:400;overflow-x:hidden}.tpl-vibrant-modern *{box-sizing:border-box;margin:0;padding:0}.tpl-vibrant-modern{scroll-behavior:smooth}.tpl-vibrant-modern .display{font-family:var(--font-heading,"Oswald"), sans-serif;letter-spacing:.02em;font-weight:700}.tpl-vibrant-modern .script{font-family:Dancing Script,cursive}.tpl-vibrant-modern .page-shell{background:#fff;border-radius:4px;max-width:1400px;margin:40px auto;position:relative;overflow:hidden;box-shadow:0 30px 80px #c8326426,0 4px 16px #1f1f1f0f}.tpl-vibrant-modern .nav-bar{z-index:20;background:linear-gradient(#fffc 0%,#fff0 100%);justify-content:center;align-items:center;gap:52px;padding:28px 60px;display:flex;position:relative}.tpl-vibrant-modern .nav-bar a{color:#232323;letter-spacing:.18em;text-transform:uppercase;font-size:12px;font-weight:600;text-decoration:none;transition:color .2s}.tpl-vibrant-modern .nav-bar a:hover{color:var(--pink,#e8276c)}.tpl-vibrant-modern .nav-monogram{font-family:var(--font-heading,"Oswald"), sans-serif;letter-spacing:.1em;align-items:center;gap:10px;font-size:22px;font-weight:700;display:flex}.tpl-vibrant-modern .nav-monogram .heart{color:var(--pink,#e8276c);font-size:18px;animation:1.8s ease-in-out infinite vm-pulse}@keyframes vm-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.tpl-vibrant-modern .hero{background:linear-gradient(#e8ded8 0%,#d6c8bf 60%,#b8a496 100%);height:640px;position:relative;overflow:hidden}.tpl-vibrant-modern .hero-bg{z-index:1;background:radial-gradient(at 30% 40%,#fff6 0%,#0000 50%),linear-gradient(135deg,#d4c8ba 0%,#b8a89a 40%,#8b7a6b 100%);position:absolute;inset:0}.tpl-vibrant-modern .hero-bg:after{content:"";background-image:radial-gradient(circle at 20% 30%,#ffdcc84d 0%,#0000 25%),radial-gradient(circle at 80%,#b4968266 0%,#0000 30%);position:absolute;inset:0}.tpl-vibrant-modern .hero-ph-label{z-index:2;font-family:var(--font-body,"Poppins"), sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#ffffffb3;-webkit-backdrop-filter:blur(4px);background:#1c1c1c66;padding:6px 12px;font-size:10px;position:absolute;bottom:24px;left:24px}.tpl-vibrant-modern .hero-image{z-index:1;background:0 0;position:absolute;inset:0}.tpl-vibrant-modern .hero-image .ph-label{display:none}.tpl-vibrant-modern .hero-bg-pattern{pointer-events:none;z-index:2;background-image:repeating-linear-gradient(92deg,#ffffff0a 0 3px,#0000 3px 28px);position:absolute;inset:0}.tpl-vibrant-modern .label-panel{color:#fff;text-align:center;z-index:15;background:#1c1c1c;width:140px;padding:40px 20px 28px;position:absolute;top:0;left:50%;transform:translate(-50%)}.tpl-vibrant-modern .label-panel:after{content:"";clip-path:polygon(0 0,100% 0,50% 100%);background:#1c1c1c;height:16px;position:absolute;bottom:-16px;left:0;right:0}.tpl-vibrant-modern .label-panel .letters{font-family:var(--font-heading,"Oswald"), sans-serif;letter-spacing:.12em;margin-bottom:26px;font-size:28px;font-weight:700;line-height:1.1}.tpl-vibrant-modern .label-panel .tag{letter-spacing:.22em;text-transform:uppercase;color:#ffffffd9;font-size:9px;font-weight:500}.tpl-vibrant-modern .portal{z-index:10;background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:620px;height:620px;display:flex;position:absolute;top:56%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 60px #b43c6426}.tpl-vibrant-modern .portal-content{text-align:center;padding:0 40px;position:relative}.tpl-vibrant-modern .names{font-family:var(--font-heading,"Oswald"), sans-serif;letter-spacing:.02em;font-size:clamp(56px,6vw,92px);font-weight:700;line-height:.95}.tpl-vibrant-modern .names .name-a{background:linear-gradient(90deg, var(--pink,#e8276c) 0%, var(--pink-deep,#c91a5a) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.tpl-vibrant-modern .names .name-b{background:linear-gradient(90deg, var(--orange,#f26b2a) 0%, var(--orange-deep,#e04f1a) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.tpl-vibrant-modern .and-divider{justify-content:center;align-items:center;gap:16px;margin:18px 0;display:flex}.tpl-vibrant-modern .and-divider .line{opacity:.7;background:#1c1c1c;width:34px;height:1px}.tpl-vibrant-modern .and-divider .and{font-family:var(--font-body,"Poppins"), sans-serif;letter-spacing:.28em;text-transform:uppercase;color:#1c1c1c;font-size:13px;font-weight:500}.tpl-vibrant-modern .date-block{align-items:center;gap:18px;margin-top:40px;padding:0;display:inline-flex}.tpl-vibrant-modern .date-block .m,.tpl-vibrant-modern .date-block .y{font-family:var(--font-body,"Poppins"), sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#9a8a8a;font-size:13px;font-weight:500}.tpl-vibrant-modern .date-block .d{font-family:var(--font-heading,"Oswald"), sans-serif;color:#1c1c1c;font-size:42px;font-weight:700;line-height:1}.tpl-vibrant-modern .date-block .v-line{background:#1f1f1f14;width:1px;height:40px}.tpl-vibrant-modern .confetti{z-index:11;pointer-events:none;position:absolute}.tpl-vibrant-modern .rings{z-index:30;filter:drop-shadow(0 6px 12px #c8823266);width:140px;height:auto;position:absolute;bottom:-30px;left:60px}.tpl-vibrant-modern .date-strip{text-align:center;z-index:5;background:#fff;border-top:1px solid #1f1f1f14;padding:60px;position:relative}.tpl-vibrant-modern .date-strip .kicker{color:var(--pink,#e8276c);margin-bottom:8px;font-family:Dancing Script,cursive;font-size:32px}.tpl-vibrant-modern .date-strip h2{font-family:var(--font-heading,"Oswald"), sans-serif;letter-spacing:.04em;color:#1c1c1c;margin-bottom:40px;font-size:clamp(32px,4vw,48px);font-weight:700}.tpl-vibrant-modern .countdown{grid-template-columns:repeat(4,1fr);gap:24px;max-width:720px;margin:0 auto;display:grid}.tpl-vibrant-modern .cd-cell{background:linear-gradient(180deg, #fff 0%, var(--page-bg-2,#fdf2f1) 100%);border:1px solid var(--pink-pale,#fbdce3);border-radius:4px;padding:24px 12px;position:relative}.tpl-vibrant-modern .cd-cell:after{content:"";background:linear-gradient(90deg, var(--pink,#e8276c) 0%, var(--orange,#f26b2a) 100%);height:3px;position:absolute;top:0;left:0;right:0}.tpl-vibrant-modern .cd-cell .num{font-family:var(--font-heading,"Oswald"), sans-serif;color:#1c1c1c;margin-bottom:8px;font-size:44px;font-weight:700;line-height:1}.tpl-vibrant-modern .cd-cell .lbl{letter-spacing:.26em;text-transform:uppercase;color:#9a8a8a;font-size:10px;font-weight:500}.tpl-vibrant-modern .story-section{text-align:center;background:linear-gradient(180deg, #fff 0%, var(--page-bg-2,#fdf2f1) 100%);padding:100px 60px;position:relative}.tpl-vibrant-modern .story-section .kicker{color:var(--pink,#e8276c);margin-bottom:6px;font-family:Dancing Script,cursive;font-size:32px}.tpl-vibrant-modern .story-section h2{font-family:var(--font-heading,"Oswald"), sans-serif;color:#1c1c1c;margin-bottom:32px;font-size:clamp(36px,4.5vw,56px);font-weight:700}.tpl-vibrant-modern .story-section p{color:#555;max-width:700px;margin:0 auto;font-size:17px;line-height:1.75}.tpl-vibrant-modern .story-underline{background:linear-gradient(90deg, var(--pink,#e8276c) 0%, var(--orange,#f26b2a) 100%);width:60px;height:3px;margin-bottom:28px;display:inline-block}.tpl-vibrant-modern .events-section{background:#fff;padding:100px 60px;position:relative}.tpl-vibrant-modern .events-section .head{text-align:center;margin-bottom:80px}.tpl-vibrant-modern .events-section .head .kicker{color:var(--pink,#e8276c);margin-bottom:6px;font-family:Dancing Script,cursive;font-size:32px}.tpl-vibrant-modern .events-section .head h2{font-family:var(--font-heading,"Oswald"), sans-serif;color:#1c1c1c;font-size:clamp(36px,4.5vw,56px);font-weight:700}.tpl-vibrant-modern .events-grid{grid-template-columns:repeat(4,1fr);gap:24px;max-width:1200px;margin:0 auto;display:grid}.tpl-vibrant-modern .event-card{background:#fff;border-radius:8px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 8px 30px #b43c6414}.tpl-vibrant-modern .event-card:hover{transform:translateY(-6px);box-shadow:0 18px 48px #b43c6426}.tpl-vibrant-modern .event-card .img{height:180px;position:relative;overflow:hidden}.tpl-vibrant-modern .event-card .img .img-ph{width:100%;height:100%;position:absolute;inset:0}.tpl-vibrant-modern .event-card .img .ph-label{color:#fff;letter-spacing:.2em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);white-space:nowrap;background:#00000059;padding:6px 10px;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tpl-vibrant-modern .event-card .body{padding:28px 24px 32px}.tpl-vibrant-modern .event-card .num-ribbon{font-family:var(--font-heading,"Oswald"), sans-serif;letter-spacing:.2em;color:#fff;background:linear-gradient(90deg, var(--pink,#e8276c) 0%, var(--orange,#f26b2a) 100%);border-radius:2px;margin-bottom:14px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-block}.tpl-vibrant-modern .event-card h3{font-family:var(--font-heading,"Oswald"), sans-serif;color:#1c1c1c;letter-spacing:.02em;margin-bottom:6px;font-size:28px;font-weight:700}.tpl-vibrant-modern .event-card .sub{color:var(--pink,#e8276c);margin-bottom:18px;font-family:Dancing Script,cursive;font-size:20px}.tpl-vibrant-modern .event-card .row{color:#555;border-top:1px solid #1f1f1f14;align-items:flex-start;gap:12px;padding:10px 0;font-size:13px;line-height:1.5;display:flex}.tpl-vibrant-modern .event-card .row:last-child{border-bottom:1px solid #1f1f1f14}.tpl-vibrant-modern .event-card .row .icon{width:14px;height:14px;color:var(--pink,#e8276c);flex-shrink:0;margin-top:2px}.tpl-vibrant-modern .event-card .row .val{flex:1}.tpl-vibrant-modern .event-card .row .k{letter-spacing:.18em;text-transform:uppercase;color:#9a8a8a;margin-bottom:2px;font-size:10px;font-weight:600}.tpl-vibrant-modern .event-card .row .addr{color:#9a8a8a;font-size:12px}.tpl-vibrant-modern .img-engagement{background:linear-gradient(135deg,#fadbcf 0%,#e8a690 100%)}.tpl-vibrant-modern .img-haldi{background:linear-gradient(135deg,#ffe999 0%,#f2b84b 100%)}.tpl-vibrant-modern .img-sangeet{background:linear-gradient(135deg,#7d4a7c 0%,#3d1f3e 100%)}.tpl-vibrant-modern .img-wedding{background:linear-gradient(135deg,#e63f6e 0%,#f26b2a 100%)}.tpl-vibrant-modern .img-overlay{pointer-events:none;background:repeating-linear-gradient(135deg,#ffffff14,#ffffff14 2px,#0000 2px 14px);position:absolute;inset:0}.tpl-vibrant-modern .ww-section{background:linear-gradient(180deg, #fff 0%, var(--page-bg-2,#fdf2f1) 100%);text-align:center;padding:100px 60px}.tpl-vibrant-modern .ww-section .kicker{color:var(--pink,#e8276c);margin-bottom:6px;font-family:Dancing Script,cursive;font-size:32px}.tpl-vibrant-modern .ww-section h2{font-family:var(--font-heading,"Oswald"), sans-serif;color:#1c1c1c;margin-bottom:48px;font-size:clamp(36px,4.5vw,56px);font-weight:700}.tpl-vibrant-modern .ww-grid{grid-template-columns:1fr 1fr;gap:40px;max-width:1080px;margin:0 auto;display:grid}.tpl-vibrant-modern .ww-card{text-align:left;background:#fff;border-radius:8px;padding:48px 40px;box-shadow:0 10px 40px #b43c6414}.tpl-vibrant-modern .ww-card .tag{letter-spacing:.24em;text-transform:uppercase;color:#fff;background:#1c1c1c;margin-bottom:24px;padding:6px 14px;font-size:10px;font-weight:600;display:inline-block}.tpl-vibrant-modern .ww-card h3{font-family:var(--font-heading,"Oswald"), sans-serif;color:#1c1c1c;letter-spacing:.02em;margin-bottom:10px;font-size:32px;font-weight:700}.tpl-vibrant-modern .ww-card .sub{color:var(--pink,#e8276c);margin-bottom:24px;font-family:Dancing Script,cursive;font-size:22px}.tpl-vibrant-modern .ww-card p{color:#555;margin-bottom:20px;font-size:15px;line-height:1.7}.tpl-vibrant-modern .ww-card .btn{color:var(--pink,#e8276c);letter-spacing:.2em;text-transform:uppercase;border-bottom:2px solid var(--pink,#e8276c);align-items:center;gap:10px;padding-bottom:4px;font-size:12px;font-weight:600;text-decoration:none;transition:gap .2s;display:inline-flex}.tpl-vibrant-modern .ww-card .btn:hover{gap:14px}.tpl-vibrant-modern .rsvp-section{background:linear-gradient(135deg, var(--pink,#e8276c) 0%, var(--orange,#f26b2a) 100%);text-align:center;color:#fff;padding:120px 60px;position:relative;overflow:hidden}.tpl-vibrant-modern .rsvp-section:before{content:"";background:radial-gradient(at 30% 30%,#ffffff26 0%,#0000 50%),radial-gradient(at 70% 70%,#0000001a 0%,#0000 50%);position:absolute;inset:0}.tpl-vibrant-modern .rsvp-section .inner{z-index:2;position:relative}.tpl-vibrant-modern .rsvp-section .kicker{color:#fff;margin-bottom:6px;font-family:Dancing Script,cursive;font-size:38px}.tpl-vibrant-modern .rsvp-section h2{font-family:var(--font-heading,"Oswald"), sans-serif;color:#fff;letter-spacing:.02em;margin-bottom:24px;font-size:clamp(40px,5vw,64px);font-weight:700}.tpl-vibrant-modern .rsvp-section p{color:#fffffff2;max-width:560px;margin:0 auto 40px;font-size:17px;line-height:1.7}.tpl-vibrant-modern .rsvp-section .rsvp-btn{color:var(--pink,#e8276c);letter-spacing:.28em;text-transform:uppercase;cursor:pointer;font-size:12px;font-weight:700;font-family:var(--font-body,"Poppins"), sans-serif;background:#fff;border:none;border-radius:2px;align-items:center;gap:14px;padding:18px 44px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.tpl-vibrant-modern .rsvp-section .rsvp-btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0003}.tpl-vibrant-modern footer{color:#fff;background:#1c1c1c;grid-template-columns:1fr auto 1fr;align-items:center;gap:40px;padding:60px;display:grid}.tpl-vibrant-modern footer .foot-left,.tpl-vibrant-modern footer .foot-right{letter-spacing:.18em;text-transform:uppercase;color:#ffffffa6;font-size:12px;line-height:1.6}.tpl-vibrant-modern footer .foot-right{text-align:right}.tpl-vibrant-modern footer .foot-center{text-align:center}.tpl-vibrant-modern footer .foot-center .mon{font-family:var(--font-heading,"Oswald"), sans-serif;letter-spacing:.1em;justify-content:center;align-items:center;gap:12px;font-size:32px;font-weight:700;display:flex}.tpl-vibrant-modern footer .foot-center .heart{color:var(--pink,#e8276c);animation:1.8s ease-in-out infinite vm-pulse}.tpl-vibrant-modern footer .foot-center .date{letter-spacing:.3em;color:#fff9;margin-top:8px;font-size:11px}@media (max-width:1080px){.tpl-vibrant-modern .page-shell{margin:0}.tpl-vibrant-modern .nav-bar{flex-wrap:wrap;gap:20px;padding:20px 24px}.tpl-vibrant-modern .nav-bar a:nth-child(n+5){display:none}.tpl-vibrant-modern .hero{height:540px}.tpl-vibrant-modern .portal{width:420px;height:420px}.tpl-vibrant-modern .names{font-size:48px}.tpl-vibrant-modern .date-strip,.tpl-vibrant-modern .story-section,.tpl-vibrant-modern .events-section,.tpl-vibrant-modern .ww-section,.tpl-vibrant-modern .rsvp-section{padding:60px 24px}.tpl-vibrant-modern .events-grid{grid-template-columns:repeat(2,1fr)}.tpl-vibrant-modern .ww-grid{grid-template-columns:1fr}.tpl-vibrant-modern .countdown{grid-template-columns:repeat(2,1fr)}.tpl-vibrant-modern footer{text-align:center;grid-template-columns:1fr;gap:20px;padding:40px 24px}.tpl-vibrant-modern footer .foot-right{text-align:center}.tpl-vibrant-modern .rings{width:90px;bottom:-10px;left:20px}}@media (max-width:560px){.tpl-vibrant-modern .portal{width:340px;height:340px}.tpl-vibrant-modern .names{font-size:40px}.tpl-vibrant-modern .events-grid{grid-template-columns:1fr}.tpl-vibrant-modern .countdown{grid-template-columns:repeat(2,1fr);gap:12px}}
.tpl-editorial-portrait{font-family:var(--font-body,"Inter"), system-ui, sans-serif;background:var(--bg,#f7f5f1);color:var(--ink,#2a2824);-webkit-font-smoothing:antialiased;--muted:#6b665e;font-weight:300;overflow-x:hidden}.tpl-editorial-portrait *{box-sizing:border-box;margin:0;padding:0}.tpl-editorial-portrait .serif{font-family:var(--font-heading,"Cormorant Garamond"), serif}.tpl-editorial-portrait .script{font-family:Allura,cursive}.tpl-editorial-portrait .label{letter-spacing:.32em;text-transform:uppercase;font-size:10px;font-weight:500}.tpl-editorial-portrait .ph{background-position:50%;background-size:cover;position:relative;overflow:hidden}.tpl-editorial-portrait .ph:after{content:attr(data-label);font-family:var(--font-body,"Inter"), system-ui, sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#ffffffd9;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000059;padding:6px 12px;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tpl-editorial-portrait .ph-stripe{background-image:repeating-linear-gradient(135deg,#ffffff12 0 3px,#0000 3px 20px)}.tpl-editorial-portrait .portrait .img-ph,.tpl-editorial-portrait .gallery-cell .img-ph,.tpl-editorial-portrait .hero-photo{width:100%;height:100%;position:absolute;inset:0}.tpl-editorial-portrait .hero-photo{z-index:1}.tpl-editorial-portrait .img-ph .ph-label{font-family:var(--font-body,"Inter"), system-ui, sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#ffffffeb;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;background:#00000059;border-radius:2px;padding:6px 12px;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tpl-editorial-portrait .hero-photo .ph-label{top:auto;bottom:20px;left:20px;transform:none}.tpl-editorial-portrait .tint-warm{background-color:#c9b89a}.tpl-editorial-portrait .tint-sage{background-color:#b0b3a0}.tpl-editorial-portrait .tint-dusk{background-color:#8a8680}.tpl-editorial-portrait .tint-blush{background-color:#d6b5a8}.tpl-editorial-portrait .tint-stone{background-color:#a69d92}.tpl-editorial-portrait .tint-cream{background-color:#dac9b4}.tpl-editorial-portrait .tint-shadow{background-color:#5c5850}.tpl-editorial-portrait .tint-hands{background-color:#d4b8a0}.tpl-editorial-portrait .topbar{text-align:center;color:var(--taupe,#6d635a);letter-spacing:.06em;z-index:30;padding:22px 40px;font-family:Allura,cursive;font-size:26px;position:absolute;top:0;left:0;right:0}.tpl-editorial-portrait .hero{justify-content:center;align-items:center;min-height:92vh;padding:120px 40px 60px;display:flex;position:relative}.tpl-editorial-portrait .hero-bg{background-image:linear-gradient(#00000026 0%,#0000000d 40%,#0003 100%);background-position:50%;background-size:cover;position:absolute;inset:0}.tpl-editorial-portrait .hero-bg:before{content:"";background:linear-gradient(90deg,#9b8470 0%,#c2a88f 30%,#d4bca5 50%,#c2a88f 70%,#8b7563 100%);position:absolute;inset:0}.tpl-editorial-portrait .hero-bg:after{content:"";background-image:repeating-linear-gradient(102deg,#ffffff0f 0 2px,#0000 2px 22px),radial-gradient(at 20% 60%,#fff0dc33 0%,#0000 40%),radial-gradient(at 75% 55%,#8c645033 0%,#0000 40%);position:absolute;inset:0}.tpl-editorial-portrait .hero-ph-label{z-index:2;letter-spacing:.2em;text-transform:uppercase;color:#fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;padding:6px 12px;font-size:10px;position:absolute;bottom:20px;left:20px}.tpl-editorial-portrait .invite-card{z-index:10;-webkit-backdrop-filter:blur(12px);color:#f2ede4;text-align:center;background:#1e1c19b8;border:1px solid #ffffff14;width:100%;max-width:440px;padding:48px 72px 40px;position:relative}.tpl-editorial-portrait .invite-card .ornament{opacity:.82;justify-content:center;margin-bottom:18px;display:flex}.tpl-editorial-portrait .invite-card h1{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.12em;white-space:nowrap;margin-bottom:22px;font-size:44px;font-weight:400;line-height:1.1}.tpl-editorial-portrait .invite-card .divider{background:#d4b77e99;width:40px;height:1px;margin:0 auto 20px}.tpl-editorial-portrait .invite-card .sub{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.05em;color:#f2ede4d9;margin-bottom:22px;font-size:16px;font-style:italic}.tpl-editorial-portrait .invite-card .couple{color:var(--gold-soft,#d4b77e);margin-bottom:28px;font-family:Allura,cursive;font-size:36px;line-height:1.1}.tpl-editorial-portrait .invite-card .scroll{font-family:var(--font-body,"Inter"), system-ui, sans-serif;letter-spacing:.3em;text-transform:uppercase;color:#f2ede4b3;align-items:center;gap:8px;font-size:10px;text-decoration:none;display:inline-flex}.tpl-editorial-portrait .invite-card .scroll:after{content:"↓";font-size:14px}.tpl-editorial-portrait .portraits-section{background:var(--bg,#f7f5f1);text-align:center;padding:140px 40px 100px;position:relative}.tpl-editorial-portrait .portraits-wrap{max-width:560px;height:460px;margin:0 auto;position:relative}.tpl-editorial-portrait .portrait{aspect-ratio:3/4;width:210px;position:absolute}.tpl-editorial-portrait .portrait.bride{top:0;left:40px}.tpl-editorial-portrait .portrait.groom{top:40px;right:40px}.tpl-editorial-portrait .portrait .name{color:var(--taupe,#6d635a);white-space:nowrap;font-family:Allura,cursive;font-size:42px;position:absolute}.tpl-editorial-portrait .portrait.bride .name{bottom:-60px;left:-10px}.tpl-editorial-portrait .portrait.groom .name{top:-70px;right:-10px}.tpl-editorial-portrait .ornament-divider{opacity:.7;justify-content:center;align-items:center;margin:40px auto 20px;display:flex}.tpl-editorial-portrait .gallery-section{text-align:center;background:var(--bg,#f7f5f1);padding:60px 40px 120px}.tpl-editorial-portrait .gallery-section .tag{color:var(--taupe,#6d635a);margin-bottom:2px;font-family:Allura,cursive;font-size:30px}.tpl-editorial-portrait .gallery-section h2{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.16em;text-transform:uppercase;margin-bottom:48px;font-size:30px;font-weight:400}.tpl-editorial-portrait .gallery-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;gap:16px;max-width:880px;margin:0 auto;display:grid}.tpl-editorial-portrait .gallery-grid>div:first-child{grid-area:1/1/3}.tpl-editorial-portrait .gallery-grid>div:nth-child(2){grid-area:1/2/auto/4}.tpl-editorial-portrait .gallery-grid>div:nth-child(3){grid-area:1/4/3}.tpl-editorial-portrait .gallery-grid>div:nth-child(4){grid-area:2/2}.tpl-editorial-portrait .gallery-grid>div:nth-child(5){grid-area:2/3}.tpl-editorial-portrait .gallery-grid>div:nth-child(n+6){grid-column:span 2}.tpl-editorial-portrait .gallery-grid>.editable-list-add-btn{grid-column:1/-1;place-self:center}.tpl-editorial-portrait .gallery-cell{filter:grayscale(.15);width:100%;height:100%;transition:transform .4s,filter .4s;position:relative;overflow:hidden}.tpl-editorial-portrait .gallery-cell:hover{filter:grayscale(0);transform:scale(1.02)}.tpl-editorial-portrait .gallery-cell-label{z-index:2;color:#ffffffeb;font-family:var(--font-body,"Inter"), system-ui, sans-serif;letter-spacing:.2em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;border-radius:2px;padding:4px 10px;font-size:10px;position:absolute;bottom:12px;left:12px}.tpl-editorial-portrait .gallery-caption{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--muted,#8a8580);max-width:440px;margin:40px auto 0;font-size:14px;font-style:italic;line-height:1.7}.tpl-editorial-portrait .schedule-section{background:var(--bg,#f7f5f1);text-align:center;padding:60px 40px 120px}.tpl-editorial-portrait .schedule-section .tag{color:var(--taupe,#6d635a);margin-bottom:4px;font-family:Allura,cursive;font-size:30px}.tpl-editorial-portrait .schedule-section h2{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;font-size:30px;font-weight:400}.tpl-editorial-portrait .schedule-section .sub-note{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--muted,#8a8580);margin-bottom:56px;font-size:14px;font-style:italic}.tpl-editorial-portrait .chat-thread{flex-direction:column;gap:24px;max-width:620px;margin:0 auto;display:flex;position:relative}.tpl-editorial-portrait .chat-line{padding-left:60px;position:relative}.tpl-editorial-portrait .chat-line.right{text-align:right;padding-left:0;padding-right:60px}.tpl-editorial-portrait .chat-line .avatar{background:var(--gold-soft,#d4b77e);width:44px;height:44px;font-family:var(--font-heading,"Cormorant Garamond"), serif;color:#fff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:500;display:flex;position:absolute;top:0;box-shadow:0 2px 8px #00000014}.tpl-editorial-portrait .chat-line.left .avatar{left:0}.tpl-editorial-portrait .chat-line.right .avatar{right:0}.tpl-editorial-portrait .chat-bubble{text-align:left;border-left:2px solid var(--gold,#b08d4f);background:#fff;border-radius:4px;max-width:100%;padding:20px 26px;display:inline-block;box-shadow:0 4px 18px #2a28240f}.tpl-editorial-portrait .chat-line.right .chat-bubble{border-left:none;border-right:2px solid var(--gold,#b08d4f)}.tpl-editorial-portrait .chat-bubble .who{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--gold,#b08d4f);letter-spacing:.05em;margin-bottom:8px;font-size:13px;font-style:italic}.tpl-editorial-portrait .chat-bubble h4{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ink,#2a2824);margin-bottom:4px;font-size:22px;font-weight:500}.tpl-editorial-portrait .chat-bubble .event-meta{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--muted,#8a8580);margin-bottom:14px;font-size:13px;font-style:italic}.tpl-editorial-portrait .chat-bubble p{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--ink-soft,#3e3b36);font-size:15px;line-height:1.65}.tpl-editorial-portrait .chat-bubble .details-row{border-top:1px solid var(--line,#2a28241f);gap:20px;margin-top:14px;padding-top:12px;display:flex}.tpl-editorial-portrait .chat-bubble .d{letter-spacing:.12em;color:var(--muted,#8a8580);text-transform:uppercase;font-size:11px}.tpl-editorial-portrait .chat-bubble .d strong{font-family:var(--font-heading,"Cormorant Garamond"), serif;text-transform:none;letter-spacing:0;color:var(--ink,#2a2824);margin-top:2px;font-size:14px;font-weight:500;display:block}.tpl-editorial-portrait .rsvp-section{padding:100px 40px;position:relative;overflow:hidden}.tpl-editorial-portrait .rsvp-bg{background:linear-gradient(135deg,#e0c5a8 0%,#c8a88a 50%,#a68a6e 100%) 50%/cover;position:absolute;inset:0}.tpl-editorial-portrait .rsvp-bg:before{content:"";background-image:repeating-linear-gradient(120deg,#ffffff0d 0 2px,#0000 2px 18px);position:absolute;inset:0}.tpl-editorial-portrait .rsvp-bg:after{content:"";background:#fff5e859;position:absolute;inset:0}.tpl-editorial-portrait .rsvp-form{z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffe6;border-radius:4px;max-width:640px;margin:0 auto;padding:44px 48px;position:relative;box-shadow:0 20px 60px #2a282426}.tpl-editorial-portrait .rsvp-form .tag{color:var(--taupe,#6d635a);text-align:center;margin-bottom:2px;font-family:Allura,cursive;font-size:28px}.tpl-editorial-portrait .rsvp-form h3{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--ink,#2a2824);margin-bottom:28px;font-size:26px;font-weight:400}.tpl-editorial-portrait .rsvp-form p.body{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--ink-soft,#3e3b36);text-align:center;margin-bottom:24px;font-size:16px;font-style:italic;line-height:1.55}.tpl-editorial-portrait .rsvp-form .submit{background:var(--ink,#2a2824);color:#fff;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;width:100%;font-size:11px;font-weight:500;font-family:var(--font-body,"Inter"), system-ui, sans-serif;border:none;margin-top:4px;padding:14px;transition:background .2s}.tpl-editorial-portrait .rsvp-form .submit:hover{background:#000}.tpl-editorial-portrait .wishes-section{text-align:center;padding:100px 40px 80px}.tpl-editorial-portrait .wishes-section .tag{color:var(--taupe,#6d635a);margin-bottom:2px;font-family:Allura,cursive;font-size:30px}.tpl-editorial-portrait .wishes-section h2{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.16em;text-transform:uppercase;margin-bottom:32px;font-size:26px;font-weight:400}.tpl-editorial-portrait .wishes-card{border:1px solid var(--line,#2a28241f);background:#fff;max-width:640px;margin:0 auto;padding:32px 40px;box-shadow:0 4px 20px #2a28240f}.tpl-editorial-portrait .wishes-card p{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--ink-soft,#3e3b36);font-size:16px;font-style:italic;line-height:1.75}.tpl-editorial-portrait .seal-section{text-align:center;padding:60px 40px 40px}.tpl-editorial-portrait .seal-ornament-top{opacity:.7;margin-bottom:24px}.tpl-editorial-portrait .seal-monogram{color:var(--gold,#b08d4f);padding:0 20px;font-family:Allura,cursive;font-size:120px;font-weight:500;line-height:.9;display:inline-block;position:relative}.tpl-editorial-portrait .seal-monogram:before,.tpl-editorial-portrait .seal-monogram:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--gold,#b08d4f) 50%, transparent 100%);width:40px;height:1px;position:absolute;top:50%}.tpl-editorial-portrait .seal-monogram:before{left:-40px}.tpl-editorial-portrait .seal-monogram:after{right:-40px}.tpl-editorial-portrait .seal-date{font-family:var(--font-body,"Inter"), system-ui, sans-serif;letter-spacing:.32em;text-transform:uppercase;color:var(--muted,#8a8580);margin-top:16px;font-size:11px}.tpl-editorial-portrait .seal-names{font-family:var(--font-heading,"Cormorant Garamond"), serif;letter-spacing:.1em;color:var(--ink,#2a2824);margin-top:8px;font-size:16px}.tpl-editorial-portrait .seal-ornament-bot{opacity:.5;margin-top:32px}.tpl-editorial-portrait .thank-section{text-align:center;background:var(--bg,#f7f5f1);padding:60px 40px 80px}.tpl-editorial-portrait .thank-card{border:1px solid var(--line,#2a28241f);background:#fff;max-width:540px;margin:0 auto;padding:40px 32px}.tpl-editorial-portrait .thank-card .ty{color:var(--taupe,#6d635a);font-family:Allura,cursive;font-size:56px;line-height:1}.tpl-editorial-portrait .thank-card .for{font-family:var(--font-heading,"Cormorant Garamond"), serif;color:var(--muted,#8a8580);letter-spacing:.05em;margin-top:4px;font-size:15px;font-style:italic}.tpl-editorial-portrait .thank-card .foot-icons{border-top:1px solid var(--line,#2a28241f);justify-content:center;gap:16px;margin-top:24px;padding-top:20px;display:flex}.tpl-editorial-portrait .thank-card .foot-icons a{border:1px solid var(--line,#2a28241f);width:30px;height:30px;color:var(--taupe,#6d635a);border-radius:50%;justify-content:center;align-items:center;font-size:11px;text-decoration:none;transition:all .2s;display:flex}.tpl-editorial-portrait .thank-card .foot-icons a:hover{background:var(--ink,#2a2824);color:#fff;border-color:var(--ink,#2a2824)}@media (max-width:768px){.tpl-editorial-portrait .hero{min-height:80vh;padding:100px 20px 40px}.tpl-editorial-portrait .invite-card{padding:36px 24px}.tpl-editorial-portrait .invite-card h1{font-size:32px}.tpl-editorial-portrait .portraits-wrap{max-width:340px;height:400px}.tpl-editorial-portrait .portrait{width:150px}.tpl-editorial-portrait .portrait.bride{left:20px}.tpl-editorial-portrait .portrait.groom{right:20px}.tpl-editorial-portrait .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}.tpl-editorial-portrait .gallery-grid>div:first-child{grid-area:1/1}.tpl-editorial-portrait .gallery-grid>div:nth-child(2){grid-area:1/2}.tpl-editorial-portrait .gallery-grid>div:nth-child(3){grid-area:2/1/auto/3}.tpl-editorial-portrait .gallery-grid>div:nth-child(4){grid-area:3/1}.tpl-editorial-portrait .gallery-grid>div:nth-child(5){grid-area:3/2}.tpl-editorial-portrait .gallery-grid>div:nth-child(n+6){grid-column:span 2}.tpl-editorial-portrait .chat-line{padding-left:52px}.tpl-editorial-portrait .chat-line.right{padding-left:0;padding-right:52px}.tpl-editorial-portrait .rsvp-form{padding:28px 24px}.tpl-editorial-portrait .seal-monogram{font-size:80px}.tpl-editorial-portrait .chat-bubble .details-row{flex-wrap:wrap;gap:14px}}
