/* Bespoke pages (EN 15523 / IT 19709): title banner, headings, texts, photos and carousel aligned with the restyle. */

/* Headings: restyle system (Poppins 900, uppercase, tight). */
body.hz-bespoke :is(.elementor-element-3bbb47f,.elementor-element-fb46ddf,.elementor-element-dc7e80a,.elementor-element-0bf8452,.elementor-element-841b517) .elementor-heading-title{font-family:HorizonDisplay,Arial,sans-serif!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:-.03em!important;line-height:1.06!important;color:#17191b!important}
body.hz-bespoke .elementor-element-3bbb47f .elementor-heading-title{font-size:clamp(32px,3.6vw,48px)!important}
body.hz-bespoke .elementor-element-fb46ddf .elementor-heading-title{font-size:clamp(24px,2.6vw,36px)!important}
body.hz-bespoke :is(.elementor-element-dc7e80a,.elementor-element-0bf8452,.elementor-element-841b517) .elementor-heading-title{font-size:clamp(28px,3vw,40px)!important;margin-bottom:6px!important}

/* Intros and body copy: DM Sans, calm grey, readable measure. */
body.hz-bespoke :is(.elementor-element-52c51c3,.elementor-element-48b0473) .elementor-heading-title{font:400 clamp(16px,1.4vw,19px)/1.55 HorizonBody,Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important;color:#39434d!important;max-width:640px;margin-left:auto;margin-right:auto}
body.hz-bespoke .elementor-element-48b0473{margin-top:10px!important}
body.hz-bespoke .elementor-element-7bbe489 .elementor-widget-container,body.hz-bespoke .elementor-element-7bbe489 :is(p,span,em,i){font-family:HorizonBody,Arial,sans-serif!important;font-style:normal!important;font-size:16px!important;color:#39434d!important}
body.hz-bespoke .elementor-element-7bbe489 a{color:#087f86!important;font-weight:700;text-decoration:underline;text-underline-offset:4px}
body.hz-bespoke :is(.elementor-element-948b7a3,.elementor-element-5a04ecd,.elementor-element-300f995) :is(.elementor-widget-container,p,li){font-family:HorizonBody,Arial,sans-serif!important;font-size:17px!important;line-height:1.6!important;color:#39434d!important}
body.hz-bespoke :is(.elementor-element-948b7a3,.elementor-element-5a04ecd,.elementor-element-300f995) :is(strong,b){color:#17191b!important;font-weight:700}
body.hz-bespoke :is(.elementor-element-948b7a3,.elementor-element-5a04ecd,.elementor-element-300f995) p{margin:0 0 12px!important}

/* Photos and carousel: square corners, native circular arrows. */
body.hz-bespoke .elementor-element-fbc4157 img,body.hz-bespoke .elementor-element-21e2ed8 :is(.swiper,.elementor-image-carousel-wrapper,.swiper-slide,img){border-radius:0!important}
body.hz-bespoke .elementor-element-fbc4157 img{width:100%;height:auto!important;aspect-ratio:4/3;object-fit:cover;object-position:50% 35%}
body.hz-bespoke .elementor-element-21e2ed8 .swiper-slide-image{width:100%;height:auto!important;aspect-ratio:16/10;object-fit:cover}
body.hz-bespoke .elementor-element-21e2ed8 .elementor-swiper-button{width:44px!important;height:44px!important;border-radius:50%;background:#fff!important;color:#17191b!important;display:flex!important;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(23,25,27,.18);font-size:16px!important}
body.hz-bespoke .elementor-element-21e2ed8 .elementor-swiper-button svg{width:16px!important;height:16px!important;fill:#17191b!important}
body.hz-bespoke .elementor-element-21e2ed8 .elementor-swiper-button-prev{left:14px!important}
body.hz-bespoke .elementor-element-21e2ed8 .elementor-swiper-button-next{right:14px!important}
body.hz-bespoke .elementor-element-21e2ed8 .swiper-pagination-bullet-active{background:#25d7dc!important}

@media(max-width:767px){
 body.hz-bespoke :is(.elementor-element-f566d82,.elementor-element-2f668d3,.elementor-element-97fbd67,.elementor-element-bae35e3,.elementor-element-59309ad,.elementor-element-93fa536,.elementor-element-6e706c5){margin-top:0!important;margin-bottom:0!important;padding-top:22px!important;padding-bottom:22px!important}
 body.hz-bespoke :is(.elementor-element-948b7a3,.elementor-element-5a04ecd,.elementor-element-300f995) :is(.elementor-widget-container,p,li){font-size:16px!important}
 body.hz-bespoke :is(.elementor-element-fbc4157,.elementor-element-21e2ed8){margin-bottom:18px!important}
}
