/*
Theme Name: Obstella Child
Template: obstella
Description: Child theme - fix mobile, design e rimozione top bar
Version: 1.5.5
*/

/* ============================================================
   TOP BAR - nascosta su tutti i dispositivi
   ============================================================ */

.guten-rGtKNA {
  display: none !important;
}

/* ============================================================
   HEADER PRINCIPALE - background cream
   ============================================================ */

.guten-n9HC0a:not(.background-animated),
.guten-n9HC0a.background-animated > .guten-background-animated .animated-layer {
  background: var(--wp--preset--color--theme-4) !important;
}

/* Fix colonne interne header */
.guten-n9HC0a > .guten-container > .guten-column > .guten-column-wrapper,
.guten-n9HC0a > .guten-container > .guten-column > .sticky-wrapper > .guten-column-wrapper {
  background: transparent !important;
}

/* ============================================================
   MENU WRAPPER DESKTOP - rimuovi sfondo salmone
   ============================================================ */

.guten-nav-menu .gutenverse-menu-wrapper {
  background: transparent !important;
  background-attachment: initial !important;
}

/* Menu item desktop */
.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li > a {
  color: var(--wp--preset--color--theme-0) !important;
  font-weight: 500 !important;
}

.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li > a:hover,
.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li.current-menu-item > a {
  color: var(--wp--preset--color--theme-1) !important;
}

/* ============================================================
   HEADER - bordo e padding minimal
   ============================================================ */

