/*
Theme Name: Velocity G5
Theme URI: https://velocitydeveloper.com
Author: Velocity Developer
Author URI: https://velocitydeveloper.com
Description: Tema blok (FSE) untuk G5 Velocity Developer — lembaga kursus bahasa. Isi halaman bisa diedit dari editor blok, header/footer dari Site Editor.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: velocity-g5
*/

body {
	--vb-primary: var(--wp--preset--color--hijau);
	--vb-accent: var(--wp--preset--color--oranye);
	--vb-font-head: var(--wp--preset--font-family--judul);
}
.wp-site-blocks { position: relative; }
/* Pengaman: tak ada isi yang boleh memunculkan scroll kanan-kiri (clip tidak mematikan sticky). */
html, body { overflow-x: clip; }
.wp-site-blocks > * + * { margin-block-start: 0; }
/* Seksi selebar layar di konten halaman saling menempel, tanpa pita putih blockGap. */
.wp-block-post-content > .alignfull + .alignfull { margin-block-start: 0; }

/* Header melayang di atas hero/banner dan tetap menempel saat digulir */
.wp-site-blocks > header.wp-block-template-part { position: fixed; inset: var(--wp-admin--admin-bar--height, 0px) 0 auto; z-index: 30; }
.g5-header__baris { gap: 0; align-items: flex-start; }
.g5-header__logo {
	flex: 0 0 auto; width: 255px; padding: 4px 26px 30px;
	clip-path: polygon(0 0, 100% 0, 100% 72%, 50% 100%, 0 72%);
}
.g5-header__logo .wp-block-site-logo, .g5-header__logo .wp-block-site-logo a { width: 100%; }
.g5-header__logo .wp-block-site-logo img { width: 100%; height: auto; }
.g5-header__menu { flex: 1 1 auto; min-height: 69px; padding: 0 20px; align-self: flex-start; }
.g5-header__menu .wp-block-navigation-item__content { padding: 0.25rem 0; }
.g5-header__menu .wp-block-navigation .current-menu-item > a,
.g5-header__menu .wp-block-navigation a:hover { color: var(--wp--preset--color--oranye); }

/* Hero: titik slide di atas foto */
.g5-hero { position: relative; }
.g5-hero .vb-carousel__track { padding: 0; margin: 0; }
.g5-hero .vb-carousel__nav { position: absolute; left: 0; right: 0; bottom: 18px; margin: 0; z-index: 3; }

/* Judul halaman dalam */
.g5-judul-halaman { text-transform: uppercase; font-size: clamp(1.75rem, 1.4rem + 1.4vw, 2.25rem); margin-bottom: var(--wp--preset--spacing--50); }
.g5-tanpa-banner { padding-top: 140px; }

/* Segitiga penanda antarseksi: tambahkan kelas g5-segitiga pada Group */
.g5-segitiga { position: relative; }
.g5-segitiga::before {
	content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%);
	border: 20px solid transparent; border-bottom: 0; border-top-color: var(--g5-segitiga, var(--wp--preset--color--putih));
}
.g5-segitiga-abu { --g5-segitiga: var(--wp--preset--color--abu); }

