/* W02 · Romantic Floral Garden: fonts (SIL Open Font License 1.1, self-hosted) */
@font-face { font-family: "Great Vibes"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/great-vibes-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Cormorant Garamond"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/cormorant-garamond-latin-500-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Cormorant Garamond"; font-style: italic; font-weight: 500; font-display: swap; src: url("../fonts/cormorant-garamond-latin-500-italic.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "EB Garamond"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/eb-garamond-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "EB Garamond"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/eb-garamond-latin-500-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "EB Garamond"; font-style: italic; font-weight: 400; font-display: swap; src: url("../fonts/eb-garamond-latin-400-italic.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* W02 · Romantic Floral Garden: blush pink, peach, watercolour roses; rose-gold script, falling petals. */
:root {
  --bg: #fbf1ef; --bg2: #f8e5e4; --ink: #5a3940; --muted: #8b6b70; --accent: #c0697d; --accent2: #e9b7bd;
  --deep: #b85d72; --on-deep: #fff7f6; --line: rgb(192 105 125 / .24);
  --card: rgb(255 255 255 / .58); --card-line: rgb(192 105 125 / .2); --card-shadow: 0 12px 30px rgb(176 89 109 / .08);
  --btn-bg: linear-gradient(90deg, #b5596f, #d0849a); --btn-ink: #fff; --btn-shadow: 0 10px 24px rgb(181 89 111 / .3);
  --f-script: "Great Vibes", cursive; --f-display: "Cormorant Garamond", Georgia, serif; --f-body: "EB Garamond", Georgia, serif;
  --names-font: var(--f-script); --names-size: 4rem; --names-color: #b5657a; --amp-font: var(--f-script);
  --head-font: var(--f-script); --head-weight: 400; --head-size: 2.7rem; --head-color: #b0596d;
  --kicker-color: #8b6b70;
  --couple-font: var(--f-script); --couple-size: 2.7rem; --couple-color: #9e4f63;
  --photo-radius: 999px 999px 18px 18px; --cover-ar: 4 / 5; --radius: 18px;
  --gate-bg: radial-gradient(ellipse at 18% 8%, #f8dbdc 0%, transparent 46%), radial-gradient(ellipse at 86% 88%, #fbe2db 0%, transparent 46%), #fbf1ef;
  --cd-bg: rgb(255 255 255 / .62); --cd-pad: 12px 6px; --cd-num: #b0596d; --cd-title: #9e4f63;
  --side-veil: linear-gradient(180deg, rgb(251 241 239 / 0) 42%, rgb(251 241 239 / .94) 82%); --side-ink: #5a3940;
  --bank-bg: linear-gradient(135deg, #c06c7e, #d999a5);
}
body { background: radial-gradient(ellipse at 0% 18%, #f8dcdd 0, transparent 36%), radial-gradient(ellipse at 100% 62%, #fae3de 0, transparent 36%), #fbf1ef; }
.inv { background: transparent; }
.names { background: linear-gradient(100deg, #a9536a 0%, #d8a093 45%, #b5657a 74%, #cf8f8a 100%); -webkit-background-clip: text; background-clip: text; color: transparent; padding: 0 .12em; }
.names__amp { color: inherit; font-size: .8em; }
.h-sec__t { display: flex; align-items: center; justify-content: center; gap: 10px; }
.h-sec__t::before, .h-sec__t::after { content: ""; width: 34px; height: 15px; background: url(../img/w02-sprig.svg) center / contain no-repeat; flex: none; }
.h-sec__t::before { transform: scaleX(-1); }
.h-sec .orn--div { display: none; }
.photo--cover, .photo--hero, .photo--side { border: 6px solid #fff; box-shadow: 0 16px 40px rgb(176 89 109 / .22); }
.photo--greet { aspect-ratio: auto; background: #fff; padding: 10px 10px 36px; border-radius: 2px; overflow: visible; position: relative; transform: rotate(-3deg); box-shadow: 0 14px 32px rgb(90 57 64 / .18); }
.photo--greet img { aspect-ratio: 3 / 2; height: auto; }
.photo--greet::before { content: ""; position: absolute; top: -12px; left: 50%; width: 92px; height: 26px; margin-left: -46px; background: rgb(236 178 188 / .78); transform: rotate(3deg); }
.ev__name, .wishes__t, .rsvp-done__t, .story__t { font-family: var(--f-display); font-weight: 600; font-size: 1.55rem; color: #9e4f63; }
.closing__t { font-size: 3rem; }
.closing__p { color: #6e4a52; }
.fx i { background: url(../img/w02-petal.svg) center / contain no-repeat; }

/* Watercolour florals cut from the mockup */
#gate .o1, #side .o1, .sec--hero .o1, .sec--closing .o1 { left: 0; top: 0; width: 34vw; max-width: 160px; aspect-ratio: 440 / 820; background-image: url(../img/deco-w02-flor-tl.webp); }
#gate .o2, #side .o2, .sec--hero .o2, .sec--story .o2 { right: 0; top: 0; width: 32vw; max-width: 150px; aspect-ratio: 388 / 760; background-image: url(../img/deco-w02-flor-tr.webp); }
#gate .o3, #side .o3, .sec--hero .o3, .sec--gallery .o3 { left: 0; bottom: 0; width: 46vw; max-width: 220px; aspect-ratio: 560 / 510; background-image: url(../img/deco-w02-peony-l.webp); }
#gate .o4, #side .o4, .sec--hero .o4, .sec--closing .o4 { right: 0; bottom: 0; width: 42vw; max-width: 200px; aspect-ratio: 488 / 410; background-image: url(../img/deco-w02-peony-r.webp); }
.sec--couple .o1 { left: 0; bottom: 0; width: 36vw; max-width: 170px; aspect-ratio: 1; background-image: url(../img/deco-w02-flor-bl.webp); }
.sec--hero .o1, .sec--hero .o2 { width: 26vw; }
