/* Photographic atelier edition. Realistic stationery, generous editorial type. */
body{--paper:#f4f0e7;--paper2:#e9e3d7;--ink:#3e4134;--muted:#686b58;--accent:#576046}
.site-header{height:78px;padding:0 4.5vw;backdrop-filter:blur(20px);background:color-mix(in srgb,var(--paper) 94%,transparent);border-color:var(--line)}
.brand-label{font-size:8px;letter-spacing:2.5px}.brand-monogram{font-size:31px}.theme-name{font-family:var(--display);font-size:17px}.theme-toggle{border-radius:0;padding:10px 14px;font-size:10px}.header-right{gap:26px}
.envelope-section{height:172svh;min-height:1100px}.atelier-stage{height:100svh;min-height:670px;background:var(--paper);--open:0;--p:0}.atelier-stage::after{display:none}
.hero-story{position:absolute;z-index:3;left:6.3%;top:calc(50% + 18px);width:29%;transform:translateY(-50%);text-align:left}.hero-story>.eyebrow{font-size:8px;letter-spacing:2.7px;color:var(--muted)}
.hero-story h1{font-family:var(--display);font-weight:400;font-size:clamp(85px,9vw,146px);line-height:.79;letter-spacing:-6px;margin:37px 0 27px;display:flex;flex-direction:column;align-items:flex-start}.hero-story h1 i{font-family:var(--script);font-size:.48em;line-height:.83;letter-spacing:0;margin:3px 0 2px 58px;font-weight:400}.hero-story-rule{height:1px;width:45px;background:var(--accent);opacity:.4;margin:32px 0 21px}.hero-story-date{font-size:10px;letter-spacing:3px}.hero-story-place{font-family:var(--display);font-size:21px;font-style:italic;margin-top:8px;line-height:1.4}.hero-story-line{font-family:var(--display);font-size:26px;line-height:1.24;margin-top:26px;color:var(--muted)}
.atelier-open{display:flex;align-items:center;justify-content:space-between;gap:25px;background:transparent;border:0;border-bottom:1px solid var(--line);padding:12px 0;margin-top:25px;font-size:11px;min-width:170px;text-align:left;transition:opacity .3s}.atelier-open svg{width:14px;height:18px}.is-open .atelier-open{opacity:0;pointer-events:none}
.photographic-suite{position:absolute;top:78px;bottom:66px;left:39%;right:0;overflow:hidden;isolation:isolate;background:var(--paper2)}.suite-image{position:absolute;inset:0;background-repeat:no-repeat;background-size:200% 100%;will-change:opacity,transform}.suite-closed{background-position:left center;opacity:calc(1 - var(--open));transform:scale(calc(1 + var(--open)*.025))}.suite-opened{background-position:right center;opacity:var(--open);transform:scale(calc(1.025 - var(--open)*.025))}.photo-open-control{position:absolute;inset:0;z-index:3;width:100%;height:100%;border:0;background:transparent;cursor:pointer}.photo-open-control:focus-visible{outline-offset:-12px;outline:1px solid #ffffffdd}.photo-open-control:disabled{cursor:default}.suite-corner-note{position:absolute;left:26px;right:26px;bottom:20px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:2px;color:#fff;text-shadow:0 1px 5px #0008;mix-blend-mode:difference;pointer-events:none}
.atelier-stage-foot{position:absolute;bottom:25px;left:6.3%;right:4.5%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:7px;letter-spacing:1.6px;color:var(--muted);line-height:1.6}.closed-help{font-size:9px;letter-spacing:.4px}.atelier-continue{position:absolute;right:0;font-size:11px;letter-spacing:.4px;text-decoration:none;visibility:hidden;opacity:0;display:flex;gap:18px;align-items:center}.atelier-continue>span{font-size:18px}.is-open .closed-help{visibility:hidden}
.section-shell{padding:120px 7vw 120px 10vw}.section-side{left:4.5vw;top:140px}.invitation-section{padding-top:120px;padding-bottom:120px}.editorial-invitation{max-width:1160px;width:100%;min-height:0;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:8%;align-items:center;border:0!important;border-radius:0!important;background:none!important}.wedding-photo-wrap{margin:0;position:relative;padding:0;min-width:0}.wedding-photo{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center;filter:saturate(.7);box-shadow:0 15px 40px #27241c12}.wedding-photo-wrap figcaption{display:flex;justify-content:space-between;gap:12px;padding:18px 0 14px;border-bottom:1px solid var(--line);font-size:7px;letter-spacing:1.5px;color:var(--muted)}.photo-sample-label{display:block;font-size:9px;line-height:1.6;margin-top:10px;color:var(--muted)}
.editorial-invitation .invitation-inner{padding:0;text-align:center}.editorial-invitation .invitation-prelude{font-family:var(--display);font-style:italic;font-size:35px;line-height:1.15;margin:20px 0 25px}.editorial-invitation .invitation-copy{font-size:20px;line-height:1.5}.editorial-invitation .couple-names{font-family:var(--display);font-size:92px!important;letter-spacing:-3px!important;line-height:.88!important;margin:27px 0}.editorial-invitation .couple-names>em{font-family:var(--script);font-size:39px!important;margin:7px 0!important;line-height:1}.editorial-divider{width:40px;height:1px;background:var(--line);margin:30px auto 0}.editorial-invitation .closing-copy{font-size:18px;line-height:1.55;margin-top:23px}.date-heading h2,.venue-content h2{font-size:62px}.date-layout{gap:36px 9%}.date-card{border-radius:0!important;border:1px solid var(--line)!important;min-height:410px;padding:40px 22px;box-shadow:0 12px 25px #30291d08;transform:rotate(2deg)}.date-card::before{display:block!important;border-radius:0}.date-numeral{font-size:166px}.date-time{font-size:12px}.button{border-radius:0!important;font-size:11px;padding:16px 21px}.venue-art{border-radius:0!important;transform:rotate(-2deg)!important;box-shadow:12px 14px 0 color-mix(in srgb,var(--ink) 8%,transparent)!important;border:1px solid var(--line)!important}.venue-arch{border-radius:0!important}.venue-art-name{font-family:var(--display)!important;font-style:italic;font-size:43px!important}.venue-content h3{font-size:24px}.venue-content address{font-size:13px;line-height:1.95}
.closing-section{padding:115px 24px;background:var(--paper)}.closing-section h2{font-size:90px;line-height:1.04}.closing-section .eyebrow{font-size:9px}.closing-monogram{margin-top:42px}.collection-section{padding-top:80px;padding-bottom:35px;background:#f9f7f2}.collection-heading h2{font-size:51px}.collection-heading .eyebrow{font-size:8px;letter-spacing:2.6px}.theme-cards{gap:17px}.photographic-preview{aspect-ratio:1/1;border:0;background:#e6dfd3;isolation:isolate}.theme-preview.photographic-preview>img{height:100%;width:200%;max-width:none;object-fit:fill;opacity:1;left:0;transform:translateX(-50%)}.theme-card:hover .theme-preview{transform:translateY(-4px)}.theme-card-label{font-family:"Cormorant Garamond",Georgia,serif;font-size:21px;align-items:baseline;margin-top:17px}.theme-card-label>span{font-family:"DM Sans",Arial,sans-serif;font-size:8px;white-space:nowrap}.theme-card-mood{font-size:10px;color:#6c6e62;line-height:1.6}.selected-tag{font-family:"DM Sans",Arial,sans-serif;font-size:6px;letter-spacing:1.4px;right:7px;top:7px;padding:6px 8px;background:#f6f2e8de;border:0}.sample-note{max-width:700px;margin:35px auto 0;font-size:10px;color:#747568;line-height:1.8}.theme-dialog{width:min(1240px,calc(100% - 42px));padding:34px 42px 38px;background:#f9f7f2}.theme-dialog h2{font-size:65px}.dialog-intro{font-size:12px}.dialog-footnote{font-size:10px}.site-footer{background:#f9f7f2}.close-dialog{border-radius:0}.theme-dialog::backdrop{background:#1c1b167d;backdrop-filter:blur(15px)}
body[data-theme="rosewater"]{--paper:#f5eee9;--paper2:#eaddd5;--ink:#6a4448;--muted:#7f5d60;--accent:#88535f}body[data-theme="rosewater"] .hero-story h1{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:clamp(85px,9.3vw,150px)}body[data-theme="rosewater"] .hero-story h1 i{font-family:var(--script);font-style:normal}body[data-theme="rosewater"] .wedding-photo{filter:saturate(.65) sepia(.08)}body[data-theme="rosewater"] .editorial-invitation .couple-names{font-family:var(--script);font-size:120px!important;letter-spacing:0!important}
body[data-theme="midnight-celestial"]{--paper:#141b2a;--paper2:#1c2639;--ink:#e8dfcd;--muted:#b3b3bb;--accent:#c1a16d;--line:#d3bb8833}body[data-theme="midnight-celestial"] .hero-story h1{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(85px,9vw,145px)}body[data-theme="midnight-celestial"] .hero-story-date{color:var(--accent)}body[data-theme="midnight-celestial"] .wedding-photo{filter:grayscale(1);box-shadow:none}body[data-theme="midnight-celestial"] .editorial-invitation .couple-names{font-family:"Cormorant Garamond",Georgia,serif}body[data-theme="midnight-celestial"] .closing-section{background:#111726}
body[data-theme="warisan"]{--paper:#f2e7d6;--paper2:#e8d8c1;--ink:#602d38;--muted:#7a5a59;--accent:#672f3b}body[data-theme="warisan"] .hero-story h1{font-family:"Cormorant Garamond",Georgia,serif}body[data-theme="warisan"] .hero-story-line{font-style:italic}body[data-theme="warisan"] .wedding-photo{filter:saturate(.65) sepia(.12)}body[data-theme="warisan"] .editorial-invitation .couple-names{font-family:"Cormorant Garamond",Georgia,serif}body[data-theme="warisan"] .date-section{background:#592a36}body[data-theme="warisan"] .closing-section{background:#592a36}
body[data-theme="pearl-atelier"]{--paper:#f3f1eb;--paper2:#e6e3dc;--ink:#3d4140;--muted:#626962;--accent:#4b5551}body[data-theme="pearl-atelier"] .hero-story h1{font-family:"Bodoni Moda",Georgia,serif;font-size:clamp(80px,8.5vw,135px)}body[data-theme="pearl-atelier"] .hero-story h1 i{font-family:"Bodoni Moda",Georgia,serif;font-size:.4em;margin-top:14px;margin-bottom:13px;font-style:italic}body[data-theme="pearl-atelier"] .wedding-photo{filter:grayscale(1)}body[data-theme="pearl-atelier"] .editorial-invitation .couple-names{font-family:"Bodoni Moda",Georgia,serif;font-size:78px!important}body[data-theme="pearl-atelier"] .editorial-invitation .couple-names>em{font-family:"Bodoni Moda",Georgia,serif;font-style:italic;font-size:32px!important;margin:12px 0!important}
@media(min-width:1700px){.photographic-suite{left:42%;right:4%;top:100px;bottom:85px}.hero-story{left:10%;width:28%}.hero-story h1{font-size:156px}.hero-story-line{font-size:30px}}
@media(max-width:1100px) and (min-width:701px){.hero-story{left:5%;width:32%}.hero-story h1{font-size:103px}.hero-story h1 i{margin-left:38px}.hero-story-line{font-size:23px}.photographic-suite{left:40%;top:100px;bottom:96px}.atelier-stage-foot{left:5%;right:4%;font-size:6px}.closed-help{font-size:8px}.editorial-invitation{gap:6%}.editorial-invitation .couple-names{font-size:77px!important}.editorial-invitation .invitation-copy{font-size:18px}.editorial-invitation .invitation-prelude{font-size:30px}.theme-card-label{font-size:17px}}
@media(max-width:700px){.site-header{height:68px;padding:0 22px}.header-right{gap:14px}.brand-monogram{font-size:27px}.theme-toggle{padding:9px 11px;font-size:9px}.current-theme{font-size:8px}.envelope-section{height:160svh;min-height:1000px}.atelier-stage{height:100svh;min-height:640px}.hero-story{top:98px;left:20px;right:20px;width:auto;transform:none;text-align:center}.hero-story>.eyebrow{font-size:7px;letter-spacing:2.7px}.hero-story h1,body[data-theme="rosewater"] .hero-story h1,body[data-theme="midnight-celestial"] .hero-story h1,body[data-theme="warisan"] .hero-story h1,body[data-theme="pearl-atelier"] .hero-story h1{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;font-size:60px;line-height:1.05;letter-spacing:-2px;margin:14px 0 12px}.hero-story h1 i,body[data-theme="pearl-atelier"] .hero-story h1 i{font-family:var(--script);font-size:40px;letter-spacing:0;margin:0 2px;line-height:1}.hero-story-rule,.hero-story-line,.hero-story-place{display:none}.hero-story-date{font-size:7px;letter-spacing:2.5px}.photographic-suite{left:0;right:0;top:245px;bottom:auto;width:100%;height:auto;aspect-ratio:1/1}.suite-corner-note{bottom:15px;left:18px;right:18px;font-size:6px;letter-spacing:1.3px}.atelier-open{position:fixed;left:50%;transform:translateX(-50%);top:calc(245px + 100vw + 18px);min-width:166px;justify-content:center;gap:25px;font-size:11px;margin:0;padding:10px 0;z-index:4;white-space:nowrap}.hero-story{position:absolute}.atelier-open{position:absolute;top:calc(147px + 100vw + 18px)}.atelier-stage-foot{left:20px;right:20px;bottom:23px;justify-content:center;flex-direction:column;gap:8px;font-size:6px;text-align:center;letter-spacing:1px}.closed-help{font-size:8px}.atelier-continue{position:static;font-size:10px;gap:12px}.is-open .closed-help{display:none}.atelier-stage:not(.is-open) .atelier-continue{display:none}.is-open .atelier-stage-foot{gap:14px}.section-shell{padding:80px 24px}.invitation-section{padding:75px 24px 80px}.editorial-invitation{display:flex;flex-direction:column;gap:57px;min-height:0!important}.wedding-photo-wrap{width:100%;max-width:420px}.wedding-photo-wrap figcaption{font-size:6px;letter-spacing:1px;padding:15px 0 12px}.photo-sample-label{font-size:8px}.editorial-invitation .invitation-inner{padding:0 5px}.editorial-invitation .invitation-prelude{font-size:32px;margin:18px 0 23px}.editorial-invitation .invitation-copy{font-size:20px}.editorial-invitation .couple-names{font-size:96px!important;line-height:.88!important;margin:29px 0}.editorial-invitation .closing-copy{font-size:18px}.editorial-invitation .eyebrow{font-size:7px}.editorial-divider{margin-top:25px}.date-card{min-height:370px;width:min(305px,95%);transform:rotate(1.5deg);padding:35px 20px}.date-heading h2,.venue-content h2{font-size:48px}.date-layout{gap:37px}.date-numeral{font-size:150px}.date-time{font-size:11px}.sample-time-note{font-size:8px}.venue-layout{gap:50px}.venue-art{width:min(295px,92%);min-height:360px}.venue-arch{min-height:300px}.venue-art-name{font-size:41px!important}.venue-content h3{font-size:23px}.venue-content address{font-size:12px}.closing-section{padding:85px 20px}.closing-section h2,body[data-theme="pearl-atelier"] .closing-section h2{font-size:57px;line-height:1.1}.collection-section{padding:55px 22px 30px}.collection-heading h2{font-size:44px}.theme-cards{gap:27px 15px}.theme-card-label{font-size:21px;flex-wrap:wrap;gap:2px;margin-top:12px;line-height:1.15}.theme-card-label>span{font-size:7px}.theme-card-mood{font-size:9px;margin-top:7px}.theme-dialog{padding:23px;width:calc(100% - 24px)}.theme-dialog h2{font-size:49px}.dialog-intro{font-size:11px;margin-bottom:24px}.dialog-footnote{font-size:9px}.selected-tag{font-size:5px;letter-spacing:1px;padding:5px 6px}.sample-note{font-size:9px;line-height:1.8;margin-top:28px}.site-footer{font-size:7px}body[data-theme="rosewater"] .editorial-invitation .couple-names{font-size:123px!important}body[data-theme="pearl-atelier"] .editorial-invitation .couple-names{font-size:83px!important}}
@media(max-width:700px) and (max-height:780px){.hero-story{top:88px}.hero-story h1,body[data-theme="rosewater"] .hero-story h1,body[data-theme="midnight-celestial"] .hero-story h1,body[data-theme="warisan"] .hero-story h1,body[data-theme="pearl-atelier"] .hero-story h1{font-size:52px;margin-top:10px;margin-bottom:10px}.photographic-suite{top:220px}.atelier-open{top:calc(132px + 100vw + 8px)}.atelier-stage-foot{bottom:15px;font-size:5px;gap:5px}.closed-help{font-size:7px}}
@media(max-width:360px){.hero-story h1,body[data-theme="rosewater"] .hero-story h1,body[data-theme="midnight-celestial"] .hero-story h1,body[data-theme="warisan"] .hero-story h1,body[data-theme="pearl-atelier"] .hero-story h1{font-size:47px;gap:5px}.hero-story h1 i{font-size:30px}.theme-card-label{font-size:18px}}
@media(prefers-reduced-motion:reduce){.suite-image{will-change:auto;transform:none}.atelier-open{transition:none}.theme-card:hover .theme-preview{transform:none}}



.editorial-invitation{min-height:0!important;width:100%!important}.date-card{outline:none!important}

/* Fit the square photography to the available height, including small tablets. */
@media(max-width:700px){
 .atelier-stage{--photo-top:245px;--photo-size:min(100vw,calc(max(100svh,640px) - var(--photo-top) - 118px));--story-top:98px}
 .hero-story{top:var(--story-top)}
 .photographic-suite{top:var(--photo-top);width:var(--photo-size);height:var(--photo-size);left:50%;right:auto;transform:translateX(-50%)}
 .atelier-open{top:calc(var(--photo-top) - var(--story-top) + var(--photo-size) + 18px)}
}
@media(max-width:700px) and (max-height:780px){.atelier-stage{--photo-top:220px;--story-top:88px}}
/* Compact side-by-side composition for phones held in landscape. */
@media(max-width:1100px) and (max-height:540px) and (orientation:landscape){
 .site-header{height:58px;padding:0 4.5vw}.brand-monogram{font-size:24px}.brand-label{font-size:6px}.theme-toggle{padding:7px 10px;font-size:9px}.theme-name{font-size:13px}.current-theme{font-size:8px}
 .envelope-section{height:180svh;min-height:680px}.atelier-stage{height:100svh;min-height:360px}
 .hero-story{left:6%;right:auto;top:calc(50% + 14px);width:40%;transform:translateY(-50%);text-align:left}
 .hero-story>.eyebrow{font-size:6px;letter-spacing:1.6px}
 body[data-theme] .hero-story h1{flex-direction:column;align-items:flex-start;justify-content:flex-start;font-size:clamp(49px,13svh,68px);line-height:.84;gap:0;letter-spacing:-2px;margin:13px 0 14px}
 body[data-theme] .hero-story h1 i{font-family:var(--script);font-size:24px;margin:0 0 0 27px;line-height:.88}
 .hero-story-rule,.hero-story-line,.hero-story-place{display:none}.hero-story-date{font-size:7px;letter-spacing:2px}
 .photographic-suite{width:min(48vw,calc(100svh - 95px));height:auto;aspect-ratio:1;left:auto;right:4.5%;top:65px;bottom:auto;transform:none}
 .atelier-open{position:static;transform:none;min-width:140px;justify-content:space-between;font-size:9px;margin-top:12px;padding:9px 0}
 .suite-corner-note{font-size:5px;left:12px;right:12px;bottom:12px;letter-spacing:1px}
 .atelier-stage-foot{left:6%;right:4.5%;bottom:10px;font-size:5px;flex-direction:row;gap:10px;justify-content:space-between;text-align:left}.closed-help{font-size:7px;letter-spacing:0}.atelier-continue{font-size:8px;position:absolute;right:0;gap:8px}.atelier-continue>span{font-size:13px}
}
