.elementor-kit-4{--e-global-color-primary:#3A3238;--e-global-color-secondary:#8F5450;--e-global-color-text:#6B6069;--e-global-color-accent:#FBF7F5;--e-global-color-carta-alt:#F4EBE7;--e-global-color-accento-su-scuro:#E7C9C5;--e-global-color-accento-decorativo:#C08480;--e-global-color-resume-pannello:#F1EDF4;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:300;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:300;--e-global-typography-text-font-family:"Karla";--e-global-typography-text-font-weight:300;--e-global-typography-accent-font-family:"Karla";--e-global-typography-accent-font-weight:500;}.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);}@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;}}
.elementor-38 .elementor-element.elementor-element-eb27c4b{--display:flex;}.elementor-38 .elementor-element.elementor-element-eb27c4b:not(.elementor-motion-effects-element-type-background), .elementor-38 .elementor-element.elementor-element-eb27c4b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-carta-alt );}.elementor-38 .elementor-element.elementor-element-a27a3aa{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-38 .elementor-element.elementor-element-bb17cb5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-38 .elementor-element.elementor-element-6567d4a{text-align:center;}.elementor-38 .elementor-element.elementor-element-6567d4a .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-9951771{text-align:center;color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-fa261b1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-38 .elementor-element.elementor-element-b8e3a8b{--display:flex;}.elementor-38 .elementor-element.elementor-element-b42eac9 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-c1fae85{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-52f7ad6{--display:flex;}.elementor-38 .elementor-element.elementor-element-5f626ff .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-2cae665{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-65283c9{--display:flex;}.elementor-38 .elementor-element.elementor-element-717a219 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-d31ef33{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-4eaecf9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:22px 22px;--row-gap:22px;--column-gap:22px;}.elementor-38 .elementor-element.elementor-element-9394ea1 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-1cad88e .elementor-heading-title{color:var( --e-global-color-text );}@media(max-width:1024px){.elementor-38 .elementor-element.elementor-element-fa261b1{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-38 .elementor-element.elementor-element-4eaecf9{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(min-width:768px){.elementor-38 .elementor-element.elementor-element-b8e3a8b{--width:31.333333333333%;}.elementor-38 .elementor-element.elementor-element-52f7ad6{--width:31.333333333333%;}.elementor-38 .elementor-element.elementor-element-65283c9{--width:31.333333333333%;}}@media(max-width:1024px) and (min-width:768px){.elementor-38 .elementor-element.elementor-element-b8e3a8b{--width:100%;}.elementor-38 .elementor-element.elementor-element-52f7ad6{--width:100%;}.elementor-38 .elementor-element.elementor-element-65283c9{--width:100%;}}
.comments-area a,.page-content a{text-decoration:underline}.alignright{float:right;margin-left:1rem}.alignleft{float:left;margin-right:1rem}.aligncenter{clear:both;display:block;margin-inline:auto}.alignwide{margin-inline:-80px}.alignfull{margin-inline:calc(50% - 50vw);max-width:100vw}.alignfull,.alignfull img{width:100vw}.wp-caption{margin-block-end:1.25rem;max-width:100%}.wp-caption.alignleft{margin:5px 20px 20px 0}.wp-caption.alignright{margin:5px 0 20px 20px}.wp-caption img{display:block;margin-inline:auto}.wp-caption-text{margin:0}.gallery-caption{display:block;font-size:.8125rem;line-height:1.5;margin:0;padding:.75rem}.pagination{display:flex;justify-content:space-between;margin:20px auto}.sticky{display:block;position:relative}.bypostauthor{font-size:inherit}.hide{display:none!important}.post-password-form{margin:50px auto;max-width:500px}.post-password-form p{align-items:flex-end;display:flex;width:100%}.post-password-form [type=submit]{margin-inline-start:3px}.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#eee;clip:auto!important;clip-path:none;color:#333;display:block;font-size:1rem;height:auto;left:5px;line-height:normal;padding:12px 24px;text-decoration:none;top:5px;width:auto;z-index:100000}.post .entry-title a{text-decoration:none}.post .wp-post-image{max-height:500px;-o-object-fit:cover;object-fit:cover;width:100%}@media(max-width:991px){.post .wp-post-image{max-height:400px}}@media(max-width:575px){.post .wp-post-image{max-height:300px}}#comments .comment-list{font-size:.9em;list-style:none;margin:0;padding:0}#comments .comment,#comments .pingback{position:relative}#comments .comment .comment-body,#comments .pingback .comment-body{border-block-end:1px solid #ccc;display:flex;flex-direction:column;padding-block-end:30px;padding-block-start:30px;padding-inline-end:0;padding-inline-start:60px}#comments .comment .avatar,#comments .pingback .avatar{border-radius:50%;left:0;margin-inline-end:10px;position:absolute}body.rtl #comments .comment .avatar,body.rtl #comments .pingback .avatar,html[dir=rtl] #comments .comment .avatar,html[dir=rtl] #comments .pingback .avatar{left:auto;right:0}#comments .comment-meta{display:flex;justify-content:space-between;margin-block-end:.9rem}#comments .comment-metadata,#comments .reply{font-size:11px;line-height:1}#comments .children{list-style:none;margin:0;padding-inline-start:30px;position:relative}#comments .children li:last-child{padding-block-end:0}#comments ol.comment-list .children:before{content:"↪";display:inline-block;font-size:1em;font-weight:400;left:0;line-height:100%;position:absolute;top:45px;width:auto}body.rtl #comments ol.comment-list .children:before,html[dir=rtl] #comments ol.comment-list .children:before{content:"↩";left:auto;right:0}@media(min-width:768px){#comments .comment-author,#comments .comment-metadata{line-height:1}}@media(max-width:767px){#comments .comment .comment-body{padding:30px 0}#comments .children{padding-inline-start:20px}#comments .comment .avatar{float:left;position:inherit}body.rtl #comments .comment .avatar,html[dir=rtl] #comments .comment .avatar{float:right}}.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{margin-inline-end:auto;margin-inline-start:auto;width:100%}@media(max-width:575px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{padding-inline-end:10px;padding-inline-start:10px}}@media(min-width:576px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:500px}.site-footer.footer-full-width .footer-inner,.site-header.header-full-width .header-inner{max-width:100%}}@media(min-width:768px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:600px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:992px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:800px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:1200px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:1140px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}.site-header+.elementor{min-height:calc(100vh - 320px)}

.site-header{display:flex;flex-wrap:wrap;justify-content:space-between;padding-block-end:1rem;padding-block-start:1rem;position:relative}.site-header .site-title{font-size:2.5rem;font-weight:500;line-height:1.2}.site-header .site-branding{display:flex;flex-direction:column;gap:.5rem;justify-content:center}.site-header .header-inner{display:flex;flex-wrap:wrap;justify-content:space-between}.site-header .header-inner .custom-logo-link{display:block}.site-header .header-inner .site-branding .site-description,.site-header .header-inner .site-branding .site-title{margin:0}.site-header .header-inner .site-branding .site-logo img{display:block}.site-header .header-inner .site-branding.show-logo .site-title,.site-header .header-inner .site-branding.show-title .site-logo{display:none!important}.site-header.header-inverted .header-inner{flex-direction:row-reverse}.site-header.header-inverted .header-inner .site-branding{text-align:end}.site-header.header-stacked .header-inner{align-items:center;flex-direction:column;text-align:center}.site-footer{padding-block-end:1rem;padding-block-start:1rem;position:relative}.site-footer .site-title{font-size:1.5rem;font-weight:500;line-height:1.2}.site-footer .site-branding{display:flex;flex-direction:column;gap:.5rem;justify-content:center}.site-footer .footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between}.site-footer .footer-inner .custom-logo-link{display:block}.site-footer .footer-inner .site-branding .site-description,.site-footer .footer-inner .site-branding .site-title{margin:0}.site-footer .footer-inner .site-branding .site-logo img{display:block}.site-footer .footer-inner .site-branding.show-logo .site-title,.site-footer .footer-inner .site-branding.show-title .site-logo{display:none!important}.site-footer .footer-inner .copyright{align-items:center;display:flex;justify-content:flex-end}.site-footer .footer-inner .copyright p{margin:0}.site-footer.footer-inverted .footer-inner{flex-direction:row-reverse}.site-footer.footer-inverted .footer-inner .site-branding{text-align:end}.site-footer.footer-stacked .footer-inner{align-items:center;flex-direction:column;text-align:center}.site-footer.footer-stacked .footer-inner .site-branding .site-title{text-align:center}.site-footer.footer-stacked .footer-inner .site-navigation .menu{padding:0}@media(max-width:576px){.site-footer:not(.footer-stacked) .footer-inner .copyright,.site-footer:not(.footer-stacked) .footer-inner .site-branding,.site-footer:not(.footer-stacked) .footer-inner .site-navigation{display:block;max-width:none;text-align:center;width:100%}.site-footer .footer-inner .site-navigation ul.menu{justify-content:center}.site-footer .footer-inner .site-navigation ul.menu li{display:inline-block}}.site-header.header-stacked .site-navigation-toggle-holder{justify-content:center;max-width:100%}.site-header.menu-layout-dropdown .site-navigation{display:none}.site-navigation-toggle-holder{align-items:center;display:flex;padding:8px 15px}.site-navigation-toggle-holder .site-navigation-toggle{align-items:center;background-color:rgba(0,0,0,.05);border:0 solid;border-radius:3px;color:#494c4f;cursor:pointer;display:flex;justify-content:center;padding:.5rem}.site-navigation-toggle-holder .site-navigation-toggle-icon{display:block;width:1.25rem}.site-navigation-toggle-holder .site-navigation-toggle-icon:after,.site-navigation-toggle-holder .site-navigation-toggle-icon:before{background-color:currentColor;border-radius:3px;content:"";display:block;height:3px;transition:all .2s ease-in-out}.site-navigation-toggle-holder .site-navigation-toggle-icon:before{box-shadow:0 .35rem 0 currentColor;margin-block-end:.5rem}.site-navigation-toggle-holder .site-navigation-toggle[aria-expanded=true] .site-navigation-toggle-icon:before{box-shadow:none;transform:translateY(.35rem) rotate(45deg)}.site-navigation-toggle-holder .site-navigation-toggle[aria-expanded=true] .site-navigation-toggle-icon:after{transform:translateY(-.35rem) rotate(-45deg)}.site-navigation{align-items:center;display:flex}.site-navigation ul.menu,.site-navigation ul.menu ul{list-style-type:none;padding:0}.site-navigation ul.menu{display:flex;flex-wrap:wrap}.site-navigation ul.menu li{display:flex;position:relative}.site-navigation ul.menu li a{display:block;padding:8px 15px}.site-navigation ul.menu li.menu-item-has-children{padding-inline-end:15px}.site-navigation ul.menu li.menu-item-has-children:after{align-items:center;color:#666;content:"▾";display:flex;font-size:1.5em;justify-content:center;text-decoration:none}.site-navigation ul.menu li.menu-item-has-children:focus-within>ul{display:block}.site-navigation ul.menu li ul{background:#fff;display:none;left:0;min-width:150px;position:absolute;top:100%;z-index:2}.site-navigation ul.menu li ul li{border-block-end:1px solid #eee}.site-navigation ul.menu li ul li:last-child{border-block-end:none}.site-navigation ul.menu li ul li.menu-item-has-children a{flex-grow:1}.site-navigation ul.menu li ul li.menu-item-has-children:after{transform:translateY(-50%) rotate(-90deg)}.site-navigation ul.menu li ul ul{left:100%;top:0}.site-navigation ul.menu li:hover>ul{display:block}footer .site-navigation ul.menu li ul{bottom:100%;top:auto}footer .site-navigation ul.menu li ul ul{bottom:0}footer .site-navigation ul.menu a{padding:5px 15px}.site-navigation-dropdown{bottom:0;left:0;margin-block-start:10px;position:absolute;transform-origin:top;transition:max-height .3s,transform .3s;width:100%;z-index:10000}.site-navigation-toggle-holder:not(.elementor-active)+.site-navigation-dropdown{max-height:0;transform:scaleY(0)}.site-navigation-toggle-holder.elementor-active+.site-navigation-dropdown{max-height:100vh;transform:scaleY(1)}.site-navigation-dropdown ul{padding:0}.site-navigation-dropdown ul.menu{background:#fff;margin:0;padding:0;position:absolute;width:100%}.site-navigation-dropdown ul.menu li{display:block;position:relative;width:100%}.site-navigation-dropdown ul.menu li a{background:#fff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.102);color:#55595c;display:block;padding:20px}.site-navigation-dropdown ul.menu li.current-menu-item a{background:#55595c;color:#fff}.site-navigation-dropdown ul.menu>li li{max-height:0;transform:scaleY(0);transform-origin:top;transition:max-height .3s,transform .3s}.site-navigation-dropdown ul.menu li.elementor-active>ul>li{max-height:100vh;transform:scaleY(1)}@media(max-width:576px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation{display:none!important}}@media(min-width:768px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}}@media(min-width:576px)and (max-width:767px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation{display:none!important}}@media(min-width:992px){.site-header.menu-dropdown-tablet:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}}@media(max-width:992px){.site-header.menu-dropdown-tablet:not(.menu-layout-dropdown) .site-navigation{display:none!important}}.site-header.menu-dropdown-none:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}

body {
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso);
  color: var(--stw-inchiostro);
  background: var(--stw-carta);
  -webkit-font-smoothing: antialiased;
}

.elementor,
.elementor .e-con {
  --container-max-width: 100%;
}

html,
body {
  overflow-x: clip;
}

.stw-sfondo-carta {
  background-color: var(--stw-carta);
}

.stw-sfondo-carta-alt {
  background-color: var(--stw-carta-alt);
}

.elementor-widget-text-editor p + p {
  margin-block-start: 1em;
}

:root {
  --stw-inchiostro: #3A3238;
  --stw-accento: #8F5450;
  --stw-testo-secondario: #6B6069;
  --stw-carta: #FBF7F5;
  --stw-carta-alt: #F4EBE7;
  --stw-accento-su-scuro: #E7C9C5;
  --stw-accento-decorativo: #C08480;
  --stw-resume-pannello: #F1EDF4;
  --stw-h1: 64px;
  --stw-h2: 48px;
  --stw-h3: 24px;
  --stw-corpo: 17px;
  --stw-etichetta: 12px;
  --stw-etichetta-trasformazione: uppercase;
  --stw-etichetta-spaziatura: 0.18em;
  --stw-margini-laterali: 5%;
  --stw-padding-sezione: 104px;
  --stw-gap-card-min: 14px;
  --stw-gap-card-max: 26px;
  --stw-gap-colonne-min: 24px;
  --stw-gap-colonne-max: 72px;
  --stw-ingresso-durata: 0.72s;
  --stw-ingresso-easing: cubic-bezier(.22,.61,.36,1);
  --stw-hover-durata: 0.45s;
  --stw-soglia-viewport: 88%;
  --stw-font-titoli: 'Cormorant Garamond', system-ui, sans-serif;
  --stw-font-titoli-peso: 300;
  --stw-font-titoli-interlinea: 1.04;
  --stw-font-testo: 'Karla', system-ui, sans-serif;
  --stw-font-testo-peso: 300;
  --stw-font-testo-peso-forte: 500;
  --stw-raggio-card: 25px;
  --stw-raggio-pulsante: 99px;
  --stw-bordo: 1px solid rgba(58,50,56,.1);
}

@media (max-width: 1024px) {
  :root {
    --stw-h1: 40px;
    --stw-h2: 34px;
    --stw-h3: 22px;
    --stw-corpo: 16px;
    --stw-margini-laterali: 24px;
    --stw-padding-sezione: 64px;
  }
}

@media (max-width: 767px) {
  :root {
    --stw-h1: 32px;
    --stw-h2: 27px;
    --stw-h3: 20px;
    --stw-margini-laterali: 16px;
    --stw-padding-sezione: 44px;
  }
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/cormorant-garamond-v21-latin-300.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/cormorant-garamond-v21-latin-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/cormorant-garamond-v21-latin-300italic.woff2') format('woff2');
}

@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/karla-v33-latin-300.woff2') format('woff2');
}

@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/karla-v33-latin-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/karla-v33-latin-500.woff2') format('woff2');
}

:root {

  --stw-display-h1: clamp(40px, 7.6vw, 102px);

  --stw-display-h2: clamp(28px, 4.4vw, 58px);
  --stw-display-h2-resume: clamp(26px, 4vw, 50px);
  --stw-display-h2-contact: clamp(30px, 4.8vw, 64px);

  --stw-display-h3-servizio: clamp(22px, 2.6vw, 30px);
  --stw-display-h3-lavoro: clamp(19px, 2.2vw, 25px);
  --stw-display-h3-tappa: 20px;
  --stw-display-segno-faq: 24px;

  --stw-display-corpo-hero: clamp(16px, 1.8vw, 21px);

  --stw-display-corpo-largo: clamp(16px, 1.6vw, 18px);
  --stw-display-corpo-spalla-faq: clamp(16px, 1.6vw, 17px);

  --stw-display-marchio: clamp(19px, 2.2vw, 26px);
  --stw-display-numero-stat: clamp(34px, 4.2vw, 54px);
  --stw-display-badge-numero: 26px;

  --stw-font-titoli-interlinea: 1.12;
  --stw-font-titoli-peso-forte: 400;

  --stw-font-titoli-trasformazione: none;

  --stw-header-h: clamp(66px, 7.4vw, 94px);
  --stw-header-h-ridotto: clamp(58px, 6vw, 74px);
}

h2.elementor-heading-title,
.stw-card-grid__intestazione-titolo,
.stw-timeline-skills__titolo {
  text-wrap: balance;
}

a {
  color: var(--stw-accento);
  text-decoration: none;
}

.page-content a,
.comments-area a {
  text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
  a:hover {
    color: var(--stw-inchiostro);
  }
}

button {
  font-family: inherit;
  color: inherit;
}

.elementor > .elementor-element {
  padding-inline: var(--stw-margini-laterali);
  padding-block: calc(var(--stw-padding-sezione) / 2);
}

.elementor > .elementor-element.elementor-widget {
  padding: 0;
  margin: 0;
}

.elementor > .elementor-element.elementor-widget > .elementor-widget-container > .stw-widget {
  padding-inline: var(--stw-margini-laterali);
  padding-block: calc(var(--stw-padding-sezione) / 2);
}

.stw-sfondo-inchiostro,
.stw-superficie-inchiostro {
  background-color: var(--stw-inchiostro);
  color: var(--stw-carta);

  --stw-testo-secondario: rgb(from var(--stw-carta) r g b / .72);
  --stw-accento: var(--stw-accento-su-scuro);
  --stw-accento-testo: var(--stw-accento-su-scuro);
}

.stw-sfondo-accento {
  background-color: var(--stw-accento);
  color: var(--stw-carta);
}

.elementor-element:has(> #home) + .elementor-element {
  padding-block-start: clamp(40px, 6vw, 110px);
}

.stw-superficie-carta + .stw-superficie-carta,
.stw-superficie-carta-alt + .stw-superficie-carta-alt {
  padding-block-start: 0;
}

.elementor > .elementor-element.stw-pannello {
  padding: 0;
  margin-inline: var(--stw-margini-laterali);
  margin-block: calc(var(--stw-padding-sezione) / 2);
  max-width: calc(100% - 2 * var(--stw-margini-laterali));
  border-radius: clamp(24px, 3vw, 40px);
  overflow: hidden;
}

.elementor .elementor-element.stw-pannello > .e-con-inner,
.elementor .elementor-element.stw-pannello > .e-con {
  padding: clamp(26px, 4vw, 72px) clamp(20px, 3.4vw, 60px);
}

@media (min-width: 1025px) {
  .elementor .elementor-element.stw-pannello > .e-con > .e-con:has(> .elementor-widget-image) {
    align-self: stretch;
  }

  .elementor .elementor-element.stw-pannello > .e-con > .e-con > .elementor-widget-image {
    position: relative;
    flex: 1 1 auto;
    min-height: 320px;
  }

  .elementor .elementor-element.stw-pannello > .e-con > .e-con > .elementor-widget-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.elementor-element:has(> #resume) + .elementor-element {
  margin-inline: var(--stw-margini-laterali);
  margin-block: calc(var(--stw-padding-sezione) / 2);
  max-width: calc(100% - 2 * var(--stw-margini-laterali));
  border-radius: clamp(24px, 3vw, 40px);
  overflow: hidden;
}

.elementor-element:has(> #resume) + .elementor-element > .elementor-widget-container > .stw-widget {
  background: var(--stw-resume-pannello);
  padding: clamp(26px, 4vw, 72px) clamp(20px, 3.4vw, 60px);
}

.elementor-element:has(> #resume) + .elementor-element .stw-timeline-skills__titolo {
  font-size: var(--stw-display-h2-resume);
}

.elementor-heading-title {
  font-family: var(--stw-font-titoli);
  font-weight: var(--stw-font-titoli-peso);
  text-wrap: pretty;
  margin: 0;
}

h1.elementor-heading-title {
  font-size: var(--stw-display-h1);
  line-height: var(--stw-font-titoli-interlinea);
  letter-spacing: -.015em;
  max-width: none;
}

h2.elementor-heading-title {
  font-size: var(--stw-display-h2);
  line-height: 1.12;
  letter-spacing: -.01em;
}

h3.elementor-heading-title {
  font-size: var(--stw-h3);
  line-height: 1.2;
  font-weight: 400;
}

.elementor-element:has(> #contact) + .elementor-element h3.elementor-heading-title {
  font-size: var(--stw-display-h2-contact);
  line-height: 1.06;
  letter-spacing: -.01em;
  font-weight: var(--stw-font-titoli-peso);
}

.site-header__marchio-nome {
  display: inline-block;
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: var(--stw-display-marchio);
  line-height: 1;
  letter-spacing: .01em;
  color: var(--stw-inchiostro);
  text-decoration: none;
}

.site-header__marchio-nome:focus-visible {
  color: var(--stw-inchiostro);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__marchio-nome:hover {
    color: var(--stw-inchiostro);
  }
}

.stw-occhiello .elementor-heading-title,
.stw-card-grid__intestazione-occhiello {

  line-height: 1.35;
  flex-wrap: wrap;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: var(--stw-etichetta);
  letter-spacing: .24em;
  text-transform: uppercase;
  max-width: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.stw-occhiello .elementor-heading-title::before,
.stw-card-grid__intestazione-occhiello::before {
  content: "";
  display: block;
  width: 22px;
  height: 1px;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

.stw-occhiello-inline {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 10px;
  line-height: 1.35;
  margin-bottom: 14px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: var(--stw-etichetta);
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--stw-accento);
}

.stw-occhiello-inline::before,
.elementor .stw-timeline-skills__occhiello::before {
  content: "";
  display: block;
  width: 22px;
  height: 1px;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

.elementor .stw-timeline-skills__occhiello {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--stw-accento);
  letter-spacing: .24em;
}

.stw-evidenzia {
  font-style: italic;
  color: var(--stw-accento);
}

.stw-evidenzia--gradiente {
  background: linear-gradient(100deg, #A85F5A, #6E5C8A, #5F7D69, #A85F5A);
  background-size: 300% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: stw-scintillio 9s ease-in-out infinite;
}

@keyframes stw-scintillio {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

.elementor-widget-text-editor {
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso);
  font-size: var(--stw-corpo);
  line-height: 1.75;
  color: var(--stw-testo-secondario);
}

.elementor-widget-text-editor p {
  margin: 0;
  max-width: 58ch;
}

.elementor-element:has(> #home) + .elementor-element .elementor-widget-text-editor:not(.stw-badge *) {
  font-size: var(--stw-display-corpo-hero);
  max-width: 44ch;
}

.stw-pannello .elementor-widget-text-editor,
.elementor-element:has(> #contact) + .elementor-element .elementor-widget-text-editor {
  font-size: var(--stw-display-corpo-largo);
  max-width: 52ch;
}

.stw-sticky .elementor-widget-text-editor {
  font-size: var(--stw-display-corpo-spalla-faq);
  max-width: 36ch;
}

.elementor-widget-button .elementor-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: var(--stw-raggio-pulsante);
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 14px;
  line-height: 1;
  letter-spacing: .03em;
  padding: 17px 30px;
  text-decoration: none;
  transition: transform .45s var(--stw-ingresso-easing), box-shadow .45s ease, background-color .3s ease, color .3s ease;
}

.stw-pulsante-riempito .elementor-button {
  background-color: var(--stw-inchiostro) !important;
  color: var(--stw-carta) !important;

  border: 1px solid transparent;
}

.stw-pulsante-riempito .elementor-button:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 20px 34px rgb(from var(--stw-inchiostro) r g b / .24);
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-riempito .elementor-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 34px rgb(from var(--stw-inchiostro) r g b / .24);
  }
}

.stw-pulsante-in-linea .elementor-button {
  background-color: transparent !important;
  color: var(--stw-accento-testo, var(--stw-accento)) !important;
  border: 0;
  border-radius: 0;
  padding: 0;
  font-size: 15px;
}

.stw-pulsante-in-linea .elementor-button .elementor-button-text {
  transition: transform var(--stw-hover-durata) var(--stw-ingresso-easing);
}

.stw-pulsante-in-linea .elementor-button:focus-visible .elementor-button-text {
  transform: translateX(5px);
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-in-linea .elementor-button:hover .elementor-button-text {
    transform: translateX(5px);
  }
}

.stw-pulsante-contorno .elementor-button {
  background-color: transparent !important;
  border: 1px solid rgb(from var(--stw-inchiostro) r g b / .22);
}

.stw-pulsante-contorno .elementor-button:focus-visible {
  background-color: rgb(from var(--stw-inchiostro) r g b / .05) !important;
  transform: translateY(-3px);
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-contorno .elementor-button:hover {
    background-color: rgb(from var(--stw-inchiostro) r g b / .05) !important;
    transform: translateY(-3px);
  }
}

.stw-pulsante-pillola .elementor-button {
  background-color: transparent !important;
  border: 1px solid rgb(from var(--stw-inchiostro) r g b / .22);
  padding: 10px 16px;
  font-size: 12px;
}

.stw-pulsante-pillola .elementor-button:focus-visible {
  background-color: var(--stw-inchiostro) !important;
  border-color: var(--stw-inchiostro);
  color: var(--stw-carta) !important;
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-pillola .elementor-button:hover {
    background-color: var(--stw-inchiostro) !important;
    border-color: var(--stw-inchiostro);
    color: var(--stw-carta) !important;
  }
}

.elementor .e-con:has(> .stw-badge) {
  position: relative;
  max-width: 480px;
  margin-inline: auto;
}

@media (max-width: 1024px) {
  .elementor .e-con:has(> .stw-badge) {
    margin-inline: 0 auto;
  }
}

.e-con.stw-badge {
  position: absolute;
  left: max(6px, -6%);
  bottom: 10%;
  height: auto;
  width: auto;
  border-radius: 22px;
  background: var(--stw-carta);
  box-shadow: 0 20px 44px rgb(from var(--stw-inchiostro) r g b / .13);
  padding: 0;
  animation:
    stw-badge-arriva 700ms cubic-bezier(0.23, 1, 0.32, 1) 200ms both,
    stw-badge-galleggia 7s ease-in-out 900ms infinite;
}

body:not(.elementor-editor-active) .e-con.stw-badge.stw-badge > .e-con-inner > .elementor-element.elementor-widget {
  animation: none;
}

@keyframes stw-badge-arriva {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

.e-con.stw-badge > .e-con-inner {
  padding: 16px 20px;
}

.stw-badge .elementor-heading-title {
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: var(--stw-display-badge-numero);
  line-height: 1;
  color: var(--stw-accento);
  max-width: none;
}

.stw-badge .elementor-widget-text-editor {
  margin-top: 7px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--stw-testo-secondario);
}

.stw-badge .elementor-widget-text-editor p {
  max-width: 15ch;
}

@keyframes stw-badge-galleggia {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

.elementor .stw-hero-split__immagine--arco img {
  border-radius: 999px 999px 26px 26px;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

@media (prefers-reduced-motion: no-preference) {
  body:not(.elementor-editor-active) .elementor-element:has(> #home) + .elementor-element .stw-hero-split__immagine--arco img {
    animation: stw-ritratto-assesta 1200ms cubic-bezier(0.23, 1, 0.32, 1) both;
  }
}

@keyframes stw-ritratto-assesta {
  from { transform: scale(1.03); }
  to { transform: none; }
}

.stw-pannello .elementor-counter-number-wrapper {
  font-family: var(--stw-font-titoli);
  font-weight: var(--stw-font-titoli-peso);
  font-size: var(--stw-display-numero-stat);
  line-height: 1;
  color: var(--stw-inchiostro);
}

.stw-pannello .elementor-counter-number-wrapper {
  justify-content: flex-start;
  text-align: start;
}

.stw-pannello .elementor-counter-number-prefix,
.stw-pannello .elementor-counter-number-suffix {
  flex-grow: 0;
}

@media (min-width: 768px) {
  .stw-pannello .e-con-inner:has(> .e-con > .e-con-inner > .elementor-widget-counter) {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: clamp(24px, 4vw, 56px);
  }

  .stw-pannello .e-con-inner:has(> .e-con > .e-con-inner > .elementor-widget-counter) > .e-con {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }
}

.stw-pannello .elementor-counter-title {
  justify-content: flex-start;
  text-align: start;
  margin-top: 10px;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 12px;
  line-height: 1.6;
  text-transform: none;
  letter-spacing: 0;
  color: var(--stw-testo-secondario);
  max-width: 18ch;
}

.e-n-accordion-item-title {
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: var(--stw-display-corpo-largo);
  text-transform: none;
  letter-spacing: 0;
  color: var(--stw-inchiostro);
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon {
  font-family: var(--stw-font-titoli);
  font-size: var(--stw-display-segno-faq);
  line-height: 1;
  color: var(--stw-accento);
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon svg {
  display: none;
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon::before {
  content: "+";
}

.stw-faq-stile-filetto .e-n-accordion-item.e-active .e-n-accordion-item-title-icon::before,
.stw-faq-stile-filetto .e-n-accordion-item[open] .e-n-accordion-item-title-icon::before {
  content: "\2212";
}

.e-n-accordion-item {
  border-top: 1px solid rgb(from var(--stw-inchiostro) r g b / .12);
}

.e-n-accordion-item:last-child {
  border-bottom: 1px solid rgb(from var(--stw-inchiostro) r g b / .12);
}

.elementor-widget-n-accordion .e-n-accordion-item-title,
.elementor-widget-n-accordion .e-n-accordion-item > .e-con {
  border: 0;
  border-radius: 0;
}

.e-n-accordion-item > .e-con {
  padding-inline: 10px;
}

.stw-sticky {
  position: sticky;
  top: calc(var(--stw-header-h) + 20px);
}

@media (max-width: 1024px) {
  .stw-sticky {
    position: static;
  }
}

.elementor .stw-project-grid__card {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "immagine immagine"
    "titolo anno"
    "tipo tipo";
  column-gap: 12px;
  row-gap: 6px;
}

.elementor .stw-project-grid__immagine {
  grid-area: immagine;
}

.elementor .stw-project-grid__card .stw-project-grid__immagine {
  border: 0;
  border-radius: clamp(18px, 2.2vw, 26px);
  overflow: hidden;
}

.elementor .stw-project-grid__card .stw-project-grid__immagine img {
  border-radius: 0;
}

.elementor .stw-project-grid__titolo {
  grid-area: titolo;
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: var(--stw-display-h3-lavoro);
  line-height: 1.2;
}

.elementor .stw-project-grid__nota {
  grid-area: anno;
  align-self: baseline;
  justify-self: end;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 12px;
  color: var(--stw-testo-secondario);
}

.elementor .stw-project-grid__tipo {
  grid-area: tipo;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0;
  text-transform: none;
  color: var(--stw-testo-secondario);
}

.elementor .stw-project-grid__filtro {
  border-radius: var(--stw-raggio-pulsante);
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 12px;
  letter-spacing: .04em;
}

.elementor .stw-project-grid__filtro.is-attivo {
  background: var(--stw-inchiostro);
  color: var(--stw-carta);
  border-color: var(--stw-inchiostro);
}

.elementor-widget-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: clamp(18px, 2.2vw, 26px);
}

.stw-pannello .elementor-widget-image img {
  border-radius: clamp(20px, 2.4vw, 32px);
}

.elementor .stw-marquee-band__voce {
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-weight: 300;
  font-size: clamp(28px, 3.6vw, 48px);
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;

  color: rgb(from var(--stw-accento) r g b / .75);
}

.elementor .stw-marquee-band--separatore-punto .stw-marquee-band__voce:not(:last-child)::after {
  font-style: normal;
  color: var(--stw-accento-decorativo);
}

.elementor-element:has(> #works) + .elementor-element {
  padding-block-end: clamp(24px, 3vw, 40px);
}

.elementor-element:has(> #works) + .elementor-element + .elementor-element > .elementor-widget-container > .stw-widget,
.elementor-element:has(> #works) + .elementor-element + .elementor-element > .stw-widget {
  padding-block-start: 0;
}

@media (min-width: 700px) and (max-width: 1024px) {
  .elementor .stw-card-grid__griglia {
    grid-template-columns: minmax(0, 1fr);
  }

  .elementor .stw-card-grid__card {
    min-height: 0;
  }

  .elementor .stw-card-grid__testo {
    max-width: 62ch;
  }
}

@media (max-width: 767px) {
  :root {
    --stw-etichetta: 13px;
  }

  .elementor .stw-project-grid__filtri {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .stw-badge .elementor-widget-text-editor,
  .stw-pannello .elementor-counter-title,
  .elementor .stw-project-grid__nota,
  .elementor .stw-project-grid__tipo,
  .elementor .stw-project-grid__filtro,
  .stw-card-grid__meta,
  .stw-timeline-skills__tag-voce,
  .stw-timeline-skills__nome {
    font-size: 14px;
  }

  .stw-timeline-skills__anni,
  .stw-timeline-skills__percentuale {
    font-size: 13px;
  }

  .stw-timeline-skills__luogo {
    font-size: 16px;
  }

  .stw-occhiello .elementor-heading-title,
  .stw-card-grid__intestazione-occhiello,
  .stw-occhiello-inline {
    letter-spacing: .14em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-widget-button .elementor-button,
  .stw-pulsante-riempito .elementor-button,
  .e-con.stw-badge {
    transition: none;
    animation: none;
  }

  .stw-pulsante-riempito .elementor-button:hover,
  .stw-pulsante-riempito .elementor-button:focus-visible,
  .stw-pulsante-contorno .elementor-button:hover,
  .stw-pulsante-contorno .elementor-button:focus-visible {
    transform: none;
  }

  .stw-evidenzia--gradiente {
    animation: none;
    background-position: 0% 50%;
  }
}

:root {
  --stw-su-accento: var(--stw-carta);
}

.stw-service-message__segno .elementor-icon {
  position: relative;
  width: 64px;
  height: 64px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
}

*:has(+ .stw-service-message__colonna-decorazione) {
  flex: 1 1 min(100%, 360px);
}

.stw-service-message__colonna-decorazione {
  flex: 1 1 min(100%, 280px);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(200px, 22vw, 340px);
}

.stw-service-message--centrato {
  margin-inline: auto;
}

.stw-service-message__barra {
  position: relative;
  margin: 26px auto 0;
  max-width: 280px;
  height: 2px;
  background: rgb(from var(--stw-inchiostro) r g b / .12);
  overflow: hidden;
}

.stw-service-message__barra::after {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--stw-accento-decorativo, var(--stw-accento));
  transform-origin: left;
  animation: stw-service-message-traccia 3.2s ease-in-out infinite;
}

@keyframes stw-service-message-traccia {
  0% { transform: scaleX(0); }
  100% { transform: scaleX(1); }
}

.stw-service-message__pannello {
  margin-top: clamp(26px, 3.4vw, 40px);
  text-align: left;
}

.stw-service-message__pannello:has(.stw-service-message__elenco--pillole) {
  padding-top: 20px;
  border-top: var(--stw-bordo);
}

.stw-service-message__pannello:has(.stw-service-message__elenco--righe) {
  padding: 22px;
  border: var(--stw-bordo);
  border-radius: var(--stw-raggio-pannello, var(--stw-raggio-card));
}

.stw-service-message__elenco {
  margin-top: 14px;
  display: flex;
}

.stw-service-message__elenco--righe .elementor-button {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 12px;
  border-bottom: var(--stw-bordo);
  font-size: 14px;
}

.stw-service-message__elenco--righe .elementor-button::after {
  content: '→';
  color: var(--stw-accento-testo, var(--stw-accento-decorativo, var(--stw-accento)));
  transition: transform var(--stw-hover-durata) var(--stw-ingresso-easing);
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__segno .elementor-icon::after,
  .stw-service-message__barra::after {
    animation: none;
  }
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__segno .elementor-icon::after {
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__barra::after {
    transform: scaleX(1);
  }
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__elenco--righe .elementor-button:hover::after,
  .stw-service-message__elenco--righe .elementor-button:focus-visible::after {
    transform: none;
  }
}

.site-header__mobile[hidden] {
  display: none;
}

.site-header {
  display: block;
  position: sticky;
  top: 0;
  z-index: var(--stw-z-intestazione, 90);
  background: rgb(from var(--stw-carta) r g b / .82);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.site-header__interno {
  display: flex;
  align-items: center;
  gap: 3%;
  padding-inline: var(--stw-margini-laterali);
  height: var(--stw-header-h);
  transition: height .5s var(--stw-ingresso-easing);
}

.site-header {
  transition: background-color .4s ease, backdrop-filter .4s ease;
}

.site-header.stw-testata-viva:not(.is-ridotto):not(:has(.site-header__mobile:not([hidden]))) {
  background: rgb(from var(--stw-carta) r g b / 0);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.site-header.is-ridotto .site-header__interno {
  height: var(--stw-header-h-ridotto);
}

.site-header__marchio {
  display: flex;
  align-items: center;
  gap: 11px;
  flex: 0 0 auto;
  color: var(--stw-inchiostro);
  text-decoration: none;
}

.site-header__marchio img {
  display: block;
  width: auto;
  height: 30px;
  max-width: 180px;
  object-fit: contain;

  animation: stw-logo-pulsa 6s ease-in-out infinite;
}

@keyframes stw-logo-pulsa {
  0%, 100% { opacity: .8; }
  50% { opacity: 1; }
}

.site-header__nav {
  display: none;
  align-items: center;
  gap: clamp(12px, 1.9vw, 28px);
  flex: 1 1 auto;
  justify-content: flex-end;
}

@media (min-width: 1024px) {
  .site-header__nav {
    display: flex;
  }
}

.site-header__nav-voce {
  position: relative;

  white-space: nowrap;
  padding-bottom: 5px;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 13px;
  letter-spacing: .03em;
  color: var(--stw-inchiostro);
  text-decoration: none;
  transition: color .35s ease;
}

.site-header__nav-voce:focus-visible {
  color: var(--stw-accento);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__nav-voce:hover {
    color: var(--stw-accento);
  }
}

.site-header__nav-filo {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: var(--stw-accento-decorativo);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .45s var(--stw-ingresso-easing);
}

.site-header__nav-voce.is-attivo {
  color: var(--stw-accento);
}

.site-header__nav-voce.is-attivo .site-header__nav-filo {
  transform: scaleX(1);
}

.site-header__cta {
  flex: 0 0 auto;
  background: var(--stw-inchiostro);
  color: var(--stw-carta);
  border-radius: var(--stw-raggio-pulsante);
  padding: 13px 22px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 12px;
  letter-spacing: .04em;
  text-decoration: none;
  transition: transform .45s var(--stw-ingresso-easing), box-shadow .45s ease;
}

.site-header__cta:focus-visible {
  color: var(--stw-carta);
  transform: translateY(-2px);
  box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__cta:hover {
    color: var(--stw-carta);
    transform: translateY(-2px);
    box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
  }
}

.site-header__toggle {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  margin-inline-start: auto;
  border-radius: 50%;
  background: none;
  border: 1px solid rgb(from var(--stw-inchiostro) r g b / .18);
  cursor: pointer;
}

@media (min-width: 1024px) {
  .site-header__toggle {
    display: none;
  }
}

.site-header__toggle span {
  display: block;
  width: 16px;
  height: 1px;
  background: var(--stw-inchiostro);
  transition: transform 260ms cubic-bezier(0.23, 1, 0.32, 1);
}

.site-header__toggle[aria-expanded="true"] span:first-child {
  transform: translateY(3px) rotate(45deg);
}

.site-header__toggle[aria-expanded="true"] span:last-child {
  transform: translateY(-3px) rotate(-45deg);
}

@media (prefers-reduced-motion: reduce) {
  .site-header__toggle span {
    transition: none;
  }
}

.site-header__mobile {
  display: flex;
  flex-direction: column;
  padding: 4px var(--stw-margini-laterali) 22px;
}

@media (min-width: 1024px) {
  .site-header__mobile {
    display: none !important;
  }
}

.site-header__mobile-voce {
  padding: 14px 0;
  border-bottom: 1px solid rgb(from var(--stw-inchiostro) r g b / .08);
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: 23px;
  color: var(--stw-inchiostro);
  text-decoration: none;
}

.site-header__mobile-voce.is-attivo {
  color: var(--stw-accento);
}

.site-header__mobile-cta {
  display: block;
  margin-top: 14px;
  background: var(--stw-inchiostro);
  color: var(--stw-carta);
  border-radius: var(--stw-raggio-pulsante);
  text-align: center;
  padding: 15px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 14px;
  text-decoration: none;
  transition: transform .45s var(--stw-ingresso-easing), box-shadow .45s ease;
}

.site-header__mobile-cta:focus-visible {
  color: var(--stw-carta);
  transform: translateY(-2px);
  box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__mobile-cta:hover {
    color: var(--stw-carta);
    transform: translateY(-2px);
    box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
  }
}

.elementor-menu-anchor {
  scroll-margin-top: 120px;
}

#colophon {
  background: var(--stw-carta-alt);
  color: var(--stw-testo-secondario);
}

#colophon .elementor > .elementor-element.stw-footer {
  padding: 0;
}

#colophon .stw-footer__colonne {
  padding-inline: var(--stw-margini-laterali);
  padding-block: clamp(26px, 3.4vw, 52px) clamp(18px, 2.4vw, 32px);
}

#colophon .stw-footer__marchio-nome .elementor-heading-title {
  display: flex;
  align-items: center;
  gap: 11px;
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: 24px;
  line-height: 1;
  max-width: none;
  color: var(--stw-inchiostro);
}

#colophon .stw-footer__marchio-nome .elementor-heading-title::before {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

#colophon .stw-footer__payoff.elementor-widget-text-editor p {
  max-width: 34ch;
  font-size: 14px;
  line-height: 1.75;
}

@media (max-width: 767px) {
  #colophon .stw-footer__payoff.elementor-widget-text-editor p {
    font-size: 16px;
  }
}

#colophon .stw-footer__lista.elementor-widget-text-editor {
  margin-block-start: 16px;
}

#colophon .stw-footer__lista.elementor-widget-text-editor p {
  max-width: none;
  font-size: 14px;
  line-height: 1.4;
}

#colophon .stw-footer__lista.elementor-widget-text-editor p + p {
  margin-block-start: 10px;
}

#colophon .stw-footer__lista a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: rgb(from currentcolor r g b / .4);
}

#colophon .stw-footer__lista a:focus-visible {
  color: var(--stw-accento);
  text-decoration-color: currentcolor;
}

@media (hover: hover) and (pointer: fine) {
  #colophon .stw-footer__lista a:hover {
    color: var(--stw-accento);
    text-decoration-color: currentcolor;
  }
}

#colophon .stw-footer__legale {
  padding-inline: var(--stw-margini-laterali);
  padding-block: 18px;
  border-top: 1px solid rgb(from var(--stw-inchiostro) r g b / .1);
}

