/* P2M JUNIOR — Athletic Development – Baseball (/ad-baseball/) sections */

.hero{position:relative;background:#0c1424;color:#fff;overflow:hidden;}
.hero .bgph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#7a869c;font-weight:600;background:linear-gradient(120deg,#16283f,#0a1120);}
.hero .scrim{position:absolute;inset:0;background:linear-gradient(105deg,rgba(8,14,24,.95),rgba(8,14,24,.72) 55%,rgba(8,14,24,.4));}
.hero .inner{position:relative;padding:88px 0 92px;max-width:840px;}
.badge{display:inline-flex;align-items:center;gap:9px;background:rgba(43,107,228,.18);border:1px solid rgba(43,107,228,.55);color:#8fb4f5;font-size:12px;font-weight:800;letter-spacing:.12em;padding:8px 16px;border-radius:999px;font-family:var(--lat);}
.hero h1{font-size:clamp(30px,6vw,54px);font-weight:900;line-height:1.3;margin:22px 0 10px;letter-spacing:.01em;}
.hero h1 .u{color:#2b6be4;}
.hero .lead{font-size:16.5px;color:#cdd6e4;line-height:1.95;max-width:640px;margin:18px 0 32px;}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap;}
.herostats{position:relative;border-top:1px solid rgba(255,255,255,.14);margin-top:52px;}
.herostats .g{display:grid;grid-template-columns:repeat(4,1fr);}
.herostats .c{padding:26px 8px 4px;}
.herostats .n{font-family:var(--lat);font-size:30px;font-weight:900;color:#fff;line-height:1.05;}
.herostats .n small{font-size:15px;font-weight:800;}
.herostats .l{font-size:12.5px;color:#aeb9ca;margin-top:8px;}

.sec{padding:88px 0;}
.sec.tint{background:var(--tint);}
.sec.navy{background:var(--navy);color:#fff;}
.sec .head{max-width:760px;margin-bottom:44px;}
.sec h2{font-size:clamp(25px,3.2vw,36px);font-weight:900;color:var(--navy);line-height:1.42;margin-top:14px;}
.sec.navy h2{color:#fff;}
.sec .lead{font-size:16px;color:var(--muted);line-height:2;margin-top:16px;}
.sec.navy .lead{color:#c2cddd;}

/* movement analysis */
.analysis{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;}
.analysis .aph{aspect-ratio:5/4;border-radius:16px;}
.analysis h3{font-size:23px;font-weight:900;color:var(--navy);line-height:1.5;margin-bottom:16px;}
.analysis p{font-size:14.5px;color:var(--muted);line-height:1.95;margin-bottom:14px;}
.analysis .tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;}
.analysis .tags span{font-size:12px;font-weight:700;color:var(--blue);background:var(--blue-soft);padding:6px 14px;border-radius:999px;}

/* ACMM pillars */
.acmm{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.acard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:30px;}
.acard .k{font-family:var(--lat);font-size:22px;font-weight:900;color:#8fb4f5;letter-spacing:.02em;}
.acard .kj{font-size:13px;font-weight:800;color:var(--gold);margin:2px 0 14px;}
.acard p{font-size:13.5px;color:#c2cddd;line-height:1.9;}

/* session timeline (60min) */
.sflow{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;}
.sfrow{display:grid;grid-template-columns:120px 1fr;align-items:center;border-top:1px solid var(--line);}
.sfrow:first-child{border-top:none;}
.sfrow .tm{background:var(--navy);color:#fff;padding:24px;text-align:center;}
.sfrow .tm .big{font-family:var(--lat);font-size:26px;font-weight:900;line-height:1;}
.sfrow .tm .big span{font-size:13px;}
.sfrow .tm .u{font-size:12px;color:#aeb9ca;margin-top:3px;}
.sfrow .ct{padding:22px 30px;}
.sfrow .ct h4{font-size:17px;font-weight:800;color:var(--navy);margin-bottom:5px;}
.sfrow .ct p{font-size:13.5px;color:var(--muted);line-height:1.75;}

/* トレーニングの流れ — 投球／打撃の実写 */
.sphotos{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px;}
.sphotos figure{margin:0;}
.sphotos img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:14px;display:block;}
.sphotos figcaption{font-size:12.5px;color:var(--muted);margin-top:9px;font-weight:700;}
@media (max-width:700px){ .sphotos{grid-template-columns:1fr;} }

/* results */
.results{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;}
.rcard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 26px;}
.rcard .ic{width:40px;height:40px;border-radius:10px;background:var(--blue-soft);color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:900;margin-bottom:14px;}
.rcard h4{font-size:16px;font-weight:800;color:var(--navy);margin-bottom:6px;}
.rcard p{font-size:13.5px;color:var(--muted);line-height:1.8;}

/* details */
.details{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;}
.drow{display:grid;grid-template-columns:180px 1fr;border-top:1px solid var(--line);}
.drow:first-child{border-top:none;}
.drow .dk{background:var(--tint);padding:20px 26px;font-size:13.5px;font-weight:800;color:var(--navy);}
.drow .dv{padding:20px 26px;font-size:14.5px;color:var(--ink);line-height:1.8;}
.drow .dv .price{font-family:var(--lat);font-size:24px;font-weight:900;color:var(--navy);}
.drow .dv .sub{font-size:12.5px;color:var(--muted);}
.drow .dv .sub-mt{margin-top:12px;}
.pricetable{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:6px;}
.pcell{border:1px solid var(--line);border-radius:12px;padding:16px 18px;}
.pcell.hi{border-color:var(--blue);background:var(--blue-soft);}
.pcell .t{font-size:12px;font-weight:800;color:var(--muted);}
.pcell.hi .t{color:var(--blue);}
.pcell .amt{font-family:var(--lat);font-size:22px;font-weight:900;color:var(--navy);margin-top:4px;}
.pcell .per{font-size:12px;color:var(--muted);}

/* summer note */
.summernote{margin-top:28px;display:flex;gap:20px;align-items:center;background:var(--navy);color:#fff;border-radius:16px;padding:26px 30px;flex-wrap:wrap;}
.summernote .tag{background:var(--gold);color:#2a2410;font-size:11px;font-weight:800;letter-spacing:.08em;padding:6px 12px;border-radius:6px;}
.summernote .tx{flex:1;min-width:260px;}
.summernote .tx b{font-size:15px;}
.summernote .tx p{font-size:13px;color:#c2cddd;margin-top:3px;}
.summernote a{color:#8fb4f5;font-weight:700;font-size:13.5px;white-space:nowrap;}

.ctaband{background:#0c1424;color:#fff;text-align:center;padding:80px 0;}
.ctaband h2{font-size:clamp(25px,3.2vw,38px);font-weight:900;line-height:1.4;}
.ctaband p{color:#c2cddd;margin:14px 0 28px;font-size:16px;}

@media (max-width:900px){
  .hero .inner{padding:64px 0;}
  .herostats .g{grid-template-columns:1fr 1fr;gap:10px 0;}
  .analysis{grid-template-columns:1fr;gap:20px;}
  .acmm{grid-template-columns:1fr;}
  .results{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .sec{padding:56px 0;}
  .sfrow{grid-template-columns:90px 1fr;}
  .drow{grid-template-columns:1fr;}
  .drow .dk{padding-bottom:6px;}
  .pricetable{grid-template-columns:1fr;}
  .herostats .g{grid-template-columns:1fr 1fr;}
}

/* ---- photos (added) ---- */
.analysis .aph{overflow:hidden;}
.analysis .aph img{width:100%;height:100%;object-fit:cover;}
