/* Intro Pack extends the established TMA design system and existing funnel layouts. */
.ip-page [hidden]{display:none!important}
.ip-page .sk-brand small,.ip-page .sk-login,.ip-page .sk-eyebrow,.ip-page .sk-form-footer,.ip-page .sk-footer,.ip-page .sk-number,.ip-page .sk-download-meta,.ip-page .sk-pack-heading>span,.ip-page .sk-preview-label,.ip-page .sk-preview-label span,.ip-page .sk-preview figcaption,.ip-page .sk-field-note,.ip-page .sk-offer-stats dt,.ip-page .sk-offer-link{font-size:14px}
.ip-page .sk-brand small{letter-spacing:.08em}
.ip-page .sk-file-mark,.ip-page .sk-download-note{font-size:14px}
.ip-page .sk-login{letter-spacing:.06em;text-align:right}
.ip-page .sk-title{line-height:1.05;font-size:clamp(38px,4.8vw,64px)}
.ip-page .sk-hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.95fr);gap:48px}
.ip-page .sk-form-card{min-height:0}
.ip-page .sk-form-footer{padding:22px 28px 26px}
.ip-page .sk-form-frame{height:731px}
.ip-page .sk-form-heading .d2{font-size:30px}
.ip-page .sk-preview{margin-top:26px}
.ip-page .sk-intro{font-size:19px}
.ip-page .sk-offer-stats{margin-top:24px}
.ip-page .sk-offer-stats dd{font-size:32px}
.ip-page .sk-offer-stats>div{min-width:0}
.ip-page .sk-offer-stats dd[data-ip-total-runtime]{font-size:22px}
.ip-page .sk-btn{font-size:15px;letter-spacing:.03em;text-align:center}
.ip-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:24px;margin-top:32px}
.ip-course-card{min-width:0;border:1px solid var(--border-strong);border-top:3px solid var(--brand-red-lt);border-radius:2px;background:linear-gradient(140deg,rgba(200,16,46,.16),var(--surface-flat) 75%);overflow:hidden}
.ip-course-card:nth-child(3n+2){border-top-color:var(--cyan);background:linear-gradient(140deg,rgba(0,229,255,.1),var(--surface-flat) 75%)}
.ip-course-card:nth-child(3n){border-top-color:var(--violet-lt);background:linear-gradient(140deg,rgba(87,27,193,.2),var(--surface-flat) 75%)}
.ip-course-copy{padding:28px}
.ip-course-label{font:14px/1.6 var(--font-mono);color:var(--cyan);margin-bottom:22px!important}
.ip-course-cover{display:block;aspect-ratio:16/9;width:100%;object-fit:cover;height:auto}
.ip-course-summary{color:var(--fg-2)}
.ip-course-link{display:inline-block;color:var(--cyan);font-weight:700;padding:18px 0 0;font-size:15px}
.ip-course-metrics{font-family:var(--font-mono);font-size:14px;border-top:1px solid var(--border-strong);padding-top:18px;color:var(--fg-1)}
.ip-resource{padding:12px 14px;border-left:2px solid var(--cyan);background:rgba(0,229,255,.05);font-size:15px;color:var(--fg-1)}
.ip-equipment{font-size:14px;color:var(--fg-2);margin-bottom:0!important}
.ip-data-note{font-size:14px;color:var(--fg-2);margin-top:20px!important}
.ip-recovery{padding:24px 28px;color:var(--fg-2)}
.ip-recovery:has([data-ip-status]:empty){display:none}
.ip-recovery button{font:inherit;font-size:14px;min-height:44px;background:transparent;color:var(--cyan);border:1px solid var(--line-cyan);padding:10px 16px;margin:0 14px 12px 0;cursor:pointer}
.ip-recovery a{font-size:14px;text-decoration:underline}
.ip-page noscript p{padding:18px;background:var(--surface-flat);border-left:2px solid var(--cyan)}
.ip-feature{border-left:2px solid var(--cyan);padding:12px 18px;color:var(--fg-2)}
.ip-feature strong{color:var(--fg-0)}
.ip-access-panel{padding:30px;border:1px solid var(--line-cyan);border-top:3px solid var(--cyan);background:linear-gradient(120deg,rgba(0,229,255,.08),var(--bg-deep));margin:30px 0}
.ip-access-panel p{max-width:680px}
.ip-optional{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center}
.ip-optional .sk-fine{margin-bottom:0}
.ip-optional-action{padding:28px;background:linear-gradient(125deg,rgba(200,16,46,.23),var(--bg-deep));border:1px solid rgba(200,16,46,.4);border-top:3px solid var(--brand-red-lt)}
.ip-membership-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.ip-benefit-card{padding:28px;border:1px solid var(--border-strong);border-top:3px solid var(--brand-red-lt);background:linear-gradient(135deg,rgba(200,16,46,.15),var(--surface-flat) 80%);border-radius:2px}
.ip-benefit-card:nth-child(3n+2){border-top-color:var(--cyan);background:linear-gradient(135deg,rgba(0,229,255,.08),var(--surface-flat) 80%)}
.ip-benefit-card:nth-child(3n){border-top-color:var(--violet-lt)}
.ip-benefit-card p{color:var(--fg-2);margin-bottom:0}
.ip-benefit-label{display:block;color:var(--cyan);font:14px/1.6 var(--font-mono);margin-bottom:20px}
.ip-benefit-detail{font:14px/1.6 var(--font-mono);margin-top:20px!important;color:var(--fg-1)!important}
.ip-refund{margin-top:28px;padding:24px 28px;background:rgba(0,229,255,.06);border:1px solid var(--line-cyan);border-left:3px solid var(--cyan)}
.ip-refund strong{display:block;font:700 22px/1.3 var(--font-headline);color:var(--fg-0);margin-bottom:10px}
.ip-refund p{color:var(--fg-2);margin-bottom:0!important}
.ip-refund-short{color:var(--cyan)!important;font-size:15px!important;margin-top:14px!important;margin-bottom:0!important}
.ip-stack-action{margin-top:28px}
.ip-offer-price{font:700 64px/1.1 var(--font-headline);color:var(--fg-0);margin:28px 0 20px}
.ip-offer-price span{display:block;font:16px/1.5 var(--font-body);color:var(--fg-2);margin-top:8px}
.ip-coach-strip{display:flex;align-items:center;gap:18px;margin:26px 0}
.ip-coach-strip>div{display:flex;gap:5px;flex:none}
.ip-coach-strip img{width:40px;height:52px;object-fit:cover;border:1px solid var(--border-strong)}
.ip-coach-strip p{font-size:14px;color:var(--fg-2);margin:0!important}
.ip-audience-band{background:linear-gradient(120deg,rgba(200,16,46,.08),transparent)}
.ip-audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px}
.ip-audience-grid p{color:var(--fg-2)}
.ip-audience-close{border-left:2px solid var(--cyan);padding-left:20px;max-width:840px;margin-top:16px!important}
.ip-page :focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
.ip-page .sk-kit-hero{padding-bottom:32px}
@media(max-width:900px){.ip-page .sk-hero-grid,.ip-optional{grid-template-columns:1fr;gap:32px}.ip-page .sk-hero{padding-top:36px}.ip-page .sk-form-frame{height:731px}.ip-membership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ip-membership-grid,.ip-audience-grid{grid-template-columns:1fr;gap:20px}.ip-benefit-card,.ip-refund{padding:23px}.ip-coach-strip{align-items:flex-start;gap:12px}.ip-coach-strip img{width:34px;height:46px}}
@media(max-width:480px){.ip-page .sk-wrap{padding-inline:20px}.ip-page .sk-brand{gap:8px}.ip-page .sk-brand img{width:32px}.ip-page .sk-brand strong{font-size:18px}.ip-page .sk-brand small{letter-spacing:0}.ip-page .sk-login{max-width:75px}.ip-course-copy,.ip-access-panel,.ip-optional-action{padding:23px}.ip-page .sk-form-heading,.ip-recovery{padding:24px}.ip-page .sk-offer-stats{grid-template-columns:1fr}.ip-page .sk-offer-stats>div+div{border-left:0;border-top:1px solid var(--border-strong)}.ip-page .sk-preview-label{line-height:1.4}.ip-page .sk-preview-label span{margin-top:7px}.ip-page .sk-form-footer{padding:20px 24px}.ip-page .sk-title .sk-accent{font-size:.8em}}

