/* Inventiva AI v98 — Desktop composition preserved on mobile.
   The sapphire lens, stacked three stages, numerical crystals and editorial
   hierarchy are the SAME elements at all breakpoints. No external widgets. */
.ai-page{overflow-x:clip}
.ai-page .ai-container{max-width:1320px}
.ai-page .ai-hero__visual,
.ai-page .ai-stack__art,
.ai-page .ai-stack__crystal{transform:translateZ(0)}
.ai-page .ai-hero__lens{
  background:radial-gradient(ellipse 38% 23% at 32% 13%,rgba(255,255,255,.69),transparent 85%),
    conic-gradient(from 135deg,#0b587e,#61bfbe 12%,#d2ffee 29%,#0b507c 54%,#8fe4d3 78%,#145b73);
  box-shadow:inset 8px 10px 26px rgba(245,255,251,.52),
    inset -20px -22px 38px rgba(0,20,46,.64),0 0 0 10px rgba(188,255,240,.09),
    0 0 42px rgba(130,245,231,.19),0 23px 47px rgba(0,22,44,.51)
}
.ai-page .ai-hero__glass{
  border:1.5px solid rgba(244,255,254,.85);
  background:linear-gradient(139deg,rgba(235,255,250,.36),rgba(138,230,228,.19) 63%,rgba(13,89,135,.26));
  box-shadow:inset 0 2px 0 rgba(255,255,255,.68),0 14px 29px rgba(0,18,45,.37)
}
.ai-page .ai-stack__card{scroll-margin-top:104px}
.ai-page .ai-stack__art::before{pointer-events:none}
.ai-page .ai-stack__glass-orbit{
  background:radial-gradient(ellipse 48% 24% at 32% 14%,rgba(255,255,255,.77),transparent),
    conic-gradient(from 16deg,#f1fff0d1,#68b9ce6b,#d7fff3cf,#1f7fa08b,#f4fff4ed);
  box-shadow:inset 0 2px 8px rgba(252,255,249,.78),
    inset -20px -25px 34px rgba(0,23,51,.56),0 21px 41px rgba(0,12,34,.42)
}
/* Tangible crystalline material, not an animated blur over every card. */
.ai-page .ai-stack__card{border:1.5px solid rgba(239,255,250,.75)}
.ai-page .ai-stack__card::after{content:"";position:absolute;z-index:0;pointer-events:none;
  inset:1px 2px auto;height:34%;border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.18),transparent)}
