/*
Theme Name: Gianluca Barca
Theme URI: https://gianlucabarca.it/
Author: Maurizio Andreanò
Description: Di Maurizio Andreanò. Tema per il sito del Dott. Gianluca Barca, osteopata a Giardini Naxos. Un tema realizzato ad hoc per comunicare in modo autorevole e accrescere la visibilità del professionista.
Version: 0.7.10
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.1
License: Proprietary
Text Domain: gianlucabarca
*/

/* Base */
:root{--gb-r:1.5rem;--gb-pad:clamp(1.25rem,4vw,2.5rem)}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
.wp-site-blocks{padding:0}
.wp-site-blocks>*+*{margin-block-start:0}
:where(a){text-underline-offset:.2em}
:focus-visible{outline:3px solid var(--wp--preset--color--tiffany-dark);outline-offset:3px;border-radius:4px}
.gb-bg-ink :focus-visible,.gb-foot :focus-visible{outline-color:var(--wp--preset--color--tiffany)}
.gb-icon{width:1.25rem;height:1.25rem;flex:none}
.gb-icon--fill{fill:currentColor}
em{font-style:italic}
.gb-section{padding:clamp(4rem,8vw,8rem) var(--gb-pad)}
.gb-section--tight{padding-block:0}
.gb-bg-paper{background:var(--wp--preset--color--paper)}
.gb-bg-white{background:#fff}
.gb-bg-ink{background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper)}
.gb-bg-soft{background:var(--wp--preset--color--tiffany-light)}
.gb-bg-tiffany{background:var(--wp--preset--color--tiffany);color:var(--wp--preset--color--ink)}
.gb-bg-ink h1,.gb-bg-ink h2,.gb-bg-ink h3{color:var(--wp--preset--color--paper)}
.gb-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--wp--preset--color--tiffany-dark);margin:0}
.gb-eyebrow--light{color:var(--wp--preset--color--tiffany)}
.gb-eyebrow--ink{color:var(--wp--preset--color--ink)}
.gb-dot{width:.4rem;height:.4rem;border-radius:50%;background:var(--wp--preset--color--tiffany);display:inline-block}
.gb-dot--ink{background:var(--wp--preset--color--ink)}
.gb-h2{font-size:var(--wp--preset--font-size--title);line-height:1.12;margin:1.25rem 0 0}
.gb-h2 em,.gb-hero__title em,.gb-statement em{color:var(--wp--preset--color--tiffany-dark)}
.gb-h2--light em{color:var(--wp--preset--color--tiffany)}
.gb-h2--xl{font-size:clamp(3rem,1.5rem + 5vw,4.5rem);line-height:1.02}
.gb-h2--xl em{color:inherit}
.gb-body{color:var(--wp--preset--color--stone);font-size:1.125rem;line-height:1.7;margin:1.25rem 0 0}
.gb-small{color:var(--wp--preset--color--stone);font-size:.875rem;line-height:1.6;margin:1.5rem 0 0}
.gb-muted{color:var(--wp--preset--color--stone)}
.gb-lead{font-size:var(--wp--preset--font-size--lead);color:var(--wp--preset--color--stone);max-width:34rem;margin:2rem 0 0;line-height:1.65}
.gb-actions{margin:2.25rem 0 0;gap:.75rem}
.wp-block-button .wp-block-button__link{padding:1rem 1.75rem;transition:background-color .2s,color .2s,border-color .2s}
.gb-btn-main .wp-block-button__link{background:var(--wp--preset--color--tiffany);color:var(--wp--preset--color--ink)}
.gb-btn-main .wp-block-button__link:hover{background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper)}
.gb-btn-dark .wp-block-button__link{background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper)}
.gb-btn-dark .wp-block-button__link:hover{background:var(--wp--preset--color--tiffany);color:var(--wp--preset--color--ink)}
.gb-btn-ghost .wp-block-button__link,.gb-btn-ghost.is-style-outline .wp-block-button__link{background:transparent;color:var(--wp--preset--color--ink);border:1px solid rgba(15,43,46,.35)}
.gb-btn-ghost .wp-block-button__link:hover{border-color:var(--wp--preset--color--ink)}
.gb-btn-light .wp-block-button__link{background:transparent;color:var(--wp--preset--color--paper);border:1px solid rgba(246,244,239,.5)}
.gb-btn-light .wp-block-button__link:hover{background:var(--wp--preset--color--paper);color:var(--wp--preset--color--ink)}
.gb-bg-tiffany .gb-btn-ghost .wp-block-button__link{border-color:rgba(15,43,46,.5)}
.gb-ico{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:50%;flex:none}
.gb-ico svg{width:1.5rem;height:1.5rem}
.gb-ico--sm{width:2.5rem;height:2.5rem}
.gb-ico--sm svg{width:1.25rem;height:1.25rem}
.gb-ico--tiffany{background:var(--wp--preset--color--tiffany);color:var(--wp--preset--color--ink)}
.gb-ico--soft{background:var(--wp--preset--color--tiffany-light);color:var(--wp--preset--color--tiffany-dark)}
.gb-ico--ink{background:var(--wp--preset--color--ink);color:var(--wp--preset--color--tiffany)}
.gb-ico--line{border:1px solid rgba(10,186,181,.55);color:var(--wp--preset--color--tiffany)}
.gb-pill{display:inline-flex;align-items:center;gap:.5rem;margin:0;padding:.5rem 1rem;border:1px solid rgba(15,43,46,.2);border-radius:999px;background:#fff;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.gb-head{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:3.5rem}
.gb-head__aside{max-width:24rem;margin:0;color:rgba(246,244,239,.8)}
@media(min-width:1024px){.gb-head{flex-direction:row;align-items:flex-end;justify-content:space-between}}

/* Header */
.gb-site-header{position:sticky;top:0;z-index:50;background:var(--wp--preset--color--paper);border-bottom:1px solid rgba(15,43,46,.1)}
.admin-bar .gb-site-header{top:32px}
.gb-header__wrap{padding-inline:var(--gb-pad)}
.gb-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;max-width:80rem;margin-inline:auto;padding-block:1rem}
.gb-brand{display:flex;align-items:center;gap:.75rem;color:var(--wp--preset--color--ink);text-decoration:none}
.gb-brand__mark{height:2.25rem;width:auto}
.gb-brand__txt{display:flex;flex-direction:column;line-height:1.2;border-left:1px solid rgba(15,43,46,.25);padding-left:.75rem}
.gb-brand__n{font-size:.8125rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.gb-brand__r{font-size:.625rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--wp--preset--color--stone)}
.gb-header__cta{display:flex;align-items:center;gap:.75rem}
.gb-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--wp--preset--color--paper);color:var(--wp--preset--color--ink);padding:1.25rem var(--gb-pad)}
.gb-header__cta .wp-block-button__link{padding:.65rem 1.25rem;font-size:.875rem}
.gb-tel{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;color:var(--wp--preset--color--ink);text-decoration:none}
.gb-tel svg{color:var(--wp--preset--color--tiffany-dark)}
@media(max-width:781px){.admin-bar .gb-site-header{top:46px}.gb-header__cta .wp-block-buttons{display:none}}

