/*
 PENERBIT LUTFI GILANG - V10.6 FINAL MASTER LOCKED
 ONE PUBLIC HEADER + ONE DROPDOWN ENGINE + FOUR VISUAL WORLDS

 LOCKED IDENTITIES:
 - Main publishing: white / cream / gold
 - Cerita Aksara: blue / white / gold + approved house artwork
 - Festival Aksara: red / gold + approved batik/wayang artwork
 - Galeri Jawara: ONLY approved three-wayang red/gold background
 - Book transactions: green / sky / white + approved landscape artwork

 IMPORTANT:
 - Header is sticky.
 - Page scroll is NEVER forced back to the top.
 - No inline SVG.
 - No external icon library.
*/

:root{
  --lg-gold:#e5aa36;
  --lg-gold-dark:#9c6800;
  --lg-ink:#171717;
  --lg-muted:#5f6368;
  --lg-line:#e6dfd3;
  --lg-white:#ffffff;
  --lg-blue:#1256a0;
  --lg-blue-dark:#0b3f7d;
  --lg-red:#a61f35;
  --lg-red-dark:#7d1325;
  --lg-green:#247a4a;
  --lg-green-dark:#165d38;
}

html{
  max-width:100%;
  overflow-x:hidden;
  scroll-padding-top:84px;
}
body{
  margin:0;
  max-width:100%;
  overflow-x:hidden;
}
*{box-sizing:border-box}

/* =============================================================
   MASTER HEADER - SAME STRUCTURE EVERYWHERE, STICKY ONLY
   ============================================================= */

#lg-final-header{
  position:sticky !important;
  top:0 !important;
  z-index:2147483000 !important;
  width:100%;
  background:rgba(255,255,255,.98) !important;
  color:var(--lg-ink) !important;
  border-bottom:1px solid rgba(25,25,25,.10);
  box-shadow:0 8px 26px rgba(0,0,0,.08);
  backdrop-filter:saturate(130%) blur(10px);
}
#lg-final-header *{box-sizing:border-box}

#lg-final-header .lgfh-shell{
  width:min(1240px,100%);
  min-height:74px;
  margin:0 auto;
  padding:8px 18px;
  display:flex;
  align-items:center;
  gap:18px;
}

#lg-final-header .lgfh-brand{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:11px;
  color:var(--lg-ink);
  text-decoration:none;
}
#lg-final-header .lgfh-logo{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border:1px solid rgba(229,170,54,.55);
  border-radius:13px;
  background:#fff;
}
#lg-final-header .lgfh-logo img{
  display:block;
  width:auto;
  max-width:48px;
  max-height:48px;
  object-fit:contain;
}
#lg-final-header .lgfh-copy{
  display:grid;
  line-height:1.05;
}
#lg-final-header .lgfh-copy small{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#72551f;
}
#lg-final-header .lgfh-copy strong{
  font-size:18px;
  font-weight:900;
  letter-spacing:-.02em;
}

#lg-final-header .lgfh-mobile{
  display:none;
  margin-left:auto;
  min-height:42px;
  padding:9px 13px;
  border:1px solid #d7c7aa;
  border-radius:10px;
  background:#fff;
  color:#171717;
  font:inherit;
  font-weight:900;
  cursor:pointer;
}

#lg-final-header .lgfh-nav{
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:3px;
}
#lg-final-header .lgfh-link,
#lg-final-header .lgfh-toggle{
  min-height:44px;
  padding:10px 12px;
  border:0;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  background:transparent;
  color:#171717;
  text-decoration:none;
  font:inherit;
  font-size:15px;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
}
#lg-final-header .lgfh-link:hover,
#lg-final-header .lgfh-toggle:hover,
#lg-final-header .lgfh-item.open>.lgfh-toggle,
#lg-final-header .lgfh-link.active{
  background:#fff5df;
  box-shadow:inset 0 -3px 0 var(--lg-gold);
}

body.lg-final-story #lg-final-header .lgfh-link:hover,
body.lg-final-story #lg-final-header .lgfh-toggle:hover,
body.lg-final-story #lg-final-header .lgfh-item.open>.lgfh-toggle,
body.lg-final-story #lg-final-header .lgfh-link.active{
  background:#eef4fc;
  color:var(--lg-blue-dark);
  box-shadow:inset 0 -3px 0 var(--lg-blue);
}
body.lg-final-festival #lg-final-header .lgfh-link:hover,
body.lg-final-festival #lg-final-header .lgfh-toggle:hover,
body.lg-final-festival #lg-final-header .lgfh-item.open>.lgfh-toggle,
body.lg-final-festival #lg-final-header .lgfh-link.active{
  background:#fff0f3;
  color:var(--lg-red-dark);
  box-shadow:inset 0 -3px 0 var(--lg-red);
}
body.lg-final-commerce #lg-final-header .lgfh-link:hover,
body.lg-final-commerce #lg-final-header .lgfh-toggle:hover,
body.lg-final-commerce #lg-final-header .lgfh-item.open>.lgfh-toggle,
body.lg-final-commerce #lg-final-header .lgfh-link.active{
  background:#eaf7ef;
  color:var(--lg-green-dark);
  box-shadow:inset 0 -3px 0 var(--lg-green);
}

