/* Four-page desktop art direction. Mobile retains the existing layout. */
@media (min-width:851px){
 :root{--edge:clamp(32px,3.5vw,80px)}
 .service-index .section-line,.service-gallery{max-width:none}
 .service-gallery{grid-template-columns:minmax(0,.667fr) minmax(0,.8fr) minmax(0,.667fr) minmax(0,.667fr);gap:clamp(18px,1.6vw,30px)}
 .service-cover figure{aspect-ratio:2/3}
 .service-cover:nth-child(2) figure{aspect-ratio:4/5}
 .service-cover img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
 .service-cover:hover img{transform:none;filter:brightness(1.045)}
 .service-cover h3{display:flex;align-items:center;justify-content:space-between}
 .at-home-layout{max-width:none;grid-template-columns:minmax(0,.43fr) minmax(0,.57fr);align-items:stretch}
 .at-home-copy{width:100%;max-width:none;align-self:center;padding:clamp(32px,4vw,72px) clamp(32px,4vw,80px)}
 .at-home-copy h2,.at-home-copy p{max-width:470px}
 .at-home-layout>figure{width:100%;height:100%;align-self:stretch;display:flex}
 .at-home-layout>figure img{width:100%;height:100%;object-fit:cover;object-position:center}
 .hero{height:min(40.5vw,calc(100svh - 100px));min-height:420px}
 .social-hero{height:40.5vw}
 .hero>picture img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
 .hero-copy{left:var(--edge);bottom:clamp(40px,4.5vw,80px);max-width:46%}
 .bride-hero .hero-copy{left:auto;right:12%;bottom:clamp(40px,4.5vw,80px)}
 .hero-copy h1{font-size:68px}
 body:is([data-page=novias],[data-page=sociales]) .site-header.over-hero:not(.is-sticky){color:var(--ink);text-shadow:0 1px 8px rgb(255 255 255 / .85)}
 body:is([data-page=novias],[data-page=sociales]) .site-header.over-hero:not(.is-sticky) .brand img{filter:brightness(0)}
 body:is([data-page=novias],[data-page=sociales]) .site-header.over-hero:not(.is-sticky) .header-cta{border-color:rgb(23 23 22 / .6)}
 body[data-page=sociales] .site-header.over-hero:not(.is-sticky) .nav-dropdown>summary{color:white;text-shadow:0 1px 4px #171716}
 .bride-hero .hero-copy,.social-hero .hero-copy{color:var(--ink);text-shadow:none}
 .bride-hero .hero-copy .button,.social-hero .hero-copy .button{background:var(--ink);color:var(--paper);border-color:var(--ink)}
 .bride-hero .hero-copy .button:hover,.social-hero .hero-copy .button:hover{background:#41413b}
 .hero .hero-shade{background:rgb(12 12 12 / .08)!important}
 .xv-hero .hero-copy{bottom:clamp(50px,6vw,100px);max-width:49%}
 .xv-hero .hero-copy h1{font-size:62px}
 .bridal-selector{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(48px,6vw,110px);padding-inline:clamp(48px,7vw,140px)}
 .bridal-photographs{width:100%}
 .bridal-choices{width:100%;max-width:680px}
 .bridal-family{width:100%;max-width:none;grid-template-columns:min(42%,calc(min(720px,100svh - 148px)*.66675)) minmax(0,1fr);padding:32px max(var(--edge),calc((100% - 1280px)/2));gap:clamp(48px,6vw,110px);align-items:stretch}
 .bridal-family>figure{width:100%;max-width:none;justify-self:stretch}
 .bridal-family>figure img{width:100%;height:auto;object-fit:contain}
 .bridal-family>div{width:100%;max-width:600px;padding:32px 0;align-self:center;justify-self:center}
 .bridal-family h2,.bridal-family p{max-width:480px}
 .social-services{padding-inline:var(--edge);gap:clamp(24px,2.8vw,54px)}
 .social-services figure{width:100%;aspect-ratio:1/1;display:grid;place-items:center}
 .social-services img{width:100%;height:100%;object-fit:contain}
 .social-services h3{min-height:65px}
 .xv-editorial{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(48px,6vw,110px);padding-inline:clamp(48px,7vw,140px)}
 .xv-editorial>figure{width:100%;min-width:0;align-self:center}
 .xv-editorial>figure img{max-width:100%;height:auto}
 .xv-copy{max-width:680px}
 .xv-family{padding:0}
 .xv-family>.wrap{max-width:none;grid-template-columns:minmax(0,.43fr) minmax(0,.57fr);align-items:stretch}
 .xv-family .family-heading{padding:clamp(32px,4vw,80px);align-self:center}
 .xv-family .family-heading p{max-width:440px}
 .xv-family figure{width:100%;height:auto;aspect-ratio:1.28/1;display:flex}
 .xv-family img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;max-height:none}
 .experiences{padding-inline:var(--edge)}
 .experiences .section-line{width:var(--experience-width);max-width:100%}
 .carousel-track{max-width:100%}
}
@media(min-width:851px) and (max-width:1450px){
 .hero>picture img{object-position:50% 0}
 .bride-hero .hero-copy{right:9%}
 .hero-copy h1{font-size:60px}
 .xv-hero .hero-copy h1{font-size:54px}
 .at-home-copy h2{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.service-cover:hover img{filter:none}}
