@import url('./fonts.css?v=20261003-5');
html,body{overflow-x:hidden}
[hidden]{display:none!important}
:root{--wine:#781d29;--wine-dark:#51121c;--ink:#312b2a;--paper:#fffcf7;--muted:#786b66;--line:#decec3;--gold:#c3a077;--serif:'Cormorant Garamond',Georgia,serif;--script:'Great Vibes',cursive;--sans:'Be Vietnam Pro',Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.8;color:var(--ink);font-weight:300}body.modal-open{overflow:hidden;zoom:1 !important}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}figure,p{margin:0}h1,h2,h3,h4{font-weight:400;margin:0;line-height:1.2}h2{font-family:var(--serif);font-size:clamp(42px,4.8vw,66px);color:var(--wine)}h3{font-family:var(--serif);font-size:32px}h4{font-family:var(--serif);font-size:27px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.script{font-family:var(--script);font-weight:400}.eyebrow{display:block;font-size:12px;font-weight:500;letter-spacing:2.6px;line-height:1.7}.wrap{width:min(1100px,calc(100% - 80px));margin-inline:auto}.section{padding-block:100px}.section-head{text-align:center;margin:0 auto 54px;max-width:650px}.section-head .eyebrow{color:var(--wine);margin-bottom:16px}.section-head p{margin-top:20px;color:var(--muted)}.button{min-height:48px;padding:12px 25px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-size:14px;font-weight:400;letter-spacing:.2px;transition:background .3s,transform .3s,color .3s}.button:hover{transform:translateY(-3px)}.button.primary{background:var(--wine);color:var(--paper)}.button.primary:hover{background:var(--wine-dark)}.button.light{background:var(--paper);color:var(--wine)}.button.outline{border-color:var(--line);background:transparent;color:var(--wine)}.button.outline:hover{background:var(--wine);border-color:var(--wine);color:white}.text-button{border:0;border-bottom:1px solid currentColor;background:transparent;font-size:14px;padding:4px 0;color:var(--wine)}.topbar{height:80px;padding:0 6%;display:flex;justify-content:space-between;align-items:center;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #781d2912;transition:box-shadow .3s}.topbar.scrolled{box-shadow:0 3px 24px #351e1a0b}.brand{font-family:var(--serif);font-size:31px;color:var(--wine);display:flex;align-items:center;gap:18px}.brand span{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:2px;border-left:1px solid var(--line);padding-left:18px}.topbar nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:400}.nav-rsvp{border:1px solid var(--wine);padding:8px 16px;color:var(--wine)}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:12px}.skip-link:focus{top:10px}
/* MẪU 46 · KHUNG VÒM, BỐ CỤC BIÊN TẬP */
.hero{position:relative;overflow:hidden}.hero-arch{max-width:1440px;margin:0 auto;min-height:760px;background:var(--wine);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:5%;padding:70px 8% 80px}.hero-arch:before{content:'';position:absolute;inset:24px;border:1px solid #ffffff2b;pointer-events:none}.hero-arch .hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;z-index:1}.save-date{font-size:52px;margin:22px 0 6px;color:#e9cbb2}.names{font-family:var(--serif);font-weight:400;font-size:clamp(55px,5.5vw,85px);line-height:1.05;display:flex;flex-direction:column}.names i{font-family:var(--script);font-size:.62em;font-weight:400;margin:5px 0}.hero-date{margin:28px 0 20px;font-family:var(--serif);font-size:28px;letter-spacing:4px}.hero-caption{color:#e0c9c6;line-height:1.7;font-size:14px;margin-bottom:28px}.arch-photo{align-self:center;position:relative;height:595px;max-width:440px;width:100%;border-radius:240px 240px 0 0;z-index:1;box-shadow:18px 18px 0 #5e1720}.arch-photo img{border-radius:inherit}.arch-photo:before{content:'';position:absolute;inset:-15px;border:1px solid #d6b69b88;border-radius:250px 250px 0 0;pointer-events:none}.arch-photo figcaption{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-size:10px;font-weight:400;letter-spacing:2px;text-shadow:0 1px 6px black}.hero-edge{position:absolute;right:17px;top:50%;writing-mode:vertical-rl;font-size:10px;letter-spacing:3px;color:#dcc3bb}.families{display:grid;grid-template-columns:1fr 70px 1fr;text-align:center;align-items:center;margin:35px auto 55px;max-width:900px}.family .eyebrow{color:var(--wine);margin-bottom:18px}.family p{font-size:15px;line-height:1.9}.family-address{font-size:13px;color:var(--muted)}.family h3{font-size:38px;color:var(--wine);margin-top:20px}.family-symbol{color:var(--wine);font-size:38px}.invitation-strip{display:flex;gap:20px;max-width:730px;margin:0 auto}.invitation-strip div{width:33.333%;height:270px}.invitation-strip div:nth-child(2){margin-top:32px}.invitation-note{font-size:37px;text-align:center;color:var(--wine);margin-top:62px}.events-section{background:#f5eee7}.events-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.event-card{padding:50px 28px 40px;border:1px solid var(--line);background:var(--paper);position:relative;text-align:center}.event-number{position:absolute;top:12px;left:18px;font-family:var(--serif);font-size:25px;color:#b9a296}.event-card .eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:15px;color:var(--muted)}.event-card h3{color:var(--wine);font-size:34px}.event-date{display:flex;justify-content:center;align-items:center;gap:20px;margin:26px 0}.event-date strong{font-family:var(--serif);font-size:47px;font-weight:400;line-height:1}.event-date span{border-left:1px solid var(--line);padding-left:20px;font-size:14px;text-align:left}.event-card h4{margin-bottom:10px}.event-card p{font-size:14px;color:var(--muted);min-height:50px;margin-bottom:15px}.calendar-countdown{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:60px auto 0;align-items:center}.calendar{max-width:430px;width:100%;margin:auto;text-align:center;background:var(--paper);padding:25px 30px 28px}.calendar-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;color:var(--wine)}.calendar-title .script{font-size:35px}.calendar-title>span:last-child{font-family:var(--serif);font-size:26px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px 4px;margin:22px 0}.calendar-grid>*{display:flex;align-items:center;justify-content:center;aspect-ratio:1;font-size:14px}.calendar-grid b{font-size:12px;font-weight:500;color:var(--muted)}.calendar-grid .wedding-day{background:var(--wine);color:var(--paper);border-radius:50%;box-shadow:0 0 0 4px #781d2910}.calendar>p{font-size:12px;color:var(--muted);margin-bottom:12px}.countdown-panel{text-align:center}.countdown-panel>.eyebrow{font-size:10px;color:var(--wine)}.countdown-panel h3{font-size:50px;margin:20px 0 30px;color:var(--wine)}.countdown{display:flex;gap:10px;justify-content:center}.countdown>div{flex:1;max-width:100px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 5px}.countdown strong{font-family:var(--serif);font-size:46px;font-weight:400;line-height:1.1;display:block;color:var(--wine)}.countdown span{font-size:11px;letter-spacing:1px}.countdown-note{font-size:13px;color:var(--muted);max-width:300px;margin:26px auto 16px}.mini-ornament{font-size:28px;color:var(--gold)}.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.story-photo{height:590px;position:relative}.story-photo img{border-radius:230px 230px 0 0}.story-photo figcaption{position:absolute;bottom:25px;right:-25px;background:var(--paper);color:var(--wine);font-size:42px;padding:15px 25px}.story-item{padding:0 0 35px 36px;position:relative;border-left:1px solid var(--line)}.story-item:last-child{padding-bottom:0}.story-dot{position:absolute;left:-16px;top:0;background:var(--paper);border:1px solid var(--line);width:32px;height:32px;text-align:center;font-family:var(--serif);font-size:16px}.story-item .eyebrow{font-size:11px;color:var(--wine);margin-bottom:10px}.story-item h3{font-size:30px;margin-bottom:15px}.story-item p{font-size:14px;color:var(--muted)}.vow-section{min-height:520px;position:relative;display:grid;place-items:center;isolation:isolate;color:white;overflow:hidden}.vow-image{position:absolute;inset:0;z-index:-2}.vow-image img{object-position:50% 42%}.vow-section:after{content:'';position:absolute;inset:0;background:#29141680;z-index:-1}.vow-copy{max-width:760px;text-align:center;padding:65px 30px}.vow-copy .script{font-size:clamp(38px,5vw,61px);line-height:1.5;margin:25px 0}.vow-copy>span:last-child{font-size:11px;letter-spacing:3px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}.timeline article{position:relative}.timeline article:after{content:'';position:absolute;top:35px;left:calc(50% + 35px);width:calc(100% - 40px);height:1px;background:var(--line)}.timeline article:last-child:after{display:none}.timeline-symbol{font-size:38px;line-height:70px;color:var(--wine);display:block;margin-bottom:20px}.timeline strong{display:block;font-size:14px;color:var(--wine);font-weight:400;margin-bottom:15px}.timeline h3{font-size:28px;margin-bottom:12px}.timeline p{font-size:13px;color:var(--muted)}.dresscode{text-align:center;margin:65px auto 0;padding-top:35px;border-top:1px solid var(--line);max-width:600px}.dresscode>div{display:flex;justify-content:center;gap:12px;margin:18px 0}.dresscode>div span{width:25px;height:25px;border-radius:50%;border:1px solid #0002}.dresscode p{font-size:13px;color:var(--muted)}.album-section{background:#f5eee7}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;grid-auto-rows:310px}.gallery-item{padding:0;border:0;position:relative;overflow:hidden;background:#decfc7}.gallery-item:nth-child(1),.gallery-item:nth-child(5){grid-row:span 2}.gallery-item img{transition:transform 1s var(--ease)}.gallery-item:hover img{transform:scale(1.05)}.gallery-item span{position:absolute;bottom:15px;right:15px;width:36px;height:36px;border-radius:50%;background:#ffffffdb;color:var(--wine);display:grid;place-items:center;font-size:23px}.rsvp-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.rsvp-image{height:800px;position:relative;align-self:stretch;min-height:100%}.rsvp-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 40%,#1d151cc9)}.rsvp-image>div{position:absolute;bottom:45px;left:40px;color:white;z-index:1}.rsvp-image .script{font-size:65px;line-height:1.15;margin-top:20px}.rsvp-content>.eyebrow{font-size:10px;color:var(--wine);margin-bottom:12px}.rsvp-content h2{font-size:54px}.rsvp-content>p{font-size:14px;color:var(--muted);margin:20px 0 28px}form label,form legend{font-size:13px;font-weight:400}form>label{display:block;margin-bottom:17px}input:not([type=radio]),textarea,select{display:block;width:100%;background:transparent;border:1px solid var(--line);border-radius:0;min-height:46px;padding:10px 12px;font-size:14px;color:var(--ink);margin-top:6px;max-width:100%}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#998d84;font-weight:300}fieldset{padding:0;border:0;margin:0 0 17px}legend{margin-bottom:8px}.radio{display:flex;gap:10px;align-items:center;min-height:32px;font-weight:300}input[type=radio]{accent-color:var(--wine);width:16px;height:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:17px}select{background:var(--paper);padding-right:20px}select:disabled{opacity:.4}form .button{width:100%}button:disabled{cursor:wait;opacity:.6}.form-note{font-size:11px!important;line-height:1.7;margin:12px 0;color:var(--muted)}#form-status{font-size:13px;color:var(--wine);font-weight:400}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.gift-section{text-align:center;background:var(--wine);color:var(--paper);padding-inline:24px}.gift-section .section-head{margin-bottom:30px;max-width:540px}.gift-section h2,.gift-section .eyebrow,.gift-section p{color:inherit}.gift-section p{opacity:.8}.gift-mark{display:block;font-family:var(--serif);font-size:80px;line-height:1;margin-bottom:25px}.footer{text-align:center;padding:65px 20px 100px}.footer .eyebrow{font-size:10px;color:var(--muted);letter-spacing:1.7px}.footer .script{font-size:51px;color:var(--wine);margin:24px 0 10px}.footer>span:last-of-type{font-size:13px;color:var(--muted)}.footer small{display:block;font-size:9px;letter-spacing:1.2px;margin-top:25px;color:var(--muted)}.footer>a{display:inline-block;margin:10px;font-size:13px;text-decoration:underline}.floating-tools{position:fixed;bottom:24px;right:24px;z-index:21;display:flex;flex-direction:column;gap:10px}.floating-tools button,.floating-tools a{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;background:var(--wine);border:1px solid #fffcf76b;color:white;box-shadow:0 3px 20px #2a181226;font-size:22px;padding:0}.floating-tools #top{display:none}.floating-tools #top.is-visible{display:grid}#music[aria-pressed=true] span{animation:musicPulse 2s ease-in-out infinite}#music[aria-pressed=true]{background:var(--paper);color:var(--wine);border-color:var(--wine)}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:var(--gold);transform-origin:left;z-index:50}.reveal{transition:opacity 1s var(--ease),transform 1.2s var(--ease)}@media(prefers-reduced-motion:no-preference){.reveal:not(.visible){opacity:0;transform:translateY(32px)}.events-grid .reveal:nth-child(2),.timeline .reveal:nth-child(2){transition-delay:.12s}.timeline .reveal:nth-child(3){transition-delay:.2s}.gallery .reveal:nth-child(3n+2){transition-delay:.1s}.opened .hero-copy{animation:fadeUp 1.2s var(--ease) both}.hero-background{animation:slowZoom 16s ease-out both}}
dialog{border:0;padding:45px;background:var(--paper);color:var(--ink);max-width:min(540px,calc(100% - 32px));max-height:90dvh;box-shadow:0 25px 100px #0005}dialog::backdrop{background:#25141be0;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:10px;top:10px;width:44px;height:44px;border:0;background:transparent;font-size:30px;z-index:2}#lightbox{width:96vw;height:94dvh;max-width:1200px;max-height:94dvh;background:transparent;box-shadow:none;color:white;padding:50px 65px 20px;overflow:hidden}#lightbox figure{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}#lightbox img{height:calc(100% - 55px);width:100%;object-fit:contain;min-height:0}#lightbox figcaption{font-size:12px;text-align:center;margin-top:16px}.lightbox-prev,.lightbox-next{position:absolute;top:48%;background:#ffffff15;border:1px solid #fff4;border-radius:50%;width:44px;height:44px;color:white;font-size:30px}.lightbox-prev{left:5px}.lightbox-next{right:5px}#gift-dialog{text-align:center;width:490px}#gift-dialog h2{font-size:43px;margin:15px 0 25px}.gift-tabs{display:flex;gap:10px;justify-content:center;margin-bottom:25px}.gift-tabs button{padding:9px 18px;background:none;border:1px solid var(--line);font-size:13px}.gift-tabs button[aria-pressed=true]{background:var(--wine);color:white;border-color:var(--wine)}.qr{width:190px;height:190px;object-fit:contain;margin:0 auto 20px}.account{font-size:23px;letter-spacing:2px;margin:12px 0}.gift-empty span{font-size:45px;color:var(--wine)}.gift-empty p{font-size:15px;margin:10px 0}.gift-empty small{font-size:12px;color:var(--muted)}.gift-status{font-size:13px;margin-top:12px;color:var(--wine)}.opening{width:560px;padding:18px;overflow:auto;background:var(--paper);transition:opacity .65s,transform .65s var(--ease);text-align:center}.opening-paper{padding:55px 28px 40px;border:1px solid var(--line);position:relative}.opening-paper>.eyebrow{font-size:9px;letter-spacing:2px}.seal{width:82px;height:82px;margin:36px auto;background:var(--wine);color:#e9c7a4;border-radius:50%;border:5px double #aa666a;display:grid;place-items:center;font-family:var(--serif);font-size:31px;box-shadow:0 4px 8px #51121c25}.opening-paper .script{font-size:59px;color:var(--wine);line-height:1.5}.opening-paper>p:not(.script){font-family:var(--serif);font-size:26px;margin:5px 0}.opening-paper>span:not(.eyebrow){display:block;font-size:14px;letter-spacing:2px}.opening-paper .button{display:flex;width:220px;margin:30px auto 20px}.opening-paper small{font-size:10px;color:var(--muted)}.opening.leaving{transform:translateY(-60px) scale(1.06);opacity:0}.opening.leaving::backdrop{background:transparent;backdrop-filter:none;transition:all .65s}.toast{position:fixed;bottom:35px;left:50%;transform:translate(-50%,20px);background:var(--wine-dark);color:white;font-size:13px;padding:13px 22px;opacity:0;z-index:100;pointer-events:none;transition:.3s;max-width:85vw;width:max-content}.toast.shown{opacity:1;transform:translate(-50%,0)}.celebration{position:fixed;inset:0;z-index:25;pointer-events:none;overflow:hidden}.celebration span{position:absolute;width:9px;height:17px;border-radius:80% 0 80% 0;background:#d7a3a1;top:-30px;animation:fall 5s ease-in forwards}.celebration span:nth-child(2n){background:#c5a075}.celebration span:nth-child(3n){background:#eee0cb}
/* MẪU 47 · ẢNH TRÀN KHUNG, TRẮNG TỐI GIẢN */
body[data-theme='47']{--paper:#fff;--wine:#7d1724;--line:#e1d5d4;--muted:#78716f}.hero-editorial{height:calc(100svh - 80px);min-height:670px;max-height:1000px;color:white;background:#574d4b}.hero-background{position:absolute;inset:0;object-position:50% 45%!important}.hero-editorial:after{content:'';position:absolute;inset:0;background:linear-gradient(#24131335,transparent 25%,#160b0dbb)}.editorial-top{position:absolute;z-index:1;top:36px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px}.hero-editorial .hero-copy{position:absolute;z-index:1;bottom:55px;left:8%;right:8%}.hero-editorial .names{flex-direction:row;align-items:center;gap:25px;font-size:clamp(65px,7.8vw,120px);margin-top:20px;flex-wrap:wrap}.hero-editorial .names i{margin:0}.editorial-bottom{margin-top:28px;display:flex;align-items:flex-end;justify-content:space-between;border-top:1px solid #fff6;padding-top:25px}.editorial-bottom p{font-size:14px}.hero-editorial .button{background:transparent;color:white;border-color:#fff8}body[data-theme='47'] .invitation-strip{max-width:950px}body[data-theme='47'] .invitation-strip div{height:350px}body[data-theme='47'] .invitation-strip div:nth-child(2){margin-top:0}body[data-theme='47'] .events-section{background:#fff}body[data-theme='47'] .event-card{background:var(--wine);color:white;border-radius:90px 0 0 0;padding-top:65px}body[data-theme='47'] .event-card h3,body[data-theme='47'] .event-card .eyebrow,body[data-theme='47'] .event-card p,body[data-theme='47'] .event-card .button{color:inherit}body[data-theme='47'] .event-card .button{border-color:#ffffff66}body[data-theme='47'] .calendar{border:1px solid var(--line)}body[data-theme='47'] .story-photo img{border-radius:0}body[data-theme='47'] .story-photo{height:650px}body[data-theme='47'] .album-section{background:#f9f6f5}body[data-theme='47'] .gallery{grid-template-columns:1fr 1fr;grid-auto-rows:380px}body[data-theme='47'] .gallery-item:nth-child(1),body[data-theme='47'] .gallery-item:nth-child(5){grid-row:span 1}body[data-theme='47'] .gallery-item:nth-child(3){grid-column:span 2;height:530px}body[data-theme='47'] .gallery{grid-template-rows:380px 530px 380px 380px}body[data-theme='47'] .gallery-item:last-child{grid-column:span 2}body[data-theme='47'] .rsvp-image{height:850px}
/* MẪU 38 · THIỆP ĐỎ TRUYỀN THỐNG, MÉP GIẤY */
body[data-theme='38']{--wine:#792627;--wine-dark:#531717;--paper:#fffef5;background:var(--wine)}body[data-theme='38'] main{max-width:1160px;margin:0 auto;background:var(--paper);border-left:1px solid #e2c7a266;border-right:1px solid #e2c7a266}body[data-theme='38'] .wrap{width:calc(100% - 110px)}body[data-theme='38'] .hero-traditional{background:var(--wine);color:var(--paper);padding:35px 65px 0}.traditional-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dfb99455;padding-bottom:20px}.traditional-top .script{font-size:34px}.traditional-top>span:last-child{font-family:var(--serif);letter-spacing:3px;font-size:21px}.traditional-copy{text-align:center;margin:35px 0 28px}.traditional-copy .eyebrow{font-size:10px}.traditional-copy .names{flex-direction:row;justify-content:center;align-items:center;gap:25px;font-family:var(--script);font-size:75px;margin-top:20px}.traditional-copy .names i{font-family:var(--serif);font-size:37px}.traditional-photo{position:relative;max-width:770px;margin:auto;height:600px;border-radius:300px 300px 0 0;overflow:hidden;border:1px solid #d1b18e}.traditional-photo img{object-position:50% 40%!important}.double-happiness{position:absolute;top:30px;right:35px;font-size:70px;color:var(--wine);text-shadow:0 1px 10px #fff}.hero-ribbon{max-width:850px;margin:-32px auto 0;background:var(--paper);color:var(--wine);position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;padding:25px;border-radius:90px 90px 0 0;border-bottom:1px solid var(--line)}.hero-ribbon span{font-size:10px;letter-spacing:3px}.hero-ribbon strong{font-family:var(--serif);font-weight:400;font-size:41px;letter-spacing:4px}.hero-ribbon a{font-size:12px;color:var(--muted)}body[data-theme='38'] .invitation{padding-top:70px}body[data-theme='38'] .section-head h2{font-family:var(--script);font-size:59px}body[data-theme='38'] .event-card{background:var(--paper);border:1px solid var(--wine);outline:1px solid #79262733;outline-offset:-8px}body[data-theme='38'] .events-section{background:#f5f0e2;position:relative}body[data-theme='38'] .events-section:before,body[data-theme='38'] .events-section:after{content:'';width:32px;height:64px;border-radius:0 40px 40px 0;background:var(--wine);position:absolute;left:-1px;top:50%}body[data-theme='38'] .events-section:after{left:auto;right:-1px;transform:rotate(180deg)}body[data-theme='38'] .invitation-strip{gap:10px}body[data-theme='38'] .invitation-strip div:nth-child(2){margin:0}body[data-theme='38'] .invitation-strip div{height:300px}body[data-theme='38'] .story-layout{gap:60px}body[data-theme='38'] .story-photo img{border-radius:0}body[data-theme='38'] .vow-section{margin:0 40px}body[data-theme='38'] .album-section{background:var(--paper);border-block:1px solid var(--line)}body[data-theme='38'] .gallery{gap:10px;grid-auto-rows:270px}body[data-theme='38'] .rsvp-section{gap:40px}body[data-theme='38'] .gift-section{border:1px solid #d4bba970;margin:0 20px;position:relative}body[data-theme='38'] .gift-section:after{content:'';position:absolute;inset:10px;border:1px solid #d4bba940;pointer-events:none}
@keyframes fadeUp{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes slowZoom{from{transform:scale(1.06)}to{transform:scale(1)}}@keyframes musicPulse{50%{transform:scale(1.25) rotate(-10deg)}}@keyframes oliveMapBreath{0%,100%{transform:scale(1);opacity:.86}50%{transform:scale(1.16);opacity:1}}@keyframes fall{to{transform:translate(var(--drift),110vh) rotate(var(--turn));opacity:0}}
@media(min-width:1500px){.hero-arch{max-width:1500px}.hero-editorial{max-width:1800px;margin:auto}}
@media(max-width:1000px){.wrap{width:calc(100% - 60px)}.hero-arch{padding:70px 7%;min-height:680px;gap:7%}.arch-photo{height:510px}.names{font-size:64px}.story-layout{gap:50px}.rsvp-section{gap:35px}.rsvp-content h2{font-size:44px}.calendar-countdown{gap:30px}.gallery{grid-auto-rows:240px}body[data-theme='38'] .wrap{width:calc(100% - 60px)}.traditional-copy .names{font-size:60px}.traditional-photo{height:530px}body[data-theme='38'] .hero-traditional{padding-inline:40px}.event-card h3{font-size:30px}.rsvp-image{height:860px}}
@media(max-width:700px){html{scroll-padding-top:65px}.topbar{height:65px;padding-inline:20px}.brand{font-size:29px}.brand span{display:none}.topbar nav{gap:17px;font-size:11px}.topbar nav>a:first-child{display:none}.nav-rsvp{padding:7px 10px}.wrap,body[data-theme='38'] .wrap{width:calc(100% - 40px)}.section{padding-block:65px}.section-head{margin-bottom:35px}.section-head .eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:12px}.section-head p{font-size:14px;margin-top:17px}h2{font-size:43px}.hero-arch{display:flex;flex-direction:column;padding:38px 28px 48px;gap:35px;min-height:0}.hero-arch:before{inset:12px}.hero-arch .hero-copy{align-items:center;text-align:center}.hero-arch .hero-copy>.eyebrow{font-size:9px;letter-spacing:2px}.hero-arch .save-date{font-size:35px;margin-top:20px}.hero-arch .names{flex-direction:row;align-items:center;gap:13px;font-size:clamp(32px,8.5vw,56px);line-height:1.3}.hero-arch .names i{font-size:30px;margin:0}.hero-date{font-size:23px;margin:18px 0 0}.hero-caption{display:none}.hero-arch .hero-copy .button{display:none}.arch-photo{width:80%;max-width:390px;height:auto;aspect-ratio:3/4;align-self:center;box-shadow:10px 10px 0 #5e1720}.arch-photo:before{inset:-9px}.hero-edge{right:13px;font-size:8px}.arch-photo figcaption{font-size:8px;letter-spacing:1.5px}.families{grid-template-columns:1fr 25px 1fr;margin:25px auto 35px;gap:0}.family .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:12px}.family p{font-size:11px;line-height:1.9}.family-address{font-size:10px}.family h3{font-size:26px;margin-top:16px;line-height:1.5}.family-symbol{font-size:24px}.invitation-strip{gap:9px}.invitation-strip div{height:175px}.invitation-strip div:nth-child(2){margin-top:20px}.invitation-note{font-size:29px;margin-top:40px}.events-grid{grid-template-columns:1fr;gap:22px}.event-card{padding:40px 25px 32px}.event-card h3{font-size:32px}.event-card h4{font-size:26px}.event-card p{min-height:0;margin:10px 0 23px}.calendar-countdown{grid-template-columns:1fr;gap:48px;margin-top:40px}.calendar{max-width:400px;padding:22px 25px}.calendar-grid{gap:5px}.countdown-panel h3{font-size:45px}.countdown{gap:8px;max-width:400px;margin:auto}.countdown strong{font-size:42px}.story-layout{grid-template-columns:1fr;gap:55px}.story-photo{height:450px;max-width:400px;margin:0 auto;width:100%}.story-photo figcaption{right:-5px;font-size:36px;padding:12px 20px}.stories{padding-left:15px}.story-item h3{font-size:29px}.story-item p{font-size:14px}.vow-section{min-height:450px}.vow-copy .script{font-size:39px}.vow-copy .eyebrow{font-size:10px;letter-spacing:1.8px}.vow-copy>span:last-child{font-size:9px}.timeline{grid-template-columns:1fr 1fr;gap:35px 25px}.timeline article:after{display:none}.timeline-symbol{margin-bottom:7px;font-size:34px}.timeline h3{font-size:25px}.timeline p{font-size:12px}.dresscode{margin-top:40px}.dresscode p{font-size:12px}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:210px;gap:10px}.gallery-item:nth-child(1){grid-row:span 2}.gallery-item:nth-child(5){grid-row:span 1}.gallery-item:nth-child(4){grid-row:span 2}.gallery-item span{width:30px;height:30px;right:10px;bottom:10px}.rsvp-section{grid-template-columns:1fr;gap:35px}.rsvp-image{height:430px;min-height:0}.rsvp-image .script{font-size:53px}.rsvp-image>div{left:28px;bottom:28px}.rsvp-content h2{font-size:47px}.rsvp-content>p{font-size:14px}.gift-section{padding-block:65px}.gift-section h2{font-size:43px}.gift-mark{font-size:63px}.footer{padding:50px 25px 90px}.footer .script{font-size:40px}.floating-tools{bottom:20px;right:12px;gap:8px}.floating-tools a,.floating-tools button{width:40px;height:40px;font-size:20px}.opening{padding:11px;max-width:calc(100% - 34px)}.opening-paper{padding:35px 15px 26px}.opening-paper>.eyebrow{font-size:8px;letter-spacing:1.6px}.opening-paper .script{font-size:46px}.seal{margin:25px auto;width:72px;height:72px}.opening-paper>p:not(.script){font-size:24px}.opening-paper small{font-size:9px}.opening-paper .button{margin-top:25px}.hero-editorial{height:calc(100svh - 65px);min-height:650px;max-height:900px}.hero-editorial .hero-copy{left:25px;right:25px;bottom:40px}.hero-editorial .hero-copy>.eyebrow{font-size:9px;letter-spacing:1.5px}.hero-editorial .names{flex-direction:column;align-items:flex-start;gap:0;font-size:54px;line-height:1.03;margin-top:20px}.hero-editorial .names i{font-size:38px;margin:5px 0}.editorial-top{top:23px;left:25px;right:25px;font-size:8px;letter-spacing:1.3px}.editorial-bottom{align-items:flex-start;gap:20px;flex-direction:column;margin-top:25px;padding-top:20px}.editorial-bottom p{font-size:12px}.editorial-bottom .button{min-height:42px;font-size:12px;padding:9px 20px}.hero-background{object-position:52% 40%!important}body[data-theme='47'] .invitation-strip div{height:185px}body[data-theme='47'] .story-photo{height:460px}body[data-theme='47'] .gallery{grid-template-columns:1fr 1fr;grid-auto-rows:230px;grid-template-rows:230px 320px 230px 300px}body[data-theme='47'] .gallery-item:nth-child(3){height:320px}body[data-theme='47'] .gallery-item:nth-child(4){grid-row:span 1}body[data-theme='47'] .rsvp-image{height:470px}body[data-theme='38'] main{margin:0 10px}body[data-theme='38'] .hero-traditional{padding:24px 20px 0}.traditional-top .script{font-size:25px}.traditional-top>span:last-child{font-size:16px;letter-spacing:1.5px}.traditional-copy{margin:27px 0 22px}.traditional-copy .eyebrow{font-size:8px;letter-spacing:1.4px}.traditional-copy .names{font-size:clamp(31px,8vw,50px);gap:13px;margin-top:18px;line-height:1.5}.traditional-copy .names i{font-size:24px}.traditional-photo{height:auto;aspect-ratio:3/4;border-radius:180px 180px 0 0}.double-happiness{font-size:46px;right:20px;top:30px}.hero-ribbon{padding:20px 8px 22px;margin-top:-25px;border-radius:60px 60px 0 0}.hero-ribbon strong{font-size:33px}.hero-ribbon a{font-size:10px}.hero-ribbon span{font-size:8px}.hero-traditional .traditional-photo img{object-position:50% 40%!important}body[data-theme='38'] .section-head h2{font-size:45px;line-height:1.45}body[data-theme='38'] .wrap{width:calc(100% - 36px)}body[data-theme='38'] .invitation{padding-top:45px}body[data-theme='38'] .invitation-strip div{height:155px}body[data-theme='38'] .family h3{font-size:23px}body[data-theme='38'] .event-card{padding-inline:18px}body[data-theme='38'] .event-card h3{font-size:30px}body[data-theme='38'] .events-section:before,body[data-theme='38'] .events-section:after{width:14px;height:28px}body[data-theme='38'] .story-layout{gap:45px}body[data-theme='38'] .vow-section{margin:0 18px;min-height:410px}body[data-theme='38'] .vow-copy{padding-inline:18px}body[data-theme='38'] .vow-copy .script{font-size:32px}body[data-theme='38'] .gallery{grid-auto-rows:195px}body[data-theme='38'] .gift-section{margin:0 10px;padding-inline:20px}body[data-theme='38'] .rsvp-section{gap:35px}dialog{padding:40px 25px 30px}#gift-dialog h2{font-size:39px}#lightbox{padding:50px 0 40px;width:100%;max-width:100%}#lightbox img{width:100%}#lightbox figcaption{padding-inline:35px}.lightbox-prev,.lightbox-next{top:auto;bottom:0}.lightbox-prev{left:calc(50% - 55px)}.lightbox-next{right:calc(50% - 55px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}.celebration{display:none}}
body[data-theme='48'] .olive-thank-you-dialog { width:420px; max-width:92vw; height:398px; max-height:calc(100dvh - 32px); padding:0; border:0; border-radius:16px; overflow:hidden; background:#fff; color:#6f6969; text-align:center; box-shadow:0 22px 70px rgba(26,28,20,.3); }
body[data-theme='48'] .olive-thank-you-dialog__image { height:258px; overflow:hidden; background:#7c6b56; }
body[data-theme='48'] .olive-thank-you-dialog__image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 67%; }
body[data-theme='48'] .olive-thank-you-dialog__copy { height:140px; padding:17px 24px 12px; background:#fff url('assets/hero-bg.png') center/cover; }
body[data-theme='48'] .olive-thank-you-dialog__copy p { margin:0; font-family:'Hepta Slab',Georgia,serif; font-size:13px; line-height:1.5; color:#6f6969; }
body[data-theme='48'] .olive-thank-you-dialog__copy h2 { margin:4px 0 0; color:#6f6969; font-family:var(--script),cursive; font-size:52px; line-height:1.1; font-weight:400; }
body[data-theme='48'] .olive-thank-you-dialog > .dialog-close { position:absolute; z-index:2; top:10px; right:10px; width:30px; height:30px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.95); color:#6f6969; font:24px/28px Georgia,serif; box-shadow:0 2px 8px rgba(0,0,0,.12); }
@media (max-width:480px) {
  body[data-theme='48'] .olive-thank-you-dialog { height:360px; }
  body[data-theme='48'] .olive-thank-you-dialog__image { height:232px; }
  body[data-theme='48'] .olive-thank-you-dialog__copy { height:128px; padding-top:15px; }
  body[data-theme='48'] .olive-thank-you-dialog__copy h2 { font-size:46px; }
}
@media print{.topbar,.floating-tools,dialog,.scroll-progress,.button,.gallery-item span,.toast{display:none!important}.reveal{opacity:1!important;transform:none!important}body{background:white}.section{padding-block:30px}.hero{min-height:0!important;height:auto!important}.hero-editorial{height:650px!important}main{max-width:none!important}.gift-section{break-inside:avoid}.rsvp-section{display:none}.events-grid{break-inside:avoid}}

/* Mẫu 48 · Olive Heirloom — mobile-first composition based on the supplied reference. */
body[data-theme='48'] { --olive:#71883a; --olive-dark:#4f6426; --orange:#c8622d; --paper:#f8f5ec; --ink:#526229; --serif:'Cormorant Upright','Cormorant Garamond',serif; background:var(--paper); color:var(--ink); }
body[data-theme='48'] main { width:100%; max-width:420px; margin:0; background:var(--paper); overflow:hidden; }
body[data-theme='48'] .topbar { display:none; }
body[data-theme='48'] .hero-olive { min-height:848px; padding:0; background:var(--paper); }
body[data-theme='48'] .olive-frame { position:relative; width:100%; height:606px; overflow:hidden; border:1px solid #fff; border-radius:0 0 22px 22px; isolation:isolate; }
body[data-theme='48'] .olive-backdrop, body[data-theme='48'] .olive-wash { position:absolute; inset:0; }
body[data-theme='48'] .olive-backdrop { z-index:-3; background:url('assets/hero-bg.png') center/cover; }
body[data-theme='48'] .olive-wash { z-index:0; left:64%; right:0; background:linear-gradient(90deg,rgba(46,57,28,.72),rgba(41,50,25,.78)),url('assets/paper.png') center/cover; filter:blur(2px); }
body[data-theme='48'] .olive-couple { position:absolute; inset:0; width:100%; height:606px; margin:0; z-index:-1; }
body[data-theme='48'] .olive-couple img { width:100%; height:100%; object-fit:cover; object-position:50% 54%; }
body[data-theme='48'] .olive-seal { position:absolute; top:32px; right:120px; z-index:2; display:grid; place-items:center; width:66px; height:68px; border-radius:9px; color:#fff7df; background:var(--orange); font-family:Georgia,serif; font-size:34px; line-height:1; }
body[data-theme='48'] .olive-names { position:absolute; top:136px; right:52.5px; z-index:2; display:flex; width:203px; height:203px; flex-direction:column; align-items:center; justify-content:flex-start; padding-top:0; border:0; color:#fff; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:40px; line-height:1; text-align:center; }
body[data-theme='48'] .olive-names::before { content:""; position:absolute; z-index:-1; top:-16px; left:50.5px; width:105px; height:229px; border:1px solid #fff; border-radius:26px; background:rgba(82,103,44,.82); }
body[data-theme='48'] .olive-names b { position:absolute; top:99px; font-family:Georgia,serif; font-size:18px; font-weight:400; }
body[data-theme='48'] .olive-names span:last-child { margin-top:39px; }
body[data-theme='48'] .olive-date { position:absolute; top:365px; right:138px; z-index:2; display:flex; flex-direction:column; gap:15px; }
body[data-theme='48'] .olive-date span { display:grid; width:30px; height:30px; place-items:center; color:#ffe8d1; background:var(--orange); font-family:'Hepta Slab','Cormorant Garamond',serif; font-size:14px; transform:rotate(45deg); }
body[data-theme='48'] .olive-date i { font-style:normal; transform:rotate(-45deg); }
body[data-theme='48'] .olive-countdown { position:relative; height:242px; padding:0 27px; overflow:hidden; background:var(--paper) url('assets/hero-bg.png') center/cover; text-align:center; }
body[data-theme='48'] .olive-countdown::before { content:""; position:absolute; z-index:0; top:64px; right:0; left:0; height:134px; background:url('assets/bg2.png') center/100% 134px no-repeat; }
body[data-theme='48'] .olive-countdown h2 { position:relative; z-index:1; margin:0; padding-top:0; color:var(--olive); font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:54px; font-weight:400; line-height:1.78; }
body[data-theme='48'] .olive-countdown__numbers { position:relative; z-index:1; display:grid; width:100%; max-width:365px; min-width:0; margin-inline:auto; grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr); align-items:start; color:#3b520d; }
body[data-theme='48'] .olive-countdown__numbers > * { min-width:0; }
body[data-theme='48'] .olive-countdown__numbers div { display:flex; min-width:0; flex-direction:column; align-items:center; overflow:hidden; }
body[data-theme='48'] .olive-countdown__numbers strong { font-family:'Hepta Slab','Cormorant Garamond',serif; font-size:30px; font-weight:400; line-height:1.2; }
body[data-theme='48'] .olive-countdown__numbers small { max-width:100%; margin-top:4px; overflow:hidden; font-family:'Hepta Slab',serif; font-size:clamp(8px,2.55vw,10px); white-space:nowrap; }
body[data-theme='48'] .olive-countdown__numbers > b { padding-top:1px; font-family:'Hepta Slab',serif; font-size:30px; font-weight:400; line-height:1; }
body[data-theme='48'] .floating-tools a, body[data-theme='48'] .floating-tools #top { display:none; }
body[data-theme='48'] .floating-tools { right:22px; bottom:24px; }
body[data-theme='48'] .invitation { padding:82px 20px 70px; background:var(--paper) url('assets/hero-bg.png') center/cover; }
body[data-theme='48'] .olive-save-date-section { position:relative; height:1162px; padding-top:0; overflow:hidden; background:var(--paper) url('assets/hero-bg.png') center/cover; }
body[data-theme='48'] .olive-save-date-section::before { content:""; position:absolute; z-index:0; inset:0; background:none; pointer-events:none; }
body[data-theme='48'] .olive-save-date__flower--upper { position:absolute; z-index:0; top:554px; left:-13px; width:157px; height:187px; background:url('https://w.ladicdn.com/s500x500/691804d3a89f3900120ca482/hoa2-20260607053233-orkaj.png') center/cover no-repeat; transform:scaleX(-1); transform-origin:center; pointer-events:none; }
body[data-theme='48'] .olive-save-date__flower--lower { position:absolute; z-index:0; top:904px; left:219px; width:199px; height:291px; background:url('https://w.ladicdn.com/s500x600/691804d3a89f3900120ca482/hoa1-20260607053233-zeywu.png') center/cover no-repeat; transform:rotate(180deg); transform-origin:center; pointer-events:none; }
body[data-theme='48'] .olive-save-date-section::after { content:""; position:absolute; z-index:0; top:608px; left:36px; width:349px; height:445px; background:url('https://w.ladicdn.com/s650x750/691804d3a89f3900120ca482/_0017_9-20251020184704-zyurf-20260607064734-jthgg.png') 0 0/cover no-repeat; pointer-events:none; }
body[data-theme='48'] .olive-save-date-card { position:relative; width:calc(100% - 20px); height:544px; margin:0 10px; overflow:hidden; border-radius:18px; background:url('assets/bg.png') center/cover; }
body[data-theme='48'] .olive-save-date__title { position:absolute; top:25px; left:45px; z-index:2; display:flex; flex-direction:column; align-items:flex-start; color:#fff; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:72px; line-height:.86; }
body[data-theme='48'] .olive-save-date__title b { margin-left:53px; color:#aaa9a1; font-family:'Hepta Slab',serif; font-size:38px; font-weight:400; line-height:1.1; }
body[data-theme='48'] .olive-save-date__title > span:last-child { margin-top:14px; margin-left:43.65px; }
body[data-theme='48'] .olive-save-date__date { position:absolute; top:215px; left:127px; z-index:2; display:flex; width:72.44px; height:73.89px; flex-direction:column; align-items:center; padding:0; border:1px solid #ffe8d1; border-radius:8px; color:#ffe8d1; background-color:#a64f1c; background-image:linear-gradient(to bottom, transparent 43%, #ffe8d1 43%, #ffe8d1 45%, transparent 45%),url('https://w.ladicdn.com/s400x400/691804d3a89f3900120ca482/hy2-20260607034712-37jgj.png'); background-size:100% 100%,cover; background-position:0 0,0 0; background-repeat:no-repeat; font-family:'Hepta Slab',serif; font-size:19px; line-height:1.1; }
body[data-theme='48'] .olive-save-date__date strong { font-weight:400; }
body[data-theme='48'] .olive-save-date__date strong:first-child { display:flex; width:64px; height:33px; align-items:center; justify-content:space-between; margin-top:6px; font-size:0; }
body[data-theme='48'] .olive-save-date__date strong:first-child span { font-size:19px; }
body[data-theme='48'] .olive-save-date__date strong:first-child::before { content:none; }
body[data-theme='48'] .olive-save-date__date strong:first-child::after { content:''; position:absolute; top:8px; left:50%; width:1px; height:21px; background:#ffe8d1; }
body[data-theme='48'] .olive-save-date__date strong:last-child { display:block; width:64px; height:24px; margin-top:0; text-align:center; font-size:22px; line-height:1.1; }
body[data-theme='48'] .olive-save-date__photo { position:absolute; z-index:1; display:block; object-fit:cover; border-radius:20px; }
body[data-theme='48'] .olive-save-date__photo--one { top:27px; right:-1px; width:146px; height:287px; object-position:50% 50%; }
body[data-theme='48'] .olive-save-date__photo--two { top:321px; left:108px; width:119px; height:208px; object-position:50% 50%; }
body[data-theme='48'] .olive-save-date__photo--three { top:321px; right:-1px; width:146px; height:208px; object-position:50% 50%; }
body[data-theme='48'] .olive-save-date__seal { display:none; }
body[data-theme='48'] .olive-invite-copy { position:absolute; z-index:1; top:638px; left:0; width:420px; height:365px; color:#3b520d; font-family:'Hepta Slab',serif; text-align:center; }
body[data-theme='48'] .olive-save-date-section--copy { height:608px; }
body[data-theme='48'] .olive-save-date-section--copy::before { background:none; }
body[data-theme='48'] .olive-save-date-section--copy .olive-save-date__flower--upper { top:0; }
body[data-theme='48'] .olive-save-date-section--copy .olive-save-date__flower--upper { transform:scaleX(-1); }
body[data-theme='48'] .olive-save-date-section--copy .olive-save-date__flower--lower { transform:rotate(180deg); }
body[data-theme='48'] .olive-save-date-section--copy .olive-save-date__flower--lower { top:350px; }
body[data-theme='48'] .olive-save-date-section--copy::after { top:54px; display:block; }
body[data-theme='48'] .olive-save-date-section--copy .olive-invite-copy { top:84px; }
body[data-theme='48'] .olive-invite-copy__note { position:absolute; top:0; left:39px; width:342px; margin:0; font-size:11px; line-height:1.6; text-transform:uppercase; white-space:pre-line; }
body[data-theme='48'] .olive-invite-copy h3 { position:absolute; top:59px; left:0; width:420px; margin:0; font-size:24px; font-weight:400; line-height:1.6; }
body[data-theme='48'] .olive-invite-copy__address { position:absolute; top:98px; left:0; width:420px; margin:0; font-size:12px; font-style:italic; line-height:1.6; }
body[data-theme='48'] .olive-invite-copy__date { position:absolute; top:144px; left:39px; width:343px; margin:0; font-size:18px; line-height:1.6; text-transform:uppercase; }
body[data-theme='48'] .olive-invite-copy__families { position:absolute; top:177px; left:39px; display:flex; width:343px; justify-content:center; gap:0; color:#3b520d; } body[data-theme='48'] .olive-invite-copy__families p { width:50%; margin:0; font-size:10px; line-height:1.45; text-align:right; padding-right:25px; } body[data-theme='48'] .olive-invite-copy__families p + p { border-left:1px solid rgba(59,82,13,.35); padding-left:25px; padding-right:0; text-align:left; } body[data-theme='48'] .olive-invite-copy__families b { display:block; margin-bottom:3px; font-size:10px; letter-spacing:1.3px; font-weight:400; } body[data-theme='48'] .olive-invite-copy__families span { display:block; white-space:nowrap; } body[data-theme='48'] .olive-invite-copy__map { position:absolute; top:195px; left:146px; display:flex; width:127px; flex-direction:column; align-items:center; color:#3b520d; text-decoration:none; }
body[data-theme='48'] .olive-invite-copy__map svg { display:block; width:14px; height:25px; fill:rgba(166,79,28,1); transform-origin:center bottom; will-change:transform,opacity; animation:oliveMapBreath 1.8s ease-in-out infinite; }
body[data-theme='48'] .olive-invite-copy__map b { font-size:16px; font-weight:400; line-height:1.6; text-transform:uppercase; }
body[data-theme='48'] .olive-invite-copy__closing { position:absolute; top:265px; left:0; width:420px; margin:0; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:34px; line-height:1.6; }
body[data-theme='48'] .olive-details-section { position:relative; isolation:isolate; height:850px; overflow:hidden; background-color:var(--paper); background-image:url('https://w.ladicdn.com/s750x950/691804d3a89f3900120ca482/thiep-thanh-dat-element_0033_1-20251010160355-v6bgi-20260607043539-qgjql.png'),url('https://w.ladicdn.com/s750x950/691804d3a89f3900120ca482/thiep-thanh-dat-element_0033_1-20251010160355-v6bgi-20260607043539-qgjql.png'); background-position:0 0,0 633px; background-size:420px 633px,420px 443px; background-repeat:no-repeat; color:#3b520d; font-family:'Hepta Slab',serif; }
body[data-theme='48'] .olive-details-section::before { content:""; position:absolute; z-index:0; inset:0; background-image:url('https://w.ladicdn.com/s500x600/691804d3a89f3900120ca482/699597392_1732228391182925_2411261425106580246_n-20260607060012-opksk.jpg'),url('https://w.ladicdn.com/s500x600/691804d3a89f3900120ca482/699685290_1732228534516244_5658546072315125072_n-20260607031806-kyofy.jpg'); background-position:13px 10px,219px 91px; background-size:189px 290px,189px 266px; background-repeat:no-repeat; pointer-events:none; }
body[data-theme='48'] .olive-details-section::after { content:""; position:absolute; z-index:0; top:606px; left:-19px; width:458px; height:413px; background-image:url('https://w.ladicdn.com/s800x500/691804d3a89f3900120ca482/bg2-20260607061637-uliff.png'),url('https://w.ladicdn.com/s800x450/691804d3a89f3900120ca482/bg2-20260607061536-z5_5c.png'); background-position:0 0,1px 258px; background-size:458px 195px,450px 144px; background-repeat:no-repeat; pointer-events:none; }
body[data-theme='48'] .olive-details-section > * { z-index:1; }
body[data-theme='48'] .olive-details__wedding { position:absolute; z-index:2; top:6px; left:153.75px; width:323px; color:#3b520d; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:70px; line-height:1.6; text-indent:0; white-space:nowrap; }
body[data-theme='48'] .olive-details__wedding::before, body[data-theme='48'] .olive-details__wedding::after { content:""; position:absolute; z-index:-1; display:block; border-radius:20px; background-position:50% 0; background-size:cover; background-repeat:no-repeat; }
body[data-theme='48'] .olive-details__wedding::before { top:4px; left:-140px; width:189px; height:290px; background-image:url('https://w.ladicdn.com/s500x600/691804d3a89f3900120ca482/699597392_1732228391182925_2411261425106580246_n-20260607060012-opksk.jpg'); }
body[data-theme='48'] .olive-details__wedding::after { top:85px; left:65px; width:189px; height:266px; background-image:url('https://w.ladicdn.com/s500x600/691804d3a89f3900120ca482/699685290_1732228534516244_5658546072315125072_n-20260607031806-kyofy.jpg'); }
body[data-theme='48'] .olive-details__name { position:absolute; color:#3b520d; font-family:'Hepta Slab',serif; font-size:26px; line-height:1.6; letter-spacing:.02em; }
body[data-theme='48'] .olive-details__name--groom { top:305px; left:13px; width:208px; }
body[data-theme='48'] .olive-details__name--bride { top:362px; left:219px; width:215px; font-size:25px; }
body[data-theme='48'] .olive-details__amp { position:absolute; top:269px; left:165px; color:#bbb; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:112px; line-height:1.6; }
body[data-theme='48'] .olive-details__family { position:absolute; display:flex; flex-direction:column; color:#21540b; font-size:12px; line-height:1.6; }
body[data-theme='48'] .olive-details__family strong { font-size:13px; font-weight:400; letter-spacing:.04em; }
body[data-theme='48'] .olive-details__family--bride { top:412px; right:31px; width:140px; }
body[data-theme='48'] .olive-details__family--groom { top:363px; left:33px; width:175px; }
body[data-theme='48'] .olive-details__timeline-title, body[data-theme='48'] .olive-details__dress-title { position:absolute; left:14px; width:406px; color:#3b520d; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:60px; line-height:1.6; }
body[data-theme='48'] .olive-details__timeline-title { top:545px; }
body[data-theme='48'] .olive-details__timeline { position:absolute; top:629px; left:21px; display:block; width:377px; height:131px; }
body[data-theme='48'] .olive-details__timeline > div { position:relative; width:89px; min-height:131px; text-align:center; }
body[data-theme='48'] .olive-details__timeline > div { position:absolute; top:0; }
body[data-theme='48'] .olive-details__timeline > div:nth-child(1){left:0}.olive-details__timeline > div:nth-child(2){left:95.1px}.olive-details__timeline > div:nth-child(3){left:192.9px}.olive-details__timeline > div:nth-child(4){left:288px}
body[data-theme='48'] .olive-details__timeline > div::before { content:""; position:absolute; top:51px; left:39px; width:5px; height:5px; border-radius:50%; background:#3b520d; }
body[data-theme='48'] .olive-details__timeline > div i { position:absolute; top:76px; left:0; width:89px; display:block; color:#3b520d; font-family:'QXJubBybyMaWdodERpcBsYXkubRm',serif; font-size:20px; font-style:normal; line-height:1.2; }
body[data-theme='48'] .olive-details__timeline > div strong { position:absolute; top:100px; left:0; width:89px; display:block; margin:0; color:#3b520d; font-size:11px; font-weight:400; line-height:1.4; }
body[data-theme='48'] .olive-details__timeline > div::after { content:""; position:absolute; top:0; left:50%; width:38px; height:39px; transform:translateX(-50%); background-position:center; background-repeat:no-repeat; background-size:contain; }
body[data-theme='48'] .olive-details__timeline > div:not([data-icon]):nth-child(1)::after { background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/camera-20260607071610-z8ryg.png'); }
body[data-theme='48'] .olive-details__timeline > div:not([data-icon]):nth-child(2)::after { width:30px; height:39px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/ring-20260607071610-db4ir.png'); }
body[data-theme='48'] .olive-details__timeline > div:not([data-icon]):nth-child(3)::after { width:33px; height:33px; top:6px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/dao-20260607071610-uo_94.png'); }
body[data-theme='48'] .olive-details__timeline > div:not([data-icon]):nth-child(4)::after { width:35px; height:35px; top:6px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/music-20260607071610-k8cs6.png'); } body[data-theme='48'] .olive-details__timeline > div[data-icon='camera']::after { width:38px; height:39px; top:0; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/camera-20260607071610-z8ryg.png'); } body[data-theme='48'] .olive-details__timeline > div[data-icon='ring']::after { width:30px; height:39px; top:0; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/ring-20260607071610-db4ir.png'); } body[data-theme='48'] .olive-details__timeline > div[data-icon='plate']::after { width:33px; height:33px; top:6px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/dao-20260607071610-uo_94.png'); } body[data-theme='48'] .olive-details__timeline > div[data-icon='music']::after { width:35px; height:35px; top:6px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/music-20260607071610-k8cs6.png'); }
body[data-theme='48'] .olive-details__dress-title { z-index:3 !important; top:808px; left:13px; width:350px; display:block !important; visibility:visible !important; opacity:1 !important; text-align:right; }
body[data-theme='48'] .olive-details__swatches { position:absolute; z-index:3; top:918px; left:58.25px; display:flex; visibility:visible; opacity:1; gap:19.25px; }
body[data-theme='48'] .olive-details__dress-title, body[data-theme='48'] .olive-details__swatches { display:none !important; }
body[data-theme='48'] .olive-details__swatches i { display:block; width:46px; height:46px; border:1px solid #000; background:#f1f3f4; }
body[data-theme='48'] .olive-details__swatches i:nth-child(2){background:#000;border:0}body[data-theme='48'] .olive-details__swatches i:nth-child(3){background:#3b520d;border:0}body[data-theme='48'] .olive-details__swatches i:nth-child(4){background:#7f7037;border:0}body[data-theme='48'] .olive-details__swatches i:nth-child(5){background:#ecdca0;border:0}
body[data-theme='48'] .olive-memories-section { position:relative; display:block; width:420px; height:1246px; overflow:hidden; background:var(--paper) url('assets/hero-bg.png') center/cover; color:#3b520d; }
body[data-theme='48'] .olive-memories-section::before { content:""; position:absolute; z-index:0; top:68px; left:0; width:416px; height:177px; background:url('https://w.ladicdn.com/s750x500/691804d3a89f3900120ca482/bg2-20260607061637-uliff.png') center/cover no-repeat; }
body[data-theme='48'] .olive-memories-section h2 { position:absolute; z-index:2; top:0; left:21.25px; width:382px; height:93px; margin:0; color:#3b520d; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:58px; font-weight:400; line-height:1.6; text-align:right; }
body[data-theme='48'] .olive-memories__intro { position:absolute; z-index:2; top:97px; left:29px; width:367px; margin:0; color:#545151; font-family:'Hepta Slab',serif; font-size:12px; line-height:1.6; text-align:right; }
body[data-theme='48'] .olive-memories__forever { position:absolute; z-index:2; top:183px; left:272px; width:152px; color:#3b520d; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:50px; line-height:1.6; }
body[data-theme='48'] .olive-memories__photo { position:absolute; z-index:1; overflow:hidden; border-radius:20px; background-position:50% 50%; background-repeat:no-repeat; background-size:cover; }
body[data-theme='48'] .olive-memories__photo--hero { top:196px; left:16px; width:252px; height:348px; background-image:url('https://w.ladicdn.com/s600x650/691804d3a89f3900120ca482/699597392_1732228391182925_2411261425106580246_n-20260607060012-opksk.jpg'); }
body[data-theme='48'] .olive-memories__photo--top-right { top:255px; left:272px; width:134px; height:289px; background-image:url('https://w.ladicdn.com/s550x600/691804d3a89f3900120ca482/701681185_1732228691182895_8771333546993241435_n-20260607032132-tmxth.jpg'); }
body[data-theme='48'] .olive-memories__photo--mid-right { top:548px; left:272px; width:136px; height:206px; background-image:url('https://w.ladicdn.com/s450x550/691804d3a89f3900120ca482/699504115_1732228101182954_3323345225628211830_n-20260607031806-6s4f0.jpg'); }
body[data-theme='48'] .olive-memories__photo--mid-left { top:548px; left:16px; width:125px; height:206px; background-image:url('https://w.ladicdn.com/s450x550/691804d3a89f3900120ca482/anh2-20260606142256-bpxqs.jpg'); }
body[data-theme='48'] .olive-memories__photo--mid-center { top:548px; left:143px; width:125px; height:206px; background-image:url('https://w.ladicdn.com/s450x550/691804d3a89f3900120ca482/699685290_1732228534516244_5658546072315125072_n-20260607031806-kyofy.jpg'); }
body[data-theme='48'] .olive-memories__photo--wide { top:759px; left:16px; width:392px; height:175px; background-image:url('https://w.ladicdn.com/s750x850/691804d3a89f3900120ca482/699096650_1732228351182929_8631129116444695075_n-20260607063932-hmelb.jpg'); }
body[data-theme='48'] .olive-memories__photo--bottom-right { top:941px; left:154px; width:252px; height:265px; background-position:-86px -268px; background-size:423.162px 532.8px; background-image:url('https://w.ladicdn.com/s750x850/691804d3a89f3900120ca482/701290442_1732228371182927_9060162291560754460_n-20260607142403-9xg2q.jpg'); }
body[data-theme='48'] .olive-memories__photo--bottom-left { top:941px; left:13px; width:134px; height:265px; background-position:-60px -83px; background-size:233.11px 347.8px; background-image:url('https://w.ladicdn.com/s550x650/691804d3a89f3900120ca482/uerq-20260607064535-no2e4.png'); }
body[data-theme='48'] .story-section { display:none; }
body[data-theme='48'] .olive-gift-section { position:relative; display:block; width:420px; height:584px; overflow:hidden; background:var(--paper) url('https://w.ladicdn.com/s750x1750/691804d3a89f3900120ca482/thiep-thanh-dat-element_0033_1-20251010160355-v6bgi-20260607043539-qgjql.png') center/cover; color:#213f0a; font-family:'Hepta Slab',serif; }
body[data-theme='48'] .olive-gift-section__intro { position:absolute; top:12px; left:15px; width:390px; margin:0; font-size:13px; line-height:1.6; text-align:center; }
body[data-theme='48'] .olive-gift-form { position:absolute; top:96px; left:25.375px; width:369.25px; height:332px; display:flex; flex-direction:column; gap:10px; margin:0; }
body[data-theme='48'] .olive-gift-form > * { position:absolute; left:0; width:100%; margin:0 !important; min-height:0 !important; }
body[data-theme='48'] .olive-gift-form > input:nth-child(1) { top:0; height:35px !important; }
body[data-theme='48'] .olive-gift-form > textarea:nth-child(2) { top:45px; height:100px !important; }
body[data-theme='48'] .olive-gift-form > select:nth-child(3) { top:155px; height:35px !important; }
body[data-theme='48'] .olive-gift-form > input:nth-child(4) { top:200px; height:35px !important; }
body[data-theme='48'] .olive-gift-form > select:nth-child(5) { top:245px; height:35px !important; }
body[data-theme='48'] .olive-gift-form input, body[data-theme='48'] .olive-gift-form textarea, body[data-theme='48'] .olive-gift-form select { box-sizing:border-box; width:100%; border:1px solid #213f0a; border-radius:25px; outline:0; padding:7px 8px; background:transparent; color:#213f0a; font:13px/20.8px 'Hepta Slab',serif; }
body[data-theme='48'] .olive-gift-form input, body[data-theme='48'] .olive-gift-form select { height:35px; }
body[data-theme='48'] .olive-gift-form textarea { height:100px; resize:none; }
body[data-theme='48'] .olive-gift-form select { appearance:auto; }
body[data-theme='48'] .olive-gift-form button { top:292px; width:100%; height:40px !important; border:0; border-radius:25px; background:#5d6b41; color:#fff; font:18px/28.8px 'Hepta Slab',serif; }
body[data-theme='48'] .olive-gift-button { position:absolute; top:439.5px; left:25.375px; width:369.25px; height:40px; border:1px solid #3b520d; border-radius:100px; background:transparent; color:#3b520d; font:18px/28.8px 'Hepta Slab',serif; }
body[data-theme='48'] #gift-dialog { width:420px; height:459px; max-width:calc(100% - 32px); max-height:90dvh; padding:0; overflow:hidden; background:rgba(248,245,236,.96) url('https://w.ladicdn.com/s750x800/691804d3a89f3900120ca482/_0026_clear-white-plaster-texture-pattern-copy-11-20251020184301-fkysx-20260531144422-dm9aa.png') center/cover; color:#526229; }
body[data-theme='48'] #gift-dialog::before { content:""; position:absolute; inset:0 0 auto; height:258.5px; background:url('https://w.ladicdn.com/s750x600/691804d3a89f3900120ca482/698657621_1732228261182938_4341337131149992697_n-20260607032119-e4kp_.jpg') center/cover no-repeat; }
body[data-theme='48'] #gift-dialog .dialog-close { top:3px; right:4px; color:#111; font-size:32px; line-height:1; z-index:3; outline:0; }
body[data-theme='48'] #gift-dialog > .eyebrow, body[data-theme='48'] #gift-dialog > h2, body[data-theme='48'] #gift-dialog .gift-tabs { display:none; }
body[data-theme='48'] #gift-dialog #gift-details { position:absolute; z-index:2; inset:258.5px 0 0; padding:31px 0 18px 174px; background:rgba(248,245,236,.96) url('https://w.ladicdn.com/s750x800/691804d3a89f3900120ca482/_0026_clear-white-plaster-texture-pattern-copy-11-20251020184301-fkysx-20260531144422-dm9aa.png') center/cover; text-align:left; }
body[data-theme='48'] #gift-dialog #gift-details::before { content:""; position:absolute; top:40px; left:19px; width:128px; height:128px; background:rgba(94,108,66,.4); }
body[data-theme='48'] #gift-dialog #gift-details p, body[data-theme='48'] #gift-dialog #gift-details strong { position:relative; z-index:1; display:block; margin:0; color:#526229; font-family:'Hepta Slab',serif; }
body[data-theme='48'] #gift-dialog #gift-details p:first-child { font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:24px; line-height:1.1; margin:0 0 3px; }
body[data-theme='48'] #gift-dialog #gift-details strong { width:246px; font-size:22px; font-weight:400; line-height:1.35; text-transform:uppercase; border-bottom:1px solid #526229; padding-bottom:4px; white-space:nowrap; }
body[data-theme='48'] #gift-dialog #gift-details p.account { font-size:18px; line-height:1.7; margin-top:8px; }
body[data-theme='48'] #gift-dialog #gift-details p.account::after { content:'MB BANK'; display:block; font-size:18px; }
body[data-theme='48'] #gift-dialog #gift-details #copy-account, body[data-theme='48'] #gift-dialog #gift-details .gift-empty { display:none; }
body[data-theme='48'] #gift-dialog #gift-details img.qr { position:absolute; top:40px; left:19px; width:128px; height:128px; max-width:128px; max-height:128px; display:block; box-sizing:border-box; object-fit:contain; padding:6px; background:#fff; z-index:1; }
body[data-theme='48'] #gift-dialog #gift-details p.gift-recipient { font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:24px; line-height:1.1; margin:0 0 3px; }
body[data-theme='48'] #gift-dialog #gift-details p.account::after { content:none; }
body[data-theme='48'] #gift-dialog #gift-details p.gift-bank { font-size:16px; line-height:1.3; margin-top:4px; text-transform:uppercase; }
body[data-theme='48'] .rsvp-section { display:none; }
body[data-theme='48'] .vow-section,
body[data-theme='48'] #schedule,
body[data-theme='48'] #album,
body[data-theme='48'] .gift-section,
body[data-theme='48'] .footer { display:none !important; }
body[data-theme='48'] .olive-closing-section { position:relative; width:420px; height:266.5px; overflow:hidden; color:#fff; background:#fff; }
body[data-theme='48'] .olive-closing__photo { position:absolute; top:0; left:-4px; right:auto; bottom:auto; width:426.4px; height:266.5px; background:url('https://w.ladicdn.com/s750x600/691804d3a89f3900120ca482/697415296_1732228461182918_5709293815258512957_n-20260607064328-v4yv-.jpg') 0 0/cover no-repeat; }
body[data-theme='48'] .olive-closing__shade { position:absolute; top:100px; left:0; width:420px; height:165px; background:linear-gradient(rgba(253,251,251,0),rgba(1,1,1,.5)); }
body[data-theme='48'] .olive-closing__message { position:absolute; z-index:1; top:124px; left:8px; width:404px; margin:0; color:#fff; font-family:'Hepta Slab',serif; font-size:11px; line-height:1.7; text-align:center; }
body[data-theme='48'] .olive-closing__thanks { position:absolute; z-index:1; top:189px; left:0; width:420px; color:#fff; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',cursive; font-size:44px; line-height:1.7; text-align:center; }
body[data-theme='48'] .olive-closing__brand { display:none; }

/* Opening cover inspired by the blue reference invitation. */
body[data-theme='48'] dialog.olive-cover-opening {
  position:fixed; top:0; left:50%; margin:0; transform:translateX(-50%); width:420px; height:720px; max-width:none; max-height:none; padding:0; border:0;
  overflow:hidden; background:#102f47; box-shadow:0 25px 80px rgba(0,0,0,.35);
}
body[data-theme='48'] dialog.olive-cover-opening::backdrop { background:rgba(255,255,255,.92); backdrop-filter:none; }

/* Lock the document viewport while the opening cover is active. The long
   invitation remains scrollable only after the cover closes; no second
   vertical scrollbar is created by the modal itself. */
html:has(dialog.olive-cover-opening[open]),
body:has(dialog.olive-cover-opening[open]) {
  overflow:hidden !important;
  overscroll-behavior:none;
  scrollbar-width:none;
}
html:has(dialog.olive-cover-opening[open])::-webkit-scrollbar,
body:has(dialog.olive-cover-opening[open])::-webkit-scrollbar {
  display:none;
}
body[data-theme='48'] dialog.olive-cover-opening {
  overflow:hidden;
  overscroll-behavior:none;
}
body[data-theme='48'] dialog.olive-cover-opening:not([open]) {
  display:none !important;
}

body[data-theme='48'] .olive-cover-opening__canvas { position:relative; width:420px; height:720px; overflow:hidden; color:#f4f2e9; background:#0d2b42; font-family:'Hepta Slab',Georgia,serif; }
body[data-theme='48'] .olive-cover-opening__backdrop { position:absolute; inset:0; background:url('https://w.ladicdn.com/s750x1050/691804d3a89f3900120ca482/bi-duoi-20260710024843-duwni.png') center/cover no-repeat; opacity:.98; }
body[data-theme='48'] .olive-cover-opening__photo { position:absolute; top:8px; left:25px; width:394px; height:704px; background:url('https://w.ladicdn.com/raw/691804d3a89f3900120ca482/211-20260922155937-4cwho.jpg') 53% center/cover no-repeat; clip-path:polygon(0 0,100% 0,100% 100%,10% 100%); opacity:.92; }
body[data-theme='48'] .olive-cover-opening__frame { position:absolute; inset:5px 8px; border:1px solid rgba(239,214,164,.45); pointer-events:none; }
body[data-theme='48'] .olive-cover-opening__botanical { position:absolute; top:0; left:0; width:239px; height:720px; background:url('https://w.ladicdn.com/s550x1050/691804d3a89f3900120ca482/bi-tren-20260710024843-puels.png') left top/239px 720px no-repeat; opacity:.92; }
body[data-theme='48'] .olive-cover-opening__couple { position:absolute; top:178px; left:6px; width:181px; font-size:10px; letter-spacing:1.5px; text-align:center; }
body[data-theme='48'] .olive-cover-opening__couple span { margin:0 5px; color:#d8b87a; }
body[data-theme='48'] .olive-cover-opening__date { position:absolute; top:198px; left:43px; width:96px; font-size:10px; letter-spacing:2px; text-align:center; }
body[data-theme='48'] .olive-cover-opening__monogram { position:absolute; top:57px; left:63px; width:68px; height:84px; color:#fff; font:italic 54px/.9 Georgia,serif; letter-spacing:-12px; text-align:center; text-shadow:1px 1px 0 #4e6775; transform:rotate(-8deg); }
body[data-theme='48'] .olive-cover-opening__ribbon { position:absolute; left:-35px; width:500px; height:1px; background:linear-gradient(90deg,transparent,#e1bc7d 25%,#f2d79f 50%,#bd8a4c 75%,transparent); box-shadow:0 1px 0 rgba(255,255,255,.18); transform:rotate(16deg); }
body[data-theme='48'] .olive-cover-opening__ribbon--one { top:366px; }
body[data-theme='48'] .olive-cover-opening__ribbon--two { top:399px; transform:rotate(-13deg); }
body[data-theme='48'] .olive-cover-opening__door { position:absolute; top:0; z-index:4; width:50%; height:100%; background:linear-gradient(135deg,rgba(9,37,57,.98),rgba(18,54,77,.97)),url('https://w.ladicdn.com/s750x1050/691804d3a89f3900120ca482/bi-duoi-20260710024843-duwni.png') center/cover; box-shadow:0 0 18px rgba(0,0,0,.28); transition:transform .72s cubic-bezier(.65,0,.2,1),box-shadow .72s ease; pointer-events:none; }
body[data-theme='48'] .olive-cover-opening__door--left { left:0; transform-origin:left center; border-right:1px solid rgba(224,189,118,.55); }
body[data-theme='48'] .olive-cover-opening__door--right { right:0; transform-origin:right center; border-left:1px solid rgba(224,189,118,.55); }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__door--left { transform:translateX(-100%); box-shadow:10px 0 25px rgba(0,0,0,.12); }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__door--right { transform:translateX(100%); box-shadow:-10px 0 25px rgba(0,0,0,.12); }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__seal { opacity:0; transform:rotate(-8deg) scale(.8); transition:opacity .2s ease,transform .45s ease; }
body[data-theme='48'] .olive-cover-opening__door { background:transparent; box-shadow:none; border:0; opacity:0; perspective:900px; transform-style:preserve-3d; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__door { opacity:1; background:linear-gradient(90deg,rgba(9,37,57,.94),rgba(18,54,77,.72)); }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__door--left { transform:translateX(-108%) rotateY(-18deg); }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__door--right { background:linear-gradient(270deg,rgba(9,37,57,.94),rgba(18,54,77,.72)); transform:translateX(108%) rotateY(18deg); }
body[data-theme='48'] .olive-cover-opening__base { z-index:1; opacity:0; transition:none; }
body[data-theme='48'] .olive-cover-opening__panel { position:absolute; inset:0; z-index:6; width:420px; height:720px; opacity:1; pointer-events:none; clip-path:inset(0 50% 0 0); transition:transform 1.05s cubic-bezier(.68,0,.2,1); }
body[data-theme='48'] .olive-cover-opening__panel--right { clip-path:inset(0 0 0 50%); }
body[data-theme='48'] .olive-cover-opening__panel .olive-cover-opening__door { display:none; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__base { opacity:0; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__panel--left { transform:translateX(-108%) rotateY(-14deg); }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__panel--right { transform:translateX(108%) rotateY(14deg); }
body[data-theme='48'] dialog.olive-cover-opening.leaving { opacity:1; transform:translateX(-50%); transition:none; }
body[data-theme='48'] .olive-cover-opening__photo { background-image:url('assets/section2-photo-2.jpg'); background-position:62% center; }
body[data-theme='48'] .olive-cover-opening__backdrop { opacity:1; background:url('assets/olive-cover-texture.png') center/cover no-repeat; }
body[data-theme='48'] .olive-cover-opening__photo { top:0; left:210px; width:210px; height:720px; clip-path:none; opacity:1; background-image:url('https://w.ladicdn.com/s500x600/691804d3a89f3900120ca482/699597392_1732228391182925_2411261425106580246_n-20260607060012-opksk.jpg'); background-position:center; background-size:cover; }
body[data-theme='48'] .olive-cover-opening__backdrop { opacity:1 !important; background:url('assets/olive-cover-texture.png') center/cover no-repeat !important; }
body[data-theme='48'] .olive-cover-opening__botanical { display:none; }
body[data-theme='48'] .olive-cover-opening__photo { top:9px; left:218px; width:192px; height:702px; clip-path:none; opacity:1; background-position:center; background-size:cover; }
body[data-theme='48'] dialog.olive-cover-opening { height:800px; }
body[data-theme='48'] .olive-cover-opening__canvas { height:800px; }
body[data-theme='48'] .olive-cover-opening__photo { height:782px; }
/* Match the opening cover to the olive palette used throughout the invitation. */
body[data-theme='48'] .olive-cover-opening__canvas { background:#667640; }
body[data-theme='48'] .olive-cover-opening__backdrop { background-color:#667640; background-image:linear-gradient(rgba(113,136,58,.9),rgba(61,78,30,.9)),url('https://w.ladicdn.com/s750x1050/691804d3a89f3900120ca482/bi-duoi-20260710024843-duwni.png'); background-blend-mode:normal; filter:none; }
body[data-theme='48'] .olive-cover-opening__botanical { background-image:linear-gradient(rgba(113,136,58,.88),rgba(61,78,30,.9)),url('https://w.ladicdn.com/s550x1050/691804d3a89f3900120ca482/bi-tren-20260710024843-puels.png'); background-blend-mode:normal; filter:none; }
body[data-theme='48'] .olive-cover-opening__tag { color:#4f6426; }
body[data-theme='48'] dialog.olive-cover-opening.book-opening { opacity:1; transform:translateX(-50%); transition:none; }
body[data-theme='48'] dialog.olive-cover-opening { background:transparent !important; box-shadow:none; }
body[data-theme='48'] .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:1 !important; transform:none !important; transform-origin:0 50%; backface-visibility:hidden; transition:transform .95s cubic-bezier(.68,0,.2,1),opacity .8s ease; }
body[data-theme='48'] dialog.olive-cover-opening.book-opening .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:0 !important; transform:perspective(1200px) translateX(-100%) rotateY(-72deg) !important; }
body[data-theme='48'] .olive-cover-opening__panel,
body[data-theme='48'] .olive-cover-opening__door { display:none !important; }
body[data-theme='48'] .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:1 !important; transform-origin:50% 0; backface-visibility:hidden; transition:transform .95s cubic-bezier(.68,0,.2,1),opacity .75s ease; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:0 !important; transform:perspective(1100px) rotateX(-105deg) translateY(-12px); }
body[data-theme='48'] .olive-cover-opening__panel { display:none !important; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__door { display:none !important; }
body[data-theme='48'] .olive-cover-opening__seal { position:absolute; top:329px; left:161px; z-index:3; width:99px; height:101px; border:0; border-radius:50%; color:#f8e7b4; background:radial-gradient(circle at 35% 28%,#eddba7 0 8%,#b5813c 32%,#6e4827 68%,#382919 100%); box-shadow:0 3px 8px #07172499, inset 0 0 0 5px #7e552b, inset 0 0 0 7px #e0bd76; font:11px/1.1 Georgia,serif; text-transform:uppercase; letter-spacing:1px; cursor:pointer; transform:rotate(-8deg); }
body[data-theme='48'] .olive-cover-opening__seal:before { content:'✦'; display:block; margin-bottom:7px; color:#f7dfa6; font-size:27px; }
body[data-theme='48'] .olive-cover-opening__seal span { display:block; transform:rotate(8deg); }
body[data-theme='48'] .olive-cover-opening__seal i { font-size:9px; text-transform:none; }
body[data-theme='48'] .olive-cover-opening__tag { position:absolute; top:366px; left:207px; z-index:2; width:143px; height:84px; padding:31px 12px 0 28px; box-sizing:border-box; color:#173b55; background:#f7f2df; clip-path:polygon(0 30%,100% 0,94% 100%,7% 76%); font:italic 18px Georgia,serif; text-align:center; transform:rotate(-14deg); }
body[data-theme='48'] .olive-cover-opening__guest-label { position:absolute; top:511px; left:-1px; width:236px; color:#f0d39b; font-size:10px; letter-spacing:2px; text-align:center; }
body[data-theme='48'] .olive-cover-opening__guest { position:absolute; top:555px; left:-1px; width:236px; color:#fff; font:italic 25px/1.2 Georgia,serif; text-align:center; }
body[data-theme='48'] .olive-cover-opening__hint { position:absolute; bottom:16px; left:0; width:420px; color:#e8d8b6; font-size:8px; letter-spacing:.8px; text-align:center; opacity:.8; }
body[data-theme='48'] dialog.olive-cover-opening.leaving { transform:translateX(-50%); opacity:1; transition:none; }

/* Responsive, brighter paper cover: keep the artwork at its reference ratio and
   scale the complete composition down on narrow screens instead of cropping it. */
body[data-theme='48'] dialog.olive-cover-opening {
  width:min(420px, calc(100vw - 24px));
  height:auto;
  aspect-ratio:420 / 800;
  max-width:calc(100vw - 24px);
  max-height:calc(100vh - 24px);
}
body[data-theme='48'] .olive-cover-opening__canvas {
  width:420px;
  height:800px;
  transform-origin:top left;
  transform:scale(min(1, calc((100vw - 24px) / 420), calc((100vh - 24px) / 800)));
  background:#a7bd73;
}
body[data-theme='48'] .olive-cover-opening__backdrop {
  background-color:#a7bd73 !important;
  background-image:url('assets/olive-cover-texture.png') !important;
  background-position:center;
  background-size:cover;
  filter:saturate(1.04) brightness(1.02);
}
body[data-theme='48'] .olive-cover-opening__photo {
  top:9px;
  left:218px;
  width:192px;
  height:782px;
}
/* Bring the generated paper back to the same olive value used inside the card. */
body[data-theme='48'] .olive-cover-opening__canvas { background:#71883a; }
body[data-theme='48'] .olive-cover-opening__backdrop {
  background-color:#71883a !important;
  background-image:linear-gradient(rgba(59,74,25,.34),rgba(59,74,25,.34)),url('assets/olive-cover-texture.png') !important;
  background-blend-mode:normal;
  filter:none;
}
/* Use one valid viewport-based scale for the whole fixed-artwork composition. */
body[data-theme='48'] dialog.olive-cover-opening {
  --cover-scale:min(1, calc((100vw - 24px) * .00238095238), calc((100vh - 24px) * .00125));
  width:calc(420px * var(--cover-scale));
  height:calc(800px * var(--cover-scale));
  aspect-ratio:auto;
}
body[data-theme='48'] .olive-cover-opening__canvas {
  transform:scale(var(--cover-scale));
}
@media (max-width:420px) {
  body[data-theme='48'] dialog.olive-cover-opening {
    width:420px;
    height:800px;
    aspect-ratio:auto;
  }
  body[data-theme='48'] .olive-cover-opening__canvas {
    transform:none;
    zoom:1;
  }
}
body[data-theme='48'] .olive-cover-opening__base { opacity:1 !important; }
body[data-theme='48'] .olive-cover-opening__panel,
body[data-theme='48'] .olive-cover-opening__door { display:none !important; }
body[data-theme='48'] dialog.olive-cover-opening.leaving { opacity:0; transform:translateX(-50%) scale(1.03); transition:opacity .45s ease,transform .45s ease; }
body[data-theme='48'] .olive-cover-opening__canvas { perspective:1400px; transform-style:preserve-3d; }
body[data-theme='48'] .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:1 !important; }
body[data-theme='48'] .olive-cover-opening__panel { display:block !important; opacity:1 !important; transform-style:preserve-3d; backface-visibility:hidden; transition:transform 1.05s cubic-bezier(.7,0,.18,1); }
body[data-theme='48'] .olive-cover-opening__panel--left { transform-origin:100% 50%; }
body[data-theme='48'] .olive-cover-opening__panel--right { transform-origin:0 50%; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:0 !important; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__panel--left { transform:rotateY(-88deg); }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__panel--right { transform:rotateY(88deg); }
body[data-theme='48'] dialog.olive-cover-opening.leaving { opacity:1; transform:translateX(-50%); transition:none; }
body[data-theme='48'] .section-head .eyebrow { color:var(--olive); }
body[data-theme='48'] .section-head h2 { color:var(--olive); font-family:'Cormorant Upright','Cormorant Garamond',serif; font-size:51px; line-height:1.05; }
body[data-theme='48'] .section-head p { color:#66724b; font-size:13px; }
body[data-theme='48'] .invitation .families, body[data-theme='48'] .invitation-strip, body[data-theme='48'] .invitation-note { display:none; }
body[data-theme='48'] .events-section { background:var(--paper) url('assets/hero-bg.png') center/cover; }
body[data-theme='48'] .event-card { border-color:#bac49e; background:#fbfaf3e8; }
body[data-theme='48'] .event-card h3, body[data-theme='48'] .event-card h4, body[data-theme='48'] .event-date strong { color:var(--olive); }
body[data-theme='48'] .button.primary { background:var(--olive); }
body[data-theme='48'] .gift-section { background:var(--olive); }
body[data-theme='48'] .footer .script { color:var(--olive); }
body[data-theme='48'] .floating-tools button, body[data-theme='48'] .floating-tools a { background:#f8fbef; color:var(--olive); border-color:#d8e2c1; }
@keyframes oliveFadeIn { from{opacity:0} to{opacity:1} }
@keyframes oliveFadeInUp { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }
@keyframes oliveBounceInDown { 0%{opacity:0;transform:translateY(-70px)} 65%{opacity:1;transform:translateY(10px)} 100%{transform:translateY(0)} }
@keyframes oliveBounceInUp { 0%{opacity:0;transform:translateY(55px)} 70%{opacity:1;transform:translateY(-7px)} 100%{transform:translateY(0)} }
body[data-theme='48'] .hero-olive { animation:oliveFadeIn 1s ease both; }
body[data-theme='48'] .olive-frame .olive-backdrop { animation:oliveFadeIn 1s ease both; }
body[data-theme='48'] .olive-frame .olive-couple { animation:oliveFadeIn 2s ease .15s both; }
body[data-theme='48'] .olive-frame .olive-seal { animation:oliveBounceInDown 2s ease .35s both; }
body[data-theme='48'] .olive-countdown h2 { animation:oliveFadeInUp 2s ease .2s both; }
body[data-theme='48'] .olive-countdown__numbers > div { animation:oliveFadeInUp 1s ease both; }
body[data-theme='48'] .olive-countdown__numbers > div:nth-of-type(1){animation-delay:.35s}
body[data-theme='48'] .olive-countdown__numbers > div:nth-of-type(2){animation-delay:.55s}
body[data-theme='48'] .olive-countdown__numbers > div:nth-of-type(3){animation-delay:.75s}
body[data-theme='48'] .olive-countdown__numbers > div:nth-of-type(4){animation-delay:.95s}
body[data-theme='48'] .olive-save-date-section:not(.olive-is-visible) .olive-save-date-card,
body[data-theme='48'] .olive-save-date-section:not(.olive-is-visible) .olive-invite-copy,
body[data-theme='48'] .olive-details-section:not(.olive-is-visible) > *,
body[data-theme='48'] .olive-memories-section:not(.olive-is-visible) > *,
body[data-theme='48'] .olive-gift-section:not(.olive-is-visible) > *,
body[data-theme='48'] .olive-closing-section:not(.olive-is-visible) > * { opacity:0; }
body[data-theme='48'] .olive-is-visible .olive-save-date-card { animation:oliveBounceInDown 1.2s ease both; }
body[data-theme='48'] .olive-is-visible .olive-invite-copy { animation:oliveFadeInUp 1s ease .35s both; }
body[data-theme='48'] .olive-is-visible.olive-details-section > * { animation:oliveFadeInUp 1s ease both; }
body[data-theme='48'] .olive-is-visible.olive-details-section > *:nth-child(2n) { animation-name:oliveBounceInDown; animation-delay:.15s; }
body[data-theme='48'] .olive-is-visible.olive-details-section::before { animation:oliveFadeIn 1.4s ease .1s both; }
body[data-theme='48'] .olive-timeline-section:not(.olive-is-visible) .olive-details__timeline-title,
body[data-theme='48'] .olive-timeline-section:not(.olive-is-visible) .olive-details__timeline > div { opacity:0; }
body[data-theme='48'] .olive-is-visible.olive-timeline-section .olive-details__timeline-title { animation:oliveFadeInUp .9s ease both; }
body[data-theme='48'] .olive-is-visible.olive-timeline-section .olive-details__timeline > div { animation:oliveFadeInUp .8s ease both; }
body[data-theme='48'] .olive-is-visible.olive-timeline-section .olive-details__timeline > div:nth-child(1) { animation-delay:.18s; }
body[data-theme='48'] .olive-is-visible.olive-timeline-section .olive-details__timeline > div:nth-child(2) { animation-delay:.32s; }
body[data-theme='48'] .olive-is-visible.olive-timeline-section .olive-details__timeline > div:nth-child(3) { animation-delay:.46s; }
body[data-theme='48'] .olive-is-visible.olive-timeline-section .olive-details__timeline > div:nth-child(4) { animation-delay:.60s; }body[data-theme='48'] .olive-is-visible.olive-memories-section > * { animation:oliveFadeInUp 1s ease both; }
body[data-theme='48'] .olive-is-visible.olive-memories-section .olive-memories__photo { animation-name:oliveBounceInUp; animation-duration:1.2s; }
body[data-theme='48'] .olive-is-visible.olive-memories-section .olive-memories__photo:nth-of-type(2n) { animation-delay:.15s; }
body[data-theme='48'] .olive-is-visible.olive-gift-section > * { animation:oliveFadeInUp 1s ease both; }
body[data-theme='48'] .olive-is-visible.olive-gift-section .olive-gift-form { animation-delay:.25s; }
body[data-theme='48'] .olive-is-visible.olive-closing-section .olive-closing__photo { animation:oliveFadeIn 1.5s ease both; }
body[data-theme='48'] .olive-is-visible.olive-closing-section .olive-closing__message,
body[data-theme='48'] .olive-is-visible.olive-closing-section .olive-closing__thanks { animation:oliveFadeInUp 1s ease .3s both; }
@media(prefers-reduced-motion:reduce){body[data-theme='48'] *,body[data-theme='48'] *::before,body[data-theme='48'] *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(min-width:701px) { body[data-theme='48'] main { margin:0 auto; box-shadow:0 0 80px #3d452020; } }
/* The template already applies body zoom on narrow screens; keep the cover's
   reference geometry so it scales exactly once with the rest of the invitation. */
body[data-theme='48'] dialog.olive-cover-opening {
  width:420px !important;
  height:800px !important;
  max-width:none !important;
  max-height:none !important;
  aspect-ratio:auto !important;
}
body[data-theme='48'] .olive-cover-opening__canvas {
  width:420px !important;
  height:800px !important;
  transform:none !important;
  zoom:1 !important;
}
/* Wax seal treatment matched to the blue reference: raised gold wax with a
   pressed floral mark, while the lettering stays on the paper tag behind it. */
body[data-theme='48'] .olive-cover-opening__seal {
  top:334px;
  left:169px;
  width:82px;
  height:82px;
  color:transparent;
  background:
    radial-gradient(circle at 35% 27%,rgba(255,239,167,.9) 0 5%,transparent 6%),
    radial-gradient(circle at 68% 66%,rgba(104,66,18,.42) 0 4%,transparent 5%),
    radial-gradient(circle at 50% 45%,#d4a64c 0 45%,#a36f25 67%,#684116 100%);
  border:2px solid #76501c;
  box-shadow:0 4px 8px rgba(42,27,8,.42), inset 0 0 0 3px #e4bd65, inset 0 0 0 5px #8b5c1c, inset 0 5px 8px rgba(255,236,151,.42);
}
body[data-theme='48'] .olive-cover-opening__seal::before {
  content:'✿';
  display:block;
  margin:0;
  color:#f5d77f;
  font:normal 39px/1 Georgia,serif;
  text-shadow:1px 2px 0 #80541d, -1px -1px 0 rgba(255,242,170,.8);
  transform:translateY(17px);
}
body[data-theme='48'] .olive-cover-opening__seal span { display:none; }
/* Use the reference invitation's actual seal, tag and gold-thread artwork. */
body[data-theme='48'] .olive-cover-opening__frame::after {
  content:'';
  position:absolute;
  z-index:1;
  top:331px;
  left:0;
  width:420px;
  height:96px;
  background:url('https://w.ladicdn.com/s750x400/691804d3a89f3900120ca482/day-20260710024843-59x5a.png') center/100% 100% no-repeat;
  pointer-events:none;
}
body[data-theme='48'] .olive-cover-opening__ribbon { display:none !important; }
body[data-theme='48'] .olive-cover-opening__seal {
  top:329px !important;
  left:161px !important;
  width:99px !important;
  height:101px !important;
  border:0 !important;
  background:url('https://w.ladicdn.com/s400x400/691804d3a89f3900120ca482/nut-20260710024843-hie43.png') center/100% 100% no-repeat !important;
  box-shadow:none !important;
  transform:none;
  clip-path:circle(41% at 50% 50%);
}
body[data-theme='48'] .olive-cover-opening__seal::before { display:none; }
body[data-theme='48'] .olive-cover-opening__tag {
  top:366px !important;
  left:191px !important;
  width:143px !important;
  height:84px !important;
  padding:0 !important;
  color:transparent !important;
  font-size:0 !important;
  background:url('https://w.ladicdn.com/s450x400/691804d3a89f3900120ca482/tag-20260710024843-mlphh.png') center/100% 100% no-repeat !important;
  clip-path:none !important;
  transform:none;
}
body[data-theme='48'] .olive-cover-opening__tag::after {
  content:'Wedding of';
  position:absolute;
  z-index:4;
  top:26px;
  left:55px;
  width:100px;
  height:20px;
  white-space:nowrap;
  display:block;
  padding:0;
  color:#000;
  font:italic 17px/17px 'Cormorant Garamond',Georgia,serif;
  font-weight:600;
  text-align:center;
  transform-origin:left center;
  transform:rotate(20deg) scaleX(.85);
}
body[data-theme='48'] .olive-cover-opening__tag::after { display:none; }
body[data-theme='48'] .olive-cover-opening__tag-text {
  position:absolute;
  z-index:4;
  top:397px;
  left:207px;
  width:112px;
  height:24px;
  color:#111;
  font:italic 18px/24px 'Cormorant Garamond',Georgia,serif;
  font-weight:600;
  text-align:center;
  white-space:nowrap;
  transform:rotate(20deg);
  pointer-events:none;
}
body[data-theme='48'] .olive-cover-opening__tag::after { display:none !important; }
body[data-theme='48'] .olive-cover-opening__tag,
body[data-theme='48'] .olive-cover-opening__tag-text { display:none !important; }
body[data-theme='48'] .olive-cover-opening__couple {
  top:176px;
  left:0;
  width:210px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1px;
  font-size:28px;
  line-height:.95;
  letter-spacing:1px;
  white-space:normal;
}
body[data-theme='48'] .olive-cover-opening__couple .olive-cover-opening__couple-name { margin:0; color:#fff; font-family:'MUZUViWSVAtSElHSCTUElSSVRFRCPVEY',var(--script),cursive; font-size:34px; font-weight:400; letter-spacing:.4px; }
body[data-theme='48'] .olive-cover-opening__couple b { color:#fff; font:13px/1 'Hepta Slab',Georgia,serif; font-weight:400; }
body[data-theme='48'] .olive-cover-opening__date {
  top:285px;
  left:0;
  width:210px;
  font-size:13px;
  letter-spacing:1.6px;
}
body[data-theme='48'] .olive-cover-opening__monogram {
  left:71px;
}
body[data-theme='48'] .olive-cover-opening__guest { display:none !important; }
body[data-theme='48'] .olive-cover-opening__guest-label {
  top:548px;
  left:0;
  width:210px;
  color:#fff;
  font-size:17px;
  letter-spacing:2.5px;
}
body[data-theme='48'] .olive-cover-opening__tag-text {
  display:block;
  position:absolute;
  z-index:4;
  top:396px;
  left:220px;
  width:86px;
  height:24px;
  color:#111;
  font:italic 16px/20px 'Cormorant Garamond',Georgia,serif;
  font-weight:600;
  text-align:center;
  white-space:nowrap;
  transform:rotate(20deg);
  pointer-events:none;
}
body[data-theme='48'] .olive-cover-opening__tag::after {
  display:block;
  top:32px;
  left:52px;
  width:104px;
  height:22px;
  color:#111;
  font:italic 18px/22px 'Cormorant Garamond',Georgia,serif;
  font-weight:600;
  white-space:nowrap;
  transform-origin:left center;
  transform:rotate(20deg) scaleX(.86);
}
@media (max-width:700px) {
  body[data-theme='48'] dialog.olive-cover-opening {
    --cover-scale:var(--olive-cover-scale, 1);
    width:100vw !important;
    height:100dvh !important;
    max-width:100vw !important;
    max-height:100dvh !important;
    display:grid;
    place-items:center;
  }
  body[data-theme='48'] .olive-cover-opening__canvas {
    transform:scale(var(--cover-scale)) !important;
    transform-origin:center;
    flex:none;
  }
}

/* Keep the fixed artwork's content inside its 420px design canvas before the
   canvas is scaled. These are fluid within the artwork and prevent text from
   being clipped on narrow viewports. */
body[data-theme='48'] .olive-details__wedding {
  left:36.6071428571%;
  right:auto;
  width:76.9047619048%;
  max-width:none;
  font-size:clamp(48px, 16.667vw, 70px);
  white-space:nowrap;
  overflow:visible;
}
body[data-theme='48'] .olive-details__wedding::before,
body[data-theme='48'] .olive-details__wedding::after {
  display:none;
}
body[data-theme='48'] .olive-details__name--bride {
  left:auto;
  right:10px;
  width:min(190px, 46%);
  max-width:calc(100% - 230px);
  overflow-wrap:anywhere;
}
body[data-theme='48'] .olive-details__family--bride {
  top:438px;
  right:5%;
  width:42%;
  overflow-wrap:normal;
}
body[data-theme='48'] .olive-memories__forever {
  left:auto;
  right:10px;
  width:min(140px, 36%);
  max-width:calc(100% - 282px);
  overflow:hidden;
  white-space:nowrap;
}
body[data-theme='48'] .olive-closing__photo {
  left:0;
  width:420px;
}
body[data-theme='48'] .olive-save-date__flower--upper {
  left:0;
}

/* Final single-cover opening: one wedding-card cover flips upward. */
body[data-theme='48'] .olive-cover-opening__panel { display:none !important; opacity:0 !important; }
body[data-theme='48'] .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:1 !important; transform:scale(var(--cover-scale, 1)) !important; transform-origin:top left !important; backface-visibility:hidden; transition:transform .95s cubic-bezier(.68,0,.2,1),opacity .8s ease; }
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) { opacity:0 !important; transform:perspective(1100px) rotateX(-105deg) translateY(-12px); }
body[data-theme='48'] .olive-cover-opening__door { display:none !important; }
body[data-theme='48'] dialog.olive-cover-opening.leaving { opacity:1; transform:translateX(-50%); transition:none; }
@media (max-width:700px) {
  body[data-theme='48'] .olive-cover-opening__canvas,
  body[data-theme='48'] .olive-cover-opening__canvas.olive-cover-opening__base:not(.olive-cover-opening__panel) {
    position:absolute;
    top:0;
    left:calc(50% - 210px);
    transform:scale(var(--cover-scale)) !important;
    transform-origin:center top !important;
  }
  body[data-theme='48'] .olive-cover-opening__couple,
  body[data-theme='48'] .olive-cover-opening__date { left:0; }
  body[data-theme='48'] .olive-cover-opening__guest-label { left:0; }
}
/* Small interaction cue: point at the seal until the invitation is opened. */
@keyframes oliveHandPoint { 0%,100% { opacity:.78; transform:translateY(0) rotate(-8deg); } 50% { opacity:1; transform:translateY(-7px) rotate(-8deg); } }
@keyframes oliveSealBreath { 0%,100% { transform:scale(1); } 50% { transform:scale(1.045); } }
body[data-theme='48'] .olive-cover-opening__guest-label { position:absolute; z-index:5; }
body[data-theme='48'] .olive-cover-opening__guest-label::after { content:''; position:absolute; top:-184px; left:200px; width:50px; height:46px; background:url('https://thiep-cuoi-3-omega.vercel.app/assets/theme-nude/thiet-ke-chua-co-ten-20260619040321-d9gxg.png') center/contain no-repeat; filter:brightness(0) invert(1); animation:oliveHandPoint 1.7s ease-in-out infinite; pointer-events:none; }
body[data-theme='48'] .olive-cover-opening__seal { animation:oliveSealBreath 2.8s ease-in-out infinite; transform-origin:center; }
body[data-theme='48'] dialog.olive-cover-opening.book-opening .olive-cover-opening__seal,
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__seal { animation:none; }
body[data-theme='48'] dialog.olive-cover-opening.book-opening .olive-cover-opening__guest-label::after,
body[data-theme='48'] dialog.olive-cover-opening.opening-opening .olive-cover-opening__guest-label::after { animation:none; opacity:0; }

body[data-theme='48'] .timeline article[data-icon] .timeline-symbol { width:38px; height:39px; margin:0 auto 20px; background-position:center; background-repeat:no-repeat; background-size:contain; font-size:0; line-height:0; } body[data-theme='48'] .timeline article[data-icon='camera'] .timeline-symbol { background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/camera-20260607071610-z8ryg.png); } body[data-theme='48'] .timeline article[data-icon='ring'] .timeline-symbol { width:30px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/ring-20260607071610-db4ir.png'); } body[data-theme='48'] .timeline article[data-icon='plate'] .timeline-symbol { width:33px; height:33px; margin-top:6px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/dao-20260607071610-uo_94.png'); } body[data-theme='48'] .timeline article[data-icon='music'] .timeline-symbol { width:35px; height:35px; margin-top:6px; background-image:url('https://w.ladicdn.com/s350x350/691804d3a89f3900120ca482/music-20260607071610-k8cs6.png'); }
body[data-theme='48'] .olive-timeline-section { position:relative; isolation:isolate; display:block; width:420px; height:360px; overflow:hidden; color:#3b520d; font-family:'Hepta Slab',serif; background:transparent; } body[data-theme='48'] .olive-timeline-section .olive-details__timeline-title { top:12px; } body[data-theme='48'] .olive-timeline-section .olive-details__timeline { top:150px; }
body[data-theme='48'] .olive-details-section:not(.olive-timeline-section) { height:600px; background-position:0 0; } body[data-theme='48'] .olive-details-section:not(.olive-timeline-section)::after { display:none; } body[data-theme='48'] .olive-timeline-section { height:360px; background:transparent; background-image:none; } body[data-theme='48'] .olive-timeline-section::before, body[data-theme='48'] .olive-timeline-section::after { display:none; }