#lg-final-header .lgfh-item{position:relative}
#lg-final-header .lgfh-caret{
  font-size:11px;
  transition:transform .18s ease;
}
#lg-final-header .lgfh-item.open .lgfh-caret{transform:rotate(180deg)}

#lg-final-header .lgfh-dropdown{
  position:absolute;
  top:calc(100% + 7px);
  left:0;
  z-index:2147483100;
  display:none;
  grid-template-columns:1fr;
  width:max-content;
  min-width:255px;
  max-width:min(370px,calc(100vw - 22px));
  padding:8px;
  border:1px solid #e4ddd1;
  border-top:4px solid var(--lg-gold);
  border-radius:14px;
  background:#fff;
  color:#171717;
  box-shadow:0 18px 50px rgba(24,20,12,.15);
}
#lg-final-header .lgfh-item.open>.lgfh-dropdown{
  display:grid !important;
  visibility:visible !important;
  opacity:1 !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
}
#lg-final-header .lgfh-dropdown a{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:100% !important;
  min-height:45px !important;
  padding:12px 13px !important;
  border-radius:9px;
  color:inherit !important;
  text-decoration:none;
  font-weight:850;
  line-height:1.35;
  white-space:normal;
}
#lg-final-header .lgfh-dropdown a:hover,
#lg-final-header .lgfh-dropdown a.active{
  background:var(--lg-gold) !important;
  color:#171717 !important;
}

/* Theme dropdowns: explicit readable contrast. */
body.lg-final-story #lg-final-header .lgfh-dropdown{
  background:var(--lg-blue) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.25) !important;
  border-top-color:var(--lg-gold) !important;
}
body.lg-final-festival #lg-final-header .lgfh-dropdown{
  background:#8f192d !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.25) !important;
  border-top-color:var(--lg-gold) !important;
}
body.lg-final-commerce #lg-final-header .lgfh-dropdown{
  background:var(--lg-green) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.25) !important;
  border-top-color:var(--lg-gold) !important;
}

/* =============================================================
   HOME - HAKI DJKI + THREE PATHWAYS
   ============================================================= */

#lg-final-home{
  padding:72px 20px 82px;
  background:#fff;
  color:#171717;
}
#lg-final-home .lgh-wrap{width:min(1180px,100%);margin:0 auto}
#lg-final-home .lgh-kicker,
.lg-section-kicker{
  display:inline-flex;
  padding:8px 12px;
  border:1px solid rgba(229,170,54,.6);
  border-radius:999px;
  background:#fff8e8;
  color:var(--lg-gold-dark);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
#lg-final-home h2{
  max-width:940px;
  margin:15px 0 10px;
  font-size:clamp(32px,4.2vw,56px);
  line-height:1.04;
  letter-spacing:-.04em;
}
#lg-final-home .lgh-lead{
  max-width:850px;
  margin:0 0 30px;
  color:#5f6368;
  font-size:18px;
  line-height:1.65;
}

#lg-final-home .lgh-haki{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:18px;
  align-items:center;
  margin:28px 0 36px;
  padding:22px;
  border:1px solid rgba(229,170,54,.62);
  border-radius:22px;
  background:
    radial-gradient(circle at 92% 8%,rgba(229,170,54,.20),transparent 24%),
    linear-gradient(135deg,#fffdf8,#fff6dd);
  box-shadow:0 16px 42px rgba(85,61,15,.09);
}
#lg-final-home .lgh-haki-badge{
  display:grid;
  place-items:center;
  width:74px;
  aspect-ratio:1;
  border:2px solid var(--lg-gold);
  border-radius:50%;
  background:#fff;
  color:var(--lg-gold-dark);
  font-weight:950;
  box-shadow:inset 0 0 0 6px #fff7df;
}
#lg-final-home .lgh-haki strong{
  display:block;
  margin-bottom:5px;
  font-size:22px;
}
#lg-final-home .lgh-haki p{
  margin:0;
  color:#5f6368;
  line-height:1.58;
}
.lg-final-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:47px;
  padding:11px 17px;
  border:1px solid currentColor;
  border-radius:12px;
  text-decoration:none;
  font-weight:900;
}
#lg-final-home .lgh-haki .lg-final-btn{
  background:var(--lg-gold);
  color:#171717;
  border-color:var(--lg-gold);
}

