.elementor-159 .elementor-element.elementor-element-49398f8{--display:flex;}.elementor-159 .elementor-element.elementor-element-9faa006{margin:50px 0px calc(var(--kit-widget-spacing, 0px) + 50px) 0px;}.elementor-159 .elementor-element.elementor-element-efedc36:not(.elementor-motion-effects-element-type-background), .elementor-159 .elementor-element.elementor-element-efedc36 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3F3F3;background-image:url("https://avvocatoministeri.com/wp-content/uploads/2026/08/banner-hero.jpg");background-position:top left;background-repeat:no-repeat;background-size:cover;}.elementor-159 .elementor-element.elementor-element-efedc36 > .elementor-background-overlay{background-color:var( --e-global-color-secondary );opacity:0.9;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-159 .elementor-element.elementor-element-efedc36{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 0px 100px 0px;}.elementor-159 .elementor-element.elementor-element-a6ebd8b{text-align:start;}.elementor-159 .elementor-element.elementor-element-a6ebd8b .elementor-heading-title{font-size:25px;color:var( --e-global-color-6f999f4 );}.elementor-159 .elementor-element.elementor-element-73cde7c{text-align:start;}.elementor-159 .elementor-element.elementor-element-73cde7c .elementor-heading-title{font-size:37px;color:var( --e-global-color-primary );}.elementor-159 .elementor-element.elementor-element-a80dc66{color:var( --e-global-color-6f999f4 );}.elementor-159 .elementor-element.elementor-element-130d346 > .elementor-element-populated{padding:10px 10px 10px 80px;}.elementor-159 .elementor-element.elementor-element-662de9b:not(.elementor-motion-effects-element-type-background), .elementor-159 .elementor-element.elementor-element-662de9b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-159 .elementor-element.elementor-element-662de9b{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:40px 0px 30px 0px;}.elementor-159 .elementor-element.elementor-element-662de9b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-159 .elementor-element.elementor-element-81fb1ad{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;text-align:start;}.elementor-159 .elementor-element.elementor-element-81fb1ad .elementor-heading-title{color:var( --e-global-color-9ab7f15 );}.elementor-159 .elementor-element.elementor-element-a6e8529{color:var( --e-global-color-9ab7f15 );}.elementor-bc-flex-widget .elementor-159 .elementor-element.elementor-element-cbff123.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-159 .elementor-element.elementor-element-cbff123.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-159 .elementor-element.elementor-element-5d3ff6b .elementor-button{background-color:var( --e-global-color-secondary );fill:var( --e-global-color-6f999f4 );color:var( --e-global-color-6f999f4 );}.elementor-159 .elementor-element.elementor-element-5d3ff6b .elementor-button:hover, .elementor-159 .elementor-element.elementor-element-5d3ff6b .elementor-button:focus{background-color:var( --e-global-color-6f999f4 );color:var( --e-global-color-primary );}.elementor-159 .elementor-element.elementor-element-5d3ff6b .elementor-button:hover svg, .elementor-159 .elementor-element.elementor-element-5d3ff6b .elementor-button:focus svg{fill:var( --e-global-color-primary );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-159 .elementor-element.elementor-element-cfbeab4{width:40%;}.elementor-159 .elementor-element.elementor-element-130d346{width:59.666%;}}@media(max-width:767px){.elementor-159 .elementor-element.elementor-element-efedc36:not(.elementor-motion-effects-element-type-background), .elementor-159 .elementor-element.elementor-element-efedc36 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center right;background-repeat:no-repeat;background-size:cover;}.elementor-159 .elementor-element.elementor-element-efedc36{padding:100px 20px 100px 20px;}.elementor-159 .elementor-element.elementor-element-130d346 > .elementor-element-populated{padding:10px 10px 10px 10px;}.elementor-159 .elementor-element.elementor-element-662de9b{padding:50px 20px 50px 20px;}.elementor-159 .elementor-element.elementor-element-81fb1ad{text-align:center;}.elementor-159 .elementor-element.elementor-element-a6e8529{text-align:center;}}/* Start custom CSS for html, class: .elementor-element-9faa006 *//* ==========================================
   STUDIO LEGALE MINISTERI
   PAGINA CONTATTI
   ========================================== */

