/* =========================================================
   I2CAN 2026 - /doctorscourses/ hub for doctors
   Loaded only by page-doctorscourses.php. Built on the
   style.css tokens and the sitewide editorial system.
   ========================================================= */

/* --- Hero ----------------------------------------------- */
.i2-doc-hero{padding-block:clamp(44px,5vw,84px) clamp(56px,6vw,96px)}
.i2-doc-hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,72px);align-items:start;margin-top:8px}
.i2-doc-hero h1{font-size:clamp(2rem,1.3rem + 2.4vw,3.2rem);line-height:1.12;letter-spacing:-.035em;max-width:20ch;margin:18px 0 0;color:#fff}
.i2-doc-hero h1 em{color:#fff;border-bottom:3px solid var(--red-600)}
.i2-doc-hero__lead{color:var(--blue-200);font-size:var(--fs-lead);line-height:1.75;max-width:58ch;margin:22px 0 0}
.i2-doc-answer{margin:22px 0 0;padding:16px 18px;border-left:2px solid var(--red-600);background:rgba(255,255,255,.05);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:var(--fs-sm);line-height:1.8;color:rgba(255,255,255,.72);max-width:64ch}
.i2-doc-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.i2-doc-hero__actions svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2}
.i2-doc-hero__form .form-card{margin:0}

.i2-doc-badge{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px 12px;margin:0;padding:6px 16px 6px 6px;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-pill);font-size:var(--fs-xs);color:rgba(255,255,255,.78);background:rgba(255,255,255,.04)}
.i2-doc-badge b{color:#fff;font-weight:600}
.i2-doc-badge__tag{display:inline-flex;align-items:center;gap:7px;padding:4px 12px;border-radius:var(--r-pill);background:var(--red-600);color:#fff;font-size:var(--fs-2xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.i2-doc-badge__tag i{width:7px;height:7px;border-radius:50%;background:#fff;animation:i2DocPulse 1.8s ease-in-out infinite}
@keyframes i2DocPulse{50%{opacity:.35}}

.i2-doc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:30px 0 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
.i2-doc-stats > div{padding:18px 14px 16px 0}
.i2-doc-stats > div + div{padding-left:18px;border-left:1px solid rgba(255,255,255,.14)}
.i2-doc-stats dt{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:600;color:#fff;line-height:1.1;letter-spacing:-.03em}
.i2-doc-stats dd{margin:6px 0 0;font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--blue-200);line-height:1.5}

/* --- Shared ------------------------------------------- */
.i2-doc-link{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-sm);font-weight:600;color:var(--navy-900);text-decoration:none;padding-bottom:4px;border-bottom:1px solid var(--line-2);transition:border-color var(--t-fast),color var(--t-fast)}
.i2-doc-link svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;transition:transform var(--t-fast)}
.i2-doc-link:hover{color:var(--red-600);border-color:var(--red-600)}
.i2-doc-link:hover svg{transform:translateX(3px)}
.i2-doc-note{margin:clamp(24px,2.6vw,34px) 0 0;padding:18px 22px;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--red-600);border-radius:var(--r-md);font-size:var(--fs-sm);line-height:1.8;color:var(--body)}
.i2-doc-note a{color:var(--blue-600);text-decoration:underline;text-underline-offset:2px}
.i2-doc-small{font-size:var(--fs-xs);color:var(--muted);margin:12px 0 0}
.i2-doc-small a{color:var(--blue-600);text-decoration:underline;text-underline-offset:2px}

