/* MYVA Academy premium design. Palette: ink green, forest, gold, ivory. */
:root {
	--m-ink: #0c2419;
	--m-forest: #1d4a37;
	--m-green: #355c46;
	--m-gold: #c9a45c;
	--m-gold-deep: #9b7a35;
	--m-ivory: #fbf9f4;
	--m-champagne: #f3ebdc;
	--m-mist: #eef3ee;
	--m-text: #17261f;
	--m-muted: #56665d;
	--m-line: #dfe6df;
	--m-serif: "Fraunces", Georgia, "Times New Roman", serif;
}

body { background: var(--m-ivory); color: var(--m-text); }

/* ---------- Header ---------- */
header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(251, 249, 244, 0.88);
	-webkit-backdrop-filter: saturate(160%) blur(12px);
	backdrop-filter: saturate(160%) blur(12px);
	border-bottom: 1px solid var(--m-line);
}
body.admin-bar header.wp-block-template-part { top: 32px; }
header.wp-block-template-part .wp-block-site-title,
header.wp-block-template-part .wp-block-site-title a {
	font-family: var(--m-serif);
	font-weight: 600;
	font-size: 1.35rem;
	letter-spacing: -0.01em;
	color: var(--m-ink);
	text-decoration: none;
}
header.wp-block-template-part .wp-block-navigation a { font-weight: 500; font-size: 0.95rem; }
.wp-block-navigation .myva-nav-cta > a,
.wp-block-navigation .myva-nav-cta a.wp-block-navigation-item__content {
	background: var(--m-ink);
	color: #fff !important;
	padding: 0.55rem 1.1rem;
	border-radius: 999px;
	font-weight: 600;
	transition: transform 0.2s ease, background 0.2s ease;
}
.wp-block-navigation .myva-nav-cta a:hover { background: var(--m-forest); transform: translateY(-1px); }

