/* Full August document: spacious, alternating editorial blocks on every requested page. */
.document-page{background:var(--paper,#faf7f3);color:var(--ink,#24191d)}
.document-hero{position:relative}
.document-hero-image{height:65vh;min-height:340px;max-height:760px;overflow:hidden}
.document-hero-image img{width:100%;height:100%;object-fit:cover}
.document-hero-copy{padding-top:5rem;padding-bottom:5rem;text-align:center;max-width:970px}
.document-hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.25rem,4.7vw,4.7rem);line-height:1.1;margin:1rem 0 2rem;overflow-wrap:break-word}
.document-hero-copy .content-body{max-width:740px;margin:0 auto 2rem}
.document-home .document-hero{min-height:100svh;display:flex;align-items:flex-end;background:#24191d;color:#fff}
.document-home .document-hero-image{position:absolute;inset:0;height:100%;max-height:none}
.document-home .document-hero-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,10,15,.25),rgba(20,10,15,.12) 30%,rgba(20,10,15,.78))}
.document-home .document-hero-copy{position:relative;z-index:1;text-align:left;max-width:1180px;width:100%;padding-top:8rem;padding-bottom:5rem}
.document-home .document-hero h1{max-width:1000px;font-size:clamp(2.1rem,4.2vw,4.4rem)}
.document-home .document-hero-copy .content-body{margin-left:0}
.document-home .document-hero .lbl,.document-home .document-hero .content-body p{color:#fff}
.document-section{padding:6rem 0;background:#fff}
.document-soft{background:var(--paper,#faf7f3)}
.document-layout{max-width:850px;margin:auto}
.document-copy{min-width:0}
.document-copy .h2{font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.16;margin-bottom:1.6rem;overflow-wrap:break-word}
.document-copy .content-body{margin-bottom:2rem}
.document-copy .lbl{margin-bottom:1.4rem}
.document-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5rem;align-items:center;max-width:none}
.document-reverse .document-copy{order:2}
.document-image{min-width:0}
.document-image img{width:100%;height:650px;object-fit:cover}
.document-trouwalbum .document-image img{height:auto;max-height:680px;object-fit:contain}
.document-section .content-body p,.document-hero .content-body p{line-height:1.9}
.document-section blockquote,.document-hero blockquote,.document-section .pull{font-family:var(--serif);font-size:1.8rem;line-height:1.45;margin:2rem 0;color:#7b354b}
/* Rich-text editing can wrap a quote in paragraphs; retain the quote typography. */
.document-page .content-body blockquote p{font:inherit;color:inherit;line-height:inherit}
/* Keep the rule beside the text, including in centered introductory quotes. */
.document-hero blockquote,.document-section blockquote{width:fit-content;max-width:100%;text-align:left}
.document-page:not(.document-home) .document-hero blockquote,.document-final .document-layout:not(.document-split) blockquote,.document-price blockquote,.document-quote blockquote{margin-left:auto;margin-right:auto}
.document-section blockquote+blockquote,.document-hero blockquote+blockquote{margin-top:-1.5rem}
.document-final{text-align:center;padding:8rem 0}
.document-final .document-layout{max-width:1000px}
.document-final .document-split{text-align:left;max-width:none}
.document-price{text-align:center}
.document-price .h2{font-size:clamp(3.5rem,7vw,7rem);color:#7b354b}
.document-list{padding-left:1.4rem}.document-list li{margin:.65rem 0}
.document-price .editorial-list{list-style:none;padding:0}
.document-facts{columns:2;column-gap:4rem;text-align:left}
.document-facts h3{font-family:var(--serif);font-size:1.8rem;margin:1.5rem 0 .5rem;break-after:avoid}
.document-facts h3:first-child{margin-top:0}
.document-facts p{break-inside:avoid}
.document-quote{text-align:center}.document-quote blockquote{font-size:clamp(1.5rem,2.4vw,2.3rem)}
.document-section .wedding-stories-grid{margin:3rem 0}
.document-section .wedding-story p{line-height:1.8;margin:1rem 0}
.document-section .wedding-story .lbl{margin-top:1.5rem}
.document-page .editorial-note{font-size:.85rem}
.document-contact-form{max-width:850px;margin:3rem auto 0;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;text-align:left}
.document-contact-form label{display:flex;flex-direction:column;gap:.6rem;line-height:1.5}
.document-contact-form input,.document-contact-form textarea{width:100%;background:#fff;border:1px solid #b8a6ac;padding:.9rem;font:inherit;color:var(--ink)}
.document-contact-form textarea{min-height:180px;resize:vertical}
.document-contact-form .full{grid-column:1/-1}
.document-contact-form button{justify-self:start;cursor:pointer}
.document-contact-form .field-validation-error,.validation-summary-errors{color:#8a1838}
.document-contact-form .trap{display:none}
.contact-result{max-width:850px;margin:2rem auto;padding:1.5rem;border:1px solid #7b354b}
/* Sections selected in the October background notes. */
.document-dark,.site-footer{background:#181618;color:#faf7f3;--muted:#d5cdd0;--border:rgba(255,255,255,.2)}
.document-dark .h2,.document-dark h3,.site-footer .h2,.site-footer .ft-callout h2{color:#faf7f3}
.document-dark .content-body,.document-dark p,.document-dark li{color:#d5cdd0}
.document-dark .content-body h2,.document-dark .content-body h3{color:#faf7f3}
.document-dark .content-body a{color:#e8b4bf;border-color:currentColor}
.document-dark .lbl,.document-dark .lnk,.document-dark blockquote,.document-dark .pull,.site-footer .lbl,.site-footer h5,.site-footer .h2 em{color:#e8b4bf}
.document-dark .btn-outline{color:#faf7f3;border-color:#bcaeb3}
.document-dark .btn-outline:hover{background:#faf7f3;color:#181618}
.site-footer .ft-brand p,.site-footer .ft-col a,.site-footer .ft-col span,.site-footer .ft-bottom,.site-footer .ft-bottom a,.site-footer .ft-callout p{color:#d5cdd0}
.site-footer .ft-col a:hover,.site-footer .ft-bottom a:hover{color:#fff}
.site-footer .ft-callout,.site-footer .ft-bottom{border-color:rgba(255,255,255,.2)}
.site-footer .ft-award img[src$="masters-award-winner-round.png"]{height:90px;width:90px}
/* Size the short callout to its available width, including narrow phones. */
.ft-callout{container-type:inline-size}
.site-footer .ft-callout h2{font-size:clamp(1rem,5.2vw,4rem);font-size:min(4rem,6.3cqw);white-space:nowrap}
@media(max-width:800px){.document-hero{padding-top:75px}.document-hero-image{height:48vh;min-height:280px}.document-hero-copy{padding-top:3rem;padding-bottom:3rem}.document-section{padding:3.5rem 0}.document-split{grid-template-columns:1fr;gap:2.5rem}.document-reverse .document-copy{order:0}.document-image img{height:440px}.document-facts{columns:1}.document-final{padding:5rem 0}.document-contact-form{grid-template-columns:1fr}.document-contact-form .full{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.document-page *{scroll-behavior:auto;transition:none}}