#lg-final-home .lgh-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
#lg-final-home .lgh-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:440px;
  padding:26px;
  border:1px solid #e4ddd1;
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 46px rgba(17,17,17,.08);
}
#lg-final-home .lgh-card small{
  display:inline-flex;
  width:max-content;
  padding:7px 10px;
  border-radius:999px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
#lg-final-home .lgh-card h3{
  margin:14px 0 8px;
  font-size:29px;
  line-height:1.06;
}
#lg-final-home .lgh-card p{color:#5f6368;line-height:1.6}
#lg-final-home .lgh-list{display:grid;gap:9px;margin:10px 0 23px}
#lg-final-home .lgh-row{
  display:grid;
  grid-template-columns:106px 1fr;
  gap:10px;
  padding-top:9px;
  border-top:1px solid rgba(95,99,104,.14);
  font-size:14px;
}
#lg-final-home .lgh-row span{color:#6a6d72;font-weight:700}
#lg-final-home .lgh-row b{color:#171717}
#lg-final-home .lgh-card .lg-final-btn{
  margin-top:auto;
  background:#171717;
  color:#fff;
  border-color:#171717;
}
#lg-final-home .lgh-author{border-top:6px solid var(--lg-gold)}
#lg-final-home .lgh-author small{background:#fff4d8;color:var(--lg-gold-dark)}
#lg-final-home .lgh-story{
  border-top:6px solid var(--lg-blue);
  background:
    linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.985)),
    url("/assets/images/cerita-aksara-hero-final.webp") center/cover;
}
#lg-final-home .lgh-story small{background:#eef4fc;color:var(--lg-blue)}
#lg-final-home .lgh-story .lg-final-btn{background:var(--lg-blue);border-color:var(--lg-blue)}
#lg-final-home .lgh-festival{
  transform:translateY(-10px);
  border:2px solid var(--lg-gold);
  color:#fff;
  background:
    linear-gradient(120deg,rgba(95,4,20,.95),rgba(126,13,33,.76)),
    url("/assets/images/festival-aksara-layout-final.webp") 68% center/cover;
  box-shadow:0 30px 70px rgba(127,23,40,.28);
}
#lg-final-home .lgh-festival small{background:var(--lg-gold);color:#171717}
#lg-final-home .lgh-festival h3,
#lg-final-home .lgh-festival .lgh-row b{color:#fff}
#lg-final-home .lgh-festival p,
#lg-final-home .lgh-festival .lgh-row span{color:rgba(255,255,255,.86)}
#lg-final-home .lgh-festival .lgh-row{border-top-color:rgba(255,255,255,.20)}
#lg-final-home .lgh-festival .lg-final-btn{
  background:var(--lg-gold);
  border-color:var(--lg-gold);
  color:#171717;
}
#lg-final-home .lgh-podium{
  display:flex;
  align-items:end;
  justify-content:center;
  gap:7px;
  min-height:78px;
  margin:4px 0 10px;
}
#lg-final-home .lgh-podium span{
  display:grid;
  place-items:center;
  width:54px;
  border:1px solid rgba(255,255,255,.25);
  border-bottom:0;
  border-radius:9px 9px 0 0;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-weight:950;
}
#lg-final-home .lgh-podium span:nth-child(1){height:46px}
#lg-final-home .lgh-podium span:nth-child(2){height:72px;background:var(--lg-gold);color:#171717}
#lg-final-home .lgh-podium span:nth-child(3){height:36px}

/* =============================================================
   CERITA AKSARA - PREMIUM FULL LANDING, FESTIVAL-LEVEL QUALITY
   ============================================================= */

body.lg-final-story{
  background:#eaf4ff !important;
}

#lg-final-story{
  background:#eaf4ff;
  color:#171717;
}
#lg-final-story .lgs-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:calc(100vh - 74px);
  display:flex;
  align-items:center;
  border-bottom:6px solid var(--lg-gold);
  background:
    linear-gradient(90deg,
      rgba(7,47,108,.95) 0%,
      rgba(10,66,145,.82) 38%,
      rgba(18,86,160,.22) 68%,
      rgba(18,86,160,.04) 100%),
    url("/assets/images/cerita-aksara-hero-final.webp") 68% center/cover no-repeat;
  color:#fff;
}
#lg-final-story .lgs-inner{
  width:min(1180px,100%);
  margin:0 auto;
  padding:68px 28px 82px;
}
#lg-final-story .lgs-copy{max-width:720px}
#lg-final-story .lgs-kicker{
  display:inline-flex;
  padding:8px 12px;
  border:1px solid var(--lg-gold);
  border-radius:999px;
  background:rgba(8,53,118,.72);
  color:#ffd877;
  font-size:12px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
