@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-italic.woff2') format('woff2');font-weight:400 600;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap}
*{box-sizing:border-box}body{margin:0;font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:1px solid currentColor;outline-offset:5px}
/* Shared stationery: the opening invitation and the saved image use one design. */
.stationery{position:relative;isolation:isolate;overflow:hidden;text-align:center;color:#293d30;background:#f5f1e8;font-family:Manrope,Arial,sans-serif;font-size:var(--type-size);font-weight:400;line-height:1.5;font-synthesis:none}
.stationery-frame{position:absolute;z-index:-1;inset:var(--frame-inset);border:1px solid #b98e707a;outline:1px solid #b98e7033;outline-offset:5px;pointer-events:none}
.stationery-frame::before,.stationery-frame::after{content:"";position:absolute;aspect-ratio:1;background:center/contain no-repeat;pointer-events:none}
.stationery-frame::before{width:var(--flower-top);left:-11px;top:-12px;background-image:url('assets/floral/watercolour-rose-top.webp')}
.stationery-frame::after{width:var(--flower-bottom);right:-9px;bottom:-7px;background-image:url('assets/floral/watercolour-sprig-bottom.webp')}
.stationery-heading{margin-bottom:19px;color:#9b6258;font-family:Cormorant,Georgia,serif;font-style:italic;font-size:var(--heading-size);font-weight:400;line-height:1.15;letter-spacing:.015em}
.stationery-intro{font-size:.93em;color:#4f5e47;letter-spacing:.02em}
.stationery-title{font-family:Cormorant,Georgia,serif;font-size:var(--name-size);line-height:1.08;font-weight:400;letter-spacing:-.012em;margin-top:var(--title-gap)}
.stationery-title>span{display:block}.stationery-title>i{display:block;font-size:.52em;font-weight:400;font-style:normal;color:#a66f62;line-height:1;margin:5px 0 7px;letter-spacing:0}
.stationery-request{font-size:.93em;color:#4f5e47;margin-top:16px}
.stationery-date{margin-top:var(--date-gap)}
.date-weekday{font-size:.9em;font-weight:400;letter-spacing:.045em;color:#4f5e47}
.date-line{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:21px;width:min(100%,318px);margin:1px auto 3px}
.date-line>span{font-size:1em;padding:9px 0;border-top:1px solid #b69b8870;border-bottom:1px solid #b69b8870;letter-spacing:.025em}
.date-line>strong{color:#9b6258;font-family:Cormorant,Georgia,serif;font-size:var(--date-number);font-weight:400;line-height:1.2;font-variant-numeric:lining-nums}
.date-place{font-size:.93em;color:#4f5e47}
.stationery-events{margin-top:var(--events-gap)}
.event-heading{display:flex;align-items:baseline;justify-content:center;gap:19px}
.event-heading h2,.event-heading h3{font-family:Cormorant,Georgia,serif;font-size:var(--event-size);font-weight:400;line-height:1.2;letter-spacing:0}
.event-heading time{font-size:.93em;font-weight:400;color:#4f5e47;white-space:nowrap;font-variant-numeric:lining-nums}
.stationery-event>p{font-size:1em;font-weight:400;margin-top:9px}
.stationery-event address{font-style:normal;font-size:.93em;color:#4f5e47;margin-top:1px}
.stationery-event address a{display:inline-flex;align-items:center;min-height:34px;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-color:#8c997a99}
.stationery-event address a:hover{text-decoration-color:currentColor}
.event-separator{width:29px;height:1px;background:#b68b727a;margin:var(--separator-gap) auto}
.card-page{background:#18271f;color:#e7e8da}
.card-toolbar{width:min(850px,calc(100% - 40px));margin:auto;padding:25px 0;font-size:13px}
.card-toolbar a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;font-family:Cormorant,Georgia,serif;font-size:20px;font-style:italic;text-decoration:none}
.card-main{padding:8px 0 35px}
.invitation-stage{position:relative;width:min(750px,calc(100vw - 32px));aspect-ratio:5/7;margin:auto;box-shadow:0 12px 50px #08120b40}
.invitation-card{--type-size:19px;--name-size:64px;--title-gap:26px;--heading-size:39px;--date-gap:34px;--date-number:65px;--event-size:38px;--events-gap:32px;--separator-gap:26px;--frame-inset:30px;--flower-top:212px;--flower-bottom:182px;width:750px;height:1050px;overflow:hidden;padding:58px 70px 46px;transform:scale(var(--card-scale,1));transform-origin:top left}
.invitation-card .stationery-heading{margin-bottom:28px}.invitation-card .stationery-title>i{margin:7px 0 10px}.invitation-card .stationery-request{margin-top:22px}
.invitation-card .date-line{width:382px;gap:28px;margin-top:3px;margin-bottom:5px}.invitation-card .date-line>span{padding:10px 0}
.invitation-card .event-heading{gap:27px}.invitation-card .stationery-event>p{margin-top:12px}.invitation-card .stationery-event address{margin-top:5px}
.card-endmark{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:32px;color:#a66f62}
.card-endmark span{width:32px;height:1px;background:#b68b7270}.card-endmark i{font-size:13px;font-style:normal;line-height:1}
.invitation-actions{display:inline-flex;align-items:center;justify-content:center;gap:12px;max-width:100%;color:#4f5e47}
.invitation-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:44px;padding:0 8px;font-family:Cormorant,Georgia,serif;font-size:19px;font-weight:400;line-height:1.2;white-space:nowrap;text-decoration:none;transition:color .2s}
.invitation-actions a:hover{color:#1f3426}.invitation-actions a:focus-visible{outline:1px solid currentColor;outline-offset:2px}
.action-separator{width:3px;height:3px;flex:none;border-radius:50%;background:currentColor;opacity:.45}
.card-downloads{display:flex;width:fit-content;margin:24px auto 0;color:#e1e1d1}.card-downloads a:hover{color:#fff8e9}
.exporting .card-toolbar,.exporting .card-downloads{display:none}
.exporting .card-main{padding:0}.exporting .invitation-stage{width:750px;margin:0;box-shadow:none}.exporting .invitation-card{transform:none}
@media(max-width:600px){.card-toolbar{padding:15px 0;font-size:12px}.card-main{padding-top:3px}}
@page{size:5in 7in;margin:0}
@media print{html,body{width:5in;height:7in;margin:0!important;padding:0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.card-toolbar,.card-downloads{display:none!important}.card-main{padding:0!important;margin:0!important;width:5in;height:7in}.invitation-stage{width:5in!important;height:7in!important;box-shadow:none;margin:0!important;overflow:hidden}.invitation-card{transform:scale(.64)!important;transform-origin:top left;break-inside:avoid}}
