@import url('/wedding/rose-fonts.css?v=20261011-calligraphy');
/* New Kambes collection only. Existing KL and archived invitation styles are unchanged. */
.kambes-archive{margin:0 auto 30px}.kambes-archive>summary{display:block;width:max-content;cursor:pointer;font-size:12px;text-decoration:underline;text-underline-offset:4px;margin:0 auto 35px;color:#747b6a}.kambes-archive>summary::-webkit-details-marker{display:none}.kambes-archive>summary span{font-size:11px;margin-left:5px}.archive-heading{padding:15px 0;border-top:1px solid var(--line)}.archive-heading h3{font-size:30px}.rose-mini .rose-art{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover}.rose-mini .mini-copy{inset:18% 12% 12%}.rose-mini .mini-copy h3{font-family:'Rose Great Vibes',cursive;line-height:1.1}.rose-mini .mini-copy h3 em{margin:3px 0}.rose-mini .new-design{background:#ffffffa8;color:#795b54}.rose-mini.embun .rose-art{filter:hue-rotate(52deg) saturate(.48)}.rose-mini.cahaya .rose-art{filter:sepia(.26) saturate(.75)}.rose-mini.cahaya .mini-copy h3{font-family:'Rose Cormorant Garamond',serif;font-size:46px}.rose-mini.cahaya .mini-copy h3>span{text-transform:uppercase;letter-spacing:2px}
.rose-suite{--primary:#7a5c54;--secondary:#f3e2db;--accent:#c89a8d;--text:#5c4a45;--cream:#fffaf4;--ink:var(--text);--paper:var(--rose-paper);--line:#c89a8d55;--pattern:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='300' viewBox='0 0 260 300'%3E%3Cg fill='none' stroke='%23b99986' stroke-width='.7' opacity='.25'%3E%3Cpath d='M-15 4C55 44 52 112 31 150M7 13Q59 1 73 54Q38 56 7 13M42 55Q95 48 102 93Q66 96 42 55M31 107Q-10 72-21 118Q-8 141 31 107M225 309C179 253 195 224 240 176M233 288Q190 279 189 244Q222 247 233 288M215 247Q252 245 257 210Q224 211 215 247'/%3E%3C/g%3E%3Cg fill='%23b99986' opacity='.19'%3E%3Cpath d='m130 40 2 6 6 2-6 2-2 6-2-6-6-2 6-2zm65 102 1.5 5 5 1.5-5 1.5-1.5 5-1.5-5-5-1.5 5-1.5zm-92 95 1 4 4 1-4 1-1 4-1-4-4-1 4-1z'/%3E%3Ccircle cx='74' cy='177' r='1.6'/%3E%3Ccircle cx='159' cy='255' r='1.2'/%3E%3Ccircle cx='225' cy='63' r='1.5'/%3E%3C/g%3E%3C/svg%3E");background:#201f1b;color:var(--text);font-family:'Rose Cormorant Garamond',Georgia,serif;min-height:100dvh;line-height:1.625}.rose-suite.embun{--primary:#52695a;--secondary:#e7ece1;--accent:#a8b398;--text:#415548;--cream:#fafbf4;--line:#a8b39860}.rose-suite.cahaya{--primary:#816347;--secondary:#efe3ce;--accent:#c2a073;--text:#66503b;--cream:#fffaf0;--line:#c2a07360}.rose-card{width:100%;margin:0 auto;background:var(--secondary);container-type:inline-size;overflow:hidden}.rose-suite h1,.rose-suite h2,.rose-suite h3,.rose-suite p{margin:0}.rose-suite p{line-height:1.625}.rose-suite section{scroll-margin-top:10px}.rose-back{position:fixed;top:16px;left:16px;font:11px 'DM Sans',sans-serif;z-index:9;padding:9px 12px;border-radius:30px;background:#fffaf2dc;color:#6d5b4c;box-shadow:0 2px 10px #00000012}.rose-hero{height:100dvh;position:relative;isolation:isolate;overflow:hidden;background:var(--rose-paper);color:var(--primary)}.rose-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.rose-panel{position:absolute;z-index:-1;left:15%;right:15%;top:13%;bottom:-10%;background:#e8d2cb99;border-radius:48% 48% 5% 5%/25% 25% 0 0;mix-blend-mode:multiply}.rose-invited{position:absolute;top:17%;width:100%;padding:0 14%;font:300 clamp(12px,3.8cqw,19px)/1.25 'DM Sans',Arial,sans-serif;text-align:center;letter-spacing:.06em}.rose-name{position:absolute;left:0;width:100%;padding:0 14%;font-family:'Rose Great Vibes',cursive!important;font-size:clamp(40px,14cqw,64px);font-weight:400;line-height:1!important;text-align:center}.rose-first{top:26%}.rose-second{top:40%}.rose-amp{position:absolute;top:35%;left:0;width:100%;font:400 clamp(22px,7cqw,36px)/1 'Rose Great Vibes',cursive;text-align:center}.rose-date{position:absolute;top:50%;left:50%;transform:translateX(-50%);width:78cqw;display:flex;align-items:center;justify-content:center;gap:clamp(8px,2cqw,18px)}.rose-date>span{flex:1;font:italic clamp(13px,4cqw,18px)/1.15 'Rose Playfair Display',Georgia,serif;letter-spacing:.02em;border-block:1px solid var(--primary);padding:clamp(6px,1.8cqw,12px) clamp(4px,1cqw,8px);text-align:center;white-space:nowrap}.rose-date strong{font:400 clamp(60px,20cqw,100px)/1 'Rose Cormorant Garamond',serif}.rose-month{position:absolute;top:63%;left:0;width:100%;text-align:center;font-size:clamp(13px,3.8cqw,18px);font-weight:500;letter-spacing:.24em}.rose-hero-tag{position:absolute;top:73%;left:0;width:100%;text-align:center;font-size:clamp(12px,3.6cqw,17px);line-height:1.4!important;letter-spacing:.1em;padding:0 14%}.rose-scroll{position:absolute;top:80%;left:50%;transform:translateX(-50%);font-size:22px}.embun .rose-hero .rose-art{filter:hue-rotate(52deg) saturate(.48)}.embun .rose-panel{background:#cbd8bf88;border-radius:49% 49% 3% 3%/22% 22% 0 0}.cahaya .rose-hero .rose-art{filter:sepia(.26) saturate(.75)}.cahaya .rose-panel{background:#e9d7b988;border-radius:45% 45% 0 0/22% 22% 0 0;outline:1px solid #b7976455;outline-offset:7px}.cahaya .rose-name{font-family:'Rose Cormorant Garamond',serif!important;text-transform:uppercase;letter-spacing:.09em;font-size:clamp(34px,11cqw,54px)}.cahaya .rose-amp{font-family:'Rose Cormorant Garamond',serif;font-style:italic}
.rose-section{padding:64px 16px;text-align:center;background-color:var(--secondary);background-image:var(--pattern);font-size:16px;line-height:26px}.rose-section h2,.rose-suite .wishes-section h2{font:400 36px/40px 'Rose Great Vibes',cursive;color:var(--primary)}.rose-kicker{font:700 12px/16px 'Rose Cormorant Garamond',serif;letter-spacing:.35em;margin-bottom:8px!important;color:var(--accent)}.rose-ornament{display:flex;align-items:center;justify-content:center;gap:9px;color:var(--accent);margin:20px auto 40px;height:20px}.rose-ornament i{height:1px;width:52px;background:linear-gradient(to right,transparent,currentColor)}.rose-ornament i:last-child{transform:rotate(180deg)}.rose-ornament span{font-size:7px}.rose-ornament b{font-size:24px;font-weight:400}.rose-section-heading{margin-bottom:48px}.rose-section-heading .rose-ornament{margin-bottom:0}.rose-stationery,.rose-prayer-card,.rose-contact-card,.rose-gift-card{padding:32px;background:var(--cream);border:1px solid var(--line);border-radius:16px;box-shadow:0 3px 12px #7a5c5406}.rose-welcome p{font-size:16px;line-height:26px;margin:0 0 20px}.rose-bismillah{font-family:Georgia,serif;font-size:25px!important;line-height:1.65!important;margin-bottom:24px!important}.rose-greeting{font-style:italic;font-size:15px!important}.rose-welcome .rose-ornament{margin:25px auto}.rose-parents{font-size:14px;line-height:22.75px;text-transform:uppercase;letter-spacing:.18em;margin:24px 0}.rose-parents strong{display:block;font-weight:500}.rose-parents span{display:block;font-size:22px;line-height:1.7}.rose-welcome .rose-honour{font-size:14px;line-height:23px}.rose-couple{font:400 30px/37.5px 'Rose Great Vibes',cursive!important;color:var(--primary);margin:22px 0!important}.rose-welcome .rose-couple span{display:block;font-size:24px}.rose-welcome .rose-couple{font-size:30px!important;line-height:37.5px!important}.rose-welcome .rose-placeholder,.rose-placeholder{font-family:'Rose Cormorant Garamond',serif;font-size:13px!important;line-height:20px!important;opacity:.75;margin:18px 0 0!important}.rose-formal-date{font-weight:600;font-size:19px!important}.rose-time-chips{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:22px}.rose-time-chips span{border:1px solid var(--line);border-radius:8px;padding:7px 12px;font-size:14px}.rose-time-chips i{font-size:13px}.rose-detail-note{font-style:italic}.rose-countdown{padding:56px 16px;background-color:var(--primary);background-image:var(--pattern);text-align:center;color:#fff9ee}.rose-countdown h2{font:600 14px/20px 'Rose Cormorant Garamond',serif;letter-spacing:.3em;margin:0 0 26px}.rose-countdown .rose-ornament{margin:0 auto 24px;color:#eed2be99}.rose-countdown .rose-ornament:last-child{margin:24px auto 0}.rose-suite .countdown{display:flex;justify-content:center;gap:12px;max-width:400px;margin:0 auto}.rose-suite .countdown-unit{flex:1;min-width:0}.rose-suite .countdown-number{width:auto;height:auto;aspect-ratio:1;max-height:80px;display:flex;align-items:center;justify-content:center;background:#ffffff20;border:1px solid #fff4db50;border-radius:14px;font:600 24px/32px 'Rose Cormorant Garamond',serif;box-shadow:none;color:#fff9ee}.rose-suite .countdown-unit>span{display:block;text-transform:uppercase;font:400 15px/22px 'Rose Cormorant Garamond',serif;letter-spacing:0;margin-top:7px}.rose-clock-note{font-size:12px;line-height:17px!important;opacity:.8;margin-top:18px!important}.rose-countdown .countdown-status:empty{display:none}.rose-programme{padding-bottom:32px}.rose-programme-line{position:relative;max-width:392px;margin:0 auto;padding:0 0 24px 52px;text-align:left}.rose-programme-line:before{content:'';position:absolute;left:16px;top:0;bottom:0;width:1px;background:var(--accent)}.rose-programme-line:after{content:'';position:absolute;left:10px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px var(--cream)}.rose-programme-line>span{display:none}.rose-programme-line strong{font-weight:600;font-size:18px;line-height:28px}.rose-programme-line small{display:block;font-size:16px;line-height:26px;margin-top:4px}.rose-prayer-section{padding-top:24px;padding-bottom:64px}.rose-prayer-card{max-width:448px;margin:0 auto}.rose-prayer-card .rose-ornament{margin:0 auto 20px}.rose-prayer-card .rose-ornament:last-child{margin:20px auto 0}.rose-prayer{font-style:italic;font-size:16px;line-height:26px}.rose-location-card{padding:16px 12px 8px}.rose-suite svg{width:24px;height:24px}.rose-location-card>svg,.rose-contact-card>svg,.rose-gift-card>svg,.rose-gallery-placeholder>svg{width:30px;height:30px;color:var(--primary);margin-bottom:16px}.rose-location h3{font-size:26px;line-height:32px;margin-bottom:8px}.rose-location small,.rose-contact-card small,.rose-gift-card small,.rose-gallery-placeholder small{display:block;font-size:14px;line-height:22px;opacity:.75;margin-top:14px}.rose-contact-card{max-width:448px;margin:0 auto}.rose-contact-card>p:first-of-type{font-size:19px}.rose-rsvp>p{margin-bottom:20px}.rose-suite .trial-note{max-width:448px;margin:24px auto 20px;padding:10px 16px;font:12px/18px 'Rose Cormorant Garamond',serif;border-radius:8px}.rose-suite #form-area{max-width:448px;margin:auto;text-align:left;background:var(--cream);padding:24px;border:1px solid var(--line);border-radius:16px}.rose-suite #form-area form{margin:0}.rose-suite form label,.rose-suite form legend{font-family:'Rose Cormorant Garamond',serif;font-size:16px;line-height:24px;font-weight:500}.rose-suite form>label,.rose-suite form fieldset{margin-bottom:20px}.rose-suite input:not([type=radio]):not([type=checkbox]),.rose-suite select,.rose-suite textarea{font:14px/20px 'Rose Cormorant Garamond',serif;min-height:46px;padding:12px 16px;background:var(--secondary);color:var(--text);border:1px solid var(--line);border-radius:8px;margin-top:6px}.rose-suite textarea{min-height:106px}.rose-suite .attendance-options{gap:8px}.rose-suite .attendance-options label{font-size:14px;border-radius:8px;padding:11px 8px;line-height:20px}.rose-suite .counts{gap:12px}.rose-suite .counts label{font-size:14px}.rose-suite .button{font:500 16px/24px 'Rose Cormorant Garamond',serif;min-height:48px;padding:11px 20px;border-radius:999px;background:var(--primary);border-color:var(--primary);color:#fff9ee;justify-content:center}.rose-suite .privacy-note{font:12px/18px 'Rose Cormorant Garamond',serif;margin:0 0 20px}.rose-suite .confirmation p{font-size:15px}.rose-suite .confirmation h3{font-size:30px;line-height:1.2;margin:14px 0}.rose-suite .confirmation>span{margin-bottom:10px}.rose-suite .confirmation .button{margin-top:20px;width:100%}.rose-suite .wishes-section{background-color:var(--secondary);background-image:var(--pattern);padding:0 16px 64px;border:0;text-align:center}.rose-suite .wishes-section>.eyebrow{font:700 12px/16px 'Rose Cormorant Garamond',serif;letter-spacing:.28em;color:var(--accent);margin-bottom:10px}.rose-suite .wishes-section h2{margin-bottom:24px}.rose-suite .wishes-intro{font:16px/26px 'Rose Cormorant Garamond',serif;max-width:380px;margin:0 auto 24px}.rose-suite .wish-card{max-width:448px;text-align:left;background:var(--cream);border-color:var(--line);border-radius:16px;padding:28px 24px;margin:16px auto}.rose-suite .wish-card p{font:italic 17px/26px 'Rose Cormorant Garamond',serif}.rose-suite .wish-card small{display:block;font-size:12px;line-height:18px;margin-top:15px}.rose-suite .wish-card footer{font-family:'Rose Cormorant Garamond',serif}.rose-suite .wish-composer{max-width:448px;margin:24px auto 0;border-color:var(--line);border-radius:12px;background:var(--cream);text-align:left}.rose-suite .wish-composer summary{font:500 16px/24px 'Rose Cormorant Garamond',serif;padding:18px 24px}.rose-suite .wish-composer form{padding:0 24px 24px}.rose-suite .public-consent{display:flex;align-items:start;gap:10px;margin:16px 0}.rose-suite .public-consent input{width:16px;height:16px;margin:4px 0 0;flex:0 0 auto;accent-color:var(--primary)}.rose-suite .public-consent span{font-size:13px;line-height:20px}.rose-suite #wish-feedback{font-size:14px;line-height:22px;margin-bottom:15px}.rose-gift-card{max-width:448px;margin:auto}.rose-gallery-placeholder{padding:36px 20px;max-width:448px;margin:auto;border:1px dashed var(--accent);border-radius:16px;background:color-mix(in srgb,var(--cream) 65%,transparent)}.rose-calendar{text-align:center;padding:10px 20px 64px;background-color:var(--secondary);background-image:var(--pattern)}.rose-calendar button{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--primary);border-radius:999px;background:var(--primary);color:#fff9ee;padding:13px 25px;font:16px/24px 'Rose Cormorant Garamond',serif}.rose-calendar p{font-size:12px;line-height:18px;margin-top:12px}.rose-footer{text-align:center;padding:40px 24px 140px;background:var(--primary);color:#fff9ee}.rose-footer .rose-ornament{color:#ecd1bc;opacity:.7;margin:0 auto 22px}.rose-footer .rose-couple{font-size:40px!important;color:inherit;margin:16px 0 20px!important}.rose-footer>p{font-size:16px;line-height:26px;margin-bottom:20px}.rose-footer .rose-footer-date{font-size:12px;letter-spacing:.2em}.rose-footer>a{font-size:13px;text-decoration:underline;text-underline-offset:5px;opacity:.8}.rose-dock{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);width:calc(100% - 32px);min-width:260px;max-width:420px;min-height:70.25px;display:flex;gap:2px;padding:10px 6px;background:color-mix(in srgb,var(--primary) 95%,transparent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:16px;box-shadow:0 6px 22px #42251c30;backdrop-filter:blur(12px);color:#fff3e6;z-index:20}.rose-dock a{display:flex;flex:1;align-items:center;flex-direction:column;justify-content:center;gap:1px;padding:6px 2px;min-width:0;border-radius:8px;transition:background .2s}.rose-dock svg{width:20px;height:20px}.rose-dock span{font:400 9.5px/14.25px 'Rose Cormorant Garamond',serif;white-space:nowrap}.rose-dock a:hover,.rose-dock a.active{background:#ffffff19}.rose-dock a:focus-visible{outline:2px solid #fff8e8;outline-offset:1px}.rose-suite [hidden]{display:none!important}.rose-suite a,.rose-suite button{-webkit-tap-highlight-color:transparent}.rose-suite .button:disabled{cursor:wait;opacity:.55}.rose-suite input:focus,.rose-suite select:focus,.rose-suite textarea:focus{outline-color:var(--accent)}
@media(min-width:640px){.rose-suite .countdown{gap:24px}.rose-suite .countdown-number{font-size:30px;line-height:36px}.rose-event,.rose-rsvp{padding-top:96px;padding-bottom:96px}.rose-section h2,.rose-suite .wishes-section h2{font-size:48px;line-height:48px}.rose-welcome .rose-couple{font-size:36px!important;line-height:40px!important}.rose-suite #form-area{padding:40px}.rose-programme-line{padding-left:56px}.rose-suite .wishes-section{padding-bottom:96px}.rose-prayer-section{padding-top:24px;padding-bottom:64px}.rose-programme{padding-bottom:32px}}
@media(min-width:768px){.rose-stationery{padding:48px}}
@media(min-width:1024px){.rose-card{max-width:540px}.rose-back{left:max(20px,calc(50% - 410px));top:24px}}
@media(max-width:374px){.rose-stationery{padding:28px 23px}.rose-suite #form-area{padding:22px 18px}.rose-suite .attendance-options label{font-size:13px}.rose-time-chips{gap:7px}.rose-time-chips span{padding:7px 9px}.rose-dock{bottom:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rose-suite *{animation:none!important;transition:none!important}}

/* Restored floral stationery, with traditional kebaya and songket covers. */
.rose-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rose-extra{border-block:1px solid var(--line);margin:6px 0 16px}.rose-extra summary,.more-wishes summary{font:15px/1.4 'Rose Cormorant Garamond',serif;padding:13px 0;cursor:pointer;min-height:44px}.rose-extra summary small{font-size:12px}.rose-extra label{margin-top:12px}.rose-extra .rose-note{margin-bottom:15px}.rose-suite .public-consent{display:flex;align-items:start;gap:9px;margin:12px 0 18px}.public-consent input{width:17px;height:17px;flex:0 0 auto;margin:2px 0 0;accent-color:var(--primary)}.public-consent span{font-size:13px;line-height:1.5}.rose-suite [type=submit]{width:100%}.rose-suite .button:disabled{cursor:wait;opacity:.55}.rose-suite .trial-label{text-align:center;font-size:11px;margin-top:9px!important}.rose-suite :is(input,select,textarea,button,a,summary):focus-visible{outline:2px solid var(--primary);outline-offset:3px}#rose-form-status{font-size:15px;line-height:1.5;margin-bottom:14px}#rose-form-status:empty{display:none}.rose-wish-wall{max-width:448px;margin:24px auto 0;text-align:left}.rose-wish-wall .wish-count{font:10px 'DM Sans',sans-serif;letter-spacing:.13em;margin-bottom:15px}.rose-wish{display:flex;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.wish-avatar{display:grid;place-items:center;border-radius:50%;width:34px;height:34px;flex:0 0 auto;background:var(--primary);color:#fff9f2;font:18px 'Rose Cormorant Garamond',serif}.rose-wish>div{min-width:0}.rose-wish h3{font:600 17px 'Rose Cormorant Garamond',serif;margin-bottom:4px}.rose-wish p{font-size:16px;font-style:italic;white-space:pre-wrap;overflow-wrap:anywhere}.more-wishes[open]{max-height:380px;overflow:auto}
.rose-suite.embun{--primary:#8a5d61;--secondary:#f3e2e2;--accent:#bc8e91;--text:#66454b;--cream:#fff9f5;--line:#d8b8bc88}
.rose-suite.cahaya{--primary:#781d2b;--secondary:#f4e6df;--accent:#a57c4d;--text:#623c35;--cream:#fffaf1;--line:#c2a07360}
.rose-hero{min-height:640px;max-height:950px}
.rose-mini.embun .rose-art,.rose-mini.cahaya .rose-art,.embun .rose-hero .rose-art,.cahaya .rose-hero .rose-art{filter:none}
.embun .rose-hero .rose-art,.cahaya .rose-hero .rose-art{object-fit:fill}
.embun .rose-invited{top:24%;font-size:clamp(11px,3cqw,16px);padding-inline:20%}.embun .rose-first{top:33%}.embun .rose-amp{top:43%}.embun .rose-second{top:49%}.embun .rose-date{top:60%;width:65cqw}.embun .rose-month{top:71%;font-size:clamp(11px,3.3cqw,16px)}.embun .rose-hero-tag{top:78%;font-size:clamp(11px,3.1cqw,15px)}.embun .rose-scroll{top:84%}.embun .rose-name{font-size:clamp(48px,14cqw,68px)}
.cahaya .rose-hero{color:#fff1d6}.cahaya .rose-invited{top:23%;font-size:clamp(11px,3cqw,16px);padding-inline:20%;letter-spacing:.11em}.cahaya .rose-name{font-family:'Rose Great Vibes',cursive!important;text-transform:none;letter-spacing:0;font-size:clamp(52px,15cqw,76px)}.cahaya .rose-first{top:32%}.cahaya .rose-amp{top:42%;font-family:'Rose Great Vibes',cursive;font-style:normal}.cahaya .rose-second{top:48%}.cahaya .rose-date{top:60%;width:64cqw}.cahaya .rose-date>span{border-color:#ead0a0aa}.cahaya .rose-month{top:71%;font-size:clamp(11px,3.4cqw,17px)}.cahaya .rose-hero-tag{top:79%;font-size:clamp(11px,3.2cqw,16px)}.cahaya .rose-scroll{top:85%}
.rose-section{padding:48px 20px}.rose-section-heading{margin-bottom:28px}.rose-section-heading .rose-ornament{margin-bottom:0}.rose-ornament{margin:18px auto 28px}.rose-stationery{padding:30px 24px}.rose-welcome p{margin-bottom:18px}.rose-welcome .rose-parents{letter-spacing:.045em;font-size:16px;line-height:1.55;margin:22px 0;text-transform:none}.rose-welcome .rose-formal-couple{margin:28px 0}.rose-formal-couple h3{font:400 34px/1.3 'Rose Great Vibes',cursive;color:var(--primary)}.rose-formal-couple p{font-size:17px;margin:3px 0 0}.rose-formal-couple>span{display:block;font:italic 25px 'Rose Cormorant Garamond',serif;margin:10px 0}.rose-welcome .rose-thanks{font-size:15px;font-style:italic;margin-bottom:0}.rose-countdown{padding:34px 24px}.rose-countdown .rose-ornament{margin-bottom:18px}.rose-countdown .rose-ornament:last-child{margin-top:18px;margin-bottom:0}.rose-countdown h2{margin-bottom:20px}.rose-suite .countdown-number{max-height:65px}
.rose-programme{padding-bottom:28px}.rose-programme-line{max-width:350px;padding-bottom:24px}.rose-prayer-section{padding-top:16px;padding-bottom:40px}.rose-prayer-card{padding:26px 18px}.rose-location{padding-top:36px}.rose-location-card{padding-top:0}.location-actions{display:flex;justify-content:center;margin:24px 0 14px}.location-actions .button{display:flex;align-items:center;gap:9px}.rose-rsvp{padding-top:40px}.rose-suite #form-area{padding:24px}.rose-suite input:not([type=radio]):not([type=checkbox]),.rose-suite select,.rose-suite textarea{font-size:16px}.rose-suite textarea{min-height:84px}.rose-suite form label>small{font-size:12px}.rose-note{font-size:13px;line-height:1.5;margin-top:12px!important;opacity:.85}.rose-extra{margin-bottom:20px}.rose-extra summary{padding:14px 0}.rose-extra label{margin-top:16px}.rose-extra .rose-note{padding-bottom:14px}.rose-suite .trial-label{text-align:center;font-size:12px;margin-top:10px!important}.rose-wish-wall{max-width:448px;margin:35px auto 0;text-align:left}.rose-wish-wall>h3{font:400 28px 'Rose Great Vibes',cursive;text-align:center;margin-bottom:24px}.rose-wish-wall .wish-count{font:12px 'Rose Cormorant Garamond',serif;letter-spacing:.13em}.rose-wish{border-color:var(--line);padding:20px 0}.rose-wish p{font-size:17px}.rose-wish h3{font-size:18px}.rose-calendar{padding-bottom:40px}.rose-footer{padding-bottom:135px}.rose-dock{max-width:420px;bottom:calc(16px + env(safe-area-inset-bottom))}.rose-dock span{font-size:12px;line-height:18px}.rose-dock a{min-height:44px}
.rose-mini.embun .mini-copy{inset:26% 18% 17%}.rose-mini.embun .mini-copy h3{font:400 55px/1 'Rose Great Vibes',cursive}.rose-mini.cahaya .mini-copy{inset:26% 18% 17%}.rose-mini.cahaya .mini-copy h3{font:400 58px/1 'Rose Great Vibes',cursive}.rose-mini.cahaya .mini-copy h3>span{text-transform:none;letter-spacing:0}.rose-mini.cahaya .mini-copy h3 em{font-family:'Rose Great Vibes',cursive}.rose-mini.cahaya .mini-copy{color:#fff1d6}.rose-mini.embun .card-link,.rose-mini.cahaya .card-link{bottom:15%}.rose-mini.cahaya .card-link{color:#fff1d6}
@media(min-width:640px){.rose-event,.rose-rsvp{padding-block:52px}.rose-stationery{padding:36px}.rose-suite #form-area{padding:30px}.rose-section h2{font-size:42px;line-height:46px}}
@media(max-width:374px){.rose-section{padding-inline:16px}.rose-stationery{padding:28px 18px}.rose-suite #form-area{padding:20px 18px}.rose-formal-couple h3{font-size:29px}.rose-welcome .rose-parents{font-size:15px}.rose-dock span{font-size:11px}.rose-form-row{gap:10px}.rose-suite form label{font-size:15px}.rose-first{top:27%}.rose-second{top:41%}.rose-invited{font-size:12px}.rose-bismillah{font-size:23px!important}}
.rose-welcome .rose-formal-date>span{font-size:16px;font-weight:400}

/* Arabic shaping and full diacritics, with space above and below the lettering. */
.rose-welcome .rose-bismillah,.invitation .bismillah{
 font-family:'Wedding Amiri','Noto Naskh Arabic','Traditional Arabic',serif;
 font-size:clamp(27px,7.8vw,36px)!important;font-weight:400;font-style:normal;
 line-height:2!important;letter-spacing:normal;word-spacing:normal;
 font-synthesis:none;font-feature-settings:'rlig' 1,'calt' 1;
 white-space:nowrap;padding:8px 0 12px;margin:0 auto 22px!important;
}
/* Homepage thumbnails render the invitation's shared cover markup. */
.rose-mini{container-type:inline-size;aspect-ratio:1/2;--primary:#7a5c54;--rose-paper:var(--paper)}
.rose-mini.embun{--primary:#8a5d61}.rose-mini.cahaya{--primary:#781d2b}
.rose-mini .rose-hero{height:100%;min-height:0;max-height:none;font-family:'Rose Cormorant Garamond',Georgia,serif}
.rose-mini .rose-hero p{margin:0;line-height:1.625}
.rose-mini .rose-hero .rose-art{z-index:-2}
.rose-mini .rose-invited{font-size:3.8cqw}
.rose-mini .rose-name{font-size:14cqw}
.rose-mini .rose-amp{font-size:7cqw}
.rose-mini .rose-date{gap:2cqw}
.rose-mini .rose-date>span{font-size:4cqw;padding:1.8cqw 1cqw}
.rose-mini .rose-date strong{font-size:20cqw}
.rose-mini .rose-month{font-size:3.8cqw}
.rose-mini .rose-hero-tag{font-size:3.6cqw}
.rose-mini .rose-scroll{font-size:5cqw}
.rose-mini.embun .rose-invited,.rose-mini.cahaya .rose-invited{font-size:3cqw}
.rose-mini.cahaya .rose-name{font-size:15cqw}
.rose-mini.embun .rose-month{font-size:3.3cqw}.rose-mini.cahaya .rose-month{font-size:3.4cqw}
.rose-mini.embun .rose-hero-tag{font-size:3.1cqw}.rose-mini.cahaya .rose-hero-tag{font-size:3.2cqw}

/* KL interiors share the Kambes stationery UI; cover and collection styles stay independent. */
.kl-stationery.rose-suite{--primary:#842b2c;--secondary:#f3e7d8;--accent:#ab8351;--text:#603d35;--cream:#fffaf2;--line:#d7bfa0;--paper:var(--cream);background:var(--secondary);min-height:0}
.kl-stationery.kl-silk{--primary:#681f29;--secondary:#efe2dc;--accent:#a68354;--text:#603c3e;--line:#d8beb2}
.kl-stationery.kl-lacquer{--primary:#992d32;--secondary:#f7e9de;--accent:#b37866;--text:#713d39;--line:#e0c1b2}
.kl-stationery.kl-lattice{--primary:#203b50;--secondary:#e8eeea;--accent:#859788;--text:#354e56;--cream:#faf9f1;--line:#c5d0c8}
.kl-stationery.kl-lotus,.kl-stationery.kl-serenity{--primary:#80313c;--secondary:#edf0e5;--accent:#8d9b79;--text:#4e5945;--cream:#fffcf2;--line:#cbd2bc}
.kl-stationery .rose-section{padding-inline:24px}
.kl-stationery .rose-stationery{max-width:448px;margin:auto}
.kl-stationery .rose-section h2{font-size:clamp(34px,8vw,44px);line-height:1.15}
.kl-stationery .rose-kicker{color:var(--text);font-size:10px;letter-spacing:.22em}
.kl-stationery .rose-section-heading{margin-bottom:32px}
.kl-stationery .rose-parents{font-size:17px;letter-spacing:.08em;line-height:1.6}
.kl-inner-seal{font:48px/1.3 'Noto Serif SC','Songti SC',serif;color:var(--primary);margin:0 0 22px}
.kl-stationery .rose-formal-couple h3{color:var(--primary)}
.kl-stationery .rose-formal-date span{display:block;font-size:16px;font-weight:400;margin-top:4px}
.kl-stationery .rose-programme{padding-bottom:48px}
.kl-stationery .rose-location-card p{margin-bottom:16px}
.kl-stationery .rose-dock span{font-size:11px}
.kl-focused.hero-visible .rose-dock{opacity:0;visibility:hidden;pointer-events:none}
.kl-stationery .rose-dock{transition:opacity .2s;bottom:calc(16px + env(safe-area-inset-bottom))}
.kl-stationery form label{display:block}
.kl-stationery input:not([type=checkbox]),.kl-stationery select,.kl-stationery textarea{font-size:16px}
.kl-stationery .rose-extra summary{font-size:16px}
.kl-stationery .rose-wish-wall>h3{font-size:26px}
.kl-stationery .rose-footer{--ink:#fff9ee}
@media(max-width:374px){.kl-stationery .rose-section{padding-inline:16px}.kl-stationery .rose-form-row{gap:10px}.kl-stationery .rose-kicker{font-size:9px}.kl-stationery .rose-parents{font-size:16px}}
.kl-stationery .rose-form-row:has(#guest-count-label[hidden]){grid-template-columns:1fr}

/* The two selected live invitations, with the complete collection on its own page. */
.selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;max-width:940px;margin:auto}
.selected-event .collection-heading{min-height:145px;align-items:start}
.selected-event .collection-heading h2{font-size:32px}
.selected-event .collection-heading p:not(.eyebrow){font-size:12px;color:#747b6a;margin:12px 0 0}
.selected-event .design-card{display:block}
.selected-event .design-caption{padding-bottom:8px}
.selected-event .design-caption>span{color:#795b54}
.selected-open{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 22px;background:#6c4b50;color:#fffaf4;font-size:13px;border-radius:8px}
.selected-event#kl .selected-open{background:#681f29}
.selected-invitations .studio-footer{margin-top:55px}
@media(max-width:700px){.selected-grid{grid-template-columns:1fr;gap:20px;max-width:430px}.selected-event .collection-heading{min-height:0}.selected-event .collection-heading h2{font-size:30px}.selected-invitations .studio-intro>p br{display:block}}

/* Shared full-height stationery covers and linked venue names. */
.venue-link{color:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.venue-link:hover{opacity:.75}.venue-link:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.kl-stationery.rose-suite{background:#201f1b}
.kl-rose-cover{color:var(--cover-ink);background:var(--rose-paper)}
.kl-rose-cover .painted-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.kl-rose-cover .rose-invited{top:12%;font-size:clamp(10px,3cqw,15px);letter-spacing:.12em}
.kl-cover-seal{position:absolute;top:18%;width:100%;text-align:center;font:clamp(32px,10cqw,50px)/1.1 'Noto Serif SC','Songti SC',serif}
.kl-rose-cover .rose-first{top:31%}.kl-rose-cover .rose-amp{top:40%}.kl-rose-cover .rose-second{top:45%}
.kl-rose-cover .rose-date{top:57%}.kl-rose-cover .rose-date>span{border-color:currentColor}
.kl-rose-cover .rose-month{top:70%}.kl-rose-cover .rose-hero-tag{top:78%}.kl-rose-cover .rose-scroll{top:85%}
.kl-stationery .rose-back{color:#681f29}
