/* Dinamiccasas 4.5.0 · sistema editorial único basado en Proyectos */
#contenido .dc45-hero.ed-hero{background:linear-gradient(110deg,#112329 0%,#192f37 68%,#1d343d 100%);padding:58px 0 64px;color:#fff;overflow:visible;isolation:isolate;}
#contenido .dc45-hero .dc45-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(38px,4.4vw,72px);min-width:0;}
#contenido .dc45-hero .dc45-hero__copy{padding:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;max-width:none;}
#contenido .dc45-hero .dc45-hero__copy .eyebrow{letter-spacing:.18em;font-size:10px;font-weight:850;color:#ff988b;margin:0 0 20px;display:flex;align-items:center;gap:10px;}
#contenido .dc45-hero .dc45-hero__copy .eyebrow:before{display:block;flex:0 0 23px;height:2px;background:#ee675a;content:"";}
#contenido .dc45-hero .dc45-hero__copy h1{font-size:clamp(36px,3.05vw,47px);line-height:1.10;letter-spacing:-.052em;max-width:100%;margin:0 0 22px;font-weight:820;overflow-wrap:normal;white-space:normal;text-wrap:balance;color:#fff;}
#contenido .dc45-hero .dc45-hero__copy>p{max-width:630px;line-height:1.85;font-size:15px;color:#d5e0e3;margin:0;white-space:normal;}
#contenido .dc45-hero .dc45-hero__actions{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px;}
#contenido .dc45-hero .dc45-hero__actions .btn{display:inline-flex;align-items:center;justify-content:space-between;min-height:51px;gap:25px;padding:14px 23px;border-radius:4px;font-weight:800;font-size:12px;box-shadow:none;white-space:normal;}
#contenido .dc45-hero .dc45-hero__actions .btn-accent{background:#d63326;color:#fff;border:1px solid #d63326;}
#contenido .dc45-hero .dc45-hero__actions .btn-outline-white{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65);}
#contenido .dc45-hero .dc45-hero__media{display:block;margin:0;overflow:hidden;position:relative;height:380px;min-height:380px;max-height:none;border-radius:15px;background:#223d45;box-shadow:0 20px 48px rgba(6,16,20,.17);}
#contenido .dc45-hero .dc45-hero__media img{display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:center center;opacity:1;visibility:visible;}
#contenido .dc45-hero:after{content:none;}
/* Encabezados y secciones interiores comparten un mismo ritmo. */
#contenido :is(.dk-section,.dc41-principles,.dc41-services,.dc41-journey,.dc43-journal-main,.ed-panels,.dc-work,.ed-projects-notes,.dc-doc-section,.dc-faq-page,.ed-contact-cards,.ed-contact-main,.dc44-generic-body,.dc19-article__related){scroll-margin-top:100px;}
#contenido :is(.ed-panels,.dc-work,.dc41-principles,.dc41-services,.dc43-journal-main,.dc-doc-section,.dc-faq-page,.dc44-generic-body,.ed-contact-main){padding-block:clamp(58px,6vw,92px);}
#contenido :is(.dk-section-lead,.dk-method__head,.dk-materials__intro,.dc41-heading,.dc43-journal-main__heading,.ed-projects-notes__intro,.dc-faq-page__top,.dc-doc-lead,.ed-services-guide__head){min-width:0;max-width:100%;}
#contenido :is(.dk-section-lead h2,.dk-method__head h2,.dk-materials__intro h2,.dc41-heading h2,.dc43-journal-main__heading h2,.ed-projects-notes__intro h2,.dc-faq-page__top h2,.dc-doc-lead h2,.ed-services-guide__head h2){font-size:clamp(30px,3.0vw,43px);line-height:1.14;letter-spacing:-.045em;max-width:100%;white-space:normal;overflow-wrap:break-word;}
#contenido :is(.ed-service-card,.dc41-service,.dc43-journal-card,.dk-related__item,.ed-contact-grid>a,.dc-faq-category,.dc-doc-content,.dc44-generic-body__prose){border-radius:12px;overflow:hidden;}
#contenido :is(.ed-service-card__media img,.dc41-service__photo img,.dk-related__item img){object-fit:cover;}
/* El slider sigue disponible en Inicio, pero ahora es una sección secundaria. */
#contenido .dc45-carousel-lead + .dc40-hero.hero-slider{height:clamp(480px,58svh,620px);min-height:480px;}
#contenido .dc45-carousel-lead + .dc40-hero .dc40-hero__copy h2{font-size:clamp(37px,3.7vw,58px);}
#contenido .dc45-carousel-lead + .dc40-hero .dc40-hero__content{padding-bottom:90px;}
/* Reutilizar la misma lógica de composición en todos los tamaños. */
@media(max-width:1080px){
 #contenido .dc45-hero .dc45-hero__grid{grid-template-columns:1fr;gap:28px;}
 #contenido .dc45-hero .dc45-hero__copy{width:100%;}
 #contenido .dc45-hero .dc45-hero__media{width:100%;height:340px;min-height:0;max-height:none;}
 #contenido .dc45-hero .dc45-hero__media img{height:100%;min-height:0;}
}
@media(max-width:720px){
 #contenido .dc45-hero.ed-hero{padding:43px 0 51px;}
 #contenido .dc45-hero .dc45-hero__grid{gap:26px;}
 #contenido .dc45-hero .dc45-hero__copy{text-align:center;align-items:center;padding:0;}
 #contenido .dc45-hero .dc45-hero__copy .eyebrow{justify-content:center;font-size:9px;margin-bottom:17px;}
 #contenido .dc45-hero .dc45-hero__copy h1{font-size:clamp(30px,7.3vw,43px);line-height:1.1;margin-bottom:16px;}
 #contenido .dc45-hero .dc45-hero__copy>p{font-size:14px;line-height:1.8;text-align:center;margin:0 auto;max-width:520px;}
 #contenido .dc45-hero .dc45-hero__actions{justify-content:center;margin-top:24px;gap:10px;}
 #contenido .dc45-hero .dc45-hero__actions .btn{min-height:49px;font-size:12px;padding:13px 17px;}
 #contenido .dc45-hero .dc45-hero__media{height:clamp(240px,65vw,360px);min-height:0;max-height:none;margin:0;border-radius:11px;}
 #contenido .dc45-hero .dc45-hero__media img{height:100%;min-height:0;}
 #contenido .dc45-carousel-lead + .dc40-hero.hero-slider{height:550px;min-height:550px;}
}
@media(max-width:390px){
 #contenido .dc45-hero .dc45-hero__actions{width:100%;flex-direction:column;}
 #contenido .dc45-hero .dc45-hero__actions .btn{width:min(100%,280px);justify-content:space-between;}
}
@media(prefers-reduced-motion:reduce){#contenido .dc45-hero *{animation:none!important;transition:none!important}}
#contenido .dc45-hero .dc45-hero__media::after,#contenido .dc45-hero .dc45-hero__media::before{content:none!important;display:none!important}
#contenido .dc45-hero .dc45-hero__media>img{position:relative;z-index:2;isolation:isolate;}

.dc45-carousel-lead{background:#f8f5f0;border-block:1px solid #e8e2da;padding:27px 0;}
.dc45-carousel-lead__inner{display:flex;justify-content:space-between;align-items:center;gap:20px;}
.dc45-carousel-lead__inner>div{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.dc45-carousel-lead__inner span{font-size:10px;color:#bb382b;font-weight:850;letter-spacing:.13em;}
.dc45-carousel-lead__inner strong{font-size:20px;color:#182c35;letter-spacing:-.035em;}
.dc45-carousel-lead__inner>a{flex:none;font-size:12px;font-weight:800;color:#b73327;border-bottom:1px solid #b73327;padding-bottom:5px;}
@media(max-width:720px){.dc45-carousel-lead{padding:23px 0;}.dc45-carousel-lead__inner,.dc45-carousel-lead__inner>div{flex-direction:column;text-align:center;justify-content:center;gap:9px;}.dc45-carousel-lead__inner strong{font-size:20px}.dc45-carousel-lead__inner>a{margin-top:7px;}}
