.ct-section {
width:100%;
background-size:cover;
background-repeat:repeat;
}
.ct-section>.ct-section-inner-wrap {
display:flex;
flex-direction:column;
align-items:flex-start;
}
.ct-div-block {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.ct-new-columns {
display:flex;
width:100%;
flex-direction:row;
align-items:stretch;
justify-content:center;
flex-wrap:wrap;
}
.ct-link-text {
display:inline-block;
}
.ct-link {
display:flex;
flex-wrap:wrap;
text-align:center;
text-decoration:none;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-link-button {
display:inline-block;
text-align:center;
text-decoration:none;
}
.ct-link-button {
background-color: #1e73be;
border: 1px solid #1e73be;
color: #ffffff;
padding: 10px 16px;
}
.ct-image {
max-width:100%;
}
.ct-fancy-icon>svg {
width:55px;height:55px;}
.ct-inner-content {
width:100%;
}
.ct-slide {
display:flex;
flex-wrap:wrap;
text-align:center;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-nestable-shortcode {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-comments {
width:100%;
text-align:left;
}
.oxy-comment-form {
width:100%;
}
.oxy-login-form {
width:100%;
}
.oxy-search-form {
width:100%;
}
.oxy-tabs-contents {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab-content {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-testimonial {
width:100%;
}
.oxy-icon-box {
width:100%;
}
.oxy-pricing-box {
width:100%;
}
.oxy-posts-grid {
width:100%;
}
.oxy-gallery {
width:100%;
}
.ct-slider {
width:100%;
}
.oxy-tabs {
display:flex;
flex-wrap:nowrap;
flex-direction:row;
align-items:stretch;
}
.ct-modal {
flex-direction:column;
align-items:flex-start;
}
.ct-span {
display:inline-block;
text-decoration:inherit;
}
.ct-widget {
width:100%;
}
.oxy-dynamic-list {
width:100%;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
			.ct-div-block,
			.oxy-post-content,
			.ct-text-block,
			.ct-headline,
			.oxy-rich-text,
			.ct-link-text { max-width: 100%; }
			img { flex-shrink: 0; }
			body * { min-height: 1px; }
		}            .oxy-testimonial {
                flex-direction: row;
                align-items: center;
            }
                        .oxy-testimonial .oxy-testimonial-photo-wrap {
                order: 1;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo {
                width: 125px;                height: 125px;                margin-right: 20px;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo-wrap, 
            .oxy-testimonial .oxy-testimonial-author-wrap, 
            .oxy-testimonial .oxy-testimonial-content-wrap {
                align-items: flex-start;                text-align: left;            }
            
                                                            .oxy-testimonial .oxy-testimonial-text {
                margin-bottom:8px;font-size: 21px;
line-height: 1.4;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
                                    .oxy-testimonial .oxy-testimonial-author {
                font-size: 18px;
-webkit-font-smoothing: subpixel-antialiased;
            }
                            

                                                .oxy-testimonial .oxy-testimonial-author-info {
                font-size: 12px;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
             
            
                        .oxy-icon-box {
                text-align: left;                flex-direction: column;            }
            
                        .oxy-icon-box .oxy-icon-box-icon {
                margin-bottom: 12px;
                align-self: flex-start;            }
            
                                                                        .oxy-icon-box .oxy-icon-box-heading {
                font-size: 21px;
margin-bottom: 12px;            }
            
                                                                                    .oxy-icon-box .oxy-icon-box-text {
                font-size: 16px;
margin-bottom: 12px;align-self: flex-start;            }
            
                        .oxy-icon-box .oxy-icon-box-link {
                margin-top: 20px;                            }
            
            
            /* GLOBALS */

                                                            .oxy-pricing-box .oxy-pricing-box-section {
                padding-top: 20px;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
text-align: center;            }
                        
                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                justify-content: center;            }
            
            /* IMAGE */
                                                                                    .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-graphic {
                justify-content: center;            }
            
            /* TITLE */
                                                            
                                    .oxy-pricing-box .oxy-pricing-box-title-title {
                font-size: 48px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-title-subtitle {
                font-size: 24px;
            }
            

            /* PRICE */
                                                .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                                                flex-direction: row;                                            }
            
                                    .oxy-pricing-box .oxy-pricing-box-currency {
                font-size: 28px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-main {
                font-size: 80px;
line-height: 0.7;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-decimal {
                font-size: 13px;
            }
                        
                                    .oxy-pricing-box .oxy-pricing-box-term {
                font-size: 16px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-sale-price {
                font-size: 12px;
color: rgba(0,0,0,0.5);
                margin-bottom: 20px;            }
            
            /* CONTENT */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-content {
                font-size: 16px;
color: rgba(0,0,0,0.5);
            }
            
            /* CTA */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-cta {
                justify-content: center;            }
            
        
                                .oxy-progress-bar .oxy-progress-bar-background {
            background-color: #000000;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);            animation: none 0s paused;        }
                
                .oxy-progress-bar .oxy-progress-bar-progress-wrap {
            width: 85%;        }
        
                                                        .oxy-progress-bar .oxy-progress-bar-progress {
            background-color: #66aaff;padding: 40px;animation: none 0s paused, none 0s paused;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);        
        }
                
                        .oxy-progress-bar .oxy-progress-bar-overlay-text {
            font-size: 30px;
font-weight: 900;
-webkit-font-smoothing: subpixel-antialiased;
        }
        
                        .oxy-progress-bar .oxy-progress-bar-overlay-percent {
            font-size: 12px;
        }
        
        .ct-slider .unslider-nav ol li {border-color: #ffffff; }.ct-slider .unslider-nav ol li.unslider-active {background-color: #ffffff; }.ct-slider .ct-slide {
				padding: 0px;			}
		
                        .oxy-superbox .oxy-superbox-secondary, 
            .oxy-superbox .oxy-superbox-primary {
                transition-duration: 0.5s;            }
            
            
            
            
            
        
        
        
        
            .oxy-shape-divider {
                width: 0px;
                height: 0px;
                
            }
            
            .oxy_shape_divider svg {
                width: 100%;
            }
            
			.oxy-oxyninja-slider .oxy-dynamic-list {
				display: flex !important;
				flex-direction: row !important;
				align-items: unset;
				justify-content: unset;
				flex-wrap: unset;
			}
      .oxy-oxyninja-slider {
        width: 100%;
        position: relative;
      }
      .oxy-oxyninja-slider img {
        object-fit: cover;
      }
      #glightbox-body {
        z-index: 9999999999 !important;
      }
      .oxy-oxyninja-slider:focus,
      .oxy-oxyninja-slider *:focus {
        outline: 0;
      }
      .splide__list {
        margin: 0 !important;
        padding: 0 !important;
        height: 100%;
        display: flex;
        width: -webkit-max-content;
        width: max-content;
        will-change: transform;
      }
      .splide__track > .splide__list {
        width: 100%;
      }
      .splide__track > .splide__list > .splide__slide {
        transform: translate3d(0px, 0, 0);
        -webkit-transform: translate3d(0px, 0, 0);
        -moz-transform: translate3d(0px, 0, 0);
        -ms-transform: translate3d(0px, 0, 0);
        -o-transform: translate3d(0px, 0, 0);
        will-change: inherit;
      }
      .splide__list > .splide__slide:first-child {
        z-index: 2;
      }
      .splide--fade > .splide__track>.splide__list {
        display: flex !important;
      }
      .on-product-badges {
        position: absolute;
        z-index: 9;
      }
      .on-product-badges span:not(:first-of-type) {
        margin-left: 5px;
      }
      .on-product-badges span.on-new,
      .on-product-badges span.on-custom-badge,
      .on-product-badges span.on-sale {
        display: inline-block;
        background-color: white;
        color: black;
        font-size: 12px;
        padding: 6px 12px;
        line-height: 1.2;
        font-weight: 700;
        text-align: center;
        text-transform: uppercase;
        letter-spacing: 1px;
        opacity: 0.8;
      }
      .oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .sub-menu{
box-shadow:px px px px ;}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a div{
margin-left:0px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
width:30px;
height:30px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon{
padding-top:15px;
padding-right:15px;
padding-bottom:15px;
padding-left:15px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon, .oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon{
top:20px;
left:20px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
width:24px;
height:24px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon, .oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container{
background-color:#ffffff;
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-open-container{
background-image:url();
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item-has-children > a svg, .oxy-pro-menu .oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item-has-children > a svg{
font-size:24px;
}

.oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-open-container .menu-item-has-children ul, .oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-off-canvas-container .menu-item-has-children ul{
background-color:rgba(0,0,0,0.2);
border-top-style:solid;
}

.oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .oxy-pro-menu-list{
                    flex-direction: row;
               }
.oxy-pro-menu .oxy-pro-menu-container .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .menu-item, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .menu-item{
                    align-items: flex-start;
                }

            .oxy-pro-menu .oxy-pro-menu-off-canvas-container{
                    top: 0;
                    bottom: 0;
                    right: auto;
                    left: 0;
               }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item a, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }

            .oxy-site-navigation {
--oxynav-brand-color:#4831B0;
--oxynav-neutral-color:#FFFFFF;
--oxynav-activehover-color:#EFEDF4;
--oxynav-background-color:#4831B0;
--oxynav-border-radius:0px;
--oxynav-other-spacing:8px;
--oxynav-transition-duration:0.3s;
--oxynav-transition-timing-function:cubic-bezier(.84,.05,.31,.93);
}

.oxy-site-navigation .oxy-site-navigation__mobile-close-wrapper{
text-align:left;
}

.oxy-site-navigation > ul{ left: 0; }
.oxy-site-navigation {
                        --oxynav-animation-name: none; 
                    }

                .oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1){ 
                    background-color: var(--oxynav-brand-color);
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                    border: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2){ 
                    background: transparent;
                    border: 1px solid currentColor;
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2):not(:hover) > img{
                    filter: invert(0) !important;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover{
                    background-color: var(--oxynav-activehover-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a{
                    color: var(--oxynav-neutral-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a::after{
                    color: var(--oxynav-neutral-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > button, .oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }

                .ct-section-inner-wrap, .oxy-header-container{
  max-width: 1380px;
}
body {font-family: 'Open Sans';}body {line-height: 1.6;font-size: 16px;font-weight: 400;color: #404040;}.oxy-nav-menu-hamburger-line {background-color: #404040;}h1, h2, h3, h4, h5, h6 {font-family: 'Nunito';font-size: 36px;font-weight: 700;line-height: 1.2;}h2, h3, h4, h5, h6{font-size: 30px;}h3, h4, h5, h6{font-size: 24px;}h4, h5, h6{font-size: 20px;}h5, h6{font-size: 18px;}h6{font-size: 16px;}a {color: #a71100;text-decoration: none;}a:hover {text-decoration: none;}.ct-link-text {text-decoration: ;}.ct-link {text-decoration: ;}.ct-link-button {border-radius: 3px;}.ct-section-inner-wrap {
padding-top: 75px;
padding-right: 20px;
padding-bottom: 75px;
padding-left: 20px;
}.ct-new-columns > .ct-div-block {
padding-top: 20px;
padding-right: 20px;
padding-bottom: 20px;
padding-left: 20px;
}.oxy-header-container {
padding-right: 20px;
padding-left: 20px;
}@media (max-width: 992px) {
				.ct-columns-inner-wrap {
					display: block !important;
				}
				.ct-columns-inner-wrap:after {
					display: table;
					clear: both;
					content: "";
				}
				.ct-column {
					width: 100% !important;
					margin: 0 !important;
				}
				.ct-columns-inner-wrap {
					margin: 0 !important;
				}
			}
.cell {
}
.testimonial-card {
 padding-top:20px;
 padding-right:20px;
 padding-bottom:20px;
 padding-left:20px;
 border-radius:10px;
 gap:20px;
 position:relative;
 overflow:hidden;
 background-color:rgba(230,57,70,0.3);
}
.testimonial-card:not(.ct-section):not(.oxy-easy-posts),
.testimonial-card.oxy-easy-posts .oxy-posts,
.testimonial-card.ct-section .ct-section-inner-wrap{
gap:20px;
}
.justify-between {
 width:100%;
}
.justify-between:not(.ct-section):not(.oxy-easy-posts),
.justify-between.oxy-easy-posts .oxy-posts,
.justify-between.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
justify-content:space-between;
}
@media (max-width: 479px) {
.justify-between {
}
.justify-between:not(.ct-section):not(.oxy-easy-posts),
.justify-between.oxy-easy-posts .oxy-posts,
.justify-between.ct-section .ct-section-inner-wrap{
flex-wrap:wrap;
}
}

.d-horizontal-middle {
}
.d-horizontal-middle:not(.ct-section):not(.oxy-easy-posts),
.d-horizontal-middle.oxy-easy-posts .oxy-posts,
.d-horizontal-middle.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
@media (max-width: 767px) {
.d-horizontal-middle {
}
.d-horizontal-middle:not(.ct-section):not(.oxy-easy-posts),
.d-horizontal-middle.oxy-easy-posts .oxy-posts,
.d-horizontal-middle.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
justify-content:center;
}
}

@media (max-width: 479px) {
.d-horizontal-middle {
 text-align:center;
}
.d-horizontal-middle:not(.ct-section):not(.oxy-easy-posts),
.d-horizontal-middle.oxy-easy-posts .oxy-posts,
.d-horizontal-middle.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
}
}

.gap-20 {
 gap:20px;
}
.gap-20:not(.ct-section):not(.oxy-easy-posts),
.gap-20.oxy-easy-posts .oxy-posts,
.gap-20.ct-section .ct-section-inner-wrap{
gap:20px;
}
.testimonial-profile {
 width:80px;
 border-radius:50%;
}
.pad-t-10 {
 padding-top:10px;
}
.testimonial-star-icon {
color: #ffc700;}.testimonial-star-icon 
>svg {width: 30px;height: 30px;}.testimonial-star-icon {
}
.oxel_horizontal_divider {
 margin-top:10px;
 margin-bottom:10px;
 width:90%;
 gap:20px;
}
.oxel_horizontal_divider:not(.ct-section):not(.oxy-easy-posts),
.oxel_horizontal_divider.oxy-easy-posts .oxy-posts,
.oxel_horizontal_divider.ct-section .ct-section-inner-wrap{
flex-direction:unset;
gap:20px;
}
.oxel_horizontal_divider__line {
 height:4px;
 background-color:#a71100;
}
.oxel_horizontal_divider__icon {
color: #98a1a8;}.oxel_horizontal_divider__icon 
>svg {width: 16px;height: 16px;}.oxel_horizontal_divider__icon {
flex-shrink: 0;
}
.oxel_horizontal_divider__icon:not(.ct-section):not(.oxy-easy-posts),
.oxel_horizontal_divider__icon.oxy-easy-posts .oxy-posts,
.oxel_horizontal_divider__icon.ct-section .ct-section-inner-wrap{
display:flex;
}
.button-primary:hover{
background: linear-gradient(135deg, #d62839 0%, #b81f2f 100%); transform: translateY(-2px); box-shadow: 0 10px 24px rgba(230, 57, 70, 0.3);
}
.button-primary {
background-color :#1e73be;
border: 1px solid #1e73be;
color: #ffffff;
}.button-primary {
display: inline-flex; align-items: center; justify-content: center; padding: 14px 34px; border: none; border-radius: 999px; background: linear-gradient(135deg, #e63946 0%, #d62839 100%); color: #fff; font-weight: 700; font-size: 16px; letter-spacing: 0.3px; text-transform: uppercase; cursor: pointer; box-shadow: 0 6px 18px rgba(230, 57, 70, 0.25); transition: all 0.25s ease;
}
.gap-10 {
 gap:10px;
}
.gap-10:not(.ct-section):not(.oxy-easy-posts),
.gap-10.oxy-easy-posts .oxy-posts,
.gap-10.ct-section .ct-section-inner-wrap{
gap:10px;
}
.align-horizontal-middle {
}
.align-horizontal-middle:not(.ct-section):not(.oxy-easy-posts),
.align-horizontal-middle.oxy-easy-posts .oxy-posts,
.align-horizontal-middle.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
.features-icon-2 {
background-color: var(--color-primary-light);
border: 1px solid var(--color-primary-light);
padding: 10px;color: var(--color-primary);}.features-icon-2 
>svg {width: 30px;height: 30px;}.features-icon-2 {
}
.margin-t-40 {
 margin-top:40px;
}
.winery-subheading {
 font-family:Open Sans;
 color:#adadab;
 font-size:12px;
 font-weight:700;
 letter-spacing:1px;
 line-height:1.5;
 -webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale; text-transform:uppercase;
}
.winery-heading-two {
 font-family:Nunito;
 color:#75455d;
 font-size:48px;
 font-weight:900;
 line-height:1.1;
}
@media (max-width: 767px) {
.winery-heading-two {
 font-size:36px;
}
}

@media (max-width: 479px) {
.winery-heading-two {
 font-size:32px;
}
}

.timeline-card {
 background-color:#ffffff;
 text-align:center;
 border-bottom-style:solid;
 border-bottom-width:12px;
 border-bottom-color:#d5b72d;
 color:#555555;
 border-radius:20px;
 box-shadow:0px 20px 40px rgba(0,0,0,0.2);
}
.timeline-card:not(.ct-section):not(.oxy-easy-posts),
.timeline-card.oxy-easy-posts .oxy-posts,
.timeline-card.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
@media (max-width: 767px) {
.timeline-card {
 width:100%;
}
}

.event-card-img {
 border-top-left-radius:20px;
 border-top-right-radius:20px;
}
.winery-timeline-1-text-wrapper {
 padding-left:36px;
 padding-top:24px;
 padding-right:36px;
 padding-bottom:36px;
}
.winery-timeline-1-text-wrapper:not(.ct-section):not(.oxy-easy-posts),
.winery-timeline-1-text-wrapper.oxy-easy-posts .oxy-posts,
.winery-timeline-1-text-wrapper.ct-section .ct-section-inner-wrap{
display:flex;
}
@media (max-width: 767px) {
.winery-timeline-1-text-wrapper {
}
}

.winery-heading-three {
 font-family:Nunito;
 color:#75455d;
 font-size:30px;
 font-weight:900;
 line-height:1.1;
}
@media (max-width: 479px) {
.winery-heading-three {
 font-size:24px;
}
}

.winery-body-text {
 font-family:Open Sans;
 font-size:14px;
 color:#555555;
 font-weight:400;
 -webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale; line-height:1.5;
}
.winery-timeline-center-column {
background-image: linear-gradient(90deg, transparent 48%, var(--color-primary) 48%, var(--color-primary) 52%, transparent 52%);}
@media (max-width: 767px) {
.winery-timeline-center-column {
}
}

.winery-timeline-1-label {
 font-family:Open Sans;
 color:#ffffff;
 font-size:12px;
 font-weight:400;
 background-color:var(--color-primary);
 line-height:1.1;
 letter-spacing:1px;
 text-align:center;
 padding-left:24px;
 padding-right:24px;
 padding-bottom:5px;
 border-radius:100px;
 border-top-width:3px;
 border-right-width:3px;
 border-bottom-width:3px;
 border-left-width:3px;
 border-top-style:solid;
 border-right-style:solid;
 border-bottom-style:solid;
 border-left-style:solid;
 border-top-color:#ffffff;
 border-right-color:#ffffff;
 border-bottom-color:#ffffff;
 border-left-color:#ffffff;
 z-index:10;
 left:-75%;
 margin-top:20px;
 padding-top:4px;
 margin-left:auto;
 margin-right:auto;
 box-shadow:0px 0px 10px 2px rgba(0,0,0,0.15);
}
@media (max-width: 767px) {
.winery-timeline-1-label {
 margin-bottom:20px;
}
}

.winery-story-1-content-column {
 text-align:left;
}
.winery-story-1-content-column:not(.ct-section):not(.oxy-easy-posts),
.winery-story-1-content-column.oxy-easy-posts .oxy-posts,
.winery-story-1-content-column.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:flex-start;
}
@media (max-width: 991px) {
.winery-story-1-content-column {
 text-align:center;
}
.winery-story-1-content-column:not(.ct-section):not(.oxy-easy-posts),
.winery-story-1-content-column.oxy-easy-posts .oxy-posts,
.winery-story-1-content-column.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
}

.winery-outline-button {
 font-family:Open Sans;
 font-size:14px;
 color:#e03236;
 font-weight:400;
 letter-spacing:1px;
 line-height:1.2;
 border-top-width:2px;
 border-right-width:2px;
 border-bottom-width:2px;
 border-left-width:2px;
 border-top-style:solid;
 border-right-style:solid;
 border-bottom-style:solid;
 border-left-style:solid;
 border-top-color:#eae9e9;
 border-right-color:#eae9e9;
 border-bottom-color:#eae9e9;
 border-left-color:#eae9e9;
 border-radius:100px;
 padding-top:16px;
 padding-left:32px;
 padding-right:32px;
 padding-bottom:16px;
 background-color:#ffffff;
 text-align:center;
 text-transform:uppercase;
}
.winery-heading-one {
 font-family:Nunito;
 font-size:72px;
 font-weight:900;
 color:#75455d;
 line-height:1.1;
}
@media (max-width: 767px) {
.winery-heading-one {
 font-size:64px;
}
}

@media (max-width: 479px) {
.winery-heading-one {
 font-size:48px;
}
}

.radius-20 {
 border-radius:20px;
}
.shadow1 {
 box-shadow:0px 0px 10px 2px rgba(0,0,0,0.15);
}
.radius-right-20 {
 border-top-right-radius:20px;
 border-bottom-right-radius:20px;
}
@media (max-width: 767px) {
.radius-right-20 {
 border-top-right-radius:0px;
 border-bottom-left-radius:20px;
}
}

.grid-auto-200-g-40 {
}
.grid-auto-200-g-40:not(.ct-section):not(.oxy-easy-posts),
.grid-auto-200-g-40.oxy-easy-posts .oxy-posts,
.grid-auto-200-g-40.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));grid-column-gap: 40px;grid-row-gap: 20px;}
@media (max-width: 1380px) {
.grid-auto-200-g-40 {
}
.grid-auto-200-g-40:not(.ct-section):not(.oxy-easy-posts),
.grid-auto-200-g-40.oxy-easy-posts .oxy-posts,
.grid-auto-200-g-40.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(1, minmax(200px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
}

@media (max-width: 767px) {
.grid-auto-200-g-40 {
}
.grid-auto-200-g-40:not(.ct-section):not(.oxy-easy-posts),
.grid-auto-200-g-40.oxy-easy-posts .oxy-posts,
.grid-auto-200-g-40.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(1, minmax(200px, 1fr));grid-column-gap: 20px;grid-row-gap: 40px;}
}

.center-mobile {
}
@media (max-width: 767px) {
.center-mobile {
}
.center-mobile:not(.ct-section):not(.oxy-easy-posts),
.center-mobile.oxy-easy-posts .oxy-posts,
.center-mobile.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
}

.light-color {
 color:var(--color-light);
}
.margin-b-20 {
 margin-bottom:20px;
}
.w-100 {
 width:100%;
}
@media (max-width: 1380px) {
.w-100 {
 width:100%;
}
}

@media (max-width: 767px) {
.w-100 {
 width:100%;
}
}

.contact-icon {
color: var(--color-secondary);}.contact-icon 
>svg {width: 40px;height: 40px;}.contact-icon {
}
.footer-link {
 color:#ffffff;
 text-align:left;
}
.align-vertical-center {
}
.align-vertical-center:not(.ct-section):not(.oxy-easy-posts),
.align-vertical-center.oxy-easy-posts .oxy-posts,
.align-vertical-center.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
.gap-40 {
 gap:40px;
}
.gap-40:not(.ct-section):not(.oxy-easy-posts),
.gap-40.oxy-easy-posts .oxy-posts,
.gap-40.ct-section .ct-section-inner-wrap{
gap:40px;
}
.w-70-px {
 width:70px;
}
.color-white {
 color:#ffffff;
}
.align-right {
}
.align-right:not(.ct-section):not(.oxy-easy-posts),
.align-right.oxy-easy-posts .oxy-posts,
.align-right.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:flex-end;
}
@media (max-width: 767px) {
.align-right {
 text-align:right;
}
.align-right:not(.ct-section):not(.oxy-easy-posts),
.align-right.oxy-easy-posts .oxy-posts,
.align-right.ct-section .ct-section-inner-wrap{
align-items:center;
}
}

.hours-container {
 width:100%;
}
.hours-container:not(.ct-section):not(.oxy-easy-posts),
.hours-container.oxy-easy-posts .oxy-posts,
.hours-container.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
justify-content:space-between;
}
.secondary-light-color {
 color:#ffffff;
}
.full-section {
 min-height:100vh;
}
.align-center {
}
.align-center .ct-section-inner-wrap {
padding-top: 74px;
}
.align-center:not(.ct-section):not(.oxy-easy-posts),
.align-center.oxy-easy-posts .oxy-posts,
.align-center.ct-section .ct-section-inner-wrap{
align-items:center;
}
.grid-col4 {
}
.grid-col4:not(.ct-section):not(.oxy-easy-posts),
.grid-col4.oxy-easy-posts .oxy-posts,
.grid-col4.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(4, minmax(200px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
@media (max-width: 991px) {
.grid-col4 {
}
.grid-col4:not(.ct-section):not(.oxy-easy-posts),
.grid-col4.oxy-easy-posts .oxy-posts,
.grid-col4.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(2, minmax(200px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
}

@media (max-width: 479px) {
.grid-col4 {
}
.grid-col4:not(.ct-section):not(.oxy-easy-posts),
.grid-col4.oxy-easy-posts .oxy-posts,
.grid-col4.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(1, minmax(200px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
}

.dark-bg {
 background-color:var(--color-primary);
}
.feature-icon {
color: var(--color-primary-light);}.feature-icon 
>svg {width: 55px;height: 55px;}.feature-icon {
}
.feature-card {
}
.pad-lr-40 {
 padding-left:40px;
 padding-right:40px;
}
@media (max-width: 991px) {
.pad-lr-40 {
}
}

.tag-label {
 font-family:Nunito;
 padding-top:5px;
 padding-right:15px;
 padding-bottom:5px;
 padding-left:15px;
 background-color:var(--color-primary-light);
 border-radius:50px;
 color:var(--color-primary);
 text-transform:uppercase;
 font-weight:900;
}
.feature-card-heading {
 color:var(--color-secondary);
}
.w-50 {
 width:50%;
}
@media (max-width: 767px) {
.w-50 {
 width:100%;
}
}

.section-img {
 border-radius:20px;
 box-shadow:0px 0px 10px 2px rgba(0,0,0,0.2);
}
.grid-col3 {
}
.grid-col3:not(.ct-section):not(.oxy-easy-posts),
.grid-col3.oxy-easy-posts .oxy-posts,
.grid-col3.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: center;grid-template-columns: repeat(3, minmax(0px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
@media (max-width: 1380px) {
.grid-col3 {
}
.grid-col3:not(.ct-section):not(.oxy-easy-posts),
.grid-col3.oxy-easy-posts .oxy-posts,
.grid-col3.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(3, minmax(0px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
}

@media (max-width: 991px) {
.grid-col3 {
}
.grid-col3:not(.ct-section):not(.oxy-easy-posts),
.grid-col3.oxy-easy-posts .oxy-posts,
.grid-col3.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(4, minmax(0px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
.grid-col3:not(.ct-section):not(.oxy-easy-posts) > :nth-child(1),
.grid-col3.ct-section .ct-section-inner-wrap > :nth-child(1),
.grid-col3.oxy-easy-posts .oxy-posts > :nth-child(1){
grid-column: span 2;}
}

@media (max-width: 767px) {
.grid-col3 {
}
.grid-col3:not(.ct-section):not(.oxy-easy-posts),
.grid-col3.oxy-easy-posts .oxy-posts,
.grid-col3.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
}
}

.w-100px {
 width:100px;
}
.masonry-grid {
grid-template-rows: masonry;
}
.masonry-grid:not(.ct-section):not(.oxy-easy-posts),
.masonry-grid.oxy-easy-posts .oxy-posts,
.masonry-grid.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: start;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
.align-center-mobile {
}
@media (max-width: 767px) {
.align-center-mobile {
}
.align-center-mobile:not(.ct-section):not(.oxy-easy-posts),
.align-center-mobile.oxy-easy-posts .oxy-posts,
.align-center-mobile.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
}

.d-horizontal-middle-nr {
}
.d-horizontal-middle-nr:not(.ct-section):not(.oxy-easy-posts),
.d-horizontal-middle-nr.oxy-easy-posts .oxy-posts,
.d-horizontal-middle-nr.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
@media (max-width: 767px) {
.d-horizontal-middle-nr {
}
.d-horizontal-middle-nr:not(.ct-section):not(.oxy-easy-posts),
.d-horizontal-middle-nr.oxy-easy-posts .oxy-posts,
.d-horizontal-middle-nr.ct-section .ct-section-inner-wrap{
display:flex;
}
}

.text-align-left {
 text-align:left;
}
.first-section {
}
.first-section .ct-section-inner-wrap {
padding-top: 130px;
}
.endless-rotate {
}
.m-40 {
 margin-top:40px;
 margin-right:40px;
 margin-bottom:40px;
 margin-left:40px;
}
@media (max-width: 479px) {
.m-40 {
 width:70%;
}
}

.o-hidden {
 overflow:hidden;
}
.w-20vw {
 width:20vw;
}
@media (max-width: 1380px) {
.w-20vw {
 width:20vw;
}
}

@media (max-width: 767px) {
.w-20vw {
 width:100%;
}
}

.s-between {
}
.s-between:not(.ct-section):not(.oxy-easy-posts),
.s-between.oxy-easy-posts .oxy-posts,
.s-between.ct-section .ct-section-inner-wrap{
justify-content:space-between;
}
@media (max-width: 1380px) {
.s-between {
}
.s-between:not(.ct-section):not(.oxy-easy-posts),
.s-between.oxy-easy-posts .oxy-posts,
.s-between.ct-section .ct-section-inner-wrap{
justify-content:space-between;
}
}

.margin-lr-40 {
}
@media (max-width: 1380px) {
.margin-lr-40 {
 margin-left:40px;
 margin-right:40px;
}
}

.max-w-300 {
 max-width:300px;
}
.d-none-992 {
}
@media (max-width: 991px) {
.d-none-992 {
}
.d-none-992:not(.ct-section):not(.oxy-easy-posts),
.d-none-992.oxy-easy-posts .oxy-posts,
.d-none-992.ct-section .ct-section-inner-wrap{
display:none;
}
}

.menu-item-img {
 width:100px;
}
@media (max-width: 767px) {
.menu-item-img {
 width:200px;
}
}

.hours-day {
}
.center-1380 {
}
@media (max-width: 1380px) {
.center-1380 {
}
.center-1380:not(.ct-section):not(.oxy-easy-posts),
.center-1380.oxy-easy-posts .oxy-posts,
.center-1380.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
}

.hours2-container {
 width:100%;
 gap:40px;
 text-align:right;
}
.hours2-container:not(.ct-section):not(.oxy-easy-posts),
.hours2-container.oxy-easy-posts .oxy-posts,
.hours2-container.ct-section .ct-section-inner-wrap{
display:grid;
justify-content:space-between;
gap:40px;
display: grid !important;align-items: stretch;grid-template-columns: repeat(3, minmax(0px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
@media (max-width: 767px) {
.hours2-container {
 width:100%;
 gap:40px;
}
.hours2-container:not(.ct-section):not(.oxy-easy-posts),
.hours2-container.oxy-easy-posts .oxy-posts,
.hours2-container.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
justify-content:space-between;
gap:40px;
}
}

@media (max-width: 479px) {
.hours2-container {
 gap:40px;
 text-align:justify;
}
.hours2-container:not(.ct-section):not(.oxy-easy-posts),
.hours2-container.oxy-easy-posts .oxy-posts,
.hours2-container.ct-section .ct-section-inner-wrap{
display:grid;
gap:40px;
display: grid !important;align-items: stretch;grid-template-columns: repeat(3, minmax(0px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
}

.hours-interval-container {
 gap:10px;
}
.hours-interval-container:not(.ct-section):not(.oxy-easy-posts),
.hours-interval-container.oxy-easy-posts .oxy-posts,
.hours-interval-container.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
gap:10px;
}
@media (max-width: 767px) {
.hours-interval-container {
 gap:20px;
}
.hours-interval-container:not(.ct-section):not(.oxy-easy-posts),
.hours-interval-container.oxy-easy-posts .oxy-posts,
.hours-interval-container.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
gap:20px;
}
}

@media (max-width: 479px) {
.hours-interval-container {
 gap:20px;
}
.hours-interval-container:not(.ct-section):not(.oxy-easy-posts),
.hours-interval-container.oxy-easy-posts .oxy-posts,
.hours-interval-container.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
gap:20px;
}
}

.light-blue {
 color:#3e6a83;
}
.red {
 color:#a71100;
}
.pad-20 {
 padding-top:20px;
 padding-right:20px;
 padding-bottom:20px;
 padding-left:20px;
}
.w-40 {
 width:40%;
}
.h-5vh {
 height:5vh;
}
.align-horizontal-space-between {
}
.align-horizontal-space-between:not(.ct-section):not(.oxy-easy-posts),
.align-horizontal-space-between.oxy-easy-posts .oxy-posts,
.align-horizontal-space-between.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
justify-content:space-between;
}
.w-20 {
 width:20%;
}
@media (max-width: 479px) {
.w-20 {
 width:100%;
}
}

.w-90 {
 width:90%;
}
.menu-container {
 width:100%;
 padding-top:20px;
 padding-right:20px;
 padding-bottom:20px;
 padding-left:20px;
 border-radius:20px;
 border-top-color:#a71100;
 border-right-color:#a71100;
 border-bottom-color:#a71100;
 border-left-color:#a71100;
}
.menu-container:not(.ct-section):not(.oxy-easy-posts),
.menu-container.oxy-easy-posts .oxy-posts,
.menu-container.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
.grid-col2 {
}
.grid-col2:not(.ct-section):not(.oxy-easy-posts),
.grid-col2.oxy-easy-posts .oxy-posts,
.grid-col2.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(2, minmax(200px, 1fr));grid-column-gap: 40px;grid-row-gap: 20px;}
@media (max-width: 479px) {
.grid-col2 {
}
.grid-col2:not(.ct-section):not(.oxy-easy-posts),
.grid-col2.oxy-easy-posts .oxy-posts,
.grid-col2.ct-section .ct-section-inner-wrap{
display:grid;
display: grid !important;align-items: stretch;grid-template-columns: repeat(1, minmax(200px, 1fr));grid-column-gap: 20px;grid-row-gap: 20px;}
}

.w-80 {
 width:80%;
}
@media (max-width: 479px) {
.w-80 {
 width:100%;
}
}

.border-bottom {
 border-bottom-width:2px;
 border-bottom-color:#a71100;
}
@media (max-width: 479px) {
.border-bottom {
 border-bottom-style:solid;
 padding-bottom:10px;
}
}

h1 {
  font-size: clamp(2.5rem, 7vw, 5rem);
}

h2 {
  font-size: clamp(2rem, 5vw, 3.5rem);
}

h3 {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
}

h4 {
  font-size: clamp(1.5rem, 2.5vw, 2rem);
}

h5 {
  font-size: clamp(1.25rem, 2vw, 1.5rem);
}

h6 {
  font-size: clamp(1rem, 1.5vw, 1.25rem);
}

h1, h2, h3 ,h4, h5, h6 {
  text-transform:uppercase;
  font-weight:900; 
  color:var(--color-primary);
}

:root {
  /* Brand colors */
  --color-primary: #183C1C;
  --color-primary-light: #B9E2BE;
  --color-primary-dark: #094d7a;

  /* Secondary / Accent */
  --color-secondary: #ffc300;
  --color-secondary-dark: #c77f1a;
  --color-accent:#F91A00;

  /* Neutral scale */
  --color-white: #ffffff;
  --color-light: #f5f5f5;
  --color-border: #e0e0e0;
  --color-text: #333333;
  --color-text-muted: #666666;

  /* Roles */
  --color-bg: var(--color-white);
  --color-bg-alt: var(--color-light);
  --color-heading: var(--color-primary);
  --color-button: var(--color-secondary);
  --color-button-hover: var(--color-secondary-dark);
  --color-link: var(--color-primary);
  --color-link-hover: var(--color-primary-dark);
}

body {
  background-color:#f9f6f1;
}

@media (max-width: 767px){
  .ct-section #_gallery-93-10.oxy-gallery.oxy-gallery-masonry{
    column-count: 2 ;
  }
}

.oxy-gallery-item-contents img{
  border-radius:20px;
}

iframe {
  border-radius:20px;
}
/* Riga a due colonne */
.md-form.cf7 .field-row.two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;        /* spaziatura interna fra i campi */
  margin-bottom:-1em;
}

/* Input, select e textarea */
.md-form.cf7 input[type="text"],
.md-form.cf7 input[type="tel"],
.md-form.cf7 input[type="email"],
.md-form.cf7 input[type="date"],
.md-form.cf7 select,
.md-form.cf7 textarea {
  width: 100%;
  padding: 16px 20px;
  border: 1px solid #005072;
  border-radius: 8px;
  background: #fff;
  font-size: 16px;
  line-height: 1.2;
  box-shadow: none;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.md-form.cf7 textarea { 
  min-height: 160px; 
  resize: vertical; 
}

.md-form.cf7 ::placeholder { color: #9aa3ab; }

.md-form.cf7 input:focus,
.md-form.cf7 select:focus,
.md-form.cf7 textarea:focus {
  border-color: var(--cta-color);
  box-shadow: 0 0 0 3px rgba(16,144,229,0.2);
}

/* Select con freccia custom */
.md-form.cf7 select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #9aa3ab 50%),
    linear-gradient(135deg, #9aa3ab 50%, transparent 50%),
    linear-gradient(to right, transparent, transparent);
  background-position:
    calc(100% - 24px) 50%,
    calc(100% - 16px) 50%,
    0 0;
  background-size: 8px 8px, 8px 8px, 100% 100%;
  background-repeat: no-repeat;
  padding-right: 40px;
}

/* Bottone submit */
.md-form.cf7 input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 34px;
  border: none;
  border-radius: 999px;
  background: linear-gradient(135deg, #e63946 0%, #d62839 100%);
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.3px;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(230, 57, 70, 0.25);
  transition: all 0.25s ease;
}
.md-form.cf7 input[type="submit"]:hover {
  background: #1090e5;
}
.md-form.cf7 input[type="submit"]:active { 
  transform: translateY(1px); 
}

/* Centratura del bottone */
.md-form.cf7 .submit-row-center { 
  text-align: center; 
  margin-top: 8px; 
}
.md-form.cf7 .submit-row input[type="submit"] { 
  min-width: 100%; 
}

.wpcf7-list-item-label {
  font-size:12px;
  color:grey;
}

.wpcf7-form .wpcf7-list-item label{
  display:flex;
  gap:10px;
}

.wpcf7 .wpcf7-submit:disabled {
  opacity:.45 !important;
  cursor:not-allowed !important;
  filter:saturate(.3) contrast(.9);
  box-shadow:none;
  transform:none;
  pointer-events:none; /* opzionale: blocca hover/click */
}
/* ====== VARIABLES & RESETS ====== */
:root{
  --primary:#e63946;         /* accento (CTA) */
  --primary-600:#d62839;
  --primary-700:#b81f2f;
  --bg:#ffffff;              /* sfondo card */
  --page:#faf9f7;            /* sfondo pagina */
  --text:#1b1b1b;
  --muted:#6b7280;           /* label/descrizioni */
  --line:#e6e6e6;            /* bordi soft */
  --radius:14px;
  --radius-sm:10px;
  --shadow:0 8px 24px rgba(16,24,40,.08);
  --ring:0 0 0 3px rgba(230,57,70,.16);
  --input-h:48px;
  --gap:16px;
}

.rtb-booking-form{
  padding:clamp(16px,2.5vw,32px);
}

.rtb-booking-form-form{
  max-width:880px; margin:0 auto;
  background:var(--bg);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:clamp(20px,3vw,32px);
  color:var(--text);
  font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
}

/* ====== FIELDSETS & LEGENDS ====== */
.rtb-booking-form fieldset{
  border:0; padding:0; margin:0 0 28px;
}
.rtb-booking-form legend{
  font-weight:800; letter-spacing:.2px;
  font-size:clamp(18px,2.2vw,22px);
  margin:0 0 14px; color:var(--text);
}

/* ====== GRID LAYOUT ====== */
.rtb-booking-form .reservation,
.rtb-booking-form .rtb-contact{
  display:grid; gap:var(--gap);
  grid-template-columns:1fr;
}
@media (min-width:720px){
  .rtb-booking-form .reservation{
    grid-template-columns:repeat(3,1fr); /* data / ora / persone */
  }
  .rtb-booking-form .rtb-contact{
    grid-template-columns:repeat(2,1fr);
  }
  .rtb-booking-form .rtb-contact .message{ grid-column:1/-1; }
}

/* ====== FIELDS ====== */
.rtb-booking-form label{
  display:block; margin:0 0 6px;
  font-size:13px; font-weight:600; color:var(--muted);
}

.rtb-booking-form input[type="text"],
.rtb-booking-form input[type="email"],
.rtb-booking-form input[type="tel"],
.rtb-booking-form select,
.rtb-booking-form textarea{
  width:100%;
  height:var(--input-h);
  padding:0 14px;
  border:1px solid var(--line);
  border-radius:var(--radius-sm);
  background:#fff;
  color:var(--text);
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
  outline:0;
}

/* date/time picker input from plugin */
.rtb-booking-form .picker__input{ cursor:pointer; }

.rtb-booking-form textarea{
  height:130px; padding:12px 14px; resize:vertical;
}

/* Focus styles (accessibili) */
.rtb-booking-form input:focus-visible,
.rtb-booking-form select:focus-visible,
.rtb-booking-form textarea:focus-visible{
  border-color:var(--primary);
  box-shadow:var(--ring);
}

/* Hover */
@media (hover:hover){
  .rtb-booking-form input:hover,
  .rtb-booking-form select:hover,
  .rtb-booking-form textarea:hover{
    border-color:#dcdcdc;
  }
}

/* Invalid */
.rtb-booking-form input:required:invalid,
.rtb-booking-form select:required:invalid{
  box-shadow:none;
}

/* Custom select arrow (cross-browser) */
.rtb-booking-form select{
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  background-image:
    linear-gradient(45deg,transparent 50%, var(--muted) 50%),
    linear-gradient(135deg,var(--muted) 50%, transparent 50%),
    linear-gradient(to right, transparent, transparent);
  background-position:
    calc(100% - 18px) calc(50% - 4px),
    calc(100% - 12px) calc(50% - 4px),
    calc(100% - 36px) 0;
  background-size:6px 6px, 6px 6px, 1px 100%;
  background-repeat:no-repeat;
  padding-right:42px;
}

/* Remove number spinners if ever used */
.rtb-booking-form input[type=number]

/* ====== PULSANTE MODERNO ====== */
.rtb-form-submit {
  text-align: right;
  margin-top: 20px;
}

.rtb-form-submit button, .rtb-modification-form .rtb-find-reservation-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 34px;
  border: none;
  border-radius: 999px;
  background: linear-gradient(135deg, #e63946 0%, #d62839 100%);
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.3px;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(230, 57, 70, 0.25);
  transition: all 0.25s ease;
}

/* Hover */
.rtb-form-submit button:hover {
  background: linear-gradient(135deg, #d62839 0%, #b81f2f 100%);
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(230, 57, 70, 0.3);
}

/* Focus (accessibile) */
.rtb-form-submit button:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(230, 57, 70, 0.4);
}

/* Active */
.rtb-form-submit button:active {
  transform: translateY(0);
  box-shadow: 0 4px 10px rgba(230, 57, 70, 0.25);
}
.endless-rotate {
  display: inline-block;
  animation: spin 12s linear infinite;
  transform-origin: center center;
}

/* Animazione */
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}