.guten-n9HC0a .guten-container {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

/* ============================================================
   FIX HEADER MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .guten-n9HC0a .guten-container,
  .guten-sofia-header .guten-container {
    padding-left: 15px !important;
    padding-right: 15px !important;
    align-items: center !important;
  }
  .guten-SBjERg img {
    max-width: 130px !important;
    height: auto !important;
  }
  .guten-E3vZbr {
    width: 50% !important;
    max-width: 50% !important;
  }
  .guten-9hFodh {
    width: 50% !important;
    max-width: 50% !important;
  }
}

/* ============================================================
   HAMBURGER MENU
   ============================================================ */

.gutenverse-hamburger-menu {
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  padding: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

.gutenverse-hamburger-menu i {
  color: var(--wp--preset--color--theme-0) !important;
  font-size: 26px !important;
}

.gutenverse-hamburger-wrapper {
  display: flex !important;
  justify-content: flex-end !important;
  width: 100% !important;
}

/* Menu mobile aperto */
.gutenverse-menu-wrapper.open,
.break-point-tablet .gutenverse-menu-wrapper,
.break-point-mobile .gutenverse-menu-wrapper {
  background-color: var(--wp--preset--color--theme-4) !important;
}

.gutenverse-menu-wrapper .gutenverse-menu a {
  color: var(--wp--preset--color--theme-0) !important;
  padding: 12px 20px !important;
  display: block !important;
}

.gutenverse-menu-wrapper .gutenverse-menu a:hover {
  color: var(--wp--preset--color--theme-1) !important;
}

.gutenverse-close-menu i {
  color: var(--wp--preset--color--theme-0) !important;
}

/* ============================================================
   FIX IMMAGINI MOBILE
   ============================================================ */

@media (max-width: 767px) {
  img {
    max-width: 100% !important;
    height: auto !important;
  }
  .guten-section {
    overflow-x: hidden !important;
  }
  .guten-container {
    flex-wrap: wrap !important;
  }
}

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

@media (max-width: 767px) {
  h1, .wp-block-heading h1 {
    font-size: clamp(1.8rem, 6vw, 2.5rem) !important;
    line-height: 1.2 !important;
  }
  h2, .wp-block-heading h2 {
    font-size: clamp(1.4rem, 5vw, 2rem) !important;
  }
  h3, .wp-block-heading h3 {
    font-size: clamp(1.1rem, 4vw, 1.5rem) !important;
  }
  p, li {
    font-size: clamp(0.9rem, 3.5vw, 1rem) !important;
    line-height: 1.6 !important;
  }
}

/* ============================================================
   PADDING SEZIONI MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .guten-section .guten-container {
    padding-left: 15px;
    padding-right: 15px;
  }
  .guten-button, a.guten-button {
    min-height: 44px !important;
    padding: 10px 20px !important;
    font-size: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
}

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

@media (max-width: 767px) {
  footer .guten-column,
  .wp-block-template-part footer .guten-column {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }
}

/* ============================================================
   ACCESSIBILITA'
   ============================================================ */

a:focus, button:focus {
  outline: 2px solid var(--wp--preset--color--theme-2) !important;
  outline-offset: 2px !important;
}

/* ============================================================
   CODEX OBSTELLA DEMO ALIGNMENT - 2026-04-10
   Child-theme only: keeps the parent theme update-safe.
   ============================================================ */

:root {
  --sofia-ink: #504643;
  --sofia-muted: #746661;
  --sofia-soft: #fcfaf5;
  --sofia-soft-2: #f8f2ec;
  --sofia-peach: #e28f54;
  --sofia-peach-dark: #db742b;
  --sofia-blue: #2d4965;
  --sofia-line: rgba(80, 70, 67, 0.12);
  --sofia-footer: #14212d;
}

html,
body,
.wp-site-blocks {
  background: var(--sofia-soft) !important;
  color: var(--sofia-muted);
  overflow-x: hidden;
}

body {
  font-family: "Work Sans", sans-serif;
}

/* Keep the demo's editorial palette, but remove the blue top bar. */
.guten-rGtKNA,
.guten-topbar,
.obstella-topbar {
  display: none !important;
}

/* Header */
.guten-n9HC0a,
.guten-n9HC0a:not(.background-animated),
.guten-n9HC0a.background-animated > .guten-background-animated .animated-layer {
  background: var(--sofia-soft) !important;
  border-bottom: 1px solid var(--sofia-line);
  position: relative;
  z-index: 50;
}

.guten-n9HC0a .guten-container {
  align-items: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  min-height: 80px;
  padding: 0 32px !important;
}

.guten-n9HC0a .guten-column,
.guten-n9HC0a .guten-column-wrapper,
.guten-n9HC0a .sticky-wrapper,
.guten-n9HC0a .guten-background-overlay,
.guten-nav-menu .gutenverse-menu-wrapper {
  background: transparent !important;
}

.guten-SBjERg {
  margin: 0 !important;
  padding: 0 !important;
}

.guten-SBjERg .guten-image-wrapper {
  display: block !important;
  height: 78px !important;
  overflow: hidden !important;
  width: 172px !important;
}

.guten-SBjERg img {
  display: block !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  width: 100% !important;
}

.guten-U09GIs.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li > a,
.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li > a {
  color: var(--sofia-ink) !important;
  font-family: "Work Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}

.guten-U09GIs.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li > a:hover,
.guten-U09GIs.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li.current-menu-item > a,
.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li > a:hover,
.guten-nav-menu .gutenverse-menu-wrapper .gutenverse-menu > li.current-menu-item > a {
  color: var(--sofia-peach) !important;
}

.gutenverse-hamburger-menu,
.gutenverse-close-menu {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.gutenverse-hamburger-menu i,
.gutenverse-close-menu i {
  color: var(--sofia-ink) !important;
}

/* Hero */
.guten-evh6G1,
.guten-evh6G1:not(.background-animated),
.guten-evh6G1.background-animated > .guten-background-animated .animated-layer {
  background: var(--sofia-soft) !important;
}

.guten-evh6G1 > .guten-container {
  align-items: stretch !important;
  flex-wrap: nowrap !important;
  margin-left: auto !important;
  margin-right: auto !important;
  min-height: 660px;
}

.guten-evh6G1 .guten-eeYLyg {
  background: var(--sofia-soft) !important;
  margin-right: 0 !important;
  padding: 96px 48px 88px max(72px, calc((100vw - 1240px) / 2 + 32px)) !important;
}

.guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper {
  display: flex !important;
  align-items: center !important;
  min-height: 660px;
}

.guten-evh6G1 .guten-fvDdoT,
.guten-evh6G1 .guten-fvDdoT .guten-inner-wrap {
  display: block !important;
  max-width: 590px !important;
  width: 100% !important;
}

.guten-sofia-hero-eyebrow {
  margin-bottom: 22px !important;
}

.guten-sofia-hero-eyebrow p {
  color: var(--sofia-blue) !important;
  font-family: "Work Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  text-transform: uppercase !important;
}

.guten-bY3hI7 {
  overflow: visible !important;
}

.guten-bY3hI7 h2 {
  color: var(--sofia-ink) !important;
  font-family: "Work Sans", sans-serif !important;
  font-size: 58px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
  margin: 0 !important;
  max-width: 590px !important;
}

.guten-bY3hI7 .before-text {
  color: var(--sofia-ink) !important;
  display: block !important;
  font-family: "Playfair Display", serif !important;
  font-size: 68px !important;
  font-style: italic !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.04 !important;
  white-space: normal !important;
}

.guten-bY3hI7 .text-content,
.guten-bY3hI7 .text-wrapper,
.guten-bY3hI7 .letter {
  color: var(--sofia-ink) !important;
  display: inline !important;
  font-family: "Work Sans", sans-serif !important;
  font-size: 58px !important;
  font-style: normal !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
  opacity: 1 !important;
  position: static !important;
  text-transform: none !important;
  transform: none !important;
  -webkit-text-fill-color: var(--sofia-ink) !important;
  -webkit-text-stroke: 0 transparent !important;
}

.guten-bY3hI7 .highlighted {
  display: none !important;
}

.guten-sofia-hero-copy {
  margin-top: 26px !important;
  max-width: 520px !important;
}

.guten-sofia-hero-copy p {
  color: var(--sofia-muted) !important;
  font-family: "Work Sans", sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.65 !important;
  margin: 0 !important;
}

.guten-evh6G1 .guten-zaBbbt {
  margin-top: 34px !important;
}

.guten-evh6G1 .guten-zaBbbt .guten-button,
.guten-evh6G1 .guten-zaBbbt a.guten-button,
a.guten-button,
.guten-button {
  border-radius: 0 !important;
  font-family: "Work Sans", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

.guten-evh6G1 .guten-zaBbbt .guten-button,
.guten-evh6G1 .guten-zaBbbt a.guten-button {
  background: var(--sofia-peach) !important;
  color: #fff !important;
  min-height: 56px !important;
  padding: 19px 32px !important;
}

.guten-evh6G1 .guten-zaBbbt .guten-button:hover,
.guten-evh6G1 .guten-zaBbbt a.guten-button:hover {
  background: var(--sofia-peach-dark) !important;
  color: #fff !important;
}

.guten-evh6G1 .guten-72ZULS {
  background-color: #d8e3e5 !important;
  min-height: 660px;
}

.guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
  min-height: 660px;
  overflow: visible !important;
  position: relative !important;
}

.guten-evh6G1 .guten-odsnZY {
  background: #fff !important;
  box-shadow: 0 24px 56px rgba(80, 70, 67, 0.18) !important;
  filter: none !important;
  left: -112px !important;
  opacity: 1 !important;
  padding: 8px !important;
  top: 24% !important;
  transform: rotate(-3deg) !important;
  width: min(520px, 42vw) !important;
  z-index: 4 !important;
}

.guten-evh6G1 .guten-odsnZY > .guten-background-overlay {
  opacity: 0 !important;
}

.guten-evh6G1 .guten-Oklg4q {
  border: 0 !important;
  overflow: hidden !important;
}

.guten-evh6G1 .guten-Oklg4q .guten-container {
  min-height: 390px !important;
}

.guten-evh6G1 .guten-AHFLhg {
  min-height: 390px !important;
}

.guten-tgfLDj {
  filter: saturate(0.95) contrast(0.98) !important;
}

/* Cards, blog and footer harmony */
.guten-80JFmt,
.guten-F3v7wx,
.guten-FaJcsz,
.guten-GE1JxH {
  background-color: var(--sofia-soft) !important;
}

.guten-yoGvqr {
  background: var(--sofia-footer) !important;
}

.guten-yoGvqr .guten-column-wrapper,
.guten-yoGvqr .guten-d6VFHb {
  background-color: var(--sofia-footer) !important;
}

.guten-yoGvqr a,
.guten-yoGvqr p,
.guten-yoGvqr h2,
.guten-yoGvqr h3 {
  letter-spacing: 0 !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .guten-n9HC0a .guten-container {
    flex-wrap: nowrap !important;
    min-height: 86px;
    padding: 6px 22px !important;
  }

  .guten-SBjERg .guten-image-wrapper {
    height: 76px !important;
    width: 136px !important;
  }

  .guten-evh6G1 > .guten-container {
    flex-direction: column !important;
    min-height: auto;
  }

  .guten-evh6G1 .guten-eeYLyg,
  .guten-evh6G1 .guten-72ZULS {
    max-width: 100% !important;
    width: 100% !important;
  }

  .guten-evh6G1 .guten-eeYLyg {
    padding: 72px 36px 48px !important;
  }

  .guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper {
    min-height: auto;
  }

  .guten-bY3hI7 h2,
  .guten-bY3hI7 .text-content,
  .guten-bY3hI7 .text-wrapper,
  .guten-bY3hI7 .letter {
    font-size: 46px !important;
  }

  .guten-bY3hI7 .before-text {
    font-size: 56px !important;
  }

  .guten-evh6G1 .guten-72ZULS,
  .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: 430px;
  }

  .guten-evh6G1 .guten-odsnZY {
    left: auto !important;
    margin: -28px auto 48px !important;
    max-width: 520px !important;
    position: relative !important;
    top: auto !important;
    width: calc(100% - 72px) !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .guten-n9HC0a .guten-container {
    min-height: 78px;
    padding: 6px 18px !important;
  }

  .guten-E3vZbr,
  .guten-9hFodh {
    flex-basis: 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }

  .guten-SBjERg .guten-image-wrapper {
    height: 66px !important;
    width: 116px !important;
  }

  .gutenverse-menu-wrapper.open,
  .break-point-tablet .gutenverse-menu-wrapper,
  .break-point-mobile .gutenverse-menu-wrapper {
    background-color: var(--sofia-soft) !important;
    box-shadow: 0 24px 60px rgba(80, 70, 67, 0.16) !important;
  }

  .gutenverse-menu-wrapper .gutenverse-menu a {
    color: var(--sofia-ink) !important;
    font-family: "Work Sans", sans-serif !important;
    font-size: 16px !important;
    letter-spacing: 0 !important;
    padding: 14px 22px !important;
  }

  .guten-evh6G1 .guten-eeYLyg {
    padding: 56px 28px 38px !important;
  }

  .guten-sofia-hero-eyebrow {
    margin-bottom: 18px !important;
  }

  .guten-sofia-hero-eyebrow p {
    font-size: 12px !important;
  }

  .guten-bY3hI7 h2,
  .guten-bY3hI7 .text-content,
  .guten-bY3hI7 .text-wrapper,
  .guten-bY3hI7 .letter {
    font-size: 38px !important;
    line-height: 1.12 !important;
  }

  .guten-bY3hI7 .before-text {
    font-size: 48px !important;
    line-height: 1.08 !important;
  }

  .guten-sofia-hero-copy {
    margin-top: 20px !important;
  }

  .guten-sofia-hero-copy p {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }

  .guten-evh6G1 .guten-zaBbbt {
    margin-top: 28px !important;
  }

  .guten-evh6G1 .guten-zaBbbt .guten-button,
  .guten-evh6G1 .guten-zaBbbt a.guten-button {
    min-height: 52px !important;
    padding: 16px 24px !important;
  }

  .guten-evh6G1 .guten-72ZULS,
  .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: 340px !important;
  }

  .guten-evh6G1 .guten-odsnZY {
    margin: -22px auto 38px !important;
    padding: 7px !important;
    transform: rotate(-2deg) !important;
    width: calc(100% - 54px) !important;
  }

  .guten-evh6G1 .guten-Oklg4q .guten-container,
  .guten-evh6G1 .guten-AHFLhg {
    min-height: 255px !important;
  }

  footer .guten-column,
  .wp-block-template-part footer .guten-column,
  .guten-yoGvqr .guten-column {
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (max-width: 360px) {
  .guten-bY3hI7 h2,
  .guten-bY3hI7 .text-content,
  .guten-bY3hI7 .text-wrapper,
  .guten-bY3hI7 .letter {
    font-size: 34px !important;
  }

  .guten-bY3hI7 .before-text {
    font-size: 42px !important;
  }
}

/* Late specificity fixes for generated Gutenverse CSS. */
body .guten-n9HC0a .guten-SBjERg.guten-image .guten-image-wrapper {
  display: block !important;
  height: 72px !important;
  max-height: 72px !important;
  overflow: hidden !important;
  width: 132px !important;
}

body .guten-n9HC0a .guten-SBjERg.guten-image .guten-image-wrapper img.gutenverse-image-box-filled,
body .guten-n9HC0a .guten-SBjERg.guten-image img.gutenverse-image-box-filled {
  display: block !important;
  height: 100% !important;
  max-height: 72px !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center !important;
  width: 100% !important;
}

body .guten-evh6G1 .guten-bY3hI7.guten-animated-text h2 .before-text,
body .guten-evh6G1 .guten-bY3hI7.guten-animated-text h2 span.non-animated-text.before-text,
body .guten-evh6G1 .guten-bY3hI7.guten-animated-text .text-content,
body .guten-evh6G1 .guten-bY3hI7.guten-animated-text .text-content .text-wrapper,
body .guten-evh6G1 .guten-bY3hI7.guten-animated-text .text-content .text-wrapper .letter {
  color: var(--sofia-ink) !important;
  letter-spacing: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-text-fill-color: var(--sofia-ink) !important;
  -webkit-text-stroke: 0 transparent !important;
}

@media (max-width: 767px) {
  body .guten-n9HC0a .guten-container {
    min-height: 74px !important;
  }

  body .guten-n9HC0a .guten-SBjERg.guten-image .guten-image-wrapper {
    height: 58px !important;
    max-height: 58px !important;
    width: 92px !important;
  }

  body .guten-n9HC0a .guten-SBjERg.guten-image .guten-image-wrapper img.gutenverse-image-box-filled,
  body .guten-n9HC0a .guten-SBjERg.guten-image img.gutenverse-image-box-filled {
    max-height: 58px !important;
  }
}

/* Final viewport alignment after real browser review. */
@media (min-width: 1025px) {
  body .guten-n9HC0a .gutenverse-hamburger-wrapper,
  body .guten-n9HC0a .gutenverse-hamburger-menu {
    display: none !important;
  }

  body .guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper,
  body .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper,
  body .guten-evh6G1 .guten-72ZULS .wp-block-group {
    align-items: flex-start !important;
  }

  body .guten-evh6G1 .guten-odsnZY {
    top: 170px !important;
  }
}

@media (max-width: 1024px) {
  body .guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper {
    align-items: flex-start !important;
  }
}

@media (max-width: 767px) {
  body .guten-evh6G1 .guten-eeYLyg {
    padding-top: 34px !important;
  }

  body .guten-evh6G1 .guten-72ZULS,
  body .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: 310px !important;
  }

  body .guten-evh6G1 .guten-odsnZY {
    margin-top: -36px !important;
  }
}

/* Mobile collage and hero density refinements. */
body .guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper {
  padding: 0 !important;
}

body .guten-evh6G1 .guten-72ZULS .wp-block-group {
  max-width: 100% !important;
  width: 100% !important;
}

body .guten-evh6G1 .guten-Oklg4q {
  width: 100% !important;
}

@media (max-width: 1024px) {
  body .guten-evh6G1 .guten-odsnZY {
    width: min(520px, calc(100vw - 72px)) !important;
  }
}

@media (max-width: 767px) {
  body .guten-evh6G1 .guten-odsnZY {
    margin-top: 24px !important;
    width: min(330px, calc(100vw - 54px)) !important;
  }
}

/* Demo color compliance: Obstella uses a dark footer, not the CTA peach. */
body .guten-yoGvqr,
body .guten-yoGvqr:not(.background-animated),
body .guten-yoGvqr.background-animated > .guten-background-animated .animated-layer {
  background: var(--sofia-footer) !important;
}

body .guten-yoGvqr .guten-column-wrapper,
body .guten-yoGvqr .guten-d6VFHb,
body .guten-yoGvqr .guten-element {
  background-color: transparent !important;
}

body .guten-yoGvqr h2,
body .guten-yoGvqr h3,
body .guten-yoGvqr .title,
body .guten-yoGvqr a,
body .guten-yoGvqr .list-text {
  color: #ffffff !important;
}

body .guten-yoGvqr p,
body .guten-yoGvqr .gutenverse-text-editor,
body .guten-yoGvqr .gutenverse-text-editor p {
  color: rgba(255, 255, 255, 0.72) !important;
}

body .guten-yoGvqr a:hover {
  color: var(--sofia-peach) !important;
}

/* Home-only compact pass: respect Obstella demo colors, remove stray dark/orange blocks. */
body.home.page-id-75 {
  background: var(--sofia-soft) !important;
}

body.home.page-id-75 .guten-section:not(.guten-yoGvqr),
body.home.page-id-75 .guten-section:not(.guten-yoGvqr):not(.background-animated),
body.home.page-id-75 .guten-section:not(.guten-yoGvqr).background-animated > .guten-background-animated .animated-layer {
  background-color: var(--sofia-soft) !important;
}

body.home.page-id-75 .guten-section:not(.guten-yoGvqr) h1,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) h2,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) h3,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .title,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .guten-text-highlight {
  color: var(--sofia-ink) !important;
  -webkit-text-fill-color: var(--sofia-ink) !important;
}

body.home.page-id-75 .guten-section:not(.guten-yoGvqr) p,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) li,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .icon-box-description,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .gutenverse-text-editor,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .text-content-inner {
  color: var(--sofia-muted) !important;
}

body.home.page-id-75 .guten-sofia-hero-eyebrow p,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) h6,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .guten-PfmAVd,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .guten-Pg9pcL,
body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .guten-80JFmt {
  color: var(--sofia-blue) !important;
  -webkit-text-fill-color: var(--sofia-blue) !important;
}

body.home.page-id-75 .guten-section:not(.guten-yoGvqr) a:not(.guten-button) {
  color: var(--sofia-ink) !important;
}

body.home.page-id-75 .guten-section:not(.guten-yoGvqr) a:not(.guten-button):hover {
  color: var(--sofia-peach) !important;
}

/* Compact the first fold and remove the extra mobile blank spacer below the collage. */
body.home.page-id-75 .guten-7WEceR {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
}

body.home.page-id-75 .guten-evh6G1,
body.home.page-id-75 .guten-evh6G1 > .guten-container {
  min-height: 620px !important;
}

body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper,
body.home.page-id-75 .guten-evh6G1 .guten-72ZULS,
body.home.page-id-75 .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
  min-height: 620px !important;
}

body.home.page-id-75 .guten-bCkVNG,
body.home.page-id-75 .guten-h2r2pE,
body.home.page-id-75 .guten-quzwVT,
body.home.page-id-75 .guten-HBa5UX,
body.home.page-id-75 .guten-sn1pYP,
body.home.page-id-75 .guten-LLrZ6p {
  padding-top: 64px !important;
  padding-bottom: 64px !important;
}