/* ---------- Layout bands ---------- */
.myva-band { margin-block: 0 !important; padding: clamp(56px, 8vw, 104px) 0; }
.myva-band.alignfull { width: auto !important; max-width: none !important; }
.myva-inner { max-width: 1140px; margin-inline: auto; padding-inline: clamp(20px, 4vw, 40px); }
.myva-band--dark {
	color: #e8f0ea;
	background:
		radial-gradient(900px 460px at 88% -8%, rgba(201, 164, 92, 0.24), transparent 60%),
		radial-gradient(800px 520px at -5% 105%, rgba(53, 110, 84, 0.55), transparent 58%),
		linear-gradient(180deg, #0d281c, #0a1f16);
	position: relative;
	overflow: hidden;
}
.myva-band--dark::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
	background-size: 56px 56px;
	-webkit-mask-image: linear-gradient(180deg, #000, transparent 85%);
	mask-image: linear-gradient(180deg, #000, transparent 85%);
	pointer-events: none;
}
.myva-band--dark > * { position: relative; }
.myva-band--mist { background: var(--m-mist); }
.myva-band--champagne { background: var(--m-champagne); }
.myva-band--white { background: #fff; border-block: 1px solid var(--m-line); }

/* ---------- Type ---------- */
.myva-eyebrow {
	display: inline-block;
	font-size: 0.74rem !important;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--m-gold-deep);
	margin: 0 0 1rem !important;
}
.myva-band--dark .myva-eyebrow {
	color: var(--m-gold);
	border: 1px solid rgba(201, 164, 92, 0.45);
	padding: 0.45rem 0.9rem;
	border-radius: 999px;
	background: rgba(201, 164, 92, 0.08);
}
.myva-h1, .myva-h2, .myva-h3 { font-family: var(--m-serif); color: var(--m-ink); font-weight: 500; letter-spacing: -0.02em; text-wrap: balance; }
.myva-h1 { font-size: clamp(2.5rem, 6vw, 4.6rem) !important; line-height: 1.02 !important; margin: 0 0 1.2rem !important; }
.myva-h2 { font-size: clamp(1.9rem, 3.8vw, 3rem) !important; line-height: 1.08 !important; margin: 0 0 1rem !important; }
.myva-h3 { font-size: 1.3rem !important; line-height: 1.2 !important; margin: 0 0 0.5rem !important; }
.myva-band--dark .myva-h1, .myva-band--dark .myva-h2, .myva-band--dark .myva-h3 { color: #fff; }
.myva-h1 em, .myva-h2 em { font-style: italic; color: var(--m-gold-deep); font-weight: 400; }
.myva-band--dark .myva-h1 em, .myva-band--dark .myva-h2 em { color: var(--m-gold); }
.myva-lead { font-size: clamp(1.05rem, 1.6vw, 1.25rem) !important; line-height: 1.65 !important; color: var(--m-muted); max-width: 58ch; }
.myva-band--dark .myva-lead { color: #c9d9cf; }
.myva-text { color: var(--m-muted); line-height: 1.7; }
.myva-band--dark .myva-text { color: #c3d3c9; }
.myva-center { text-align: center; margin-inline: auto; }
.myva-center .myva-lead { margin-inline: auto; }

/* ---------- Buttons ---------- */
.myva-btn-gold .wp-block-button__link {
	background: linear-gradient(180deg, #d9b872, #c9a45c) !important;
	color: #1a1608 !important;
	font-weight: 700;
	border-radius: 999px;
	padding: 0.95rem 1.7rem;
	box-shadow: 0 10px 28px -10px rgba(201, 164, 92, 0.8);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.myva-btn-gold .wp-block-button__link:hover { transform: translateY(-2px); box-shadow: 0 16px 34px -10px rgba(201, 164, 92, 0.9); }
.myva-btn-ghost .wp-block-button__link {
	background: transparent !important;
	color: inherit !important;
	border: 1.5px solid currentColor;
	border-radius: 999px;
	padding: 0.9rem 1.6rem;
	font-weight: 600;
	transition: background 0.2s ease;
}
.myva-band--dark .myva-btn-ghost .wp-block-button__link { color: #fff !important; border-color: rgba(255, 255, 255, 0.55); }
.myva-btn-ghost .wp-block-button__link:hover { background: rgba(127, 127, 127, 0.14) !important; }
.myva-btn-dark .wp-block-button__link {
	background: var(--m-ink) !important;
	color: #fff !important;
	border-radius: 999px;
	padding: 0.95rem 1.7rem;
	font-weight: 600;
	transition: transform 0.2s ease, background 0.2s ease;
}
.myva-btn-dark .wp-block-button__link:hover { background: var(--m-forest) !important; transform: translateY(-2px); }

/* ---------- Pills and trust row ---------- */
.myva-pills { display: flex; flex-wrap: wrap; gap: 0.6rem 1.4rem; margin-top: 1.6rem; padding: 0; list-style: none; }
.myva-pills li { font-size: 0.92rem; color: #c9d9cf; display: flex; align-items: center; gap: 0.5rem; }
.myva-pills li::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--m-gold); box-shadow: 0 0 0 4px rgba(201, 164, 92, 0.18); }

/* ---------- Grids and cards ---------- */
.myva-grid { display: grid; gap: 20px; }
.myva-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.myva-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.myva-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.myva-grid > * { margin: 0 !important; }
.myva-card {
	background: #fff;
	border: 1px solid var(--m-line);
	border-radius: 20px;
	padding: 28px;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.myva-card:hover { transform: translateY(-4px); box-shadow: 0 22px 44px -26px rgba(12, 36, 25, 0.35); border-color: rgba(201, 164, 92, 0.6); }
.myva-card p { color: var(--m-muted); line-height: 1.6; margin: 0; }
.myva-card .myva-h3 { font-size: 1.15rem !important; }
.myva-card--dark { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.14); }
.myva-card--dark p { color: #bcd0c4; }
.myva-card--dark:hover { border-color: rgba(201, 164, 92, 0.7); box-shadow: none; }
.myva-num {
	font-family: var(--m-serif);
	font-size: 3.2rem;
	line-height: 1;
	font-weight: 400;
	color: var(--m-gold);
	margin: 0 0 0.8rem !important;
}
.myva-stat { text-align: center; padding: 8px; }
.myva-stat .myva-stat__n { font-family: var(--m-serif); font-size: clamp(2.2rem, 4vw, 3.2rem); line-height: 1; color: var(--m-ink); margin: 0; }
.myva-stat .myva-stat__l { font-size: 0.9rem; color: var(--m-muted); margin: 0.5rem 0 0; }
.myva-badge {
	display: inline-block;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 0.3rem 0.7rem;
	border-radius: 999px;
	background: var(--m-champagne);
	color: var(--m-gold-deep);
	margin-bottom: 0.8rem;
}
.myva-badge--live { background: #dff3e7; color: #1c6b43; }

/* ---------- Product visual ---------- */
.myva-visual { position: relative; }
.myva-visual img { border-radius: 22px; box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(255, 255, 255, 0.1); transform: rotate(1.5deg); }
.myva-visual::before {
	content: "";
	position: absolute;
	inset: -8% -6%;
	background: radial-gradient(closest-side, rgba(201, 164, 92, 0.35), transparent 70%);
	z-index: -1;
}
.myva-float {
	position: absolute;
	right: -4%;
	bottom: 6%;
	background: #fff;
	color: var(--m-ink);
	border-radius: 16px;
	padding: 12px 16px;
	font-size: 0.85rem;
	font-weight: 600;
	box-shadow: 0 20px 40px -18px rgba(0, 0, 0, 0.5);
}
.myva-float span { display: block; color: var(--m-muted); font-weight: 400; font-size: 0.78rem; }

/* ---------- Sample result card ---------- */
.myva-sample { background: #fff; border-radius: 22px; padding: 28px; box-shadow: 0 30px 60px -34px rgba(12, 36, 25, 0.5); border: 1px solid var(--m-line); }
.myva-sample ol { margin: 0.4rem 0 0; padding-left: 1.2rem; line-height: 1.8; color: var(--m-muted); }

/* ---------- Comparison list ---------- */
.myva-compare { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.myva-compare > div { border-radius: 20px; padding: 30px; }
.myva-compare__no { background: #fff; border: 1px solid var(--m-line); }
.myva-compare__yes { background: var(--m-ink); color: #e6efe9; }
.myva-compare ul { list-style: none; margin: 1rem 0 0; padding: 0; display: grid; gap: 0.7rem; }
.myva-compare li { padding-left: 1.6rem; position: relative; line-height: 1.5; }
.myva-compare__no li::before { content: "\2715"; position: absolute; left: 0; color: #b5503c; }
.myva-compare__yes li::before { content: "\2713"; position: absolute; left: 0; color: var(--m-gold); }

/* ---------- Timeline (Creator) ---------- */
.myva-steps { display: grid; gap: 0; }
.myva-steps > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 24px; padding: 26px 0; border-top: 1px solid var(--m-line); }
.myva-steps > div:first-child { border-top: 0; }

/* ---------- FAQ ---------- */
.wp-block-details { background: #fff; border: 1px solid var(--m-line); border-radius: 16px; padding: 4px 22px; margin-bottom: 12px !important; transition: border-color 0.2s ease; }
.wp-block-details[open] { border-color: rgba(201, 164, 92, 0.7); }
.wp-block-details summary { font-weight: 600; padding: 14px 0; cursor: pointer; font-size: 1.02rem; }
.wp-block-details p { color: var(--m-muted); line-height: 1.7; padding-bottom: 10px; }

/* ---------- Related cards ---------- */
#related { background: var(--m-mist) !important; }

/* ---------- Footer ---------- */
footer.wp-block-template-part > .wp-block-group { background: linear-gradient(180deg, #0d281c, #08170f) !important; border-top: 3px solid var(--m-gold); }
footer.wp-block-template-part .wp-block-heading { font-family: var(--m-serif); font-weight: 500; }

/* ---------- Store pages ---------- */
.woocommerce div.product .product_title, .wp-block-woocommerce-product-details h1, .single-product .wp-block-post-title {
	font-family: var(--m-serif);
	font-weight: 500;
	letter-spacing: -0.02em;
	color: var(--m-ink);
}
.woocommerce div.product p.price, .woocommerce div.product span.price, .wc-block-components-product-price { color: var(--m-gold-deep); font-weight: 700; font-size: 1.5rem; }
.woocommerce .button, .single_add_to_cart_button, .wc-block-components-button:not(.is-link), .wp-block-button__link.add_to_cart_button {
	border-radius: 999px !important;
	background: var(--m-ink) !important;
	color: #fff !important;
	font-weight: 600;
	transition: transform 0.2s ease, background 0.2s ease;
}
.woocommerce .button:hover, .single_add_to_cart_button:hover { background: var(--m-forest) !important; transform: translateY(-1px); }
.wp-block-woocommerce-product-image-gallery img, .wc-block-components-product-image img { border-radius: 18px; }

/* ---------- Motion ---------- */
@keyframes myva-rise { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
.myva-hero .myva-inner > * { animation: myva-rise 0.7s ease both; }
.myva-hero .myva-inner > *:nth-child(2) { animation-delay: 0.08s; }
.myva-hero .myva-inner > *:nth-child(3) { animation-delay: 0.16s; }
@media (prefers-reduced-motion: reduce) {
	.myva-hero .myva-inner > * { animation: none; }
	.myva-card, .myva-btn-gold .wp-block-button__link, .myva-btn-dark .wp-block-button__link { transition: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1000px) {
	.myva-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.myva-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 782px) {
	.myva-compare, .myva-grid-2 { grid-template-columns: minmax(0, 1fr); }
	.myva-steps > div { grid-template-columns: minmax(0, 1fr); gap: 6px; }
	.myva-visual img { transform: none; }
	.myva-float { right: 4%; }
}
@media (max-width: 600px) {
	.myva-grid-4, .myva-grid-3 { grid-template-columns: minmax(0, 1fr); }
	.myva-card { padding: 22px; }
}

/* ---------- Fixes (full-width bands, card text, badges, prose) ---------- */
body { overflow-x: clip; }
.myva-card .myva-num { color: var(--m-gold) !important; font-size: 2.6rem !important; }
.myva-card .myva-h3 { font-size: 1.3rem !important; color: var(--m-ink); }
.myva-card--dark .myva-h3 { color: #fff; }
.myva-card p:not(.myva-num) { font-size: 0.98rem !important; }
.myva-stat .myva-stat__l { font-size: 0.95rem !important; }
.myva-prose { max-width: 760px; margin-inline: auto; }
.myva-prose .myva-h3 { margin-top: 2.2rem !important; font-size: 1.35rem !important; }
.myva-prose p, .myva-prose li { color: var(--m-muted); line-height: 1.75; font-size: 1.02rem; }
.myva-prose a { color: var(--m-forest); text-underline-offset: 3px; }
.myva-finder-wrap { max-width: 820px; margin-inline: auto; }
.myva-card p.myva-badge { color: var(--m-gold-deep) !important; font-size: 0.7rem !important; margin-bottom: 0.8rem !important; background: var(--m-champagne); }
.myva-card p.myva-badge--live { color: #1c6b43 !important; background: #dff3e7; }
.myva-card--dark p.myva-badge { background: rgba(201, 164, 92, 0.18); color: var(--m-gold) !important; }
.myva-card--dark p.myva-badge--live { background: rgba(120, 220, 160, 0.16); color: #8fe0b0 !important; }
.myva-hero .myva-lead { color: #c9d9cf; }