#colophon .stw-footer__legale-testo .elementor-heading-title {
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 13px;
  line-height: 1.6;
  max-width: none;
  text-transform: none;
  color: var(--stw-testo-secondario);
}

.site-footer.stw-footer-ripiego {
  background: var(--stw-carta-alt);
  color: var(--stw-inchiostro);
  padding: 24px var(--stw-margini-laterali);
  font-family: var(--stw-font-testo);
  font-size: 12px;
}

.stw-barra-lettura {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--stw-accento-decorativo);
  z-index: var(--stw-z-lettura, 9996);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .14s linear;
  pointer-events: none;
}

.elementor-element:has(> #home) + .elementor-element,
.elementor-element:has(> #contact) + .elementor-element {
  position: relative;

  overflow-x: clip;
}

.elementor-element:has(> #home) + .elementor-element::before,
.elementor-element:has(> #home) + .elementor-element::after,
.elementor-element:has(> #contact) + .elementor-element::before {
  content: "";
  position: absolute;
  inset: auto;
  height: auto;
  aspect-ratio: 1 / 1;
  border: 0;
  border-radius: 50%;
  opacity: 1;
  mix-blend-mode: normal;
  pointer-events: none;
  z-index: 0;
  transition: none;
  animation: stw-deriva 24s ease-in-out infinite;
}

.elementor-element:has(> #home) + .elementor-element::before {
  top: -90px;
  right: -9%;
  width: clamp(260px, 42vw, 620px);
  background: radial-gradient(circle closest-side, rgb(from var(--stw-accento-su-scuro) r g b / .85), rgb(from var(--stw-accento-su-scuro) r g b / 0));
  animation-duration: 22s;
}

.elementor-element:has(> #home) + .elementor-element::after {
  bottom: -12%;
  left: -10%;
  width: clamp(200px, 30vw, 440px);
  background: radial-gradient(circle closest-side, rgb(from var(--stw-resume-pannello) r g b / .8), rgb(from var(--stw-resume-pannello) r g b / 0));
  animation-duration: 27s;
  animation-direction: reverse;
}

.elementor-element:has(> #contact) + .elementor-element::before {
  bottom: 0;
  right: -10%;
  width: clamp(220px, 32vw, 480px);
  background: radial-gradient(circle closest-side, rgb(from var(--stw-accento-su-scuro) r g b / .7), rgb(from var(--stw-accento-su-scuro) r g b / 0));
}

.elementor-element:has(> #home) + .elementor-element > *,
.elementor-element:has(> #contact) + .elementor-element > * {
  position: relative;
  z-index: 1;
}

@keyframes stw-deriva {
  0% { transform: translate(0, 0) scale(1); }
  33% { transform: translate(14px, -22px) scale(1.05); }
  66% { transform: translate(-12px, 12px) scale(.97); }
  100% { transform: translate(0, 0) scale(1); }
}

@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) {

    .elementor-element:has(> #home) + .elementor-element::before,
    .elementor-element:has(> #home) + .elementor-element::after {
      animation-name: stw-deriva, stw-macchia-profondita;
      animation-duration: 22s, auto;
      animation-timing-function: ease-in-out, linear;
      animation-iteration-count: infinite, 1;
      animation-direction: normal, normal;
      animation-fill-mode: none, both;
      animation-timeline: auto, scroll(root);
      animation-range: normal, 0 100vh;
    }

    .elementor-element:has(> #home) + .elementor-element::before {
      --stw-profondita: 110px;
    }

    .elementor-element:has(> #home) + .elementor-element::after {
      --stw-profondita: 40px;
      animation-duration: 27s, auto;
      animation-direction: reverse, normal;
    }
  }
}

@keyframes stw-macchia-profondita {
  from { translate: 0 0; }
  to { translate: 0 var(--stw-profondita, 0); }
}

@supports (view-timeline-name: --x) {
  @media (prefers-reduced-motion: no-preference) {

    .elementor > .elementor-element.stw-pannello:has(.elementor-widget-image) {
      view-timeline-name: --stw-foto-pannello;
    }

    .elementor .stw-pannello .elementor-widget-image {
      overflow: clip;
      border-radius: clamp(20px, 2.4vw, 32px);
    }

    .elementor .stw-pannello .elementor-widget-image img {
      scale: 1.12;
      animation: stw-foto-profondita linear both;
      animation-timeline: --stw-foto-pannello;
      animation-range: cover 0% cover 100%;
    }
  }
}

@keyframes stw-foto-profondita {
  from { translate: 0 -5%; }
  to { translate: 0 5%; }
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__riga {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0;
  border: 0;

  min-block-size: 44px;
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__marcatore {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  flex: 0 0 auto;
  color: transparent;
  font-size: 0;
}

.elementor-element:has(> #contact) + .elementor-element .elementor-widget-stw-list-rows:nth-child(1 of .elementor-widget-stw-list-rows) .stw-list-rows__marcatore {
  background: var(--stw-carta-alt);
}

.elementor-element:has(> #contact) + .elementor-element .elementor-widget-stw-list-rows:nth-child(2 of .elementor-widget-stw-list-rows) .stw-list-rows__marcatore {
  background: var(--stw-resume-pannello);
}

.elementor-element:has(> #contact) + .elementor-element .elementor-widget-stw-list-rows:nth-child(3 of .elementor-widget-stw-list-rows) .stw-list-rows__marcatore {
  background: #E9F0EA;
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__titolo {
  margin: 0;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.4;
  color: var(--stw-inchiostro);
  overflow-wrap: anywhere;
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows,
.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__riga {
  background: transparent;
}

@media (prefers-reduced-motion: reduce) {
  .site-header__interno,
  .site-header__nav-filo,
  .site-header__cta,
  .stw-barra-lettura,
  .site-header__marchio img,
  .elementor-element:has(> #home) + .elementor-element::before,
  .elementor-element:has(> #home) + .elementor-element::after,
  .elementor-element:has(> #contact) + .elementor-element::before {
    transition: none;
    animation: none;
  }

  .site-header__cta:hover,
  .site-header__cta:focus-visible {
    transform: none;
  }
}

.stw-pagina-legale {
  padding: var(--stw-padding-sezione) var(--stw-margini-laterali);
}

.stw-service-message__segno .elementor-icon::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid var(--stw-accento-decorativo, var(--stw-accento));
  animation: stw-service-message-pulsa 2.6s ease-out infinite;
}

@keyframes stw-service-message-pulsa {
  0%, 100% { transform: scale(1); opacity: .5; }
  50% { transform: scale(1.35); opacity: 0; }
}

.stw-service-message__cifra .elementor-heading-title {
  font-family: var(--stw-font-titoli);
  font-weight: var(--stw-font-titoli-peso);
  font-size: clamp(120px, 20vw, 320px);
  line-height: .8;
  letter-spacing: -0.06em;
  color: rgb(from var(--stw-inchiostro) r g b / .07);
  text-align: center;
  max-width: none;
}

html body:not(.elementor-editor-active) .elementor .e-con.stw-service-message__barra {
  display: block;
}

.stw-service-message--centrato h1.elementor-heading-title,
.e-con-inner:has(> .stw-service-message__pannello) h1.elementor-heading-title {
  text-wrap: balance;
}

.elementor .stw-service-message--centrato > .e-con-inner:has(> .elementor-widget-button + .elementor-widget-button),
.elementor .e-con-inner:has(> .stw-service-message__pannello):has(> .elementor-widget-button + .elementor-widget-button) {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 12px;
}

.elementor .stw-service-message--centrato > .e-con-inner:has(> .elementor-widget-button + .elementor-widget-button) {
  justify-content: center;
}

.elementor .stw-service-message--centrato > .e-con-inner:has(> .elementor-widget-button + .elementor-widget-button) > :not(.elementor-widget-button),
.elementor .e-con-inner:has(> .stw-service-message__pannello):has(> .elementor-widget-button + .elementor-widget-button) > :not(.elementor-widget-button) {
  flex: 0 0 100%;
}

.elementor .stw-service-message--centrato > .e-con-inner > .elementor-widget-button,
.elementor .e-con-inner:has(> .stw-service-message__pannello) > .elementor-widget-button {
  flex: 0 0 auto;
  width: auto;
}

.stw-service-message__elenco--pillole.e-con {
  --flex-direction: row;
  --flex-wrap: wrap;
}

.stw-service-message__elenco--pillole,
.stw-service-message__elenco--pillole > .e-con-inner {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
}

.stw-service-message__elenco--righe {
  flex-direction: column;
  gap: 12px;
}

.stw-service-message__elenco--righe > :last-child > .elementor-element:last-child .elementor-button,
.stw-service-message__elenco--righe > .elementor-element:last-child > .elementor-widget-container .elementor-button {
  border-bottom: 0;
  padding-bottom: 0;
}

.stw-service-message__elenco--righe .elementor-button:focus-visible::after {
  transform: translateX(6px);
}

@media (hover: hover) and (pointer: fine) {
  .stw-service-message__elenco--righe .elementor-button:hover::after {
    transform: translateX(6px);
  }
}

.stw-documento-legale__tabella th,
.stw-documento-legale__tabella td {
  border: 0;
  border-bottom: 1px solid rgb(from var(--stw-inchiostro) r g b / .12);
}

.stw-documento-legale__tabella th {
  border-bottom-color: rgb(from var(--stw-inchiostro) r g b / .24);
  font-weight: var(--stw-font-testo-peso-forte);
}

.stw-documento-legale__tabella tbody > tr:nth-child(n) > td,
.stw-documento-legale__tabella tbody > tr:nth-child(n) > th {
  background: transparent;
}

.stw-documento-legale__occhiello {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 10px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  letter-spacing: .24em;
  color: var(--stw-accento);
}

.stw-documento-legale__occhiello::before {
  content: "";
  display: block;
  width: 22px;
  height: 1px;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

[data-stw-cifre] > .e-con {
  opacity: 0;
  transform: translateY(8px);
}

[data-stw-cifre].is-dentro > .e-con {
  opacity: 1;
  transform: none;
  transition:
    opacity 600ms cubic-bezier(0.23, 1, 0.32, 1),
    transform 600ms cubic-bezier(0.23, 1, 0.32, 1);
}

[data-stw-cifre].is-dentro > .e-con:nth-child(2) { transition-delay: 90ms; }
[data-stw-cifre].is-dentro > .e-con:nth-child(3) { transition-delay: 180ms; }

@media (prefers-reduced-motion: reduce) {
  [data-stw-cifre] > .e-con {
    opacity: 1;
    transform: none;
  }
}

@media (min-width: 1024px) {
  .site-header__interno {
    height: auto;
    min-height: var(--stw-header-h);
    transition: min-height .5s var(--stw-ingresso-easing);
  }

  .site-header.is-ridotto .site-header__interno {
    height: auto;
    min-height: var(--stw-header-h-ridotto);
  }

  .site-header__nav {
    min-width: 0;
    flex-wrap: wrap;
    row-gap: 4px;
  }
}

:root {

  --stw-grana: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .23 0 0 0 0 .2 0 0 0 0 .22 .22 0 0 0 -.1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");

  --stw-ombra-riposo:
    0 1px 2px rgb(from var(--stw-accento) r g b / .05),
    0 10px 28px -16px rgb(from var(--stw-accento) r g b / .22);
  --stw-ombra-sollevata:
    0 2px 6px rgb(from var(--stw-accento) r g b / .06),
    0 28px 56px -24px rgb(from var(--stw-accento) r g b / .34);
  --stw-ombra-primo-piano:
    0 2px 8px rgb(from var(--stw-inchiostro) r g b / .04),
    0 44px 90px -36px rgb(from var(--stw-accento) r g b / .40);
  --stw-luce-bordo: inset 0 1px 0 rgb(from var(--stw-carta) r g b / .9);
  --stw-curva: cubic-bezier(0.23, 1, 0.32, 1);
}

body {
  background-image: var(--stw-grana);
}

.elementor .stw-widget.stw-sfondo-carta {
  background-color: transparent;
}

#colophon {
  background-image: var(--stw-grana);
}

.elementor > .elementor-element.stw-pannello {
  background-image:
    radial-gradient(55% 60% at 0% 100%, rgb(from var(--stw-resume-pannello) r g b / .9), rgb(from var(--stw-resume-pannello) r g b / 0) 70%),
    radial-gradient(45% 55% at 100% 0%, rgb(from var(--stw-carta) r g b / .75), rgb(from var(--stw-carta) r g b / 0) 70%),
    var(--stw-grana);
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.elementor-element:has(> #resume) + .elementor-element {
  overflow: clip;
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.elementor-element:has(> #resume) + .elementor-element > .elementor-widget-container > .stw-widget {
  background-image:
    radial-gradient(50% 60% at 100% 0%, rgb(from var(--stw-accento-su-scuro) r g b / .38), rgb(from var(--stw-accento-su-scuro) r g b / 0) 70%),
    radial-gradient(45% 50% at 0% 100%, rgb(from var(--stw-carta) r g b / .7), rgb(from var(--stw-carta) r g b / 0) 70%),
    var(--stw-grana);
}

.elementor .stw-card-grid__griglia {
  counter-reset: stw-servizio;
}

.elementor .stw-card-grid__card {
  counter-increment: stw-servizio;
  background-color: var(--stw-carta-alt);
  background-image:
    linear-gradient(165deg, rgb(from var(--stw-carta) r g b / .85), rgb(from var(--stw-carta) r g b / 0) 60%),
    var(--stw-grana);
  border-color: rgb(from var(--stw-accento) r g b / .1);
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.elementor .stw-card-grid__card::after {
  content: counter(stw-servizio, decimal-leading-zero) / "";
  position: absolute;
  top: clamp(14px, 1.6vw, 22px);
  right: clamp(20px, 2.2vw, 30px);
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-weight: 300;
  font-size: clamp(56px, 5.4vw, 84px);
  line-height: 1;
  color: rgb(from var(--stw-accento) r g b / .12);
  pointer-events: none;
  transition: color var(--stw-hover-durata) ease, transform var(--stw-hover-durata) var(--stw-curva);
}

.elementor .stw-card-grid__card::before {
  height: 2px;
  background: linear-gradient(90deg, var(--stw-accento-decorativo), rgb(from var(--stw-accento-decorativo) r g b / 0));
}

.elementor .stw-card-grid__decorazione {
  width: 40px;
  height: 40px;
  border-radius: 58% 42% 55% 45% / 48% 56% 44% 52%;
  box-shadow: 12px 7px 0 -5px var(--stw-card-grid-decorazione);
  transition: transform var(--stw-hover-durata) var(--stw-curva);
}

.elementor .stw-card-grid__decorazione::before {

  display: none;
}

.elementor .stw-card-grid__meta {
  align-self: stretch;
  padding-top: 16px;
  border-top: 1px solid rgb(from var(--stw-accento) r g b / .14);
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(20px, 1.7vw, 23px);
  letter-spacing: 0;
  color: var(--stw-accento);
}

.elementor .stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:focus-visible {
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-sollevata);
}

@media (hover: hover) and (pointer: fine) {
  .elementor .stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:hover {
    transform: translateY(-6px);
    box-shadow: var(--stw-luce-bordo), var(--stw-ombra-sollevata);
  }

  .elementor .stw-card-grid__card:hover::after {
    color: rgb(from var(--stw-accento) r g b / .2);
    transform: translateY(-3px);
  }

  .elementor .stw-card-grid__card:hover .stw-card-grid__decorazione {
    transform: rotate(-8deg) scale(1.06);
  }
}

.elementor .stw-timeline-skills__tappe {
  position: relative;
  padding-left: 28px;
}

.elementor .stw-timeline-skills__tappa {
  position: relative;
  border-top-color: rgb(from var(--stw-inchiostro) r g b / .07);
}

.elementor .stw-timeline-skills__tappa::before {
  content: "";
  position: absolute;
  left: -28px;
  top: 26px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--stw-resume-pannello);
  border: 1px solid var(--stw-accento-decorativo);
}

.elementor .stw-timeline-skills__tappa:not(:last-child)::after {
  content: "";
  position: absolute;
  left: -24px;
  top: 35px;
  bottom: -26px;
  width: 1px;
  background: linear-gradient(to bottom, var(--stw-accento-decorativo), rgb(from var(--stw-accento-decorativo) r g b / .35));
  transform-origin: top;
}

.elementor .stw-timeline-skills__tappa:first-child::before {
  background: var(--stw-accento-decorativo);
  box-shadow: 0 0 0 5px rgb(from var(--stw-accento-decorativo) r g b / .18);
}

@media (max-width: 1024px) {
  .elementor .stw-timeline-skills__tappa {
    flex-direction: column;
    gap: 6px;
  }

  .elementor .stw-timeline-skills__tappa::before {
    top: 24px;
  }

  .elementor .stw-timeline-skills__tappa:not(:last-child)::after {
    top: 33px;
    bottom: -24px;
  }
}

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .elementor .stw-timeline-skills__tappa:not(:last-child)::after {
      animation: stw-filo-percorso linear both;
      animation-timeline: view();
      animation-range: cover 25% cover 55%;
    }
  }
}

@keyframes stw-filo-percorso {
  from { transform: scaleY(0); }
  to { transform: scaleY(1); }
}

.elementor .stw-timeline-skills__percentuale {
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-size: 17px;
  color: var(--stw-accento);
}

.elementor .stw-timeline-skills__tag-voce {
  background: rgb(from var(--stw-carta) r g b / .65);
  border-color: rgb(from var(--stw-accento) r g b / .12);
  box-shadow: 0 1px 2px rgb(from var(--stw-accento) r g b / .06);
}

.stw-faq-stile-filetto .e-n-accordion-item {
  transition: background-color .35s ease, box-shadow .35s ease;
}

.stw-faq-stile-filetto .e-n-accordion-item-title {
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
}

.stw-faq-stile-filetto .e-n-accordion-item-title-text {
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: clamp(20px, 1.55vw, 23px);
  line-height: 1.3;
  color: var(--stw-inchiostro);
  transition: color .3s ease;
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon {
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgb(from var(--stw-accento) r g b / .28);
  font-size: 22px;
  transition: background-color .3s ease, color .3s ease, border-color .3s ease;
}

.stw-faq-stile-filetto .e-n-accordion-item[open] {
  border-radius: 22px;
  background-color: var(--stw-carta-alt);
  background-image: var(--stw-grana);
  border-color: transparent;
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.stw-faq-stile-filetto .e-n-accordion-item[open] + .e-n-accordion-item {
  border-top-color: transparent;
}

.stw-faq-stile-filetto .e-n-accordion-item[open] .e-n-accordion-item-title-icon {
  background: var(--stw-accento);
  border-color: var(--stw-accento);
  color: var(--stw-carta);
}

.stw-faq-stile-filetto .e-n-accordion-item > .e-con {
  padding: 0 20px 24px 68px;
}

@media (max-width: 767px) {
  .stw-faq-stile-filetto .e-n-accordion-item-title {
    padding: 16px 14px;
    gap: 14px;
  }

  .stw-faq-stile-filetto .e-n-accordion-item > .e-con {
    padding: 0 14px 22px;
  }
}

@media (hover: hover) and (pointer: fine) {
  .stw-faq-stile-filetto .e-n-accordion-item-title:hover .e-n-accordion-item-title-text {
    color: var(--stw-accento);
  }

  .stw-faq-stile-filetto .e-n-accordion-item:not([open]) .e-n-accordion-item-title:hover .e-n-accordion-item-title-icon {
    border-color: var(--stw-accento);
  }
}

.elementor .stw-project-grid__card .stw-project-grid__immagine {
  position: relative;
  isolation: isolate;
  box-shadow: var(--stw-ombra-riposo);
  transition: box-shadow var(--stw-hover-durata) ease;
}

.elementor .stw-project-grid__card .stw-project-grid__immagine::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgb(from var(--stw-accento) r g b / .34), rgb(from var(--stw-accento) r g b / 0) 55%);
  opacity: 0;
  transition: opacity var(--stw-hover-durata) ease;
  pointer-events: none;
}

.elementor .stw-project-grid__titolo {
  justify-self: start;
  background: linear-gradient(var(--stw-accento-decorativo), var(--stw-accento-decorativo)) no-repeat 0 100% / 0 1px;
  transition: background-size .5s var(--stw-curva), color .3s ease;
}

.elementor .stw-project-grid__tipo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.elementor .stw-project-grid__tipo::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--stw-accento-decorativo);
}

@media (hover: hover) and (pointer: fine) {
  .elementor .stw-project-grid__card:hover .stw-project-grid__immagine {
    box-shadow: var(--stw-ombra-sollevata);
  }

  .elementor .stw-project-grid__card:hover .stw-project-grid__immagine::after {
    opacity: 1;
  }

  .elementor .stw-project-grid__card:hover .stw-project-grid__titolo {
    background-size: 100% 1px;
    color: var(--stw-accento);
  }
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .elementor .stw-project-grid__card:hover .stw-project-grid__immagine img {
    transform: scale(1.04);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .elementor .stw-widget--project-grid[data-stw-init] .stw-project-grid__card {
    animation: stw-lavoro-appare 520ms var(--stw-curva) both;
  }

  .elementor .stw-project-grid__card:nth-child(3n + 2) { animation-delay: 50ms; }
  .elementor .stw-project-grid__card:nth-child(3n) { animation-delay: 100ms; }
}

@keyframes stw-lavoro-appare {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: none; }
}

.elementor-element:has(> #contact) + .elementor-element .e-con:has(> .elementor-element .forminator-ui) {
  padding: clamp(22px, 3vw, 44px);
  border-radius: clamp(24px, 3vw, 36px);
  background-color: var(--stw-carta-alt);
  background-image:
    radial-gradient(60% 45% at 100% 0%, rgb(from var(--stw-accento-su-scuro) r g b / .45), rgb(from var(--stw-accento-su-scuro) r g b / 0) 70%),
    var(--stw-grana);
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-primo-piano);
}

.elementor-element:has(> #contact) + .elementor-element .forminator-ui.forminator-ui.forminator-custom-form {
  --stw-modulo-campo: var(--stw-carta);
}

.elementor-element:has(> #contact) + .elementor-element .forminator-ui.forminator-ui.forminator-custom-form .forminator-response-message {
  background: var(--stw-carta);
  border-radius: 0 14px 14px 0;
}

@media (prefers-reduced-motion: reduce) {
  .elementor .stw-card-grid__card::after,
  .elementor .stw-card-grid__decorazione,
  .elementor .stw-project-grid__titolo {
    transition: none;
  }

  .elementor .stw-card-grid__card:hover::after,
  .elementor .stw-card-grid__card:hover .stw-card-grid__decorazione,
  .elementor .stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:hover {
    transform: none;
  }
}

/*
 Theme Name:        Storytime Personale (05)
 Theme URI:         https://story-time.it
 Description:       Sito per illustratori, fotografi, coach e servizi alla persona. Una pagina sola che scorre a capitoli, toni tenui, galleria dei lavori e modulo di contatto guidato.
 Author:            Storytime Websites
 Author URI:        https://story-time.it
 Template:          hello-elementor
 Version:           0.1.0
 Requires PHP:      8.2
 Requires at least: 6.0
 Text Domain:       stw-personale
*/

:where(a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {

	outline: 3px solid var(--stw-inchiostro, #0c1116);
	outline-offset: 3px;
	box-shadow: 0 0 0 3px var(--stw-carta, #f5f4f1);
}

.skip-link:focus,
.skip-link:focus-visible {
	position: fixed !important;
	inset-block-start: 12px;
	inset-inline-start: 12px;
	z-index: var(--stw-z-fuoco, 10000);
	width: auto !important;
	height: auto !important;
	padding: 12px 18px;
	clip: auto !important;
	clip-path: none !important;
	background: var(--stw-inchiostro, #0c1116);
	color: var(--stw-carta, #f5f4f1);
	font-family: var(--stw-font-testo, sans-serif);
	font-size: 14px;
	text-decoration: none;
}

.elementor a:focus-visible,
.elementor button:focus-visible {
	box-shadow: 0 0 0 3px var(--stw-carta, #f5f4f1);
}

.splide .splide__pagination__page:focus-visible {
	outline: 3px solid var(--stw-inchiostro, #0c1116);
	outline-offset: 3px;
	box-shadow: 0 0 0 3px var(--stw-carta, #f5f4f1);
}

:root {
	--stw-mv-esce: cubic-bezier(0.23, 1, 0.32, 1);
	--stw-mv-durata: 720ms;
	--stw-mv-passo: 70ms;
}

@keyframes stw-mv-sale {
	from {
		opacity: 0;
		transform: translate3d(0, 18px, 0);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes stw-mv-assesta {
	from {
		transform: scale(1.045);
	}
	to {
		transform: none;
	}
}

@media (prefers-reduced-motion: no-preference) {
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) :is(
		.elementor-widget-heading,
		.elementor-widget-text-editor,
		.elementor-widget-button,
		.elementor-widget-icon-list
	) {
		animation: stw-mv-sale var(--stw-mv-durata) var(--stw-mv-esce) both;
	}

	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(2 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 1); }
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(3 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 2); }
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(4 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 3); }
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(n + 5 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 4); }

	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-widget-image img {
		animation: stw-mv-assesta 1400ms var(--stw-mv-esce) both;
	}
}

[data-stw-entra] {
	opacity: 0;
	transform: translate3d(0, 22px, 0);
}

[data-stw-entra].is-dentro {
	opacity: 1;
	transform: none;
	transition:
		opacity var(--stw-mv-durata) var(--stw-mv-esce),
		transform var(--stw-mv-durata) var(--stw-mv-esce);
	transition-delay: calc(var(--stw-mv-indice, 0) * var(--stw-mv-passo));
}

@media (prefers-reduced-motion: reduce) {
	[data-stw-entra] {
		transform: none;
	}

	[data-stw-entra].is-dentro {
		transition: opacity 240ms ease;
		transition-delay: 0ms;
	}
}

:is(.elementor-button, .stw-pulsante, .stw-cookie__pulsante, .stw-modulo button[type="submit"], .forminator-button-submit) {
	transition-property: transform, background-color, color, border-color, box-shadow, opacity;
	transition-duration: 160ms;
	transition-timing-function: ease-out;
}

:is(.elementor-button, .stw-pulsante, .stw-cookie__pulsante, .stw-modulo button[type="submit"], .forminator-button-submit):active {
	transform: scale(0.97);
}

#site-header {
	transition: box-shadow 240ms ease;
}

html[data-stw-scorso] #site-header {
	box-shadow: 0 10px 28px -20px color-mix(in srgb, var(--stw-inchiostro, #222) 55%, transparent);
}

@media (prefers-reduced-motion: reduce) {
	:is(.elementor-button, .stw-pulsante, .stw-cookie__pulsante):active {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.elementor-background-video-container {
		display: none;
	}
}

@view-transition {
	navigation: auto;
}

#site-header {
	view-transition-name: stw-testata;
}

::view-transition-old(root),
::view-transition-new(root) {
	animation-duration: 280ms;
	animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
}

@media (prefers-reduced-motion: reduce) {
	@view-transition {
		navigation: none;
	}
}

[data-stw-svela] img {
	clip-path: inset(0 0 100% 0);
	transform: scale(1.06);
}

[data-stw-svela].is-dentro img {
	clip-path: inset(0 0 0 0);
	transform: none;
	transition:
		clip-path 1100ms cubic-bezier(0.77, 0, 0.175, 1),
		transform 1400ms cubic-bezier(0.23, 1, 0.32, 1);
}

@media (prefers-reduced-motion: reduce) {
	[data-stw-svela] img,
	[data-stw-svela].is-dentro img {
		clip-path: none;
		transform: none;
		transition: none;
	}
}

:root {
	--stw-z-intestazione: 90;
	--stw-z-lettura: 9996;
	--stw-z-cookie-banner: 9997;
	--stw-z-cookie-velo: 9998;
	--stw-z-cookie-pannello: 9999;
	--stw-z-fuoco: 10000;
}

:where(.e-con .e-con) {
	--container-default-padding-left: 0px;
	--container-default-padding-right: 0px;
}

.site-header:not(.dynamic-header) {
	max-width: none;
	margin-inline: 0;
	padding-inline: 0;
	padding-block: 0;
}

.site-header__interno {
	flex: 1 1 100%;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	position: static !important;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	clip: auto;
	white-space: normal;
}

.stw-blocco-vuoto {
	margin: 0;
	padding: 18px 20px;
	border: 1px dashed rgba(127, 127, 127, 0.5);
	border-radius: 6px;
	background: rgba(127, 127, 127, 0.06);
	font-size: 14px;
	line-height: 1.5;
	color: inherit;
	opacity: 0.85;
}

body:not(.elementor-editor-active) .e-con:not(:has(.elementor-widget:not(:empty))):not(.stw-service-message__barra) {
	display: none;
}

details.e-n-accordion-item[open] {
	height: auto !important;
	overflow: visible !important;
}

@media (max-width: 1024px) {
	.elementor .elementor-element.stw-fascia-numeri--quattro.stw-fascia-numeri--quattro > .e-con-inner > .e-con,
	.elementor .elementor-element.stw-fascia-numeri--quattro.stw-fascia-numeri--quattro > .e-con {
		flex: 1 1 40%;
	}
}

@media (max-width: 480px) {
	.elementor .elementor-element.stw-fascia-numeri--quattro .elementor-counter-number-wrapper {
		font-size: clamp(36px, 11vw, 52px);
	}
}

.stw-superficie-inchiostro a:hover,
.stw-superficie-inchiostro a:focus-visible {
	color: inherit;
}

:where(.stw-widget, .splide, .stw-cookie, .stw-credito, .site-header, #colophon, .stw-mappa) :is(button, [type="button"], [type="submit"]) {
	color: inherit;
}

.splide__arrow:hover,
.splide__arrow:focus,
.stw-cookie__personalizza:hover,
.stw-cookie__personalizza:focus,
.stw-cookie__chiudi:hover,
.stw-cookie__chiudi:focus,
.stw-credito__preferenze:hover,
.stw-credito__preferenze:focus,
.site-header__interruttore:hover,
.site-header__interruttore:focus {
	background-color: revert-layer;
	color: inherit;
}

.stw-widget button:not(.elementor-button, .splide__pagination__page, [aria-pressed="true"], [aria-selected="true"], [aria-checked="true"]):hover,
.stw-widget button:not(.elementor-button, .splide__pagination__page, [aria-pressed="true"], [aria-selected="true"], [aria-checked="true"]):focus {
	background-color: transparent;
	color: inherit;
}

.page-content a,
.comments-area a {
	text-decoration: none;
}

.page-content :is(p, li, dd, blockquote) a,
.comments-area :is(p, li, dd) a,
.stw-documento-legale :is(p, li, dd, td) a {
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.elementor .elementor-element.stw-riga-pulsanti {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 12px;
	--row-gap: 12px;
	--column-gap: 12px;
	padding: 0;
}

.elementor .elementor-element.stw-riga-pulsanti > .elementor-widget-button {
	width: auto;
	margin: 0;
}

@media (max-width: 480px) {
	.elementor .elementor-element.stw-riga-pulsanti > .elementor-widget-button {
		flex: 1 1 auto;
	}

	.elementor .elementor-element.stw-riga-pulsanti > .elementor-widget-button .elementor-button {
		width: 100%;
		justify-content: center;
	}
}

:where(.elementor-menu-anchor) {
	scroll-margin-top: calc(var(--stw-header-h, 88px) + 16px);
}

.elementor-widget.stw-rotazione {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 768px), (pointer: coarse) {

	.site-header__marchio,
	.site-branding {
		gap: 12px;
	}

	.custom-logo-link,
	.site-header__marchio-nome,
	.site-branding .site-title a,
	.site-branding > a,
	a.site-branding {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	.site-header__fascia a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	#colophon .stw-footer__lista a,
	.site-footer .stw-footer__lista a {
		display: flex;
		align-items: center;
		min-height: 44px;
	}

	#colophon .stw-footer__lista p:not(:has(a)),
	.site-footer .stw-footer__lista p:not(:has(a)) {
		display: flex;
		align-items: center;
		min-height: 44px;
	}

	#colophon .stw-footer__lista p + p,
	.site-footer .stw-footer__lista p + p {
		margin-block-start: 0;
	}

	.stw-documento-legale__indice a {
		display: flex;
		align-items: center;
		min-height: 44px;
	}

	.stw-project-grid__filtro,
	.stw-post-list-rows__filtro,
	.stw-news-board__chip,
	.stw-news-board__link-archivio,
	.stw-post-grid__intestazione-link {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	a.elementor-button-link,
	.stw-pricing-cards__intestazione-link {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	a[href^="mailto:"]:not(p a),
	a[href^="tel:"]:not(p a) {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	.stw-cookie__personalizza,
	.stw-credito .stw-credito__preferenze {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
	}

	[class*="__briciole"] a {
		display: inline-block;
		padding-block: 13px;
		margin-block: -13px;
	}
}

.stw-project-grid__immagine,
.stw-post-grid__immagine,
.stw-post-featured__immagine,
.stw-news-board__immagine,
.stw-image-gallery__immagine,
.stw-case-study-list__media,
.stw-people-grid__ritratto {
	background-color: color-mix(in srgb, var(--stw-inchiostro, #0c1116) 7%, transparent);
}

