/*
Theme Name: M&C Wedding
Theme URI: https://example.com/
Author: M&C Wedding Planner
Description: Tema a blocchi su misura per M&C Wedding Planner. Stile luxury avorio, nero e oro. Da usare insieme al plugin "M&C Core" (portfolio, recensioni, form).
Version: 1.7.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mc-wedding
*/

/* ---------- Base ---------- */
html { scroll-behavior: smooth; }
:where(body) { -webkit-font-smoothing: antialiased; }
img { height: auto; }
.wp-site-blocks { padding: 0; }
.wp-site-blocks > * + * { margin-block-start: 0; }
main { margin-block-start: 0 !important; }

/* Sottotitolo a lettere spaziate sopra ai titoli */
.mc-eyebrow,
p.is-style-mc-eyebrow {
	font-family: var(--wp--preset--font-family--jost);
	font-size: 0.75rem !important;
	font-weight: 400;
	letter-spacing: 0.4em;
	text-transform: uppercase;
	color: var(--wp--preset--color--oro-scuro);
	margin-bottom: 0;
}
.mc-dark .mc-eyebrow,
.mc-dark p.is-style-mc-eyebrow { color: var(--wp--preset--color--champagne); }

/* Parole in corsivo nei titoli */
h1 em, h2 em, h3 em { font-style: italic; }
.mc-dark h1 em, .mc-dark h2 em { color: var(--wp--preset--color--oro-chiaro); }

/* Filetto oro */
.wp-block-separator.is-style-mc-filetto {
	width: 64px !important;
	max-width: 64px;
	border: 0;
	border-top: 1px solid var(--wp--preset--color--oro) !important;
	opacity: 1;
	margin-left: auto;
	margin-right: auto;
}

/* ---------- Sezioni ---------- */
.mc-section { padding-top: clamp(4.5rem, 9vw, 7.5rem); padding-bottom: clamp(4.5rem, 9vw, 7.5rem); padding-left: 24px; padding-right: 24px; }
.mc-section--sand { background: var(--wp--preset--color--sabbia); }
.mc-dark { background: var(--wp--preset--color--inchiostro); color: var(--wp--preset--color--avorio); }
.mc-dark :where(h1, h2, h3, h4) { color: var(--wp--preset--color--avorio); }
.mc-dark a:where(:not(.wp-element-button)) { color: var(--wp--preset--color--oro-chiaro); }
.mc-muted { color: var(--wp--preset--color--testo); }
.mc-dark .mc-muted { color: var(--wp--preset--color--pietra); }

/* ---------- Header ---------- */
.mc-header { border-bottom: 1px solid var(--wp--preset--color--bordo); background: var(--wp--preset--color--avorio); padding: 18px 24px; position: relative; z-index: 20; }
.mc-logo { display: flex; align-items: center; gap: 14px; text-decoration: none !important; color: var(--wp--preset--color--inchiostro) !important; }
.mc-logo__mark { width: auto; height: 60px; flex-shrink: 0; display: block; }
.mc-logo__text { display: flex; flex-direction: column; gap: 6px; line-height: 1.1; }
.mc-logo__word { width: auto; height: 32px; display: block; }
.mc-logo__sub { font-size: 0.625rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--wp--preset--color--oro-scuro); white-space: nowrap; }
@media (max-width: 600px) { .mc-header > .wp-block-group { flex-wrap: nowrap; } .mc-logo { gap: 8px; min-width: 0; } .mc-logo__mark { height: 40px; } .mc-logo__word { height: 22px; } .mc-logo__sub { font-size: 0.5rem; letter-spacing: 0.1em; } }
.mc-header .wp-block-navigation { font-size: 0.8125rem; letter-spacing: 0.16em; text-transform: uppercase; gap: 28px; }
.mc-header .wp-block-navigation a { text-decoration: none; }
.mc-header .wp-block-navigation .current-menu-item > a { border-bottom: 1px solid var(--wp--preset--color--oro); padding-bottom: 4px; }
.mc-header .wp-block-navigation .mc-nav-cta > a { background: var(--wp--preset--color--inchiostro); color: var(--wp--preset--color--avorio) !important; padding: 14px 22px; }
.mc-header .wp-block-navigation .mc-nav-cta > a:hover { background: var(--wp--preset--color--oro-scuro); }
.mc-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--avorio); padding: 32px; }

