/*
 * EdilCasa Multiservice — restyling grafico 2026
 * Solo presentazione: nessuna modifica a testi, pagine, tag o URL.
 */

:root {
  --edil-ink: #16212d;
  --edil-ink-soft: #425466;
  --edil-navy: #15324b;
  --edil-navy-deep: #0d2539;
  --edil-green: #24c96b;
  --edil-green-dark: #159750;
  --edil-green-pale: #eaf9f0;
  --edil-surface: #ffffff;
  --edil-canvas: #f3f6f5;
  --edil-border: #dfe8e4;
  --edil-shadow: 0 18px 55px rgba(13, 37, 57, 0.11);
  --edil-shadow-soft: 0 8px 28px rgba(13, 37, 57, 0.08);
  --edil-radius-lg: 28px;
  --edil-radius-md: 18px;
  --edil-radius-sm: 12px;
}

html {
  scroll-behavior: smooth;
  background: var(--edil-canvas);
}

body,
body.page,
body.single,
body.archive {
  color: var(--edil-ink);
  background: var(--edil-canvas);
  font-family: "Rubik", "Roboto", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}

body p,
body li {
  color: var(--edil-ink-soft);
}

body a {
  color: var(--edil-green-dark);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

body a:hover {
  color: var(--edil-navy);
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  color: var(--edil-navy-deep);
  font-family: "Rubik", "Roboto", Arial, sans-serif;
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.16;
}

body h1 { font-size: clamp(2rem, 4vw, 3.7rem); }
body h2 { font-size: clamp(1.75rem, 3vw, 2.75rem); }
body h3 { font-size: clamp(1.35rem, 2vw, 1.85rem); }

/* Barra superiore e navigazione */
.masthead:not(.side-header) {
  background: rgba(255, 255, 255, 0.96) !important;
  border: 0 !important;
  box-shadow: 0 9px 30px rgba(13, 37, 57, 0.09) !important;
  backdrop-filter: blur(14px);
}

.masthead .top-bar {
  min-height: 36px;
  background: linear-gradient(90deg, var(--edil-navy-deep), #214d70) !important;
  border: 0 !important;
}

.masthead .top-bar,
.masthead .top-bar a,
.masthead .top-bar p,
.masthead .top-bar span {
  color: #fff !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.05em;
}

.masthead .header-bar {
  min-height: 82px;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.branding img,
.branding .preload-me,
.mobile-branding img {
  content: url("logo-edilcasa-store-official.png") !important;
  width: 174px !important;
  height: auto !important;
  max-width: 180px !important;
  max-height: 68px !important;
  object-fit: contain;
  border-radius: 7px;
  box-shadow: 0 5px 14px rgba(13, 37, 57, 0.12);
}

.main-nav > li {
  margin: 0 2px;
}

.main-nav > li > a {
  min-height: 44px;
  padding: 0 5px !important;
  border-radius: 10px;
}

.main-nav > li > a .menu-text {
  color: var(--edil-ink) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  letter-spacing: 0.005em;
}

.main-nav > li > a:hover,
.main-nav > li.act > a,
.main-nav > li.dt-hovered > a {
  background: var(--edil-green-pale);
}

.main-nav > li > a:hover .menu-text,
.main-nav > li.act > a .menu-text,
.main-nav > li.dt-hovered > a .menu-text {
  color: var(--edil-green-dark) !important;
}

.masthead .mini-widgets .text-area a[href^="tel:"],
.masthead a[href^="tel:"] {
  border-radius: 999px;
  font-weight: 700;
}

.masthead .soc-ico a {
  border-radius: 50% !important;
}

.sub-nav {
  padding: 10px !important;
  border: 1px solid var(--edil-border) !important;
  border-radius: 14px !important;
  box-shadow: var(--edil-shadow-soft) !important;
}

.sub-nav li a {
  border-radius: 9px;
}

/* Slider principale */
rs-module-wrap,
.rs-module-wrap,
.rev_slider_wrapper {
  display: block !important;
  width: calc(100% - 36px) !important;
  max-width: 1480px !important;
  margin: 20px auto 0 !important;
  overflow: hidden !important;
  border-radius: var(--edil-radius-lg) !important;
  box-shadow: var(--edil-shadow) !important;
}

rs-module-wrap rs-arrow,
.rs-module-wrap rs-arrow,
.rev_slider_wrapper .tparrows {
  border-radius: 50% !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2) !important;
}

/* Corpo pagina */
#main {
  background: var(--edil-canvas) !important;
  padding-top: 22px !important;
  padding-bottom: 56px !important;
}

#main > .wf-wrap {
  width: min(100%, 1500px) !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}

