/* Fran: styles are scoped; the invitation's editable palette remains authoritative. */
.layout-fran .section-cover{min-height:100svh;min-height:max(780px,100svh);padding:65px 24px 85px;display:flex;align-items:flex-start;justify-content:center;isolation:isolate;overflow:hidden}
.layout-fran .section-cover:before{display:none}
.layout-fran .section-cover:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,color-mix(in srgb,var(--card-paper) 45%,transparent),transparent 62%,color-mix(in srgb,var(--card-paper) 70%,transparent))}
.fran-cover-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-2}
.fran-cover-copy{width:100%;max-width:760px;text-align:center;color:var(--card-ink);text-shadow:0 2px 20px var(--card-paper)}
.fran-stars{color:var(--card-accent);font-size:25px;letter-spacing:12px}
.layout-fran .fran-cover-copy .eyebrow{margin:18px 0 8px;letter-spacing:6px;font-size:12px}
.layout-fran h1{font:400 clamp(80px,11vw,150px)/1.2 var(--heading);color:var(--card-accent);margin:0 0 8px;overflow-wrap:anywhere}
.fran-cover-copy time{font:12px var(--body);letter-spacing:4px}
.layout-fran .fran-cover-copy .cover-title{font:400 18px var(--body);margin:24px 0 10px}
.layout-fran .fran-cover-copy .cover-description{margin:auto;font-size:12px;line-height:1.8;max-width:380px}
.layout-fran h2{font-size:clamp(38px,5vw,64px);font-weight:400;line-height:1.25}
.layout-fran .section:not(.section-cover){padding-block:90px}
.layout-fran .section-countdown{background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 9%,var(--paper)),var(--paper));border-block:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}
.layout-fran .countdown{gap:16px;flex-wrap:wrap}
.layout-fran .countdown div{min-width:95px;padding:20px 12px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:50px 50px 12px 12px}
.layout-fran .countdown strong{font-family:var(--body);font-weight:400;font-size:36px;color:var(--accent)}
.layout-fran .button{border-radius:32px;letter-spacing:1px}
.layout-fran .locations article{border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:22px;padding:35px 28px;background:color-mix(in srgb,var(--accent) 6%,var(--paper))}
.layout-fran .locations h3{font:400 21px var(--body);line-height:1.5}
.layout-fran .ornament,.layout-fran .botanical{color:var(--accent)}
.layout-fran .section-closing .botanical{font-size:0}.layout-fran .section-closing .botanical:after{content:'✧';font-size:40px}
.layout-fran .signature{font-family:var(--heading);font-size:64px;font-weight:400}
.layout-fran .rsvp-form{border-radius:20px}.layout-fran .rsvp-form input,.layout-fran .rsvp-form select,.layout-fran .rsvp-form textarea{border-radius:9px}
.layout-fran .gallery img{border-radius:14px}.layout-fran .gallery a{border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);padding:7px;border-radius:20px}
.layout-fran .layout-scroll{color:var(--card-ink);border:1px solid var(--card-accent);border-radius:50%;width:42px;height:42px;line-height:36px;background:color-mix(in srgb,var(--card-paper) 55%,transparent)}
@media(min-width:850px){.layout-fran .section-cover{min-height:900px}.fran-cover-photo{object-position:center 48%}.fran-cover-copy{padding:0 0 0 5%;max-width:none;text-align:left}.layout-fran .fran-cover-copy .cover-description{margin:0;max-width:350px}.fran-cover-copy>*{max-width:46%}.layout-fran .section-cover:after{background:linear-gradient(90deg,color-mix(in srgb,var(--card-paper) 90%,transparent),color-mix(in srgb,var(--card-paper) 55%,transparent) 45%,transparent)}}
@media(max-width:600px){.layout-fran .section-cover{padding:38px 20px 75px;min-height:max(740px,100svh)}.layout-fran .fran-cover-copy .cover-title{font-size:14px;margin-top:18px}.layout-fran .section:not(.section-cover){padding-block:65px}.layout-fran .countdown{gap:8px}.layout-fran .countdown div{min-width:62px;padding:18px 9px}.layout-fran .countdown strong{font-size:28px}.layout-fran .countdown span{font-size:8px}}

.layout-fran .section-closing>.botanical{background:none;width:auto;height:auto}

