/* ==========================================================================
   GMP Child — Desain korporat PT Geo Mulia Perkasa Sejahtera
   ========================================================================== */

:root {
	--gmp-green: #0b3b25;
	--gmp-green-deep: #0a3321;
	--gmp-green-soft: #1e4a39;
	--gmp-green-tint: #eef3ec;
	--gmp-gold: #a3823f;
	--gmp-gold-soft: #c8ab72;
	--gmp-gold-tint: #f4eee1;
	--gmp-cream: #fbfaf6;
	--gmp-cream-deep: #f4f2ea;
	--gmp-ink: #16281f;
	--gmp-muted: #5d6b63;
	--gmp-line: #e3e1d7;
	--gmp-white: #ffffff;
	--gmp-radius: 18px;
	--gmp-radius-sm: 12px;
	--gmp-radius-pill: 999px;
	--gmp-shadow: 0 18px 50px -28px rgba(11, 59, 37, 0.4);
	--gmp-shadow-soft: 0 10px 30px -20px rgba(11, 59, 37, 0.35);
	--gmp-serif: "Playfair Display", "Times New Roman", serif;
	--gmp-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--gmp-container: 1200px;
}

/* Base ------------------------------------------------------------------ */

html {
	scroll-behavior: smooth;
}

body.gmp-theme {
	margin: 0;
	font-family: var(--gmp-sans);
	font-size: 16px;
	line-height: 1.7;
	color: var(--gmp-ink);
	background: var(--gmp-cream);
	-webkit-font-smoothing: antialiased;
}

body.gmp-theme img {
	max-width: 100%;
	height: auto;
	display: block;
}

:where(body.gmp-theme) a,
:where(body.gmp-theme) a:link,
:where(body.gmp-theme) a:visited,
:where(body.gmp-theme) a:focus,
:where(body.gmp-theme) a:hover,
:where(body.gmp-theme) a:active {
	color: inherit;
	text-decoration: none;
}

:where(body.gmp-theme) h1,
:where(body.gmp-theme) h2,
:where(body.gmp-theme) h3,
:where(body.gmp-theme) h4 {
	font-family: var(--gmp-serif);
	font-weight: 500;
	line-height: 1.18;
	letter-spacing: -0.01em;
	color: var(--gmp-heading-color, var(--gmp-ink));
	margin: 0 0 0.5em;
}

body.gmp-theme p {
	margin: 0 0 1em;
}

body.gmp-theme ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

body.gmp-theme svg {
	width: 20px;
	height: 20px;
	flex: 0 0 auto;
}

body.gmp-theme button,
body.gmp-theme button:hover,
body.gmp-theme button:focus,
body.gmp-theme button:active,
body.gmp-theme input[type="button"],
body.gmp-theme input[type="button"]:hover,
body.gmp-theme input[type="submit"],
body.gmp-theme input[type="submit"]:hover,
body.gmp-theme input[type="reset"],
body.gmp-theme input[type="reset"]:hover {
	background-color: transparent;
	border: 0;
	border-radius: 0;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	padding: 0;
	width: auto;
	white-space: normal;
	text-transform: none;
	text-decoration: none;
	-webkit-appearance: none;
	appearance: none;
	transition: none;
	box-shadow: none;
}

body.gmp-theme input[type="text"],
body.gmp-theme input[type="email"],
body.gmp-theme input[type="search"],
body.gmp-theme input[type="tel"],
body.gmp-theme input[type="url"],
body.gmp-theme input[type="number"],
body.gmp-theme input[type="password"],
body.gmp-theme select,
body.gmp-theme textarea {
	font-family: inherit;
	font-size: 14px;
	color: var(--gmp-ink);
	border: 1px solid var(--gmp-line);
	border-radius: 10px;
	background: var(--gmp-cream);
	padding: 12px 14px;
	width: 100%;
}

body.gmp-theme input[type="text"]:focus,
body.gmp-theme input[type="email"]:focus,
body.gmp-theme input[type="search"]:focus,
body.gmp-theme input[type="tel"]:focus,
body.gmp-theme input[type="url"]:focus,
body.gmp-theme input[type="number"]:focus,
body.gmp-theme input[type="password"]:focus,
body.gmp-theme select:focus,
body.gmp-theme textarea:focus {
	border-color: var(--gmp-green);
	outline: 2px solid rgba(11, 59, 37, 0.2);
	outline-offset: 1px;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.gmp-container {
	width: 100%;
	max-width: var(--gmp-container);
	margin: 0 auto;
	padding: 0 24px;
}

.gmp-section {
	padding: 88px 0;
}

.gmp-section--cream {
	background: var(--gmp-cream-deep);
}

.gmp-section--tight {
	padding: 64px 0;
}

.gmp-section--dark {
	--gmp-heading-color: #fff;
	background: var(--gmp-green-deep);
	color: #eef3ec;
}

.gmp-section--dark h2,
.gmp-section--dark h3 {
	color: #fff;
}

body.gmp-theme .gmp-section--dark h2,
body.gmp-theme .gmp-section--dark h3,
body.gmp-theme .gmp-section--dark h4 {
	color: #fff;
}

/* Typography helpers ---------------------------------------------------- */

.gmp-eyebrow {
	display: inline-block;
	font-family: var(--gmp-sans);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--gmp-accent, var(--gmp-gold));
	margin: 0 0 14px;
}

.gmp-eyebrow--sm {
	font-size: 10.5px;
	letter-spacing: 0.16em;
	margin-bottom: 8px;
}

.gmp-section-head {
	max-width: 720px;
	margin: 0 auto 48px;
	text-align: center;
}

.gmp-section-head h2 {
	font-size: clamp(28px, 3.4vw, 44px);
	margin-bottom: 14px;
}

.gmp-section-head p {
	color: var(--gmp-muted);
	margin: 0;
}

.gmp-section-head--left {
	margin-left: 0;
	text-align: left;
}

.gmp-title-xl {
	font-size: clamp(34px, 4.6vw, 60px);
	line-height: 1.08;
}

.gmp-text-gold {
	color: var(--gmp-gold);
}

.gmp-text-light {
	color: #d9e2da;
}

.gmp-lead {
	font-size: 17px;
	color: var(--gmp-muted);
	max-width: 56ch;
}

/* Buttons --------------------------------------------------------------- */

.gmp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 14px 26px;
	border-radius: var(--gmp-radius-pill);
	font-family: var(--gmp-sans);
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.2;
	border: 1.5px solid transparent;
	cursor: pointer;
	transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
	text-align: center;
}

.gmp-btn svg {
	width: 16px;
	height: 16px;
	transition: transform 0.2s ease;
}

.gmp-btn:hover svg {
	transform: translateX(3px);
}

.gmp-btn--primary {
	background: var(--gmp-green);
	color: #fff;
}

.gmp-btn--primary:hover {
	background: var(--gmp-green-soft);
	color: #fff;
	box-shadow: var(--gmp-shadow-soft);
}

.gmp-btn--gold {
	background: var(--gmp-gold);
	color: #fff;
}

.gmp-btn--gold:hover {
	background: #8f6f31;
	color: #fff;
}

.gmp-btn--ghost {
	background: transparent;
	color: var(--gmp-green);
	border-color: rgba(11, 59, 37, 0.28);
}

.gmp-btn--ghost:hover {
	background: var(--gmp-green);
	color: #fff;
	border-color: var(--gmp-green);
}

.gmp-btn--light {
	background: #fff;
	color: var(--gmp-green);
}

.gmp-btn--light:hover {
	background: var(--gmp-gold-tint);
}

.gmp-btn--outline-light {
	background: transparent;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.55);
}

.gmp-btn--outline-light:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

.gmp-btn--wa {
	background: #1f7a4d;
	color: #fff;
}

.gmp-btn--wa:hover {
	background: #18653f;
	color: #fff;
}

.gmp-btn--sm {
	padding: 10px 18px;
	font-size: 13px;
}

.gmp-btn--sm svg {
	width: 14px;
	height: 14px;
}

.gmp-btn__icon svg {
	width: 16px;
	height: 16px;
}

.gmp-link-arrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--gmp-green);
}

.gmp-link-arrow span {
	display: inline-flex;
	transition: transform 0.2s ease;
}

.gmp-link-arrow:hover span {
	transform: translateX(4px);
}

.gmp-link-arrow svg {
	width: 15px;
	height: 15px;
}

/* Topbar ---------------------------------------------------------------- */

.gmp-topbar {
	background: var(--gmp-green-deep);
	color: #d5e3d7;
	font-size: 12.5px;
}

.gmp-topbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 40px;
}

.gmp-topbar__tagline {
	margin: 0;
	letter-spacing: 0.04em;
	color: #b9cdbc;
}

.gmp-topbar__right {
	display: flex;
	align-items: center;
	gap: 22px;
}

