/* Designer-led About. Scoped to its page; shared frame and booking remain intact. */
.dl-about { --about-paper:#f7f4ec; --about-black:#000; background:var(--about-paper); color:var(--dl-ink); overflow:clip; font-size:16px; }
.dl-about figure,.dl-about p,.dl-about h1,.dl-about h2,.dl-about blockquote { margin:0; }
.dl-about img { display:block; width:100%; height:auto; max-width:none; }
.dl-about h1,.dl-about h2,.dl-about .dla-quote { font-family:var(--dl-serif); font-weight:400; text-transform:none; letter-spacing:-.045em; }
.dl-about h1 { font-size:clamp(64px,7.4vw,112px); line-height:1.09; }
.dl-about h2 { font-size:clamp(36px,4vw,61px); line-height:1.15; }
.dl-about p:not(.dla-eyebrow):not(.dla-signature) { line-height:1.85; }
.dl-about .dla-eyebrow { font-size:11px; text-transform:uppercase; letter-spacing:.18em; font-weight:500; margin-bottom:25px; line-height:1.5; }
.dl-about .dla-link { display:inline-flex; gap:28px; align-items:center; min-height:46px; margin-top:30px; border-bottom:1px solid currentColor; font-size:11px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; transition:gap .25s; }
.dl-about .dla-link:hover { gap:38px; }
.dl-about a:focus-visible { outline:2px solid #bfa77d; outline-offset:5px; }
.dla-hero { position:relative; display:grid; grid-template-columns:49% 51%; min-height:760px; padding-bottom:100px; }
.dla-hero__copy { padding:85px 5% 90px 15%; align-self:center; position:relative; z-index:2; }
.dl-about .dla-hero__sub { margin-top:25px; }
.dl-about .dla-hero__intro { max-width:410px; margin-top:36px; font-size:14px; color:#625b52; }
.dl-about .dla-signature { margin-top:23px; font-size:12px; text-transform:uppercase; font-weight:600; letter-spacing:.06em; }
.dla-signature span { display:block; font-weight:400; text-transform:none; letter-spacing:0; margin-top:5px; }
.dl-about .dla-quote { font-size:clamp(23px,2.1vw,32px); line-height:1.45; max-width:470px; margin-top:36px; }
.dla-hero__portrait { position:absolute; inset:0 0 0 46%; overflow:hidden; }
.dla-hero__portrait img { height:100%; object-fit:cover; object-position:50% 23%; }
.dla-hero__portrait:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--about-paper),transparent 23%),linear-gradient(0deg,var(--about-paper),transparent 18%); pointer-events:none; }
.dla-origin { background:var(--about-black); color:var(--about-paper); position:relative; isolation:isolate; display:grid; grid-template-columns:53% 47%; align-items:center; min-height:790px; padding:0 7%; overflow:visible; scroll-margin-top:100px; }
.dla-origin__image { position:relative; margin:0!important; align-self:end; z-index:2; }
/* The supplied JPEG has a black studio backdrop, so it merges cleanly with this
   section. Keeping it intact is more elegant than a simulated cut-out edge. */
