@font-face{font-family:Lora;font-style:normal;font-weight:400;font-display:swap;src:url(font-c8f8c7f5ed.ttf) format('truetype')}
@font-face{font-family:Lora;font-style:italic;font-weight:400;font-display:swap;src:url(font-7b56c437ce.ttf) format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url(font-0569c822ca.ttf) format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url(font-9bd8ba39c9.ttf) format('truetype')}
@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(font-22833467f9.ttf) format('truetype')}

:root{--paper:#faf7f1;--ink:#403a36;--muted:#706b63;--rose:#a55465;--olive:#5e6a54;--sage:#e7ebe2;--line:#dedbd2}
*{box-sizing:border-box}
html{min-height:100%;background:var(--paper)}
body{margin:0;min-height:100svh;display:flex;flex-direction:column;font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65;color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid var(--rose);outline-offset:6px;border-radius:2px}
img{display:block;max-width:100%}
p,h1{margin:0}
.wrap{width:calc(100% - 96px);max-width:1080px;margin-inline:auto}
.skip-link{position:absolute;top:-80px;left:20px;padding:10px 18px;background:var(--ink);color:white;z-index:3}
.skip-link:focus{top:12px}
.masthead{padding-top:33px;padding-bottom:22px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:block;flex-shrink:0}
.logo img{width:150px;height:auto}
.coming-label{display:inline-flex;align-items:center;gap:9px;color:var(--olive);font-size:12px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.status-dot{width:6px;height:6px;background:#8d9a7e;border-radius:50%}
.holding-grid{flex:1;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:88px;padding-top:45px;padding-bottom:70px}
.copy{padding-block:12px}
.eyebrow{color:var(--olive);font-size:11px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;line-height:1.6;margin-bottom:22px}
h1{font-family:Lora,Georgia,serif;font-size:clamp(48px,5.25vw,72px);font-weight:400;line-height:1.16;letter-spacing:-.045em}
h1 em{color:var(--rose);font-weight:400}
.intro{margin-top:30px;font-size:19px;line-height:1.65}
.description{margin-top:13px;max-width:425px;color:var(--muted);font-size:16px;line-height:1.8}
.signoff{font-family:Caveat,cursive;font-size:31px;font-weight:500;line-height:1.3;color:var(--olive);margin-top:30px;transform:rotate(-3deg);transform-origin:left center}
.visual{position:relative;width:100%;max-width:350px;justify-self:center;margin:20px 0 24px}
.portrait-backdrop{position:absolute;inset:12px -13px -12px 15px;background:#e8e7dd;border-radius:200px 200px 22px 22px;transform:rotate(4deg)}
.portrait-frame{position:relative;aspect-ratio:4/4.85;border-radius:200px 200px 16px 16px;overflow:hidden;background:#e6d9cb}
.portrait{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.flower{position:absolute;overflow:visible;pointer-events:none}
.flower-top{width:64px;height:64px;top:55px;left:-35px;color:var(--rose);transform:rotate(13deg);background:var(--paper);border-radius:50%}
.flower-bottom{width:94px;height:94px;bottom:-28px;right:-38px;color:#839174;transform:rotate(-12deg);background:var(--paper);border-radius:50%}
.page-footer{border-top:1px solid var(--line);padding-top:20px;padding-bottom:23px;color:var(--muted);font-size:12px;line-height:1.65}
.page-footer span{margin-inline:8px;color:#aba395}

@media(min-width:1500px){.holding-grid{padding-bottom:90px}.visual{max-width:380px}}
@media(max-width:1000px){.wrap{width:calc(100% - 72px)}.holding-grid{gap:55px;padding-top:36px;padding-bottom:60px}.visual{max-width:320px}.flower-bottom{width:80px;height:80px;right:-23px}.eyebrow{font-size:10px;letter-spacing:.11em}h1{font-size:54px}.intro{font-size:18px}}
@media(max-width:820px) and (min-width:701px){.holding-grid{gap:32px}h1{font-size:47px}.description{font-size:16px}.visual{max-width:270px}.flower-top{left:-21px;width:48px;height:48px;top:45px}.flower-bottom{width:70px;height:70px;right:-20px}.eyebrow{font-size:9px;letter-spacing:.09em}.logo img{width:135px}}
@media(max-width:700px){.wrap{width:calc(100% - 48px)}.masthead{padding-top:23px;padding-bottom:20px}.logo img{width:126px}.coming-label{font-size:10px;letter-spacing:.08em;gap:7px}.status-dot{width:5px;height:5px}.holding-grid{grid-template-columns:1fr;gap:34px;padding-top:29px;padding-bottom:53px}.copy{padding:0}.eyebrow{font-size:9px;letter-spacing:.09em;margin-bottom:18px}h1{font-size:clamp(43px,8.6vw,58px)}.intro{font-size:18px;line-height:1.65;margin-top:23px}.description{max-width:440px;font-size:16px;line-height:1.8;margin-top:10px}.signoff{font-size:29px;margin-top:23px}.visual{max-width:280px;width:78%;margin-top:10px;margin-bottom:10px}.portrait-frame{border-bottom-left-radius:12px;border-bottom-right-radius:12px}.portrait-backdrop{inset:9px -10px -9px 12px}.flower-top{width:51px;height:51px;left:-27px;top:45px}.flower-bottom{width:76px;height:76px;right:-25px;bottom:-21px}.page-footer{font-size:11px;padding-top:18px;padding-bottom:20px}.page-footer span{margin-inline:5px}}
@media(max-width:370px){.wrap{width:calc(100% - 40px)}.logo img{width:117px}.coming-label{font-size:9px}h1{font-size:40px}.eyebrow{font-size:8px;letter-spacing:.07em}.visual{width:76%}.intro{font-size:17px}.description{font-size:16px}.page-footer{font-size:10px}}
