/* wedding.css */
@font-face{font-family:Cormorant;src:url('../fonts/cormorant.woff2') format('woff2');font-display:swap}
@font-face{font-family:GreatVibes;src:url('../fonts/great-vibes.woff2') format('woff2');font-display:swap}
@font-face{font-family:Inter;src:url('../fonts/inter-regular.woff2') format('woff2');font-weight:400;font-display:swap}
*{box-sizing:border-box;letter-spacing:0}html{scroll-behavior:smooth}body{margin:0;background:#fbfcf9;color:#32483e;font-family:Cormorant,Georgia,serif;line-height:1.65}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible{outline:3px solid #6ea4b9;outline-offset:5px}[hidden]{display:none!important}.lucide,[data-lucide]{height:18px;width:18px;flex-shrink:0}h2{font-family:GreatVibes,cursive;font-size:62px;font-weight:400;line-height:1.25}h3{font-size:30px;font-weight:400;line-height:1.3}.sample-bar{height:44px;background:#fff;border-bottom:1px solid #e4e7e1;display:flex;align-items:center;justify-content:space-between;padding:0 26px;gap:15px;position:relative;z-index:85;font-family:Inter,sans-serif;font-size:10px;color:#52665a}.sample-bar a{display:flex;align-items:center;gap:8px}.sample-bar>a:last-child{font-weight:600;color:#2b654f}.sample-bar .lucide{width:14px;height:14px}.envelope-intro{position:fixed;inset:0;z-index:75;background:#eef2eb;transition:opacity 1s ease,visibility 1s;overflow:hidden}.wedding:not(.wedding-ready) .envelope-intro{display:none}.wedding.has-preview .envelope-intro{top:44px}.envelope-canvas{position:absolute;inset:0;z-index:1}.envelope-canvas canvas{display:block;width:100%;height:100%}.envelope-heading{position:absolute;top:8%;width:100%;text-align:center;z-index:3;pointer-events:none}.envelope-heading>span{font:9px Inter,sans-serif;color:#78836e}.envelope-heading p{font-family:GreatVibes,cursive;font-size:40px;color:#364e3c;margin-top:10px}.envelope-caption{position:absolute;bottom:7%;width:100%;text-align:center;z-index:4}.envelope-caption p{font-size:24px;color:#647358;margin-bottom:10px}.open-text{border:0;background:transparent;color:#3e5e47;font-family:Inter,sans-serif;font-size:11px;display:inline-flex;align-items:center;gap:12px;padding:12px}.wax-seal{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);width:100px;height:100px;background:radial-gradient(circle,#ceac63 25%,#ad8547 66%,#d0b277 70%,#967246 85%);border:3px solid #bb975f;border-radius:50%;box-shadow:0 8px 12px #3c47252b,inset 0 2px 8px #fff9;color:#785826;transition:transform .4s}.wax-seal span{font:36px GreatVibes,cursive}.wax-seal:hover{transform:translate(-50%,-50%) scale(1.06)}.has-webgl .wax-seal{background:transparent;border-color:transparent;box-shadow:none}.has-webgl .wax-seal span{opacity:0}.envelope-fallback{position:absolute;left:50%;top:50%;width:min(720px,86%);aspect-ratio:1.55;transform:translate(-50%,-50%) rotate(-4deg);background:#fffef8;box-shadow:0 30px 55px #64725b38;overflow:hidden}.envelope-fallback:before,.envelope-fallback:after{content:"";position:absolute;inset:0;background:#f1f0e7;clip-path:polygon(0 0,50% 60%,100% 0);filter:drop-shadow(0 3px 4px #67734d44)}.envelope-fallback:after{background:#faf9f3;clip-path:polygon(0 100%,50% 43%,100% 100%)}.has-webgl .envelope-fallback{display:none}.opening .wax-seal{opacity:0;pointer-events:none}.opening .envelope-heading,.opening .envelope-caption{opacity:0;transition:opacity .5s}.opened .envelope-intro{opacity:0;visibility:hidden;pointer-events:none}.wedding-hero{min-height:calc(100svh - 74px);max-height:1100px;position:relative;isolation:isolate;display:grid;place-items:center;overflow:hidden;text-align:center;color:#fff;background:#798c73}.wedding-hero>img{position:absolute;inset:-6% 0;width:100%;height:112%;object-fit:cover;object-position:center;z-index:-2}.wedding-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#1a322354,#1e342a5c 55%,#152f2475);z-index:-1}.wedding-hero-copy{padding:72px 24px 38px;width:min(880px,100%)}.wedding-eyebrow{display:block;font-family:Inter,sans-serif;font-size:10px;text-transform:uppercase;line-height:1.8;margin-bottom:24px}.wedding-hero .wedding-eyebrow{color:#f7faf2}.wedding-hero h1{font-family:GreatVibes,cursive;font-size:112px;font-weight:400;line-height:1.12;text-shadow:0 3px 24px #1739234d;overflow-wrap:anywhere}.wedding-hero h1 span{display:block}.wedding-hero h1 em{display:block;font-family:Cormorant,serif;font-weight:400;font-size:46px;line-height:1.5}.wedding-rule{height:1px;width:85px;background:#f6f9e7a3;margin:30px auto}.wedding-date{font-size:26px}.wedding-hero-copy>p:not(.wedding-date){font-size:18px;margin-top:3px}.wedding-scroll{border:1px solid #ffffff70;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;margin:28px auto 0}.wedding-nav{position:sticky;top:0;z-index:40;background:#fbfcf9ed;backdrop-filter:blur(12px);height:64px;display:flex;justify-content:center;align-items:center;gap:44px;border-bottom:1px solid #dce4d7;font:10px Inter,sans-serif}.wedding-nav>a:first-child{font:30px GreatVibes,cursive;margin-right:24px}.wedding-nav a:hover{color:#93956b}.wedding-section{padding:100px max(24px,calc((100% - 1060px)/2));scroll-margin-top:64px}.wedding-section-heading{text-align:center;max-width:700px;margin:0 auto 56px}.wedding-section-heading p{font-size:20px;line-height:1.7;max-width:530px;margin:20px auto 0}.wedding-countdown{text-align:center;padding:85px 24px;background:#f0f4ed}.wedding-countdown h2{font-size:56px}.wedding-countdown>.wedding-eyebrow{color:#728366}.countdown-values{display:flex;justify-content:center;gap:45px;margin-top:42px}.countdown-values>div{min-width:72px;position:relative}.countdown-values strong{font-size:54px;font-weight:400;line-height:1}.countdown-values span{display:block;font:9px Inter,sans-serif;margin-top:15px;text-transform:uppercase;color:#718267}.wedding-story{text-align:center;position:relative}.wedding-story>div:first-child{max-width:670px;margin:auto}.wedding-story h2{margin-bottom:30px}.wedding-story p{font-size:23px;color:#6b786c;line-height:1.8}.wedding-story .family-signature{font-family:GreatVibes,cursive;font-size:33px;margin-top:32px;color:#657852}.botanical-rule{display:flex;align-items:center;justify-content:center;gap:22px;color:#95a482;margin:54px auto 0;max-width:250px}.botanical-rule:before,.botanical-rule:after{content:"";height:1px;background:#d3ddc8;width:70px}.botanical-rule .lucide{width:26px;height:26px}.celebration-section{background:#f8f2f2}.wedding-timeline{max-width:770px;margin:auto}.wedding-timeline article{display:grid;grid-template-columns:60px 1fr;gap:40px;border-bottom:1px solid #dfd5d6;padding:34px 0}.timeline-number{font-size:40px;color:#a0928a;line-height:1.2}.wedding-timeline .wedding-eyebrow{color:#907878;margin-bottom:10px}.wedding-timeline p{font-size:19px;line-height:1.8;color:#79746e;margin-top:13px}.dress-note{text-align:center;margin:65px auto 0;max-width:600px}.dress-note>.lucide{width:25px;height:25px;margin-bottom:16px;color:#9b8d80}.dress-note p{margin-top:14px;color:#84786d;font-size:20px}.wedding-venue{display:grid;grid-template-columns:1.1fr 1fr;scroll-margin-top:64px;min-height:580px}.venue-photograph{min-height:580px;overflow:hidden;position:relative}.venue-photograph>img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover}.venue-information{padding:70px 52px;align-self:center}.venue-information h2{font-family:Cormorant,serif;font-size:54px;line-height:1.1;margin:22px 0}.venue-information>p{font-size:20px;margin:20px 0;line-height:1.7;color:#7a8775}.wedding-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.wedding-button{display:inline-flex;justify-content:center;align-items:center;gap:10px;background:#49654e;color:#fff;border:1px solid #49654e;min-height:46px;padding:14px 23px;font:10px Inter,sans-serif;border-radius:3px;transition:background .2s}.wedding-button:hover{background:#314b36}.wedding-button.secondary{background:transparent;color:#48604c;border-color:#bdcbb5}.wedding-button.secondary:hover{background:#edf3e9}.guest-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;background:#f0f4ed}.guest-notes h2{font-size:48px}.guest-notes p{font-size:20px;color:#728269;white-space:pre-line;margin-top:20px}.gallery-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.gallery-mosaic a{display:block;overflow:hidden}.gallery-mosaic img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform 1s}.gallery-mosaic a:nth-child(3n+2){margin-top:45px}.gallery-mosaic a:hover img{transform:scale(1.05)}.gift-note{text-align:center;background:#f5f3fa}.gift-note>.lucide{width:27px;height:27px;color:#8b8b9c;margin:0 auto 24px}.gift-note p{max-width:650px;margin:24px auto 0;font-size:22px;color:#7e7f88}.rsvp-section{background:#f0f4ed}.wedding-rsvp{max-width:650px;margin:auto}.rsvp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;text-align:left}.rsvp-grid label{font:11px Inter,sans-serif;color:#526c4d;display:flex;flex-direction:column;gap:10px}.rsvp-grid .full{grid-column:1/-1}.rsvp-grid input,.rsvp-grid textarea,.rsvp-grid select{font:14px Inter,sans-serif;color:#3d5938;width:100%;background:#fff8;border:1px solid #c1d0b7;border-radius:3px;padding:13px;min-height:45px;box-shadow:none}.rsvp-grid textarea{resize:vertical}.rsvp-grid input:focus,.rsvp-grid textarea:focus,.rsvp-grid select:focus{outline:2px solid #90ab81;outline-offset:2px}.wedding-rsvp>.wedding-button{width:100%;margin-top:28px}.wedding-rsvp>[data-sample-message]{margin-top:20px;text-align:center;font:12px Inter,sans-serif}.rsvp-message{background:#fff;padding:16px;max-width:650px;margin:0 auto 24px;border-left:3px solid #6d9758;font:12px Inter,sans-serif}.rsvp-message.error{border-color:#c17070}.call-rsvp{display:block;font:11px Inter,sans-serif;margin-top:25px;text-align:center}.wedding-footer{text-align:center;padding:80px 24px 34px;background:#e5ece2}.wedding-footer>p{font-size:20px;color:#7c8a72}.wedding-footer h2{font-size:58px;margin:24px 0 10px}.wedding-footer>span{display:block;font-size:18px;color:#72816a}.wedding-footer>.wedding-button{margin:30px auto;display:flex;width:max-content;max-width:100%}.made-by{display:block;font:9px Inter,sans-serif;margin-top:50px;color:#85977b}.music-control{position:fixed;bottom:22px;right:22px;z-index:90;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fbfcf9;color:#627455;border:1px solid #ccd9c2;box-shadow:0 4px 20px #294e2618}.music-control .lucide{width:19px}.music-message{position:fixed;bottom:76px;right:22px;z-index:90;max-width:270px;padding:14px;background:#fff;border:1px solid #d6dfcf;font:11px Inter,sans-serif}.photo-dialog{border:0;padding:0;max-width:92vw;max-height:90svh;background:transparent}.photo-dialog::backdrop{background:#0b170de8}.photo-dialog>img{max-height:85svh;max-width:90vw;object-fit:contain}.photo-dialog>button{position:fixed;right:20px;top:20px;width:44px;height:44px;background:white;border:0;border-radius:50%;display:grid;place-items:center}.wedding-reveal{opacity:1;transform:none}.motion-enabled .wedding-reveal{opacity:0;transform:translateY(40px);transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.65,.2,1)}.motion-enabled .wedding-reveal.is-visible{opacity:1;transform:none}.wedding-timeline article:nth-child(2n){transition-delay:.12s}
@media(min-width:1500px){.wedding-hero-copy{padding-top:90px}.wedding-hero h1{font-size:138px}.wedding-hero{min-height:calc(100svh - 90px)}}
@media(max-width:760px){h2{font-size:45px}.sample-bar{height:42px;padding:0 14px;font-size:9px}.sample-bar>span{display:none}.wedding.has-preview .envelope-intro{top:42px}.envelope-heading{top:14%}.envelope-heading p{font-size:36px}.envelope-caption{bottom:14%}.envelope-caption p{font-size:21px}.wax-seal{width:80px;height:80px}.wax-seal span{font-size:30px}.envelope-fallback{width:94%}.wedding-hero{min-height:calc(100svh - 92px);max-height:none}.wedding-hero-copy{padding:58px 24px 34px}.wedding-hero h1{font-size:82px;line-height:1.16}.wedding-hero h1 em{font-size:35px;line-height:1.5}.wedding-hero .wedding-eyebrow{font-size:9px;margin-bottom:28px}.wedding-rule{margin:24px auto}.wedding-date{font-size:22px}.wedding-hero-copy>p:not(.wedding-date){font-size:17px}.wedding-scroll{width:34px;height:34px;margin-top:25px}.wedding-nav{height:56px;gap:22px;font-size:9px}.wedding-nav>a:first-child{font-size:26px;margin-right:4px}.wedding-section{padding:65px 24px;scroll-margin-top:56px}.wedding-countdown{padding:60px 20px}.wedding-countdown h2{font-size:44px}.countdown-values{gap:18px;margin-top:35px}.countdown-values>div{min-width:52px}.countdown-values strong{font-size:43px}.countdown-values span{font-size:8px;margin-top:12px}.wedding-eyebrow{font-size:9px;margin-bottom:18px}.wedding-story p{font-size:20px;line-height:1.8}.wedding-story .family-signature{font-size:28px;margin-top:25px}.wedding-timeline article{grid-template-columns:32px 1fr;gap:20px;padding:28px 0}.timeline-number{font-size:31px}.wedding-timeline h3{font-size:26px}.wedding-timeline p{font-size:18px}.wedding-section-heading{margin-bottom:30px}.wedding-section-heading p{font-size:19px}.wedding-venue{grid-template-columns:1fr;scroll-margin-top:56px}.venue-photograph{min-height:420px}.venue-information{padding:45px 24px 60px;text-align:center}.venue-information h2{font-size:44px}.venue-information>p{font-size:19px}.wedding-actions{justify-content:center}.wedding-button{padding:13px 18px;font-size:10px;min-height:46px}.guest-notes{grid-template-columns:1fr;gap:45px;text-align:center}.guest-notes h2{font-size:42px}.gallery-mosaic{grid-template-columns:1fr 1fr;gap:12px}.gallery-mosaic a:nth-child(3n+2){margin:0}.gallery-mosaic a:nth-child(2n){margin-top:25px}.rsvp-grid{grid-template-columns:1fr;gap:20px}.rsvp-grid input,.rsvp-grid select,.rsvp-grid textarea{font-size:16px;min-height:48px}.wedding-footer h2{font-size:48px}.wedding-footer{padding:65px 24px 30px}.music-control{right:14px;bottom:14px;width:42px;height:42px}.gift-note p{font-size:20px}.dress-note{margin-top:45px}}
.envelope-heading p{padding-inline:22px;overflow-wrap:anywhere;line-height:1.3}.wedding h2,.wedding h3{overflow-wrap:anywhere}.wedding-nav{padding-inline:16px;flex-wrap:wrap;min-height:56px;height:auto;padding-block:12px}.envelope-heading p{max-width:850px;margin-inline:auto}
@media(max-width:760px){.opened .music-control{bottom:80px}.opened .music-message{bottom:130px}}
@media(max-width:360px){.wedding-hero h1{font-size:70px}.wedding-nav{gap:16px}.countdown-values{gap:12px}}
@media(max-height:560px) and (orientation:landscape){.envelope-canvas{inset:18% 12% 22%}.envelope-heading{top:3%}.envelope-heading p{font-size:28px;margin-top:4px}.envelope-caption{bottom:2%}.envelope-caption p{font-size:18px;margin-bottom:0}.wax-seal{top:48%;width:64px;height:64px}.envelope-fallback{width:38%}.wedding-hero{min-height:550px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-enabled .wedding-reveal{opacity:1;transform:none;transition:none}.envelope-intro{transition:none}*{animation:none!important}}

/* cinematic.css */
.cinematic{--cinema-ink:#29382f;--cinema-accent:#52694e;--cinema-paper:#edf0e9;--cinema-band:#e5e9df;--cinema-edge:#767966;--opening-paper:#62553f;background:var(--cinema-paper);color:var(--cinema-ink);font-family:Inter,system-ui,sans-serif;font-size:18px;line-height:1.75}
.cinematic[data-background="201"]{--cinema-ink:#39342c;--cinema-accent:#796647;--cinema-paper:#f3f0e9;--cinema-band:#eae5da;--cinema-edge:#b2a58d}
.cinematic[data-background="203"]{--cinema-ink:#363b32;--cinema-accent:#626f50;--cinema-paper:#eeeee5;--cinema-band:#e2e4d9;--cinema-edge:#9b9984}
.cinematic[data-opening="102.2"]{--opening-paper:#112137}.cinematic[data-opening="103"]{--opening-paper:#dbd4c8}.cinematic[data-opening="107"]{--opening-paper:#443726}.cinematic[data-opening="108"]{--opening-paper:#d4cbbb}
.cinematic h1,.cinematic h2,.cinematic h3{font-family:Cormorant,Georgia,serif;font-weight:600;overflow-wrap:anywhere;line-height:1.2}
.cinematic h2{font-size:48px}.cinematic h3{font-size:30px}
.video-intro{position:fixed;inset:0;z-index:75;background:var(--opening-paper);transition:opacity .7s,visibility .7s;overflow:hidden}
.wedding:not(.wedding-ready) .video-intro{display:none}
.video-intro>video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.cinema-intro-heading{position:absolute;top:5%;left:24px;right:24px;text-align:center;color:#fff;text-shadow:0 2px 12px #000;pointer-events:none}
.cinema-intro-heading>span{font:600 12px Inter,sans-serif;display:inline-block;padding:8px 14px;background:#171c19b8;border-radius:4px}
.cinema-intro-heading>p{font:600 42px/1.2 Cormorant,Georgia,serif;margin:12px auto 0;max-width:750px;overflow-wrap:anywhere}
.cinema-open-area{position:absolute;bottom:13%;left:24px;right:24px;text-align:center;color:#fff;text-shadow:0 2px 8px #000}
.cinema-open-area>p{font:500 26px/1.4 Cormorant,Georgia,serif;margin:0 0 20px}
.cinema-open{border:0;background:transparent;color:inherit;display:inline-flex;align-items:center;flex-direction:column;gap:14px;padding:4px 20px;min-width:140px}
.cinema-open>span{display:grid;place-items:center;width:68px;height:68px;border:1px solid #fff9;border-radius:50%;background:#171c19b8}
.cinema-open .lucide{width:24px;height:24px}.cinema-open>strong{font:600 16px Inter,sans-serif;background:#171c19d9;padding:12px 20px;border-radius:4px}
.cinema-intro-tools{position:absolute;bottom:24px;left:24px;right:82px;color:#fff;font:13px/1.5 Inter,sans-serif}
.cinema-intro-tools>span:not(:empty){display:inline-block;padding:10px 14px;background:#171c19e6}
.music-control svg{display:block;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.video-intro:not(.is-loading) .cinema-intro-tools{pointer-events:none}
.video-intro.is-loading .cinema-intro-tools>span{display:inline-flex;align-items:center;gap:9px;padding:11px 15px;border:1px solid #ffffff40;border-radius:7px;background:#13221ee8;box-shadow:0 8px 24px #0004}
.video-intro.is-loading .cinema-intro-tools>span:before{content:"";width:15px;height:15px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:a2z-loading-spin .8s linear infinite}
@keyframes a2z-loading-spin{to{transform:rotate(360deg)}}
.cinema-progress{position:absolute;bottom:0;height:3px;width:100%;background:#ffffff22}.cinema-progress>span{display:block;height:100%;width:0;background:#fff}
.is-playing .cinema-open-area,.is-playing .cinema-intro-heading{opacity:0;pointer-events:none}.opened .video-intro{opacity:0;visibility:hidden;pointer-events:none}
.cinematic #wedding-content{position:relative;overflow-x:clip}
.cinematic .wedding-hero{height:100svh;min-height:0;max-height:none;background:var(--cinema-edge);isolation:isolate;position:relative}
.cinematic .wedding-hero>img,.cinematic .wedding-hero-shade{display:none}
.cinema-backdrop{position:absolute;inset:0;z-index:-1;background:var(--cinema-edge);pointer-events:none;overflow:hidden}
.cinema-backdrop video{width:100%;height:100%;object-fit:contain;object-position:center}
.cinema-backdrop>div{position:absolute;inset:0;background:#101b163d}
.cinematic .wedding-hero-copy{padding:40px 24px 84px;max-width:900px;width:100%;text-shadow:0 2px 15px #16221980}
.cinematic .wedding-hero h1{font-size:88px;line-height:1.04;font-weight:500}.cinematic .wedding-hero h1 em{font:italic 36px Cormorant,Georgia,serif;line-height:1.2}
.cinematic .wedding-hero .wedding-eyebrow{color:#fff;font:600 12px/1.6 Inter,sans-serif;margin-bottom:28px}.cinematic .wedding-date{font:500 27px/1.5 Cormorant,Georgia,serif}
.cinematic .wedding-hero-copy>p:not(.wedding-date){font:400 17px/1.7 Inter,sans-serif}.cinematic .wedding-rule{margin:28px auto}.cinematic .wedding-scroll{margin-top:24px}
.cinema-controls{position:absolute;left:24px;bottom:24px;z-index:3;display:flex;gap:10px}
.cinema-controls button{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid #d4dbcf;background:#fffffff2;color:var(--cinema-ink)}
.cinematic .music-control{position:absolute;top:calc(100svh - 68px);width:44px;height:44px;right:24px;bottom:auto;color:var(--cinema-ink);background:#fffffff2;border-color:#d4dbcf}.cinematic .music-message{bottom:82px}
.cinematic .wedding-section,.cinematic .wedding-countdown,.cinematic .wedding-footer{position:relative;padding:80px 32px;background:var(--cinema-paper);border:0}
.cinematic .wedding-countdown,.cinematic .celebration-section,.cinematic .wedding-gallery,.cinematic .wedding-footer{background:var(--cinema-band)}
.cinematic .wedding-section-heading{max-width:760px;margin:0 auto 40px}.cinematic .wedding-section-heading>p{font:400 18px/1.8 Inter,sans-serif;margin-top:20px}
.cinematic .wedding-eyebrow{font:600 12px/1.6 Inter,sans-serif;color:var(--cinema-accent);margin-bottom:18px}
.cinematic .wedding-story>div,.cinematic .custom-section-content{max-width:760px;margin-inline:auto}
.cinematic .wedding-story p,.cinematic .wedding-timeline p,.cinematic .venue-information>p,.cinematic .guest-notes p,.cinematic .gift-note p,.cinematic .dress-note p,.cinematic .custom-section-content>p{color:var(--cinema-ink);font:400 18px/1.85 Inter,sans-serif;overflow-wrap:anywhere}
.cinematic .wedding-story p{margin:26px auto 0}.cinematic .wedding-story .family-signature{font:500 28px/1.4 Cormorant,Georgia,serif;color:var(--cinema-accent)}
.cinematic .botanical-rule{margin-top:32px}.cinematic .countdown-values{gap:32px;margin-top:36px}.cinematic .countdown-values strong{font:500 54px/1.2 Cormorant,Georgia,serif;font-variant-numeric:tabular-nums}.cinematic .countdown-values span{font:600 12px Inter,sans-serif;color:var(--cinema-accent)}
.cinematic .wedding-timeline{max-width:760px}.cinematic .timeline-number{font-family:Cormorant,Georgia,serif;color:var(--cinema-accent)}.cinematic .wedding-timeline article{border-color:#9aa38b55;gap:28px}.cinematic .wedding-timeline p{margin-top:12px}
.cinematic .wedding-button{font:600 15px/1.5 Inter,sans-serif;min-height:48px;background:var(--cinema-accent);border-color:var(--cinema-accent);border-radius:4px;padding:12px 22px}.cinematic .wedding-button.secondary{background:transparent;color:var(--cinema-ink);border-color:#8e9a7f}
.cinematic .wedding-venue{background:var(--cinema-paper);min-height:0}.cinematic .venue-information{padding:80px 40px}.cinematic .venue-information>p{margin-top:24px}.cinematic .venue-without-photo{display:block}.cinematic .venue-without-photo .venue-photograph{display:none}.cinematic .venue-without-photo .venue-information{max-width:820px;margin:auto;text-align:center}.cinematic .venue-without-photo .wedding-actions{justify-content:center}
.cinema-portrait{margin:0;padding:64px 24px;background:var(--cinema-paper);text-align:center}.cinema-portrait img{width:min(540px,100%);max-height:700px;object-fit:contain;margin:auto}
.cinematic .guest-notes{gap:48px}.cinematic .guest-notes article{max-width:680px;margin:auto}.cinematic .guest-notes h2{margin-bottom:24px}.cinematic .gallery-mosaic{max-width:1000px;margin:auto}.cinematic .gallery-mosaic a{margin-top:0}
.cinematic .wedding-reveal,.cinematic.motion-enabled .wedding-reveal{opacity:1!important;transform:none!important;transition:none!important}
.cinematic .wedding-rsvp{max-width:680px;margin:0 auto;padding:0}.cinematic .rsvp-grid{gap:24px}.cinematic .rsvp-grid label{font:500 15px/1.6 Inter,sans-serif;color:var(--cinema-ink)}.cinematic .rsvp-grid input,.cinematic .rsvp-grid select,.cinematic .rsvp-grid textarea{font:400 16px/1.5 Inter,sans-serif;color:var(--cinema-ink);background:#fff;border-color:#9ba891;min-height:48px}.cinematic .call-rsvp{font:400 15px Inter,sans-serif}
.cinematic .wedding-footer{padding-bottom:92px}.cinematic .wedding-footer>p{font:400 18px/1.7 Inter,sans-serif}.cinematic .wedding-footer h2{margin:18px 0;font-size:48px}.cinematic .made-by{font:400 13px/1.6 Inter,sans-serif;color:var(--cinema-accent)}
.sample-footer-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;margin:32px 0}.sample-footer-actions>a:last-child{font:500 14px Inter,sans-serif;text-decoration:underline}.cinematic .demo-clock{display:flex;justify-content:center;gap:20px;font:400 13px Inter,sans-serif;margin-top:24px}
.custom-section-content{text-align:center}.custom-section-content>img{width:min(640px,100%);max-height:580px;object-fit:contain;margin:30px auto}.custom-section-content>p{margin:24px 0;white-space:normal}.custom-section-content .wedding-button{margin-top:8px}
@media(max-width:760px){.cinematic{font-size:16px}.cinema-intro-heading{left:20px;right:20px}.cinema-intro-heading>p{font-size:34px}.cinema-open-area>p{font-size:23px}.cinematic .wedding-hero h1{font-size:62px}.cinematic .wedding-hero h1 em{font-size:30px}.cinematic .wedding-date{font-size:24px}.cinematic .wedding-hero-copy{padding:40px 24px 80px}.cinematic h2,.cinematic .wedding-footer h2{font-size:36px}.cinematic h3{font-size:27px}.cinematic .wedding-section,.cinematic .wedding-countdown,.cinematic .venue-information,.cinematic .wedding-footer{padding:56px 24px}.cinematic .wedding-footer{padding-bottom:100px}.cinematic .wedding-section-heading{margin-bottom:32px}.cinematic .wedding-story p,.cinematic .wedding-timeline p,.cinematic .venue-information>p,.cinematic .guest-notes p,.cinematic .gift-note p,.cinematic .dress-note p,.cinematic .custom-section-content>p,.cinematic .wedding-section-heading>p{font-size:16px;line-height:1.8}.cinematic .wedding-story .family-signature{font-size:26px}.cinematic .countdown-values{gap:18px}.cinematic .countdown-values strong{font-size:40px}.cinematic .countdown-values span{font-size:10px}.cinematic .wedding-timeline article{grid-template-columns:32px 1fr;gap:18px}.cinematic .rsvp-grid{gap:20px}.cinematic .music-control{right:16px;top:calc(100svh - 60px);bottom:auto}.cinema-controls{left:16px;bottom:16px}.cinematic .wedding-actions{gap:12px}}
@media(max-width:360px){.cinematic .wedding-hero h1{font-size:52px}.cinematic .wedding-section,.cinematic .wedding-countdown,.cinematic .venue-information{padding-inline:20px}.cinematic .countdown-values{gap:10px}}
@media(max-height:540px) and (orientation:landscape){.cinema-intro-heading{text-align:left;top:20px}.cinema-intro-heading>p{font-size:30px;max-width:210px;margin-left:0}.cinema-open-area{left:auto;right:5%;bottom:20%;width:170px}.cinema-open-area>p{font-size:18px}.cinema-open>span{width:52px;height:52px}.cinematic .wedding-hero-copy{padding:20px 80px 60px}.cinematic .wedding-hero h1{font-size:48px}.cinematic .wedding-hero h1 span,.cinematic .wedding-hero h1 em{display:inline}.cinematic .wedding-hero h1 em{margin:0 12px;font-size:30px}.cinematic .wedding-hero .wedding-eyebrow{margin-bottom:12px}.cinematic .wedding-rule{margin:12px auto}.cinematic .wedding-date{font-size:22px}.cinematic .wedding-scroll{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.video-intro{transition:none}}
.cinematic .wedding-hero h1:focus{outline:none}
.footer-music-control{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;margin:0 auto 24px;border:1px solid #d4dbcf;border-radius:50%;background:#fff;color:var(--cinema-ink);cursor:pointer}
.footer-music-control svg{width:22px;height:22px}

/* refinement.css */
@font-face{font-family:NotoTamil;src:url('../fonts/NotoSansTamil.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
[lang=ta],html[lang=ta] body,html[lang=ta] button,html[lang=ta] input,html[lang=ta] textarea,html[lang=ta] select{font-family:NotoTamil,Inter,system-ui,sans-serif;letter-spacing:0;line-height:1.8}
html[lang=ta] h1,html[lang=ta] h2,html[lang=ta] h3,html[lang=ta] .overline,html[lang=ta] .wedding-eyebrow,html[lang=ta] .cinema-open strong,html[lang=ta] .cinema-open-area>p,html[lang=ta] .cinema-intro-heading>p,html[lang=ta] .cinema-intro-heading>span{font-family:NotoTamil,Inter,system-ui,sans-serif;line-height:1.6;letter-spacing:0}
html[lang=ta] .wedding p,html[lang=ta] .wedding span,html[lang=ta] .wedding label,html[lang=ta] .wedding a{font-family:NotoTamil,Inter,system-ui,sans-serif;letter-spacing:0}
.language-switch{display:inline-flex;align-items:stretch;flex-shrink:0;border:1px solid #b9cbc4;background:#fff;border-radius:6px;padding:3px;gap:3px;font-size:13px;line-height:1.5}
.language-switch a{padding:6px 9px;color:#29483d;text-decoration:none;display:flex;align-items:center;border-radius:3px;min-height:32px}
.language-switch a[aria-current=true]{background:#146455;color:#fff}
.language-switch a:focus-visible{outline:2px solid #1c7cbb;outline-offset:2px}
.invitation-language{position:fixed;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));z-index:90}
.wedding .language-switch{opacity:.95}.wedding .language-switch a{font-size:12px}
.cinematic .music-control,.wedding .music-control{position:fixed;top:auto;bottom:max(18px,env(safe-area-inset-bottom));right:max(18px,env(safe-area-inset-right));z-index:100;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #ccd4c5;box-shadow:0 2px 12px #24392d20}
.wedding .music-control[hidden]{display:none}.music-control svg{width:22px;height:22px}
.cinematic .cinema-intro-heading{top:78px}
.website-status-strip{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:24px;padding:24px 0;margin-bottom:24px;border-top:1px solid #d5e1dc;border-bottom:1px solid #d5e1dc;align-items:start}
.website-status-strip>div,.website-status-strip>a{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;text-decoration:none;color:inherit}
.website-status-strip span:first-child{color:#667d73;font-size:14px}.website-status-strip strong{font-size:20px;overflow-wrap:anywhere}
.workspace .website-editor{border:0;background:transparent;border-radius:0;box-shadow:none}.website-editor .form-section{padding:28px 0}.website-editor .section-tabs{padding-inline:0;gap:4px}.website-editor .section-tabs button{padding:14px 16px;font-size:15px;flex-shrink:0}
.website-editor .save-bar{padding-inline:0}.workspace .page-title{gap:20px;align-items:flex-start}.workspace .page-title p{margin-top:8px}
.sidebar-brand{gap:12px!important}.sidebar-brand .brand-logo-mark{width:40px!important;height:40px!important;flex:0 0 40px}.sidebar-brand-text{font-size:20px!important}.sidebar-brand-text small{font-size:13px!important;line-height:1.4}
.sidebar .side-link{gap:12px;min-height:48px;padding:12px 14px;line-height:1.5}.sidebar .side-link svg{flex-shrink:0}.header-account{min-width:0;max-width:45%;gap:10px}.header-account>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.payment-summary{padding:28px 0;border-top:1px solid #d5e1dc}.payment-summary h2{font-size:24px}.payment-summary dl{margin:24px 0}.payment-summary dl>div{display:flex;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid #d5e1dc}.payment-summary dd{margin:0;text-align:right;overflow-wrap:anywhere}.payment-summary p{margin:24px 0;line-height:1.7}.payment-summary .btn{white-space:normal}
.profile-edit{margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid #d5e1dc}.auth-card .auth-register-link{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:7px;row-gap:6px;margin:24px 0 0!important;line-height:1.8}.auth-register-link a{display:inline}
.content-editor .form-grid{align-items:start}.content-editor textarea[lang=ta],.tamil-editor textarea{font-size:16px;line-height:1.8;min-height:92px}.form-grid input[lang=ta]{font-size:16px;line-height:1.8}.content-editor label{line-height:1.7}.schedule-edit-row .form-grid{min-width:0}
html[lang=ta] .marketing-hero h1{font-size:52px;line-height:1.5}html[lang=ta] .marketing-hero-copy>p{font-size:18px;line-height:1.9}html[lang=ta] .marketing h2{font-size:32px;line-height:1.6}html[lang=ta] .marketing h3{font-size:22px;line-height:1.65}
html[lang=ta] .marketing .btn{font-family:NotoTamil,Inter,sans-serif;line-height:1.7;font-size:14px;white-space:normal}html[lang=ta] .marketing-links{font-size:13px}html[lang=ta] .marketing .overline{font-size:13px}
html[lang=ta] .cinematic .wedding-hero h1{font-size:52px;line-height:1.65}html[lang=ta] .cinematic h2{font-size:32px;line-height:1.7}html[lang=ta] .cinematic h3{font-size:23px;line-height:1.7}html[lang=ta] .cinematic .wedding-date{font-size:21px}html[lang=ta] .cinematic .wedding-hero .wedding-eyebrow{font-family:NotoTamil,sans-serif;line-height:1.8}
html[lang=ta] .cinematic .wedding-button{font-family:NotoTamil,sans-serif;line-height:1.8;font-size:14px;white-space:normal}html[lang=ta] .cinematic .cinema-intro-heading>p{font-size:28px}html[lang=ta] .cinematic .cinema-open-area>p{font-size:21px}html[lang=ta] .cinematic .countdown-values span{font-size:11px}
@media(max-width:1150px){.marketing-nav .marketing-links{display:none}.marketing-nav .wrap{gap:12px}.marketing-nav .nav-actions{gap:8px}}
@media(max-width:760px){
  .cinematic .video-intro{height:100vh;height:100dvh;inset:0}
  .cinematic .video-intro>video,.cinematic .cinema-backdrop video{object-fit:cover}
  .cinematic .wedding-hero{height:100vh;height:100dvh;min-height:0}
  .website-status-strip{grid-template-columns:1fr 1fr;gap:20px}.website-status-strip>div:nth-child(2){grid-column:1/-1;grid-row:2}.website-status-strip strong{font-size:18px}
  .website-editor .form-section{padding:24px 0}.website-editor .section-tabs button{padding:12px;font-size:14px}.header-account .avatar{display:none}.workspace-header .header-start{gap:8px}.workspace .page-title h1{font-size:28px}
  .marketing-nav .identity span{display:none}.marketing-nav .nav-create{display:none}.marketing-nav .wrap{padding-block:9px;gap:8px}.marketing-nav .nav-actions{gap:7px}.marketing-nav .btn{padding:9px 12px;font-size:13px;min-height:40px}.marketing-nav .language-switch{font-size:12px}.marketing-nav .language-switch a{padding:4px 7px;min-height:30px}
  html[lang=ta] .marketing-hero h1{font-size:32px}html[lang=ta] .marketing-hero-copy>p{font-size:16px}html[lang=ta] .marketing h2{font-size:26px}html[lang=ta] .marketing h3{font-size:20px}
  html[lang=ta] .cinematic .wedding-hero h1{font-size:34px;line-height:1.65}html[lang=ta] .cinematic h2,html[lang=ta] .cinematic .wedding-footer h2{font-size:27px;line-height:1.7}html[lang=ta] .cinematic .wedding-hero .wedding-eyebrow{margin-bottom:18px;font-size:11px}html[lang=ta] .cinematic .wedding-rule{margin:18px auto}html[lang=ta] .cinematic .wedding-date{font-size:18px}html[lang=ta] .cinematic .countdown-values{gap:12px}
}
@media(max-height:540px) and (orientation:landscape){.cinematic .cinema-intro-heading{top:70px}.cinematic .cinema-intro-heading>p{font-size:26px}html[lang=ta] .cinematic .wedding-hero h1{font-size:25px;line-height:1.5}html[lang=ta] .cinematic .wedding-hero-copy{padding:65px 30px 48px}html[lang=ta] .cinematic .wedding-hero .wedding-eyebrow{margin-bottom:6px}.cinematic .invitation-language{top:8px}}

/* update-v15.css */
html:has(body.marketing),body.marketing{overflow-x:clip}
.marketing .hero-highlights>.wrap{grid-template-columns:repeat(3,minmax(0,1fr))}
.marketing .wedding-catalog{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px;margin-inline:auto}
.marketing .template-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.marketing .template-card-actions .btn{display:flex;justify-content:center;min-width:0}
.language-switch[aria-busy=true]{opacity:.7}
.language-status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:10000;background:#fff;color:#233d37;padding:12px 18px;border:1px solid #b9cfc8;border-radius:6px;box-shadow:0 4px 20px #0002;max-width:calc(100% - 32px);font:14px/1.6 Arial,sans-serif}
.language-status:empty{display:none}
.workspace .seo-group-title{border-top:1px solid #dde6ef;padding-top:24px;margin:8px 0 0}
.workspace .seo-group-title:first-child{border-top:0;padding-top:0}
@media(max-width:760px){
 .marketing .hero-highlights>.wrap{gap:8px}
 .marketing .hero-highlights>.wrap>div{padding:14px 8px;flex-direction:column;align-items:center;text-align:center;gap:10px}
 .marketing .hero-highlights strong{font-size:15px;line-height:1.5;overflow-wrap:anywhere}
 .marketing .hero-highlights span{font-size:13px;line-height:1.6;overflow-wrap:anywhere}
 .marketing .hero-highlights svg{width:20px;height:20px;flex-basis:20px}
 .marketing .wedding-catalog{gap:12px}
 .marketing .template-card-body{padding:12px 10px}
 .marketing .template-card h3{font-size:17px;line-height:1.5;min-height:52px;overflow-wrap:anywhere}
 .marketing .template-card .template-price{font-size:14px;margin:12px 0 16px;overflow-wrap:anywhere}
 .marketing .template-category{font-size:12px}
 .marketing .template-card-actions{grid-template-columns:1fr;gap:8px}
 .marketing .template-card-actions .btn{display:grid;grid-template-columns:minmax(0,1fr) 16px;min-height:54px;height:auto;padding:10px 8px;gap:5px;font-size:13px;line-height:1.5}
 .marketing .template-card-actions .btn-outline{grid-template-columns:16px minmax(0,1fr)}
 .marketing .template-card-actions svg{width:16px;height:16px}
 .marketing .template-card-actions .btn span{overflow-wrap:anywhere}
}

/* update-v16.css */
:root{--action-footer-height:calc(78px + env(safe-area-inset-bottom))}
.marketing{padding-bottom:var(--action-footer-height)}
.marketing .wedding-catalog{grid-template-columns:repeat(5,minmax(0,1fr));max-width:none;gap:18px}
.marketing .template-card-actions{grid-template-columns:1fr;gap:8px}
.marketing .template-card-actions .btn{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;height:auto;padding:11px 8px;font-size:14px;line-height:1.5}
.marketing .template-card-actions .btn span{flex:0 1 auto;text-align:center;overflow-wrap:anywhere}
.marketing .template-card-actions svg{flex:0 0 16px;width:16px;height:16px;margin:0}
.marketing .template-card h3{min-height:54px;font-size:18px;line-height:1.5;overflow-wrap:anywhere}
.marketing-nav .identity{gap:8px;min-width:0}
.marketing-nav .identity span{display:block;font:600 14px/1.5 Inter,NotoTamil,sans-serif;overflow-wrap:anywhere}
.marketing .marketing-nav .identity img{width:32px;height:32px;min-width:32px;flex:0 0 32px}
.marketing .marketing-nav .identity span,.marketing .marketing-nav .marketing-links,.marketing .marketing-nav .nav-actions .btn,.marketing .marketing-nav .language-switch{font-size:var(--header-font-size,14px)}
.fixed-footer{position:fixed;inset:auto 0 0;z-index:95;background:#fff;color:#203a35;border-top:1px solid #d6e3df;box-shadow:0 -3px 18px #183d3010;padding:10px max(18px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));font:400 14px/1.5 Inter,NotoTamil,sans-serif}
.fixed-footer-inner{max-width:1240px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px}
.fixed-footer-copy{min-width:0;display:flex;flex-direction:column;gap:2px;max-width:65%}
.fixed-footer-copy>span{font-size:12px;color:#657a72;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fixed-footer-copy>strong{font-size:16px;line-height:1.5;font-weight:600;overflow-wrap:anywhere}
.fixed-footer-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 20px;background:#156452;color:#fff;border-radius:5px;font-weight:600;text-align:center;max-width:54%;flex-shrink:0;text-decoration:none}
.fixed-footer-action>span{overflow-wrap:anywhere}
.fixed-footer-action svg{width:18px;height:18px;flex-shrink:0}
.fixed-footer-action:hover{background:#104f42}
.contact-whatsapp{position:fixed;z-index:96;right:max(18px,env(safe-area-inset-right));bottom:calc(var(--action-footer-height) + 16px);width:52px;height:52px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;background:#149e4e;box-shadow:0 3px 14px #153d3540}
.contact-whatsapp img{width:30px;height:30px;filter:invert(1)}
.wedding:not(.opened) .invitation-fixed-footer{display:none}
.wedding.opened{padding-bottom:var(--action-footer-height)}
.wedding .fixed-footer{background:var(--cinema-paper,#fff);color:var(--cinema-ink,#203a35)}
.wedding .fixed-footer-action{background:var(--cinema-accent,#156452)}
.cinematic .wedding-footer{padding:32px 24px}
.cinematic .wedding-footer h2{font-size:36px;margin:12px 0}
.cinematic .wedding-footer>.made-by{margin-top:22px}
.cinematic .wedding-footer>.wedding-button{margin:20px auto}
.wedding.opened .music-control{bottom:calc(var(--action-footer-height) + 14px)}
.wedding .music-message,.language-status{bottom:calc(var(--action-footer-height) + 72px)}
.wedding .rsvp-section{scroll-margin-bottom:calc(var(--action-footer-height) + 24px)}
.video-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:28px}
.video-choice{min-width:0;display:grid;grid-template-rows:auto auto 220px;gap:12px;border:1px solid #d5e2ef;border-radius:6px;padding:18px;background:#fff}
.video-choice label{font-weight:600}
.video-choice select{width:100%;min-width:0;min-height:46px;padding:11px 13px;border:1px solid #cbdbea;border-radius:6px;background:#fff;color:#203b57;font:400 16px/1.5 Inter,NotoTamil,sans-serif}
.video-choice select:focus{outline:none;border-color:#11ac8e;box-shadow:0 0 0 3px #03aa8412}
.video-choice video{display:block;width:100%;height:220px;object-fit:contain;background:#f0f3f2;border-radius:4px}
.workspace .video-choice .field-hint{margin:0}
@media(min-width:768px) and (max-width:1023px){.marketing .wedding-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.marketing-nav .marketing-links{display:none}.marketing-nav .wrap{gap:16px}.marketing-nav .nav-actions{gap:8px}}
@media(max-width:767px){
 .marketing .wedding-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .marketing .template-card-actions .btn{font-size:13px;min-height:50px;gap:6px}
 .marketing .template-card h3{font-size:17px}
 .marketing-nav .wrap{display:flex;gap:8px;padding-block:10px;min-height:58px}
 .marketing-nav .identity{flex:1;gap:6px}
 .marketing-nav{--header-font-size:12px}
 .marketing .marketing-nav .identity img{width:28px;height:28px;min-width:28px;flex-basis:28px}
 .marketing-nav .nav-actions{gap:6px;flex-shrink:0}
 .marketing .marketing-nav .nav-actions .btn{padding:8px 10px;min-height:36px}
 .marketing-nav .language-switch a{padding:6px 7px}
 .fixed-footer{padding-inline:14px}
 .fixed-footer-inner{gap:10px}
 .fixed-footer-copy>strong{font-size:14px}
 .fixed-footer-action{font-size:13px;padding:10px 12px;gap:6px}
 .fixed-footer-copy{max-width:46%}
 .cinematic .wedding-footer{padding:28px 20px}
 .cinematic .wedding-footer h2{font-size:30px}
 .video-choice-grid{gap:16px}
}
@media(max-width:580px){.video-choice-grid{grid-template-columns:1fr}.video-choice{padding:14px}}
@media(max-width:359px){.marketing-nav .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.marketing-nav .nav-actions{display:contents}.marketing-nav .identity{grid-column:1;grid-row:1}.marketing-nav .nav-actions>.btn-outline{grid-column:2;grid-row:1}.marketing-nav .language-switch{grid-column:1/-1;grid-row:2;justify-self:end}.fixed-footer-action{padding-inline:8px}.fixed-footer-copy>strong{font-size:13px}}

/* update-v17.css */
.cinematic .wedding-hero-copy{width:calc(100% - 48px);max-width:900px;padding-inline:0;margin-inline:auto;justify-self:center;text-align:center}
.cinematic .wedding-hero-copy>h1,.cinematic .wedding-hero-copy>p,.cinematic .wedding-hero-copy>.wedding-eyebrow{max-width:100%;margin-inline:auto;text-align:center;overflow-wrap:anywhere}
.cinematic .wedding-hero h1 span,.cinematic .wedding-hero h1 em{text-align:center}
.cinematic .wedding-section-heading,.cinematic .wedding-story,.cinematic .guest-notes,.cinematic .venue-information,.cinematic .dress-note,.cinematic .gift-note,.cinematic .custom-section-content,.cinematic .wedding-footer{text-align:center}
.cinematic .wedding-timeline article{grid-template-columns:minmax(0,1fr);justify-items:center;gap:12px;text-align:center}
.cinematic .wedding-timeline article>div{width:100%;min-width:0}
.cinematic .wedding-actions{justify-content:center}
.cinematic .guest-notes article{width:100%;min-width:0}
.cinematic .venue-information{padding-inline:32px;min-width:0}
.contact-whatsapp{width:72px;height:72px;border:0;border-radius:0;background:transparent;box-shadow:none;bottom:calc(var(--action-footer-height) + 10px)}
.contact-whatsapp img{width:72px;height:72px;filter:none;object-fit:contain}
@media(max-width:760px){.cinematic .venue-information{padding-inline:24px}}
@media(max-width:360px){.cinematic .wedding-hero-copy{width:calc(100% - 40px)}.cinematic .venue-information{padding-inline:20px}}

/* update-v18.css */
.cinema-backdrop>div{background:rgba(14,24,20,.44)}
.cinematic .wedding-hero-copy{text-shadow:0 2px 12px rgba(0,0,0,.65)}
.contact-whatsapp,.contact-whatsapp img{width:62px;height:62px}
.video-choice{grid-template-rows:auto auto 220px auto auto;align-content:start}
.video-choice>.upload-button{justify-self:start;min-height:44px}
.video-choice>.field-hint{font-size:13px;line-height:1.6}
.cinema-skip{position:absolute;bottom:20px;right:20px;display:flex;align-items:center;gap:8px;border:1px solid #fff8;border-radius:4px;background:#19251dd9;color:#fff;padding:10px 14px;min-height:44px;font:500 13px/1.5 Inter,NotoTamil,sans-serif}
.cinema-skip svg{width:16px;height:16px;flex-shrink:0}
.cinema-intro-tools{right:auto;max-width:calc(100% - 220px);bottom:78px}
@media(max-width:767px){
 .marketing .marketing-nav .identity{align-items:center;gap:8px}
 .marketing .marketing-nav .identity img{width:36px;height:36px;min-width:36px;flex-basis:36px}
 .marketing .marketing-nav .identity span{font-size:15px;line-height:1.25;max-width:140px;align-self:center}
 .marketing-nav .wrap{column-gap:10px}
}
@media(max-width:430px){
 .marketing-nav .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
 .marketing-nav .nav-actions{display:contents}
 .marketing-nav .identity{grid-column:1;grid-row:1}
 .marketing-nav .nav-actions>.btn-outline{grid-column:2;grid-row:1}
 .marketing-nav .language-switch{grid-column:1/-1;grid-row:2;justify-self:end}
 .marketing .marketing-nav .identity span{max-width:none}
}

/* update-v20.css: readable Indic-language typography */
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) body,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) button,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) input,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) textarea,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) select{font-family:Inter,"Nirmala UI","Noto Sans",system-ui,sans-serif;letter-spacing:0;line-height:1.75}
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) h1,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) h2,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) h3,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .wedding-eyebrow,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinema-open strong,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinema-open-area>p,
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinema-intro-heading>p{font-family:Inter,"Nirmala UI","Noto Sans",system-ui,sans-serif;letter-spacing:0;line-height:1.55}
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinematic .wedding-hero h1{font-size:52px}
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinematic h2{font-size:32px}
html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinematic h3{font-size:23px}
@media(max-width:760px){html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinematic .wedding-hero h1{font-size:34px}html:is([lang=hi],[lang=te],[lang=ml],[lang=kn]) .cinematic h2{font-size:27px}}