.dla-origin__image img { -webkit-mask-image:linear-gradient(#000 84%,transparent); mask-image:linear-gradient(#000 84%,transparent); }
.dla-origin__copy { padding:45px 0 70px 13%; position:relative; z-index:3; }
.dla-origin__copy>p:last-child { margin-top:25px; max-width:410px; font-size:15px; color:#d9d5ce; }
.dla-runway { position:relative; background:var(--about-black); color:var(--about-paper); margin-top:-1px; padding-bottom:100px; }
.dla-runway:after { content:''; position:absolute; inset:0 auto 0 0; width:47%; z-index:1; background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.42) 48%,transparent); pointer-events:none; }
.dla-runway__image img { -webkit-mask-image:linear-gradient(transparent,#000 13%,#000 92%,transparent); mask-image:linear-gradient(transparent,#000 13%,#000 92%,transparent); }
.dla-runway__copy { position:absolute; z-index:2; top:8%; left:7.4%; width:29%; max-width:420px; text-shadow:0 2px 18px rgba(0,0,0,.85); }
.dla-runway__copy h2 { font-size:clamp(32px,3.25vw,50px); }
.dla-runway__copy>p:last-child { margin-top:25px; font-size:15px; max-width:370px; color:#e3ded6; }
/* Section 03 uses one full-bleed portrait only. The wide cross-fade belongs to
   the section edge and media edge; the bride herself remains sharp. */
.dla-bride { position:relative; isolation:isolate; display:flex; align-items:center; min-height:810px; padding:0 7%; background:var(--about-paper); }
.dla-bride:before { content:''; position:absolute; z-index:4; top:-180px; left:0; right:0; height:180px; background:linear-gradient(180deg,rgba(247,244,236,0),rgba(247,244,236,.32) 42%,var(--about-paper) 100%); pointer-events:none; }
.dla-bride__copy { width:min(42%,520px); align-self:center; position:relative; z-index:3; padding:160px 0 125px; }
.dla-bride__body { max-width:430px; margin-top:30px; color:#625b52; font-size:15px; }
.dla-bride__body p + p { margin-top:20px!important; }
.dla-bride__image { position:absolute; z-index:1; inset:0 0 0 46%; width:auto; height:100%; margin:0!important; overflow:hidden; }
.dla-bride__image:after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,var(--about-paper) 0%,rgba(247,244,236,.94) 12%,rgba(247,244,236,.38) 29%,rgba(247,244,236,0) 49%),linear-gradient(0deg,var(--about-paper) 0%,rgba(247,244,236,.72) 13%,rgba(247,244,236,0) 34%); }
.dla-bride__image img { width:100%; height:100%; object-fit:cover; object-position:50% 11%; -webkit-mask-image:none; mask-image:none; }
.dla-finale { position:relative; background:#000; color:var(--about-paper); display:grid; grid-template-columns:46% 54%; align-items:center; padding:80px 7% 0; }
.dla-finale:before { content:''; position:absolute; top:-1px; left:0; right:0; height:100px; background:linear-gradient(#fff,transparent); z-index:1; pointer-events:none; }
.dla-finale__copy { position:relative; z-index:2; padding:45px 6% 100px 0; }
.dla-finale__copy>p:not(.dla-eyebrow) { font-size:15px; margin-top:26px; max-width:390px; color:#dfd8d0; }
.dla-finale__image img { -webkit-mask-image:linear-gradient(transparent,#000 8%,#000 87%,transparent); mask-image:linear-gradient(transparent,#000 8%,#000 87%,transparent); }
.dla-appointment { position:relative; padding:130px 7% 95px; text-align:center; background:#fff; }
.dla-appointment:before { content:''; position:absolute; top:-100px; left:0; right:0; height:101px; background:linear-gradient(transparent,#fff); }
.dl-about .dla-appointment__veil { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; opacity:.45; -webkit-mask-image:linear-gradient(transparent,#000 30%,#000 65%,transparent); mask-image:linear-gradient(transparent,#000 30%,#000 65%,transparent); pointer-events:none; }
.dla-appointment__copy { position:relative; z-index:1; }
.dla-appointment .dl-button { margin-top:35px; }
.dl-about [data-dla-reveal] { transition:opacity .7s ease,translate .7s ease; }
.dl-about .dla-await { opacity:0; translate:0 20px; }
@media(min-width:1600px) { .dla-hero{min-height:900px} .dla-origin{min-height:930px} .dla-bride{min-height:880px} }
@media(max-width:1100px) {
 .dla-hero{min-height:740px}.dla-hero__copy{padding-left:12%;padding-top:60px}.dla-origin{min-height:710px;padding-inline:5%}.dla-origin__copy{padding-left:10%}.dla-runway__copy{top:3%;width:34%}.dla-runway__copy h2{font-size:35px}.dla-bride{min-height:690px;padding-inline:6%}.dla-bride__copy{width:47%;padding-block:135px 105px}.dla-bride__image{inset:0 0 0 39%;width:auto;margin:0!important}.dla-bride__copy h2{font-size:43px}.dla-finale{padding-inline:6%}.dla-finale h2{font-size:43px}
}
@media(max-width:760px) {
 .dl-about h1{font-size:clamp(54px,11vw,74px)}.dl-about h2{font-size:clamp(34px,8.5vw,46px)}.dl-about .dla-eyebrow{font-size:10px;margin-bottom:18px}.dl-about .dla-link{font-size:10px;letter-spacing:.09em}
 .dla-hero{display:flex;flex-direction:column;padding:0 0 100px;min-height:0}.dla-hero__copy{padding:42px 7% 30px;align-self:stretch}.dla-hero__portrait{position:relative;inset:auto;width:100%;height:auto}.dla-hero__portrait img{height:auto;max-height:620px;object-fit:cover;object-position:50% 20%}.dla-hero__portrait:after{background:linear-gradient(0deg,var(--about-paper),transparent 20%),linear-gradient(var(--about-paper),transparent 10%)}.dl-about .dla-hero__intro{font-size:14px;margin-top:25px;max-width:100%}.dl-about .dla-hero__sub{margin-top:18px}
 .dla-origin{display:flex;flex-direction:column;min-height:0;padding:0 7% 40px}.dla-origin__image{width:90%;align-self:flex-start}.dla-origin__copy{padding:5px 0 0;align-self:stretch}.dla-origin__copy>p:last-child{max-width:none}.dla-runway{padding:25px 0 80px}.dla-runway__copy{position:relative;top:auto;left:auto;width:auto;max-width:none;padding:0 7% 18px}.dla-runway__copy>p:last-child{max-width:none;margin-top:18px}.dla-runway__image{width:100%}.dla-runway__image img{mask-image:linear-gradient(transparent,#000 8%,#000 90%,transparent)}
 .dla-bride{display:flex;flex-direction:column;padding:28px 7% 65px;min-height:0}.dla-bride__image{order:-1;position:relative;inset:auto;align-self:stretch;width:100%;height:auto;margin:0!important}.dla-bride__image:after{background:linear-gradient(0deg,var(--about-paper),rgba(247,244,236,0) 32%)}.dla-bride__image img{height:auto;object-fit:initial;object-position:initial}.dla-bride__copy{width:auto;align-self:stretch;padding:28px 0 0}.dla-bride__body{max-width:none;margin-top:22px;font-size:14px}.dla-bride__body p + p{margin-top:16px!important}.dla-bride:before{height:92px;top:-91px;background:linear-gradient(180deg,rgba(247,244,236,0),var(--about-paper) 90%)}.dla-finale{display:flex;flex-direction:column;padding:90px 7% 45px}.dla-finale__copy{padding:0 0 25px;align-self:stretch}.dla-finale__copy>p:not(.dla-eyebrow){max-width:none}.dla-finale__image{width:100%;max-width:560px}.dla-appointment{padding:80px 7% 65px}.dla-appointment:before{height:65px;top:-64px}
}
@media(prefers-reduced-motion:reduce) { .dl-about [data-dla-reveal],.dl-about .dla-link{transition:none}.dl-about .dla-await{opacity:1;translate:none} }
@media print { .dl-about .dla-await{opacity:1;translate:none}.dl-about section{break-inside:avoid}.dl-about{overflow:visible} }
