/* KIFLAPS visual enhancement layer — loaded after each page's own styles */
:root{
  --green:#1f4a38; --green-dark:#10291f; --gold:#d4a24a; --gold-soft:#f1dba8;
  --cream:#faf5ec; --cream-2:#f2e9d8; --ink:#1b1f1c; --muted:#66705f;
  --radius:18px; --radius-lg:28px;
  --shadow-sm:0 6px 18px rgba(16,41,31,.08);
  --shadow-md:0 18px 44px rgba(16,41,31,.14);
  --shadow-lg:0 32px 70px rgba(16,41,31,.22);
  --ease:cubic-bezier(.22,.8,.3,1);
}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  background:var(--cream)!important;color:var(--ink);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
::selection{background:var(--gold);color:var(--green-dark)}
h1,h2,h3,h4{font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:700!important;letter-spacing:-.015em!important;line-height:1.05}

/* ---------- Header ---------- */
.site-header{
  position:fixed!important;transition:background .35s var(--ease),padding .35s var(--ease),box-shadow .35s var(--ease),backdrop-filter .35s;
  background:linear-gradient(to bottom,rgba(8,24,17,.72),rgba(8,24,17,0))!important;
}
.site-header.scrolled{
  background:rgba(16,41,31,.88)!important;backdrop-filter:blur(14px) saturate(1.4);
  -webkit-backdrop-filter:blur(14px) saturate(1.4);padding-top:.55rem!important;padding-bottom:.55rem!important;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.site-header .brand-mark{width:50px!important;height:50px!important;background:#fff;border-radius:50%;padding:3px;transition:transform .4s var(--ease)}
.site-header .logo:hover .brand-mark{transform:rotate(-8deg) scale(1.06)}
.site-header .logo-content strong{font-family:'Cormorant Garamond',serif;font-size:1.55rem;letter-spacing:.01em}
.menu>a,.menu .dropdown>a{position:relative;font-weight:600;letter-spacing:.1em}
.menu>a:not(.header-btn)::after,.menu .dropdown>a::after{
  content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--gold);
  transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease);
}
.menu>a:not(.header-btn):hover::after,.menu>a.active::after,.menu .dropdown:hover>a::after,.menu .dropdown>a.active::after{transform:scaleX(1)}
.menu>a.active,.menu a:hover{color:var(--gold-soft)!important}
.header-btn{
  background:linear-gradient(135deg,var(--gold),#e8bd6a)!important;color:var(--green-dark)!important;
  border:0!important;border-radius:999px!important;padding:.75rem 1.4rem!important;
  box-shadow:0 8px 22px rgba(212,162,74,.4);transition:transform .25s var(--ease),box-shadow .25s!important;
}
.header-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(212,162,74,.5);color:var(--green-dark)!important}
.dropdown-menu,.submenu{
  border-radius:14px!important;overflow:hidden;box-shadow:var(--shadow-lg)!important;
  border:1px solid rgba(212,162,74,.25)!important;
}

/* ---------- Hero ---------- */
.hero{position:relative;isolation:isolate}
.hero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(1000px 500px at 15% 10%,rgba(212,162,74,.28),transparent 60%),
    linear-gradient(180deg,rgba(8,24,17,.55),rgba(8,24,17,.72));
}
.hero::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:90px;z-index:1;
  background:var(--cream);clip-path:ellipse(75% 100% at 50% 100%);
}
.hero-inner{position:relative;animation:rise .9s var(--ease) both}
.hero h1{
  font-size:clamp(3.2rem,8vw,7.2rem)!important;line-height:.98!important;
  text-shadow:0 6px 40px rgba(0,0,0,.45);
}
.hero h1::after{content:"";display:block;width:90px;height:3px;background:var(--gold);margin:1.4rem auto 0;border-radius:3px}
.hero p{color:#f4ecdc!important;text-shadow:0 2px 14px rgba(0,0,0,.4)}
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}