.home #main .wpb-content-wrapper > .vc_row {
  left: auto !important;
  width: 100% !important;
  max-width: 1280px;
  margin: 28px auto !important;
  padding: clamp(34px, 5vw, 72px) clamp(22px, 5vw, 68px) !important;
  overflow: hidden;
  border: 1px solid rgba(223, 232, 228, 0.95);
  border-radius: var(--edil-radius-lg);
  background-color: var(--edil-surface) !important;
  box-shadow: var(--edil-shadow-soft);
}

.home #main .wpb-content-wrapper > .vc_row:first-child,
.home #main .wpb-content-wrapper > .vc_row.bpic {
  border-color: transparent;
  background-color: var(--edil-navy-deep) !important;
  box-shadow: var(--edil-shadow);
}

.home #main .wpb-content-wrapper > .vc_row:first-child p,
.home #main .wpb-content-wrapper > .vc_row:first-child strong,
.home #main .wpb-content-wrapper > .vc_row.bpic p,
.home #main .wpb-content-wrapper > .vc_row.bpic strong {
  color: #fff !important;
}

.home #main .wpb-content-wrapper > .vc_row:nth-of-type(7) {
  background: linear-gradient(135deg, var(--edil-navy-deep), #1d4e68) !important;
  border-color: transparent;
}

.home #main .wpb-content-wrapper > .vc_row:nth-of-type(7) h1,
.home #main .wpb-content-wrapper > .vc_row:nth-of-type(7) h2,
.home #main .wpb-content-wrapper > .vc_row:nth-of-type(7) p,
.home #main .wpb-content-wrapper > .vc_row:nth-of-type(7) span {
  color: #fff !important;
}

.home #chisiamo {
  position: relative;
}

.home #chisiamo::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 100%;
  background: linear-gradient(var(--edil-green), var(--edil-green-dark));
  content: "";
}

.wpb_text_column p:last-child,
.wpb_content_element:last-child {
  margin-bottom: 0;
}

.wpb_single_image img,
.dt-gallery-container img,
.rollover img,
.shortcode-single-image-wrap img {
  border-radius: var(--edil-radius-md);
  box-shadow: 0 10px 30px rgba(13, 37, 57, 0.12);
}

.wpb_single_image a img,
.dt-gallery-container a img,
.rollover img {
  transition: transform 300ms ease, box-shadow 300ms ease;
}

.wpb_single_image a:hover img,
.dt-gallery-container a:hover img,
.rollover:hover img {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(13, 37, 57, 0.18);
}

/* Form e pulsanti */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="number"],
textarea,
select {
  min-height: 50px;
  padding: 12px 15px !important;
  color: var(--edil-ink) !important;
  background: #fff !important;
  border: 1px solid #cfddd7 !important;
  border-radius: var(--edil-radius-sm) !important;
  box-shadow: 0 3px 10px rgba(13, 37, 57, 0.04) !important;
  transition: border-color 180ms ease, box-shadow 180ms ease !important;
}

textarea {
  min-height: 128px;
}

input:focus,
textarea:focus,
select:focus {
  outline: 0 !important;
  border-color: var(--edil-green) !important;
  box-shadow: 0 0 0 4px rgba(36, 201, 107, 0.15) !important;
}

button,
input[type="button"],
input[type="submit"],
.dt-btn,
.vc_btn3,
.wpcf7-submit {
  min-height: 48px;
  padding: 13px 24px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--edil-green), var(--edil-green-dark)) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 24px rgba(21, 151, 80, 0.24) !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
