:root { --primary:#0f766e; --primary-dark:#0d5f58; --secondary:#f59e0b; --text:#0f172a; --muted:#64748b; --border:#e2e8f0; --soft:#f8fafc; --radius:16px; --shadow:0 4px 24px rgb(0 0 0 / 6%); --shadow-hover:0 12px 32px rgb(0 0 0 / 12%); }
body { font-family:Inter,sans-serif; } h1,h2,h3 { font-family:'Plus Jakarta Sans',sans-serif; } .nexa-section { padding:80px 0; } .nexa-section--soft { background:var(--soft); } .nexa-section-heading { max-width:680px; margin:0 0 32px; } .nexa-section-heading h2 { margin:8px 0 0; font-size:clamp(28px,4vw,40px); line-height:1.15; } .nexa-eyebrow { color:var(--primary); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; } .nexa-eyebrow--light { color:#fcd34d; } .nexa-grid { display:grid; gap:24px; } .nexa-grid--3 { grid-template-columns:repeat(3,1fr); } .nexa-grid--4 { grid-template-columns:repeat(4,1fr); } .nexa-card { border:1px solid var(--border); border-radius:var(--radius); background:#fff; box-shadow:var(--shadow); transition:transform .3s ease,box-shadow .3s ease; overflow:hidden; } .nexa-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-hover); } .nexa-badge { display:inline-flex; border-radius:9999px; padding:7px 13px; background:var(--badge-bg,#fef3c7); color:var(--badge-color,#92400e); font-size:12px; font-weight:700; } .nexa-button { display:inline-flex; align-items:center; gap:8px; border-radius:9999px; padding:13px 22px; font-weight:600; text-decoration:none; } .nexa-button--primary { background:var(--primary); color:#fff; } .nexa-button--primary:hover { background:var(--primary-dark); color:#fff; } .nexa-button--outline { border:1px solid var(--border); color:var(--text); background:#fff; } .nexa-button--light { background:#fff; color:var(--primary); } .nexa-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; } .nexa-hero { background:linear-gradient(135deg,#f8fafc,#ecfdf5); overflow:hidden; } .nexa-hero__grid { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:64px; min-height:520px; } .nexa-hero h1 { max-width:700px; margin:18px 0; font-size:clamp(38px,6vw,64px); line-height:1.05; } .nexa-hero p { max-width:560px; color:var(--muted); font-size:18px; line-height:1.7; } .nexa-hero__visual { position:relative; min-height:360px; } .nexa-hero__orb { position:absolute; inset:10% 8%; border-radius:32% 68% 55% 45%; background:linear-gradient(145deg,#0f766e,#10b981); transform:rotate(-8deg); box-shadow:var(--shadow-hover); } .nexa-hero__card { position:absolute; right:0; bottom:12%; display:grid; gap:6px; max-width:220px; padding:20px; border-radius:16px; background:#fff; box-shadow:var(--shadow-hover); } .nexa-hero__card span { color:var(--muted); font-size:13px; } .nexa-feature { padding:28px; } .nexa-feature h3 { margin-bottom:8px; } .nexa-feature p,.nexa-person p,.nexa-achievement p { color:var(--muted); } .nexa-icon-box { display:grid; place-items:center; width:48px; height:48px; border-radius:14px; background:#ccfbf1; color:var(--primary); font-size:24px; } .nexa-person a { color:inherit; text-decoration:none; } .nexa-person img,.nexa-achievement img { display:block; width:100%; height:220px; object-fit:cover; } .nexa-person div,.nexa-achievement div { padding:18px; } .nexa-person h3,.nexa-achievement h3 { margin:0 0 6px; font-size:18px; } .nexa-achievement img { height:200px; } .nexa-cta { background:var(--primary); color:#fff; } .nexa-cta h2 { max-width:680px; margin:10px 0; color:#fff; font-size:clamp(30px,4vw,46px); } .nexa-cta p { color:#ccfbf1; } .nexa-empty { padding:24px; border:1px dashed var(--border); border-radius:var(--radius); color:var(--muted); }
.nexa-countdown { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0; }
.nexa-countdown__item { display:grid; min-width:70px; place-items:center; padding:12px 14px; border:1px solid rgb(255 255 255 / 25%); border-radius:12px; background:#fff; color:var(--text); box-shadow:var(--shadow); }
.nexa-countdown__item strong { color:var(--primary); font:700 27px 'Plus Jakarta Sans',sans-serif; }
.nexa-countdown__item small { color:var(--muted); font-size:11px; }
.nexa-archive-results { scroll-margin-top:100px; transition:opacity .2s ease; }
.nexa-archive-page.is-filtering .nexa-archive-results { opacity:.45; pointer-events:none; }
.nexa-slider__controls { display:none; }
.nexa-slider.is-enhanced .nexa-slider__track { grid-auto-columns:calc((100% - 48px)/3); grid-template-columns:none; grid-auto-flow:column; overflow-x:auto; padding:4px 4px 24px; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:thin; }
.nexa-slider.is-enhanced .nexa-slider__slide { min-width:0; scroll-snap-align:start; }
.nexa-slider.is-enhanced.has-overflow .nexa-slider__controls { display:flex; justify-content:flex-end; gap:9px; }
.nexa-slider__controls button { display:grid; width:44px; height:44px; place-items:center; border:1px solid var(--border); border-radius:50%; background:#fff; color:var(--primary); cursor:pointer; font-size:20px; box-shadow:var(--shadow); }
.nexa-slider__controls button:disabled { opacity:.35; cursor:not-allowed; }
@media (max-width:900px) { .nexa-slider.is-enhanced .nexa-slider__track { grid-auto-columns:calc((100% - 24px)/2); } }
@media (max-width:600px) { .nexa-slider.is-enhanced .nexa-slider__track { grid-auto-columns:88%; } }
@media (max-width:900px) { .nexa-grid--4 { grid-template-columns:repeat(2,1fr); } .nexa-hero__grid { grid-template-columns:1fr; gap:20px; } .nexa-hero__visual { min-height:280px; } }
@media (max-width:640px) { .nexa-section { padding:52px 0; } .nexa-grid--3,.nexa-grid--4 { grid-template-columns:1fr; } .nexa-hero h1 { font-size:42px; } }
.nexa-detail { display:grid; grid-template-columns:minmax(0, .8fr) minmax(0, 1.2fr); gap:48px; align-items:start; } .nexa-detail > div img { width:100%; border-radius:24px; box-shadow:var(--shadow-hover); } .nexa-detail h1 { font-size:clamp(32px,5vw,52px); margin:10px 0; } .nexa-detail dt { color:var(--muted); font-size:13px; } .nexa-detail dd { margin:2px 0 16px; font-weight:600; } .nexa-quote { max-width:760px; } .nexa-quote blockquote { margin:24px 0; padding:24px; border-left:4px solid var(--primary); background:var(--soft); color:var(--muted); font-size:20px; line-height:1.7; } .nexa-quote cite { font-weight:700; font-style:normal; } .nexa-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; } .nexa-stats div { padding:20px; border-top:2px solid var(--primary); } .nexa-stats strong,.nexa-stats span { display:block; } .nexa-stats strong { font:700 32px 'Plus Jakarta Sans',sans-serif; color:var(--primary); } .nexa-stats span { color:var(--muted); } .nexa-ppdb-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; } .nexa-progress { height:10px; margin:18px 0 24px; overflow:hidden; border-radius:9999px; background:var(--border); } .nexa-progress span { display:block; height:100%; border-radius:inherit; background:var(--primary); } .nexa-steps { display:grid; gap:16px; padding-left:24px; color:var(--muted); } .nexa-steps li::marker { color:var(--primary); font-weight:700; }
@media (max-width:700px) { .nexa-detail,.nexa-ppdb-grid { grid-template-columns:1fr; gap:28px; } .nexa-stats { grid-template-columns:repeat(2,1fr); } }
.nexa-hero__visual[style] { border-radius:24px; background-position:center; background-size:cover; box-shadow:var(--shadow-hover); }
.nexa-hero__visual[style] .nexa-hero__orb { opacity:.18; }
.nexa-quote__photo { float:left; width:150px; height:150px; margin:0 28px 18px 0; border:5px solid #fff; border-radius:50%; object-fit:cover; box-shadow:var(--shadow-hover); }
.nexa-testimonial { margin:0; padding:26px; }
.nexa-testimonial blockquote { margin:0 0 20px; color:var(--muted); font-size:17px; line-height:1.7; }
.nexa-testimonial figcaption { display:grid; gap:3px; }
.nexa-testimonial figcaption span { color:var(--muted); font-size:13px; }
.nexa-partner-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
.nexa-partner { display:grid; min-height:110px; place-items:center; padding:18px; border:1px solid var(--border); border-radius:14px; background:#fff; }
.nexa-partner img { display:block; max-width:140px; max-height:64px; object-fit:contain; }
@media (max-width:800px) { .nexa-partner-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:520px) { .nexa-quote__photo { float:none; margin:0 0 24px; } .nexa-partner-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.nexa-ppdb-page { background:#fff; }
.nexa-ppdb-hero { background:linear-gradient(135deg,#ecfdf5,#f8fafc); }
.nexa-ppdb-hero h1 { max-width:850px; margin:14px 0 8px; font-size:clamp(38px,6vw,62px); line-height:1.08; }
.nexa-ppdb-hero > div > p { max-width:680px; color:var(--muted); font-size:18px; }
.nexa-ppdb-year { color:var(--primary)!important; font-weight:700; }
.nexa-status-badge { display:inline-flex; padding:7px 13px; border-radius:999px; background:#f1f5f9; color:#475569; font-size:12px; font-weight:700; }
.nexa-status-badge--open { background:#dcfce7; color:#166534; }
.nexa-status-badge--upcoming { background:#dbeafe; color:#1d4ed8; }
.nexa-status-badge--full,.nexa-status-badge--closed { background:#fee2e2; color:#991b1b; }
.nexa-ppdb-content { padding-top:48px; padding-bottom:100px; }
.nexa-ppdb-announcement { margin-bottom:32px; padding:20px 22px; border-left:4px solid var(--secondary); border-radius:12px; background:#fffbeb; }
.nexa-ppdb-announcement p { margin-bottom:0; }
.nexa-ppdb-summary { padding:30px; border:1px solid var(--border); border-radius:20px; background:#fff; box-shadow:var(--shadow); }
.nexa-ppdb-summary h2 { margin:7px 0 24px; }
.nexa-ppdb-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.nexa-ppdb-summary-grid div { padding:16px; border-radius:14px; background:var(--soft); }
.nexa-ppdb-summary-grid strong,.nexa-ppdb-summary-grid span { display:block; }
.nexa-ppdb-summary-grid strong { color:var(--primary); font:700 30px 'Plus Jakarta Sans',sans-serif; }
.nexa-ppdb-summary-grid span { color:var(--muted); }
.nexa-section-block { padding-top:72px; }
.nexa-wave-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.nexa-wave-card { padding:24px; }
.nexa-wave-card h3 { margin-top:0; }
.nexa-wave-card span { color:var(--primary); font-weight:700; }
.nexa-ppdb-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin:0; padding:0; list-style:none; }
.nexa-ppdb-steps li { display:grid; align-content:start; gap:16px; padding:22px; border:1px solid var(--border); border-radius:16px; background:#fff; }
.nexa-ppdb-steps li > span { display:grid; width:42px; height:42px; place-items:center; border-radius:50%; background:var(--primary); color:#fff; font-weight:700; }
.nexa-ppdb-steps h3 { margin:0 0 7px; font-size:18px; }
.nexa-ppdb-steps p { margin:0; color:var(--muted); }
.nexa-ppdb-two-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.nexa-checklist { padding:26px; }
.nexa-checklist h2 { margin-top:0; }
.nexa-checklist ul { display:grid; gap:11px; padding:0; list-style:none; }
.nexa-checklist li { position:relative; padding-left:28px; }
.nexa-checklist li::before { position:absolute; left:0; content:'✓'; color:var(--primary); font-weight:700; }
.nexa-fee-table { overflow:hidden; border:1px solid var(--border); border-radius:16px; }
.nexa-fee-row { display:grid; grid-template-columns:1.2fr .6fr 1fr; gap:18px; padding:18px 20px; border-bottom:1px solid var(--border); }
.nexa-fee-row:last-child { border-bottom:0; }
.nexa-fee-row span { color:var(--primary); font-weight:700; }
.nexa-fee-row small { color:var(--muted); }
.nexa-faq-list { display:grid; gap:12px; }
.nexa-faq-item { overflow:hidden; border:1px solid var(--border); border-radius:14px; background:#fff; }
.nexa-faq-item h3 { margin:0; }
.nexa-faq-item button { display:flex; width:100%; align-items:center; justify-content:space-between; padding:18px 20px; border:0; background:#fff; color:var(--text); cursor:pointer; font:600 16px 'Plus Jakarta Sans',sans-serif; text-align:left; }
.nexa-faq-item button span { color:var(--primary); font-size:22px; }
.nexa-faq-item.is-open button span { transform:rotate(45deg); }
.nexa-faq-answer { padding:0 20px 18px; color:var(--muted); }
.nexa-ppdb-contact { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:32px; border-radius:20px; background:var(--soft); }
.nexa-ppdb-contact h2 { margin:7px 0; }
.nexa-ppdb-sticky { display:none; }
@media (max-width:900px) { .nexa-wave-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .nexa-ppdb-steps { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) { .nexa-ppdb-summary-grid,.nexa-wave-grid,.nexa-ppdb-steps,.nexa-ppdb-two-columns { grid-template-columns:1fr; } .nexa-fee-row { grid-template-columns:1fr; gap:5px; } .nexa-ppdb-contact { align-items:flex-start; flex-direction:column; } .nexa-ppdb-sticky { position:fixed; right:12px; bottom:12px; left:12px; z-index:20; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px; border:1px solid var(--border); border-radius:16px; background:#fff; box-shadow:var(--shadow-hover); } .nexa-ppdb-sticky span { font-size:12px; font-weight:700; } }
.nexa-archive-hero { max-width:760px; margin-bottom:30px; }
.nexa-archive-hero h1 { margin:8px 0; font-size:clamp(36px,5vw,54px); }
.nexa-archive-hero p { color:var(--muted); font-size:17px; }
.nexa-archive-filters { display:grid; grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(140px,1fr)); gap:12px; align-items:end; margin-bottom:18px; padding:18px; border:1px solid var(--border); border-radius:16px; background:var(--soft); }
.nexa-archive-filters label { display:grid; gap:6px; }
.nexa-archive-filters label > span { font-size:12px; font-weight:700; }
.nexa-archive-filters input,.nexa-archive-filters select { width:100%; min-height:44px; border:1px solid #cbd5e1; border-radius:10px; background:#fff; padding:8px 11px; }
.nexa-filter-actions { display:flex; align-items:center; gap:10px; }
.nexa-filter-actions a { color:var(--primary); }
.nexa-result-summary { margin:0 0 20px; color:var(--muted); font-size:14px; }
.nexa-achievement a { color:inherit; text-decoration:none; }
.nexa-card-placeholder,.nexa-detail-placeholder { display:grid; place-items:center; background:linear-gradient(135deg,#ccfbf1,#fef3c7); color:var(--primary); font:700 54px 'Plus Jakarta Sans',sans-serif; }
.nexa-card-placeholder { height:220px; }
.nexa-empty--large { padding:48px; text-align:center; }
.nexa-navigation { margin-top:48px; }
.nexa-navigation .nav-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px; }
.nexa-navigation .page-numbers { display:inline-flex; min-width:46px; min-height:46px; box-sizing:border-box; align-items:center; justify-content:center; border:1px solid var(--border); border-radius:14px; padding:0 14px; background:#fff; color:var(--text); font-size:14px; font-weight:700; line-height:1; text-decoration:none; box-shadow:0 3px 12px rgb(15 23 42 / 5%); transition:border-color .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease; }
.nexa-navigation a.page-numbers:hover { border-color:var(--primary); background:#ecfdf5; color:var(--primary-dark); box-shadow:0 8px 20px rgb(15 118 110 / 12%); transform:translateY(-2px); }
.nexa-navigation a.page-numbers:focus-visible { border-color:var(--secondary); outline:3px solid rgb(245 158 11 / 35%); outline-offset:2px; }
.nexa-navigation .page-numbers.current { border-color:var(--primary); background:var(--primary); color:#fff; box-shadow:0 8px 20px rgb(15 118 110 / 22%); }
.nexa-navigation .page-numbers.dots { min-width:28px; border-color:transparent; padding:0 4px; background:transparent; box-shadow:none; color:var(--muted); }
.nexa-navigation .page-numbers.prev,.nexa-navigation .page-numbers.next { min-width:112px; border-radius:999px; }
@media (max-width:600px) {
	.nexa-navigation { margin-top:36px; }
	.nexa-navigation .nav-links { gap:6px; }
	.nexa-navigation .page-numbers { min-width:42px; min-height:42px; border-radius:12px; padding:0 11px; }
	.nexa-navigation .nav-links::after { width:100%; content:''; order:1; }
	.nexa-navigation .page-numbers.prev,.nexa-navigation .page-numbers.next { flex:1 1 calc(50% - 3px); min-width:0; order:2; }
	.nexa-navigation .page-numbers.dots { min-width:22px; padding:0 2px; }
}

/* Keep premium overrides after legacy component declarations. */
.nexa-quote { display:grid; max-width:1040px; grid-template-columns:220px 1fr; column-gap:46px; align-items:center; }
.nexa-quote__photo { float:none; grid-row:1 / span 4; width:220px; height:280px; margin:0; border-radius:110px 110px 28px 28px; }
.nexa-quote blockquote { margin:20px 0 16px; padding:28px 32px; border-left:0; border-radius:20px; background:linear-gradient(135deg,#f0fdfa,#f8fafc); color:#334155; }
.nexa-stats { gap:0; overflow:hidden; border:1px solid var(--border); border-radius:24px; background:#fff; box-shadow:var(--shadow); }
.nexa-stats div { min-height:120px; padding:28px; border-top:0; border-right:1px solid var(--border); }
.nexa-stats div:last-child { border-right:0; }
.nexa-detail { gap:64px; }
.nexa-detail > div img { min-height:560px; object-fit:cover; }
.nexa-detail--guru { grid-template-columns:minmax(280px,420px) minmax(0,1fr); }
.nexa-detail--guru .nexa-detail-media { width:100%; max-width:420px; }
.nexa-detail--guru .nexa-detail-media img,
.nexa-detail--guru .nexa-detail-placeholder { display:block; width:100%; height:clamp(360px,38vw,480px); min-height:0; object-fit:cover; object-position:center top; }
.nexa-detail--prestasi,
.nexa-detail--kegiatan,
.nexa-detail--fasilitas { grid-template-columns:minmax(300px,480px) minmax(0,1fr); }
.nexa-detail--prestasi .nexa-detail-media,
.nexa-detail--kegiatan .nexa-detail-media,
.nexa-detail--fasilitas .nexa-detail-media { width:100%; max-width:480px; }
.nexa-detail--prestasi .nexa-detail-media img,
.nexa-detail--kegiatan .nexa-detail-media img,
.nexa-detail--fasilitas .nexa-detail-media img,
.nexa-detail--prestasi .nexa-detail-placeholder,
.nexa-detail--kegiatan .nexa-detail-placeholder,
.nexa-detail--fasilitas .nexa-detail-placeholder { display:block; width:100%; height:clamp(300px,30vw,400px); min-height:0; object-fit:cover; object-position:center; }
@media (max-width:900px) {
	.nexa-quote { grid-template-columns:160px 1fr; column-gap:28px; }
	.nexa-quote__photo { width:160px; height:210px; }
}
@media (max-width:640px) {
	.nexa-quote { grid-template-columns:86px 1fr; column-gap:18px; }
	.nexa-quote__photo { width:86px; height:108px; margin:0; }
	.nexa-quote blockquote,.nexa-quote cite { grid-column:1 / -1; }
	.nexa-stats { grid-template-columns:repeat(2,1fr); }
	.nexa-stats div { min-height:100px; border-right:1px solid var(--border); border-bottom:1px solid var(--border); }
	.nexa-stats div:nth-child(2n) { border-right:0; }
	.nexa-stats div:nth-last-child(-n+2) { border-bottom:0; }
}
@media (max-width:700px) {
	.nexa-detail--guru,
	.nexa-detail--prestasi,
	.nexa-detail--kegiatan,
	.nexa-detail--fasilitas { grid-template-columns:1fr; }
	.nexa-detail--guru .nexa-detail-media,
	.nexa-detail--prestasi .nexa-detail-media,
	.nexa-detail--kegiatan .nexa-detail-media,
	.nexa-detail--fasilitas .nexa-detail-media { margin-inline:auto; }
}

/* Premium storefront layer: consistent hierarchy across complete and fresh installs. */
.nexa-sekolah-home .nexa-section { position:relative; }
.nexa-sekolah-home .nexa-section-heading { max-width:760px; }
.nexa-sekolah-home .nexa-section-heading p { margin-top:14px; color:var(--muted); font-size:17px; line-height:1.75; }
.nexa-hero { isolation:isolate; min-height:680px; background:linear-gradient(125deg,#f6fffc 0%,#ecfdf5 52%,#fff8e7 100%); }
.nexa-hero::before { position:absolute; inset:0; z-index:-1; background-image:radial-gradient(circle at 12% 18%,rgb(15 118 110 / 9%) 0 2px,transparent 2.5px); background-size:28px 28px; content:''; mask-image:linear-gradient(90deg,#000,transparent 45%); }
.nexa-hero__grid { min-height:680px; }
.nexa-hero h1 { max-width:720px; margin:20px 0; font-size:clamp(46px,5.4vw,76px); letter-spacing:-.045em; }
.nexa-hero p { max-width:640px; font-size:19px; }
.nexa-hero__visual { min-height:500px; border:10px solid rgb(255 255 255 / 82%); border-radius:34px; background-position:center; background-size:cover; box-shadow:0 30px 70px rgb(15 23 42 / 18%); }
.nexa-hero__visual::after { position:absolute; inset:auto 24px 24px auto; width:120px; height:120px; border:1px solid rgb(255 255 255 / 45%); border-radius:50%; background:rgb(15 118 110 / 25%); content:''; backdrop-filter:blur(8px); }
.nexa-hero__orb { display:none; }
.nexa-hero__card { right:-24px; bottom:54px; z-index:1; max-width:250px; padding:22px; border:1px solid rgb(255 255 255 / 70%); border-radius:18px; }
.nexa-actions .nexa-button { min-height:50px; box-sizing:border-box; padding:14px 24px; box-shadow:0 10px 24px rgb(15 118 110 / 18%); }
.nexa-quote { display:grid; max-width:1040px; grid-template-columns:220px 1fr; column-gap:46px; align-items:center; }
.nexa-quote__photo { grid-row:1 / span 4; width:220px; height:280px; border-radius:110px 110px 28px 28px; object-fit:cover; box-shadow:0 22px 50px rgb(15 23 42 / 16%); }
.nexa-quote blockquote { margin:20px 0 16px; padding:28px 32px; border-left:0; border-radius:20px; background:linear-gradient(135deg,#f0fdfa,#f8fafc); color:#334155; font-size:20px; }
.nexa-card { border-color:rgb(226 232 240 / 85%); box-shadow:0 10px 34px rgb(15 23 42 / 7%); }
.nexa-card img { transition:transform .45s ease; }
.nexa-card:hover img { transform:scale(1.035); }
.nexa-person,.nexa-achievement { height:100%; }
.nexa-person a,.nexa-achievement a { display:block; height:100%; }
.nexa-person img { height:320px; }
.nexa-achievement img { height:230px; }
.nexa-person h3,.nexa-achievement h3 { font-size:19px; line-height:1.35; }
.nexa-stats { gap:0; overflow:hidden; border:1px solid var(--border); border-radius:24px; background:#fff; box-shadow:var(--shadow); }
.nexa-stats div { min-height:120px; padding:28px; border-top:0; border-right:1px solid var(--border); }
.nexa-stats div:last-child { border-right:0; }
.nexa-stats strong { font-size:40px; }
.nexa-testimonials .nexa-card,.nexa-testimonial { position:relative; padding:30px; }
.nexa-testimonial::before { display:block; margin-bottom:14px; color:var(--secondary); content:'“'; font:700 54px/1 Georgia,serif; }
.nexa-detail { gap:64px; }
.nexa-detail > div img { min-height:560px; object-fit:cover; }
.nexa-detail h1 { letter-spacing:-.035em; }
.nexa-related .nexa-card { background:linear-gradient(145deg,#fff,#f8fafc); }
.nexa-sekolah-footer { position:relative; margin-top:0; padding-top:74px; background:linear-gradient(145deg,#081426,#0f1d35); }
.nexa-sekolah-footer::before { position:absolute; top:0; right:0; left:0; height:4px; background:linear-gradient(90deg,var(--primary),var(--secondary),var(--primary)); content:''; }
.nexa-sekolah-footer-grid { gap:48px; }
.nexa-sekolah-footer-logo { width:190px; }
.nexa-sekolah-footer a { transition:color .2s ease,opacity .2s ease; }
.nexa-sekolah-footer a:hover { color:#fff; }
@media (max-width:900px) {
	.nexa-hero,.nexa-hero__grid { min-height:auto; }
	.nexa-hero__grid { padding-top:72px; padding-bottom:72px; }
	.nexa-hero__visual { min-height:430px; }
	.nexa-quote { grid-template-columns:160px 1fr; column-gap:28px; }
	.nexa-quote__photo { width:160px; height:210px; }
}
@media (max-width:640px) {
	.nexa-hero__grid { padding-top:52px; padding-bottom:56px; }
	.nexa-hero h1 { font-size:42px; }
	.nexa-hero p { font-size:16px; }
	.nexa-hero__visual { min-height:300px; border-width:6px; border-radius:24px; }
	.nexa-hero__card { right:10px; bottom:18px; max-width:190px; padding:14px; }
	.nexa-hero__visual::after { display:none; }
	.nexa-quote { display:grid; grid-template-columns:86px 1fr; column-gap:18px; }
	.nexa-quote__photo { width:86px; height:108px; }
	.nexa-quote blockquote,.nexa-quote cite { grid-column:1 / -1; }
	.nexa-quote blockquote { padding:20px; font-size:17px; }
	.nexa-person img { height:auto; aspect-ratio:4/5; }
	.nexa-achievement img { height:auto; aspect-ratio:4/3; }
	.nexa-stats { grid-template-columns:repeat(2,1fr); }
	.nexa-stats div { min-height:100px; border-right:1px solid var(--border); border-bottom:1px solid var(--border); }
	.nexa-stats div:nth-child(2n) { border-right:0; }
	.nexa-stats div:nth-last-child(-n+2) { border-bottom:0; }
}
.nexa-back-link { display:inline-flex; margin-bottom:24px; color:var(--primary); font-weight:600; text-decoration:none; }
.nexa-detail-media { position:sticky; top:100px; }
.nexa-detail-placeholder { min-height:480px; border-radius:24px; box-shadow:var(--shadow-hover); }
.nexa-detail-lead { color:var(--muted); font-size:18px; }
.nexa-detail-quote { margin:24px 0; padding:20px; border-left:4px solid var(--secondary); border-radius:0 12px 12px 0; background:#fffbeb; color:#78350f; }
.nexa-detail-gallery,.nexa-related { padding-top:72px; }
.nexa-gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.nexa-gallery-grid a { overflow:hidden; border-radius:14px; background:var(--soft); aspect-ratio:4/3; }
.nexa-gallery-grid img { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.nexa-gallery-grid a:hover img { transform:scale(1.04); }
@media (max-width:960px) { .nexa-archive-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) { .nexa-archive-filters { grid-template-columns:1fr; } .nexa-detail-media { position:static; } .nexa-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.nexa-content-container { width:min(820px,calc(100% - 32px)); margin-inline:auto; }
.nexa-breadcrumb { margin-bottom:34px; color:var(--muted); font-size:13px; }
.nexa-breadcrumb ol { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.nexa-breadcrumb li:not(:last-child)::after { margin-left:8px; content:'/'; color:#94a3b8; }
.nexa-breadcrumb a { color:var(--primary); text-decoration:none; }
.nexa-prose h1 { margin:10px 0 28px; font-size:clamp(36px,6vw,58px); line-height:1.08; }
.nexa-prose h2 { margin-top:42px; font-size:30px; }
.nexa-prose h3 { margin-top:32px; font-size:23px; }
.nexa-prose p,.nexa-prose li { font-size:17px; line-height:1.85; }
.nexa-prose img { max-width:100%; height:auto; border-radius:var(--radius); }
.nexa-prose blockquote { margin:32px 0; padding:22px 26px; border-left:4px solid var(--primary); border-radius:0 var(--radius) var(--radius) 0; background:var(--soft); }
.nexa-featured-image { margin:32px 0; }
.nexa-featured-image img { display:block; width:100%; border-radius:24px; box-shadow:var(--shadow); }
.nexa-post-card a { display:block; height:100%; color:inherit; text-decoration:none; }
.nexa-post-card img,.nexa-post-placeholder { display:block; width:100%; height:220px; object-fit:cover; }
.nexa-post-placeholder { display:grid; place-items:center; background:linear-gradient(135deg,#ccfbf1,#fef3c7); color:var(--primary); font:700 56px 'Plus Jakarta Sans',sans-serif; }
.nexa-post-card__body { padding:24px; }
.nexa-post-card h2 { margin:8px 0; font-size:22px; line-height:1.3; }
.nexa-post-card p,.nexa-post-meta { color:var(--muted); }
.nexa-article-footer { margin-top:40px; padding-top:24px; border-top:1px solid var(--border); }
.nexa-tags { display:flex; flex-wrap:wrap; align-items:center; gap:9px; }
.nexa-tags__label { margin-right:3px; color:var(--text); font-size:13px; font-weight:700; }
.nexa-tags a { display:inline-flex; align-items:center; min-height:36px; padding:7px 13px; border:1px solid #99d8cb; border-radius:9999px; background:#f0fdfa; color:var(--primary-dark); font-size:13px; font-weight:600; line-height:1.2; text-decoration:none; transition:border-color .2s ease,background-color .2s ease,color .2s ease; }
.nexa-tags a:hover,.nexa-tags a:focus-visible { border-color:var(--primary); background:var(--primary); color:#fff; }
.nexa-article-related { margin-top:64px; padding-top:0; }
.nexa-article-related .nexa-section-heading { margin-bottom:24px; }
.nexa-article-related .nexa-post-card__body { padding:18px; }
.nexa-article-related .nexa-post-card h2 { font-size:18px; }
.nexa-article-related .nexa-post-card img,.nexa-article-related .nexa-post-placeholder { height:160px; }
.nexa-post-meta { font-size:13px; }
.nexa-read-more { color:var(--primary); font-weight:700; }
.nexa-search-results { margin-top:28px; }
.search-form { display:flex; max-width:620px; gap:10px; margin:24px 0 34px; }
.search-form label { flex:1; }
.search-field { width:100%; min-height:48px; box-sizing:border-box; border:1px solid var(--border); border-radius:999px; padding:10px 18px; font:inherit; }
.search-submit { min-height:48px; border:0; border-radius:999px; padding:10px 22px; background:var(--primary); color:#fff; font-weight:700; cursor:pointer; }
.nexa-not-found { min-height:60vh; text-align:center; }
.nexa-not-found .nexa-content-container { display:grid; justify-items:center; }
.nexa-error-code { color:#ccfbf1; font:700 clamp(90px,18vw,180px)/.8 'Plus Jakarta Sans',sans-serif; }
.nexa-not-found h1 { max-width:680px; margin:18px 0 10px; font-size:clamp(34px,6vw,56px); }
.nexa-not-found p { max-width:600px; color:var(--muted); font-size:17px; }
.post-navigation { margin-top:50px; padding-top:28px; border-top:1px solid var(--border); }
.post-navigation .nav-links { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.post-navigation a { display:grid; gap:5px; text-decoration:none; }
.post-navigation span { color:var(--muted); font-size:12px; }
.nexa-comments { margin-top:54px; padding-top:32px; border-top:1px solid var(--border); }
.nexa-comments .comment-list { display:grid; gap:18px; padding:0; list-style:none; }
.nexa-comments .comment-body { padding:20px; border:1px solid var(--border); border-radius:var(--radius); }
.nexa-comments input:not([type=submit]),.nexa-comments textarea { width:100%; box-sizing:border-box; border:1px solid var(--border); border-radius:12px; padding:12px; }
.nexa-comments input[type=submit] { border:0; border-radius:999px; padding:12px 22px; background:var(--primary); color:#fff; font-weight:700; }
@media (max-width:600px) { .search-form { align-items:stretch; flex-direction:column; } .post-navigation .nav-links { grid-template-columns:1fr; } }
.nexa-sekolah-header { position:relative; z-index:5; background:#fff; transition:box-shadow .2s ease; } .nexa-sekolah-header.is-sticky { position:sticky; top:0; box-shadow:var(--shadow); } .nexa-sekolah-header > .nexa-sekolah-container { display:flex; align-items:center; justify-content:space-between; min-height:72px; } .nexa-sekolah-header nav { margin-left:auto; } .nexa-sekolah-header nav ul { display:flex; gap:14px; margin:0; padding:0; list-style:none; } .nexa-sekolah-header nav li { position:relative; } .nexa-sekolah-header nav a { color:var(--text); font-size:14px; text-decoration:none; white-space:nowrap; } .nexa-sekolah-header nav .sub-menu { position:absolute; top:100%; right:0; z-index:10; display:none; min-width:210px; gap:0; padding:10px; border:1px solid var(--border); border-radius:12px; background:#fff; box-shadow:var(--shadow-hover); } .nexa-sekolah-header nav .sub-menu a { display:block; padding:9px 10px; border-radius:8px; } .nexa-sekolah-header nav .sub-menu a:hover { background:var(--soft); } .nexa-sekolah-header nav li:hover > .sub-menu,.nexa-sekolah-header nav li:focus-within > .sub-menu { display:grid; } .nexa-menu-toggle { display:none; border:1px solid var(--border); border-radius:10px; background:#fff; padding:8px 12px; font-size:20px; } .screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
*:focus-visible { outline:3px solid #f59e0b; outline-offset:3px; } @media (max-width:900px) { .nexa-menu-toggle { display:block; } .nexa-sekolah-header nav { display:none; position:absolute; top:72px; left:16px; right:16px; margin-left:0; padding:16px; border:1px solid var(--border); border-radius:16px; background:#fff; box-shadow:var(--shadow-hover); } .nexa-sekolah-header nav.is-open { display:block; } .nexa-sekolah-header nav ul { display:grid; gap:14px; } .nexa-sekolah-header nav .sub-menu { position:static; display:grid; min-width:0; margin:10px 0 0 14px; padding:0 0 0 14px; border:0; border-left:1px solid var(--border); border-radius:0; box-shadow:none; } } @media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; } } .nexa-sekolah-brand img { display:block; width:170px; height:auto; }

/* Keep multi-level desktop menus separated and keyboard accessible. */
@media (min-width:901px) {
	.nexa-sekolah-header nav > div > ul > li > a {
		display:flex;
		align-items:center;
		min-height:44px;
		padding:0 8px;
		border-radius:8px;
		transition:background-color .2s ease,color .2s ease;
	}
	.nexa-sekolah-header nav > div > ul > li:hover > a,
	.nexa-sekolah-header nav > div > ul > li:focus-within > a,
	.nexa-sekolah-header nav > div > ul > li.current-menu-item > a,
	.nexa-sekolah-header nav > div > ul > li.current-menu-ancestor > a {
		background:#ecfdf5;
		color:var(--primary-dark);
	}
	.nexa-sekolah-header nav .menu-item-has-children > a::after {
		margin-left:6px;
		content:'▾';
		color:var(--muted);
		font-size:10px;
	}
	.nexa-sekolah-header nav > div > ul > li > .sub-menu {
		top:calc(100% + 4px);
		right:0;
	}
	.nexa-sekolah-header nav .sub-menu .sub-menu {
		top:-11px;
		right:calc(100% + 16px);
	}
	.nexa-sekolah-header nav .sub-menu .menu-item-has-children > a {
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:16px;
	}
	.nexa-sekolah-header nav .sub-menu .menu-item-has-children > a::after {
		margin-left:auto;
		content:'◂';
	}
	.nexa-sekolah-header nav .sub-menu::before {
		position:absolute;
		content:'';
	}
	.nexa-sekolah-header nav > div > ul > li > .sub-menu::before {
		top:-6px;
		right:0;
		left:0;
		height:6px;
	}
	.nexa-sekolah-header nav .sub-menu .sub-menu::before {
		top:0;
		right:-17px;
		bottom:0;
		width:17px;
	}
	.nexa-sekolah-header nav .sub-menu a:hover,
	.nexa-sekolah-header nav .sub-menu a:focus-visible,
	.nexa-sekolah-header nav .sub-menu .current-menu-item > a {
		background:#ecfdf5;
		color:var(--primary-dark);
	}
}

/* Final premium cascade after all legacy component rules. */
.nexa-quote { display:grid; max-width:1040px; grid-template-columns:220px 1fr; column-gap:46px; align-items:center; }
.nexa-quote__photo { float:none; grid-row:1 / span 4; width:220px; height:280px; margin:0; border-radius:110px 110px 28px 28px; }
.nexa-quote blockquote { margin:20px 0 16px; padding:28px 32px; border-left:0; border-radius:20px; background:linear-gradient(135deg,#f0fdfa,#f8fafc); color:#334155; }
.nexa-stats { gap:0; overflow:hidden; border:1px solid var(--border); border-radius:24px; background:#fff; box-shadow:var(--shadow); }
.nexa-stats div { min-height:120px; padding:28px; border-top:0; border-right:1px solid var(--border); }
.nexa-stats div:last-child { border-right:0; }
.nexa-detail { gap:64px; }
.nexa-detail > div img { min-height:560px; object-fit:cover; }
@media (max-width:900px) {
	.nexa-quote { grid-template-columns:160px 1fr; column-gap:28px; }
	.nexa-quote__photo { width:160px; height:210px; }
}
@media (max-width:640px) {
	.nexa-quote { grid-template-columns:86px 1fr; column-gap:18px; }
	.nexa-quote__photo { width:86px; height:108px; margin:0; }
	.nexa-quote blockquote,.nexa-quote cite { grid-column:1 / -1; }
	.nexa-stats { grid-template-columns:repeat(2,1fr); }
	.nexa-stats div { min-height:100px; border-right:1px solid var(--border); border-bottom:1px solid var(--border); }
	.nexa-stats div:nth-child(2n) { border-right:0; }
	.nexa-stats div:nth-last-child(-n+2) { border-bottom:0; }
}