/* ---------- Hero ---------- */
.mc-hero .wp-block-cover__inner-container { max-width: 820px; text-align: center; }
.mc-hero h1 { color: var(--wp--preset--color--avorio); }
.mc-hero h1 em { color: var(--wp--preset--color--oro-chiaro); }
.mc-hero p { color: #E9E1D2; }
.mc-hero .mc-eyebrow { color: var(--wp--preset--color--champagne); }

/* ---------- Pulsanti ---------- */
.wp-block-button.is-style-mc-oro .wp-block-button__link { background: var(--wp--preset--color--champagne); color: var(--wp--preset--color--inchiostro); font-weight: 500; }
.wp-block-button.is-style-mc-oro .wp-block-button__link:hover { background: var(--wp--preset--color--oro-chiaro); }
.wp-block-button.is-style-outline .wp-block-button__link { border: 1px solid var(--wp--preset--color--oro); background: transparent; color: inherit; }
.mc-dark .wp-block-button.is-style-outline .wp-block-button__link,
.mc-hero .wp-block-button.is-style-outline .wp-block-button__link { color: var(--wp--preset--color--avorio); border-color: var(--wp--preset--color--champagne); }
.wp-element-button:focus-visible, a:focus-visible, button:focus-visible { outline: 2px solid var(--wp--preset--color--oro); outline-offset: 3px; }

/* Link testuale con filetto */
.mc-link-filetto a { text-decoration: none; text-transform: uppercase; letter-spacing: 0.2em; font-size: 0.8125rem; color: var(--wp--preset--color--inchiostro); border-bottom: 1px solid var(--wp--preset--color--oro); padding-bottom: 4px; }
.mc-dark .mc-link-filetto a { color: var(--wp--preset--color--avorio); }

/* ---------- Foto segnaposto e cornice ---------- */
.mc-foto-cornice { outline: 1px solid var(--wp--preset--color--oro); outline-offset: 14px; }
.mc-foto .wp-block-cover__inner-container p { font-size: 0.6875rem; letter-spacing: 0.2em; text-transform: uppercase; }

/* ---------- Card servizi ---------- */
.mc-servizi { gap: 32px; }
.mc-card { background: var(--wp--preset--color--avorio); height: 100%; display: flex; flex-direction: column; }
.mc-card > .wp-block-cover { margin: 0; }
.mc-card__body { padding: 40px 36px 44px; flex-grow: 1; display: flex; flex-direction: column; gap: 14px; }
.mc-card__body > * { margin: 0 !important; }
.mc-card__num { font-family: var(--wp--preset--font-family--cormorant-garamond); font-size: 2.75rem; line-height: 1; color: var(--wp--preset--color--oro); }
.mc-card__sub { font-size: 0.75rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--wp--preset--color--oro-scuro); }
.mc-card__text { flex-grow: 1; color: var(--wp--preset--color--testo); }
.mc-servizi .wp-block-column { display: flex; }
.mc-servizi .wp-block-column > .mc-card { width: 100%; }

