/* Dinamiccasas Signature 4.3 | Consolidated visual finish */
:root{--dc43-ink:#13242c;--dc43-ink2:#20353d;--dc43-red:#cf392b;--dc43-muted:#57696e;--dc43-paper:#f7f5f1;--dc43-stroke:#e8e2d9;--dc43-radius:20px;--dc43-shadow:0 22px 55px rgba(16,31,37,.085)}
body{color:var(--dc43-ink);-webkit-font-smoothing:antialiased}
#contenido :is(h1,h2,h3){overflow-wrap:normal;word-break:normal;hyphens:none}
#contenido :is(.ed-hero__copy,.ed-about-detail__copy,.ed-story__head,.ed-services-guide__head,.dk-section-lead,.dk-method__head,.dk-materials__intro,.ed-projects-notes__intro,.ed-journal-intro,.heading-row){min-width:0}
#contenido :is(p,li){overflow-wrap:break-word}
/* Shared editorial refinement across interior templates */
.ed-hero__grid,.contact-hero__grid{align-items:center}
.ed-hero__copy h1{font-weight:820;letter-spacing:-.046em;line-height:1.09;max-width:none}
.ed-hero__copy p{color:#d7e1e3;line-height:1.83}
.ed-hero__media{overflow:hidden}
.ed-hero__media img{width:100%;object-fit:cover}
.ed-service-card,.service-panel,.journal-card,.ed-services-guide__grid article,.dc-planning__grid article{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
:is(.ed-service-card,.service-panel,.dc-planning__grid article):hover{transform:translateY(-3px);box-shadow:var(--dc43-shadow);border-color:#dacbc1}
:is(.ed-services-guide__grid,.dc-planning__grid,.ed-services-grid,.ed-projects-notes__cards)>article{min-width:0}
:is(.ed-section,.dk-section,.section) :is(h2,h3){text-wrap:pretty}
/* Global editorial text: keep headings inside their content column rather than force nowrap. */
#contenido :is(.ed-hero h1,.ed-section h2,.dk-section h2,.ed-story h2,.ed-projects-notes h2,.dc19-article h1,.dc25-section h2,.dc31-editorial h2){white-space:normal!important;max-width:100%;overflow-wrap:normal}
#contenido :is(.ed-hero p,.ed-projects-notes p,.dc25-section p){white-space:normal!important}
/* Article index (WordPress posts page) */
.dc43-journal-hero{background:linear-gradient(115deg,#0e1d25 0%,#182d36 100%);padding:clamp(56px,7vw,100px) 0;color:#fff;position:relative;overflow:hidden}
.dc43-journal-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 7% 10%,rgba(207,57,43,.14),transparent 36%);pointer-events:none}
.dc43-journal-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:clamp(36px,5vw,76px);align-items:center}
.dc43-eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:10px;font-weight:850;letter-spacing:.19em;color:#c63c30;text-transform:uppercase;line-height:1.5}
.dc43-eyebrow::before{content:"";width:23px;height:2px;background:currentColor;flex:none}
.dc43-journal-hero .dc43-eyebrow,.dc43-journal-signoff .dc43-eyebrow{color:#ff9485}
.dc43-journal-hero h1{font-size:clamp(41px,4.15vw,67px);line-height:1.06;letter-spacing:-.063em;font-weight:820;color:#fff;margin:23px 0 22px;text-wrap:balance}
.dc43-journal-hero h1 em{font-style:normal;color:#ff8e7f}
.dc43-journal-hero__copy>p{max-width:65ch;color:#d8e3e5;font-size:16px;line-height:1.9;margin:0}
.dc43-journal-hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:30px}
.dc43-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:52px;padding:13px 22px;border-radius:8px;text-decoration:none;font-size:12px;font-weight:820;transition:transform .17s ease,background .17s ease,box-shadow .17s ease}
.dc43-button:hover{transform:translateY(-2px)}
.dc43-button--coral{background:var(--dc43-red);color:#fff;box-shadow:0 13px 28px rgba(182,39,28,.2)}
.dc43-button--coral:hover{background:#ad291f;color:#fff}
.dc43-link{font-size:12px;font-weight:820;letter-spacing:.02em;text-decoration:none;display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid currentColor;padding:8px 0}
.dc43-link--light{color:#fff}.dc43-link--light:hover{color:#ffad9d}
.dc43-journal-hero__image{margin:0;position:relative;overflow:hidden;border-radius:20px;min-height:400px;box-shadow:0 26px 64px rgba(0,0,0,.24);background:#2b3a42}
.dc43-journal-hero__image img{width:100%;height:100%;min-height:400px;position:absolute;inset:0;object-fit:cover}
.dc43-journal-hero__image figcaption{position:absolute;bottom:0;left:0;right:0;padding:32px 26px 22px;background:linear-gradient(transparent,rgba(4,12,16,.76));color:#fff;letter-spacing:.17em;font-size:10px;font-weight:820}
.dc43-journal-main{padding:clamp(62px,7vw,100px) 0;background:#f8f6f2}
.dc43-journal-main__heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:end;margin-bottom:30px}
.dc43-journal-main__heading h2{font-size:clamp(33px,3.3vw,52px);font-weight:820;line-height:1.1;letter-spacing:-.055em;margin:17px 0 18px;color:var(--dc43-ink);max-width:none}
.dc43-journal-main__heading p{font-size:15px;line-height:1.83;color:var(--dc43-muted);max-width:75ch;margin:0}
.dc43-journal-main__counter{min-width:165px;border-left:1px solid #d8d4cb;padding-left:25px;display:flex;flex-direction:column;gap:7px;align-items:start}
.dc43-journal-main__counter span{font-size:10px;letter-spacing:.14em;font-weight:800;color:#b73529}
.dc43-journal-main__counter strong{font-size:46px;color:#162b32;letter-spacing:-.06em;line-height:1.0}
.dc43-journal-main__counter small{font-size:12px;color:#68787d}
.dc43-journal-categories{display:flex;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid #e0dcd4;border-bottom:1px solid #e0dcd4;padding:19px 0;margin-bottom:34px}
.dc43-journal-categories>span{font-size:12px;font-weight:830;color:#293a41}
.dc43-journal-categories>div{display:flex;flex-wrap:wrap;gap:8px}
.dc43-journal-categories a{display:inline-flex;align-items:center;padding:9px 14px;font-size:12px;font-weight:750;border-radius:999px;border:1px solid #e5ded5;background:#fff;color:#405057;text-decoration:none;transition:all .18s ease}
.dc43-journal-categories a:hover{border-color:#c8392d;color:#b33026;background:#fff9f5}
.dc43-journal-grid.journal-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px 21px!important;align-items:stretch}
.dc43-journal-grid .dc43-article-card{min-width:0;height:100%;background:#fff;border:1px solid #e9e1d7;border-radius:17px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 26px rgba(14,25,30,.035);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.dc43-journal-grid .dc43-article-card:hover{transform:translateY(-4px);border-color:#d7c8bc;box-shadow:0 24px 50px rgba(18,31,37,.12)}
.dc43-article-card .journal-card__media{display:block;position:relative;overflow:hidden;aspect-ratio:16/10;background:#dce2df}
.dc43-article-card .journal-card__media img{display:block;width:100%;height:100%!important;aspect-ratio:auto!important;object-fit:cover;transition:transform .5s ease}
.dc43-article-card:hover .journal-card__media img{transform:scale(1.045)}
.dc43-article-card__image-link{position:absolute;right:16px;bottom:16px;width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:#f8f6f2;color:#b93227;font-size:18px;box-shadow:0 9px 20px rgba(0,0,0,.12)}
.dc43-article-card .journal-card__body{flex:1;min-width:0;padding:26px 25px 26px;display:flex;flex-direction:column;align-items:stretch;text-align:left!important;gap:0}
.dc43-article-card__topic{font-size:10px;font-weight:850;letter-spacing:.11em;line-height:1.45;text-transform:uppercase;color:#b73529;margin-bottom:14px}
.dc43-article-card .journal-card__body h3{margin:0 0 14px;color:#182931;font-size:clamp(20px,1.65vw,24px);line-height:1.18;letter-spacing:-.034em;font-weight:820;min-height:3.54em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.dc43-article-card .journal-card__body h3 a{color:inherit;text-decoration:none}
.dc43-article-card .journal-card__body h3 a:hover{color:#b92f25}
.dc43-article-card .journal-card__body>p{margin:0 0 24px!important;min-height:5.15em;color:#5a6a70;font-size:13px;line-height:1.72;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.dc43-article-card__link{margin-top:auto;padding-top:18px;border-top:1px solid #ece7df;display:flex;justify-content:space-between;align-items:center;font-weight:820;font-size:12px;color:#b63125;text-decoration:none}
.dc43-article-card__link span{font-size:18px}
.dc43-article-card__link:hover{color:#80241b}
.dc43-pagination{margin-top:42px;border-top:1px solid #e3ddd4;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.dc43-pagination>span{font-size:12px;font-weight:750;color:#526167}
.dc43-pagination .navigation.pagination{margin:0!important;padding:0!important;border:0!important;background:none!important}
.dc43-pagination .nav-links{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.dc43-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:9px 12px;border:1px solid #ddd7ce;background:#fff;border-radius:9px;font-size:12px;font-weight:800;color:#25363e;text-decoration:none}
.dc43-pagination .page-numbers.current,.dc43-pagination .page-numbers:hover{background:#142a32;color:#fff;border-color:#142a32}
.dc43-journal-signoff{background:#152831;color:#fff;padding:56px 0}
.dc43-journal-signoff__inner{display:flex;align-items:center;justify-content:space-between;gap:26px}
.dc43-journal-signoff h2{font-size:clamp(27px,2.7vw,41px);line-height:1.1;font-weight:820;letter-spacing:-.045em;color:#fff;margin:14px 0 12px}
.dc43-journal-signoff p{font-size:14px;color:#cfdddf;line-height:1.75;margin:0;max-width:70ch}
.dc43-journal-signoff .dc43-button{flex:none}
/* Related articles use the same geometric rules as the main archive. */
.dc19-article__related .journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.dc19-article__related .dc43-article-card{min-width:0;background:#fff;border:1px solid var(--dc43-stroke);overflow:hidden;display:flex;flex-direction:column}
.dc19-article__related .dc43-article-card .journal-card__body{padding:23px;display:flex;flex-direction:column;flex:1;align-items:stretch;text-align:left!important}
.dc19-article__related .dc43-article-card .journal-card__body h3{font-size:21px}
.dc19-article__related .dc43-article-card .journal-card__body>p{font-size:13px}
/* Finer consistency for the shared company and service templates. */
.ed-about-detail__image img,.ed-hero__media img{display:block;width:100%;object-fit:cover}
.ed-story__points,.ed-projects-notes__cards,.ed-contact-grid{min-width:0}
.dk-service .dk-solution__photo img{width:100%;object-fit:cover}
:is(.ed-services-guide__grid,.ed-projects-notes__cards,.dc-planning__grid) article{border-color:var(--dc43-stroke)}
:is(.ed-hero__media,.dk-hero__photo,.ed-service-card__image,.ed-projects-gallery__image) img{object-fit:cover}
#contenido a:focus-visible,#contenido button:focus-visible{outline:3px solid #e95b4d;outline-offset:3px}
@media(max-width:1080px){
 .dc43-journal-hero__grid{grid-template-columns:1fr;gap:30px}
 .dc43-journal-hero__image{min-height:300px;max-height:400px}
 .dc43-journal-hero__image img{min-height:300px}
 .dc43-journal-grid.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .dc19-article__related .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 .dc43-journal-hero{padding:48px 0 57px}
 .dc43-journal-hero__copy{text-align:center}
 .dc43-journal-hero .dc43-eyebrow{justify-content:center}
 .dc43-journal-hero h1{font-size:clamp(33px,8.3vw,47px);margin:19px 0 15px;letter-spacing:-.05em}
 .dc43-journal-hero__copy>p{font-size:14px;line-height:1.78}
 .dc43-journal-hero__actions{justify-content:center;gap:16px}
 .dc43-journal-hero__image{min-height:265px;max-height:330px;border-radius:16px}
 .dc43-journal-hero__image img{min-height:265px}
 .dc43-journal-main{padding:58px 0 66px}
 .dc43-journal-main__heading{grid-template-columns:1fr;gap:19px;text-align:center}
 .dc43-journal-main__heading .dc43-eyebrow{justify-content:center}
 .dc43-journal-main__heading h2{font-size:clamp(29px,7.8vw,40px);margin:14px 0}
 .dc43-journal-main__heading p{font-size:14px;line-height:1.76}
 .dc43-journal-main__counter{border-left:0;border-top:1px solid #ded8cf;min-width:0;padding:15px 0 0;align-items:center;gap:3px}
 .dc43-journal-main__counter strong{font-size:35px}
 .dc43-journal-categories{justify-content:center;text-align:center;gap:12px;padding:15px 0 18px}
 .dc43-journal-categories>div{justify-content:center}
 .dc43-journal-grid.journal-grid,.dc19-article__related .journal-grid{grid-template-columns:1fr!important;gap:16px!important}
 .dc43-journal-grid .dc43-article-card{border-radius:16px}
 .dc43-article-card .journal-card__body{padding:23px!important;text-align:left!important;align-items:stretch!important}
 .dc43-article-card .journal-card__body h3{min-height:0;font-size:22px}
 .dc43-article-card .journal-card__body>p{min-height:0;font-size:13px}
 .dc43-pagination{justify-content:center;text-align:center;flex-direction:column}
 .dc43-journal-signoff{padding:44px 0}
 .dc43-journal-signoff__inner{align-items:center;text-align:center;flex-direction:column;gap:23px}
 .dc43-journal-signoff .dc43-eyebrow{justify-content:center}
 .dc43-journal-signoff h2{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.dc43-article-card,.dc43-article-card .journal-card__media img,.dc43-button{transition:none!important;transform:none!important}}
/* Keep the hero photo in normal layout flow to avoid blank clipped frames. */
.dc43-journal-hero__image{min-height:0;height:auto}
.dc43-journal-hero__image img{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:400px!important;min-height:0!important;object-fit:cover}
@media(max-width:1080px){.dc43-journal-hero__image img{height:340px!important}}
@media(max-width:720px){.dc43-journal-hero__image img{height:275px!important}}