/* Kartu layanan beranda (vb/icon-box di dalam Group .g5-kartu) */
.g5-kartu { position: relative; }
.wp-block-column > .g5-kartu { margin-top: 70px; }
.g5-kartu .vb-iconbox { gap: 10px; }
.g5-kartu .vb-iconbox__icon {
	width: 76px; height: 76px; padding: 18px; margin-top: -76px; border-radius: 50%;
	background: var(--wp--preset--color--oranye); color: var(--wp--preset--color--putih);
	box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.85);
}
.g5-kartu .vb-iconbox__title { color: var(--wp--preset--color--judul); font-size: 1.375rem; font-weight: 700; }
.g5-kartu .vb-iconbox__text { color: #777; font-size: 0.8125rem; }
.g5-kartu .vb-iconbox__link {
	margin-top: 14px; padding: 8px 26px; border-radius: 30px; text-transform: uppercase; font-weight: 400; font-size: 0.75rem;
	background: var(--wp--preset--color--oranye); color: var(--wp--preset--color--putih);
}
.g5-kartu .vb-iconbox__link:hover { background: var(--wp--preset--color--hijau); }
.g5-kartu.has-hijau-background-color .vb-iconbox__title,
.g5-kartu.has-hijau-background-color .vb-iconbox__text { color: var(--wp--preset--color--putih); }
.g5-kartu.has-hijau-background-color .vb-iconbox__icon { color: var(--wp--preset--color--putih); }
.g5-kartu.has-hijau-background-color .vb-iconbox__link { background: var(--wp--preset--color--putih); color: var(--wp--preset--color--hijau); }

/* Bendera kursus */
.g5-bendera img { border: 1px solid #e5e5e5; width: 100%; height: auto; }

/* Daftar centang di kotak oranye */
.g5-centang { list-style: none; padding-left: 0; }
.g5-centang li { position: relative; padding-left: 28px; margin-bottom: 0.7em; }
.g5-centang li::before {
	content: ""; position: absolute; left: 2px; top: 0.25em; width: 12px; height: 7px;
	border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg);
}

/* Kartu artikel */
.g5-kartu-artikel { border: 1px solid #e5e5e5; height: 100%; background: var(--wp--preset--color--putih); }
.g5-kartu-artikel .wp-block-post-featured-image { margin: 0; background: #f7f7f7; aspect-ratio: 3 / 2; }
.g5-kartu-artikel__isi { padding: 1rem 1.1rem 1.25rem; }
.g5-kartu-artikel .wp-block-post-title { font-size: 1rem; margin: 0 0 0.5rem; }
.g5-kartu-artikel .wp-block-post-title a { color: var(--wp--preset--color--judul); text-decoration: none; }
.g5-kartu-artikel .wp-block-post-title a:hover { color: var(--wp--preset--color--hijau); }
.g5-meta { gap: 0.9rem; color: #888; margin-block: 0.5rem; }
.g5-meta a { color: inherit; }
.g5-kartu-artikel .wp-block-post-excerpt { color: #777; }
.g5-kartu-artikel .wp-block-post-excerpt__more-link { display: none; }

/* Tabel program */
.wp-block-table table { border-collapse: collapse; }
.wp-block-table th { background: var(--wp--preset--color--hijau); color: var(--wp--preset--color--putih); }
.wp-block-table th, .wp-block-table td { border: 1px solid #ddd; padding: 0.6em 0.8em; }

/* Form CF7 */
.wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]), .wpcf7 select, .wpcf7 textarea {
	width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid #ccc; border-radius: 2px; font: inherit;
}
.wpcf7 textarea { height: 130px; }
.wpcf7 input[type=submit] {
	background: var(--wp--preset--color--hijau); color: var(--wp--preset--color--putih); border: 0;
	padding: 12px 28px; border-radius: 3px; font: inherit; cursor: pointer;
}
.wpcf7 input[type=submit]:hover { background: var(--wp--preset--color--oranye); }

/* Footer */
.wp-site-blocks > footer.wp-block-template-part { margin-top: 0; }
.g5-footer { position: relative; }
.g5-footer::before {
	content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%);
	border: 20px solid transparent; border-bottom: 0; border-top-color: var(--wp--preset--color--putih);
}
.g5-footer h3 { font-size: 1.25rem; margin-top: var(--wp--preset--spacing--30); }
.g5-footer a { color: inherit; text-decoration: none; }
.g5-footer a:hover { text-decoration: underline; color: inherit; }
.g5-footer .vb-contact { list-style: none; padding: 0; margin: 0.9rem 0 1.25rem; gap: 0.6rem; }
.g5-footer .vb-contact__item { display: flex; gap: 12px; align-items: flex-start; margin: 0; font-size: 0.875rem; }
.g5-footer .vb-contact__icon { width: 18px; height: 18px; flex: 0 0 18px; margin-top: 3px; padding: 0; border-radius: 0; background: none; color: inherit; }
.g5-footer .vb-contact__icon svg { width: 100%; height: 100%; }
.g5-footer-menu { font-size: 0.875rem; gap: 0.6rem; text-transform: none; }
.g5-footer .vb-social a { color: var(--wp--preset--color--putih); }
.g5-footer iframe { border: 0; width: 100%; }
.g5-footer .vb-map { border-radius: 0; box-shadow: none; }
.g5-hakcipta p { margin: 0.35rem 0 0; }
.g5-hakcipta a { color: inherit; }

/* Statistik pengunjung: sebaris, dipisah garis tegak, serasi dengan pita hijau */
.g5-hakcipta .velocity-inline-stats, .g5-hakcipta .velocity-list-stats {
	display: flex; flex-wrap: wrap; justify-content: center; text-align: center; gap: 0.25rem 0; list-style: none; margin: 0; padding: 0; opacity: 0.92;
}
.g5-hakcipta .velocity-inline-stats > *, .g5-hakcipta .velocity-list-stats > * { padding: 0 0.6rem; border-left: 1px solid rgba(255, 255, 255, 0.5); border-bottom: 0; }
.g5-hakcipta .velocity-inline-stats > *:first-child, .g5-hakcipta .velocity-list-stats > *:first-child { border-left: 0; }

/* Menu HP: isi overlay rata kiri meski menu desktop rata kanan */
.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open,
.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { --navigation-layout-justification-setting: flex-start; --navigation-layout-justify: flex-start; text-align: left; }

/* Caption foto utama artikel */
.wp-block-post-featured-image .wp-element-caption { font-size: 0.8125rem; color: #777; text-align: center; }

@media (max-width: 781px) {
	.g5-header__logo { width: 150px; padding: 4px 12px 22px; }
	.g5-header__menu { min-height: 52px; }
	.wp-block-column > .g5-kartu { margin-top: 60px; }
	.g5-seksi .wp-block-columns { row-gap: 1.5rem; }
	.g5-tanpa-banner { padding-top: 110px; }
}
