/* Elementi stili font esterni */
@font-face {
  font-family:'CabinR';
  font-style: normal;
  font-weight: 400;
  src: local('Cabin Regular'), local('Cabin_Regular'), local('CabinR'),
       url('../font/cabin-regular.woff2') format('woff2'),
       url('../font/cabin-regular.ttf') format('truetype');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
  font-display: swap;
}
@font-face {
  font-family:'CabinSb';
  font-style: normal;
  font-weight: 600;
  src: local('Cabin Semibold'), local('Cabin_Semibold'), local('CabinSb'),
       url('../font/cabin-semibold.woff2') format('woff2'),
       url('../font/cabin-semibold.ttf') format('truetype');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
  font-display: swap;
}
@font-face {
  font-family:'CabinB';
  font-style: normal;
  font-weight: 700;
  src: local('Cabin Bold'), local('Cabin_bold'), local('CabinB'),
       url('../font/cabin-bold.woff2') format('woff2'),
       url('../font/cabin-bold.ttf') format('truetype');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
  font-display: swap;
}


/* Elementi stili font */
* { border:0; margin:0; padding:0;}
a, .non-sottolineato { text-decoration:none; }
table { border-spacing: 0px 0px; }
div, table { position:relative; }
img { width:auto !important; }
.nero, .link-00 { color:#000000; }
.bianco, .link-01 { color:#ffffff; }
.base { color:#333333; }
.blu-00 { color:#2e3988; }
.rosso-00 { color:#d32a31; }
.sfondo-nero { background-color:#000000; }
.sfondo-bianco { background-color:#ffffff; }
.sfondo-temp { background-color:#ff00ff; }
.sfondo-blu-00 { background-color:#2e3988; }
.sfondo-rosso-00 { background-color:#d32a31; }
.sfondo-grigio-00 { background-color:#e0d5d5; }
.sfondo-grigio-01 { background-color:#ececec; }
.assoluto { position:absolute !important; }
.fisso { position:fixed !important; }
.origine { top:0px; left:0px; }
.totale { width:100%; height:100%; }
.largo, .ratio { width:100%; }
.alto { height:100%; }
.meta { width:50%; }
.content-ratio { position:absolute !important; top:0px; left:0px; width:100%; height:100%; }
.base-avviso { position:fixed !important; top:0px; left:0px; width:100%; height:100%; visibility:hidden; overflow:hidden; z-index:10000; }
.sfondo-base { background-position:center; background-repeat:no-repeat; background-size:cover; }
.sfondo-nosize { background-position:center; background-repeat:no-repeat; }
.centrato { margin:0px auto 0px auto; }
.chiusura { position:relative; clear:both; }
.rotondo { border-radius:50%; }
.arrotondato { border-radius:10px; }
.sinistra { float:left; }
.destra { float:right; }
.rovesciato { transform:rotate(180deg); }
.tabella { display:table; }
.cella { display:table-cell; }
.flessibile { display:flex; }
.txt-centro { text-align:center !important; }
.txt-destro { text-align:right !important; }
.txt-sinistro { text-align:left !important; }
.txt-alto { vertical-align:top; }
.txt-mezzo { vertical-align:middle; }
.txt-basso { vertical-align:bottom; }
.giustificato { text-align:justify; }
.minuscolo { text-transform:lowercase; }
.maiuscolo { text-transform:uppercase; }
.sottolineato { text-decoration:underline; }
.grassetto { font-weight:bold; }
.corsivo { font-style:italic; }
.normale { text-transform:none; }
.invisibile { visibility:hidden; }
.nascosto, .display-port { display:none; }
.limitato { overflow:hidden; }
.superiore { z-index:20; }
.cursore { cursor:pointer; }
.inlinea { white-space:nowrap; }
.font-zero { font-size:0px !important; line-height:0px !important; }
.fade { opacity:.00; visibility:hidden; }
.loader { background:#ffffff url(../img/icone/icona-loader.gif) center no-repeat; }
.opaco-00 { opacity:.00; }
.opaco-01 { opacity:.10; }
.opaco-02 { opacity:.20; }
.opaco-03 { opacity:.30; }
.opaco-04 { opacity:.40; }
.opaco-05 { opacity:.50; }
.opaco-06 { opacity:.60; }
.opaco-07 { opacity:.70; }
.opaco-08 { opacity:.80; }
.opaco-09 { opacity:.90; }
.ombra { box-shadow:0px 1px 1px rgba(0, 0, 0, 0.5); }
.ombra-interna { box-shadow:0px -2px 2px rgba(0, 0, 0, 0.5); }
body { font-family:Verdana; font-size:0px; line-height:0px; -webkit-text-size-adjust:100%; background:#ffffff; color:#333333; z-index:0; }


/* -ratio- */
.ratio-quadrato, .ratio-img-00 { padding-top:100%; }
.ratio-16-9 { padding-top:56.25%; }
.ratio-greca { padding-top:31.25%; }
.ratio-gmap { padding-top:25.00%; }
.ratio-logo { padding-top:18.75%; }
.ratio-logo-ariosto { padding-top:29.25%; }
@media only screen and (min-width:1024px) {
  .ratio-16-9-des { padding-top:56.25%; }
  .content-ratio-des { position:absolute !important; top:0px; left:0px; width:100%; height:100%; }
}
@media only screen and (orientation:portrait) {
  .ratio-gmap { padding-top:100.00%; }
}

/* -font- */
.cab-reg { font-family:"CabinR"; }
.cab-sem { font-family:"CabinSb"; }
.cab-bol { font-family:"CabinB"; }
h1, h2, h3, h4, h5, h6 { font-size:0px; line-height:0px; font-weight:normal; }
h1 { font-size:24px; line-height:27px; }
h2 { font-size:20px; line-height:23px; }
h3 { font-size:16px; line-height:22px; }
h4 { font-size:16px; line-height:19px; }
.txt-base, table.box-lista h2 { font-size:16px; line-height:24px; }
.txt-piccolo { font-size:14px; line-height:20px; }
@media only screen and (min-width:0px) and (max-width:767px) {
  h1 { font-size:14px; line-height:16px; }
  h2 { font-size:14px; line-height:21px; }
  h3 { font-size:14px; line-height:20px; }
  h4 { font-size:14px; line-height:17px; }
  .txt-base, table.box-lista h2 { font-size:14px; line-height:20px; }
  .txt-piccolo { font-size:12px; line-height:18px; }
}

/* -generali- */
div#spazio-interne { height:100px; background-size:100% auto; background-image:url(../img/sfondo-testata-interne.jpg); }
div#box-contenuti { padding:20px 0px 20px 0px; }
div.box-fascia { padding:40px 0px 40px 0px; }
div.box-fascia-centrata { width:90%; max-width:1260px; margin:0px auto 0px auto; }
div.box-cornice { padding:20px 20px 20px 20px; }
table.box-lista { margin:10px 0px 10px 0px; border-spacing:10px 5px; }
table.box-pulsanti { margin:30px 0px 0px 0px; }
table.box-pulsanti td.pulsante { padding:5px 10px 5px 10px; border-radius:5px; }
div.blocco-contatti { width:17.33%; margin:0px 8% 0px 8%; float:left; }
div.blocco-contatti p { font-size:12px; line-height:18px; }
div.box-fascia-contatti { width:50%; margin:0px auto 0px auto; }
div.icona-contatti { background-color:#ffffff; background-size:auto 50%; border-radius:50%; }
div#icona-mappa { background-image:url(../img/icone/icona-mappa.png); }
div#icona-mobile { background-image:url(../img/icone/icona-mobile.png); }
div#icona-modulo { background-image:url(../img/icone/icona-contatti.png); }
@media only screen and (min-width:0px) and (max-width:799px) {
  div.blocco-contatti { width:50%; margin:20px 0px 20px 0px; }
  div.icona-contatti { background-size:auto 50%; }
  div.blocco-contatti p { font-size:14px; line-height:20px; }
}
@media only screen and (min-width:800px) and (max-width:1023px) {
  div.blocco-contatti { width:21.33%; margin:0px 6% 0px 6%; }
}
@media only screen and (min-width:0px) and (max-width:1023px) {
  div.box-fascia { padding:10px 0px 10px 0px; }
  div#box-contenuti { padding:20px 0px 20px 0px; }
  div#box-contatti { margin:20px 0px 0px 0px; }
}


/* -testata- */
div#box-testata { top:0px; left:0px; z-index:1000; }
table#testata { height:60px; }
td.box-icona-logo { width:40px; }
div#logo-testata-sx { background-image:url(../img/icone/icona-logo-sx.png); background-size:70% auto; }
div#logo-testata-dx { background-image:url(../img/icone/icona-logo-dx.png); background-size:55% auto; }
div#box-logo-testo { width:120px; background-image:url(../img/logo-testo-drago.png); }
@media only screen and (min-width:0px) and (max-width:1023px) and (orientation:portrait) {
  table#testata { margin:10px 0px 10px 0px; }
  table#box-logo-testata { margin:0px 0px 0px 10px; }
}


/* -menu- */
@media only screen and (min-width:0px) and (max-width:1259px) {
  table#testata { width:100%; height:100%; }
  div#box-icona-menu { width:24px; height:20px; margin:0px 20px 0px auto; }
  div#box-icona-menu div { position:absolute; width:100%; height:4px; background-color:#2e3988; }
  div#riga-up { top:0px; }
  div#riga-md { top:8px; }
  div#riga-dw { bottom:0px; }
  div#box-menu { position:absolute !important; top:50px; left:0px; width:100%; color:#d32a31; background-color:#ffffff; visibility:hidden; overflow:hidden; }
  div.box-sottomenu { overflow:hidden; }
  div.voce-menu { font-size:16px; line-height:30px; padding:5px 20px 5px 20px; background-color:#ffffff; border-bottom:solid 1px #ffffff; }
  div.voce-smenu { font-size:14px; }
  div.voce-menu a { color:#2e3988; }
}
@media only screen and (min-width:1260px) {
  td#box-icona-menu-mobile { display:none; }
  div#box-menu { color:#d32a31; white-space:nowrap; margin:0px auto 0px auto; display:table; }
  div.box-sottomenu { position:absolute; top:39px; left:10px; padding:10px 0px 10px 0px; background-color:#ffffff; border:solid 0px #d32a31; opacity:.00; display:none; z-index:20; }
  div.voce-menu { font-size:16px; line-height:19px; vertical-align:middle; padding:0px 20px 0px 20px; display:table-cell; cursor:pointer; }
  div.voce-menu a { color:#2e3988; }
  div.voce-menu a:hover { color:#d32a31; }
  div.voce-smenu { font-size:16px; line-height:19px; padding:5px 20px 5px 20px; text-align:left; }
  div.voce-smenu a { color:#2e3988; }
  div.voce-smenu:hover { background-color:#d32a31; }
  div.voce-smenu:hover a { color:#ffffff; }
}

/* -homepage- */
div#spazio-home { height:100%; }
div.sfondo-onda { background-size:100% auto; background-repeat:no-repeat; }
div#sfondo-onda-up { background-image:url(../img/sfondi/sinusoide-up.png); background-position:center bottom; }
div#box-titolo-home { bottom:15%; right:0px; padding:10px 10px 10px 10px; }
div.box-vetrina { background-color:#fafafa; border-radius:10px 10px 10px 10px; }
div.sfondo-vetrina { background-repeat:no-repeat; background-position:center; background-size:auto 50%; border-radius:10px 10px 0px 0px; }
div#box-vetrina-clima { background-color:#458dd7; background-image:url(../img/icone/icona-condizionatore.png); }
div#box-vetrina-elettrici { background-color:#3e7e3e; background-image:url(../img/icone/icona-impianti-elettrici.png); }
div#box-vetrina-termici { background-color:#a61022; background-image:url(../img/icone/icona-caldaia.png); }
div.box-vetrina h2 { font-size:16px; line-height:19px; padding:20px 0px 0px 0px; }
div.box-vetrina h3 { font-size:12px; line-height:18px; }
@media only screen and (min-width:1024px) {
  div.box-vetrina { width:21.33%; margin:0px 6% 0px 6%; float:left; }
}

/* -intro servizio- */
div.blocco-intro-indice { width:16%; margin:10px 2% 10px 2%; float:left; }
div.blocco-intro-indice h2 { font-size:14px; line-height:19px; }
div.icona-dettaglio { background-size:auto 90%; cursor:pointer; }
div#icona-civili-industriali { background-image:url(../img/icone/icona-civili-industriali.png); }
div#icona-domotici { background-image:url(../img/icone/icona-domotici.png); }
div#icona-antifurti { background-image:url(../img/icone/icona-antifurti.png); }
div#icona-videosorveglianza { background-image:url(../img/icone/icona-videosorveglianza.png); }
div#icona-fotovoltaici { background-image:url(../img/icone/icona-fotovoltaici.png); }
div#icona-clima { background-image:url(../img/icone/icona-condizionamento.png); }
div#icona-caldaie { background-image:url(../img/icone/icona-caldaia-domestica.png); }
div#icona-termoidraulici { background-image:url(../img/icone/icona-termoidraulica.png); }
div#box-logo-ariosto { width:100%; max-width:220px; margin:20px auto 20px auto; }
div#logo-ariosto { background-image:url(../img/logo-ariosto-impianti.png); }
@media only screen and (min-width:0px) and (max-width:799px) {
  div.blocco-intro-indice { width:46%; margin:10px 2% 10px 2%; }
  div.blocco-intro-indice h2 { height:38px; }
}


/* -dettaglio servizio- */
div#box-civili-industriali { background-image:url(../img/servizi/impianti-civili-industriali.jpg); }
div#box-domotici { background-image:url(../img/servizi/impianti-domotici.jpg); }
div#box-antifurti { background-image:url(../img/servizi/impianti-antifurti.jpg); }
div#box-videosorveglianza { background-image:url(../img/servizi/impianti-videosorveglianza.jpg); }
div#box-fotovoltaici { background-image:url(../img/servizi/impianti-fotovoltaici.jpg); }
div#box-clima { background-image:url(../img/servizi/impianti-clima.jpg); }
div#box-caldaie { background-image:url(../img/servizi/impianti-caldaie.jpg); }
div#box-termoidraulici { background-image:url(../img/servizi/impianti-termoidraulici.jpg); }
div#testo-servizio { padding:20px 0px 0px 0px; }
@media only screen and (min-width:1024px) {
  div#box-dettaglio-servizio { display:table; width:100%; }
  div.box-dettaglio-servizio { display:table-cell; vertical-align:top; }
  div#box-foto-servizio { width:40%; }
}

/* -social- */
table.box-social { border-spacing:20px 0px; margin:0px 0px 0px auto; }
table.box-social div.box-icona { width:24px; }
table.box-social div.icona-social { border-radius:5px 5px 5px 5px; cursor:pointer; }
div.icona-fb { background-image:url(../img/icone/icona-facebook.png); }
div.icona-in { background-image:url(../img/icone/icona-instagram.png); }
div.icona-yt { background-image:url(../img/icone/icona-youtube.png); }
@media only screen and (min-width:0px) and (max-width:567px) {
  table.box-social { border-spacing:10px 0px; }
}
@media only screen and (min-width:0px) and (max-width:799px) {
  table#box-titoli-social { width:100%; }
}
@media only screen and (min-width:800px) {
  table#box-titoli-social { margin:0px 0px 0px auto; }
  table.box-social div.box-icona { width:36px; }
}

/* -footer- */
@media only screen and (min-width:0px) and (max-width:1023px) {
  div.blocco-footer { padding:0px 0px 10px 0px; }
  div.divisore { display:none; }
}
@media only screen and (min-width:800px) {
  div#box-footer { display:table; padding:10px 0px 10px 0px; margin:0px auto 0px auto; }
  div.blocco-footer { padding:0px 5px 0px 5px; display:table-cell; }
}

/* -contatti- */
div.box-icona-contatti { width:32px; }
div.icona-mappa { background-image:url(../img/icone/icona-mappa.png); }
div.icona-mobile { background-image:url(../img/icone/icona-mobile.png); }
@media only screen and (min-width:1024px) {
  div#box-modulo-contatti { width:100%; display:table; }
  div.blocco-modulo-contatti { vertical-align:top; display:table-cell; }
  div#blocco-modulo-contatti-sx { width:40%; }
  div#blocco-modulo-contatti-dx { width:60%; }
}

/* -modulo di contatto- */
form#contatto h2 { font-size:14px; line-height:17px; margin:10px 0px 10px 0px; }
fieldset.interno { font-size:12px; line-height:15px; }
div#box-campi { margin:0px auto 0px auto; }
div#box-campi p { margin:10px 0px 10px 0px; }
form#contatto input, form#contatto select { font-family:"RalewayL"; font-size:13px; line-height:20px; border-radius:3px; }
form#contatto input { padding:0px 2% 0px 2%; }
form#contatto input.campo-data { width:96%; }
form#contatto input.captcha {width:120px; }
form#contatto select.campo-data { width:100%; }
form#contatto textarea { width:96%; height:120px; font-family:"RalewayL"; font-size:13px; line-height:16px; padding:5px 2% 5px 2%; border-radius:3px; }
div.box-check { font-size:12px; line-height:15px; margin:20px 0px 20px 0px; border-spacing:0px 0px; }
div.check-form { width:auto !important!; margin:5px 0px 0px 0px; display:table; }
div.check-form div { height:24px; vertical-align:middle; display:table-cell; }
div.check-form div.campo { padding:0px 5px 0px 0px; }
div.check-form div.testo { padding:0px 20px 0px 0px; }
div#txt-privacy { font-size:10px; line-height:13px; margin:3px 0px 3px 0px; }
div#box-avviso, div#avviso { display:table; border-spacing:20px 0px; }
div#box-avviso div#cella-avviso { height:100%; vertical-align:middle; display:table-cell; }
div#box-avviso p { font-size:12px; line-height:18px; color:#000000; padding:20px; background:#ffffff; border-radius:10px; box-shadow:0px 4px 4px rgba(85, 85, 85, 0.5); display:none; }
div#box-avviso b { font-size:14px; color:#db001b; }
table.box-pulsanti { font-size:12px; line-height:24px; margin:0px auto 0px auto; border-spacing:25px 10px; }
table.box-pulsanti div { padding:0px 10px 0px 10px; border-radius:5px; }
@media only screen and (min-width:0px) and (max-width:1023px) {
  div#box-modulo { width:90%; margin:40px auto 40px auto; }
  div#box-campi { width:90%; padding:10px 5% 10px 5%; }
  div.separatore-blocco { width:50%; height:2px; margin:40px auto 40px auto; }
}
@media only screen and (min-width:1024px) {
  div#box-modulo { margin:40px auto 40px auto; display:table; }
  div.blocco-modulo { width:50%; vertical-align:top; display:table-cell; }
  div#box-campi { width:80%; padding:10px 5% 10px 5%; }
  div.separatore-blocco { display:none; }
}

