/*! Repost Studio - correzioni versione telefono (tutte le pagine restyling) */

/* titoli SEO (H2/H3) dentro i moduli testo: stesso aspetto del testo impostato in Divi */
:where(.et_pb_text_inner) :where(h2,h3).rs-h{
  font-family:inherit !important; font-size:inherit !important; font-weight:inherit !important; line-height:inherit !important;
  color:inherit !important; letter-spacing:inherit !important; text-transform:inherit !important; text-align:inherit !important;
  padding:0 !important; margin:0 !important;
}

/* le pagine con un invito finale proprio non ripetono quello del footer */
body.rs-page .rsf .rsf-cta-row{ display:none !important; }
body.rs-page .rsf .rsf-cols{ padding-top:clamp(64px,7vw,100px) !important; }

@media (max-width:767px){
  body{ overflow-x:clip; }
  .rs-m-empty{ display:none !important; }
  .et-l--footer{ margin-top:48px; }

  /* spazio per il pulsante del menu sopra il primo blocco */
  html body.page-id-673 #main-content .et_pb_section.rs-m-first,
  html body.page-id-278 #main-content .et_pb_section.rs-m-first{ padding-top:88px !important; }

  /* ---------- HOMEPAGE ---------- */
  /* bottoni Divi rimasti: pillole a tutta larghezza come nel resto del sito */
  body.page-id-673 #main-content .et_pb_row:has(> .et_pb_column > .et_pb_button_module_wrapper a.et_pb_button:not([style*="none"])):not(:has(.rsv-row)){
    flex-direction:column !important; grid-template-columns:1fr !important; gap:12px !important;
  }
  body.page-id-673 #main-content .et_pb_row:has(> .et_pb_column > .et_pb_button_module_wrapper a.et_pb_button:not([style*="none"])):not(:has(.rsv-row)) > .et_pb_column{
    width:100% !important; max-width:none !important; margin:0 !important;
  }
  body.page-id-673 #main-content .et_pb_button_module_wrapper{ width:100%; margin:0 !important; }
  body.page-id-673 #main-content .et_pb_button_module_wrapper > a.et_pb_button:not([style*="none"]){
    display:flex !important; flex-direction:row !important; align-items:center; justify-content:center; width:100% !important; max-width:none !important; box-sizing:border-box;
    min-height:54px; padding:14px 28px !important; border-radius:999px !important;
    font:700 15px/1.15 Poppins, sans-serif !important; letter-spacing:.02em; text-align:center;
  }
  html body.page-id-673 #main-content .et_pb_button_module_wrapper > a.et_pb_button.et_pb_button:not([style*="none"])::after{ position:static !important; display:inline-block !important; margin:0 0 0 6px !important; opacity:1 !important; line-height:1 !important; transform:none !important; }

  /* titolo "i nostri servizi" e cartelle */
  body.page-id-673 #main-content .et_pb_column:has(> .et_pb_image .rpf-host) > .et_pb_image{ width:128px !important; max-width:128px !important; margin:36px auto 4px !important; }
  body.page-id-673 #main-content .et_pb_column:has(> .et_pb_image .rpf-host) > .et_pb_text{ margin-bottom:0 !important; }
  body.page-id-673 #main-content .et_pb_column:has(> .et_pb_image .rpf-host) > .et_pb_text :is(p,h2,h3,h4){ text-align:center !important; }

  /* sezioni servizio: una colonna, immagine centrata, righe a tutta larghezza */
  body.page-id-673 #main-content .et_pb_row:has(.rsv-row){
    flex-direction:column !important; align-items:stretch !important;
    grid-template-columns:1fr !important; gap:0 !important; width:88% !important; max-width:none !important; margin-left:auto !important; margin-right:auto !important;
  }
  body.page-id-673 #main-content .et_pb_row:has(.rsv-row) > .et_pb_column{
    width:100% !important; max-width:none !important; flex:none !important; margin:0 !important;
    flex-direction:column !important; row-gap:0 !important;
  }
  body.page-id-673 #main-content .et_pb_row:has(.rsv-row) .et_pb_image{
    width:100% !important; max-width:340px !important; margin:8px auto 28px !important;
    left:auto !important; right:auto !important; align-self:center !important;
  }
  body.page-id-673 #main-content .et_pb_row:has(.rsv-row) .et_pb_image{ text-align:center !important; }
  body.page-id-673 #main-content .et_pb_row:has(.rsv-row) .et_pb_image .et_pb_image_wrap{ display:inline-block !important; margin:0 auto !important; max-width:100%; }
  body.page-id-673 #main-content .et_pb_row:has(.rsv-row) .et_pb_image img{ width:100% !important; height:auto !important; max-height:460px; object-fit:contain; }
  body.page-id-673 #main-content .rsv-row{ width:100% !important; max-width:none !important; margin:0 !important; }
  body.page-id-673 #main-content .rsv-row .et_pb_module_header,
  body.page-id-673 #main-content .rsv-row .et_pb_module_header *{ font-size:20px !important; line-height:1.2 !important; word-break:normal !important; hyphens:none; }
  body.page-id-673 #main-content .rsv-row .et_pb_blurb_description,
  body.page-id-673 #main-content .rsv-row .et_pb_blurb_description *{ font-size:15px !important; line-height:1.5 !important; }
  body.page-id-673 #main-content .rsv-title, body.page-id-673 #main-content .rsv-title *,
  body.page-id-673 #main-content .rsv-desc, body.page-id-673 #main-content .rsv-desc *{ text-align:left !important; }
  body.page-id-673 #main-content .rsv-title :is(h1,h2,h3,h4,p){ font-size:clamp(34px,10vw,44px) !important; line-height:1.05 !important; }
  body.page-id-673 #main-content .rsv-desc{ margin-bottom:12px !important; }
  body.page-id-673 #main-content .rsv-cta{ width:100%; justify-content:space-between; box-sizing:border-box; }

  /* ---------- CONTATTI / SERVIZI ---------- */
  body.rs-page #main-content .rsc-row .et_pb_module_header,
  body.rs-page #main-content .rsc-row .et_pb_module_header a{ font-size:17px !important; line-height:1.25 !important; overflow-wrap:anywhere; }
  body.rs-page #main-content a.et_pb_button.rsc-btn,
  body.rs-page #main-content .et_pb_contact_submit{ width:100%; flex-direction:row !important; justify-content:flex-start !important; box-sizing:border-box; }
  body.rs-page #main-content .et_pb_button_module_wrapper:has(.rsc-btn){ width:100%; }
  body.rs-page #main-content .rsc-sec-end > .et_pb_row{ padding-top:24px !important; }

  /* servizi: prima il testo, poi le immagini */
  body.rs-page #main-content .rsp-service > .et_pb_row{ gap:28px !important; padding:56px 0 !important; }
  body.rs-page #main-content .rsp-service .rsp-media-col{ order:2; padding-bottom:36px !important; }
  body.rs-page #main-content .rsp-service > .et_pb_row > .et_pb_column:not(.rsp-media-col){ order:1; }
  body.rs-page #main-content .rsp-dark > .et_pb_row{ width:92% !important; padding:48px 22px !important; }
  /* scorciatoie ai servizi in griglia 2x2 */
  .rsp-chips .et_pb_text_inner{ display:grid !important; grid-template-columns:1fr 1fr; gap:10px !important; }
  .rsp-chips a{ font-size:13.5px !important; padding:9px 12px 9px 9px !important; line-height:1.15 !important; }
  .rsp-chips a img{ width:24px !important; flex:none; }
  body.rs-page #main-content .rsp-gallery{ padding-top:20px !important; }
  body.rs-page #main-content .rsp-works > .et_pb_row:first-child{ padding-top:56px !important; }
}