body.home.page-id-75 .guten-ih6S8I,
body.home.page-id-75 .guten-Bl5SNW,
body.home.page-id-75 .guten-cRzUio,
body.home.page-id-75 .guten-Naromr {
  margin-top: 32px !important;
}

/* The ?Chi sono? text/photo band and services band must be cream like the demo, not dark blocks. */
body.home.page-id-75 .guten-quzwVT,
body.home.page-id-75 .guten-HBa5UX {
  background: var(--sofia-soft) !important;
}

body.home.page-id-75 .guten-quzwVT .guten-container,
body.home.page-id-75 .guten-HBa5UX .guten-container {
  row-gap: 32px !important;
}

body.home.page-id-75 .guten-quzwVT .guten-column-wrapper,
body.home.page-id-75 .guten-HBa5UX .guten-column-wrapper {
  color: var(--sofia-muted) !important;
}

body.home.page-id-75 .guten-HBa5UX .guten-button,
body.home.page-id-75 .guten-HBa5UX a.guten-button,
body.home.page-id-75 .guten-HBa5UX .guten-button span,
body.home.page-id-75 .guten-HBa5UX .guten-button i {
  background: transparent !important;
  color: var(--sofia-peach) !important;
  -webkit-text-fill-color: var(--sofia-peach) !important;
  min-height: 0 !important;
  padding: 0 !important;
}

body.home.page-id-75 .guten-yoGvqr {
  background: var(--sofia-footer) !important;
}

@media (max-width: 1024px) {
  body.home.page-id-75 .guten-evh6G1,
  body.home.page-id-75 .guten-evh6G1 > .guten-container,
  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper,
  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS,
  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: 0 !important;
  }

  body.home.page-id-75 .guten-bCkVNG,
  body.home.page-id-75 .guten-h2r2pE,
  body.home.page-id-75 .guten-quzwVT,
  body.home.page-id-75 .guten-HBa5UX,
  body.home.page-id-75 .guten-sn1pYP,
  body.home.page-id-75 .guten-LLrZ6p {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
}

