/*
Theme Name: YDSQ Theme
Theme URI: https://ydijesiquiero.com
Author: bvaras
Description: Tema propio de Y Dije Sí Quiero. HTML/CSS plano, sin editor de bloques — pensado para velocidad de construcción y edición directa en código.
Version: 0.4.0
Requires at least: 6.7
Requires PHP: 8.0
Text Domain: ydsq-theme
*/

:root{
	--base: #FAF7F2;      /* crudo */
	--contrast: #5B6B4A;  /* oliva — titulares, wordmark, acento */
	--copy: #6B675F;      /* ink-soft — texto de cuerpo */
	--secondary: #8A9574; /* salvia */
	--neutral: #DDE6DC;   /* menta suave — fondos de sección */
	--accent: #5B6B4A;    /* oliva */
	--ink: #3A3A35;       /* máximo contraste, uso puntual */

	--font-wordmark: 'Italiana', Georgia, serif;
	--font-heading: 'Fraunces', Georgia, serif;
	--font-body: 'Cormorant Garamond', Georgia, serif;
	--font-support: 'Jost', -apple-system, sans-serif;
}

*{ box-sizing: border-box; }

html{ height: 100%; }
body{
	margin: 0;
	min-height: 100%;
	display: flex;
	flex-direction: column;
	background-color: var(--base);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: var(--copy);
	font-family: var(--font-body);
	font-size: 1.2rem;
	line-height: 1.6;
}
main{
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.wordmark{
	font-family: var(--font-wordmark);
	font-weight: 400;
	color: var(--contrast);
}

h1, h2, h3{
	font-family: var(--font-heading);
	font-weight: 400;
	color: var(--contrast);
	line-height: 1.15;
	margin: 0 0 0.4em;
}

.label, small, .site-footer, label{
	font-family: var(--font-support);
}

a{ color: var(--accent); }
a:hover{ color: var(--ink); }

.wrap{
	max-width: 720px;
	margin: 0 auto;
	padding: 0 24px;
}

/* Header */
.site-header{
	padding: 20px 24px;
}
.site-header .wrap{
	max-width: 1000px;
	display: flex;
	justify-content: center;
}
.site-header .logo{
	display: inline-flex;
	font-family: var(--font-wordmark);
	font-size: 2rem;
	color: var(--contrast);
	text-decoration: none;
}

/* Hero */
.hero{
	text-align: center;
	padding: 24px 24px 16px;
}
.hero p{
	font-size: 1.3rem;
	color: var(--secondary);
	margin-top: 0;
}

/* Contact */
.contacto{
	text-align: center;
	padding: 8px 24px 32px;
}
.contacto h2{
	margin-bottom: 0.2em;
}
.contacto a{
	font-size: 1.1rem;
}
.contacto .ff-el-group{
	margin-bottom: 14px !important;
}
.contacto form{
	max-width: 520px;
	margin: 16px auto 0;
}

/* Marca en los campos del formulario */
.contacto label,
.contacto .ff-el-form-control,
.contacto select,
.contacto textarea{
	font-family: var(--font-support);
}
.contacto .ff-el-form-control,
.contacto select,
.contacto textarea{
	color: var(--ink);
	background: #fff;
	border: 1px solid var(--secondary);
	border-radius: 2px;
}
.contacto .ff-el-form-control:focus,
.contacto select:focus,
.contacto textarea:focus{
	border-color: var(--accent);
	outline: none;
	box-shadow: 0 0 0 1px var(--accent);
}
.contacto ::placeholder{
	color: var(--secondary);
	opacity: 1;
}
.contacto .ff-btn-submit{
	border-radius: 2px !important;
	font-family: var(--font-heading) !important;
}

/* Footer */
.site-footer{
	text-align: center;
	padding: 24px;
}
.site-footer .footer-mark{
	display: block;
	height: 28px;
	width: auto;
	margin: 0 auto;
}