.slm-contatti {
  width: 100%;
  overflow: hidden;
  font-family: inherit;
}

.slm-contatti * {
  box-sizing: border-box;
}


/* ==========================================
   HERO
   ========================================== */

.slm-contatti-hero {
  width: 100%;
  padding: 95px 20px 100px;

  background: #30363d;
  color: #ffffff;
}

.slm-contatti-hero-inner {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.slm-contatti-eyebrow {
  display: block;

  margin-bottom: 18px;

  color: #c5a15a;

  font-size: 12px;
  font-weight: 600;

  letter-spacing: 2.5px;
}

.slm-contatti-hero h1 {
  max-width: 760px;

  margin: 0 0 22px;

  color: #ffffff;

  font-size: 58px;
  line-height: 1.1;
  font-weight: 500;

  font-family: inherit;
}

.slm-contatti-hero p {
  max-width: 620px;

  margin: 0;

  color: rgba(255,255,255,0.78);

  font-size: 17px;
  line-height: 1.8;
}


/* ==========================================
   MAIN
   ========================================== */

.slm-contatti-main {
  width: calc(100% - 80px);
  max-width: 1180px;

  margin: 0 auto;

  padding: 90px 0;

  display: grid;
  grid-template-columns: 0.8fr 1.2fr;

  gap: 90px;
}


/* ==========================================
   LABEL
   ========================================== */

.slm-contatti-label {
  display: block;

  margin-bottom: 15px;

  color: #c5a15a;

  font-size: 11px;
  font-weight: 600;

  letter-spacing: 2px;
}


/* ==========================================
   TITOLI
   ========================================== */

.slm-contatti-info h2,
.slm-contatti-form-wrapper h2,
.slm-location-content h2 {
  margin: 0 0 20px;

  color: #20252a;

  font-size: 38px;
  line-height: 1.2;
  font-weight: 500;

  font-family: inherit;
}


/* ==========================================
   INTRO
   ========================================== */

.slm-contatti-intro,
.slm-form-intro {
  margin: 0 0 40px;

  color: #666b70;

  font-size: 15px;
  line-height: 1.8;
}


/* ==========================================
   INFORMAZIONI
   ========================================== */

.slm-contatto-item {
  display: flex;
  align-items: flex-start;

  gap: 18px;

  margin-bottom: 28px;
}

.slm-contatto-icon {
  width: 42px;
  height: 42px;

  flex: 0 0 42px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(197,161,90,0.55);

  border-radius: 50%;
}

.slm-contatto-icon svg {
  width: 20px;
  height: 20px;

  fill: none;

  stroke: #c5a15a;

  stroke-width: 1.5;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.slm-contatto-item span {
  display: block;

  margin-bottom: 5px;

  color: #8a8f93;

  font-size: 11px;

  letter-spacing: 1.5px;

  text-transform: uppercase;
}

.slm-contatto-item a,
.slm-contatto-item p {
  margin: 0;

  color: #30363d;

  font-size: 15px;

  line-height: 1.6;
}

.slm-contatto-item a {
  text-decoration: none;

  transition: color 0.3s ease;
}

.slm-contatto-item a:hover {
  color: #c5a15a;
}


/* ==========================================
   NOTA
   ========================================== */

.slm-contatti-note {
  margin-top: 40px;

  padding: 24px;

  border-left: 2px solid #c5a15a;

  background: #f7f6f3;
}

.slm-contatti-note span {
  display: block;

  margin-bottom: 7px;

  color: #30363d;

  font-size: 14px;
  font-weight: 600;
}

.slm-contatti-note p {
  margin: 0;

  color: #777;

  font-size: 13px;
  line-height: 1.7;
}


/* ==========================================
   FORM
   ========================================== */

.slm-contatti-form-wrapper {
  padding: 48px;

  background: #f7f6f3;

  border-top: 2px solid #c5a15a;
}

.slm-contact-form {
  width: 100%;
}

.slm-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;

  gap: 20px;
}

.slm-form-group {
  margin-bottom: 22px;
}

.slm-form-group label {
  display: block;

  margin-bottom: 8px;

  color: #30363d;

  font-size: 12px;
  font-weight: 600;
}

.slm-form-group input,
.slm-form-group select,
.slm-form-group textarea {
  width: 100%;

  padding: 14px 15px;

  border: 1px solid #d9d8d4;

  border-radius: 0;

  outline: none;

  background: #ffffff;

  color: #30363d;

  font-family: inherit;

  font-size: 14px;

  transition:
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

.slm-form-group input,
.slm-form-group select {
  height: 50px;
}

.slm-form-group textarea {
  min-height: 145px;

  resize: vertical;
}

.slm-form-group input:focus,
.slm-form-group select:focus,
.slm-form-group textarea:focus {
  border-color: #c5a15a;

  box-shadow: 0 0 0 2px rgba(197,161,90,0.08);
}

.slm-form-group input::placeholder,
.slm-form-group textarea::placeholder {
  color: #aaa;
}


/* ==========================================
   PRIVACY
   ========================================== */

.slm-form-privacy {
  margin-bottom: 25px;
}

.slm-checkbox {
  display: flex;
  align-items: flex-start;

  gap: 10px;

  cursor: pointer;
}

.slm-checkbox input {
  width: 15px;
  height: 15px;

  margin-top: 2px;

  accent-color: #c5a15a;
}

.slm-checkbox span {
  color: #777;

  font-size: 12px;
  line-height: 1.6;
}


/* ==========================================
   SUBMIT
   ========================================== */

.slm-form-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 20px;

  min-height: 50px;

  padding: 0 28px;

  border: 1px solid #c5a15a;

  border-radius: 0;

  background: #c5a15a;

  color: #ffffff;

  cursor: pointer;

  font-family: inherit;

  font-size: 13px;
  font-weight: 600;

  transition:
    background 0.3s ease,
    color 0.3s ease;
}

.slm-form-submit span {
  font-size: 18px;

  transition: transform 0.3s ease;
}

.slm-form-submit:hover {
  background: #30363d;

  color: #ffffff;
}

.slm-form-submit:hover span {
  transform: translateX(5px);
}


/* ==========================================
   LOCATION
   ========================================== */

.slm-contatti-location {
  width: calc(100% - 80px);
  max-width: 1180px;

  min-height: 360px;

  margin: 0 auto 90px;

  display: grid;
  grid-template-columns: 0.8fr 1.2fr;

  background: #30363d;
}

.slm-location-content {
  padding: 60px;
}

.slm-location-content h2 {
  color: #ffffff;
}

.slm-location-content p {
  max-width: 360px;

  margin: 0 0 28px;

  color: rgba(255,255,255,0.72);

  font-size: 14px;

  line-height: 1.8;
}

.slm-location-link {
  display: inline-flex;
  align-items: center;

  gap: 12px;

  color: #ffffff !important;

  text-decoration: none !important;

  font-size: 13px;
  font-weight: 600;

  transition: color 0.3s ease;
}

.slm-location-link span {
  color: #c5a15a;

  font-size: 18px;

  transition: transform 0.3s ease;
}

.slm-location-link:hover {
  color: #c5a15a !important;
}

.slm-location-link:hover span {
  transform: translateX(5px);
}


/* ==========================================
   MAPPA
   ========================================== */

.slm-location-map {
  min-height: 360px;

  background:
    linear-gradient(
      rgba(245,245,242,0.88),
      rgba(245,245,242,0.88)
    ),
    repeating-linear-gradient(
      45deg,
      #ddd 0,
      #ddd 1px,
      transparent 1px,
      transparent 35px
    );

  display: flex;
  align-items: center;
  justify-content: center;
}

.slm-map-placeholder {
  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  color: #30363d;
}

.slm-map-placeholder svg {
  width: 44px;
  height: 44px;

  margin-bottom: 12px;

  fill: none;

  stroke: #c5a15a;

  stroke-width: 1.5;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.slm-map-placeholder span {
  font-size: 15px;
  font-weight: 600;
}

.slm-map-placeholder small {
  margin-top: 5px;

  color: #777;

  font-size: 12px;
}


/* ==========================================
   CTA FINALE
   ========================================== */

.slm-contatti-final {
  width: 100%;

  padding: 55px max(40px, calc((100% - 1180px) / 2));

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 40px;

  background: #c5a15a;
}

.slm-contatti-final > div > span {
  display: block;

  margin-bottom: 8px;

  color: rgba(255,255,255,0.75);

  font-size: 10px;

  letter-spacing: 2px;
}

.slm-contatti-final h2 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 30px;

  font-weight: 500;

  font-family: inherit;
}

.slm-contatti-final p {
  margin: 0;

  color: rgba(255,255,255,0.85);

  font-size: 13px;
}

.slm-final-phone {
  display: inline-flex;

  align-items: center;

  gap: 15px;

  padding: 15px 24px;

  border: 1px solid #ffffff;

  color: #ffffff !important;

  text-decoration: none !important;

  font-size: 13px;
  font-weight: 600;

  transition:
    background 0.3s ease,
    color 0.3s ease;
}

.slm-final-phone span {
  font-size: 18px;

  transition: transform 0.3s ease;
}

.slm-final-phone:hover {
  background: #ffffff;

  color: #30363d !important;
}

.slm-final-phone:hover span {
  transform: translateX(5px);
}


/* ==========================================
   TABLET
   ========================================== */

@media (max-width: 900px) {

  .slm-contatti-main {
    width: calc(100% - 40px);

    grid-template-columns: 1fr;

    gap: 55px;

    padding: 70px 0;
  }

  .slm-contatti-location {
    width: calc(100% - 40px);

    grid-template-columns: 1fr;
  }

  .slm-location-map {
    min-height: 300px;
  }

}


/* ==========================================
   MOBILE
   ========================================== */

@media (max-width: 650px) {

  .slm-contatti-hero {
    padding: 65px 20px 70px;
  }

  .slm-contatti-hero h1 {
    font-size: 40px;
  }

  .slm-contatti-hero p {
    font-size: 15px;
  }

  .slm-contatti-main {
    width: calc(100% - 28px);

    padding: 55px 0;

    gap: 45px;
  }

  .slm-contatti-info h2,
  .slm-contatti-form-wrapper h2,
  .slm-location-content h2 {
    font-size: 30px;
  }

  .slm-contatti-form-wrapper {
    padding: 30px 22px;
  }

  .slm-form-row {
    grid-template-columns: 1fr;

    gap: 0;
  }

  .slm-contatti-location {
    width: calc(100% - 28px);

    margin-bottom: 55px;
  }

  .slm-location-content {
    padding: 40px 28px;
  }

  .slm-location-map {
    min-height: 250px;
  }

  .slm-contatti-final {
    padding: 40px 22px;

    flex-direction: column;

    align-items: flex-start;
  }

  .slm-contatti-final h2 {
    font-size: 27px;
  }

}


/* ==========================================
   MOBILE PICCOLO
   ========================================== */

@media (max-width: 380px) {

  .slm-contatti-hero h1 {
    font-size: 34px;
  }

  .slm-contatti-main {
    width: calc(100% - 20px);
  }

  .slm-contatti-location {
    width: calc(100% - 20px);
  }

}/* End custom CSS */