/*
Theme Name: Academy G12 Pro
Author: G12Live Wrocław
Description: Профессиональная тема онлайн-Академии G12.
Version: 8.9.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: academy-g12
*/
:root{--navy:#071727;--navy2:#0c2438;--ink:#102033;--gold:#e9ad32;--gold2:#ffc957;--paper:#f5f6f7;--white:#fff;--muted:#667085;--line:#e7e9ee;--green:#3b9157;--radius:20px;--max:1240px;--shadow:0 16px 45px rgba(13,32,51,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}.g12-container{width:min(var(--max),calc(100% - 44px));margin:auto}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(7,23,39,.96);border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:blur(14px)}.header-inner{height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;color:#fff;font-family:Georgia,serif;font-size:20px;font-weight:700}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(233,173,50,.55);border-radius:50% 50% 45% 45%;color:var(--gold2);font-family:Inter,sans-serif;font-size:13px}.brand small{display:block;font-family:Inter,sans-serif;color:#a9b5c2;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.main-nav ul{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}.main-nav a{color:#e8edf2;font-size:14px;font-weight:650}.main-nav a:hover{color:var(--gold2)}.menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:10px;padding:8px 11px}
.hero{position:relative;overflow:hidden;background:linear-gradient(90deg,#061523 0%,#0a2033 53%,#0d2435 100%);color:#fff}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 20%,rgba(255,198,81,.18),transparent 26%);pointer-events:none}.hero-grid{min-height:610px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;position:relative;z-index:2}.hero-copy{padding:70px 0}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--gold2);font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.eyebrow:before{content:"";width:26px;height:2px;background:var(--gold)}.hero h1{font-family:Georgia,serif;font-size:clamp(48px,5.7vw,76px);line-height:1.02;letter-spacing:-.035em;margin:17px 0 22px}.hero h1 em{font-style:normal;color:var(--gold2)}.hero p{max-width:670px;font-size:18px;color:#d5dde6}.hero-visual{height:100%;min-height:610px;background:url("assets/academy-hero.jpg") center/cover no-repeat;position:relative;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a2033 0%,rgba(10,32,51,.15) 35%,rgba(7,23,39,.12) 100%)}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:12px;font-weight:800;border:1px solid rgba(255,255,255,.45)}.btn-primary{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#17120a;border:0;box-shadow:0 10px 25px rgba(233,173,50,.18)}.btn-secondary{color:#fff}.btn:hover{transform:translateY(-1px)}
.journey{background:#fff;padding:52px 0;border-bottom:1px solid var(--line)}.section-head{text-align:center;margin-bottom:34px}.section-head h2,.section-title{font-family:Georgia,serif;font-size:clamp(32px,4vw,46px);line-height:1.1;margin:0 0 10px}.section-head p,.section-lead{color:var(--muted);margin:0}.journey-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.journey-item{text-align:center;position:relative}.journey-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:linear-gradient(145deg,#102a42,#173a57);color:#fff;font-size:28px;box-shadow:0 10px 24px rgba(13,32,51,.15)}.journey-item:nth-child(2) .journey-icon{background:linear-gradient(145deg,#2f6d43,#4e965f)}.journey-item:nth-child(3) .journey-icon{background:linear-gradient(145deg,#e2a62e,#f6c353)}.journey-item:nth-child(4) .journey-icon{background:linear-gradient(145deg,#a94a20,#d16630)}.journey-item:nth-child(5) .journey-icon{background:linear-gradient(145deg,#56328a,#7552ad)}.journey-item b{display:block;text-transform:uppercase;font-size:14px}.journey-item p{font-size:13px;color:var(--muted);margin:5px 0}
.section{padding:76px 0}.academy-intro{display:grid;grid-template-columns:.78fr 1.22fr;gap:42px;align-items:center}.academy-intro .copy h2{font-family:Georgia,serif;font-size:43px;line-height:1.08;margin:10px 0 16px}.academy-intro .copy p{color:var(--muted)}.module-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.preview-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.preview-art{height:128px;background:linear-gradient(135deg,#102a42,#e6aa32);position:relative}.preview-card:nth-child(2) .preview-art{background:linear-gradient(135deg,#233c54,#806b49)}.preview-card:nth-child(3) .preview-art{background:linear-gradient(135deg,#173b2b,#7ca256)}.preview-art:after{content:"";position:absolute;width:70px;height:70px;border:1px solid rgba(255,255,255,.28);border-radius:50%;right:18px;top:25px}.preview-body{padding:15px}.preview-body small{color:var(--muted)}.preview-body h3{font-size:16px;line-height:1.25;margin:5px 0 10px}
.stats-band{background:var(--navy);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:32px 0}.stat-pro{display:flex;gap:14px;align-items:center}.stat-pro strong{font-family:Georgia,serif;font-size:35px;color:var(--gold2)}.stat-pro span{font-size:13px;color:#c6d0da}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.benefit{text-align:center;background:#fff;padding:27px 18px;border-radius:18px;border:1px solid var(--line)}.benefit i{font-style:normal;font-size:27px}.benefit h3{font-size:16px;margin:10px 0 3px}.benefit p{font-size:13px;color:var(--muted);margin:0}
.cta{background:linear-gradient(135deg,#0b2135,#102e48);color:#fff;border-radius:28px;padding:54px;text-align:center;position:relative;overflow:hidden}.cta:after{content:"G12";position:absolute;right:-15px;bottom:-80px;font:900 180px Georgia;color:rgba(255,255,255,.035)}.cta h2{font-family:Georgia,serif;font-size:42px;margin:0 0 8px}.cta p{color:#c7d2dc}
.content-wrap{padding:55px 0}.content-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(24px,5vw,52px);box-shadow:var(--shadow)}.entry-title{font-family:Georgia,serif;font-size:clamp(34px,5vw,54px);line-height:1.08;margin-top:0}.entry-content h2,.entry-content h3{font-family:Georgia,serif}.site-footer{background:#061523;color:#aab7c4;padding:42px 0;border-top:1px solid rgba(255,255,255,.08)}.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}
@media(max-width:950px){.hero-grid{grid-template-columns:1fr}.hero-visual{display:none}.journey-grid,.benefits{grid-template-columns:repeat(2,1fr)}.academy-intro{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.g12-container{width:min(100% - 28px,var(--max))}.main-nav{display:none}.main-nav.open{display:block;position:absolute;top:70px;left:14px;right:14px;background:#0b2237;padding:18px;border-radius:14px}.main-nav.open ul{flex-direction:column;align-items:flex-start}.menu-toggle{display:block}.hero-grid{min-height:auto}.hero-copy{padding:58px 0}.hero h1{font-size:48px}.journey-grid,.module-preview,.benefits,.stats-grid{grid-template-columns:1fr}.cta{padding:36px 22px}.footer-inner{flex-direction:column;align-items:flex-start}}

/* === Academy G12 Theme 2.1 fixes === */
.hero-grid{grid-template-columns:56% 44%!important}
.hero-visual{
 min-height:610px!important;
 height:100%!important;
 width:100%!important;
 clip-path:none!important;
 background-image:
   linear-gradient(90deg,#0a2033 0%,rgba(10,32,51,.68) 13%,rgba(10,32,51,.10) 48%,rgba(7,23,39,.05) 100%),
   url("assets/academy-hero.jpg")!important;
 background-position:center center!important;
 background-size:cover!important;
 background-repeat:no-repeat!important;
}
.hero-visual:after{display:none!important}

/* Better pathway icons and spacing */
.journey{padding:58px 0!important}
.journey-grid{gap:30px!important}
.journey-icon{
 width:88px!important;height:88px!important;
 border:5px solid rgba(255,255,255,.72)!important;
 box-shadow:0 12px 30px rgba(13,32,51,.13)!important;
 font-size:0!important;
 position:relative!important;
}
.journey-icon:before{font-size:29px!important;color:#fff!important;font-weight:700!important}
.journey-item:nth-child(1) .journey-icon:before{content:"◎"}
.journey-item:nth-child(2) .journey-icon:before{content:"✦"}
.journey-item:nth-child(3) .journey-icon:before{content:"▤"}
.journey-item:nth-child(4) .journey-icon:before{content:"●"}
.journey-item:nth-child(5) .journey-icon:before{content:"↗"}

/* More polished module preview cards */
.preview-card{border:0!important;box-shadow:0 18px 38px rgba(13,32,51,.10)!important;transition:.2s ease}
.preview-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(13,32,51,.14)!important}
.preview-art{height:150px!important}
.preview-card:nth-child(1) .preview-art{
 background:
 radial-gradient(circle at 75% 28%,rgba(255,255,255,.16) 0 35px,transparent 36px),
 linear-gradient(135deg,#0b2a43 0%,#c79427 100%)!important}
.preview-card:nth-child(2) .preview-art{
 background:
 radial-gradient(circle at 75% 28%,rgba(255,255,255,.15) 0 35px,transparent 36px),
 linear-gradient(135deg,#183b58 0%,#79684d 100%)!important}
.preview-card:nth-child(3) .preview-art{
 background:
 radial-gradient(circle at 75% 28%,rgba(255,255,255,.14) 0 35px,transparent 36px),
 linear-gradient(135deg,#123c29 0%,#6b9b50 100%)!important}
.preview-art:after{display:none!important}
.preview-body{padding:19px!important;min-height:150px}
.preview-body h3{font-size:18px!important}

/* Hide the accidental WordPress sample page from the theme menu */
.main-nav li.page-item-2{display:none!important}

/* Overall spacing refinement */
.academy-intro{gap:58px!important}
.section{padding:86px 0!important}
@media(max-width:950px){
 .hero-grid{grid-template-columns:1fr!important}
 .hero-visual{display:block!important;min-height:360px!important}
}
@media(max-width:760px){
 .hero-visual{min-height:280px!important}
 .journey-grid{gap:22px!important}
}

/* === 2.2 definitive hero image correction === */
.hero-grid{grid-template-columns:54% 46%!important}
.hero-copy{position:relative;z-index:3}
.hero-visual{
 display:block!important;
 min-height:610px!important;
 background:
 linear-gradient(90deg,#081b2c 0%,rgba(8,27,44,.72) 8%,rgba(8,27,44,.20) 31%,rgba(8,27,44,0) 55%),
 url("assets/academy-hero.jpg") center center/cover no-repeat!important;
}
.hero:before{
 content:"";position:absolute;z-index:2;top:0;bottom:0;left:49%;width:14%;
 background:linear-gradient(90deg,#081b2c 0%,rgba(8,27,44,.68) 45%,rgba(8,27,44,0) 100%);
 pointer-events:none
}
@media(max-width:950px){
 .hero:before{display:none}
 .hero-visual{min-height:380px!important;background:url("assets/academy-hero.jpg") center/cover no-repeat!important}
}

/* === 2.3 clean hero: no source mockup remnants === */
.hero{background:#071b2c!important}
.hero-grid{grid-template-columns:56% 44%!important}
.hero-visual{
 min-height:610px!important;
 background-image:
 linear-gradient(90deg,#071b2c 0%,rgba(7,27,44,.82) 10%,rgba(7,27,44,.28) 34%,rgba(7,27,44,.02) 62%),
 linear-gradient(0deg,rgba(7,23,39,.20),rgba(7,23,39,.05)),
 url("assets/academy-hero-clean.jpg")!important;
 background-size:cover!important;
 background-position:center!important;
 background-repeat:no-repeat!important;
}
.hero:before{
 left:50%!important;width:12%!important;
 background:linear-gradient(90deg,#071b2c 0%,rgba(7,27,44,.72) 45%,rgba(7,27,44,0) 100%)!important;
}
@media(max-width:950px){
 .hero-grid{grid-template-columns:1fr!important}
 .hero:before{display:none!important}
 .hero-visual{
   min-height:360px!important;
   background-image:linear-gradient(0deg,rgba(7,23,39,.22),rgba(7,23,39,.05)),url("assets/academy-hero-clean.jpg")!important;
   background-position:center!important
 }
}

/* =========================================================
   ACADEMY G12 3.0 — approved cinematic homepage
   ========================================================= */
.ag12-home{background:#f7f5f0}
.ag12-hero{height:535px;position:relative;overflow:hidden;background:#061a2b;color:#fff}
.ag12-hero-photo{position:absolute;inset:0 0 0 40%;background:url("assets/hero-approved.jpg") center/cover no-repeat}
.ag12-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061a2b 0%,#061a2b 37%,rgba(6,26,43,.84) 48%,rgba(6,26,43,.20) 70%,rgba(6,26,43,.08) 100%)}
.ag12-hero-inner{height:100%;position:relative;z-index:2;display:flex;align-items:center}
.ag12-hero-copy{width:47%;padding-top:8px}
.ag12-kicker{display:flex;align-items:center;gap:10px;color:#f4b42d;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.14em}
.ag12-kicker:before{content:"";width:22px;height:2px;background:#f4b42d}
.ag12-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:61px;line-height:.98;letter-spacing:-.045em;margin:16px 0 18px;font-weight:700}
.ag12-hero h1 span{color:#f8b937}
.ag12-hero-copy>p{font-size:17px;line-height:1.55;color:#e4e9ee;max-width:625px;margin:0}
.ag12-actions{display:flex;gap:15px;margin-top:24px}
.ag12-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 24px;border-radius:11px;font-size:15px;font-weight:850;transition:.18s}
.ag12-btn:hover{transform:translateY(-2px)}
.ag12-btn-gold{background:linear-gradient(135deg,#ffc84f,#efa91e);color:#111820;box-shadow:0 8px 24px rgba(238,169,30,.18)}
.ag12-btn-outline{border:1px solid rgba(255,255,255,.52);color:#fff;background:rgba(5,20,34,.24)}
.ag12-btn-outline i{width:31px;height:31px;border:1px solid rgba(255,255,255,.62);border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:11px}
.ag12-verse{position:absolute;right:3%;bottom:56px;color:#fff;text-align:left;font-family:Georgia,serif;font-size:17px;line-height:1.35;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.ag12-verse em{display:block}.ag12-verse strong{display:block;color:#f6b633;margin-top:12px;font-family:Inter,system-ui,sans-serif;font-size:14px}

.ag12-path{background:#071d30;color:#fff;border-top:1px solid rgba(255,255,255,.08);padding:20px 0 22px}
.ag12-path-grid{display:grid;grid-template-columns:1fr .42fr 1fr .42fr 1fr .42fr 1fr .42fr 1fr;align-items:center}
.ag12-stage{text-align:center}
.ag12-stage-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;font-size:25px;font-weight:900;color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.25),inset 0 0 0 7px rgba(255,255,255,.06)}
.ag12-stage.blue .ag12-stage-icon{background:#1374ad}.ag12-stage.green .ag12-stage-icon{background:#19875b}.ag12-stage.yellow .ag12-stage-icon{background:#c99b2b}.ag12-stage.orange .ag12-stage-icon{background:#b94e20}.ag12-stage.purple .ag12-stage-icon{background:#673ab3}
.ag12-stage h3{font-size:13px;margin:0 0 4px;letter-spacing:.02em}.ag12-stage p{font-size:11px;line-height:1.35;color:#d5dde5;margin:0}
.ag12-connector{height:1px;background:rgba(255,255,255,.28);margin:0 18px}

.ag12-modules{background:#f7f5f0;padding:48px 0 62px}
.ag12-modules-grid{display:grid;grid-template-columns:34% 66%;gap:48px;align-items:center}
.ag12-kicker.dark{color:#d89315}.ag12-module-intro h2{font-family:Georgia,serif;font-size:38px;line-height:1.08;letter-spacing:-.025em;margin:15px 0 14px;color:#0a2034}
.ag12-module-intro>p{font-size:15px;line-height:1.6;color:#526276;margin:0 0 22px;max-width:440px}
.ag12-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ag12-card{position:relative;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 12px 32px rgba(14,35,54,.10);border:1px solid #e7e4dc}
.ag12-card-photo{height:106px;background-size:cover;background-position:center}
.ag12-card-photo.one{background-image:linear-gradient(rgba(5,26,43,.08),rgba(5,26,43,.10)),url("assets/hero-approved.jpg")}
.ag12-card-photo.two{background:radial-gradient(circle at 55% 40%,#9dbe69 0 6%,transparent 7%),linear-gradient(135deg,#183f31,#7e9c4d)}
.ag12-card-photo.three{background:linear-gradient(135deg,#664b2d,#e6c78b)}
.ag12-num{position:absolute;top:87px;left:18px;width:37px;height:37px;border-radius:50%;background:#08243a;border:3px solid #fff;color:#fff;display:grid;place-items:center;font-weight:900}
.ag12-card-body{padding:24px 18px 15px}.ag12-card h3{font-size:15px;line-height:1.22;margin:0 0 6px;color:#0c2134}.ag12-card p{font-size:12px;color:#617084;margin:0 0 18px}
.ag12-card-foot{display:grid;grid-template-columns:1fr 31px 34px;gap:8px;align-items:center}.ag12-progress{height:7px;background:#e7e8e8;border-radius:10px;overflow:hidden}.ag12-progress i{display:block;height:100%;background:#f3b22d;border-radius:10px}.ag12-card-foot small{font-size:11px;color:#526276}.ag12-card-foot a{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#f6b42e;color:#0c2134;font-weight:900}

.site-header{background:#071d30!important}.header-inner{height:76px!important}.brand-mark{border-color:#d79a1e!important;color:#f6b42e!important}
.main-nav ul{gap:30px!important}.main-nav a{font-weight:800!important}.main-nav a:hover{color:#f6b42e!important}
.site-footer{background:#061725!important}

@media(max-width:1050px){
 .ag12-hero{height:auto;min-height:660px}.ag12-hero-photo{inset:0;background-position:62% center}.ag12-hero:after{background:linear-gradient(90deg,rgba(6,26,43,.97) 0%,rgba(6,26,43,.88) 55%,rgba(6,26,43,.42) 100%)}
 .ag12-hero-copy{width:65%}.ag12-path-grid{grid-template-columns:repeat(5,1fr);gap:14px}.ag12-connector{display:none}
 .ag12-modules-grid{grid-template-columns:1fr}.ag12-cards{max-width:900px}
}
@media(max-width:760px){
 .ag12-hero{min-height:700px}.ag12-hero-inner{align-items:flex-start;padding-top:60px}.ag12-hero-copy{width:100%}.ag12-hero h1{font-size:48px}.ag12-hero-copy>p{font-size:16px}.ag12-actions{flex-direction:column;align-items:flex-start}
 .ag12-verse{display:none}.ag12-path-grid{grid-template-columns:1fr 1fr}.ag12-stage:last-child{grid-column:1/-1}.ag12-stage{padding:12px 4px}
 .ag12-modules{padding:44px 0}.ag12-cards{grid-template-columns:1fr}.ag12-module-intro h2{font-size:34px}
}

/* ===== Academy G12 3.1 — based on approved hero ===== */
.ag31-home{background:#f5f4ef}.ag31-hero{height:650px;position:relative;overflow:hidden;background:#061b2c;color:#fff}
.ag31-photo{position:absolute;inset:0 0 0 39%;background:url("assets/hero-v31.jpg") center/cover no-repeat}
.ag31-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061b2c 0%,#061b2c 35%,rgba(6,27,44,.90) 43%,rgba(6,27,44,.35) 61%,rgba(6,27,44,.08) 100%)}
.ag31-inner{height:100%;position:relative;z-index:2;display:flex;align-items:center}.ag31-copy{width:47%}.ag31-kicker{display:flex;align-items:center;gap:11px;color:#f5b62e;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.14em}.ag31-kicker:before{content:"";width:25px;height:2px;background:#f5b62e}
.ag31-copy h1{font-family:Georgia,serif;font-size:66px;line-height:1;letter-spacing:-.045em;margin:18px 0 20px}.ag31-copy h1 span{color:#f6b632}.ag31-copy>p{font-size:17px;line-height:1.65;color:#edf1f4;max-width:660px}
.ag31-actions{display:flex;gap:15px;margin-top:28px}.ag31-btn{min-height:55px;padding:0 25px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:850}.ag31-btn.gold{background:linear-gradient(135deg,#ffc84e,#efa91d);color:#121920;box-shadow:0 10px 24px rgba(239,169,29,.18)}.ag31-btn.outline{border:1px solid rgba(255,255,255,.6);color:#fff;background:rgba(5,21,35,.25)}.ag31-btn.outline i{font-style:normal;border:1px solid rgba(255,255,255,.7);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:11px}
.ag31-verse{position:absolute;right:1.5%;bottom:95px;width:270px;text-align:left;text-shadow:0 2px 10px rgba(0,0,0,.55)}.ag31-verse p{font-family:Georgia,serif;font-style:italic;font-size:18px;line-height:1.45;margin:0}.ag31-verse strong{display:block;color:#f5b62e;margin-top:12px;font-size:14px}
.ag31-path{background:#071d30;color:#fff;padding:28px 0}.ag31-path-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:32px}.ag31-stage{text-align:center;position:relative}.ag31-stage:not(:last-child):after{content:"";position:absolute;width:35%;height:1px;background:rgba(255,255,255,.22);right:-30%;top:35px}.ag31-stage span{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:auto auto 9px;font-size:26px;box-shadow:0 9px 22px rgba(0,0,0,.25)}.ag31-stage.s1 span{background:#126fa8}.ag31-stage.s2 span{background:#27824e}.ag31-stage.s3 span{background:#d9a62a}.ag31-stage.s4 span{background:#bb4d20}.ag31-stage.s5 span{background:#6536aa}.ag31-stage h3{font-size:13px;margin:0 0 5px}.ag31-stage p{font-size:11px;line-height:1.4;color:#cdd7e0;margin:0}
.ag31-modules{padding:70px 0 80px}.ag31-modules-grid{display:grid;grid-template-columns:34% 66%;gap:55px;align-items:center}.ag31-kicker.dark{color:#d99717}.ag31-intro h2{font-family:Georgia,serif;color:#0a2034;font-size:42px;line-height:1.08;margin:15px 0}.ag31-intro>p{color:#5b6979;line-height:1.65;margin-bottom:24px}.ag31-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ag31-cards article{position:relative;background:#fff;border-radius:14px;overflow:hidden;border:1px solid #e6e3db;box-shadow:0 15px 35px rgba(13,32,51,.10)}.ag31-cards .pic{height:145px}.ag31-cards .p1{background:url("assets/hero-v31.jpg") center/cover}.ag31-cards .p2{background:linear-gradient(135deg,#123e2c,#8aa65a)}.ag31-cards .p3{background:linear-gradient(135deg,#6b4e2c,#d6b575)}.ag31-cards .num{position:absolute;top:122px;left:18px;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#08243a;border:4px solid #fff;color:#fff}.ag31-cards .body{padding:29px 19px 19px}.ag31-cards small{color:#7b8794;font-size:10px;font-weight:850}.ag31-cards h3{font-size:18px;line-height:1.25;margin:5px 0 7px;color:#0b2134}.ag31-cards p{font-size:13px;color:#667586}.ag31-cards .bar{height:7px;background:#e9eaeb;border-radius:10px;overflow:hidden;margin-top:16px}.ag31-cards .bar i{height:100%;display:block;background:#f2b32d}
@media(max-width:1050px){.ag31-hero{height:700px}.ag31-copy{width:63%}.ag31-verse{display:none}.ag31-modules-grid{grid-template-columns:1fr}.ag31-stage:not(:last-child):after{display:none}}
@media(max-width:760px){.ag31-hero{height:auto;min-height:720px}.ag31-photo{inset:0}.ag31-hero:after{background:rgba(6,27,44,.78)}.ag31-inner{align-items:flex-start;padding-top:70px}.ag31-copy{width:100%}.ag31-copy h1{font-size:48px}.ag31-actions{flex-direction:column;align-items:flex-start}.ag31-path-grid{grid-template-columns:1fr 1fr}.ag31-stage:last-child{grid-column:1/-1}.ag31-cards{grid-template-columns:1fr}}

/* ===== 3.2: HERO WITHOUT RASTER TEXT ===== */
.ag31-photo{
 background-image:url("assets/hero-clean-no-text.jpg")!important;
 background-position:center center!important;
 background-size:cover!important;
 background-repeat:no-repeat!important;
}
/* Оставляем только одну цитату — HTML-версию */
.ag31-verse{
 right:4%!important;
 bottom:82px!important;
 width:300px!important;
 padding:18px 20px!important;
 border-left:2px solid #f5b62e!important;
 background:rgba(4,20,34,.28)!important;
 backdrop-filter:blur(3px)!important;
 border-radius:0 10px 10px 0!important;
}
.ag31-verse p{font-size:17px!important;line-height:1.5!important}

/* ==========================================================
   ACADEMY G12 PRO 4.0
   Полная пересборка главной страницы по последнему макету
   ========================================================== */
.g12v4{background:#f6f5f1}
.g12v4-hero{height:650px;position:relative;overflow:hidden;background:#061b2c;color:#fff}
.g12v4-photo{position:absolute;inset:0 0 0 38%;background:url("assets/hero-final-clean.jpg") center 44%/cover no-repeat}
.g12v4-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#061b2c 0%,#061b2c 34%,rgba(6,27,44,.91) 43%,rgba(6,27,44,.42) 60%,rgba(6,27,44,.08) 100%)}
.g12v4-hero-inner{height:100%;position:relative;z-index:2;display:flex;align-items:center}
.g12v4-copy{width:48%;margin-top:-5px}
.g12v4-kicker{display:flex;align-items:center;gap:11px;color:#f5b42b;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.15em}
.g12v4-kicker:before{content:"";width:27px;height:2px;background:#f5b42b}
.g12v4-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:66px;line-height:.99;letter-spacing:-.045em;margin:20px 0 22px}
.g12v4-copy h1 span{color:#f6b530}
.g12v4-copy>p{max-width:650px;font-size:17px;line-height:1.65;color:#e9eef2;margin:0}
.g12v4-actions{display:flex;gap:15px;margin-top:29px}
.g12v4-btn{min-height:56px;padding:0 26px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:11px;font-size:15px;font-weight:850;transition:.18s}
.g12v4-btn:hover{transform:translateY(-2px)}
.g12v4-btn.primary{background:linear-gradient(135deg,#ffc74b,#efa91c);color:#111820;box-shadow:0 9px 25px rgba(239,169,28,.18)}
.g12v4-btn.secondary{border:1px solid rgba(255,255,255,.58);color:#fff;background:rgba(5,21,35,.22)}
.g12v4-btn .play{width:34px;height:34px;border:1px solid rgba(255,255,255,.7);border-radius:50%;display:grid;place-items:center;font-size:10px}
.g12v4-verse{position:absolute;right:2.5%;bottom:83px;width:295px;padding:17px 19px;border-left:2px solid #f5b42b;background:rgba(4,19,32,.30);border-radius:0 10px 10px 0;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.g12v4-verse p{font-family:Georgia,serif;font-style:italic;font-size:17px;line-height:1.5;margin:0}
.g12v4-verse strong{display:block;color:#f5b42b;margin-top:11px;font-size:14px}

.g12v4-path{background:#071d30;color:#fff;padding:31px 0 32px;border-top:1px solid rgba(255,255,255,.08)}
.g12v4-path-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:40px}
.g12v4-path .step{text-align:center;position:relative}
.g12v4-path .step:not(:last-child):after{content:"";position:absolute;right:-29%;top:36px;width:32%;height:1px;background:rgba(255,255,255,.22)}
.g12v4-path .ico{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;color:#fff;font-size:27px;box-shadow:0 10px 25px rgba(0,0,0,.22),inset 0 0 0 7px rgba(255,255,255,.06)}
.g12v4-path .reach .ico{background:#126fa8}.g12v4-path .establish .ico{background:#288650}.g12v4-path .form .ico{background:#d7a529}.g12v4-path .send .ico{background:#bc4d20}.g12v4-path .reproduce .ico{background:#6738aa}
.g12v4-path h3{font-size:13px;letter-spacing:.02em;margin:0 0 6px}.g12v4-path p{max-width:190px;margin:auto;color:#ccd7e0;font-size:11px;line-height:1.45}

.g12v4-learning{padding:72px 0 82px}
.g12v4-learning-grid{display:grid;grid-template-columns:34% 66%;gap:56px;align-items:center}
.g12v4-kicker.dark{color:#d99316}
.g12v4-intro h2{font-family:Georgia,serif;font-size:42px;line-height:1.08;letter-spacing:-.025em;color:#0a2034;margin:16px 0}
.g12v4-intro>p{font-size:15px;line-height:1.7;color:#5c6979;margin:0 0 25px}
.g12v4-module-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}
.g12v4 .module-card{background:#fff;border-radius:15px;overflow:hidden;border:1px solid #e5e3dc;box-shadow:0 15px 38px rgba(13,32,51,.10);transition:.2s}
.g12v4 .module-card:hover{transform:translateY(-4px);box-shadow:0 21px 45px rgba(13,32,51,.14)}
.g12v4 .cover{height:145px;position:relative;overflow:hidden}
.g12v4 .cover.c1{background:url("assets/hero-final-clean.jpg") center/cover}
.g12v4 .cover.c2{background:linear-gradient(135deg,#113d2c,#7e9e51)}
.g12v4 .cover.c3{background:linear-gradient(135deg,#654a2c,#d3b272)}
.g12v4 .cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,22,36,.38),transparent 60%)}
.g12v4 .cover span{position:absolute;z-index:2;right:15px;bottom:9px;color:rgba(255,255,255,.88);font:700 31px Georgia}
.g12v4 .module-body{padding:20px}
.g12v4 .module-body small{color:#8a949e;font-size:10px;font-weight:850;letter-spacing:.06em}
.g12v4 .module-body h3{font-size:18px;line-height:1.25;color:#0b2134;margin:5px 0 7px}
.g12v4 .module-body p{font-size:13px;color:#687686;margin:0 0 17px}
.g12v4 .progress{height:7px;background:#e8eaeb;border-radius:10px;overflow:hidden}.g12v4 .progress i{display:block;height:100%;background:#f3b32d}
.g12v4 .meta{display:flex;align-items:center;justify-content:space-between;margin-top:10px;color:#697786;font-size:11px}.g12v4 .meta b{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#f4b52e;color:#0b2134;font-size:16px}

@media(max-width:1050px){
 .g12v4-hero{height:700px}.g12v4-copy{width:64%}.g12v4-verse{display:none}
 .g12v4-learning-grid{grid-template-columns:1fr}.g12v4-path .step:not(:last-child):after{display:none}
}
@media(max-width:760px){
 .g12v4-hero{height:auto;min-height:720px}.g12v4-photo{inset:0}.g12v4-overlay{background:rgba(6,27,44,.78)}
 .g12v4-hero-inner{align-items:flex-start;padding-top:70px}.g12v4-copy{width:100%}.g12v4-copy h1{font-size:48px}.g12v4-copy>p{font-size:16px}
 .g12v4-actions{flex-direction:column;align-items:flex-start}.g12v4-path-grid{grid-template-columns:1fr 1fr}.g12v4-path .step:last-child{grid-column:1/-1}
 .g12v4-module-cards{grid-template-columns:1fr}.g12v4-intro h2{font-size:35px}
}

/* 4.1 — clean photographic hero, no raster UI/text */
.g12v4-photo{
 background-image:url("assets/hero-photo-only-v41.jpg")!important;
 background-position:center center!important;
 background-size:cover!important;
 background-repeat:no-repeat!important;
}
.g12v4-overlay{
 background:linear-gradient(90deg,#061b2c 0%,#061b2c 35%,rgba(6,27,44,.93) 43%,rgba(6,27,44,.46) 59%,rgba(6,27,44,.07) 100%)!important;
}

/* ===== Academy G12 5.0 — 30 individual module covers ===== */
.g12all-feature{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 45px rgba(13,32,51,.12);display:grid;grid-template-columns:56% 44%;min-height:285px}
.g12all-feature img{width:100%;height:100%;object-fit:cover}
.g12all-feature>div{padding:35px 28px;display:flex;flex-direction:column;justify-content:center}
.g12all-feature span{color:#d99417;font-size:11px;font-weight:900;letter-spacing:.13em}
.g12all-feature h3{font-family:Georgia,serif;font-size:29px;line-height:1.1;color:#0b2134;margin:9px 0}
.g12all-feature p{color:#697786;line-height:1.55}

.g12all-catalog{background:#f3f2ee;padding:74px 0 90px;border-top:1px solid #e5e2d9}
.g12all-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}
.g12all-head h2{font-family:Georgia,serif;font-size:42px;color:#0a2034;margin:13px 0 0}
.g12all-head>p{max-width:450px;color:#667585;line-height:1.6;margin:0}
.g12all-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.g12all-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #e2dfd7;box-shadow:0 12px 30px rgba(14,33,51,.08);transition:.2s;position:relative}
.g12all-card:hover{transform:translateY(-4px);box-shadow:0 19px 40px rgba(14,33,51,.13)}
.g12all-cover{height:190px;background-size:cover;background-position:center;position:relative}
.g12all-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,20,33,.42),transparent 58%)}
.g12all-no{position:absolute;z-index:2;right:18px;bottom:11px;font:700 38px Georgia,serif;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.g12all-body{padding:22px}
.g12all-body small{font-size:10px;font-weight:900;letter-spacing:.08em;color:#d69216}
.g12all-body h3{font-size:20px;line-height:1.2;color:#0b2134;margin:7px 0 7px}
.g12all-body p{font-size:13px;color:#697787;margin:0 0 20px;min-height:20px}
.g12all-progress{height:7px;border-radius:10px;background:#e8e9e9;overflow:hidden}
.g12all-progress i{display:block;height:100%;background:#f2b22b;border-radius:10px}
.g12all-meta{display:flex;justify-content:space-between;align-items:center;margin-top:12px;color:#687686;font-size:12px}
.g12all-meta b{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#f4b42c;color:#0a2034;font-size:17px}
.g12all-card.locked .g12all-cover{filter:saturate(.68)}
.g12all-card.locked .g12all-meta b{background:#e3e4e4;color:#71808d;font-size:14px}
@media(max-width:1000px){.g12all-grid{grid-template-columns:repeat(2,1fr)}.g12all-feature{grid-template-columns:1fr}.g12all-feature img{height:250px}.g12all-head{align-items:start;flex-direction:column}}
@media(max-width:620px){.g12all-grid{grid-template-columns:1fr}.g12all-cover{height:205px}.g12all-head h2{font-size:34px}}

/* ===== ACADEMY G12 6.0 — PROFESSIONAL STUDENT DASHBOARD ===== */
body:has(.g12-pro-dashboard){background:#061a2a}.g12-dashboard-page{padding:0!important;background:#061a2a}.g12-dashboard-content{width:100%}.g12-dashboard-page+.site-footer{display:none}
body:has(.g12-pro-dashboard) .site-header{display:none}
.g12pro-shell{min-height:100vh;background:radial-gradient(circle at 75% 0,#10334d 0,#071e31 37%,#051827 100%);color:#f4f7fa;font-family:Inter,system-ui,sans-serif;display:grid;grid-template-columns:212px minmax(0,1fr)}
.g12pro-sidebar{background:linear-gradient(180deg,#061b2d,#052238);border-right:1px solid #173b55;min-height:100vh;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}
.g12pro-logo{height:96px;padding:17px 19px;display:flex;align-items:center;gap:12px;color:#fff;border-bottom:1px solid #173b55}.g12pro-logo>span{width:53px;height:53px;border:2px solid #f3b329;border-radius:50%;display:grid;place-items:center;color:#f3b329;font:700 18px Georgia}.g12pro-logo b{font-size:11px;line-height:1.3;letter-spacing:.08em}
.g12pro-sidebar nav{padding:10px 0}.g12pro-sidebar nav a{height:48px;padding:0 20px;display:flex;align-items:center;gap:14px;color:#dce7ef;font-size:13px;border-left:4px solid transparent}.g12pro-sidebar nav a i{width:20px;text-align:center;font-style:normal;font-size:19px}.g12pro-sidebar nav a.on{background:linear-gradient(90deg,#9b6b13,#b5872f);color:#fff;border-left-color:#ffbd2d}.g12pro-sidefoot{margin-top:auto;padding:20px;color:#b5c3cf;font-size:11px;border-top:1px solid #173b55}.g12pro-sidefoot span,.g12pro-sidefoot small{display:block;margin-top:5px}.g12pro-sidefoot small{color:#6f8495}
.g12pro-main{min-width:0}.g12pro-topbar{height:56px;border-bottom:1px solid #214159;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:rgba(5,24,39,.62)}.g12pro-topbar a{color:#e7eef4;margin-right:32px;font-size:12px}.g12pro-user{display:flex;align-items:center;gap:10px;font-size:17px}.g12pro-user img{width:34px;height:34px;border-radius:50%}.g12pro-user span{display:flex;flex-direction:column;font-size:11px}.g12pro-user small{color:#9eb0be}
.g12pro-hero{height:248px;margin:0;position:relative;overflow:hidden;background:linear-gradient(90deg,#071c2e 0%,rgba(7,28,46,.84) 36%,rgba(7,28,46,.08) 70%),url("assets/hero-photo-only-v41.jpg") center 48%/cover no-repeat;padding:28px 38px;display:flex;align-items:center}.g12pro-hero-copy{max-width:560px}.g12pro-hero-copy>span{font-size:10px;color:#f3b329;font-weight:900;letter-spacing:.12em}.g12pro-hero h1{font:700 46px/.92 Georgia,serif;margin:9px 0 12px;letter-spacing:-.035em}.g12pro-hero h1 em{font-style:normal;color:#f5b42d}.g12pro-hero p{font-size:12px;line-height:1.5;max-width:530px;color:#edf3f7}.g12pro-hero blockquote{position:absolute;right:28px;bottom:25px;margin:0;background:rgba(5,24,39,.72);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:17px 20px;width:235px;font:italic 13px/1.55 Georgia;color:#fff}.g12pro-hero blockquote strong{display:block;color:#f3b329;font:800 12px Inter;margin-top:8px}
.g12pro-stats{margin:-1px 20px 18px;padding:12px 22px;min-height:86px;border:1px solid #244b66;border-radius:10px;background:linear-gradient(100deg,rgba(12,45,68,.92),rgba(7,31,49,.95));display:grid;grid-template-columns:72px 180px repeat(4,1fr);align-items:center}.g12pro-ring{width:60px;height:60px;border-radius:50%;background:conic-gradient(#f4b52c 20%,#38566a 0);display:grid;place-items:center;position:relative}.g12pro-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#0b2b42}.g12pro-ring span{z-index:1;font-weight:900}.progress-copy{display:flex;flex-direction:column}.progress-copy b{font-size:12px}.progress-copy small{font-size:10px;color:#afbfcb;max-width:140px;margin-top:4px}.g12pro-stats .stat{border-left:1px solid #31536a;display:grid;grid-template-columns:36px 1fr;grid-template-rows:1fr 1fr;padding-left:28px}.g12pro-stats .stat i{grid-row:1/3;font-style:normal;color:#f3b329;font-size:27px;align-self:center}.g12pro-stats .stat b{font-size:14px}.g12pro-stats .stat small{font-size:10px;color:#aebdca}
.g12pro-catalog-head{padding:0 24px 15px;display:flex;align-items:end;justify-content:space-between;gap:20px}.g12pro-catalog-head h2{font:700 28px Georgia;margin:0 0 3px}.g12pro-catalog-head p{margin:0;color:#aab9c6;font-size:12px}.g12pro-tools{display:flex;gap:7px;align-items:center}.g12pro-tools input{height:37px;width:200px;border:1px solid #31536b;background:#08263c;color:#fff;border-radius:7px;padding:0 12px}.g12pro-tools button{height:37px;border:1px solid #31536b;background:#08263c;color:#fff;border-radius:7px;padding:0 14px;font-size:10px}.g12pro-tools button.on{background:#f4b42d;color:#0a1c29;border-color:#f4b42d;font-weight:900}
.g12pro-grid{padding:0 22px 35px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important}.g12pro-grid .g12-module-card{padding:0!important;min-height:0!important;border:1px solid #31516a!important;border-radius:9px!important;background:#08253a!important;color:#fff!important;overflow:hidden!important;display:block!important}.g12pro-grid .g12-module-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,0,0,.22)}.g12pro-cover{height:86px;background-size:cover;background-position:center;position:relative}.g12pro-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,13,22,.45),transparent 60%)}.g12pro-cover span{position:absolute;left:10px;bottom:7px;z-index:2;border:1px solid rgba(255,255,255,.6);background:rgba(5,19,31,.55);border-radius:20px;padding:2px 7px;font:700 17px Georgia}.g12pro-cover>b{position:absolute;right:8px;top:8px;z-index:2;background:#3ac36a;width:27px;height:27px;border-radius:50%;display:grid;place-items:center}.g12pro-grid .g12-module-card h3{font-size:12px!important;line-height:1.18!important;margin:10px 12px 3px!important;min-height:29px;color:#fff!important}.g12pro-grid .g12-card-link{margin:0 10px 9px!important;padding:0!important;float:right;width:28px;height:28px;border-radius:50%;background:#f5b42d!important;color:#071c2d!important;font-size:0!important;text-align:center!important}.g12pro-grid .g12-card-link:after{content:"→";font-size:16px;line-height:28px}.g12pro-grid .g12-lock-note{display:block;margin:0 12px 10px;font-size:9px;color:#8ea3b3}.g12pro-card-progress{margin:9px 12px 10px;display:grid;grid-template-columns:1fr 27px;gap:6px;align-items:center}.g12pro-card-progress:before{content:"";grid-column:1;grid-row:1;height:6px;background:#24475e;border-radius:10px}.g12pro-card-progress i{grid-column:1;grid-row:1;height:6px;background:#f4b42d;border-radius:10px;z-index:2}.g12pro-card-progress small{font-size:9px;color:#c2ced7}.g12pro-grid .locked{opacity:.62}
@media(max-width:1250px){.g12pro-grid{grid-template-columns:repeat(4,1fr)!important}.g12pro-stats{grid-template-columns:65px 150px repeat(2,1fr)}.g12pro-stats .stat:nth-last-child(-n+2){display:none}}
@media(max-width:950px){.g12pro-shell{grid-template-columns:74px 1fr}.g12pro-logo b,.g12pro-sidebar nav a:not(.on){font-size:0}.g12pro-sidebar nav a{justify-content:center;padding:0}.g12pro-sidebar nav a i{font-size:20px}.g12pro-sidefoot{display:none}.g12pro-grid{grid-template-columns:repeat(3,1fr)!important}.g12pro-hero blockquote{display:none}.g12pro-hero-copy{max-width:70%}.g12pro-tools button{display:none}}
@media(max-width:650px){.g12pro-shell{display:block}.g12pro-sidebar{display:none}.g12pro-topbar{padding:0 15px}.g12pro-topbar>div:first-child{display:none}.g12pro-hero{height:330px;padding:28px 20px}.g12pro-hero-copy{max-width:100%}.g12pro-hero h1{font-size:39px}.g12pro-stats{margin:10px;grid-template-columns:60px 1fr}.g12pro-stats .stat{display:none}.g12pro-catalog-head{align-items:flex-start;flex-direction:column}.g12pro-tools{width:100%}.g12pro-tools input{width:100%}.g12pro-grid{grid-template-columns:repeat(2,1fr)!important;padding:0 10px 30px!important}}

/* ==========================================================
   ACADEMY G12 PRO 7.0 — PROFESSIONAL MODULE / LESSON PAGE
   Enhances existing LMS modal/page without replacing LMS logic
   ========================================================== */
.g12-modal.open .g12-modal-panel{
 width:min(1480px,96vw)!important;max-width:none!important;height:min(900px,94vh)!important;
 background:#061b2c!important;border:1px solid #23475f!important;border-radius:14px!important;
 box-shadow:0 30px 90px rgba(0,0,0,.55)!important;overflow:hidden!important;color:#eef4f8!important
}
.g12-modal.open .g12-modal-head{height:62px!important;padding:0 24px!important;background:#071f33!important;border-bottom:1px solid #23475f!important}
.g12-modal.open .g12-modal-head h3{font:700 20px Georgia,serif!important;color:#fff!important}
.g12-modal.open .g12-modal-body{padding:0!important;height:calc(100% - 62px)!important;overflow:auto!important;background:radial-gradient(circle at 65% 0,#10334c,#061b2c 42%,#051725 100%)!important}
.g12lesson-pro{min-height:100%;display:grid;grid-template-columns:minmax(0,1fr) 330px}
.g12lesson-main{min-width:0;padding:22px}
.g12lesson-side{border-left:1px solid #23475f;background:rgba(5,24,39,.72);padding:18px;min-width:0}
.g12lesson-crumb{font-size:11px;color:#8ea4b5;margin-bottom:12px}
.g12lesson-hero{min-height:240px;border-radius:12px;overflow:hidden;position:relative;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:25px;margin-bottom:16px}
.g12lesson-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,33,.94) 0%,rgba(4,20,33,.72) 42%,rgba(4,20,33,.12) 80%)}
.g12lesson-hero-copy{position:relative;z-index:2;max-width:580px}.g12lesson-hero small{color:#f5b42d;font-weight:900;letter-spacing:.1em}
.g12lesson-hero h1{font:700 43px/.96 Georgia,serif;color:#fff;margin:8px 0}.g12lesson-hero h1 span{color:#f5b42d}
.g12lesson-hero p{font-size:13px;line-height:1.5;color:#dce7ef;margin:0 0 16px;max-width:510px}
.g12lesson-primary{display:inline-flex;align-items:center;gap:10px;background:#f5b42d;color:#071b2b!important;border:0;border-radius:8px;padding:12px 18px;font-weight:900;font-size:12px}
.g12lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:16px}
.g12lesson-video{background:#02080d;border:1px solid #294c64;border-radius:10px;overflow:hidden;aspect-ratio:16/9;display:grid;place-items:center;position:relative}
.g12lesson-video iframe,.g12lesson-video video{width:100%;height:100%;border:0}
.g12lesson-video-placeholder{width:76px;height:76px;border-radius:50%;background:rgba(0,0,0,.55);border:2px solid rgba(255,255,255,.75);display:grid;place-items:center;font-size:27px;color:#fff}
.g12lesson-materials{background:#09283e;border:1px solid #2b5069;border-radius:10px;padding:15px}.g12lesson-materials h3{font-size:13px;margin:0 0 11px}
.g12lesson-material{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}.g12lesson-material:last-child{border:0}
.g12lesson-material i{width:31px;height:31px;border-radius:6px;background:#174c70;display:grid;place-items:center;font-style:normal}.g12lesson-material b{display:block;font-size:11px}.g12lesson-material small{color:#8fa4b5;font-size:9px}
.g12lesson-tabs{display:flex;gap:25px;border-bottom:1px solid #315168;margin-top:14px;padding:0 8px}.g12lesson-tabs button{background:none;border:0;color:#b7c5cf;padding:12px 2px;font-size:11px}.g12lesson-tabs button.on{color:#f5b42d;border-bottom:2px solid #f5b42d;font-weight:800}
.g12lesson-tabcontent{padding:16px 9px}.g12lesson-tabcontent h2{font:700 20px Georgia;margin:0 0 8px}.g12lesson-tabcontent p{font-size:12px;line-height:1.6;color:#d5e0e7}
.g12lesson-scripture{margin:15px 0;padding:13px 15px;border:1px solid #6d5a25;border-radius:8px;background:linear-gradient(90deg,rgba(110,80,15,.22),rgba(15,43,60,.4));font-size:11px;line-height:1.55}.g12lesson-scripture strong{display:block;color:#f5b42d;margin-top:4px}
.g12lesson-points{display:grid;gap:7px}.g12lesson-point{display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:start;font-size:11px}.g12lesson-point b{width:22px;height:22px;border-radius:50%;background:#f5b42d;color:#071b2b;display:grid;place-items:center}
.g12lesson-progressbox,.g12lesson-task,.g12lesson-discuss,.g12lesson-next{border:1px solid #2b5069;border-radius:10px;background:#09283e;padding:15px;margin-bottom:14px}
.g12lesson-progressbox h3,.g12lesson-side h3{font-size:13px;margin:0 0 10px}.g12lesson-progressrow{display:flex;align-items:center;gap:15px}
.g12lesson-ring{width:72px;height:72px;border-radius:50%;background:conic-gradient(#f5b42d 20%,#315269 0);display:grid;place-items:center;position:relative}.g12lesson-ring:after{content:"";position:absolute;inset:9px;background:#09283e;border-radius:50%}.g12lesson-ring b{position:relative;z-index:2}
.g12lesson-lessons{border:1px solid #2b5069;border-radius:10px;overflow:hidden;margin-bottom:14px}.g12lesson-row{min-height:58px;padding:8px 10px;display:grid;grid-template-columns:42px 1fr 24px;gap:8px;align-items:center;border-bottom:1px solid #1c4058;background:#072237}.g12lesson-row:last-child{border:0}.g12lesson-row.current{border:1px solid #f5b42d;background:#0c3048}.g12lesson-row img{width:42px;height:42px;object-fit:cover;border-radius:6px}.g12lesson-row b{font-size:10px;display:block}.g12lesson-row small{font-size:9px;color:#8fa4b5}.g12lesson-row .state{font-size:14px;color:#f5b42d;text-align:center}
.g12lesson-task{border-color:#66531e;background:linear-gradient(135deg,#102d3e,#292b1d)}.g12lesson-task h3{color:#f5b42d}.g12lesson-task p,.g12lesson-discuss p{font-size:10px;color:#c9d4dc;line-height:1.5}.g12lesson-next{min-height:130px;background-size:cover;background-position:center;position:relative;overflow:hidden;display:flex;align-items:flex-end}.g12lesson-next:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,18,29,.9),rgba(4,18,29,.12))}.g12lesson-next div{position:relative;z-index:2}.g12lesson-next small{color:#f5b42d}.g12lesson-next h4{margin:4px 0 0;font:700 17px Georgia}
@media(max-width:1050px){.g12lesson-pro{grid-template-columns:1fr}.g12lesson-side{border-left:0;border-top:1px solid #23475f}.g12lesson-layout{grid-template-columns:1fr}.g12lesson-materials{display:none}}
@media(max-width:650px){.g12-modal.open .g12-modal-panel{width:100vw!important;height:100vh!important;border-radius:0!important}.g12lesson-main{padding:10px}.g12lesson-hero{min-height:280px;padding:18px}.g12lesson-hero h1{font-size:34px}.g12lesson-tabs{overflow-x:auto;gap:18px}.g12lesson-side{padding:10px}}

/* ==========================================================
   7.1 HOTFIX — REAL LMS MODULE VIEW
   The LMS renders .lesson-head/.lesson-tabs/.lesson-pane directly.
   Style those real elements instead of relying on the optional pro wrapper.
   ========================================================== */
.g12-modal.open .g12-modal-panel{
  background:#061b2c!important;color:#eef4f8!important;
}
.g12-modal.open #g12-modal-content{
  background:#061b2c!important;color:#eef4f8!important;min-height:100%!important;
}
.g12-modal.open .lesson-head{
  position:relative!important;
  padding:44px 50px 38px!important;
  min-height:250px!important;
  background:
    linear-gradient(90deg,rgba(5,24,39,.98) 0%,rgba(5,24,39,.90) 48%,rgba(5,24,39,.32) 76%,rgba(5,24,39,.12) 100%),
    url("assets/module-covers/module-01.jpg") center 45%/cover no-repeat!important;
  color:#fff!important;
}
.g12-modal.open .lesson-head:before{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#294b62
}
.g12-modal.open .lesson-head h1{
  max-width:780px!important;margin:12px 0 22px!important;
  font:700 48px/.98 Georgia,serif!important;letter-spacing:-.035em!important;color:#fff!important
}
.g12-modal.open .lesson-head .eyebrow{color:#f5b42d!important;font-weight:900!important}
.g12-modal.open .lesson-head p{color:#dce7ef!important}
.g12-modal.open .lesson-chips span{
  background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.08)!important;color:#f1f5f8!important
}

/* Tabs */
.g12-modal.open .lesson-tabs{
  position:sticky;top:0;z-index:6;
  display:flex!important;gap:5px!important;padding:0 42px!important;
  background:#082237!important;border-bottom:1px solid #294b62!important;
  box-shadow:0 8px 20px rgba(0,0,0,.12)
}
.g12-modal.open .lesson-tabs button{
  color:#b9c8d3!important;background:transparent!important;padding:18px 15px!important;
  border:0!important;border-bottom:3px solid transparent!important
}
.g12-modal.open .lesson-tabs button:hover{color:#fff!important}
.g12-modal.open .lesson-tabs button.on{
  color:#f5b42d!important;border-bottom-color:#f5b42d!important;background:rgba(245,180,45,.06)!important
}

/* Main panes: this fixes the white-on-white screenshot */
.g12-modal.open .lesson-pane{
  background:#061b2c!important;color:#eef4f8!important;padding:34px 50px 46px!important;min-height:430px!important
}
.g12-modal.open .lesson-pane h1,
.g12-modal.open .lesson-pane h2,
.g12-modal.open .lesson-pane h3,
.g12-modal.open .lesson-pane h4{color:#fff!important}
.g12-modal.open .lesson-pane p,
.g12-modal.open .lesson-pane li,
.g12-modal.open .lesson-pane label{color:#cfdae2!important}
.g12-modal.open .lesson-content{color:#d8e2e9!important}

/* Overview card */
.g12-modal.open .overview-card,
.g12-modal.open .scripture-card{
  max-width:1050px!important;
  background:linear-gradient(145deg,#0a2a41,#082237)!important;
  border:1px solid #2b5069!important;border-radius:14px!important;
  padding:28px 30px!important;color:#eef4f8!important;
  box-shadow:0 14px 38px rgba(0,0,0,.14)!important
}
.g12-modal.open .overview-card h2{
  font:700 26px Georgia,serif!important;color:#fff!important;margin:0 0 16px!important
}
.g12-modal.open .overview-card p{font-size:15px!important;line-height:1.65!important;color:#d5e0e7!important}
.g12-modal.open .overview-card blockquote{
  margin:22px 0!important;padding:16px 18px!important;
  background:linear-gradient(90deg,rgba(118,83,16,.28),rgba(12,45,66,.5))!important;
  border:1px solid #6e5921!important;border-left:3px solid #f5b42d!important;
  border-radius:9px!important;color:#eef4f8!important;font:italic 15px/1.6 Georgia,serif!important
}
.g12-modal.open .path-steps{gap:10px!important;margin-top:20px!important}
.g12-modal.open .path-steps span{
  background:#0e354f!important;border:1px solid #31566f!important;color:#dce8ef!important;
  padding:10px 14px!important;border-radius:999px!important
}

/* Video */
.g12-modal.open .g12-video,
.g12-modal.open .g12-video-placeholder{
  max-width:1100px!important;border-radius:14px!important;border:1px solid #294d65!important;
  background:#02080d!important;box-shadow:0 18px 42px rgba(0,0,0,.22)!important
}

/* Lessons list */
.g12-modal.open .g12-lessons-list details{
  background:#08263b!important;border:1px solid #2b5069!important;color:#eef4f8!important
}
.g12-modal.open .g12-lessons-list summary{color:#fff!important}
.g12-modal.open .g12-lessons-list summary span{background:#f5b42d!important;color:#071b2b!important}
.g12-modal.open .g12-lessons-list .lesson-content{color:#d5e0e7!important}

/* Inner tabs */
.g12-modal.open .g12-inner-tabs{border-bottom-color:#2b5069!important}
.g12-modal.open .g12-inner-tabs button{background:#0c3048!important;color:#c7d4dd!important}
.g12-modal.open .g12-inner-tabs button.on{background:#f5b42d!important;color:#071b2b!important}

/* Workbook, task, quiz, notes */
.g12-modal.open .task-box,
.g12-modal.open .quiz-box{
  background:#09283e!important;border:1px solid #2b5069!important;color:#eef4f8!important
}
.g12-modal.open textarea,
.g12-modal.open input[type="text"],
.g12-modal.open input[type="search"]{
  background:#061d2f!important;border:1px solid #31566f!important;color:#fff!important
}
.g12-modal.open .g12-btn{background:#0c3048!important;border-color:#31566f!important;color:#fff!important}
.g12-modal.open .g12-btn.primary,
.g12-modal.open .g12-save-task,
.g12-modal.open .g12-save-workbook,
.g12-modal.open .g12-save-note,
.g12-modal.open .g12-complete-lesson{
  background:#f5b42d!important;color:#071b2b!important;border-color:#f5b42d!important
}
.g12-modal.open .complete-banner{background:#123c2a!important;color:#bce9ca!important}

/* Close button */
.g12-modal.open .g12-modal-close{
  background:#f5b42d!important;color:#071b2b!important;box-shadow:0 5px 18px rgba(0,0,0,.25)!important
}

@media(max-width:700px){
 .g12-modal.open .lesson-head{padding:52px 22px 28px!important;min-height:230px!important}
 .g12-modal.open .lesson-head h1{font-size:34px!important}
 .g12-modal.open .lesson-tabs{padding:0 10px!important}
 .g12-modal.open .lesson-pane{padding:24px 16px 35px!important}
 .g12-modal.open .overview-card,.g12-modal.open .scripture-card{padding:20px!important}
}

/* ===== 7.2 LESSON CONTENT CONTRAST HOTFIX =====
   The lesson content itself is injected with its own light background.
   Force a coherent dark academy surface and readable text at every nested level.
*/
#g12-modal-content,
#g12-modal-content .lesson-pane,
#g12-modal-content .lesson-pane > div,
#g12-modal-content .lesson-content,
#g12-modal-content .lesson-content > div,
#g12-modal-content .lesson-body,
#g12-modal-content .lesson-body > div,
.g12-modal-body .lesson-pane,
.g12-modal-body .lesson-content{
    background-color:#061b2c!important;
    color:#dbe6ed!important;
}
#g12-modal-content .lesson-pane *,
#g12-modal-content .lesson-content *,
#g12-modal-content .lesson-body *,
.g12-modal-body .lesson-pane *,
.g12-modal-body .lesson-content *{
    color:inherit;
}
#g12-modal-content .lesson-pane h1,
#g12-modal-content .lesson-pane h2,
#g12-modal-content .lesson-pane h3,
#g12-modal-content .lesson-pane h4,
#g12-modal-content .lesson-content h1,
#g12-modal-content .lesson-content h2,
#g12-modal-content .lesson-content h3,
#g12-modal-content .lesson-content h4{
    color:#ffffff!important;
}
#g12-modal-content .lesson-pane p,
#g12-modal-content .lesson-pane li,
#g12-modal-content .lesson-content p,
#g12-modal-content .lesson-content li{
    color:#d4e0e8!important;
    opacity:1!important;
}
#g12-modal-content .lesson-pane strong,
#g12-modal-content .lesson-content strong{
    color:#ffffff!important;
}
#g12-modal-content .lesson-pane a,
#g12-modal-content .lesson-content a{
    color:#f5b42d!important;
}

/* Real lesson article / rich text containers */
#g12-modal-content [class*="lesson-text"],
#g12-modal-content [class*="lesson-copy"],
#g12-modal-content [class*="lesson-section"],
#g12-modal-content [class*="lesson-detail"],
#g12-modal-content [class*="lesson-article"],
#g12-modal-content [class*="content-box"]{
    background:#09283e!important;
    border-color:#2b5069!important;
    color:#dbe6ed!important;
}
#g12-modal-content [class*="lesson-text"] *,
#g12-modal-content [class*="lesson-copy"] *,
#g12-modal-content [class*="lesson-section"] *,
#g12-modal-content [class*="lesson-detail"] *,
#g12-modal-content [class*="lesson-article"] *,
#g12-modal-content [class*="content-box"] *{
    color:inherit!important;
    opacity:1!important;
}

/* Scripture banner shown in screenshot */
#g12-modal-content blockquote,
#g12-modal-content [class*="scripture"],
#g12-modal-content [class*="bible"]{
    background:#102c3f!important;
    border-color:#d8a83d!important;
    color:#f1f5f7!important;
    opacity:1!important;
}
#g12-modal-content blockquote *,
#g12-modal-content [class*="scripture"] *,
#g12-modal-content [class*="bible"] *{
    color:#f1f5f7!important;
    opacity:1!important;
}

/* Lesson sub-navigation: Video / Full notes / Practice */
#g12-modal-content [class*="lesson-actions"],
#g12-modal-content [class*="lesson-switch"],
#g12-modal-content [class*="subtabs"]{
    background:#082237!important;
    border-color:#294b62!important;
}
#g12-modal-content button,
#g12-modal-content .g12-btn{
    opacity:1!important;
}

/* Fallback for inline colors injected by lesson HTML */
#g12-modal-content .lesson-pane [style*="color"],
#g12-modal-content .lesson-content [style*="color"],
#g12-modal-content .lesson-body [style*="color"]{
    color:#dbe6ed!important;
}
#g12-modal-content .lesson-pane [style*="background"],
#g12-modal-content .lesson-content [style*="background"],
#g12-modal-content .lesson-body [style*="background"]{
    background-color:#09283e!important;
}

/* Give long lesson copy a readable professional column */
#g12-modal-content .lesson-pane{
    padding:34px 48px 52px!important;
}
#g12-modal-content .lesson-pane > *{
    max-width:1180px;
    margin-left:auto;
    margin-right:auto;
}

/* ==========================================================
   7.3 DEFINITIVE FIX — DIRECT LMS LESSON STYLING
   No dependency on #g12-modal-content or modal state.
   ========================================================== */
.lesson-pane,
.lesson-content,
.lesson-body,
.lesson-panel,
.lesson-detail,
.lesson-article,
.lesson-full,
.lesson-wrap,
.lesson-view{
  background:#071d2f!important;
  color:#d9e5ec!important;
  opacity:1!important;
}
.lesson-pane *,
.lesson-content *,
.lesson-body *,
.lesson-panel *,
.lesson-detail *,
.lesson-article *,
.lesson-full *,
.lesson-wrap *,
.lesson-view *{
  opacity:1!important;
}
.lesson-pane p,.lesson-content p,.lesson-body p,.lesson-panel p,.lesson-detail p,.lesson-article p,
.lesson-pane li,.lesson-content li,.lesson-body li,.lesson-panel li,.lesson-detail li,.lesson-article li,
.lesson-pane span,.lesson-content span,.lesson-body span,.lesson-panel span,.lesson-detail span,.lesson-article span{
  color:#d9e5ec!important;
}
.lesson-pane h1,.lesson-pane h2,.lesson-pane h3,.lesson-pane h4,
.lesson-content h1,.lesson-content h2,.lesson-content h3,.lesson-content h4,
.lesson-body h1,.lesson-body h2,.lesson-body h3,.lesson-body h4{
  color:#fff!important;
}
.lesson-pane strong,.lesson-content strong,.lesson-body strong{color:#fff!important}
.lesson-pane a,.lesson-content a,.lesson-body a{color:#f5b42d!important}

/* likely inner rich-content wrappers */
.lesson-pane [class*="content"],
.lesson-pane [class*="text"],
.lesson-pane [class*="copy"],
.lesson-pane [class*="article"],
.lesson-content [class*="content"],
.lesson-content [class*="text"],
.lesson-body [class*="content"],
.lesson-body [class*="text"]{
  color:#d9e5ec!important;
  opacity:1!important;
}

/* override pale inline styles from LMS content */
.lesson-pane [style*="color"],
.lesson-content [style*="color"],
.lesson-body [style*="color"],
.lesson-panel [style*="color"],
.lesson-detail [style*="color"],
.lesson-article [style*="color"]{
  color:#d9e5ec!important;
  opacity:1!important;
}
.lesson-pane [style*="background-color: white"],
.lesson-pane [style*="background-color:#fff"],
.lesson-pane [style*="background-color: #fff"],
.lesson-content [style*="background-color: white"],
.lesson-content [style*="background-color:#fff"],
.lesson-body [style*="background-color: white"]{
  background-color:#09283e!important;
}

/* scripture / key scripture */
.scripture-card,.key-scripture,[class*="scripture"],[class*="key-scripture"]{
  background:#102c3f!important;
  color:#eef4f7!important;
  border-color:#d7a83c!important;
}
.scripture-card *, .key-scripture *, [class*="scripture"] *{
  color:#eef4f7!important;opacity:1!important
}

/* real inner lesson switcher visible in screenshot */
.g12-inner-tabs,.lesson-inner-tabs,.lesson-subtabs,[class*="inner-tabs"]{
  background:#0a2639!important;border-color:#294b62!important
}
.g12-inner-tabs button,.lesson-inner-tabs button,.lesson-subtabs button,[class*="inner-tabs"] button{
  color:#dce6ec!important;opacity:1!important
}
.g12-inner-tabs button.on,.lesson-inner-tabs button.on,.lesson-subtabs button.on,[class*="inner-tabs"] button.on{
  background:#f5b42d!important;color:#071b2b!important
}

/* Keep lesson article readable and not washed out */
.lesson-pane{min-height:500px!important;padding:34px 48px 52px!important}
.lesson-pane > *{max-width:1180px;margin-left:auto;margin-right:auto}

/* Direct emergency contrast for common WP/LMS generated prose */
.lesson-pane .wp-block-paragraph,
.lesson-content .wp-block-paragraph,
.lesson-body .wp-block-paragraph,
.lesson-pane .entry-content,
.lesson-content .entry-content{
  color:#d9e5ec!important;background:transparent!important
}

/* ==========================================================
   7.4 FUNCTIONALITY HOTFIX
   Keep LMS DOM/events untouched; CSS only.
   ========================================================== */
html,body{overflow:auto!important}
.g12-dashboard-page,.g12-dashboard-content{overflow:visible!important}
.g12-modal.open .g12-modal-panel{overflow:hidden!important}
.g12-modal.open .g12-modal-body{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  max-height:calc(94vh - 62px)!important;
}
.lesson-pane,.lesson-content,.lesson-body,.lesson-panel,.lesson-detail,.lesson-article{
  pointer-events:auto!important;
  touch-action:auto!important;
}
.lesson-pane button,.lesson-pane a,
.lesson-content button,.lesson-content a,
.lesson-body button,.lesson-body a,
.g12-inner-tabs button,.lesson-inner-tabs button,.lesson-subtabs button{
  pointer-events:auto!important;
  position:relative!important;
  z-index:20!important;
}
.g12-inner-tabs,.lesson-inner-tabs,.lesson-subtabs,[class*="inner-tabs"]{
  position:relative!important;
  z-index:15!important;
}
.g12lesson-pro{pointer-events:none!important}
.g12lesson-pro button,.g12lesson-pro a{pointer-events:none!important}

/* Long lesson copy must remain scrollable */
.lesson-pane{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.lesson-content,.lesson-body{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* ==========================================================
   7.5 SCROLL FIX — scroll the actual lesson card/pane
   ========================================================== */
.g12-modal.open .g12-modal-panel{
  height:94vh!important;
  max-height:94vh!important;
  display:flex!important;
  flex-direction:column!important;
}
.g12-modal.open .g12-modal-head{
  flex:0 0 auto!important;
}
.g12-modal.open .g12-modal-body{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
}

/* Real lesson pane/card visible in screenshot */
.lesson-pane,
.lesson-view,
.lesson-panel,
.lesson-detail,
.lesson-full,
.lesson-wrap{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
}

/* If LMS gives the lesson content its own fixed-height white card, scroll that card */
.lesson-content,
.lesson-body,
.lesson-article{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}

/* Common LMS content wrappers: remove clipping */
.lesson-pane [class*="content"],
.lesson-pane [class*="body"],
.lesson-pane [class*="article"],
.lesson-pane [class*="notes"],
.lesson-pane [class*="transcript"],
.lesson-content [class*="content"],
.lesson-content [class*="body"]{
  max-height:none!important;
  height:auto!important;
  overflow:visible!important;
}

/* Ensure no ancestor of the long lesson clips it */
.g12-dashboard-content,
.g12-lms,
.g12-module-view,
.g12-module-content{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* When lesson is displayed inline rather than in modal, normal document scrolling */
body:not(:has(.g12-modal.open)){
  overflow-y:auto!important;
  height:auto!important;
}
body:not(:has(.g12-modal.open)) .lesson-pane{
  overflow:visible!important;
  height:auto!important;
  max-height:none!important;
}

/* Preserve native wheel/touch behavior */
.lesson-pane,.lesson-content,.lesson-body,.lesson-article,
.g12-modal-body{
  overscroll-behavior:auto!important;
  touch-action:pan-y!important;
}

/* ==========================================================
   7.6 RESET — RESTORE NATIVE LMS/PAGE SCROLLING
   This block intentionally overrides all experimental 7.x
   height/overflow rules. Visual colors remain, mechanics revert.
   ========================================================== */

/* Never lock the document */
html{
  height:auto!important;
  min-height:100%!important;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
}
body{
  height:auto!important;
  min-height:100vh!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  position:static!important;
}

/* Academy pages must grow with content */
.g12-dashboard-page,
.g12-dashboard-content,
.g12-lms,
.g12-module-view,
.g12-module-content,
.lesson-view,
.lesson-wrap,
.lesson-panel,
.lesson-pane,
.lesson-content,
.lesson-body,
.lesson-detail,
.lesson-article,
.lesson-full{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  position:relative!important;
  touch-action:auto!important;
  overscroll-behavior:auto!important;
}

/* Do not create a second scroll container for inline lessons */
body:not(.g12-modal-open) .lesson-pane,
body:not(.g12-modal-open) .lesson-content,
body:not(.g12-modal-open) .lesson-body{
  overflow:visible!important;
}

/* Modal: only modal body scrolls, but no flex/height hacks */
.g12-modal.open{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
}
.g12-modal.open .g12-modal-panel{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
.g12-modal.open .g12-modal-head{
  height:auto!important;
  min-height:62px!important;
}
.g12-modal.open .g12-modal-body{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}

/* Native interaction */
button,a,input,textarea,select,
.lesson-pane button,.lesson-pane a,
.lesson-content button,.lesson-content a{
  pointer-events:auto!important;
  touch-action:auto!important;
}

/* Disable old decorative overlay if it ever exists */
.g12lesson-pro{display:none!important}

/* ==========================================================
   8.0 — OPEN LESSON TYPOGRAPHY ONLY
   No scrolling/layout mechanics are changed.
   JS adds .g12-readable-lesson only to the visible lesson article.
   ========================================================== */
.g12-readable-lesson{
  color:#334e61!important;
}
.g12-readable-lesson p,
.g12-readable-lesson li,
.g12-readable-lesson ol,
.g12-readable-lesson ul,
.g12-readable-lesson label{
  color:#334e61!important;
  opacity:1!important;
}
.g12-readable-lesson p *,
.g12-readable-lesson li *{
  color:inherit!important;
  opacity:1!important;
}
.g12-readable-lesson h1,
.g12-readable-lesson h2,
.g12-readable-lesson h3,
.g12-readable-lesson h4,
.g12-readable-lesson h5{
  color:#0a2940!important;
  opacity:1!important;
}
.g12-readable-lesson strong{
  color:#0a2940!important;
}
.g12-readable-lesson a{
  color:#8a5a00!important;
}
.g12-readable-lesson blockquote,
.g12-readable-lesson .scripture-card,
.g12-readable-lesson .key-scripture,
.g12-readable-lesson [class*="callout"]{
  background:#12354c!important;
  color:#fff!important;
  border-left-color:#f5b42d!important;
}
.g12-readable-lesson blockquote *,
.g12-readable-lesson .scripture-card *,
.g12-readable-lesson .key-scripture *,
.g12-readable-lesson [class*="callout"] *{
  color:#fff!important;
}


/* ==========================================================
   8.1 — OPEN LESSON VISUAL SYSTEM
   Matches the dark Scripture tab while preserving 8.0 mechanics.
   Applied ONLY to the lesson canvas detected by dashboard.js.
   ========================================================== */

.g12-readable-lesson{
  background:#071f31!important;
  color:#e8f0f5!important;
  border:1px solid rgba(244,178,39,.72)!important;
  border-radius:18px!important;
  box-shadow:0 18px 50px rgba(0,0,0,.16)!important;
}

.g12-readable-lesson p,
.g12-readable-lesson li,
.g12-readable-lesson ol,
.g12-readable-lesson ul,
.g12-readable-lesson label{
  color:#d9e5ec!important;
  opacity:1!important;
}

.g12-readable-lesson h1,
.g12-readable-lesson h2,
.g12-readable-lesson h3,
.g12-readable-lesson h4,
.g12-readable-lesson h5,
.g12-readable-lesson h6{
  color:#ffffff!important;
  opacity:1!important;
}

.g12-readable-lesson strong{
  color:#ffffff!important;
}

.g12-readable-lesson a{
  color:#f4b227!important;
}

.g12-readable-lesson hr{
  border-color:rgba(255,255,255,.12)!important;
}

/* Inner lesson sections */
.g12-readable-lesson blockquote,
.g12-readable-lesson .scripture-card,
.g12-readable-lesson .key-scripture,
.g12-readable-lesson [class*="callout"]{
  background:#12364d!important;
  color:#fff!important;
  border:1px solid rgba(244,178,39,.8)!important;
  border-left:4px solid #f4b227!important;
  border-radius:14px!important;
}

/* Practice / reflection-like light boxes */
.g12-readable-lesson [class*="practice"],
.g12-readable-lesson [class*="reflection"],
.g12-readable-lesson [class*="summary"],
.g12-readable-lesson [class*="lesson-content"]{
  color:#d9e5ec!important;
}

/* The inner mode bar remains dark and integrated */
.g12-readable-lesson button,
.g12-readable-lesson [role="button"]{
  border-radius:10px;
}

/* Footer lesson navigation */
.g12-readable-lesson .lesson-nav,
.g12-readable-lesson [class*="lesson-nav"],
.g12-readable-lesson [class*="navigation"]{
  border-top-color:rgba(255,255,255,.12)!important;
}

/* Explicit marker classes added by JS, avoiding broad page changes */
.g12-readable-lesson .g12-v81-light-panel{
  background:#0d2b40!important;
  border:1px solid rgba(244,178,39,.34)!important;
  color:#d9e5ec!important;
  border-radius:16px!important;
}
.g12-readable-lesson .g12-v81-light-panel *{
  color:#d9e5ec!important;
  opacity:1!important;
}
.g12-readable-lesson .g12-v81-light-panel h1,
.g12-readable-lesson .g12-v81-light-panel h2,
.g12-readable-lesson .g12-v81-light-panel h3,
.g12-readable-lesson .g12-v81-light-panel h4,
.g12-readable-lesson .g12-v81-light-panel strong{
  color:#fff!important;
}


/* ==========================================================
   8.2 — MODULE CARDS
   Hide ONLY the large decorative module number on the right.
   The small left number badge remains visible.
   ========================================================== */
.g12-module-card .module-number-large,
.g12-module-card .module-number-bg,
.g12-module-card .module-big-number,
.g12-module-card [class*="big-number"],
.g12-module-card [class*="large-number"],
.module-card .module-number-large,
.module-card .module-number-bg,
.module-card .module-big-number,
.module-card [class*="big-number"],
.module-card [class*="large-number"]{
  display:none!important;
}


/* 8.5 — dark home-page module catalog, aligned with Academy G12 visual system */
.g12all-catalog{
  background:#061d2f !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  color:#fff !important;
}
.g12all-catalog .g12v4-kicker.dark{
  color:#f5b42d !important;
}
.g12all-head h2{
  color:#fff !important;
}
.g12all-head>p{
  color:#aebdca !important;
}
.g12all-card{
  background:#0a2940 !important;
  border-color:#284a62 !important;
  box-shadow:0 14px 34px rgba(0,0,0,.20) !important;
}
.g12all-card:hover{
  box-shadow:0 20px 44px rgba(0,0,0,.30) !important;
}
.g12all-body small{
  color:#f5b42d !important;
}
.g12all-body h3{
  color:#fff !important;
}
.g12all-body p,
.g12all-meta span{
  color:#aebdca !important;
}
.g12all-progress{
  background:#24475e !important;
}
.g12all-progress i{
  background:#f5b42d !important;
}
.g12all-meta b{
  background:#f5b42d !important;
  color:#071c2d !important;
}
.g12all-card.locked{
  opacity:.68;
}
.g12all-card.locked .g12all-meta b{
  background:#27465b !important;
  color:#b8c5cf !important;
}


/* ===== 8.7 EXACT FIX: homepage learning section + footer ===== */
body.home .g12v4-learning{
    background:#061d2f !important;
    color:#ffffff !important;
    border-top:1px solid rgba(255,255,255,.06) !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
}
body.home .g12v4-learning .g12v4-kicker.dark{
    color:#f5b42d !important;
}
body.home .g12v4-learning .g12v4-intro h2{
    color:#ffffff !important;
}
body.home .g12v4-learning .g12v4-intro > p{
    color:#b7c4cf !important;
}
body.home .g12v4-learning .g12all-feature{
    background:#0a2940 !important;
    border:1px solid #284a62 !important;
    box-shadow:0 18px 45px rgba(0,0,0,.25) !important;
}
body.home .g12v4-learning .g12all-feature span{
    color:#f5b42d !important;
}
body.home .g12v4-learning .g12all-feature h3{
    color:#ffffff !important;
}
body.home .g12v4-learning .g12all-feature p{
    color:#b7c4cf !important;
}

/* exact footer from footer.php */
body.home .site-footer,
.site-footer{
    background:#041725 !important;
    color:#aebdca !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
}
.site-footer .footer-inner{
    background:transparent !important;
}
.site-footer,
.site-footer p,
.site-footer span,
.site-footer small{
    color:#aebdca !important;
}
.site-footer a,
.site-footer strong,
.site-footer b{
    color:#ffffff !important;
}


/* ===== 8.8 — homepage bottom welcome / remove default WP content ===== */
body.home .entry-content,
body.home .page-content,
body.home article.post,
body.home article.page {
    /* default WordPress starter content must not create a light panel below Academy */
}

/* If the starter post is emitted by the generic loop on the static home, suppress it. */
body.home main > article.post,
body.home main > article.page:not(.g12-keep-page-content) {
    display:none !important;
}

body.home .g12-home-welcome {
    background:#061d2f !important;
    padding:72px 6vw 86px !important;
    margin:0 !important;
    color:#fff !important;
    border-top:1px solid rgba(255,255,255,.07) !important;
}
body.home .g12-home-welcome__inner {
    max-width:1480px;
    margin:0 auto;
    min-height:190px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    background:#08263d;
    border:1px solid #28506a;
    border-radius:24px;
    box-shadow:0 18px 50px rgba(0,0,0,.18);
    text-align:center;
    padding:48px 32px;
}
body.home .g12-home-welcome__line {
    width:72px;
    height:4px;
    background:#f5b42d;
    border-radius:99px;
    margin-bottom:28px;
}
body.home .g12-home-welcome h2 {
    margin:0 !important;
    color:#fff !important;
    font-family:Georgia, "Times New Roman", serif;
    font-size:clamp(34px,4vw,62px);
    line-height:1.08;
    font-weight:700;
}


/* ===== 8.9 — remove ALL white wrappers around homepage welcome/footer ===== */
/* The screenshot showed the welcome component is dark, but its WordPress parent
   containers still carried white/off-white backgrounds and padding. */

body.home,
body.home #page,
body.home .site,
body.home .site-content,
body.home #content,
body.home main,
body.home #primary,
body.home .content-area {
    background:#061d2f !important;
}

/* Kill generic WP white card wrappers in the bottom homepage area */
body.home .site-main > article,
body.home .site-main > .page,
body.home .site-main > .post,
body.home .entry-content,
body.home .page-content,
body.home .wp-site-blocks,
body.home .g12-home-welcome,
body.home .g12-home-welcome__outer {
    background:#061d2f !important;
    box-shadow:none !important;
}

/* The welcome section itself must run edge-to-edge without a white frame. */
body.home .g12-home-welcome {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:72px 6vw 86px !important;
    border-radius:0 !important;
    border:0 !important;
}

/* Keep only the intentional inner dark card. */
body.home .g12-home-welcome__inner {
    background:#08263d !important;
    border:1px solid #28506a !important;
}

/* Common theme wrappers that can create the exact white frame from screenshot */
body.home .container:has(.g12-home-welcome),
body.home .site-container:has(.g12-home-welcome),
body.home .content-container:has(.g12-home-welcome),
body.home .entry-content:has(.g12-home-welcome),
body.home article:has(.g12-home-welcome) {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    background:#061d2f !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}

/* Footer continuity */
body.home footer,
body.home .site-footer,
body.home #colophon {
    background:#061d2f !important;
    color:#fff !important;
    margin-top:0 !important;
    border-top:1px solid rgba(255,255,255,.07) !important;
}
