.bd-page{--birthday-accent:#8b6751}
.bd-page.bd-isabelle{--birthday-accent:#8c4555}
.bd-page.bd-wolney{--birthday-accent:#8a7445}
.bd-page .eyebrow{color:var(--birthday-accent)}
.bd-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;font-size:11px;color:#596d73;padding-top:30px;line-height:1.8}
.bd-breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.bd-intro{padding:45px 0 0}
.bd-intro-copy{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:end;margin-bottom:42px}
.bd-intro-copy h1{margin:0;font-size:clamp(48px,5.3vw,76px)}
.bd-intro-copy p{max-width:375px;font-size:15px;line-height:1.9;margin-bottom:24px}
.bd-intro-copy .text-link{font-size:13px}
.bd-venue-hero{position:relative}
.bd-venue-hero img{width:100%;height:480px;object-fit:cover;object-position:50% 55%}
.bd-venue-hero figcaption{position:absolute;left:22px;bottom:22px;padding:12px 15px;background:#f5f0e8f2;font-size:9px;letter-spacing:1.4px;color:#123f54}
.bd-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:48px}
.bd-story-card{min-width:0;display:flex;flex-direction:column}
.bd-story-image{display:block;position:relative;background:#e6dfd2;overflow:hidden}
.bd-story-image img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 45%;transition:transform .5s}
.bd-story-image:hover img{transform:scale(1.015)}
.bd-photo-tag{position:absolute;bottom:16px;left:16px;background:#f5f0e8f2;padding:9px 12px;font-size:9px;letter-spacing:1.5px}
.bd-story-heading{display:flex;gap:20px;align-items:center;margin:25px 0 14px}
.bd-index{font-size:10px;color:#877762;align-self:flex-start;padding-top:13px}
.bd-story-heading h3{font-size:clamp(29px,3vw,43px);letter-spacing:-1px;margin:0}
.bd-story-heading h3 em{font-weight:400;white-space:nowrap}
.bd-story-card p{font-size:14px;line-height:1.85;max-width:470px;margin-bottom:20px}
.bd-story-card .text-link{display:flex;justify-content:space-between;font-size:13px;margin-top:auto}
.bd-experience{border-block:1px solid #d2d5cc;background:#eee9df}
.bd-experience-grid{display:grid;grid-template-columns:1fr .88fr;align-items:center;gap:110px}
.bd-experience figure img{width:100%;max-height:610px;object-fit:cover;object-position:50% 45%}
.bd-experience figcaption,.bd-album-hero figcaption{font-size:11px;color:#637378;line-height:1.6;margin-top:13px}
.bd-album-hero{padding:50px 0 65px}
.bd-album-hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:center}
.bd-album-hero h1{font-size:clamp(65px,6.8vw,100px);margin-bottom:30px}
.bd-album-intro{max-width:450px;font-size:16px;line-height:1.95}
.bd-album-meta{display:flex;flex-wrap:wrap;gap:13px 24px;margin:30px 0;font-size:9px;letter-spacing:1.4px;color:var(--birthday-accent);padding-block:19px;border-block:1px solid #cec9bc}
.bd-album-hero .text-link{font-size:13px}
.bd-album-hero figure img{width:100%;height:auto;max-height:660px;object-fit:contain}
.bd-album-description{padding:55px 0;background:#eee9df;border-block:1px solid #d2d5cc;text-align:center}
.bd-album-description h2{font-size:clamp(33px,3.4vw,48px);margin:0 auto 22px;max-width:850px}
.bd-album-description p{font-size:15px;line-height:1.9;max-width:680px;margin:0 auto}
.bd-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:38px}
.bd-gallery-heading h2{margin:0}
.bd-gallery-heading p{font-size:12px;margin-bottom:5px}
.bd-gallery{columns:3;column-gap:25px}
.bd-gallery-item{display:inline-block;width:100%;break-inside:avoid;padding-bottom:32px}
.bd-gallery-link{display:block;position:relative;background:#e1d9ce;cursor:zoom-in}
.bd-gallery-link img{width:100%;height:auto}
.bd-zoom{position:absolute;right:10px;bottom:10px;background:#f5f0e8e8;color:#123f54;border-radius:50%;height:32px;width:32px;display:grid;place-items:center;font-size:21px;line-height:1}
.bd-gallery-item figcaption{display:flex;gap:13px;font-size:11px;line-height:1.65;color:#596b70;margin-top:13px}
.bd-gallery-item figcaption>span{flex-shrink:0;color:var(--birthday-accent);font-size:9px;margin-top:2px}
.bd-back{margin-top:24px;font-size:12px}
.bd-other{padding:50px 0;background:#e9e2d6;border-block:1px solid #c7cec8}
.bd-other .wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}
.bd-other h2{margin:0;font-size:42px}
.bd-other .text-link{font-size:13px;white-space:nowrap}
.bd-page :is(a,button):focus-visible{outline:3px solid #be8a3e;outline-offset:5px}
.bd-lightbox{padding:0;border:0;background:#142d31;color:#f5f0e8;width:min(1200px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);overflow:auto}
.bd-lightbox::backdrop{background:rgba(4,16,20,.92)}
.bd-lightbox[open]{display:flex;flex-direction:column}
.bd-lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 22px;font-size:13px;flex-shrink:0;border-bottom:1px solid #516165}
.bd-lightbox button{background:transparent;color:inherit;border:1px solid #627271;cursor:pointer;font:12px var(--sans);min-height:42px;padding:8px 14px;display:flex;align-items:center;justify-content:center;gap:15px}
.bd-lightbox button:hover{background:#2c4549}
.bd-lightbox-bar button{border:0}
.bd-lightbox-bar button>span{font-size:26px;line-height:1}
.bd-lightbox figure{margin:0;padding:15px 22px 8px;min-height:0}
.bd-lightbox img{width:100%;height:min(72dvh,850px);object-fit:contain}
.bd-lightbox figcaption{font-size:12px;text-align:center;line-height:1.6;padding-top:12px;color:#edf0e9}
.bd-lightbox-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding:10px 22px 18px;flex-shrink:0}
.bd-lightbox-controls [data-gallery-count]{font-size:12px;min-width:44px;text-align:center;font-variant-numeric:tabular-nums}
html.bd-gallery-open{overflow:hidden}
@media(max-width:1100px){.bd-intro-copy{gap:35px;grid-template-columns:1.2fr 1fr}.bd-story-grid{gap:35px}.bd-album-hero-grid,.bd-experience-grid{gap:55px}.bd-venue-hero img{height:410px}.bd-story-heading{gap:13px}.bd-story-heading h3{font-size:33px}.bd-album-hero h1{font-size:75px}.bd-gallery{column-gap:20px}}
@media(max-width:760px){
 .bd-breadcrumb{padding-top:22px;font-size:10px;gap:6px}
 .bd-intro{padding-top:32px}.bd-intro-copy{grid-template-columns:1fr;gap:23px;margin-bottom:30px}.bd-intro-copy h1{font-size:45px}.bd-intro-copy p{font-size:14px;margin-bottom:18px;max-width:none}
 .bd-venue-hero img{height:300px;object-position:50% 55%}.bd-venue-hero figcaption{font-size:7px;letter-spacing:.8px;left:12px;bottom:12px;padding:9px 10px}
 .bd-story-grid{grid-template-columns:1fr;gap:45px;margin-top:30px}.bd-story-heading{margin-top:21px}.bd-story-heading h3{font-size:35px}.bd-story-card p{font-size:14px}.bd-story-card .text-link{font-size:12px}
 .bd-experience-grid,.bd-album-hero-grid{grid-template-columns:1fr;gap:30px}.bd-experience figure img{max-height:none;height:auto}.bd-experience figcaption{font-size:10px}
 .bd-album-hero{padding:32px 0 45px}.bd-album-hero h1{font-size:66px;margin-bottom:23px}.bd-album-intro{font-size:14px;line-height:1.9}.bd-album-meta{margin:23px 0;font-size:8px;gap:10px 18px}.bd-album-hero figure img{max-height:none}.bd-album-hero figcaption{font-size:10px}
 .bd-album-description{padding:40px 0;text-align:left}.bd-album-description h2{font-size:34px}.bd-album-description p{font-size:14px}
 .bd-gallery-heading{display:block;margin-bottom:28px}.bd-gallery-heading p{margin-top:18px}.bd-gallery{columns:2;column-gap:16px}.bd-gallery-item{padding-bottom:23px}.bd-gallery-item figcaption{font-size:10px;gap:8px}.bd-zoom{width:28px;height:28px;right:7px;bottom:7px;font-size:19px}
 .bd-other{padding:38px 0}.bd-other .wrap{display:block}.bd-other h2{font-size:35px;margin-bottom:25px}.bd-other .text-link{font-size:12px}
 .bd-lightbox{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.bd-lightbox-bar{padding:10px 12px;font-size:12px;gap:8px}.bd-lightbox figure{padding:12px 10px 5px}.bd-lightbox img{height:min(65dvh,750px)}.bd-lightbox figcaption{font-size:11px;padding-inline:5px}.bd-lightbox-controls{padding:10px 12px 16px;gap:17px}.bd-lightbox button{padding-inline:12px;gap:10px}
}
@media(max-width:420px){.bd-gallery{columns:1}.bd-gallery-item{padding-bottom:28px}.bd-gallery-item figcaption{font-size:11px}.bd-intro-copy h1{font-size:41px}.bd-story-heading h3{font-size:32px}.bd-photo-tag{font-size:8px}.bd-album-meta{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.bd-story-image img{transition:none}}