/* Hero */
.gb-hero{position:relative;overflow:hidden;padding-block:clamp(3rem,6vw,4rem) clamp(4rem,8vw,7rem)}
.gb-hero__grid{display:grid;gap:3.5rem;align-items:center}
.gb-hero__title{font-size:var(--wp--preset--font-size--display);line-height:.95;letter-spacing:-.01em;margin:2rem 0 0}
.gb-stats{display:flex;gap:2.5rem;margin:3.5rem 0 0;padding-top:2rem;border-top:1px solid rgba(15,43,46,.12);max-width:30rem}
.gb-stats dd{margin:0}
.gb-stat__v{font-family:var(--wp--preset--font-family--instrument-serif);font-size:2.5rem;line-height:1}
.gb-stat__l{margin-top:.25rem!important;font-size:.8125rem;color:var(--wp--preset--color--stone);line-height:1.35}
.gb-hero__art{position:relative;width:100%;max-width:24rem;height:30rem;margin-inline:auto}
.gb-hero__art>*{margin:0}
.gb-hero__disc,.gb-hero__ring{position:absolute;left:50%;top:50%;border-radius:50%;aspect-ratio:1;transform:translate(-50%,-50%)}
.gb-hero__disc{width:92%;background:var(--wp--preset--color--tiffany-light)}
.gb-hero__ring{width:108%;border:1px solid rgba(10,186,181,.4)}
.gb-hero__dot{position:absolute;right:6%;top:8%;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--wp--preset--color--tiffany)}
.gb-spine{position:relative;width:100%;height:100%}
.gb-badge{position:absolute;right:0;top:.5rem;display:flex;align-items:center;gap:.5rem;margin:0;padding:.65rem 1rem;border-radius:999px;background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper);font-size:.875rem;font-weight:700}
.gb-badge svg{color:var(--wp--preset--color--tiffany);width:1rem;height:1rem}
.gb-note{position:absolute;right:0;bottom:.5rem;max-width:14rem;padding:1.25rem;border:1px solid rgba(15,43,46,.1);border-radius:1rem;background:#fff}
.gb-note p{margin:0}
.gb-note__k{font-size:.6875rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--wp--preset--color--tiffany-dark)}
.gb-note__t{margin-top:.5rem!important;font-family:var(--wp--preset--font-family--instrument-serif);font-size:1.3rem;line-height:1.25}
@media(min-width:1024px){.gb-hero__grid{grid-template-columns:7fr 5fr;gap:2rem}.gb-hero__art{max-width:none;height:40rem}}