.dt-btn:hover,
.vc_btn3:hover,
.wpcf7-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(21, 151, 80, 0.32) !important;
}

input[type="submit"]:disabled,
button:disabled {
  opacity: 0.55;
  transform: none;
  box-shadow: none !important;
}

.wpcf7-list-item-label {
  font-size: 13px;
  line-height: 1.5;
}

/* Pagine interne */
body:not(.home) #main > .wf-wrap {
  max-width: 1280px !important;
}

body:not(.home) #content {
  padding: clamp(30px, 5vw, 64px) !important;
  border: 1px solid var(--edil-border);
  border-radius: var(--edil-radius-lg);
  background: var(--edil-surface);
  box-shadow: var(--edil-shadow-soft);
}

.page-title {
  background: linear-gradient(135deg, var(--edil-navy-deep), #1d4e68) !important;
  border: 0 !important;
}

.page-title .page-title-head {
  display: block !important;
  overflow: visible !important;
}

.page-title .page-title-head h1 {
  height: auto !important;
  margin: 0 !important;
  font-size: clamp(1.65rem, 3vw, 2.7rem) !important;
}

.page-title h1,
.page-title .breadcrumbs,
.page-title .breadcrumbs a {
  color: #fff !important;
}

.post-entry-content,
.blog-shortcode .post,
.articles-list article {
  border-radius: var(--edil-radius-md);
}

/* Recensioni */
.wp-gr.wpac,
.wp-gr .wp-google-list,
.wp-gr .wp-google-review {
  border-radius: var(--edil-radius-md) !important;
}

.wp-gr .wp-google-review {
  padding: 20px !important;
  background: #fff !important;
  border: 1px solid var(--edil-border) !important;
  box-shadow: var(--edil-shadow-soft) !important;
}

/* Footer */
#footer.footer {
  position: relative;
  color: rgba(255, 255, 255, 0.78) !important;
  background: linear-gradient(145deg, var(--edil-navy-deep), #153d58) !important;
  border: 0 !important;
}

#footer .wf-container-footer {
  padding-top: 60px;
  padding-bottom: 42px;
}

#footer p,
#footer li,
#footer span {
  color: rgba(255, 255, 255, 0.78) !important;
}

#footer strong,
#footer .widget-title {
  color: #fff !important;
}

#footer a {
  color: #fff !important;
}

#footer a:hover {
  color: #7cf0ab !important;
}

#bottom-bar {
  color: rgba(255, 255, 255, 0.68) !important;
  background: #091c2b !important;
  border: 0 !important;
}

#bottom-bar p,
#bottom-bar a,
#bottom-bar span {
  color: rgba(255, 255, 255, 0.72) !important;
}

.scroll-top {
  right: 22px !important;
  bottom: 22px !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: var(--edil-green) !important;
  box-shadow: 0 10px 28px rgba(21, 151, 80, 0.28) !important;
}

/* Banner cookie */
#iubenda-cs-banner .iubenda-cs-container,
#iubenda-cs-banner .iubenda-cs-content,
.iubenda-cs-content {
  border-radius: var(--edil-radius-md) !important;
}

#iubenda-cs-banner .iubenda-cs-content {
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.3) !important;
}

#iubenda-cs-banner .iubenda-cs-accept-btn,
#iubenda-cs-banner .iubenda-cs-reject-btn,
#iubenda-cs-banner .iubenda-cs-customize-btn {
  border-radius: 999px !important;
}

/* Tastiera e accessibilità */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 3px solid rgba(36, 201, 107, 0.42) !important;
  outline-offset: 3px !important;
}

@media (max-width: 1100px) {
  .masthead .header-bar {
    min-height: 72px;
  }

  .branding img,
  .branding .preload-me,
  .mobile-branding img {
    width: 160px !important;
    max-width: 160px !important;
    max-height: 64px !important;
  }

  .home #main .wpb-content-wrapper > .vc_row {
    margin-top: 22px !important;
    margin-bottom: 22px !important;
  }
}

