Salta al contenuto
/* ===== GUSTO SFUSO – PAGINE INTERNE ===== */
/* Larghezza piena e spazi (solo pagine con .lv-page) */
.lv-page {
width: 100vw; max-width: 100vw;
margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
color: #0E1A33;
}
body:has(.lv-page) .ct-container-full,
body:has(.lv-page) [data-vertical-spacing],
body:has(.lv-page) .entry-content,
body:has(.lv-page) article {
padding-top: 0 !important; padding-bottom: 0 !important;
margin-top: 0 !important; margin-bottom: 0 !important;
}
body:has(.lv-page) .elementor .e-con,
body:has(.lv-page) .elementor .e-con-inner {
padding-top: 0 !important; padding-bottom: 0 !important;
--padding-top: 0px; --padding-bottom: 0px; --gap: 0px;
}
body:has(.lv-page) .elementor .e-flexbox-base {
display: flex !important; flex-direction: column !important;
width: 100% !important; padding: 0 !important; gap: 0 !important;
}
body:has(.lv-page) .hero-section,
body:has(.lv-page) .entry-header { display: none !important; }
/* Base */
.lv-page .lv-wrap { max-width: 1240px; margin: 0 auto; padding: 0 24px; }
.lv-page p { margin: 0; }
.lv-page .lv-eyebrow {
margin: 0 0 12px; font-size: 13px; font-weight: 600;
letter-spacing: 0.2em; text-transform: uppercase; color: #4A6E4F;
}
.lv-page h2 {
margin: 0; font-size: clamp(28px, 3.2vw, 40px) !important;
font-weight: 700 !important; line-height: 1.12; color: #0E1A33;
}
/* Bottoni */
.lv-page .lv-btns { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.lv-page .lv-btn {
display: inline-flex; align-items: center; justify-content: center;
min-height: 48px; padding: 0 26px; border-radius: 8px;
font-size: 15px; font-weight: 600; letter-spacing: 0.02em;
text-decoration: none; transition: background .2s ease, color .2s ease;
}
.lv-page .lv-btn--blue { background: #4A6E4F; color: #FFFFFF !important; }
.lv-page .lv-btn--blue:hover { background: #3B5A40; color: #FFFFFF !important; }
.lv-page .lv-btn--gold { background: #E6B93C; color: #0E1A33 !important; }
.lv-page .lv-btn--gold:hover { background: #F3D46B; color: #0E1A33 !important; }
.lv-page .lv-btn--ghost { border: 1px solid #E6B93C; color: #F5F1E6 !important; }
.lv-page .lv-btn--ghost:hover { background: #E6B93C; color: #0E1A33 !important; }
/* ===== HERO PAGINA ===== */
.lv-phero {
position: relative; overflow: hidden;
min-height: 440px; display: flex; align-items: flex-end;
background: #4A6E4F center / cover no-repeat; color: #F5F1E6;
}
.lv-phero::before {
content: ""; position: absolute; inset: 0;
background:
linear-gradient(90deg, rgba(34, 54, 38, 0.92) 0%, rgba(34, 54, 38, 0.7) 45%, rgba(34, 54, 38, 0.35) 100%),
linear-gradient(to top, rgba(34, 54, 38, 0.6), transparent 50%);
}
.lv-phero .lv-wrap { position: relative; width: 100%; padding-top: 120px; padding-bottom: 72px; }
.lv-phero .lv-eyebrow { color: #FFFFFF; }
.lv-phero h1 {
margin: 0; max-width: 760px; color: #F5F1E6 !important;
font-size: clamp(38px, 5vw, 64px) !important; font-weight: 800 !important;
line-height: 1.04; letter-spacing: -0.02em;
}
.lv-phero h1 span { color: #F3D46B; }
.lv-phero p:not(.lv-eyebrow) { margin-top: 20px; max-width: 540px; font-size: 18px; line-height: 1.6; color: #E3EADF; }
/* ===== CARD INFO ===== */
.lv-cinfo { background: #F3EFE6; border-bottom: 1px solid #E5DFD2; }
.lv-cinfo .lv-wrap {
display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
padding-top: 64px; padding-bottom: 64px;
}
.lv-ccard {
display: flex; flex-direction: column; gap: 10px;
padding: 32px 30px; background: #FFFFFF;
border: 1px solid #E5DFD2; border-radius: 10px;
transition: box-shadow .25s ease, transform .25s ease;
}
.lv-ccard:hover { box-shadow: 0 14px 34px rgba(30, 45, 32, 0.10); transform: translateY(-3px); }
.lv-ccard svg { width: 34px; height: 34px; stroke: #4A6E4F; margin-bottom: 6px; }
.lv-ccard h3 { margin: 0; font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0.16em; text-transform: uppercase; color: #4A6E4F !important; }
.lv-ccard p { font-size: 17px; line-height: 1.55; color: #0E1A33; }
.lv-ccard p small { display: block; font-size: 14px; color: #4A5468; }
.lv-ccard a:not(.lv-btn) { color: #0E1A33 !important; font-weight: 700; text-decoration: none; }
.lv-ccard a:not(.lv-btn):hover { color: #4A6E4F !important; }
.lv-ccard .lv-more { margin-top: auto; padding-top: 10px; font-size: 14px; font-weight: 600; color: #4A6E4F !important; }
.lv-ccard dl { margin: 0; display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; font-size: 15px; }
.lv-ccard dt { font-weight: 700; }
.lv-ccard dd { margin: 0; color: #4A5468; }
/* Badge aperto / chiuso */
.lv-open {
align-self: flex-start; display: inline-flex; align-items: center; gap: 8px;
margin-top: 8px; padding: 6px 12px; border-radius: 999px;
font-size: 13px; font-weight: 600; background: #EEF1F7; color: #4A5468;
}
.lv-open::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #9AA3B5; }
.lv-open.is-open { background: #E7F4EC; color: #1E6B3A; }
.lv-open.is-open::before { background: #2E9B57; box-shadow: 0 0 0 0 rgba(46, 155, 87, 0.5); animation: lvPulse 2s infinite; }
@keyframes lvPulse { 70% { box-shadow: 0 0 0 8px rgba(46, 155, 87, 0); } 100% { box-shadow: 0 0 0 0 rgba(46, 155, 87, 0); } }
/* ===== FORM ===== */
/* Sezione form: testo a sinistra, form a destra */
.lv-cform .lv-wrap {
display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 64px; align-items: start;
padding-top: 96px; padding-bottom: 96px;
}
.lv-cform .lv-cform-intro, .lv-cform .lv-cform-box { min-width: 0; }
.lv-cform .wpforms-field-name .wpforms-field-row { display: flex !important; gap: 16px; max-width: 100% !important; }
.lv-cform .wpforms-field-name .wpforms-field-row-block { flex: 1 1 0 !important; width: auto !important; max-width: none !important; padding: 0 !important; margin: 0 !important; float: none !important; }
.lv-cform .wpforms-field-name .wpforms-field-row::before,
.lv-cform .wpforms-field-name .wpforms-field-row::after { display: none !important; }
.lv-cform-intro p:not(.lv-eyebrow) { margin-top: 18px; font-size: 16px; line-height: 1.65; color: #4A5468; }
.lv-cform-intro ul { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 14px; }
.lv-cform-intro li { display: flex; gap: 12px; font-size: 15px; color: #0E1A33; }
.lv-cform-intro li::before { content: ""; flex: none; width: 20px; height: 20px; margin-top: 1px; border-radius: 50%; background: #4A6E4F url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 10.5l2.5 2.5L14 7.5'/%3E%3C/svg%3E") center / 20px no-repeat; }
/* Scheda del form */
body:has(.lv-page) .wpforms-container {
margin: 0 !important; padding: 40px !important;
background: #FFFFFF; border: 1px solid #E5DFD2; border-radius: 12px;
box-shadow: 0 20px 50px rgba(30, 45, 32, 0.08);
}
body:has(.lv-page) .wpforms-container .wpforms-field { padding: 0 0 18px !important; }
body:has(.lv-page) .wpforms-container .wpforms-field-label {
margin-bottom: 8px !important; font-size: 14px !important; font-weight: 600 !important; color: #0E1A33 !important;
}
body:has(.lv-page) .wpforms-container .wpforms-required-label { color: #4A6E4F !important; }
body:has(.lv-page) .wpforms-container input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
body:has(.lv-page) .wpforms-container select,
body:has(.lv-page) .wpforms-container textarea {
width: 100% !important; max-width: 100% !important;
min-height: 50px; padding: 12px 16px !important;
font-size: 16px !important; color: #0E1A33 !important;
background: #FBF8F2 !important; border: 1px solid #E5DFD2 !important; border-radius: 8px !important;
}
body:has(.lv-page) .wpforms-container textarea { min-height: 150px; }
body:has(.lv-page) .wpforms-container input:focus,
body:has(.lv-page) .wpforms-container textarea:focus,
body:has(.lv-page) .wpforms-container select:focus {
background: #FFFFFF !important; border-color: #4A6E4F !important;
box-shadow: 0 0 0 3px rgba(74, 110, 79, 0.15) !important;
}
body:has(.lv-page) .wpforms-container .wpforms-field-sublabel,
body:has(.lv-page) .wpforms-container .wpforms-field-description { font-size: 13px !important; color: #4A5468 !important; }
body:has(.lv-page) .wpforms-container .wpforms-submit-container { padding-top: 6px !important; }
body:has(.lv-page) .wpforms-container .wpforms-submit {
width: 100%; min-height: 52px !important; padding: 0 28px !important;
font-size: 16px !important; font-weight: 600 !important;
background: #4A6E4F !important; color: #FFFFFF !important;
border: 0 !important; border-radius: 8px !important; cursor: pointer;
}
body:has(.lv-page) .wpforms-container .wpforms-submit:hover { background: #3B5A40 !important; }
body:has(.lv-page) .wpforms-confirmation-container-full {
margin: 0 !important; padding: 28px !important;
background: #EEF3EC !important; border: 1px solid #CFDCCB !important; border-radius: 10px;
color: #4A6E4F !important; font-size: 16px;
}
body:has(.lv-page) .wpforms-container label.wpforms-error,
body:has(.lv-page) .wpforms-container em.wpforms-error { color: #8E1B2B !important; font-size: 13px !important; }
/* ===== MAPPA + B2B ===== */
.lv-cmap-wrap { background: #F3EFE6; border-top: 1px solid #E5DFD2; }
.lv-cmap-wrap .lv-wrap {
display: grid; grid-template-columns: 1.5fr 1fr; gap: 28px;
padding-top: 88px; padding-bottom: 88px;
}
.lv-cmap { min-height: 420px; border-radius: 12px; overflow: hidden; border: 1px solid #E5DFD2; background: #E5DFD2; }
.lv-cmap iframe { display: block; width: 100%; height: 100%; min-height: 420px; border: 0; }
.lv-cb2b {
display: flex; flex-direction: column; justify-content: flex-end;
padding: 40px 36px; border-radius: 12px; overflow: hidden; position: relative;
background: #4A6E4F center / cover no-repeat; color: #F5F1E6;
}
.lv-cb2b::before { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(34, 54, 38, 0.95) 30%, rgba(34, 54, 38, 0.55)); }
.lv-cb2b > * { position: relative; }
.lv-cb2b .lv-eyebrow { color: #F3D46B; }
.lv-cb2b h2 { color: #F5F1E6 !important; font-size: clamp(26px, 2.6vw, 32px) !important; }
.lv-cb2b p:not(.lv-eyebrow) { margin-top: 14px; font-size: 16px; line-height: 1.6; color: #E3EADF; }
/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
.lv-cinfo .lv-wrap { grid-template-columns: 1fr 1fr; }
.lv-cinfo .lv-ccard:last-child { grid-column: 1 / -1; }
.lv-cform .lv-wrap { grid-template-columns: 1fr; gap: 40px; padding-top: 72px; padding-bottom: 72px; }
.lv-cmap-wrap .lv-wrap { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
.lv-phero { min-height: 380px; }
.lv-phero .lv-wrap { padding-top: 96px; padding-bottom: 48px; }
.lv-cinfo .lv-wrap { grid-template-columns: 1fr; padding-top: 40px; padding-bottom: 40px; gap: 16px; }
body:has(.lv-page) .wpforms-container { padding: 26px 20px !important; }
.lv-cform .lv-wrap { padding-top: 56px; padding-bottom: 56px; }
.lv-cform .wpforms-field-name .wpforms-field-row { flex-direction: column; gap: 14px; }
.lv-cmap, .lv-cmap iframe { min-height: 320px; }
.lv-cmap-wrap .lv-wrap { padding-top: 56px; padding-bottom: 56px; }
}