#lg-final-story h1{
  margin:14px 0 12px;
  color:#fff;
  font-size:clamp(52px,7vw,94px);
  line-height:.95;
  letter-spacing:-.045em;
}
#lg-final-story .lgs-headline{
  max-width:700px;
  margin:0 0 11px;
  color:#fff;
  font-size:clamp(24px,3.2vw,39px);
  line-height:1.18;
  font-weight:850;
}
#lg-final-story .lgs-desc{
  max-width:665px;
  margin:0 0 25px;
  color:rgba(255,255,255,.88);
  font-size:17px;
  line-height:1.68;
}
#lg-final-story .lgs-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
  max-width:870px;
}
#lg-final-story .lgs-action{
  display:flex;
  flex-direction:column;
  min-height:112px;
  padding:15px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:14px;
  background:rgba(7,55,120,.78);
  color:#fff;
  text-decoration:none;
  backdrop-filter:blur(7px);
}
#lg-final-story .lgs-action.primary{
  border-color:var(--lg-gold);
  background:#0b468e;
  box-shadow:inset 0 -4px 0 var(--lg-gold);
}
#lg-final-story .lgs-action strong{font-size:16px}
#lg-final-story .lgs-action span{
  margin-top:7px;
  color:rgba(255,255,255,.80);
  font-size:12px;
  line-height:1.45;
}
#lg-final-story .lgs-action:hover{transform:translateY(-2px);background:#0d4c94}

#lg-final-story .lgs-benefit-band{
  padding:34px 20px 46px;
  background:#f7fbff;
}
#lg-final-story .lgs-benefits{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
#lg-final-story .lgs-benefit{
  padding:20px;
  border:1px solid #cfe0f7;
  border-top:5px solid var(--lg-blue);
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 30px rgba(18,86,160,.07);
}
#lg-final-story .lgs-benefit b{color:var(--lg-blue)}
#lg-final-story .lgs-benefit strong{
  display:block;
  margin:6px 0;
  color:var(--lg-blue-dark);
  font-size:19px;
}
#lg-final-story .lgs-benefit p{
  margin:0;
  color:#5f6368;
  font-size:13px;
  line-height:1.55;
}

#lg-final-story .lgs-section{
  padding:72px 20px;
}
#lg-final-story .lgs-section .lgs-wrap{
  width:min(1180px,100%);
  margin:0 auto;
}
#lg-final-story .lgs-section-head{
  max-width:820px;
  margin-bottom:28px;
}
#lg-final-story .lgs-section-head h2{
  margin:13px 0 10px;
  color:#102f59;
  font-size:clamp(32px,4vw,52px);
  line-height:1.05;
  letter-spacing:-.035em;
}
#lg-final-story .lgs-section-head p{
  margin:0;
  color:#5f6368;
  font-size:17px;
  line-height:1.65;
}

#lg-final-story .lgs-paths{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
#lg-final-story .lgs-path{
  display:flex;
  flex-direction:column;
  min-height:300px;
  padding:25px;
  border:1px solid #c9daf0;
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 42px rgba(18,86,160,.08);
}
#lg-final-story .lgs-num{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:50%;
  background:var(--lg-blue);
  color:#fff;
  font-weight:950;
  box-shadow:0 0 0 5px #eef4fc;
}
#lg-final-story .lgs-path h3{
  margin:17px 0 8px;
  color:var(--lg-blue-dark);
  font-size:25px;
}
#lg-final-story .lgs-path p{margin:0;color:#5f6368;line-height:1.6}
#lg-final-story .lgs-path .lg-final-btn{
  margin-top:auto;
  background:var(--lg-blue);
  border-color:var(--lg-blue);
  color:#fff;
}

#lg-final-story .lgs-showcase{
  padding:72px 20px;
  background:
    radial-gradient(circle at 82% 12%,rgba(229,170,54,.16),transparent 22%),
    linear-gradient(135deg,#083c7d,#1256a0);
  color:#fff;
}
#lg-final-story .lgs-showcase .lgs-wrap{
  width:min(1180px,100%);
  margin:0 auto;
}
#lg-final-story .lgs-showcase-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
#lg-final-story .lgs-showcase-card{
  min-height:300px;
  padding:28px;
  border:1px solid rgba(255,255,255,.22);
  border-top:5px solid var(--lg-gold);
  border-radius:22px;
  background:rgba(6,47,105,.58);
  backdrop-filter:blur(7px);
}
#lg-final-story .lgs-showcase-card small{
  color:#ffd877;
  font-weight:900;
  letter-spacing:.08em;
}
#lg-final-story .lgs-showcase-card h2{
  margin:10px 0 10px;
  color:#fff;
  font-size:34px;
}
#lg-final-story .lgs-showcase-card p{
  color:rgba(255,255,255,.84);
  line-height:1.67;
}
#lg-final-story .lgs-showcase-card .lg-final-btn{
  margin-top:14px;
  background:var(--lg-gold);
  border-color:var(--lg-gold);
  color:#171717;
}