/* In breve */
.gb-kf__grid{display:grid;grid-template-columns:1fr}
.gb-kf__item{display:flex;gap:1rem;align-items:flex-start;padding:2rem 0;border-top:1px solid rgba(246,244,239,.15)}
.gb-kf__item:first-child{border-top:0}
.gb-kf__t{font-family:var(--wp--preset--font-family--instrument-serif);font-size:1.6rem;line-height:1.15;margin:0}
.gb-kf__x{margin:.25rem 0 0;font-size:.875rem;color:rgba(246,244,239,.8)}
@media(min-width:640px){.gb-kf__grid{grid-template-columns:repeat(2,1fr)}.gb-kf__item{padding-inline:1.5rem}.gb-kf__item:nth-child(odd){padding-left:0}.gb-kf__item:nth-child(even){border-left:1px solid rgba(246,244,239,.15)}.gb-kf__item:nth-child(2){border-top:0}}
@media(min-width:1024px){.gb-kf__grid{grid-template-columns:repeat(4,1fr)}.gb-kf__item{padding-block:2.5rem;border-top:0!important}.gb-kf__item+.gb-kf__item{border-left:1px solid rgba(246,244,239,.15)}.gb-kf__item:nth-child(3){padding-left:1.5rem}}

/* Osteopatia */
.gb-split{display:grid;gap:2.5rem}
.gb-statement{font-size:clamp(1.9rem,1.2rem + 2.2vw,3.4rem);line-height:1.15;margin:0}
@media(min-width:1024px){.gb-split{grid-template-columns:3fr 9fr}.gb-split .gb-eyebrow{padding-top:1rem}}
.gb-principles{display:grid;gap:1px;margin-top:4rem;border:1px solid rgba(15,43,46,.1);border-radius:1.5rem;overflow:hidden;background:rgba(15,43,46,.1)}
.gb-card--principle{background:var(--wp--preset--color--paper);padding:2.25rem}
.gb-card--principle:hover{background:#fff}
.gb-card__top{display:flex;justify-content:space-between;align-items:center}
.gb-num{font-family:var(--wp--preset--font-family--instrument-serif);font-size:1.5rem;color:rgba(15,43,46,.6);margin:0}
.gb-card__t{font-family:var(--wp--preset--font-family--manrope);font-size:1.25rem;font-weight:700;margin:2.5rem 0 0}
.gb-card__x{margin:.75rem 0 0;color:var(--wp--preset--color--stone);line-height:1.65}
@media(min-width:768px){.gb-principles{grid-template-columns:repeat(3,1fr)}}

/* Trattamenti */
.gb-treat__grid{display:grid;gap:1rem}
.gb-treat{display:flex;flex-direction:column;padding:1.75rem;border:1px solid rgba(246,244,239,.12);border-radius:1.5rem;background:rgba(246,244,239,.04)}
.gb-treat:hover{border-color:var(--wp--preset--color--tiffany)}
.gb-treat .gb-card__t{font-family:var(--wp--preset--font-family--instrument-serif);font-size:1.9rem;font-weight:400;color:var(--wp--preset--color--paper);margin-top:2rem}
.gb-treat .gb-card__x{color:rgba(246,244,239,.82);font-size:.9375rem}
.gb-treat--main{justify-content:space-between;min-height:21rem;background:var(--wp--preset--color--tiffany);border-color:var(--wp--preset--color--tiffany);color:var(--wp--preset--color--ink);padding:2rem}
.gb-treat--main:hover{border-color:var(--wp--preset--color--tiffany)}
.gb-treat--main .gb-card__t{font-size:clamp(2.5rem,2rem + 1.5vw,3.25rem);color:var(--wp--preset--color--ink);margin-top:0}
.gb-treat--main .gb-card__x{color:rgba(15,43,46,.85);font-size:1.0625rem;max-width:24rem}
@media(min-width:768px){.gb-treat__grid{grid-template-columns:repeat(2,1fr)}.gb-treat--main{grid-column:1/-1}}
@media(min-width:1024px){.gb-treat__grid{grid-template-columns:repeat(3,1fr)}.gb-treat--main{grid-column:1;grid-row:span 2}}

/* Prima visita */
.gb-facts{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:0;padding:1.25rem;border:1px solid rgba(15,43,46,.1);border-radius:1rem;background:#fff;max-width:26rem}
.gb-facts dt{font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--wp--preset--color--tiffany-dark)}
.gb-facts dd{margin:.25rem 0 0;font-size:.875rem;line-height:1.35}
.gb-steps{display:grid;gap:2.5rem;position:relative}
.gb-step__n{font-family:var(--wp--preset--font-family--instrument-serif);font-size:4.5rem;line-height:1;color:var(--wp--preset--color--tiffany-dark);margin:0}
.gb-step__dot{display:block;width:.75rem;height:.75rem;margin-top:.75rem;border:2px solid var(--wp--preset--color--tiffany);border-radius:50%;background:var(--wp--preset--color--paper);position:relative}
.gb-step .gb-card__t,.gb-step__t{margin-top:1.5rem;font-family:var(--wp--preset--font-family--manrope);font-size:1.25rem;font-weight:700}
@media(min-width:768px){.gb-steps{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.gb-steps{grid-template-columns:repeat(4,1fr);gap:1.5rem}.gb-steps::before{content:"";position:absolute;left:0;right:0;top:5.4rem;height:1px;background:rgba(15,43,46,.18)}}

/* Chi sono / studio: segnaposto foto */
.gb-photo{display:flex;align-items:center;justify-content:center;border-radius:1.5rem;background:var(--wp--preset--color--sand);padding:1.5rem;text-align:center}
.gb-photo--portrait{aspect-ratio:4/5}
.gb-photo--wide{aspect-ratio:4/3;background:rgba(246,244,239,.1)}
.gb-photo img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.gb-slot__txt{margin:0;font-size:.875rem;color:var(--wp--preset--color--stone)}
.gb-bg-ink .gb-slot__txt{color:rgba(246,244,239,.75)}
.gb-about__grid,.gb-studio__grid,.gb-reviews__grid,.gb-faq__grid,.gb-contacts__grid{display:grid;gap:3.5rem;align-items:center}
@media(min-width:1024px){.gb-about__grid{grid-template-columns:5fr 7fr;gap:4rem}.gb-studio__grid{grid-template-columns:1fr 1fr;gap:4rem}.gb-reviews__grid{grid-template-columns:4fr 8fr;align-items:start}.gb-faq__grid{grid-template-columns:4fr 8fr;align-items:start}.gb-contacts__grid{grid-template-columns:5fr 7fr;align-items:start}}
.gb-creds{list-style:none;margin:2.25rem 0 0;padding:0;display:grid;gap:.75rem}
.gb-cred{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1rem;padding:1rem;border-radius:1rem;background:rgba(255,255,255,.75)}
.gb-cred__t{font-weight:700;flex:1 1 14rem}
.gb-cred__p{font-size:.875rem;color:var(--wp--preset--color--stone)}
.gb-addr{display:flex;align-items:center;gap:.5rem;margin:2rem 0 0;color:rgba(246,244,239,.9)}
.gb-addr svg{color:var(--wp--preset--color--tiffany)}

/* Recensioni */
.gb-score{font-family:var(--wp--preset--font-family--instrument-serif);font-size:clamp(5rem,4rem + 5vw,8rem);line-height:1;margin:1.5rem 0 0}
.gb-stars{display:inline-flex;gap:.125rem;margin-top:.75rem;color:var(--wp--preset--color--tiffany)}
.gb-stars svg{width:1.25rem;height:1.25rem}
.gb-reviews__list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.gb-rev{display:flex;flex-direction:column;padding:1.75rem;border:1px dashed rgba(15,43,46,.3);border-radius:1.5rem;background:#fff}
.gb-rev__top{display:flex;justify-content:space-between;align-items:center}
.gb-icon--q{width:1.75rem;height:1.75rem;color:var(--wp--preset--color--tiffany)}
.gb-tag{padding:.25rem .75rem;border-radius:999px;background:var(--wp--preset--color--sand);font-size:.625rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--wp--preset--color--stone)}
.gb-rev__txt{flex:1;margin:1.5rem 0 0;font-family:var(--wp--preset--font-family--instrument-serif);font-size:1.15rem;line-height:1.3;color:rgba(15,43,46,.75)}
.gb-rev__foot{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(15,43,46,.1)}
.gb-rev__foot p{margin:0}.gb-rev__a{font-size:.875rem;font-weight:700}.gb-rev__w{font-size:.75rem;color:var(--wp--preset--color--stone)}
.gb-rev .gb-stars{margin:0}.gb-rev .gb-stars svg{width:1rem;height:1rem}
@media(min-width:768px){.gb-reviews__list{grid-template-columns:repeat(3,1fr)}}

/* Blog */
.gb-blog .wp-block-post-template{gap:1.5rem;padding:0;list-style:none}
.gb-post{position:relative;border-radius:1.5rem;overflow:hidden;background:var(--wp--preset--color--paper);height:100%}
.gb-post__img{margin:0}.gb-post__img img{width:100%;transition:transform .5s}
.gb-post:hover .gb-post__img img{transform:scale(1.03)}
.gb-post__body{padding:1.5rem}
.gb-post__date{font-size:.75rem;color:var(--wp--preset--color--stone);margin:0}
.gb-post__title{font-size:1.65rem;line-height:1.15;margin:.75rem 0 0}
.gb-post__title a{color:var(--wp--preset--color--ink);text-decoration:none}
.gb-post__title a::after{content:"";position:absolute;inset:0}
.gb-post__ex{margin:.75rem 0 0;font-size:.9375rem;color:var(--wp--preset--color--stone)}
.gb-post__ex p{margin:0}

/* FAQ */
.gb-faq__list{border-top:1px solid rgba(15,43,46,.18)}
.gb-faq__item{border-bottom:1px solid rgba(15,43,46,.18);padding:0}
.gb-faq__item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.5rem 0;font-family:var(--wp--preset--font-family--instrument-serif);font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem);line-height:1.2}
.gb-faq__item summary::-webkit-details-marker{display:none}
.gb-faq__item summary::after{content:"+";flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid rgba(15,43,46,.25);border-radius:50%;font-family:var(--wp--preset--font-family--manrope);font-size:1.5rem;transition:transform .2s,background-color .2s}
.gb-faq__item[open] summary::after{transform:rotate(45deg);background:var(--wp--preset--color--tiffany);border-color:var(--wp--preset--color--tiffany)}
.gb-faq__item p{max-width:42rem;margin:0 0 1.5rem;color:var(--wp--preset--color--stone);line-height:1.7}