@media (max-width: 778px) {
  body,
  body.page,
  body.single,
  body.archive {
    font-size: 15px;
    line-height: 1.65;
  }

  .masthead .top-bar {
    min-height: 30px;
  }

  .masthead .top-bar,
  .masthead .top-bar a,
  .masthead .top-bar p,
  .masthead .top-bar span {
    font-size: 10px;
    letter-spacing: 0.025em;
  }

  .mobile-header-bar {
    min-height: 68px !important;
    padding: 8px 16px !important;
    background: rgba(255, 255, 255, 0.97) !important;
    box-shadow: 0 8px 24px rgba(13, 37, 57, 0.09) !important;
  }

  .mobile-branding img,
  .mobile-header-bar .mobile-logo {
    content: url("logo-edilcasa-store-official.png") !important;
    width: 155px !important;
    height: auto !important;
    max-width: 155px !important;
    max-height: 62px !important;
    border-radius: 7px;
  }

  .mobile-header-bar .mobile-branding {
    min-width: 155px;
  }

  .mobile-header-bar .mobile-branding img.mobile-logo {
    width: 155px !important;
    max-width: 155px !important;
  }

  .dt-mobile-header {
    background: #fff !important;
    box-shadow: -18px 0 50px rgba(13, 37, 57, 0.18) !important;
  }

  .mobile-main-nav > li > a {
    margin: 3px 12px;
    padding: 13px 15px !important;
    border-radius: 10px;
  }

  .mobile-main-nav > li > a:hover,
  .mobile-main-nav > li.act > a {
    background: var(--edil-green-pale) !important;
  }

  rs-module-wrap,
  .rs-module-wrap,
  .rev_slider_wrapper {
    width: calc(100% - 20px) !important;
    margin-top: 10px !important;
    border-radius: 18px !important;
  }

  #main {
    padding-top: 10px !important;
    padding-bottom: 34px !important;
  }

  #main > .wf-wrap {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .home #main .wpb-content-wrapper > .vc_row {
    margin: 16px auto !important;
    padding: 30px 20px !important;
    border-radius: 20px;
  }

  body:not(.home) #content {
    padding: 28px 20px !important;
    border-radius: 20px;
  }

  .wpb_single_image img,
  .dt-gallery-container img,
  .rollover img,
  .shortcode-single-image-wrap img {
    border-radius: 14px;
  }

  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="url"],
  input[type="search"],
  input[type="number"],
  textarea,
  select {
    width: 100%;
  }

  #footer .wf-container-footer {
    padding-top: 42px;
    padding-bottom: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* ========================================================================== */
/* TAGLIO DI LUCE MILANO — identità LED architettonica                       */
/* Solo presentazione: nessun testo, contenuto, tag o URL viene modificato.   */
/* ========================================================================== */

:root {
  --led-night: #050b10;
  --led-wall: #0c171e;
  --led-wall-soft: #14242d;
  --led-plaster: #dfe9e5;
  --led-white: #f4fff9;
  --led-mint: #a8ffd0;
  --led-green: #42ff91;
  --led-green-deep: #13bc62;
  --led-line: rgba(168, 255, 208, 0.52);
  --led-border: rgba(184, 255, 218, 0.18);
  --led-glow: 0 0 8px rgba(244, 255, 249, 0.8),
              0 0 24px rgba(66, 255, 145, 0.55),
              0 0 54px rgba(66, 255, 145, 0.22);
}

@keyframes edil-led-track {
  0% { background-position: -160% 0, 0 0, 0 0; }
  100% { background-position: 260% 0, 42px 26px, 0 0; }
}

@keyframes edil-led-hero-sweep {
  0% { transform: translate3d(-135%, 0, 0) skewX(-18deg); opacity: 0; }
  10% { opacity: 0.95; }
  68% { opacity: 0.95; }
  100% { transform: translate3d(430%, 0, 0) skewX(-18deg); opacity: 0; }
}

@keyframes edil-led-breathe {
  0%, 100% {
    opacity: 0.55;
    box-shadow: 0 0 8px rgba(244, 255, 249, 0.65), 0 0 24px rgba(66, 255, 145, 0.28);
  }
  50% {
    opacity: 1;
    box-shadow: var(--led-glow);
  }
}

