/*
Theme Name: OTTS-Child
Theme URI: https://otts.it
Template: hello-elementor
Author: Deversus
Author URI: https://deversus.it
Version: 1.0.0.1786464556
Updated: 2026-08-11 16:09:16

*/


/* Fisarmonica servizi su mobile (2026-10-09): la listing "Servizi — Card" (132) con classe otts-acc mostra
   solo numero + titolo; al tocco si apre il riquadro giallo con descrizione, "Cosa comprende" e link. */
.otts-acc .jet-listing-grid__items { gap: 0 !important; margin: 0 !important; }
.otts-acc .jet-listing-grid__item { margin: 0 !important; padding: 0 !important; }
.otts-acc .elementor-132 .elementor-element.elementor-element-b4f382d { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; --gap: 0; --row-gap: 0; border-bottom: 1px solid #cfcfcb; transition: background-color .2s; }
.otts-acc .elementor-132 .elementor-element.elementor-element-b4f382d:not(.is-open) { background-color: transparent; }
.otts-acc .elementor-132 .elementor-element.elementor-element-b4f382d.is-open { background-color: #DFFF3C; }
.otts-acc .otts-acc__toggle { all: unset; box-sizing: border-box; display: flex; align-items: baseline; gap: 14px; width: 100%; padding: 20px 52px 20px 16px; position: relative; cursor: pointer; text-align: left; }
.otts-acc .otts-acc__toggle:focus-visible { outline: 2px solid #0e0f12; outline-offset: -2px; }
.otts-acc .elementor-132 .otts-acc__toggle > .elementor-element { margin: 0 !important; width: auto; }
.otts-acc .elementor-132 .otts-acc__toggle .elementor-element-cc7b1fb .jet-listing-dynamic-field__content { font-size: 19px; line-height: 1.1em; }
.otts-acc .elementor-171 .elementor-element.elementor-element-fd44646 { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; --gap: 0; --row-gap: 0; border-bottom: 1px solid #cfcfcb; transition: background-color .2s; }
.otts-acc .elementor-171 .elementor-element.elementor-element-fd44646:not(.is-open) { background-color: transparent; }
.otts-acc .elementor-171 .elementor-element.elementor-element-fd44646.is-open { background-color: #1B4CE8; }
.otts-acc .elementor-171 .otts-acc__toggle > .elementor-element { margin: 0 !important; width: auto; }
.otts-acc .elementor-171 .otts-acc__toggle .elementor-element-9f59b42 .jet-listing-dynamic-field__content { font-size: 19px; line-height: 1.1em; letter-spacing: -0.4px; }
.otts-acc .elementor-171 .elementor-element-fd44646:not(.is-open) .otts-acc__toggle .jet-listing-dynamic-field__content { color: #0e0f12; }
.otts-acc .elementor-171 .is-open .otts-acc__toggle::after { background: linear-gradient(#fff,#fff) center/14px 2px no-repeat, linear-gradient(#fff,#fff) center/2px 14px no-repeat; }
.otts-acc .elementor-171 .is-open .otts-acc__toggle:focus-visible { outline-color: #fff; }
.otts-acc .otts-acc__toggle::after { content: ""; position: absolute; right: 18px; top: 50%; width: 14px; height: 14px; margin-top: -7px; background: linear-gradient(#0e0f12,#0e0f12) center/14px 2px no-repeat, linear-gradient(#0e0f12,#0e0f12) center/2px 14px no-repeat; transition: transform .2s; }
.otts-acc .is-open .otts-acc__toggle::after { transform: rotate(45deg); }
.otts-acc .otts-acc__body { display: none; padding: 0 16px 24px; }
.otts-acc .is-open .otts-acc__body { display: flex; flex-direction: column; gap: 12px; }

/* Indice prodotti su mobile (2026-10-09): stessa dimensione dei titoli dell'elenco servizi (20px). */
@media (max-width: 767px) { .elementor-172 .elementor-element.elementor-element-c8230c4 .jet-radio-list__label { font-size: 20px !important; font-weight: 600 !important; letter-spacing: -0.4px; line-height: 1.1em; } }

/* Controllo mobile (2026-10-09): link del footer con altezza toccabile (>=30px, prima 19px); titoli h2 dell'articolo piu piccoli. */
@media (max-width: 767px) {
  .elementor-14 .elementor-widget-heading .elementor-heading-title a { display: inline-block; padding: 7px 0; }
}

/* Allineamenti mobile (2026-10-09): margine laterale unico di 30px (header, sezioni colorate, card, footer);
   sottotitoli articolo scuri; aree toccabili >= 44px per bottoni e link. */
.elementor-57 .elementor-widget-theme-post-content :is(h2, h3, h4) { color: #0e0f12; }
@media (max-width: 767px) {
  /* header */
  .elementor-13 .elementor-element.elementor-element-dbd37ce { padding-left: 30px; }
  .elementor-13 .elementor-element.elementor-element-3856033 { width: 142px; margin: 0; text-align: left; }
  .elementor-13 .elementor-element.elementor-element-3856033 img { width: 136px !important; max-width: none; }
  .elementor-13 .elementor-element.elementor-element-8b165b0 { align-self: flex-start !important; margin: 0 !important; }
  .elementor-13 .elementor-element.elementor-element-7cb7dd4 { width: 44px !important; }
  .elementor-13 .elementor-element.elementor-element-83c81a0 { padding-right: 30px; }
  .elementor-13 .elementor-element.elementor-element-a2f7e4f { padding-left: 30px; align-items: flex-start; }
  .elementor-13 .elementor-element.elementor-element-7f63074 { margin-left: auto; padding-right: 30px; align-items: flex-end; width: 84px !important; }
  .elementor-13 .elementor-element.elementor-element-7cb7dd4 .elementor-menu-toggle { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
  /* sezioni colorate (hero) di ogni pagina */
  .elementor-element.elementor-element-414cbe3, .elementor-element.elementor-element-f58cef2, .elementor-element.elementor-element-c7365c3,
  .elementor-element.elementor-element-cb90412, .elementor-element.elementor-element-846da6f, .elementor-element.elementor-element-fa87ea4,
  .elementor-element.elementor-element-5a3fb9a, .elementor-element.elementor-element-956efb2 { padding-left: 30px; padding-right: 30px; }
  /* corpo delle pagine e card a 30px */
  .elementor-element.elementor-element-2b156eb, .elementor-element.elementor-element-b7a0516, .elementor-element.elementor-element-7d7ce18,
  .elementor-element.elementor-element-2e4321e, .elementor-element.elementor-element-b2f1fd1 { padding-left: 30px; padding-right: 30px; }
  .elementor-element.elementor-element-b26b73a { padding-left: 0; padding-right: 0; }
  .elementor-element.elementor-element-39a4303, .elementor-element.elementor-element-b2f1fd1 { padding-left: 30px !important; padding-right: 30px !important; }
  .elementor-element.elementor-element-7412523 { padding-left: 0 !important; padding-right: 0 !important; }
  .elementor-57 .elementor-element.elementor-element-8112cdd { align-self: flex-start !important; }
  /* etichette trasparenti sopra i titoli degli hero: allineate al titolo */
  .elementor-element.elementor-element-67b2401, .elementor-element.elementor-element-123a17a, .elementor-element.elementor-element-7a8bd08,
  .elementor-element.elementor-element-f713f41, .elementor-element.elementor-element-ff03d49 { padding-left: 0 !important; }
  /* aree toccabili */
  .elementor-widget-heading .elementor-heading-title > a { position: relative; }
  .elementor-location-footer .elementor-heading-title > a::after { content: none; }
  .elementor-widget-heading .elementor-heading-title > a::after { content: ""; position: absolute; top: -10px; bottom: -10px; left: -6px; right: -6px; }
  .elementor-widget-button .elementor-button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
}

/* ===== Scala tipografica mobile (2026-10-10) =====
   Un ruolo = una misura; dove c'erano misure diverse per lo stesso ruolo vale la piu' piccola.
   Titolo pagina 40 · titolo scheda 27 · sezione 23 · card 19 · introduzione 16 · testo 15 · bottoni 15 · etichette 11. */
@media (max-width: 767px) {
  /* titolo principale delle pagine e numeri della home: 40 */
  .elementor-element-fed6d41 .elementor-heading-title, .elementor-element-62881ec .elementor-heading-title, .elementor-element-a366b78 .elementor-heading-title, .elementor-element-9680083 .elementor-heading-title, .elementor-element-f3775fe .elementor-heading-title, .elementor-element-48ddf59 .elementor-heading-title, .elementor-element-1a013e2 .elementor-heading-title, .elementor-element-e5e0303 .elementor-heading-title, .elementor-element-57a8005 .elementor-heading-title { font-size: 40px !important; line-height: 1.05em !important; }
  /* titolo delle schede servizio, prodotto, articolo: 27 */
  .elementor-element-74715a7 .elementor-heading-title, .elementor-element-bc680c1 .elementor-heading-title, .elementor-element-a408ab6 .elementor-heading-title { font-size: 27px !important; line-height: 1.1em !important; }
  /* titoli di sezione: 23 */
  .elementor-element-f1c03b8 .elementor-heading-title, .elementor-element-8cb9cde .elementor-heading-title, .elementor-element-922ed7b .elementor-heading-title, .elementor-element-abca568 .elementor-heading-title, .elementor-widget-theme-post-content h2 { font-size: 23px !important; line-height: 1.2em !important; }
  /* titoli di card e blocchi: 19 */
  .elementor-element-dfd62db .elementor-heading-title, .elementor-element-f2d9663 .elementor-heading-title, .elementor-element-4d2ac90 .elementor-heading-title, .elementor-element-37025bf .elementor-heading-title, .elementor-element-5e57088 .elementor-heading-title, .elementor-element-ddea72d .elementor-heading-title, .elementor-element-1535346 .elementor-heading-title, .elementor-element-fa7a42f .elementor-heading-title, .elementor-element-fde00eb .elementor-heading-title, .elementor-element-fe6fdaf .elementor-heading-title, .elementor-element-eca4262 .elementor-heading-title,
  .elementor-element-dec560a .jet-listing-dynamic-field__content, .elementor-element-1eb125a .jet-listing-dynamic-field__content, .elementor-element-9f59b42 .jet-listing-dynamic-field__content, .elementor-element-cc7b1fb .jet-listing-dynamic-field__content { font-size: 19px !important; line-height: 1.2em !important; }
  /* titoli dentro il testo (domande FAQ, riquadri nelle schede): 17 */
  .elementor-widget-theme-post-content div[style*="font-size: 18px"] { font-size: 17px !important; }
  /* testo introduttivo sotto i titoli: 16 */
  .elementor-element-b57aca1, .elementor-element-b57aca1 p, .elementor-element-bf9a29f, .elementor-element-bf9a29f p, .elementor-element-5cdc5a8, .elementor-element-5cdc5a8 p, .elementor-element-63cec7f, .elementor-element-63cec7f p, .elementor-element-3449fbf, .elementor-element-3449fbf p, .elementor-element-0fea304 .jet-listing-dynamic-field__content, .elementor-element-c776916 .jet-listing-dynamic-field__content { font-size: 16px !important; }
  /* testo: 15 */
  .elementor-element-ae0c714, .elementor-element-ae0c714 p, .elementor-element-4d13ed6, .elementor-element-4d13ed6 p, .elementor-element-f3fb190, .elementor-element-f3fb190 p, .elementor-element-5e698b3, .elementor-element-5e698b3 p, .elementor-element-c079ee6, .elementor-element-c079ee6 p, .elementor-element-6b881eb, .elementor-element-6b881eb p, .elementor-element-87dae31, .elementor-element-87dae31 p, .elementor-element-364e6bc, .elementor-element-364e6bc p, .elementor-element-fd4ae60, .elementor-element-fd4ae60 p, .elementor-element-75066e8, .elementor-element-75066e8 p, .elementor-element-d48ddb1, .elementor-element-d48ddb1 p, .elementor-element-81d825c, .elementor-element-81d825c p, .elementor-element-efdd275, .elementor-element-efdd275 p, .elementor-element-fa17563, .elementor-element-fa17563 p,
  .elementor-element-d247574 .jet-listing-dynamic-field__content, .elementor-element-c86f621 .jet-listing-dynamic-field__content, .elementor-element-2f9cf2a .jet-listing-dynamic-field__content, .elementor-element-1c228bf .jet-listing-dynamic-field__content,
  .elementor-element-7082ab2 .jet-listing-dynamic-repeater__item, .elementor-element-3d67f9c .jet-listing-dynamic-repeater__item,
  .elementor-element-7082ab2 .jet-listing-dynamic-repeater__item *, .elementor-element-3d67f9c .jet-listing-dynamic-repeater__item *,
  .elementor-widget-theme-post-content p, .elementor-widget-theme-post-content li { font-size: 15px !important; }
  /* bottoni: 15 */
  .elementor-widget-button .elementor-button, .elementor-widget-form .elementor-button, .elementor-widget-theme-post-content a[style*="padding"] { font-size: 15px !important; }
  /* etichette in maiuscolo (monospazio): 11 */
  .elementor-element-6c5f80d .elementor-heading-title, .elementor-element-c4d96a8 .elementor-heading-title, .elementor-element-03401ee .elementor-heading-title, .elementor-element-f7ee248 .elementor-heading-title, .elementor-element-72cd811 .elementor-heading-title, .elementor-element-85078c9 .elementor-heading-title, .elementor-element-ff03d49 .elementor-heading-title, .elementor-element-d300c06 .elementor-heading-title, .elementor-element-9651802 .elementor-heading-title, .elementor-element-7a8bd08 .elementor-heading-title, .elementor-element-123a17a .elementor-heading-title, .elementor-element-f713f41 .elementor-heading-title, .elementor-element-67b2401 .elementor-heading-title, .elementor-element-b4a65d3 .elementor-heading-title, .elementor-element-8dcc944 .elementor-heading-title, .elementor-element-623d717 .elementor-heading-title, .elementor-element-0de8cf0 .elementor-heading-title, .elementor-element-80d5bcf .elementor-heading-title, .elementor-element-8112cdd .elementor-heading-title, .elementor-element-dc92959 .elementor-heading-title, .elementor-element-f8b1973 .elementor-heading-title, .elementor-element-e50b827 .elementor-heading-title, .elementor-element-de83a4a .elementor-heading-title, .elementor-element-8a7f4c8 .elementor-heading-title, .elementor-element-9964f8d .elementor-heading-title, .elementor-element-86aa535 .elementor-heading-title, .elementor-element-03ca772 .elementor-heading-title,
  .elementor-element-5365236 .jet-listing-dynamic-field__content, .elementor-element-a46b8e3 .jet-listing-dynamic-field__content, .elementor-element-4b59aa1 .jet-listing-dynamic-field__content, .elementor-element-661d5cb .jet-radio-list__label { font-size: 11px !important; }
}

/* Sito squadrato (2026-10-10): nessun angolo arrotondato, in nessuno stato (hover, focus, selezionato) e su ogni dispositivo. */
*, *::before, *::after { border-radius: 0 !important; }
/* Etichetta "Indice dei prodotti" su fondo blu (come le card prodotto). */
.elementor-172 .elementor-element.elementor-element-5dfc1c5, .elementor-172 .elementor-element.elementor-element-5dfc1c5 > .elementor-widget-container { background-color: #1B4CE8 !important; }
.elementor-172 .elementor-element.elementor-element-5dfc1c5 .elementor-heading-title { background-color: transparent !important; color: #FFFFFF !important; }
