/** Shopify CDN: Minification failed

Line 554:18 Unexpected "{"
Line 554:27 Expected ":"
Line 554:34 Unexpected "{"
Line 555:16 Expected identifier but found whitespace
Line 555:18 Unexpected "{"
Line 555:27 Expected ":"
Line 555:53 Expected ":"
Line 556:19 Expected identifier but found whitespace
Line 556:21 Unexpected "{"
Line 556:30 Expected ":"
... and 4 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:busti-appuntamento (INDEX:4) */
.shopify-section.bc-busti-form { margin: 0; padding: 0; }
.bf-form {
  --bf-deep: #045461;
  --bf-dark: #087684;
  --bf-pale: #f4fbfc;
  --bf-sand: #f2eee7;
  --bf-border: #ddebed;
  --bf-charcoal: #262828;
  padding-top: var(--bf-pt, 92px);
  padding-bottom: var(--bf-pb, 92px);
  background: linear-gradient(180deg, var(--bf-bg, var(--bf-pale)), #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}
.bf-form *, .bf-form *::before, .bf-form *::after { box-sizing: border-box; }
.bf-form .bf-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.bf-form__grid { display: grid; grid-template-columns: 0.86fr 1.14fr; gap: 46px; align-items: start; }
.bf-form .bf-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px;
  color: var(--bf-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase;
}
.bf-form .bf-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--bf-accent, #1599a6); }
.bf-form h2, .bf-form h3 {
  margin: 0 0 18px; color: var(--bf-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-weight: 700; line-height: 1.12;
}
.bf-form h2 { font-size: clamp(1.9rem, 3.2vw, 3.1rem); letter-spacing: -0.035em; }
.bf-form h3 { font-size: 1.3rem; }
.bf-form p, .bf-form .bf-copy, .bf-form .bf-copy p {
  margin: 0 0 18px; color: var(--bf-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65;
}
.bf-form .bf-copy p:last-child, .bf-info .bf-copy p:last-child, .bf-note p:last-child { margin-bottom: 0; }
.bf-form strong { display: inline; font-weight: 800; color: var(--bf-charcoal); }
.bf-infos { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 34px; }
.bf-info { padding: 22px; border: 1px solid var(--bf-border); border-radius: 18px; background: #fff; }
.bf-info h3 { margin-bottom: 8px; }
.bf-note {
  margin-top: 14px; padding: 14px; border-radius: 13px; background: var(--bf-sand);
  color: var(--bf-text, #3e4a4d); font-size: 17px; line-height: 1.55;
}
.bf-note p { margin: 0; font-size: 17px; }
.bf-card {
  padding: 32px; border: 1px solid var(--bf-border); border-radius: 28px; background: #fff;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}
.bf-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.bf-field--full { grid-column: 1 / -1; }
.bf-form label {
  display: block; margin-bottom: 7px; color: var(--bf-charcoal);
  font-size: 17px; font-weight: 800; line-height: 1.35;
}
.bf-form input:not([type="checkbox"]),
.bf-form select,
.bf-form textarea {
  width: 100%; min-height: 44px; padding: 13px 14px;
  border: 1px solid #c8dadd; border-radius: 13px; background: #fff; color: var(--bf-charcoal);
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.4;
}
.bf-form textarea { min-height: 140px; resize: vertical; }
.bf-check { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.bf-check input {
  width: 20px; height: 20px; margin: 0; flex: 0 0 44px; accent-color: var(--bf-dark);
}
.bf-check label { margin: 0; font-size: 17px; font-weight: 400; line-height: 1.45; }
.bf-form .bf-btn {
  display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 52px;
  padding: 14px 22px; border: 0; border-radius: 999px; background: var(--bf-dark); color: #fff;
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 800; line-height: 1.2;
  text-decoration: none; cursor: pointer; box-shadow: 0 14px 28px rgba(8, 118, 132, 0.24);
}
.bf-form .bf-btn:hover { background: var(--bf-deep); color: #fff; }
.bf-form a { color: var(--bf-deep); font-weight: 800; text-decoration: underline; }
.bf-form a:focus-visible,
.bf-form .bf-btn:focus-visible,
.bf-form input:focus-visible,
.bf-form select:focus-visible,
.bf-form textarea:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}
.bf-status { margin-bottom: 16px; padding: 14px 16px; border-radius: 13px; }
.bf-status p, .bf-status li { margin: 0 0 8px; font-size: 17px; }
.bf-form .bf-status ul { margin: 8px 0 0; padding-left: 1.25em; list-style: disc outside; }
.bf-form .bf-status li { display: list-item; list-style: disc outside; }
.bf-status--success { background: #e7f6ee; color: #0d6b3a; }
.bf-status--error { background: #fdecec; color: #8d1d1d; }
@media (max-width: 1040px) {
  .bf-form__grid { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 680px) {
  .bf-form { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .bf-form .bf-wrap { width: min(100% - 28px, 1180px); }
  .bf-form p, .bf-form .bf-copy, .bf-form .bf-copy p, .bf-note, .bf-note p,
  .bf-form input:not([type="checkbox"]), .bf-form select, .bf-form textarea { font-size: 17px; }
  .bf-infos, .bf-fields { grid-template-columns: 1fr; }
  .bf-card { padding: 22px; }
}
/* END_SECTION:busti-appuntamento */

/* START_SECTION:busti-patologie (INDEX:5) */
.shopify-section.bc-busti {
  margin: 0;
  padding: 0;
}

.bc-pat {
  --bc-deep: #045461;
  --bc-dark: #087684;
  --bc-sand: #f2eee7;
  --bc-border: #ddebed;
  --bc-charcoal: #262828;
  padding-top: var(--bc-pt, 92px);
  padding-bottom: var(--bc-pb, 92px);
  background: var(--bc-bg, #f4fbfc);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.bc-pat *,
.bc-pat *::before,
.bc-pat *::after {
  box-sizing: border-box;
}

.bc-pat .bc-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.bc-pat .bc-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--bc-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.bc-pat .bc-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--bc-accent, #1599a6);
}

.bc-pat h2,
.bc-pat h3 {
  margin: 0 0 18px;
  color: var(--bc-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.bc-pat h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.bc-pat h3 {
  font-size: 1.3rem;
  letter-spacing: 0;
}

.bc-pat p,
.bc-pat .bc-copy,
.bc-pat .bc-copy p,
.bc-pat li {
  margin: 0 0 18px;
  padding: 0;
  color: var(--bc-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
  list-style: none;
}

.bc-pat strong {
  display: inline;
  font-weight: 800;
  color: var(--bc-charcoal);
}

.bc-pat a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.bc-intro {
  max-width: 880px;
}

.bc-intro p:last-child {
  margin-bottom: 0;
}

.bc-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-top: 38px;
}

.bc-card {
  overflow: hidden;
  border: 1px solid var(--bc-border);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(4, 84, 97, 0.07);
}

.bc-card__top {
  position: relative;
  min-height: 180px;
  padding: 32px;
  overflow: hidden;
  background: linear-gradient(135deg, var(--bc-deep), var(--bc-dark));
  color: #fff;
}

.bc-card__top::after {
  content: "";
  position: absolute;
  top: -12px;
  right: 36px;
  width: 90px;
  height: 210px;
  border: 7px solid rgba(255, 255, 255, 0.5);
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-radius: 48% 52% 44% 56%;
  transform: rotate(11deg);
  pointer-events: none;
}

.bc-card__top h3,
.bc-card__top p {
  position: relative;
  z-index: 1;
  max-width: 70%;
  margin-bottom: 12px;
  color: #fff;
}

.bc-card__top p:last-child {
  margin-bottom: 0;
}

.bc-card__body {
  padding: 28px;
}

.bc-card__body .bc-copy p:last-child {
  margin-bottom: 0;
}

.bc-card__body ul {
  margin: 18px 0 0;
  padding-left: 22px;
}

.bc-card__body li {
  display: list-item;
  margin: 0 0 8px;
  list-style: disc;
}

.bc-card__body li:last-child {
  margin-bottom: 0;
}

.bc-note,
.bc-note p {
  max-width: 940px;
  margin: 28px auto 0;
  padding: 16px;
  border-radius: 15px;
  background: var(--bc-sand);
  color: var(--bc-text, #3e4a4d);
  font-size: 17px;
  text-align: center;
}

.bc-note p {
  margin: 0;
}

@media (max-width: 1040px) {
  .bc-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 680px) {
  .bc-pat {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .bc-pat .bc-wrap {
    width: min(100% - 28px, 1180px);
  }

  .bc-pat p,
  .bc-pat .bc-copy,
  .bc-pat .bc-copy p,
  .bc-pat li {
    font-size: 17px;
  }

  .bc-grid {
    grid-template-columns: 1fr;
  }

  .bc-card__top h3,
  .bc-card__top p {
    max-width: 74%;
  }
}
/* END_SECTION:busti-patologie */

/* START_SECTION:busti-visita (INDEX:6) */
.shopify-section.bc-busti {
  margin: 0;
  padding: 0;
}

.bc-vis {
  --bc-deep: #045461;
  --bc-dark: #087684;
  --bc-soft: #eaf7f8;
  --bc-border: #ddebed;
  --bc-charcoal: #262828;
  padding-top: var(--bc-pt, 92px);
  padding-bottom: var(--bc-pb, 92px);
  background: var(--bc-bg, #f4fbfc);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.bc-vis *,
.bc-vis *::before,
.bc-vis *::after {
  box-sizing: border-box;
}

.bc-vis .bc-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.bc-vis .bc-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--bc-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.bc-vis .bc-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--bc-accent, #1599a6);
}

.bc-vis h2,
.bc-vis h3 {
  margin: 0 0 18px;
  color: var(--bc-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.bc-vis h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.bc-vis h3 {
  font-size: 1.3rem;
  letter-spacing: 0;
}

.bc-vis p,
.bc-vis .bc-copy,
.bc-vis .bc-copy p,
.bc-vis li {
  margin: 0 0 18px;
  padding: 0;
  color: var(--bc-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
  list-style: none;
}

.bc-vis strong {
  display: inline;
  font-weight: 800;
  color: var(--bc-charcoal);
}

.bc-vis a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.bc-intro {
  max-width: 880px;
}

.bc-intro p:last-child {
  margin-bottom: 0;
}

.bc-panels {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 62px;
  align-items: stretch;
  margin-top: 8px;
}

.bc-panel {
  padding: 34px;
  border: 1px solid var(--bc-border);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}

.bc-panel--accent {
  background: linear-gradient(135deg, var(--bc-deep), var(--bc-dark));
  border-color: transparent;
}

.bc-tag {
  display: inline-flex;
  align-items: center;
  margin-bottom: 18px;
  padding: 7px 11px;
  border-radius: 999px;
  background: var(--bc-soft);
  color: var(--bc-deep);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.3;
}

.bc-panel ul {
  margin: 18px 0;
  padding-left: 22px;
}

.bc-panel li {
  display: list-item;
  margin: 0 0 8px;
  list-style: disc;
}

.bc-panel li:last-child {
  margin-bottom: 0;
}

.bc-panel__note p {
  margin-bottom: 0;
}

.bc-panel--accent h3,
.bc-panel--accent p,
.bc-panel--accent li,
.bc-panel--accent strong {
  color: #fff !important;
}

.bc-panel--accent .bc-tag {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}

.bc-panel--accent a:focus-visible {
  outline-color: #fff;
}

@media (max-width: 1040px) {
  .bc-panels {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

@media (max-width: 680px) {
  .bc-vis {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .bc-vis .bc-wrap {
    width: min(100% - 28px, 1180px);
  }

  .bc-vis p,
  .bc-vis .bc-copy,
  .bc-vis .bc-copy p,
  .bc-vis li {
    font-size: 17px;
  }
}
/* END_SECTION:busti-visita */

/* START_SECTION:callback-contact-form (INDEX:7) */
#shopify-section-{{ section.id }} {
    padding-top: {{ section.settings.padding_top }}px;
    padding-bottom: {{ section.settings.padding_bottom }}px;
  }
/* END_SECTION:callback-contact-form */

/* START_SECTION:chi-siamo-prodotti (INDEX:16) */
.shopify-section.cs-chi { margin: 0; padding: 0; }
.cs-prod {
  --cs-dark: #087684;
  --cs-border: #ddebed;
  --cs-charcoal: #262828;
  padding-top: var(--cs-pt, 92px);
  padding-bottom: var(--cs-pb, 70px);
  background: var(--cs-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}
.cs-prod *, .cs-prod *::before, .cs-prod *::after { box-sizing: border-box; }
.cs-prod .cs-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.cs-prod .cs-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px;
  color: var(--cs-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase;
}
.cs-prod .cs-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--cs-accent, #1599a6); }
.cs-prod h2, .cs-prod h3 {
  margin: 0 0 18px; color: var(--cs-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-weight: 700; line-height: 1.12;
}
.cs-prod h2 { font-size: clamp(1.9rem, 3vw, 3.15rem); letter-spacing: -0.035em; }
.cs-prod h3 { margin-bottom: 8px; font-size: 1.22rem; letter-spacing: 0; }
.cs-prod p, .cs-prod .cs-copy, .cs-prod .cs-copy p {
  margin: 0 0 18px; color: var(--cs-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65;
}
.cs-intro { max-width: 820px; }
.cs-intro p:last-child, .cs-tile__body .cs-copy p:last-child { margin-bottom: 0; }
.cs-prod strong { display: inline; font-weight: 800; color: var(--cs-charcoal); }
.cs-prod__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 38px; }
.cs-tile {
  overflow: hidden; border: 1px solid var(--cs-border); border-radius: 24px; background: #fff;
  box-shadow: 0 10px 24px rgba(4, 84, 97, 0.06);
}
.cs-tile__img, .cs-tile .cs-ph { width: 100%; height: 300px; object-fit: cover; background: #eaf7f8; }
.cs-tile__body { padding: 22px; }
.cs-prod a:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
@media (max-width: 1020px) { .cs-prod__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) {
  .cs-prod { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .cs-prod .cs-wrap { width: min(100% - 28px, 1180px); }
  .cs-prod p, .cs-prod .cs-copy, .cs-prod .cs-copy p { font-size: 17px; }
  .cs-prod__grid { grid-template-columns: 1fr; }
}
/* END_SECTION:chi-siamo-prodotti */

/* START_SECTION:chi-siamo-servizi (INDEX:17) */
.shopify-section.cs-chi { margin: 0; padding: 0; }
.cs-services {
  --cs-dark: #087684;
  --cs-border: #ddebed;
  --cs-pale: #f4fbfc;
  --cs-charcoal: #262828;
  padding-top: var(--cs-pt, 92px);
  padding-bottom: var(--cs-pb, 92px);
  background: var(--cs-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}
.cs-services *, .cs-services *::before, .cs-services *::after { box-sizing: border-box; }
.cs-services .cs-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.cs-services .cs-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px;
  color: var(--cs-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase;
}
.cs-services .cs-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--cs-accent, #1599a6); }
.cs-services h2 {
  margin: 0; color: var(--cs-heading, #262828); font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1.9rem, 3vw, 3.15rem); font-weight: 700; letter-spacing: -0.035em; line-height: 1.12;
}
.cs-services p, .cs-services .cs-copy, .cs-services .cs-copy p {
  margin: 0; color: var(--cs-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65;
}
.cs-services__head {
  display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 54px; align-items: end; margin-bottom: 36px;
}
.cs-services__head .cs-copy { max-width: 680px; }
.cs-services__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.cs-service {
  position: relative; min-height: 148px; overflow: hidden; padding: 22px;
  border: 1px solid var(--cs-border); border-radius: 22px;
  background: linear-gradient(180deg, #fff 0%, var(--cs-pale) 100%);
}
.cs-service::after {
  content: ""; position: absolute; right: -34px; bottom: -34px; width: 86px; height: 86px;
  border-radius: 50%; background: rgba(21, 153, 166, 0.1);
}
.cs-service__num {
  position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; margin-bottom: 14px; border-radius: 12px;
  background: var(--cs-dark); color: #fff; font-size: 17px; font-weight: 900; line-height: 1;
}
.cs-service strong {
  position: relative; z-index: 1; display: block; color: var(--cs-charcoal);
  font-size: 18px; font-weight: 800; letter-spacing: 0.01em; line-height: 1.25; text-transform: uppercase;
}
.cs-services a:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
@media (max-width: 1020px) {
  .cs-services__head, .cs-services__grid { grid-template-columns: 1fr 1fr; }
  .cs-services__head { gap: 24px; }
}
@media (max-width: 640px) {
  .cs-services { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .cs-services .cs-wrap { width: min(100% - 28px, 1180px); }
  .cs-services p, .cs-services .cs-copy, .cs-services .cs-copy p, .cs-service strong { font-size: 17px; }
  .cs-services__head, .cs-services__grid { grid-template-columns: 1fr; }
}
/* END_SECTION:chi-siamo-servizi */

/* START_SECTION:chi-siamo-showroom (INDEX:18) */
.shopify-section.cs-chi { margin: 0; padding: 0; }
.cs-show {
  --cs-dark: #087684;
  --cs-deep: #045461;
  --cs-soft: #eaf7f8;
  --cs-border: #ddebed;
  --cs-charcoal: #262828;
  padding-top: var(--cs-pt, 92px);
  padding-bottom: var(--cs-pb, 92px);
  background: var(--cs-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}
.cs-show *, .cs-show *::before, .cs-show *::after { box-sizing: border-box; }
.cs-show .cs-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.cs-show__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.cs-show__img, .cs-show .cs-ph {
  width: 100%; height: 560px; object-fit: cover; border-radius: 24px; background: #eaf7f8;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.15);
}
.cs-show .cs-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px;
  color: var(--cs-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase;
}
.cs-show .cs-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--cs-accent, #1599a6); }
.cs-show h2 {
  margin: 0 0 18px; color: var(--cs-heading, #262828); font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1.9rem, 3vw, 3.15rem); font-weight: 700; letter-spacing: -0.035em; line-height: 1.12;
}
.cs-show p, .cs-show .cs-copy, .cs-show .cs-copy p {
  margin: 0 0 18px; color: var(--cs-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65;
}
.cs-show .cs-copy p:last-child { margin-bottom: 0; }
.cs-show strong { display: inline; font-weight: 800; color: var(--cs-charcoal); }
.cs-features { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 28px; }
.cs-feature {
  display: flex; align-items: center; min-height: 44px; padding: 15px 16px;
  border: 1px solid var(--cs-border); border-radius: 16px; background: var(--cs-soft);
  color: var(--cs-deep); font-size: 17px; font-weight: 800; line-height: 1.3;
}
.cs-show a:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
@media (max-width: 1020px) { .cs-show__grid { grid-template-columns: 1fr; gap: 32px; } }
@media (max-width: 640px) {
  .cs-show { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .cs-show .cs-wrap { width: min(100% - 28px, 1180px); }
  .cs-show p, .cs-show .cs-copy, .cs-show .cs-copy p { font-size: 17px; }
  .cs-show__img, .cs-show .cs-ph { height: 360px; }
  .cs-features { grid-template-columns: 1fr; }
}
/* END_SECTION:chi-siamo-showroom */

/* START_SECTION:chi-siamo-territorio (INDEX:19) */
.shopify-section.cs-chi { margin: 0; padding: 0; }
.cs-terr {
  position: relative;
  overflow: hidden;
  padding-top: var(--cs-pt, 92px);
  padding-bottom: var(--cs-pb, 92px);
  background: #262828;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #fff;
}
.cs-terr *, .cs-terr *::before, .cs-terr *::after { box-sizing: border-box; }
.cs-terr__bg { position: absolute; inset: 0; opacity: 0.13; }
.cs-terr__img { width: 100%; height: 100%; object-fit: cover; }
.cs-terr .cs-wrap { position: relative; width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.cs-terr__grid { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 60px; align-items: center; }
.cs-terr .cs-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px;
  color: #fff; font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase;
}
.cs-terr .cs-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--cs-accent, #1599a6); }
.cs-terr h2 {
  margin: 0; color: var(--cs-heading, #fff); font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1.9rem, 3vw, 3.15rem); font-weight: 700; letter-spacing: -0.035em; line-height: 1.12;
}
.cs-terr__list { display: grid; gap: 16px; }
.cs-terr__item {
  padding: 20px 22px; border: 1px solid rgba(255, 255, 255, 0.16); border-radius: 18px;
  background: rgba(255, 255, 255, 0.09); color: #fff; font-size: 18px; line-height: 1.65;
}
.cs-terr__item strong { color: #fff; font-weight: 800; }
.cs-terr a:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 1020px) { .cs-terr__grid { grid-template-columns: 1fr; gap: 32px; } }
@media (max-width: 640px) {
  .cs-terr { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .cs-terr .cs-wrap { width: min(100% - 28px, 1180px); }
  .cs-terr__item { font-size: 17px; }
}
/* END_SECTION:chi-siamo-territorio */

/* START_SECTION:contatti-faq (INDEX:24) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }
.ct-faq {
  --ct-dark: #087684; --ct-border: #ddebed; --ct-charcoal: #262828;
  padding-top: var(--ct-pt, 92px); padding-bottom: var(--ct-pb, 92px); background: var(--ct-bg, #fff);
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.65; color: #3f4242;
}
.ct-faq *, .ct-faq *::before, .ct-faq *::after { box-sizing: border-box; }
.ct-faq .ct-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ct-faq__grid { display: grid; grid-template-columns: 0.72fr 1.28fr; gap: 54px; align-items: start; }
.ct-faq .ct-eyebrow { display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px; color: var(--ct-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase; }
.ct-faq .ct-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--ct-accent, #1599a6); }
.ct-faq h2 { margin: 0 0 18px; color: var(--ct-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-size: clamp(2rem, 3.2vw, 3.2rem); font-weight: 700; letter-spacing: -0.035em; line-height: 1.12; }
.ct-faq p, .ct-faq .ct-copy, .ct-faq .ct-copy p { margin: 0 0 18px; color: var(--ct-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65; }
.ct-faq__list { display: grid; gap: 12px; }
.ct-faq__item { padding: 0 20px; border: 1px solid var(--ct-border); border-radius: 17px; background: #fff; }
.ct-faq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 44px; padding: 19px 0; color: var(--ct-charcoal); font-size: 18px; font-weight: 800; line-height: 1.4; list-style: none; cursor: pointer; }
.ct-faq__item summary::-webkit-details-marker { display: none; }
.ct-faq__item summary::after { content: "+"; color: var(--ct-dark); font-size: 1.5rem; font-weight: 400; line-height: 1; }
.ct-faq__item[open] summary::after { content: "–"; }
.ct-faq__item .ct-copy p { padding-bottom: 19px; margin: 0; }
.ct-faq summary:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
@media (max-width: 1040px) { .ct-faq__grid { grid-template-columns: 1fr; gap: 28px; } }
@media (max-width: 680px) {
  .ct-faq { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .ct-faq .ct-wrap { width: min(100% - 28px, 1180px); }
  .ct-faq p, .ct-faq .ct-copy, .ct-faq .ct-copy p, .ct-faq__item summary { font-size: 17px; }
}
/* END_SECTION:contatti-faq */

/* START_SECTION:contatti-hero (INDEX:25) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }

.ct-hero {
  --ct-dark: #087684;
  --ct-deep: #045461;
  position: relative;
  display: grid;
  align-items: end;
  min-height: var(--ct-min, 780px);
  overflow: hidden;
  background: var(--ct-deep);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #fff;
}

.ct-hero *,
.ct-hero *::before,
.ct-hero *::after { box-sizing: border-box; }

.ct-hero__bg { position: absolute; inset: 0; }

.ct-hero__img,
.ct-hero__fallback {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: var(--ct-deep);
}

.ct-hero__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4, 84, 97, 0.93) 0%, rgba(8, 118, 132, 0.72) 45%, rgba(38, 40, 40, 0.3) 100%);
}

.ct-hero__shade::after {
  content: "";
  position: absolute;
  right: -160px;
  bottom: -210px;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  background: rgba(21, 153, 166, 0.32);
}

.ct-hero .ct-wrap {
  position: relative;
  z-index: 2;
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.ct-hero__content {
  width: min(830px, 100%);
  padding-top: var(--ct-pt, 72px);
  padding-bottom: var(--ct-pb, 92px);
}

.ct-hero .ct-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.ct-hero .ct-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: #fff;
}

.ct-hero h1 {
  max-width: 900px;
  margin: 0 0 18px;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(2.45rem, 5vw, 4.7rem);
  font-weight: 700;
  letter-spacing: -0.045em;
  line-height: 1.12;
}

.ct-hero p,
.ct-hero .ct-copy,
.ct-hero .ct-copy p {
  max-width: 790px;
  margin: 0 0 18px;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.18rem;
  font-weight: 400;
  line-height: 1.65;
}

.ct-hero strong { display: inline; font-weight: 800; color: #fff; }

.ct-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.ct-hero a.ct-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 54px;
  padding: 14px 24px;
  border: 2px solid transparent;
  border-radius: 999px;
  background: #1599a6;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  box-shadow: 0 14px 28px rgba(21, 153, 166, 0.25);
}

.ct-hero a.ct-btn--light {
  border-color: rgba(255, 255, 255, 0.55);
  background: #fff;
  color: #045461;
  box-shadow: none;
}

.ct-hero a.ct-btn:hover,
.ct-hero a.ct-btn:focus-visible {
  background: #087684;
  color: #fff;
  box-shadow: 0 14px 28px rgba(21, 153, 166, 0.25);
}

.ct-hero a.ct-btn--light:hover,
.ct-hero a.ct-btn--light:focus-visible {
  background: #fff;
  color: #045461;
  box-shadow: none;
}

.ct-contacts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin-top: 48px;
  overflow: hidden;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.22);
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.15);
}

.ct-contact { padding: 25px; background: rgba(255, 255, 255, 0.97); }

.ct-contact small {
  display: block;
  margin-bottom: 6px;
  color: #3e4a4d;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.3;
  text-transform: uppercase;
}

.ct-contact a,
.ct-contact strong {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--ct-deep);
  font-size: 1.13rem;
  font-weight: 800;
  line-height: 1.3;
  text-decoration: none;
}

.ct-hero a:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

.ct-contact a:focus-visible,
.ct-btn--light:focus-visible { outline-color: #045461; }

@media (max-width: 1040px) {
  .ct-contacts { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .ct-hero { min-height: 0; font-size: 17px; }
  .ct-hero .ct-wrap { width: min(100% - 28px, 1180px); }
  .ct-hero__content { padding-bottom: 54px; }
  .ct-hero p,
  .ct-hero .ct-copy,
  .ct-hero .ct-copy p { font-size: 17px; }
}
/* END_SECTION:contatti-hero */

/* START_SECTION:contatti-intro (INDEX:26) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }
.ct-intro {
  --ct-dark: #087684;
  --ct-deep: #045461;
  --ct-border: #ddebed;
  padding-top: var(--ct-pt, 92px);
  padding-bottom: var(--ct-pb, 92px);
  background: var(--ct-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}
.ct-intro *, .ct-intro *::before, .ct-intro *::after { box-sizing: border-box; }
.ct-intro .ct-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ct-intro__grid { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 64px; align-items: center; }
.ct-intro .ct-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px;
  color: var(--ct-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase;
}
.ct-intro .ct-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--ct-accent, #1599a6); }
.ct-intro h2 { margin: 0 0 18px; color: var(--ct-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-size: clamp(2rem, 3.2vw, 3.2rem); font-weight: 700; letter-spacing: -0.035em; line-height: 1.12; }
.ct-intro p, .ct-intro .ct-copy, .ct-intro .ct-copy p { margin: 0 0 18px; color: var(--ct-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65; }
.ct-intro strong { display: inline; font-weight: 800; color: #262828; }
.ct-intro__media { position: relative; }
.ct-intro__img, .ct-intro .ct-ph { width: 100%; height: 540px; object-fit: cover; border-radius: 24px; background: #eaf7f8; box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14); }
.ct-float {
  position: absolute; left: -24px; bottom: 26px; max-width: 310px; padding: 20px 22px;
  border: 1px solid var(--ct-border); border-radius: 18px; background: #fff; box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}
.ct-float strong { display: block; margin-bottom: 4px; color: var(--ct-deep); font-size: 18px; }
.ct-float span { display: block; color: var(--ct-text, #3e4a4d); font-size: 17px; line-height: 1.45; }
.ct-intro a:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
@media (max-width: 1040px) { .ct-intro__grid { grid-template-columns: 1fr; gap: 32px; } }
@media (max-width: 680px) {
  .ct-intro { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .ct-intro .ct-wrap { width: min(100% - 28px, 1180px); }
  .ct-intro p, .ct-intro .ct-copy, .ct-intro .ct-copy p { font-size: 17px; }
  .ct-intro__img, .ct-intro .ct-ph { height: 390px; }
  .ct-float { position: relative; left: auto; bottom: auto; max-width: none; margin: -40px 14px 0; }
}
/* END_SECTION:contatti-intro */

/* START_SECTION:contatti-modulo (INDEX:27) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }
.ct-mod {
  --ct-deep: #045461; --ct-dark: #087684; --ct-border: #ddebed; --ct-charcoal: #262828;
  padding-top: var(--ct-pt, 92px); padding-bottom: var(--ct-pb, 92px); background: var(--ct-bg, #fff);
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.65; color: #3f4242;
}
.ct-mod *, .ct-mod *::before, .ct-mod *::after { box-sizing: border-box; }
.ct-mod .ct-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ct-mod__grid { display: grid; grid-template-columns: 0.75fr 1.25fr; gap: 54px; align-items: start; }
.ct-side { position: sticky; top: 28px; padding: 38px; border-radius: 30px; background: linear-gradient(145deg, var(--ct-deep), var(--ct-dark)); color: #fff; box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14); }
.ct-side .ct-eyebrow { display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px; color: #fff; font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase; }
.ct-side .ct-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: #fff; }
.ct-side h2, .ct-card h2 { margin: 0 0 18px; color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: clamp(2rem, 3.2vw, 3.2rem); font-weight: 700; letter-spacing: -0.035em; line-height: 1.12; }
.ct-side p, .ct-side .ct-copy, .ct-side .ct-copy p, .ct-side strong, .ct-side span { color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65; }
.ct-side strong { display: block; font-weight: 800; }
.ct-notes { display: grid; gap: 14px; margin-top: 28px; }
.ct-note { padding: 15px; border: 1px solid rgba(255, 255, 255, 0.17); border-radius: 16px; background: rgba(255, 255, 255, 0.11); }
.ct-note span { display: block; margin-top: 4px; font-size: 17px; }
.ct-card { padding: 36px; border: 1px solid var(--ct-border); border-radius: 30px; background: #fff; box-shadow: 0 12px 30px rgba(4, 84, 97, 0.07); }
.ct-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.ct-field { margin-bottom: 18px; }
.ct-mod label, .ct-label { display: block; margin-bottom: 7px; color: var(--ct-charcoal); font-size: 17px; font-weight: 800; line-height: 1.35; }
.ct-mod input:not([type="checkbox"]), .ct-mod select, .ct-mod textarea { display: block; width: 100%; min-height: 44px; padding: 14px 15px; border: 1px solid #c9dadd; border-radius: 14px; background: #fff; color: var(--ct-charcoal); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.4; }
.ct-mod textarea { min-height: 150px; resize: vertical; }
.ct-help { margin: 7px 0 0; color: var(--ct-text, #3e4a4d); font-size: 17px; line-height: 1.45; }
.ct-check { display: flex; align-items: center; gap: 10px; min-height: 44px; margin: 18px 0; }
.ct-check input { width: 20px; height: 20px; margin: 0; flex: 0 0 44px; accent-color: var(--ct-dark); }
.ct-check label { margin: 0; color: var(--ct-text, #3e4a4d); font-size: 17px; font-weight: 400; line-height: 1.45; }
.ct-mod a { color: var(--ct-deep); font-weight: 800; text-decoration: underline; }
.ct-side a { color: #fff; }
.ct-btn { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 12px 22px; border: 0; border-radius: 999px; background: var(--ct-dark); color: #fff; font-size: 18px; font-weight: 800; line-height: 1.2; cursor: pointer; }
.ct-btn:hover, .ct-btn:focus-visible { background: var(--ct-deep); color: #fff; }
.ct-mod a:focus-visible, .ct-mod button:focus-visible, .ct-mod input:focus-visible, .ct-mod select:focus-visible, .ct-mod textarea:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
.ct-side a:focus-visible, .ct-side button:focus-visible { outline-color: #fff; }
.ct-status { margin-bottom: 16px; padding: 14px 16px; border-radius: 14px; font-size: 17px; }
.ct-status ul { margin: 8px 0 0; padding-left: 1.25em; }
.ct-status li { display: list-item; list-style: disc; }
.ct-status--success { background: #eaf7f0; color: #0d6b3a; }
.ct-status--error { background: #fdecec; color: #8d1d1d; }
@media (max-width: 1040px) { .ct-mod__grid { grid-template-columns: 1fr; } .ct-side { position: relative; top: auto; } }
@media (max-width: 680px) {
  .ct-mod { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .ct-mod .ct-wrap { width: min(100% - 28px, 1180px); }
  .ct-fields { grid-template-columns: 1fr; }
  .ct-side, .ct-card { padding: 26px; }
  .ct-mod input:not([type="checkbox"]), .ct-mod select, .ct-mod textarea, .ct-side p, .ct-side span { font-size: 17px; }
}
/* END_SECTION:contatti-modulo */

/* START_SECTION:contatti-note (INDEX:28) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }
.ct-dev {
  --ct-dark: #087684; --ct-deep: #045461; --ct-border: #ddebed;
  padding-top: var(--ct-pt, 52px); padding-bottom: var(--ct-pb, 52px); border-top: 1px solid var(--ct-border); background: var(--ct-bg, #f8fbfc);
  font-family: Arial, Helvetica, sans-serif; font-size: 17px; line-height: 1.65; color: #3f4242;
}
.ct-dev *, .ct-dev *::before, .ct-dev *::after { box-sizing: border-box; }
.ct-dev .ct-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ct-dev .ct-eyebrow { display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px; color: var(--ct-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase; }
.ct-dev .ct-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--ct-accent, #1599a6); }
.ct-dev h2, .ct-dev h3 { margin: 0 0 18px; color: var(--ct-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-weight: 700; line-height: 1.12; }
.ct-dev h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); letter-spacing: -0.035em; }
.ct-dev h3 { margin-bottom: 8px; font-size: 1.15rem; }
.ct-dev p, .ct-dev .ct-copy, .ct-dev .ct-copy p, .ct-dev strong { margin: 0; color: var(--ct-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 17px; font-weight: 400; line-height: 1.55; }
.ct-dev strong { font-weight: 800; color: var(--ct-deep); }
.ct-dev__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 24px; }
.ct-dev__note { padding: 20px; border: 1px solid var(--ct-border); border-radius: 18px; background: #fff; }
.ct-dev a:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
@media (max-width: 1040px) { .ct-dev__grid { grid-template-columns: 1fr; } }
@media (max-width: 680px) {
  .ct-dev .ct-wrap { width: min(100% - 28px, 1180px); }
}
/* END_SECTION:contatti-note */

/* START_SECTION:contatti-prenota (INDEX:29) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }
.ct-book {
  position: relative; overflow: hidden; padding-top: var(--ct-pt, 92px); padding-bottom: var(--ct-pb, 92px);
  background-color: #262828;
  background-image: var(--ct-photo, none);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.65;
}
.ct-book::before { content: ""; position: absolute; inset: 0; background: rgba(42, 48, 54, 0.58); }
.ct-book *, .ct-book *::before, .ct-book *::after { box-sizing: border-box; }
.ct-book .ct-wrap { position: relative; z-index: 1; width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ct-book__grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 50px; align-items: center; }
.ct-book .ct-eyebrow { display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px; color: #fff; font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase; }
.ct-book .ct-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--ct-accent, #1599a6); }
.ct-book h2 { margin: 0 0 18px; color: var(--ct-heading, #fff); font-family: Arial, Helvetica, sans-serif; font-size: clamp(2rem, 3.2vw, 3.2rem); font-weight: 700; letter-spacing: -0.035em; line-height: 1.12; }
.ct-book p, .ct-book .ct-copy, .ct-book .ct-copy p { margin: 0 0 18px; color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65; }
.ct-book__actions { display: flex; flex-direction: column; align-items: flex-end; gap: 14px; }
.ct-book .ct-btn { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 52px; padding: 14px 28px; border: 0; border-radius: 999px; background: #1599a6; color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 800; line-height: 1.2; text-align: center; text-decoration: none; text-transform: none; box-shadow: none; }
.ct-book .ct-btn--light { background: #fff; color: #262828; }
.ct-book .ct-btn:hover, .ct-book .ct-btn:focus-visible { background: #087684; color: #fff; }
.ct-book .ct-btn--light:hover, .ct-book .ct-btn--light:focus-visible { background: #fff; color: #262828; }
.ct-book a:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 1040px) { .ct-book__grid { grid-template-columns: 1fr; } .ct-book__actions { align-items: flex-start; } }
@media (max-width: 680px) {
  .ct-book { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .ct-book .ct-wrap { width: min(100% - 28px, 1180px); }
  .ct-book p, .ct-book .ct-copy, .ct-book .ct-copy p { font-size: 17px; }
}
/* END_SECTION:contatti-prenota */

/* START_SECTION:contatti-sedi (INDEX:30) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }
.ct-locs {
  --ct-dark: #087684; --ct-deep: #045461; --ct-soft: #eaf7f8; --ct-pale: #f4fbfc; --ct-sand: #f2eee7; --ct-border: #ddebed; --ct-charcoal: #262828;
  padding-top: var(--ct-pt, 92px); padding-bottom: var(--ct-pb, 92px); background: var(--ct-bg, #f4fbfc);
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.65; color: #3f4242;
}
.ct-locs *, .ct-locs *::before, .ct-locs *::after { box-sizing: border-box; }
.ct-locs .ct-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ct-locs__head { max-width: 800px; margin-bottom: 38px; }
.ct-locs .ct-eyebrow { display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px; color: var(--ct-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase; }
.ct-locs .ct-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--ct-accent, #1599a6); }
.ct-locs h2, .ct-locs h3 { margin: 0 0 18px; color: var(--ct-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-weight: 700; line-height: 1.12; }
.ct-locs h2 { font-size: clamp(2rem, 3.2vw, 3.2rem); letter-spacing: -0.035em; }
.ct-locs h3 { font-size: 1.28rem; }
.ct-locs p, .ct-locs .ct-copy, .ct-locs .ct-copy p, .ct-locs .ct-address, .ct-locs .ct-address p { margin: 0 0 18px; color: var(--ct-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65; }
.ct-locs strong { display: inline; font-weight: 800; color: var(--ct-charcoal); }
.ct-address { margin-bottom: 24px; color: #3f4242; font-size: 1.1rem; }
.ct-loc { margin-bottom: 34px; overflow: hidden; border: 1px solid var(--ct-border); border-radius: 32px; background: #fff; box-shadow: 0 14px 35px rgba(4, 84, 97, 0.09); }
.ct-loc:last-child { margin-bottom: 0; }
.ct-loc__grid { display: grid; grid-template-columns: 0.86fr 1.14fr; }
.ct-loc__photo { position: relative; min-height: 610px; overflow: hidden; background: var(--ct-soft); }
.ct-loc__photo img, .ct-loc__photo .ct-ph { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ct-badge { position: absolute; top: 22px; left: 22px; padding: 9px 15px; border-radius: 999px; background: rgba(255, 255, 255, 0.96); color: var(--ct-deep); font-size: 17px; font-weight: 800; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08); }
.ct-loc__body { padding: 42px; }
.ct-lines { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 24px 0; }
.ct-line { padding: 16px; border: 1px solid var(--ct-border); border-radius: 16px; background: var(--ct-pale); }
.ct-line span { display: block; color: var(--ct-text, #3e4a4d); font-size: 17px; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; }
.ct-line a { display: inline-flex; align-items: center; min-height: 44px; margin-top: 3px; color: var(--ct-deep); font-size: 18px; font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
.ct-hours { margin: 20px 0; padding: 17px 18px; border-radius: 16px; background: var(--ct-sand); }
.ct-hours strong { display: block; margin-bottom: 4px; color: var(--ct-charcoal); }
.ct-hours span { color: var(--ct-text, #3e4a4d); font-size: 17px; line-height: 1.45; }
.ct-chips { display: flex; flex-wrap: wrap; gap: 9px; margin: 20px 0 26px; }
.ct-chip { padding: 8px 12px; border-radius: 999px; background: var(--ct-soft); color: var(--ct-deep); font-size: 17px; font-weight: 800; line-height: 1.3; }
.ct-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.ct-btn { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 12px 22px; border: 2px solid transparent; border-radius: 999px; background: var(--ct-dark); color: #fff; font-size: 18px; font-weight: 800; line-height: 1.2; text-align: center; text-decoration: none; }
.ct-btn--outline { border-color: #045461; background: #fff; color: var(--ct-deep); }
.ct-btn:hover, .ct-btn:focus-visible { background: var(--ct-deep); color: #fff; }
.ct-btn--outline:hover, .ct-btn--outline:focus-visible { background: var(--ct-soft); color: var(--ct-deep); }
.ct-locs a:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
.ct-map { border-top: 1px solid var(--ct-border); background: #fff; }
.ct-map iframe { display: block; width: 100%; height: 390px; border: 0; }
@media (max-width: 1040px) {
  .ct-loc__grid { grid-template-columns: 1fr; }
  .ct-loc__photo { min-height: 430px; }
}
@media (max-width: 680px) {
  .ct-locs { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .ct-locs .ct-wrap { width: min(100% - 28px, 1180px); }
  .ct-locs p, .ct-locs .ct-copy, .ct-locs .ct-copy p, .ct-address { font-size: 17px; }
  .ct-loc__body { padding: 26px; }
  .ct-lines { grid-template-columns: 1fr; }
}
/* END_SECTION:contatti-sedi */

/* START_SECTION:contatti-utili (INDEX:31) */
.shopify-section.ct-contatti { margin: 0; padding: 0; }
.ct-tips {
  --ct-dark: #087684; --ct-deep: #045461; --ct-border: #ddebed;
  padding-top: var(--ct-pt, 92px); padding-bottom: var(--ct-pb, 92px); background: var(--ct-bg, #f4fbfc);
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.65; color: #3f4242;
}
.ct-tips *, .ct-tips *::before, .ct-tips *::after { box-sizing: border-box; }
.ct-tips .ct-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ct-tips .ct-eyebrow { display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px; color: var(--ct-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase; }
.ct-tips .ct-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--ct-accent, #1599a6); }
.ct-tips h2, .ct-tips h3 { margin: 0 0 18px; color: var(--ct-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-weight: 700; line-height: 1.12; }
.ct-tips h2 { font-size: clamp(2rem, 3.2vw, 3.2rem); letter-spacing: -0.035em; }
.ct-tips h3 { margin-bottom: 8px; color: var(--ct-deep); font-size: 1.15rem; }
.ct-tips p, .ct-tips .ct-copy, .ct-tips .ct-copy p { margin: 0; color: var(--ct-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 17px; font-weight: 400; line-height: 1.5; }
.ct-tips__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; margin-top: 36px; }
.ct-tip { padding: 22px; border: 1px solid var(--ct-border); border-radius: 20px; background: #fff; }
.ct-tips a:focus-visible { outline: 3px solid #045461; outline-offset: 3px; }
@media (max-width: 1040px) { .ct-tips__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 680px) {
  .ct-tips { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .ct-tips .ct-wrap { width: min(100% - 28px, 1180px); }
  .ct-tips__grid { grid-template-columns: 1fr; }
}
/* END_SECTION:contatti-utili */

/* START_SECTION:cta-speech-banner (INDEX:34) */
#shopify-section-{{ section.id }} {
    overflow: visible;
  }
/* END_SECTION:cta-speech-banner */

/* START_SECTION:noleggio-catalogo (INDEX:60) */
.shopify-section.na-noleggio {
  margin: 0;
  padding: 0;
}

.na-cat {
  --na-deep: #045461;
  --na-dark: #087684;
  --na-sand: #f2eee7;
  --na-border: #ddebed;
  --na-charcoal: #262828;
  padding-top: var(--na-pt, 92px);
  padding-bottom: var(--na-pb, 92px);
  background: var(--na-bg, #f4fbfc);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.na-cat *,
.na-cat *::before,
.na-cat *::after {
  box-sizing: border-box;
}

.na-cat .na-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.na-cat .na-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--na-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.na-cat .na-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--na-accent, #1599a6);
}

.na-cat h2,
.na-cat h3 {
  margin: 0 0 18px;
  color: var(--na-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.na-cat h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.na-cat h3 {
  font-size: 1.28rem;
  letter-spacing: 0;
}

.na-cat p,
.na-cat .na-copy,
.na-cat .na-copy p,
.na-cat .na-products li {
  margin: 0 0 18px;
  padding: 0;
  color: var(--na-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.na-cat strong {
  display: inline;
  font-weight: 800;
  color: var(--na-charcoal);
}

.na-cat a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.na-intro {
  max-width: 900px;
}

.na-intro p:last-child,
.na-card__body .na-copy p:last-child {
  margin-bottom: 0;
}

.na-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-top: 38px;
}

.na-card {
  overflow: hidden;
  border: 1px solid var(--na-border);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(4, 84, 97, 0.07);
}

.na-card img,
.na-ph {
  width: 100%;
  height: 245px;
  object-fit: cover;
  background: #eaf7f8;
}

.na-card--wide {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
}

.na-card--wide img,
.na-card--wide .na-ph {
  height: 100%;
  min-height: 390px;
}

.na-card__body {
  padding: 27px;
}

.na-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.na-card__head h3 {
  margin: 0;
}

.na-price {
  flex: 0 0 auto;
  padding: 9px 12px;
  border-radius: 15px;
  background: var(--na-dark);
  color: #fff;
  font-size: 1.15rem;
  font-weight: 900;
  line-height: 1.15;
  text-align: center;
}

.na-price small {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.na-products {
  display: grid;
  gap: 11px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.na-products li {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin: 0;
  padding-top: 11px;
  border-top: 1px solid var(--na-border);
  list-style: none;
}

.na-item__price {
  color: var(--na-deep);
  font-weight: 800;
  white-space: nowrap;
}

.na-notice,
.na-notice p {
  margin: 26px 0 0;
  padding: 20px 22px;
  border-left: 5px solid var(--na-dark);
  border-radius: 14px;
  background: var(--na-sand);
  color: var(--na-charcoal);
  font-size: 18px;
}

.na-notice p {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

@media (max-width: 1040px) {
  .na-grid {
    grid-template-columns: 1fr;
  }

  .na-card--wide {
    grid-column: auto;
    display: block;
  }

  .na-card--wide img,
  .na-card--wide .na-ph {
    height: 280px;
    min-height: 0;
  }
}

@media (max-width: 680px) {
  .na-cat {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .na-cat .na-wrap {
    width: min(100% - 28px, 1180px);
  }

  .na-cat p,
  .na-cat .na-copy,
  .na-cat .na-copy p,
  .na-cat .na-products li,
  .na-notice,
  .na-notice p {
    font-size: 17px;
  }

  .na-card img,
  .na-ph {
    height: 220px;
  }

  .na-products li {
    display: block;
  }

  .na-item__price {
    display: block;
    margin-top: 3px;
  }
}
/* END_SECTION:noleggio-catalogo */

/* START_SECTION:noleggio-richiesta (INDEX:61) */
.shopify-section.na-noleggio {
  margin: 0;
  padding: 0;
}

.na-req {
  --na-deep: #045461;
  --na-dark: #087684;
  --na-pale: #f4fbfc;
  --na-sand: #f2eee7;
  --na-border: #ddebed;
  --na-charcoal: #262828;
  padding-top: var(--na-pt, 92px);
  padding-bottom: var(--na-pb, 92px);
  background: linear-gradient(180deg, var(--na-bg, var(--na-pale)), #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.na-req *,
.na-req *::before,
.na-req *::after {
  box-sizing: border-box;
}

.na-req .na-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.na-req__grid {
  display: grid;
  grid-template-columns: 0.86fr 1.14fr;
  gap: 62px;
  align-items: start;
}

.na-req .na-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--na-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.na-req .na-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--na-accent, #1599a6);
}

.na-req h2 {
  margin: 0 0 18px;
  color: var(--na-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.12;
}

.na-req p,
.na-req .na-copy,
.na-req .na-copy p,
.na-req .na-note,
.na-req .na-note p,
.na-req label {
  margin: 0 0 18px;
  padding: 0;
  color: var(--na-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.na-req label {
  display: block;
  margin-bottom: 7px;
  color: var(--na-charcoal);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.35;
}

.na-req strong {
  display: inline;
  font-weight: 800;
  color: var(--na-charcoal);
}

.na-req a {
  color: var(--na-deep);
  font-weight: 800;
  text-decoration: underline;
}

.na-req a:focus-visible,
.na-req button:focus-visible,
.na-req input:focus-visible,
.na-req select:focus-visible,
.na-req textarea:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.na-note,
.na-note p {
  margin-top: 14px;
  padding: 14px;
  border-radius: 13px;
  background: var(--na-sand);
  color: var(--na-text, #3e4a4d);
  font-size: 17px;
}

.na-note p {
  margin: 0;
  padding: 0;
  background: transparent;
}

.na-form {
  padding: 32px;
  border: 1px solid var(--na-border);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}

.na-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.na-field--full {
  grid-column: 1 / -1;
}

.na-req input:not([type="checkbox"]),
.na-req select,
.na-req textarea {
  display: block;
  width: 100%;
  min-height: 44px;
  padding: 13px 14px;
  border: 1px solid #c8dadd;
  border-radius: 13px;
  background: #fff;
  color: var(--na-charcoal);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4;
}

.na-req textarea {
  min-height: 130px;
  resize: vertical;
}

.na-check {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
}

.na-check input {
  width: 16px;
  height: 16px;
  margin: 0;
  flex: 0 0 44px;
  accent-color: var(--na-dark);
}

.na-check label {
  margin: 0;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.45;
}

.na-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 12px 22px;
  border: 0;
  border-radius: 999px;
  background: var(--na-dark);
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: none;
  cursor: pointer;
}

.na-btn:hover,
.na-btn:focus-visible {
  background: var(--na-deep);
  color: #fff;
}

.na-status {
  margin-bottom: 16px;
  padding: 14px 16px;
  border-radius: 13px;
}

.na-status p,
.na-status li {
  margin: 0 0 8px;
  font-size: 17px;
}

.na-status ul {
  margin: 8px 0 0;
  padding-left: 1.25em;
}

.na-status li {
  display: list-item;
  list-style: disc;
}

.na-status--success {
  background: #e7f6ee;
  color: #0d6b3a;
}

.na-status--error {
  background: #fdecec;
  color: #8d1d1d;
}
.na-req .na-note {
    padding: 14px !important;
    p{
        margin: 0;
    }
}
@media (max-width: 1040px) {
  .na-req__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

@media (max-width: 680px) {
  .na-req {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .na-req .na-wrap {
    width: min(100% - 28px, 1180px);
  }

  .na-req p,
  .na-req .na-copy,
  .na-req .na-copy p,
  .na-req input:not([type="checkbox"]),
  .na-req select,
  .na-req textarea {
    font-size: 17px;
  }

  .na-form {
    padding: 22px;
  }

  .na-form__grid {
    grid-template-columns: 1fr;
  }
}
/* END_SECTION:noleggio-richiesta */

/* START_SECTION:noleggio-vantaggi (INDEX:62) */
.shopify-section.na-noleggio {
  margin: 0;
  padding: 0;
}

.na-why {
  --na-deep: #045461;
  --na-dark: #087684;
  --na-soft: #eaf7f8;
  --na-border: #ddebed;
  --na-charcoal: #262828;
  padding-top: var(--na-pt, 92px);
  padding-bottom: var(--na-pb, 92px);
  background: var(--na-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.na-why *,
.na-why *::before,
.na-why *::after {
  box-sizing: border-box;
}

.na-why .na-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.na-why .na-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--na-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.na-why .na-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--na-accent, #1599a6);
}

.na-why h2,
.na-why h3 {
  margin: 0 0 18px;
  color: var(--na-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.na-why h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.na-why h3 {
  font-size: 1.28rem;
  letter-spacing: 0;
}

.na-why p,
.na-why .na-copy,
.na-why .na-copy p {
  margin: 0 0 18px;
  padding: 0;
  color: var(--na-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.na-why strong {
  display: inline;
  font-weight: 800;
  color: var(--na-charcoal);
}

.na-why a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.na-intro p:last-child,
.na-benefit .na-copy p:last-child {
  margin-bottom: 0;
}

.na-benefits {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-top: 34px;
}

.na-benefit {
  padding: 24px;
  border: 1px solid var(--na-border);
  border-radius: 20px;
  background: #fff;
}

.na-benefit__icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  border-radius: 15px;
  background: var(--na-soft);
  color: var(--na-deep);
  font-size: 17px;
  font-weight: 900;
  line-height: 1;
}

@media (max-width: 1040px) {
  .na-benefits {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 680px) {
  .na-why {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .na-why .na-wrap {
    width: min(100% - 28px, 1180px);
  }

  .na-why p,
  .na-why .na-copy,
  .na-why .na-copy p {
    font-size: 17px;
  }

  .na-benefits {
    grid-template-columns: 1fr;
  }
}
/* END_SECTION:noleggio-vantaggi */

/* START_SECTION:plantari-whatsapp (INDEX:77) */
.shopify-section.pl-whatsapp-host {
  margin: 0;
  padding: 0;
}

.pl-wa {
  position: fixed;
  right: var(--pl-wa-x, 20px);
  bottom: var(--pl-wa-y, 20px);
  z-index: 80;
}

.pl-wa__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 18px;
  border-radius: 999px;
  background: var(--pl-wa-bg, #1faa59);
  color: var(--pl-wa-color, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.22);
}

.pl-wa__link:hover,
.pl-wa__link:focus-visible {
  filter: brightness(0.95);
  color: var(--pl-wa-color, #fff);
}

.pl-wa__link:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

@media (max-width: 680px) {
  .pl-wa {
    right: 14px;
    bottom: 14px;
  }

  .pl-wa__link {
    padding: 13px 15px;
  }
}
/* END_SECTION:plantari-whatsapp */

/* START_SECTION:protesi-appuntamento (INDEX:84) */
.shopify-section.pa-protesi {
  margin: 0;
  padding: 0;
}

.pa-form {
  --pa-deep: #045461;
  --pa-dark: #087684;
  --pa-pale: #f4fbfc;
  --pa-sand: #f2eee7;
  --pa-border: #ddebed;
  --pa-charcoal: #262828;
  padding-top: var(--pa-pt, 92px);
  padding-bottom: var(--pa-pb, 92px);
  background: linear-gradient(180deg, var(--pa-bg, var(--pa-pale)), #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.pa-form *,
.pa-form *::before,
.pa-form *::after {
  box-sizing: border-box;
}

.pa-form .pa-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.pa-form__grid {
  display: grid;
  grid-template-columns: 0.86fr 1.14fr;
  gap: 46px;
  align-items: start;
}

.pa-form .pa-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--pa-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.pa-form .pa-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--pa-accent, #1599a6);
}

.pa-form h2,
.pa-form h3 {
  margin: 0 0 18px;
  color: var(--pa-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.pa-form h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.pa-form h3 {
  margin-bottom: 8px;
  font-size: 1.15rem;
  letter-spacing: 0;
}

.pa-form p,
.pa-form .pa-copy,
.pa-form .pa-copy p,
.pa-form label {
  margin: 0 0 18px;
  color: var(--pa-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.pa-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--pa-charcoal);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.35;
}

.pa-form strong {
  display: inline;
  font-weight: 800;
  color: var(--pa-charcoal);
}

.pa-form a {
  color: var(--pa-deep);
  font-weight: 800;
  text-decoration: underline;
}

.pa-form a:focus-visible,
.pa-form button:focus-visible,
.pa-form input:focus-visible,
.pa-form select:focus-visible,
.pa-form textarea:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.pa-infos {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 34px;
}

.pa-info {
  padding: 22px;
  border: 1px solid var(--pa-border);
  border-radius: 18px;
  background: #fff;
}

.pa-info .pa-copy p:last-child {
  margin-bottom: 0;
}

.pa-note,
.pa-note p {
  margin-top: 14px;
  padding: 14px;
  border-radius: 13px;
  background: var(--pa-sand);
  color: var(--pa-text, #3e4a4d);
  font-size: 17px;
}

.pa-note p {
  margin: 0;
  padding: 0;
  background: transparent;
}

.pa-card {
  padding: 32px;
  border: 1px solid var(--pa-border);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}

.pa-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.pa-field--full {
  grid-column: 1 / -1;
}

.pa-form input:not([type="checkbox"]),
.pa-form select,
.pa-form textarea {
  display: block;
  width: 100%;
  min-height: 44px;
  padding: 13px 14px;
  border: 1px solid #c8dadd;
  border-radius: 13px;
  background: #fff;
  color: var(--pa-charcoal);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4;
}

.pa-form textarea {
  min-height: 140px;
  resize: vertical;
}

.pa-check {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
}

.pa-check input {
  width: 20px;
  height: 20px;
  margin: 0;
  flex: 0 0 44px;
  accent-color: var(--pa-dark);
}

.pa-check label {
  margin: 0;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.45;
}

.pa-form .pa-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 12px 22px;
  border: 0;
  border-radius: 999px;
  background: var(--pa-dark);
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  text-transform: none;
  cursor: pointer;
}

.pa-form .pa-btn:hover,
.pa-form .pa-btn:focus-visible {
  background: var(--pa-deep);
  color: #fff;
}

.pa-status {
  margin-bottom: 16px;
  padding: 14px 16px;
  border-radius: 13px;
}

.pa-status p,
.pa-status li {
  margin: 0 0 8px;
  font-size: 17px;
}

.pa-status ul {
  margin: 8px 0 0;
  padding-left: 1.25em;
  list-style: disc outside;
}

.pa-status li {
  display: list-item;
  list-style: disc outside;
}

.pa-status--success {
  background: #e7f6ee;
  color: #0d6b3a;
}

.pa-status--error {
  background: #fdecec;
  color: #8d1d1d;
}

@media (max-width: 1040px) {
  .pa-form__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

@media (max-width: 680px) {
  .pa-form {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .pa-form .pa-wrap {
    width: min(100% - 28px, 1180px);
  }

  .pa-form p,
  .pa-form .pa-copy,
  .pa-form .pa-copy p,
  .pa-form input:not([type="checkbox"]),
  .pa-form select,
  .pa-form textarea {
    font-size: 17px;
  }

  .pa-infos,
  .pa-fields {
    grid-template-columns: 1fr;
  }

  .pa-card {
    padding: 22px;
  }
}
/* END_SECTION:protesi-appuntamento */

/* START_SECTION:protesi-consulenza (INDEX:85) */
.shopify-section.pa-protesi {
  margin: 0;
  padding: 0;
}

.pa-consult {
  --pa-deep: #045461;
  --pa-dark: #087684;
  --pa-charcoal: #262828;
  padding-top: var(--pa-pt, 92px);
  padding-bottom: var(--pa-pb, 92px);
  background: var(--pa-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.pa-consult *,
.pa-consult *::before,
.pa-consult *::after {
  box-sizing: border-box;
}

.pa-consult .pa-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.pa-consult__box {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 42px;
  align-items: center;
  padding: 48px;
  border-radius: 32px;
  background: #f2eee7;
}

.pa-consult .pa-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--pa-deep);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.pa-consult .pa-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--pa-accent, #1599a6);
}

.pa-consult h2 {
  margin: 0 0 18px;
  color: var(--pa-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.12;
}

.pa-consult p,
.pa-consult .pa-copy,
.pa-consult .pa-copy p {
  margin: 0 0 18px;
  color: var(--pa-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.pa-consult .pa-lead p {
  color: #3f4242;
  font-size: 1.18rem;
}

.pa-consult strong {
  display: inline;
  font-weight: 800;
  color: var(--pa-charcoal);
}

.pa-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  margin-top: 8px;
  padding: 12px 22px;
  border-radius: 999px;
  background: var(--pa-dark);
  color: #fff;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
}

.pa-btn:hover,
.pa-btn:focus-visible {
  background: var(--pa-deep);
  color: #fff;
}

.pa-consult a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.pa-badge {
  display: grid;
  place-items: center;
  min-height: 210px;
  padding: 28px;
  border-radius: 26px;
  background: var(--pa-dark);
  color: #fff;
  font-size: clamp(1.7rem, 3vw, 2.7rem);
  font-weight: 900;
  line-height: 1.08;
  text-align: center;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}

.pa-badge small {
  display: block;
  margin-top: 13px;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

@media (max-width: 1040px) {
  .pa-consult__box {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .pa-consult {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .pa-consult .pa-wrap {
    width: min(100% - 28px, 1180px);
  }

  .pa-consult__box {
    padding: 30px 23px;
  }

  .pa-consult p,
  .pa-consult .pa-copy,
  .pa-consult .pa-copy p,
  .pa-consult .pa-lead p {
    font-size: 17px;
  }

  .pa-badge {
    min-height: 165px;
  }
}
/* END_SECTION:protesi-consulenza */

/* START_SECTION:protesi-cuore (INDEX:86) */
.shopify-section.pa-protesi {
  margin: 0;
  padding: 0;
}

.pa-heart {
  --pa-dark: #087684;
  --pa-charcoal: #262828;
  padding-top: var(--pa-pt, 92px);
  padding-bottom: var(--pa-pb, 92px);
  background: var(--pa-bg, #f4fbfc);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.pa-heart *,
.pa-heart *::before,
.pa-heart *::after {
  box-sizing: border-box;
}

.pa-heart .pa-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.pa-heart__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 62px;
  align-items: center;
}

.pa-heart .pa-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--pa-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.pa-heart .pa-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--pa-accent, #1599a6);
}

.pa-heart h2 {
  margin: 0 0 18px;
  color: var(--pa-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.12;
}

.pa-heart p,
.pa-heart .pa-copy,
.pa-heart .pa-copy p {
  margin: 0 0 18px;
  color: var(--pa-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.pa-heart .pa-lead p {
  color: #3f4242;
  font-size: 1.18rem;
}

.pa-heart strong {
  display: inline;
  font-weight: 800;
  color: var(--pa-charcoal);
}

.pa-quote {
  margin: 8px 0 0;
  padding: 28px;
  border: 0;
  border-left: 6px solid var(--pa-accent, #1599a6);
  border-radius: 0 20px 20px 0;
  background: #f4fbfc;
  color: var(--pa-charcoal);
  font-size: 1.2rem;
  line-height: 1.45;
}

.pa-heart__img,
.pa-heart .pa-ph {
  width: 100%;
  height: 570px;
  object-fit: cover;
  border-radius: 24px;
  background: #eaf7f8;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}

.pa-heart a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

@media (max-width: 1040px) {
  .pa-heart__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

@media (max-width: 680px) {
  .pa-heart {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .pa-heart .pa-wrap {
    width: min(100% - 28px, 1180px);
  }

  .pa-heart p,
  .pa-heart .pa-copy,
  .pa-heart .pa-copy p,
  .pa-heart .pa-lead p,
  .pa-quote {
    font-size: 17px;
  }

  .pa-heart__img,
  .pa-heart .pa-ph {
    height: 360px;
  }
}
/* END_SECTION:protesi-cuore */

/* START_SECTION:protesi-team (INDEX:87) */
.shopify-section.pa-protesi {
  margin: 0;
  padding: 0;
}

.pa-team {
  --pa-dark: #087684;
  --pa-deep: #045461;
  --pa-soft: #eaf7f8;
  --pa-border: #ddebed;
  --pa-charcoal: #262828;
  padding-top: var(--pa-pt, 92px);
  padding-bottom: var(--pa-pb, 92px);
  background: var(--pa-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.pa-team *,
.pa-team *::before,
.pa-team *::after {
  box-sizing: border-box;
}

.pa-team .pa-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.pa-team .pa-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--pa-dark);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.pa-team .pa-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--pa-accent, #1599a6);
}

.pa-team h2,
.pa-team h3 {
  margin: 0 0 18px;
  color: var(--pa-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.pa-team h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.pa-team h3 {
  font-size: 1.28rem;
  letter-spacing: 0;
}

.pa-team p,
.pa-team .pa-copy,
.pa-team .pa-copy p {
  margin: 0 0 18px;
  color: var(--pa-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.pa-team strong {
  display: inline;
  font-weight: 800;
  color: var(--pa-charcoal);
}

.pa-intro {
  max-width: 880px;
}

.pa-intro p:last-child,
.pa-role .pa-copy p:last-child {
  margin-bottom: 0;
}

.pa-roles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 38px;
}

.pa-role {
  padding: 28px;
  border: 1px solid var(--pa-border);
  border-radius: 24px;
  background: #fff;
}

.pa-tag {
  display: inline-flex;
  align-items: center;
  margin-bottom: 16px;
  padding: 7px 11px;
  border-radius: 999px;
  background: var(--pa-soft);
  color: var(--pa-deep);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.3;
}

.pa-team a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

@media (max-width: 1040px) {
  .pa-roles {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 680px) {
  .pa-team {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .pa-team .pa-wrap {
    width: min(100% - 28px, 1180px);
  }

  .pa-team p,
  .pa-team .pa-copy,
  .pa-team .pa-copy p {
    font-size: 17px;
  }

  .pa-roles {
    grid-template-columns: 1fr;
  }
}
/* END_SECTION:protesi-team */

/* START_SECTION:protesi-trasporto (INDEX:88) */
.shopify-section.pa-protesi {
  margin: 0;
  padding: 0;
}

.pa-ride {
  padding-top: var(--pa-pt, 92px);
  padding-bottom: var(--pa-pb, 92px);
  background: var(--pa-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #fff;
}

.pa-ride *,
.pa-ride *::before,
.pa-ride *::after {
  box-sizing: border-box;
}

.pa-ride .pa-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.pa-ride__strip {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 42px;
  align-items: center;
  padding: 46px;
  border-radius: 32px;
  background: #262828;
  color: #fff;
}

.pa-ride__icon {
  color: #fff;
  font-size: 4rem;
  font-weight: 800;
  line-height: 1;
  text-align: center;
}

.pa-ride .pa-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3;
  text-transform: uppercase;
}

.pa-ride .pa-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--pa-accent, #1599a6);
}

.pa-ride h2 {
  margin: 0 0 18px;
  color: var(--pa-heading, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.12;
}

.pa-ride p,
.pa-ride .pa-copy,
.pa-ride .pa-copy p,
.pa-ride strong {
  margin: 0 0 18px;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.pa-ride strong {
  display: inline;
  font-weight: 800;
}

.pa-ride .pa-copy p:last-child {
  margin-bottom: 0;
}

.pa-ride a:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

@media (max-width: 1040px) {
  .pa-ride__strip {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .pa-ride {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .pa-ride .pa-wrap {
    width: min(100% - 28px, 1180px);
  }

  .pa-ride__strip {
    padding: 30px 23px;
  }

  .pa-ride p,
  .pa-ride .pa-copy,
  .pa-ride .pa-copy p {
    font-size: 17px;
  }
}
/* END_SECTION:protesi-trasporto */

/* START_SECTION:scarpe-appuntamento (INDEX:96) */
.shopify-section.so-scarpe { margin: 0; padding: 0; }
.so-form {
  --so-deep: #045461;
  --so-dark: #087684;
  --so-pale: #f4fbfc;
  --so-sand: #f2eee7;
  --so-border: #ddebed;
  --so-charcoal: #262828;
  padding-top: var(--so-pt, 92px);
  padding-bottom: var(--so-pb, 92px);
  background: linear-gradient(180deg, var(--so-bg, var(--so-pale)), #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}
.so-form *, .so-form *::before, .so-form *::after { box-sizing: border-box; }
.so-form .so-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.so-form__grid { display: grid; grid-template-columns: 0.86fr 1.14fr; gap: 46px; align-items: start; }
.so-form .so-eyebrow {
  display: inline-flex; align-items: center; gap: 0.6rem; margin-bottom: 14px;
  color: var(--so-dark); font-size: 17px; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase;
}
.so-form .so-eyebrow::before { content: ""; width: 36px; height: 3px; border-radius: 99px; background: var(--so-accent, #1599a6); }
.so-form h2, .so-form h3 {
  margin: 0 0 18px; color: var(--so-heading, #262828); font-family: Arial, Helvetica, sans-serif; font-weight: 700; line-height: 1.12;
}
.so-form h2 { font-size: clamp(1.9rem, 3.2vw, 3.1rem); letter-spacing: -0.035em; }
.so-form h3 { font-size: 1.3rem; }
.so-form p, .so-form .so-copy, .so-form .so-copy p {
  margin: 0 0 18px; color: var(--so-text, #3e4a4d); font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.65;
}
.so-form .so-copy p:last-child, .so-info .so-copy p:last-child, .so-note p:last-child { margin-bottom: 0; }
.so-form strong { display: inline; font-weight: 800; color: var(--so-charcoal); }
.so-infos { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 34px; }
.so-info { padding: 22px; border: 1px solid var(--so-border); border-radius: 18px; background: #fff; }
.so-info h3 { margin-bottom: 8px; }
.so-note {
  margin-top: 14px; padding: 14px; border-radius: 13px; background: var(--so-sand);
  color: var(--so-text, #3e4a4d); font-size: 17px; line-height: 1.55;
}
.so-note p { margin: 0; font-size: 17px; }
.so-card {
  padding: 32px; border: 1px solid var(--so-border); border-radius: 28px; background: #fff;
  box-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
}
.so-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.so-field--full { grid-column: 1 / -1; }
.so-form label {
  display: block; margin-bottom: 7px; color: var(--so-charcoal);
  font-size: 17px; font-weight: 800; line-height: 1.35;
}
.so-form input:not([type="checkbox"]),
.so-form select,
.so-form textarea {
  width: 100%; min-height: 44px; padding: 13px 14px;
  border: 1px solid #c8dadd; border-radius: 13px; background: #fff; color: var(--so-charcoal);
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.4;
}
.so-form textarea { min-height: 140px; resize: vertical; }
.so-check { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.so-check input {
  width: 20px; height: 20px; margin: 0; flex: 0 0 44px; accent-color: var(--so-dark);
}
.so-check label { margin: 0; font-size: 17px; font-weight: 400; line-height: 1.45; }
.so-form .so-btn {
  display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 52px;
  padding: 14px 22px; border: 0; border-radius: 999px; background: var(--so-dark); color: #fff;
  font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: 800; line-height: 1.2;
  text-decoration: none; cursor: pointer; box-shadow: 0 14px 28px rgba(8, 118, 132, 0.24);
}
.so-form .so-btn:hover { background: var(--so-deep); color: #fff; }
.so-form a { color: var(--so-deep); font-weight: 800; text-decoration: underline; }
.so-form a:focus-visible,
.so-form .so-btn:focus-visible,
.so-form input:focus-visible,
.so-form select:focus-visible,
.so-form textarea:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}
.so-status { margin-bottom: 16px; padding: 14px 16px; border-radius: 13px; }
.so-status p, .so-status li { margin: 0 0 8px; font-size: 17px; }
.so-form .so-status ul { margin: 8px 0 0; padding-left: 1.25em; list-style: disc outside; }
.so-form .so-status li { display: list-item; list-style: disc outside; }
.so-status--success { background: #e7f6ee; color: #0d6b3a; }
.so-status--error { background: #fdecec; color: #8d1d1d; }
@media (max-width: 1040px) {
  .so-form__grid { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 680px) {
  .so-form { padding-top: 68px; padding-bottom: 68px; font-size: 17px; }
  .so-form .so-wrap { width: min(100% - 28px, 1180px); }
  .so-form p, .so-form .so-copy, .so-form .so-copy p, .so-note, .so-note p,
  .so-form input:not([type="checkbox"]), .so-form select, .so-form textarea { font-size: 17px; }
  .so-infos, .so-fields { grid-template-columns: 1fr; }
  .so-card { padding: 22px; }
}
/* END_SECTION:scarpe-appuntamento */

/* START_SECTION:scarpe-convenzioni (INDEX:97) */
.shopify-section.sc-scarpe-conv {
  margin: 0;
  padding: 0;
}

.sc-conv {
  --sc-teal: #1599a6;
  --sc-teal-dark: #087684;
  --sc-teal-deep: #045461;
  --sc-charcoal: #3f4242;
  --sc-charcoal-dark: #262828;
  --sc-grey: #687275;
  --sc-border: #ddebed;
  --sc-pale: #f4fbfc;
  --sc-radius: 24px;
  --sc-shadow: 0 18px 50px rgba(4, 84, 97, 0.14);
  padding-top: var(--sc-pt, 92px);
  padding-bottom: var(--sc-pb, 92px);
  background: var(--sc-bg, #fff);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: var(--sc-charcoal);
}

.sc-conv *,
.sc-conv *::before,
.sc-conv *::after {
  box-sizing: border-box;
}

.sc-conv .sc-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.sc-conv h2,
.sc-conv h3 {
  margin: 0 0 18px;
  color: var(--sc-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.sc-conv h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.sc-conv h3 {
  font-size: 1.3rem;
  letter-spacing: 0;
}

.sc-conv p,
.sc-conv li,
.sc-conv .sc-copy,
.sc-conv .sc-copy p {
  margin: 0 0 18px;
  padding: 0;
  color: var(--sc-text, #687275);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
  list-style: none;
}

.sc-conv__grid > div > .sc-copy p:first-child {
  color: var(--sc-charcoal);
  font-size: 1.18rem;
}

.sc-conv strong {
  display: inline;
  color: var(--sc-charcoal-dark);
  font-weight: 800;
}

.sc-conv .sc-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: var(--sc-accent, #1599a6);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.2;
  text-transform: uppercase;
}

.sc-conv .sc-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--sc-accent, #1599a6);
}

.sc-conv__grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 60px;
  align-items: center;
}

.sc-conv .sc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  margin-top: 8px;
  padding: 14px 22px;
  border: 0;
  border-radius: 999px;
  background: var(--sc-accent, #1599a6);
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  text-transform: none;
  box-shadow: 0 14px 28px rgba(21, 153, 166, 0.24);
}

.sc-conv .sc-btn:hover,
.sc-conv .sc-btn:focus-visible {
  background: var(--sc-teal-dark);
  color: #fff;
  transform: translateY(-2px);
}

.sc-docs {
  padding: 34px;
  border: 1px solid var(--sc-border);
  border-radius: var(--sc-radius);
  background: var(--sc-pale);
  box-shadow: var(--sc-shadow);
}

.sc-docs__badge {
  display: grid;
  place-items: center;
  width: 64px;
  height: 74px;
  margin-bottom: 22px;
  border-radius: 13px;
  background: var(--sc-accent, #1599a6);
  color: #fff;
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1;
}

.sc-docs ul {
  margin: 18px 0 0;
  padding-left: 22px;
}

.sc-docs li {
  display: list-item;
  margin: 0 0 8px;
  color: var(--sc-grey);
  list-style: disc;
}

.sc-docs .sc-copy p:last-child,
.sc-docs p:last-child {
  margin-bottom: 0;
}

@media (max-width: 1040px) {
  .sc-conv__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .sc-conv {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .sc-conv .sc-wrap {
    width: min(100% - 28px, 1180px);
  }

  .sc-docs {
    padding: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sc-conv .sc-btn:hover,
  .sc-conv .sc-btn:focus-visible {
    transform: none;
  }
}
/* END_SECTION:scarpe-convenzioni */

/* START_SECTION:scarpe-soft (INDEX:98) */
.shopify-section.sc-scarpe {
  margin: 0;
  padding: 0;
}

.sc-soft {
  --sc-teal-soft: #eaf7f8;
  --sc-teal-deep: #045461;
  --sc-charcoal-dark: #262828;
  --sc-border: #ddebed;
  --sc-radius: 24px;
  padding-top: var(--sc-pt, 92px);
  padding-bottom: var(--sc-pb, 92px);
  background: var(--sc-bg, #f4fbfc);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  color: #3f4242;
}

.sc-soft *,
.sc-soft *::before,
.sc-soft *::after {
  box-sizing: border-box;
}

.sc-soft .sc-wrap {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.sc-soft .sc-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 14px;
  color: #087684;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.2;
  text-transform: uppercase;
}

.sc-soft .sc-eyebrow::before {
  content: "";
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background: var(--sc-accent, #1599a6);
}

.sc-soft h2,
.sc-soft h3 {
  margin: 0 0 18px;
  color: var(--sc-heading, #262828);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.12;
}

.sc-soft h2 {
  font-size: clamp(1.9rem, 3.2vw, 3.1rem);
  letter-spacing: -0.035em;
}

.sc-soft h3 {
  margin-bottom: 10px;
  font-size: 1.3rem;
  letter-spacing: 0;
}

.sc-soft p,
.sc-soft .sc-copy,
.sc-soft .sc-copy p,
.sc-soft .sc-note,
.sc-soft .sc-note p {
  margin: 0 0 18px;
  padding: 0;
  color: var(--sc-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
}

.sc-soft strong {
  display: inline;
  font-weight: 800;
  color: var(--sc-charcoal-dark);
}

.sc-soft .sc-copy ul,
.sc-soft .sc-note ul,
.sc-soft .sc-copy ol,
.sc-soft .sc-note ol {
  margin: 0 0 18px;
  padding-left: 1.35em;
}

.sc-soft .sc-copy ul,
.sc-soft .sc-note ul {
  list-style: disc outside;
}

.sc-soft .sc-copy ol,
.sc-soft .sc-note ol {
  list-style: decimal outside;
}

.sc-soft .sc-copy li,
.sc-soft .sc-note li {
  display: list-item;
  margin: 0 0 8px;
  padding: 0;
  color: var(--sc-text, #3e4a4d);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.sc-soft .sc-copy ul li,
.sc-soft .sc-note ul li {
  list-style: disc outside;
}

.sc-soft .sc-copy ol li,
.sc-soft .sc-note ol li {
  list-style: decimal outside;
}

.sc-soft .sc-copy li:last-child,
.sc-soft .sc-note li:last-child {
  margin-bottom: 0;
}

.sc-intro {
  max-width: 860px;
}

.sc-intro p:last-child {
  margin-bottom: 0;
}

.sc-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 36px;
}

.sc-card {
  padding: 28px;
  border: 1px solid var(--sc-border);
  border-radius: var(--sc-radius);
  background: #fff;
  box-shadow: 0 10px 24px rgba(4, 84, 97, 0.06);
}

.sc-card__icon {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  margin-bottom: 18px;
  border-radius: 15px;
  background: var(--sc-teal-soft);
  color: var(--sc-teal-deep);
  font-size: 17px;
  font-weight: 900;
  line-height: 1;
}

.sc-card .sc-copy p:last-child {
  margin-bottom: 0;
}

.sc-soft a:focus-visible {
  outline: 3px solid #045461;
  outline-offset: 3px;
}

.sc-note,
.sc-note p {
  max-width: 900px;
  margin: 28px auto 0;
  color: var(--sc-text, #3e4a4d);
  font-size: 17px;
  text-align: center;
}

@media (max-width: 1040px) {
  .sc-cards {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 680px) {
  .sc-soft {
    padding-top: 68px;
    padding-bottom: 68px;
    font-size: 17px;
  }

  .sc-soft .sc-wrap {
    width: min(100% - 28px, 1180px);
  }

  .sc-soft .sc-copy li,
  .sc-soft .sc-note li {
    font-size: 17px;
  }

  .sc-cards {
    grid-template-columns: 1fr;
  }
}
/* END_SECTION:scarpe-soft */