.ip-outcomes{padding:0;list-style:none;margin:22px 0;color:var(--fg-1)}.ip-outcomes li{position:relative;padding:0 0 10px 23px}.ip-outcomes li:before{content:'✓';position:absolute;left:0;color:var(--cyan)}
.ip-outline{margin:20px 0;border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong)}.ip-outline summary{cursor:pointer;padding:16px 0;font-size:15px;color:var(--cyan)}.ip-lesson-list{margin:0;padding:0 0 0 22px;max-height:480px;overflow:auto}.ip-lesson-list li{font-size:14px;padding:12px 6px;border-top:1px solid var(--border-subtle);line-height:1.5}.ip-lesson-time{display:block;color:var(--fg-2);font:12px/1.7 var(--font-mono)}
.ip-guide{margin:30px 0;padding:28px;border:1px solid var(--line-cyan);background:linear-gradient(120deg,rgba(0,229,255,.1),rgba(87,27,193,.12))}.ip-guide p:last-child{margin-bottom:0}.ip-page .ip-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ip-page .ip-course-card{align-self:start}.ip-page .ip-course-card .d3{font-size:26px}.ip-page .sk-form-heading p{font-size:16px}
@media(max-width:1000px){.ip-page .ip-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ip-page .ip-course-grid{grid-template-columns:1fr}.ip-guide{padding:23px}}