/* Contatti */
.gb-channels{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;gap:.75rem}
.gb-channel{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:1rem;background:rgba(15,43,46,.08);color:var(--wp--preset--color--ink);text-decoration:none;transition:background-color .2s,color .2s}
.gb-channel:hover{background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper)}
.gb-channel__t{display:flex;flex-direction:column;min-width:0}
.gb-channel__k{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.85}
.gb-channel__v{font-weight:700;overflow-wrap:anywhere}
.gb-info{margin-top:2rem;display:grid;gap:.75rem;font-size:.9375rem}
.gb-info p{display:flex;gap:.75rem;align-items:flex-start;margin:0}
.gb-info svg{margin-top:.2rem}
.gb-book{padding:clamp(1.75rem,4vw,2.5rem);border-radius:1.5rem;background:#fff}
.gb-book__t{font-size:2rem;margin:0}
.gb-book__x{margin:.75rem 0 0;color:var(--wp--preset--color--stone)}

/* Footer */
.gb-foot{background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper)}
.gb-foot{padding-inline:var(--gb-pad)}
.gb-foot__inner{max-width:80rem;margin-inline:auto;padding:clamp(3rem,6vw,5rem) 0 1.5rem}
.gb-foot__grid{display:grid;gap:2.5rem}
@media(min-width:768px){.gb-foot__grid{grid-template-columns:5fr 3fr 4fr;gap:3rem}}
.gb-foot__mark{height:5rem;width:auto}
.gb-foot__n{margin:1.5rem 0 0;font-size:.875rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.gb-foot__r{margin:.25rem 0 0;font-size:.75rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(246,244,239,.7)}
.gb-foot__h{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--wp--preset--color--tiffany)}
.gb-footnav{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.5rem}
.gb-foot a{color:rgba(246,244,239,.85);text-decoration:none}
.gb-foot a:hover{color:var(--wp--preset--color--tiffany);text-decoration:underline}
.gb-foot__addr{margin:1rem 0 0;font-style:normal;display:grid;gap:.5rem;color:rgba(246,244,239,.85)}
.gb-foot__addr p{margin:0}
.gb-foot__bar{display:flex;flex-direction:column;gap:1rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgba(246,244,239,.15);font-size:.8125rem}
.gb-foot__legal{margin:0;color:rgba(246,244,239,.75)}
.gb-foot__links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:1.5rem}
@media(min-width:768px){.gb-foot__bar{flex-direction:row;justify-content:space-between;align-items:center}}
.gb-credits{margin:1.25rem 0 0;font-size:.8125rem;color:rgba(246,244,239,.75);text-align:center}
@media(min-width:768px){.gb-credits{text-align:left}}
.gb-credits a{color:var(--wp--preset--color--paper);text-decoration:underline}

