/* HostAndCook - aspetto del sito (caricato da hostandcook-personalizzazioni.php) */

:root {
	--hc-verde: #0f9d94;
	--hc-verde-scuro: #0b7a73;
	--hc-arancio: #ff6b35;
	--hc-scuro: #2c3e50;
	--hc-crema: #faf6f1;
	--hc-testo: #3d4852;
}

/* --- Testata: logo accanto al nome, niente sottotitolo --- */

.header-logo__description {
	display: none;
}

.header-logo__name {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--hc-verde-scuro);
}

.header-logo__name::before {
	content: "";
	width: 44px;
	height: 38px;
	background: url(logo-icona.png) center / contain no-repeat;
}

/* --- Annunci: foto che riempiono la scheda, senza bande grigie --- */

.hp-listing--view-block .hp-listing__image img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover !important;
}

.hp-listing--view-block .hp-listing__created-date {
	display: none;
}

.hc-nota-indirizzo {
	display: block;
	margin-top: 4px;
	color: #7a8791;
}

.hp-form--booking-make .hp-form__description {
	font-size: 0.9rem;
	color: #5c6a75;
}

/* --- Cassa: la casella "voglio ricevere le email" (MailPoet) su una riga sua, accanto al suo testo --- */

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after {
	content: "";
	display: table;
	clear: both;
}

.woocommerce-checkout label[data-automation-id="woo-commerce-subscription-opt-in"] {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	clear: both;
	width: 100%;
	margin: 14px 0 0;
	line-height: 1.45;
}

.woocommerce-checkout #mailpoet_woocommerce_checkout_optin {
	position: static;
	flex: 0 0 auto;
	margin: 4px 0 0;
}

/* --- Area personale dell'host: avviso su cio' che manca per essere prenotabile --- */

.hc-avviso-host {
	background: #fff6ec;
	border: 1px solid #ffd2a8;
	border-left: 5px solid #ff6b35;
	border-radius: 10px;
	padding: 18px 20px;
	margin: 0 0 28px;
}

.hc-avviso-host p {
	margin: 0 0 14px;
	color: #3d4852;
	font-size: 1rem;
}

.hc-avviso-host .hc-bottone {
	padding: 10px 22px;
}

/* --- Pagina della prenotazione confermata: contatti dell'altra persona --- */

.hc-contatti {
	background: #eef8f7;
	border-left: 5px solid var(--hc-verde);
	border-radius: 10px;
	padding: 16px 20px;
	margin: 0 0 24px;
	line-height: 1.7;
}

/* --- Pie' di pagina: dati del gestore --- */

.hc-gestore {
	background: var(--hc-scuro);
	color: rgba(255, 255, 255, 0.7);
	font-size: 0.8rem;
	line-height: 1.6;
	text-align: center;
	padding: 0 16px 28px;
}

/* --- Pagine a sezioni (home, Diventa host): niente intestazione del tema, niente margini --- */

.hc-pagina .header-hero--title {
	display: none;
}

.home .site-content,
.hc-pagina .site-content {
	padding-top: 0;
}

.home .page__text > *,
.hc-pagina .page__text > * {
	margin-top: 0;
	margin-bottom: 0;
}

/* "clip" e non "hidden": hidden trasformerebbe il body in un riquadro con scorrimento proprio */
body.home,
body.hc-pagina {
	overflow-x: clip;
}

/* Sezioni a tutta larghezza anche dentro il contenitore del tema */
.hc-pieno {
	position: relative;
	left: 50%;
	width: 100vw;
	margin-left: -50vw !important;
	box-sizing: border-box;
}

.hc-hero {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 620px;
	padding: 80px 20px;
	background-size: cover;
	background-position: 67% 33%;
}

.hc-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(rgba(40, 26, 15, 0.5), rgba(40, 26, 15, 0.72));
}

.hc-hero__dentro {
	position: relative;
	width: 100%;
	max-width: 880px;
	text-align: center;
}

.hc-hero h1 {
	color: #fff;
	font-size: clamp(2rem, 5vw, 3.4rem);
	line-height: 1.12;
	margin: 0 0 16px;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.35);
}

.hc-hero .hc-hero__sotto {
	color: #fff;
	font-size: clamp(1.05rem, 2vw, 1.3rem);
	margin: 0 auto 32px;
	max-width: 640px;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.4);
}

.hc-hero--host {
	min-height: 520px;
	background-position: center;
}

.hc-hero .hc-hero__garanzie {
	color: rgba(255, 255, 255, 0.92);
	font-size: 0.92rem;
	margin: 22px 0 0;
}

.hc-sezione {
	padding: 72px 20px;
}

.hc-sezione > * {
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
}

.hc-sezione--crema {
	background: var(--hc-crema);
}

.hc-sezione h2 {
	text-align: center;
	font-size: clamp(1.6rem, 3.2vw, 2.3rem);
	margin: 0 auto 12px;
}

.hc-sezione .hc-sottotitolo {
	text-align: center;
	color: #5c6a75;
	font-size: 1.1rem;
	max-width: 680px;
	margin: 0 auto 44px;
}

.hc-griglia {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	gap: 24px;
}

