/* REVOLT Skills Master Layout — v1.5.1
   Desarrollo Web is the canonical service-page structure. */

.internal-page{
  /* Same horizontal geometry used by 06 / EXPLORA */
  --skill-gutter:clamp(24px,4.2vw,72px);
  --skill-gutter-right:clamp(24px,4.2vw,72px);
  --skill-content-max:1680px;
  --skill-copy-max:760px;
  --skill-section-y:clamp(96px,10vw,160px);
}

/* Canonical horizontal alignment across every Skill page */
.internal-page .ip-hero,
.internal-page .ip-section{
  padding-left:var(--skill-gutter)!important;
  padding-right:var(--skill-gutter-right)!important;
}

/* HERO — corrected master geometry */
.internal-page .ip-hero{
  min-height:clamp(720px,92svh,980px)!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:clamp(132px,15vh,190px)!important;
  padding-bottom:clamp(72px,9vh,116px)!important;
}
.internal-page .ip-hero__meta{
  top:clamp(110px,12vh,144px)!important;
  left:var(--skill-gutter)!important;
}
.internal-page .ip-hero__content{
  width:min(100%,var(--skill-content-max))!important;
  max-width:none!important;
  margin:0!important;
}
.internal-page .ip-hero h1{
  width:min(1120px,100%)!important;
  max-width:1120px!important;
  margin:0!important;
  font-size:clamp(58px,7.4vw,126px)!important;
  line-height:.9!important;
  letter-spacing:-.067em!important;
  text-wrap:balance;
}
.internal-page .ip-hero__lead{
  width:min(610px,100%)!important;
  max-width:610px!important;
  margin:clamp(28px,3vw,44px) 0 0 clamp(0px,30vw,430px)!important;
  font-size:clamp(18px,1.35vw,23px)!important;
  line-height:1.48!important;
  text-wrap:pretty;
}

/* SECTION RHYTHM */
.internal-page .ip-section{
  padding-top:var(--skill-section-y)!important;
  padding-bottom:var(--skill-section-y)!important;
}
.internal-page .ip-section__head{
  width:min(100%,var(--skill-content-max));
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(160px,.34fr) minmax(0,1fr)!important;
  column-gap:clamp(32px,5vw,84px)!important;
  align-items:start!important;
}
.internal-page .ip-section__head h2{
  max-width:940px!important;
  margin:0!important;
  font-size:clamp(42px,5.4vw,86px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  text-wrap:balance;
}
.internal-page .ip-kicker{margin-top:.65em!important}
.internal-page .ip-copy{
  width:min(var(--skill-copy-max),100%)!important;
  max-width:var(--skill-copy-max)!important;
  margin:clamp(48px,6vw,84px) 0 0 auto!important;
  grid-column:auto!important;
}
.internal-page .ip-copy p{
  font-size:clamp(17px,1.28vw,21px)!important;
  line-height:1.72!important;
  text-wrap:pretty;
}
.internal-page .ip-copy p+p{margin-top:1.35em!important}


/* 02 / DESCRIPCIÓN — compact two-column editorial layout */
.internal-page #descripcion.ip-section{
  display:grid!important;
  grid-template-columns:minmax(260px,.78fr) minmax(360px,1.22fr)!important;
  column-gap:clamp(48px,7vw,128px)!important;
  row-gap:clamp(24px,3vw,42px)!important;
  align-items:start!important;
  padding-top:clamp(72px,7vw,112px)!important;
  padding-bottom:clamp(72px,7vw,112px)!important;
}
.internal-page #descripcion .ip-section__head{
  display:contents!important;
}
.internal-page #descripcion .ip-kicker{
  grid-column:1 / -1!important;
  margin:0!important;
}
.internal-page #descripcion .ip-section__head h2{
  grid-column:1!important;
  width:100%!important;
  max-width:620px!important;
  font-size:clamp(38px,4vw,68px)!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
}
.internal-page #descripcion .ip-copy{
  grid-column:2!important;
  width:100%!important;
  max-width:760px!important;
  margin:4px 0 0!important;
}
.internal-page #descripcion .ip-copy p{
  font-size:clamp(16px,1.12vw,19px)!important;
  line-height:1.65!important;
}
.internal-page #descripcion .ip-copy p+p{margin-top:1.15em!important}

