/* DEPPLE SOFT — Dual Theme V7
   Light: white + graphite + teal/blue/violet gradient
   Dark: deep navy + teal/blue/violet gradient
   Theme is controlled by html[data-theme="light|dark"] and stored in localStorage.
*/
:root{
  --page:#ffffff;
  --surface:#ffffff;
  --surface-soft:#f7f9fc;
  --surface-tint:#f2fbfa;
  --text:#111827;
  --text-soft:#334155;
  --muted:#667085;
  --muted-2:#7b8794;
  --border:#e5e7eb;
  --brand:#08afa8;
  --brand-blue:#2563eb;
  --brand-violet:#7c3aed;
  --gradient:linear-gradient(135deg,#08afa8 0%,#2563eb 52%,#7c3aed 100%);
  --field:#ffffff;
  --header-bg:rgba(255,255,255,.96);
  --header-border:#e5e7eb;
  --shadow:0 12px 34px rgba(15,23,42,.055);
  --shadow-lg:0 24px 70px rgba(15,23,42,.13);
  --hero-grid:rgba(37,99,235,.035);
  --hero-glow1:rgba(8,175,168,.08);
  --hero-glow2:rgba(124,58,237,.06);
  --inverse:#ffffff;
  --code-bg:#f4f7fb;
}

html{scroll-behavior:smooth;background:var(--page)}
body{background:var(--page)!important;color:var(--text)!important;transition:background-color .28s ease,color .28s ease;min-height:100vh}
::selection{background:rgba(37,99,235,.18);color:var(--text)}

/* Existing utility classes adapted to the active theme. */
.bg-ink,.bg-slate-950,.bg-slate-900,.bg-slate-800{background:var(--surface)!important}
.bg-slate-950\/60,.bg-slate-900\/60,.bg-slate-800\/60{background:var(--surface-soft)!important}
.bg-slate-100{background:#f1f5f9!important}
.bg-white{background:var(--surface)!important}
.text-white{color:var(--text)!important}
.text-slate-100{color:var(--text)!important}
.text-slate-200{color:var(--text-soft)!important}
.text-slate-300{color:#475569!important}
.text-slate-400{color:var(--muted)!important}
.text-slate-500{color:var(--muted-2)!important}
.text-slate-600{color:#98a2b3!important}
.border-slate-200{border-color:var(--border)!important}
.border-slate-300{border-color:#d8dee7!important}

/* Gradient typography */
.gradient-text,.gradient-heading,h1{
  background:var(--gradient)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
}
.gradient-text-subtle{background:linear-gradient(135deg,#0f9f98,#2563eb);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Header */
.site-header{background:var(--header-bg)!important;border-bottom:1px solid var(--header-border)!important;box-shadow:0 8px 28px rgba(15,23,42,.055);backdrop-filter:blur(18px)}
.nav-link{display:inline-flex;align-items:center;gap:.4rem;padding:.78rem .72rem;border-radius:.75rem;color:#475467!important;transition:color .18s ease,background .18s ease,transform .18s ease}
.nav-link:hover,.nav-link.active,.nav-link[aria-expanded="true"]{color:var(--brand-blue)!important;background:linear-gradient(135deg,rgba(8,175,168,.08),rgba(37,99,235,.08))!important}
.nav-link i{color:var(--brand)!important}
.theme-toggle{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:.85rem;border:1px solid rgba(37,99,235,.16);background:var(--surface);color:var(--brand-blue);box-shadow:0 6px 18px rgba(15,23,42,.05);transition:transform .18s ease,background .18s ease,border-color .18s ease}
.theme-toggle:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.30);background:var(--surface-soft)}
.theme-icon-sun{display:none}.theme-icon-moon{display:inline}

/* Click-open animated menus */
.menu-panel{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px) scale(.985);transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility .18s ease}
.menu-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.mega-menu{position:absolute;left:50%;top:calc(100% + 10px);transform:translateX(-36%) translateY(-10px) scale(.985);width:min(980px,92vw);background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;box-shadow:var(--shadow-lg);z-index:60}
.mega-menu.is-open{transform:translateX(-36%) translateY(0) scale(1)}
.dropdown{position:absolute;right:0;top:calc(100% + 10px);width:250px;background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:.8rem;box-shadow:var(--shadow-lg);z-index:60}
.mega-menu a,.dropdown a{display:block;padding:.48rem .05rem;color:var(--muted)!important;font-size:.84rem;border-radius:.55rem}
.mega-menu a:hover,.dropdown a:hover{color:var(--brand-blue)!important;background:linear-gradient(135deg,rgba(8,175,168,.05),rgba(37,99,235,.05))}
.menu-title,.section-kicker{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brand-blue)!important;font-weight:900;margin-bottom:.65rem}
.menu-title{background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.menu-highlight{margin-top:.55rem!important;color:var(--brand-blue)!important;font-weight:900!important}

/* Buttons */
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.8rem 1.18rem;border-radius:.85rem;background:var(--gradient)!important;color:#fff!important;font-weight:900;box-shadow:0 12px 28px rgba(37,99,235,.18);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.btn-primary:hover{transform:translateY(-2px);filter:saturate(1.06);box-shadow:0 16px 34px rgba(37,99,235,.24)}
.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.74rem 1rem;border-radius:.85rem;border:1px solid rgba(37,99,235,.24)!important;background:var(--surface)!important;color:var(--brand-blue)!important;font-weight:800;transition:.18s}
.btn-outline:hover{background:var(--surface-soft)!important;border-color:rgba(37,99,235,.4)!important;transform:translateY(-1px)}

/* Hero */
.hero-grid{position:relative;background:var(--page)!important;background-image:radial-gradient(circle at 8% 18%,var(--hero-glow1),transparent 25rem),radial-gradient(circle at 92% 15%,var(--hero-glow2),transparent 25rem)!important}
.hero-grid:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--hero-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hero-grid) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 82%)}
.hero-grid>*{position:relative;z-index:1}.hero-grid .card{background:linear-gradient(180deg,var(--surface) 0%,var(--surface-soft) 100%)!important}

/* Cards */
.card{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:1.25rem;box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.card:hover{box-shadow:0 18px 42px rgba(15,23,42,.085);border-color:#dce4ef!important}

/* Soft panel backgrounds */
.bg-white\/\[\.02\],.bg-white\/\[\.03\],.bg-white\/\[\.04\],.bg-white\/5{background:var(--surface-soft)!important}
.border-white\/5{border-color:var(--border)!important}
.border-brand\/10{border-color:rgba(37,99,235,.11)!important}
.border-brand\/15{border-color:rgba(37,99,235,.16)!important}
.border-brand\/20{border-color:rgba(37,99,235,.21)!important}
.border-brand\/30{border-color:rgba(37,99,235,.3)!important}
.text-brand{color:var(--brand-blue)!important}
.hover\:text-brand:hover{color:#1557c5!important}
.bg-brand{background:var(--brand)!important}
.bg-brand\/5{background:rgba(8,175,168,.05)!important}
.bg-brand\/10{background:rgba(8,175,168,.09)!important}

/* Form controls */
.form-control{width:100%;border-radius:.85rem;border:1px solid #d9dee7!important;background:var(--field)!important;color:var(--text)!important;padding:.8rem .92rem;outline:none;transition:border .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}
.form-control:focus{border-color:rgba(37,99,235,.55)!important;box-shadow:0 0 0 4px rgba(37,99,235,.09)!important}
.form-control::placeholder{color:#98a2b3!important}

.mobile-link{padding:.7rem .8rem;border-radius:.75rem;background:var(--surface-soft)!important;color:#475467!important;border:1px solid var(--border)}
.mobile-link:hover{color:var(--brand-blue)!important;background:#f1f6ff!important}

/* Modal */
.modal{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:1rem}
.modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.38);backdrop-filter:blur(8px)}
.modal-card{position:relative;width:min(100%,520px);max-height:90vh;overflow:auto;background:var(--surface)!important;border:1px solid var(--border);border-radius:1.5rem;padding:1.5rem;box-shadow:0 30px 100px rgba(15,23,42,.2)}
.modal-close{position:absolute;top:.8rem;right:.8rem;width:34px;height:34px;border-radius:50%;background:var(--surface-soft);color:var(--muted);font-size:1.6rem;line-height:1}
.fee-preview{min-height:58px;padding:.7rem .85rem;border-radius:.85rem;border:1px solid var(--border);background:var(--surface-soft);display:flex;flex-direction:column;justify-content:center}
.fee-preview-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:var(--brand-blue);font-weight:900}
.fee-preview-value{font-size:.92rem;font-weight:800;color:var(--text);margin-top:.2rem}

/* Prose / SEO copy */
.prose-dark,.prose-light,.prose-light-or-dark,.course-seo-content{color:var(--text-soft)!important;line-height:1.85}
.prose-dark h2,.prose-dark h3,.prose-light h2,.prose-light h3,.prose-light-or-dark h2,.prose-light-or-dark h3,.course-seo-content h2,.course-seo-content h3{color:var(--text)!important;font-weight:900}
.prose-dark a,.prose-light a,.prose-light-or-dark a,.course-seo-content a{color:var(--brand-blue)!important;font-weight:700}
.course-seo-content{max-width:54rem;font-size:1.03rem}.course-seo-content h2{font-size:1.65rem;line-height:1.25;margin:2rem 0 .7rem}.course-seo-content p{margin:0 0 1.1rem}.course-seo-content ul{padding-left:1.25rem;list-style:disc}

.site-footer{background:var(--surface-soft)!important;border-top:1px solid var(--border)!important}

.floating-wa,.floating-register{position:fixed;z-index:50;bottom:50px;display:flex;align-items:center;justify-content:center;border-radius:999px;font-weight:900;box-shadow:0 16px 36px rgba(15,23,42,.18);transition:.18s}
.floating-wa{right:22px;width:58px;height:58px;background:#25d366!important;color:#fff!important;border:4px solid #fff;font-size:1.55rem}.floating-register{left:22px;padding:.82rem 1rem;background:var(--gradient)!important;color:#fff!important;border:1px solid rgba(37,99,235,.15)!important}.floating-wa:hover,.floating-register:hover{transform:translateY(-2px)}
.gradient-border{position:relative}.gradient-border:before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:var(--gradient);z-index:-1}.badge-gradient{display:inline-flex;align-items:center;border:1px solid rgba(37,99,235,.18);background:linear-gradient(135deg,rgba(8,175,168,.07),rgba(37,99,235,.08),rgba(124,58,237,.06));color:var(--brand-blue)!important}

/* Dark theme */
html[data-theme="dark"]{
  --page:#071416;
  --surface:#0b1b1e;
  --surface-soft:#102326;
  --surface-tint:#102f2f;
  --text:#f7fafc;
  --text-soft:#d5e0e3;
  --muted:#9db0b5;
  --muted-2:#82979d;
  --border:#1a3a3e;
  --header-bg:rgba(7,20,22,.93);
  --header-border:#164044;
  --shadow:0 12px 34px rgba(0,0,0,.25);
  --shadow-lg:0 24px 70px rgba(0,0,0,.42);
  --hero-grid:rgba(14,168,167,.12);
  --hero-glow1:rgba(8,175,168,.12);
  --hero-glow2:rgba(124,58,237,.10);
  --inverse:#071416;
  --code-bg:#102326;
  --field:#0d2023;
}
html[data-theme="dark"] body{background:var(--page)!important;color:var(--text)!important}
html[data-theme="dark"] .bg-ink{background:#071416!important}
html[data-theme="dark"] .bg-slate-950{background:#071416!important}
html[data-theme="dark"] .bg-slate-900{background:#0b1b1e!important}
html[data-theme="dark"] .bg-slate-800{background:#102326!important}
html[data-theme="dark"] .bg-slate-950\/60,.bg-slate-900\/60,.bg-slate-800\/60{background:rgba(16,35,38,.82)!important}
html[data-theme="dark"] .bg-white{background:var(--surface)!important}
html[data-theme="dark"] .bg-slate-100{background:#102326!important}
html[data-theme="dark"] .text-white{color:#f8fafc!important}
html[data-theme="dark"] .text-slate-100{color:#eef6f7!important}
html[data-theme="dark"] .text-slate-200{color:#dce8eb!important}
html[data-theme="dark"] .text-slate-300{color:#c4d2d6!important}
html[data-theme="dark"] .text-slate-400{color:#9db0b5!important}
html[data-theme="dark"] .text-slate-500{color:#82979d!important}
html[data-theme="dark"] .text-slate-600{color:#71898f!important}
html[data-theme="dark"] .border-slate-200{border-color:#1d3b3f!important}
html[data-theme="dark"] .border-slate-300{border-color:#285057!important}
html[data-theme="dark"] .site-header{box-shadow:0 8px 30px rgba(0,0,0,.28)}
html[data-theme="dark"] .nav-link{color:#b9c9cd!important}
html[data-theme="dark"] .nav-link:hover,html[data-theme="dark"] .nav-link.active,html[data-theme="dark"] .nav-link[aria-expanded="true"]{color:#6fe1dc!important;background:linear-gradient(135deg,rgba(8,175,168,.13),rgba(37,99,235,.16))!important}
html[data-theme="dark"] .mega-menu,html[data-theme="dark"] .dropdown{background:#0b1b1e;border-color:#1c4448;box-shadow:var(--shadow-lg)}
html[data-theme="dark"] .mega-menu a,html[data-theme="dark"] .dropdown a{color:#9db0b5!important}
html[data-theme="dark"] .mega-menu a:hover,html[data-theme="dark"] .dropdown a:hover{color:#6fe1dc!important;background:linear-gradient(135deg,rgba(8,175,168,.10),rgba(37,99,235,.13))}
html[data-theme="dark"] .theme-toggle{background:#0f2528;border-color:#1c5559;color:#7ce5df;box-shadow:0 8px 24px rgba(0,0,0,.24)}
html[data-theme="dark"] .theme-icon-sun{display:inline} html[data-theme="dark"] .theme-icon-moon{display:none}
html[data-theme="dark"] .btn-outline{background:#0b1b1e!important;color:#6fe1dc!important;border-color:#2b6a70!important}
html[data-theme="dark"] .btn-outline:hover{background:#10282b!important}
html[data-theme="dark"] .hero-grid .card{background:linear-gradient(180deg,#0b1b1e 0%,#102326 100%)!important}
html[data-theme="dark"] .card{background:#0b1b1e!important;border-color:#1a3a3e!important;box-shadow:var(--shadow)}
html[data-theme="dark"] .card:hover{border-color:#285057!important;box-shadow:0 20px 44px rgba(0,0,0,.32)}
html[data-theme="dark"] .bg-white\/\[\.02\],html[data-theme="dark"] .bg-white\/\[\.03\],html[data-theme="dark"] .bg-white\/\[\.04\],html[data-theme="dark"] .bg-white\/5{background:#102326!important}
html[data-theme="dark"] .border-white\/5{border-color:#1a3a3e!important}
html[data-theme="dark"] .form-control{border-color:#24474b!important}
html[data-theme="dark"] .form-control::placeholder{color:#6f858a!important}
html[data-theme="dark"] .mobile-link{background:#102326!important;color:#c4d2d6!important;border-color:#1d4145}
html[data-theme="dark"] .mobile-link:hover{color:#6fe1dc!important;background:#133033!important}
html[data-theme="dark"] .modal-backdrop{background:rgba(0,0,0,.62)}
html[data-theme="dark"] .modal-card{background:#0b1b1e!important;border-color:#1c4448}
html[data-theme="dark"] .modal-close{background:#102326;color:#9db0b5}
html[data-theme="dark"] .fee-preview{background:#102326;border-color:#1f474b}
html[data-theme="dark"] .site-footer{background:#09191c!important;border-top-color:#15363a!important}
html[data-theme="dark"] .floating-wa{border-color:#0b1b1e}
html[data-theme="dark"] .theme-icon-sun{transform:rotate(180deg)}

@media(max-width:640px){
  .floating-register{left:14px;bottom:50px;padding:.74rem .88rem}
  .floating-wa{right:14px;bottom:50px}
  .mega-menu{width:95vw;left:2.5vw;transform:translateY(-10px) scale(.985)}
  .mega-menu.is-open{transform:translateY(0) scale(1)}
  .hero-grid h1{font-size:3.1rem}
}

/* Dynamic Contact Page V14 */
.contact-hero{position:relative}
.contact-social-card{background:linear-gradient(135deg,rgba(8,175,168,.055),rgba(37,99,235,.055),rgba(124,58,237,.04))!important}
.contact-detail-row{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:start}
.contact-detail-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:#2563eb;background:linear-gradient(135deg,rgba(8,175,168,.10),rgba(37,99,235,.10));border:1px solid rgba(37,99,235,.10)}
.contact-detail-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:var(--muted-2)}
.contact-detail-value{display:block;font-size:.96rem;font-weight:800;line-height:1.65;color:var(--text);margin-top:3px}
.social-icon-link{display:inline-flex;align-items:center;gap:.65rem;padding:.72rem .9rem;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text-soft);font-weight:850;transition:.18s}
.social-icon-link i{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--surface-soft);color:#2563eb}
.social-icon-link:hover{transform:translateY(-2px);border-color:rgba(37,99,235,.28);color:#2563eb;box-shadow:0 10px 26px rgba(15,23,42,.08)}
.contact-map-frame{width:100%;aspect-ratio:16/8.2;min-height:360px;border-top:1px solid var(--border);background:var(--surface-soft)}
.contact-map-frame iframe{width:100%;height:100%;border:0;display:block}
.map-card{overflow:hidden}
.contact-social-tile{display:flex;align-items:center;gap:11px;padding:.8rem;border:1px solid var(--border);border-radius:14px;color:var(--text);background:var(--surface);transition:.18s;text-decoration:none}
.contact-social-tile:hover{transform:translateY(-2px);border-color:rgba(37,99,235,.24);box-shadow:0 12px 28px rgba(15,23,42,.07)}
.contact-social-tile strong{font-size:.86rem;display:block}.contact-social-tile small{display:block;color:var(--muted-2);font-size:.68rem;margin-top:2px}.contact-social-tile>i{font-size:.72rem;color:var(--muted-2)}
.social-round{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(135deg,rgba(8,175,168,.12),rgba(37,99,235,.14));color:#2563eb;flex:0 0 auto}
.footer-socials{display:flex;align-items:center;gap:8px;padding-top:5px}
.footer-social-link{width:34px;height:34px;border-radius:10px;display:inline-grid;place-items:center;color:var(--text-soft);background:var(--surface);border:1px solid var(--border);text-decoration:none;transition:.18s}
.footer-social-link:hover{color:#2563eb;border-color:rgba(37,99,235,.28);transform:translateY(-1px)}
html[data-theme="dark"] .contact-social-card{background:linear-gradient(135deg,rgba(8,175,168,.08),rgba(37,99,235,.10),rgba(124,58,237,.08))!important}
html[data-theme="dark"] .contact-map-frame{background:#102326}
html[data-theme="dark"] .social-icon-link,html[data-theme="dark"] .contact-social-tile,html[data-theme="dark"] .footer-social-link{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important}
html[data-theme="dark"] .contact-detail-value{color:var(--text)!important}

/* Student reviews / ratings */
.review-slider{overflow:hidden;position:relative}
.review-track{display:flex;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}
.review-slide{min-width:100%;padding:1px}
.review-avatar{width:56px;height:56px;border-radius:999px;border:2px solid rgba(8,175,168,.18);background:rgba(8,175,168,.08)}
.review-avatar-lg{width:72px;height:72px}
.review-avatar-fallback{display:flex;align-items:center;justify-content:center;color:var(--brand,#08AFA8);font-weight:900;font-size:1.3rem}
.review-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.review-card:hover{transform:translateY(-3px)}
.review-slider-btn{width:44px;height:44px;border-radius:999px;border:1px solid var(--border,#dfe5ec);background:var(--surface,#fff);color:var(--text,#111827);display:inline-flex;align-items:center;justify-content:center;transition:.2s}
.review-slider-btn:hover{border-color:rgba(8,175,168,.45);color:var(--brand,#08AFA8);transform:translateY(-1px)}
.review-dot{width:8px;height:8px;border-radius:999px;background:#cbd5e1;border:0;padding:0;transition:.2s}
.review-dot.is-active{width:24px;background:linear-gradient(90deg,#08AFA8,#2563EB,#7C3AED)}
.rating-input{display:flex;flex-direction:row;gap:.25rem;justify-content:flex-start}
.rating-input input{position:absolute;opacity:0;pointer-events:none}
.rating-input label{cursor:pointer;font-size:1.6rem;color:#cbd5e1;transition:transform .15s ease,color .15s ease}
.rating-input label:hover{transform:scale(1.08);color:#f59e0b}
.rating-input label:has(~ input:checked), .rating-input label:hover, .rating-input label:hover ~ label{color:#f59e0b}
.rating-input input:checked + label{color:#f59e0b}
@media(min-width:900px){.review-slide{min-width:50%}.review-track{gap:1rem}.review-slide{min-width:calc(50% - .5rem)}}
@media(min-width:1200px){.review-slide{min-width:calc(33.3333% - .667rem)}}
html[data-theme="dark"] .review-slider-btn{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important}
html[data-theme="dark"] .review-dot{background:#3a5358}
@media(prefers-reduced-motion:reduce){.review-track,.review-card,.review-slider-btn{transition:none!important}}

/* DEPPLE SOFT — Admin Rich HTML Editor */
.depple-editor{border:1px solid var(--border);border-radius:1rem;background:var(--surface);overflow:hidden;box-shadow:0 8px 28px rgba(15,23,42,.04)}
.depple-editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;padding:.65rem;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.depple-editor-group{display:flex;align-items:center;gap:.25rem;padding-right:.4rem;margin-right:.15rem;border-right:1px solid var(--border)}
.depple-editor-group:last-child{border-right:0}
.depple-editor-btn{width:36px;height:36px;border:1px solid transparent;border-radius:.65rem;background:transparent;color:var(--text-soft);display:inline-flex;align-items:center;justify-content:center;transition:.16s;cursor:pointer}
.depple-editor-btn:hover,.depple-editor-btn:focus-visible{background:var(--surface);color:var(--brand-blue);border-color:var(--border);outline:none}
.depple-editor-btn.is-active{background:linear-gradient(135deg,rgba(8,175,168,.12),rgba(37,99,235,.13));color:var(--brand-blue);border-color:rgba(37,99,235,.18)}
.depple-editor-area,.depple-editor-source,.depple-editor-preview{width:100%;min-height:340px;padding:1rem 1.05rem;border:0!important;outline:0;background:var(--field);color:var(--text);font-size:.98rem;line-height:1.75}
.depple-editor-area{overflow:auto}
.depple-editor-area:focus{box-shadow:inset 0 0 0 2px rgba(37,99,235,.10)}
.depple-editor-area h2,.depple-editor-preview h2{font-size:1.65rem;font-weight:900;line-height:1.25;margin:1.3rem 0 .65rem}
.depple-editor-area h3,.depple-editor-preview h3{font-size:1.25rem;font-weight:900;line-height:1.3;margin:1.1rem 0 .5rem}
.depple-editor-area p,.depple-editor-preview p{margin:.5rem 0}
.depple-editor-area ul,.depple-editor-preview ul{list-style:disc;padding-left:1.45rem;margin:.6rem 0}
.depple-editor-area ol,.depple-editor-preview ol{list-style:decimal;padding-left:1.45rem;margin:.6rem 0}
.depple-editor-area blockquote,.depple-editor-preview blockquote{margin:1rem 0;padding:.8rem 1rem;border-left:4px solid var(--brand-blue);background:var(--surface-soft);border-radius:.5rem}
.depple-editor-area a,.depple-editor-preview a{color:var(--brand-blue);font-weight:700;text-decoration:underline}
.depple-editor-area table,.depple-editor-preview table{width:100%;border-collapse:collapse;margin:1rem 0}
.depple-editor-area th,.depple-editor-area td,.depple-editor-preview th,.depple-editor-preview td{border:1px solid var(--border);padding:.55rem .7rem;text-align:left}
.depple-editor-area th,.depple-editor-preview th{background:var(--surface-soft);font-weight:800}
.depple-editor-area img,.depple-editor-preview img{max-width:100%;height:auto;border-radius:.65rem;margin:.7rem 0}
.depple-editor-source{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.86rem;line-height:1.55}
.depple-editor-preview{overflow:auto}
.depple-editor-footer{display:flex;justify-content:space-between;gap:.75rem;align-items:center;padding:.55rem .85rem;border-top:1px solid var(--border);background:var(--surface-soft);font-size:.72rem;color:var(--muted)}
.depple-editor-help{color:var(--muted)}
@media(max-width:640px){
  .depple-editor-toolbar{gap:.25rem;padding:.5rem}
  .depple-editor-group{padding-right:.25rem}
  .depple-editor-btn{width:34px;height:34px}
  .depple-editor-area,.depple-editor-source,.depple-editor-preview{min-height:300px;padding:.85rem}
  .depple-editor-help{display:none}
}
html[data-theme="dark"] .depple-editor{box-shadow:0 10px 30px rgba(0,0,0,.18)}

/* Privacy-aware visitor analytics UI */
.cookie-consent{position:fixed;left:18px;right:18px;bottom:18px;z-index:90;max-width:1100px;margin:auto;background:rgba(255,255,255,.98);border:1px solid #dbe3ed;border-radius:20px;box-shadow:0 22px 65px rgba(15,23,42,.16);backdrop-filter:blur(16px)}
.cookie-consent-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 20px}
.privacy-setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}
.privacy-setting-row strong{display:block;font-weight:900}.privacy-setting-row small{display:block;color:var(--muted);margin-top:4px;font-size:.78rem;line-height:1.5}.privacy-pill{display:inline-flex;align-items:center;padding:.35rem .7rem;border-radius:999px;background:rgba(8,175,168,.10);color:var(--brand);font-size:.72rem;font-weight:900}.privacy-checkbox{appearance:none;width:48px;height:28px;border-radius:999px;background:#cbd5e1;position:relative;cursor:pointer;transition:.2s;flex:0 0 auto}.privacy-checkbox::after{content:'';position:absolute;width:22px;height:22px;top:3px;left:3px;border-radius:999px;background:#fff;box-shadow:0 2px 5px rgba(15,23,42,.2);transition:.2s}.privacy-checkbox:checked{background:linear-gradient(90deg,#08afa8,#2563eb)}.privacy-checkbox:checked::after{left:23px}.footer-privacy-btn{color:var(--muted);font-weight:700}.footer-privacy-btn:hover{color:var(--brand-blue)}.visitor-map{min-height:460px;border-radius:18px;overflow:hidden;border:1px solid var(--border);background:#eef2f7}.visitor-map-empty{height:460px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:20px;background:linear-gradient(135deg,#f8fafc,#eef6ff)}
@media(max-width:820px){.cookie-consent{left:10px;right:10px;bottom:10px}.cookie-consent-inner{flex-direction:column;align-items:stretch}.cookie-consent-inner .flex{width:100%}.cookie-consent-inner button{flex:1}.visitor-map,.visitor-map-empty{min-height:360px;height:360px}}


/* DEPPLE SOFT Business IT Services */
.service-overview-card{background:linear-gradient(135deg,var(--surface) 0%,var(--surface-soft) 100%)!important}
.service-mini-stat{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:14px}.service-mini-stat strong{display:block;font-size:1rem;font-weight:900;background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.service-mini-stat span{display:block;font-size:.72rem;color:var(--muted);margin-top:3px}.service-card{position:relative;overflow:hidden}.service-card:after{content:"";position:absolute;inset:auto -20px -45px auto;width:120px;height:120px;border-radius:999px;background:radial-gradient(circle,rgba(37,99,235,.09),transparent 68%);pointer-events:none}.service-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,rgba(8,175,168,.12),rgba(37,99,235,.12));color:var(--brand-blue);font-size:1.1rem;border:1px solid rgba(37,99,235,.12)}.service-arrow{display:flex;align-items:center;gap:.45rem;color:var(--brand-blue);font-size:.84rem;font-weight:900}.service-arrow i{transition:transform .18s ease}.service-card:hover .service-arrow i{transform:translateX(4px)}.service-detail-hero{background:linear-gradient(135deg,var(--surface) 0%,var(--surface-soft) 72%,rgba(232,255,252,.72) 100%)!important}.service-hero-icon{width:70px;height:70px;display:grid;place-items:center;border-radius:20px;background:var(--gradient);color:#fff;font-size:1.65rem;box-shadow:0 16px 36px rgba(37,99,235,.18)}.service-detail-badge{min-width:220px;border:1px solid var(--border);background:var(--surface);border-radius:18px;padding:18px 20px}.service-detail-badge span{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.62rem;color:var(--muted);font-weight:900}.service-detail-badge strong{display:block;font-size:1.45rem;font-weight:900;margin-top:6px;background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.service-detail-badge small{display:block;color:var(--muted);margin-top:4px}.service-rich-content{font-size:1.03rem;line-height:1.86;color:var(--text-soft)}.service-rich-content h2{font-size:1.55rem;line-height:1.25;font-weight:900;color:var(--text);margin:2rem 0 .7rem}.service-rich-content p{margin:.65rem 0 1.1rem}.service-rich-content ul,.service-rich-content ol{padding-left:1.35rem;margin:.7rem 0 1.2rem}.service-rich-content ul{list-style:disc}.service-rich-content ol{list-style:decimal}.service-rich-content li{margin:.35rem 0}.service-rich-content a{color:var(--brand-blue);font-weight:800;text-decoration:underline}.service-rich-content img{max-width:100%;height:auto;border-radius:14px}.service-rich-content table{width:100%;border-collapse:collapse;margin:1rem 0}.service-rich-content th,.service-rich-content td{border:1px solid var(--border);padding:.6rem .7rem;text-align:left}.service-rich-content th{background:var(--surface-soft);font-weight:800}
@media(max-width:800px){.service-detail-badge{min-width:0;width:100%}}


/* Home Page Immediate Free Demo Flash Popup V17 */
.home-demo-modal{padding:1rem;z-index:95;animation:homeDemoFadeIn .18s ease-out}
.home-demo-backdrop{background:rgba(2,8,23,.62);backdrop-filter:blur(10px)}
.home-demo-card{width:min(100%,640px);max-height:92vh;padding:0;overflow:auto;border-radius:1.5rem;background:var(--surface)!important;border:1px solid rgba(37,99,235,.17)!important;box-shadow:0 34px 120px rgba(15,23,42,.28);animation:homeDemoPop .26s cubic-bezier(.2,.8,.2,1)}
.home-demo-head{padding:1.7rem 1.7rem 1.1rem;text-align:center;background:linear-gradient(135deg,rgba(8,175,168,.045),rgba(37,99,235,.06),rgba(124,58,237,.045));border-bottom:1px solid var(--border)}
.home-demo-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.38rem .7rem;border-radius:999px;border:1px solid rgba(37,99,235,.16);background:var(--surface);color:var(--brand-blue);font-size:.66rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.home-demo-title{margin:.85rem 0 0;font-size:clamp(1.8rem,4vw,2.45rem);line-height:1.08;font-weight:950;color:var(--text)}
.home-demo-title .gradient-text{font-weight:950}
.home-demo-subtitle{margin:.65rem auto 0;max-width:560px;color:var(--text-soft);font-size:1.02rem;line-height:1.65}
.home-demo-form{padding:1.35rem 1.5rem 1.25rem}
.home-demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.home-demo-grid .form-control:last-child{grid-column:1/-1}
.home-demo-submit{width:100%;min-height:52px;margin-top:.9rem;font-size:.95rem;letter-spacing:.01em}
.home-demo-note{display:flex;align-items:center;justify-content:center;gap:.45rem;margin:.7rem auto 0;color:var(--muted-2);font-size:.72rem;text-align:center}
.home-demo-note i{color:var(--brand-blue)}
.home-demo-close{z-index:3;background:var(--surface)!important;border:1px solid var(--border);box-shadow:0 8px 20px rgba(15,23,42,.09);font-weight:900}
.home-demo-close:hover{color:var(--brand-blue);transform:rotate(4deg)}
@keyframes homeDemoFadeIn{from{opacity:0}to{opacity:1}}
@keyframes homeDemoPop{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:640px){
  .home-demo-modal{padding:.55rem}
  .home-demo-card{max-height:94vh;border-radius:1.25rem}
  .home-demo-head{padding:1.35rem 1rem .95rem}
  .home-demo-form{padding:1rem .9rem 1rem}
  .home-demo-grid{grid-template-columns:1fr;gap:.65rem}
  .home-demo-grid .form-control:last-child{grid-column:auto}
  .home-demo-title{font-size:1.8rem}
  .home-demo-subtitle{font-size:.9rem}
}
@media(prefers-reduced-motion:reduce){.home-demo-modal,.home-demo-card{animation:none}}
html[data-theme="dark"] .home-demo-card{box-shadow:0 36px 130px rgba(0,0,0,.56);border-color:#1d4f55!important}
html[data-theme="dark"] .home-demo-head{background:linear-gradient(135deg,rgba(8,175,168,.08),rgba(37,99,235,.11),rgba(124,58,237,.08))}
html[data-theme="dark"] .home-demo-badge{background:#102326;border-color:#24565b;color:#7ce5df}
html[data-theme="dark"] .home-demo-note{color:#82979d}

/* V18 dynamic public navigation + course visuals */
.menu-rich-dropdown{min-width:250px;padding:.45rem}
.menu-rich-dropdown>a{display:flex!important;align-items:center;gap:.7rem!important;white-space:nowrap}
.menu-item-icon{width:1.15rem;text-align:center;flex:0 0 auto}
.course-visual-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:1.5rem;border:1px solid rgba(15,23,42,.08);background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,250,252,.88));box-shadow:0 14px 32px rgba(15,23,42,.08)}
.course-visual-image{width:72px;height:72px;border-radius:20px;object-fit:cover;border:1px solid rgba(15,23,42,.08);box-shadow:0 14px 32px rgba(15,23,42,.08);background:#fff}
.mobile-group-toggle{display:flex!important;align-items:center;justify-content:space-between;width:100%;border:0;cursor:pointer}
.mobile-group-toggle i{font-size:.75rem;transition:transform .2s ease}
.mobile-group-toggle[aria-expanded="true"] i{transform:rotate(180deg)}
.mobile-submenu{display:grid;gap:.35rem;padding:.35rem 0 .25rem 1rem;animation:mobileSubmenuIn .18s ease}
.mobile-sublink{display:block;padding:.72rem .9rem;border-left:2px solid rgba(37,99,235,.18);color:var(--text-soft);text-decoration:none;border-radius:0 .7rem .7rem 0;background:var(--surface-soft)}
.mobile-sublink:hover{color:var(--brand);border-left-color:var(--brand)}
@keyframes mobileSubmenuIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
html[data-theme="dark"] .course-visual-icon,html[data-theme="dark"] .course-visual-image{background:var(--surface-soft);border-color:var(--border);box-shadow:0 14px 32px rgba(0,0,0,.24)}

/* V18 Dynamic Gallery / Event / Training pages */
.menu-content-hero{background:linear-gradient(135deg,var(--surface) 0%,var(--surface-soft) 72%,rgba(232,255,252,.8) 100%)!important}
.menu-content-icon{width:68px;height:68px;border-radius:20px;display:grid;place-items:center;border:1px solid;font-size:1.45rem;flex:0 0 auto}
.menu-content-media{min-height:330px;background:linear-gradient(135deg,rgba(8,175,168,.07),rgba(37,99,235,.08),rgba(124,58,237,.06));border-left:1px solid var(--border);display:flex;align-items:stretch;justify-content:center}
.menu-content-media img{width:100%;height:100%;min-height:330px;object-fit:cover}
.menu-content-placeholder{width:100%;min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--menu-color);font-size:5rem}
.menu-content-placeholder span{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:900;color:var(--muted)}
.rich-content{font-size:1.04rem;line-height:1.86;color:var(--text-soft)}
.rich-content h1,.rich-content h2,.rich-content h3,.rich-content h4{color:var(--text);font-weight:900;line-height:1.25;margin:1.8rem 0 .7rem}
.rich-content h1{font-size:2rem}.rich-content h2{font-size:1.55rem}.rich-content h3{font-size:1.3rem}.rich-content h4{font-size:1.1rem}
.rich-content p{margin:.65rem 0 1.1rem}.rich-content ul,.rich-content ol{padding-left:1.4rem;margin:.75rem 0 1.2rem}.rich-content ul{list-style:disc}.rich-content ol{list-style:decimal}.rich-content li{margin:.35rem 0}.rich-content a{color:var(--brand-blue);font-weight:800;text-decoration:underline}.rich-content img{max-width:100%;height:auto;border-radius:16px;margin:1rem 0}.rich-content table{width:100%;border-collapse:collapse;margin:1.2rem 0}.rich-content th,.rich-content td{border:1px solid var(--border);padding:.7rem;text-align:left}.rich-content th{background:var(--surface-soft);font-weight:900}
.menu-related-link{display:flex;align-items:center;gap:.75rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text-soft);font-weight:800;transition:.18s}.menu-related-link:hover{border-color:rgba(37,99,235,.3);color:var(--brand-blue);transform:translateX(2px)}.menu-related-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(37,99,235,.08);flex:0 0 auto}
.menu-section-card{height:100%}
.menu-section-card:hover .menu-content-icon{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,23,42,.08)}
.menu-content-icon{transition:.18s}
.menu-rich-dropdown{max-height:70vh;overflow:auto}
@media(max-width:1024px){.menu-content-media{border-left:0;border-top:1px solid var(--border)}}

/* V22: Distinct College Internship page designs */
.internship-v22{position:relative}.iv-hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:520px;border:1px solid var(--border);border-radius:32px;overflow:hidden;background:var(--surface);box-shadow:0 26px 70px rgba(15,23,42,.07)}
.iv-hero-main{padding:52px;background:radial-gradient(circle at 10% 0%,color-mix(in srgb,var(--iv-color) 10%,transparent),transparent 38%),linear-gradient(135deg,var(--surface),var(--surface-soft))}.iv-eyebrow{font-weight:950;text-transform:uppercase;letter-spacing:.17em;font-size:.7rem;margin-top:20px}.iv-title{font-size:clamp(2.5rem,5vw,4.8rem);font-weight:950;letter-spacing:-.055em;line-height:.98;color:var(--text);margin-top:10px}.iv-title span{display:block;background:linear-gradient(90deg,var(--iv-color),#2563EB,#7C3AED);-webkit-background-clip:text;background-clip:text;color:transparent}.iv-tagline{max-width:720px;color:var(--text-soft);font-size:1.08rem;line-height:1.8;margin-top:22px}.iv-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px;max-width:700px}.iv-stat{border:1px solid var(--border);border-radius:18px;padding:16px 18px;background:var(--surface)}.iv-stat span{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);font-weight:900}.iv-stat strong{display:block;font-size:1.35rem;margin-top:4px;font-weight:950}.iv-hero-art{position:relative;display:grid;place-items:center;align-content:center;gap:12px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--iv-color) 18%,transparent),transparent 52%),linear-gradient(160deg,#f6fbff,#eaf6f5 48%,#f7f3ff);border-left:1px solid var(--border)}.iv-art-ring{width:180px;height:180px;border-radius:999px;display:grid;place-items:center;font-size:4rem;color:#fff;background:linear-gradient(135deg,var(--iv-color),#2563EB);box-shadow:0 30px 65px color-mix(in srgb,var(--iv-color) 24%,transparent);position:relative}.iv-art-ring:before{content:'';position:absolute;inset:13px;border:1px dashed rgba(255,255,255,.65);border-radius:999px}.iv-art-label{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:950;color:var(--muted);text-align:center}.iv-art-sub{font-size:.85rem;color:var(--muted);text-align:center}.iv-intro-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:24px}.iv-panel{border:1px solid var(--border);border-radius:26px;background:var(--surface);padding:30px;box-shadow:0 14px 45px rgba(15,23,42,.035)}.iv-panel h2,.iv-roadmap h2{font-size:2rem;line-height:1.15;font-weight:950;letter-spacing:-.035em;color:var(--text)}.iv-panel-main{background:linear-gradient(145deg,var(--surface),var(--surface-soft))}.iv-large-text{font-size:1.06rem;line-height:1.85;color:var(--text-soft);max-width:850px;margin-top:14px}.iv-audience{display:flex;gap:13px;align-items:flex-start;border:1px solid var(--border);border-radius:18px;padding:16px;margin-top:20px;background:var(--surface)}.iv-audience i{font-size:1.2rem;margin-top:3px}.iv-audience span{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-weight:900}.iv-audience strong{display:block;color:var(--text);line-height:1.5;margin-top:3px}.iv-checks{display:grid;gap:13px;margin-top:18px;color:var(--text-soft);font-weight:750}.iv-checks div{display:flex;gap:10px;align-items:flex-start}.iv-roadmap{border:1px solid var(--border);border-radius:28px;background:linear-gradient(135deg,var(--surface),var(--surface-soft));padding:32px}.iv-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.iv-step{display:flex;gap:14px;padding:18px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.iv-step-no{width:44px;height:44px;display:grid;place-items:center;border:2px solid;border-radius:14px;font-weight:950;flex:0 0 auto;background:var(--surface)}.iv-step-title{font-size:1rem;font-weight:950;color:var(--text)}.iv-step p{font-size:.9rem;line-height:1.6;color:var(--muted);margin-top:5px}.iv-related{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid var(--border);border-radius:15px;background:var(--surface);color:var(--text);transition:.18s}.iv-related:hover{transform:translateX(3px);border-color:color-mix(in srgb,var(--iv-color) 35%,var(--border))}.iv-related span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--surface-soft)}.iv-cta{border-radius:26px;padding:28px;border:1px solid color-mix(in srgb,var(--iv-color) 22%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--iv-color) 9%,var(--surface)),var(--surface));box-shadow:0 16px 48px rgba(15,23,42,.05)}.iv-cta h3{font-size:1.4rem;font-weight:950;color:var(--text);margin-top:8px}.iv-cta p{color:var(--muted);line-height:1.7;margin-top:8px}
@media(max-width:1024px){.iv-hero,.iv-intro-grid{grid-template-columns:1fr}.iv-hero-art{min-height:340px;border-left:0;border-top:1px solid var(--border)}.iv-timeline{grid-template-columns:1fr}}
@media(max-width:640px){.iv-hero-main{padding:30px 22px}.iv-title{font-size:2.55rem}.iv-stats{grid-template-columns:1fr}.iv-panel,.iv-roadmap{padding:22px}.iv-art-ring{width:150px;height:150px;font-size:3rem}}

/* V23: Distinct Training Program page designs */
.training-variant-page{--tv-color:#2563EB}
.tv-hero{display:grid;grid-template-columns:1.12fr .88fr;border:1px solid var(--border);border-radius:34px;overflow:hidden;background:var(--surface);box-shadow:0 28px 80px rgba(15,23,42,.08)}
.tv-hero-main{padding:54px 56px;background:radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--tv-color) 11%,transparent),transparent 40%),linear-gradient(140deg,var(--surface),var(--surface-soft))}
.tv-hero-visual{min-height:560px;position:relative;display:grid;place-items:center;align-content:center;gap:14px;overflow:hidden;background:radial-gradient(circle at 50% 30%,color-mix(in srgb,var(--tv-color) 20%,transparent),transparent 42%),linear-gradient(160deg,#fbfdff,#eff7ff 48%,#f5f1ff)}
.tv-overline{font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;font-weight:950;color:var(--muted)}
.tv-icon{width:76px;height:76px;border-radius:24px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--tv-color),#2563EB,#7C3AED);font-size:1.8rem;box-shadow:0 18px 40px color-mix(in srgb,var(--tv-color) 28%,transparent);flex:0 0 auto}
.tv-title{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:950;letter-spacing:-.05em;line-height:.98;margin-top:4px;background:linear-gradient(90deg,var(--tv-color),#2563EB,#7C3AED);-webkit-background-clip:text;background-clip:text;color:transparent}
.tv-headline{font-size:1.45rem;font-weight:900;color:var(--text);line-height:1.35;max-width:800px;margin-top:28px}
.tv-description{font-size:1.05rem;line-height:1.85;color:var(--text-soft);max-width:820px;margin-top:12px}
.tv-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.tv-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:720px;margin-top:28px}.tv-stat{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:16px 18px}.tv-stat strong{display:block;font-size:1.32rem;color:var(--text);font-weight:950}.tv-stat span{display:block;font-size:.66rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);font-weight:900;margin-top:4px}
.tv-visual-icon{width:184px;height:184px;border-radius:999px;display:grid;place-items:center;font-size:4.6rem;color:#fff;background:linear-gradient(135deg,var(--tv-color),#2563EB,#7C3AED);box-shadow:0 38px 90px color-mix(in srgb,var(--tv-color) 28%,transparent);z-index:2}.tv-orbit{position:absolute;width:340px;height:340px;border:1px solid color-mix(in srgb,var(--tv-color) 24%,transparent);border-radius:999px}.tv-orbit-2{width:470px;height:470px;border-style:dashed;opacity:.65}.tv-visual-label{text-transform:uppercase;letter-spacing:.19em;font-size:.75rem;font-weight:950;color:var(--muted);text-align:center}.tv-visual-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:rgba(255,255,255,.7);backdrop-filter:blur(10px);border-radius:999px;padding:9px 13px;font-size:.74rem;font-weight:900;color:var(--text-soft)}
.tv-feature-strip{display:grid;grid-template-columns:.72fr 1.28fr;gap:18px;border:1px solid var(--border);border-radius:28px;padding:26px;background:linear-gradient(135deg,var(--surface),var(--surface-soft))}.tv-feature-intro h2,.tv-roadmap-wrap h2,.tv-linked-course h2,.tv-side-card h2{font-size:2rem;line-height:1.18;font-weight:950;letter-spacing:-.035em;color:var(--text);margin-top:6px}.tv-feature-intro p{color:var(--text-soft);line-height:1.75;margin-top:10px}.tv-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tv-feature{display:grid;grid-template-columns:32px 24px 1fr;align-items:center;gap:8px;border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:13px 14px}.tv-feature span{font-size:.65rem;font-weight:950;color:var(--muted)}.tv-feature i{color:var(--tv-color)}.tv-feature strong{font-size:.93rem;line-height:1.35;color:var(--text)}
.tv-roadmap-wrap{border:1px solid var(--border);border-radius:30px;padding:30px;background:var(--surface)}.tv-muted{color:var(--muted);margin-top:8px}.tv-journey-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--tv-color) 24%,var(--border));border-radius:999px;padding:9px 12px;color:var(--tv-color);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.tv-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.tv-step{border:1px solid var(--border);border-radius:20px;padding:20px;background:linear-gradient(160deg,var(--surface),var(--surface-soft));min-height:178px}.tv-step-no{display:inline-flex;align-items:center;gap:6px;color:var(--tv-color);font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.13em}.tv-step h3{font-size:1.15rem;font-weight:950;color:var(--text);margin-top:14px}.tv-step p{font-size:.89rem;line-height:1.65;color:var(--muted);margin-top:7px}
.tv-linked-course{border:1px solid var(--border);border-radius:28px;padding:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--tv-color) 6%,var(--surface)),var(--surface))}.tv-linked-course>p{color:var(--muted);line-height:1.7;margin-top:8px}.tv-course-mini{margin-top:18px;display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:18px;padding:14px;background:var(--surface)}.tv-course-mini-icon{width:46px;height:46px;border-radius:14px;background:var(--surface-soft);display:grid;place-items:center;font-size:1.15rem;flex:0 0 auto}.tv-course-mini strong{display:block;font-weight:950;color:var(--text)}.tv-course-mini small{display:block;color:var(--muted);margin-top:3px}.tv-course-mini .btn-outline{margin-left:auto;white-space:nowrap}.tv-fees{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.tv-fees>div{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:14px}.tv-fees span{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:900}.tv-fees strong{display:block;font-size:1.05rem;color:var(--text);margin-top:4px}
.tv-content-card,.tv-side-card,.tv-contact-card{border:1px solid var(--border);border-radius:28px;background:var(--surface);padding:30px}.tv-rich-content{font-size:1.03rem;line-height:1.85;color:var(--text-soft);margin-top:10px}.tv-rich-content h2,.tv-rich-content h3{font-weight:950;color:var(--text);margin:1.7rem 0 .7rem}.tv-rich-content ul,.tv-rich-content ol{padding-left:1.3rem;margin:.8rem 0 1.2rem}.tv-rich-content ul{list-style:disc}.tv-rich-content ol{list-style:decimal}.tv-rich-content li{margin:.35rem 0}.tv-side-links{display:grid;gap:9px;margin-top:18px}.tv-side-links a{display:grid;grid-template-columns:34px 1fr 18px;align-items:center;gap:9px;border:1px solid var(--border);border-radius:15px;padding:10px 12px;color:var(--text);background:var(--surface);text-decoration:none;transition:.18s}.tv-side-links a:hover{transform:translateX(2px);border-color:color-mix(in srgb,var(--tv-color) 35%,var(--border))}.tv-side-links span{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--surface-soft)}.tv-side-links strong{font-size:.92rem}.tv-side-links i:last-child{font-size:.72rem;color:var(--muted)}.tv-contact-card{background:linear-gradient(145deg,color-mix(in srgb,var(--tv-color) 9%,var(--surface)),var(--surface))}.tv-contact-card h3{font-size:1.45rem;line-height:1.25;font-weight:950;color:var(--text);margin-top:8px}.tv-contact-card p{color:var(--muted);line-height:1.7;margin-top:8px}
html[data-theme="dark"] .tv-hero-visual{background:radial-gradient(circle at 50% 30%,color-mix(in srgb,var(--tv-color) 18%,transparent),transparent 42%),linear-gradient(160deg,#0d1d21,#0d2628 48%,#181327)}
html[data-theme="dark"] .tv-visual-chip{background:rgba(16,35,38,.8)}
@media(max-width:1024px){.tv-hero,.tv-feature-strip{grid-template-columns:1fr}.tv-hero-visual{min-height:360px;border-top:1px solid var(--border)}.tv-roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.tv-hero-main{padding:32px 24px}.tv-title{font-size:2.7rem}.tv-icon{width:62px;height:62px;border-radius:18px;font-size:1.45rem}.tv-headline{font-size:1.15rem}.tv-stats,.tv-feature-grid,.tv-fees,.tv-roadmap{grid-template-columns:1fr}.tv-feature-strip,.tv-roadmap-wrap,.tv-linked-course,.tv-content-card,.tv-side-card,.tv-contact-card{padding:21px}.tv-course-mini{align-items:flex-start;flex-wrap:wrap}.tv-course-mini .btn-outline{margin-left:0}.tv-visual-icon{width:150px;height:150px;font-size:3.4rem}.tv-orbit{width:270px;height:270px}.tv-orbit-2{width:340px;height:340px}}

/* V23 training-specific distinct visual systems */
.tv-online-layout{grid-template-columns:1.05fr .95fr}.tv-online-visual{background:radial-gradient(circle at 50% 40%,rgba(37,99,235,.18),transparent 42%),linear-gradient(145deg,#eff6ff,#f5f3ff)}.tv-video-screen{width:min(80%,390px);border-radius:24px;border:1px solid #cbd5e1;background:#fff;box-shadow:0 30px 80px rgba(37,99,235,.18);overflow:hidden;z-index:2}.tv-screen-top{display:flex;gap:6px;padding:12px 14px;background:#f8fafc}.tv-screen-top span{width:8px;height:8px;border-radius:50%;background:#cbd5e1}.tv-screen-body{min-height:250px;display:grid;place-items:center;gap:10px;text-align:center;padding:30px}.tv-screen-body i{font-size:4rem;color:#2563eb}.tv-screen-body strong,.tv-screen-body small{display:block}.tv-screen-body strong{font-size:.8rem;letter-spacing:.16em;color:#0f172a}.tv-screen-body small{margin-top:4px;color:#64748b}.tv-online-floating{position:absolute;z-index:3;border:1px solid var(--border);background:rgba(255,255,255,.9);backdrop-filter:blur(8px);padding:11px 13px;border-radius:14px;font-size:.76rem;font-weight:900;color:#0f172a;box-shadow:0 15px 35px rgba(15,23,42,.08)}.tv-online-floating-1{left:10%;top:28%}.tv-online-floating-2{right:8%;bottom:24%}.tv-three-cards,.tv-flow-card{border:1px solid var(--border);border-radius:28px;background:var(--surface);padding:30px}.tv-three-cards{display:grid;grid-template-columns:.6fr 1.4fr;gap:25px}.tv-three-cards h2,.tv-flow-card h2{font-size:2rem;font-weight:950;line-height:1.2;color:var(--text)}.tv-three-cards p{color:var(--muted);line-height:1.75;margin-top:10px}.tv-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.tv-small-card{display:flex;align-items:center;gap:11px;border:1px solid var(--border);border-radius:16px;padding:13px;background:var(--surface-soft);color:var(--text)}.tv-small-icon{width:34px;height:34px;border-radius:11px;background:rgba(37,99,235,.1);color:#2563eb;display:grid;place-items:center;flex:0 0 auto}.tv-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.tv-flow>div{border:1px solid var(--border);border-radius:18px;padding:18px;background:linear-gradient(145deg,var(--surface),var(--surface-soft))}.tv-flow span{display:block;color:#2563eb;font-size:.7rem;font-weight:950;letter-spacing:.14em}.tv-flow strong{display:block;color:var(--text);font-size:1.15rem;font-weight:950;margin-top:10px}.tv-flow small{display:block;color:var(--muted);margin-top:4px}
.tv-project-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:0;border:1px solid var(--border);border-radius:32px;overflow:hidden;background:var(--surface)}.tv-project-board{padding:50px;background:linear-gradient(140deg,rgba(8,175,168,.08),transparent 50%),var(--surface)}.tv-project-kanban{background:#061a1d;padding:30px;color:#e6fffd;display:flex;flex-direction:column;justify-content:center;min-height:500px}.tv-kanban-head{display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:.14em;font-weight:950}.tv-kanban-head span:last-child{letter-spacing:0}.tv-kanban-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.tv-kanban-cols>div{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:14px;background:rgba(255,255,255,.03)}.tv-kanban-cols b{display:block;font-size:.66rem;letter-spacing:.14em;color:#55dfd8}.tv-kanban-cols span{display:block;margin-top:11px;padding:9px;border-radius:10px;background:rgba(255,255,255,.05);font-size:.75rem}.tv-milestone-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.tv-milestone-grid article{border:1px solid var(--border);border-radius:22px;padding:22px;background:var(--surface)}.tv-milestone-grid span{color:#08afa8;font-size:.72rem;font-weight:950;letter-spacing:.16em}.tv-milestone-grid h3{font-size:1.15rem;font-weight:950;color:var(--text);margin-top:10px}.tv-milestone-grid p{color:var(--muted);line-height:1.65;margin-top:6px}.tv-deliverable-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:25px;border:1px solid var(--border);border-radius:28px;padding:30px;background:linear-gradient(145deg,var(--surface),var(--surface-soft))}.tv-deliverable-card h2{font-size:2rem;font-weight:950;color:var(--text);margin-top:7px}.tv-deliverable-card p{color:var(--muted);line-height:1.75;margin-top:8px}.tv-deliverables{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tv-deliverables div{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--border);background:var(--surface);padding:13px;border-radius:14px;color:var(--text-soft);font-size:.9rem}.tv-deliverables i{color:#08afa8;margin-top:2px}
.tv-global-hero{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:34px;overflow:hidden;background:linear-gradient(135deg,#fbf8ff,var(--surface))}.tv-global-copy{padding:52px}.tv-globe{min-height:500px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(124,58,237,.14),transparent 42%),linear-gradient(135deg,#f5f3ff,#eef6ff)}.tv-globe-core{width:230px;height:230px;border-radius:999px;display:grid;place-items:center;color:#fff;font-size:5rem;background:linear-gradient(135deg,#7c3aed,#2563eb);box-shadow:0 35px 90px rgba(124,58,237,.25);z-index:2}.tv-pin{position:absolute;border:1px solid rgba(124,58,237,.2);background:rgba(255,255,255,.85);padding:8px 11px;border-radius:999px;color:#5b21b6;font-size:.72rem;font-weight:950}.tv-pin-1{top:20%;left:20%}.tv-pin-2{top:28%;right:16%}.tv-pin-3{bottom:25%;left:17%}.tv-pin-4{bottom:17%;right:22%}.tv-global-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:18px}.tv-global-panel,.tv-workflow{border:1px solid var(--border);border-radius:26px;background:var(--surface);padding:28px}.tv-global-panel h2{font-size:2rem;font-weight:950;color:var(--text);margin-top:7px}.tv-global-panel p{color:var(--muted);line-height:1.75;margin-top:8px}.tv-global-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.tv-global-tags span{padding:8px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);font-size:.75rem;font-weight:850;color:var(--text-soft)}.tv-workflow{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tv-workflow>div{border:1px solid var(--border);border-radius:18px;padding:18px;background:linear-gradient(145deg,var(--surface),var(--surface-soft))}.tv-workflow i{color:#7c3aed}.tv-workflow strong,.tv-workflow small{display:block}.tv-workflow strong{font-size:1rem;color:var(--text);margin-top:10px}.tv-workflow small{color:var(--muted);margin-top:4px}.tv-global-stats{max-width:none;margin-top:0}
.tv-coach-hero{display:grid;grid-template-columns:1.1fr .9fr;border:1px solid var(--border);border-radius:32px;overflow:hidden;background:var(--surface)}.tv-profile-panel{padding:50px;background:linear-gradient(140deg,rgba(37,99,235,.08),transparent 45%),var(--surface)}.tv-avatar{width:74px;height:74px;border-radius:22px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2563eb,#7c3aed);font-size:1.7rem;box-shadow:0 16px 38px rgba(37,99,235,.22);margin-bottom:18px}.tv-profile-panel p{color:var(--muted);line-height:1.75;max-width:760px;margin-top:18px}.tv-personal-plan{background:#f7faff;padding:36px;border-left:1px solid var(--border);display:flex;flex-direction:column;justify-content:center}.tv-plan-head{display:flex;justify-content:space-between;align-items:center;color:#0f172a;font-size:.78rem;letter-spacing:.12em;font-weight:950}.tv-plan-head span{font-size:.68rem;background:#e0e7ff;color:#4338ca;padding:8px 10px;border-radius:999px;letter-spacing:0}.tv-plan-row{display:flex;justify-content:space-between;border-bottom:1px dashed #cbd5e1;padding:17px 0;color:#64748b}.tv-plan-row strong{color:#0f172a}.tv-coach-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:18px}.tv-coach-grid>div{border:1px solid var(--border);border-radius:26px;background:var(--surface);padding:28px}.tv-coach-grid h2,.tv-pillars h2{font-size:2rem;line-height:1.2;font-weight:950;color:var(--text);margin-top:7px}.tv-coach-grid p{color:var(--muted);line-height:1.75;margin-top:8px}.tv-coach-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tv-coach-steps>div{border:1px solid var(--border);border-radius:18px;padding:17px;background:var(--surface-soft)}.tv-coach-steps b{color:#2563eb;font-size:.72rem}.tv-coach-steps strong,.tv-coach-steps span{display:block}.tv-coach-steps strong{color:var(--text);margin-top:8px}.tv-coach-steps span{color:var(--muted);font-size:.82rem;margin-top:4px}.tv-pillars{border:1px solid var(--border);border-radius:26px;background:var(--surface);padding:28px}.tv-pillars>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.tv-pillars span{display:flex;gap:8px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:15px;background:var(--surface-soft);color:var(--text-soft);font-size:.86rem}.tv-pillars i{color:#2563eb}
.tv-work-hero{display:grid;grid-template-columns:1.08fr .92fr;border:1px solid var(--border);border-radius:32px;overflow:hidden;background:var(--surface)}.tv-work-hero>div:first-child{padding:50px;background:linear-gradient(145deg,rgba(8,175,168,.08),transparent 55%),var(--surface)}.tv-workboard{background:#092223;color:#e9fffd;padding:34px;display:flex;flex-direction:column;justify-content:center;min-height:480px}.tv-workboard-top{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;letter-spacing:.14em}.tv-workboard-top i{font-size:2rem;color:#55dfd8}.tv-work-line{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:42px}.tv-work-line span{padding:20px 10px;border:1px solid rgba(255,255,255,.08);border-radius:16px;text-align:center;background:rgba(255,255,255,.03);font-size:.78rem;font-weight:900}.tv-work-line span:nth-child(2){border-color:rgba(8,175,168,.38)}.tv-work-line span:nth-child(3){border-color:rgba(37,99,235,.38)}.tv-work-line span:nth-child(4){border-color:rgba(124,58,237,.38)}.tv-work-note{margin-top:22px;padding:14px;border-radius:14px;background:rgba(255,255,255,.04);display:flex;gap:10px}.tv-work-note i{color:#f5c451}.tv-work-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.tv-role-card,.tv-task-board{border:1px solid var(--border);border-radius:26px;background:var(--surface);padding:28px}.tv-role-card h2{font-size:2rem;font-weight:950;color:var(--text);margin-top:7px}.tv-role-card p{color:var(--muted);line-height:1.75;margin-top:8px}.tv-task-board{display:grid;gap:10px}.tv-task{display:grid;grid-template-columns:70px 1fr 20px;align-items:center;gap:10px;border:1px solid var(--border);border-radius:16px;padding:14px}.tv-task span{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:#08afa8;font-weight:950}.tv-task strong{color:var(--text);font-size:.92rem}.tv-task i{color:var(--muted);font-size:.75rem}.tv-work-features{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tv-work-features>div{display:grid;grid-template-columns:30px 20px 1fr;gap:7px;align-items:center;border:1px solid var(--border);border-radius:16px;padding:14px;background:var(--surface-soft)}.tv-work-features span{font-size:.62rem;font-weight:950;color:var(--muted)}.tv-work-features i{color:#08afa8}.tv-work-features strong{color:var(--text);font-size:.85rem}
.tv-kids-hero{display:grid;grid-template-columns:1.05fr .95fr;border:1px solid var(--border);border-radius:34px;overflow:hidden;background:#fffaf0}.tv-kids-copy{padding:50px}.tv-kids-art{min-height:500px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(245,158,11,.18),transparent 42%),linear-gradient(135deg,#fff7db,#eef8ff)}.tv-kids-main{width:180px;height:180px;border-radius:38px;display:grid;place-items:center;align-content:center;gap:7px;background:linear-gradient(135deg,#f59e0b,#ec4899,#7c3aed);color:#fff;box-shadow:0 32px 70px rgba(245,158,11,.25);transform:rotate(-3deg);z-index:2}.tv-kids-main i{font-size:3.4rem}.tv-kids-main strong{font-size:.75rem;letter-spacing:.15em}.tv-kids-main small{font-size:.7rem;opacity:.9}.tv-kids-bubble{position:absolute;width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 15px 35px rgba(15,23,42,.1);font-size:1.3rem}.tv-kids-bubble.b1{top:22%;left:18%;color:#2563eb}.tv-kids-bubble.b2{top:28%;right:18%;color:#ec4899}.tv-kids-bubble.b3{bottom:20%;left:28%;color:#7c3aed}.tv-levels{border:1px solid var(--border);border-radius:28px;background:var(--surface);padding:30px}.tv-levels h2,.tv-parent-card h2{font-size:2rem;line-height:1.2;font-weight:950;color:var(--text);margin-top:7px}.tv-level-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:20px}.tv-level-grid>div{border-radius:16px;padding:15px 11px;min-height:130px;background:linear-gradient(160deg,#fff8e7,#f6f3ff);border:1px solid var(--border)}.tv-level-grid span{font-size:.64rem;font-weight:950;color:#f59e0b}.tv-level-grid strong{display:block;color:var(--text);font-size:.88rem;margin-top:9px}.tv-level-grid small{display:block;color:var(--muted);font-size:.75rem;line-height:1.4;margin-top:4px}.tv-parent-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:18px;border:1px solid var(--border);border-radius:26px;padding:28px;background:linear-gradient(145deg,#fffaf0,var(--surface))}.tv-parent-card p{color:var(--muted);line-height:1.75;margin-top:8px}.tv-parent-card>div:last-child{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tv-parent-card span{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--border);border-radius:15px;padding:12px;background:var(--surface);font-size:.86rem;color:var(--text-soft)}.tv-parent-card i{color:#f59e0b}
.tv-university-hero{display:grid;grid-template-columns:1.05fr .95fr;border:1px solid var(--border);border-radius:34px;overflow:hidden;background:var(--surface)}.tv-university-main{padding:50px;background:linear-gradient(135deg,rgba(124,58,237,.09),transparent 55%),var(--surface)}.tv-semester-board{background:#f7f4ff;padding:32px;display:flex;flex-direction:column;justify-content:center}.tv-semester-head{display:flex;justify-content:space-between;align-items:center;font-size:.68rem;letter-spacing:.14em;color:#4c1d95;font-weight:950;margin-bottom:16px}.tv-semester-head span{letter-spacing:0;font-weight:850;color:#6d28d9}.tv-sem-row{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:16px 0;border-bottom:1px dashed #c4b5fd}.tv-sem-row b{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:#ede9fe;color:#6d28d9;font-size:.75rem}.tv-sem-row span{font-weight:950;color:#312e81}.tv-sem-row small{color:#6b7280}.tv-academic-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.tv-academic-copy,.tv-academic-options{border:1px solid var(--border);border-radius:26px;background:var(--surface);padding:28px}.tv-academic-copy h2{font-size:2rem;font-weight:950;color:var(--text);margin-top:7px}.tv-academic-copy p{color:var(--muted);line-height:1.75;margin-top:8px}.tv-academic-options{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tv-academic-options div{display:flex;gap:10px;align-items:center;border:1px solid var(--border);border-radius:15px;padding:13px;background:var(--surface-soft);font-size:.88rem;color:var(--text)}.tv-academic-options i{color:#7c3aed}.tv-university-outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tv-university-outcomes>div{border:1px solid var(--border);border-radius:18px;padding:18px;background:linear-gradient(145deg,var(--surface),var(--surface-soft))}.tv-university-outcomes span{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.13em;color:#7c3aed;font-weight:950}.tv-university-outcomes strong{display:block;color:var(--text);font-size:1.1rem;margin-top:6px}
@media(max-width:1024px){.tv-project-hero,.tv-global-hero,.tv-coach-hero,.tv-work-hero,.tv-kids-hero,.tv-university-hero,.tv-three-cards,.tv-deliverable-card,.tv-global-grid,.tv-coach-grid,.tv-work-grid,.tv-parent-card,.tv-academic-grid{grid-template-columns:1fr}.tv-hero-visual,.tv-project-kanban,.tv-globe,.tv-workboard,.tv-kids-art{min-height:340px;border-top:1px solid var(--border);border-left:0}.tv-level-grid{grid-template-columns:repeat(4,1fr)}.tv-milestone-grid{grid-template-columns:repeat(2,1fr)}.tv-flow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.tv-hero-main,.tv-project-board,.tv-global-copy,.tv-profile-panel,.tv-work-hero>div:first-child,.tv-kids-copy,.tv-university-main{padding:30px 22px}.tv-title{font-size:2.7rem}.tv-headline{font-size:1.15rem}.tv-stats,.tv-card-grid,.tv-deliverables,.tv-workflow,.tv-coach-steps,.tv-pillars>div,.tv-academic-options,.tv-university-outcomes{grid-template-columns:1fr}.tv-level-grid{grid-template-columns:repeat(2,1fr)}.tv-milestone-grid{grid-template-columns:1fr}.tv-flow{grid-template-columns:1fr}.tv-video-screen{width:82%}.tv-online-floating-1{left:5%;top:18%}.tv-online-floating-2{right:4%;bottom:15%}.tv-kids-main{width:150px;height:150px}.tv-globe-core{width:170px;height:170px;font-size:3.6rem}.tv-pin-1{left:10%}.tv-pin-2{right:8%}.tv-pin-3{left:9%}.tv-pin-4{right:12%}}


/* V25 Dynamic Event Gallery */
.gallery-hero,.gallery-detail-hero{display:grid;grid-template-columns:1.06fr .94fr;border:1px solid var(--border);border-radius:32px;overflow:hidden;background:var(--surface);box-shadow:0 22px 55px rgba(15,23,42,.06)}
.gallery-hero-art,.gallery-detail-side{min-height:330px;display:grid;place-items:center;align-content:center;gap:18px;background:linear-gradient(145deg,#eef8ff,#f2f0ff 55%,#effdfa);color:#2563eb;text-align:center;padding:30px}
.gallery-hero-art span{font-size:.68rem;font-weight:950;letter-spacing:.18em;color:#64748b}
.gallery-art-ring{width:150px;height:150px;border-radius:40px;display:grid;place-items:center;background:linear-gradient(135deg,#08afa8,#2563eb,#7c3aed);color:#fff;box-shadow:0 30px 65px rgba(37,99,235,.2)}
.gallery-art-ring i{font-size:4.5rem}.gallery-hero-icon{width:76px;height:76px;border-radius:22px;display:grid;place-items:center;background:#eef5ff;border:1px solid #bfd2ff;color:#2563eb;font-size:1.6rem;flex:0 0 auto}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-album-card{transition:transform .2s ease,box-shadow .2s ease}.gallery-album-card:hover{transform:translateY(-4px);box-shadow:0 22px 45px rgba(15,23,42,.09)}.gallery-cover{width:100%;height:230px;object-fit:cover;display:block}.gallery-cover-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--gallery-color) 12%,white),white,color-mix(in srgb,var(--gallery-color) 7%,white))}.gallery-cover-placeholder>div{text-align:center;color:var(--gallery-color);display:grid;gap:12px;justify-items:center}.gallery-cover-placeholder strong{font-size:1rem;color:#0f172a;max-width:70%}.gallery-icon-tile{width:84px;height:84px;border-radius:26px;display:grid;place-items:center;background:color-mix(in srgb,var(--gallery-color) 12%,white);font-size:2rem}.gallery-meta{display:flex;flex-wrap:wrap;gap:15px;color:#64748b;font-size:.84rem}.gallery-meta i{color:#2563eb;margin-right:7px}.gallery-empty-icon{width:72px;height:72px;margin:0 auto;border-radius:20px;display:grid;place-items:center;background:#eef5ff;color:#2563eb;font-size:1.7rem}.gallery-type-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#eef5ff;color:#2563eb;font-size:.76rem;font-weight:900;letter-spacing:.04em}.gallery-detail-side{min-height:280px}.gallery-count{display:flex;align-items:baseline;gap:9px}.gallery-count strong{font-size:4rem;line-height:1;font-weight:950;background:linear-gradient(90deg,#08afa8,#2563eb,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent}.gallery-count span{font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:#64748b;font-size:.7rem}.gallery-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gallery-photo{position:relative;display:block;width:100%;padding:0;border:1px solid var(--border);border-radius:20px;overflow:hidden;background:var(--surface);cursor:zoom-in;text-align:left}.gallery-photo img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .25s ease}.gallery-photo:hover img{transform:scale(1.035)}.gallery-photo-overlay{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(to top,rgba(2,6,23,.55),transparent 55%);color:#fff;opacity:0;transition:opacity .2s}.gallery-photo:hover .gallery-photo-overlay{opacity:1}.gallery-photo-caption{position:absolute;left:0;right:0;bottom:0;padding:12px 14px;color:#fff;font-size:.8rem;font-weight:800;background:linear-gradient(to top,rgba(2,6,23,.8),transparent)}.gallery-lightbox{position:fixed;inset:0;z-index:90;background:rgba(2,6,23,.92);display:grid;place-items:center;padding:5vw}.gallery-lightbox[hidden]{display:none}.gallery-lightbox img{max-width:min(92vw,1200px);max-height:84vh;object-fit:contain;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.45)}.gallery-lightbox-close,.gallery-lightbox-prev,.gallery-lightbox-next{position:fixed;width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center}.gallery-lightbox-close{top:22px;right:22px}.gallery-lightbox-prev{left:22px;top:50%;transform:translateY(-50%)}.gallery-lightbox-next{right:22px;top:50%;transform:translateY(-50%)}.gallery-lightbox button:hover{background:rgba(255,255,255,.18)}.prose-gallery{color:var(--text);line-height:1.8}.prose-gallery h2{font-size:1.8rem;font-weight:950;margin:1.4em 0 .5em}.prose-gallery h3{font-size:1.25rem;font-weight:900;margin:1.2em 0 .4em}.prose-gallery p,.prose-gallery ul,.prose-gallery ol{color:var(--muted);margin:.7em 0}.prose-gallery ul,.prose-gallery ol{padding-left:1.3rem}.prose-gallery strong{color:var(--text)}
@media(max-width:1024px){.gallery-hero,.gallery-detail-hero{grid-template-columns:1fr}.gallery-hero-art,.gallery-detail-side{min-height:250px;border-top:1px solid var(--border)}.gallery-grid,.gallery-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.gallery-grid,.gallery-photo-grid{grid-template-columns:1fr}.gallery-cover{height:210px}.gallery-photo img{height:240px}.gallery-lightbox-prev{left:10px}.gallery-lightbox-next{right:10px}.gallery-lightbox-close{top:10px;right:10px}}



/* V27 Homepage dynamic hero slider + company facts */
.home-hero-slider{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--surface) 0%,var(--surface-soft) 58%,rgba(232,255,252,.85) 100%);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.home-slider-track{display:flex;transition:transform .7s cubic-bezier(.22,.61,.36,1);will-change:transform}
.home-slide{min-width:100%;position:relative}
.home-slide:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,color-mix(in srgb,var(--slide-accent) 11%,transparent),transparent 24rem);pointer-events:none}
.home-slide-inner{max-width:1280px;margin:0 auto;padding:62px 36px 58px;display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center;min-height:480px}
.home-slide-copy{position:relative;z-index:2}.home-slide-eyebrow{display:inline-flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--slide-accent) 24%,var(--border));background:color-mix(in srgb,var(--slide-accent) 7%,var(--surface));color:var(--slide-accent);padding:9px 15px;border-radius:999px;font-size:.68rem;font-weight:950;letter-spacing:.19em;text-transform:uppercase}.home-slide-eyebrow span{width:7px;height:7px;border-radius:50%;background:var(--slide-accent);box-shadow:0 0 0 6px color-mix(in srgb,var(--slide-accent) 11%,transparent)}
.home-slide-title{font-size:clamp(3rem,5.4vw,5.6rem);line-height:.97;letter-spacing:-.055em;font-weight:950;color:var(--text);margin-top:22px}.home-slide-title .gradient-text{font-weight:950}
.home-slide-description{max-width:680px;color:var(--text-soft);font-size:1.08rem;line-height:1.8;margin-top:22px}.home-slide-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.home-slide-meta{display:flex;flex-wrap:wrap;gap:16px;margin-top:23px;color:var(--muted);font-size:.78rem;font-weight:750}.home-slide-meta i{color:var(--slide-accent);margin-right:6px}
.home-slide-art{position:relative;min-height:350px;display:grid;place-items:center}.home-slide-art-glow{position:absolute;width:360px;height:360px;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--slide-accent) 16%,transparent),transparent 68%);filter:blur(2px)}.home-slide-image-wrap{position:relative;width:min(100%,590px);padding:12px;border-radius:34px;background:linear-gradient(135deg,color-mix(in srgb,var(--slide-accent) 14%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--slide-accent) 15%,var(--border));box-shadow:0 26px 65px rgba(15,23,42,.1)}.home-slide-image{width:100%;display:block;border-radius:24px;aspect-ratio:1.52/1;object-fit:cover}.home-slide-placeholder{aspect-ratio:1.52/1;border-radius:24px;display:grid;place-items:center;font-size:5rem;color:var(--slide-accent);background:linear-gradient(145deg,var(--surface),var(--surface-soft))}.home-slide-tag{position:absolute;right:4%;bottom:3%;padding:9px 13px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:.64rem;letter-spacing:.15em;text-transform:uppercase;font-weight:950;color:var(--muted);box-shadow:0 12px 28px rgba(15,23,42,.12)}.home-slide-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px}
.home-slider-controls{display:flex;align-items:center;justify-content:center;gap:12px;padding:0 24px 24px}.home-slider-controls button{width:42px;height:42px;border-radius:13px;border:1px solid var(--border);background:var(--surface);color:var(--text);display:grid;place-items:center;transition:.18s}.home-slider-controls button:hover{transform:translateY(-2px);border-color:color-mix(in srgb,#2563eb 28%,var(--border));color:#2563eb;box-shadow:0 10px 22px rgba(15,23,42,.08)}.home-slider-dots{display:flex;gap:7px;align-items:center}.home-slider-dots button{width:26px;height:7px;border-radius:999px;background:var(--border);padding:0;border:0;transition:.2s}.home-slider-dots button.is-active{width:38px;background:linear-gradient(90deg,#08afa8,#2563eb,#7c3aed)}
.company-facts-section{padding:68px 0;background:var(--surface)}.company-facts-head{display:flex;align-items:end;justify-content:space-between;gap:28px}.company-facts-head p{max-width:560px;color:var(--muted);line-height:1.75}.company-facts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:38px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.company-fact{padding:30px 24px 32px;min-height:225px;border-right:1px solid var(--border);transition:.18s;background:var(--surface)}.company-fact:last-child{border-right:0}.company-fact:hover{background:linear-gradient(180deg,var(--surface),var(--surface-soft));transform:translateY(-2px)}.company-fact-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;color:var(--fact-color);background:color-mix(in srgb,var(--fact-color) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--fact-color) 15%,var(--border));font-size:1.1rem}.company-fact-value{font-size:3.1rem;line-height:1;font-weight:950;margin-top:28px;color:var(--fact-color)}.company-fact h3{font-size:1.03rem;font-weight:900;color:var(--text);margin-top:8px}.company-fact p{font-size:.82rem;color:var(--muted);line-height:1.7;margin-top:6px;max-width:260px}
html[data-theme="dark"] .home-hero-slider{background:linear-gradient(135deg,#0b1b1e 0%,#102326 62%,#0e2a2b 100%)}html[data-theme="dark"] .home-slide-image-wrap{box-shadow:0 26px 70px rgba(0,0,0,.28)}html[data-theme="dark"] .home-slide-tag{box-shadow:0 16px 35px rgba(0,0,0,.26)}
@media(max-width:900px){.home-slide-inner{grid-template-columns:1fr;gap:26px;padding:44px 22px}.home-slide-art{order:-1;min-height:280px}.home-slide-copy{padding-bottom:6px}.company-facts-head{flex-direction:column;align-items:flex-start}.company-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-fact:nth-child(2){border-right:0}.company-fact:nth-child(-n+2){border-bottom:1px solid var(--border)}}
@media(max-width:640px){.home-slide-inner{padding:34px 16px 40px}.home-slide-title{font-size:2.9rem}.home-slide-description{font-size:1rem}.home-slide-meta{display:grid;gap:8px}.home-slide-image-wrap{padding:8px;border-radius:22px}.home-slide-image{border-radius:16px}.home-slide-tag{position:static;margin-top:10px;justify-self:center}.home-slide-art{min-height:235px}.home-slide-art-glow{width:240px;height:240px}.company-facts-grid{grid-template-columns:1fr}.company-fact{border-right:0!important;border-bottom:1px solid var(--border);min-height:0}.company-fact:last-child{border-bottom:0}.company-fact-value{font-size:2.7rem}.company-facts-head h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.home-slider-track,.home-slider-controls button,.company-fact{transition:none!important}}