#lg-final-story .lgs-flow{
  padding:72px 20px;
  background:#fff;
}
#lg-final-story .lgs-flow .lgs-wrap{width:min(1180px,100%);margin:0 auto}
#lg-final-story .lgs-flow-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}
#lg-final-story .lgs-flow-step{
  position:relative;
  padding:22px;
  border:1px solid #d5e2f4;
  border-radius:18px;
  background:#f8fbff;
}
#lg-final-story .lgs-flow-step b{
  display:block;
  color:var(--lg-blue);
  font-size:12px;
  letter-spacing:.08em;
}
#lg-final-story .lgs-flow-step strong{
  display:block;
  margin:7px 0;
  color:#123b70;
  font-size:20px;
}
#lg-final-story .lgs-flow-step p{
  margin:0;
  color:#5f6368;
  font-size:13px;
  line-height:1.55;
}

#lg-final-story .lgs-final-cta{
  padding:70px 20px 82px;
  background:#eaf4ff;
}
#lg-final-story .lgs-final-box{
  width:min(1050px,100%);
  margin:0 auto;
  padding:36px;
  border:1px solid #bcd4ef;
  border-radius:26px;
  background:#fff;
  text-align:center;
  box-shadow:0 22px 55px rgba(18,86,160,.11);
}
#lg-final-story .lgs-final-box h2{
  margin:0 0 9px;
  color:#0b3f7d;
  font-size:clamp(30px,4vw,48px);
}
#lg-final-story .lgs-final-box p{
  max-width:710px;
  margin:0 auto 19px;
  color:#5f6368;
  line-height:1.65;
}
#lg-final-story .lgs-final-box .lg-final-btn{
  background:var(--lg-blue);
  border-color:var(--lg-blue);
  color:#fff;
}

/* Story subpages remain in the same blue world without changing function. */
body.lg-final-story:not(.lg-final-story-root) main{
  background:#eaf4ff !important;
  color:#171717;
}
body.lg-final-story:not(.lg-final-story-root) main>section:first-child{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(6,49,111,.93),rgba(18,86,160,.64)),
    url("/assets/images/cerita-aksara-hero-final.webp") 70% center/cover no-repeat !important;
  color:#fff !important;
  border-bottom:5px solid var(--lg-gold) !important;
}
body.lg-final-story:not(.lg-final-story-root) main>section:first-child h1,
body.lg-final-story:not(.lg-final-story-root) main>section:first-child h2,
body.lg-final-story:not(.lg-final-story-root) main>section:first-child h3,
body.lg-final-story:not(.lg-final-story-root) main>section:first-child p,
body.lg-final-story:not(.lg-final-story-root) main>section:first-child small{
  color:#fff !important;
}

/* =============================================================
   FESTIVAL AKSARA - PRESERVE THE APPROVED "BEST" ROOT LOOK
   ============================================================= */

body.lg-final-festival{background:#fff7f2 !important}

#lg-final-festival-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:calc(100vh - 74px);
  display:flex;
  align-items:center;
  border-bottom:6px solid var(--lg-gold);
  background-color:var(--lg-red-dark);
  background-image:
    linear-gradient(90deg,
      rgba(76,0,10,.94) 0%,
      rgba(91,4,18,.85) 34%,
      rgba(115,7,24,.48) 57%,
      rgba(115,7,24,.10) 78%,
      rgba(115,7,24,.02) 100%),
    url("/assets/images/festival-aksara-layout-final.webp");
  background-position:center center,68% center;
  background-size:cover,cover;
  background-repeat:no-repeat,no-repeat;
  color:#fff;
}
#lg-final-festival-hero .lgf-shell{
  width:min(1220px,100%);
  margin:0 auto;
  padding:68px 34px 74px;
}
#lg-final-festival-hero .lgf-copy{max-width:720px}
#lg-final-festival-hero .lgf-kicker{
  display:inline-flex;
  padding:9px 18px;
  border:1px solid var(--lg-gold);
  border-radius:999px;
  background:rgba(92,2,19,.68);
  color:#ffd877;
  font-size:13px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