.gmp-topbar__link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #d5e3d7;
	transition: color 0.2s ease;
}

.gmp-topbar__link:hover {
	color: #fff;
}

.gmp-topbar__link svg {
	width: 14px;
	height: 14px;
	color: var(--gmp-gold-soft);
}

.gmp-topbar__social {
	display: flex;
	align-items: center;
	gap: 12px;
}

.gmp-topbar__social a {
	color: #b9cdbc;
	display: inline-flex;
	transition: color 0.2s ease;
}

.gmp-topbar__social a:hover {
	color: #fff;
}

.gmp-topbar__social svg {
	width: 14px;
	height: 14px;
}

/* Header ---------------------------------------------------------------- */

.gmp-header {
	position: sticky;
	top: 0;
	z-index: 60;
	background: rgba(251, 250, 246, 0.94);
	backdrop-filter: saturate(140%) blur(12px);
	border-bottom: 1px solid var(--gmp-line);
	transition: box-shadow 0.25s ease, background 0.25s ease;
}

.gmp-header.is-stuck {
	box-shadow: 0 10px 30px -24px rgba(11, 59, 37, 0.6);
}

.gmp-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 76px;
}

.gmp-logo {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	flex-shrink: 0;
}

.gmp-logo__mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: #fff;
	color: var(--gmp-green);
	border: 1px solid rgba(11, 59, 37, 0.12);
}

.gmp-logo__mark img {
	width: 32px;
	height: 32px;
	object-fit: contain;
}

.gmp-logo__text {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

.gmp-logo__text strong {
	font-family: var(--gmp-serif);
	font-size: 22px;
	letter-spacing: 0.14em;
	color: var(--gmp-green);
	font-weight: 600;
}

.gmp-logo__text small {
	font-size: 9.5px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gmp-muted);
	margin-top: 3px;
}

.gmp-logo--light .gmp-logo__mark {
	background: rgba(255, 255, 255, 0.96);
	color: var(--gmp-gold-soft);
	border-color: rgba(255, 255, 255, 0.18);
}

.gmp-logo--light .gmp-logo__text strong {
	color: #fff;
}

.gmp-logo--light .gmp-logo__text small {
	color: #a9bdad;
}

.gmp-nav {
	display: flex;
	align-items: center;
	gap: 4px;
	flex: 1;
	justify-content: center;
}

.gmp-nav__link {
	position: relative;
	padding: 9px 13px;
	font-size: 14px;
	font-weight: 500;
	color: var(--gmp-ink);
	border-radius: var(--gmp-radius-pill);
	transition: color 0.2s ease, background 0.2s ease;
	white-space: nowrap;
}

.gmp-nav__link:hover {
	color: var(--gmp-green);
	background: var(--gmp-green-tint);
}

.gmp-nav__link.is-active {
	color: var(--gmp-green);
	font-weight: 600;
}

.gmp-nav__link.is-active::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 1px;
	transform: translateX(-50%);
	width: 22px;
	height: 2px;
	border-radius: 2px;
	background: var(--gmp-gold);
}

.gmp-header__actions {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-shrink: 0;
}

.gmp-header__login {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--gmp-muted);
	transition: color 0.2s ease;
}

.gmp-header__login:hover {
	color: var(--gmp-green);
}

.gmp-header__login svg {
	width: 16px;
	height: 16px;
}

.gmp-burger {
	display: none;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	border: 1px solid var(--gmp-line);
	background: #fff;
	color: var(--gmp-green);
	cursor: pointer;
}

.gmp-mobile-nav {
	display: none;
	border-top: 1px solid var(--gmp-line);
	background: #fff;
	padding: 10px 24px 20px;
}

.gmp-mobile-nav.is-open {
	display: block;
}

.gmp-mobile-nav nav {
	display: flex;
	flex-direction: column;
}

.gmp-mobile-nav__link {
	padding: 12px 4px;
	font-size: 15px;
	font-weight: 500;
	border-bottom: 1px solid var(--gmp-line);
}

.gmp-mobile-nav__link.is-active {
	color: var(--gmp-green);
	font-weight: 600;
}

/* Hero ------------------------------------------------------------------ */

.gmp-hero {
	position: relative;
	overflow: hidden;
	background: linear-gradient(120deg, #f6f4ec 0%, #fbfaf6 45%, #eef3ec 100%);
	padding: 76px 0 66px;
}

.gmp-hero::before,
.gmp-hero::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	filter: blur(2px);
	pointer-events: none;
}

.gmp-hero::before {
	width: 420px;
	height: 420px;
	right: -120px;
	top: -140px;
	background: radial-gradient(circle, rgba(163, 130, 63, 0.16), transparent 65%);
}

.gmp-hero::after {
	width: 360px;
	height: 360px;
	left: -140px;
	bottom: -160px;
	background: radial-gradient(circle, rgba(11, 59, 37, 0.12), transparent 68%);
}

.gmp-hero__inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 56px;
	align-items: center;
	z-index: 1;
}

.gmp-hero__title {
	font-size: clamp(38px, 4.9vw, 62px);
	line-height: 1.06;
	margin-bottom: 22px;
}

.gmp-hero__title em {
	font-style: italic;
	color: var(--gmp-gold);
}

.gmp-hero__desc {
	font-size: 16.5px;
	color: var(--gmp-muted);
	max-width: 52ch;
	margin-bottom: 30px;
}

.gmp-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 34px;
}

.gmp-hero__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 26px;
	padding-top: 24px;
	border-top: 1px solid rgba(11, 59, 37, 0.12);
}

.gmp-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: 12.5px;
	font-weight: 500;
	color: var(--gmp-muted);
}

.gmp-hero__badge svg {
	width: 17px;
	height: 17px;
	color: var(--gmp-gold);
}

.gmp-hero__media {
	position: relative;
}

.gmp-hero__media img {
	width: 100%;
	border-radius: 26px;
	box-shadow: 0 40px 80px -50px rgba(11, 59, 37, 0.6);
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.gmp-hero__media-badge {
	position: absolute;
	left: -18px;
	bottom: 26px;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 20px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: var(--gmp-shadow);
	max-width: 270px;
}

.gmp-hero__media-badge svg {
	width: 26px;
	height: 26px;
	color: var(--gmp-gold);
}

.gmp-hero__media-badge strong {
	display: block;
	font-family: var(--gmp-serif);
	font-size: 15px;
	line-height: 1.2;
}

.gmp-hero__media-badge span {
	font-size: 11.5px;
	color: var(--gmp-muted);
}

/* Certification strip --------------------------------------------------- */

.gmp-certs-section {
	background: #fff;
	padding: 46px 0 52px;
	border-top: 1px solid var(--gmp-line);
	border-bottom: 1px solid var(--gmp-line);
}

.gmp-certs-section__title {
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--gmp-muted);
	margin-bottom: 30px;
}

.gmp-certs {
	display: grid;
	grid-template-columns: repeat(8, minmax(0, 1fr));
	gap: 20px;
	align-items: center;
}

.gmp-certs__item {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
	filter: grayscale(1);
	opacity: 0.62;
	transition: filter 0.25s ease, opacity 0.25s ease;
}

.gmp-certs__item:hover {
	filter: grayscale(0);
	opacity: 1;
}

.gmp-certs__item img {
	max-height: 62px;
	width: auto;
	object-fit: contain;
}

/* About split ----------------------------------------------------------- */

.gmp-about {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.02fr);
	gap: 60px;
	align-items: center;
}

.gmp-about__media {
	position: relative;
}

.gmp-about__media img.gmp-about__main {
	width: 100%;
	border-radius: 22px;
	box-shadow: var(--gmp-shadow);
	aspect-ratio: 5 / 4;
	object-fit: cover;
}

.gmp-about__media--wide img {
	width: 100%;
	border-radius: 22px;
	box-shadow: var(--gmp-shadow);
	aspect-ratio: 16 / 11;
	object-fit: cover;
}

.gmp-about__inset {
	position: absolute;
	left: -22px;
	bottom: -26px;
	width: 168px;
	border-radius: 16px;
	overflow: hidden;
	background: linear-gradient(160deg, #f6f3ea, #eef3ec);
	border: 5px solid #fff;
	box-shadow: var(--gmp-shadow);
}

.gmp-about__inset img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	padding: 8px;
}

.gmp-about__chip {
	position: absolute;
	right: -20px;
	top: 26px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 16px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: var(--gmp-shadow-soft);
}

.gmp-about__chip svg {
	width: 22px;
	height: 22px;
	color: var(--gmp-gold);
}

.gmp-about__chip strong {
	display: block;
	font-family: var(--gmp-serif);
	font-size: 14px;
	line-height: 1.2;
}

.gmp-about__chip span {
	font-size: 11px;
	color: var(--gmp-muted);
}