@keyframes edil-led-button {
  0%, 100% { box-shadow: 0 10px 28px rgba(19, 188, 98, 0.28), 0 0 0 rgba(66, 255, 145, 0); }
  50% { box-shadow: 0 12px 34px rgba(19, 188, 98, 0.42), 0 0 22px rgba(66, 255, 145, 0.2); }
}

html,
body,
body.page,
body.single,
body.archive,
#page {
  background-color: var(--led-night) !important;
}

body {
  background-image:
    radial-gradient(circle at 15% 8%, rgba(66, 255, 145, 0.08), transparent 30%),
    radial-gradient(circle at 84% 32%, rgba(131, 226, 255, 0.055), transparent 28%),
    linear-gradient(155deg, #050b10 0%, #09141b 55%, #050b10 100%) !important;
  background-attachment: fixed !important;
}

body p,
body li {
  color: #bccbd3;
}

/* Testata scura come una veletta con luce incassata */
.masthead:not(.side-header) {
  background: rgba(5, 11, 16, 0.96) !important;
  border-bottom: 1px solid rgba(168, 255, 208, 0.12) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.34), 0 2px 22px rgba(66, 255, 145, 0.08) !important;
}

.masthead .top-bar {
  background:
    linear-gradient(90deg, transparent 0%, rgba(66, 255, 145, 0.18) 50%, transparent 100%),
    #02070b !important;
  border-bottom: 1px solid rgba(168, 255, 208, 0.16) !important;
}

.masthead .header-bar {
  position: relative;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px);
  background-size: 38px 100%;
}

.masthead .header-bar::after {
  position: absolute;
  z-index: 8;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 2px;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, transparent 35%, var(--led-white) 49%, var(--led-green) 52%, transparent 66%, transparent 100%);
  background-size: 240% 100%;
  content: "";
  animation: edil-led-track 8s linear infinite;
  box-shadow: 0 0 13px rgba(66, 255, 145, 0.52);
}

.branding img,
.branding .preload-me,
.mobile-branding img {
  border: 1px solid rgba(168, 255, 208, 0.22) !important;
  background: #090d0f;
  box-shadow: 0 7px 22px rgba(0, 0, 0, 0.42), 0 0 22px rgba(66, 255, 145, 0.16) !important;
}

.main-nav > li > a .menu-text {
  color: #e8f1ee !important;
}

.main-nav > li > a:hover,
.main-nav > li.act > a,
.main-nav > li.dt-hovered > a {
  background: rgba(66, 255, 145, 0.09) !important;
  box-shadow: inset 0 -1px 0 var(--led-green), 0 5px 20px rgba(66, 255, 145, 0.08);
}

.main-nav > li > a:hover .menu-text,
.main-nav > li.act > a .menu-text,
.main-nav > li.dt-hovered > a .menu-text {
  color: var(--led-mint) !important;
  text-shadow: 0 0 14px rgba(66, 255, 145, 0.34);
}

.masthead .microwidget-btn,
.masthead a[href^="tel:"] {
  animation: edil-led-button 4.8s ease-in-out infinite;
}

.sub-nav {
  background: rgba(8, 17, 23, 0.98) !important;
  border-color: var(--led-border) !important;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.42), 0 0 24px rgba(66, 255, 145, 0.08) !important;
}

.sub-nav li a,
.sub-nav li a .menu-text {
  color: #dce9e4 !important;
}

/* Slider: una parete fotografica attraversata da due tagli di luce */
rs-module-wrap {
  position: relative !important;
  isolation: isolate;
  border: 1px solid rgba(207, 255, 230, 0.2) !important;
  background: #05090c;
  box-shadow: 0 26px 72px rgba(0, 0, 0, 0.48), 0 0 38px rgba(66, 255, 145, 0.1) !important;
}

