/* Tema pubblico Benessere. L'immagine futura si imposta una volta sola in --wellness-background-image. */
body.wellness-page {
    --wellness-background-image:
        radial-gradient(ellipse at 4% 9%, rgba(220, 232, 211, .7), transparent 53%),
        radial-gradient(ellipse at 95% 6%, rgba(239, 224, 192, .55), transparent 48%),
        linear-gradient(to bottom, #f7f7ef 0%, #fbfcf7 40%, #fff 100%);
    --wellness-background-size: 100% 48rem;
    --wellness-ink: #302c29;
    --wellness-muted: #6f6862;
    --wellness-accent: #806a3d;
    --wellness-accent-hover: #604d29;
    --wellness-border: #dedbd4;
    --wellness-soft: #f6f5f1;
    background-color: #fff;
    background-image: var(--wellness-background-image);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: var(--wellness-background-size, 100% 48rem);
    color: var(--wellness-ink);
}
body.wellness-page > main { color: var(--wellness-ink); }

/* Etichette e lettura della scheda trattamento. */
.wellness-page .wellness-section-label { text-transform: none; }
.wellness-treatment .academy-single-header { margin-bottom: 2rem; }
.wellness-treatment .academy-featured { margin-bottom: 1.5rem; }
.wellness-treatment .treatment-facts {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin: 0 0 2rem;
    color: #57534e;
    font-size: .9rem;
}
.wellness-treatment .treatment-facts > div {
    border-color: var(--wellness-border);
}
.wellness-treatment .academy-prose :is(p, li),
.wellness-treatment .academy-course-teacher-copy > p,
.wellness-treatment .academy-course-teacher-copy .rich-text-content :is(p, li) {
    text-align: justify !important;
    text-justify: inter-word;
    hyphens: auto;
}
.wellness-treatment .treatment-contact-details { margin: 1.5rem 0; }
.wellness-treatment .treatment-whatsapp-action { margin: .25rem 0 0; }

.wellness-page .wellness-shell {
    width: min(calc(100% - 2rem), 80rem);
    margin: clamp(1rem, 3vw, 2.25rem) auto clamp(3rem, 6vw, 5.5rem);
    padding: clamp(2rem, 4vw, 4rem) clamp(1.1rem, 3vw, 3rem);
    border: 1px solid var(--wellness-border);
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 1.35rem 3.5rem rgba(72, 62, 48, .08);
}
.wellness-page .wellness-card,
.wellness-page .wellness-panel {
    border-color: var(--wellness-border) !important;
    background: #fff !important;
    color: var(--wellness-ink);
}
.wellness-page .wellness-soft {
    border-color: var(--wellness-border) !important;
    background: var(--wellness-soft) !important;
}
.wellness-page .wellness-title,
.wellness-page .wellness-profile h1,
.wellness-page .wellness-profile h2,
.wellness-page .wellness-profile .text-stone-100,
.wellness-page .academy-single-header h1,
.wellness-page .academy-course-teacher h2,
.wellness-page .academy-prose h1,
.wellness-page .academy-prose h2,
.wellness-page .academy-prose h3,
.wellness-page .academy-prose h4 { color: var(--wellness-ink) !important; }
.wellness-page .wellness-copy,
.wellness-page .wellness-profile .text-stone-200,
.wellness-page .wellness-profile .text-stone-300,
.wellness-page .wellness-profile .text-stone-400,
.wellness-page .academy-single-header .text-stone-200,
.wellness-page .academy-single-header .text-stone-300,
.wellness-page .academy-single-header .text-stone-400,
.wellness-page .academy-course-teacher p,
.wellness-page .academy-course-teacher .text-stone-400,
.wellness-page .academy-prose { color: var(--wellness-muted) !important; }
.wellness-page .wellness-shell .text-stone-100 { color: var(--wellness-ink) !important; }
.wellness-page .wellness-shell .text-stone-200,
.wellness-page .wellness-shell .text-stone-300 { color: #57534e !important; }
.wellness-page .wellness-shell .text-stone-400,
.wellness-page .wellness-shell .text-stone-500,
.wellness-page .wellness-shell .text-stone-600 { color: var(--wellness-muted) !important; }
.wellness-page .wellness-shell .text-amber-200,
.wellness-page .wellness-shell .text-amber-300,
.wellness-page .wellness-shell .text-amber-700,
.wellness-page .wellness-shell .text-amber-800 { color: var(--wellness-accent) !important; }
.wellness-page .wellness-link,
.wellness-page .wellness-eyebrow,
.wellness-page .wellness-profile .text-amber-200,
.wellness-page .wellness-profile .text-amber-300,
.wellness-page .academy-card-eyebrow,
.wellness-page .academy-card-link,
.wellness-page .academy-prose a { color: var(--wellness-accent) !important; }
.wellness-page .wellness-link:hover,
.wellness-page .wellness-link:focus-visible,
.wellness-page .academy-card-link:hover,
.wellness-page .academy-card-link:focus-visible { color: var(--wellness-accent-hover) !important; }
.wellness-page .wellness-profile header,
.wellness-page .wellness-profile .border-stone-800,
.wellness-page .academy-single-header .border-stone-700 { border-color: var(--wellness-border) !important; }
.wellness-page .wellness-profile .bg-stone-950,
.wellness-page .academy-course-teacher,
.wellness-page .academy-featured,
.wellness-page .academy-course-main > .bg-stone-950 {
    border-color: var(--wellness-border) !important;
    background: #fff !important;
}
.wellness-page .academy-page { color: var(--wellness-ink); }
.wellness-page .academy-featured img { width: 100%; max-height: none; object-fit: cover; }
.wellness-page .academy-course-teacher-image { background: var(--wellness-soft); }
.wellness-page input,
.wellness-page textarea,
.wellness-page select { color: var(--wellness-ink); background-color: #fff; }
.wellness-page a.wellness-section-label { text-decoration: underline; text-underline-offset: .25em; }
.wellness-treatment .treatment-next-step,
.wellness-treatment .treatment-inquiry { margin-top: 2.5rem; padding: clamp(1.2rem, 3vw, 2rem); border: 1px solid var(--wellness-border); border-radius: 1.25rem; background: var(--wellness-soft); }
.wellness-treatment .treatment-next-step h2,
.wellness-treatment .treatment-inquiry h2 { margin: 0 0 1rem; font-family: var(--font-display); font-size: clamp(1.3rem, 2vw, 1.8rem); font-weight: 400; line-height: 1.35; }
.wellness-treatment .treatment-next-step p,
.wellness-treatment .treatment-inquiry p { color: var(--wellness-muted); line-height: 1.7; }
.wellness-treatment .treatment-action-buttons { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.5rem; }
.wellness-page .treatment-action-button { display: inline-flex; justify-content: center; align-items: center; gap: .5rem; min-height: 2.8rem; padding: .8rem 1.2rem; border: 1px solid var(--wellness-accent); border-radius: .9rem; background: var(--wellness-accent); color: #fff; font: inherit; font-weight: 600; line-height: 1.4; text-decoration: none; text-align: center; }
.wellness-page .treatment-action-button--outline { color: var(--wellness-accent); background: #fff; }
.wellness-page .treatment-action-button:hover,
.wellness-page .treatment-action-button:focus-visible { outline: 2px solid var(--wellness-accent); outline-offset: 3px; }
.wellness-page .treatment-action-button:disabled { opacity: .65; cursor: not-allowed; }
.wellness-treatment .treatment-action-note { flex-basis: 100%; font-size: .88rem; margin-top: .75rem; }
.wellness-treatment .treatment-inquiry form { margin-top: 1.5rem; }
.wellness-treatment .treatment-inquiry fieldset { border: 0; padding: 0; min-width: 0; display: grid; gap: 1.2rem; }
.wellness-treatment .treatment-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.wellness-treatment .treatment-inquiry label { display: grid; gap: .5rem; color: var(--wellness-ink); font-weight: 600; }
.wellness-treatment .treatment-inquiry input:not([type="checkbox"]),
.wellness-treatment .treatment-inquiry textarea { width: 100%; min-width: 0; padding: .8rem; border: 1px solid var(--wellness-border); border-radius: .65rem; font: inherit; }
.wellness-treatment .treatment-inquiry textarea { resize: vertical; }
.wellness-treatment .treatment-inquiry .treatment-privacy { display: flex; gap: .7rem; align-items: flex-start; font-size: .88rem; font-weight: 400; line-height: 1.6; }
.wellness-treatment .treatment-privacy input { flex: 0 0 auto; width: 1.1rem; height: 1.1rem; margin-top: .25rem; accent-color: var(--wellness-accent); }
.wellness-treatment .treatment-privacy a { text-decoration: underline; }
.wellness-treatment .treatment-spam-trap { display: none; }
.wellness-treatment .treatment-form-errors { padding: 1rem; color: #9f1239; border: 1px solid #fda4af; border-radius: .75rem; }
.wellness-treatment .treatment-form-status { padding: 1rem; border: 1px solid var(--wellness-accent); border-radius: .75rem; }
.wellness-page .site-share-heading h2 { color: var(--wellness-ink); }
.wellness-page .site-share-heading > span { color: var(--wellness-accent); }
.wellness-page .site-share-button { background: #fff; color: var(--wellness-accent); border-color: var(--wellness-border); }
.wellness-page .site-share-button-whatsapp { display: inline-flex; }
.wellness-page .site-share-button:hover,
.wellness-page .site-share-button:focus-visible { background: var(--wellness-soft); color: var(--wellness-accent-hover); border-color: var(--wellness-accent); }
@media (max-width: 47.99rem) {
    .wellness-treatment .treatment-form-grid { grid-template-columns: minmax(0, 1fr); }
    .wellness-page .wellness-shell {
        width: 100%;
        margin: 0 auto 3rem;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
        box-shadow: none;
    }
}