/* Pagine interne e articoli */
.gb-pagehead{background:var(--wp--preset--color--tiffany-light);padding:clamp(3rem,6vw,4.5rem) var(--gb-pad) 2.5rem}
.gb-pagehead+.gb-pagecontent>.gb-section:first-child{padding-top:2rem}
.gb-pagehead__inner{max-width:80rem;margin-inline:auto}
.gb-pagehead__title{font-size:clamp(2.5rem,1.5rem + 4vw,4.5rem);line-height:1.05;margin:1rem 0 0;max-width:56rem}
.gb-crumb{margin:0 0 1.5rem;font-size:.875rem;font-weight:600}
.gb-crumb a{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}
.gb-icon--back{transform:rotate(180deg);width:1rem;height:1rem}
.gb-single__cat{margin:0 0 1rem;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.gb-single__cat a{color:var(--wp--preset--color--tiffany-dark);text-decoration:none}
.gb-single__date{margin:1.25rem 0 0;font-size:.875rem;color:var(--wp--preset--color--stone)}
.gb-single__img{max-width:60rem;margin:0 auto 3rem}
.gb-single__img img{width:100%;height:auto;border-radius:1.5rem}
.gb-pagecontent>:not(.alignfull){padding-inline:var(--gb-pad)}
.gb-prose-block{max-width:48rem}
.gb-prose{font-size:1.125rem;line-height:1.75}
.gb-prose p,.gb-prose li{color:var(--wp--preset--color--ink)}
.gb-prose p{margin:0 0 1.25rem}
.gb-prose h2{font-size:clamp(1.9rem,1.4rem + 1.6vw,2.6rem);margin:3rem 0 1rem}
.gb-prose h3{font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem);margin:2.25rem 0 .75rem}
.gb-prose ul,.gb-prose ol{margin:0 0 1.5rem;padding-left:1.5rem}
.gb-prose li{margin-bottom:.5rem}
.gb-prose blockquote{margin:2rem 0;padding:.25rem 0 .25rem 1.5rem;border-left:4px solid var(--wp--preset--color--tiffany);font-family:var(--wp--preset--font-family--instrument-serif);font-size:1.5rem;line-height:1.35}
.gb-prose img{max-width:100%;height:auto;border-radius:1rem}
.gb-prose a{text-decoration:underline}
.gb-prose table{border-collapse:collapse;width:100%;font-size:1rem}
.gb-prose th,.gb-prose td{padding:.65rem .75rem;border-bottom:1px solid rgba(15,43,46,.15);text-align:left}
.gb-callout{margin:2rem 0;padding:1.25rem 1.5rem;border:1px dashed rgba(15,43,46,.35);border-radius:1rem;background:var(--wp--preset--color--tiffany-light)}
.gb-callout p{margin:0 0 .5rem}.gb-callout p:last-child{margin:0}
.gb-prose-wrap .gb-faq__item summary{font-family:var(--wp--preset--font-family--manrope);font-size:1.125rem;font-weight:700}
.gb-prose-wrap h2{font-size:clamp(1.9rem,1.4rem + 1.6vw,2.6rem);margin:0 0 1.25rem}
.gb-prose-wrap h3{font-size:1.4rem;margin:1.75rem 0 .5rem}
.gb-prose-wrap p,.gb-prose-wrap li{line-height:1.75;margin:0 0 1rem}
.gb-prose-wrap ul{padding-left:1.5rem;margin:0 0 1rem}
.gb-prose-wrap .gb-faq__item{margin:0}
.gb-prose-wrap .gb-faq__item>:not(summary){padding-bottom:.5rem}
.gb-pagination{margin-top:3rem;gap:1rem;font-weight:600}
.gb-pagination a{text-decoration:none}
.gb-pagination .page-numbers.current{color:var(--wp--preset--color--ink);text-decoration:underline}