rs-module-wrap::before,
rs-module-wrap::after {
  position: absolute;
  z-index: 999;
  left: 0;
  width: 34%;
  height: 2px;
  pointer-events: none;
  content: "";
  background: linear-gradient(90deg, transparent 0%, var(--led-white) 38%, var(--led-green) 56%, transparent 100%);
  box-shadow: var(--led-glow);
  animation: edil-led-hero-sweep 9s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

rs-module-wrap::before {
  top: 18%;
}

rs-module-wrap::after {
  right: 0;
  bottom: 17%;
  left: auto;
  animation-delay: -4.5s;
  animation-direction: reverse;
}

/* Pareti e pannellature del corpo pagina */
#main {
  position: relative;
  background:
    radial-gradient(circle at 12% 12%, rgba(66, 255, 145, 0.06), transparent 24%),
    linear-gradient(160deg, #071016 0%, #0b171e 52%, #060d12 100%) !important;
}

#main::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px);
  background-size: 58px 58px;
  content: "";
  mask-image: linear-gradient(to bottom, transparent, #000 10%, #000 90%, transparent);
}

.home #main .wpb-content-wrapper > .vc_row:not(.bpic) {
  position: relative;
  isolation: isolate;
  color: #dce7e3;
  background:
    linear-gradient(90deg, transparent 0%, transparent 36%, rgba(244, 255, 249, 0.96) 48%, rgba(66, 255, 145, 0.96) 51%, transparent 64%, transparent 100%) 0 0 / 240% 2px no-repeat,
    linear-gradient(118deg, transparent 0%, transparent 47%, rgba(168, 255, 208, 0.045) 49%, rgba(168, 255, 208, 0.12) 50%, rgba(168, 255, 208, 0.045) 51%, transparent 53%, transparent 100%) 0 0 / 220% 220% no-repeat,
    radial-gradient(circle at 16% 18%, rgba(66, 255, 145, 0.075), transparent 28%),
    linear-gradient(145deg, var(--led-wall-soft) 0%, var(--led-wall) 52%, #081219 100%) !important;
  border: 1px solid var(--led-border) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    inset 0 -20px 70px rgba(0, 0, 0, 0.18),
    0 28px 70px rgba(0, 0, 0, 0.3),
    0 0 28px rgba(66, 255, 145, 0.055) !important;
  animation: edil-led-track 12s linear infinite;
}

.home #main .wpb-content-wrapper > .vc_row:not(.bpic):nth-of-type(even) {
  background:
    linear-gradient(90deg, transparent 0%, transparent 36%, rgba(244, 255, 249, 0.96) 48%, rgba(66, 255, 145, 0.96) 51%, transparent 64%, transparent 100%) 0 100% / 240% 2px no-repeat,
    linear-gradient(62deg, transparent 0%, transparent 47%, rgba(168, 255, 208, 0.045) 49%, rgba(168, 255, 208, 0.11) 50%, rgba(168, 255, 208, 0.045) 51%, transparent 53%, transparent 100%) 0 0 / 220% 220% no-repeat,
    radial-gradient(circle at 84% 22%, rgba(131, 226, 255, 0.06), transparent 28%),
    linear-gradient(215deg, #152630 0%, #0b171f 55%, #071017 100%) !important;
  animation-direction: reverse;
}

.home #main .wpb-content-wrapper > .vc_row.bpic,
.home #main .wpb-content-wrapper > .vc_row:first-child {
  position: relative;
  border: 1px solid rgba(168, 255, 208, 0.2) !important;
  box-shadow: 0 28px 74px rgba(0, 0, 0, 0.36), inset 0 0 70px rgba(5, 11, 16, 0.28) !important;
}

.home #main .wpb-content-wrapper > .vc_row h1,
.home #main .wpb-content-wrapper > .vc_row h2,
.home #main .wpb-content-wrapper > .vc_row h3,
.home #main .wpb-content-wrapper > .vc_row h4,
.home #main .wpb-content-wrapper > .vc_row h5,
.home #main .wpb-content-wrapper > .vc_row h6 {
  color: var(--led-white) !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.42), 0 0 22px rgba(66, 255, 145, 0.08);
}

.home #main .wpb-content-wrapper > .vc_row p,
.home #main .wpb-content-wrapper > .vc_row li,
.home #main .wpb-content-wrapper > .vc_row span:not(.wpcf7-list-item-label) {
  color: #c4d1d7 !important;
}

