/* IBERFIT WEB V6.43.5 — mobile art direction and purposeful interaction */

/* Home: practice is evidence; the following System section remains the conceptual explanation. */
.evidence-process--v6435{
  grid-template-columns:minmax(0,.67fr) minmax(0,1.33fr);
  align-items:center;
}
.evidence-process-note{
  margin:1.3rem 0 0;
  padding-top:1rem;
  border-top:1px solid rgba(217,181,104,.24);
  color:rgba(255,255,255,.62);
  font-size:.78rem;
  line-height:1.55;
}
.evidence-process-media--v6435{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  grid-template-rows:auto auto;
  gap:.9rem;
  align-items:stretch;
}
.evidence-process-media--v6435 .evidence-shot{transform:none!important}
.evidence-process-media--v6435 .evidence-shot--eval{grid-row:1/3}
.evidence-process-media--v6435 .evidence-shot--training{grid-column:2;grid-row:1}
.evidence-process-media--v6435 .evidence-shot--product{grid-column:2;grid-row:2;background:#0b2419}
.evidence-process-media--v6435 .evidence-shot img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
}
.evidence-process-media--v6435 .evidence-shot--eval img{aspect-ratio:4/5}
.evidence-process-media--v6435 .evidence-shot--training img{aspect-ratio:16/10}
.evidence-process-media--v6435 .evidence-shot--product img{
  aspect-ratio:auto;
  object-fit:contain;
  background:#0b2419;
}
.evidence-process-media--v6435 .evidence-shot figcaption{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:.65rem;
  align-items:baseline;
}
.evidence-process-media--v6435 .evidence-shot figcaption b{
  color:var(--gold-light,#d9b568);
  font-size:.63rem;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.evidence-process-media--v6435 .evidence-shot figcaption span{line-height:1.45}

/* Mobile hero: keep the human visual present without making the first screen excessively tall. */
@media(max-width:640px){
  body[data-page="home"] .editorial-hero-media{
    margin:0;
    overflow:hidden;
    border-radius:22px;
  }
  body[data-page="home"] .editorial-hero-media picture{display:block}
  body[data-page="home"] .editorial-hero-media img{
    display:block;
    width:100%;
    aspect-ratio:5/4;
    object-fit:cover;
    object-position:center 48%;
  }
  body[data-page="home"] .editorial-hero-media figcaption{
    padding:.65rem .15rem 0;
    font-size:.68rem;
    line-height:1.4;
  }
}

/* Shared mobile sequence pattern: swipe, snap and a visible next-item peek. No autoplay. */
@media(max-width:640px){
  .evidence-process--v6435{grid-template-columns:1fr;gap:1.65rem}
  .evidence-process-media--v6435,
  body[data-page="home"] .system-rail,
  body[data-page="method"] .method-cycle,
  body[data-page="modality_in_person"] .week-flow,
  body[data-page="modality_online"] .continuity-rail,
  body[data-page="about"] .brand-journey--editorial{
    display:grid!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    grid-auto-flow:column;
    grid-auto-columns:minmax(245px,78vw);
    gap:.8rem!important;
    width:auto;
    margin-inline:0 -16px;
    padding:4px 16px 14px 0;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:0;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    border:0!important;
    background:transparent!important;
  }
  .evidence-process-media--v6435::-webkit-scrollbar,
  body[data-page="home"] .system-rail::-webkit-scrollbar,
  body[data-page="method"] .method-cycle::-webkit-scrollbar,
  body[data-page="modality_in_person"] .week-flow::-webkit-scrollbar,
  body[data-page="modality_online"] .continuity-rail::-webkit-scrollbar,
  body[data-page="about"] .brand-journey--editorial::-webkit-scrollbar{display:none}

  .evidence-process-media--v6435>* ,
  body[data-page="home"] .system-rail>* ,
  body[data-page="method"] .method-cycle>* ,
  body[data-page="modality_in_person"] .week-flow>* ,
  body[data-page="modality_online"] .continuity-rail>* ,
  body[data-page="about"] .brand-journey--editorial>*{
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }

  .evidence-process-media--v6435 .evidence-shot--eval,
  .evidence-process-media--v6435 .evidence-shot--training,
  .evidence-process-media--v6435 .evidence-shot--product{
    grid-column:auto!important;
    grid-row:auto!important;
    min-height:0;
    display:block!important;
    border-radius:20px!important;
    box-shadow:0 15px 34px rgba(0,0,0,.18)!important;
  }
  .evidence-process-media--v6435 .evidence-shot img,
  .evidence-process-media--v6435 .evidence-shot--eval img,
  .evidence-process-media--v6435 .evidence-shot--training img{
    width:100%;
    height:auto;
    aspect-ratio:5/4;
    object-fit:cover;
  }
  .evidence-process-media--v6435 .evidence-shot--product img{
    aspect-ratio:400/411;
    object-fit:contain;
  }
  .evidence-process-media--v6435 .evidence-shot figcaption{
    min-height:76px;
    padding:.78rem .9rem .86rem;
  }

  body[data-page="home"] .system-stage,
  body[data-page="method"] .cycle-step,
  body[data-page="modality_in_person"] .week-step,
  body[data-page="modality_online"] .continuity-step,
  body[data-page="about"] .brand-journey--editorial article{
    min-height:205px!important;
    padding:1.35rem 1.2rem!important;
    border:1px solid rgba(31,61,43,.13)!important;
    border-radius:20px!important;
    background:rgba(255,253,249,.82)!important;
    box-shadow:0 14px 34px rgba(16,42,29,.10)!important;
  }
  body[data-page="home"] .system-stage:not(:last-child):after{display:none!important}
  body[data-page="home"] .system-stage{display:grid;grid-template-columns:auto 1fr;gap:.9rem}
  body[data-page="method"] .cycle-step>span,
  body[data-page="modality_in_person"] .week-step>span,
  body[data-page="modality_online"] .continuity-step>span{margin-bottom:1.3rem}
  body[data-page="modality_in_person"] .week-step{border-left:2px solid var(--gold)!important}
  body[data-page="modality_online"] .continuity-step{border-bottom:0!important}

  /* About uses a dark editorial rail; preserve its visual identity. */
  body[data-page="about"] .brand-journey--editorial{margin-top:2rem!important;margin-bottom:1.6rem!important}
  body[data-page="about"] .brand-journey--editorial article{
    background:linear-gradient(155deg,rgba(255,255,255,.085),rgba(255,255,255,.03))!important;
    border-color:rgba(217,181,104,.28)!important;
    box-shadow:0 16px 38px rgba(0,0,0,.17)!important;
  }
  body[data-page="about"] .brand-journey--editorial .journey-current{
    background:linear-gradient(155deg,rgba(217,181,104,.15),rgba(255,255,255,.04))!important;
    border-color:rgba(217,181,104,.48)!important;
  }
}

/* Mobile consent: retain every choice and explanation without occupying most of the first viewport. */
@media(max-width:560px){
  .consent-banner{
    left:.7rem;
    right:.7rem;
    bottom:calc(.7rem + env(safe-area-inset-bottom,0px));
    gap:.65rem;
    padding:.82rem;
    border-radius:20px;
    box-shadow:0 18px 54px rgba(0,0,0,.36);
  }
  .consent-banner>div:first-child{width:100%}
  .consent-banner strong{
    display:block;
    font-size:1rem;
    line-height:1.15;
  }
  .consent-banner p{
    margin:.28rem 0 0;
    max-width:none;
    font-size:.72rem;
    line-height:1.38;
  }
  .consent-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.42rem;
    width:100%;
  }
  .consent-actions [data-consent-all]{grid-column:1/-1}
  .consent-actions [data-consent-audience],
  .consent-actions [data-consent-necessary]{
    width:100%;
    min-width:0;
    padding:.68rem .45rem;
    white-space:normal;
    text-align:center;
    line-height:1.12;
  }
  .consent-actions [data-consent-settings]{
    grid-column:1/-1;
    width:auto;
    justify-self:center;
    min-height:44px;
    padding:.48rem .8rem;
  }
  .consent-dialog{
    max-height:calc(100dvh - 2rem - env(safe-area-inset-bottom,0px));
    overflow:auto;
    overscroll-behavior:contain;
    padding:1.35rem;
    border-radius:22px;
  }
  .consent-dialog h2{font-size:1.7rem;padding-right:2.7rem}
  .consent-option{padding:.9rem 0}
}

/* Tablet: keep enough density to feel editorial, never like a desktop grid squeezed smaller. */
@media(min-width:641px) and (max-width:900px){
  .evidence-process--v6435{grid-template-columns:1fr;gap:2rem}
  .evidence-process-media--v6435{max-width:780px}
}

/* Motion is always caused by the person. Scroll snapping remains available without animation. */
@media(prefers-reduced-motion:reduce){
  .evidence-process-media--v6435,
  body[data-page="home"] .system-rail,
  body[data-page="method"] .method-cycle,
  body[data-page="modality_in_person"] .week-flow,
  body[data-page="modality_online"] .continuity-rail,
  body[data-page="about"] .brand-journey--editorial{
    scroll-behavior:auto!important;
  }
}