/* ---------- Liste articoli / video ---------- */
.mc-posts .wp-block-post { display: flex; flex-direction: column; gap: 14px; }
.mc-posts .wp-block-post > * { margin: 0; }
.mc-posts .wp-block-post-featured-image img { aspect-ratio: 4/3; object-fit: cover; width: 100%; }
.mc-posts .wp-block-post-terms { font-size: 0.75rem; letter-spacing: 0.24em; text-transform: uppercase; }
.mc-posts .wp-block-post-terms a { color: var(--wp--preset--color--oro-scuro); text-decoration: none; }
.mc-dark .mc-posts .wp-block-post-terms a { color: var(--wp--preset--color--champagne); }
.mc-posts .wp-block-post-title { font-size: 1.625rem; line-height: 1.25; }
.mc-posts .wp-block-post-title a { text-decoration: none; color: inherit; }
.mc-posts .wp-block-post-date { font-size: 0.8125rem; color: var(--wp--preset--color--testo); }
.mc-dark .mc-posts .wp-block-post-date { color: var(--wp--preset--color--pietra); }
.mc-posts--video .wp-block-post-featured-image { position: relative; }
.mc-posts--video .wp-block-post-featured-image a::after { content: ""; position: absolute; inset: 0; margin: auto; width: 72px; height: 72px; border-radius: 50%; border: 1px solid var(--wp--preset--color--oro-chiaro); background: rgba(28,26,23,.35) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M26 21 L44 32 L26 43 Z' fill='%23E4CF9F'/%3E%3C/svg%3E") center/64px no-repeat; }

/* Articolo singolo */
.mc-single .wp-block-post-content > * + * { margin-block-start: 1.4em; }
.mc-single .wp-block-embed { margin-block: 2.5em; }

/* Footer */
.mc-footer { background: var(--wp--preset--color--inchiostro); color: var(--wp--preset--color--pietra); padding: 72px 24px 40px; font-size: 0.9375rem; }
.mc-footer a { color: var(--wp--preset--color--pietra); text-decoration: none; }
.mc-footer a:hover { color: var(--wp--preset--color--oro-chiaro); }
.mc-footer__brand { font-family: var(--wp--preset--font-family--cormorant-garamond); font-size: 1.875rem; color: var(--wp--preset--color--avorio); }
.mc-footer__brand em { color: var(--wp--preset--color--oro-chiaro); }
.mc-footer__brand { margin-bottom: 0 !important; }
.mc-footer__sub { font-size: 0.6875rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--wp--preset--color--oro-chiaro); margin-top: 4px !important; }
.mc-footer__title { font-size: 0.75rem !important; letter-spacing: 0.3em; text-transform: uppercase; color: var(--wp--preset--color--champagne); }
.mc-footer__bottom { border-top: 1px solid #3F3830; padding-top: 24px; font-size: 0.8125rem; color: #A99E8C; }
.mc-footer .wp-block-social-links .wp-social-link { color: var(--wp--preset--color--oro-chiaro); }

@media (max-width: 781px) {
	.mc-card__body { padding: 32px 26px 36px; }
	.mc-foto-cornice { outline-offset: 8px; }
}

/* Ritocchi sezioni */
.mc-hero { padding: 96px 24px; }
.mc-section--intro { padding-bottom: 2.5rem; }
.mc-section--tight-top { padding-top: 1.5rem; }
.mc-section--intro .mc-muted, .mc-section--intro h1 { margin-left: auto; margin-right: auto; }
.mc-hero .wp-block-post-title { color: var(--wp--preset--color--avorio); }
.mc-hero .wp-block-post-excerpt { color: #E9E1D2; }
.mc-hero .wp-block-post-terms a { color: var(--wp--preset--color--champagne); text-decoration: none; }
.wp-block-social-links.is-style-logos-only .wp-social-link { color: var(--wp--preset--color--oro-scuro); }
.mc-dark .wp-block-social-links.is-style-logos-only .wp-social-link,
.mc-footer .wp-block-social-links.is-style-logos-only .wp-social-link { color: var(--wp--preset--color--oro-chiaro); }
@media (max-width: 781px) {
	.mc-foto-cornice { min-height: 340px !important; }
	.mc-section { padding-left: 20px; padding-right: 20px; }
}

/* Foto incluse nel tema (blocchi Immagine) */
.mc-img { margin: 0 !important; }
.mc-img img { display: block; width: 100%; height: auto; object-fit: cover; }
.mc-img--4x3 img { aspect-ratio: 4 / 3; }
.mc-img--4x5 img { aspect-ratio: 4 / 5; }
.wp-block-image.mc-foto-cornice { margin: 14px !important; }
.mc-card > .mc-img { margin: 0 !important; }