/* ---------- Buttons ---------- */
.btn,.submit-btn,.learn,.link-card{transition:transform .25s var(--ease),box-shadow .25s,background .25s,color .25s!important}
.btn,.submit-btn{
  border-radius:999px!important;padding:1rem 1.9rem!important;letter-spacing:.09em;
  background:linear-gradient(135deg,var(--green),#2d6a50)!important;border:0!important;color:#fff!important;
  box-shadow:0 10px 26px rgba(31,74,56,.35);cursor:pointer;
}
.btn:hover,.submit-btn:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(31,74,56,.45)}
.btn-light{
  background:linear-gradient(135deg,var(--gold),#ecc374)!important;color:var(--green-dark)!important;
  box-shadow:0 12px 30px rgba(212,162,74,.45)!important;
}
.btn-light:hover{background:#fff!important;color:var(--green-dark)!important}
.learn{color:var(--green)!important;font-weight:700;position:relative}
.learn::after{content:" →";display:inline-block;transition:transform .25s var(--ease)}
.learn:hover::after{transform:translateX(6px)}

/* ---------- Sections & headings ---------- */
.section{padding:6.5rem 5vw!important;position:relative}
.eyebrow{
  display:inline-flex;align-items:center;gap:.7rem;color:var(--gold)!important;
  letter-spacing:.22em!important;font-weight:700!important;
}
.eyebrow::before,.center-heading .eyebrow::after{content:"";width:34px;height:2px;background:var(--gold);border-radius:2px}
.center-heading h2,.section h2{color:var(--green-dark)!important;font-size:clamp(2.3rem,4.6vw,3.9rem)!important}
.center-heading p{color:var(--muted)!important}

/* ---------- Cards (all pages) ---------- */
.offer-card,.define-card,.testimonial,.post-card,.highlight-card,.value-card,.registration-card,
.process-card,.schedule-card,.mode-card,.link-card,.fee-card,.info-box,.contact-card,.reason-card,
.level-card,.skill-card,.language-box,.outline-card,.card,.fact,.detail-row,.contact-box,.form-box{
  border-radius:var(--radius)!important;border:1px solid rgba(16,41,31,.07)!important;
  box-shadow:var(--shadow-sm)!important;
  transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .3s!important;
}
.offer-card:hover,.define-card:hover,.testimonial:hover,.post-card:hover,.highlight-card:hover,
.value-card:hover,.registration-card:hover,.process-card:hover,.schedule-card:hover,.mode-card:hover,
.link-card:hover,.fee-card:hover,.reason-card:hover,.level-card:hover,.skill-card:hover,
.language-box:hover,.outline-card:hover,.contact-card:hover{
  transform:translateY(-8px);box-shadow:var(--shadow-md)!important;border-color:rgba(212,162,74,.5)!important;
}
.offer-card{overflow:hidden;background:#fff}
.offer-image{height:230px!important;transition:transform .8s var(--ease)}
.offer-card:hover .offer-image{transform:scale(1.08)}
.offer-card{position:relative}
.offer-image{position:relative}
.offer-content{background:#fff;position:relative;z-index:1}
.offer-content small{color:var(--gold)!important}
.define-card{background:#fff;padding:2rem!important}
.define-card .icon{
  width:60px;height:60px;border-radius:50%;display:grid;place-items:center;margin-bottom:1rem;
  background:linear-gradient(135deg,var(--green),#2f7a5a);color:#fff;font-family:'Cormorant Garamond',serif;
  font-size:1.7rem;font-weight:700;box-shadow:0 10px 24px rgba(31,74,56,.35);
}

/* location cards */
.location-card{
  border-radius:var(--radius)!important;overflow:hidden;position:relative;
  transition:transform .5s var(--ease),box-shadow .5s!important;
}
.location-card::before{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,24,17,.05),rgba(8,24,17,.82));
}
.location-card>*{position:relative}
.location-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:var(--shadow-lg)}

/* testimonials */
.testimonial{background:#fff!important;position:relative;padding-top:3rem!important}
.testimonial::before{
  content:"“";position:absolute;top:.4rem;left:1.4rem;font-family:'Cormorant Garamond',serif;
  font-size:5rem;line-height:1;color:var(--gold);opacity:.7;
}
.testimonial blockquote{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-style:italic;color:var(--green-dark)}

/* posts */
.post-card{background:#fff;border-left:4px solid var(--gold)!important}

/* ---------- Dark / banner strips ---------- */
.tour,.newsletter,.cta,.section.dark,.contact-strip{
  position:relative;overflow:hidden;isolation:isolate;
}
.tour::before,.newsletter::before,.cta::before,.section.dark::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(600px 300px at 85% 0%,rgba(212,162,74,.25),transparent 65%),
    radial-gradient(500px 300px at 0% 100%,rgba(47,122,90,.5),transparent 65%),
    linear-gradient(135deg,#10291f,#1f4a38);
  opacity:.94;
}
.tour h2,.newsletter h2,.cta h2,.section.dark h2{color:#fff!important}
.tour p,.newsletter p,.cta p{color:#e8eadf!important}

/* ---------- Forms ---------- */
input,select,textarea{
  border-radius:12px!important;border:1.5px solid rgba(16,41,31,.18)!important;
  transition:border-color .25s,box-shadow .25s,background .25s;font-family:inherit;
}
input:focus,select:focus,textarea:focus{
  outline:none!important;border-color:var(--gold)!important;box-shadow:0 0 0 4px rgba(212,162,74,.22)!important;
}

/* ---------- Tables ---------- */
.table-wrap{border-radius:var(--radius);overflow:auto;box-shadow:var(--shadow-sm)}
table{border-collapse:collapse}
th{background:var(--green)!important;color:#fff!important;letter-spacing:.05em}
tbody tr{transition:background .2s}
tbody tr:hover{background:rgba(212,162,74,.12)}

/* ---------- Images ---------- */
.story-image,.intro-image,.sign-image{border-radius:var(--radius-lg)!important;overflow:hidden;box-shadow:var(--shadow-lg)}
.story-image img,.intro-image img,.sign-image img{transition:transform 1s var(--ease)}
.story-image:hover img,.intro-image:hover img,.sign-image:hover img{transform:scale(1.05)}

/* ---------- Footer ---------- */
.footer{
  background:radial-gradient(700px 300px at 90% 0%,rgba(212,162,74,.16),transparent 60%),linear-gradient(160deg,#0c211a,#173b2d)!important;
  color:#d9e0d3!important;position:relative;
}
.footer::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold),#f1dba8,var(--gold))}
.footer h4{color:var(--gold)!important;font-size:1.5rem}
.footer a{transition:color .2s,padding-left .25s var(--ease)}
.footer a:hover{color:var(--gold-soft)!important;padding-left:6px}
.copyright{border-top:1px solid rgba(255,255,255,.12)!important}

/* ---------- Scroll reveal ---------- */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}.hero-inner{animation:none}
  *{transition-duration:.01ms!important}
}

/* ---------- Scroll progress + back-to-top ---------- */
#kf-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),#f1dba8);z-index:2000}
#kf-top{
  position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;border:0;cursor:pointer;
  background:var(--gold);color:var(--green-dark);font-size:1.3rem;font-weight:700;box-shadow:var(--shadow-md);
  opacity:0;pointer-events:none;transform:translateY(12px);transition:.3s var(--ease);z-index:1500;
}
#kf-top.show{opacity:1;pointer-events:auto;transform:none}
#kf-top:hover{transform:translateY(-4px)}

@media (max-width:820px){
  .section{padding:4.5rem 6vw!important}
  .hero::after{height:50px}
}

/* ---------- Rich home components ---------- */
.stats-band{background:linear-gradient(135deg,#10291f,#1f4a38);padding:3rem 5vw;margin-top:-1px;position:relative;z-index:2}
.stats-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:center}
.stat b{display:block;font-family:'Cormorant Garamond',serif;font-size:clamp(2.8rem,5vw,4.2rem);color:var(--gold);line-height:1}
.stat b::after{content:"+";font-size:.6em;margin-left:2px}
.stat:nth-child(3) b::after,.stat:nth-child(4) b::after{content:""}
.stat span{display:block;margin-top:.5rem;color:#dfe6da;font-size:.85rem;letter-spacing:.06em}
.marquee{background:var(--gold);overflow:hidden;padding:1rem 0;white-space:nowrap}
.marquee-track{display:inline-flex;gap:2.5rem;animation:slide 45s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee span{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:700;color:var(--green-dark)}
.marquee span::after{content:"✦";margin-left:2.5rem;font-size:.9rem;opacity:.6}
@keyframes slide{to{transform:translateX(-50%)}}
.steps-section{background:var(--cream-2)}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;counter-reset:s}
.step-card{background:#fff;border-radius:var(--radius);padding:2.2rem 1.6rem;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .45s var(--ease),box-shadow .45s}
.step-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md)}
.step-card em{font-family:'Cormorant Garamond',serif;font-style:normal;font-size:5rem;line-height:.8;color:rgba(212,162,74,.35);position:absolute;top:1rem;right:1.2rem}
.step-card h3{color:var(--green-dark);font-size:1.6rem;margin:2.4rem 0 .6rem}
.step-card p{color:var(--muted);font-size:.95rem}
.faq-inner{max-width:820px!important}
.faq{background:#fff;border-radius:var(--radius);margin-bottom:.9rem;box-shadow:var(--shadow-sm);border:1px solid rgba(16,41,31,.07);overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:1.3rem 1.6rem;font-weight:600;color:var(--green-dark);display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.6rem;color:var(--gold);transition:transform .3s var(--ease)}
.faq[open] summary::after{transform:rotate(45deg)}
.faq[open]{border-color:rgba(212,162,74,.6)}
.faq p{padding:0 1.6rem 1.4rem;color:var(--muted)}
.wa-float{position:fixed;left:22px;bottom:22px;width:56px;height:56px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 10px 26px rgba(37,211,102,.5);z-index:1500;animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.55)}70%{box-shadow:0 0 0 18px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}
@media(max-width:900px){.stats-inner,.steps-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.steps-grid{grid-template-columns:1fr}}

/* ---------- Heavy home content ---------- */
.stats-inner{grid-template-columns:repeat(6,1fr)!important;max-width:1280px!important}
.stat span{font-size:.78rem}
.stat b::after{content:""!important}
.stat:nth-child(-n+3) b::after{content:"+"!important}
.center-heading.light h2{color:#fff!important}
.center-heading.light p{color:#d6dccf!important}
.center-heading.light .eyebrow{color:var(--gold)!important}
.fine{font-size:.82rem;color:var(--muted);margin-top:1rem}.fine.center{text-align:center;max-width:760px;margin:1.2rem auto}
.sub-title{font-size:2rem;color:var(--green-dark);margin:3.5rem 0 1.4rem;text-align:center}
.center-cta{text-align:center;margin-top:2.5rem}

.about-split{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:center}
.about-photo{position:relative}
.about-photo img{width:100%;height:560px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
.about-photo::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:2px solid var(--gold);border-radius:var(--radius-lg);z-index:-1}
.about-badge{position:absolute;right:-18px;bottom:30px;background:var(--green-dark);color:#fff;padding:1.2rem 1.6rem;border-radius:var(--radius);box-shadow:var(--shadow-md)}
.about-badge b{display:block;font-family:'Cormorant Garamond',serif;font-size:1.9rem;color:var(--gold)}
.about-copy h2{margin:.5rem 0 1.2rem}
.about-copy p{color:var(--muted);margin-bottom:1rem}
.vm-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.6rem 0 2rem}
.vm{background:#fff;padding:1.3rem;border-radius:var(--radius);border-top:3px solid var(--gold);box-shadow:var(--shadow-sm)}
.vm h4{color:var(--green-dark);font-size:1.5rem;margin-bottom:.3rem}.vm p{font-size:.9rem;margin:0}
.values-row{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:4rem}
.value-pill{text-align:center;padding:1.5rem 1rem;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .4s var(--ease)}
.value-pill:hover{transform:translateY(-6px)}
.value-pill em{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--gold);color:var(--green-dark);font-style:normal;font-weight:700;margin-bottom:.6rem}
.value-pill h4{font-size:1.4rem;color:var(--green-dark)}.value-pill p{font-size:.85rem;color:var(--muted)}

.accred,.levels-rich,.fees-rich,.contact-rich{position:relative;isolation:isolate;overflow:hidden}
.accred::before,.levels-rich::before,.fees-rich::before,.contact-rich::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(700px 320px at 90% 0%,rgba(212,162,74,.22),transparent 60%),radial-gradient(600px 300px at 0% 100%,rgba(47,122,90,.5),transparent 60%),linear-gradient(135deg,#0c211a,#1f4a38)}
.accred{padding:4.5rem 5vw}
.accred-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;max-width:1100px;margin:auto}
.accred-grid div{border:1px solid rgba(212,162,74,.45);border-radius:var(--radius);padding:1.5rem;text-align:center;background:rgba(255,255,255,.05);backdrop-filter:blur(6px)}
.accred-grid small{display:block;color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-weight:700;font-size:.72rem}
.accred-grid b{color:#fff;font-weight:600;font-size:.95rem;word-break:break-word}

.tabs{display:flex;justify-content:center;gap:.8rem;margin-bottom:2rem;flex-wrap:wrap}
.tab{border:1.5px solid rgba(16,41,31,.18);background:#fff;border-radius:999px;padding:.8rem 1.6rem;font:600 .95rem 'Inter',sans-serif;cursor:pointer;color:var(--green-dark);transition:.25s}
.tab small{display:block;font-weight:500;color:var(--muted);font-size:.72rem}
.tab.on{background:var(--green-dark);color:#fff;border-color:var(--green-dark)}.tab.on small{color:var(--gold-soft)}
.tabpane{display:none}.tabpane.on{display:grid;animation:rise .5s var(--ease)}
.lang-grid{grid-template-columns:repeat(4,1fr);gap:1.2rem}
.lang-card{background:#fff;border-radius:var(--radius);padding:1.6rem;box-shadow:var(--shadow-sm);border:1px solid rgba(16,41,31,.07);position:relative;overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s,border-color .3s}
.lang-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md);border-color:var(--gold)}
.hello{display:block;font-family:'Cormorant Garamond','Noto Sans',serif;font-size:2.4rem;color:var(--gold);line-height:1.1;margin-bottom:.6rem}
.lang-card h3{font-size:1.6rem;color:var(--green-dark)}.lang-card p{color:var(--muted);font-size:.88rem;margin:.3rem 0 .8rem}
.sign-banner{margin-top:2.5rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;border-radius:var(--radius-lg);padding:2rem 2.4rem}
.sign-banner h3{color:var(--gold);font-size:1.9rem}.sign-banner p{color:#dfe6da;max-width:620px}

.timeline{display:grid;grid-template-columns:repeat(7,1fr);gap:1rem;position:relative}
.timeline::before{content:"";position:absolute;top:34px;left:4%;right:4%;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.tl-item{text-align:center;position:relative}
.tl-code{width:68px;height:68px;margin:0 auto 1rem;border-radius:50%;background:var(--gold);color:var(--green-dark);display:grid;place-items:center;font:700 1.5rem 'Cormorant Garamond',serif;box-shadow:0 0 0 6px rgba(212,162,74,.25);transition:transform .4s var(--ease)}
.tl-item:hover .tl-code{transform:scale(1.12)}
.tl-item h3{color:#fff;font-size:1.3rem}.tl-item p{color:#cfd8cb;font-size:.82rem;margin-top:.4rem}

.icon-grid{display:grid;gap:1.3rem}.icon-grid.four{grid-template-columns:repeat(4,1fr)}
.icon-card{background:#fff;border-radius:var(--radius);padding:2rem 1.6rem;box-shadow:var(--shadow-sm);border:1px solid rgba(16,41,31,.07);transition:transform .45s var(--ease),box-shadow .45s}
.icon-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md)}
.icon-card span{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:linear-gradient(135deg,var(--gold-soft),#fff);font-size:1.8rem;margin-bottom:1rem;box-shadow:inset 0 0 0 1px rgba(212,162,74,.5)}
.icon-card h3{font-size:1.6rem;color:var(--green-dark);margin-bottom:.4rem}.icon-card p{color:var(--muted);font-size:.93rem}
.modes-rich{background:var(--cream-2)}
.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.option{background:#fff;border-left:4px solid var(--gold);border-radius:14px;padding:1.3rem 1.5rem;box-shadow:var(--shadow-sm)}
.option h4{font-size:1.45rem;color:var(--green-dark)}.option p{font-size:.9rem;color:var(--muted)}
.modes-rich table{width:100%;background:#fff}.modes-rich th,.modes-rich td{padding:1rem 1.2rem;text-align:left}.modes-rich td{border-bottom:1px solid rgba(16,41,31,.08)}

.filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:2rem}
.chip{border:1.5px solid rgba(16,41,31,.18);background:#fff;border-radius:999px;padding:.55rem 1.1rem;font:600 .82rem 'Inter',sans-serif;cursor:pointer;color:var(--green-dark);transition:.25s}
.chip:hover{border-color:var(--gold)}.chip.on{background:var(--gold);border-color:var(--gold)}
.pro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.pro-card{background:#fff;border-radius:var(--radius);padding:1.6rem;box-shadow:var(--shadow-sm);border:1px solid rgba(16,41,31,.07);transition:transform .45s var(--ease),box-shadow .45s,border-color .3s}
.pro-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md);border-color:var(--gold)}
.pro-card.hide{display:none}
.pro-ico{display:block;font-size:2rem;margin-bottom:.7rem}
.pro-card small{color:var(--gold);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.68rem}
.pro-card h3{font-size:1.45rem;color:var(--green-dark);margin:.2rem 0 .4rem}.pro-card p{font-size:.88rem;color:var(--muted)}

.fee-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-bottom:2rem}
.fee-tile{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2.2rem;text-align:center;color:#fff;backdrop-filter:blur(8px)}
.fee-tile.feat{background:linear-gradient(135deg,var(--gold),#ecc374);color:var(--green-dark);transform:scale(1.04);box-shadow:var(--shadow-lg)}
.fee-tile small{letter-spacing:.18em;text-transform:uppercase;font-weight:700;font-size:.74rem}
.fee-tile b{display:block;font:700 3rem 'Cormorant Garamond',serif;margin:.4rem 0}.fee-tile p{font-size:.88rem;opacity:.85}
.fee-two{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;margin-bottom:1.3rem}
.calc,.breakdown,.mini{background:#fff;border-radius:var(--radius-lg);padding:2rem;color:var(--ink)}
.calc h3,.breakdown h3,.mini h4{color:var(--green-dark);font-size:1.7rem;margin-bottom:1rem}
.calc label{display:block;font-size:.8rem;font-weight:600;color:var(--muted);margin-bottom:1rem;letter-spacing:.04em}
.calc select{width:100%;margin-top:.35rem;padding:.85rem 1rem;font:500 1rem 'Inter',sans-serif;background:#fff}
.calc-out{background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;border-radius:var(--radius);padding:1.4rem;text-align:center}
.calc-out b{display:block;font:700 2.8rem 'Cormorant Garamond',serif;color:var(--gold)}.calc-out span{font-size:.82rem;opacity:.85}
.breakdown ul,.mini ul{list-style:none}
.breakdown li,.mini li{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px dashed rgba(16,41,31,.15);font-size:.93rem}
.breakdown li b,.mini li b{color:var(--green)}
.fee-three{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.mini h4 small{font-family:'Inter';font-size:.7rem;color:var(--muted);font-weight:500}
.mini h4{font-size:1.5rem}

.price-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.5rem}
.price-strip div{background:linear-gradient(135deg,var(--green-dark),var(--green));border-radius:var(--radius);padding:1.8rem;text-align:center;color:#fff}
.price-strip small{display:block;color:var(--gold-soft);letter-spacing:.08em;font-size:.78rem}
.price-strip b{display:block;font:700 2.6rem 'Cormorant Garamond',serif;color:var(--gold)}.price-strip span{font-size:.8rem;opacity:.8}
.flow{display:grid;grid-template-columns:repeat(6,1fr);gap:.8rem;margin-top:2.5rem}
.flow-step{background:#fff;border-radius:var(--radius);padding:1.2rem .9rem;text-align:center;box-shadow:var(--shadow-sm);font-size:.85rem;font-weight:600;color:var(--green-dark)}
.flow-step em{display:grid;place-items:center;width:34px;height:34px;margin:0 auto .6rem;border-radius:50%;background:var(--gold);font-style:normal;font-weight:700}

.adm-rich{background:var(--cream-2)}
.adm-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.adm-step{background:#fff;border-radius:var(--radius);padding:2rem 1.6rem;position:relative;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .45s var(--ease)}
.adm-step:hover{transform:translateY(-6px)}
.adm-step em{position:absolute;top:.6rem;right:1.2rem;font:700 4.5rem/1 'Cormorant Garamond',serif;color:rgba(212,162,74,.35);font-style:normal}
.adm-step h3{font-size:1.5rem;color:var(--green-dark);margin:1.4rem 0 .4rem}.adm-step p{color:var(--muted);font-size:.92rem}
.adm-two{display:grid;grid-template-columns:1.1fr 1fr;gap:1.3rem;margin-top:1.5rem}
.checklist-box{background:#fff;border-radius:var(--radius-lg);padding:2.2rem;box-shadow:var(--shadow-sm)}
.checklist-box h3{font-size:1.9rem;color:var(--green-dark);margin-bottom:1rem}
.checklist-box ul{list-style:none}
.checklist-box li{padding:.7rem 0 .7rem 2.2rem;position:relative;border-bottom:1px dashed rgba(16,41,31,.15)}
.checklist-box li::before{content:"✓";position:absolute;left:0;top:.65rem;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--gold);color:var(--green-dark);display:grid;place-items:center;font-size:.8rem;font-weight:700}
.cta-box{background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;display:flex;flex-direction:column;gap:1rem;justify-content:center}
.cta-box h3{color:#fff}.cta-box p{color:#dfe6da}
.btn.ghost{background:transparent!important;border:1.5px solid rgba(255,255,255,.6)!important;box-shadow:none!important}

.contact-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.c-tile{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2.2rem;text-align:center;color:#fff;transition:transform .4s var(--ease),background .3s}
.c-tile:hover{transform:translateY(-6px);background:rgba(255,255,255,.12)}
.c-tile span{font-size:2.2rem}.c-tile h4{color:var(--gold);font-size:1.6rem;margin:.4rem 0}.c-tile p{color:#e3e8df;font-size:.95rem}

@media(max-width:1100px){.stats-inner{grid-template-columns:repeat(3,1fr)!important}.lang-grid,.pro-grid,.icon-grid.four{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:repeat(4,1fr)}.timeline::before{display:none}.values-row{grid-template-columns:repeat(3,1fr)}.flow{grid-template-columns:repeat(3,1fr)}.accred-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.about-split,.fee-two,.adm-two,.fee-trio,.fee-three,.price-strip,.contact-trio,.option-grid,.adm-steps,.vm-grid{grid-template-columns:1fr}.about-photo img{height:360px}.about-badge{right:10px}.fee-tile.feat{transform:none}.timeline{grid-template-columns:repeat(2,1fr)}.stats-inner{grid-template-columns:repeat(2,1fr)!important}.values-row{grid-template-columns:repeat(2,1fr)}.lang-grid,.pro-grid,.icon-grid.four{grid-template-columns:1fr}.modes-rich .table-wrap{overflow-x:auto}}

/* ---------- Mobile header & drawer: maximum contrast ---------- */
@media (max-width:980px){
  /* solid dark-green bar, white text */
  .site-header,.site-header.scrolled{
    background:#0c211a!important;color:#fff!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    box-shadow:0 6px 20px rgba(0,0,0,.35)!important;
    border-bottom:2px solid var(--gold);
  }
  .site-header .logo,.site-header .logo-content strong{color:#fff!important}
  .site-header .logo-content span{color:#f6df9f!important;font-weight:600}
  .site-header .menu-toggle{color:#fff!important;font-weight:700!important;font-size:1.05rem!important}
  .site-header .menu-toggle .menu-label{color:#fff!important}
  .site-header .hamburger span,.site-header .menu-toggle span span{background:#fff!important}

  /* white drawer, near-black text */
  .menu{background:#fff!important;color:#0c211a!important}
  .mobile-menu-head{color:#0c211a!important;border-bottom:2px solid var(--gold)!important;font-weight:700!important}
  .menu-close{color:#0c211a!important;font-weight:700}
  .menu>a,.menu .dropdown>a,.menu .has-submenu>a{
    color:#0c211a!important;font-weight:700!important;font-size:1.45rem!important;
    border-bottom:1px solid rgba(12,33,26,.18)!important;
  }
  .menu .dropdown-menu>a,.menu .submenu a{color:#1b2a23!important;font-weight:600!important;font-size:1.05rem!important}
  .menu>a::after,.menu .dropdown>a::after{background:none!important}
  .menu .dropdown>a::after,.menu .has-submenu>a::after{color:#0c211a;transform:none;height:auto;position:static}

  /* hover / active: dark chip with white text */
  .menu>a:hover,.menu>a.active,
  .menu .dropdown>a:hover,.menu .dropdown>a.active,
  .menu .has-submenu>a:hover,.menu .has-submenu>a.active,
  .menu .dropdown-menu>a:hover,.menu .dropdown-menu a.active,
  .menu .submenu a:hover,.menu .submenu a.active{
    background:#10291f!important;color:#fff!important;border-radius:10px;
    padding-left:.9rem!important;box-shadow:inset 4px 0 0 var(--gold);
  }

  /* Contact button: gold with dark bold text, centred */
  .menu .header-btn,.menu a.header-btn{
    background:var(--gold)!important;color:#0c211a!important;font-weight:800!important;
    text-align:center;justify-content:center;border-radius:999px!important;margin-top:1.2rem;
    padding:.95rem 1.4rem!important;font-size:1.25rem!important;border:0!important;
  }
  .menu .header-btn:hover,.menu .header-btn.active{background:#0c211a!important;color:var(--gold-soft)!important;box-shadow:none}
}