@media (max-width: 767px) {
  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg {
    padding-top: 28px !important;
    padding-bottom: 24px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS {
    min-height: 360px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: 360px !important;
    height: auto !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-odsnZY {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }

  body.home.page-id-75 .guten-bCkVNG,
  body.home.page-id-75 .guten-h2r2pE,
  body.home.page-id-75 .guten-quzwVT,
  body.home.page-id-75 .guten-HBa5UX,
  body.home.page-id-75 .guten-sn1pYP,
  body.home.page-id-75 .guten-LLrZ6p {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }

  body.home.page-id-75 .guten-ih6S8I,
  body.home.page-id-75 .guten-Bl5SNW,
  body.home.page-id-75 .guten-cRzUio,
  body.home.page-id-75 .guten-Naromr {
    margin-top: 22px !important;
  }

  body.home.page-id-75 .guten-3HI7Fa {
    height: 180px !important;
    min-height: 180px !important;
  }

  body.home.page-id-75 .guten-yoGvqr {
    padding-top: 56px !important;
    padding-bottom: 36px !important;
  }
}

/* Home-only final tightening: footer restore, denser flow, demo palette guard. */
body.home.page-id-75 .guten-section:not(.guten-yoGvqr):not(.guten-HBa5UX):not(.guten-quzwVT) {
  background-color: var(--sofia-soft) !important;
}

body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .guten-background-overlay {
  background-color: transparent !important;
  opacity: 0 !important;
}

body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .guten-container {
  row-gap: 28px !important;
}

body.home.page-id-75 .guten-bCkVNG,
body.home.page-id-75 .guten-h2r2pE,
body.home.page-id-75 .guten-quzwVT,
body.home.page-id-75 .guten-HBa5UX,
body.home.page-id-75 .guten-sn1pYP,
body.home.page-id-75 .guten-LLrZ6p {
  padding-top: 52px !important;
  padding-bottom: 52px !important;
}

body.home.page-id-75 .guten-bCkVNG .guten-column-wrapper,
body.home.page-id-75 .guten-h2r2pE .guten-column-wrapper,
body.home.page-id-75 .guten-quzwVT .guten-column-wrapper,
body.home.page-id-75 .guten-HBa5UX .guten-column-wrapper,
body.home.page-id-75 .guten-sn1pYP .guten-column-wrapper,
body.home.page-id-75 .guten-LLrZ6p .guten-column-wrapper {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.home.page-id-75 .guten-quzwVT,
body.home.page-id-75 .guten-HBa5UX,
body.home.page-id-75 .guten-quzwVT:not(.background-animated),
body.home.page-id-75 .guten-HBa5UX:not(.background-animated),
body.home.page-id-75 .guten-quzwVT.background-animated > .guten-background-animated .animated-layer,
body.home.page-id-75 .guten-HBa5UX.background-animated > .guten-background-animated .animated-layer {
  background: var(--sofia-soft) !important;
  background-color: var(--sofia-soft) !important;
}

body.home.page-id-75 .guten-quzwVT .guten-background-overlay,
body.home.page-id-75 .guten-HBa5UX .guten-background-overlay {
  background: transparent !important;
  opacity: 0 !important;
}

body.home.page-id-75 .guten-quzwVT *,
body.home.page-id-75 .guten-HBa5UX * {
  text-shadow: none !important;
}

body.home.page-id-75 .guten-quzwVT h1,
body.home.page-id-75 .guten-quzwVT h2,
body.home.page-id-75 .guten-quzwVT h3,
body.home.page-id-75 .guten-quzwVT .title,
body.home.page-id-75 .guten-HBa5UX h1,
body.home.page-id-75 .guten-HBa5UX h2,
body.home.page-id-75 .guten-HBa5UX h3,
body.home.page-id-75 .guten-HBa5UX .title {
  color: var(--sofia-ink) !important;
  -webkit-text-fill-color: var(--sofia-ink) !important;
}

body.home.page-id-75 .guten-quzwVT p,
body.home.page-id-75 .guten-quzwVT li,
body.home.page-id-75 .guten-quzwVT .gutenverse-text-editor,
body.home.page-id-75 .guten-HBa5UX p,
body.home.page-id-75 .guten-HBa5UX li,
body.home.page-id-75 .guten-HBa5UX .gutenverse-text-editor,
body.home.page-id-75 .guten-HBa5UX .icon-box-description {
  color: var(--sofia-muted) !important;
  -webkit-text-fill-color: var(--sofia-muted) !important;
}

body.home.page-id-75 .guten-yoGvqr,
body.home.page-id-75 .guten-yoGvqr:not(.background-animated),
body.home.page-id-75 .guten-yoGvqr.background-animated > .guten-background-animated .animated-layer {
  background: var(--sofia-footer) !important;
  background-color: var(--sofia-footer) !important;
}

body.home.page-id-75 .guten-yoGvqr .guten-section,
body.home.page-id-75 .guten-yoGvqr .guten-container,
body.home.page-id-75 .guten-yoGvqr .guten-column,
body.home.page-id-75 .guten-yoGvqr .guten-column-wrapper,
body.home.page-id-75 .guten-yoGvqr .sticky-wrapper,
body.home.page-id-75 .guten-yoGvqr .guten-element,
body.home.page-id-75 .guten-yoGvqr .wp-block-group,
body.home.page-id-75 .guten-yoGvqr .guten-background-overlay {
  background: transparent !important;
  background-color: transparent !important;
}

body.home.page-id-75 .guten-yoGvqr h1,
body.home.page-id-75 .guten-yoGvqr h2,
body.home.page-id-75 .guten-yoGvqr h3,
body.home.page-id-75 .guten-yoGvqr h4,
body.home.page-id-75 .guten-yoGvqr .title,
body.home.page-id-75 .guten-yoGvqr a,
body.home.page-id-75 .guten-yoGvqr .list-text {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.home.page-id-75 .guten-yoGvqr p,
body.home.page-id-75 .guten-yoGvqr li,
body.home.page-id-75 .guten-yoGvqr .gutenverse-text-editor,
body.home.page-id-75 .guten-yoGvqr .gutenverse-text-editor p,
body.home.page-id-75 .guten-yoGvqr .icon-box-description {
  color: rgba(255, 255, 255, 0.72) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

body.home.page-id-75 .guten-yoGvqr a:hover {
  color: var(--sofia-peach) !important;
  -webkit-text-fill-color: var(--sofia-peach) !important;
}

body.home.page-id-75 .guten-yoGvqr .guten-container {
  row-gap: 20px !important;
}

body.home.page-id-75 .guten-yoGvqr .guten-column-wrapper {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

@media (max-width: 1024px) {
  body.home.page-id-75 .guten-bCkVNG,
  body.home.page-id-75 .guten-h2r2pE,
  body.home.page-id-75 .guten-quzwVT,
  body.home.page-id-75 .guten-HBa5UX,
  body.home.page-id-75 .guten-sn1pYP,
  body.home.page-id-75 .guten-LLrZ6p {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
}

@media (max-width: 767px) {
  body.home.page-id-75 .guten-section:not(.guten-yoGvqr) .guten-container {
    row-gap: 22px !important;
  }

  body.home.page-id-75 .guten-bCkVNG,
  body.home.page-id-75 .guten-h2r2pE,
  body.home.page-id-75 .guten-quzwVT,
  body.home.page-id-75 .guten-HBa5UX,
  body.home.page-id-75 .guten-sn1pYP,
  body.home.page-id-75 .guten-LLrZ6p {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg {
    padding-top: 24px !important;
    padding-bottom: 18px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS,
  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: 320px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-odsnZY {
    margin-top: 14px !important;
    margin-bottom: 14px !important;
  }

  body.home.page-id-75 .guten-3HI7Fa {
    height: 140px !important;
    min-height: 140px !important;
  }

  body.home.page-id-75 .guten-yoGvqr {
    padding-top: 44px !important;
    padding-bottom: 28px !important;
  }

  body.home.page-id-75 .guten-yoGvqr .guten-container {
    row-gap: 18px !important;
  }
}

/* Home-only final specificity pass: footer internals, mobile density, header chip. */
body.home.page-id-75 .guten-n9HC0a .guten-nav-menu,
body.home.page-id-75 .guten-n9HC0a .guten-nav-menu.nav-menu,
body.home.page-id-75 .guten-n9HC0a .guten-nav-menu .gutenverse-hamburger-wrapper,
body.home.page-id-75 .guten-n9HC0a .guten-nav-menu .gutenverse-hamburger-menu {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

body.home.page-id-75 .guten-yoGvqr.guten-section .guten-section,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-section:not(.background-animated),
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-container,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-column,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-column-wrapper,
body.home.page-id-75 .guten-yoGvqr.guten-section .sticky-wrapper,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-element,
body.home.page-id-75 .guten-yoGvqr.guten-section .wp-block-group,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-background-overlay {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

body.home.page-id-75 .guten-yoGvqr.guten-section .guten-section.background-animated > .guten-background-animated .animated-layer {
  background: transparent !important;
  background-color: transparent !important;
}

body.home.page-id-75 .guten-yoGvqr.guten-section .guten-KFrntp,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-PTigSj,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-5T8qvu {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.home.page-id-75 .guten-yoGvqr.guten-section .guten-KFrntp .guten-container,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-PTigSj .guten-container,
body.home.page-id-75 .guten-yoGvqr.guten-section .guten-5T8qvu .guten-container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.home.page-id-75 .guten-yoGvqr.guten-section h1,
body.home.page-id-75 .guten-yoGvqr.guten-section h2,
body.home.page-id-75 .guten-yoGvqr.guten-section h3,
body.home.page-id-75 .guten-yoGvqr.guten-section h4,
body.home.page-id-75 .guten-yoGvqr.guten-section .title,
body.home.page-id-75 .guten-yoGvqr.guten-section a,
body.home.page-id-75 .guten-yoGvqr.guten-section .list-text {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.home.page-id-75 .guten-yoGvqr.guten-section p,
body.home.page-id-75 .guten-yoGvqr.guten-section li,
body.home.page-id-75 .guten-yoGvqr.guten-section .gutenverse-text-editor,
body.home.page-id-75 .guten-yoGvqr.guten-section .gutenverse-text-editor p,
body.home.page-id-75 .guten-yoGvqr.guten-section .icon-box-description {
  color: rgba(255, 255, 255, 0.72) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

body.home.page-id-75 .guten-yoGvqr.guten-section img {
  filter: brightness(1.18) contrast(0.9) saturate(0.82) !important;
}

@media (max-width: 767px) {
  body.home.page-id-75 .guten-PfmAVd,
  body.home.page-id-75 .guten-PfmAVd .heading-title,
  body.home.page-id-75 .guten-PfmAVd .text-content,
  body.home.page-id-75 .guten-PfmAVd .text-content-inner {
    font-size: 30px !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
  }

  body.home.page-id-75 .guten-bCkVNG {
    padding-top: 26px !important;
    padding-bottom: 26px !important;
  }

  body.home.page-id-75 .guten-yoGvqr.guten-section .guten-PTigSj {
    padding-top: 18px !important;
  }
}

/* Home-only footer logo contrast on dark demo footer. */
body.home.page-id-75 .guten-yoGvqr.guten-section img {
  filter: invert(1) brightness(1.28) contrast(0.78) saturate(0.55) !important;
  opacity: 0.78 !important;
}

/* Page-by-page audit fixes: demo palette for Services, About and Contact. */
body.page-id-105,
body.page-id-97,
body.page-id-118 {
  background: var(--sofia-soft) !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr),
body.page-id-97 .guten-section:not(.guten-yoGvqr),
body.page-id-118 .guten-section:not(.guten-yoGvqr),
body.page-id-105 .guten-section:not(.guten-yoGvqr):not(.background-animated),
body.page-id-97 .guten-section:not(.guten-yoGvqr):not(.background-animated),
body.page-id-118 .guten-section:not(.guten-yoGvqr):not(.background-animated),
body.page-id-105 .guten-section:not(.guten-yoGvqr).background-animated > .guten-background-animated .animated-layer,
body.page-id-97 .guten-section:not(.guten-yoGvqr).background-animated > .guten-background-animated .animated-layer,
body.page-id-118 .guten-section:not(.guten-yoGvqr).background-animated > .guten-background-animated .animated-layer {
  background: var(--sofia-soft) !important;
  background-color: var(--sofia-soft) !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-background-overlay,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .guten-background-overlay,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .guten-background-overlay {
  background: transparent !important;
  background-color: transparent !important;
  opacity: 0 !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column-wrapper,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .guten-column-wrapper,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .guten-column-wrapper,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .wp-block-group,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .wp-block-group,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .wp-block-group {
  background: transparent !important;
  background-color: transparent !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) h1,
body.page-id-105 .guten-section:not(.guten-yoGvqr) h2,
body.page-id-105 .guten-section:not(.guten-yoGvqr) h3,
body.page-id-105 .guten-section:not(.guten-yoGvqr) h4,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .title,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .heading-title,
body.page-id-97 .guten-section:not(.guten-yoGvqr) h1,
body.page-id-97 .guten-section:not(.guten-yoGvqr) h2,
body.page-id-97 .guten-section:not(.guten-yoGvqr) h3,
body.page-id-97 .guten-section:not(.guten-yoGvqr) h4,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .title,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .heading-title,
body.page-id-118 .guten-section:not(.guten-yoGvqr) h1,
body.page-id-118 .guten-section:not(.guten-yoGvqr) h2,
body.page-id-118 .guten-section:not(.guten-yoGvqr) h3,
body.page-id-118 .guten-section:not(.guten-yoGvqr) h4,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .title,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .heading-title {
  color: var(--sofia-ink) !important;
  -webkit-text-fill-color: var(--sofia-ink) !important;
  text-shadow: none !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) p,
body.page-id-105 .guten-section:not(.guten-yoGvqr) li,
body.page-id-105 .guten-section:not(.guten-yoGvqr) label,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .gutenverse-text-editor,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .icon-box-description,
body.page-id-97 .guten-section:not(.guten-yoGvqr) p,
body.page-id-97 .guten-section:not(.guten-yoGvqr) li,
body.page-id-97 .guten-section:not(.guten-yoGvqr) label,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .gutenverse-text-editor,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .icon-box-description,
body.page-id-118 .guten-section:not(.guten-yoGvqr) p,
body.page-id-118 .guten-section:not(.guten-yoGvqr) li,
body.page-id-118 .guten-section:not(.guten-yoGvqr) label,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .gutenverse-text-editor,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .icon-box-description {
  color: var(--sofia-muted) !important;
  -webkit-text-fill-color: var(--sofia-muted) !important;
  text-shadow: none !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) h6,
body.page-id-97 .guten-section:not(.guten-yoGvqr) h6,
body.page-id-118 .guten-section:not(.guten-yoGvqr) h6,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-text-highlight,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .guten-text-highlight,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .guten-text-highlight {
  color: var(--sofia-blue) !important;
  -webkit-text-fill-color: var(--sofia-blue) !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) a:not(.guten-button),
body.page-id-97 .guten-section:not(.guten-yoGvqr) a:not(.guten-button),
body.page-id-118 .guten-section:not(.guten-yoGvqr) a:not(.guten-button) {
  color: var(--sofia-peach) !important;
  -webkit-text-fill-color: var(--sofia-peach) !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-icon-box-wrapper,
body.page-id-97 .guten-section:not(.guten-yoGvqr) .guten-icon-box-wrapper,
body.page-id-118 .guten-section:not(.guten-yoGvqr) .guten-icon-box-wrapper {
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid var(--sofia-line) !important;
  box-shadow: none !important;
}

body.page-id-105 .guten-button,
body.page-id-105 button.guten-button,
body.page-id-97 .guten-button,
body.page-id-97 button.guten-button,
body.page-id-118 .guten-button,
body.page-id-118 button.guten-button {
  background: var(--sofia-peach) !important;
  background-color: var(--sofia-peach) !important;
  border-color: var(--sofia-peach) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-radius: 0 !important;
}

body.page-id-105 .guten-button:hover,
body.page-id-97 .guten-button:hover,
body.page-id-118 .guten-button:hover {
  background: var(--sofia-peach-dark) !important;
  background-color: var(--sofia-peach-dark) !important;
  border-color: var(--sofia-peach-dark) !important;
}

body.page-id-105 input,
body.page-id-105 textarea,
body.page-id-118 input,
body.page-id-118 textarea {
  background: #ffffff !important;
  color: var(--sofia-ink) !important;
  border: 1px solid var(--sofia-line) !important;
  box-shadow: none !important;
}

body.page-id-105 .guten-mommTe,
body.page-id-105 .guten-a5P5cM,
body.page-id-97 .guten-quzwVT,
body.page-id-97 .guten-udUMlm,
body.page-id-118 .guten-mommTe {
  padding-top: 88px !important;
  padding-bottom: 88px !important;
}

@media (max-width: 767px) {
  body.page-id-105 .guten-mommTe,
  body.page-id-105 .guten-a5P5cM,
  body.page-id-97 .guten-quzwVT,
  body.page-id-97 .guten-udUMlm,
  body.page-id-118 .guten-mommTe {
    padding-top: 54px !important;
    padding-bottom: 54px !important;
  }

  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-container,
  body.page-id-97 .guten-section:not(.guten-yoGvqr) .guten-container,
  body.page-id-118 .guten-section:not(.guten-yoGvqr) .guten-container {
    row-gap: 24px !important;
  }
}

/* Final cross-page footer and services QA cleanup. */
body .guten-yoGvqr,
body .guten-yoGvqr:not(.background-animated),
body .guten-yoGvqr.background-animated > .guten-background-animated .animated-layer {
  background: var(--sofia-footer) !important;
  background-color: var(--sofia-footer) !important;
}

body .guten-yoGvqr .guten-section,
body .guten-yoGvqr .guten-section:not(.background-animated),
body .guten-yoGvqr .guten-container,
body .guten-yoGvqr .guten-column,
body .guten-yoGvqr .guten-column-wrapper,
body .guten-yoGvqr .sticky-wrapper,
body .guten-yoGvqr .guten-element,
body .guten-yoGvqr .guten-icon-box-wrapper,
body .guten-yoGvqr .wp-block-group,
body .guten-yoGvqr .guten-background-overlay {
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

body .guten-yoGvqr .guten-section.background-animated > .guten-background-animated .animated-layer {
  background: transparent !important;
  background-color: transparent !important;
}

body .guten-yoGvqr h1,
body .guten-yoGvqr h2,
body .guten-yoGvqr h3,
body .guten-yoGvqr h4,
body .guten-yoGvqr .title,
body .guten-yoGvqr a,
body .guten-yoGvqr .list-text {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body .guten-yoGvqr p,
body .guten-yoGvqr li,
body .guten-yoGvqr .gutenverse-text-editor,
body .guten-yoGvqr .gutenverse-text-editor p,
body .guten-yoGvqr .icon-box-description {
  color: rgba(255, 255, 255, 0.72) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

body .guten-yoGvqr img {
  filter: invert(1) brightness(1.28) contrast(0.78) saturate(0.55) !important;
  opacity: 0.78 !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-icon-box,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-element.guten-icon-box,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .icon.bg-style-color,
body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-k07Va0 {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

/* Absolute footer restore after page-specific palette rules. */
body.page-id-105 .guten-yoGvqr.guten-section .guten-section,
body.page-id-105 .guten-yoGvqr.guten-section .guten-section:not(.background-animated),
body.page-id-105 .guten-yoGvqr.guten-section .guten-container,
body.page-id-105 .guten-yoGvqr.guten-section .guten-column-wrapper,
body.page-id-105 .guten-yoGvqr.guten-section .guten-element,
body.page-id-97 .guten-yoGvqr.guten-section .guten-section,
body.page-id-97 .guten-yoGvqr.guten-section .guten-section:not(.background-animated),
body.page-id-97 .guten-yoGvqr.guten-section .guten-container,
body.page-id-97 .guten-yoGvqr.guten-section .guten-column-wrapper,
body.page-id-97 .guten-yoGvqr.guten-section .guten-element,
body.page-id-118 .guten-yoGvqr.guten-section .guten-section,
body.page-id-118 .guten-yoGvqr.guten-section .guten-section:not(.background-animated),
body.page-id-118 .guten-yoGvqr.guten-section .guten-container,
body.page-id-118 .guten-yoGvqr.guten-section .guten-column-wrapper,
body.page-id-118 .guten-yoGvqr.guten-section .guten-element {
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

body.page-id-105 .guten-yoGvqr.guten-section,
body.page-id-97 .guten-yoGvqr.guten-section,
body.page-id-118 .guten-yoGvqr.guten-section {
  background: var(--sofia-footer) !important;
  background-color: var(--sofia-footer) !important;
}

/* Restore About page portrait background after color cleanup. */
body.page-id-97 .guten-h2r2pE .guten-WKcg2H,
body.page-id-97 .guten-h2r2pE .guten-WKcg2H > .guten-column-wrapper {
  background-image: url("https://ostetricapertile.it/wp-content/uploads/2026/02/IMG_7543-scaled.jpg") !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

body.page-id-97 .guten-h2r2pE .guten-WKcg2H > .guten-column-wrapper {
  min-height: 460px !important;
}

@media (max-width: 767px) {
  body.page-id-97 .guten-h2r2pE .guten-WKcg2H,
  body.page-id-97 .guten-h2r2pE .guten-WKcg2H > .guten-column-wrapper {
    min-height: 390px !important;
  }

  body.page-id-97 .guten-h2r2pE {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
}

/* Header nav: hamburger only on mobile. */
@media (min-width: 768px) {
  body .guten-n9HC0a .guten-nav-menu .gutenverse-hamburger-wrapper,
  body .guten-n9HC0a .guten-nav-menu .gutenverse-hamburger-menu {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body .guten-n9HC0a .guten-nav-menu.break-point-mobile .gutenverse-menu-wrapper,
  body .guten-n9HC0a .guten-nav-menu .gutenverse-menu-wrapper {
    display: block !important;
    height: auto !important;
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
  }

  body .guten-n9HC0a .guten-nav-menu .gutenverse-menu,
  body .guten-n9HC0a .guten-nav-menu .gutenverse-menu > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
  }

  body .guten-n9HC0a .guten-nav-menu .gutenverse-menu > li > a,
  body .guten-n9HC0a .guten-nav-menu .gutenverse-menu > ul > li > a {
    white-space: nowrap !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .guten-n9HC0a .guten-nav-menu .gutenverse-menu > li > a,
  body .guten-n9HC0a .guten-nav-menu .gutenverse-menu > ul > li > a {
    font-size: 15px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}


/* Home responsive media hardening - 2026-04-11.
   Keep Gutenverse content update-safe while preventing absolute media from covering text. */
body.home.page-id-75 .guten-element-hide,
body.home.page-id-75 .animated.guten-element-hide {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  animation: none !important;
}

body.home.page-id-75 .guten-evh6G1,
body.home.page-id-75 .guten-evh6G1 > .guten-container,
body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg,
body.home.page-id-75 .guten-evh6G1 .guten-72ZULS {
  position: relative !important;
}

@media (min-width: 1025px) {
  body.home.page-id-75 .guten-evh6G1,
  body.home.page-id-75 .guten-evh6G1 > .guten-container,
  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg > .guten-column-wrapper,
  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS,
  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: clamp(620px, 50vw, 720px) !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg {
    flex-basis: 58% !important;
    max-width: 58% !important;
    padding-right: clamp(38px, 5vw, 76px) !important;
    z-index: 5 !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS {
    flex-basis: 42% !important;
    max-width: 42% !important;
    z-index: 2 !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    overflow: visible !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-odsnZY {
    left: clamp(-72px, -5vw, -42px) !important;
    top: -56px !important;
    width: clamp(360px, 37vw, 500px) !important;
    max-width: calc(100vw - 90px) !important;
    z-index: 3 !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-Oklg4q,
  body.home.page-id-75 .guten-evh6G1 .guten-Oklg4q .guten-container,
  body.home.page-id-75 .guten-evh6G1 .guten-AHFLhg {
    min-height: clamp(330px, 32vw, 420px) !important;
  }
}

@media (max-width: 1024px) {
  body.home.page-id-75 .guten-evh6G1 {
    overflow: hidden !important;
  }

  body.home.page-id-75 .guten-evh6G1 > .guten-container {
    align-items: center !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    min-height: 0 !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg,
  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS {
    flex-basis: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg {
    padding-bottom: 34px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS,
  body.home.page-id-75 .guten-evh6G1 .guten-72ZULS > .guten-column-wrapper {
    min-height: 0 !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-odsnZY {
    left: auto !important;
    margin: 24px auto 34px !important;
    position: relative !important;
    top: auto !important;
    width: min(560px, calc(100vw - 64px)) !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-Oklg4q,
  body.home.page-id-75 .guten-evh6G1 .guten-Oklg4q .guten-container,
  body.home.page-id-75 .guten-evh6G1 .guten-AHFLhg {
    min-height: clamp(260px, 44vw, 410px) !important;
  }
}

@media (max-width: 767px) {
  body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg {
    padding: 28px 28px 22px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-odsnZY {
    margin-top: 18px !important;
    margin-bottom: 24px !important;
    width: min(330px, calc(100vw - 54px)) !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-Oklg4q,
  body.home.page-id-75 .guten-evh6G1 .guten-Oklg4q .guten-container,
  body.home.page-id-75 .guten-evh6G1 .guten-AHFLhg {
    min-height: 245px !important;
  }
}

body.home.page-id-75 .guten-F3v7wx .guten-thumb,
body.home.page-id-75 .guten-F3v7wx .thumbnail-container {
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  width: 100% !important;
}

body.home.page-id-75 .guten-F3v7wx .guten-thumb img,
body.home.page-id-75 .guten-F3v7wx .thumbnail-container img,
body.home.page-id-75 .guten-F3v7wx img.wp-post-image {
  display: block !important;
  height: 100% !important;
  inset: 0 !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  position: absolute !important;
  width: 100% !important;
}

body.home.page-id-75 .guten-F3v7wx .guten-postblock-content {
  background: var(--sofia-soft) !important;
  margin-top: 20px !important;
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 767px) {
  body.home.page-id-75 .guten-F3v7wx .guten-postblock-content {
    margin-top: 18px !important;
  }
}

/* Home responsive word wrap polish - 2026-04-11.
   Keeps home headings and card titles from breaking inside words on tablet/mobile. */
body.home.page-id-75 .guten-icon-box .title,
body.home.page-id-75 .guten-F3v7wx .guten-post-title,
body.home.page-id-75 .guten-F3v7wx .guten-post-title a,
body.home.page-id-75 .guten-post-title,
body.home.page-id-75 .guten-post-title a {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

@media (max-width: 480px) {
  body.home.page-id-75 .guten-F3v7wx .guten-post-title a {
    font-size: 26px !important;
    line-height: 1.28 !important;
  }

  body.home.page-id-75 .guten-icon-box .title {
    font-size: 24px !important;
    line-height: 1.25 !important;
  }
}

/* Home mobile footer contact containment - 2026-04-11. */
@media (max-width: 480px) {
  body.home.page-id-75 footer a[href^="mailto:"],
  body.home.page-id-75 footer a[href^="tel:"] {
    display: inline-block !important;
    max-width: calc(100vw - 118px) !important;
    overflow-wrap: anywhere !important;
  }
}

/* Home mobile footer icon-box text containment - 2026-04-11. */
@media (max-width: 480px) {
  body.home.page-id-75 .guten-cd16xO .icon-box-body {
    min-width: 0 !important;
    max-width: calc(100% - 58px) !important;
  }

  body.home.page-id-75 .guten-cd16xO .title,
  body.home.page-id-75 .guten-cd16xO .icon-box-description {
    width: auto !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

/* Home mobile footer email polish - 2026-04-11. */
@media (max-width: 480px) {
  body.home.page-id-75 .guten-cd16xO .icon-box-body {
    max-width: calc(100vw - 104px) !important;
  }

  body.home.page-id-75 .guten-cd16xO .title {
    font-size: 17px !important;
    line-height: 1.35 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}


/* ============================================================
   HOME DEMO-INSPIRED POLISH - 2026-04-16
   Target: body.home.page-id-75 only (safe scope)
   Goal: avvicinare Home al look demo Obstella senza toccare contenuti/DB
   ============================================================ */

/* ---------- Typography polish: headings tracking & italic sub ---------- */
body.home.page-id-75 h1,
body.home.page-id-75 .wp-block-heading.h1,
body.home.page-id-75 .guten-heading h1 {
  letter-spacing: -0.035em !important;
  font-weight: 500 !important;
  line-height: 1.06 !important;
}

body.home.page-id-75 h2,
body.home.page-id-75 .wp-block-heading h2 {
  letter-spacing: -0.02em !important;
  line-height: 1.12 !important;
}

/* Body legibility */
body.home.page-id-75 p,
body.home.page-id-75 .gutenverse-text-editor p,
body.home.page-id-75 .icon-box-description,
body.home.page-id-75 .guten-postblock-content p {
  line-height: 1.65 !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
}

/* ---------- Icon-box cards polish (flat + hover soft) ---------- */
body.home.page-id-75 .guten-icon-box {
  border: 1px solid rgba(80, 70, 67, 0.10) !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  padding: 36px 28px !important;
  transition: transform 220ms ease-out, box-shadow 220ms ease-out, border-color 220ms ease-out !important;
  height: 100% !important;
}

body.home.page-id-75 .guten-icon-box:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 18px 38px -22px rgba(80, 70, 67, 0.35) !important;
  border-color: rgba(226, 143, 84, 0.45) !important;
}

body.home.page-id-75 .guten-icon-box .icon {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  margin-bottom: 18px !important;
}

body.home.page-id-75 .guten-icon-box .title {
  font-family: "Work Sans", system-ui, sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: -0.015em !important;
  margin-bottom: 10px !important;
}

body.home.page-id-75 .guten-icon-box .icon-box-description {
  font-size: 15px !important;
}

/* ---------- Buttons polish (brand peach kept) ---------- */
body.home.page-id-75 .guten-button,
body.home.page-id-75 a.guten-button {
  letter-spacing: 0.06em !important;
  font-weight: 500 !important;
  min-height: 48px !important;
  padding: 14px 30px !important;
  border-radius: 2px !important;
  transition: background-color 200ms ease-out, transform 160ms ease-out, box-shadow 200ms ease-out !important;
  will-change: transform !important;
}

body.home.page-id-75 .guten-button:hover,
body.home.page-id-75 a.guten-button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 22px -14px rgba(219, 116, 43, 0.55) !important;
}

body.home.page-id-75 .guten-button:active,
body.home.page-id-75 a.guten-button:active {
  transform: translateY(0) scale(0.985) !important;
}

body.home.page-id-75 .guten-button:focus-visible,
body.home.page-id-75 a.guten-button:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
}

/* ---------- Post card hover (blog preview) ---------- */
body.home.page-id-75 .guten-F3v7wx .guten-thumb img,
body.home.page-id-75 .guten-F3v7wx .thumbnail-container img,
body.home.page-id-75 .guten-F3v7wx img.wp-post-image {
  transition: transform 600ms cubic-bezier(0.2, 0.7, 0.2, 1) !important;
}

body.home.page-id-75 .guten-F3v7wx:hover .guten-thumb img,
body.home.page-id-75 .guten-F3v7wx:hover .thumbnail-container img,
body.home.page-id-75 .guten-F3v7wx:hover img.wp-post-image {
  transform: scale(1.04) !important;
}

body.home.page-id-75 .guten-F3v7wx .guten-post-title a {
  letter-spacing: -0.015em !important;
  transition: color 180ms ease-out !important;
}

body.home.page-id-75 .guten-F3v7wx .guten-post-title a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* ---------- Section rhythm: hairline separator between alternating sections ---------- */
body.home.page-id-75 .guten-mommTe + .guten-section:not(.guten-yoGvqr):not(.guten-evh6G1) {
  position: relative;
}

/* ---------- Hero: subtitle Playfair italic stance ---------- */
body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg .gutenverse-text-editor em,
body.home.page-id-75 .guten-evh6G1 .guten-eeYLyg i {
  font-family: "Playfair Display", Georgia, serif !important;
  font-style: italic !important;
  font-weight: 500 !important;
}

/* Hero CTA: slight emphasis */
body.home.page-id-75 .guten-evh6G1 .guten-button {
  padding: 18px 34px !important;
}

/* ---------- About "Chi sono" section: portrait refinement ---------- */
body.home.page-id-75 .guten-section .guten-column img[src*="IMG_"] {
  border-radius: 2px !important;
}

/* ---------- Desktop spacing polish ---------- */
@media (min-width: 1025px) {
  body.home.page-id-75 .guten-section:not(.guten-yoGvqr):not(.guten-evh6G1):not(.guten-n9HC0a) {
    padding-top: clamp(72px, 7vw, 104px) !important;
    padding-bottom: clamp(72px, 7vw, 104px) !important;
  }

  body.home.page-id-75 .guten-icon-box {
    padding: 40px 32px !important;
  }
}

/* ---------- Tablet polish ---------- */
@media (min-width: 768px) and (max-width: 1024px) {
  body.home.page-id-75 .guten-icon-box {
    padding: 32px 24px !important;
  }
}

/* ---------- Mobile polish ---------- */
@media (max-width: 767px) {
  body.home.page-id-75 .guten-icon-box {
    padding: 28px 22px !important;
    margin-bottom: 14px !important;
  }

  body.home.page-id-75 .guten-icon-box:hover {
    transform: none !important;
  }

  body.home.page-id-75 .guten-button,
  body.home.page-id-75 a.guten-button {
    padding: 14px 24px !important;
    font-size: 14px !important;
  }

  body.home.page-id-75 .guten-evh6G1 .guten-button {
    padding: 16px 26px !important;
  }

  /* Body text min 16px mobile (no iOS auto-zoom) */
  body.home.page-id-75 .gutenverse-text-editor p,
  body.home.page-id-75 .icon-box-description {
    font-size: 16px !important;
  }
}

/* ---------- Reduced motion respect ---------- */
@media (prefers-reduced-motion: reduce) {
  body.home.page-id-75 .guten-icon-box,
  body.home.page-id-75 .guten-button,
  body.home.page-id-75 a.guten-button,
  body.home.page-id-75 .guten-F3v7wx .guten-thumb img,
  body.home.page-id-75 .guten-F3v7wx img.wp-post-image {
    transition: none !important;
  }
  body.home.page-id-75 .guten-icon-box:hover {
    transform: none !important;
    box-shadow: none !important;
  }
  body.home.page-id-75 .guten-F3v7wx:hover .guten-thumb img,
  body.home.page-id-75 .guten-F3v7wx:hover img.wp-post-image {
    transform: none !important;
  }
}

/* ---------- Accessibility: focus ring on menu links ---------- */
body.home.page-id-75 .gutenverse-menu a:focus-visible,
body.home.page-id-75 a:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
  border-radius: 2px !important;
}

/* ---------- Contact CTA section polish ---------- */
body.home.page-id-75 .guten-cd16xO .icon-box-body a {
  transition: color 180ms ease-out !important;
}

body.home.page-id-75 .guten-cd16xO .icon-box-body a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* ============================================================
   SERVIZI DEMO-INSPIRED POLISH - 2026-04-16
   Target: body.page-id-105 only (safe scope)
   Goal: avvicinare pagina Servizi al look demo Obstella
   ============================================================ */

/* ---------- Typography polish H2/H3 ---------- */
body.page-id-105 h2,
body.page-id-105 .wp-block-heading h2 {
  letter-spacing: -0.02em !important;
  line-height: 1.14 !important;
  font-weight: 500 !important;
}

body.page-id-105 h3,
body.page-id-105 .wp-block-heading h3 {
  letter-spacing: -0.015em !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
}

body.page-id-105 p,
body.page-id-105 .gutenverse-text-editor p,
body.page-id-105 .icon-box-description {
  line-height: 1.65 !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
}

/* ---------- Values pillars icon-box (Ascolto / Personalizzazione / Empatia) ---------- */
body.page-id-105 .guten-icon-box {
  border: 1px solid rgba(80, 70, 67, 0.10) !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  padding: 36px 28px !important;
  transition: transform 220ms ease-out, box-shadow 220ms ease-out, border-color 220ms ease-out !important;
  height: 100% !important;
}

body.page-id-105 .guten-icon-box:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 18px 38px -22px rgba(80, 70, 67, 0.35) !important;
  border-color: rgba(226, 143, 84, 0.45) !important;
}

body.page-id-105 .guten-icon-box .icon {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  margin-bottom: 18px !important;
}

body.page-id-105 .guten-icon-box .title {
  font-family: "Work Sans", system-ui, sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: -0.015em !important;
  margin-bottom: 10px !important;
}

/* ---------- Service cards (pelvic floor / body changes / group meetings) ---------- */
/* Cards: generic selector — colonna con immagine + h3 + testo + bottone dentro sezione non-footer */
body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:has(> .guten-column-wrapper > .guten-image-wrapper) {
  transition: transform 260ms ease-out !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:has(> .guten-column-wrapper > .guten-image-wrapper):hover {
  transform: translateY(-3px) !important;
}

/* Service images: uniform aspect and subtle hover */
body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-image-wrapper img {
  transition: transform 500ms cubic-bezier(0.2, 0.7, 0.2, 1), filter 300ms ease-out !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:hover .guten-image-wrapper img {
  transform: scale(1.03) !important;
}

/* Service card H3 title */
body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-heading h3 {
  letter-spacing: -0.015em !important;
  line-height: 1.22 !important;
}

/* ---------- Buttons polish (brand peach kept) ---------- */
body.page-id-105 .guten-button,
body.page-id-105 a.guten-button {
  letter-spacing: 0.06em !important;
  font-weight: 500 !important;
  min-height: 48px !important;
  padding: 14px 30px !important;
  border-radius: 2px !important;
  transition: background-color 200ms ease-out, transform 160ms ease-out, box-shadow 200ms ease-out !important;
  will-change: transform !important;
}

body.page-id-105 .guten-button:hover,
body.page-id-105 a.guten-button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 22px -14px rgba(219, 116, 43, 0.55) !important;
}

body.page-id-105 .guten-button:active,
body.page-id-105 a.guten-button:active {
  transform: translateY(0) scale(0.985) !important;
}

body.page-id-105 .guten-button:focus-visible,
body.page-id-105 a.guten-button:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
}

/* ---------- Contact CTA block (email / orari / whatsapp / online) ---------- */
body.page-id-105 .guten-cd16xO .icon-box-body a,
body.page-id-105 .guten-cd16xO a {
  transition: color 180ms ease-out !important;
}

body.page-id-105 .guten-cd16xO .icon-box-body a:hover,
body.page-id-105 .guten-cd16xO a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

body.page-id-105 .guten-cd16xO .title {
  letter-spacing: -0.01em !important;
}

/* ---------- Gutenverse form fields (contact form) ---------- */
body.page-id-105 .gutenverse-form input[type="text"],
body.page-id-105 .gutenverse-form input[type="email"],
body.page-id-105 .gutenverse-form input[type="tel"],
body.page-id-105 .gutenverse-form textarea,
body.page-id-105 input.gutenverse-input,
body.page-id-105 textarea.gutenverse-input {
  min-height: 48px !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(80, 70, 67, 0.18) !important;
  border-radius: 2px !important;
  font-family: "Work Sans", system-ui, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  color: var(--sofia-ink, var(--wp--preset--color--theme-0)) !important;
  background: #ffffff !important;
  transition: border-color 180ms ease-out, box-shadow 180ms ease-out !important;
  width: 100% !important;
}

body.page-id-105 .gutenverse-form input:focus,
body.page-id-105 .gutenverse-form textarea:focus,
body.page-id-105 input.gutenverse-input:focus,
body.page-id-105 textarea.gutenverse-input:focus {
  border-color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  box-shadow: 0 0 0 3px rgba(226, 143, 84, 0.15) !important;
  outline: none !important;
}

body.page-id-105 .gutenverse-form textarea,
body.page-id-105 textarea.gutenverse-input {
  min-height: 130px !important;
  resize: vertical !important;
}

body.page-id-105 .gutenverse-form label,
body.page-id-105 .gutenverse-input-label {
  font-weight: 500 !important;
  color: var(--sofia-ink, var(--wp--preset--color--theme-0)) !important;
  margin-bottom: 6px !important;
  display: block !important;
}

body.page-id-105 .gutenverse-form input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  accent-color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  margin-right: 8px !important;
}

body.page-id-105 .gutenverse-form input[type="submit"],
body.page-id-105 .gutenverse-form button[type="submit"] {
  background: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  color: #ffffff !important;
  border: none !important;
  min-height: 48px !important;
  padding: 14px 32px !important;
  letter-spacing: 0.06em !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  transition: background-color 200ms ease-out, transform 160ms ease-out !important;
}

body.page-id-105 .gutenverse-form input[type="submit"]:hover,
body.page-id-105 .gutenverse-form button[type="submit"]:hover {
  background: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  transform: translateY(-1px) !important;
}

/* ---------- Text highlight (peach accent on keywords) ---------- */
body.page-id-105 .guten-text-highlight {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* ---------- Links in body text ---------- */
body.page-id-105 .gutenverse-text-editor a:not(.guten-button) {
  color: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color 180ms ease-out !important;
}

body.page-id-105 .gutenverse-text-editor a:not(.guten-button):hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* ---------- Desktop spacing polish ---------- */
@media (min-width: 1025px) {
  body.page-id-105 .guten-section:not(.guten-yoGvqr):not(.guten-n9HC0a) {
    padding-top: clamp(72px, 7vw, 104px) !important;
    padding-bottom: clamp(72px, 7vw, 104px) !important;
  }

  body.page-id-105 .guten-icon-box {
    padding: 40px 32px !important;
  }
}

/* ---------- Tablet polish ---------- */
@media (min-width: 768px) and (max-width: 1024px) {
  body.page-id-105 .guten-icon-box {
    padding: 32px 24px !important;
  }

  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:hover {
    transform: none !important;
  }
}

/* ---------- Mobile polish ---------- */
@media (max-width: 767px) {
  body.page-id-105 .guten-icon-box {
    padding: 26px 22px !important;
    margin-bottom: 14px !important;
  }

  body.page-id-105 .guten-icon-box:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:hover {
    transform: none !important;
  }

  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:hover .guten-image-wrapper img {
    transform: none !important;
  }

  body.page-id-105 .guten-button,
  body.page-id-105 a.guten-button {
    padding: 14px 24px !important;
    font-size: 14px !important;
    width: auto !important;
    max-width: 100% !important;
  }

  body.page-id-105 .gutenverse-form input[type="text"],
  body.page-id-105 .gutenverse-form input[type="email"],
  body.page-id-105 .gutenverse-form input[type="tel"],
  body.page-id-105 .gutenverse-form textarea,
  body.page-id-105 input.gutenverse-input,
  body.page-id-105 textarea.gutenverse-input {
    font-size: 16px !important;
    padding: 12px 14px !important;
  }

  body.page-id-105 h2,
  body.page-id-105 .wp-block-heading h2 {
    line-height: 1.18 !important;
  }

  body.page-id-105 p,
  body.page-id-105 .gutenverse-text-editor p {
    font-size: 16px !important;
  }
}

/* ---------- Reduced motion respect ---------- */
@media (prefers-reduced-motion: reduce) {
  body.page-id-105 .guten-icon-box,
  body.page-id-105 .guten-button,
  body.page-id-105 a.guten-button,
  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column,
  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-image-wrapper img,
  body.page-id-105 .gutenverse-form input,
  body.page-id-105 .gutenverse-form textarea {
    transition: none !important;
  }
  body.page-id-105 .guten-icon-box:hover,
  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:hover {
    transform: none !important;
    box-shadow: none !important;
  }
  body.page-id-105 .guten-section:not(.guten-yoGvqr) .guten-column:hover .guten-image-wrapper img {
    transform: none !important;
  }
}

/* ---------- Accessibility: focus ring on links ---------- */
body.page-id-105 .gutenverse-menu a:focus-visible,
body.page-id-105 a:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
  border-radius: 2px !important;
}

/* ============================================================
   PAGES DEMO-INSPIRED POLISH - 2026-04-16
   Covers: Chi sono (97), Contatti (118), Blog (235)
   Safe scope per page-id
   ============================================================ */

/* =====================================================
   SHARED polish (97, 118, 235)
   ===================================================== */
body.page-id-97 h1,
body.page-id-118 h1,
body.page-id-235 h1,
body.page-id-97 .wp-block-heading h1,
body.page-id-118 .wp-block-heading h1,
body.page-id-235 .wp-block-heading h1 {
  letter-spacing: -0.035em !important;
  line-height: 1.06 !important;
  font-weight: 500 !important;
}

body.page-id-97 h2,
body.page-id-118 h2,
body.page-id-235 h2,
body.page-id-97 .wp-block-heading h2,
body.page-id-118 .wp-block-heading h2,
body.page-id-235 .wp-block-heading h2 {
  letter-spacing: -0.02em !important;
  line-height: 1.14 !important;
  font-weight: 500 !important;
}

body.page-id-97 h3,
body.page-id-118 h3,
body.page-id-235 h3,
body.page-id-97 .wp-block-heading h3,
body.page-id-118 .wp-block-heading h3,
body.page-id-235 .wp-block-heading h3 {
  letter-spacing: -0.015em !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
}

body.page-id-97 p,
body.page-id-118 p,
body.page-id-235 p,
body.page-id-97 .gutenverse-text-editor p,
body.page-id-118 .gutenverse-text-editor p,
body.page-id-235 .gutenverse-text-editor p {
  line-height: 1.65 !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
}

/* Buttons polish shared (brand peach kept) */
body.page-id-97 .guten-button,
body.page-id-97 a.guten-button,
body.page-id-118 .guten-button,
body.page-id-118 a.guten-button,
body.page-id-235 .guten-button,
body.page-id-235 a.guten-button {
  letter-spacing: 0.06em !important;
  font-weight: 500 !important;
  min-height: 48px !important;
  padding: 14px 30px !important;
  border-radius: 2px !important;
  transition: background-color 200ms ease-out, transform 160ms ease-out, box-shadow 200ms ease-out !important;
  will-change: transform !important;
}

body.page-id-97 .guten-button:hover,
body.page-id-97 a.guten-button:hover,
body.page-id-118 .guten-button:hover,
body.page-id-118 a.guten-button:hover,
body.page-id-235 .guten-button:hover,
body.page-id-235 a.guten-button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 22px -14px rgba(219, 116, 43, 0.55) !important;
}

body.page-id-97 .guten-button:active,
body.page-id-97 a.guten-button:active,
body.page-id-118 .guten-button:active,
body.page-id-118 a.guten-button:active,
body.page-id-235 .guten-button:active,
body.page-id-235 a.guten-button:active {
  transform: translateY(0) scale(0.985) !important;
}

body.page-id-97 .guten-button:focus-visible,
body.page-id-97 a.guten-button:focus-visible,
body.page-id-118 .guten-button:focus-visible,
body.page-id-118 a.guten-button:focus-visible,
body.page-id-235 .guten-button:focus-visible,
body.page-id-235 a.guten-button:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
}

/* Contact icon-box hover shared (97, 118 usano guten-cd16xO) */
body.page-id-97 .guten-cd16xO .icon-box-body a,
body.page-id-118 .guten-cd16xO .icon-box-body a,
body.page-id-97 .guten-cd16xO a,
body.page-id-118 .guten-cd16xO a {
  transition: color 180ms ease-out !important;
}

body.page-id-97 .guten-cd16xO .icon-box-body a:hover,
body.page-id-118 .guten-cd16xO .icon-box-body a:hover,
body.page-id-97 .guten-cd16xO a:hover,
body.page-id-118 .guten-cd16xO a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Body links (not buttons) shared */
body.page-id-97 .gutenverse-text-editor a:not(.guten-button),
body.page-id-118 .gutenverse-text-editor a:not(.guten-button),
body.page-id-235 .gutenverse-text-editor a:not(.guten-button) {
  color: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color 180ms ease-out !important;
}

body.page-id-97 .gutenverse-text-editor a:not(.guten-button):hover,
body.page-id-118 .gutenverse-text-editor a:not(.guten-button):hover,
body.page-id-235 .gutenverse-text-editor a:not(.guten-button):hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Text highlight peach */
body.page-id-97 .guten-text-highlight,
body.page-id-118 .guten-text-highlight,
body.page-id-235 .guten-text-highlight {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* =====================================================
   CHI SONO (page-id-97)
   ===================================================== */

/* Hero "Chi sono" typography */
body.page-id-97 .guten-evh6G1 h1 {
  letter-spacing: -0.04em !important;
}

/* Bio text: readability + max line length */
body.page-id-97 .guten-evh6G1 + .guten-section .gutenverse-text-editor p,
body.page-id-97 .guten-mommTe .gutenverse-text-editor p {
  max-width: 68ch !important;
  font-size: 17px !important;
}

@media (max-width: 767px) {
  body.page-id-97 .guten-evh6G1 + .guten-section .gutenverse-text-editor p,
  body.page-id-97 .guten-mommTe .gutenverse-text-editor p {
    font-size: 16px !important;
    max-width: 100% !important;
  }
}

/* Portrait bandeau fine-tuning (h2r2pE + WKcg2H already in parent CSS) */
body.page-id-97 .guten-h2r2pE .guten-WKcg2H {
  border-radius: 2px !important;
  overflow: hidden !important;
}

/* Quote / value statement emphasis */
body.page-id-97 .gutenverse-text-editor em,
body.page-id-97 blockquote,
body.page-id-97 .wp-block-quote {
  font-family: "Playfair Display", Georgia, serif !important;
  font-style: italic !important;
  font-weight: 500 !important;
  color: var(--sofia-ink, var(--wp--preset--color--theme-0)) !important;
  line-height: 1.35 !important;
}

/* Icon-box polish (eventuali su pagina) */
body.page-id-97 .guten-icon-box {
  border: 1px solid rgba(80, 70, 67, 0.10) !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  padding: 32px 26px !important;
  transition: transform 220ms ease-out, box-shadow 220ms ease-out !important;
}

body.page-id-97 .guten-icon-box:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 32px -22px rgba(80, 70, 67, 0.3) !important;
}

/* =====================================================
   CONTATTI (page-id-118)
   ===================================================== */

/* H1 "contatti" emphasis */
body.page-id-118 .guten-evh6G1 h1,
body.page-id-118 h1 {
  text-transform: capitalize !important;
  letter-spacing: -0.04em !important;
}

/* Form fields polish */
body.page-id-118 .gutenverse-form input[type="text"],
body.page-id-118 .gutenverse-form input[type="email"],
body.page-id-118 .gutenverse-form input[type="tel"],
body.page-id-118 .gutenverse-form textarea,
body.page-id-118 input.gutenverse-input,
body.page-id-118 textarea.gutenverse-input {
  min-height: 48px !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(80, 70, 67, 0.18) !important;
  border-radius: 2px !important;
  font-family: "Work Sans", system-ui, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  color: var(--sofia-ink, var(--wp--preset--color--theme-0)) !important;
  background: #ffffff !important;
  transition: border-color 180ms ease-out, box-shadow 180ms ease-out !important;
  width: 100% !important;
}

body.page-id-118 .gutenverse-form input:focus,
body.page-id-118 .gutenverse-form textarea:focus,
body.page-id-118 input.gutenverse-input:focus,
body.page-id-118 textarea.gutenverse-input:focus {
  border-color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  box-shadow: 0 0 0 3px rgba(226, 143, 84, 0.15) !important;
  outline: none !important;
}

body.page-id-118 .gutenverse-form textarea,
body.page-id-118 textarea.gutenverse-input {
  min-height: 140px !important;
  resize: vertical !important;
}

body.page-id-118 .gutenverse-form label,
body.page-id-118 .gutenverse-input-label {
  font-weight: 500 !important;
  color: var(--sofia-ink, var(--wp--preset--color--theme-0)) !important;
  margin-bottom: 6px !important;
  display: block !important;
  font-size: 14px !important;
  letter-spacing: 0.02em !important;
}

body.page-id-118 .gutenverse-form input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  accent-color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  margin-right: 8px !important;
}

body.page-id-118 .gutenverse-form input[type="submit"],
body.page-id-118 .gutenverse-form button[type="submit"] {
  background: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  color: #ffffff !important;
  border: none !important;
  min-height: 48px !important;
  padding: 14px 32px !important;
  letter-spacing: 0.06em !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  transition: background-color 200ms ease-out, transform 160ms ease-out !important;
}

body.page-id-118 .gutenverse-form input[type="submit"]:hover,
body.page-id-118 .gutenverse-form button[type="submit"]:hover {
  background: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  transform: translateY(-1px) !important;
}

/* Info blocks (email/tel/whatsapp/orari) */
body.page-id-118 .guten-icon-box {
  border: 1px solid rgba(80, 70, 67, 0.10) !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  padding: 28px 24px !important;
  transition: transform 220ms ease-out, box-shadow 220ms ease-out, border-color 220ms ease-out !important;
}

body.page-id-118 .guten-icon-box:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 32px -22px rgba(80, 70, 67, 0.3) !important;
  border-color: rgba(226, 143, 84, 0.35) !important;
}

body.page-id-118 .guten-icon-box .icon {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Social icons */
body.page-id-118 .gutenverse-social-icons a,
body.page-id-118 a[href*="instagram"],
body.page-id-118 a[href*="facebook"] {
  transition: color 180ms ease-out, transform 160ms ease-out !important;
}

body.page-id-118 .gutenverse-social-icons a:hover,
body.page-id-118 a[href*="instagram"]:hover,
body.page-id-118 a[href*="facebook"]:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  transform: translateY(-2px) !important;
}

/* =====================================================
   BLOG (page-id-235)
   ===================================================== */

/* Post list container: max-width + spacing */
body.page-id-235 .guten-F3v7wx {
  margin-bottom: 48px !important;
}

@media (max-width: 767px) {
  body.page-id-235 .guten-F3v7wx {
    margin-bottom: 32px !important;
  }
}

/* Post thumbnail 16:9 aspect + hover zoom */
body.page-id-235 .guten-F3v7wx .guten-thumb,
body.page-id-235 .guten-F3v7wx .thumbnail-container {
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  position: relative !important;
}

body.page-id-235 .guten-F3v7wx .guten-thumb img,
body.page-id-235 .guten-F3v7wx .thumbnail-container img,
body.page-id-235 .guten-F3v7wx img.wp-post-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 600ms cubic-bezier(0.2, 0.7, 0.2, 1) !important;
}

body.page-id-235 .guten-F3v7wx:hover .guten-thumb img,
body.page-id-235 .guten-F3v7wx:hover img.wp-post-image {
  transform: scale(1.04) !important;
}

/* Post content area */
body.page-id-235 .guten-F3v7wx .guten-postblock-content {
  background: var(--sofia-soft, var(--wp--preset--color--theme-4)) !important;
  padding: 28px 28px 32px !important;
  margin-top: 0 !important;
}

@media (max-width: 767px) {
  body.page-id-235 .guten-F3v7wx .guten-postblock-content {
    padding: 22px 20px 26px !important;
  }
}

/* Post title */
body.page-id-235 .guten-F3v7wx .guten-post-title a {
  letter-spacing: -0.02em !important;
  font-weight: 500 !important;
  line-height: 1.22 !important;
  transition: color 180ms ease-out !important;
  display: inline-block !important;
}

body.page-id-235 .guten-F3v7wx .guten-post-title a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Post meta (category/author/date) */
body.page-id-235 .guten-F3v7wx .guten-post-meta,
body.page-id-235 .guten-F3v7wx .guten-postmeta-container {
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
}

body.page-id-235 .guten-F3v7wx .guten-post-meta a {
  color: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  transition: color 180ms ease-out !important;
}

body.page-id-235 .guten-F3v7wx .guten-post-meta a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Post excerpt */
body.page-id-235 .guten-F3v7wx .guten-post-excerpt,
body.page-id-235 .guten-F3v7wx .guten-post-excerpt p {
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
  margin-bottom: 16px !important;
}

/* Read more link */
body.page-id-235 .guten-F3v7wx .guten-read-more,
body.page-id-235 .guten-F3v7wx a.guten-read-more {
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  color: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  text-decoration: none !important;
  position: relative !important;
  padding-bottom: 2px !important;
  border-bottom: 1px solid currentColor !important;
  transition: color 180ms ease-out !important;
}

body.page-id-235 .guten-F3v7wx .guten-read-more:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Pagination */
body.page-id-235 .navigation.pagination,
body.page-id-235 .guten-postblock-pagination,
body.page-id-235 .page-numbers {
  display: flex !important;
  gap: 8px !important;
  justify-content: center !important;
  margin-top: 48px !important;
}

body.page-id-235 .page-numbers,
body.page-id-235 a.page-numbers {
  min-width: 40px !important;
  min-height: 40px !important;
  padding: 8px 14px !important;
  border: 1px solid rgba(80, 70, 67, 0.2) !important;
  border-radius: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--sofia-ink, var(--wp--preset--color--theme-0)) !important;
  text-decoration: none !important;
  transition: all 180ms ease-out !important;
  font-size: 14px !important;
}

body.page-id-235 a.page-numbers:hover,
body.page-id-235 .page-numbers.current {
  background: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  border-color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  color: #ffffff !important;
}

/* =====================================================
   RESPONSIVE desktop spacing for all 3 pages
   ===================================================== */
@media (min-width: 1025px) {
  body.page-id-97 .guten-section:not(.guten-yoGvqr):not(.guten-n9HC0a):not(.guten-evh6G1),
  body.page-id-118 .guten-section:not(.guten-yoGvqr):not(.guten-n9HC0a):not(.guten-evh6G1),
  body.page-id-235 .guten-section:not(.guten-yoGvqr):not(.guten-n9HC0a):not(.guten-evh6G1) {
    padding-top: clamp(64px, 6vw, 96px) !important;
    padding-bottom: clamp(64px, 6vw, 96px) !important;
  }
}

/* =====================================================
   Mobile shared polish
   ===================================================== */
@media (max-width: 767px) {
  body.page-id-97 .guten-button,
  body.page-id-97 a.guten-button,
  body.page-id-118 .guten-button,
  body.page-id-118 a.guten-button,
  body.page-id-235 .guten-button,
  body.page-id-235 a.guten-button {
    padding: 14px 24px !important;
    font-size: 14px !important;
  }

  body.page-id-97 .guten-icon-box:hover,
  body.page-id-118 .guten-icon-box:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  body.page-id-235 .guten-F3v7wx:hover .guten-thumb img,
  body.page-id-235 .guten-F3v7wx:hover img.wp-post-image {
    transform: none !important;
  }

  body.page-id-118 .gutenverse-form input[type="text"],
  body.page-id-118 .gutenverse-form input[type="email"],
  body.page-id-118 .gutenverse-form input[type="tel"],
  body.page-id-118 .gutenverse-form textarea,
  body.page-id-118 input.gutenverse-input,
  body.page-id-118 textarea.gutenverse-input {
    font-size: 16px !important;
    padding: 12px 14px !important;
  }
}

/* =====================================================
   Reduced motion respect
   ===================================================== */
@media (prefers-reduced-motion: reduce) {
  body.page-id-97 .guten-button,
  body.page-id-97 .guten-icon-box,
  body.page-id-118 .guten-button,
  body.page-id-118 .guten-icon-box,
  body.page-id-118 .gutenverse-form input,
  body.page-id-118 .gutenverse-form textarea,
  body.page-id-235 .guten-button,
  body.page-id-235 .guten-F3v7wx .guten-thumb img,
  body.page-id-235 .guten-F3v7wx img.wp-post-image,
  body.page-id-235 a.page-numbers {
    transition: none !important;
  }
  body.page-id-97 .guten-icon-box:hover,
  body.page-id-118 .guten-icon-box:hover,
  body.page-id-235 .guten-F3v7wx:hover .guten-thumb img,
  body.page-id-235 .guten-F3v7wx:hover img.wp-post-image {
    transform: none !important;
    box-shadow: none !important;
  }
}

/* =====================================================
   Focus ring shared accessibility
   ===================================================== */
body.page-id-97 a:focus-visible,
body.page-id-118 a:focus-visible,
body.page-id-235 a:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
  border-radius: 2px !important;
}

/* ============================================================
   BLOG ARCHIVE PATCH - 2026-04-16
   Target: body.blog (WP archive, no page-id)
   Applica polish uguale a page-id-235 ma su body.blog
   ============================================================ */

body.blog h1,
body.blog .wp-block-heading h1 {
  letter-spacing: -0.035em !important;
  line-height: 1.06 !important;
  font-weight: 500 !important;
}

body.blog h2,
body.blog .wp-block-heading h2 {
  letter-spacing: -0.02em !important;
  line-height: 1.14 !important;
  font-weight: 500 !important;
}

body.blog h3,
body.blog .wp-block-heading h3 {
  letter-spacing: -0.015em !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
}

body.blog p,
body.blog .gutenverse-text-editor p {
  line-height: 1.65 !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
}

/* Buttons polish */
body.blog .guten-button,
body.blog a.guten-button {
  letter-spacing: 0.06em !important;
  font-weight: 500 !important;
  min-height: 48px !important;
  padding: 14px 30px !important;
  border-radius: 2px !important;
  transition: background-color 200ms ease-out, transform 160ms ease-out, box-shadow 200ms ease-out !important;
}

body.blog .guten-button:hover,
body.blog a.guten-button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 22px -14px rgba(219, 116, 43, 0.55) !important;
}

body.blog .guten-button:focus-visible,
body.blog a.guten-button:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
}

/* Post card spacing */
body.blog .guten-F3v7wx {
  margin-bottom: 48px !important;
}

@media (max-width: 767px) {
  body.blog .guten-F3v7wx {
    margin-bottom: 32px !important;
  }
}

/* Post thumbnail 16:9 + hover zoom */
body.blog .guten-F3v7wx .guten-thumb,
body.blog .guten-F3v7wx .thumbnail-container {
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  position: relative !important;
}

body.blog .guten-F3v7wx .guten-thumb img,
body.blog .guten-F3v7wx .thumbnail-container img,
body.blog .guten-F3v7wx img.wp-post-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 600ms cubic-bezier(0.2, 0.7, 0.2, 1) !important;
}

body.blog .guten-F3v7wx:hover .guten-thumb img,
body.blog .guten-F3v7wx:hover img.wp-post-image {
  transform: scale(1.04) !important;
}

/* Post content area */
body.blog .guten-F3v7wx .guten-postblock-content {
  background: var(--sofia-soft, var(--wp--preset--color--theme-4)) !important;
  padding: 28px 28px 32px !important;
  margin-top: 0 !important;
}

@media (max-width: 767px) {
  body.blog .guten-F3v7wx .guten-postblock-content {
    padding: 22px 20px 26px !important;
  }
}

/* Post title + hover */
body.blog .guten-F3v7wx .guten-post-title a {
  letter-spacing: -0.02em !important;
  font-weight: 500 !important;
  line-height: 1.22 !important;
  transition: color 180ms ease-out !important;
  display: inline-block !important;
}

body.blog .guten-F3v7wx .guten-post-title a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Post meta */
body.blog .guten-F3v7wx .guten-post-meta,
body.blog .guten-F3v7wx .guten-postmeta-container {
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
}

body.blog .guten-F3v7wx .guten-post-meta a {
  color: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  transition: color 180ms ease-out !important;
}

body.blog .guten-F3v7wx .guten-post-meta a:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Post excerpt */
body.blog .guten-F3v7wx .guten-post-excerpt,
body.blog .guten-F3v7wx .guten-post-excerpt p {
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: var(--sofia-muted, var(--wp--preset--color--theme-3)) !important;
  margin-bottom: 16px !important;
}

/* Read more */
body.blog .guten-F3v7wx .guten-read-more {
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  color: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  text-decoration: none !important;
  padding-bottom: 2px !important;
  border-bottom: 1px solid currentColor !important;
  transition: color 180ms ease-out !important;
}

body.blog .guten-F3v7wx .guten-read-more:hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Pagination */
body.blog .navigation.pagination,
body.blog .guten-postblock-pagination,
body.blog .page-numbers-wrapper {
  display: flex !important;
  gap: 8px !important;
  justify-content: center !important;
  margin-top: 48px !important;
  flex-wrap: wrap !important;
}

body.blog .page-numbers,
body.blog a.page-numbers {
  min-width: 40px !important;
  min-height: 40px !important;
  padding: 8px 14px !important;
  border: 1px solid rgba(80, 70, 67, 0.2) !important;
  border-radius: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--sofia-ink, var(--wp--preset--color--theme-0)) !important;
  text-decoration: none !important;
  transition: all 180ms ease-out !important;
  font-size: 14px !important;
}

body.blog a.page-numbers:hover,
body.blog .page-numbers.current {
  background: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  border-color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  color: #ffffff !important;
}

/* Body links */
body.blog .gutenverse-text-editor a:not(.guten-button) {
  color: var(--sofia-peach-dark, var(--wp--preset--color--theme-5)) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color 180ms ease-out !important;
}

body.blog .gutenverse-text-editor a:not(.guten-button):hover {
  color: var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
}

/* Desktop spacing */
@media (min-width: 1025px) {
  body.blog .guten-section:not(.guten-yoGvqr):not(.guten-n9HC0a):not(.guten-evh6G1) {
    padding-top: clamp(64px, 6vw, 96px) !important;
    padding-bottom: clamp(64px, 6vw, 96px) !important;
  }
}

/* Mobile polish */
@media (max-width: 767px) {
  body.blog .guten-button,
  body.blog a.guten-button {
    padding: 14px 24px !important;
    font-size: 14px !important;
  }

  body.blog .guten-F3v7wx:hover .guten-thumb img,
  body.blog .guten-F3v7wx:hover img.wp-post-image {
    transform: none !important;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  body.blog .guten-button,
  body.blog .guten-F3v7wx .guten-thumb img,
  body.blog .guten-F3v7wx img.wp-post-image,
  body.blog a.page-numbers {
    transition: none !important;
  }
  body.blog .guten-F3v7wx:hover .guten-thumb img,
  body.blog .guten-F3v7wx:hover img.wp-post-image {
    transform: none !important;
  }
}

/* Focus accessibility */
body.blog a:focus-visible {
  outline: 2px solid var(--sofia-peach, var(--wp--preset--color--theme-1)) !important;
  outline-offset: 3px !important;
  border-radius: 2px !important;
}

/* Also applies to single post article view */
body.single-post .guten-F3v7wx .guten-post-title a {
  letter-spacing: -0.02em !important;
}

body.single-post .wp-post-image,
body.single-post article .wp-post-image {
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  width: 100% !important;
  height: auto !important;
  max-height: 520px !important;
}

body.single-post h1.entry-title,
body.single-post .entry-title {
  letter-spacing: -0.035em !important;
  line-height: 1.08 !important;
  font-weight: 500 !important;
}

body.single-post .entry-content p,
body.single-post .gutenverse-text-editor p {
  line-height: 1.75 !important;
  max-width: 68ch !important;
}

@media (max-width: 767px) {
  body.single-post .entry-content p,
  body.single-post .gutenverse-text-editor p {
    max-width: 100% !important;
    font-size: 16px !important;
  }
}