#lg-final-festival-hero h1{
  margin:17px 0 12px;
  color:#f4c45b !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(64px,7.5vw,112px);
  font-weight:500;
  line-height:.92;
  letter-spacing:-.045em;
  text-shadow:0 3px 0 rgba(54,0,8,.40),0 12px 38px rgba(0,0,0,.28);
}
#lg-final-festival-hero .lgf-headline{
  max-width:760px;
  margin:0 0 15px;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(29px,3.7vw,51px);
  font-weight:700;
  line-height:1.08;
  text-shadow:0 3px 14px rgba(0,0,0,.28);
}
#lg-final-festival-hero .lgf-desc{
  max-width:650px;
  margin:0 0 23px;
  color:rgba(255,255,255,.89);
  font-size:17px;
  line-height:1.65;
}
#lg-final-festival-hero .lgf-actions{
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin-bottom:21px;
}
#lg-final-festival-hero .lgf-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:12px 20px;
  border:1px solid var(--lg-gold);
  border-radius:11px;
  background:rgba(93,4,20,.76);
  color:#fff;
  text-decoration:none;
  font-weight:900;
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}
#lg-final-festival-hero .lgf-btn.primary{
  background:linear-gradient(180deg,#f4c85f,#d99f29);
  color:#241204;
  border-color:#ffd77b;
}
#lg-final-festival-hero .lgf-status{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:9px 12px;
  color:#ffeab6;
  text-decoration:none;
  font-weight:850;
}
#lg-final-festival-hero .lgf-proof{
  display:flex;
  flex-wrap:wrap;
  max-width:760px;
  border-top:1px solid rgba(229,170,54,.55);
}
#lg-final-festival-hero .lgf-proof article{
  min-width:185px;
  padding:15px 20px 8px 0;
  margin-right:20px;
}
#lg-final-festival-hero .lgf-proof article+article{
  padding-left:20px;
  border-left:1px solid rgba(229,170,54,.36);
}
#lg-final-festival-hero .lgf-proof strong{
  display:block;
  color:#f7c959;
  font-size:17px;
}
#lg-final-festival-hero .lgf-proof span{
  display:block;
  margin-top:4px;
  color:rgba(255,255,255,.78);
  font-size:12px;
  line-height:1.4;
}

/* Only hide duplicated legacy festival promotional heroes after the final one. */
body.lg-final-festival-root #lg-final-festival-hero ~ .festival-hero-v106,
body.lg-final-festival-root #lg-final-festival-hero ~ .liga-hero{
  display:none !important;
}

/* =============================================================
   GALERI JAWARA - ONE APPROVED BACKGROUND ONLY, NO MIX
   ============================================================= */