.gmp-about__media::after {
	content: "";
	position: absolute;
	inset: auto -14px -14px auto;
	width: 120px;
	height: 120px;
	border-radius: 22px;
	border: 1px solid rgba(163, 130, 63, 0.4);
	z-index: -1;
}

.gmp-about h2 {
	font-size: clamp(28px, 3.2vw, 42px);
	margin-bottom: 18px;
}

.gmp-about p {
	color: var(--gmp-muted);
}

.gmp-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin: 30px 0 32px;
}

.gmp-stats__item {
	padding: 18px 16px;
	border-radius: 14px;
	background: #fff;
	border: 1px solid var(--gmp-line);
	text-align: center;
}

.gmp-stats__value {
	display: block;
	font-family: var(--gmp-serif);
	font-size: 28px;
	font-weight: 600;
	color: var(--gmp-green);
	line-height: 1;
	margin-bottom: 6px;
}

.gmp-stats__label {
	font-size: 11.5px;
	letter-spacing: 0.04em;
	color: var(--gmp-muted);
}

/* Product slider -------------------------------------------------------- */

.gmp-products {
	position: relative;
}

.gmp-products__track {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 22px;
}

.gmp-product-card {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.gmp-product-card:hover {
	transform: translateY(-6px);
	box-shadow: var(--gmp-shadow);
	border-color: rgba(163, 130, 63, 0.35);
}

.gmp-product-card__media {
	display: block;
	background: linear-gradient(160deg, #f6f3ea 0%, var(--gmp-accent-tint, #eef3ec) 100%);
	overflow: hidden;
}

.gmp-product-card__media img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	padding: 16px;
	transition: transform 0.5s ease;
}

.gmp-products__track--catalog {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 26px;
}

.gmp-products__track--catalog .gmp-product-card {
	flex: 0 1 340px;
	max-width: 360px;
}

.gmp-products__track--catalog .gmp-product-card__media img {
	aspect-ratio: 4 / 5;
	padding: 8px;
}

.gmp-products__track--catalog.is-single .gmp-product-card {
	flex: 0 1 780px;
	max-width: 780px;
	flex-direction: row;
}

.gmp-products__track--catalog.is-single .gmp-product-card__media {
	position: relative;
	flex: 0 0 42%;
	min-height: 300px;
	overflow: hidden;
}

.gmp-products__track--catalog.is-single .gmp-product-card__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	aspect-ratio: auto;
	object-fit: contain;
	padding: 24px;
}

.gmp-products__track--catalog.is-single .gmp-product-card__body {
	justify-content: center;
	padding: 30px 32px;
}

.gmp-products__track--catalog.is-single .gmp-product-card__desc {
	flex: 0;
	max-width: 46ch;
}

.gmp-product-card:hover .gmp-product-card__media img {
	transform: scale(1.05);
}

.gmp-product-card__body {
	padding: 20px 20px 22px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.gmp-product-card__title {
	font-size: 18px;
	margin-bottom: 8px;
}

.gmp-product-card__desc {
	font-size: 13px;
	color: var(--gmp-muted);
	margin-bottom: 16px;
	flex: 1;
}

/* Testimonials ---------------------------------------------------------- */

.gmp-testimonials {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.gmp-quote {
	position: relative;
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 30px 26px 26px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.gmp-quote__mark {
	font-family: var(--gmp-serif);
	font-size: 46px;
	line-height: 0.7;
	color: var(--gmp-gold-soft);
}

.gmp-quote__text {
	font-size: 14.5px;
	color: var(--gmp-muted);
	margin: 0;
	flex: 1;
}

.gmp-quote__author {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-top: 16px;
	border-top: 1px solid var(--gmp-line);
}

.gmp-quote__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--gmp-green-tint);
	color: var(--gmp-green);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.gmp-quote__name {
	display: block;
	font-size: 14px;
	font-weight: 600;
}

.gmp-quote__role {
	font-size: 12px;
	color: var(--gmp-muted);
}

/* FAQ + agenda panel ---------------------------------------------------- */

.gmp-faq-agenda {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 44px;
	align-items: start;
}

.gmp-faq-agenda h2 {
	font-size: clamp(26px, 2.9vw, 36px);
	margin-bottom: 12px;
}

.gmp-faq-agenda .gmp-lead {
	font-size: 15px;
	max-width: 46ch;
	margin-bottom: 24px;
}

.gmp-accordion--flush {
	gap: 10px;
}

.gmp-accordion--flush .gmp-accordion__item {
	border-radius: 12px;
}

.gmp-accordion--flush .gmp-accordion__trigger {
	padding: 15px 20px;
	font-size: 14px;
}

.gmp-accordion--flush .gmp-accordion__panel {
	padding: 0 20px 18px;
	font-size: 13.5px;
}

.gmp-faq-agenda__cta {
	margin: 24px 0 0;
}

.gmp-agenda-panel {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 26px;
}

.gmp-agenda-panel__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--gmp-line);
	margin-bottom: 6px;
}

.gmp-agenda-panel__head h3 {
	font-size: 22px;
	margin: 0;
}

.gmp-agenda-panel__head .gmp-eyebrow {
	margin-bottom: 6px;
}

.gmp-agenda-panel__list {
	display: flex;
	flex-direction: column;
}

.gmp-agenda-row {
	display: flex;
	gap: 16px;
	padding: 16px 0;
	border-bottom: 1px solid var(--gmp-line);
}

.gmp-agenda-row:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.gmp-agenda-row__date {
	flex: 0 0 auto;
	width: 54px;
	height: 58px;
	border-radius: 12px;
	background: var(--gmp-green-tint);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.gmp-agenda-row__date strong {
	font-family: var(--gmp-serif);
	font-size: 21px;
	font-weight: 600;
	color: var(--gmp-green);
}

.gmp-agenda-row__date span {
	font-size: 9.5px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: var(--gmp-gold);
	margin-top: 4px;
}

.gmp-agenda-row__body {
	min-width: 0;
}

.gmp-agenda-row__type {
	display: block;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--gmp-gold);
	margin-bottom: 4px;
}

.gmp-agenda-row__title {
	display: block;
	font-family: var(--gmp-serif);
	font-size: 16px;
	line-height: 1.3;
	color: var(--gmp-ink);
	margin-bottom: 6px;
}

.gmp-agenda-row__title:hover {
	color: var(--gmp-green);
}

.gmp-agenda-row__meta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: var(--gmp-muted);
}

.gmp-agenda-row__meta svg {
	width: 14px;
	height: 14px;
	color: var(--gmp-gold);
}

/* Distribution / stokis CTA --------------------------------------------- */

.gmp-dist {
	position: relative;
	border-radius: 26px;
	overflow: hidden;
	background: linear-gradient(100deg, #f2f0e6 0%, #e9efe6 100%);
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	align-items: center;
	gap: 30px;
	padding: 46px 48px;
}

.gmp-dist__map {
	position: absolute;
	inset: 0;
	opacity: 0.5;
}

.gmp-dist__map img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gmp-dist__content {
	position: relative;
	z-index: 1;
	max-width: 46ch;
}

.gmp-dist__content h2 {
	font-size: clamp(24px, 2.8vw, 36px);
	margin-bottom: 12px;
}

.gmp-dist__content p {
	color: var(--gmp-muted);
	font-size: 14.5px;
}

.gmp-dist__cta {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: flex-end;
}

/* FAQ ------------------------------------------------------------------- */

.gmp-faq-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	gap: 46px;
	align-items: start;
}

