/* responsive.css — JAIA Global
   Override layer on top of the fixed 1440 desktop composition.
   NOTE: the DC runtime serialises inline styles WITH a space after the colon
   (e.g. "font-size: 60px"), so every [style*="…"] selector MUST include it.
   The type scale below is generated from EVERY distinct font-size in the site,
   so no heading is ever left at desktop size (which caused mid-word breaks). */

/* ---- base / anti-overflow ---- */
html,body{max-width:100%;overflow-x:hidden;}
.jaia-page{width:100%!important;max-width:1440px;box-sizing:border-box;}
.jaia-page img,.jaia-page video,.jaia-page iframe{max-width:100%;}
.jaia-page h1,.jaia-page h2,.jaia-page h3{overflow-wrap:break-word;hyphens:none;}
*{-webkit-text-size-adjust:100%;}

/* ============ ≤1024px — laptop / landscape tablet ============ */
@media (max-width:1024px){
  .jaia-page [style*="grid-template-columns"]{grid-template-columns:repeat(2,1fr)!important;}
  .jaia-page [style*="grid-row: span 2"]{grid-row:auto!important;}
  .jaia-page [style*="position: sticky"]{position:static!important;}
}

/* ============ ≤768px — TABLET / MOBILE: single column ============ */
@media (max-width:768px){
  .jaia-page [style*="grid-template-columns"]{grid-template-columns:1fr!important;}
  .jaia-page [style*="grid-row: span 2"]{grid-row:auto!important;}
  .jaia-page [style*="position: sticky"]{position:static!important;}
  .jaia-page [style*="justify-content: space-between"]{flex-wrap:wrap!important;}
  .jaia-page [style*="px 56px"]{padding-left:22px!important;padding-right:22px!important;}
  .jaia-page [style*="88px 56px"]{padding-top:56px!important;padding-bottom:56px!important;}

  /* HERO collage → clean mosaic */
  .jaia-hero-media{position:static!important;height:auto!important;display:grid!important;
    grid-template-columns:1fr 1fr!important;gap:12px!important;margin-top:6px!important;}
  .jaia-hero-glow{display:none!important;}
  .jaia-hero-card{position:relative!important;inset:auto!important;top:auto!important;left:auto!important;
    right:auto!important;bottom:auto!important;width:auto!important;height:190px!important;}
  .jaia-hero-card--lead{grid-column:1 / -1!important;height:230px!important;}

  /* KPI stats: 2-up, centred */
  .jaia-page .jaia-stats{grid-template-columns:1fr 1fr!important;margin-top:40px!important;}
  .jaia-page .jaia-stats > div{padding:22px 14px!important;border-right:0!important;text-align:center!important;}

  /* promise / trust badges wrap tight */
  .jaia-promise{gap:6px 14px!important;justify-content:center!important;}

  /* funnel row (Notoriété → Confiance → …) wraps instead of overflowing */
  .jaia-funnel{flex-wrap:wrap!important;gap:8px 10px!important;padding:20px!important;}

  /* section head: title + button stack with breathing room */
  .jaia-section-head{flex-direction:column!important;align-items:flex-start!important;gap:22px!important;}

  /* service-page KPI row: centre the big numbers once stacked */
  .jaia-kpis{text-align:center!important;}
  .jaia-kpis span[style*="display: block"]{margin-left:auto!important;margin-right:auto!important;}

  /* footer base row: stack */
  .jaia-footer-base{flex-direction:column!important;gap:8px!important;align-items:flex-start!important;}
  .jaia-footer-cols{flex-wrap:wrap!important;gap:28px 40px!important;}

  /* --- exhaustive type scale (tablet) --- */
  .jaia-page [style*="font-size: 26px"]{font-size:21px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 27px"]{font-size:21px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 28px"]{font-size:21px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 29px"]{font-size:21px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 30px"]{font-size:23px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 32px"]{font-size:23px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 34px"]{font-size:25px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 36px"]{font-size:25px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 38px"]{font-size:25px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 40px"]{font-size:28px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 42px"]{font-size:28px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 44px"]{font-size:28px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 46px"]{font-size:30px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 48px"]{font-size:30px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 50px"]{font-size:30px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 52px"]{font-size:33px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 54px"]{font-size:33px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 56px"]{font-size:33px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 60px"]{font-size:36px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 64px"]{font-size:36px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 66px"]{font-size:36px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 68px"]{font-size:36px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 70px"]{font-size:40px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 72px"]{font-size:40px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 74px"]{font-size:40px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 88px"]{font-size:42px!important;letter-spacing:-1px!important;}
}

/* ============ ≤480px — PHONE ============ */
@media (max-width:480px){
  .jaia-page [style*="px 56px"]{padding-left:18px!important;padding-right:18px!important;}
  .jaia-page [style*="px 40px"]{padding-left:18px!important;padding-right:18px!important;}

  .jaia-hero-media{grid-template-columns:1fr!important;}
  .jaia-hero-card{height:200px!important;}
  .jaia-hero-card--lead{height:220px!important;}

  .jaia-page .jaia-stats > div{padding:18px 10px!important;}

  .jaia-promise{flex-direction:column!important;gap:7px!important;align-items:center!important;text-align:center;}
  .jaia-promise > span[style*="rgba(244, 241, 234, 0.25)"]{display:none!important;}

  /* --- exhaustive type scale (phone) --- */
  .jaia-page [style*="font-size: 26px"]{font-size:20px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 27px"]{font-size:20px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 28px"]{font-size:20px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 29px"]{font-size:20px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 30px"]{font-size:22px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 32px"]{font-size:22px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 34px"]{font-size:24px!important;letter-spacing:-0.3px!important;}
  .jaia-page [style*="font-size: 36px"]{font-size:24px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 38px"]{font-size:24px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 40px"]{font-size:26px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 42px"]{font-size:26px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 44px"]{font-size:26px!important;letter-spacing:-0.5px!important;}
  .jaia-page [style*="font-size: 46px"]{font-size:28px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 48px"]{font-size:28px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 50px"]{font-size:28px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 52px"]{font-size:30px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 54px"]{font-size:30px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 56px"]{font-size:30px!important;letter-spacing:-0.7px!important;}
  .jaia-page [style*="font-size: 60px"]{font-size:32px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 64px"]{font-size:32px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 66px"]{font-size:32px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 68px"]{font-size:32px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 70px"]{font-size:34px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 72px"]{font-size:34px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 74px"]{font-size:34px!important;letter-spacing:-1px!important;}
  .jaia-page [style*="font-size: 88px"]{font-size:36px!important;letter-spacing:-1px!important;}
}

/* ============ MOBILE HAMBURGER NAV (injected by mobile-nav.js) ============ */
.jaia-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:11px;background:transparent;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.jaia-burger span{display:block;height:2px;width:100%;background:#F4F1EA;border-radius:2px;transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .2s;}
.jaia-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.jaia-burger.open span:nth-child(2){opacity:0;}
.jaia-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

.jaia-mnav-overlay{position:fixed;inset:0;z-index:9999;background:#181019;display:flex;flex-direction:column;padding:78px 26px 44px;transform:translateY(-102%);opacity:0;pointer-events:none;transition:transform .34s cubic-bezier(.4,0,.2,1),opacity .25s;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.jaia-mnav-overlay.open{transform:translateY(0);opacity:1;pointer-events:auto;}
.jaia-mnav-overlay::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 50% at 88% 4%,rgba(110,77,245,0.22),transparent 60%),radial-gradient(52% 46% at 4% 100%,rgba(240,54,126,0.12),transparent 62%);pointer-events:none;}
.jaia-mnav-close{position:absolute;top:20px;right:20px;width:44px;height:44px;background:transparent;border:0;color:#F4F1EA;font-size:32px;line-height:1;cursor:pointer;z-index:1;}
.jaia-mnav-inner{position:relative;z-index:1;display:flex;flex-direction:column;}
.jaia-mnav-links{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;}
.jaia-mnav-links span,.jaia-mnav-links a{display:block!important;width:100%;padding:16px 2px!important;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:26px!important;letter-spacing:-0.4px;color:#F4F1EA!important;text-decoration:none;border-bottom:1px solid rgba(244,241,234,0.08);}
.jaia-mnav-actions{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:18px!important;margin-top:30px!important;}

@media(max-width:820px){
  .jaia-burger{display:flex;}
  .jaia-mnav-hide{display:none!important;}
}
@media(min-width:821px){
  .jaia-mnav-overlay,.jaia-burger{display:none!important;}
}
