/*
 * ICA Platform v0.21.1 — Mobile UX System
 * Final responsive layer loaded after responsive.css.
 * Goal: mobile-first reading, large touch targets, horizontal discovery instead of endless stacking.
 */

.ica26-mobile-swipe-hint{display:none}

@media(max-width:720px){
  /* Global mobile header: compact, stable and touch friendly. */
  .ica-system-header{min-height:64px}
  .ica-system-header__inner{width:calc(100% - 20px);min-height:64px;padding:7px 0}
  .ica-system-header__brand,.ica-system-header__brand img{width:156px;height:46px}
  .ica-system-header__toggle{width:44px;height:44px;border-radius:13px}
  .ica-system-header__nav{left:-10px;right:-10px;max-height:calc(100dvh - 66px);overflow:auto;padding:10px 10px 16px}
  .ica-system-header__nav a{min-height:50px;font-size:15px!important}

  /* Offer subnav remains one compact orientation row instead of a second tall header. */
  .ica26-offer-nav{
    top:var(--ica-header-offset,64px);
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:10px;
    min-height:50px;
    padding:5px 12px;
    flex-direction:initial;
    background:rgba(255,255,255,.97);
  }
  .ica26-offer-nav>a{font-size:12.5px;white-space:nowrap}
  .ica26-offer-nav>div{display:flex;width:100%;gap:3px;overflow:auto hidden;scrollbar-width:none;scroll-snap-type:x proximity}
  .ica26-offer-nav>div::-webkit-scrollbar{display:none}
  .ica26-offer-nav>div a{flex:0 0 auto;min-height:40px;padding:0 10px;font-size:12.5px;white-space:nowrap;scroll-snap-align:start}

  /* Hero: less vertical repetition, stronger first screen. */
  .ica26-offer-hero{padding:52px 0 44px}
  .ica26-offer-hero__grid{gap:22px}
  .ica26-offer-hero__copy h1{margin:12px 0 14px;font-size:clamp(38px,11.5vw,52px);line-height:.98}
  .ica26-offer-hero__copy>p{font-size:16px;line-height:1.68}
  .ica26-offer-hero__principle{margin-top:18px;padding:9px 12px;font-size:12.5px;line-height:1.45}
  .ica26-offer-page.is-aprende .ica26-offer-hero__side{display:none}

  /* Section rhythm is shorter on small screens without shrinking text. */
  .ica26-offer-page .ica26-section{padding:58px 0}
  .ica26-offer-page .ica26-heading{margin-bottom:24px}
  .ica26-offer-page .ica26-heading h2,.ica26-offer-page .ica26-split h2{font-size:clamp(31px,9.5vw,40px);line-height:1.05}
  .ica26-offer-page .ica26-heading p,.ica26-offer-page .ica26-split>div>p{font-size:16px;line-height:1.7}

  /* APRENDE intro: compact guidance card. */
  .ica26-offer-page.is-aprende .ica26-academic-layout{display:block}
  .ica26-offer-page.is-aprende .ica26-chapter__intro--premium{
    position:relative;
    top:auto;
    padding:22px 19px;
    border-radius:24px;
    background:
      radial-gradient(circle at 90% 10%,rgba(240,209,127,.18),transparent 28%),
      linear-gradient(150deg,#06152d,#0a3474 72%,#0c55b1);
    box-shadow:0 18px 44px rgba(4,30,70,.16);
  }
  .ica26-offer-page.is-aprende .ica26-chapter__intro--premium h2{margin:10px 0 12px;font-size:clamp(34px,10.5vw,44px);line-height:1.01}
  .ica26-offer-page.is-aprende .ica26-chapter__intro--premium>p{font-size:15.5px;line-height:1.68}
  .ica26-offer-page.is-aprende .ica26-academic-guide{margin:16px 0 14px;padding:14px 15px;border-radius:16px}
  .ica26-offer-page.is-aprende .ica26-academic-guide strong{font-size:16px}
  .ica26-offer-page.is-aprende .ica26-academic-guide small{display:none}
  .ica26-offer-page.is-aprende .ica26-chapter__intro--premium>.ica26-btn{width:100%;min-height:50px}

  /* Mobile disclosure cue. */
  .ica26-mobile-swipe-hint{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:18px 0 10px;
    color:#52637b;
    font-size:13px;
    line-height:1.4;
  }
  .ica26-mobile-swipe-hint b{color:#0b55bf;font-size:12.5px;letter-spacing:.02em}
  .ica26-mobile-swipe-hint.is-dark{color:#c5d3e5}
  .ica26-mobile-swipe-hint.is-dark b{color:#f0d17f}

  /* Academic doors become a swipeable discovery rail. This cuts ~5 cards of vertical scroll. */
  .ica26-offer-page.is-aprende .ica26-academic-grid{
    display:flex!important;
    grid-template-columns:none!important;
    gap:14px;
    width:calc(100% + 12px);
    margin-right:-12px;
    padding:2px 12px 18px 0;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:0 12px;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .ica26-offer-page.is-aprende .ica26-academic-grid::-webkit-scrollbar{display:none}
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait{
    flex:0 0 min(82vw,330px);
    width:min(82vw,330px);
    scroll-snap-align:start;
    scroll-snap-stop:always;
    border-radius:22px;
    box-shadow:0 14px 34px rgba(6,35,75,.10);
  }
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait .ica26-academic-card__media{
    aspect-ratio:16/9;
    min-height:170px!important;
    padding:12px;
  }
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait .ica26-academic-card__media img{max-height:160px}
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait .ica26-academic-card__body{padding:18px 17px 17px}
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait h3{min-height:0;margin-bottom:7px;font-size:21px;line-height:1.16}
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait p{min-height:0;font-size:15px;line-height:1.62;-webkit-line-clamp:3}
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait .ica26-academic-card__topics{display:none}
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait .ica26-academic-card__cta{min-height:50px;margin-top:16px;font-size:14px}

  /* ICA CORE becomes a swipe rail rather than five stacked blocks. */
  .ica26-offer-page.is-aprende .ica26-section--dark{padding:58px 0 64px}
  .ica26-offer-page.is-aprende .ica26-core-flow{
    display:flex!important;
    grid-template-columns:none!important;
    gap:12px;
    border:0;
    border-radius:0;
    overflow-x:auto;
    overflow-y:hidden;
    background:transparent;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .ica26-offer-page.is-aprende .ica26-core-flow::-webkit-scrollbar{display:none}
  .ica26-offer-page.is-aprende .ica26-core-flow>div{
    flex:0 0 min(78vw,310px);
    min-height:148px;
    padding:22px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:20px;
    background:rgba(2,17,42,.58);
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .ica26-offer-page.is-aprende .ica26-core-flow strong{font-size:20px}
  .ica26-offer-page.is-aprende .ica26-core-flow span{font-size:14.5px;line-height:1.62}

  /* Membership plans become comparable by swipe instead of a three-card vertical wall. */
  .ica26-offer-page.is-aprende #membresia{padding-bottom:64px}
  .ica26-offer-page.is-aprende .ica26-plan-grid{
    display:flex!important;
    grid-template-columns:none!important;
    gap:14px;
    width:calc(100% + 12px);
    margin-right:-12px;
    padding:2px 12px 20px 0;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .ica26-offer-page.is-aprende .ica26-plan-grid::-webkit-scrollbar{display:none}
  .ica26-offer-page.is-aprende .ica26-plan-card{
    flex:0 0 min(84vw,340px);
    width:min(84vw,340px);
    min-height:500px;
    padding:24px 21px;
    border-radius:22px;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .ica26-offer-page.is-aprende .ica26-plan-card.is-featured{transform:none}
  .ica26-offer-page.is-aprende .ica26-plan-card h3{font-size:30px}
  .ica26-offer-page.is-aprende .ica26-plan-card>p,.ica26-offer-page.is-aprende .ica26-plan-card li{font-size:14.5px;line-height:1.58}
  .ica26-offer-page.is-aprende .ica26-plan-card .ica26-btn{min-height:50px;font-size:14px}
  .ica26-offer-page.is-aprende .ica26-note{font-size:13.5px;line-height:1.62}

  /* Final depth section: readable and compact. */
  .ica26-offer-page.is-aprende .ica26-section--soft{padding:56px 0}
  .ica26-offer-page.is-aprende .ica26-link-stack a{padding:18px;border-radius:17px}
  .ica26-offer-page.is-aprende .ica26-link-stack strong{font-size:17px}
  .ica26-offer-page.is-aprende .ica26-link-stack span{font-size:14px;line-height:1.58}
  .ica26-offer-page.is-aprende .ica26-closing{padding:64px 0}
  .ica26-offer-page.is-aprende .ica26-closing h2{font-size:clamp(32px,9.5vw,42px)}

  /* Footer is deliberately compact on mobile. */
  .ica26-public-footer{padding:42px 0}
  .ica26-public-footer__grid{gap:24px}
  .ica26-public-footer p,.ica26-public-footer nav a{font-size:14px}

  /* Touch/focus and accidental overflow. */
  .ica26-offer-page :where(a,button){-webkit-tap-highlight-color:transparent}
  .ica26-offer-page :where(.ica26-btn,.ica26-academic-card__cta,.ica26-link-stack a):focus-visible{outline:3px solid rgba(19,118,255,.38);outline-offset:3px}
}

@media(max-width:420px){
  .ica26-offer-nav{grid-template-columns:1fr;padding-inline:10px}
  .ica26-offer-nav>a{display:none}
  .ica26-offer-page.is-aprende .ica26-academic-card--portrait{flex-basis:86vw;width:86vw}
  .ica26-offer-page.is-aprende .ica26-plan-card{flex-basis:88vw;width:88vw}
}

@media(prefers-reduced-motion:reduce){
  .ica26-offer-page.is-aprende :where(.ica26-academic-grid,.ica26-core-flow,.ica26-plan-grid){scroll-behavior:auto}
}

/* v0.21.1 — HOME Premium phase 1 · mobile-first refinements */
@media(max-width:680px){
  .ica26-home .ica-site-header__inner{width:calc(100% - 14px);min-height:58px;padding:2px 6px 2px 9px;border-radius:15px}
  .ica26-home .ica-brand,.ica26-home .ica-brand img{width:158px;height:43px}
  .ica26-home .ica-menu-toggle{width:42px;height:42px;border-radius:11px}
  .ica26-home .ica26-home-hero{padding:94px 0 116px}
  .ica26-home .ica26-home-hero:before{background-position:58% center;filter:saturate(.87) contrast(1.04) brightness(.67)}
  .ica26-home .ica26-home-hero__overlay{background:
    radial-gradient(circle at 68% 27%,rgba(13,105,245,.22),transparent 32%),
    linear-gradient(180deg,rgba(1,12,31,.92),rgba(2,25,61,.89) 54%,rgba(1,15,38,.93))}
  .ica26-home .ica26-home-hero__copy{padding:0}
  .ica26-home .ica26-home-hero__copy .ica26-kicker{min-height:28px;padding-inline:9px;font-size:10px}
  .ica26-home .ica26-home-hero__copy h1{max-width:540px;margin:16px 0 17px;font-size:clamp(43px,12vw,58px);line-height:.98;letter-spacing:-.05em}
  .ica26-home .ica26-home-hero__copy>p{font-size:16.5px;line-height:1.67}
  .ica26-home .ica26-home-hero__promise{display:flex;flex-wrap:nowrap;gap:7px;margin:19px -2px 0;overflow-x:auto;padding:0 2px 4px;scrollbar-width:none;scroll-snap-type:x proximity}
  .ica26-home .ica26-home-hero__promise::-webkit-scrollbar{display:none}
  .ica26-home .ica26-home-hero__promise strong,
  .ica26-home .ica26-home-hero__promise span{flex:0 0 auto;min-height:32px;padding-inline:10px;font-size:12px;scroll-snap-align:start}
  .ica26-home .ica26-home-hero__actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:22px}
  .ica26-home .ica26-home-hero__actions .ica26-btn{width:100%;min-height:50px}
  .ica26-home .ica26-home-hero__signal{display:none}

  .ica26-home .ica26-entry{margin-top:-72px;padding-bottom:26px}
  .ica26-home .ica26-entry__panel{padding:20px 17px 18px;border-radius:22px;box-shadow:0 24px 58px rgba(3,35,79,.16)}
  .ica26-home .ica26-entry__panel:before{left:18px;width:70px}
  .ica26-home .ica26-entry__head{margin-bottom:17px}
  .ica26-home .ica26-entry__head h2{font-size:clamp(29px,8.4vw,38px)}
  .ica26-home .ica26-entry__head>p{font-size:14.5px;line-height:1.6}
  .ica26-home .ica26-door-grid{
    display:flex;
    grid-template-columns:none;
    gap:11px;
    margin-inline:-2px;
    padding:2px 2px 10px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .ica26-home .ica26-door-grid::-webkit-scrollbar{display:none}
  .ica26-home .ica26-door-card{
    flex:0 0 min(82vw,320px);
    min-height:178px;
    padding:18px;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .ica26-home .ica26-door-card p{max-width:90%;font-size:13.5px}
  .ica26-home .ica26-entry__principle{
    display:flex;
    flex-wrap:nowrap;
    gap:16px;
    margin-top:8px;
    padding:12px 14px;
    overflow-x:auto;
    white-space:nowrap;
    scrollbar-width:none;
  }
  .ica26-home .ica26-entry__principle::-webkit-scrollbar{display:none}
  .ica26-home .ica26-entry__principle span:before{display:none}
}

@media(max-width:420px){
  .ica26-home .ica-brand,.ica26-home .ica-brand img{width:146px;height:40px}
  .ica26-home .ica26-home-hero{padding-top:88px}
  .ica26-home .ica26-door-card{flex-basis:86vw}
}