.hc-carta {
	background: #fff;
	border-radius: 16px;
	padding: 28px 24px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
}

.hc-carta h3 {
	font-size: 1.15rem;
	margin: 0 0 8px;
}

.hc-carta p {
	margin: 0;
	color: var(--hc-testo);
}

.hc-carta__numero {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--hc-verde);
	color: #fff;
	font-weight: 700;
	font-size: 1.15rem;
	margin-bottom: 16px;
}

.hc-carta__icona {
	color: var(--hc-verde);
	font-size: 1.6rem;
	margin-bottom: 14px;
}

.hc-banda {
	background: var(--hc-verde-scuro);
	color: #fff;
	text-align: center;
}

.hc-banda h2,
.hc-banda p {
	color: #fff;
}

.hc-banda p {
	font-size: 1.1rem;
	max-width: 700px;
	margin: 0 auto 28px;
}

.hc-banda--scura {
	background: var(--hc-scuro);
}

.hc-bottone,
.hc-bottone:visited {
	display: inline-block;
	background: var(--hc-arancio);
	color: #fff !important;
	font-weight: 600;
	padding: 14px 30px;
	border-radius: 999px;
	text-decoration: none;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.hc-bottone:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
}

.hc-centro {
	text-align: center;
	margin-top: 36px;
}

/* --- Moduli "lascia la tua email" (hostandcook-contatti.php) --- */

.hc-sezione > .hc-riquadro {
	background: var(--hc-crema);
	border-radius: 16px;
	padding: 32px 24px;
	max-width: 780px;
	margin-top: 56px;
	text-align: center;
}

.hc-riquadro h3 {
	font-size: 1.3rem;
	margin: 0 0 8px;
}

.hc-riquadro p {
	color: var(--hc-testo);
	margin: 0 0 20px;
}

.hc-avvisami {
	position: relative;
	max-width: 720px;
	margin: 0 auto;
}

.hc-avvisami [hidden] {
	display: none !important;
}

.hc-avvisami__campi {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
}

.hc-avvisami input[type="email"],
.hc-avvisami input[type="text"] {
	flex: 1 1 200px;
	min-width: 0;
	width: auto;
	padding: 13px 18px;
	border: 1px solid #cfd6db;
	border-radius: 999px;
	background: #fff;
	color: var(--hc-testo);
	font-size: 1rem;
}

.hc-avvisami input.hc-avvisami__trappola {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.hc-avvisami button.hc-bottone {
	background: var(--hc-arancio);
	border: 0;
	border-radius: 999px;
	padding: 13px 30px;
	cursor: pointer;
	font-size: 1rem;
	line-height: 1.2;
}

.hc-avvisami__consenso {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 8px;
	max-width: 600px;
	margin: 14px auto 0;
	font-size: 0.85rem;
	font-weight: 400;
	line-height: 1.45;
	text-align: left;
}

.hc-avvisami__consenso input {
	flex: 0 0 auto;
	margin: 3px 0 0;
}

.hc-avvisami .hc-avvisami__esito {
	font-size: 1rem;
	font-weight: 600;
	text-align: center;
	margin: 14px 0 0;
}

.hc-banda .hc-avvisami__consenso,
.hc-banda .hc-avvisami__consenso a {
	color: #fff;
}

.hc-banda .hc-avvisami__consenso a {
	text-decoration: underline;
}

/* --- Condividi e invita un amico (hostandcook-condivisione.php) --- */

.hc-condividi {
	background: var(--hc-crema);
	border-radius: 14px;
	padding: 22px 24px;
	margin: 0 0 28px;
}

.hc-condividi h3 {
	font-size: 1.2rem;
	margin: 0 0 8px;
}

.hc-condividi p {
	color: var(--hc-testo);
	margin: 0 0 14px;
}

.hc-condividi__bottoni {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.hc-condividi .hc-bottone {
	padding: 10px 18px;
	font-size: 0.95rem;
	border: 0;
	cursor: pointer;
	line-height: 1.3;
}

.hc-condividi .hc-bottone i {
	margin-right: 6px;
}

.hc-condividi .hc-bottone--whatsapp {
	background: #25d366;
}

.hc-condividi .hc-bottone--facebook {
	background: #1877f2;
}

.hc-condividi .hc-bottone--chiaro {
	background: #fff;
	color: var(--hc-scuro) !important;
	border: 1px solid #d5dbe0;
}

.hc-condividi__link input {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid #cfd6db;
	border-radius: 10px;
	background: #fff;
	font-size: 0.95rem;
	color: var(--hc-testo);
}

.hc-condividi__credito {
	font-weight: 600;
	color: var(--hc-verde-scuro);
}

.hc-banda .hc-fondatori-posti {
	font-weight: 700;
	margin-bottom: 20px;
}

.hc-domande {
	max-width: 780px;
}

.hc-domande details {
	border-bottom: 1px solid #e3e7ea;
	padding: 18px 4px;
}

.hc-domande summary {
	cursor: pointer;
	font-weight: 600;
	font-size: 1.05rem;
}

.hc-domande details p {
	margin: 12px 0 0;
	color: var(--hc-testo);
}

@media (max-width: 600px) {
	.hc-sezione {
		padding: 52px 16px;
	}
}