/* --- 01 Programmes ----------------------------------- */
.i2-doc-progs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,24px)}
.i2-doc-prog{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1);transition:box-shadow var(--t),transform var(--t-fast),border-color var(--t-fast)}
.i2-doc-prog:hover{box-shadow:var(--sh-2);transform:translateY(-2px);border-color:var(--blue-200)}
.i2-doc-prog__media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--blue-050)}
.i2-doc-prog__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--ease)}
.i2-doc-prog:hover .i2-doc-prog__media img{transform:scale(1.04)}
.i2-doc-prog__code{position:absolute;left:16px;bottom:14px;padding:5px 12px;border-radius:var(--r-pill);background:var(--navy-900);color:#fff;font-size:var(--fs-2xs);font-weight:700;letter-spacing:.14em}
.i2-doc-prog__body{display:flex;flex-direction:column;flex:1;padding:clamp(20px,2.2vw,28px)}
.i2-doc-prog h3{font-size:var(--fs-h3);letter-spacing:var(--tr-tight);margin:10px 0 6px;line-height:1.35}
.i2-doc-prog h3 a{color:var(--ink);text-decoration:none}
.i2-doc-prog h3 a:hover{color:var(--red-600)}
.i2-doc-prog__alias{margin:0 0 10px;font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.i2-doc-prog__meta{list-style:none;margin:6px 0 14px;padding:0;display:flex;flex-direction:column;gap:4px}
.i2-doc-prog__meta li{position:relative;padding-left:16px;font-size:var(--fs-xs);color:var(--ink-2)}
.i2-doc-prog__meta li::before{content:"";position:absolute;left:0;top:.7em;width:7px;height:1px;background:var(--red-600)}
.i2-doc-prog__body > p{font-size:var(--fs-sm);line-height:1.75;color:var(--body);margin:0 0 14px}
.i2-doc-prog__mods{padding:12px 14px;background:var(--blue-050);border-radius:var(--r-sm);font-size:var(--fs-xs)!important;line-height:1.7!important}
.i2-doc-prog__mods b{display:block;font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--blue-600);margin-bottom:4px;font-weight:600}
.i2-doc-prog__note{font-size:var(--fs-xs)!important;color:#1B6B42!important;font-weight:500}
.i2-doc-prog__foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}
.i2-doc-prog__foot svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2}

/* The diploma leads: full width, image beside text. */
.i2-doc-prog--lead{grid-column:1/-1;flex-direction:row}
.i2-doc-prog--lead .i2-doc-prog__media{flex:0 0 44%;aspect-ratio:auto;min-height:340px}
.i2-doc-prog--lead h3{font-size:clamp(1.35rem,1.1rem + .8vw,1.8rem)}

/* --- 02 Why / split ---------------------------------- */
.i2-doc-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
.i2-doc-split--flip{margin-top:clamp(30px,3.4vw,48px)}
.i2-doc-qs{list-style:none;margin:0;padding:0;counter-reset:q;border-top:1px solid var(--line)}
.i2-doc-qs li{counter-increment:q;position:relative;padding:16px 0 16px 52px;border-bottom:1px solid var(--line);font-size:var(--fs-sm);font-weight:500;color:var(--ink-2);line-height:1.6}
.i2-doc-qs li::before{content:counter(q,decimal-leading-zero);position:absolute;left:0;top:13px;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:1.3rem;color:var(--red-600)}
.i2-doc-payoff{margin-top:26px;padding:22px 24px;background:var(--navy-900);border-radius:var(--r-lg);color:rgba(255,255,255,.74)}
.i2-doc-payoff__big{font-size:clamp(1.2rem,1rem + .6vw,1.5rem);font-weight:600;color:#fff;margin:0 0 10px;letter-spacing:-.02em}
.i2-doc-payoff__big em{font-family:Georgia,'Times New Roman',serif;font-weight:400}
.i2-doc-payoff p:last-child{font-size:var(--fs-sm);line-height:1.8;margin:0}

/* --- Video facade ------------------------------------- */
.i2-doc-video{margin:0}
.i2-doc-video__frame{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;border-radius:var(--r-lg);overflow:hidden;background:var(--navy-950);cursor:pointer}
.i2-doc-video__frame img{width:100%;height:100%;object-fit:cover;display:block;opacity:.88;transition:opacity var(--t),transform .8s var(--ease)}
.i2-doc-video__frame:hover img{opacity:1;transform:scale(1.03)}
.i2-doc-video__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.i2-doc-video__play{position:absolute;left:50%;top:50%;width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;background:var(--red-600);box-shadow:0 10px 30px rgba(153,0,5,.35);transition:transform var(--t-fast)}
.i2-doc-video__play::after{content:"";position:absolute;left:27px;top:22px;border-style:solid;border-width:12px 0 12px 19px;border-color:transparent transparent transparent #fff}
.i2-doc-video__frame:hover .i2-doc-video__play{transform:scale(1.08)}
.i2-doc-video__frame:focus-visible{outline:3px solid var(--blue-500);outline-offset:3px}
.i2-doc-video figcaption{padding:12px 2px 0}
.i2-doc-video figcaption b{display:block;font-size:var(--fs-sm);font-weight:600;color:var(--ink);line-height:1.4}
.i2-doc-video figcaption span{display:block;font-size:var(--fs-xs);color:var(--muted);margin-top:2px}
.i2-doc-videos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,24px)}
.i2-doc-links{display:flex;flex-wrap:wrap;gap:14px 28px;margin:clamp(22px,2.4vw,32px) 0 0}

