/* TENET V2.1 — editorial direction layer */
:root{--muted:#66625d;--line:#ddd6cc}
.site-header{box-shadow:0 1px 0 rgba(17,17,17,.06)}
.brand{width:162px;height:60px}
.brand img{filter:contrast(1.25);transform:scale(1.08);transform-origin:left center}
.footer-brand img{filter:brightness(0) invert(1);transform:none}

/* Editorial hero */
.editorial-hero{min-height:auto;padding:72px 0 0;overflow:hidden}
.hero-editorial-grid{position:relative;min-height:min(760px,calc(100svh - 72px));display:grid;grid-template-columns:5fr 7fr;gap:54px;align-items:center;padding-top:42px;padding-bottom:42px;border-bottom:1px solid var(--ink)}
.editorial-hero .hero-content{padding:38px 0;align-self:center}
.editorial-hero .hero-content .display{max-width:610px;font-size:clamp(3.5rem,5vw,5rem);line-height:.98}
.editorial-hero .hero-copy{max-width:500px;margin:25px 0 29px;font-size:1.04rem}
.editorial-hero .hero-meta{margin-top:31px;padding-top:14px;border-top:1px solid var(--line);max-width:510px}
.hero-collage{position:relative;min-height:650px;margin-right:-38px}
.hero-collage figure{position:absolute;margin:0;overflow:hidden;background:var(--cream)}
.hero-collage img{height:100%;object-fit:cover;filter:saturate(.65) contrast(1.06);transition:transform .7s var(--ease)}
.hero-collage figure:hover img{transform:scale(1.025)}
.hero-project-main{z-index:1;inset:38px 8% 55px 13%}
.hero-project-main img{object-position:center}
.hero-project-secondary{z-index:3;right:0;top:0;width:31%;height:38%;border:10px solid var(--paper)}
.hero-project-secondary img{object-position:left center}
.hero-project-detail{z-index:3;left:0;bottom:0;width:32%;height:31%;border:10px solid var(--paper)}
.hero-project-detail img{object-position:44% center}
.hero-project-note{position:absolute;z-index:4;right:0;bottom:6px;width:36%;padding:17px 18px;background:var(--ink);color:var(--paper)}
.hero-project-note span,.hero-project-note small{display:block;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}
.hero-project-note strong{display:block;margin:8px 0 11px;font:400 1.05rem var(--display)}
.hero-project-note small{color:rgba(247,245,242,.58);line-height:1.5}
.hero-index{position:absolute;z-index:0;left:-11px;top:-28px;color:rgba(17,17,17,.06);font:400 8.5rem/1 var(--display)}

/* Signature editorial solution block */
.solutions-editorial-grid{display:grid;grid-template-columns:7fr 5fr;gap:78px;align-items:end}
.solutions-visual{position:relative;min-height:610px;overflow:hidden;background:var(--cream)}
.solutions-visual img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center;filter:saturate(.58) contrast(1.08);transition:transform .7s var(--ease)}
.solutions-visual:hover img{transform:scale(1.025)}
.image-caption{position:absolute;left:0;bottom:0;padding:14px 18px;background:var(--paper);font-size:.63rem;letter-spacing:.1em;text-transform:uppercase}
.solutions-copy{padding-bottom:10px}
.solutions-copy .display{font-size:clamp(3rem,4.2vw,4.6rem);line-height:.98}
.solutions-copy .lead{margin:22px 0 44px;color:var(--ink-soft)}
.solution-row{display:grid;grid-template-columns:40px 1fr auto;gap:18px;align-items:start;padding:25px 0;border-top:1px solid var(--ink)}
.solution-row:last-child{border-bottom:1px solid var(--ink)}
.solution-row>span{color:#aaa39b;font:400 1.8rem/1 var(--display)}
.solution-row h3{margin:0 0 8px;font:400 1.55rem/1.08 var(--display)}
.solution-row p{margin:0;color:var(--muted);font-size:.86rem}
.solution-row small{align-self:center;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}

/* Capability as annotated editorial composition */
.capability-editorial{background:#ded7cd}
.capability-editorial-grid{display:grid;grid-template-columns:4.5fr 3fr 4.5fr;gap:46px;align-items:center}
.capability-editorial .capability-copy h2{font-size:clamp(3.3rem,4.8vw,5.2rem);line-height:.95}
.capability-detail{position:relative;margin:0;align-self:stretch;min-height:430px;overflow:hidden}
.capability-detail img{height:100%;object-fit:cover;object-position:45% center;filter:grayscale(.15) saturate(.55) contrast(1.08)}
.capability-detail figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;background:rgba(17,17,17,.9);color:var(--paper);font-size:.63rem;letter-spacing:.08em;text-transform:uppercase}
.capability-notes{border-top:1px solid rgba(17,17,17,.35)}
.capability-notes>div{display:grid;grid-template-columns:35px 1fr;gap:5px 12px;padding:19px 0;border-bottom:1px solid rgba(17,17,17,.25)}
.capability-notes b{grid-row:1/3;color:#8b8379;font:400 1.4rem var(--display)}
.capability-notes strong{font:500 .98rem var(--sans)}
.capability-notes span{color:#59554f;font-size:.8rem}

/* Projects */
.portfolio-grid{grid-template-columns:8.5fr 3.5fr;grid-template-rows:360px 260px;gap:18px}
.project-card::after{background:linear-gradient(0deg,rgba(8,8,7,.62),transparent 42%)}
.project-card-minor{margin-left:15%;opacity:.94}
.project-label{left:22px;right:22px;bottom:20px}
.project-label span{display:flex;align-items:flex-end;gap:13px;font-size:clamp(1.3rem,2.1vw,2.15rem)}
.project-label b{font:500 .6rem var(--sans);letter-spacing:.12em}

/* Quote selector */
.quote-selector{padding-top:80px}
.route-grid{gap:18px;align-items:stretch}
.route-card{position:relative;min-height:430px;border-radius:0;padding-top:76px;transition:transform .3s var(--ease),background .3s,color .3s}
.route-card:hover{transform:translateY(-6px)}
.route-number{position:absolute;left:28px;top:22px;color:#d2ccc3;font:400 3rem/1 var(--display)}
.route-card-featured{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:translateY(-20px)}
.route-card-featured:hover{transform:translateY(-25px)}
.route-card-featured p,.route-card-featured small{color:rgba(247,245,242,.78)}
.route-card-featured .route-number{color:rgba(247,245,242,.16)}

/* Improve shared hierarchy and contrast */
.lead,.detail-copy p,.route-card p,.form-copy p,details p{color:#66615b}
.page-hero{position:relative;overflow:hidden}
.page-hero::after{content:attr(data-section);position:absolute;right:2vw;bottom:-.22em;color:rgba(17,17,17,.025);font:400 11rem/1 var(--display)}
.page-hero.dark::after{color:rgba(247,245,242,.035)}
.solution-detail{grid-template-columns:4.5fr 7.5fr;min-height:500px}
.solution-detail:nth-child(even){grid-template-columns:7.5fr 4.5fr}
.solution-detail:nth-child(even) .detail-media{order:2}
.detail-media img{filter:saturate(.55) contrast(1.08)}
.process-mini .step h3{font-weight:600}

@media (min-width:769px) and (max-width:1180px){
  .nav-cta{font-size:0;padding-inline:15px}.nav-cta::after{content:"Cotizar";font-size:.68rem}
  .nav-links{gap:16px}.brand{width:142px}
  .hero-editorial-grid{gap:34px}.hero-collage{margin-right:0}
  .solutions-editorial-grid{gap:45px}.capability-editorial-grid{gap:28px}
}

@media(max-width:768px){
  .brand{width:125px}.brand img{transform:scale(1.05)}
  .editorial-hero{padding-top:64px}
  .hero-editorial-grid{display:flex;min-height:0;flex-direction:column;gap:22px;padding-top:42px;padding-bottom:30px}
  .editorial-hero .hero-content{order:1;padding:0;width:100%}
  .editorial-hero .hero-content .display{font-size:clamp(2.75rem,12vw,3.5rem);line-height:.96}
  .editorial-hero .hero-copy{margin:18px 0 22px;font-size:.97rem}
  .editorial-hero .hero-actions{gap:9px}
  .editorial-hero .hero-meta{margin-top:18px;padding-top:11px;font-size:.61rem}
  .hero-collage{order:2;width:100%;min-height:330px;margin:0}
  .hero-project-main{inset:0 17% 18px 0}
  .hero-project-main img{object-position:center}
  .hero-project-secondary{right:0;top:34px;width:33%;height:43%;border:7px solid var(--paper)}
  .hero-project-detail{display:none}
  .hero-project-note{right:0;bottom:0;width:47%;padding:12px}
  .hero-project-note strong{font-size:.9rem}.hero-project-note small{font-size:.48rem}
  .hero-index{left:auto;right:1px;top:-19px;font-size:5rem}
  .in-hero .wa-float{opacity:0;pointer-events:none;transform:translateY(12px)}
  .solutions-editorial-grid{grid-template-columns:1fr;gap:36px}
  .solutions-visual{min-height:105vw;order:2}
  .solutions-copy{order:1}
  .solutions-copy .display{font-size:2.9rem}.solutions-copy .lead{margin-bottom:30px}
  .solution-row{grid-template-columns:34px 1fr;gap:12px}.solution-row small{display:none}
  .capability-editorial-grid{grid-template-columns:1fr;gap:30px}
  .capability-editorial .capability-copy h2{font-size:3.2rem}
  .capability-detail{min-height:78vw}
  .portfolio-grid{grid-template-columns:1fr;grid-template-rows:none}
  .project-card,.project-card:first-child{height:78vw}.project-card-minor{height:58vw;margin-left:22%}
  .route-card-featured,.route-card-featured:hover{transform:none;order:-1}
  .route-card{min-height:350px;padding-top:68px}
  .solution-detail,.solution-detail:nth-child(even){grid-template-columns:1fr}
}

@media(max-width:430px){
  .hero-editorial-grid{padding-top:32px}
  .editorial-hero .hero-content .display{font-size:11.5vw}
  .hero-collage{min-height:300px}
  .hero-project-note{width:52%}
  .capability-editorial .capability-copy h2,.solutions-copy .display{font-size:11vw}
}
