.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* === San Pietro Carni — modern motion & UX layer (AP-inspired) === */
html{scroll-behavior:smooth;}

/* Sticky refined header */
.elementor-location-header{position:sticky;top:0;z-index:999;box-shadow:0 2px 20px rgba(20,15,13,.07);} 

/* Buttons micro-interaction */
.elementor-button{transition:transform .25s ease,box-shadow .25s ease,background-color .3s ease,color .3s ease!important;}
.elementor-button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(20,15,13,.22);} 

/* Cards lift on hover */
.elementor-widget-image-box .elementor-image-box-wrapper,.elementor-widget-icon-box .elementor-icon-box-wrapper{transition:transform .4s cubic-bezier(.2,.7,.2,1);}
.elementor-widget-image-box:hover .elementor-image-box-wrapper,.elementor-widget-icon-box:hover .elementor-icon-box-wrapper{transform:translateY(-7px);} 

/* Image zoom */
.elementor-widget-image-box .elementor-image-box-img{overflow:hidden;border-radius:6px;}
.elementor-widget-image-box .elementor-image-box-img img{transition:transform .7s cubic-bezier(.2,.7,.2,1);display:block;width:100%;}
.elementor-widget-image-box:hover .elementor-image-box-img img{transform:scale(1.07);}
.elementor-widget-image img{transition:transform .7s cubic-bezier(.2,.7,.2,1);}
.elementor-widget-image:hover img{transform:scale(1.03);} 

/* Desktop parallax on hero sections */
@media (min-width:1025px){.elementor-element-hp_hero,.elementor-element-st_hero,.elementor-element-az_hero,.elementor-element-qu_hero,.elementor-element-co_hero,.elementor-element-so_hero{background-attachment:fixed;}}

@media (prefers-reduced-motion:no-preference){
/* Intro curtain — homepage only */
body.home::before{content:"";position:fixed;inset:0;background:#160F0C;z-index:100000;pointer-events:none;animation:spcCurtain 1.9s ease forwards;}
body.home::after{content:"SAN PIETRO CARNI";position:fixed;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 24px;color:#E7C46A;font-family:"Oswald",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.22em;font-size:clamp(20px,4vw,44px);z-index:100001;pointer-events:none;animation:spcLogo 1.9s ease forwards;}
@keyframes spcCurtain{0%,50%{opacity:1;}100%{opacity:0;visibility:hidden;}}
@keyframes spcLogo{0%{opacity:0;letter-spacing:.5em;}26%{opacity:1;}50%{opacity:1;letter-spacing:.22em;}100%{opacity:0;}}
/* Hero scroll-down cue — homepage */
.elementor-element-hp_hero::after{content:"";position:absolute;left:50%;bottom:22px;width:18px;height:18px;border-right:2px solid rgba(255,255,255,.75);border-bottom:2px solid rgba(255,255,255,.75);transform:translateX(-50%) rotate(45deg);animation:spcBounce 2s ease-in-out infinite;z-index:4;pointer-events:none;}
@keyframes spcBounce{0%,100%{transform:translateX(-50%) rotate(45deg) translateY(0);}50%{transform:translateX(-50%) rotate(45deg) translateY(9px);}}
}

/* Scroll reveal — progressive enhancement (Chrome/Edge/Safari), desktop */
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:768px){
.elementor-widget{animation:spcReveal linear both;animation-timeline:view();animation-range:entry 3% entry 40%;}
.elementor-location-header .elementor-widget{animation:none!important;opacity:1!important;transform:none!important;}
@keyframes spcReveal{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}
}}/* End custom CSS */