/* --- 03 Procedures ----------------------------------- */
.i2-doc-procs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}
.i2-doc-procs article{padding:clamp(20px,2.2vw,28px);background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--blue-600);border-radius:0 0 var(--r-md) var(--r-md);box-shadow:var(--sh-1)}
.i2-doc-procs article:nth-child(2){border-top-color:var(--red-600)}
.i2-doc-procs article:nth-child(3){border-top-color:var(--navy-900)}
.i2-doc-procs article:nth-child(4){border-top-color:var(--gold-500)}
.i2-doc-procs h3{font-size:var(--fs-h3);margin:0 0 12px;color:var(--navy-900)}
.i2-doc-procs ul{list-style:none;margin:0;padding:0}
.i2-doc-procs li{position:relative;padding-left:18px;margin-bottom:8px;font-size:var(--fs-sm);color:var(--body)}
.i2-doc-procs li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:1px;background:var(--red-600)}

/* --- 04 Teaching ------------------------------------- */
.i2-doc-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,1.8vw,24px)}
.i2-doc-two article{padding:clamp(24px,2.6vw,34px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper)}
.i2-doc-two article:first-child{background:var(--blue-050);border-color:var(--blue-100)}
.i2-doc-two h3{font-size:clamp(1.2rem,1rem + .5vw,1.45rem);color:var(--navy-900);margin:10px 0 12px;letter-spacing:var(--tr-tight)}
.i2-doc-two p{font-size:var(--fs-sm);line-height:1.8;color:var(--body);margin:0}
.i2-doc-reading p{font-size:var(--fs-sm);line-height:1.85;color:var(--body)}
.i2-doc-claim{margin:22px 0 0;padding:20px 22px;border-left:3px solid var(--red-600);background:var(--blue-050);border-radius:0 var(--r-md) var(--r-md) 0}
.i2-doc-claim p{margin:0 0 8px!important;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:1.3rem!important;color:var(--navy-900)!important;line-height:1.4!important}
.i2-doc-claim footer{font-size:var(--fs-xs);color:var(--body);line-height:1.7}
.i2-doc-claim a{color:var(--blue-600);text-decoration:underline;text-underline-offset:2px}

