/*
Theme Name: Studio Lanzoni WPBakery
Theme URI: https://studiodentisticolanzoni.it/
Author: Dario Tana
Description: Tema dedicato allo Studio Odontoiatrico Lanzoni, ottimizzato per WPBakery Page Builder.
Version: 1.0.0
Text Domain: studio-lanzoni-wpbakery
Requires PHP: 8.0
*/

:root{--l-blue:#063b78;--l-blue2:#173f77;--l-red:#d21f26;--l-yellow:#f4b21b;--l-text:#173f77;--l-light:#f7f8fa;--l-border:#e1e6ed;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--l-text);font-family:"Lato",Arial,sans-serif;background:#fff;line-height:1.55}a{color:var(--l-blue);text-decoration:none}a:hover{color:var(--l-red)}img{max-width:100%;height:auto;display:block}.site-main{width:100%;overflow:hidden}.site-main .vc_row{box-sizing:border-box}h1,h2,h3,h4,h5,h6,.vc_custom_heading{font-family:"Oswald",Arial,sans-serif;color:var(--l-blue);font-weight:700}.site-shell{width:min(1200px,calc(100% - 40px));margin:0 auto}

/* Header */
.lanzoni-header{background:#fff;border-bottom:1px solid #eef1f5;position:relative;z-index:50}.lanzoni-header-inner{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:35px}.lanzoni-brand img{width:260px;max-height:84px;object-fit:contain}.lanzoni-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:34px}.lanzoni-nav a{font-family:"Oswald",Arial,sans-serif;font-size:15px;font-weight:600;text-transform:uppercase;color:var(--l-blue);padding:9px 0;border-bottom:2px solid transparent}.lanzoni-nav a:hover,.lanzoni-nav .current-menu-item>a,.lanzoni-nav .current_page_item>a,.lanzoni-nav .is-current>a{color:var(--l-red);border-bottom-color:var(--l-red)}.lanzoni-nav-toggle{display:none;border:0;background:var(--l-blue);color:#fff;border-radius:4px;padding:10px 13px;font-size:22px;line-height:1;cursor:pointer}

/* Hero */
.lanzoni-hero{margin-left:0!important;margin-right:0!important;background:#fff}.lanzoni-hero>.wpb_column>.vc_column-inner{padding-top:0!important;padding-bottom:0!important}.lanzoni-hero-copy>.vc_column-inner{min-height:560px;padding:55px 48px!important;display:flex;flex-direction:column;justify-content:center}.lanzoni-hero-line{margin:0!important;font-size:54px;line-height:.98!important;letter-spacing:.01em}.lanzoni-hero-line.is-red{font-size:66px;color:var(--l-red)!important}.lanzoni-hero-text{font-size:20px}.lanzoni-hero-text p{margin:10px 0 22px}.lanzoni-hero-rule{width:76px;height:2px;background:var(--l-blue);margin:18px 0 10px}.lanzoni-hero-media>.vc_column-inner{padding:0!important;height:100%}.lanzoni-hero-photo,.lanzoni-hero-photo .vc_single_image-wrapper{margin:0!important;width:100%;height:100%}.lanzoni-hero-photo img{width:100%;height:560px;object-fit:cover;object-position:center}

/* Buttons */
.lanzoni-btn{margin:4px 0 0!important}.lanzoni-btn .vc_btn3{font-family:"Oswald",Arial,sans-serif!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.03em!important;background:var(--l-blue)!important;border-color:var(--l-blue)!important;color:#fff!important;border-radius:4px!important;padding:14px 24px!important}.lanzoni-btn .vc_btn3:hover{background:var(--l-red)!important;border-color:var(--l-red)!important}

/* Sections */
.lanzoni-heading-row{padding:48px 0 25px}.lanzoni-section-title{font-size:34px;line-height:1.1;margin:0!important}.lanzoni-section-kicker{font-family:"Oswald",Arial,sans-serif;text-align:center;font-size:18px;font-style:italic}.lanzoni-section-kicker p{margin:3px 0 0}.lanzoni-services-grid,.lanzoni-staff-grid,.lanzoni-features-grid,.lanzoni-split-section,.lanzoni-service-detail-row,.lanzoni-contact-row{width:min(1200px,calc(100% - 40px));margin-left:auto!important;margin-right:auto!important}.lanzoni-services-grid{padding-bottom:42px}.lanzoni-service-card>.vc_column-inner{height:100%;padding:0 0 24px!important;border:1px solid var(--l-border);border-radius:4px;background:#fff;overflow:hidden}.lanzoni-service-image{margin:0!important}.lanzoni-service-image img{width:100%;height:205px;object-fit:cover}.lanzoni-icon{position:relative;z-index:3;margin:-26px 0 6px!important}.lanzoni-icon .vc_icon_element-inner{background:var(--l-blue)!important;border-color:var(--l-blue)!important}.lanzoni-icon.is-yellow .vc_icon_element-inner{background:var(--l-yellow)!important;border-color:var(--l-yellow)!important}.lanzoni-icon.is-red .vc_icon_element-inner{background:var(--l-red)!important;border-color:var(--l-red)!important}.lanzoni-card-title{font-size:20px;line-height:1.15;margin:5px 16px 8px!important}.lanzoni-card-text{padding:0 20px;text-align:center}.lanzoni-card-text p{margin:0}

/* Staff */
.lanzoni-staff-heading{padding-top:10px}.lanzoni-staff-grid{padding-bottom:65px}.lanzoni-staff-card>.vc_column-inner{height:100%;padding:0 10px!important}.lanzoni-staff-image{margin:0!important}.lanzoni-staff-image img{width:100%;height:330px;object-fit:contain;object-position:center;background:#fff}.lanzoni-staff-band{padding:13px 10px 14px;color:#fff;text-align:center;font-family:"Oswald",Arial,sans-serif}.lanzoni-staff-band strong{display:block;font-size:19px;line-height:1.15}.lanzoni-staff-band span{display:block;font-family:"Lato",Arial,sans-serif;font-style:italic;font-size:15px;margin-top:3px}.lanzoni-staff-band.is-blue{background:var(--l-blue)}.lanzoni-staff-band.is-yellow{background:var(--l-yellow)}.lanzoni-staff-band.is-red{background:var(--l-red)}

/* Internal page banner */
.lanzoni-page-banner{margin-left:0!important;margin-right:0!important;padding:72px 20px;background:linear-gradient(rgba(6,59,120,.82),rgba(6,59,120,.82)),url("https://studiodentisticolanzoni.it/wp-content/uploads/2026/09/studio-hero.jpg") center/cover no-repeat}.lanzoni-banner-title{color:#fff!important;font-size:48px;line-height:1.05;margin:0!important}.lanzoni-banner-subtitle{text-align:center;color:#fff;font-size:19px}.lanzoni-banner-subtitle p{margin:10px 0 0}.lanzoni-split-section{padding:70px 0}.lanzoni-copy-col>.vc_column-inner{padding:20px 45px 20px 0!important}.lanzoni-image-col>.vc_column-inner{padding:0 0 0 25px!important}.lanzoni-split-image img{width:100%;max-height:520px;object-fit:cover;border-radius:4px}.lanzoni-content-title{font-size:33px;line-height:1.15;margin:0 0 16px!important}.lanzoni-body-copy{font-size:17px}.lanzoni-body-copy p{margin:0 0 16px}

/* Features */
.lanzoni-features-grid{padding:0 0 65px}.lanzoni-feature-card>.vc_column-inner{height:100%;padding:28px 24px!important;background:var(--l-light);border:1px solid var(--l-border);border-radius:4px}.lanzoni-feature-title{font-size:24px;margin:0 0 8px!important}.lanzoni-feature-text{text-align:center;font-size:16px}.lanzoni-feature-text p{margin:0}

/* Service details */
.lanzoni-service-detail-row{padding:55px 0;border-bottom:1px solid #edf0f4}.lanzoni-detail-image-col>.vc_column-inner{padding:0 35px 0 0!important}.lanzoni-detail-copy-col>.vc_column-inner{padding:20px 0 20px 35px!important}.lanzoni-service-detail-row.is-reverse .lanzoni-detail-image-col>.vc_column-inner{padding:0 0 0 35px!important}.lanzoni-service-detail-row.is-reverse .lanzoni-detail-copy-col>.vc_column-inner{padding:20px 35px 20px 0!important}.lanzoni-service-detail-image img{width:100%;max-height:420px;object-fit:cover;border-radius:4px}

/* Contact */
.lanzoni-contact-row{padding:70px 0 35px}.lanzoni-contact-col>.vc_column-inner{padding:0 40px 0 0!important}.lanzoni-contact-form-col>.vc_column-inner{padding:30px!important;background:var(--l-light);border-radius:5px}.lanzoni-contact-subtitle{font-size:21px;margin:28px 0 12px!important}.lanzoni-contact-info{font-size:17px}.lanzoni-map-row{width:min(1200px,calc(100% - 40px));min-height:180px;margin:0 auto 60px!important}.lanzoni-map-slot>.vc_column-inner{min-height:180px;padding:0!important}.lanzoni-form-wrap .wpcf7-form{margin:0}.lanzoni-form-wrap .lanzoni-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lanzoni-form-wrap .field-full{grid-column:1/-1}.lanzoni-form-wrap label{display:block;font-size:14px;font-weight:600;color:var(--l-blue2)}.lanzoni-form-wrap input[type="text"],.lanzoni-form-wrap input[type="email"],.lanzoni-form-wrap input[type="tel"],.lanzoni-form-wrap textarea{width:100%;margin-top:6px;border:1px solid #d8dee8;border-radius:4px;background:#fff;padding:12px 13px;color:var(--l-blue2);font-family:"Lato",sans-serif}.lanzoni-form-wrap textarea{min-height:145px;resize:vertical}.lanzoni-form-wrap input[type="submit"]{border:0;border-radius:4px;padding:13px 24px;background:var(--l-blue);color:#fff;font:600 16px "Oswald",sans-serif;text-transform:uppercase;cursor:pointer}.lanzoni-form-wrap input[type="submit"]:hover{background:var(--l-red)}.lanzoni-form-wrap .wpcf7-not-valid-tip{font-size:13px;margin-top:4px;color:var(--l-red)}

/* Footer */
.lanzoni-footer{background:var(--l-light);border-top:1px solid #e4e8ef}.lanzoni-footer-main{display:grid;grid-template-columns:1.1fr 1fr 1.2fr;gap:45px;align-items:center;padding:38px 0 32px}.lanzoni-footer-logo{width:240px;margin-bottom:10px}.lanzoni-footer h3,.lanzoni-footer h4{margin:0 0 10px}.lanzoni-footer-cta{font-size:27px;line-height:1.04}.lanzoni-footer-cta span{color:var(--l-red)}.lanzoni-footer p{margin:7px 0}.lanzoni-footer-button{display:inline-block;margin-top:10px;padding:12px 22px;border-radius:4px;background:var(--l-blue);color:#fff;font-family:"Oswald",sans-serif;font-weight:600;text-transform:uppercase}.lanzoni-footer-button:hover{background:var(--l-red);color:#fff}.lanzoni-footer-map{min-height:190px}.lanzoni-footer-map iframe{width:100%;height:190px;border:0;border-radius:6px;display:block}.lanzoni-footer-bottom{background:#fff;text-align:center;font-size:13px;padding:14px 20px}

/* WPBakery spacing normalization */
.wpb_content_element{margin-bottom:16px}.lanzoni-service-image,.lanzoni-staff-image,.lanzoni-hero-photo{margin-bottom:0}.lanzoni-heading-row .wpb_content_element{margin-bottom:5px}

@media(max-width:991px){.lanzoni-header-inner{min-height:90px}.lanzoni-nav ul{gap:18px}.lanzoni-brand img{width:220px}.lanzoni-hero-copy>.vc_column-inner{min-height:500px;padding:40px 30px!important}.lanzoni-hero-photo img{height:500px}.lanzoni-hero-line{font-size:44px}.lanzoni-hero-line.is-red{font-size:53px}.lanzoni-service-image img{height:180px}.lanzoni-staff-image img{height:285px}.lanzoni-footer-main{grid-template-columns:1fr 1fr}.lanzoni-footer-map{grid-column:1/-1}}
@media(max-width:767px){.site-shell{width:min(100% - 30px,1200px)}.lanzoni-nav-toggle{display:block}.lanzoni-header-inner{flex-wrap:wrap;padding:12px 0}.lanzoni-nav{display:none;width:100%}.lanzoni-nav.is-open{display:block}.lanzoni-nav ul{display:block;padding:8px 0 14px}.lanzoni-nav li{border-top:1px solid #eef1f5}.lanzoni-nav a{display:block;padding:12px 4px;border-bottom:0}.lanzoni-brand img{width:210px}.lanzoni-hero-copy>.vc_column-inner{min-height:auto;padding:38px 24px!important}.lanzoni-hero-photo img{height:360px}.lanzoni-hero-line{font-size:38px}.lanzoni-hero-line.is-red{font-size:48px}.lanzoni-heading-row{padding:38px 0 22px}.lanzoni-section-title{font-size:30px}.lanzoni-services-grid,.lanzoni-staff-grid,.lanzoni-features-grid,.lanzoni-split-section,.lanzoni-service-detail-row,.lanzoni-contact-row,.lanzoni-map-row{width:min(100% - 30px,1200px)}.lanzoni-service-card>.vc_column-inner{margin-bottom:20px}.lanzoni-staff-card>.vc_column-inner{padding:0!important;margin-bottom:22px}.lanzoni-staff-image img{height:auto;max-height:420px}.lanzoni-page-banner{padding:55px 18px}.lanzoni-banner-title{font-size:40px}.lanzoni-split-section{padding:45px 0}.lanzoni-copy-col>.vc_column-inner,.lanzoni-image-col>.vc_column-inner,.lanzoni-detail-image-col>.vc_column-inner,.lanzoni-detail-copy-col>.vc_column-inner,.lanzoni-service-detail-row.is-reverse .lanzoni-detail-image-col>.vc_column-inner,.lanzoni-service-detail-row.is-reverse .lanzoni-detail-copy-col>.vc_column-inner,.lanzoni-contact-col>.vc_column-inner{padding:0!important}.lanzoni-image-col>.vc_column-inner,.lanzoni-detail-image-col>.vc_column-inner{margin-top:25px}.lanzoni-service-detail-row{padding:38px 0}.lanzoni-contact-row{padding:45px 0 20px}.lanzoni-contact-form-col>.vc_column-inner{padding:24px!important;margin-top:25px}.lanzoni-form-wrap .lanzoni-form-grid{grid-template-columns:1fr}.lanzoni-footer-main{grid-template-columns:1fr;gap:28px}.lanzoni-footer-map{grid-column:auto}.lanzoni-footer-logo{width:220px}}