.ip-training-card{overflow:hidden;border:1px solid var(--border-strong);border-top:3px solid var(--cyan);background:var(--surface-flat)}.ip-training-card:nth-child(2){border-top-color:var(--brand-red-lt)}.ip-training-card>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.ip-training-card>div{padding:28px}.ip-training-card .sk-eyebrow{font-size:12px}.ip-checkout-guarantee{margin:6px 0 20px;padding:16px;border-left:3px solid var(--cyan);background:rgba(0,229,255,.06);font-size:14px;line-height:1.65;color:var(--fg-2)}.ip-checkout-guarantee strong{display:block;color:var(--cyan)}

.ip-page .sk-preview-player video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}

/* Keep the full brand name together in the established Pirulen wordmark. */
.ip-page .sk-header .sk-brand>span{display:flex;align-items:baseline;gap:.42em;white-space:nowrap;font-family:var(--font-mark);font-size:clamp(13px,1.6vw,18px);line-height:1.2}
.ip-page .sk-header .sk-brand strong,.ip-page .sk-header .sk-brand small{display:inline;font:inherit;letter-spacing:.015em;margin:0;color:var(--fg-0)}
@media(max-width:480px){.ip-page .sk-header .sk-wrap{gap:12px}.ip-page .sk-header .sk-brand{gap:7px}.ip-page .sk-header .sk-brand img{width:26px}.ip-page .sk-header .sk-brand>span{font-size:clamp(9px,2.7vw,12px)}.ip-page .sk-header .sk-login{font-size:11px;max-width:64px}}

/* Preserve the complete titles and logos in Matt's selected discipline artwork. */
.ip-page .sk-system-photo{aspect-ratio:16/9;object-fit:contain;object-position:center;filter:none;background:#080a10}

/* Connect purposeful practice, existing skills and the TRITAC community. */
.ip-audience-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ip-audience-grid .ip-training-card{min-width:0}
.ip-audience-grid .ip-training-card:nth-child(3){border-top-color:var(--violet-lt)}
.ip-audience-grid .ip-training-card>img{object-fit:contain;background:var(--bg-deep)}
.ip-audience-grid .ip-training-card>div{padding:24px}
.ip-audience-grid .ip-training-card .sk-eyebrow{font-size:14px;letter-spacing:.1em;line-height:1.6}
.ip-audience-grid .ip-training-card .d3{font-size:26px;line-height:1.2}
.ip-audience-grid .ip-network-access{font-size:14px;line-height:1.6;margin-top:18px;padding-top:16px;border-top:1px solid var(--border-strong)}
@media(min-width:1001px){.ip-audience-grid .ip-training-card .d3{min-height:2.4em}}
@media(max-width:1000px) and (min-width:641px){.ip-audience-grid{grid-template-columns:1fr}.ip-audience-grid .ip-training-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
@media(max-width:640px){.ip-audience-grid{grid-template-columns:1fr;gap:24px}}