.i2-doc-batch{margin-top:clamp(36px,4vw,56px)}
.i2-doc-batch__head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.i2-doc-batch__head h3{font-size:var(--fs-h3);margin:0;color:var(--ink)}
.i2-doc-batch__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,18px)}
.i2-doc-batch__grid figure{position:relative;margin:0;aspect-ratio:3/4;border-radius:var(--r-lg);overflow:hidden;background:var(--blue-050)}
.i2-doc-batch__grid img{width:100%;height:100%;object-fit:cover;display:block}
.i2-doc-batch__grid figcaption{position:absolute;inset:auto 0 0 0;padding:36px 16px 14px;background:linear-gradient(to top,rgba(0,26,65,.9),rgba(0,26,65,0));color:#fff;font-size:var(--fs-sm);font-weight:600}

/* --- 05 Community (navy band) ------------------------ */
.i2-doc-journey{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-lg);overflow:hidden}
.i2-doc-journey li{background:var(--navy-900);padding:clamp(22px,2.4vw,30px)}
.i2-doc-journey span{display:inline-block;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:1.25rem;color:#fff;border-bottom:2px solid var(--red-600);padding-bottom:2px}
.i2-doc-journey h3{font-size:1.05rem;color:#fff;margin:14px 0 8px}
.i2-doc-journey p{font-size:var(--fs-sm);line-height:1.75;color:rgba(255,255,255,.66);margin:0}
.i2-doc-community{margin-top:clamp(26px,3vw,40px);padding:clamp(24px,3vw,40px);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-lg);background:rgba(255,255,255,.03)}
.i2-doc-community__intro{max-width:70ch}
.i2-doc-community__intro h3{color:#fff;margin:0 0 10px}
.i2-doc-community__intro p{font-size:var(--fs-sm);line-height:1.8;color:rgba(255,255,255,.72)}
.i2-doc-community__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);margin-top:20px}
.i2-doc-community__grid h4{color:#fff;font-size:var(--fs-sm);margin:0 0 6px}
.i2-doc-community__grid p{font-size:var(--fs-xs);line-height:1.75;color:rgba(255,255,255,.62);margin:0}
.i2-doc-community__foot{margin:22px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);font-size:var(--fs-sm);color:rgba(255,255,255,.72)}
.i2-doc-community__foot b{color:#fff}
.i2-doc-community__foot a{color:#fff;text-decoration:underline;text-underline-offset:3px}

/* --- 06 Certification -------------------------------- */
.i2-doc-cert{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,64px);align-items:center;padding:clamp(26px,3vw,44px);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--paper);box-shadow:var(--sh-1)}
.i2-doc-cert h2{font-size:var(--fs-h2);margin:14px 0 14px;letter-spacing:-.03em}
.i2-doc-cert p{font-size:var(--fs-sm);line-height:1.8;color:var(--body)}
.i2-doc-cert__caveat{margin:0;padding-top:14px;border-top:1px solid var(--line);font-size:var(--fs-xs)!important;color:var(--muted)!important}
.i2-doc-cert__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.i2-doc-cert__list li{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--r-md);background:var(--blue-050);font-size:var(--fs-sm);font-weight:600;color:var(--navy-900)}
.i2-doc-cert__list li::before{content:"";flex:none;width:22px;height:22px;border-radius:50%;background:var(--navy-900) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/13px no-repeat}

/* --- Reveal ------------------------------------------ */
.i2-doc-armed{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.i2-doc-armed.is-shown{opacity:1;transform:none}

/* --- Responsive -------------------------------------- */
@media (max-width:1100px){
  .i2-doc-hero__grid{grid-template-columns:1fr}
  .i2-doc-hero__form{max-width:600px}
  .i2-doc-procs,.i2-doc-community__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .i2-doc-journey{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:980px){
  .i2-doc-progs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .i2-doc-prog--lead{flex-direction:column}
  .i2-doc-prog--lead .i2-doc-prog__media{flex:none;aspect-ratio:16/9;min-height:0}
  .i2-doc-split,.i2-doc-cert{grid-template-columns:1fr}
  .i2-doc-videos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .i2-doc-batch__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .i2-doc-progs,.i2-doc-procs,.i2-doc-two,.i2-doc-videos,.i2-doc-journey,.i2-doc-community__grid{grid-template-columns:1fr}
  .i2-doc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .i2-doc-stats > div:nth-child(3){padding-left:0;border-left:0}
  .i2-doc-stats > div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}
  .i2-doc-badge{border-radius:var(--r-md);padding:8px 12px 8px 8px}
  .i2-doc-hero__actions .btn{flex:1 1 100%}
  .i2-doc-cta-row .btn,.cta-band .row .btn{white-space:normal;text-align:center;flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){
  .i2-doc-armed{transition:none;opacity:1;transform:none}
  .i2-doc-badge__tag i{animation:none}
}