/* Modulo di contatto (Contact Form 7) */
.gb-book--form{padding:clamp(1.75rem,4vw,2.5rem)}
.gb-book .wpcf7{margin-top:1.75rem}
.gb-book .wpcf7 form p{margin:0 0 1.25rem}
.gb-book .wpcf7 label,.gb-fieldset legend{display:block;margin:0 0 .4rem;font-size:.875rem;font-weight:700;color:var(--wp--preset--color--ink)}
.gb-facolt{font-weight:400;color:var(--wp--preset--color--stone)}
.gb-book .wpcf7-form-control-wrap{display:block}
.gb-book .wpcf7 input[type=text],.gb-book .wpcf7 input[type=tel],.gb-book .wpcf7 input[type=email],.gb-book .wpcf7 select{width:100%;box-sizing:border-box;padding:.85rem 1rem;border:1px solid rgba(15,43,46,.3);border-radius:.75rem;background:var(--wp--preset--color--paper);color:var(--wp--preset--color--ink);font:inherit}
.gb-book .wpcf7 input:focus-visible,.gb-book .wpcf7 select:focus-visible{outline:3px solid var(--wp--preset--color--tiffany-dark);outline-offset:2px}
.gb-fieldset{margin:0 0 1.25rem;padding:0;border:0}
.gb-book .wpcf7-radio{display:flex;flex-wrap:wrap;gap:.5rem}
.gb-book .wpcf7-radio .wpcf7-list-item{margin:0}
.gb-book .wpcf7-radio .wpcf7-list-item label{display:inline-flex;align-items:center;gap:.5rem;margin:0;padding:.55rem 1rem;border:1px solid rgba(15,43,46,.3);border-radius:999px;font-weight:600;cursor:pointer}
.gb-book .wpcf7-radio input{accent-color:var(--wp--preset--color--ink)}
.gb-book .gb-consenso .wpcf7-list-item{margin:0}
.gb-book .gb-consenso label{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;font-weight:400;color:var(--wp--preset--color--stone)}
.gb-book .gb-consenso input{margin-top:.25rem;accent-color:var(--wp--preset--color--ink)}
.gb-book .wpcf7-submit{width:100%;padding:1rem 1.75rem;border:0;border-radius:999px;background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper);font:inherit;font-weight:700;cursor:pointer;transition:background-color .2s,color .2s}
.gb-book .wpcf7-submit:hover{background:var(--wp--preset--color--tiffany);color:var(--wp--preset--color--ink)}
.gb-book .wpcf7-not-valid-tip{display:block;margin-top:.35rem;font-size:.875rem;color:#8A3B26}
.gb-book .wpcf7 form .wpcf7-response-output{margin:1.25rem 0 0;padding:.9rem 1rem;border:1px solid var(--wp--preset--color--tiffany-dark);border-radius:.75rem;font-size:.9375rem}
.gb-book .wpcf7 form.invalid .wpcf7-response-output,.gb-book .wpcf7 form.failed .wpcf7-response-output,.gb-book .wpcf7 form.spam .wpcf7-response-output{border-color:#8A3B26;color:#8A3B26}
.gb-book .wpcf7-spinner{margin:.75rem auto 0;display:block}
.gb-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.screen-reader-response{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.screen-reader-response ul{margin:0;padding:0;list-style:none}
.gb-book .wpcf7-submit:disabled{opacity:.5;cursor:not-allowed}
.gb-book .wpcf7-submit:disabled:hover{background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper)}

/* Menu come in Magic Patterns */
.gb-nav .wp-block-navigation__container{gap:1.75rem}
.gb-nav .wp-block-navigation-item__content{font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s}
.gb-nav.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content{color:rgba(15,43,46,.75)}
.gb-nav.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:hover{color:var(--wp--preset--color--tiffany-dark)}
.gb-nav .gb-nav-mobile-only{display:none}
.gb-tel span{white-space:nowrap}
@media(max-width:1023px){
  .gb-header__cta{display:none}
  .gb-nav{margin-left:auto}
  .gb-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
  .gb-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
}
.gb-nav .wp-block-navigation__responsive-container-open{width:2.75rem;height:2.75rem;padding:0;align-items:center;justify-content:center;border:1px solid rgba(15,43,46,.15);border-radius:50%;color:var(--wp--preset--color--ink)}
.gb-nav .wp-block-navigation__responsive-container-open svg{width:1.25rem;height:1.25rem}
.gb-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--wp--preset--color--paper);color:var(--wp--preset--color--ink);padding:1.25rem var(--gb-pad)}
.gb-nav .wp-block-navigation__responsive-container-close{padding:.5rem}
.gb-nav .is-menu-open .wp-block-navigation__responsive-container-content{align-items:stretch;padding-top:2rem}
.gb-nav .is-menu-open .wp-block-navigation__container{width:100%;gap:0;align-items:stretch}
.gb-nav .is-menu-open .wp-block-navigation-item{width:100%;border-bottom:1px solid rgba(15,43,46,.1)}
.gb-nav .is-menu-open .wp-block-navigation-item__content{display:block;padding:1rem 0;font-family:var(--wp--preset--font-family--instrument-serif);font-size:1.5rem;font-weight:400;color:var(--wp--preset--color--ink)}
.gb-nav .is-menu-open .gb-nav-mobile-only{display:block;border-bottom:0;margin-top:.75rem}
.gb-nav .is-menu-open .gb-nav-mobile-only .wp-block-navigation-item__content{padding:.85rem 1rem;text-align:center;border:1px solid rgba(15,43,46,.2);border-radius:999px;font-family:var(--wp--preset--font-family--manrope);font-size:.875rem;font-weight:600}
.gb-nav .is-menu-open .gb-nav-prenota .wp-block-navigation-item__content{background:var(--wp--preset--color--tiffany);border-color:var(--wp--preset--color--tiffany)}
.gb-nav.wp-block-navigation .is-menu-open .wp-block-navigation-item__content.wp-block-navigation-item__content{color:var(--wp--preset--color--ink)}
.gb-nav .is-menu-open .wp-block-navigation__container{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:0 .75rem}
.gb-nav .is-menu-open .wp-block-navigation-item{justify-content:flex-start}
.gb-nav.wp-block-navigation .is-menu-open .wp-block-navigation-item__content.wp-block-navigation-item__content{text-align:left;justify-content:flex-start}
.gb-nav .is-menu-open .gb-nav-mobile-only{width:calc(50% - .375rem);margin-top:1.25rem}
.gb-nav.wp-block-navigation .is-menu-open .gb-nav-mobile-only .wp-block-navigation-item__content.wp-block-navigation-item__content{text-align:center;justify-content:center}
.gb-nav.wp-block-navigation .is-menu-open .wp-block-navigation-item{align-items:stretch}
.gb-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container{display:grid;grid-template-columns:1fr 1fr;gap:0 .75rem;justify-items:stretch;align-items:start}
.gb-nav.wp-block-navigation .is-menu-open .wp-block-navigation-item{grid-column:1/-1;width:auto}
.gb-nav.wp-block-navigation .is-menu-open .wp-block-navigation-item.gb-nav-mobile-only{grid-column:auto}