.ai-page .ai-usecases__grid article{border:1px solid rgba(255,255,255,.99);
  background:linear-gradient(142deg,rgba(255,255,255,.97),rgba(210,244,231,.79));
  box-shadow:inset 0 1px 0 #fff,0 14px 31px rgba(12,76,66,.12)}
.ai-page .ai-usecases__grid p{font-size:14px;line-height:1.73}
.ai-page .ai-method__steps p{font-size:14px;line-height:1.63}
/* Deliverables — concrete guidance, not unverified success claims. */
.ai-outcomes{background:radial-gradient(ellipse 52% 76% at 92% 18%,rgba(147,226,212,.26),transparent 80%),#ebf6ee;
  padding:clamp(75px,8vw,112px) 0;color:#153e36}
.ai-outcomes__head{max-width:980px;margin-bottom:33px}
.ai-outcomes__head .ai-eyebrow{color:#177b67}
.ai-outcomes__head h2{font-size:clamp(35px,4.5vw,65px);font-weight:850;line-height:1.12;
  letter-spacing:-.058em;color:#103c39;margin:16px 0 17px;text-wrap:balance}
.ai-outcomes__head h2 em{font-style:normal;color:#348a73}
.ai-outcomes__head>p{font-size:16px;line-height:1.72;color:#52796d;max-width:820px}
.ai-outcomes__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.ai-outcomes__card{position:relative;min-width:0;isolation:isolate;overflow:hidden;
  padding:clamp(23px,2.8vw,36px);border-radius:23px;
  border:1px solid rgba(255,255,255,.97);
  background:linear-gradient(146deg,rgba(255,255,255,.95),rgba(202,240,231,.7));
  box-shadow:inset 0 2px 0 #fff,0 16px 31px rgba(11,78,67,.13)}
.ai-outcomes__card--dark{color:#f3fff7;
  background:radial-gradient(ellipse at 87% 2%,rgba(207,255,245,.25),transparent 80%),
    linear-gradient(135deg,#12646a,#0b3a58 87%);
  border-color:rgba(229,255,252,.65);box-shadow:inset 0 1px 0 rgba(255,255,255,.44),0 19px 37px rgba(7,67,70,.19)}
.ai-outcomes__num{display:grid;place-items:center;width:45px;height:45px;border-radius:14px;
  background:#cfeede;border:1px solid rgba(29,131,105,.22);font-size:13px;font-weight:800;color:#135e50;margin-bottom:36px}
.ai-outcomes__card--dark .ai-outcomes__num{background:rgba(210,255,244,.17);
  color:#dfffcd;border-color:rgba(239,255,249,.39)}
.ai-outcomes__card h3{font-size:clamp(22px,2.25vw,30px);line-height:1.18;letter-spacing:-.042em;margin:0 0 12px}
.ai-outcomes__card p{font-size:14px;line-height:1.7;color:#4f726a;margin:0 0 17px}
.ai-outcomes__card--dark p{color:#d5eded}
.ai-outcomes__card ul{margin:0;padding-left:18px;display:grid;gap:9px}
.ai-outcomes__card li{font-size:13px;line-height:1.55;color:#23564c}
.ai-outcomes__card--dark li{color:#e5fff0}
.ai-outcomes__note{font-size:12px;color:#50716a;margin:17px 0 0;line-height:1.72}
@media(min-width:641px) and (max-width:1040px){
 .ai-page .ai-hero__grid{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:8px;min-height:0}
 .ai-page .ai-hero h1{font-size:clamp(36px,4.3vw,52px)}
 .ai-page .ai-hero__visual{width:100%;min-height:0}
 .ai-page .ai-hero__glass{min-width:0;max-width:164px;padding:13px}
 .ai-page .ai-hero__glass strong{font-size:12px}
 .ai-page .ai-stack__card{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:0}
 .ai-page .ai-stack__copy{padding:clamp(21px,3.2vw,34px)}
 .ai-page .ai-stack__art{min-height:335px}
 .ai-page .ai-stack__copy h3{font-size:clamp(31px,3.8vw,41px)}
}
@media(max-width:900px){
 .ai-outcomes__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ai-outcomes__card--dark{grid-column:1/-1}
}
@media(max-width:640px){
 .ai-page .ai-main{overflow:clip}
 .ai-page .ai-hero__grid{grid-template-columns:1fr;gap:0;padding:40px 0 45px}
 .ai-page .ai-hero h1{font-size:clamp(36px,9.4vw,47px);line-height:1.09;
   letter-spacing:-.058em;margin:21px 0}
 .ai-page .ai-hero__copy>p{font-size:16px;line-height:1.68}
 .ai-page .ai-hero__visual{width:min(100%,440px);min-height:0;height:auto;aspect-ratio:1;justify-self:center;margin:17px auto 0}
 .ai-page .ai-hero__lens{width:67%}
 .ai-page .ai-hero__lens-core strong{font-size:clamp(54px,17vw,85px)}
 .ai-page .ai-hero__lens-core small{font-size:clamp(8px,2.2vw,11px)}
 .ai-page .ai-hero__lens-core span{font-size:clamp(6px,1.55vw,9px)}
 .ai-page .ai-hero__glass{min-width:0;width:min(44%,164px);max-width:none;
   padding:11px 12px;border-radius:15px;gap:4px}
 .ai-page .ai-hero__glass strong{font-size:clamp(10px,2.8vw,13px)}
 .ai-page .ai-hero__glass span{font-size:clamp(7px,2vw,10px)}
 .ai-page .ai-hero__glass--back{left:0;top:11%;transform:rotate(-4deg)}
 .ai-page .ai-hero__glass--front{right:0;bottom:10%;transform:rotate(4deg)}
 .ai-page .ai-hero__halo--two{inset:17%}
 .ai-page .ai-stack{padding:72px 0 76px}
 .ai-page .ai-stack__pile{display:grid;gap:20px}
 /* Maintain the DESKTOP order: copy LEFT, sapphire sculpture RIGHT.
    Only secondary details flow beneath to stay readable at phone widths. */
 .ai-page .ai-stack__card{
   display:grid!important;grid-template-columns:minmax(0,1fr) minmax(110px,.87fr);
   column-gap:5px;row-gap:0;align-items:center;
   min-height:0;margin:0;position:relative;top:auto;
   padding:19px 17px 22px;border-radius:24px;overflow:hidden;
   transform:none!important
 }
 .ai-page .ai-stack__copy{display:contents}
 .ai-page .ai-stack__meta{grid-column:1;grid-row:1;position:relative;z-index:3;
   align-self:start;margin:0 0 14px;gap:5px;flex-wrap:wrap}
 .ai-page .ai-stack__fraction b{font-size:15px}
 .ai-page .ai-stack__fraction i{font-size:10px}
 .ai-page .ai-stack__phase{font-size:8px;padding:6px 8px;letter-spacing:.07em}
 .ai-page .ai-stack__copy h3{grid-column:1;grid-row:2;position:relative;z-index:3;
   font-size:clamp(24px,6.4vw,35px);line-height:1.1;
   margin:0 0 14px;letter-spacing:-.04em;overflow-wrap:anywhere;hyphens:auto}
 .ai-page .ai-stack__art{grid-column:2;grid-row:1/span 2;
   position:relative;z-index:1;order:initial;
   align-self:stretch;width:100%;height:100%;min-height:205px;overflow:visible}
 .ai-page .ai-stack__art::before{inset:13%;box-shadow:0 0 0 13px #ecfff10d,0 0 0 28px #ecfff10a}
 .ai-page .ai-stack__glass-orbit{width:97%;max-width:190px}
 .ai-page .ai-stack__crystal{width:51%;max-width:96px;
   transform:rotate(-12deg);-webkit-backdrop-filter:none;backdrop-filter:none}
 .ai-page .ai-stack__crystal span{font-size:clamp(38px,12vw,62px);transform:rotate(12deg)}
 .ai-page .ai-stack__ghost-number{font-size:clamp(70px,25vw,129px)}
 .ai-page .ai-stack__lead{grid-column:1/-1;grid-row:3;position:relative;z-index:2;
   font-size:16px;line-height:1.55;margin:9px 0 15px;max-width:100%}
 .ai-page .ai-stack__pills{grid-column:1/-1;grid-row:4;position:relative;z-index:2;gap:7px;margin:0 0 16px}
 .ai-page .ai-stack__pills li{font-size:11.5px;line-height:1.35;padding:8px 12px}
 .ai-page .ai-stack__detail{grid-column:1/-1;grid-row:5;position:relative;z-index:2;
   font-size:13px;line-height:1.68;margin:0 0 15px;max-width:none}
 .ai-page .ai-stack__link{grid-column:1/-1;grid-row:6;position:relative;z-index:3;
   font-size:13px;line-height:1.5}
 .ai-page .ai-stack__progress,.ai-page .ai-stack__side-nav{display:none!important}
 .ai-page .ai-usecases__grid article{min-height:0}
 .ai-outcomes{padding:73px 0}
 .ai-outcomes__head h2{font-size:clamp(34px,9vw,46px)}
 .ai-outcomes__grid{grid-template-columns:1fr}
 .ai-outcomes__card--dark{grid-column:auto}
 .ai-outcomes__card{padding:25px}
 .ai-outcomes__num{margin-bottom:23px}
 .ai-page .ai-method__copy h2{font-size:clamp(33px,9vw,46px)}
}
@media(max-width:360px){
 .ai-page .ai-stack__card{grid-template-columns:minmax(0,1fr) minmax(92px,.78fr);padding:17px 14px 20px}
 .ai-page .ai-stack__copy h3{font-size:23px}
 .ai-page .ai-stack__art{min-height:185px}
 .ai-page .ai-stack__phase{font-size:7px}
}
@media(prefers-reduced-motion:reduce){
 .ai-page .ai-hero__halo--two{animation:none!important}
 .ai-page .ai-stack__card{scroll-behavior:auto}
}
/* Seis escenarios: dos filas simétricas de tres tarjetas en desktop. */
@media(min-width:921px){
 .ai-page .ai-usecases__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:641px) and (max-width:920px){
 .ai-page .ai-usecases__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .ai-page .ai-usecases__grid{grid-template-columns:1fr}
}