.gmp-accordion {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.gmp-accordion__item {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: 14px;
	overflow: hidden;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.gmp-accordion__item.is-open {
	border-color: rgba(11, 59, 37, 0.28);
	box-shadow: var(--gmp-shadow-soft);
}

.gmp-accordion__trigger {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 18px 22px;
	background: none;
	border: 0;
	font-family: var(--gmp-sans);
	font-size: 14.5px;
	font-weight: 600;
	text-align: left;
	color: var(--gmp-ink);
	cursor: pointer;
}

.gmp-accordion__trigger svg {
	width: 18px;
	height: 18px;
	color: var(--gmp-gold);
	transition: transform 0.25s ease;
}

.gmp-accordion__item.is-open .gmp-accordion__trigger svg {
	transform: rotate(45deg);
}

.gmp-accordion__panel {
	display: none;
	padding: 0 22px 20px;
	font-size: 14px;
	color: var(--gmp-muted);
}

.gmp-accordion__item.is-open .gmp-accordion__panel {
	display: block;
}

.gmp-accordion__panel p:last-child {
	margin-bottom: 0;
}

/* Agenda list ----------------------------------------------------------- */

.gmp-agenda-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.gmp-agenda-card {
	display: flex;
	gap: 22px;
	padding: 24px;
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	transition: box-shadow 0.25s ease, border-color 0.25s ease;
}

.gmp-agenda-card:hover {
	box-shadow: var(--gmp-shadow-soft);
	border-color: rgba(163, 130, 63, 0.35);
}

.gmp-agenda-card__date {
	flex: 0 0 auto;
	width: 74px;
	height: 78px;
	border-radius: 14px;
	background: var(--gmp-green-tint);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.gmp-agenda-card__date strong {
	font-family: var(--gmp-serif);
	font-size: 28px;
	font-weight: 600;
	color: var(--gmp-green);
}

.gmp-agenda-card__date span {
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: 0.1em;
	color: var(--gmp-gold);
	margin-top: 5px;
}

.gmp-agenda-card__body {
	flex: 1;
	min-width: 0;
}

.gmp-agenda-card__title {
	font-size: 19px;
	margin-bottom: 8px;
}

.gmp-agenda-card__desc {
	font-size: 13.5px;
	color: var(--gmp-muted);
	margin-bottom: 12px;
}

.gmp-agenda-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
	margin-bottom: 14px;
}

.gmp-agenda-card__meta li {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 12.5px;
	color: var(--gmp-muted);
}

.gmp-agenda-card__meta svg {
	width: 15px;
	height: 15px;
	color: var(--gmp-gold);
}

.gmp-agenda-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.gmp-agenda-card--compact {
	align-items: center;
	padding: 18px 20px;
}

.gmp-agenda-card--compact .gmp-agenda-card__date {
	width: 62px;
	height: 66px;
}

.gmp-agenda-card--compact .gmp-agenda-card__date strong {
	font-size: 22px;
}

.gmp-agenda-card--compact .gmp-agenda-card__title {
	font-size: 15.5px;
	margin-bottom: 4px;
}

.gmp-agenda-card--compact .gmp-agenda-card__meta {
	margin-bottom: 0;
}

/* Grid agenda ----------------------------------------------------------- */

.gmp-agenda-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.gmp-agenda-tile {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 26px;
	display: flex;
	flex-direction: column;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.gmp-agenda-tile:hover {
	transform: translateY(-4px);
	box-shadow: var(--gmp-shadow);
}

.gmp-agenda-tile__top {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin-bottom: 14px;
}

.gmp-agenda-tile__date {
	font-family: var(--gmp-serif);
	font-size: 17px;
	color: var(--gmp-green);
	margin-bottom: 2px;
}

.gmp-agenda-tile__type {
	font-size: 10.5px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gmp-gold);
	margin-bottom: 0;
}

.gmp-agenda-tile__title {
	font-size: 20px;
	margin-bottom: 12px;
}

.gmp-agenda-tile__desc {
	font-size: 13.5px;
	color: var(--gmp-muted);
	flex: 1;
	margin-bottom: 18px;
}

.gmp-agenda-tile__meta {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 20px;
}

.gmp-agenda-tile__meta li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12.5px;
	color: var(--gmp-muted);
}

.gmp-agenda-tile__meta svg {
	width: 15px;
	height: 15px;
	color: var(--gmp-gold);
}

.gmp-agenda-tile__actions {
	margin-top: auto;
}

body.gmp-theme .gmp-agenda-tile__actions .gmp-btn {
	width: 100%;
}

.gmp-doc-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
}

.gmp-doc-card {
	display: flex;
	gap: 18px;
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 16px;
	transition: box-shadow 0.25s ease;
}

.gmp-doc-card:hover {
	box-shadow: var(--gmp-shadow-soft);
}

.gmp-doc-card img {
	width: 168px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 12px;
	flex: 0 0 auto;
}

.gmp-doc-card__body {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.gmp-doc-card__title {
	font-size: 16px;
	margin: 0;
}

.gmp-doc-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	font-size: 11.5px;
	color: var(--gmp-muted);
}

.gmp-doc-card__meta span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.gmp-doc-card__meta svg {
	width: 13px;
	height: 13px;
	color: var(--gmp-gold);
}

.gmp-doc-card p {
	font-size: 12.5px;
	color: var(--gmp-muted);
	margin: 0;
}

/* Page hero ------------------------------------------------------------- */

.gmp-page-hero {
	position: relative;
	padding: 62px 0 56px;
	background: linear-gradient(120deg, #f4f2e9 0%, #fbfaf6 60%, #eef3ec 100%);
	overflow: hidden;
}

.gmp-page-hero__inner {
	position: relative;
	z-index: 1;
	max-width: 760px;
}

.gmp-page-hero h1 {
	font-size: clamp(32px, 4.2vw, 54px);
	margin-bottom: 16px;
}

.gmp-page-hero p {
	color: var(--gmp-muted);
	font-size: 16px;
	max-width: 60ch;
	margin: 0;
}

.gmp-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--gmp-muted);
	margin-bottom: 18px;
}

.gmp-breadcrumb a {
	color: var(--gmp-muted);
}

.gmp-breadcrumb a:hover {
	color: var(--gmp-green);
}

.gmp-breadcrumb span.sep {
	color: #b9b6a8;
}

.gmp-breadcrumb strong {
	color: var(--gmp-green);
	font-weight: 600;
}

.gmp-page-hero--split .gmp-container {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: 48px;
	align-items: center;
}

.gmp-page-hero__media img {
	width: 100%;
	border-radius: 22px;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	box-shadow: var(--gmp-shadow);
}

.gmp-page-hero--photo {
	padding: 0;
	background: #fbfaf6;
	min-height: 340px;
	display: flex;
	align-items: center;
}

.gmp-page-hero--photo .gmp-container {
	position: relative;
	z-index: 1;
	width: 100%;
	padding-top: 60px;
	padding-bottom: 60px;
}

.gmp-page-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

.gmp-page-hero__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: right center;
}

.gmp-page-hero__bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(251, 250, 246, 0.99) 0%, rgba(251, 250, 246, 0.98) 46%, rgba(251, 250, 246, 0.8) 64%, rgba(251, 250, 246, 0.14) 86%);
}

.gmp-page-hero--photo .gmp-page-hero__inner {
	max-width: 560px;
}

.gmp-page-hero--photo h1 {
	font-size: clamp(34px, 4.4vw, 56px);
	margin-bottom: 14px;
}

.gmp-page-hero--photo p {
	max-width: 42ch;
	margin-bottom: 26px;
}

.gmp-page-hero__tagline {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding-top: 20px;
	border-top: 1px solid rgba(11, 59, 37, 0.16);
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--gmp-green);
}

.gmp-page-hero__tagline svg {
	width: 26px;
	height: 26px;
	color: var(--gmp-gold);
}

.gmp-page-hero--map {
	position: relative;
	overflow: hidden;
	padding-bottom: 72px;
}

.gmp-page-hero__map {
	position: absolute;
	right: -40px;
	top: -20px;
	width: 62%;
	max-width: 820px;
	opacity: 0.34;
	pointer-events: none;
	z-index: 0;
	mask-image: linear-gradient(90deg, transparent 0%, #000 32%);
	-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 32%);
}

.gmp-page-hero__map img {
	width: 100%;
	height: auto;
}

.gmp-page-hero--map .gmp-container {
	position: relative;
	z-index: 1;
}

/* Pillars --------------------------------------------------------------- */

.gmp-pillars {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 18px;
}

.gmp-pillar {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 24px 20px;
}

.gmp-pillar__no {
	font-family: var(--gmp-serif);
	font-size: 26px;
	color: var(--gmp-gold-soft);
	margin-bottom: 10px;
	display: block;
}

.gmp-pillar h3 {
	font-size: 16.5px;
	margin-bottom: 8px;
}

.gmp-pillar p {
	font-size: 12.5px;
	color: var(--gmp-muted);
	margin: 0;
}

/* Vision / mission ------------------------------------------------------ */

.gmp-vm {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 22px;
}

.gmp-vm__card {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 30px;
	display: flex;
	gap: 18px;
}

.gmp-vm__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: var(--gmp-green-tint);
	color: var(--gmp-green);
	flex: 0 0 auto;
}

.gmp-vm__icon svg {
	width: 24px;
	height: 24px;
}

.gmp-vm__card h3 {
	font-size: 13px;
	font-family: var(--gmp-sans);
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--gmp-gold);
	margin-bottom: 8px;
}

.gmp-vm__card p {
	font-size: 14px;
	color: var(--gmp-muted);
	margin: 0;
}

/* Legalitas ------------------------------------------------------------- */

.gmp-legal {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: 46px;
	align-items: center;
}

