.elementor-kit-6{--e-global-color-primary:#FFFFFF;--e-global-color-secondary:#DDDDDD;--e-global-color-text:#DDDDDD;--e-global-color-accent:#D41C19;--e-global-color-rsanero:#000000;--e-global-color-rsafondo:#1F1F1F;--e-global-color-rsagrigio:#999999;--e-global-color-rsalogo:#FE0000;--e-global-typography-primary-font-family:"Jost";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Jost";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Jost";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:22.4px;--e-global-typography-accent-font-family:"Jost";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:500;background-color:#1F1F1F;color:#DDDDDD;font-family:"Jost", Sans-serif;font-size:16px;line-height:22.4px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#FFFFFF;}.elementor-kit-6 a:hover{color:#D41C19;}.elementor-kit-6 h1{color:#FFFFFF;font-family:"Jost", Sans-serif;font-weight:500;}.elementor-kit-6 h2{color:#FFFFFF;font-family:"Jost", Sans-serif;font-weight:500;}.elementor-kit-6 h3{color:#FFFFFF;font-family:"Jost", Sans-serif;font-weight:500;}.elementor-kit-6 h4{color:#FFFFFF;font-family:"Jost", Sans-serif;font-weight:500;}.elementor-kit-6 h5{color:#FFFFFF;font-family:"Jost", Sans-serif;font-weight:500;}.elementor-kit-6 h6{color:#FFFFFF;font-family:"Jost", Sans-serif;font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.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 *//* Ripamonti Studio Associato – stile comune (Guida grafica) */
html{scroll-behavior:smooth}
body{background:#1F1F1F;color:#DDDDDD;font-family:Jost,sans-serif}
body a{color:#FFFFFF;text-decoration:none;transition:color .2s}
body a:hover{color:#D41C19}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

/* Titoli */
body .rsa-h-sezione .elementor-heading-title{font-size:40px;font-weight:500;line-height:1.2;text-transform:uppercase;color:#FFFFFF}
body .rsa-h-sotto .elementor-heading-title{font-size:28px;font-weight:500;line-height:1.2;text-transform:uppercase;color:#FFFFFF}
body .rsa-h-hero .elementor-heading-title{font-size:44px;font-weight:500;line-height:1.15;text-transform:uppercase;color:#FFFFFF}
body .rsa-h-nome .elementor-heading-title{font-size:20px;font-weight:500;line-height:28px;color:#FFFFFF}
body .rsa-h-scheda .elementor-heading-title{font-size:28px;font-weight:500;line-height:1.2;text-transform:uppercase;color:#FFFFFF;text-align:center}
body .rsa-h-progetto .elementor-heading-title{font-size:32px;font-weight:500;line-height:1.2;color:#FFFFFF}

/* Tratto rosso tagliato in obliquo */
body .rsa-tratto .elementor-heading-title::after{content:"";display:block;width:224px;height:5px;margin-top:28px;background:#D41C19;clip-path:polygon(0 0,100% 0,calc(100% - 5px) 100%,0 100%)}
body .rsa-tratto-150 .elementor-heading-title::after{width:150px;margin-top:24px}
body .rsa-tratto-126 .elementor-heading-title::after{content:"";display:block;width:126px;height:5px;margin-top:8px;background:#D41C19;clip-path:polygon(0 0,100% 0,calc(100% - 5px) 100%,0 100%)}
body .rsa-tratto-sopra .elementor-heading-title::before{content:"";display:block;width:144px;height:5px;margin-bottom:18px;background:#D41C19;clip-path:polygon(0 0,100% 0,calc(100% - 5px) 100%,0 100%)}
body .rsa-ruolo p{margin:0}
body .rsa-ruolo{font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#D41C19}
body .rsa-ruolo::before{content:"";display:block;width:150px;height:5px;margin-bottom:14px;background:#D41C19;clip-path:polygon(0 0,100% 0,calc(100% - 5px) 100%,0 100%)}

/* Titoli verticali delle pagine (Servizi, Studio, Contatti) */
body .rsa-verticale{display:flex;align-items:flex-start;gap:22px}
body .rsa-verticale::before{content:"";flex:none;width:5px;height:56px;margin-top:2px;background:#D41C19;clip-path:polygon(0 0,100% 0,100% 100%,0 calc(100% - 5px))}
body .rsa-verticale .elementor-heading-title{writing-mode:vertical-rl;transform:rotate(180deg);font-size:32px;font-weight:500;line-height:38px;text-transform:uppercase;color:#FFFFFF;white-space:nowrap}

/* Testo */
body .rsa-testo p{margin:0 0 14px;font-size:16px;line-height:1.6;color:#DDDDDD}
body .rsa-testo p:last-child{margin-bottom:0}
body .rsa-piccolo{font-size:13px;line-height:1.5;color:#999999}
body .rsa-piccolo p{margin:0}
body .rsa-lead p{font-size:20px;line-height:1.5;color:#FFFFFF;margin:0}

/* Elenchi con la barra «/» rossa */
body .rsa-lista ul{list-style:none;margin:0;padding:0}
body .rsa-lista li{position:relative;padding-left:20px;margin:0 0 5px;font-size:16px;line-height:22.4px;color:#DDDDDD}
body .rsa-lista li::before{content:"/";position:absolute;left:0;top:0;color:#D41C19;font-weight:500}

/* Elenchi a righe (pagina Servizi) */
body .rsa-righe ul{list-style:none;margin:0;padding:0;border:1px solid #D41C19}
body .rsa-righe li{padding:11px 14px;border-bottom:1px solid #D41C19;font-size:15px;line-height:1.4;color:#FFFFFF}
body .rsa-righe li:last-child{border-bottom:0}

/* Pulsanti */
body .rsa-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-width:220px;min-height:44px;padding:8px 24px;border:2px solid #D41C19;border-radius:0;background:#D41C19;color:#FFFFFF;font-family:Jost,sans-serif;font-size:15px;font-weight:500;line-height:1.2;transition:background .2s,border-color .2s}
body .rsa-btn .elementor-button:hover{background:#A91512;border-color:#A91512;color:#FFFFFF}
body .rsa-btn-bordo .elementor-button{background:transparent}
body .rsa-btn-bordo .elementor-button:hover{background:#D41C19;border-color:#D41C19}
body .rsa-btn-srst .elementor-button-icon svg{width:22px;height:22px;background:#DDDDDD;padding:2px}
body .rsa-btn-srst .elementor-button-icon img{width:22px;height:22px;background:#DDDDDD;padding:2px;display:block}

/* Testata */
body .rsa-testata{z-index:50}
body .elementor-widget-image a img[src$=".svg"]{width:auto}
body .rsa-logo{flex:none}
body .rsa-logo img{height:70px!important;width:auto!important;max-width:none;display:block}
body .rsa-menu-pitto img{width:144px!important;height:auto;max-width:none}
.e-con[id]{scroll-margin-top:116px}
body .rsa-srst a{display:inline-flex;align-items:center;gap:14px;color:#FFFFFF}
body .rsa-srst .q{display:flex;align-items:center;justify-content:center;width:70px;height:70px;background:#DDDDDD;flex:none}
body .rsa-srst .q img{height:63px;width:auto;display:block}
body .rsa-srst .t{font-size:15px;font-weight:500;line-height:1.2;letter-spacing:0;text-transform:uppercase}
body .rsa-srst a:hover .t{color:#D41C19}
body .rsa-hamburger .elementor-icon{display:flex!important;align-items:center;justify-content:center;width:44px;height:44px;box-sizing:border-box;border:2px solid #D41C19!important;padding:0!important;font-size:18px;color:#FFFFFF;fill:#FFFFFF}
body .rsa-hamburger .elementor-icon svg{fill:#FFFFFF;width:18px;height:18px}
body .rsa-hamburger .elementor-icon:hover{background:#D41C19}

/* Menu a tutto schermo */
body .rsa-menu-voce .elementor-heading-title{font-size:64px;font-weight:500;line-height:76.8px;text-align:center}
body .rsa-menu-voce .elementor-heading-title a{color:#FFFFFF}
body .rsa-menu-voce .elementor-heading-title a:hover,body .rsa-menu-voce .elementor-heading-title a.rsa-attivo{color:#D41C19}

/* Apertura della home */
body .rsa-hero{overflow:hidden;position:relative}
body .rsa-hero-pitto{position:absolute!important;right:-40px;bottom:-40px;width:620px;max-width:none;pointer-events:none;z-index:0}
body .rsa-hero-pitto img{width:620px;height:620px;display:block}
body .rsa-hero-testo{position:relative;z-index:1}

/* Riquadro Lo Studio */
body .rsa-velo{background:rgba(0,0,0,.72)}

/* Linea del tempo */
.rsa-tl{position:relative;height:132px}
.rsa-tl::before{content:"";position:absolute;left:0;top:50px;width:64.1%;height:4px;background:#FFFFFF}
.rsa-tl::after{content:"";position:absolute;left:64.1%;right:0;top:51px;height:2px;background:#777777}
.rsa-tl .v{position:absolute;top:0;left:var(--x)}
.rsa-tl .a{display:block;font-size:36px;font-weight:300;line-height:1;color:#FFFFFF}
.rsa-tl .s{position:absolute;left:6px;top:40px;width:3px;height:24px;background:#D41C19;transform:rotate(20deg);z-index:1}
.rsa-tl .d{position:absolute;left:0;top:70px;font-size:13px;line-height:1.55;color:#BBBBBB;white-space:nowrap}
.rsa-numeri{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.rsa-numeri div{display:flex;flex-direction:column;gap:6px}
.rsa-numeri .n{font-size:44px;font-weight:300;line-height:1;color:#FFFFFF}
.rsa-numeri div:first-child .n{color:#D41C19}
.rsa-numeri .l{font-size:13px;color:#BBBBBB}

/* Fasce fotografiche */
body .rsa-fascia img{display:block;width:100%;height:auto}

/* Schede Servizi in home */
body .rsa-scheda{color:#FFFFFF}
body .rsa-scheda img{display:block;width:100%;aspect-ratio:347/450;object-fit:cover;transition:opacity .25s}
body .rsa-scheda:hover img{opacity:.85}
body .rsa-scheda:hover .elementor-heading-title{color:#D41C19}
body .rsa-scheda .rsa-h-scheda{min-height:101px;display:flex;align-items:center;justify-content:center}

/* Schede progetto segnaposto */
body .rsa-segnaposto{background:#000000;aspect-ratio:338/405;justify-content:center;align-items:center}
body .rsa-segnaposto img{width:270px;max-width:80%;height:auto;display:block;margin:0 auto}
body .rsa-segnaposto .rsa-allestimento p{margin:0;text-align:center;font-size:24px;font-weight:400;color:#D41C19}
body .rsa-progetto:hover .elementor-heading-title{color:#D41C19}

/* Modulo di contatto */
body .rsa-form .elementor-field-group:not(.elementor-field-type-submit):not(.elementor-field-type-acceptance) .elementor-field{background:transparent!important;border:0!important;border-bottom:2px solid #D41C19!important;border-radius:0!important;color:#FFFFFF!important;font-family:Jost,sans-serif;font-size:16px;padding:12px 16px 8px!important;min-height:47px}
body .rsa-form .elementor-field::placeholder{color:#999999;opacity:1}
body .rsa-form textarea.elementor-field{min-height:59px;resize:vertical}
body .rsa-form .elementor-field-type-acceptance label,body .rsa-form .elementor-field-option label{color:#DDDDDD;font-size:15px}
body .rsa-form .elementor-field-type-acceptance a{color:#FFFFFF;text-decoration:underline;text-decoration-color:#D41C19}
body .rsa-form .elementor-button{min-height:40px;border:2px solid #D41C19!important;border-radius:0!important;background:transparent!important;color:#FFFFFF!important;font-family:Jost,sans-serif;font-size:16px;font-weight:400}
body .rsa-form .elementor-button:hover{background:#D41C19!important}
body .rsa-form .elementor-message{color:#DDDDDD;font-size:15px}
body .rsa-pannello-modulo{background:#1F1F1F}

/* Mappa senza cookie */
body .rsa-mappa{background:#181818;background-image:linear-gradient(115deg,transparent 0 30%,rgba(255,255,255,.05) 30% 30.3%,transparent 30.3% 100%),linear-gradient(20deg,transparent 0 55%,rgba(255,255,255,.05) 55% 55.25%,transparent 55.25% 100%),linear-gradient(160deg,transparent 0 68%,rgba(255,255,255,.04) 68% 68.3%,transparent 68.3% 100%)}
body .rsa-pin{width:24px;height:24px;margin:0 auto;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#D41C19}

/* Contatti */
body .rsa-contatti-col p{margin:0}

/* Tab della pagina Servizi */
body .rsa-tabs .e-n-tabs-heading{gap:50px;margin-bottom:28px;flex-wrap:nowrap}
body .rsa-tabs .e-n-tab-title{flex:1 1 0;justify-content:flex-start!important;text-align:left!important;background:transparent!important;border:0!important;border-bottom:2px solid #7E7E7E!important;border-radius:0!important;padding:14px 18px!important;color:#7E7E7E!important;font-family:Jost,sans-serif;font-size:15px;line-height:1.35}
body .rsa-tabs .e-n-tab-title[aria-selected="true"]{border-bottom-color:#D41C19!important;color:#FFFFFF!important}
body .rsa-tabs .e-n-tab-title:hover{color:#FFFFFF!important}
body .rsa-tabs .e-n-tab-title-text{white-space:normal}
body .rsa-tabs .e-n-tabs-content>.e-con{padding:0}

/* Ritratti */
body .rsa-ritratto img{display:block;width:100%;aspect-ratio:484/400;object-fit:cover;object-position:50% 25%}
body .rsa-linea{border-top:1px solid #777777}

/* Footer */
body .rsa-footer-col{border-left:2px solid #D41C19;padding-left:20px}
body .rsa-footer ul{list-style:none;margin:0;padding:0}
body .rsa-footer li{line-height:26.5px}
body .rsa-footer a{color:#DDDDDD}
body .rsa-footer a:hover,body .rsa-footer a.rsa-attivo{color:#D41C19}
body .rsa-footer p{margin:0 0 20px}
body .rsa-footer .rsa-footer-titolo{font-weight:500;color:#FFFFFF;margin-bottom:20px}
body .rsa-copy p{color:#D41C19;margin:0}

/* Pagine legali */
body .rsa-legale h2{font-size:28px;font-weight:500;color:#FFFFFF;margin:36px 0 12px;line-height:1.25}
body .rsa-legale h3{font-size:20px;font-weight:500;color:#FFFFFF;margin:28px 0 10px}
body .rsa-legale p,body .rsa-legale li{font-size:16px;line-height:1.6;color:#DDDDDD}
body .rsa-legale ul{padding-left:20px}
body .rsa-legale a{text-decoration:underline;text-decoration-color:#D41C19}

/* Tablet */
@media (max-width:1024px){
  body .rsa-hero-pitto{width:440px;right:-40px;bottom:-40px}
  body .rsa-hero-pitto img{width:440px;height:440px}
  .rsa-tl .d{white-space:normal;width:150px}
  .rsa-tl .v:nth-child(2){left:42%!important}
  body .rsa-tabs .e-n-tabs-heading{gap:20px}
}
/* Telefono */
@media (max-width:767px){
  body .rsa-h-sezione .elementor-heading-title{font-size:30px}
  body .rsa-h-hero .elementor-heading-title{font-size:34px}
  body .rsa-h-scheda .elementor-heading-title{font-size:22px}
  body .rsa-h-progetto .elementor-heading-title{font-size:26px}
  body .rsa-menu-voce .elementor-heading-title{font-size:40px;line-height:56px}
  body .rsa-logo img{height:46px}
  body .rsa-srst .t{display:none}
  body .rsa-srst .q{width:44px;height:44px}
  body .rsa-srst .q img{height:41px}
  body .rsa-hero-pitto{width:300px;right:-30px;bottom:-30px}
  body .rsa-hero-pitto img{width:300px;height:300px}
  body .rsa-verticale .elementor-heading-title{writing-mode:horizontal-tb;transform:none}
  body .rsa-verticale::before{height:38px;margin-top:0}
  .rsa-tl{height:auto;padding-left:26px}
  .rsa-tl::before{left:7px;top:4px;bottom:4px;width:2px;height:auto;background:#777777}
  .rsa-tl::after{display:none}
  .rsa-tl .v,.rsa-tl .v:nth-child(n){position:relative;left:auto!important;margin-bottom:26px}
  .rsa-tl .v:last-child{margin-bottom:0}
  .rsa-tl .s{left:-23px;top:6px}
  .rsa-tl .d{position:static;display:block;margin-top:8px;white-space:normal;width:auto}
  .rsa-numeri{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
  body .rsa-tabs .e-n-tabs-heading{flex-direction:column;gap:0}
  body .rsa-footer-col{border-left:0;border-top:2px solid #D41C19;padding-left:0;padding-top:16px}
  body .rsa-segnaposto{aspect-ratio:4/3}
  body .rsa-menu-pitto img{width:110px!important}
}/* End custom CSS */