/*
Theme Name: Magiske Øvelser
Theme URI: https://magiskeøvelser.dk
Description: Child theme of Twenty Twenty-Five for Magiske Øvelser, somatiske øvelser ved Lene Norup. Warm earth palette: rosa, jord og irgrøn.
Author: Side-Walk
Template: twentytwentyfive
Version: 0.1.0
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: magiske
*/

/* ---------------------------------------------------------------
   Small helper classes used by the block patterns and page content.
   Everything colour and type related lives in theme.json.
   --------------------------------------------------------------- */

/* Eyebrow label above section headings */
.mo-eyebrow {
	font-size: 0.8125rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--wp--preset--color--accent-2);
	margin-bottom: 0.25rem;
}

/* Chips for symptom list and credentials */
.mo-chip {
	display: inline-flex;
	align-items: center;
	min-height: 2.5rem;
	padding: 0.35rem 1.1rem;
	border-radius: 999px;
	background: var(--wp--preset--color--base-2);
	border: 1px solid var(--wp--preset--color--border);
	font-size: 1rem;
	margin: 0;
}

/* Organic "stone" crop for portraits */
.mo-blob img {
	border-radius: 58% 42% 48% 52% / 46% 62% 38% 54%;
	aspect-ratio: 5 / 6;
	object-fit: cover;
	object-position: 50% 30%;
	width: 100%;
	box-shadow: 0 30px 60px rgba(94, 64, 58, 0.18);
}
.mo-blob-2 img {
	border-radius: 44% 56% 52% 48% / 56% 40% 60% 44%;
}

/* Rounded cards */
.mo-card {
	border-radius: 24px;
}

/* Dark sections: headings and links inherit light colour */
.mo-dark h1,
.mo-dark h2,
.mo-dark h3,
.mo-dark h4 {
	color: var(--wp--preset--color--base);
}
.mo-dark a:not(.wp-element-button) {
	color: var(--wp--preset--color--base);
}
.mo-dark .mo-eyebrow {
	color: var(--wp--preset--color--accent-6);
}
.mo-dark .mo-step-number {
	color: var(--wp--preset--color--accent-6);
}

/* Big serif numbers in the "Sådan foregår det" steps */
.mo-step-number {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 3.5rem;
	line-height: 1;
	color: var(--wp--preset--color--accent-1);
}
.mo-step {
	border-top: 1px solid rgba(251, 244, 241, 0.25);
	padding-top: 1.5rem;
}

/* Price in cards */
.mo-price {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 3rem;
	line-height: 1;
	color: var(--wp--preset--color--accent-5);
	margin: 0;
}
.mo-dark .mo-price {
	color: var(--wp--preset--color--base);
}
.mo-price-label {
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-3);
	margin: 0;
}
.mo-dark .mo-price-label {
	color: var(--wp--preset--color--accent-6);
}

/* Placeholder marker for facts still missing from the client */
.mo-todo {
	color: var(--wp--preset--color--accent-1);
	font-weight: 600;
}

/* Header */
.mo-header .wp-block-site-title a {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.75rem;
	font-weight: 600;
	color: var(--wp--preset--color--accent-5);
	text-decoration: none;
}
.mo-header .wp-block-navigation a {
	color: var(--wp--preset--color--contrast);
}
.mo-header .wp-block-navigation a:hover {
	color: var(--wp--preset--color--accent-1);
}
.mo-header .mo-logo {
	margin: 0;
}
.mo-btn-sm .wp-block-button__link {
	padding: 0.65rem 1.4rem;
	font-size: 1rem;
}

/* Footer */
.mo-footer {
	font-size: 1rem;
}
.mo-footer a {
	text-decoration: none;
}
.mo-footer .mo-footer-title {
	font-weight: 600;
	color: var(--wp--preset--color--base);
}

/* Contact Form 7 */
.wpcf7 label {
	display: block;
	font-weight: 500;
	margin-bottom: 0.35rem;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea {
	width: 100%;
	padding: 0.85rem 1rem;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 14px;
	background: var(--wp--preset--color--base-2);
	font: inherit;
	color: var(--wp--preset--color--contrast);
}
.wpcf7 input:focus,
.wpcf7 textarea:focus {
	outline: 2px solid var(--wp--preset--color--accent-2);
	outline-offset: 1px;
}
.wpcf7 input[type="submit"] {
	background: var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--base);
	border: 0;
	border-radius: 999px;
	padding: 0.9rem 1.75rem;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}
.wpcf7 input[type="submit"]:hover {
	background: var(--wp--preset--color--rose-dark);
}
.wpcf7 .wpcf7-not-valid-tip {
	color: var(--wp--preset--color--accent-1);
	font-size: 0.9rem;
}
.wpcf7 form.sent .wpcf7-response-output {
	border-color: var(--wp--preset--color--accent-2);
	border-radius: 14px;
}

/* Long e-mail addresses in narrow footer columns */
.mo-footer a[href^="mailto:"] {
	overflow-wrap: anywhere;
}

/* Chips inside dark sections: translucent pills with light text */
.mo-dark .mo-chip {
	background: rgba(251, 244, 241, 0.12);
	border-color: rgba(251, 244, 241, 0.35);
	color: var(--wp--preset--color--base);
}

/* Subpages: breathing room between the last box and the footer (front page sections run edge to edge) */
body.page:not(.home) .wp-block-post-content > :last-child {
	margin-bottom: var(--wp--preset--spacing--60);
}