.gmp-legal__docs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.gmp-legal__doc {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: 12px;
	padding: 10px;
	text-align: center;
	margin: 0;
	box-shadow: 0 16px 34px -30px rgba(11, 59, 37, 0.6);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.gmp-legal__doc:hover {
	transform: translateY(-4px);
	box-shadow: var(--gmp-shadow);
}

.gmp-legal__doc span {
	display: block;
	font-size: 11px;
	font-weight: 600;
	margin-bottom: 2px;
}

.gmp-legal__doc small {
	font-size: 9.5px;
	color: var(--gmp-muted);
}

.gmp-legal__doc-art {
	position: relative;
	height: 118px;
	border-radius: 6px;
	background: linear-gradient(170deg, #fefdf9 0%, #f7f3e6 100%);
	border: 1px solid #e8e3d3;
	margin-bottom: 10px;
	padding: 12px 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	color: var(--gmp-gold);
	overflow: hidden;
}

.gmp-legal__doc-art::before {
	content: "";
	position: absolute;
	inset: 5px;
	border: 1px solid rgba(163, 130, 63, 0.28);
	border-radius: 3px;
	pointer-events: none;
}

.gmp-legal__doc-seal {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(163, 130, 63, 0.12);
	border: 1px solid rgba(163, 130, 63, 0.3);
}

.gmp-legal__doc-art svg {
	width: 18px;
	height: 18px;
}

.gmp-legal__doc-line {
	display: block;
	width: 70%;
	height: 3px;
	border-radius: 2px;
	background: rgba(11, 59, 37, 0.1);
}

.gmp-legal__doc-line--short {
	width: 48%;
}

/* Legal document page --------------------------------------------------- */

.gmp-legal-page {
	max-width: 860px;
}

.gmp-legal-page__updated {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 7px 16px;
	border-radius: var(--gmp-radius-pill);
	background: var(--gmp-green-tint);
	color: var(--gmp-green);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	margin-bottom: 34px;
}

.gmp-legal-page__block {
	padding-bottom: 26px;
	margin-bottom: 26px;
	border-bottom: 1px solid var(--gmp-line);
}

.gmp-legal-page__block:last-of-type {
	border-bottom: 0;
	margin-bottom: 0;
}

.gmp-legal-page__block h2 {
	font-size: clamp(20px, 2.1vw, 26px);
	margin-bottom: 12px;
}

.gmp-legal-page__block p {
	color: var(--gmp-muted);
	font-size: 15px;
	line-height: 1.75;
	margin: 0;
}

.gmp-legal-page__block .gmp-checks {
	margin-top: 16px;
}

.gmp-legal-page__cta {
	margin-top: 12px;
	padding: 32px;
	border-radius: var(--gmp-radius);
	background: var(--gmp-cream-deep);
	text-align: center;
}

.gmp-legal-page__cta .gmp-lead {
	margin: 0 auto 20px;
	max-width: 52ch;
}

.gmp-code-ethics {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
	gap: 46px;
	align-items: center;
}

.gmp-code-ethics__points {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 22px 0 0;
	font-size: 14px;
	color: var(--gmp-ink);
}

.gmp-code-ethics__points span {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.gmp-code-ethics__points svg {
	width: 17px;
	height: 17px;
	color: var(--gmp-green);
	margin-top: 3px;
}

.gmp-code-ethics__book {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.94fr);
	border-radius: 10px 14px 14px 10px;
	overflow: hidden;
	box-shadow: 0 34px 60px -40px rgba(11, 59, 37, 0.75);
	transform: perspective(1400px) rotateY(-5deg);
	transform-origin: right center;
}

.gmp-code-ethics__cover {
	position: relative;
	background: linear-gradient(155deg, #14502f 0%, #0a3321 60%, #072518 100%);
	color: #fff;
	padding: 30px 24px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	min-height: 268px;
	box-shadow: inset -14px 0 22px -18px rgba(0, 0, 0, 0.8);
}

.gmp-code-ethics__cover::after {
	content: "";
	position: absolute;
	inset: 12px;
	border: 1px solid rgba(200, 171, 114, 0.35);
	border-radius: 4px;
	pointer-events: none;
}

.gmp-code-ethics__brand {
	font-family: var(--gmp-serif);
	font-size: 17px;
	letter-spacing: 0.26em;
	color: var(--gmp-gold-soft);
}

.gmp-code-ethics__cover strong {
	font-family: var(--gmp-serif);
	font-size: clamp(18px, 2vw, 24px);
	font-weight: 500;
	line-height: 1.22;
	letter-spacing: 0.05em;
}

.gmp-code-ethics__sub {
	font-size: 10.5px;
	line-height: 1.55;
	color: #a9bdad;
}

.gmp-code-ethics__rule {
	width: 42px;
	height: 2px;
	background: var(--gmp-gold);
	margin-top: 6px;
}

.gmp-code-ethics__page {
	position: relative;
	background: linear-gradient(180deg, #fefdfa 0%, #f6f3e8 100%);
	padding: 26px 22px;
	min-height: 268px;
	box-shadow: inset 14px 0 22px -20px rgba(0, 0, 0, 0.5);
}

.gmp-code-ethics__page-title {
	display: block;
	font-family: var(--gmp-serif);
	font-size: 12.5px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gmp-green);
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(11, 59, 37, 0.16);
	margin-bottom: 10px;
}

.gmp-code-ethics__toc {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.gmp-code-ethics__toc li {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px;
	font-size: 10.5px;
	color: var(--gmp-muted);
}

.gmp-code-ethics__toc em {
	font-style: normal;
	font-size: 10px;
	color: var(--gmp-gold);
}

/* CTA band -------------------------------------------------------------- */

.gmp-cta-band {
	--gmp-heading-color: #fff;
	position: relative;
	background: var(--gmp-green-deep);
	color: #fff;
	overflow: hidden;
	padding: 64px 0;
	text-align: center;
}

.gmp-cta-band::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 20% 20%, rgba(163, 130, 63, 0.28), transparent 45%),
		radial-gradient(circle at 82% 78%, rgba(163, 130, 63, 0.22), transparent 42%);
}

.gmp-cta-band__inner {
	position: relative;
	z-index: 1;
	max-width: 720px;
	margin: 0 auto;
}

.gmp-cta-band h2 {
	color: #fff;
	font-size: clamp(26px, 3.2vw, 42px);
	margin-bottom: 12px;
}

.gmp-cta-band p {
	color: #c3d3c6;
	margin-bottom: 26px;
}

.gmp-cta-band__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
}

/* Product detail -------------------------------------------------------- */

.gmp-pd-hero {
	padding: 56px 0 64px;
	background: linear-gradient(120deg, #f7f5ee 0%, #fbfaf6 55%, var(--gmp-accent-tint, #eef3ec) 100%);
}

.gmp-pd-hero__title {
	font-size: clamp(30px, 4vw, 50px);
	margin-bottom: 16px;
}

.gmp-pd-hero__desc {
	color: var(--gmp-muted);
	margin-bottom: 24px;
	max-width: 54ch;
}

.gmp-pd-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 28px;
}

.gmp-pd-badges span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 15px;
	border-radius: var(--gmp-radius-pill);
	background: #fff;
	border: 1px solid color-mix(in srgb, var(--gmp-accent, #a3823f) 26%, #fff);
	font-size: 12px;
	font-weight: 500;
}

.gmp-pd-badges svg {
	width: 14px;
	height: 14px;
	color: var(--gmp-accent, var(--gmp-gold));
}

.gmp-pd-hero__media {
	position: relative;
}

.gmp-pd-hero__media img {
	width: 100%;
	border-radius: 24px;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	background: linear-gradient(160deg, #fbfaf6 0%, var(--gmp-accent-tint, #eef3ec) 100%);
	padding: 0;
	box-shadow: 0 40px 80px -55px rgba(11, 59, 37, 0.6);
}

.gmp-pd-hero__media--pack img {
	aspect-ratio: 4 / 5;
	object-fit: contain;
	padding: 22px;
}

.gmp-pd-hero__media::before {
	content: "";
	position: absolute;
	inset: -22px -22px auto auto;
	width: 170px;
	height: 170px;
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--gmp-accent, #a3823f) 24%, transparent), transparent 70%);
	pointer-events: none;
	z-index: 0;
}

.gmp-pd-hero .gmp-eyebrow {
	color: var(--gmp-accent, var(--gmp-gold));
}

.gmp-pd-hero .gmp-btn--primary {
	background: var(--gmp-accent-deep, var(--gmp-green));
	border-color: var(--gmp-accent-deep, var(--gmp-green));
}

.gmp-pd-hero .gmp-btn--primary:hover {
	background: var(--gmp-accent, var(--gmp-green-soft));
	border-color: var(--gmp-accent, var(--gmp-green-soft));
}

/* Ingredients accent ---------------------------------------------------- */

.gmp-ingredient__icon {
	background: color-mix(in srgb, var(--gmp-accent, #a3823f) 13%, #fff);
	color: var(--gmp-accent, var(--gmp-gold));
}

.gmp-ingredient:hover {
	border-color: color-mix(in srgb, var(--gmp-accent, #a3823f) 38%, #fff);
}

/* Product accent band --------------------------------------------------- */

.gmp-pd-band {
	--gmp-heading-color: #fff;
	position: relative;
	padding: 62px 0;
	text-align: center;
	color: #fff;
	background:
		radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--gmp-accent, #a3823f) 34%, transparent), transparent 52%),
		radial-gradient(circle at 88% 82%, color-mix(in srgb, var(--gmp-accent, #a3823f) 24%, transparent), transparent 55%),
		linear-gradient(120deg, #06231a 0%, #0b3b25 52%, #06231a 100%);
	overflow: hidden;
}

.gmp-pd-band::before,
.gmp-pd-band::after {
	content: "";
	position: absolute;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.12);
	pointer-events: none;
}

.gmp-pd-band::before {
	left: -90px;
	top: -120px;
}

.gmp-pd-band::after {
	right: -110px;
	bottom: -140px;
	width: 380px;
	height: 380px;
}

.gmp-pd-band__inner {
	position: relative;
	z-index: 1;
	max-width: 720px;
}

.gmp-pd-band .gmp-eyebrow {
	color: color-mix(in srgb, var(--gmp-accent, #a3823f) 70%, #fff);
}

.gmp-pd-band h2 {
	font-size: clamp(26px, 3.2vw, 40px);
	margin-bottom: 14px;
}

.gmp-pd-band p {
	margin: 0;
	color: #d6e2d8;
	font-size: 15px;
}


.gmp-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 48px;
	align-items: center;
}

.gmp-split--reverse .gmp-split__media {
	order: 2;
}

.gmp-split__media img {
	width: 100%;
	border-radius: 20px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.gmp-split__media--pack img {
	object-fit: contain;
	background: linear-gradient(160deg, #fbfaf6 0%, var(--gmp-accent-tint, #eef3ec) 100%);
	padding: 26px;
	aspect-ratio: 1 / 1;
}

.gmp-split h2 {
	font-size: clamp(24px, 2.8vw, 36px);
	margin-bottom: 14px;
}

.gmp-split p {
	color: var(--gmp-muted);
}

.gmp-checks {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 18px;
}

.gmp-checks li {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	font-size: 14px;
	color: var(--gmp-ink);
}

.gmp-checks svg {
	width: 18px;
	height: 18px;
	color: var(--gmp-green);
	margin-top: 3px;
}

.gmp-ingredients {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.gmp-ingredient {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 22px 18px;
	text-align: center;
}

.gmp-ingredient__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin: 0 auto 14px;
	border-radius: 50%;
	background: var(--gmp-gold-tint);
	color: var(--gmp-gold);
}

.gmp-ingredient h3 {
	font-size: 15px;
	margin-bottom: 6px;
}

.gmp-ingredient p {
	font-size: 12px;
	color: var(--gmp-muted);
	margin: 0;
}

/* Agenda detail --------------------------------------------------------- */

.gmp-ad-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 24px;
}

.gmp-ad-card {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 28px;
}

.gmp-ad-card h3 {
	font-size: 20px;
	margin-bottom: 18px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.gmp-ad-card h3 svg {
	width: 20px;
	height: 20px;
	color: var(--gmp-gold);
}

.gmp-dl {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.gmp-dl__row {
	display: grid;
	grid-template-columns: 26px minmax(0, 130px) minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 11px 0;
	border-bottom: 1px dashed var(--gmp-line);
	font-size: 13.5px;
}

.gmp-dl__row:last-child {
	border-bottom: 0;
}

.gmp-dl__row svg {
	width: 17px;
	height: 17px;
	color: var(--gmp-muted);
}

.gmp-dl__row dt {
	color: var(--gmp-muted);
	margin: 0;
}

.gmp-dl__row dd {
	margin: 0;
	font-weight: 500;
}

.gmp-rundown {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 8px 26px;
	max-width: 780px;
	margin: 0 auto;
}

.gmp-rundown__row {
	display: grid;
	grid-template-columns: 130px minmax(0, 1fr);
	gap: 20px;
	padding: 16px 0;
	border-bottom: 1px solid var(--gmp-line);
	position: relative;
	font-size: 13.5px;
}

.gmp-rundown__row:last-child {
	border-bottom: 0;
}

.gmp-rundown__row::before {
	content: "";
	position: absolute;
	left: -26px;
	top: 24px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--gmp-green);
}

.gmp-rundown__row strong {
	color: var(--gmp-green);
	font-weight: 600;
}

/* Stockist -------------------------------------------------------------- */

.gmp-stokis-toolbar {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	padding: 18px;
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	margin-bottom: 30px;
}

.gmp-field {
	position: relative;
	flex: 1 1 220px;
}

.gmp-field svg {
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	width: 17px;
	height: 17px;
	color: var(--gmp-muted);
}

.gmp-field input,
.gmp-field select {
	width: 100%;
	height: 46px;
	padding: 0 14px;
	border: 1px solid var(--gmp-line);
	border-radius: 10px;
	background: var(--gmp-cream);
	font-family: var(--gmp-sans);
	font-size: 13.5px;
	color: var(--gmp-ink);
	appearance: none;
}

.gmp-field--icon input {
	padding-left: 42px;
}

.gmp-field input:focus,
.gmp-field select:focus {
	outline: 2px solid rgba(11, 59, 37, 0.25);
	outline-offset: 1px;
	border-color: var(--gmp-green);
}

.gmp-stockist-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.gmp-stockist {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 24px;
	display: flex;
	flex-direction: column;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.gmp-stockist:hover {
	box-shadow: var(--gmp-shadow);
	transform: translateY(-3px);
}

.gmp-stockist.is-hidden {
	display: none;
}

.gmp-stockist__badge {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px;
	border-radius: var(--gmp-radius-pill);
	background: var(--gmp-gold-tint);
	color: #8a6a2c;
	font-size: 11px;
	font-weight: 600;
	margin-bottom: 14px;
}

.gmp-stockist__badge.is-primary {
	background: var(--gmp-green-tint);
	color: var(--gmp-green);
}

.gmp-stockist__badge svg {
	width: 13px;
	height: 13px;
}

.gmp-stockist__title {
	font-size: 18px;
	margin-bottom: 14px;
}

.gmp-stockist__meta {
	display: flex;
	flex-direction: column;
	gap: 9px;
	margin-bottom: 20px;
	flex: 1;
}

.gmp-stockist__meta li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	font-size: 12.5px;
	color: var(--gmp-muted);
}

.gmp-stockist__meta svg {
	width: 15px;
	height: 15px;
	color: var(--gmp-gold);
	margin-top: 2px;
}

.gmp-stockist__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding-top: 16px;
	border-top: 1px solid var(--gmp-line);
}

.gmp-empty {
	padding: 40px;
	text-align: center;
	color: var(--gmp-muted);
	background: #fff;
	border: 1px dashed var(--gmp-line);
	border-radius: var(--gmp-radius);
}

/* Contact --------------------------------------------------------------- */

.gmp-contact-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	gap: 40px;
	align-items: start;
}

.gmp-contact-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.gmp-contact-item {
	display: flex;
	gap: 16px;
	padding: 20px;
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
}

.gmp-contact-item p a {
	color: var(--gmp-green);
	text-decoration: underline;
	text-decoration-color: color-mix(in srgb, var(--gmp-green) 35%, transparent);
	text-underline-offset: 3px;
}

.gmp-contact-item p a:hover {
	text-decoration-color: var(--gmp-green);
}

.gmp-contact-item p a svg {
	display: inline-block;
	width: 13px;
	height: 13px;
	vertical-align: -2px;
}

.gmp-contact-item__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--gmp-green-tint);
	color: var(--gmp-green);
	flex: 0 0 auto;
}

.gmp-contact-item__icon svg {
	width: 20px;
	height: 20px;
}

.gmp-contact-item h3 {
	font-family: var(--gmp-sans);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gmp-gold);
	margin-bottom: 5px;
}

.gmp-contact-item p,
.gmp-contact-item a {
	font-size: 14px;
	margin: 0;
	color: var(--gmp-ink);
}

.gmp-contact-item a:hover {
	color: var(--gmp-green);
}

/* Portal layanan ---------------------------------------------------------- */

.gmp-section--portals {
	padding-top: 8px;
}

.gmp-portals {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 26px;
}

.gmp-portal {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
	padding: 30px;
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	box-shadow: 0 24px 60px -48px rgba(11, 59, 37, 0.45);
}

.gmp-portal__logo {
	display: flex;
	align-items: center;
	height: 62px;
}

.gmp-portal__logo img {
	max-height: 62px;
	width: auto;
}

.gmp-portal__title {
	font-family: var(--gmp-serif);
	font-size: 22px;
	color: var(--gmp-green);
	margin: 0;
}

.gmp-portal__desc {
	color: var(--gmp-muted);
	font-size: 14px;
	margin: 0;
}

.gmp-portal__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.gmp-portal__tags li {
	padding: 6px 12px;
	border-radius: var(--gmp-radius-pill, 999px);
	background: var(--gmp-green-tint);
	color: var(--gmp-green);
	font-size: 12px;
	font-weight: 600;
}

@media (max-width: 720px) {
	.gmp-portals {
		grid-template-columns: minmax(0, 1fr);
	}
}

.gmp-form {
	background: #fff;
	border: 1px solid var(--gmp-line);
	border-radius: var(--gmp-radius);
	padding: 32px;
}

.gmp-form h2 {
	font-size: 26px;
	margin-bottom: 8px;
}

.gmp-form > p {
	color: var(--gmp-muted);
	font-size: 14px;
	margin-bottom: 24px;
}

.gmp-form__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.gmp-form__field {
	margin-bottom: 16px;
}

.gmp-form__field label {
	display: block;
	font-size: 12.5px;
	font-weight: 600;
	margin-bottom: 7px;
}

.gmp-form__field input,
.gmp-form__field select,
.gmp-form__field textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--gmp-line);
	border-radius: 10px;
	background: var(--gmp-cream);
	font-family: var(--gmp-sans);
	font-size: 14px;
	color: var(--gmp-ink);
}

.gmp-form__field textarea {
	min-height: 130px;
	resize: vertical;
}

.gmp-form__field input:focus,
.gmp-form__field select:focus,
.gmp-form__field textarea:focus {
	outline: 2px solid rgba(11, 59, 37, 0.25);
	outline-offset: 1px;
	border-color: var(--gmp-green);
}

.gmp-form__hp {
	position: absolute;
	left: -9999px;
	opacity: 0;
	height: 0;
	width: 0;
	overflow: hidden;
}

.gmp-notice {
	padding: 14px 18px;
	border-radius: 12px;
	font-size: 13.5px;
	margin-bottom: 20px;
	border: 1px solid transparent;
}

.gmp-notice--success {
	background: #edf7f0;
	border-color: #b7e0c5;
	color: #1c6b3c;
}

.gmp-notice--error {
	background: #fdf0ee;
	border-color: #f0c3bc;
	color: #9a3226;
}

/* FAQ page -------------------------------------------------------------- */

.gmp-faq-group {
	margin-bottom: 44px;
}

.gmp-faq-group__title {
	font-size: 22px;
	margin-bottom: 18px;
	display: flex;
	align-items: center;
	gap: 12px;
}

.gmp-faq-group__title::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--gmp-line);
}

/* Footer ---------------------------------------------------------------- */

.gmp-footer {
	--gmp-heading-color: var(--gmp-gold-soft);
	background: var(--gmp-green-deep);
	color: #c3d3c6;
	padding: 66px 0 0;
	font-size: 13.5px;
}

.gmp-footer__grid {
	display: grid;
	grid-template-columns: 1.35fr 0.75fr 0.85fr 1fr 1fr;
	gap: 34px;
	padding-bottom: 46px;
}

.gmp-footer__desc {
	margin: 18px 0 20px;
	color: #a9bdad;
	font-size: 12.5px;
	max-width: 34ch;
}

.gmp-footer__social {
	display: flex;
	gap: 10px;
}

.gmp-footer__social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.16);
	color: #c3d3c6;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.gmp-footer__social a:hover {
	background: var(--gmp-gold);
	border-color: var(--gmp-gold);
	color: #fff;
}

.gmp-footer__social svg {
	width: 16px;
	height: 16px;
}

.gmp-footer__portals {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
	list-style: none;
}

.gmp-footer__portals a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 13px;
	border-radius: var(--gmp-radius-pill, 999px);
	border: 1px solid rgba(255, 255, 255, 0.16);
	color: #c3d3c6;
	font-size: 12px;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.gmp-footer__portals a:hover {
	background: var(--gmp-gold);
	border-color: var(--gmp-gold);
	color: #fff;
}

.gmp-footer__portals svg {
	width: 12px;
	height: 12px;
}

.gmp-footer__title {
	font-family: var(--gmp-sans);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--gmp-gold-soft);
	margin-bottom: 16px;
}

.gmp-footer__list {
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.gmp-footer__list a,
.gmp-footer__list span {
	color: #c3d3c6;
	transition: color 0.2s ease;
}

.gmp-footer__list a:hover {
	color: #fff;
}

.gmp-footer__list--contact li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	font-size: 12.5px;
	line-height: 1.5;
}

.gmp-footer__list--contact a,
.gmp-footer__list--contact span {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.gmp-footer__list--contact svg {
	width: 15px;
	height: 15px;
	color: var(--gmp-gold-soft);
	margin-top: 3px;
	flex: 0 0 auto;
}

.gmp-footer__newsletter p {
	font-size: 12.5px;
	color: #a9bdad;
	margin-bottom: 14px;
}

.gmp-newsletter {
	display: flex;
	align-items: center;
	gap: 0;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 10px;
	overflow: hidden;
	padding: 4px;
}

.gmp-newsletter input {
	flex: 1;
	min-width: 0;
	height: 38px;
	padding: 0 12px;
	background: transparent;
	border: 0;
	color: #fff;
	font-family: var(--gmp-sans);
	font-size: 12.5px;
}

.gmp-newsletter input::placeholder {
	color: #8fa695;
}

.gmp-newsletter input:focus {
	outline: none;
}

.gmp-newsletter button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 8px;
	background: var(--gmp-gold);
	color: #fff;
	cursor: pointer;
	transition: background 0.2s ease;
}

.gmp-newsletter button:hover {
	background: #8f6f31;
}

.gmp-newsletter button svg {
	width: 16px;
	height: 16px;
}

.gmp-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding: 20px 0;
}