body.lg-final-jawara{
  background:#fff8f4 !important;
}
body.lg-final-jawara main{background:#fff8f4 !important}

body.lg-final-jawara .jawara-hero-v106,
body.lg-final-jawara main>section:first-child{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  min-height:570px !important;
  display:flex !important;
  align-items:center !important;
  border-bottom:6px solid var(--lg-gold) !important;
  background:none !important;
  background-color:var(--lg-red-dark) !important;
  background-image:
    linear-gradient(90deg,
      rgba(78,0,14,.94) 0%,
      rgba(98,2,20,.83) 37%,
      rgba(109,4,22,.38) 62%,
      rgba(109,4,22,.08) 80%,
      rgba(109,4,22,.02) 100%),
    url("/assets/images/galeri-jawara-hero-final.webp") !important;
  background-position:center center,72% center !important;
  background-size:cover,cover !important;
  background-repeat:no-repeat,no-repeat !important;
  color:#fff !important;
}

/* Explicitly remove legacy mixed decorations from the hero. */
body.lg-final-jawara .jawara-hero-v106::before,
body.lg-final-jawara .jawara-hero-v106::after,
body.lg-final-jawara .jawara-wayang-v106,
body.lg-final-jawara .jawara-wayang-v106::before,
body.lg-final-jawara .jawara-wayang-v106::after{
  display:none !important;
  content:none !important;
  background:none !important;
  background-image:none !important;
}
body.lg-final-jawara .jawara-hero-v106 img{
  display:none !important;
}
body.lg-final-jawara .jawara-hero-v106 .container{
  position:relative;
  z-index:2;
  max-width:1180px;
  width:min(1180px,100%);
  margin:0 auto;
  padding:62px 28px;
  text-align:left !important;
}
body.lg-final-jawara .jawara-hero-v106 small{
  color:#ffd877 !important;
  font-weight:900 !important;
}
body.lg-final-jawara .jawara-hero-v106 h1{
  max-width:750px;
  margin:12px 0 10px !important;
  color:#f2c25a !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(48px,6vw,86px) !important;
  line-height:.98 !important;
  text-shadow:0 8px 28px rgba(0,0,0,.28);
}
body.lg-final-jawara .jawara-hero-v106 p{
  max-width:670px !important;
  color:rgba(255,255,255,.90) !important;
  font-size:17px !important;
  line-height:1.65 !important;
}
body.lg-final-jawara .jawara-pills-v106{
  justify-content:flex-start !important;
}
body.lg-final-jawara .jawara-pills-v106 span{
  border-color:var(--lg-gold) !important;
  background:rgba(90,0,16,.70) !important;
  color:#ffe4a2 !important;
}
body.lg-final-jawara .jawara-card-v106{
  border:1px solid #ead9d4 !important;
  border-top:5px solid var(--lg-red) !important;
  background:#fff !important;
  color:#211719 !important;
  box-shadow:0 16px 38px rgba(110,20,35,.10) !important;
}

/* =============================================================
   BOOK TRANSACTIONS - GREEN / SKY / WHITE WORLD
   ============================================================= */

body.lg-final-commerce{background:#eff9f2 !important}
body.lg-final-commerce main{background:#eff9f2 !important}

.lg-final-commerce-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:350px;
  display:flex;
  align-items:center;
  border-bottom:6px solid var(--lg-gold);
  background:
    linear-gradient(90deg,
      rgba(19,91,56,.90) 0%,
      rgba(36,122,74,.70) 39%,
      rgba(36,122,74,.18) 69%,
      rgba(255,255,255,.03) 100%),
    url("/assets/images/transaksi-buku-hero-final.webp") center/cover no-repeat;
  color:#fff;
}
.lg-final-commerce-hero .lgc-inner{
  width:min(1180px,100%);
  margin:0 auto;
  padding:54px 28px;
}
.lg-final-commerce-hero small{
  display:inline-flex;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:999px;
  background:rgba(21,93,56,.45);
  color:#fff;
  font-weight:900;
  letter-spacing:.10em;
}
.lg-final-commerce-hero h1{
  max-width:760px;
  margin:13px 0 10px;
  color:#fff !important;
  font-size:clamp(40px,5.6vw,72px);
  line-height:1;
  letter-spacing:-.04em;
}
.lg-final-commerce-hero p{
  max-width:700px;
  margin:0;
  color:rgba(255,255,255,.90) !important;
  font-size:17px;
  line-height:1.65;
}
body.lg-final-commerce .lg-commerce-legacy-hero{
  display:none !important;
}

/* =============================================================
   HAKI - ONLY VERIFIABLE DJKI WORKS
   ============================================================= */

#lg-final-haki{
  min-height:70vh;
  background:#fffdf8;
  color:#171717;
}
#lg-final-haki .lghk-hero{
  padding:76px 22px 64px;
  border-bottom:1px solid #eadfca;
  background:
    radial-gradient(circle at 86% 12%,rgba(229,170,54,.22),transparent 25%),
    linear-gradient(135deg,#fffdf8 0%,#fff4dc 100%);
}
#lg-final-haki .lghk-wrap{
  width:min(1160px,100%);
  margin:0 auto;
}
#lg-final-haki h1{
  max-width:900px;
  margin:15px 0 12px;
  font-size:clamp(40px,5.7vw,74px);
  line-height:1;
  letter-spacing:-.045em;
}
#lg-final-haki .lghk-lead{
  max-width:850px;
  margin:0;
  color:#5f6368;
  font-size:18px;
  line-height:1.7;
}
#lg-final-haki .lghk-note{
  max-width:900px;
  margin-top:20px;
  padding:14px 16px;
  border-left:5px solid var(--lg-gold);
  border-radius:10px;
  background:#fff;
  color:#4f4b44;
  box-shadow:0 10px 28px rgba(70,54,18,.06);
  line-height:1.6;
}
#lg-final-haki .lghk-gallery{
  padding:46px 22px 76px;
}
#lg-final-haki .lghk-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:end;
  margin-bottom:20px;
}
#lg-final-haki .lghk-head h2{margin:8px 0 0;font-size:32px}
#lg-final-haki .lghk-head p{
  max-width:630px;
  margin:0;
  color:#67645e;
  line-height:1.55;
}
#lg-haki-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
#lg-haki-list .lghk-card{
  padding:20px;
  border:1px solid #e3dac9;
  border-top:5px solid var(--lg-gold);
  border-radius:17px;
  background:#fff;
  box-shadow:0 14px 34px rgba(30,24,12,.06);
}
#lg-haki-list .lghk-card small{
  color:var(--lg-gold-dark);
  font-weight:900;
  letter-spacing:.05em;
}
#lg-haki-list .lghk-card h3{
  margin:8px 0;
  font-size:21px;
  line-height:1.2;
}
#lg-haki-list .lghk-meta{
  display:grid;
  gap:5px;
  color:#5f6368;
  font-size:13px;
  line-height:1.45;
}
#lg-haki-list .lghk-link{
  display:inline-flex;
  margin-top:15px;
  min-height:42px;
  align-items:center;
  padding:9px 13px;
  border-radius:10px;
  background:#171717;
  color:#fff;
  text-decoration:none;
  font-weight:850;
}
#lg-haki-list .lghk-empty{
  grid-column:1/-1;
  padding:28px;
  border:1px dashed #cabfaa;
  border-radius:18px;
  background:#fff;
  color:#5f6368;
  text-align:center;
  line-height:1.65;
}

/* =============================================================
   RESPONSIVE
   ============================================================= */

