/* Deskia visual scale — final harmonisation pass.
   Loaded last so media, cards and section rhythm share one consistent scale. */
:root{
  --ds-visual-hero-max:700px;
  --ds-visual-feature-max:560px;
  --ds-visual-tall-max:520px;
  --ds-visual-wide-max:700px;
  --ds-visual-gallery-max:720px;
  --ds-section-space:64px;
  --ds-section-space-compact:52px;
}

/* Shared section rhythm */
body:not(.page-home-inferencia) .section{padding-top:var(--ds-section-space);padding-bottom:var(--ds-section-space)}
body:not(.page-home-inferencia) .solution-hero,
body:not(.page-home-inferencia) .subhero{padding-top:58px;padding-bottom:58px}
.duo-light-section,.duo-dark-section{padding-top:68px;padding-bottom:68px}
.corp-section{padding-top:68px;padding-bottom:68px}

/* Home: hero stays dominant, supporting screenshots step down in size. */
.page-home-inferencia .di-hero .di-shot-card{width:min(100%,var(--ds-visual-hero-max));justify-self:end}
.page-home-inferencia #producto .di-shot-light{width:min(100%,560px);justify-self:start;padding:10px}
.page-home-inferencia #flujo .di-shot-dark{width:min(100%,520px);justify-self:end;border-radius:16px}
.page-home-inferencia #seguimiento .di-stack-card figure{width:min(100%,560px)}
.page-home-inferencia #herramientas .di-shot-dark{width:min(100%,560px);justify-self:start}
.page-home-inferencia .di-shot-light,.page-home-inferencia .di-shot-dark{border-radius:20px}
.page-home-inferencia .di-shot-light img,.page-home-inferencia .di-shot-dark img{border-radius:12px}

/* Product pages: cap screenshots by aspect/use rather than letting the grid fill the column. */
body:not(.page-home-inferencia) .solution-original-shot{width:min(100%,620px);justify-self:center}
body.page-voice .solution-original-shot,
body.page-voz .solution-original-shot,
body:has(.voice-hero) .voice-hero .solution-original-shot{width:min(100%,560px)}
body.page-whatsapp .solution-original-shot,
.whatsapp-hero .solution-original-shot{width:min(100%,700px)}
body:not(.page-home-inferencia) .original-snapshot-frame{border-radius:16px}

/* Duo campaign uses a large hero visual, but not a full-column billboard. */
.page-duo-campaign .duo-hero-shot{width:min(100%,700px);justify-self:center}
.page-duo-campaign .duo-flow-card{max-width:700px;justify-self:center}

/* Premium operation / CPD blocks */
.ds-operation-console{width:min(100%,1120px);margin-left:auto;margin-right:auto}
.ds-sovereignty-gallery{width:min(100%,var(--ds-visual-gallery-max));justify-self:end}
.ds-sovereignty-shell{grid-template-columns:minmax(0,.48fr) minmax(0,.52fr);gap:48px}

/* Corporate imagery should support the story instead of filling the viewport. */
.corp-team{max-width:1120px;margin-left:auto;margin-right:auto}
.corp-member-photo{max-height:430px}
.corp-founder{grid-template-columns:minmax(280px,.42fr) minmax(0,.58fr);gap:58px}
.corp-founder-photo{min-height:0;aspect-ratio:4/4.6;max-height:520px}

/* Keep cards on a common density. */
.duo-pain-grid article,.duo-steps article,.dev-card,.corp-principle{min-height:0}
.duo-pain-grid article{padding:24px}
.ds-compact-feature{min-height:190px;padding:20px}
body.page-pricing-premium .pp-plan-card{padding:26px}

@media(max-width:1180px){
  :root{--ds-visual-hero-max:680px;--ds-visual-feature-max:600px;--ds-visual-tall-max:560px;--ds-visual-gallery-max:760px}
  .page-home-inferencia .di-hero .di-shot-card,
  .page-home-inferencia #producto .di-shot-light,
  .page-home-inferencia #flujo .di-shot-dark,
  .page-home-inferencia #herramientas .di-shot-dark,
  body:not(.page-home-inferencia) .solution-original-shot,
  .page-duo-campaign .duo-hero-shot,
  .ds-sovereignty-gallery{justify-self:center}
  .page-home-inferencia #producto .di-shot-light{width:min(100%,600px)}
  .page-home-inferencia #flujo .di-shot-dark{width:min(100%,560px)}
  .page-home-inferencia #seguimiento .di-stack-card figure{width:min(100%,600px)}
  .page-home-inferencia #herramientas .di-shot-dark{width:min(100%,600px)}
  body:has(.voice-hero) .voice-hero .solution-original-shot{width:min(100%,580px)}
  .whatsapp-hero .solution-original-shot{width:min(100%,720px)}
  .corp-founder{grid-template-columns:minmax(240px,.42fr) minmax(0,.58fr)}
}

@media(max-width:820px){
  :root{--ds-section-space:56px;--ds-section-space-compact:46px}
  body:not(.page-home-inferencia) .solution-hero,
  body:not(.page-home-inferencia) .subhero{padding-top:48px;padding-bottom:50px}
  .duo-light-section,.duo-dark-section,.corp-section{padding-top:58px;padding-bottom:58px}
  .page-home-inferencia .di-hero .di-shot-card,
  .page-home-inferencia #producto .di-shot-light,
  .page-home-inferencia #flujo .di-shot-dark,
  .page-home-inferencia #seguimiento .di-stack-card figure,
  .page-home-inferencia #herramientas .di-shot-dark,
  body:not(.page-home-inferencia) .solution-original-shot,
  .page-duo-campaign .duo-hero-shot,
  .ds-sovereignty-gallery{width:min(100%,620px)}
  .corp-founder{grid-template-columns:1fr;gap:32px}
  .corp-founder-photo{width:min(100%,460px);justify-self:center}
}

@media(max-width:720px){
  :root{--ds-section-space:50px}
  /* On phones the available width is already the correct visual scale. */
  .page-home-inferencia .di-hero .di-shot-card,
  .page-home-inferencia #producto .di-shot-light,
  .page-home-inferencia #flujo .di-shot-dark,
  .page-home-inferencia #seguimiento .di-stack-card figure,
  .page-home-inferencia #herramientas .di-shot-dark,
  body:not(.page-home-inferencia) .solution-original-shot,
  .page-duo-campaign .duo-hero-shot,
  .ds-sovereignty-gallery{width:100%;max-width:100%}
  .page-home-inferencia .di-shot-light{padding:8px;border-radius:16px}
  .page-home-inferencia .di-shot-dark,.page-home-inferencia .di-shot-dark img{border-radius:16px}
  .ds-compact-feature{min-height:0}
}
