.gs-contatti-page {
  --gs-contact-ink: #111719;
  --gs-contact-muted: #5f6668;
  --gs-contact-paper: #f4f0e9;
  --gs-contact-line: rgba(17,23,25,.16);
  --gs-contact-accent: #cfaa7b;
  box-sizing: border-box;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--gs-contact-ink);
}
.gs-contatti-page *, .gs-contatti-page *::before, .gs-contatti-page *::after { box-sizing: inherit; }
.gs-contatti-hero,
.gs-contatti-form-section,
.gs-contatti-direct { max-width: 1180px !important; margin-left: auto !important; margin-right: auto !important; }
.gs-contatti-hero { padding: clamp(64px,8vw,118px) 24px clamp(54px,7vw,96px) !important; }
.gs-contatti-eyebrow,
.gs-contatti-section-label { margin: 0 0 20px !important; font-size: .72rem !important; font-weight: 700 !important; letter-spacing: .15em; }
.gs-contatti-title { max-width: 900px; margin: 0 !important; font-size: clamp(3.2rem,7vw,6.7rem) !important; line-height: .96 !important; font-weight: 400 !important; }
.gs-contatti-lead { max-width: 720px; margin: 34px 0 0 !important; font-size: clamp(1.05rem,1.6vw,1.28rem) !important; line-height: 1.65 !important; color: var(--gs-contact-muted); }
.gs-contatti-jump { margin-top: 30px !important; }
.gs-contatti-jump a { color: inherit; font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.gs-contatti-form-section { background: var(--gs-contact-paper); padding: clamp(54px,7vw,92px) clamp(24px,6vw,76px) !important; scroll-margin-top: 40px; }
.gs-contatti-form-section > h2 { max-width: 780px; margin: 0 !important; font-size: clamp(2.5rem,5vw,4.7rem) !important; line-height: 1 !important; font-weight: 400 !important; }
.gs-contatti-form-intro { max-width: 700px; margin: 24px 0 44px !important; color: var(--gs-contact-muted); font-size: 1.06rem; line-height: 1.65; }
.gs-contact-form-wrap { max-width: 860px; }
.gs-contact-status { margin: 0 0 30px; padding: 20px 22px; border: 1px solid var(--gs-contact-line); background: #fff; }
.gs-contact-status p { margin: 7px 0 0; }
.gs-contact-status-success { border-left: 4px solid #496a58; }
.gs-contact-status-error { border-left: 4px solid #9a4b42; }
.gs-contact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.gs-contact-field { display: flex; flex-direction: column; gap: 9px; }
.gs-contact-field-wide { grid-column: 1 / -1; }
.gs-contact-field label { font-size: .84rem; font-weight: 700; }
.gs-contact-field input,
.gs-contact-field select,
.gs-contact-field textarea {
  width: 100%;
  border: 1px solid rgba(17,23,25,.28);
  border-radius: 0;
  background: #fff;
  color: var(--gs-contact-ink);
  font: inherit;
  padding: 15px 16px;
  min-height: 52px;
}
.gs-contact-field textarea { min-height: 170px; resize: vertical; line-height: 1.55; }
.gs-contact-field input:focus,
.gs-contact-field select:focus,
.gs-contact-field textarea:focus { outline: 2px solid var(--gs-contact-ink); outline-offset: 2px; }
.gs-contact-help { margin: -12px 0 0 !important; color: var(--gs-contact-muted); font-size: .83rem; }
.gs-contact-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.gs-contact-privacy { display: flex; gap: 12px; align-items: flex-start; margin-top: 30px; line-height: 1.55; font-size: .92rem; }
.gs-contact-privacy input { margin-top: 4px; flex: 0 0 auto; }
.gs-contact-privacy a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.gs-contact-privacy-note { max-width: 720px; color: var(--gs-contact-muted); font-size: .82rem; line-height: 1.5; }
.gs-contact-submit {
  margin-top: 18px;
  border: 1px solid var(--gs-contact-ink);
  border-radius: 0;
  background: var(--gs-contact-ink);
  color: #fff;
  min-height: 54px;
  padding: 0 28px;
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
}
.gs-contact-submit:hover, .gs-contact-submit:focus-visible { background: #fff; color: var(--gs-contact-ink); }
.gs-contatti-direct { padding: clamp(50px,7vw,82px) 24px !important; }
.gs-contatti-direct-grid { gap: 0 !important; margin-top: 28px !important; border-top: 1px solid var(--gs-contact-line); }
.gs-contatti-direct-grid > .wp-block-column { padding: 24px 28px 12px 0; border-bottom: 1px solid var(--gs-contact-line); }
.gs-contatti-direct-grid > .wp-block-column + .wp-block-column { padding-left: 28px; border-left: 1px solid var(--gs-contact-line); }
.gs-contatti-direct-label { margin: 0 0 8px !important; color: var(--gs-contact-muted); font-size: .72rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.gs-contatti-direct a { color: inherit; font-size: 1.05rem; text-underline-offset: 4px; }
@media (max-width: 760px) {
  .gs-contatti-title { font-size: clamp(2.8rem,14vw,4.7rem) !important; }
  .gs-contact-grid { grid-template-columns: 1fr; }
  .gs-contact-field-wide { grid-column: auto; }
  .gs-contatti-form-section { padding-left: 22px !important; padding-right: 22px !important; }
  .gs-contatti-direct-grid { display: block !important; }
  .gs-contatti-direct-grid > .wp-block-column,
  .gs-contatti-direct-grid > .wp-block-column + .wp-block-column { padding: 20px 0 !important; border-left: 0 !important; border-bottom: 1px solid var(--gs-contact-line); }
  .gs-contact-submit { width: 100%; }
}