/* Foto nelle sezioni Chi sono e Lo studio */
.gb-photo--filled{position:relative;padding:0;overflow:hidden;background:none}
.gb-photo--filled .wp-block-image{position:absolute;inset:0;margin:0}
.gb-photo--filled .wp-block-image img{display:block;width:100%;height:100%;object-fit:cover}

section[id]{scroll-margin-top:5rem}

/* Lo studio: dissolvenza lenta tra due foto (18 s: 6 s ferma, 3 s di dissolvenza, 6 s ferma, 3 s di ritorno) */
.gb-photo--slides .wp-block-image{animation-duration:18s;animation-iteration-count:infinite;animation-timing-function:ease-in-out}
.gb-photo--slides .wp-block-image + .wp-block-image{opacity:0;animation-name:gb-dissolve}
@keyframes gb-dissolve{0%,33%{opacity:0}50%,83%{opacity:1}100%{opacity:0}}
.gb-pausa__chk{position:absolute;width:1px;height:1px;opacity:0;margin:0}
.gb-pausa__btn{position:absolute;right:.75rem;bottom:.75rem;z-index:3;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:rgba(15,43,46,.8);color:#fff;cursor:pointer}
.gb-pausa__btn svg{width:1.1rem;height:1.1rem}
.gb-pausa__chk:focus-visible + .gb-pausa__btn{outline:3px solid var(--wp--preset--color--tiffany);outline-offset:2px}
.gb-pausa__i-play{display:none}
.gb-pausa__chk:checked + .gb-pausa__btn .gb-pausa__i-pausa{display:none}
.gb-pausa__chk:checked + .gb-pausa__btn .gb-pausa__i-play{display:block}
.gb-pausa__chk:checked ~ .wp-block-image{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.gb-photo--slides .wp-block-image + .wp-block-image{animation:none;opacity:0}.gb-pausa__btn{display:none}}

/* Hero: animazione della colonna dorsale e del testo, come in Magic Patterns (riduci animazioni: nessun movimento) */
.gb-v{animation:gb-v-in .4s ease-out both;animation-delay:calc(.2s + var(--i,0) * .035s)}
.gb-sacro{animation:gb-fade-in .5s ease-out both;animation-delay:1.04s}
.gb-hero__copy{animation:gb-rise .5s ease-out both}
@keyframes gb-v-in{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
@keyframes gb-fade-in{from{opacity:0}to{opacity:1}}
@keyframes gb-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* Box «Schiena e collo»: colonna disegnata al posto dell'icona */
.gb-treat__art{position:relative;flex:1 1 auto;min-height:9rem;margin-bottom:1.5rem}
.gb-treat__art::before{content:"";position:absolute;left:50%;top:50%;height:min(100%,17rem);aspect-ratio:1;border-radius:50%;background:rgba(246,244,239,.3);transform:translate(-50%,-50%)}
.gb-treat__art .gb-spine-card{position:absolute;inset:0;width:100%;height:100%}
@keyframes gb-onda{0%,100%{transform:translateX(0)}50%{transform:translateX(7px)}}
@media (hover:hover){.gb-treat--main:hover .gb-vc{animation:gb-onda 1.1s ease-in-out both;animation-delay:calc(var(--i,0) * .04s)}}

/* Articolo del blog (desktop): testo allineato a sinistra con il titolo */
@media(min-width:1024px){
.gb-single-body{padding-inline:max(var(--gb-pad),calc((100% - 80rem)/2));padding-top:2rem}
.gb-single-body>*{max-width:46rem!important;margin-left:0!important;margin-right:auto!important;width:100%}
.gb-single-body>.gb-single__img{max-width:46rem!important;margin:0 0 3rem!important}
}

/* Pagina Trattamenti */
.gb-card__more{margin:1.25rem 0 0;font-size:.9375rem}
.gb-card__more a{color:var(--wp--preset--color--tiffany);text-decoration:underline;text-underline-offset:.2em}
.gb-home-more{margin-top:2.5rem}
.gb-stack{display:flex;flex-direction:column;gap:1.25rem;max-width:46rem}
.gb-bg-ink .gb-home-more .wp-block-button__link{color:#F6F4EF;border-color:rgba(246,244,239,.5)}
/* Testi della pagina Trattamenti: allineati a sinistra con il titolo su desktop */
@media(min-width:1024px){
.gb-page-text{padding-inline:max(var(--gb-pad),calc((100% - 80rem)/2))}
.gb-page-text>*{max-width:46rem!important;margin-left:0!important;margin-right:auto!important}
}
/* Pagine privacy e cookie: testo allineato a sinistra con il titolo su desktop */
@media(min-width:1024px){
.gb-prose-wrap{padding-inline:max(var(--gb-pad),calc((100% - 80rem)/2))}
.gb-prose-wrap>*{max-width:46rem!important;margin-left:0!important;margin-right:auto!important;width:100%}
}
.gb-review-cta{margin-top:1.5rem}
/* Canali social nel piè di pagina */
.gb-social{display:flex;flex-wrap:wrap;gap:.625rem;list-style:none;margin:1.5rem 0 0;padding:0}
.gb-social a{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid rgba(246,244,239,.3);border-radius:999px;color:#F6F4EF;transition:border-color .2s,color .2s}
.gb-social a:hover{border-color:#0ABAB5;color:#0ABAB5}
.gb-social a:focus-visible{outline:2px solid #0ABAB5;outline-offset:3px}
.gb-social svg{width:1.25rem;height:1.25rem}
/* Condivisione articolo (sfondo chiaro) */
.gb-share{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(15,43,46,.12)}
.gb-share__t{margin:0 0 1rem;font-size:.875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--tiffany-dark)}
.gb-share .gb-social a{border-color:rgba(15,43,46,.3);color:#0F2B2E}
.gb-share .gb-social a:hover{border-color:#0ABAB5;color:#0ABAB5}

/* Pagina La visita: testo e foto affiancati su desktop, in colonna su mobile */
.gb-visit-duo{display:grid;gap:2.5rem;align-items:center;width:100%;max-width:72rem;margin-inline:auto}
.gb-visit-duo__photo img{display:block;width:100%;height:auto;border-radius:1.25rem}
@media(min-width:1024px){.gb-visit-duo{grid-template-columns:1fr 1fr;gap:4rem}}
/* Chi sono (desktop): la foto parte in linea con il titolo, non al centro della colonna */
@media(min-width:1024px){
.page-id-27 .gb-about__grid{align-items:start}
.page-id-27 .gb-about__grid>.gb-photo{margin-top:2.95rem}
}
