/*
Theme Name: SangPemenang
Theme URI: https://sangpemenang.com/
Author: Andreas Pasolympia
Author URI: https://sangpemenang.com/
Description: Child theme of CoachAva for sangpemenang.com. A dark, calm company profile for Andreas Pasolympia, public speaker and teacher in Indonesia.
Template: coachava
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
Version: 1.0.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sangpemenang
Tags: full-site-editing, one-column, dark
*/

/* Kept from the parent (the parent enqueues the active theme's style.css only). */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption { text-wrap: balance; }
p { text-wrap: pretty; }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Anchor targets clear the sticky header. */
:where(.wp-site-blocks) [id] { scroll-margin-top: 5.5rem; }

/* Sticky, quiet header. */
.wp-site-blocks > header.wp-block-template-part { position: sticky; top: 0; z-index: 50; }
body.admin-bar .wp-site-blocks > header.wp-block-template-part { top: var(--wp-admin--admin-bar--height, 32px); }
.sp-header .wp-block-navigation-item__content { letter-spacing: 0.04em; }
.sp-header .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--primary); text-decoration: none; }
.sp-brand a { text-decoration: none; }
.sp-brand a:hover { color: var(--wp--preset--color--primary); }

/* Mobile overlay menu. */
.sp-header .wp-block-navigation__responsive-container.is-menu-open { padding: 2rem 1.75rem; }
.sp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 1.5rem; }
.sp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-family: var(--wp--preset--font-family--libre-caslon-text); font-size: 1.6rem; font-weight: 400; letter-spacing: 0; }

/* Portrait. */
.sp-portrait img { aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 20%; width: 100%; filter: grayscale(100%) contrast(1.02); }

/* Cards and steps. */
.sp-card { transition: border-color .3s ease; height: 100%; }
.sp-card:hover { border-color: rgba(184, 151, 90, 0.55) !important; }
.sp-num { font-variant-numeric: tabular-nums; }

/* Buttons: calm hover. */
.wp-element-button, .wp-block-button__link { transition: background-color .25s ease, color .25s ease, border-color .25s ease; }

/* Social icons on dark. */
.wp-block-social-links.is-style-logos-only .wp-social-link a { padding: 4px; }
.wp-block-social-links.is-style-logos-only .wp-social-link:hover { color: var(--wp--preset--color--contrast) !important; }

/* Hairline rule. */
.sp-rule { width: 48px; height: 1px; background: var(--wp--preset--color--primary); border: 0; }

/* Hero: typographic, no photo. */
.sp-hero h1 em.sp-gold { font-style: italic; color: var(--wp--preset--color--primary); }
/* Keep the gold phrase on one line and give the headline room for a clean two-line break on desktop. */
@media (min-width: 600px) {
	.sp-hero h1 em.sp-gold { white-space: nowrap; }
}
.sp-hero > h1.wp-block-heading { max-width: 1200px !important; }
.sp-rule-center { margin-left: auto !important; margin-right: auto !important; width: 64px; }
.sp-about-media .sp-portrait { margin: 0; }
.sp-about-media .sp-portrait img { border: 1px solid #b8975a; padding: 6px; background: #1b1a18; box-sizing: border-box; }

/* Tentang: text left, photo right (smaller). Side by side from 360px up, overriding core stacking for this block only. */
@media (min-width: 782px) {
	.wp-block-columns.sp-about-cols { column-gap: clamp(3rem, 6vw, 6rem); }
	.wp-block-columns.sp-about-cols > .sp-about-text { flex-basis: 63% !important; }
	.wp-block-columns.sp-about-cols > .sp-about-media { flex-basis: 37% !important; }
	.sp-about-media .sp-portrait { max-width: 340px; margin-left: auto; }
}
@media (min-width: 360px) and (max-width: 781px) {
	.wp-block-columns.sp-about-cols { flex-wrap: nowrap !important; column-gap: clamp(1.25rem, 4vw, 2rem); align-items: flex-start !important; }
	.wp-block-columns.sp-about-cols > .wp-block-column { flex-grow: 0 !important; flex-shrink: 1; }
	.wp-block-columns.sp-about-cols > .sp-about-text { flex-basis: 64% !important; min-width: 12rem; }
	.wp-block-columns.sp-about-cols > .sp-about-media { flex-basis: 36% !important; min-width: 6rem; }
	.wp-block-columns.sp-about-cols .sp-about-media .sp-portrait { max-width: none; }
}
/* Very narrow phones: stacked, photo below the text, centered. */
@media (max-width: 359px) {
	.sp-about-media .sp-portrait { max-width: 240px; margin: 0 auto; }
}


@media (min-width: 782px) {
	.sp-sticky { position: sticky; top: 7rem; align-self: flex-start; }
}
@media (max-width: 781px) {
	.wp-block-social-links.is-content-justification-right { justify-content: flex-start !important; }
	.sp-footer-more { text-align: left !important; }
}
