:root{
    --cip-orange:#FF6B00;
    --cip-orange-2:#F7941D;
    --cip-navy:#0F172A;
    --cip-graphite:#1F2937;
    --cip-text:#475569;
    --cip-muted:#64748B;
    --cip-line:#E5E7EB;
    --cip-bg:#F8FAFC;
    --cip-white:#FFFFFF;
    --cip-green:#16A34A;
    --cip-blue:#2563EB;
    --cip-red:#DC2626;
    --cip-yellow:#FACC15;
}

*{box-sizing:border-box}
body{background:var(--cip-bg);color:var(--cip-graphite)}
a{color:inherit}
main{max-width:1180px}
.product-public main{max-width:1280px}
.product-topbar{background:var(--cip-navy);color:var(--cip-white);padding:14px 18px;position:sticky;top:0;z-index:20;box-shadow:0 12px 30px rgba(15,23,42,.14)}
.product-nav{display:flex;align-items:center;gap:14px;max-width:1280px;margin:0 auto;flex-wrap:wrap}
.product-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;white-space:nowrap}
.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--cip-orange);color:#fff;font-size:13px}
.product-links{display:flex;align-items:center;gap:12px;flex:1;flex-wrap:wrap}
.product-links a,.nav-inline-form button{color:#e5eefb;text-decoration:none;border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:8px 10px;background:rgba(255,255,255,.05);font:inherit;cursor:pointer}
.product-links a:hover,.nav-inline-form button:hover{background:rgba(255,255,255,.12)}
.nav-group-label{color:#fbbf24;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:8px 2px}
.nav-inline-form{display:inline}
.product-footer{max-width:1280px;margin:28px auto 0;padding:22px 18px;color:var(--cip-text);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--cip-line)}
.product-footer p{margin:.35rem 0 0}
.footer-links{display:flex;gap:12px;flex-wrap:wrap}
.footer-links a{color:var(--cip-text)}
.btn{background:var(--cip-orange);border-radius:8px;color:#fff;font-weight:700;border:0;text-decoration:none;padding:11px 14px;display:inline-flex;align-items:center;justify-content:center;min-height:42px}
.btn.secondary{background:var(--cip-graphite)}
.btn.danger{background:var(--cip-red)}
.btn.compact{min-height:36px;padding:8px 11px;font-size:14px}
.card,.product-card,.article-card,.field-side-card{border-radius:8px;border:1px solid var(--cip-line);box-shadow:0 14px 35px rgba(15,23,42,.06)}
.product-section{margin:28px 0;padding:30px;border-radius:8px;background:var(--cip-white);border:1px solid var(--cip-line);position:relative;overflow:hidden}
.product-section h1,.product-section h2{color:var(--cip-navy);letter-spacing:0;margin:.1rem 0 1rem;line-height:1.08}
.product-section h1{font-size:clamp(34px,5vw,64px)}
.product-section h2{font-size:clamp(25px,3vw,38px)}
.product-section p{color:var(--cip-text);line-height:1.6}
.eyebrow{font-weight:800;text-transform:uppercase;color:var(--cip-orange)!important;letter-spacing:.08em;font-size:13px}
.lead,.section-lead{font-size:18px;max-width:760px}
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:30px;align-items:center;min-height:calc(100vh - 160px);background:linear-gradient(135deg,#fff 0%,#fff7ed 55%,#eff6ff 100%)}
.hero:before,.field-band:before{content:"";position:absolute;inset:auto -15% -35% -15%;height:52%;background:linear-gradient(90deg,transparent 49%,rgba(22,163,74,.14) 50%,transparent 51%),linear-gradient(0deg,transparent 49%,rgba(22,163,74,.14) 50%,transparent 51%);background-size:80px 80px;border-top:2px solid rgba(22,163,74,.2);pointer-events:none}
.hero-copy,.hero-mockup,.field-band>div{position:relative;z-index:1}
.hero-actions,.badge-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.badge-row span,.secure-badge,.content-tags a{border-radius:999px;background:#fff;border:1px solid var(--cip-line);padding:8px 11px;color:var(--cip-graphite);font-weight:700;font-size:14px}
.hero-mockup{background:var(--cip-navy);border-radius:8px;padding:18px;box-shadow:0 24px 55px rgba(15,23,42,.22)}
.mock-player,.video-thumb{aspect-ratio:16/10;border-radius:8px;background:linear-gradient(135deg,#111827,#334155);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.16)}
.mock-player:before,.video-thumb:before{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.2);border-radius:6px}
.play-dot,.video-thumb span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:var(--cip-orange)}
.play-dot:after,.video-thumb span:after{content:"";position:absolute;left:23px;top:17px;border-left:18px solid #fff;border-top:12px solid transparent;border-bottom:12px solid transparent}
.mock-card{margin-top:14px;background:#fff;border-radius:8px;padding:14px}
.mock-card p{margin:.4rem 0;color:var(--cip-text)}
.product-grid,.article-grid,.field-side-grid,.flow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.product-grid.five{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.product-card{background:#fff;padding:18px;min-height:170px}
.product-card h3,.article-card h3,.field-side-card h2{color:var(--cip-navy);margin:.2rem 0 .7rem}
.card-symbol{width:38px;height:38px;border-radius:8px;background:linear-gradient(135deg,var(--cip-orange),var(--cip-orange-2));margin-bottom:12px}
.flow-step{background:#fff;border:1px solid var(--cip-line);border-left:5px solid var(--cip-orange);border-radius:8px;padding:18px;font-weight:800;color:var(--cip-navy)}
.field-band{background:linear-gradient(135deg,#0f172a,#1f2937);color:#fff}
.field-band h2,.field-band p{color:#fff}
.field-band .badge-row span{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#fff}
.no-rank{border-left:6px solid var(--cip-green)}
.ecosystem{border-left:6px solid var(--cip-blue)}
.pilot-cta{background:#fff7ed;border-color:#fed7aa}
.content-tags{display:flex;gap:10px;flex-wrap:wrap}
.content-tags a{text-decoration:none}
.page-hero{background:linear-gradient(135deg,#fff,#eff6ff)}
.compact-hero{margin-bottom:16px}
.article-card{background:#fff;padding:18px}
.article-card span{display:inline-block;color:var(--cip-orange);font-weight:800;margin-bottom:8px}
.product-banner{display:flex;align-items:center;gap:14px;border-radius:8px;border:1px solid var(--cip-line);padding:14px 16px;background:#fff;margin:16px 0;box-shadow:0 12px 30px rgba(15,23,42,.06)}
.product-banner p{margin:.25rem 0 0;color:var(--cip-text)}
.banner-icon{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto}
.banner-icon svg{width:22px;height:22px;fill:currentColor}
.banner-info .banner-icon,.banner-action .banner-icon{background:#dbeafe;color:var(--cip-blue)}
.banner-success .banner-icon,.banner-pilot .banner-icon{background:#dcfce7;color:var(--cip-green)}
.banner-warning .banner-icon{background:#fef9c3;color:#a16207}
.field-side-card{background:#fff;padding:16px}
.field-side-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.secure-badge{display:inline-block;background:#dcfce7;color:#166534;margin:12px 0}
.field-side-card dl{display:grid;gap:8px;margin:0}
.field-side-card div{display:grid;grid-template-columns:95px 1fr;gap:8px}
.field-side-card dt{font-weight:800;color:var(--cip-navy)}
.field-side-card dd{margin:0;color:var(--cip-text)}
.field-filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.field-filters span{border-radius:999px;border:1px solid var(--cip-line);background:#fff;padding:8px 12px;font-weight:700;color:var(--cip-text)}
.club-list-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.club-item,.mini-note{border:1px solid var(--cip-line);border-radius:8px;background:#fff;padding:12px}
.mini-note{margin-top:12px}
.mini-note p{margin:.35rem 0 0}
.interest-placeholder{margin-top:14px;border:1px solid var(--cip-line);border-radius:8px;padding:10px;background:#f8fafc}
.interest-placeholder summary{cursor:pointer;font-weight:800;color:var(--cip-orange)}
.empty-state{grid-column:1/-1;background:#fff;border:1px dashed var(--cip-muted);border-radius:8px;padding:28px;text-align:center}
.dashboard-hero{background:linear-gradient(135deg,#fff7ed,#fff);border-left:6px solid var(--cip-orange)}
.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:16px 0}
.quick-action{display:block;padding:16px;border-radius:8px;background:#fff;border:1px solid var(--cip-line);text-decoration:none;font-weight:800;color:var(--cip-navy)}
.quick-action span{display:block;color:var(--cip-text);font-weight:400;margin-top:6px}
.video-shell{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:16px}
.video-panel{background:#0f172a;border-radius:8px;padding:12px}
.video-panel video{display:block;border-radius:6px;background:#000}
.checklist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.check-pill{display:flex;align-items:center;gap:9px;border:1px solid var(--cip-line);border-radius:8px;padding:10px;background:#fff}
.check-pill input{width:auto;margin:0}
.protocol-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:12px 0}
.protocol-card{border:1px solid var(--cip-line);border-radius:8px;padding:14px;background:#fff}
.protocol-card h4{margin:.2rem 0;color:var(--cip-navy)}
.protocol-card p{margin:.25rem 0;color:var(--cip-text)}
.report-section-card{border-left:5px solid var(--cip-orange);background:#fff}
.sensitive-note{border-left:5px solid var(--cip-green);background:#f0fdf4}
.media-slot{margin:14px 0}
.media-slot .platform-media{display:block;width:100%;max-width:100%;border-radius:8px;border:1px solid var(--cip-line);object-fit:cover}
.media-slot-empty{border:1px dashed #cbd5e1;border-radius:8px;background:linear-gradient(135deg,#fff,#f8fafc);padding:18px;min-height:120px;display:flex;flex-direction:column;justify-content:center}
.media-slot-empty strong{color:var(--cip-navy)}
.media-slot-empty p{margin:.4rem 0 0;color:var(--cip-text)}
.hero-media-card{background:rgba(255,255,255,.08);border-radius:8px;padding:8px}
.hero-media-card .media-slot-empty{background:rgba(255,255,255,.95)}
.youtube-card,.audio-card{border:1px solid var(--cip-line);border-radius:8px;background:#fff;padding:12px}
.youtube-frame{aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#0f172a}
.youtube-frame details{height:100%;display:grid;place-items:center}
.youtube-frame summary{list-style:none;cursor:pointer;border-radius:8px;background:var(--cip-orange);color:#fff;font-weight:800;padding:11px 14px}
.youtube-frame summary::-webkit-details-marker{display:none}
.youtube-frame details[open]{display:block}
.youtube-frame details[open] summary{display:none}
.youtube-frame iframe{width:100%;height:100%;border:0;display:block}
.audio-card audio{width:100%;margin-top:8px}
.journey-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:20px;align-items:center;border-left:6px solid var(--cip-orange)}
.journey-book{background:linear-gradient(135deg,#fff,#f8fafc)}
.journey-book-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.7fr);gap:18px;align-items:start}
.journey-chapters{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.journey-chapter{border:1px solid var(--cip-line);border-radius:8px;background:#fff;padding:16px;min-height:120px;border-left:5px solid var(--cip-orange)}
.journey-chapter span{display:block;color:var(--cip-orange);font-weight:800;font-size:13px;text-transform:uppercase;margin-bottom:8px}
.journey-chapter strong{display:block;color:var(--cip-navy);font-size:18px}
.journey-chapter p{margin:.45rem 0 0}
.school-season{border-left:6px solid var(--cip-green)}
.school-season-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:14px}
.family-section{border-left:6px solid var(--cip-yellow)}
.field-side-media .media-slot-empty{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2)}
.field-side-media .media-slot-empty strong,.field-side-media .media-slot-empty p{color:#fff}
.visual-banner{border-radius:8px;border:1px solid var(--cip-line);padding:18px;background:#fff}
.visual-banner strong{color:var(--cip-navy);font-size:18px}
.visual-banner-orange{border-left:5px solid var(--cip-orange)}
.visual-banner-green{border-left:5px solid var(--cip-green)}
.admin-media-grid,.admin-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:18px 0}
.admin-media-grid .product-card,.admin-slot-grid .product-card{min-height:0}
.form-card{background:#fff;padding:18px;display:grid;gap:12px}
.form-card label{display:grid;gap:6px;color:var(--cip-navy);font-weight:800}
.form-card input,.form-card select,.form-card textarea,.admin-slot-grid select{width:100%;border:1px solid var(--cip-line);border-radius:8px;padding:10px;font:inherit;background:#fff;color:var(--cip-graphite)}
.form-card textarea{min-height:110px}
.admin-help-list{margin:8px 0 0;padding-left:20px;color:var(--cip-text)}
.admin-slot-key,.field-hint{color:#64748b;font-size:.92rem}
.admin-spec-list,.admin-media-preview-meta{display:grid;gap:6px;margin:12px 0;padding:12px;border:1px solid var(--cip-line);border-radius:8px;background:#f8fafc;color:var(--cip-text);font-size:.92rem}
.admin-media-preview-meta{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.muted{color:var(--cip-muted)!important}
@media(max-width:800px){
    main{margin:16px auto;padding:0 12px}
    .hero,.video-shell,.journey-section,.journey-book-grid{grid-template-columns:1fr;min-height:auto}
    .product-section{padding:22px;margin:18px 0}
    .product-links{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
    .product-links a{white-space:nowrap}
    .product-footer{display:block}
    .field-side-card div{grid-template-columns:1fr}
    .hero-actions .btn{width:100%}
}
