/* =========================================================
   MORVILE YACHTING - CSS aggiuntivo (Astra + Elementor)
   Incollare in: Aspetto > Personalizza > CSS aggiuntivo
   Colori: blu #2F70B1 | blu scuro #173565 | grigio testo #2B323A | sfondo #F5F5F5
   Font: Raleway (testi, h3, h6) | Zilla Slab (h1, h2)
   ========================================================= */

/* --- Tipografia --- */
body, .elementor-widget-text-editor { font-family: "Raleway", sans-serif; color: #2B323A; }
h1, h2, .elementor-heading-title:is(h1, h2) { font-family: "Zilla Slab", serif; font-weight: 400; }
h2, .elementor-widget-heading h2.elementor-heading-title { color: #173565; line-height: 1.1; }
h3, .elementor-widget-heading h3.elementor-heading-title { font-family: "Raleway", sans-serif; color: #173565; font-weight: 400; }

/* Etichetta piccola "Morvile Yachting" sopra i titoli (h6 sottolineato) */
.morv-kicker .elementor-heading-title {
	font-family: "Raleway", sans-serif;
	color: #2F70B1;
	font-size: 1.1em;
	font-weight: 400;
	display: inline-block;
	border-bottom: 2px solid currentColor;
	padding-bottom: 2px;
}
@media (min-width: 992px)  { .morv-kicker .elementor-heading-title { font-size: 1.2em; } }
@media (min-width: 1400px) { .morv-kicker .elementor-heading-title { font-size: 1.5em; } }

/* Titolo nella testata delle pagine interne */
.morv-page-title .elementor-heading-title {
	font-size: clamp(28px, 4vw, 48px);
	letter-spacing: 2px;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .25);
}

/* --- Box di testo bianchi con padding responsive (ex .column_padding) --- */
.morv-text-col { padding: 20px 15px !important; }
@media (min-width: 767px)  { .morv-text-col { padding: 20px 20px !important; } }
@media (min-width: 992px)  { .morv-text-col { padding: 20px 40px !important; } }
@media (min-width: 1400px) { .morv-text-col { padding: 30px 60px !important; } }

/* Righe a zig-zag (servizi, basi operative) */
.morv-zigzag { margin-bottom: 0; }
.morv-map iframe { min-height: 450px; }
@media (max-width: 767px) { .morv-map iframe { min-height: 300px; height: 300px; } }

/* --- Home: 3 box Noleggio / Usato / Offerte --- */
.morv-card-img img { width: 100%; height: auto; display: block; }
.morv-card-img { margin-bottom: 0 !important; }
.morv-card-label .elementor-heading-title {
	background: #173565;
	margin-top: 5px;
	padding: 15px 10px;
	font-family: "Raleway", sans-serif;
	color: #fff !important;
	transition: background .2s;
}
.morv-card-label .elementor-heading-title a { color: #fff !important; display: block; }
.morv-card-label .elementor-heading-title:hover { background: #2F70B1; }

/* --- Home: frasi sul mare a rotazione --- */
.morv-quotes { position: relative; min-height: 180px; max-width: 900px; margin: 0 auto; text-align: center; }
.morv-quote {
	position: absolute; inset: 0;
	display: flex; flex-direction: column; justify-content: center;
	color: #fff; font-family: "Zilla Slab", serif; font-size: clamp(20px, 2.4vw, 30px); line-height: 1.35;
	opacity: 0; transition: opacity 1s ease;
}
.morv-quote.is-active { opacity: 1; position: relative; }
.morv-quote-author { display: block; margin-top: 15px; font-family: "Raleway", sans-serif; font-size: 16px; font-style: italic; }

/* --- Banner home --- */
.morv-banners img { width: 100%; height: auto; }

/* --- Vendi: fascia icone --- */
.morv-icon-label .elementor-heading-title { font-size: 18px; line-height: 1.3; color: #fff; }

/* --- Pulsanti --- */
.morv-btn .elementor-button { border-radius: 0; font-family: "Raleway", sans-serif; letter-spacing: .5px; }

/* --- Footer --- */
.morv-footer-copy p, .morv-footer-copy a { color: #fff !important; text-align: center; margin: 0; }
.morv-footer-copy a { text-decoration: underline; }

/* =========================================================
   CONTACT FORM 7
   ========================================================= */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"], .wpcf7 textarea {
	width: 100%; border: 1px solid #ddd; border-radius: 0; padding: 12px 14px; background: #fff;
	font-family: "Raleway", sans-serif;
}
.wpcf7 textarea { height: 140px; }
.wpcf7 label { display: block; margin-bottom: 12px; }
.wpcf7 input[type="submit"] {
	background-color: #2F70B1 !important; color: #fff; border: 0; border-radius: 0;
	padding: 12px 40px; text-transform: uppercase; cursor: pointer;
}
.wpcf7 input[type="submit"]:hover { background-color: #173565 !important; }
.morv-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; }
.morv-form-grid .full { grid-column: 1 / -1; }
@media (max-width: 767px) { .morv-form-grid { grid-template-columns: 1fr; } }
.morv-form-grid h3 { margin-top: 0; }

/* Form nella colonna blu della pagina Contatti */
.morv-form-dark .wpcf7, .morv-form-dark .wpcf7 a, .morv-form-dark .wpcf7-acceptance { color: #fff; }
.morv-form-dark .wpcf7 input[type="submit"] { background: #fff !important; color: #173565; }
.morv-form-dark .wpcf7 input[type="submit"]:hover { background: #2F70B1 !important; color: #fff; }

/* =========================================================
   BASE SITO + HEADER ASTRA
   ========================================================= */
body { background-color: #F5F5F5; }
.site-content .ast-container { max-width: 100%; padding: 0; }
.ast-primary-header-bar, .main-header-bar { background-color: #fff; border-bottom: 0; }
.main-header-menu .menu-link, .ast-header-sections-navigation .menu-link {
	font-family: "Raleway", sans-serif; color: #173565; font-size: 17px; letter-spacing: .3px;
}
.main-header-menu .menu-item:hover > .menu-link,
.main-header-menu .current-menu-item > .menu-link,
.main-header-menu .current_page_item > .menu-link { color: #2F70B1; }
.ast-sticky-active .ast-primary-header-bar, .ast-header-sticked .main-header-bar { background-color: rgba(255,255,255,.95) !important; }
.ast-mobile-menu-trigger-minimal, .menu-toggle { color: #173565 !important; }
.morv-footer { clear: both; }