.home #main .wpb-content-wrapper > .vc_row strong {
  color: #f1faf6 !important;
}

.home #main .wpb-content-wrapper > .vc_row h1::after,
.home #main .wpb-content-wrapper > .vc_row h2::after,
.home #main .wpb-content-wrapper > .vc_row h3::after {
  display: block;
  width: min(150px, 32vw);
  height: 2px;
  margin-top: 15px;
  background: linear-gradient(90deg, var(--led-white), var(--led-green) 44%, transparent 100%);
  box-shadow: var(--led-glow);
  content: "";
  animation: edil-led-breathe 4.6s ease-in-out infinite;
}

/* Colonne come nicchie, librerie e armadi su misura */
.home #main .vc_row:not(.bpic) .vc_col-sm-3 > .vc_column-inner,
.home #main .vc_row:not(.bpic) .vc_col-sm-4 > .vc_column-inner {
  height: 100%;
  padding: 24px !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.035), transparent 48%),
    rgba(3, 10, 14, 0.38);
  border: 1px solid rgba(168, 255, 208, 0.14);
  border-radius: 16px;
  box-shadow: inset 0 0 34px rgba(0, 0, 0, 0.28), 0 14px 36px rgba(0, 0, 0, 0.18);
  transition: transform 260ms ease, border-color 260ms ease, box-shadow 260ms ease;
}

.home #main .vc_row:not(.bpic) .vc_col-sm-3 > .vc_column-inner:hover,
.home #main .vc_row:not(.bpic) .vc_col-sm-4 > .vc_column-inner:hover {
  transform: translateY(-5px);
  border-color: rgba(168, 255, 208, 0.38);
  box-shadow: inset 0 0 34px rgba(0, 0, 0, 0.22), 0 18px 44px rgba(0, 0, 0, 0.26), 0 0 24px rgba(66, 255, 145, 0.09);
}

.home #main .wpb_single_image img,
.home #main .dt-gallery-container img,
.home #main .rollover img,
.home #main .shortcode-single-image-wrap img {
  border: 1px solid rgba(168, 255, 208, 0.18);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.34), 0 0 18px rgba(66, 255, 145, 0.06);
}

.home #main .wpb_single_image a:hover img,
.home #main .dt-gallery-container a:hover img,
.home #main .rollover:hover img {
  transform: translateY(-5px) scale(1.012);
  border-color: rgba(168, 255, 208, 0.42);
  box-shadow: 0 24px 54px rgba(0, 0, 0, 0.42), 0 0 30px rgba(66, 255, 145, 0.16);
}

/* Moduli preventivo: superficie chiara incassata nella parete scura */
.home #main .wpcf7 {
  padding: clamp(18px, 3vw, 30px);
  background: rgba(246, 250, 248, 0.97);
  border: 1px solid rgba(168, 255, 208, 0.48);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 #fff, 0 20px 48px rgba(0, 0, 0, 0.3), 0 0 24px rgba(66, 255, 145, 0.08);
}

.home #main .wpcf7 p,
.home #main .wpcf7 label,
.home #main .wpcf7 span,
.home #main .wpcf7 .wpcf7-list-item-label {
  color: #263943 !important;
}

.home #main input[type="submit"],
.home #main button,
.home #main .dt-btn,
.home #main .vc_btn3 {
  animation: edil-led-button 4.8s ease-in-out infinite;
}

/* Pagine interne coerenti con il concept */
body:not(.home) #main {
  background: linear-gradient(155deg, #071017, #0d1b23) !important;
}

body:not(.home) #content {
  color: #c7d4da;
  background:
    linear-gradient(90deg, transparent 0%, rgba(66, 255, 145, 0.75) 50%, transparent 100%) 0 0 / 220% 2px no-repeat,
    linear-gradient(145deg, #14242d, #0a151c 62%) !important;
  border-color: var(--led-border) !important;
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.34), 0 0 30px rgba(66, 255, 145, 0.06) !important;
  animation: edil-led-track 12s linear infinite;
}

