:root{
  --black:#0b0b0c;--ink:#16161a;--card:#1d1d22;--line:#2c2c33;
  --gold:#c9a24b;--gold-l:#e6c878;--gold-d:#9d7a2c;
  --white:#fff;--paper:#f7f5f0;--text:#2a2a2e;--muted:#7a7a85;
  --ok:#1f9d55;--err:#c0392b;--warn:#c98a1b;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Poppins,Arial,sans-serif;color:var(--text);background:var(--paper);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.25;color:var(--ink)}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.gold{color:var(--gold)}
.muted{color:var(--muted)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:6px;font:600 15px Poppins,sans-serif;border:2px solid transparent;cursor:pointer;transition:.2s}
.btn.sm{padding:8px 16px;font-size:14px}
.btn-gold{background:linear-gradient(135deg,var(--gold-l),var(--gold) 50%,var(--gold-d));color:#111}
.btn-gold:hover{filter:brightness(1.08);transform:translateY(-1px)}
.btn-line{border-color:var(--gold);color:var(--gold);background:transparent}
.btn-line:hover{background:var(--gold);color:#111}
.btn-dark{background:var(--ink);color:#fff}
.btn-red{background:var(--err);color:#fff}
.btn-green{background:var(--ok);color:#fff}
.btn.block{width:100%}

/* header */
.site-head{background:var(--black);border-bottom:1px solid #2a2418;position:sticky;top:0;z-index:50}
.head-in{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:10px;color:#fff}
.brand b{display:block;font-family:'Playfair Display',serif;font-size:19px;color:var(--gold-l);line-height:1.1}
.brand small{font-size:11px;letter-spacing:.08em;color:#bbb;text-transform:uppercase}
.logo{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font:700 16px 'Playfair Display',serif;color:#111;background:linear-gradient(135deg,var(--gold-l),var(--gold-d));flex:none}
.nav{display:flex;align-items:center;gap:22px}
.nav>a:not(.btn){color:#ddd;font-size:15px}
.nav>a.on,.nav>a:not(.btn):hover{color:var(--gold-l)}
.muted-link{color:#999!important;font-size:14px!important}
.burger{display:none;cursor:pointer;flex-direction:column;gap:5px;padding:8px}
.burger span{width:24px;height:2px;background:var(--gold)}

/* hero */
.hero{background:radial-gradient(ellipse at 75% 30%,#2a2210 0,transparent 55%),var(--black);color:#fff;padding:90px 0 100px;position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center}
.eyebrow{display:inline-block;color:var(--gold);font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:14px}
.hero h1{color:#fff;font-size:52px;margin-bottom:18px}
.hero h1 em{font-style:normal;color:var(--gold-l)}
.hero p{color:#c9c9cf;font-size:17px;max-width:560px;margin-bottom:30px}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-art{aspect-ratio:1;border-radius:50%;border:1px solid #4a3d1d;display:grid;place-items:center;position:relative}
.hero-art::before{content:"";position:absolute;inset:30px;border-radius:50%;border:1px dashed #6b5728}
.ring{width:62%;aspect-ratio:1;border-radius:50%;border:18px solid transparent;background:linear-gradient(var(--black),var(--black)) padding-box,linear-gradient(135deg,#fff3c4,var(--gold) 40%,var(--gold-d) 70%,#f1d78e) border-box;box-shadow:0 0 80px rgba(201,162,75,.35);position:relative}
.ring::after{content:"";position:absolute;top:-46px;left:50%;transform:translateX(-50%) rotate(45deg);width:54px;height:54px;background:linear-gradient(135deg,#fff,#cfe6ff 50%,#9cc3ee);box-shadow:0 0 30px rgba(255,255,255,.6)}
.stats{display:flex;gap:40px;margin-top:40px}
.stats b{display:block;font:700 28px 'Playfair Display',serif;color:var(--gold-l)}
.stats span{font-size:13px;color:#aaa}

/* sections */
section.block{padding:80px 0}
.sec-head{text-align:center;max-width:640px;margin:0 auto 46px}
.sec-head h2{font-size:38px;margin-bottom:10px}
.sec-head p{color:var(--muted)}
.dark{background:var(--black);color:#ddd}
.dark h2,.dark h3{color:#fff}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.feature{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:28px}
.feature .ic{width:48px;height:48px;border-radius:10px;display:grid;place-items:center;background:rgba(201,162,75,.12);color:var(--gold);font-size:22px;margin-bottom:16px}
.feature h3{font-size:20px;margin-bottom:6px}
.feature p{color:#aaa;font-size:14px}

/* course cards */
.course-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.07);display:flex;flex-direction:column;transition:.25s}
.course-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.12)}
.thumb{aspect-ratio:16/10;background:linear-gradient(135deg,#141414,#2b2414);display:grid;place-items:center;position:relative;overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:cover}
.thumb .ph{font:700 26px 'Playfair Display',serif;color:var(--gold-l);text-align:center;padding:20px}
.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;background:#f3ead4;color:var(--gold-d)}
.thumb .badge{position:absolute;top:12px;left:12px}
.cc-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
.cc-body h3{font-size:20px;margin-bottom:6px}
.cc-body p{color:var(--muted);font-size:14px;flex:1}
.price{display:flex;align-items:baseline;gap:10px;margin:14px 0}
.price b{font-size:22px;color:var(--ink)}
.price s{color:var(--muted);font-size:15px}

/* page header */
.page-head{background:var(--black);color:#fff;padding:56px 0;text-align:center}
.page-head h1{color:#fff;font-size:40px}
.page-head p{color:#bbb;margin-top:8px}

/* course detail */
.detail{display:grid;grid-template-columns:1fr 360px;gap:40px;padding:50px 0 80px}
.box{background:#fff;border-radius:14px;padding:28px;box-shadow:0 6px 24px rgba(0,0,0,.05);margin-bottom:24px}
.box h2{font-size:26px;margin-bottom:14px}
.prose p{margin-bottom:12px;white-space:pre-line}
.sticky{position:sticky;top:96px}
.buy .price b{font-size:30px}
.buy ul{list-style:none;margin:18px 0 0;font-size:14px;color:var(--muted)}
.buy li{padding:6px 0;border-top:1px solid #eee}
.module{border:1px solid #eee;border-radius:10px;margin-bottom:12px;overflow:hidden}
.module summary{padding:14px 18px;font-weight:600;cursor:pointer;background:#faf8f3;list-style:none;display:flex;justify-content:space-between}
.lesson-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 18px;border-top:1px solid #f0f0f0;font-size:14px}
.lesson-row .lk{color:var(--muted)}
.lesson-row a{color:var(--gold-d);font-weight:600}
.instructor{display:flex;gap:18px;align-items:center}
.instructor .logo{width:70px;height:70px;font-size:24px}

/* forms */
.form-card{max-width:460px;margin:50px auto 80px;background:#fff;border-radius:14px;padding:36px;box-shadow:0 10px 40px rgba(0,0,0,.08)}
.form-card h1{font-size:30px;margin-bottom:6px;text-align:center}
.form-card>p{text-align:center;color:var(--muted);margin-bottom:24px}
label{display:block;font-size:14px;font-weight:500;margin:14px 0 6px}
input,select,textarea{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:8px;font:15px Poppins,sans-serif;background:#fff}
input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);border-color:var(--gold)}
input[type=checkbox]{width:auto}
textarea{min-height:110px;resize:vertical}
.form-card .btn{margin-top:22px}
.alt{text-align:center;margin-top:18px;font-size:14px;color:var(--muted)}
.alt a{color:var(--gold-d);font-weight:600}
.alert{margin:20px 0 0;padding:14px 18px;border-radius:8px;font-size:14px}
.alert.ok{background:#e8f6ee;color:#17693b;border:1px solid #bfe4cd}
.alert.err{background:#fdecea;color:#9b2c20;border:1px solid #f4c4be}
.pay-box{background:var(--black);color:#eee;border-radius:12px;padding:22px;white-space:pre-line;font-size:15px;border:1px solid #3a3020}

/* dashboard */
.dash{padding:40px 0 80px}
.my-course{display:grid;grid-template-columns:200px 1fr auto;gap:22px;align-items:center;background:#fff;border-radius:14px;padding:16px;box-shadow:0 6px 24px rgba(0,0,0,.05);margin-bottom:16px}
.my-course .thumb{border-radius:10px}
.bar{height:8px;background:#eee;border-radius:10px;overflow:hidden;margin:10px 0 4px}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold-d),var(--gold-l))}
.tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600}
.tag.pending{background:#fff4dd;color:#9a6a0b}
.tag.approved,.tag.active{background:#e3f5ea;color:#17693b}
.tag.rejected,.tag.revoked{background:#fde4e1;color:#9b2c20}

/* lesson player */
.player{display:grid;grid-template-columns:1fr 340px;min-height:calc(100vh - 72px)}
.player-main{background:#000;padding:0}
.video{aspect-ratio:16/9;background:#000;position:relative}
.video iframe{width:100%;height:100%;border:0}
.video .shield{position:absolute;top:0;left:0;right:0;height:60px}
.no-video{color:#888;display:grid;place-items:center;height:100%;font-size:15px}
.lesson-info{background:var(--paper);padding:28px 32px}
.lesson-info h1{font-size:26px;margin-bottom:12px}
.side{background:#fff;border-left:1px solid #eee;overflow-y:auto;max-height:calc(100vh - 72px)}
.side h3{padding:18px 20px;font-size:18px;border-bottom:1px solid #eee}
.side .mod{padding:12px 20px;background:#faf8f3;font-weight:600;font-size:14px}
.side a{display:flex;gap:10px;padding:11px 20px;font-size:14px;border-top:1px solid #f3f3f3}
.side a.on{background:#f6efdc;font-weight:600}
.side .chk{width:18px;height:18px;border-radius:50%;border:2px solid #ccc;flex:none;margin-top:2px}
.side .chk.done{background:var(--ok);border-color:var(--ok)}
.lesson-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px;flex-wrap:wrap}

/* tables */
table.t{width:100%;border-collapse:collapse;background:#fff;font-size:14px}
.t th{text-align:left;background:#faf8f3;padding:12px 14px;font-weight:600;border-bottom:1px solid #eee}
.t td{padding:12px 14px;border-bottom:1px solid #f0f0f0;vertical-align:middle}
.table-wrap{overflow-x:auto;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.05)}

/* footer */
.site-foot{background:var(--black);color:#aaa;padding:60px 0 0;margin-top:0}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.site-foot h4{color:var(--gold-l);font-size:15px;margin-bottom:14px}
.site-foot a{display:block;font-size:14px;padding:3px 0}
.site-foot a:hover{color:var(--gold-l)}
.site-foot p{font-size:14px;margin-top:12px}
.copy{text-align:center;padding:20px;border-top:1px solid #222;margin-top:40px;font-size:13px}
.wa-float{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:60}

.cta{background:linear-gradient(135deg,#1a160c,#0b0b0c);border:1px solid #3a3020;border-radius:18px;padding:50px;text-align:center;color:#ccc}
.cta h2{color:#fff;font-size:34px;margin-bottom:10px}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.step{background:#fff;border-radius:12px;padding:24px;position:relative;box-shadow:0 6px 24px rgba(0,0,0,.05)}
.step::before{counter-increment:s;content:counter(s);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#111;font-weight:700;margin-bottom:12px}
.step h3{font-size:18px;margin-bottom:4px}
.step p{font-size:14px;color:var(--muted)}

@media (max-width:960px){
  .hero-grid,.detail,.player{grid-template-columns:1fr}
  .hero-art{display:none}
  .hero h1{font-size:38px}
  .grid-3,.grid-4,.steps{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .side{max-height:none;border-left:0}
  .sticky{position:static}
  .burger{display:flex}
  .nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--black);flex-direction:column;align-items:stretch;padding:16px 20px 22px;gap:4px;border-bottom:1px solid #2a2418}
  .nav>a:not(.btn){padding:10px 0}
  #menu:checked~.nav{display:flex}
}
@media (max-width:600px){
  .hero{padding:60px 0 70px}
  .hero h1{font-size:32px}
  .sec-head h2,.page-head h1{font-size:30px}
  .grid-3,.grid-4,.steps,.foot-grid{grid-template-columns:1fr}
  .my-course{grid-template-columns:1fr}
  .stats{gap:24px}
  .form-card{margin:24px 16px 60px;padding:26px 20px}
  .cta{padding:34px 20px}
  .lesson-info{padding:22px 16px}
}
.logo-img{width:46px;height:46px;border-radius:8px;object-fit:cover;flex:none}

/* Logo palette: black + gold + emerald */
:root{--em:#16a35a;--em-l:#3fe08a;--em-d:#0a6b37}
.eyebrow{color:var(--em-l)}
.hero{background:radial-gradient(ellipse at 78% 35%,rgba(22,163,90,.22) 0,transparent 50%),radial-gradient(ellipse at 20% 100%,#2a2210 0,transparent 55%),var(--black)}
.hero-art{border-color:#1f5a3a}
.hero-art::before{border-color:#2f7a52}
.ring{box-shadow:0 0 80px rgba(201,162,75,.3),0 0 140px rgba(22,163,90,.18)}
.ring::after{background:linear-gradient(135deg,#a8ffd0,var(--em-l) 40%,var(--em-d));box-shadow:0 0 30px rgba(63,224,138,.6)}
.stats b{color:var(--gold-l)}
.feature .ic{background:rgba(22,163,90,.14);color:var(--em-l)}
.feature{border-color:#24302a}
.badge{background:#e1f6ea;color:var(--em-d)}
.step::before{background:linear-gradient(135deg,var(--em-l),var(--em-d));color:#fff}
.nav>a.on{color:var(--em-l)}
.site-head{border-bottom-color:#1d3a2a}
.bar i{background:linear-gradient(90deg,var(--em-d),var(--em-l))}
.side a.on{background:#e6f6ec}
.side .chk.done{background:var(--em);border-color:var(--em)}
.lesson-row a,.alt a{color:var(--em-d)}
.cta{background:radial-gradient(ellipse at 50% 0,rgba(22,163,90,.2),transparent 60%),linear-gradient(135deg,#1a160c,#0b0b0c);border-color:#2a4a36}
.site-foot h4{color:var(--gold-l)}
.site-foot{border-top:3px solid var(--em-d)}
.pay-box{border-color:#2a4a36}
.module summary{background:#f1f8f3}
input:focus,select:focus,textarea:focus{outline-color:var(--em)}
.page-head{background:radial-gradient(ellipse at 50% 120%,rgba(22,163,90,.25),transparent 60%),var(--black)}

/* ===== Professional redesign ===== */
.h2{font-size:40px;margin:6px 0 16px}
.lead{color:var(--muted);font-size:16.5px}
.tint{background:#efece4}
.row-btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.btn-line.dark-line{color:var(--gold-d);border-color:var(--gold-d)}
.btn-line.dark-line:hover{color:#111}

.hero2{background:radial-gradient(ellipse at 85% 20%,rgba(22,163,90,.2),transparent 50%),radial-gradient(ellipse at 0 100%,#2a2210,transparent 55%),var(--black);color:#fff;padding:80px 0 90px;overflow:hidden}
.hero2-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.hero2 h1{color:#fff;font-size:56px;margin-bottom:20px}
.hero2 p{color:#c9c9cf;font-size:17px;max-width:540px;margin-bottom:32px}
.hero2 .actions{display:flex;gap:14px;flex-wrap:wrap}
.trust{display:flex;gap:0;list-style:none;margin-top:44px;border-top:1px solid #2a2a2a;padding-top:24px}
.trust li{flex:1;padding-right:20px;border-right:1px solid #2a2a2a;margin-right:20px}
.trust li:last-child{border:0}
.trust b{display:block;font:700 26px 'Playfair Display',serif;color:var(--gold-l)}
.trust span{font-size:13px;color:#999}
.hero2-media{position:relative;height:520px}
.hm-main{position:absolute;right:0;top:0;width:82%;height:88%;object-fit:cover;border-radius:200px 200px 18px 18px;border:1px solid #3a3020;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.hm-small{position:absolute;left:0;bottom:0;width:44%;aspect-ratio:1;object-fit:cover;border-radius:18px;border:5px solid var(--black);box-shadow:0 20px 50px rgba(0,0,0,.6)}
.hm-badge{position:absolute;right:20px;bottom:30px;background:rgba(11,11,12,.85);backdrop-filter:blur(8px);border:1px solid #3a3020;border-radius:14px;padding:14px 20px}
.hm-badge b{display:block;color:var(--gold-l);font:700 20px 'Playfair Display',serif}
.hm-badge span{font-size:12px;color:var(--em-l)}

.marquee{background:linear-gradient(90deg,var(--gold-d),var(--gold),var(--gold-d));overflow:hidden;white-space:nowrap;padding:14px 0;color:#111}
.marquee>div{display:inline-block;animation:mq 30s linear infinite;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:14px}
.marquee span{margin:0 22px}
@keyframes mq{to{transform:translateX(-50%)}}

.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.split.rev .split-media{order:2}
.split-media{position:relative}
.split-media img{width:100%;aspect-ratio:4/4.3;object-fit:cover;border-radius:18px;box-shadow:0 30px 70px rgba(0,0,0,.18)}
.split-media::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:2px solid var(--gold);border-radius:18px;z-index:-1}
.exp{position:absolute;right:-20px;bottom:40px;background:var(--black);color:#fff;border-radius:14px;padding:18px 22px;border-left:4px solid var(--em)}
.exp b{display:block;font:700 22px 'Playfair Display',serif;color:var(--gold-l)}
.exp span{font-size:13px;color:#bbb}
.checks{list-style:none;margin-top:22px}
.checks li{padding:9px 0 9px 34px;position:relative;font-weight:500}
.checks li::before{content:"✓";position:absolute;left:0;top:9px;width:22px;height:22px;border-radius:50%;background:var(--em);color:#fff;font-size:12px;display:grid;place-items:center}

.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.cat{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:3/4}
.cat img{width:100%;height:100%;object-fit:cover;transition:.5s}
.cat:hover img{transform:scale(1.07)}
.cat::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.85))}
.cat span{position:absolute;left:20px;bottom:18px;z-index:1;color:#fff;font:700 22px 'Playfair Display',serif}

.thumb .off{position:absolute;top:12px;right:12px;background:var(--em);color:#fff;font-size:12px;font-weight:700;padding:3px 10px;border-radius:20px}
.course-card .thumb img{transition:.5s}
.course-card:hover .thumb img{transform:scale(1.05)}

.why .feature .ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.why .feature{transition:.25s}
.why .feature:hover{border-color:var(--gold-d);transform:translateY(-4px)}

.faq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}
.faq details{background:#fff;border-radius:12px;margin-bottom:12px;box-shadow:0 4px 18px rgba(0,0,0,.05)}
.faq summary{padding:18px 22px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between}
.faq summary::after{content:"+";color:var(--gold-d);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details p{padding:0 22px 18px;color:var(--muted)}

.cta2{background-size:cover;background-position:center;padding:100px 0;color:#ddd}
.cta2 h2{color:#fff;font-size:42px;max-width:620px}
.cta2 p{margin-top:10px;font-size:17px}

.page-head{background:linear-gradient(rgba(5,5,6,.82),rgba(5,5,6,.88)),url('https://images.unsplash.com/photo-1758995116383-f51775896add?auto=format&fit=crop&q=80&w=1600') center/cover;padding:80px 0}

@media (max-width:960px){
  .hero2-grid,.split,.faq-wrap{grid-template-columns:1fr;gap:40px}
  .split.rev .split-media{order:0}
  .hero2-media{height:400px}
  .hero2 h1{font-size:40px}
  .cats{grid-template-columns:1fr 1fr}
  .exp{right:10px}
}
@media (max-width:600px){
  .hero2{padding:50px 0 60px}
  .hero2 h1{font-size:32px}
  .hero2-media{height:320px}
  .h2,.cta2 h2{font-size:30px}
  .trust li{padding-right:10px;margin-right:10px}
  .trust b{font-size:20px}
  .split-media::before{display:none}
}

/* Poster sections */
.outline-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:center}
.outline-list{list-style:none;counter-reset:o;margin-top:10px}
.outline-list li{counter-increment:o;position:relative;padding:16px 0 16px 64px;border-bottom:1px solid #222}
.outline-list li::before{content:counter(o,decimal-leading-zero);position:absolute;left:0;top:14px;font:700 30px 'Playfair Display',serif;color:var(--gold)}
.outline-list b{display:block;color:#fff;font-size:17px}
.outline-list span{color:#999;font-size:14px}
.batches{background:linear-gradient(160deg,#0f2a1b,#0b0b0c);border:1px solid var(--gold-d);border-radius:18px;padding:30px}
.batches h3{color:var(--gold-l);font-size:26px;margin-bottom:16px}
.batch{display:flex;gap:12px;align-items:center;padding:12px 16px;margin-bottom:10px;background:rgba(255,255,255,.04);border-radius:10px;color:#fff;font-weight:600;font-size:17px}
.batch span{color:var(--em-l);font-size:20px}
.batches p{color:#999;font-size:13px;margin-top:14px}
.led{display:flex;justify-content:space-between;margin-top:18px;padding-top:16px;border-top:1px solid #2a2a2a;color:var(--gold);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.led span{color:#fff}
.portrait{object-position:top}
.grad-img{width:100%;max-width:900px;margin:0 auto;border-radius:18px;box-shadow:0 30px 70px rgba(0,0,0,.15);border:6px solid #fff}
.visit{padding:80px 0;background:#fff}
.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.map{width:100%;height:360px;border:0;border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.1)}
@media (max-width:960px){.outline-grid,.visit-grid{grid-template-columns:1fr;gap:36px}}
.logo-img{width:62px;height:62px;border-radius:10px;object-fit:contain;background:#000;box-shadow:0 0 0 1px #3a3020}
.head-in{height:84px}
.brand b{font-size:21px}
.nav{top:84px}
@media (max-width:960px){.nav{top:84px}}
.site-foot .logo-img{width:90px;height:90px}

/* ===== Poster palette: deep emerald green + gold ===== */
:root{--black:#04190f;--ink:#0a2418;--card:#0b2c1d;--line:#1d4a33;--paper:#f6f4ec}
h1,h2,h3{color:var(--ink)}
.site-head{background:linear-gradient(90deg,#03140c,#073a24 60%,#03140c);border-bottom:2px solid var(--gold-d)}
.hero2{background:radial-gradient(ellipse at 80% 20%,rgba(201,162,75,.18),transparent 45%),radial-gradient(ellipse at 10% 90%,rgba(22,163,90,.25),transparent 55%),linear-gradient(135deg,#03170d,#07402a 55%,#03170d)}
.hero2 h1{background:linear-gradient(180deg,#fff6cf,#e6c060 45%,#b8892c);-webkit-background-clip:text;background-clip:text;color:transparent}
.hm-small{border-color:#07402a}
.hm-main{border:3px solid var(--gold);box-shadow:0 0 0 8px rgba(201,162,75,.15),0 30px 80px rgba(0,0,0,.5)}
.dark,.why{background:linear-gradient(135deg,#03170d,#073a24 60%,#03170d)}
.feature{background:rgba(255,255,255,.04);border-color:#1f5a3c}
.outline{background:linear-gradient(135deg,#052516,#0a4a2f 60%,#052516)}
.outline-list li{border-bottom-color:#1d4a33}
.batches{background:rgba(3,20,12,.6)}
.tint{background:#eef3ec}
.page-head{background:linear-gradient(rgba(3,23,13,.85),rgba(7,58,36,.88)),url('https://images.unsplash.com/photo-1758995116383-f51775896add?auto=format&fit=crop&q=80&w=1600') center/cover;border-bottom:3px solid var(--gold-d)}
.site-foot{background:linear-gradient(180deg,#052516,#03140c);border-top:4px solid var(--gold)}
.copy{border-top-color:#1d4a33}
.cta2{border-top:3px solid var(--gold);border-bottom:3px solid var(--gold)}
.exp{background:#07402a;border-left-color:var(--gold)}
.btn-dark{background:#07402a}
.btn-dark:hover{background:#0a5236}
.btn-gold{box-shadow:0 6px 20px rgba(201,162,75,.3)}
.pay-box{background:#062a1a}
.poster{display:block;width:100%;max-width:1000px;margin:0 auto;border-radius:16px;border:3px solid var(--gold);box-shadow:0 30px 70px rgba(0,0,0,.25)}

/* ===== Poster-style home (v3) ===== */
.ph,.sec{background:radial-gradient(ellipse at 85% 10%,rgba(201,162,75,.16),transparent 40%),linear-gradient(135deg,#031a0f,#06402a 55%,#03170d);color:#fff}
.ph{padding:56px 0 70px;position:relative;overflow:hidden}
.ph::before,.ph::after{content:"";position:absolute;width:420px;height:8px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:rotate(-35deg)}
.ph::before{top:40px;left:-120px}.ph::after{bottom:40px;right:-120px}
.ph-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;position:relative;z-index:1}
.ph-script{font:42px 'Great Vibes',cursive;color:#fff;margin-bottom:-4px}
.ph-title{font:700 86px/0.95 Oswald,Impact,sans-serif;text-transform:uppercase;color:#fff;letter-spacing:.01em}
.ph-title span{display:block;background:linear-gradient(180deg,#fff3c0,#f0c75a 40%,#b07d22 75%,#e9c46a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 10px rgba(0,0,0,.4))}
.ph-pill{display:inline-block;margin:20px 0 22px;padding:10px 26px;border:2px solid var(--gold);border-radius:40px;background:linear-gradient(90deg,#0a5236,#063a25);font:600 20px Oswald,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.ph-points{list-style:none;font-size:17px;line-height:2;color:#f1f1f1}
.ph-points li::first-letter{color:var(--gold-l)}
.ph-btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.ph-right{position:relative;max-width:440px;margin-left:auto;width:100%}
.ph-photo{aspect-ratio:1;border-radius:50%;padding:10px;background:conic-gradient(from 200deg,#fff2bd,#c9a24b,#7d5a18,#e9c46a,#fff2bd);box-shadow:0 0 60px rgba(233,196,106,.35)}
.ph-photo img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:top;border:4px solid #062a1a}
.seal{position:absolute;left:-30px;bottom:30px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#111 58%,transparent 59%),conic-gradient(#fff2bd,#c9a24b,#7d5a18,#e9c46a,#fff2bd);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.seal small{font:600 15px Oswald,sans-serif;text-transform:uppercase;letter-spacing:.06em}
.seal b{font:700 38px/1 Oswald,sans-serif;color:var(--gold-l)}
.seal span{font-size:13px;margin-top:2px}
.ph-name{text-align:center;margin-top:16px}
.ph-name b{display:block;font:700 26px 'Playfair Display',serif;color:var(--gold-l)}
.ph-name span{color:#bbb;font-size:14px}
.lde{background:linear-gradient(90deg,#9d7a2c,#e6c878,#9d7a2c);color:#062a1a;padding:16px 0}
.lde .wrap{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}
.lde span{font:700 30px Oswald,sans-serif;text-transform:uppercase}
.lde i{font-style:normal;font-size:28px}
.lde em{font:30px 'Great Vibes',cursive;margin-left:20px}
.sec{padding:70px 0}
.sec.light{background:var(--paper);color:var(--text)}
.t-gold{font:700 40px Oswald,sans-serif;text-transform:uppercase;color:var(--gold-l);margin-bottom:20px}
.sec-title{font:700 40px Oswald,sans-serif;text-transform:uppercase;text-align:center;color:#06402a}
.sec-sub{text-align:center;color:var(--muted);max-width:620px;margin:8px auto 36px}
.tick{list-style:none}
.tick li{position:relative;padding:10px 0 10px 38px;font-size:17px;border-bottom:1px solid rgba(255,255,255,.08)}
.tick li::before{content:"✓";position:absolute;left:0;top:11px;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#062a1a;font-weight:700;font-size:13px;display:grid;place-items:center}
.outline2{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:36px;align-items:center}
.gems{display:grid;gap:18px}
.gems img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:16px;border:3px solid var(--gold);box-shadow:0 15px 40px rgba(0,0,0,.4)}
.batch-card{border:2px solid var(--gold);border-radius:18px;padding:28px;background:rgba(0,0,0,.25)}
.batch-card h3{font:700 26px Oswald,sans-serif;text-transform:uppercase;color:#fff;margin-bottom:14px}
.batch-card div{font:600 22px Oswald,sans-serif;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.batch-card .btn{margin-top:20px}
.contact2{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.c-row{font-size:17px;margin-bottom:14px}
.c-row b{display:block;color:var(--gold-l);font-size:13px;text-transform:uppercase;letter-spacing:.1em}
@media (max-width:960px){
  .ph-grid,.outline2,.contact2{grid-template-columns:1fr}
  .ph-right{margin:10px auto 0;max-width:340px}
  .ph-title{font-size:60px}
  .gems{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .ph-title{font-size:46px}
  .ph-script{font-size:32px}
  .ph-pill{font-size:15px;padding:8px 16px}
  .ph-points{font-size:15px;line-height:1.9}
  .seal{width:110px;height:110px;left:-6px}
  .seal b{font-size:28px}
  .lde span{font-size:22px}.lde em{font-size:24px;margin-left:0}
  .t-gold,.sec-title{font-size:30px}
}

/* ===== Poster style for all inner pages (v3) ===== */
body{background:#f4f6f1}
.page-head{background:radial-gradient(ellipse at 85% 10%,rgba(201,162,75,.2),transparent 45%),linear-gradient(135deg,#031a0f,#06402a 55%,#03170d);padding:60px 0 54px;position:relative;overflow:hidden;border-bottom:4px solid var(--gold)}
.page-head::before{content:"";position:absolute;width:380px;height:7px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:rotate(-35deg);top:30px;left:-110px}
.page-head h1{font:700 54px/1.05 Oswald,Impact,sans-serif;text-transform:uppercase;background:linear-gradient(180deg,#fff3c0,#f0c75a 45%,#b07d22);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 8px rgba(0,0,0,.35))}
.page-head p{font:30px 'Great Vibes',cursive;color:#fff;margin-top:4px}
.page-head .badge{background:var(--gold);color:#062a1a}

h2,.box h2{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.02em;color:#06402a}
.box{border-top:4px solid var(--gold);border-radius:14px}
.form-card{border-top:5px solid var(--gold);border-radius:16px}
.form-card h1{font:700 34px Oswald,sans-serif;text-transform:uppercase;color:#06402a}
.btn-dark{background:linear-gradient(135deg,#0a5236,#063a25);color:#fff}
.price b{color:#06402a}

.course-card{border:1px solid #e3dcc3;border-bottom:4px solid var(--gold)}
.cc-body h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:21px;color:#06402a}

.module summary{background:#06402a;color:#fff}
.module summary .muted{color:var(--gold-l)}
.lesson-row a{color:#0a7a45}

.pay-box{background:linear-gradient(135deg,#031a0f,#06402a);border:2px solid var(--gold);font-size:16px}
.alert.ok{background:#e6f4ea;border-color:#b6dfc3}

.my-course{border-left:5px solid var(--gold)}
.t th{background:#06402a;color:#fff}
.tag.approved,.tag.active{background:#dff3e6}

.player-main{background:#03140c}
.lesson-info h1{font:700 30px Oswald,sans-serif;text-transform:uppercase;color:#06402a}
.side h3{background:#06402a;color:var(--gold-l);font-family:Oswald,sans-serif;text-transform:uppercase}
.side .mod{background:#eef3ec;color:#06402a}
.side a.on{background:#fbf3dc;border-left:4px solid var(--gold)}

/* About page */
.about-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:center}
.about-photo{aspect-ratio:1;border-radius:50%;padding:10px;background:conic-gradient(from 200deg,#fff2bd,#c9a24b,#7d5a18,#e9c46a,#fff2bd);box-shadow:0 20px 60px rgba(0,0,0,.2);max-width:380px;margin:auto}
.about-photo img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:top;border:4px solid #fff}
.about-hero h2{font-size:38px;margin-bottom:4px}
.about-hero .role{font:28px 'Great Vibes',cursive;color:var(--gold-d)}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:50px 0}
.fact{background:linear-gradient(135deg,#031a0f,#06402a);color:#fff;border:2px solid var(--gold);border-radius:16px;padding:24px;text-align:center}
.fact b{display:block;font:700 34px Oswald,sans-serif;color:var(--gold-l)}
.fact span{font-size:14px;color:#ddd}
@media (max-width:960px){.about-hero{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.page-head h1{font-size:38px}.page-head p{font-size:24px}}
.logo-img{width:64px;height:64px;border-radius:12px;object-fit:cover;box-shadow:0 0 0 2px var(--gold-d),0 4px 14px rgba(0,0,0,.4)}
.foot-logo{width:200px;border-radius:14px;box-shadow:0 0 0 2px var(--gold-d)}

/* Lesson player (Plyr) in brand colours */
:root{--plyr-color-main:#c9a24b;--plyr-video-control-background-hover:#c9a24b}
.video .plyr{height:100%}
.video .plyr--youtube .plyr__video-embed iframe{pointer-events:none}
.wm{position:absolute;top:12%;left:8%;z-index:5;color:rgba(255,255,255,.35);font-size:14px;font-weight:600;pointer-events:none;transition:top 2s,left 2s;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap}
/* Hide YouTube title bar and logo: the iframe is made 3x taller and shifted up, so only the video area
   stays inside the frame. A bigger iframe also makes YouTube stream a higher (HD) quality. */
.video .plyr__video-embed{overflow:hidden}
.video .plyr--youtube .plyr__video-embed iframe{height:200%;top:-50%;pointer-events:none}
.video .plyr__poster{background-size:cover}

/* ===== Header v4 ===== */
.topbar{background:linear-gradient(90deg,#9d7a2c,#e6c878 50%,#9d7a2c);color:#062a1a;font-size:13.5px;font-weight:600}
.topbar-in{display:flex;justify-content:space-between;align-items:center;height:38px;gap:16px}
.tb-info{display:flex;gap:24px;align-items:center}
.tb-info a:hover{text-decoration:underline}
.tb-live{display:flex;align-items:center;gap:8px;background:#062a1a;color:var(--gold-l);padding:4px 14px;border-radius:20px;font-size:12.5px;white-space:nowrap}
.tb-live i{width:8px;height:8px;border-radius:50%;background:#3fe08a;box-shadow:0 0 0 0 rgba(63,224,138,.7);animation:pulse 1.6s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(63,224,138,0)}100%{box-shadow:0 0 0 0 rgba(63,224,138,0)}}

.site-head{background:rgba(3,22,13,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(201,162,75,.5);box-shadow:0 8px 30px rgba(0,0,0,.25)}
.site-head::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.head-in{height:92px}
.brand{gap:14px}
.brand .logo-img{width:70px;height:70px}
.brand b{font:700 26px/1 Oswald,sans-serif;text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(180deg,#fff3c0,#e6c060 50%,#b07d22);-webkit-background-clip:text;background-clip:text;color:transparent}
.brand small{display:block;margin-top:5px;font-size:11px;letter-spacing:.18em;color:#cfd8d2}
.nav{gap:6px}
.nav>a:not(.btn){position:relative;padding:8px 14px;color:#e8ece9;font-weight:500;font-size:15px;border-radius:6px}
.nav>a:not(.btn)::after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:2px;background:var(--gold);transform:scaleX(0);transition:.25s}
.nav>a:not(.btn):hover::after,.nav>a.on::after{transform:scaleX(1)}
.nav>a.on,.nav>a:not(.btn):hover{color:var(--gold-l)}
.nav .btn{margin-left:8px}
.nav .btn-line{color:var(--gold-l);border-color:var(--gold)}
.nav .btn-line:hover{color:#111}

@media (max-width:960px){
  .head-in{height:76px}
  .brand .logo-img{width:56px;height:56px}
  .brand b{font-size:21px}
  .nav,.nav{top:76px}
  .nav{background:#03160d;border-top:1px solid #1d4a33}
  .nav>a:not(.btn){padding:12px 4px;border-bottom:1px solid #12301f;border-radius:0}
  .nav>a:not(.btn)::after{display:none}
  .nav .btn{margin:10px 0 0}
}
@media (max-width:700px){
  .tb-hide{display:none}
  .brand small{letter-spacing:.08em;font-size:10px}
}
.nav>a,.brand small{white-space:nowrap}
@media (max-width:1180px) and (min-width:961px){.nav>a:not(.btn){padding:8px 9px;font-size:14px}.brand small{letter-spacing:.08em}.nav .btn.sm{padding:8px 13px}}
.tb-info a{white-space:nowrap}@media (max-width:420px){.topbar{font-size:12px}.tb-live{padding:3px 10px;font-size:11px}}

/* Learn > Design > Earn strip with icons (poster style) */
.lde{padding:20px 0;border-top:2px solid #f6dd94;border-bottom:2px solid #7d5a18;box-shadow:inset 0 0 40px rgba(125,90,24,.35)}
.lde .wrap{gap:22px}
.lde-step{display:flex;align-items:center;gap:12px}
.lde-step b{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#0a5236,#03170d);border:3px solid #062a1a;box-shadow:0 0 0 2px #f6dd94,0 6px 14px rgba(0,0,0,.3)}
.lde-step svg{width:26px;height:26px;fill:none;stroke:#f0c75a;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lde i{font-size:34px;color:#062a1a;opacity:.7}
.lde em{padding-left:24px;border-left:2px solid rgba(6,42,26,.35)}
@media (max-width:700px){.lde .wrap{gap:10px}.lde-step b{width:42px;height:42px}.lde-step svg{width:20px;height:20px}.lde-step{gap:6px}.lde em{border:0;padding:6px 0 0;width:100%;text-align:center}}

/* ===== Crossed scrolling ribbons ===== */
.ribbons{position:relative;height:190px;overflow:hidden;background:linear-gradient(180deg,#04190f,#052a1a 50%,#03140c);border-top:3px solid var(--gold)}
.rb{position:absolute;left:-5%;width:110%;overflow:hidden;white-space:nowrap;padding:16px 0;box-shadow:0 10px 30px rgba(0,0,0,.45)}
.rb-back{top:42px;transform:rotate(-2.5deg);background:linear-gradient(90deg,#b8892c,#f6dd94 35%,#e6c060 65%,#9d7a2c)}
.rb-front{top:92px;transform:rotate(2deg);background:#05301e;border-top:1px solid rgba(201,162,75,.6);border-bottom:1px solid rgba(201,162,75,.6)}
.rb-track{display:inline-flex;align-items:center;animation:rb 40s linear infinite}
.rb-back .rb-track{animation-direction:reverse}
.rb span{display:inline-flex;align-items:center;gap:12px;font:700 26px Oswald,sans-serif;text-transform:uppercase;letter-spacing:.04em;padding:0 8px}
.rb i{font-style:normal;margin:0 26px;font-size:20px}
.rb svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rb-back span,.rb-back i{color:#062a1a}
.rb-front span{color:var(--gold-l)}
.rb-front i{color:var(--gold)}
.ribbons:hover .rb-track{animation-play-state:paused}
@keyframes rb{to{transform:translateX(-50%)}}
@media (max-width:600px){.ribbons{height:140px}.rb{padding:11px 0}.rb-back{top:28px}.rb-front{top:68px}.rb span{font-size:18px;gap:8px}.rb svg{width:20px;height:20px}.rb i{margin:0 14px;font-size:14px}}
@media (prefers-reduced-motion:reduce){.rb-track{animation:none}}
/* Sharper ribbon text: render each ribbon on its own GPU layer and move it in whole 3D steps */
.rb{backface-visibility:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}
.rb-back{transform:rotate(-1.6deg) translateZ(0)}
.rb-front{transform:rotate(1.4deg) translateZ(0)}
.rb-track{will-change:transform;backface-visibility:hidden;animation-name:rb3d}
@keyframes rb3d{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.rb span{font-weight:700;-webkit-text-stroke:.3px currentColor}
.rb-front span{text-shadow:0 1px 0 rgba(0,0,0,.35)}
.rb-back span{text-shadow:0 1px 0 rgba(255,255,255,.25)}
.ribbons{height:210px}.rb-back{top:30px}.rb-front{top:112px}@media (max-width:600px){.ribbons{height:150px}.rb-back{top:20px}.rb-front{top:80px}}

/* ===== Glassmorphism stats ===== */
.stats2{position:relative;padding:120px 0 80px;background:radial-gradient(circle at 15% 30%,rgba(255,255,255,.45),transparent 30%),radial-gradient(circle at 90% 90%,rgba(255,255,255,.3),transparent 30%),linear-gradient(120deg,#e6c060,#f6dd94 35%,#d9ac46 70%,#b8892c)}
.stats2::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(6,42,26,.18) 1.2px,transparent 1.3px);background-size:22px 22px;pointer-events:none}
.stats-wave{position:absolute;top:-1px;left:0;width:100%;height:90px;fill:#03140c}
.stats-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.stat-card{text-align:center;padding:36px 20px 32px;border-radius:26px;background:rgba(255,255,255,.28);border:1.5px solid rgba(255,255,255,.65);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 45px rgba(125,90,24,.25),inset 0 1px 0 rgba(255,255,255,.7);transition:.3s}
.stat-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.4)}
.stat-ic{width:70px;height:70px;margin:0 auto 18px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#0a5236,#03170d);box-shadow:0 10px 22px rgba(3,23,13,.35)}
.stat-ic svg{width:32px;height:32px;fill:none;stroke:#f0c75a;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.stat-num{display:block;font:700 64px/1 Oswald,sans-serif;color:#062a1a;letter-spacing:-.01em}
.stat-card span{display:block;margin-top:12px;font-weight:600;font-size:16px;color:#123a27}
@media (max-width:960px){.stats-grid{grid-template-columns:1fr 1fr;gap:18px}.stat-num{font-size:50px}}
@media (max-width:600px){.stats2{padding:90px 0 60px}.stats-wave{height:50px}.stat-card{padding:26px 12px}.stat-ic{width:56px;height:56px;border-radius:16px}.stat-num{font-size:40px}.stat-card span{font-size:13.5px}}

/* ===== Ribbons v3: match reference exactly ===== */
.ribbons{height:240px;background:linear-gradient(180deg,#03140c 0%,#04190f 60%,#062a1a 100%)}
.ribbons::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:radial-gradient(ellipse at 50% 100%,rgba(201,162,75,.35),transparent 70%);pointer-events:none}
.rb{padding:0;display:flex;align-items:center}
/* back ribbon: wedge that is thin on the left and wide on the right */
.rb-back{top:40px;height:110px;transform:none;box-shadow:none;background:linear-gradient(90deg,#f6dd94 0%,#ecc966 40%,#d9ac46 75%,#b8892c 100%);clip-path:polygon(0 72%,100% 0,100% 64%,0 86%)}
.rb-back .rb-track{transform-origin:left;padding-top:22px}
.rb-back span{font-size:23px;transform:rotate(-3.2deg)}
/* front ribbon: dark band with thin gold edges */
.rb-front{top:118px;height:74px;transform:rotate(1.7deg) translateZ(0);background:linear-gradient(180deg,#062a1a,#04200f);border-top:1px solid rgba(240,199,90,.55);border-bottom:1px solid rgba(240,199,90,.55);box-shadow:0 18px 40px rgba(0,0,0,.55),0 30px 60px -20px rgba(201,162,75,.35)}
.rb span{font:800 27px Poppins,sans-serif;letter-spacing:.01em;-webkit-text-stroke:0;gap:14px}
.rb-front span{color:#f0c75a;text-shadow:none}
.rb-back span,.rb-back i{color:#062a1a;text-shadow:none}
.rb i{font-size:18px;margin:0 34px}
.rb svg{width:30px;height:30px;fill:currentColor;stroke:none}
.rb svg path,.rb svg rect,.rb svg circle{fill:none;stroke:currentColor;stroke-width:2.4}
@media (max-width:600px){.ribbons{height:170px}.rb-back{top:24px;height:80px}.rb-back .rb-track{padding-top:16px}.rb-back span{font-size:15px}.rb-front{top:84px;height:52px}.rb span{font-size:17px;gap:8px}.rb svg{width:20px;height:20px}.rb i{margin:0 16px;font-size:12px}}
/* Back ribbon: full band (no clipped wedge) so its text is never hidden behind the front ribbon */
.rb-back{top:34px;height:64px;clip-path:none;transform:rotate(-2.2deg) translateZ(0);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.rb-back .rb-track{padding-top:0}
.rb-back span{transform:none;font-size:24px}
.rb-front{top:122px}
@media (max-width:600px){.rb-back{top:22px;height:46px}.rb-back span{font-size:15px}.rb-front{top:86px}}

/* ===== Ticker ribbons (same build as reference: stacked, rotated, overlapping) ===== */
.ticker{position:relative;padding:70px 0 84px;background:linear-gradient(180deg,#03140c,#04190f);overflow:hidden}
.ticker__ribbon{position:relative;width:110%;margin-left:-5%;padding:16px 0;overflow:hidden}
.ticker__ribbon--gold{background:linear-gradient(100deg,#f6dd94,#e6c060 50%,#b8892c);color:#062a1a;transform:rotate(-2deg);box-shadow:0 20px 50px -20px rgba(230,192,96,.55)}
.ticker__ribbon--dark{margin-top:-32px;background:#062a1a;color:#f0c75a;border-top:1px solid rgba(240,199,90,.4);border-bottom:1px solid rgba(240,199,90,.4);transform:rotate(1.6deg);box-shadow:0 0 40px rgba(240,199,90,.15)}
.ticker__track{display:flex;align-items:center;width:max-content;animation:tickerMove 40s linear infinite;will-change:transform}
.ticker__track--rev{animation-direction:reverse}
.ticker__item,.ticker__dot{padding:0 14px;white-space:nowrap}
.ticker__item{display:inline-flex;align-items:center;gap:10px;font-family:Poppins,sans-serif;font-size:clamp(1rem,2.6vw,1.5rem);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.ticker__item svg{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.ticker__dot{opacity:.6;font-size:1.1rem}
.ticker:hover .ticker__track{animation-play-state:paused}
@keyframes tickerMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:820px){.ticker{padding:56px 0 68px}}
@media (prefers-reduced-motion:reduce){.ticker__track{animation:none}}

/* Admission seal: sits on the photo's left edge (never over the name), poster-style gold rim */
.seal{left:-34px;bottom:auto;top:52%;width:150px;height:150px;padding:8px;background:repeating-conic-gradient(from 0deg,#f6dd94 0 6deg,#b8892c 6deg 12deg);border-radius:50%;box-shadow:0 12px 30px rgba(0,0,0,.55)}
.seal::before{content:"";position:absolute;inset:8px;border-radius:50%;background:radial-gradient(circle,#161616 60%,#0b0b0b);border:3px solid #e6c060}
.seal>*{position:relative}
.seal small{font-size:15px;letter-spacing:.08em;color:#fff}
.seal b{font-size:40px;line-height:1;background:linear-gradient(180deg,#fff3c0,#e6c060 50%,#b07d22);-webkit-background-clip:text;background-clip:text;color:transparent}
.seal span{font-size:12px;margin-top:4px;color:#f6dd94;border-top:1px solid rgba(230,192,96,.6);padding-top:3px}
.ph-name{margin-top:22px}
@media (max-width:600px){.seal{width:112px;height:112px;left:-8px;top:50%}.seal small{font-size:11px}.seal b{font-size:28px}.seal span{font-size:10px}}
/* Seal back to the original smooth gold ring (position stays off the name) */
.seal{padding:0;background:radial-gradient(circle,#111 58%,transparent 59%),conic-gradient(#fff2bd,#c9a24b,#7d5a18,#e9c46a,#fff2bd)}
.seal::before{content:none}
.seal span{border-top:0;padding-top:0;margin-top:2px}

/* ===== Attention-grabbing hero buttons ===== */
.btn-cta{position:relative;overflow:hidden;font-size:17px;padding:15px 30px;animation:ctaPulse 2.2s ease-out infinite}
.btn-cta::before{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.75),transparent);transform:skewX(-20deg);animation:ctaShine 3s ease-in-out infinite}
.btn-cta .cta-arrow{display:inline-block;animation:ctaArrow 1.1s ease-in-out infinite}
.btn-cta:hover{animation:none;transform:translateY(-3px) scale(1.04);box-shadow:0 12px 30px rgba(230,192,96,.55)}
@keyframes ctaPulse{0%{box-shadow:0 0 0 0 rgba(240,199,90,.7)}70%{box-shadow:0 0 0 18px rgba(240,199,90,0)}100%{box-shadow:0 0 0 0 rgba(240,199,90,0)}}
@keyframes ctaShine{0%,60%{left:-75%}100%{left:130%}}
@keyframes ctaArrow{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}

/* Online Courses: gold light running around the border, fills gold on hover */
.btn-glow{position:relative;overflow:hidden;border:0;padding:15px 30px;font-size:17px;color:var(--gold-l);z-index:0}
.btn-glow::before{content:"";position:absolute;inset:-60%;background:conic-gradient(from 0deg,transparent 0 70%,#fff3c0 80%,#e6c060 88%,transparent 100%);animation:glowSpin 2.8s linear infinite;z-index:-2}
.btn-glow::after{content:"";position:absolute;inset:2px;border-radius:4px;background:#05301e;box-shadow:inset 0 0 0 1px rgba(230,192,96,.45);z-index:-1;transition:.3s}
.btn-glow:hover{color:#062a1a}
.btn-glow:hover::after{background:linear-gradient(135deg,#f6dd94,#e6c060 50%,#b8892c)}
@keyframes glowSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.btn-cta,.btn-cta::before,.btn-cta .cta-arrow,.btn-glow::before{animation:none}}

/* ===== Course package section ===== */
.pack{padding:80px 0;background:radial-gradient(ellipse at 50% 0,rgba(230,192,96,.18),transparent 55%),#f4f6f1}
.pack-card{display:grid;grid-template-columns:360px 1fr;max-width:1060px;margin:0 auto;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 30px 70px rgba(6,42,26,.18);border:2px solid #e6c060}
.pack-price{padding:38px 32px;background:radial-gradient(ellipse at 80% 0,rgba(230,192,96,.25),transparent 50%),linear-gradient(160deg,#06402a,#03170d);color:#fff;text-align:center}
.pack-tag{display:inline-block;padding:5px 16px;border-radius:30px;background:#e6c060;color:#062a1a;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.pack-price h3{color:#fff;font:700 26px Oswald,sans-serif;text-transform:uppercase;margin:16px 0 8px}
.pack-amt s{display:block;color:#9fb5a9;font-size:17px}
.pack-amt b{display:block;font:700 54px/1.1 Oswald,sans-serif;background:linear-gradient(180deg,#fff3c0,#e6c060 50%,#b07d22);-webkit-background-clip:text;background-clip:text;color:transparent}
.pack-amt small{color:#cfd8d2;font-size:13px}
.pack-meta{list-style:none;display:flex;justify-content:center;gap:10px;margin:22px 0 26px}
.pack-meta li{flex:1;padding:10px 4px;border:1px solid rgba(230,192,96,.45);border-radius:12px;font-size:12.5px;color:#cfd8d2}
.pack-meta b{display:block;font:700 22px Oswald,sans-serif;color:#f0c75a}
.pack-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px 26px;padding:36px 38px;align-content:center}
.pack-list li{position:relative;padding:12px 0 12px 44px;border-bottom:1px dashed #e3e8e0}
.pack-list li::before{content:"✓";position:absolute;left:0;top:12px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#0a5236,#03170d);color:#f0c75a;font-weight:700;font-size:14px}
.pack-list b{display:block;color:#06402a;font-size:15.5px}
.pack-list span{display:block;color:var(--muted);font-size:13.5px}
@media (max-width:960px){.pack-card{grid-template-columns:1fr}.pack-list{grid-template-columns:1fr;padding:28px 22px}}

/* ===== Home About (3D) - same build as reference, green & gold ===== */
.about3d{position:relative;padding:90px 0 110px;overflow:hidden;background:radial-gradient(ellipse at 30% 40%,rgba(230,192,96,.16),transparent 45%),linear-gradient(180deg,#03140c,#052516 60%,#03140c);color:#fff}
.about3d__mega-wrap{text-align:center}
.about3d__mega{display:flex;flex-wrap:wrap;justify-content:center;column-gap:.28em;margin:0;padding:0 12px;font:800 clamp(3.4rem,15.5vw,12.5rem)/.92 Poppins,sans-serif;letter-spacing:-.02em;text-transform:uppercase;perspective:900px}
.mega-l{display:inline-block;color:transparent;-webkit-text-stroke:2px #e6c060;background:linear-gradient(105deg,transparent 38%,rgba(240,199,90,.95) 50%,transparent 62%) 130% 0/320% 100% no-repeat;-webkit-background-clip:text;background-clip:text;opacity:0;transform:translateY(70%) rotateX(-90deg);transform-origin:50% 100%;transition:color .3s}
.about3d__mega-wrap.is-in .mega-l{animation:megaIn .95s cubic-bezier(.16,1,.3,1) calc(var(--i)*85ms) both,megaSweep 5.5s ease-in-out calc(1.2s + var(--i)*140ms) infinite,megaGlow 4s ease-in-out calc(var(--i)*260ms) infinite}
.mega-l:hover{color:#e6c060}
@keyframes megaIn{0%{opacity:0;transform:translateY(70%) rotateX(-90deg)}100%{opacity:1;transform:none}}
@keyframes megaSweep{0%{background-position:130% 0}55%,100%{background-position:-30% 0}}
@keyframes megaGlow{0%,100%{-webkit-text-stroke-color:#e6c060;filter:drop-shadow(0 0 0 rgba(230,192,96,0))}50%{-webkit-text-stroke-color:#fff3c0;filter:drop-shadow(0 0 16px rgba(230,192,96,.55))}}
.about3d__ticker{margin-top:26px;overflow:hidden}
.about3d__ticker-track{display:flex;align-items:center;width:max-content;animation:tickerMove 46s linear infinite;will-change:transform}
.about3d__ticker span{padding:0 22px;font:800 clamp(1.3rem,3.6vw,2.4rem) Poppins,sans-serif;text-transform:uppercase;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.3)}
.about3d__ticker span.dot{padding:0 8px;color:#e6c060;-webkit-text-stroke:0}
.about3d__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:center;max-width:1240px;margin:56px auto 0;padding:0 24px}
.about3d__title{margin:0 0 20px;font:800 clamp(1.7rem,3.6vw,2.6rem)/1.2 Poppins,sans-serif;color:#fff;text-transform:none}
.grad-gold{background:linear-gradient(100deg,#fff3c0 0%,#e6c060 40%,#b8892c 85%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 22px rgba(230,192,96,.32))}
.about3d__copy>p{margin:0 0 28px;font-size:1.04rem;line-height:1.8;color:#b9c9c0}
.about3d__feats{display:grid;gap:14px;margin-bottom:32px}
.a3d-feat{position:relative;display:flex;align-items:center;gap:16px;padding:16px 20px;border:1px solid transparent;background:linear-gradient(#062a1a,#062a1a) padding-box,linear-gradient(135deg,rgba(230,192,96,.9),rgba(230,192,96,.08) 60%) border-box;transition:transform .35s,box-shadow .35s}
.a3d-feat--1{border-radius:34px 6px}
.a3d-feat--2{border-radius:6px 34px;margin-left:24px}
.a3d-feat--3{border-radius:34px 34px 6px}
.a3d-feat:hover{transform:translateX(8px);box-shadow:0 18px 40px -16px rgba(0,0,0,.7),0 0 34px rgba(230,192,96,.2)}
.a3d-feat__hex{flex:0 0 52px;height:52px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff3c0,#e6c060 55%,#b8892c);clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%)}
.a3d-feat__hex svg,.a3d__diamond svg,.a3d__cube svg{width:45%;height:45%;fill:none;stroke:#062a1a;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.a3d-feat__hex svg{width:24px;height:24px}
.a3d-feat b{display:block;color:#fff;font-size:1rem}
.a3d-feat small{display:block;margin-top:2px;color:#a2b3a9;font-size:.85rem}
.about3d__actions{display:flex;flex-wrap:wrap;gap:14px}
.about3d__stage-wrap{display:flex;justify-content:center}
.a3d{--st:min(500px,calc(100vw - 48px));--mx:0;--my:0;position:relative;width:var(--st);height:var(--st);perspective:1400px}
.a3d__scene,.a3d__sway{position:absolute;inset:0;transform-style:preserve-3d}
.a3d__scene{transform:rotateX(var(--rx,10deg)) rotateY(var(--ry,-16deg));transition:transform .2s ease-out}
.a3d__sway{animation:a3dSway 10s ease-in-out infinite alternate}
.a3d__floor{position:absolute;left:8%;right:8%;bottom:-4%;height:16%;background:radial-gradient(closest-side,rgba(230,192,96,.5),transparent 75%);transform:translateZ(-70px) rotateX(72deg)}
.a3d__glow{position:absolute;left:8%;top:4%;width:84%;height:84%;background:radial-gradient(circle,rgba(230,192,96,.3),transparent 65%);transform:translateZ(-50px)}
.a3d__ring{position:absolute;border-radius:50%;border:2px dashed rgba(230,192,96,.5);transform:translateZ(-20px) rotateX(74deg)}
.a3d__ring--1{left:2%;top:2%;width:96%;height:96%;animation:a3dRing 26s linear infinite}
.a3d__ring--2{left:14%;top:14%;width:72%;height:72%;border-style:solid;border-color:rgba(230,192,96,.3);animation:a3dRing 18s linear infinite reverse}
.a3d__hex-border,.a3d__hex{position:absolute;clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0 50%)}
.a3d__hex-border{left:14%;top:8%;width:72%;height:72%;background:linear-gradient(135deg,#fff3c0,#e6c060 50%,#b8892c)}
.a3d__hex{left:16.6%;top:11%;width:66.8%;height:66.8%;transform:translateZ(22px) translate3d(calc(var(--mx)*-8px),calc(var(--my)*-8px),0)}
.a3d__hex img,.a3d__circle img{display:block;width:100%;height:100%;object-fit:cover}
.a3d__hex img{object-position:50% 20%}
.a3d__circle{position:absolute;right:0;bottom:4%;width:36%;height:36%;overflow:hidden;border:4px solid #e6c060;border-radius:50%;box-shadow:0 24px 44px rgba(0,0,0,.65),0 0 40px rgba(230,192,96,.45);transform:translateZ(95px) translate3d(calc(var(--mx)*16px),calc(var(--my)*16px),0)}
.a3d__diamond{position:absolute;left:0;top:16%;display:flex;align-items:center;justify-content:center;width:22%;height:22%;background:linear-gradient(135deg,#3fe08a,#0a7a45);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);transform:translateZ(120px) translate3d(calc(var(--mx)*22px),calc(var(--my)*22px),0);animation:a3dBob 5s ease-in-out infinite}
.a3d__diamond svg{stroke:#fff}
.a3d__cube{--half:calc(var(--st)*.08);position:absolute;right:6%;top:2%;width:calc(var(--st)*.16);height:calc(var(--st)*.16);transform-style:preserve-3d;transform:translateZ(150px);animation:a3dCube 16s linear infinite}
.a3d__cube span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(255,243,192,.96),rgba(184,137,44,.94));border:1px solid rgba(6,42,26,.35);box-shadow:inset 0 0 20px rgba(255,255,255,.35)}
.a3d__cube span:nth-child(1){transform:translateZ(var(--half))}
.a3d__cube span:nth-child(2){transform:rotateY(90deg) translateZ(var(--half))}
.a3d__cube span:nth-child(3){transform:rotateY(180deg) translateZ(var(--half))}
.a3d__cube span:nth-child(4){transform:rotateY(-90deg) translateZ(var(--half))}
.a3d__cube span:nth-child(5){transform:rotateX(90deg) translateZ(var(--half))}
.a3d__cube span:nth-child(6){transform:rotateX(-90deg) translateZ(var(--half))}
.a3d__dot{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff3c0,#e6c060 55%,#b8892c);box-shadow:0 0 22px rgba(230,192,96,.8);animation:a3dBob 6s ease-in-out infinite}
.a3d__dot--1{left:8%;bottom:20%;width:4.5%;height:4.5%;transform:translateZ(110px)}
.a3d__dot--2{right:26%;top:4%;width:3%;height:3%;transform:translateZ(60px);animation-delay:-2s}
.a3d__dot--3{left:40%;bottom:0;width:3.4%;height:3.4%;transform:translateZ(130px);animation-delay:-4s}
.a3d__tri{position:absolute;left:22%;top:0;width:8%;height:8%;background:linear-gradient(135deg,#3fe08a,#0a7a45);clip-path:polygon(50% 0,100% 100%,0 100%);transform:translateZ(80px);animation:a3dTri 9s linear infinite}
@keyframes a3dSway{0%{transform:rotateY(-9deg) rotateX(3deg)}100%{transform:rotateY(9deg) rotateX(-3deg)}}
@keyframes a3dRing{100%{transform:translateZ(-20px) rotateX(74deg) rotateZ(360deg)}}
@keyframes a3dCube{100%{transform:translateZ(150px) rotateX(360deg) rotateY(360deg)}}
@keyframes a3dBob{0%,100%{margin-top:0}50%{margin-top:-14px}}
@keyframes a3dTri{100%{transform:translateZ(80px) rotateZ(360deg)}}
@media (max-width:991px){.about3d{padding:70px 0 84px}.about3d__grid{grid-template-columns:minmax(0,1fr);gap:50px;margin-top:40px}.a3d{--st:min(440px,calc(100vw - 36px))}.a3d-feat--2{margin-left:0}}
@media (max-width:640px){.about3d__grid{padding:0 18px}.about3d__actions .btn{flex:1 1 100%}}
@media (prefers-reduced-motion:reduce){.a3d__sway,.a3d__ring,.a3d__cube,.a3d__dot,.a3d__diamond,.a3d__tri,.about3d__ticker-track{animation:none}.mega-l{opacity:1;transform:none}}

/* ===== Home About v2: founder arch ===== */
.ab{position:relative;padding:100px 0;background:radial-gradient(ellipse at 15% 50%,rgba(230,192,96,.14),transparent 45%),#fbf8ef;overflow:hidden}
.ab::before{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(184,137,44,.25);box-shadow:0 0 0 40px rgba(184,137,44,.04),0 0 0 80px rgba(184,137,44,.03)}
.ab-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center;position:relative}
.ab-media{position:relative;max-width:440px;margin:0 auto;width:100%;padding:0 30px 40px 0}
.ab-arch{position:relative;aspect-ratio:4/5;border-radius:220px 220px 22px 22px;padding:10px;background:linear-gradient(160deg,#fff3c0,#e6c060 40%,#9d7a2c 75%,#e6c060);box-shadow:0 40px 80px rgba(6,42,26,.25)}
.ab-arch img{width:100%;height:100%;object-fit:cover;object-position:50% 15%;border-radius:210px 210px 14px 14px;display:block}
.ab-arch::after{content:"";position:absolute;inset:-18px;border:1.5px solid rgba(184,137,44,.45);border-radius:240px 240px 30px 30px;pointer-events:none}
.ab-gem{position:absolute;right:0;top:44%;width:38%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:5px solid #fff;box-shadow:0 20px 40px rgba(0,0,0,.25),0 0 0 2px #e6c060;animation:abFloat 5s ease-in-out infinite}
.ab-gem img{width:100%;height:100%;object-fit:cover}
.ab-card{position:absolute;left:-14px;bottom:0;padding:16px 22px;border-radius:16px;background:linear-gradient(135deg,#06402a,#03170d);border-left:4px solid #e6c060;box-shadow:0 20px 40px rgba(3,23,13,.35)}
.ab-card b{display:block;font:700 22px 'Playfair Display',serif;color:#f0c75a}
.ab-card span{font-size:13px;color:#cfd8d2}
.ab-spark{position:absolute;color:#b8892c;animation:abTwinkle 2.6s ease-in-out infinite}
.ab-spark--1{left:-6px;top:12%;font-size:26px}
.ab-spark--2{right:8%;top:6%;font-size:18px;animation-delay:-1.3s}
@keyframes abFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes abTwinkle{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
.ab-eyebrow{display:inline-flex;align-items:center;gap:12px;font:600 14px Poppins,sans-serif;letter-spacing:.25em;text-transform:uppercase;color:#9d7a2c}
.ab-eyebrow::before{content:"";width:40px;height:2px;background:linear-gradient(90deg,#e6c060,#9d7a2c)}
.ab-title{margin:14px 0 18px;font:700 clamp(2rem,3.6vw,3rem)/1.2 'Playfair Display',serif;text-transform:none;letter-spacing:0;color:#06402a}
.ab-title em{font-style:italic;background:linear-gradient(100deg,#b8892c,#e6c060 50%,#9d7a2c);-webkit-background-clip:text;background-clip:text;color:transparent}
.ab-copy>p{font-size:16.5px;line-height:1.85;color:#5d665f;margin-bottom:28px}
.ab-pillars{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:26px}
.ab-pillars>div{display:grid;grid-template-columns:48px 1fr;column-gap:14px;align-items:center;padding:16px;border-radius:14px;background:#fff;border:1px solid #efe6cf;transition:.3s}
.ab-pillars>div:hover{border-color:#e6c060;transform:translateY(-4px);box-shadow:0 14px 30px rgba(184,137,44,.18)}
.ab-pillars i{grid-row:span 2;width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#0a5236,#03170d)}
.ab-pillars svg{width:24px;height:24px;fill:none;stroke:#f0c75a;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ab-pillars b{color:#06402a;font-size:15.5px}
.ab-pillars span{color:#7a837c;font-size:13px}
.ab-quote{margin:0 0 30px;padding:6px 0 6px 20px;border-left:3px solid #e6c060;font:italic 600 19px 'Playfair Display',serif;color:#06402a}
.ab-actions{display:flex;flex-wrap:wrap;gap:14px}
.ab .btn-glow::after{background:#06402a}
@media (max-width:960px){.ab{padding:70px 0}.ab-grid{grid-template-columns:1fr;gap:50px}.ab-media{max-width:380px}}
@media (max-width:600px){.ab-pillars{grid-template-columns:1fr}.ab-card{left:0}.ab-card b{font-size:19px}.ab-actions .btn{flex:1 1 100%}}
@media (prefers-reduced-motion:reduce){.ab-gem,.ab-spark{animation:none}}

/* ===== Student work gallery ===== */
.gal-sec{padding:90px 0;background:#fbf8ef}
.gal-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:30px}
.gal-head .ab-title{margin-bottom:0}
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:16px}
.gal-big{grid-column:span 2;grid-row:span 2}
.gal-page{grid-auto-rows:260px}
.gal-item,.grad-item{position:relative;display:block;overflow:hidden;border-radius:18px;background:#062a1a;box-shadow:0 14px 34px rgba(6,42,26,.15)}
.gal-item img,.grad-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.gal-item::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,rgba(3,23,13,.85));opacity:.7;transition:.4s}
.gal-item:hover img,.grad-item:hover img{transform:scale(1.08)}
.gal-item:hover::after{opacity:1}
.gal-item span{position:absolute;left:18px;right:18px;bottom:16px;z-index:1;color:#fff;font-weight:600;font-size:15px;transform:translateY(6px);transition:.4s}
.gal-item:hover span{transform:none}
.gal-item::before{content:"⤢";position:absolute;top:14px;right:14px;z-index:1;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e6c060;color:#062a1a;font-weight:700;opacity:0;transform:scale(.6);transition:.35s}
.gal-item:hover::before{opacity:1;transform:none}

/* ===== Graduates ===== */
.grad-sec{padding:90px 0;background:linear-gradient(135deg,#031a0f,#06402a 55%,#03170d)}
.grad-sec .sec-head h2{color:#fff}
.grad-sec .sec-head p{color:#b9c9c0}
.grad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grad-item{aspect-ratio:4/3;border:3px solid #e6c060;box-shadow:0 20px 40px rgba(0,0,0,.35)}
.grad-item span{position:absolute;left:12px;bottom:12px;padding:6px 14px;border-radius:30px;background:rgba(3,23,13,.85);color:#f0c75a;font-size:13px;font-weight:600;border:1px solid rgba(230,192,96,.5)}

/* ===== Video reviews ===== */
.rev-sec{padding:90px 0;background:#f4f6f1}
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rev-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 16px 40px rgba(6,42,26,.1);border-bottom:4px solid #e6c060;transition:.3s}
.rev-card:hover{transform:translateY(-6px)}
.rev-thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;background:#000}
.rev-thumb img{width:100%;height:100%;object-fit:cover;opacity:.85}
.rev-play{position:absolute;left:50%;top:50%;width:66px;height:66px;margin:-33px 0 0 -33px;border-radius:50%;display:grid;place-items:center;font-size:24px;padding-left:4px;background:linear-gradient(135deg,#fff3c0,#e6c060);color:#062a1a;animation:ctaPulse 2.2s ease-out infinite}
.rev-body{padding:20px 22px}
.rev-body p{font:italic 16px 'Playfair Display',serif;color:#06402a;margin-bottom:12px}
.rev-body b{display:block;color:#06402a}
.rev-body small{color:var(--muted)}

/* ===== Free demo class ===== */
.demo-sec{padding:90px 0;background:radial-gradient(ellipse at 10% 20%,rgba(230,192,96,.22),transparent 45%),linear-gradient(135deg,#031a0f,#06402a 55%,#03170d);color:#fff}
.demo-grid{display:grid;grid-template-columns:1fr 460px;gap:60px;align-items:center}
.demo-badge{display:inline-block;padding:6px 16px;border-radius:30px;background:#3fe08a;color:#062a1a;font-weight:800;font-size:13px;letter-spacing:.12em;animation:ctaPulse 2.2s ease-out infinite}
.demo-copy h2{margin:16px 0;font:800 clamp(2rem,4vw,3.2rem)/1.15 Poppins,sans-serif;text-transform:none;color:#fff}
.demo-copy h2 span{background:linear-gradient(100deg,#fff3c0,#e6c060 50%,#b8892c);-webkit-background-clip:text;background-clip:text;color:transparent}
.demo-copy>p{color:#c9d6ce;font-size:17px;margin-bottom:20px}
.demo-form{background:#fff;color:var(--text);border-radius:22px;padding:32px;border-top:5px solid #e6c060;box-shadow:0 30px 70px rgba(0,0,0,.4)}
.demo-form h3{font:700 26px Oswald,sans-serif;text-transform:uppercase;color:#06402a;margin-bottom:4px}
.demo-form label{margin:12px 0 6px}
.demo-form .btn{margin-top:20px}
.batch-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.batch-pick.two-opt{grid-template-columns:1fr 1fr}
.batch-pick label{margin:0;cursor:pointer}
.batch-pick input{position:absolute;opacity:0;pointer-events:none}
.batch-pick span{display:block;text-align:center;padding:10px 6px;border:1.5px solid #dfe5dc;border-radius:10px;font-size:13.5px;font-weight:600;color:#06402a;transition:.2s}
.batch-pick input:checked+span{background:#06402a;color:#f0c75a;border-color:#06402a}
.batch-pick input:focus-visible+span{outline:2px solid #e6c060}
.done-tick{width:80px;height:80px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;font-size:40px;color:#fff;background:linear-gradient(135deg,#3fe08a,#0a7a45);animation:ctaPulse 2.2s ease-out infinite}

/* ===== Lightbox ===== */
.lb{position:fixed;inset:0;z-index:100;background:rgba(2,12,7,.92);display:flex;align-items:center;justify-content:center;padding:20px}
.lb[hidden]{display:none}
.lb-in{max-width:min(1000px,100%);text-align:center}
.lb-in img{max-width:100%;max-height:80vh;border-radius:12px;border:3px solid #e6c060;margin:0 auto}
.lb-in p{color:#f0c75a;margin-top:12px;font-weight:600}
.lb-video{width:min(960px,92vw);aspect-ratio:16/9}
.lb-video iframe{width:100%;height:100%;border:0;border-radius:12px}
.lb-x{position:absolute;top:18px;right:22px;width:46px;height:46px;border-radius:50%;border:0;background:#e6c060;color:#062a1a;font-size:20px;font-weight:700;cursor:pointer}

@media (max-width:960px){.gal-grid{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.grad-grid,.rev-grid{grid-template-columns:1fr 1fr}.demo-grid{grid-template-columns:1fr;gap:40px}}
@media (max-width:600px){.gal-grid{grid-auto-rows:150px;gap:10px}.grad-grid,.rev-grid{grid-template-columns:1fr}.demo-form{padding:24px 18px}.batch-pick{grid-template-columns:1fr}}
.batch-pick label{position:relative}.batch-pick input{width:1px;height:1px;left:0;top:0;margin:0}

/* ===== Taekwondo section ===== */
.tkd-sec{padding:90px 0;background:radial-gradient(ellipse at 85% 10%,rgba(30,90,200,.18),transparent 45%),#f4f6f1}
.tkd-head{text-align:center;max-width:680px;margin:0 auto 40px}
.tkd-belt{display:inline-block;padding:7px 18px;border-radius:30px;background:#0d2b6b;color:#fff;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;border-bottom:3px solid #111}
.tkd-head h2{margin:16px 0 10px;font:800 clamp(2rem,4vw,3rem)/1.15 Poppins,sans-serif;text-transform:none;color:#06402a}
.tkd-head h2 em{font-style:normal;background:linear-gradient(100deg,#b8892c,#e6c060 50%,#9d7a2c);-webkit-background-clip:text;background-clip:text;color:transparent}
.tkd-head p{color:var(--muted);font-size:16.5px}
.tkd-grid .grad-item{aspect-ratio:1;border-color:#0d2b6b;box-shadow:0 20px 40px rgba(13,43,107,.2)}
.tkd-grid .grad-item span{background:rgba(13,43,107,.9);color:#fff;border-color:rgba(255,255,255,.3)}

/* Premium "Certified Graduate" badge */
.grad-item .cert-badge{left:50%;right:auto;bottom:14px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:9px;padding:6px 16px 6px 6px;border-radius:40px;white-space:nowrap;overflow:hidden;
  background:linear-gradient(135deg,#fff3c0 0%,#e6c060 35%,#b8892c 70%,#f0d58a 100%);border:1px solid #fff3c0;
  box-shadow:0 8px 22px rgba(0,0,0,.45),0 0 0 3px rgba(6,42,26,.55),inset 0 1px 0 rgba(255,255,255,.7)}
.cert-badge::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.8),transparent);transform:skewX(-20deg);animation:ctaShine 3.5s ease-in-out infinite}
.cert-badge i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#0f6b45,#03170d);box-shadow:inset 0 0 0 1.5px #f0c75a}
.cert-badge svg{width:20px;height:20px;fill:#f0c75a;stroke:none}
.cert-badge svg .ck{fill:none;stroke:#062a1a;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.cert-badge b{font:800 13px Poppins,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#062a1a}
.grad-item:hover .cert-badge{box-shadow:0 10px 26px rgba(0,0,0,.5),0 0 0 3px rgba(240,199,90,.6),0 0 24px rgba(240,199,90,.5)}
@media (max-width:600px){.cert-badge b{font-size:11.5px}.cert-badge i{width:26px;height:26px}}

/* ===== Certificate showcase ===== */
.cert-sec{padding:100px 0;background:radial-gradient(ellipse at 75% 50%,rgba(230,192,96,.25),transparent 55%),#fbf8ef;overflow:hidden}
.cert-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.cert-copy>p{font-size:16.5px;line-height:1.8;color:#5d665f;margin-bottom:24px}
.cert-points{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:30px}
.cert-points li{padding:14px 16px 14px 46px;position:relative;background:#fff;border:1px solid #efe6cf;border-radius:12px}
.cert-points li::before{content:"✓";position:absolute;left:14px;top:15px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:linear-gradient(135deg,#0a5236,#03170d);color:#f0c75a}
.cert-points b{display:block;color:#06402a;font-size:15px}
.cert-points span{color:#7a837c;font-size:13px}
.cert-frame{position:relative;display:block;padding:14px;border-radius:10px;background:linear-gradient(135deg,#3a2a0c,#9d7a2c 30%,#f6dd94 50%,#9d7a2c 70%,#3a2a0c);box-shadow:0 40px 80px rgba(6,42,26,.3),0 0 0 1px #6b5220;transform:perspective(1200px) rotateY(-8deg) rotateX(3deg);transition:transform .6s}
.cert-frame:hover{transform:perspective(1200px) rotateY(0) rotateX(0) scale(1.02)}
.cert-frame img{display:block;width:100%;border:6px solid #062a1a}
.cert-frame::after{content:"";position:absolute;inset:14px;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%);background-size:250% 100%;animation:certShine 5s ease-in-out infinite;pointer-events:none}
@keyframes certShine{0%,60%{background-position:150% 0}100%{background-position:-50% 0}}
.cert-sample{position:absolute;top:-12px;right:24px;padding:6px 16px;border-radius:30px;background:#06402a;color:#f0c75a;font-weight:700;font-size:12px;letter-spacing:.15em;text-transform:uppercase;box-shadow:0 6px 16px rgba(0,0,0,.3)}
@media (max-width:960px){.cert-grid{grid-template-columns:1fr;gap:40px}.cert-frame{transform:none}}
@media (max-width:600px){.cert-points{grid-template-columns:1fr}.cert-frame{padding:8px}.cert-frame::after{inset:8px}.cert-frame img{border-width:3px}}
.ab-title em{padding-right:.12em;margin-right:-.06em}
.ab-title em,.demo-copy h2 span,.tkd-head h2 em{-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-right:.14em}

/* Our Small Hero spotlight */
.hero-kid{padding:100px 0;background:radial-gradient(ellipse at 20% 50%,rgba(230,192,96,.18),transparent 55%),linear-gradient(135deg,#06331d,#0a4a2a);color:#fff;overflow:hidden}
.hk-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center}
.hk-photo{position:relative;display:block;border-radius:24px;padding:10px;background:linear-gradient(135deg,#e6c060,#9d7a2c,#e6c060);box-shadow:0 30px 60px rgba(0,0,0,.35);transform:rotate(-2deg);transition:transform .4s}
.hk-photo:hover{transform:rotate(0) scale(1.02)}
.hk-photo img{border-radius:16px;width:100%;aspect-ratio:1;object-fit:cover}
.hk-tag{position:absolute;top:-14px;right:24px;background:#e6c060;color:#06331d;font:700 13px Poppins,sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:8px 18px;border-radius:30px;box-shadow:0 8px 20px rgba(0,0,0,.3)}
.hk-eyebrow{display:inline-flex;align-items:center;gap:12px;font:600 14px Poppins,sans-serif;letter-spacing:.25em;text-transform:uppercase;color:#e6c060}
.hk-eyebrow::before{content:"";width:40px;height:2px;background:#e6c060}
.hk-copy h2{font-family:Oswald,sans-serif;font-size:clamp(34px,5vw,56px);text-transform:uppercase;color:#fff;margin:14px 0 10px;line-height:1.1}
.hk-copy h2 em{font-style:normal;color:#e6c060}
.hk-name{font:600 22px Poppins,sans-serif;color:#e6c060;margin-bottom:12px}
.hk-copy>p:not(.hk-name){color:rgba(255,255,255,.82);font-size:16px;max-width:520px}
.hk-facts{display:flex;gap:16px;margin:26px 0 30px;flex-wrap:wrap}
.hk-facts div{border:1px solid rgba(230,192,96,.4);border-radius:14px;padding:14px 20px;background:rgba(255,255,255,.05)}
.hk-facts b{display:block;font:600 18px Oswald,sans-serif;color:#fff;letter-spacing:.03em}
.hk-facts span{font-size:13px;color:rgba(255,255,255,.65)}
@media(max-width:860px){.hero-kid{padding:70px 0}.hk-grid{grid-template-columns:1fr;gap:44px}.hk-photo{transform:none;order:2}}

/* CAD vs real jewelry before/after slider */
.ba-sec{padding:100px 0;background:radial-gradient(ellipse at 70% 50%,rgba(22,163,90,.22),transparent 60%),#04140c;color:#fff;overflow:hidden}
.ba-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}
.ba-copy h2{font-family:Oswald,sans-serif;font-size:clamp(34px,5vw,54px);text-transform:uppercase;color:#fff;margin:14px 0 12px;line-height:1.1}
.ba-copy h2 em{font-style:normal;color:#e6c060}
.ba-copy>p{color:rgba(255,255,255,.78);max-width:480px}
.ba-points{list-style:none;margin:26px 0 32px;display:grid;gap:14px}
.ba-points li{padding-left:18px;border-left:2px solid #e6c060}
.ba-points b{display:block;font:600 18px Oswald,sans-serif;letter-spacing:.03em}
.ba-points span{font-size:14px;color:rgba(255,255,255,.65)}
.ba-box{position:relative;aspect-ratio:1;border-radius:22px;overflow:hidden;border:2px solid #c9a24b;box-shadow:0 30px 60px rgba(0,0,0,.5);user-select:none}
.ba-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba-cad{position:absolute;inset:0;background:#03100a;clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.ba-cad::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(63,224,138,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(63,224,138,.08) 1px,transparent 1px);background-size:32px 32px}
.ba-cad img{filter:url(#baCad)}
.ba-handle{position:absolute;top:0;bottom:0;left:var(--p);width:3px;margin-left:-1.5px;background:#e6c060;pointer-events:none}
.ba-handle i{position:absolute;top:50%;left:50%;width:48px;height:48px;margin:-24px;border-radius:50%;background:#e6c060;color:#04140c;display:grid;place-items:center;font-style:normal;font-size:22px;font-weight:700;box-shadow:0 6px 20px rgba(0,0,0,.4)}
.ba-box input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.ba-lbl{position:absolute;top:18px;font:600 12px Poppins,sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:7px 14px;border-radius:30px;background:rgba(4,20,12,.8);pointer-events:none}
.ba-l{left:18px;color:#3fe08a;border:1px solid #3fe08a}
.ba-r{right:18px;color:#e6c060;border:1px solid #e6c060}
@media(max-width:860px){.ba-sec{padding:70px 0}.ba-grid{grid-template-columns:1fr;gap:40px}}

/* Giant brand wordmark at the very end of the footer */
.foot-mark{font:700 clamp(70px,19vw,300px)/.8 Oswald,sans-serif;text-align:center;letter-spacing:.02em;white-space:nowrap;overflow:hidden;padding-top:20px;margin-bottom:-.06em;background:linear-gradient(180deg,#e6c060 0%,#9d7a2c 55%,rgba(157,122,44,0) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none}

/* Gold seal trust section */
.seal-sec{padding:100px 0;background:radial-gradient(circle at 50% 58%,rgba(230,192,96,.35),transparent 40%),#fbf8ef;overflow:hidden}
.seal-head{text-align:center;margin-bottom:50px}
.seal-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:50px;align-items:center}
.seal-col{display:grid;gap:26px}
.seal-col:first-child{text-align:right}
.seal-pt{padding:22px 24px;background:#fff;border-radius:16px;border:1px solid rgba(201,162,75,.3);box-shadow:0 12px 30px rgba(157,122,44,.1);transition:transform .3s,box-shadow .3s}
.seal-pt:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(157,122,44,.2)}
.seal-pt b{display:block;font:600 20px Oswald,sans-serif;color:#06331d;text-transform:uppercase;letter-spacing:.03em}
.seal-pt span{font-size:14px;color:#6b6b72}
.seal-stage{position:relative;width:380px;height:380px;display:grid;place-items:center}
.seal-stage img{width:290px;height:290px;object-fit:contain;position:relative;animation:sealFloat 4s ease-in-out infinite;filter:drop-shadow(0 18px 24px rgba(157,122,44,.35))}
.seal-ring{position:absolute;inset:0;border-radius:50%;border:2px dashed rgba(157,122,44,.55);animation:sealSpin 30s linear infinite}
.seal-ring.r2{inset:22px;border:1px solid rgba(201,162,75,.4);animation-direction:reverse;animation-duration:45s}
@keyframes sealSpin{to{transform:rotate(360deg)}}
@keyframes sealFloat{50%{transform:translateY(-10px) rotate(-3deg)}}
@media(max-width:900px){.seal-sec{padding:70px 0}.seal-grid{grid-template-columns:1fr;gap:30px}.seal-stage{margin:0 auto;order:-1;width:300px;height:300px}.seal-stage img{width:230px;height:230px}.seal-col:first-child{text-align:left}}
@media(prefers-reduced-motion:reduce){.seal-stage img,.seal-ring{animation:none}}


/* Standalone premium login page */
.lg-body{min-height:100vh;background:radial-gradient(ellipse at 80% 20%,rgba(230,192,96,.18),transparent 50%),linear-gradient(135deg,#06331d,#03140c);display:grid;place-items:center;padding:24px}
.lg-wrap{width:100%;max-width:1000px;display:grid;grid-template-columns:1fr 1fr;border-radius:26px;overflow:hidden;background:#fbf8ef;box-shadow:0 40px 90px rgba(0,0,0,.5);border:1px solid rgba(230,192,96,.45)}
.lg-art{position:relative;min-height:600px}
.lg-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lg-art-in{position:absolute;inset:0;padding:36px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(180deg,rgba(3,20,12,.35),rgba(3,20,12,.92));color:#fff}
.lg-back{align-self:flex-start;font-size:14px;color:#e6c060;border:1px solid rgba(230,192,96,.5);padding:8px 16px;border-radius:30px;transition:background .3s}
.lg-back:hover{background:rgba(230,192,96,.15)}
.lg-art h2{font-family:Oswald,sans-serif;font-size:40px;text-transform:uppercase;color:#fff;line-height:1.1;margin:12px 0}
.lg-art h2 em{font-style:normal;color:#e6c060}
.lg-art p{color:rgba(255,255,255,.75);font-size:15px}
.lg-form{padding:48px 46px;display:flex;flex-direction:column}
.lg-logo{align-self:center;margin-bottom:18px}
.lg-logo img{height:84px;width:auto}
.lg-form h1{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:34px;color:#06331d;text-align:center}
.lg-sub{text-align:center;color:#7a7a85;margin-bottom:24px}
.lg-form .alert{margin-bottom:16px}
.lg-form label{font-weight:600;font-size:14px;color:#06331d;margin-bottom:6px}
.lg-field{position:relative;margin-bottom:18px}
.lg-field input{width:100%;padding:14px 16px;border:1.5px solid #e4dcc6;border-radius:12px;background:#fff;font:15px Poppins,sans-serif;transition:border-color .2s,box-shadow .2s}
.lg-field input:focus{outline:0;border-color:#c9a24b;box-shadow:0 0 0 4px rgba(201,162,75,.18)}
.lg-field input#lg-pass{padding-right:52px}
.lg-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;background:none;cursor:pointer;border-radius:8px;display:grid;place-items:center;color:#9d7a2c}
.lg-eye:hover{background:rgba(201,162,75,.12)}
.lg-eye svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.lg-eye .lg-slash{display:none}
.lg-eye[aria-pressed="true"] .lg-slash{display:inline}
.lg-forgot{align-self:flex-end;font-size:13px;color:#9d7a2c;margin:-8px 0 20px}
.lg-forgot:hover{text-decoration:underline}
.lg-alt{text-align:center;margin-top:20px;font-size:14px;color:#6b6b72}
.lg-alt a{color:#06331d;font-weight:600;border-bottom:1.5px solid #c9a24b}
@media(max-width:820px){.lg-wrap{grid-template-columns:1fr;max-width:460px}.lg-art{min-height:200px}.lg-art-in{padding:22px}.lg-art h2{font-size:26px}.lg-art p{display:none}.lg-form{padding:34px 26px}}

/* About section Get Admission: keep the gold fill on hover so the text stays readable */
.ab .btn-glow:hover::after{background:linear-gradient(135deg,#f6dd94,#e6c060 50%,#b8892c)}

/* Courses page: syllabus, process, audience, FAQ, CTA */
.cs-sec{padding:90px 0}
.cs-dark{background:radial-gradient(ellipse at 80% 0,rgba(230,192,96,.15),transparent 50%),linear-gradient(135deg,#06331d,#03140c);color:#fff}
.cs-cream{background:#fbf8ef}
.cs-head{text-align:center;margin-bottom:46px}
.cs-head h2{font-family:Oswald,sans-serif;font-size:clamp(32px,4.5vw,48px);text-transform:uppercase;margin-top:12px}
.cs-dark .cs-head h2{color:#fff}
.cs-head h2 em{font-style:normal;color:#e6c060}
.cs-mods{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cs-mod{padding:30px 26px;border:1px solid rgba(230,192,96,.25);border-radius:18px;background:rgba(255,255,255,.04);transition:transform .3s,border-color .3s}
.cs-mod:hover{transform:translateY(-6px);border-color:#e6c060}
.cs-mod b{font:700 38px Oswald,sans-serif;color:transparent;-webkit-text-stroke:1.5px #e6c060}
.cs-mod h3{font-family:Oswald,sans-serif;text-transform:uppercase;color:#fff;font-size:21px;margin:8px 0}
.cs-mod p{color:rgba(255,255,255,.7);font-size:14.5px}
.cs-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative}
.cs-step{text-align:center;padding:30px 20px;background:#fff;border-radius:18px;box-shadow:0 14px 34px rgba(6,51,29,.08);border-top:3px solid #c9a24b}
.cs-step span{width:56px;height:56px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#e6c060,#9d7a2c);color:#06331d;font:700 24px Oswald,sans-serif}
.cs-step h3{font-family:Oswald,sans-serif;text-transform:uppercase;color:#06331d;font-size:20px;margin-bottom:6px}
.cs-step p{font-size:14px;color:#6b6b72}
.cs-two{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.cs-for{list-style:none;margin-top:24px;display:grid;gap:14px}
.cs-for li{position:relative;padding-left:34px;font-size:16px}
.cs-for li::before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:#06331d;color:#e6c060;display:grid;place-items:center;font-size:13px;font-weight:700}
.cs-info{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cs-info div{padding:24px 20px;border-radius:16px;background:linear-gradient(135deg,#06331d,#0a4a2a);color:#fff}
.cs-info b{display:block;font:600 21px Oswald,sans-serif;color:#e6c060;text-transform:uppercase}
.cs-info span{font-size:13.5px;color:rgba(255,255,255,.75)}
.cs-faq-wrap{max-width:820px}
.cs-faq{background:#fff;border:1px solid #ece4cf;border-radius:14px;margin-bottom:12px;overflow:hidden}
.cs-faq summary{cursor:pointer;list-style:none;padding:18px 54px 18px 22px;font-weight:600;color:#06331d;position:relative}
.cs-faq summary::-webkit-details-marker{display:none}
.cs-faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:#e6c060;color:#06331d;display:grid;place-items:center;font-size:18px;transition:transform .3s}
.cs-faq[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.cs-faq p{padding:0 22px 20px;color:#6b6b72}
.cs-cta{padding:80px 0;text-align:center;background:radial-gradient(ellipse at 50% 0,rgba(230,192,96,.25),transparent 60%),#04140c;color:#fff}
.cs-cta h2{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:clamp(30px,4.5vw,46px);color:#fff}
.cs-cta h2 em{font-style:normal;color:#e6c060}
.cs-cta p{color:rgba(255,255,255,.75);margin:10px 0 28px}
@media(max-width:900px){.cs-sec{padding:64px 0}.cs-mods{grid-template-columns:1fr 1fr}.cs-steps{grid-template-columns:1fr 1fr}.cs-two{grid-template-columns:1fr;gap:36px}}
@media(max-width:560px){.cs-mods,.cs-steps,.cs-info{grid-template-columns:1fr}}

/* About page graduates slider */
.gs{position:relative}
.gs-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 14px}
.gs-track::-webkit-scrollbar{display:none}
.gs-slide{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start;margin:0;position:relative;border-radius:18px;overflow:hidden;border:3px solid #c9a24b;box-shadow:0 14px 30px rgba(6,51,29,.15)}
.gs-slide img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .5s}
.gs-slide:hover img{transform:scale(1.05)}
.gs-slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px 14px 12px;background:linear-gradient(transparent,rgba(3,20,12,.85));color:#fff;font-size:14px;font-weight:600}
.gs-nav{position:absolute;top:calc(50% - 4px);transform:translateY(-50%);z-index:2;width:48px;height:48px;border-radius:50%;border:0;cursor:pointer;background:linear-gradient(135deg,#e6c060,#9d7a2c);color:#06331d;font-size:30px;line-height:1;box-shadow:0 8px 20px rgba(0,0,0,.25)}
.gs-prev{left:-22px}.gs-next{right:-22px}
.gs-nav:hover{filter:brightness(1.1)}
@media(max-width:860px){.gs-slide{flex-basis:calc((100% - 20px)/2)}.gs-prev{left:4px}.gs-next{right:4px}}
@media(max-width:520px){.gs-slide{flex-basis:85%}}

/* WhatsApp chat popup */
.wa-pop{position:fixed;right:24px;bottom:100px;z-index:999;width:340px;max-width:calc(100vw - 32px);border-radius:18px;overflow:hidden;background:#efe7dc;box-shadow:0 24px 60px rgba(0,0,0,.35);animation:waIn .3s ease}
.wa-pop[hidden]{display:none}
@keyframes waIn{from{opacity:0;transform:translateY(16px) scale(.96)}}
.wa-pop-head{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#06331d,#0a4a2a);color:#fff;border-bottom:2px solid #c9a24b}
.wa-pop-head img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #e6c060}
.wa-pop-head div{flex:1}
.wa-pop-head b{display:block;font-size:15px}
.wa-pop-head small{font-size:12px;color:rgba(255,255,255,.75);display:flex;align-items:center;gap:6px}
.wa-dot{width:8px;height:8px;border-radius:50%;background:#25d366}
.wa-x{background:none;border:0;color:#fff;font-size:18px;cursor:pointer;opacity:.8}
.wa-x:hover{opacity:1}
.wa-pop-body{padding:18px 16px;display:grid;gap:8px}
.wa-bubble{background:#fff;padding:12px 14px;border-radius:0 12px 12px 12px;font-size:14px;color:#2a2a2e;box-shadow:0 1px 2px rgba(0,0,0,.1);margin-bottom:6px}
.wa-q{justify-self:end;background:#dcf8c6;color:#06331d;font-size:13.5px;padding:8px 14px;border-radius:12px 12px 0 12px;border:1px solid #b9e6a0;transition:background .2s}
.wa-q:hover{background:#c8f0ad}
.wa-start{display:block;margin:0 16px 16px;text-align:center;padding:13px;border-radius:12px;background:#25d366;color:#fff;font-weight:600;transition:background .2s}
.wa-start:hover{background:#1ebe5a}

/* Contact page large map */
.cmap{padding:80px 0;background:#fbf8ef}
.cmap-box{position:relative;border-radius:24px;overflow:hidden;border:3px solid #c9a24b;box-shadow:0 24px 60px rgba(6,51,29,.18)}
.cmap-box iframe{display:block;width:100%;height:560px;border:0}
.cmap-card{position:absolute;left:28px;bottom:28px;max-width:360px;padding:24px;border-radius:18px;background:linear-gradient(135deg,#06331d,#0a4a2a);color:#fff;border:1px solid rgba(230,192,96,.5);box-shadow:0 16px 40px rgba(0,0,0,.35)}
.cmap-card b{font:600 20px Oswald,sans-serif;text-transform:uppercase;color:#e6c060;display:block}
.cmap-card p{font-size:14px;color:rgba(255,255,255,.8);margin:8px 0 18px}
@media(max-width:700px){.cmap{padding:56px 0}.cmap-box iframe{height:380px}.cmap-card{position:static;max-width:none;border-radius:0}}

/* Payment account cards with brand logos and copy buttons */
.pc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px;margin-top:6px}
.pc-card{border-radius:18px;background:#fff;border:1px solid #ece4cf;box-shadow:0 14px 34px rgba(6,51,29,.08);overflow:hidden}
.pc-head{display:flex;align-items:center;gap:16px;padding:18px 22px;background:linear-gradient(135deg,#06331d,#0a4a2a);border-bottom:3px solid #c9a24b}
.pc-head h3{font:600 20px Oswald,sans-serif;text-transform:uppercase;color:#fff;letter-spacing:.02em}
.pc-logos{display:flex;gap:8px}
.pc-logos img{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:12px;padding:5px}
.pc-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;padding:14px 22px;border-bottom:1px dashed #ece4cf}
.pc-row:last-child{border-bottom:0}
.pc-row span{grid-column:1;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#9d7a2c;font-weight:600}
.pc-row b{grid-column:1;font-size:16.5px;color:#06331d;font-weight:600;word-break:break-word}
.pc-copy{grid-column:2;grid-row:1/3;border:1px solid #c9a24b;background:#fbf8ef;color:#06331d;font:600 12.5px Poppins,sans-serif;padding:7px 14px;border-radius:30px;cursor:pointer;transition:background .2s}
.pc-copy:hover{background:#e6c060}

/* Login form on black so the black logo blends in */
.lg-wrap{background:#000}
.lg-form{background:#000}
.lg-form h1{color:#fff}
.lg-sub{color:rgba(255,255,255,.6)}
.lg-form label{color:#e6c060}
.lg-field input{background:#111;border-color:#2c2c33;color:#fff}
.lg-field input::placeholder{color:#6b6b72}
.lg-eye{color:#e6c060}
.lg-forgot{color:#e6c060}
.lg-alt{color:rgba(255,255,255,.6)}
.lg-alt a{color:#fff}

/* WhatsApp popup: send icons on quick replies and a type-and-send box */
.wa-q{display:flex;align-items:center;gap:10px}
.wa-send-ic{width:24px;height:24px;border-radius:50%;background:#25d366;display:grid;place-items:center;flex:none}
.wa-send-ic svg,.wa-type button svg{width:13px;height:13px;fill:#fff}
.wa-type{display:flex;gap:8px;padding:10px 12px 14px;background:#efe7dc}
.wa-type input{flex:1;min-width:0;border:0;border-radius:24px;padding:12px 16px;font:14px Poppins,sans-serif;background:#fff;outline:0}
.wa-type input:focus{box-shadow:0 0 0 2px #25d366}
.wa-type button{width:46px;height:46px;flex:none;border:0;border-radius:50%;background:#25d366;cursor:pointer;display:grid;place-items:center;transition:background .2s}
.wa-type button:hover{background:#1ebe5a}
.wa-type button svg{width:20px;height:20px}

/* WhatsApp popup opening: springs out of the button, "typing..." then messages appear one by one */
.wa-pop{transform-origin:bottom right;animation:waPopIn .55s cubic-bezier(.34,1.56,.64,1)}
@keyframes waPopIn{0%{opacity:0;transform:translate(20px,40px) scale(.2);border-radius:50%}60%{opacity:1}100%{transform:none;border-radius:18px}}
.wa-pop-head{animation:waFade .4s .2s both}
.wa-typing{display:inline-flex;gap:4px;justify-self:start;background:#fff;padding:12px 14px;border-radius:0 12px 12px 12px;animation:waTyping 1.1s .35s both}
.wa-typing i{width:7px;height:7px;border-radius:50%;background:#9aa;animation:waDot 1s infinite}
.wa-typing i:nth-child(2){animation-delay:.15s}.wa-typing i:nth-child(3){animation-delay:.3s}
@keyframes waDot{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-4px);opacity:1}}
@keyframes waTyping{0%{opacity:0;transform:scale(.6)}15%,85%{opacity:1;transform:none}100%{opacity:0;height:0;padding:0;margin:0;transform:scale(.6)}}
.wa-pop-body{grid-template-rows:auto}
.wa-bubble{animation:waMsg .45s 1.45s both}
.wa-q{animation:waMsg .4s both}
.wa-q:nth-of-type(1){animation-delay:1.8s}.wa-q:nth-of-type(2){animation-delay:1.95s}.wa-q:nth-of-type(3){animation-delay:2.1s}
.wa-type{animation:waFade .4s 2.3s both}
@keyframes waMsg{from{opacity:0;transform:translateY(12px) scale(.95)}}
@keyframes waFade{from{opacity:0}}
.wa-float{transition:transform .3s}
.wa-float:hover{transform:scale(1.08) rotate(-8deg)}
@media(prefers-reduced-motion:reduce){.wa-pop,.wa-pop *{animation:none!important}.wa-typing{display:none}}

/* Popup opens simply (no grow/shrink); only the typing dots and messages animate */
.wa-pop{animation:waFade .2s ease}
.wa-pop-head{animation:none}

/* WhatsApp popup: compact on phones */
@media(max-width:600px){
  .wa-pop{width:290px;right:14px;bottom:84px;border-radius:14px}
  .wa-pop-head{padding:10px 12px;gap:10px}
  .wa-pop-head img{width:36px;height:36px}
  .wa-pop-head b{font-size:13.5px}
  .wa-pop-head small{font-size:11px}
  .wa-pop-body{padding:12px 10px;gap:6px}
  .wa-bubble{font-size:12.5px;padding:9px 11px;margin-bottom:2px}
  .wa-q{font-size:12px;padding:6px 10px;gap:8px}
  .wa-send-ic{width:20px;height:20px}
  .wa-send-ic svg{width:11px;height:11px}
  .wa-type{padding:8px 10px 10px}
  .wa-type input{padding:9px 13px;font-size:13px}
  .wa-type button{width:38px;height:38px}
  .wa-type button svg{width:16px;height:16px}
}

/* WhatsApp button: pulsing rings and a small "ring" shake every few seconds */
.wa-float{isolation:isolate}
.wa-float::before,.wa-float::after{content:"";position:absolute;inset:0;border-radius:50%;background:#25d366;z-index:-1;animation:waPulse 2.2s ease-out infinite}
.wa-float::after{animation-delay:1.1s}
@keyframes waPulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.9);opacity:0}}
.wa-float svg{animation:waShake 4s ease-in-out infinite}
@keyframes waShake{0%,82%,100%{transform:none}85%{transform:rotate(-14deg)}88%{transform:rotate(12deg)}91%{transform:rotate(-10deg)}94%{transform:rotate(6deg)}}
@media(prefers-reduced-motion:reduce){.wa-float::before,.wa-float::after,.wa-float svg{animation:none}}

/* Home About photo: square gold frame that shows the whole photo, with an offset gold outline and corner accents */
.ab-media{max-width:480px;padding:22px 22px 56px 22px}
.ab-arch{aspect-ratio:1;border-radius:26px;padding:8px;background:linear-gradient(135deg,#fff3c0,#e6c060 35%,#9d7a2c 70%,#e6c060);transform:rotate(-2deg);transition:transform .5s}
.ab-media:hover .ab-arch{transform:rotate(0)}
.ab-arch img{object-fit:contain;object-position:center;border-radius:19px;background:#06331d}
.ab-arch::after{inset:-16px 16px 16px -16px;border:2px solid rgba(184,137,44,.55);border-radius:30px;z-index:-1;transform:rotate(4deg)}
.ab-arch::before{content:"";position:absolute;inset:-22px;border-radius:40px;background:radial-gradient(circle at 30% 20%,rgba(230,192,96,.35),transparent 60%);z-index:-2}

/* Home About photo as a certificate frame: green mat, gold rules, ornate corners and a gold seal */
.ab-media{padding:10px 10px 56px}
.ab-arch{transform:none!important;border-radius:6px;padding:22px;background:linear-gradient(135deg,#0a4a2a,#04140c);box-shadow:0 30px 60px rgba(6,42,26,.3),inset 0 0 0 3px #c9a24b}
.ab-arch::before{content:"";position:absolute;inset:10px;border:1.5px solid rgba(230,192,96,.7);border-radius:3px;background:none;z-index:0}
.ab-arch::after{display:none}
.ab-arch img:not(.ab-seal){position:relative;z-index:1;border-radius:2px;border:3px solid #e6c060;background:#04140c}
.ab-cn{position:absolute;z-index:2;width:34px;height:34px;border:3px solid #e6c060}
.ab-cn::after{content:"";position:absolute;width:8px;height:8px;background:#e6c060;transform:rotate(45deg)}
.ab-cn.tl{top:4px;left:4px;border-right:0;border-bottom:0;border-radius:10px 0 0 0}.ab-cn.tl::after{top:5px;left:5px}
.ab-cn.tr{top:4px;right:4px;border-left:0;border-bottom:0;border-radius:0 10px 0 0}.ab-cn.tr::after{top:5px;right:5px}
.ab-cn.bl{bottom:4px;left:4px;border-right:0;border-top:0;border-radius:0 0 0 10px}.ab-cn.bl::after{bottom:5px;left:5px}
.ab-cn.br{bottom:4px;right:4px;border-left:0;border-top:0;border-radius:0 0 10px 0}.ab-cn.br::after{bottom:5px;right:5px}
.ab-arch .ab-seal{position:absolute;z-index:3;right:-26px;bottom:-26px;width:104px;height:104px;border:0;background:none;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(0,0,0,.35));animation:sealFloat 4s ease-in-out infinite}
@media(max-width:600px){.ab-arch{padding:16px}.ab-arch .ab-seal{width:78px;height:78px;right:-12px;bottom:-14px}}

/* Sharper lesson video: YouTube picks quality from the iframe's real pixel size,
   so render it 3x larger and scale it down (keeps the 2x-height crop that hides YouTube branding) */
.video .plyr--youtube .plyr__video-embed iframe{width:300%;height:600%;top:-50%;left:0;transform:scale(.3333);transform-origin:0 0}

/* Lesson: switch to YouTube's own player for HD quality selection */
.video .yt-hd{position:absolute;inset:0;width:100%;height:100%;border:0}
.hd-row{margin:14px 0 6px}
.hd-badge{display:inline-block;background:#e6c060;color:#06331d;font-size:11px;padding:1px 6px;border-radius:4px;margin-right:6px}
.hd-tip{margin-top:10px;padding:12px 16px;border-radius:10px;background:#fbf3d9;border-left:3px solid #c9a24b;font-size:14px;color:#3a3a3a}

/* Text badge for banks without a logo file */
.pc-badge{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;background:#fff;color:#0a3d91;font:800 15px Poppins,sans-serif;letter-spacing:.02em;border:2px solid #0a3d91}

/* Logo preloader */
.pre{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;background:radial-gradient(circle at 50% 45%,#111 0,#000 60%);transition:opacity .6s,visibility .6s}
.pre.done{opacity:0;visibility:hidden}
.pre-in{position:relative;width:190px;height:190px;display:grid;place-items:center}
.pre-in img{width:150px;height:150px;object-fit:contain;border-radius:22px;animation:preLogo 1.8s cubic-bezier(.22,1,.36,1) both,preGlow 2s 1.2s ease-in-out infinite}
.pre-ring{position:absolute;inset:0;border-radius:50%;border:3px solid transparent;border-top-color:#e6c060;border-right-color:rgba(230,192,96,.35);animation:preSpin 1.1s linear infinite}
.pre-bar{width:160px;height:3px;border-radius:3px;background:rgba(230,192,96,.2);overflow:hidden}
.pre-bar i{display:block;height:100%;width:40%;background:linear-gradient(90deg,transparent,#e6c060,transparent);animation:preBar 1.2s ease-in-out infinite}
@keyframes preLogo{0%{opacity:0;transform:scale(.4) rotate(-12deg);filter:blur(8px)}60%{opacity:1;transform:scale(1.08) rotate(2deg);filter:blur(0)}100%{transform:none}}
@keyframes preGlow{50%{filter:drop-shadow(0 0 18px rgba(230,192,96,.55))}}
@keyframes preSpin{to{transform:rotate(360deg)}}
@keyframes preBar{0%{transform:translateX(-100%)}100%{transform:translateX(250%)}}
@media(prefers-reduced-motion:reduce){.pre-in img,.pre-ring,.pre-bar i{animation:none}}

/* Preloader: pure black so the logo's black background merges; only a gold line moves under the logo */
.pre{background:#000;gap:26px}
.pre-ring{display:none}
.pre-in{width:auto;height:auto}
.pre-in img{width:190px;height:190px;border-radius:0;animation:preLogo 1.4s cubic-bezier(.22,1,.36,1) both}
.pre-bar{width:190px;height:2px;background:rgba(230,192,96,.15)}
.pre-bar i{width:45%;background:linear-gradient(90deg,transparent,#f6dc8a,#e6c060,transparent);animation:preBar 1.3s ease-in-out infinite}
@keyframes preLogo{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}

/* Preloader logo keeps gently zooming in and out after it appears */
.pre-in img{animation:preLogo 1.2s cubic-bezier(.22,1,.36,1) both,preZoom 2.2s 1.2s ease-in-out infinite}
@keyframes preZoom{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}

/* Testimonials: bento grid, featured first card, no slider */
.ts-sec{padding:100px 0;background:radial-gradient(ellipse at 10% 0,rgba(230,192,96,.18),transparent 45%),#fbf8ef}
.ts-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:44px}
.ts-score{display:flex;align-items:center;gap:14px;padding:14px 22px;border-radius:18px;background:#fff;border:1px solid #ece4cf;box-shadow:0 10px 26px rgba(6,51,29,.07)}
.ts-score b{font:700 44px Oswald,sans-serif;color:#06331d;line-height:1}
.ts-score small{display:block;font-size:12.5px;color:#7a7a85}
.ts-stars{color:#e6b93a;letter-spacing:2px;font-size:16px}
.ts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
.ts-card{position:relative;margin:0;padding:30px 28px 24px;border-radius:22px;background:#fff;border:1px solid #ece4cf;box-shadow:0 14px 34px rgba(6,51,29,.07);display:flex;flex-direction:column;gap:14px;transition:transform .35s,box-shadow .35s,border-color .35s;overflow:hidden}
.ts-card::after{content:"";position:absolute;left:0;top:0;height:4px;width:0;background:linear-gradient(90deg,#e6c060,#9d7a2c);transition:width .5s}
.ts-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(6,51,29,.14);border-color:#e6c060}
.ts-card:hover::after{width:100%}
.ts-q{position:absolute;top:-18px;right:18px;font:700 130px/1 'Playfair Display',serif;color:rgba(201,162,75,.16);pointer-events:none}
.ts-card blockquote{margin:0;font-size:15.5px;line-height:1.75;color:#3a3a3a;position:relative}
.ts-card figcaption{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:16px;border-top:1px dashed #ece4cf}
.ts-card figcaption img,.ts-av{width:48px;height:48px;flex:none;border-radius:50%;object-fit:cover;border:2px solid #e6c060}
.ts-av{display:grid;place-items:center;font:700 20px Oswald,sans-serif;color:#06331d;background:linear-gradient(135deg,#f6dc8a,#c9a24b)}
.ts-card figcaption div{flex:1;min-width:0}
.ts-card figcaption b{display:block;color:#06331d}
.ts-card figcaption small{color:#9d7a2c;font-size:12.5px}
.ts-verified{width:22px;height:22px;flex:none;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:700;color:#fff;background:#1f9d55}
.ts-feat{grid-row:span 2;background:radial-gradient(ellipse at 100% 0,rgba(230,192,96,.3),transparent 55%),linear-gradient(160deg,#06331d,#03140c);border-color:#c9a24b;padding:40px 34px 30px}
.ts-feat .ts-q{color:rgba(230,192,96,.25);font-size:180px}
.ts-feat blockquote{color:#fff;font-size:19px;line-height:1.7;font-family:'Playfair Display',serif;font-style:italic}
.ts-feat figcaption{border-top-color:rgba(230,192,96,.3)}
.ts-feat figcaption b{color:#fff}
.ts-feat figcaption small{color:#e6c060}
@media(max-width:960px){.ts-sec{padding:70px 0}.ts-grid{grid-template-columns:1fr 1fr}.ts-feat{grid-column:span 2;grid-row:auto}}
@media(max-width:600px){.ts-grid{grid-template-columns:1fr}.ts-feat{grid-column:auto}}

/* Testimonials empty state: one wide invite card */
.ts-empty{grid-column:1/-1;grid-row:auto;align-items:flex-start;text-align:left}
.ts-empty blockquote{max-width:720px}

/* Clearly marks demo testimonials */
.ts-sample{position:absolute;top:16px;left:50%;transform:translateX(-50%);z-index:2;background:#e67e22;color:#fff;font:700 11px Poppins,sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:4px 12px;border-radius:20px}
.ts-card:has(.ts-sample){padding-top:46px}

/* Testimonials v2: dark split layout, intro on the left, staggered glass cards on the right */
.ts-sec{padding:110px 0;background:radial-gradient(ellipse at 0 0,rgba(230,192,96,.18),transparent 45%),radial-gradient(ellipse at 100% 100%,rgba(22,163,90,.25),transparent 50%),#03140c;color:#fff;overflow:hidden}
.ts-sec>.wrap{display:grid;grid-template-columns:.85fr 1.4fr;gap:60px;align-items:start}
.ts-head{position:sticky;top:110px;flex-direction:column;align-items:flex-start;margin:0}
.ts-head .ab-title{color:#fff;font-size:clamp(36px,4.4vw,54px)}
.ts-head .ab-eyebrow{color:#e6c060}
.ts-lead{color:rgba(255,255,255,.7);margin:14px 0 26px;max-width:380px}
.ts-cta{margin-bottom:26px}
.ts-score{background:rgba(255,255,255,.05);border-color:rgba(230,192,96,.3);box-shadow:none}
.ts-score b{color:#fff}.ts-score small{color:rgba(255,255,255,.6)}
.ts-grid{grid-template-columns:1fr 1fr;gap:22px}
.ts-grid>.ts-card:nth-child(even){transform:translateY(48px)}
.ts-card,.ts-feat{grid-row:auto;grid-column:auto;background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(230,192,96,.22);box-shadow:0 20px 50px rgba(0,0,0,.3);padding:34px 28px 24px;backdrop-filter:blur(6px)}
.ts-grid>.ts-card:hover{transform:translateY(-6px);border-color:#e6c060}
.ts-grid>.ts-card:nth-child(even):hover{transform:translateY(42px)}
.ts-card::after{background:linear-gradient(90deg,#e6c060,transparent)}
.ts-card .ts-q,.ts-feat .ts-q{position:static;display:block;font-size:70px;line-height:.6;height:30px;color:#e6c060}
.ts-card blockquote,.ts-feat blockquote{color:rgba(255,255,255,.88);font:italic 16px/1.75 'Playfair Display',serif}
.ts-card figcaption,.ts-feat figcaption{border-top-color:rgba(230,192,96,.2)}
.ts-card figcaption b,.ts-feat figcaption b{color:#fff}
.ts-card figcaption small,.ts-feat figcaption small{color:#e6c060}
.ts-sample{top:14px;left:auto;right:16px;transform:none}
.ts-empty{grid-column:1/-1}
@media(max-width:960px){.ts-sec{padding:72px 0}.ts-sec>.wrap{grid-template-columns:1fr;gap:36px}.ts-head{position:static}}
@media(max-width:600px){.ts-grid{grid-template-columns:1fr}.ts-grid>.ts-card:nth-child(even){transform:none}.ts-grid>.ts-card:nth-child(even):hover{transform:translateY(-6px)}}

/* Verified tag sits where the SAMPLE tag was */
.ts-sample.ts-ver{background:#1f9d55}

/* Verified tag: green check circle + green word, no pill */
.ts-sample.ts-ver{background:none;padding:0;display:inline-flex;align-items:center;gap:7px;color:#2ecc71;font:500 15px Poppins,sans-serif;letter-spacing:0;text-transform:none}
.ts-ver i{width:18px;height:18px;border-radius:50%;background:#2ecc71;color:#03140c;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:800}
