:root{
  --red:#a90916;
  --red-2:#7f0710;
  --red-3:#5a070d;
  --gold:#f0bf42;
  --ink:#171214;
  --muted:#6f686a;
  --paper:#f6f2ec;
  --soft:#fbf9f6;
  --line:#e5ded5;
  --white:#fff;
  --radius:24px;
  --shadow:0 24px 70px rgba(50,21,24,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Poppins,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.section{padding:108px 0}
.skip-link{position:fixed;left:16px;top:10px;background:#fff;color:#111;padding:10px 14px;z-index:999;transform:translateY(-150%);border-radius:8px}.skip-link:focus{transform:none}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:1.6px;font-weight:700;color:rgba(255,255,255,.75)}
.eyebrow span{width:34px;height:2px;background:var(--gold);display:block}
.eyebrow.dark{color:#6a6062}.eyebrow.dark span{background:var(--red)}
.eyebrow.light{color:rgba(255,255,255,.72)}
.section-heading h2,.process-copy h2,.faq-intro h2,.mcu-copy h2,.cta-copy h2{margin:14px 0 0;font-size:clamp(38px,4.4vw,66px);line-height:1.05;letter-spacing:-2.7px;font-weight:800}
.section-heading h2 em,.process-copy h2 em,.faq-intro h2 em,.mcu-copy h2 em,.cta-copy h2 em,.hero h1 em{font-style:normal;color:var(--red)}
.split-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end;margin-bottom:48px}
.split-heading>p,.centered>p{margin:0;color:var(--muted);font-size:14px;line-height:1.9}
.centered{text-align:center;max-width:860px;margin:0 auto 52px}.centered .eyebrow{justify-content:center}.centered p{max-width:720px;margin:20px auto 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;border-radius:999px;padding:0 20px;font-size:13px;font-weight:700;border:1px solid transparent;transition:.25s ease;cursor:pointer}.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--red);color:#fff;box-shadow:0 12px 30px rgba(169,9,22,.24)}.btn-primary:hover{background:#900814}
.btn-light{background:#fff;color:#2c2022}.btn-outline{border-color:#c9bfc0;background:#fff;color:#23191b}.btn-outline:hover{border-color:var(--red);color:var(--red)}.btn-white{background:#fff;color:var(--red)}.btn-full{width:100%}
.text-link{font-size:13px;font-weight:700;color:var(--red);display:inline-flex;align-items:center;gap:8px}

/* top + nav */
.topbar{background:#1a1012;color:#fff;font-size:13px}.topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar p{margin:0;display:flex;gap:14px;align-items:center}.topbar p span{color:rgba(255,255,255,.58)}.topbar a{color:#f5d76f;font-weight:600}
.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(35,21,23,.08)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand img{width:172px;height:auto}.main-nav{display:flex;align-items:center;gap:25px}.main-nav>a:not(.btn){font-size:13px;font-weight:600;color:#4c4446}.main-nav>a:not(.btn):hover{color:var(--red)}.btn-nav{min-height:42px;background:var(--red);color:#fff;padding-inline:18px}.menu-toggle{display:none;border:0;background:none;width:42px;height:42px;padding:9px}.menu-toggle span{height:2px;background:#261a1c;display:block;margin:5px 0;border-radius:5px}

/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#17090b 0%,#3c0a10 42%,#870a14 100%);color:#fff;padding:92px 0 28px}.hero:after{content:"";position:absolute;width:600px;height:600px;border-radius:50%;right:-220px;top:-240px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.018)}.hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(to bottom,#000 35%,transparent 100%)}
.hero-layout{position:relative;z-index:3;display:grid;grid-template-columns:1.08fr .92fr;gap:74px;align-items:center}.hero-copy{padding-bottom:24px}.hero h1{font-size:clamp(48px,6vw,84px);line-height:.98;letter-spacing:-4px;margin:18px 0 24px;max-width:760px}.hero h1 em{color:#f7cd5d}.hero-lead{max-width:680px;color:rgba(255,255,255,.72);font-size:14px;line-height:1.85;margin:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:31px}.hero .btn-light{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.2);color:#fff}.hero .btn-light:hover{background:rgba(255,255,255,.15)}
.hero-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px;padding-top:26px;border-top:1px solid rgba(255,255,255,.12)}.hero-meta div{display:grid;gap:3px}.hero-meta strong{font-size:22px;letter-spacing:-.6px;color:#f7d266}.hero-meta span{font-size:12px;color:rgba(255,255,255,.52);text-transform:uppercase;letter-spacing:.7px}
.hero-media{position:relative;min-height:650px}.hero-photo{position:absolute;inset:10px 44px 54px 94px;margin:0;border-radius:30px;overflow:hidden;box-shadow:0 35px 85px rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.16)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(17,7,8,.5),transparent 46%)}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-card{position:absolute;z-index:4;backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.19);box-shadow:0 20px 45px rgba(0,0,0,.18)}.hero-card-top{right:0;top:66px;width:228px;padding:18px 18px;background:rgba(28,10,13,.7);border-radius:18px}.hero-card-top span,.hero-card-bottom span{display:block;font-size:12px;letter-spacing:1.4px;color:#f4cf68;margin-bottom:5px}.hero-card-top b{font-size:13px;line-height:1.6}.hero-card-bottom{left:0;bottom:6px;width:296px;background:rgba(255,255,255,.96);color:#1e1315;border-radius:20px;padding:10px;display:grid;grid-template-columns:76px 1fr;gap:13px;align-items:center}.hero-card-bottom img{width:76px;height:72px;border-radius:13px;object-fit:cover}.hero-card-bottom div span{color:var(--red)}.hero-card-bottom b{font-size:13px;line-height:1.45}.hero-stamp{position:absolute;right:17px;bottom:87px;z-index:5;width:122px;height:122px;border-radius:50%;background:#f2c94c;color:#361f00;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(8deg);border:7px solid rgba(255,255,255,.2);box-shadow:0 14px 30px rgba(0,0,0,.2)}.hero-stamp span,.hero-stamp small{font-size:12px;letter-spacing:1.1px}.hero-stamp b{font-size:20px;line-height:1}
.target-strip{position:relative;z-index:4;margin-top:36px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:14px;white-space:nowrap;overflow:hidden}.target-strip span{font-size:12px;letter-spacing:1.2px;font-weight:700;color:rgba(255,255,255,.72)}.target-strip i{width:4px;height:4px;background:#e9c456;border-radius:50%;flex:0 0 auto}

/* program */
.program-section{background:#fff}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.program-card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:28px;min-height:310px;display:flex;flex-direction:column;transition:.25s ease}.program-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#d7cacb}.program-card-red{background:linear-gradient(140deg,#a90916,#6b070f);color:#fff;border-color:transparent}.card-kicker{display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1.1px}.card-kicker span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#f5f1eb;color:var(--red);font-weight:800}.program-card-red .card-kicker span{background:#f2cb59;color:#3d2200}.card-kicker b{font-size:12px;color:#9b9091}.program-card-red .card-kicker b{color:rgba(255,255,255,.62)}.program-card h3{font-size:22px;letter-spacing:-.8px;line-height:1.2;margin:37px 0 11px}.program-card p{font-size:13px;line-height:1.8;color:#746b6d;margin:0 0 24px}.program-card-red p{color:rgba(255,255,255,.72)}.program-card .text-link{margin-top:auto}.program-card-red .text-link{color:#f6d368}.program-card-wide{grid-column:1/-1;min-height:300px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;padding:0}.program-card-wide .wide-copy{padding:34px;display:flex;flex-direction:column;justify-content:center}.program-card-wide img{width:100%;height:100%;object-fit:cover;min-height:300px}

/* pillars */
.pillars-section{background:var(--paper)}.pillar-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:360px 330px;gap:16px}.pillar-card{position:relative;overflow:hidden;border-radius:24px;margin:0;background:#291519}.pillar-card img{width:100%;height:100%;object-fit:cover;transition:.5s ease}.pillar-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(14,6,7,.83) 0%,rgba(14,6,7,.25) 52%,rgba(14,6,7,.06) 100%)}.pillar-card:hover img{transform:scale(1.035)}.pillar-large{grid-row:1/3}.pillar-wide{grid-column:2/4}.pillar-wide img{object-position:center 34%}.pillar-overlay{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;color:#fff}.pillar-overlay span{font-size:12px;letter-spacing:1.4px;color:#f5d36d}.pillar-overlay h3{font-size:24px;letter-spacing:-.7px;margin:6px 0 5px}.pillar-overlay p{font-size:13px;color:rgba(255,255,255,.72);max-width:470px;margin:0;line-height:1.7}

/* process */
.process-section{background:#fff}.process-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:92px;align-items:start}.process-copy{position:sticky;top:130px}.process-copy p{color:var(--muted);font-size:13px;line-height:1.9;max-width:540px;margin:24px 0}.process-list{border-top:1px solid var(--line)}.process-item{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}.process-item>span{font-size:13px;color:var(--red);font-weight:800;padding-top:4px}.process-item b{font-size:17px}.process-item p{font-size:13px;color:#777;margin:7px 0 0;line-height:1.7}

/* class cards */
.classes-section{background:#fbfaf8}.class-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:16px}.class-card{border:1px solid var(--line);border-radius:24px;padding:30px;background:#fff;min-height:500px;display:flex;flex-direction:column}.class-card-featured{background:linear-gradient(145deg,#240a0d,#8e0a15);color:#fff;border-color:transparent;box-shadow:var(--shadow)}.class-top{display:flex;justify-content:space-between;align-items:center}.class-top span{font-size:12px;letter-spacing:1.2px;font-weight:800;color:var(--red)}.class-card-featured .class-top span{color:#f2ce67}.class-top b{font-size:13px;color:#aaa}.class-card h3{font-size:28px;line-height:1.2;letter-spacing:-1px;margin:44px 0 13px}.class-card>p{font-size:13px;color:#756d6e;line-height:1.8}.class-card-featured>p{color:rgba(255,255,255,.67)}.class-card ul{list-style:none;padding:0;margin:27px 0}.class-card li{font-size:13px;padding:11px 0;border-bottom:1px solid #eee8e1}.class-card-featured li{border-color:rgba(255,255,255,.13)}.class-card li:before{content:"✓";color:var(--red);font-weight:800;margin-right:10px}.class-card-featured li:before{color:#f3d16b}.class-card .btn,.class-card .text-link{margin-top:auto}

/* mcu */
.mcu-section{background:linear-gradient(135deg,#17090b,#6f0811);color:#fff;overflow:hidden}.mcu-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:center}.mcu-copy h2 em{color:#f5cf64}.mcu-copy>p{font-size:13px;color:rgba(255,255,255,.68);line-height:1.9;margin:24px 0}.mcu-note{border-left:2px solid #efc75c;padding:12px 0 12px 15px;font-size:12px;color:rgba(255,255,255,.56);margin:26px 0}.mcu-gallery{height:610px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.2fr .8fr;gap:12px;transform:rotate(1deg)}.mcu-gallery figure{margin:0;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.13);background:#2e1518}.mcu-gallery img{width:100%;height:100%;object-fit:cover}.mcu-a{grid-row:1/3}.mcu-a img{object-position:center 37%}.mcu-b img{object-position:center 32%}.mcu-c,.mcu-d{display:none}

/* facilities */
.facilities-section{background:#fff}.facility-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr;gap:16px;min-height:540px}.facility-card{margin:0;position:relative;border-radius:24px;overflow:hidden;background:#eee}.facility-card img{width:100%;height:100%;object-fit:cover}.facility-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,8,9,.65),transparent 45%)}.facility-card figcaption{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;color:#fff;display:flex;gap:12px;align-items:center}.facility-card figcaption>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f2ca58;color:#402400;font-size:12px;font-weight:800}.facility-card b{font-size:13px}.facility-card small{display:block;color:rgba(255,255,255,.66);font-size:12px}.facility-quote{background:var(--red);color:#fff;border-radius:24px;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;position:relative}.facility-quote img{position:absolute;width:170px;right:-35px;top:-30px;opacity:.14;filter:brightness(0) invert(1)}.facility-quote p{font-size:20px;line-height:1.45;font-weight:600;letter-spacing:-.5px;margin:0 0 24px}.facility-quote span{font-size:12px;letter-spacing:1.3px;color:#f4d26f}

/* gallery */
.gallery-section{background:var(--paper)}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:300px 280px;gap:12px}.gallery-grid figure{margin:0;overflow:hidden;border-radius:18px;background:#ddd}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.45s ease}.gallery-grid figure:hover img{transform:scale(1.03)}.g1{grid-row:1/3}.g2{grid-column:2/4}.g4,.g5,.g6{display:none}.g3 img{object-position:center 38%}

/* faq */
.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px}.faq-intro p{color:var(--muted);font-size:13px;line-height:1.9;margin:24px 0}.accordion{border-top:1px solid #d8d0c8}.faq-item{border-bottom:1px solid #d8d0c8}.faq-item button{width:100%;border:0;background:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;text-align:left;cursor:pointer}.faq-item button span{font-size:13px;font-weight:600}.faq-item button b{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f7f3ee;color:var(--red)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.faq-answer p{overflow:hidden;margin:0;color:#736a6c;font-size:13px;line-height:1.8}.faq-item.active .faq-answer{grid-template-rows:1fr}.faq-item.active .faq-answer p{padding:0 44px 22px 0}

/* CTA */
.cta-section{padding-top:35px;background:#fff}.cta-box{position:relative;overflow:hidden;background:linear-gradient(135deg,#1c090c,#730a12);border-radius:30px;padding:62px;display:grid;grid-template-columns:1fr .82fr;gap:70px;color:#fff;box-shadow:var(--shadow)}.cta-box:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:-210px;bottom:-210px;box-shadow:0 0 0 60px rgba(255,255,255,.02),0 0 0 120px rgba(255,255,255,.015)}.cta-copy{position:relative;z-index:2}.cta-copy>img{position:absolute;width:230px;right:-20px;top:-80px;opacity:.08;filter:brightness(0) invert(1)}.cta-copy h2 em{color:#f5cf62}.cta-copy>p{color:rgba(255,255,255,.65);font-size:12px;line-height:1.8;max-width:560px}.wa-form{position:relative;z-index:2;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:23px;display:grid;gap:13px}.wa-form label{font-size:12px;letter-spacing:.8px;color:rgba(255,255,255,.65);text-transform:uppercase;display:grid;gap:6px}.wa-form input,.wa-form select{width:100%;min-height:46px;border-radius:11px;border:1px solid rgba(255,255,255,.17);background:rgba(0,0,0,.18);color:#fff;padding:0 13px;outline:none}.wa-form input::placeholder{color:rgba(255,255,255,.37)}.wa-form select option{color:#111}.wa-form small{font-size:12px;color:rgba(255,255,255,.42)}

/* footer */
.footer{background:#10090a;color:#fff;margin-top:105px;padding:66px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr 1.15fr;gap:50px}.brand-footer img{filter:brightness(0) invert(1);width:180px}.footer-brand p,.footer-grid p{font-size:13px;line-height:1.8;color:rgba(255,255,255,.5);max-width:350px}.footer-grid h3{font-size:12px;text-transform:uppercase;letter-spacing:1.3px;color:#efcc6b;margin:5px 0 18px}.footer-grid>div:not(.footer-brand) a{display:block;font-size:13px;color:rgba(255,255,255,.62);margin:8px 0}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:48px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:rgba(255,255,255,.34)}
.wa-float{position:fixed;right:20px;bottom:20px;z-index:70;width:55px;height:55px;border-radius:50%;background:#1fb55b;color:#fff;display:grid;place-items:center;box-shadow:0 14px 30px rgba(0,0,0,.22)}.wa-float svg{width:27px;height:27px;fill:#fff}

@media (max-width:1050px){
  .main-nav{gap:15px}.main-nav>a:not(.btn){font-size:13px}
  .hero-layout{grid-template-columns:1fr 1fr;gap:36px}.hero-media{min-height:590px}.hero-photo{left:64px}
  .program-grid{grid-template-columns:repeat(2,1fr)}.program-card-wide{grid-column:1/-1}
  .pillar-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 310px 330px}.pillar-large{grid-row:auto}.pillar-wide{grid-column:1/-1}
  .class-grid{grid-template-columns:1fr}.class-card{min-height:auto}
  .mcu-layout{grid-template-columns:1fr 1fr;gap:36px}
  .facility-grid{grid-template-columns:1fr 1fr}.facility-quote{grid-column:1/-1;min-height:260px}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:340px 260px}.g1{grid-row:auto}.g2{grid-column:auto}.g3{grid-column:1/-1}
}

@media (max-width:820px){
  .topbar{display:none}.nav-wrap{height:72px}.brand img{width:155px}.menu-toggle{display:block}.main-nav{position:fixed;left:14px;right:14px;top:78px;display:none;flex-direction:column;align-items:stretch;gap:2px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav>a:not(.btn){padding:9px 7px;font-size:12px}
  .section{padding:82px 0}.split-heading{grid-template-columns:1fr;gap:20px}.split-heading>p{max-width:650px}.section-heading h2,.process-copy h2,.faq-intro h2,.mcu-copy h2,.cta-copy h2{font-size:46px;letter-spacing:-2px}
  .hero{padding-top:70px}.hero-layout{grid-template-columns:1fr}.hero h1{max-width:760px}.hero-media{min-height:600px;max-width:580px;width:100%;margin:0 auto}.target-strip{justify-content:flex-start;overflow:auto;padding-bottom:5px}.target-strip::-webkit-scrollbar{display:none}
  .process-grid,.faq-grid,.cta-box{grid-template-columns:1fr;gap:48px}.process-copy{position:static}.mcu-layout{grid-template-columns:1fr}.mcu-gallery{height:500px}.facility-grid{min-height:auto}.gallery-grid{grid-template-rows:280px 250px}
  .footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{display:none}
 
}


/* =========================================================
   PILIHAN PAKET V4 - CLEAN SCROLLABLE CARD DESIGN
   ========================================================= */
.packages-v4 {
  background: #f8fafc;
  padding: 85px 0 95px;
}
.packages-v4-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 36px;
  margin-bottom: 40px;
}
.packages-v4-head h2 {
  margin: 10px 0 0;
  font-size: clamp(34px, 4.4vw, 56px);
  line-height: 1.05;
  letter-spacing: -2px;
  color: #0b2048;
}
.packages-v4-head h2 em {
  font-style: normal;
  color: var(--red, #a90916);
}
.packages-v4-head > p {
  max-width: 490px;
  margin: 0;
  color: #64748b;
  font-size: 12.5px;
  line-height: 1.8;
}

/* Grid Layout */
.packages-v4-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}

/* Card Container */
.pkg-v4-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.pkg-v4-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 42px rgba(15, 23, 42, 0.09);
}

/* Header Kartu */
.pkg-v4-hero {
  position: relative;
  min-height: 165px;
  padding: 24px 22px 20px;
  color: #fff;
  background: linear-gradient(135deg, #0a214d 0%, #113677 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.pkg-v4-card.featured .pkg-v4-hero {
  background: linear-gradient(135deg, #8c0c17 0%, #c11727 100%);
}
.pkg-v4-badge {
  position: absolute;
  top: 18px;
  left: 20px;
  display: inline-flex;
  align-items: center;
  padding: 5px 11px;
  border-radius: 6px;
  background: #ffd13d;
  color: #0a214d;
  font-size:12px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}
.pkg-v4-title {
  margin: 0 0 6px;
  font-size: 23px;
  line-height: 1.15;
  letter-spacing: -0.6px;
  color: #fff;
}
.pkg-v4-summary {
  margin: 0;
  font-size:13px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.82);
}

/* Card Body & Scroll Area */
.pkg-v4-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 20px 22px 22px;
  background: #ffffff;
}
.pkg-v4-body .prog-desc {
  margin: 0 0 16px;
  color: #475569;
  font-size:13px;
  line-height: 1.6;
}

/* Box Scroll Konten Lengkap */
.program-scroll {
  flex: 1;
  max-height: 320px;
  overflow-y: auto;
  padding-right: 10px;
  margin-bottom: 18px;
  border: 1px solid #f1f5f9;
  background: #f8fafc;
  border-radius: 14px;
  padding: 16px 14px;
}

/* Scrollbar Halus & Rapi */
.program-scroll::-webkit-scrollbar {
  width: 5px;
}
.program-scroll::-webkit-scrollbar-track {
  background: #edf2f7;
  border-radius: 10px;
}
.program-scroll::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 10px;
}
.program-scroll::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Sub-group Benefit */
.program-detail-group {
  margin-bottom: 15px;
  padding-bottom: 13px;
  border-bottom: 1px dashed #e2e8f0;
}
.program-detail-group:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.program-detail-group h4 {
  margin: 0 0 8px;
  color: #0b2048;
  font-size:13px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}
.program-detail-group ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.program-detail-group ul li {
  position: relative;
  padding-left: 15px;
  color: #475569;
  font-size:13px;
  line-height: 1.45;
}
.program-detail-group ul li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #f4c514;
}
.pkg-v4-card.featured .program-detail-group ul li:before {
  background: var(--red, #a90916);
}

/* Bottom CTA & Tags */
.pkg-v4-bottom {
  margin-top: auto;
}
.pkg-v4-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 14px;
}
.pkg-v4-chips span {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border-radius: 6px;
  background: #f1f5f9;
  color: #334155;
  font-size:12px;
  font-weight: 700;
}
.pkg-v4-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  min-height: 44px;
  border-radius: 10px;
  background: #0f172a;
  color: #fff;
  text-decoration: none;
  font-size:13px;
  font-weight: 700;
  transition: background 0.2s ease, transform 0.2s ease;
}
.pkg-v4-card.featured .pkg-v4-cta {
  background: var(--red, #a90916);
}
.pkg-v4-cta:hover {
  background: #1e293b;
  transform: translateY(-1px);
}
.pkg-v4-card.featured .pkg-v4-cta:hover {
  background: #880711;
}

/* Footnote */
.pkg-v4-note {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-top: 30px;
  padding: 16px 20px;
  border-radius: 14px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  color: #64748b;
  font-size:13px;
  line-height: 1.6;
}
.pkg-v4-note b { color: #0b2048; }
.pkg-v4-note a {
  color: var(--red, #a90916);
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

@media (max-width: 980px) {
  .packages-v4-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .packages-v4-head { flex-direction: column; align-items: flex-start; gap: 14px; }
}
@media (max-width: 640px) {
  .packages-v4-grid { grid-template-columns: 1fr; }
  .pkg-v4-note { flex-direction: column; align-items: flex-start; }
}

@media (max-width:560px){
  .container{width:min(100% - 28px,1180px)}.section{padding:68px 0}.section-heading h2,.process-copy h2,.faq-intro h2,.mcu-copy h2,.cta-copy h2{font-size:38px;letter-spacing:-1.7px}.centered{text-align:left}.centered .eyebrow{justify-content:flex-start}.centered p{margin-left:0}
  .hero{padding-top:55px}.hero h1{font-size:44px;letter-spacing:-2.2px}.hero-lead{font-size:12px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-meta{grid-template-columns:1fr 1fr}.hero-meta div:last-child{grid-column:1/-1}.hero-media{min-height:460px}.hero-photo{inset:0 26px 55px 48px;border-radius:23px}.hero-card-top{right:0;top:34px;width:180px;padding:13px}.hero-card-bottom{left:0;bottom:3px;width:230px;grid-template-columns:64px 1fr;padding:8px}.hero-card-bottom img{width:64px;height:62px}.hero-stamp{width:88px;height:88px;right:0;bottom:86px;border-width:5px}.hero-stamp b{font-size:15px}.target-strip{margin-top:25px}
  .program-grid{grid-template-columns:1fr}.program-card{min-height:280px}.program-card-wide{display:block}.program-card-wide img{height:240px;min-height:0}.program-card h3{font-size:21px}
  .pillar-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none}.pillar-card,.pillar-large,.pillar-wide{grid-column:auto;grid-row:auto;height:330px}.pillar-card:nth-child(1){height:380px}.pillar-wide img{object-position:center 28%}
  .process-item{grid-template-columns:48px 1fr;gap:15px}.class-card{padding:25px}.class-card h3{font-size:25px;margin-top:32px}
  .mcu-gallery{height:420px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.mcu-a{grid-row:1/3}.mcu-b{grid-row:1/3}.mcu-c,.mcu-d{display:none}
  .facility-grid{grid-template-columns:1fr}.facility-card{height:380px}.facility-quote{grid-column:auto;min-height:280px}.facility-quote p{font-size:18px}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:240px 240px 240px}.g1,.g2,.g3{grid-column:auto}.g3{grid-column:1/-1}.g4,.g5,.g6{display:none}
  .faq-grid{gap:34px}.faq-item button span{font-size:12px}
  .cta-box{padding:34px 22px;border-radius:24px}.cta-copy>img{width:160px}.footer{margin-top:70px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}.wa-float{right:14px;bottom:14px;width:52px;height:52px}
}

/* anchor offset so sticky header does not cover section titles */
section[id]{scroll-margin-top:92px}

.footer-grid h3{margin:0 0 14px}
