body.family-jasmine{background:#f3eee4;color:#213d31;font-family:Manrope,Arial,sans-serif}
.family-jasmine .jasmine-page{position:relative;isolation:isolate;max-width:1080px;margin:auto;padding:64px clamp(30px,13vw,170px) 40px;text-align:center;background:#f3eee4}
.jasmine-page:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url("/static/images/invitation-art/jasmine-border-fine-v2.128a8cf0ced8.png"),url("/static/images/invitation-art/jasmine-vine-joins.9f53d15eeacc.svg?v=3");background-position:top center;background-size:100% auto;background-repeat:repeat-y;mask-image:linear-gradient(to bottom,transparent,#000 32px,#000 calc(100% - 64px),transparent 100%)}
.family-jasmine .jasmine-page h1,.family-jasmine .jasmine-page h2,.family-jasmine .jasmine-page h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;color:#213d31;line-height:1.15;letter-spacing:-.025em}
.family-jasmine .jasmine-page h1{font-size:clamp(44px,7vw,88px);margin:24px 0;text-wrap:balance;overflow-wrap:anywhere}
.family-jasmine .jasmine-page h2{font-size:clamp(30px,4vw,42px);margin:0 0 20px;text-wrap:balance}
.family-jasmine .jasmine-page h3{font-size:28px;margin:18px 0}
.family-jasmine .jasmine-page p{font-size:18px!important;line-height:1.75;margin:10px 0}
.family-jasmine .jasmine-page .jasmine-caption{font-size:16px!important;text-transform:uppercase;letter-spacing:.12em;line-height:1.7}
.family-jasmine .jasmine-page .jasmine-date{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(30px,4vw,46px)!important}
.jasmine-page>section{margin:0;padding:34px 0;position:relative}
.jasmine-details-copy{max-width:560px;margin:0 auto;text-align:left;overflow-wrap:anywhere}
.family-jasmine .jasmine-details-copy p{margin:0 0 18px}
.jasmine-page>.jasmine-hero{padding:0 0 30px}
.jasmine-photo{width:100%;aspect-ratio:1.8;object-fit:cover;margin:28px 0 0}
.jasmine-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.jasmine-gallery img{aspect-ratio:1;object-fit:cover}
.jasmine-page>.jasmine-letter:has(+.jasmine-gallery-section){padding-bottom:0}
.jasmine-page>.jasmine-gallery-section{padding-top:12px}
.jasmine-gallery-section .jasmine-gallery{margin-top:0}
.jasmine-letter .jasmine-photo{display:block;box-sizing:border-box;width:auto;max-width:100%;height:auto;max-height:640px;aspect-ratio:auto;object-fit:contain;margin:32px auto 0;padding:7px;background:#fffaf1;border:1px solid #b6b99e;border-radius:4px;box-shadow:0 12px 32px #213d3112}
.jasmine-letter .jasmine-gallery{display:block;margin-top:32px}
.jasmine-letter .jasmine-gallery .jasmine-photo{margin-top:0}
.jasmine-rule{height:1px;width:44px;background:#a2a88d;margin:26px auto}
.jasmine-clock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.jasmine-clock strong{display:block;font:500 clamp(28px,4vw,44px)/1.3 'Cormorant Garamond',Georgia,serif!important}
.jasmine-clock span{font:400 16px/1.7 Manrope,Arial,sans-serif!important}
.jasmine-schedule{list-style:none;margin:26px auto 0;padding:0;max-width:520px;text-align:left}
.jasmine-schedule li{display:grid;grid-template-columns:72px 1fr;gap:22px;padding:14px 0;font-size:18px}
.jasmine-schedule li span{border-left:1px solid #9aa990;padding-left:22px;line-height:1.7}
.jasmine-palette{display:flex;justify-content:center;gap:16px;margin:24px 0}.jasmine-palette i{width:52px;height:52px;border-radius:50%;border:1px solid #213d3130}
.family-jasmine .jasmine-page .invitation-rsvp{background:transparent;padding:36px 0;text-align:center}
.family-jasmine .jasmine-page .invitation-rsvp h2{font-size:36px}
.family-jasmine .jasmine-page .invitation-rsvp>p{width:min(100%,720px);margin:10px auto;text-align:center}
.family-jasmine .jasmine-page .invitation-rsvp>.rsvp-disclosure{width:min(100%,720px);margin:34px auto 0;text-align:center}
.family-jasmine .section-emotion,.family-jasmine .invitation-cursor-glow,.family-jasmine .invitation-cursor-spark,.family-jasmine .invitation-emotion,.family-jasmine .emotion-illustration,.family-jasmine .invitation-rsvp-mark{display:none!important}
.family-jasmine button,.family-jasmine .jasmine-map{min-height:48px;border-radius:28px;padding:14px 26px;font-size:17px!important}
.family-jasmine .jasmine-page :is(label,input,select,textarea,button,small){font-size:17px!important;line-height:1.5}
.family-jasmine .jasmine-page>.jasmine-closing{padding:48px 0 0;background:transparent;color:#213d31}
.family-jasmine .jasmine-closing .invitation-credit{width:100%;margin:64px 0 0;padding:0;border:0;background:transparent;opacity:1}
.family-jasmine .jasmine-closing .jasmine-credit{display:inline-block;margin:0;font:400 14px/1.7 Manrope,Arial,sans-serif!important;color:#526456!important;opacity:1;text-decoration:none}
.jasmine-gate{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:32px;background:#f3eee4;text-align:center}.jasmine-gate[hidden]{display:none}.jasmine-gate h1{font-size:clamp(32px,6vw,64px);overflow-wrap:anywhere}.jasmine-gate button{background:#234b3e;color:#fff;border:0}
.family-jasmine :is(a,button,input,select,textarea):focus-visible{outline:3px solid #8b7944;outline-offset:4px}
@media(max-width:600px){.family-jasmine .jasmine-page{padding:40px 28px 32px}.jasmine-page:before{opacity:.45}.jasmine-page>section{padding:26px 0}.jasmine-clock{gap:4px}.jasmine-clock span{font-size:16px!important}.jasmine-gallery{gap:8px}}
@media(prefers-reduced-motion:no-preference){.jasmine-reveal.is-waiting>*{opacity:0;transform:translateY(16px)}.jasmine-reveal>*{transition:opacity .65s ease,transform .65s ease}.jasmine-reveal>*:nth-child(2){transition-delay:.1s}.jasmine-reveal>*:nth-child(3){transition-delay:.2s}}
@media(prefers-reduced-motion:reduce){.family-jasmine *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.jasmine-venue .jasmine-photo{display:block;width:100%;height:auto;aspect-ratio:auto;max-height:560px;object-fit:contain;margin:24px auto 0;padding:7px;background:#fffaf1;border:1px solid #b6b99e;border-radius:120px 120px 8px 8px;box-shadow:0 12px 32px #213d3112}
.jasmine-venue .jasmine-map{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:16px;padding:10px 24px;border:1px solid #78866b;border-radius:28px;color:#213d31;font:500 17px/1.5 Manrope,Arial,sans-serif;background:#eeeada}
.jasmine-venue .jasmine-map:focus-visible{outline:3px solid #78866b;outline-offset:4px}

/* Translucent paper keeps the vines quiet behind the personal invitation. */
.jasmine-letter-copy{position:relative;margin:0 -12px;padding:24px 12px;background:rgba(255,250,241,.86);border:1px solid rgba(182,185,158,.28);border-radius:16px;box-shadow:0 8px 24px #213d3106}
.family-jasmine .jasmine-letter-copy p:last-child{margin-bottom:0}
@media(min-width:601px){.jasmine-letter-copy{padding:30px 28px;margin:0 -28px}}
