/* ============================================================
   POL — Coaching page sections
   Builds on pol.css / pol-home.css tokens + .sec/.eyebrow-rule.
   ============================================================ */

/* ---- hero ---- */
.co-hero{position:relative;background:var(--deep);color:var(--paper);padding:150px 48px 86px;overflow:hidden}
.co-hero .co-inner{max-width:1100px;margin:0 auto;position:relative;z-index:2}
.co-hero .ribbon{display:inline-flex;align-items:center;gap:11px;font-family:"IBM Plex Mono",monospace;
  font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);
  border:1px solid rgba(255,127,0,.32);border-radius:999px;padding:8px 16px}
.co-hero .ribbon .dot{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 9px rgba(255,127,0,.7)}
.co-hero h1{font-family:"Archivo",sans-serif;font-weight:800;letter-spacing:-.025em;line-height:1.0;
  font-size:clamp(40px,5.4vw,68px);margin:24px 0 0;max-width:18ch}
.co-hero h1 em{font-style:normal;color:var(--orange)}
.co-hero .co-lead{font-size:clamp(16px,1.4vw,18.5px);line-height:1.6;color:rgba(246,244,240,.78);
  margin:24px 0 0;max-width:62ch}
.co-hero .co-note{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.04em;
  color:var(--sage);margin:20px 0 0}
.co-cta{display:inline-flex;align-items:center;gap:11px;margin-top:32px;font-family:"IBM Plex Mono",monospace;
  font-size:13px;letter-spacing:.04em;font-weight:600;background:var(--orange);color:var(--deep);
  padding:15px 26px;border-radius:3px;text-decoration:none;border:0;cursor:pointer}
.co-grid-bg{position:absolute;inset:0;z-index:1;opacity:.5;
  background-image:radial-gradient(circle at 1px 1px,rgba(246,244,240,.05) 1px,transparent 0);background-size:34px 34px}

/* ---- keystone section ---- */
.co-keys .km-head{max-width:760px}
.co-keys .km-mark-wrap{margin-top:46px}

/* ---- who it's for ---- */
.co-for .for-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:44px}
.co-for .for-col{border:1px solid var(--line-dark);border-radius:12px;padding:42px 40px 46px}
.co-for .for-yes{background:rgba(255,127,0,.05);border-color:rgba(255,127,0,.22)}
.co-for .for-no{background:rgba(20,17,16,.32)}
.co-for .for-col .ch{display:flex;align-items:center;gap:13px;font-family:"Archivo",sans-serif;
  font-weight:800;font-size:clamp(20px,2vw,26px);letter-spacing:-.01em;margin-bottom:30px;
  padding-bottom:22px;border-bottom:1px solid var(--line-dark)}
.co-for .for-col .ch .badge{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:16px;flex:none}
.co-for .for-yes .ch{color:var(--paper)}
.co-for .for-yes .ch .badge{background:var(--orange);color:var(--deep)}
.co-for .for-no .ch{color:rgba(246,244,240,.78)}
.co-for .for-no .ch .badge{background:rgba(246,244,240,.1);color:var(--sage-dim)}
.co-for .for-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:22px}
.co-for .for-col li{display:flex;gap:16px;font-size:16px;line-height:1.55;color:rgba(246,244,240,.86)}
.co-for .for-col li .mk{flex:none;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:12px;font-weight:700;margin-top:1px}
.co-for .for-yes li .mk{background:rgba(255,127,0,.16);color:var(--orange);box-shadow:inset 0 0 0 1px rgba(255,127,0,.4)}
.co-for .for-no li .mk{background:rgba(246,244,240,.06);color:var(--sage-dim);box-shadow:inset 0 0 0 1px rgba(246,244,240,.14)}

/* ---- process ---- */
.co-proc .commit{display:flex;align-items:baseline;gap:18px;margin-top:30px;padding-bottom:30px;
  border-bottom:1px solid var(--line-dark);flex-wrap:wrap}
.co-proc .commit .big{font-family:"Archivo",sans-serif;font-weight:800;font-size:clamp(30px,3.4vw,42px);
  letter-spacing:-.02em;color:var(--orange)}
.co-proc .commit p{font-size:16px;line-height:1.55;color:rgba(246,244,240,.72);max-width:46ch;margin:0}
.co-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.co-step{border:1px solid var(--line-dark);border-radius:8px;padding:28px 26px 30px;background:rgba(20,17,16,.3)}
.co-step .sn{display:flex;align-items:center;gap:12px;font-family:"IBM Plex Mono",monospace;font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}
.co-step .sn .num{font-family:"Archivo",sans-serif;font-weight:800;font-size:30px;color:rgba(255,127,0,.28);letter-spacing:-.02em}
.co-step h3{font-family:"Archivo",sans-serif;font-weight:700;font-size:21px;letter-spacing:-.01em;margin:16px 0 0;color:var(--paper)}
.co-step .meta{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;color:var(--sage);margin:9px 0 0}
.co-step p{font-size:14.5px;line-height:1.55;color:rgba(246,244,240,.7);margin:14px 0 0}

/* ---- packages cards ---- */
.co-pkg .pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:46px;align-items:start}
.pkg-card{display:flex;flex-direction:column;border:1px solid var(--line-dark);border-radius:12px;
  background:rgba(20,17,16,.32);overflow:hidden}
