/* Illustrated collection — opt-in only. Names and date remain live HTML.
   No rule in this sheet reads --wedding-cover or displays a couple photograph. */
.wedding-body.w-illustrated[class]{--il-line:color-mix(in srgb,var(--theme-ink) 23%,transparent);--il-wash:color-mix(in srgb,var(--illustrated-secondary) 12%,var(--theme-paper));font-family:var(--illustrated-body-font,Montserrat),sans-serif;color:var(--theme-ink);background:var(--theme-paper)}
.wedding-body.w-illustrated[class] .wedding-hero.illustrated-hero{position:relative;display:flex;align-items:center;justify-content:flex-start;isolation:isolate;overflow:hidden;width:100%;max-width:none;min-height:740px;height:auto;margin:0;padding:95px clamp(34px,8vw,150px);border:0;border-radius:0;outline:0;box-shadow:none;gap:0;grid-template:none;background:var(--theme-paper);color:var(--theme-ink)}
.wedding-body.w-illustrated[class] .illustrated-hero::before,.wedding-body.w-illustrated[class] .illustrated-hero::after{content:none}
.wedding-body.w-illustrated[class] .illustrated-scene{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.wedding-body.w-illustrated[class] .illustrated-scene>span{display:block;position:absolute;pointer-events:none}
.wedding-body.w-illustrated[class] .illustrated-artwork{inset:0;background-image:var(--illustrated-art,none);background-size:cover;background-repeat:no-repeat;background-position:center}
.wedding-body.w-illustrated[class] .illustrated-halo{inset:0;background:linear-gradient(90deg,var(--theme-paper),color-mix(in srgb,var(--theme-paper) 88%,transparent) 30%,transparent 61%)}
.wedding-body.w-illustrated[class] .illustrated-rule{display:none}
.wedding-body.w-illustrated[class] .wedding-hero-content.illustrated-copy{position:relative;inset:auto;display:block;z-index:2;width:51%;max-width:720px;min-width:0;padding:15px 0;margin:0;border:0;border-radius:0;outline:0;box-shadow:none;backdrop-filter:none;background:none;color:var(--theme-ink);text-align:left;transform:none;grid-area:auto}
.wedding-body.w-illustrated[class] .illustrated-copy::before,.wedding-body.w-illustrated[class] .illustrated-copy::after{content:none}
.wedding-body.w-illustrated[class] .illustrated-copy>span{display:block;max-width:100%;margin:0 0 28px;font:500 11px/1.8 var(--illustrated-body-font,Montserrat),sans-serif;letter-spacing:.2em;text-transform:uppercase;color:inherit;opacity:1}
.wedding-body.w-illustrated[class] .illustrated-copy h1{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;justify-content:center;gap:0;width:100%;max-width:100%;margin:0 0 34px;padding:0;font-family:var(--name-font,var(--w-font));font-style:var(--name-style,normal);font-weight:400;font-size:clamp(64px,7.2vw,122px);line-height:1.08;letter-spacing:-.025em;text-align:inherit;color:inherit;text-shadow:none;white-space:normal;transform:none}
.wedding-body.w-illustrated[class] .illustrated-copy h1>span{display:block;flex:0 1 auto;width:auto;max-width:100%;margin:0;padding:0;font:inherit;letter-spacing:inherit;color:inherit;text-transform:none;white-space:normal;overflow-wrap:normal;word-break:normal;text-wrap:balance}
.wedding-body.w-illustrated[class] .illustrated-copy h1>em{display:block;flex:0 0 auto;width:auto;margin:.04em 0 .08em;font:italic .4em/1.1 'Cormorant Garamond',Georgia,serif;color:var(--theme-accent)}
.wedding-body.w-illustrated[class] .illustrated-copy>p{max-width:100%;margin:0 0 29px;font:500 12px/1.9 var(--illustrated-body-font,Montserrat),sans-serif;letter-spacing:.07em;text-transform:none;color:inherit;text-wrap:balance}
.wedding-body.w-illustrated[class] .illustrated-copy>p:empty{display:none}
.wedding-body.w-illustrated[class] .illustrated-copy>.button{position:relative;inset:auto;display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;max-width:100%;margin:0;padding:13px 23px;font:600 12px/1.5 var(--illustrated-body-font,Montserrat),sans-serif;letter-spacing:.025em;white-space:normal;text-transform:none;color:var(--theme-paper);background:var(--theme-ink);border:1px solid var(--theme-ink);border-radius:0;box-shadow:none;transition:background-color .2s,color .2s;transform:none}
.wedding-body.w-illustrated[class] .illustrated-copy>.button:hover{color:var(--theme-ink);background:var(--theme-paper)}
.wedding-body.w-illustrated[class] .illustrated-copy>.button:focus-visible{outline:2px solid var(--theme-ink);outline-offset:6px}
.wedding-body.w-illustrated[class] .illustrated-button-arrow{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
/* Geometry: saturated poster and quiet mid-century arches. */
.wedding-body.w-illustrated.illustrated-family-geometry[class] .illustrated-halo{display:none}
.wedding-body.w-illustrated.illustrated-family-geometry[class] .illustrated-copy h1{font-size:clamp(68px,7.6vw,126px);font-weight:500;line-height:1.02;letter-spacing:-.065em}
.wedding-body.w-illustrated.illustrated-composition-bold[class] .illustrated-copy{border-left:5px solid var(--illustrated-secondary);padding-left:30px}
.wedding-body.w-illustrated.illustrated-composition-bold[class] .illustrated-copy h1>em{font-family:var(--name-font);font-style:normal;font-size:.32em;color:var(--illustrated-secondary);margin:.25em 0}
.wedding-body.w-illustrated.illustrated-composition-bold[class] .illustrated-copy>.button{background:var(--theme-accent);border-color:var(--theme-accent);color:#fff;border-radius:5px}
.wedding-body.w-illustrated.illustrated-composition-warm[class] .illustrated-copy{width:48%;text-align:center;padding-block:45px}
.wedding-body.w-illustrated.illustrated-composition-warm[class] .illustrated-copy h1{align-items:center;font-weight:400;letter-spacing:-.045em}
.wedding-body.w-illustrated.illustrated-composition-warm[class] .illustrated-copy>.button{border-radius:40px;background:transparent;color:var(--theme-ink)}
/* Landscapes: open skies and a low, panoramic horizon. */
.wedding-body.w-illustrated.illustrated-family-landscape[class] .illustrated-hero{min-height:800px;align-items:flex-start;padding-top:95px;padding-bottom:190px}
.wedding-body.w-illustrated.illustrated-family-landscape[class] .illustrated-copy{width:55%}
.wedding-body.w-illustrated.illustrated-family-landscape[class] .illustrated-copy h1{font-size:clamp(62px,6.8vw,110px);line-height:1.2;letter-spacing:-.03em}
.wedding-body.w-illustrated.illustrated-family-landscape[class] .illustrated-copy>.button{background:transparent;color:var(--theme-ink);border-radius:40px}
.wedding-body.w-illustrated.illustrated-composition-horizon[class] .illustrated-artwork{background-position:center bottom}
.wedding-body.w-illustrated.illustrated-composition-sea[class] .illustrated-hero{justify-content:center;align-items:flex-start;padding-top:75px;min-height:840px}
.wedding-body.w-illustrated.illustrated-composition-sea[class] .illustrated-copy{width:66%;text-align:center}
.wedding-body.w-illustrated.illustrated-composition-sea[class] .illustrated-copy h1{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.16em;line-height:1.3}
.wedding-body.w-illustrated.illustrated-composition-sea[class] .illustrated-halo{background:linear-gradient(180deg,color-mix(in srgb,var(--theme-paper) 65%,transparent),transparent 65%)}
/* Botanical: a lavender invitation and a generous herbarium sheet. */
.wedding-body.w-illustrated.illustrated-family-botanical[class] .illustrated-copy{text-align:center;width:49%}
.wedding-body.w-illustrated.illustrated-family-botanical[class] .illustrated-copy h1{align-items:center;font-size:clamp(60px,6.4vw,106px);letter-spacing:-.035em}
.wedding-body.w-illustrated.illustrated-composition-lavender[class] .illustrated-rule{display:block;inset:27px;border:1px solid var(--il-line)}
.wedding-body.w-illustrated.illustrated-composition-lavender[class] .illustrated-copy>.button{background:transparent;color:var(--theme-ink);border-radius:50px}
.wedding-body.w-illustrated.illustrated-composition-herbarium[class] .illustrated-copy{width:48%;text-align:left;padding:30px 0 30px 28px;border-left:1px solid var(--theme-accent)}
.wedding-body.w-illustrated.illustrated-composition-herbarium[class] .illustrated-copy h1{align-items:flex-start;font-size:clamp(58px,6.8vw,112px);letter-spacing:.015em}
.wedding-body.w-illustrated.illustrated-composition-herbarium[class] .illustrated-copy>span{max-width:230px;letter-spacing:.3em}
/* Floral: sweeping calligraphy and the stillness of a magnolia branch. */
.wedding-body.w-illustrated.illustrated-family-floral[class] .illustrated-copy{width:53%;text-align:center}
.wedding-body.w-illustrated.illustrated-family-floral[class] .illustrated-copy h1{align-items:center;font-size:clamp(60px,6.9vw,120px);line-height:1.2;letter-spacing:-.04em}
.wedding-body.w-illustrated.illustrated-family-floral[class] .illustrated-copy>.button{border-radius:40px;background:transparent;color:var(--theme-ink)}
.wedding-body.w-illustrated.illustrated-composition-petal[class] .illustrated-copy h1>em{font-size:.32em;margin:-.05em 0 -.02em}
.wedding-body.w-illustrated.illustrated-composition-magnolia[class] .illustrated-hero{min-height:820px;align-items:flex-end;padding-bottom:115px}
.wedding-body.w-illustrated.illustrated-composition-magnolia[class] .illustrated-copy{width:57%;text-align:left}
.wedding-body.w-illustrated.illustrated-composition-magnolia[class] .illustrated-copy h1{align-items:flex-start;font-size:clamp(76px,8.8vw,144px);line-height:1.08}
.wedding-body.w-illustrated.illustrated-composition-magnolia[class] .illustrated-copy>span{padding-left:22px;border-left:2px solid var(--theme-accent)}
/* Celestial: the artwork surrounds a deliberately empty, readable centre. */
.wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-hero{justify-content:center;min-height:800px;padding-block:95px}
.wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-halo{background:radial-gradient(ellipse at center,color-mix(in srgb,var(--theme-paper) 55%,transparent),transparent 69%)}
.wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-copy{width:78%;max-width:1020px;text-align:center}
.wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-copy h1{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.23em;font-size:clamp(62px,6.8vw,112px);letter-spacing:.02em;line-height:1.22}
.wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-copy h1>em{font-size:.38em}
.wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-copy>.button{color:var(--theme-ink);background:transparent;border-color:var(--theme-ink);border-radius:40px}
.wedding-body.w-illustrated.illustrated-composition-promises[class] .illustrated-copy>span{letter-spacing:.36em}
.wedding-body.w-illustrated.illustrated-composition-aurora[class] .illustrated-copy{max-width:850px}
.wedding-body.w-illustrated.illustrated-composition-aurora[class] .illustrated-copy h1{flex-direction:column;font-size:clamp(54px,5.8vw,94px);letter-spacing:.06em}
.wedding-body.w-illustrated.illustrated-composition-aurora[class] .illustrated-copy h1>em{font-size:.3em;margin:.2em 0}
/* Drawn threads: airy stationery with a single uninterrupted gesture. */
.wedding-body.w-illustrated.illustrated-family-thread[class] .illustrated-copy{width:54%;text-align:center}
.wedding-body.w-illustrated.illustrated-family-thread[class] .illustrated-copy h1{align-items:center;font-size:clamp(84px,9vw,150px);line-height:1.04;letter-spacing:-.035em}
.wedding-body.w-illustrated.illustrated-family-thread[class] .illustrated-copy>.button{color:var(--theme-ink);background:none;border:0;border-bottom:1px solid var(--theme-accent);padding-inline:0}
.wedding-body.w-illustrated.illustrated-composition-destiny[class] .illustrated-copy h1>em{font-size:.3em;margin:-.05em 0}
.wedding-body.w-illustrated.illustrated-composition-infinity[class] .illustrated-copy{text-align:left;padding-bottom:45px;border-bottom:1px solid var(--il-line)}
.wedding-body.w-illustrated.illustrated-composition-infinity[class] .illustrated-copy h1{align-items:flex-start;font-size:clamp(74px,7.8vw,132px);line-height:1.14}
/* Retro graphics are artwork, never imitation application controls. */
.wedding-body.w-illustrated.illustrated-family-retro[class] .illustrated-halo{display:none}
.wedding-body.w-illustrated.illustrated-family-retro[class] .illustrated-copy{width:51%}
.wedding-body.w-illustrated.illustrated-composition-pixels[class] .illustrated-copy h1{font-size:clamp(80px,9.3vw,156px);line-height:.94;letter-spacing:-.02em}
.wedding-body.w-illustrated.illustrated-composition-pixels[class] .illustrated-copy h1>em{font-family:var(--name-font);font-style:normal;font-size:.48em;margin:.15em 0;color:var(--theme-accent)}
.wedding-body.w-illustrated.illustrated-composition-pixels[class] .illustrated-copy>.button{box-shadow:5px 5px 0 var(--illustrated-secondary);border:2px solid var(--theme-ink)}
.wedding-body.w-illustrated.illustrated-composition-pixels[class] .illustrated-copy>span{letter-spacing:.12em}
.wedding-body.w-illustrated.illustrated-composition-windows[class] .illustrated-copy{width:50%;border-top:1px solid var(--il-line);border-bottom:1px solid var(--il-line);padding-block:35px}
.wedding-body.w-illustrated.illustrated-composition-windows[class] .illustrated-copy h1{font-size:clamp(48px,5.4vw,88px);line-height:1.25;letter-spacing:-.065em}
.wedding-body.w-illustrated.illustrated-composition-windows[class] .illustrated-copy>.button{border-radius:30px}
/* Interior typography follows the collection while retaining all shared forms. */
.wedding-body.w-illustrated[class] :is(.wedding-nav a,.wedding-gallery-heading>p,.w-couple-copy>p,.w-venue-copy>p,.w-venue-copy dd,.gift-content>p,.wedding-gallery figcaption){font-family:var(--illustrated-body-font,Montserrat),sans-serif}
.wedding-body.w-illustrated.illustrated-family-geometry[class] .w-countdown{border-block-width:2px}
.wedding-body.w-illustrated.illustrated-family-retro[class] .w-countdown-grid strong{font-family:var(--name-font,var(--w-font))}
@media(max-width:1050px){
 .wedding-body.w-illustrated[class] .wedding-hero.illustrated-hero{padding-inline:5.5vw;min-height:700px}
 .wedding-body.w-illustrated[class] .wedding-hero-content.illustrated-copy{width:54%}
 .wedding-body.w-illustrated.illustrated-family-celestial[class] .wedding-hero-content.illustrated-copy{width:85%}
 .wedding-body.w-illustrated.illustrated-composition-sea[class] .wedding-hero-content.illustrated-copy{width:78%}
 .wedding-body.w-illustrated[class] .illustrated-copy h1{font-size:clamp(52px,7.6vw,82px)}
 .wedding-body.w-illustrated.illustrated-family-thread[class] .illustrated-copy h1,.wedding-body.w-illustrated.illustrated-composition-magnolia[class] .illustrated-copy h1{font-size:clamp(64px,9vw,110px)}
 .wedding-body.w-illustrated.illustrated-composition-windows[class] .illustrated-copy h1{font-size:clamp(42px,5.4vw,70px)}
}
@media(max-width:680px){
 .wedding-body.w-illustrated[class]{--illustrated-mobile-art-height:250px}
 .wedding-body.w-illustrated[class] .wedding-hero.illustrated-hero{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;min-height:690px;padding:58px 26px calc(var(--illustrated-mobile-art-height) + 30px)}
 .wedding-body.w-illustrated[class] .wedding-hero-content.illustrated-copy{width:100%;max-width:500px;padding:0;margin:0;text-align:center;border:0}
 .wedding-body.w-illustrated[class] .illustrated-copy>span{margin-bottom:23px;font-size:9px;letter-spacing:.17em;max-width:100%;padding:0;border:0}
 .wedding-body.w-illustrated[class] .illustrated-copy h1{align-items:center;justify-content:center;flex-direction:column;flex-wrap:nowrap;gap:0;font-size:clamp(48px,12.7vw,74px);line-height:1.14;letter-spacing:-.035em;margin-bottom:24px}
 .wedding-body.w-illustrated[class] .illustrated-copy h1>em{font-size:.4em;margin:.06em 0 .12em}
 .wedding-body.w-illustrated[class] .illustrated-copy>p{font-size:11px;line-height:1.85;letter-spacing:.03em;margin-bottom:24px}
 .wedding-body.w-illustrated[class] .illustrated-copy>.button{min-height:46px;font-size:11px;padding:12px 20px;gap:12px}
 .wedding-body.w-illustrated[class] .illustrated-artwork{inset:auto 0 0;width:100%;height:var(--illustrated-mobile-art-height);background-position:right bottom;background-size:cover;mask-image:linear-gradient(180deg,transparent,#000 24%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 24%)}
 .wedding-body.w-illustrated[class] .illustrated-halo{display:none}
 .wedding-body.w-illustrated[class] .illustrated-rule{inset:13px}
 .wedding-body.w-illustrated.illustrated-family-geometry[class] .illustrated-artwork,.wedding-body.w-illustrated.illustrated-family-retro[class] .illustrated-artwork{background-size:auto 100%;background-position:right bottom;mask-image:none;-webkit-mask-image:none}
 .wedding-body.w-illustrated.illustrated-family-geometry[class] .illustrated-copy h1{font-weight:500;font-size:clamp(54px,14vw,82px);line-height:1.04}
 .wedding-body.w-illustrated.illustrated-composition-bold[class] .illustrated-copy>span{padding-left:0}
 .wedding-body.w-illustrated.illustrated-family-landscape[class]{--illustrated-mobile-art-height:280px}
 .wedding-body.w-illustrated.illustrated-family-landscape[class] .illustrated-copy h1{line-height:1.25}
 .wedding-body.w-illustrated.illustrated-composition-sea[class] .illustrated-copy h1{flex-direction:column}
 .wedding-body.w-illustrated.illustrated-family-celestial[class] .wedding-hero.illustrated-hero{justify-content:center;min-height:720px;padding:85px 27px}
 .wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-artwork{inset:0;width:100%;height:100%;background-position:center;background-size:auto 100%;mask-image:none;-webkit-mask-image:none}
 .wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-halo{display:block;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--theme-paper) 70%,transparent),transparent 75%)}
 .wedding-body.w-illustrated.illustrated-family-celestial[class] .illustrated-copy h1{font-size:clamp(43px,11.6vw,64px);letter-spacing:.01em;line-height:1.2}
 .wedding-body.w-illustrated.illustrated-family-thread[class] .illustrated-copy h1,.wedding-body.w-illustrated.illustrated-composition-magnolia[class] .illustrated-copy h1{font-size:clamp(66px,17vw,100px);line-height:1.1}
 .wedding-body.w-illustrated.illustrated-composition-pixels[class] .illustrated-copy h1{font-size:clamp(68px,19vw,108px);line-height:1}
 .wedding-body.w-illustrated.illustrated-composition-windows[class] .illustrated-copy h1{font-size:clamp(38px,10.8vw,58px);line-height:1.3;letter-spacing:-.065em}
 .wedding-body.w-illustrated[class] .wedding-nav{min-height:70px;padding:8px 21px}
}
@media(prefers-reduced-motion:reduce){.wedding-body.w-illustrated[class] .illustrated-copy>.button{transition:none}}

/* Both hands belong to the composition; preserve the complete drawn scene. */
.wedding-body.w-illustrated.illustrated-composition-destiny[class] .illustrated-hero{justify-content:center}
.wedding-body.w-illustrated.illustrated-composition-destiny[class] .wedding-hero-content.illustrated-copy{width:76%;max-width:960px}
.wedding-body.w-illustrated.illustrated-composition-destiny[class] .illustrated-halo{background:radial-gradient(ellipse at center,color-mix(in srgb,var(--theme-paper) 35%,transparent),transparent 65%)}
@media(max-width:680px){
 .wedding-body.w-illustrated.illustrated-composition-destiny[class] .wedding-hero-content.illustrated-copy{width:100%}
 .wedding-body.w-illustrated.illustrated-family-thread[class] .illustrated-artwork{background-size:100% auto;background-position:center bottom;mask-image:none;-webkit-mask-image:none}
}
