/* Applied Hypertrophy Optimization (AHO) sales page — per-page additions.
   Loads AFTER /assets/css/j3.css and /xframe/page.css; reuses their components
   (.hero-x, .section/.soft, .sec-head, .split, .darkbox, .lightbox, .greybox,
   .dlist, .offer-receipt, .gtee, .uline). Only genuinely-new bits live here. */

/* offset the sticky header when CTAs anchor-scroll to the offer card */
#offer { scroll-margin-top: 90px; }

/* ---- hero subhead + under-video note ---- */
.hero-sub { color: #34373d; font-size: clamp(1rem,.95rem+.4vw,1.12rem); max-width: 760px; margin: 0 auto 26px; line-height: 1.55; }
.vsl-note { color: #34373d; font-size: 1.02rem; max-width: 640px; margin: 22px auto 0; }
.vsl-note strong { color: var(--ink); font-weight: 600; }

/* ---- generic image-left/right split where one column is a darkbox or image ---- */
.split.media-left .split-media { order: -1; }

/* ---- "Why your training" white card (image + copy in a bordered card) ---- */
.cardrow { background:#fff; border:1px solid var(--line); border-radius:22px; box-shadow:var(--shadow-sm); overflow:hidden; display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.cardrow .cr-media img { width:100%; height:100%; object-fit:cover; display:block; }
.cardrow .cr-copy { padding: clamp(26px,3vw,44px); }
.cardrow .cr-copy h3 { font-size: clamp(1.25rem,1rem+1vw,1.6rem); margin-bottom:14px; }
@media (max-width:860px){ .cardrow{ grid-template-columns:1fr; } .cardrow .cr-media{ order:-1; } .cardrow .cr-media img{ max-height:360px; } }

/* ===== In-depth exercise analysis: tab component ===== */
.tabs { max-width: var(--maxw); margin: 0 auto; }
.tab-pills { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:0 auto clamp(26px,3vw,38px); max-width:880px; }
.tab-pill { font-family:var(--font-head); font-weight:600; font-size:.9rem; color:var(--ink-2); background:#f3f4f6; border:1px solid var(--line); border-radius:999px; padding:9px 18px; cursor:pointer; transition:background .18s,color .18s,border-color .18s; white-space:nowrap; }
.tab-pill:hover { color:var(--red); border-color:var(--line-2); }
.tab-pill[aria-selected="true"] { background:var(--red); border-color:var(--red); color:#fff; box-shadow:0 6px 16px -6px rgba(211,30,3,.6); }
.tab-panel { display:none; }
.tab-panel.active { display:block; animation:tabfade .35s ease; }
@keyframes tabfade { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }
.tab-card { background:#f3f4f6; border:1px solid var(--line); border-radius:22px; overflow:hidden; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; box-shadow:var(--shadow-sm); }
.tab-card .tc-copy { padding: clamp(26px,3vw,44px); }
.tab-card .tc-copy h3 { font-size: clamp(1.35rem,1rem+1.1vw,1.8rem); text-transform:capitalize; }
.tab-card .tc-copy .uline { margin:14px 0 18px; }
.tab-card .tc-copy p { color:#34373d; font-size:1.02rem; line-height:1.6; }
.tab-card .tc-copy .btn { margin-top:22px; padding:12px 24px; font-size:.95rem; }
.tab-card .tc-media { align-self:stretch; }
.tab-card .tc-media img { width:100%; height:100%; min-height:260px; object-fit:cover; display:block; }
@media (max-width:780px){ .tab-card{ grid-template-columns:1fr; } .tab-card .tc-media{ order:-1; } .tab-card .tc-media img{ min-height:0; max-height:320px; } .tab-pills{ flex-wrap:nowrap; overflow-x:auto; justify-content:flex-start; -webkit-overflow-scrolling:touch; padding-bottom:6px; } .tab-pill{ flex:0 0 auto; } }

/* ===== testimonials ===== */
.tlist { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top: clamp(30px,4vw,46px); }
.tcard { background:var(--box-dark); color:#c9ccd2; border-radius:20px; padding: clamp(24px,3vw,34px); box-shadow:var(--shadow-dark); }
.tcard .tc-head { display:flex; align-items:center; gap:14px; margin-bottom:16px; }
.tcard .tc-head img { width:56px; height:56px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.tcard .tc-name { font-family:var(--font-head); font-weight:700; color:#fff; font-size:1.1rem; line-height:1.2; }
.tcard .tc-role { font-size:.82rem; letter-spacing:.06em; text-transform:uppercase; color:var(--red-bright); margin-top:3px; }
.tcard p { color:#c2c6cc; font-size:1rem; line-height:1.6; }
@media (max-width:780px){ .tlist{ grid-template-columns:1fr; max-width:520px; margin-inline:auto; } }

/* ===== NASM evidence band ===== */
.nasm { display:flex; align-items:center; gap: clamp(20px,3vw,40px); }
.nasm img { width: clamp(110px,16vw,160px); height:auto; flex-shrink:0; }
.nasm .nasm-copy p { color:#34373d; font-size:1.06rem; line-height:1.6; }
.nasm .nasm-provider { font-family:var(--font-head); font-weight:600; font-size:.82rem; letter-spacing:.04em; text-transform:uppercase; color:var(--ink-2); margin-top:10px; }
@media (max-width:640px){ .nasm{ flex-direction:column; text-align:center; } }

/* ===== guarantee signature ===== */
.sig { width:170px; height:auto; margin-top:16px; display:block; }

/* ===== guarantee figure — match the original (large, right-anchored, overflows top) ===== */
.gbox { overflow: visible; }
.gbox .rich { position: relative; z-index: 2; }
.gbox .gb-photo { right: clamp(0px,1vw,24px); bottom: 0; width: clamp(320px,48%,580px); z-index: 1; }
@media (max-width: 860px){
  .gbox .gb-photo { position: static; width: min(360px,90%); margin: 26px auto 0; }
}

