/* Inicio con dos puertas, y cabecera y pie de las páginas comunes */

.home{--d2:#2E0710;--d2-tx:#F4ECDE;--d2-mu:rgba(244,236,222,.74);--d2-ln:rgba(244,236,222,.16)}
.hhdr{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px clamp(20px,4vw,48px);background:#fff}
.hnav{display:flex;align-items:center;gap:28px;font-size:15px;color:var(--hd)}
.hnav a{padding:12px 0;white-space:nowrap;background-image:linear-gradient(var(--acc),var(--acc));background-size:0% 1px;background-position:0 78%;background-repeat:no-repeat;transition:background-size .45s var(--e)}
.hnav a:hover,.hnav a[aria-current]{background-size:100% 1px}
.hband{padding:14px clamp(20px,4vw,48px);border-top:1px solid var(--ln);font-size:13.5px;font-weight:500;letter-spacing:.04em;color:var(--mu);text-align:center;text-wrap:balance}

.doors{display:flex;min-height:700px}
.door{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:56px;padding:76px clamp(24px,4.6vw,76px) 60px;transition:flex-grow .9s var(--e)}
.d1{background:#fff;border-top:1px solid var(--ln)}
.d2{background:var(--d2);color:var(--d2-tx)}
.d2::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:#E94762;transform-origin:top}
.d-top{display:flex;flex-direction:column;gap:26px}
.d2 .eyebrow{color:#E94762}
.d-title{font-family:var(--display);font-weight:400;font-size:clamp(46px,4.6vw,70px);line-height:1.02;letter-spacing:-.015em;color:var(--hd);text-wrap:balance}
.d2 .d-title{color:var(--d2-tx)}
.d-title em{display:block;font-style:italic;color:var(--acc)}
.d2 .d-title em{color:#E94762}
.d-text{font-size:18.5px;line-height:1.6;color:var(--mu);max-width:40ch}
.d2 .d-text{color:var(--d2-mu)}
.d-bottom{display:flex;flex-direction:column;gap:30px}
.d-links{display:flex;flex-direction:column;border-top:1px solid var(--ln)}
.d2 .d-links{border-color:var(--d2-ln)}
.d-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;border-bottom:1px solid var(--ln);font-size:16px;transition:color .3s}
.d2 .d-links a{border-color:var(--d2-ln)}
.d-links a span{opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .4s var(--e);color:var(--acc)}
.d2 .d-links a span{color:#E94762}
.d-links a:hover span,.d-links a:focus-visible span{opacity:1;transform:none}
.d-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:12px;min-height:54px;padding:0 28px;border-radius:999px;font-size:15.5px;font-weight:500;transition:transform .4s var(--e),background .3s,box-shadow .4s var(--e)}
.d1 .d-cta{background:var(--acc);color:#fff}
.d1 .d-cta:hover{background:var(--acc-h);box-shadow:0 14px 30px -14px rgba(160,23,52,.55)}
.d2 .d-cta{background:#E94762;color:var(--d2)}
.d2 .d-cta:hover{box-shadow:0 14px 30px -14px rgba(233,71,98,.6)}
.d-cta:hover{transform:translateY(-2px)}
.d2 :focus-visible{outline-color:#E94762}

.hme{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:40px 72px;align-items:center}
.hme picture{display:block;width:100%}
.hme img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:4px}
.hme .me-t p{font-size:18px;max-width:58ch}
.me-l{display:flex;flex-wrap:wrap;gap:12px 32px}

.ct-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(440px,100%),1fr));gap:24px}
.ct-c{display:flex;flex-direction:column;gap:18px;padding:40px;background:#fff;border:1px solid var(--ln);border-radius:10px}
.ct-c h3{font-family:var(--display);font-weight:400;font-size:28px;line-height:1.15;color:var(--hd)}
.ct-c p{font-size:16.5px;line-height:1.6;color:var(--mu)}
.ct-c .row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.ct-c .row a:not(.btn):hover{color:var(--acc)}
.btn-d{background:var(--d2);color:var(--d2-tx)}

.hfoot{background:#0B0D11;color:rgba(237,232,223,.7);padding:40px clamp(20px,4vw,48px);font-size:13.5px}
.hfoot-in{max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px}
.hfoot a:hover{color:#EDE8DF}

.motion .d2::before{animation:seam 1.3s .15s var(--e) both}
.motion .d-top > *,.motion .d-bottom{animation:up .9s var(--e) both}
.motion .d1 .eyebrow{animation-delay:.35s}
.motion .d1 .d-title{animation-delay:.45s}
.motion .d1 .d-text{animation-delay:.55s}
.motion .d1 .d-bottom{animation-delay:.65s}
.motion .d2 .eyebrow{animation-delay:.5s}
.motion .d2 .d-title{animation-delay:.6s}
.motion .d2 .d-text{animation-delay:.7s}
.motion .d2 .d-bottom{animation-delay:.8s}
@keyframes seam{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes seamx{from{transform:scaleX(0)}to{transform:scaleX(1)}}

@media (hover:hover) and (min-width:981px){
.doors:hover .door{flex-grow:.84}
.doors .door:hover{flex-grow:1.16}
}
@media (max-width:980px){
.hnav{gap:18px;font-size:14.5px}
.doors{flex-direction:column;min-height:0}
.door{padding:56px 20px 48px;gap:40px}
.d2::before{top:0;left:0;right:0;bottom:auto;width:auto;height:2px;transform-origin:left}
.motion .d2::before{animation-name:seamx}
.hme{grid-template-columns:1fr}
.hme picture{max-width:320px}
.ct-c{padding:28px 22px}
}
@media (max-width:440px){
.hhdr{flex-wrap:wrap;row-gap:2px}
.hnav{gap:20px}
.hnav .opt-hide{display:none}
}