.gmp-footer__bottom-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.gmp-footer__bottom p {
	margin: 0;
	font-size: 12px;
	color: #8fa695;
}

.gmp-footer__legal {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	font-size: 12px;
}

.gmp-footer__legal a {
	color: #8fa695;
}

.gmp-footer__legal a:hover {
	color: #fff;
}

/* Utilities ------------------------------------------------------------- */

.gmp-mt-0 {
	margin-top: 0;
}

.gmp-center {
	text-align: center;
}

.gmp-hide {
	display: none !important;
}

/* Hide theme defaults --------------------------------------------------- */

body.gmp-theme .site-header,
body.gmp-theme .site-footer,
body.gmp-theme .hello-elementor-header-footer {
	display: none;
}

/* Responsive ------------------------------------------------------------ */

@media (max-width: 1180px) {
	.gmp-products__track {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.gmp-certs {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.gmp-pillars {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.gmp-footer__grid {
		grid-template-columns: 1.4fr 1fr 1fr;
		row-gap: 40px;
	}
}

@media (max-width: 1024px) {
	.gmp-section {
		padding: 68px 0;
	}

	.gmp-nav {
		display: none;
	}

	.gmp-burger {
		display: inline-flex;
	}

	.gmp-header__login span {
		display: none;
	}

	.gmp-hero__inner,
	.gmp-about,
	.gmp-legal,
	.gmp-code-ethics,
	.gmp-contact-grid,
	.gmp-page-hero--split .gmp-container {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px;
	}

	.gmp-hero__media {
		order: -1;
	}

	.gmp-hero__media-badge {
		left: 14px;
		bottom: 14px;
	}

	.gmp-testimonials,
	.gmp-agenda-grid,
	.gmp-stockist-grid,
	.gmp-doc-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gmp-ingredients {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gmp-vm,
	.gmp-ad-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.gmp-split,
	.gmp-split--reverse {
		grid-template-columns: minmax(0, 1fr);
	}

	.gmp-split--reverse .gmp-split__media {
		order: 0;
	}

	.gmp-dist {
		grid-template-columns: minmax(0, 1fr);
		padding: 36px 30px;
	}

	.gmp-dist__cta {
		justify-content: flex-start;
	}

	.gmp-faq-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.gmp-faq-agenda {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px;
	}

	.gmp-code-ethics__book {
		transform: none;
	}

	.gmp-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gmp-legal__docs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gmp-products__track--catalog.is-single .gmp-product-card {
		flex-direction: column;
		max-width: 360px;
	}

	.gmp-products__track--catalog.is-single .gmp-product-card__media {
		flex: 0 0 auto;
		min-height: 0;
	}

	.gmp-products__track--catalog.is-single .gmp-product-card__media img {
		position: static;
		aspect-ratio: 4 / 5;
		object-fit: contain;
		padding: 8px;
	}

	.gmp-products__track--catalog.is-single .gmp-product-card__body {
		padding: 20px 20px 22px;
	}
}

@media (max-width: 720px) {
	body.gmp-theme {
		font-size: 15.5px;
	}

	.gmp-container {
		padding: 0 18px;
	}

	.gmp-section {
		padding: 54px 0;
	}

	.gmp-topbar__tagline,
	.gmp-topbar__link span {
		display: none;
	}

	.gmp-topbar__inner {
		justify-content: center;
	}

	.gmp-header__actions .gmp-btn {
		display: none;
	}

	.gmp-products__track,
	.gmp-testimonials,
	.gmp-agenda-grid,
	.gmp-stockist-grid,
	.gmp-doc-grid,
	.gmp-ingredients,
	.gmp-stats,
	.gmp-form__row,
	.gmp-pillars {
		grid-template-columns: minmax(0, 1fr);
	}

	.gmp-certs {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 14px 8px;
	}

	.gmp-certs__item {
		padding: 6px;
	}

	.gmp-certs__item img {
		max-height: 42px;
	}

	.gmp-hero {
		padding: 44px 0 48px;
	}

	.gmp-hero__media-badge {
		position: static;
		margin: 14px 0 0;
		max-width: 100%;
		box-shadow: var(--gmp-shadow-soft);
	}

	.gmp-hero__title {
		font-size: clamp(32px, 9vw, 44px);
	}

	.gmp-agenda-card {
		flex-direction: column;
		gap: 16px;
	}

	.gmp-doc-card {
		flex-direction: column;
	}

	.gmp-doc-card img {
		width: 100%;
	}

	.gmp-footer__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.gmp-about__inset {
		width: 118px;
		left: -10px;
		right: auto;
		bottom: -16px;
	}

	.gmp-about__chip {
		right: -8px;
		left: auto;
		top: 14px;
		padding: 9px 12px;
	}

	.gmp-about__chip strong {
		font-size: 12.5px;
	}

	.gmp-page-hero--photo .gmp-container {
		padding-top: 44px;
		padding-bottom: 44px;
	}

	.gmp-page-hero__bg::after {
		background: linear-gradient(180deg, rgba(251, 250, 246, 0.96) 0%, rgba(251, 250, 246, 0.9) 55%, rgba(251, 250, 246, 0.72) 100%);
	}

	.gmp-page-hero--map {
		padding-bottom: 52px;
	}

	.gmp-page-hero__map {
		width: 130%;
		right: -30%;
		opacity: 0.2;
	}

	.gmp-code-ethics__book {
		grid-template-columns: minmax(0, 1fr);
		border-radius: 12px;
	}

	.gmp-code-ethics__cover {
		min-height: 0;
		padding: 26px 22px;
	}

	.gmp-code-ethics__page {
		min-height: 0;
		box-shadow: none;
		border-top: 1px solid rgba(11, 59, 37, 0.12);
	}

	.gmp-legal__doc-art {
		height: 96px;
	}

	.gmp-agenda-panel {
		padding: 20px;
	}

	.gmp-agenda-panel__head {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	.gmp-faq-agenda h2 {
		font-size: 26px;
	}

	.gmp-footer__bottom-inner {
		flex-direction: column;
		text-align: center;
	}

	.gmp-rundown__row {
		grid-template-columns: minmax(0, 1fr);
		gap: 4px;
	}

	.gmp-form {
		padding: 22px;
	}

	.gmp-ad-card {
		padding: 22px;
	}

	.gmp-dl__row {
		grid-template-columns: 22px minmax(0, 1fr);
		row-gap: 2px;
	}

	.gmp-dl__row dd {
		grid-column: 2;
	}
}

/* ==========================================================================
   Override reset Hello Elementor (dimuat setelah file ini)
   ========================================================================== */

body.gmp-theme .gmp-btn,
body.gmp-theme .gmp-btn:hover,
body.gmp-theme .gmp-btn:focus,
body.gmp-theme .gmp-btn:active {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: auto;
	padding: 14px 26px;
	border-radius: var(--gmp-radius-pill);
	font-family: var(--gmp-sans);
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.2;
	border: 1.5px solid transparent;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

body.gmp-theme .gmp-btn--primary,
body.gmp-theme .gmp-btn--primary:hover {
	background: var(--gmp-green);
	border-color: var(--gmp-green);
	color: #fff;
}

body.gmp-theme .gmp-btn--primary:hover {
	background: var(--gmp-green-soft);
	border-color: var(--gmp-green-soft);
	box-shadow: var(--gmp-shadow-soft);
}

body.gmp-theme .gmp-btn--gold,
body.gmp-theme .gmp-btn--gold:hover {
	background: var(--gmp-gold);
	border-color: var(--gmp-gold);
	color: #fff;
}

body.gmp-theme .gmp-btn--gold:hover {
	background: #8f6f31;
	border-color: #8f6f31;
}

body.gmp-theme .gmp-btn--ghost,
body.gmp-theme .gmp-btn--ghost:focus {
	background: transparent;
	border-color: rgba(11, 59, 37, 0.28);
	color: var(--gmp-green);
}

body.gmp-theme .gmp-btn--ghost:hover {
	background: var(--gmp-green);
	border-color: var(--gmp-green);
	color: #fff;
}

body.gmp-theme .gmp-btn--light,
body.gmp-theme .gmp-btn--light:hover {
	background: #fff;
	border-color: #fff;
	color: var(--gmp-green);
}

body.gmp-theme .gmp-btn--light:hover {
	background: var(--gmp-gold-tint);
	border-color: var(--gmp-gold-tint);
}

body.gmp-theme .gmp-btn--outline-light,
body.gmp-theme .gmp-btn--outline-light:focus {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.55);
	color: #fff;
}

body.gmp-theme .gmp-btn--outline-light:hover {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.75);
	color: #fff;
}

body.gmp-theme .gmp-btn--wa,
body.gmp-theme .gmp-btn--wa:hover {
	background: #1f7a4d;
	border-color: #1f7a4d;
	color: #fff;
}

body.gmp-theme .gmp-btn--wa:hover {
	background: #18653f;
	border-color: #18653f;
}

body.gmp-theme .gmp-btn--sm,
body.gmp-theme .gmp-btn--sm:hover {
	padding: 10px 18px;
	font-size: 13px;
}

body.gmp-theme .gmp-btn svg {
	width: 16px;
	height: 16px;
}

body.gmp-theme .gmp-btn--sm svg {
	width: 14px;
	height: 14px;
}

body.gmp-theme .gmp-accordion__trigger,
body.gmp-theme .gmp-accordion__trigger:hover,
body.gmp-theme .gmp-accordion__trigger:focus {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 18px 22px;
	background: none;
	border: 0;
	font-family: var(--gmp-sans);
	font-size: 14.5px;
	font-weight: 600;
	text-align: left;
	color: var(--gmp-ink);
	cursor: pointer;
	text-decoration: none;
}

body.gmp-theme .gmp-burger,
body.gmp-theme .gmp-burger:hover,
body.gmp-theme .gmp-burger:focus {
	display: none;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border-radius: 12px;
	border: 1px solid var(--gmp-line);
	background: #fff;
	color: var(--gmp-green);
	cursor: pointer;
}

body.gmp-theme .gmp-newsletter button,
body.gmp-theme .gmp-newsletter button:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 0;
	border-radius: 8px;
	background: var(--gmp-gold);
	color: #fff;
	cursor: pointer;
}

body.gmp-theme .gmp-newsletter button:hover {
	background: #8f6f31;
}

body.gmp-theme .gmp-newsletter input,
body.gmp-theme .gmp-newsletter input:focus {
	flex: 1;
	min-width: 0;
	height: 38px;
	padding: 0 12px;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: #fff;
	font-family: var(--gmp-sans);
	font-size: 12.5px;
	outline: none;
	box-shadow: none;
}

body.gmp-theme .gmp-field input,
body.gmp-theme .gmp-field select {
	width: 100%;
	height: 46px;
	padding: 0 14px;
	border: 1px solid var(--gmp-line);
	border-radius: 10px;
	background: var(--gmp-cream);
	font-family: var(--gmp-sans);
	font-size: 13.5px;
	color: var(--gmp-ink);
	appearance: none;
}

body.gmp-theme .gmp-field--icon input {
	padding-left: 42px;
}

body.gmp-theme .gmp-form__field input,
body.gmp-theme .gmp-form__field select,
body.gmp-theme .gmp-form__field textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--gmp-line);
	border-radius: 10px;
	background: var(--gmp-cream);
	font-family: var(--gmp-sans);
	font-size: 14px;
	color: var(--gmp-ink);
}

body.gmp-theme .gmp-form__field textarea {
	min-height: 130px;
	resize: vertical;
}

@media (max-width: 1024px) {
	body.gmp-theme .gmp-burger {
		display: inline-flex;
	}
}

@media (max-width: 720px) {
	body.gmp-theme .gmp-header__actions .gmp-btn {
		display: none;
	}
}