@media(max-width:980px){
  #lg-final-header .lgfh-copy{display:none}
  #lg-final-home .lgh-grid{grid-template-columns:1fr}
  #lg-final-home .lgh-festival{transform:none}
  #lg-final-story .lgs-benefits{grid-template-columns:1fr 1fr}
  #lg-final-story .lgs-paths{grid-template-columns:1fr}
  #lg-final-story .lgs-flow-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:780px){
  #lg-final-header .lgfh-shell{
    min-height:66px;
    padding:6px 10px;
    flex-wrap:wrap;
  }
  #lg-final-header .lgfh-copy{display:grid}
  #lg-final-header .lgfh-copy strong{font-size:15px}
  #lg-final-header .lgfh-logo{width:48px;height:48px}
  #lg-final-header .lgfh-logo img{max-width:42px;max-height:42px}
  #lg-final-header .lgfh-mobile{display:inline-flex}

  #lg-final-header .lgfh-nav{
    display:none;
    order:10;
    width:100%;
    margin:0;
    padding:6px 0 10px;
    flex-direction:column;
    align-items:stretch;
    gap:2px;
  }
  #lg-final-header.nav-open .lgfh-nav{display:flex}
  #lg-final-header .lgfh-item,
  #lg-final-header .lgfh-link,
  #lg-final-header .lgfh-toggle{width:100%}
  #lg-final-header .lgfh-link,
  #lg-final-header .lgfh-toggle{
    justify-content:space-between;
    min-height:46px;
  }
  #lg-final-header .lgfh-dropdown{
    position:static !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:4px 0 !important;
    box-shadow:none !important;
  }

  #lg-final-home{padding:52px 14px 62px}
  #lg-final-home .lgh-haki{grid-template-columns:1fr}
  #lg-final-home .lgh-haki-badge{width:64px}

  #lg-final-story .lgs-hero{
    min-height:calc(100vh - 66px);
    background:
      linear-gradient(180deg,
        rgba(7,47,108,.89) 0%,
        rgba(10,66,145,.75) 55%,
        rgba(18,86,160,.30) 100%),
      url("/assets/images/cerita-aksara-hero-final.webp") 70% center/cover no-repeat;
  }
  #lg-final-story .lgs-inner{padding:48px 18px 58px}
  #lg-final-story .lgs-actions{grid-template-columns:1fr}
  #lg-final-story .lgs-benefits{grid-template-columns:1fr}
  #lg-final-story .lgs-section{padding:54px 14px}
  #lg-final-story .lgs-showcase{padding:54px 14px}
  #lg-final-story .lgs-showcase-grid{grid-template-columns:1fr}
  #lg-final-story .lgs-flow{padding:54px 14px}
  #lg-final-story .lgs-flow-grid{grid-template-columns:1fr}

  #lg-final-festival-hero{
    min-height:calc(100vh - 66px);
    align-items:flex-end;
    background-image:
      linear-gradient(180deg,
        rgba(96,4,21,.28) 0%,
        rgba(91,3,18,.56) 38%,
        rgba(72,0,13,.92) 76%,
        rgba(72,0,13,.98) 100%),
      url("/assets/images/festival-aksara-layout-final.webp");
    background-position:center center,70% center;
  }
  #lg-final-festival-hero .lgf-shell{padding:54px 18px 46px}
  #lg-final-festival-hero h1{font-size:clamp(52px,17vw,82px)}
  #lg-final-festival-hero .lgf-headline{font-size:clamp(27px,8.2vw,40px)}
  #lg-final-festival-hero .lgf-actions{display:grid;grid-template-columns:1fr}
  #lg-final-festival-hero .lgf-btn,
  #lg-final-festival-hero .lgf-status{width:100%}
  #lg-final-festival-hero .lgf-proof{display:grid;grid-template-columns:1fr}
  #lg-final-festival-hero .lgf-proof article{margin:0;padding:12px 0}
  #lg-final-festival-hero .lgf-proof article+article{
    padding-left:0;
    border-left:0;
    border-top:1px solid rgba(229,170,54,.30);
  }

  body.lg-final-jawara .jawara-hero-v106,
  body.lg-final-jawara main>section:first-child{
    min-height:580px !important;
    background-image:
      linear-gradient(180deg,
        rgba(86,1,17,.30) 0%,
        rgba(82,0,15,.58) 42%,
        rgba(69,0,12,.94) 78%,
        rgba(69,0,12,.98) 100%),
      url("/assets/images/galeri-jawara-hero-final.webp") !important;
    background-position:center center,68% center !important;
  }

  .lg-final-commerce-hero{
    min-height:400px;
    background:
      linear-gradient(180deg,rgba(19,91,56,.88),rgba(36,122,74,.48)),
      url("/assets/images/transaksi-buku-hero-final.webp") 58% center/cover no-repeat;
  }
  .lg-final-commerce-hero .lgc-inner{padding:52px 18px}

  #lg-final-haki .lghk-head{
    align-items:start;
    flex-direction:column;
  }
  #lg-haki-list{grid-template-columns:1fr}
}