body:not(.home) #content h1,
body:not(.home) #content h2,
body:not(.home) #content h3,
body:not(.home) #content h4,
body:not(.home) #content strong {
  color: var(--led-white) !important;
}

body:not(.home) #content p,
body:not(.home) #content li,
body:not(.home) #content span {
  color: #c2d0d6;
}

.page-title {
  background:
    linear-gradient(90deg, transparent 0%, rgba(66, 255, 145, 0.26) 50%, transparent 100%),
    linear-gradient(135deg, #071018, #132b37) !important;
  box-shadow: inset 0 -1px 0 rgba(168, 255, 208, 0.2), 0 16px 40px rgba(0, 0, 0, 0.26);
}

#footer.footer {
  background:
    radial-gradient(circle at 15% 0%, rgba(66, 255, 145, 0.09), transparent 28%),
    linear-gradient(145deg, #03080c, #0a171e 58%, #061016) !important;
  border-top: 1px solid rgba(168, 255, 208, 0.18) !important;
  box-shadow: inset 0 12px 36px rgba(0, 0, 0, 0.28), 0 -10px 34px rgba(66, 255, 145, 0.04);
}

#footer img[src*="logo_footer"],
#footer img[alt*="Cartongesso"],
#footer .widget_media_image img {
  content: url("logo-edilcasa-store-official.png") !important;
  width: min(220px, 100%) !important;
  height: auto !important;
  padding: 4px;
  object-fit: contain;
  background: #080d10;
  border: 1px solid rgba(168, 255, 208, 0.24);
  border-radius: 10px;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.4), 0 0 26px rgba(66, 255, 145, 0.13) !important;
}

@media (max-width: 1100px) {
  .masthead .header-bar::after {
    animation-duration: 10s;
  }

  .home #main .vc_row:not(.bpic) .vc_col-sm-3 > .vc_column-inner,
  .home #main .vc_row:not(.bpic) .vc_col-sm-4 > .vc_column-inner {
    padding: 19px !important;
  }
}

@media (max-width: 778px) {
  .mobile-header-bar {
    background: rgba(5, 11, 16, 0.98) !important;
    border-bottom: 1px solid rgba(168, 255, 208, 0.16);
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.36), 0 2px 18px rgba(66, 255, 145, 0.08) !important;
  }

  .mobile-header-bar .dt-mobile-menu-icon .lines,
  .mobile-header-bar .dt-mobile-menu-icon .lines::before,
  .mobile-header-bar .dt-mobile-menu-icon .lines::after {
    background-color: var(--led-green) !important;
    box-shadow: 0 0 8px rgba(66, 255, 145, 0.34);
  }

  .dt-mobile-header {
    background: #071017 !important;
  }

  .mobile-main-nav > li > a .menu-text {
    color: #e5f0ec !important;
  }

  .mobile-main-nav > li > a:hover,
  .mobile-main-nav > li.act > a {
    background: rgba(66, 255, 145, 0.09) !important;
  }

  .home #main .wpb-content-wrapper > .vc_row:not(.bpic),
  body:not(.home) #content {
    animation-duration: 16s;
  }

  rs-module-wrap::before,
  rs-module-wrap::after {
    width: 48%;
    animation-duration: 11s;
  }

  .home #main .vc_row:not(.bpic) .vc_col-sm-3 > .vc_column-inner,
  .home #main .vc_row:not(.bpic) .vc_col-sm-4 > .vc_column-inner {
    margin-bottom: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .masthead .header-bar::after,
  .masthead .microwidget-btn,
  .masthead a[href^="tel:"],
  rs-module-wrap::before,
  rs-module-wrap::after,
  .home #main .wpb-content-wrapper > .vc_row,
  .home #main .wpb-content-wrapper > .vc_row h1::after,
  .home #main .wpb-content-wrapper > .vc_row h2::after,
  .home #main .wpb-content-wrapper > .vc_row h3::after,
  .home #main input[type="submit"],
  .home #main button,
  .home #main .dt-btn,
  .home #main .vc_btn3,
  body:not(.home) #content {
    animation: none !important;
  }
}