.pkg-card.featured{border-color:var(--orange);background:rgba(255,127,0,.06);box-shadow:0 24px 60px rgba(0,0,0,.25)}
.pkg-head{padding:30px 28px 26px;border-bottom:1px solid var(--line-dark);position:relative}
.pkg-card.featured .pkg-head{border-bottom-color:rgba(255,127,0,.25)}
.pkg-tag{position:absolute;top:18px;right:18px;font-family:"IBM Plex Mono",monospace;font-size:9.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--deep);background:var(--orange);padding:4px 9px;border-radius:999px}
.pkg-kicker{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--sage)}
.pkg-name{font-family:"Archivo",sans-serif;font-weight:800;font-size:24px;letter-spacing:-.02em;color:var(--paper);margin:10px 0 0}
.pkg-price{display:flex;align-items:baseline;gap:6px;margin-top:16px}
.pkg-price .amt{font-family:"Archivo",sans-serif;font-weight:800;font-size:38px;letter-spacing:-.03em;color:var(--paper)}
.pkg-card.featured .pkg-price .amt{color:var(--orange)}
.pkg-price .per{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--sage-dim);letter-spacing:.02em}
.pkg-permo{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.02em;color:var(--sage);margin-top:7px}
.pkg-card.featured .pkg-permo{color:rgba(255,127,0,.85)}
.pkg-feats{list-style:none;margin:0;padding:24px 28px 8px;display:flex;flex-direction:column;gap:14px;flex:1}
.pkg-feats li{display:flex;gap:12px;font-size:14.5px;line-height:1.45;color:rgba(246,244,240,.84)}
.pkg-feats li.off{color:rgba(246,244,240,.34)}
.pkg-feats li .mk{flex:none;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:11px;font-weight:700;margin-top:1px}
.pkg-feats li .mk.y{background:rgba(255,127,0,.16);color:var(--orange);box-shadow:inset 0 0 0 1px rgba(255,127,0,.4)}
.pkg-feats li .mk.n{background:rgba(246,244,240,.05);color:rgba(246,244,240,.3);box-shadow:inset 0 0 0 1px rgba(246,244,240,.12)}
.pkg-cta{margin:18px 28px 30px;display:flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;
  font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.06em;font-weight:600;
  padding:14px 18px;border-radius:4px;border:1px solid var(--line-dark);color:var(--paper);transition:.2s}
.pkg-cta:hover{border-color:var(--orange);color:var(--orange)}
.pkg-card.featured .pkg-cta{background:var(--orange);color:var(--deep);border-color:var(--orange)}
.pkg-card.featured .pkg-cta:hover{filter:brightness(1.06);color:var(--deep)}

/* ---- application form ---- */
.co-apply .ap-intro{font-size:17px;line-height:1.6;color:rgba(246,244,240,.78);max-width:58ch;margin-top:22px}
.ap-form{margin-top:42px;display:flex;flex-direction:column;gap:38px;max-width:760px}
.ap-block .ap-bh{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--orange);padding-bottom:14px;border-bottom:1px solid var(--line-dark);margin-bottom:22px}
.ap-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ap-field{display:flex;flex-direction:column;gap:8px}
.ap-field.full{grid-column:1/-1}
.ap-field label{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.06em;color:rgba(246,244,240,.7)}
.ap-field input,.ap-field textarea,.ap-field select{font-family:"Inter",sans-serif;font-size:15px;color:var(--paper);
  background:rgba(20,17,16,.5);border:1px solid var(--line-dark);border-radius:5px;padding:13px 14px;width:100%}
.ap-field textarea{min-height:92px;resize:vertical;line-height:1.5}
.ap-field input:focus,.ap-field textarea:focus,.ap-field select:focus{outline:none;border-color:var(--orange)}
.ap-field input::placeholder,.ap-field textarea::placeholder{color:rgba(246,244,240,.34)}
.ap-radios{display:flex;flex-direction:column;gap:11px}
.ap-radio{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:13px 16px;border:1px solid var(--line-dark);
  border-radius:6px;transition:border-color .2s,background .2s}
.ap-radio:hover{border-color:rgba(255,127,0,.4)}
.ap-radio input{appearance:none;width:18px;height:18px;border:1.5px solid var(--sage-dim);border-radius:50%;flex:none;margin-top:1px;transition:.2s}
.ap-radio input:checked{border-color:var(--orange);box-shadow:inset 0 0 0 4px var(--orange)}
.ap-radio:has(input:checked){border-color:var(--orange);background:rgba(255,127,0,.06)}
.ap-radio .rl{font-size:15px;color:rgba(246,244,240,.85)}
.ap-radio .rl small{display:block;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--sage-dim);margin-top:3px;letter-spacing:.02em}
.ap-checks{display:flex;flex-direction:column;gap:12px}
.ap-check{display:flex;align-items:flex-start;gap:12px;font-size:14.5px;line-height:1.45;color:rgba(246,244,240,.82);cursor:pointer}
.ap-check input{appearance:none;width:20px;height:20px;border:1.5px solid var(--sage-dim);border-radius:4px;flex:none;margin-top:1px;position:relative;transition:.2s}
.ap-check input:checked{background:var(--orange);border-color:var(--orange)}
.ap-check input:checked::after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--deep);font-size:13px;font-weight:700}
.ap-submit{display:inline-flex;align-items:center;gap:11px;align-self:flex-start;font-family:"IBM Plex Mono",monospace;
  font-size:13px;letter-spacing:.04em;font-weight:600;background:var(--orange);color:var(--deep);
  padding:16px 30px;border-radius:3px;border:0;cursor:pointer}
.ap-foot{font-size:14px;line-height:1.55;color:var(--sage-dim);margin-top:18px;max-width:54ch}

@media (max-width:900px){
  .co-hero{padding:120px 22px 60px}
  .co-for .for-grid{grid-template-columns:1fr}
  .co-steps{grid-template-columns:1fr}
  .co-pkg .pkg-grid{grid-template-columns:1fr}
  .ap-fields{grid-template-columns:1fr}
  .ap-form{gap:30px}
}