/* METHODOLOGY — one component everywhere */
.internal-page #metodologia.methodology-v42{
  padding-top:clamp(96px,10vw,154px)!important;
  padding-bottom:clamp(96px,10vw,154px)!important;
}
.internal-page #metodologia .skills-v42__shell{
  width:min(calc(100% - var(--skill-gutter) - var(--skill-gutter-right)),var(--skill-content-max))!important;
  max-width:var(--skill-content-max)!important;
  margin:0 auto!important;
}
.internal-page #metodologia .skills-v42__intro-row{
  grid-template-columns:minmax(0,1.22fr) minmax(280px,.58fr)!important;
  gap:clamp(42px,7vw,110px)!important;
}
.internal-page #metodologia .skills-v42__intro-row h2{
  font-size:clamp(42px,5.2vw,82px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  text-wrap:balance;
}
.internal-page #metodologia .methodology-v42__lead{
  max-width:520px!important;
  font-size:clamp(16px,1.15vw,19px)!important;
  line-height:1.65!important;
}

/* CONCEPTS */
.internal-page #tags .ip-tags{
  width:min(100%,var(--skill-content-max))!important;
  margin:clamp(58px,7vw,98px) auto 0!important;
  gap:12px!important;
}
.internal-page #tags .ip-tag{
  min-height:46px;
  padding:12px 18px!important;
  display:inline-flex;
  align-items:center;
}

/* Remove page-specific deviations from the master */
.internal-page .identity-hero__word,
.internal-page .identity-eyebrow,
.internal-page .identity-system,
.internal-page #entregables{display:none!important}
.internal-page .identity-description__grid{display:block!important}
.internal-page .identity-description .identity-copy{margin-left:auto!important}

@media(max-width:980px){
  .internal-page{--skill-gutter:clamp(24px,4.2vw,52px);--skill-gutter-right:clamp(24px,4.2vw,52px)}
  .internal-page .ip-hero__lead{margin-left:0!important}
  .internal-page #metodologia .skills-v42__intro-row{grid-template-columns:1fr!important}
  .internal-page #descripcion.ip-section{grid-template-columns:1fr!important;column-gap:0!important}
  .internal-page #descripcion .ip-kicker,.internal-page #descripcion .ip-section__head h2,.internal-page #descripcion .ip-copy{grid-column:1!important}
  .internal-page #descripcion .ip-copy{margin-top:12px!important;max-width:720px!important}
}
@media(max-width:760px){
  .internal-page{--skill-gutter:24px;--skill-gutter-right:24px;--skill-section-y:82px}
  .internal-page .ip-hero{min-height:88svh!important;padding-top:118px!important;padding-bottom:58px!important}
  .internal-page .ip-hero__meta{left:24px!important;top:96px!important}
  .internal-page .ip-hero h1{font-size:clamp(46px,14.5vw,72px)!important;line-height:.92!important}
  .internal-page .ip-hero__lead{font-size:17px!important;line-height:1.5!important;margin-top:24px!important}
  .internal-page .ip-section__head{grid-template-columns:1fr!important;gap:22px!important}
  .internal-page #descripcion.ip-section{padding-top:68px!important;padding-bottom:68px!important;row-gap:20px!important}
  .internal-page #descripcion .ip-section__head h2{font-size:clamp(36px,10vw,52px)!important}
  .internal-page #descripcion .ip-copy{margin-top:8px!important}
  .internal-page .ip-kicker{margin:0!important}
  .internal-page .ip-section__head h2{font-size:clamp(38px,11.5vw,58px)!important}
  .internal-page .ip-copy{margin-top:42px!important}
  .internal-page #metodologia .skills-v42__shell{width:calc(100% - 48px)!important}
}
