/* Native behavior and compatibility fixes, loaded after the original page design. */
.legacy-page { font-family: Verdana, Geneva, sans-serif; color:#000; line-height:1.7; font-size:14px; }
.legacy-page h1,.legacy-page h2,.legacy-page h3,.legacy-page h4,.legacy-page h5 { font-family:inherit; overflow-wrap:normal; }
.legacy-page .et_builder_inner_content { z-index:auto; }
.legacy-page .et_pb_section_parallax { isolation:isolate; }
.legacy-page .et_parallax_bg:not(.et_pb_parallax_css) { top:-20vh; height:calc(100% + 40vh); background-position:center; transform:translateY(var(--legacy-parallax,0px)); }
.legacy-page .et_parallax_bg.et_pb_parallax_css { background-attachment:fixed; }
.legacy-page .et_pb_animation_top,.legacy-page .et_pb_animation_bottom,.legacy-page .et_pb_animation_left,.legacy-page .et_pb_animation_right,.legacy-page .et_pb_animation_fade_in,.legacy-page .dipi_timeline_item_card-wrap,.legacy-page .dipi-ig-animation-container { opacity:1!important; visibility:visible!important; animation:none!important; transform:none!important; }
.legacy-page .et_pb_contact_form_label { display:block; font-size:14px; margin-bottom:5px; }
.legacy-page .module-link { position:absolute; inset:0; z-index:2; }
.legacy-page .et_pb_column:has(> .module-link) { position:relative; }
.legacy-page a:focus-visible,.legacy-page button:focus-visible,.legacy-page input:focus-visible,.legacy-page [tabindex]:focus-visible { outline:3px solid #e7511e; outline-offset:5px; }
.legacy-page .archive-grid h2 { font-size:21px; color:#e7511e; line-height:1.3; }
.legacy-page .archive-copy { padding:22px; }
.legacy-page .archive-photo img { height:230px; width:100%; object-fit:cover; }
.legacy-page .et_pb_blog_grid .pagination { display:none; }
.legacy-page .image-comparison { position:relative; width:100%; overflow:hidden; border-radius:12px; }
.legacy-page .image-comparison img { display:block; width:100%; height:auto; }
.legacy-page .comparison-after { position:absolute; inset:0; clip-path:inset(0 calc(100% - var(--comparison)) 0 0); }
.legacy-page .comparison-after img { height:100%; object-fit:cover; }
.legacy-page .comparison-labels { position:absolute; inset:0 0 auto; display:flex; justify-content:space-between; padding:12px; font-size:12px; pointer-events:none; }
.legacy-page .comparison-labels span { background:rgb(0 0 0 / 75%); color:#fff; padding:6px 10px; border-radius:4px; }
.legacy-page .comparison-control { display:block; padding:14px; font-size:14px; background:#fff; }
.legacy-page .comparison-control input { display:block; width:100%; accent-color:#e7511e; }
.legacy-page .external-video,.legacy-page .map-link { padding:30px; min-height:240px; border-radius:15px; background:#f5f5f5; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.legacy-page .external-video button,.legacy-page .map-link a { background:#e7511e; color:#fff; border:0; border-radius:5px; padding:12px 22px; font:inherit; cursor:pointer; }
.legacy-page .external-video a { margin-top:15px; text-decoration:underline; }
.legacy-page .external-video iframe { width:100%; aspect-ratio:16/9; height:auto; min-height:300px; }
.legacy-page video { display:block; width:100%; height:auto; }
.legacy-page .direct-contact { padding:24px; background:#fff; border-radius:12px; box-shadow:0 4px 16px rgb(0 0 0 / 10%); }
.legacy-page .direct-contact-primary { display:inline-block; background:#e7511e; color:#fff; padding:12px 22px; border-radius:5px; }
.legacy-page .direct-contact-phone { font-weight:bold; font-size:18px; }
.legacy-page .direct-contact-note { font-size:13px; color:#555; }
.legacy-page .external-video iframe + button { margin-top:16px; }
.legacy-page .privacy-notice .et_pb_section_0.et_pb_section { padding:0 0 72px!important; }
.legacy-page .privacy-notice .et_pb_row_0.et_pb_row { width:80%!important; max-width:1080px!important; padding-top:209px!important; }
.legacy-page .privacy-notice .et_pb_text_0 h1 { color:#fff!important; font-size:55px!important; line-height:1.15; margin:0; text-align:center; }
.legacy-page .privacy-notice .et_pb_section_1.et_pb_section { background:#fff!important; padding:4px 0 5px!important; }
.legacy-page .privacy-notice .et_pb_row_1.et_pb_row { width:80%!important; max-width:1080px!important; }
.legacy-page .privacy-policy-copy { color:#333; font-size:14px; line-height:1.7; }
.legacy-page .privacy-policy-copy h2 { color:#333; font-size:27px; line-height:1.3; margin:30px 0 20px; }
.legacy-page .privacy-policy-copy h2:first-child { margin-top:0; }
.legacy-page .privacy-policy-copy h3 { color:#333; font-size:22px; line-height:1.4; margin:22px 0 12px; }
.legacy-page .privacy-policy-copy p { margin-bottom:16px; }
.legacy-page .privacy-policy-copy a { color:#e7511e; text-decoration:underline; overflow-wrap:anywhere; }
@media(max-width:767px) {
 .legacy-page .privacy-notice .et_pb_text_0 h1 { font-size:36px!important; }
 .legacy-page .privacy-notice .et_pb_row_0.et_pb_row { width:90%!important; padding-top:130px!important; }
 .legacy-page .privacy-notice .et_pb_row_1.et_pb_row { width:90%!important; }
}
.legacy-page .native-hover-gallery .dipi-hg__images { pointer-events:none; }
.legacy-page .native-image-gallery .swiper-wrapper { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; height:auto; }
.legacy-page .native-image-gallery .swiper-slide { flex:0 0 100%; scroll-snap-align:start; height:auto; }




.legacy-page .native-image-accordion .dipi_image_accordion_child { transition:flex .3s ease; }
.legacy-page .native-image-accordion .dipi_image_accordion_child:hover,.legacy-page .native-image-accordion .dipi_image_accordion_child:focus { flex-grow:3; }
@media(max-width:980px) {
 .legacy-page .et_parallax_bg:not(.et_pb_parallax_css) { top:0; height:100%; transform:none; }
 .legacy-page .et_parallax_bg.et_pb_parallax_css { background-attachment:scroll; }
 .legacy-page .et_pb_row { max-width:calc(100% - 36px); }

}
@media(prefers-reduced-motion:reduce) {
 .legacy-page .et_parallax_bg:not(.et_pb_parallax_css) { top:0; height:100%; transform:none; }
 .legacy-page .et_parallax_bg.et_pb_parallax_css { background-attachment:scroll; }
 .legacy-page *, .legacy-page *::before,.legacy-page *::after { animation:none!important; transition:none!important; }
}

.legacy-page .comparison-viewport { position:relative; }
.legacy-page .image-comparison { border-radius:0; }
.legacy-page .comparison-control { position:absolute; inset:0; padding:0; background:transparent; font-size:0; }
.legacy-page .comparison-control input { appearance:none; -webkit-appearance:none; width:100%; height:100%; margin:0; background:transparent; cursor:ew-resize; }
.legacy-page .comparison-control input::-webkit-slider-runnable-track { background:transparent; height:100%; }
.legacy-page .comparison-control input::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; position:relative; top:50%; margin-top:-20px; width:40px; height:40px; border:3px solid #fff; border-radius:50%; background:rgb(0 0 0 / 25%); box-shadow:0 0 12px rgb(0 0 0 / 50%); }
.legacy-page .comparison-control input::-moz-range-track { background:transparent; }
.legacy-page .comparison-control input::-moz-range-thumb { width:34px; height:34px; border:3px solid #fff; border-radius:50%; background:rgb(0 0 0 / 25%); }
.legacy-page .comparison-viewport::after { position:absolute; content:''; top:0; bottom:0; left:var(--comparison); width:3px; background:#fff; pointer-events:none; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
.original-footer { background:#3e3d40; }
.legacy-page .site-search-results:not(:empty) { margin-top:20px; }
.legacy-page .site-search-results a { color:#e7511e; }
.legacy-page .et_pb_salvattore_content { display:flex; align-items:flex-start; gap:3%; }
.legacy-page .et_pb_salvattore_content > .column { float:none!important; width:31.333333%!important; margin:0!important; }
.legacy-page .et_pb_salvattore_content > article { flex:1; }
.legacy-page .native-blog-slider .dipi-blog-slider-wrapper { display:flex; gap:50px; overflow-x:auto!important; overflow-y:hidden!important; scroll-snap-type:x mandatory; scrollbar-width:none; }
.legacy-page .native-blog-slider .dipi-blog-post { flex:0 0 calc((100% - 100px)/3); width:auto!important; scroll-snap-align:start; }
.legacy-page .native-blog-slider .swiper-container { overflow:visible; }
@media(max-width:980px) {
 .legacy-page .et_pb_salvattore_content > .column { width:48.5%!important; }
 .legacy-page .native-blog-slider .dipi-blog-post { flex-basis:100%; }
}
@media(max-width:767px) { .legacy-page .et_pb_salvattore_content > .column { width:100%!important; } }

/* Preserve the original gallery dimensions, thumbnails and selected slide. */
.legacy-page .native-image-gallery .dipi-image-gallery { display:flex; flex-direction:column; }
.legacy-page .native-image-gallery .dipi-image-gallery-top { flex:1; min-height:0; }
.legacy-page .native-image-gallery .dipi-image-gallery-top .swiper-container,
.legacy-page .native-image-gallery .dipi-image-gallery-top .swiper-wrapper,
.legacy-page .native-image-gallery .dipi-image-gallery-top .swiper-slide,
.legacy-page .native-image-gallery .dipi-image-gallery-top .et_pb_module_inner { height:100%; }
.legacy-page .native-image-gallery .dipi-image-gallery-top .swiper-wrapper { gap:0; }
.legacy-page .native-image-gallery .swiper-slide-container { height:100%; min-height:0; }
.legacy-page .native-image-gallery .dipi-image-gallery-thumbs { position:relative; display:block; }
.legacy-page .native-image-gallery .dipi-image-gallery-thumbs .swiper-container,
.legacy-page .native-image-gallery .dipi-image-gallery-thumbs .swiper-wrapper { height:100%; }
.legacy-page .native-image-gallery .dipi-image-gallery-thumbs .swiper-wrapper { gap:10px; }
.legacy-page .native-image-gallery .dipi-image-gallery-thumbs .swiper-slide { flex-basis:calc((100% - 30px)/4); cursor:pointer; }
.legacy-page .native-image-gallery .swiper-arrow-button { position:absolute; top:50%; z-index:2; cursor:pointer; }
.legacy-page .native-image-gallery .swiper-arrow-button::before { content:none; }
@media(max-width:767px){ .legacy-page .native-image-gallery .dipi-image-gallery-thumbs .swiper-slide { flex-basis:calc((100% - 20px)/3); } }
.legacy-page .native-blog-slider .swiper-pagination { display:flex; justify-content:center; gap:8px; padding-top:20px; }
.legacy-page .native-blog-slider .swiper-pagination-bullet { width:8px; height:8px; padding:0; border:0; border-radius:50%; background:#e7511e; opacity:.3; cursor:pointer; }
.legacy-page .native-blog-slider .swiper-pagination-bullet-active { opacity:1; }

/* Native scrolling keeps the original gallery presentation without visible tracks. */
.legacy-page .native-image-gallery .swiper-wrapper,
.legacy-page .native-blog-slider .dipi-blog-slider-wrapper { scrollbar-width:none; }
.legacy-page .native-image-gallery .swiper-wrapper::-webkit-scrollbar,
.legacy-page .native-blog-slider .dipi-blog-slider-wrapper::-webkit-scrollbar { display:none; }

/* Search is a local control; keep the former form's positioning context. */
.legacy-page .widget_search .searchform { position:relative; }
.legacy-page .widget_search .searchform #searchsubmit { height:42px!important; bottom:auto; }
