:root{--bes-ink:#082f55;--bes-muted:#63798c;--bes-line:rgba(8,47,85,.22);--bes-pale:#edf5fa;--bes-bg:#f5f9fc}
.bes-lead{font-size:clamp(1.32rem,2.2vw,1.85rem);line-height:1.55;margin:0 0 2em;color:var(--bes-ink)}
.bes-quote{width:min(980px,calc(100vw - 48px));margin:clamp(55px,8vw,105px) 50%;transform:translateX(-50%);padding:0;border:0;text-align:center;color:var(--bes-ink)}
.bes-quote--large p{font-size:clamp(2.2rem,5vw,4.9rem)}.bes-quote--medium p{font-size:clamp(1.7rem,3.5vw,3.2rem)}
.bes-quote p{line-height:1.05;margin:0}.bes-quote cite{display:block;margin-top:22px;font:normal .7rem/1.4 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--bes-muted)}
.bes-note{margin:48px 0;padding:30px 34px;border-left:3px solid #0a4f82;background:var(--bes-pale)}.bes-note--neutral{background:#f4f4f1;border-color:#888}.bes-note--dark{background:var(--bes-ink);color:#fff;border-color:#fff}.bes-note h3{margin:0 0 12px!important;font-size:1.55rem!important}.bes-note__text p:last-child{margin-bottom:0}
.bes-divider{text-align:center;margin:58px 0;color:#0a4f82;letter-spacing:.3em}
.bes-sources{margin-top:70px;padding-top:32px;border-top:1px solid var(--bes-line)}.bes-sources h2{font-size:2rem!important;margin:0 0 22px!important}.bes-sources__content{font-size:.92rem;color:var(--bes-muted)}
.bes-inner-hero{position:relative;min-height:clamp(420px,65vh,760px);width:100vw;margin:60px 50%;transform:translateX(-50%);background-size:cover;background-color:#dce7ef;display:flex;align-items:flex-end;color:#fff;overflow:hidden}.bes-inner-hero.has-overlay:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(2,20,39,.72),rgba(2,20,39,.04) 65%)}.bes-inner-hero__content{position:relative;z-index:1;width:min(1100px,calc(100% - 48px));margin:0 auto;padding:clamp(42px,7vw,90px) 0}.bes-inner-hero h2{font-size:clamp(3rem,7vw,7rem)!important;line-height:.95!important;margin:.12em 0!important;color:inherit!important}.bes-inner-hero p{font-size:clamp(1.15rem,2vw,1.6rem);max-width:720px}.bes-eyebrow{font:600 .72rem/1.4 Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}.bes-hero-credit{position:absolute;right:18px;bottom:12px;z-index:2;font:normal .65rem Arial,sans-serif;opacity:.8}
.bes-single-image{margin:clamp(45px,7vw,85px) auto}.bes-width--content{max-width:760px}.bes-width--wide{width:min(1120px,calc(100vw - 48px));max-width:none}.bes-width--full{width:100vw;max-width:none;margin-left:50%;transform:translateX(-50%)}.bes-single-image img{display:block;width:100%;height:auto}.bes-ratio--landscape img{aspect-ratio:16/9;object-fit:cover}.bes-ratio--square img{aspect-ratio:1;object-fit:cover}.bes-ratio--portrait img{aspect-ratio:4/5;object-fit:cover}
.bes-single-image figcaption,.bes-gallery figcaption{font:normal .73rem/1.5 Arial,sans-serif;color:var(--bes-muted);margin-top:10px}.bes-caption,.bes-credit{display:block}.bes-credit{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;margin-top:4px}
.bes-gallery{width:min(1120px,calc(100vw - 48px));margin:clamp(45px,7vw,90px) 50%;transform:translateX(-50%);display:grid;gap:20px;align-items:start}.bes-gallery figure{margin:0!important}.bes-gallery img{display:block;width:100%;height:auto}.bes-gallery.is-cropped img{height:420px;object-fit:cover}
.bes-gallery--2{grid-template-columns:repeat(2,minmax(0,1fr))}.bes-gallery--first-wide{grid-template-columns:1.35fr .65fr}.bes-gallery--second-wide{grid-template-columns:.65fr 1.35fr}.bes-gallery--staggered figure:nth-child(2){margin-top:80px!important}
.bes-gallery--3{grid-template-columns:repeat(3,minmax(0,1fr))}.bes-gallery--3.bes-gallery--first-feature{grid-template-columns:2fr 1fr}.bes-gallery--3.bes-gallery--first-feature figure:first-child{grid-row:span 2}.bes-gallery--3.bes-gallery--last-feature{grid-template-columns:1fr 2fr}.bes-gallery--3.bes-gallery--last-feature figure:last-child{grid-row:1/span 2;grid-column:2}
.bes-gallery--4{grid-template-columns:repeat(2,minmax(0,1fr))}.bes-gallery--4.bes-gallery--first-feature figure:first-child{grid-column:span 2}.bes-gallery--4.bes-gallery--last-feature figure:last-child{grid-column:span 2}
.bes-gallery--top-feature{grid-template-columns:repeat(2,1fr)}.bes-gallery--top-feature figure:first-child{grid-column:span 2}.bes-gallery--left-feature{grid-template-columns:2fr 1fr}.bes-gallery--left-feature figure:first-child{grid-row:span 2}.bes-gallery--right-feature{grid-template-columns:1fr 2fr}.bes-gallery--right-feature figure:first-child{grid-column:2;grid-row:span 2}.bes-gallery--right-feature figure:nth-child(2),.bes-gallery--right-feature figure:nth-child(3){grid-column:1}
.bes-artwork{width:min(1050px,calc(100vw - 48px));margin:70px 50%;transform:translateX(-50%);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);border-top:1px solid var(--bes-line);border-bottom:1px solid var(--bes-line)}.bes-artwork>img{width:100%;height:100%;object-fit:cover}.bes-artwork__body{padding:38px}.bes-artwork__body h3{font-size:clamp(2rem,4vw,3.6rem)!important;margin:0 0 20px!important}.bes-artwork__body p{margin:.35em 0}.bes-artwork__author{font-style:italic}.bes-artwork__caption{margin-top:22px!important;color:var(--bes-muted)}
.bes-info-card{margin:48px 0;border:1px solid var(--bes-line);background:rgba(255,255,255,.5)}.bes-info-card__body{padding:30px 34px}.bes-info-card h3{font-size:clamp(1.9rem,3vw,2.8rem)!important;margin:0 0 18px!important}.bes-info-card p{margin:.45em 0}.bes-info-card--artist{border-left:4px solid #376b91}.bes-info-card--museum{border-left:4px solid #8c7653}.bes-info-card--book{border-left:4px solid #7a4d55}
.bes-qa{margin:48px 0;padding-top:28px;border-top:1px solid var(--bes-line)}.bes-qa__question{font-size:clamp(1.45rem,2.5vw,2.1rem)!important;margin:0 0 18px!important;color:var(--bes-ink)}.bes-qa__answer{font-size:1.05em}
@media(max-width:760px){.bes-gallery,.bes-artwork,.bes-width--wide{width:calc(100vw - 32px)}.bes-gallery--2,.bes-gallery--3,.bes-gallery--4,.bes-gallery--first-wide,.bes-gallery--second-wide,.bes-gallery--first-feature,.bes-gallery--last-feature,.bes-gallery--top-feature,.bes-gallery--left-feature,.bes-gallery--right-feature,.bes-artwork{grid-template-columns:1fr!important}.bes-gallery figure{grid-column:auto!important;grid-row:auto!important;margin-top:0!important}.bes-gallery.is-cropped img{height:auto}.bes-artwork__body{padding:26px 4px}.bes-inner-hero{min-height:520px}.bes-inner-hero__content{width:calc(100% - 32px)}}
/* v3 — workflow editoriale */
.bes-prose{margin:2rem auto;max-width:760px;font-size:1.08rem;line-height:1.85;color:var(--bes-ink)}
.bes-prose.is-justified{text-align:justify;text-justify:inter-word;hyphens:auto}
.bes-prose.is-large{font-size:1.22rem;max-width:820px}.bes-prose.is-small{font-size:.98rem;max-width:700px}
.bes-prose.has-dropcap>p:first-child:first-letter{float:left;font-size:4.8em;line-height:.76;padding:.08em .12em 0 0;color:#0a4f82}
.bes-prose.is-narrow{max-width:660px}.bes-prose.is-wide{max-width:900px}
.bes-hero-slider{position:relative;width:100vw;margin:0 50% 70px;transform:translateX(-50%);min-height:clamp(430px,62vh,760px);overflow:hidden;background:#dce7ef;color:#fff}
.bes-hero-slider__slides,.bes-hero-slider__slide{position:absolute;inset:0}.bes-hero-slider__slide{opacity:0;transition:opacity .9s ease;background-size:cover;background-position:center}.bes-hero-slider__slide.is-active{opacity:1}
.bes-hero-slider__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(2,20,39,.72),rgba(2,20,39,.02) 68%);z-index:2}
.bes-hero-slider__content{position:absolute;left:50%;bottom:0;transform:translateX(-50%);z-index:3;width:min(1100px,calc(100% - 48px));padding:clamp(38px,6vw,78px) 0}
.bes-hero-slider h2{font-size:clamp(3rem,7vw,7rem)!important;line-height:.95!important;color:#fff!important;margin:.12em 0!important}.bes-hero-slider p{max-width:720px;font-size:clamp(1.1rem,2vw,1.55rem)}
.bes-hero-slider__nav{position:absolute;right:22px;bottom:18px;z-index:4;display:flex;gap:8px}.bes-hero-slider__nav button{width:9px;height:9px;padding:0;border:1px solid #fff;border-radius:50%;background:transparent;cursor:pointer}.bes-hero-slider__nav button.is-active{background:#fff}
.bes-photo-sequence{width:min(1120px,calc(100vw - 48px));margin:clamp(50px,8vw,95px) 50%;transform:translateX(-50%);display:grid;gap:20px}.bes-photo-sequence figure{margin:0}.bes-photo-sequence img{display:block;width:100%;height:auto}.bes-photo-sequence.is-cropped img{height:360px;object-fit:cover}
.bes-photo-sequence.layout-grid-2{grid-template-columns:repeat(2,1fr)}.bes-photo-sequence.layout-grid-3{grid-template-columns:repeat(3,1fr)}.bes-photo-sequence.layout-editorial{grid-template-columns:repeat(6,1fr)}.bes-photo-sequence.layout-editorial figure:nth-child(6n+1){grid-column:span 4}.bes-photo-sequence.layout-editorial figure:nth-child(6n+2){grid-column:span 2}.bes-photo-sequence.layout-editorial figure:nth-child(6n+3),.bes-photo-sequence.layout-editorial figure:nth-child(6n+4){grid-column:span 3}.bes-photo-sequence.layout-editorial figure:nth-child(6n+5),.bes-photo-sequence.layout-editorial figure:nth-child(6n+6){grid-column:span 3}
.bes-photo-sequence.layout-rhythm{grid-template-columns:repeat(4,1fr)}.bes-photo-sequence.layout-rhythm figure:nth-child(5n+1){grid-column:span 4}.bes-photo-sequence.layout-rhythm figure:nth-child(5n+2),.bes-photo-sequence.layout-rhythm figure:nth-child(5n+3){grid-column:span 2}.bes-photo-sequence.layout-rhythm figure:nth-child(5n+4),.bes-photo-sequence.layout-rhythm figure:nth-child(5n+5){grid-column:span 2}
.bes-section-title{margin:70px auto 30px;max-width:900px;border-top:1px solid var(--bes-line);padding-top:22px}.bes-section-title h2{font-size:clamp(2rem,4vw,3.8rem)!important;margin:0!important}.bes-section-title p{color:var(--bes-muted);margin:.6em 0 0}
@media(max-width:760px){.bes-prose,.bes-prose.is-wide,.bes-prose.is-narrow{max-width:none}.bes-hero-slider{min-height:520px}.bes-photo-sequence,.bes-photo-sequence.layout-grid-2,.bes-photo-sequence.layout-grid-3,.bes-photo-sequence.layout-editorial,.bes-photo-sequence.layout-rhythm{width:calc(100vw - 32px);grid-template-columns:1fr}.bes-photo-sequence figure{grid-column:auto!important}.bes-photo-sequence.is-cropped img{height:auto}}

/* Barcode Editorial Studio 4 — workflow e hero per singolo contenuto */
.bes-default-justify .entry-content p,
.bes-default-justify .wp-block-post-content p,
.entry-content .bes-text-justify,
.wp-block-post-content .bes-text-justify,
.bes-prose.is-justified{ text-align:justify; text-justify:inter-word; }
.bes-default-hyphenate .entry-content p,
.bes-default-hyphenate .wp-block-post-content p,
.entry-content .bes-text-justify,
.bes-prose.is-justified{ hyphens:auto; -webkit-hyphens:auto; }
.entry-content p,.wp-block-post-content p,.bes-prose{ line-height:var(--bes-line-height,1.78); }

.bes-post-hero{position:relative;width:100%;height:var(--bes-post-hero-height,var(--bes-hero-default,62vh));min-height:320px;overflow:hidden;margin:0 0 clamp(2rem,5vw,5rem);background:#102842;isolation:isolate}
.bes-post-hero::after{content:"";position:absolute;inset:0;background:rgba(5,20,38,var(--bes-post-hero-overlay,.18));z-index:2;pointer-events:none}
.bes-post-hero__slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease;z-index:1}
.bes-post-hero__slide.is-active{opacity:1}
.bes-post-hero__slide img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center}
.bes-post-hero.bes-position-top img{object-position:center top}
.bes-post-hero.bes-position-bottom img{object-position:center bottom}
.bes-post-hero__prev,.bes-post-hero__next{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:46px;height:46px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(8,28,49,.34);color:#fff;font:300 32px/1 serif;cursor:pointer;backdrop-filter:blur(5px)}
.bes-post-hero__prev{left:22px}.bes-post-hero__next{right:22px}
.bes-post-hero__dots{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:8px;z-index:4}
.bes-post-hero__dots span{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5)}
.bes-post-hero__dots span.is-active{background:#fff;transform:scale(1.25)}
@media(max-width:767px){.bes-post-hero{height:var(--bes-hero-mobile,46vh);min-height:260px}.bes-post-hero__prev,.bes-post-hero__next{width:38px;height:38px;font-size:26px}.bes-post-hero__prev{left:10px}.bes-post-hero__next{right:10px}}


/* =========================================================
   BARCODE EDITORIAL STUDIO 5 — Pagine Gutenberg native
   ========================================================= */
.bes-page { color:#0b3152; }
.bes-page > * { margin-top: clamp(45px,7vw,95px); margin-bottom: clamp(45px,7vw,95px); }
.bes-page-intro { padding:clamp(55px,8vw,110px) 0; }
.bes-page-intro,.bes-page-intro *,.bes-page .has-text-align-center { text-align:center!important;text-align-last:center!important;word-spacing:normal!important;hyphens:none!important; }
.bes-page-title { font-size:clamp(3.2rem,7vw,6.3rem)!important;line-height:.98!important;letter-spacing:-.05em; }
.bes-eyebrow { font-family:Arial,Helvetica,sans-serif!important;font-size:.68rem!important;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:#687b8e; }
.bes-page-split { gap:clamp(45px,8vw,110px)!important;align-items:flex-start!important;border-top:1px solid rgba(18,57,93,.18);padding-top:clamp(55px,8vw,100px); }
.bes-page-split > .wp-block-column:first-child h2 { font-size:clamp(2.7rem,5vw,4.7rem);line-height:1;letter-spacing:-.045em; }
.bes-page-split > .wp-block-column:last-child p { font-size:clamp(1.08rem,1.55vw,1.35rem);line-height:1.67; }
.bes-page-quote { padding:clamp(48px,7vw,90px)!important;background:#0b2f4e;color:#fff;border:0!important;text-align:center; }
.bes-page-quote p { font-size:clamp(2rem,4.2vw,3.8rem)!important;line-height:1.16!important;font-style:italic;text-align:center!important;text-align-last:center!important; }
.bes-topic-grid { border-top:1px solid rgba(18,57,93,.18);gap:0!important; }
.bes-topic-grid > .wp-block-column { padding:clamp(34px,5vw,60px); }
.bes-topic-grid > .wp-block-column:first-child { border-right:1px solid rgba(18,57,93,.18); }
.bes-topic-grid h3 { font-size:clamp(1.8rem,3vw,2.8rem);margin-top:1.4em; }
.bes-publications { padding:clamp(35px,6vw,70px)!important;background:#eaf2f7;list-style:none; }
.bes-publications li { padding:18px 0;border-bottom:1px solid rgba(18,57,93,.18); }
.bes-plan-grid { gap:22px!important; }
.bes-plan-card { padding:clamp(34px,5vw,58px);border:1px solid rgba(18,57,93,.18);background:#fff; }
.bes-plan-card.is-featured { border-color:#0b2f4e;box-shadow:0 20px 55px rgba(11,47,78,.09); }
.bes-plan-card small { font:700 .68rem Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#687b8e; }
.bes-free-reading,.bes-direct-email { padding:clamp(45px,7vw,78px)!important;background:#eaf2f7; }
.bes-direct-email h3 { overflow-wrap:anywhere; }

.bes-contact-form { display:grid;gap:28px;padding:clamp(30px,5vw,58px);border:1px solid rgba(18,57,93,.18);background:rgba(255,255,255,.5); }
.bes-contact-form__row { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
.bes-contact-form label { display:grid;gap:9px;font:700 .7rem Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;text-align:left!important; }
.bes-contact-form label small { color:#687b8e; }
.bes-contact-form input,.bes-contact-form textarea { width:100%;border:0;border-bottom:1px solid rgba(18,57,93,.28);border-radius:0;background:transparent;padding:12px 4px;font:1.05rem Georgia,serif;color:#0b2f4e; }
.bes-contact-form textarea { resize:vertical; }
.bes-contact-form__consent { display:flex!important;align-items:flex-start;gap:10px;font:400 .82rem/1.55 Georgia,serif!important;letter-spacing:0!important;text-transform:none!important; }
.bes-contact-form__consent input { width:18px;flex:0 0 18px;margin-top:3px; }
.bes-contact-form button { width:max-content;min-height:52px;padding:0 28px;border:1px solid #0b2f4e;background:#0b2f4e;color:#fff;font:700 .7rem Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer; }
.bes-contact-form button[disabled] { opacity:.55;cursor:wait; }
.bes-contact-form__status { font-size:.92rem;line-height:1.5; }
.bes-contact-form__status.is-error { color:#8e2631; }
.bes-contact-form__status.is-success { color:#1f674a; }

@media(max-width:700px){
 .bes-page-split,.bes-plan-grid,.bes-contact-form__row{grid-template-columns:1fr!important;}
 .bes-topic-grid{display:block!important;}
 .bes-topic-grid>.wp-block-column{padding:32px 0;border-right:0!important;border-bottom:1px solid rgba(18,57,93,.18);}
 .bes-page-title{font-size:3rem!important;}
 .bes-contact-form button{width:100%;}
}


/* =========================================================
   BARCODE EDITORIAL STUDIO 5.1 — Pattern pagine approvati
   ========================================================= */
.bes-page{width:min(1180px,calc(100% - 40px));max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;overflow:visible!important}
.entry-content>.bes-page,.wp-block-post-content>.bes-page{width:min(1180px,calc(100vw - 48px))!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
.bes-page,.bes-page *{box-sizing:border-box;min-width:0}
.bes-page .has-text-align-center,.bes-page-intro,.bes-page-intro *,.bes-page-closing,.bes-page-closing *,.bes-free-reading,.bes-free-reading *,.bes-faq>.bes-eyebrow,.bes-faq>h2{text-align:center!important;text-align-last:center!important;word-spacing:normal!important;hyphens:none!important}
.bes-page>*,.bes-page .alignwide{max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
.bes-page-intro{max-width:950px!important;padding:clamp(70px,9vw,130px) 20px!important}
.bes-page-intro>p:not(.bes-eyebrow){max-width:800px;margin-left:auto!important;margin-right:auto!important;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.55!important}
.bes-page-title{max-width:980px;margin-left:auto!important;margin-right:auto!important}
.bes-page-split{display:grid!important;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr)!important;gap:clamp(55px,8vw,125px)!important;padding:clamp(70px,9vw,125px) 0!important}
.bes-page-split>.wp-block-column{margin:0!important}
.bes-page-split>.wp-block-column:last-child p{text-align:justify;text-align-last:left;hyphens:auto;line-height:1.72!important}
.bes-method{background:#eaf2f7;padding:clamp(50px,7vw,85px)!important}
.bes-identity{max-width:860px!important;padding:clamp(45px,7vw,80px)!important;border-top:1px solid rgba(18,57,93,.18);border-bottom:1px solid rgba(18,57,93,.18)}
.bes-curator-identity{font-size:clamp(1.7rem,3vw,2.9rem)!important;line-height:1.28!important}
.bes-books{max-width:1000px!important}
.bes-plans{width:100%!important;max-width:1180px!important;padding:clamp(65px,8vw,110px) clamp(20px,4vw,50px)!important;background:rgba(234,242,247,.58)}
.bes-plans>.bes-eyebrow,.bes-plans>h2,.bes-plans>p{text-align:center!important;text-align-last:center!important;max-width:850px;margin-left:auto!important;margin-right:auto!important}
.bes-plan-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:1080px!important;margin:55px auto 0!important;gap:22px!important}
.bes-plan-grid>.wp-block-column{margin:0!important}
.bes-plan-card{display:flex!important;flex-direction:column;min-height:100%;padding:clamp(36px,5vw,58px)!important}
.bes-plan-card .wp-block-buttons{margin-top:auto}
.bes-donation{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center;gap:40px;max-width:1080px!important;margin:22px auto 0!important;padding:clamp(32px,5vw,50px)!important;border:1px solid rgba(18,57,93,.18)}
.bes-free-reading{max-width:960px!important;margin:clamp(75px,10vw,135px) auto!important;padding:clamp(50px,7vw,85px)!important}
.bes-free-reading p{max-width:760px;margin-left:auto!important;margin-right:auto!important;font-size:clamp(1.2rem,1.8vw,1.55rem)}
.bes-topic-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}
.bes-topic-grid>.wp-block-column{margin:0!important}
.bes-page-quote{width:100%!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;transform:none!important}
.bes-faq{max-width:920px!important;margin:clamp(75px,9vw,120px) auto!important}
.bes-faq details{border-bottom:1px solid rgba(18,57,93,.18)}
.bes-faq summary{padding:25px 40px 25px 0;font:400 clamp(1.2rem,2vw,1.65rem)/1.35 Georgia,serif;text-align:left!important;cursor:pointer}
.bes-faq details p{text-align:left!important;text-align-last:left!important;hyphens:none!important;padding:0 40px 24px 0}
.bes-actions{display:flex!important;justify-content:center!important;gap:14px!important;max-width:760px!important;margin:35px auto 0!important}
.bes-actions>.wp-block-column{flex:0 1 auto!important;margin:0!important}
.bes-page-closing{max-width:980px!important;padding:clamp(70px,9vw,125px) 20px!important;border-top:1px solid rgba(18,57,93,.18)}
.bes-page-closing>p{max-width:700px;margin-left:auto!important;margin-right:auto!important}
.bes-contact-info{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;border-top:1px solid rgba(18,57,93,.18)}
.bes-contact-info>.wp-block-column{padding:clamp(34px,5vw,54px)!important;border-bottom:1px solid rgba(18,57,93,.18);margin:0!important}
.bes-contact-info>.wp-block-column:not(:last-child){border-right:1px solid rgba(18,57,93,.18)}
@media(max-width:900px){
 .bes-page,.entry-content>.bes-page,.wp-block-post-content>.bes-page{width:calc(100vw - 32px)!important}
 .bes-page-split,.bes-plan-grid,.bes-donation,.bes-topic-grid,.bes-contact-info{grid-template-columns:1fr!important}
 .bes-page-split>.wp-block-column:last-child p{text-align:left;text-align-last:left;hyphens:none}
 .bes-topic-grid>.wp-block-column,.bes-contact-info>.wp-block-column{border-right:0!important}
 .bes-donation .wp-block-buttons,.bes-donation .wp-block-button,.bes-donation .wp-block-button__link{width:100%}
}
@media(max-width:650px){
 .bes-page,.entry-content>.bes-page,.wp-block-post-content>.bes-page{width:calc(100vw - 24px)!important}
 .bes-page-title{font-size:3rem!important}
 .bes-plans{padding-left:0!important;padding-right:0!important}
 .bes-actions{display:grid!important;grid-template-columns:1fr!important;width:100%}
 .bes-actions .wp-block-button,.bes-actions .wp-block-button__link{width:100%}
}

/* =========================================================
   BARCODE EDITORIAL STUDIO 5.2 — FIX DEFINITIVO PAGINE
   Neutralizza alignwide/alignfull del tema all'interno dei pattern.
   ========================================================= */
html,body{overflow-x:clip!important}

body .entry-content > .bes-page.alignwide,
body .wp-block-post-content > .bes-page.alignwide,
body .entry-content .bes-page.alignwide,
body .wp-block-post-content .bes-page.alignwide,
body .bes-page.alignwide,
body .bes-page{
  position:relative!important;
  left:50%!important;
  right:auto!important;
  width:min(1180px,calc(100vw - 48px))!important;
  max-width:1180px!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  transform:translateX(-50%)!important;
  overflow:visible!important;
}

/* Gli elementi interni devono essere centrati nel wrapper e non uscire dal viewport. */
body .bes-page > .alignwide,
body .bes-page > .alignfull,
body .bes-page .alignwide,
body .bes-page .alignfull,
body .bes-page .wp-block-columns.alignwide,
body .bes-page .wp-block-group.alignwide,
body .bes-page .wp-block-quote.alignwide{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  transform:none!important;
}

body .bes-page .wp-block-columns{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
}

body .bes-page .wp-block-column{
  min-width:0!important;
  max-width:100%!important;
}

/* Mantiene i contenitori approvati a larghezza controllata. */
body .bes-page .bes-page-intro{max-width:950px!important}
body .bes-page .bes-page-closing{max-width:980px!important}
body .bes-page .bes-free-reading{max-width:960px!important}
body .bes-page .bes-faq{max-width:920px!important}
body .bes-page .bes-plans{max-width:1180px!important}
body .bes-page .bes-plan-grid,
body .bes-page .bes-donation{max-width:1080px!important}

/* Ripristino esplicito della griglia abbonamenti. */
body .bes-page-abbonamenti .bes-plan-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
  width:100%!important;
  margin:55px auto 0!important;
}
body .bes-page-abbonamenti .bes-plan-grid > .wp-block-column{
  width:auto!important;
  flex:none!important;
  margin:0!important;
}
body .bes-page-abbonamenti .bes-donation{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  width:100%!important;
  margin:22px auto 0!important;
}

@media(max-width:900px){
  body .entry-content > .bes-page.alignwide,
  body .wp-block-post-content > .bes-page.alignwide,
  body .entry-content .bes-page.alignwide,
  body .wp-block-post-content .bes-page.alignwide,
  body .bes-page.alignwide,
  body .bes-page{
    width:calc(100vw - 32px)!important;
  }
  body .bes-page-abbonamenti .bes-plan-grid,
  body .bes-page-abbonamenti .bes-donation{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:650px){
  body .entry-content > .bes-page.alignwide,
  body .wp-block-post-content > .bes-page.alignwide,
  body .entry-content .bes-page.alignwide,
  body .wp-block-post-content .bes-page.alignwide,
  body .bes-page.alignwide,
  body .bes-page{
    width:calc(100vw - 24px)!important;
  }
}


/* =========================================================
   BARCODE EDITORIAL STUDIO 5.3 — PAGINE APPROVATE STABILI
   Il tema viene aperto a tutta larghezza solo su queste pagine.
   ========================================================= */

body.bes-has-editorial-page .gt-page-content,
body.bes-has-editorial-page .entry-content.gt-page-content,
body.bes-has-editorial-page main .entry-content {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: visible !important;
}

body.bes-has-editorial-page .entry-content > .bes-page,
body.bes-has-editorial-page .wp-block-post-content > .bes-page,
body.bes-has-editorial-page .bes-page,
body.bes-has-editorial-page .bes-page.alignwide {
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: min(1180px, calc(100% - 48px)) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: visible !important;
}

body.bes-has-editorial-page .bes-page > .alignwide,
body.bes-has-editorial-page .bes-page > .alignfull,
body.bes-has-editorial-page .bes-page .alignwide,
body.bes-has-editorial-page .bes-page .alignfull {
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Pagina Abbonamenti: ripristino integrale dei due pacchetti approvati. */
body.bes-has-editorial-page .bes-page-support .bes-plans {
  width: 100% !important;
  max-width: 1180px !important;
  padding: clamp(80px, 10vw, 140px) clamp(20px, 4vw, 50px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  background: rgba(234, 242, 247, .58) !important;
}

body.bes-has-editorial-page .bes-page-support .bes-plan-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  width: 100% !important;
  max-width: 1080px !important;
  margin: 55px auto 0 !important;
  align-items: stretch !important;
}

body.bes-has-editorial-page .bes-page-support .bes-plan-grid > .wp-block-column {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: auto !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: clamp(38px, 5vw, 58px) !important;
  border: 1px solid rgba(18, 57, 93, .18) !important;
  background: #fff !important;
}

body.bes-has-editorial-page .bes-page-support .bes-plan-grid > .wp-block-column:nth-child(2) {
  border-color: #0b2f4e !important;
  box-shadow: 0 20px 60px rgba(11, 47, 78, .09) !important;
}

body.bes-has-editorial-page .bes-page-support .bes-plan-grid > .wp-block-column .wp-block-buttons {
  margin-top: auto !important;
  padding-top: 24px !important;
}

body.bes-has-editorial-page .bes-page-support .bes-plan-grid h2,
body.bes-has-editorial-page .bes-page-support .bes-plan-grid h3,
body.bes-has-editorial-page .bes-page-support .bes-plan-grid p,
body.bes-has-editorial-page .bes-page-support .bes-plan-grid li {
  text-align: left !important;
  text-align-last: left !important;
  word-spacing: normal !important;
  hyphens: none !important;
}

body.bes-has-editorial-page .bes-page-support .bes-donation {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) auto !important;
  gap: 45px !important;
  width: 100% !important;
  max-width: 1080px !important;
  margin: 22px auto 0 !important;
  padding: clamp(35px, 5vw, 52px) !important;
  border: 1px solid rgba(18, 57, 93, .18) !important;
  align-items: center !important;
}

/* Pulsanti: geometria stabile e contrasto sempre leggibile, anche in hover. */
body.bes-has-editorial-page .bes-page .wp-block-buttons {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
}

body.bes-has-editorial-page .bes-page .wp-block-button {
  margin: 0 !important;
}

body.bes-has-editorial-page .bes-page .wp-block-button__link,
body.bes-has-editorial-page .bes-page .wp-element-button {
  display: inline-flex !important;
  min-height: 54px !important;
  padding: 16px 28px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #0b2f4e !important;
  border-radius: 0 !important;
  background: #0b2f4e !important;
  color: #fff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .14em !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

body.bes-has-editorial-page .bes-page .wp-block-button__link:hover,
body.bes-has-editorial-page .bes-page .wp-block-button__link:focus,
body.bes-has-editorial-page .bes-page .wp-element-button:hover,
body.bes-has-editorial-page .bes-page .wp-element-button:focus {
  border-color: #0b2f4e !important;
  background: #fff !important;
  color: #0b2f4e !important;
  opacity: 1 !important;
}

body.bes-has-editorial-page .bes-page-support .bes-free-reading,
body.bes-has-editorial-page .bes-page-support .bes-faq,
body.bes-has-editorial-page .bes-page-support .bes-page-closing {
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 900px) {
  body.bes-has-editorial-page .entry-content > .bes-page,
  body.bes-has-editorial-page .wp-block-post-content > .bes-page,
  body.bes-has-editorial-page .bes-page,
  body.bes-has-editorial-page .bes-page.alignwide {
    width: calc(100% - 32px) !important;
  }

  body.bes-has-editorial-page .bes-page-support .bes-plan-grid,
  body.bes-has-editorial-page .bes-page-support .bes-donation {
    grid-template-columns: 1fr !important;
  }

  body.bes-has-editorial-page .bes-page-support .bes-donation .wp-block-button,
  body.bes-has-editorial-page .bes-page-support .bes-donation .wp-block-button__link {
    width: 100% !important;
  }
}

@media (max-width: 650px) {
  body.bes-has-editorial-page .entry-content > .bes-page,
  body.bes-has-editorial-page .wp-block-post-content > .bes-page,
  body.bes-has-editorial-page .bes-page,
  body.bes-has-editorial-page .bes-page.alignwide {
    width: calc(100% - 24px) !important;
  }

  body.bes-has-editorial-page .bes-page .wp-block-button,
  body.bes-has-editorial-page .bes-page .wp-block-button__link {
    width: 100% !important;
  }
}

/* =========================================================
   v5.4 — PAGINA ABBONAMENTI PROPRIETARIA
   ========================================================= */
body:has(.bes-subscriptions-page){overflow-x:clip!important}
.wp-block-barcode-editorial-page-subscriptions{max-width:none!important;margin:0!important}
.bes-subscriptions-page,.bes-subscriptions-page *{box-sizing:border-box}
.bes-subscriptions-page{--b:#12395d;--bd:#0b2f4e;--m:#687b8e;--l:rgba(18,57,93,.18);--s:#eaf2f7;--w:#fff;position:relative;left:50%;width:min(1180px,calc(100vw - 48px));max-width:none;margin:0;transform:translateX(-50%);color:var(--b);overflow:hidden;font-family:Georgia,"Times New Roman",serif}
.bes-subscriptions-page p,.bes-subscriptions-page h2,.bes-subscriptions-page h3,.bes-subscriptions-page blockquote{max-width:100%;margin-top:0;word-break:normal!important;overflow-wrap:break-word}
.bes-subscriptions-page p{margin-bottom:0}.bes-subscriptions-page a{text-decoration:none!important}
.bes-sub-label{display:block;margin-bottom:20px;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:700;line-height:1.4;letter-spacing:.2em;text-transform:uppercase;color:var(--m)}
.bes-sub-intro,.bes-sub-plans-heading,.bes-sub-free,.bes-sub-benefits-heading,.bes-sub-faq-heading,.bes-sub-closing{text-align:center!important;text-align-last:center!important;word-spacing:normal!important;hyphens:none!important}
.bes-sub-intro{max-width:1000px;margin:0 auto;padding:clamp(78px,10vw,145px) 20px clamp(80px,9vw,130px)}
.bes-sub-intro h2{max-width:950px;margin:0 auto 34px;font-size:clamp(49px,7vw,96px);font-weight:400;line-height:.98;letter-spacing:-.05em;text-wrap:balance}.bes-sub-lead{max-width:800px;margin:0 auto;font-size:clamp(22px,2vw,29px);line-height:1.55;color:var(--m);text-wrap:balance}
.bes-sub-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:42px}
.bes-sub-reason{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:clamp(55px,8vw,125px);padding:clamp(80px,10vw,145px) 0;border-top:1px solid var(--l);align-items:start}.bes-sub-reason>*{min-width:0}.bes-sub-reason-heading{position:sticky;top:35px}.bes-sub-reason h2,.bes-sub-plans-heading h2,.bes-sub-benefits-heading h2,.bes-sub-faq-heading h2,.bes-sub-closing h2{margin:0;font-size:clamp(42px,5.2vw,72px);font-weight:400;line-height:1;letter-spacing:-.045em;text-wrap:balance}.bes-sub-reason-copy{font-size:clamp(19px,1.55vw,23px);line-height:1.78;color:var(--bd);text-align:justify;text-align-last:left;hyphens:auto}.bes-sub-reason-copy p+p{margin-top:1.5em}
.bes-sub-plans{padding:clamp(80px,10vw,140px) 0;background:rgba(234,242,247,.58)}.bes-sub-plans-inner{width:min(1080px,calc(100% - 40px));margin:0 auto}.bes-sub-plans-heading{max-width:850px;margin:0 auto clamp(55px,7vw,90px)}.bes-sub-plans-heading p{max-width:680px;margin:26px auto 0;font-size:20px;line-height:1.7;color:var(--m)}.bes-sub-plans-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.bes-sub-card{position:relative;display:flex;min-width:0;padding:clamp(38px,5vw,58px);flex-direction:column;border:1px solid var(--l);background:var(--w);text-align:left}.bes-sub-card.is-featured{border-color:var(--bd);box-shadow:0 20px 60px rgba(11,47,78,.09)}.bes-sub-badge{position:absolute;top:0;right:0;padding:11px 16px;background:var(--bd);font-family:Arial,Helvetica,sans-serif;font-size:9px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:#fff}.bes-sub-type{display:block;margin-bottom:22px;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--m)}.bes-sub-card h3{margin:0 0 20px;font-size:clamp(32px,3.5vw,48px);font-weight:400;line-height:1.02;letter-spacing:-.035em}.bes-sub-price{display:flex;margin-bottom:30px;align-items:baseline;gap:9px;color:var(--bd)}.bes-sub-price strong{font-size:clamp(42px,5vw,64px);font-weight:400;line-height:1}.bes-sub-price span{font-family:Arial,Helvetica,sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--m)}.bes-sub-desc{margin-bottom:28px!important;font-size:18px;line-height:1.65;color:var(--m)}.bes-sub-list{display:grid;margin:0 0 36px;padding:0;gap:14px;list-style:none}.bes-sub-list li{position:relative;padding-left:24px;font-size:16px;line-height:1.55;color:var(--bd)}.bes-sub-list li:before{content:"—";position:absolute;left:0;color:var(--m)}
.bes-sub-donation{display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:45px;margin-top:22px;padding:clamp(35px,5vw,52px);border:1px solid var(--l);align-items:center}.bes-sub-donation h3{margin:0 0 12px;font-size:clamp(29px,3vw,42px);font-weight:400;line-height:1.08;letter-spacing:-.03em}.bes-sub-donation p{font-size:17px;line-height:1.65;color:var(--m)}
.bes-sub-button{display:inline-flex;min-height:54px;padding:16px 28px;align-items:center;justify-content:center;border:1px solid var(--bd)!important;border-radius:0!important;font-family:Arial,Helvetica,sans-serif;font-size:11px!important;font-weight:700;line-height:1;letter-spacing:.14em;text-transform:uppercase;transition:.25s ease;white-space:normal;text-align:center}.bes-sub-button.is-primary{background:var(--bd)!important;color:#fff!important}.bes-sub-button.is-primary:hover,.bes-sub-button.is-primary:focus{background:#fff!important;color:var(--bd)!important}.bes-sub-button.is-secondary{background:transparent!important;color:var(--bd)!important}.bes-sub-button.is-secondary:hover,.bes-sub-button.is-secondary:focus{background:var(--bd)!important;color:#fff!important}
.bes-sub-free{max-width:960px;margin:clamp(90px,11vw,155px) auto;padding:clamp(55px,8vw,95px);background:var(--s)}.bes-sub-free h2{margin:0 auto 26px;font-size:clamp(40px,5vw,68px);font-weight:400;line-height:1;letter-spacing:-.045em}.bes-sub-free p{max-width:760px;margin:0 auto;font-size:clamp(20px,1.8vw,25px);line-height:1.7;color:var(--bd);text-wrap:balance}
.bes-sub-benefits{padding:0 0 clamp(90px,11vw,150px)}.bes-sub-benefits-heading{max-width:850px;margin:0 auto clamp(55px,7vw,88px)}.bes-sub-benefits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--l)}.bes-sub-benefit{min-width:0;min-height:230px;padding:clamp(38px,5vw,60px);border-bottom:1px solid var(--l);text-align:left}.bes-sub-benefit:nth-child(odd){border-right:1px solid var(--l)}.bes-sub-number{display:block;margin-bottom:30px;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--m)}.bes-sub-benefit h3{margin:0 0 15px;font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.05;letter-spacing:-.035em}.bes-sub-benefit p{max-width:470px;font-size:17px;line-height:1.65;color:var(--m)}
.bes-sub-quote{margin:0 0 clamp(95px,11vw,155px);padding:clamp(55px,8vw,100px) clamp(35px,10vw,145px);background:var(--bd);color:#fff;text-align:center}.bes-sub-quote blockquote{max-width:930px;margin:0 auto;font-size:clamp(31px,4.3vw,58px);font-weight:400;font-style:italic;line-height:1.18;letter-spacing:-.025em;text-wrap:balance;color:#fff}.bes-sub-quote cite{display:block;margin-top:30px;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-style:normal;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.68)}
.bes-sub-faq{padding:0 0 clamp(90px,11vw,150px)}.bes-sub-faq-heading{max-width:820px;margin:0 auto clamp(50px,7vw,80px)}.bes-sub-faq-list{max-width:920px;margin:0 auto;border-top:1px solid var(--l)}.bes-sub-faq-item{border-bottom:1px solid var(--l);text-align:left}.bes-sub-faq-item summary{position:relative;padding:28px 50px 28px 0;cursor:pointer;list-style:none;font-size:clamp(21px,2vw,28px);line-height:1.3;color:var(--b)}.bes-sub-faq-item summary::-webkit-details-marker{display:none}.bes-sub-faq-item summary:after{content:"+";position:absolute;right:4px}.bes-sub-faq-item[open] summary:after{content:"−"}.bes-sub-faq-item p{padding:0 50px 30px 0;font-size:17px;line-height:1.7;color:var(--m)}
.bes-sub-closing{max-width:1000px;margin:0 auto;padding:clamp(80px,10vw,145px) 20px;border-top:1px solid var(--l)}.bes-sub-closing h2{max-width:900px;margin:0 auto 30px;font-size:clamp(44px,6vw,79px);line-height:1.02}.bes-sub-closing p{max-width:700px;margin:0 auto 42px;font-size:20px;line-height:1.7;color:var(--m);text-wrap:balance}
@media(max-width:900px){.bes-subscriptions-page{width:calc(100vw - 32px)}.bes-sub-reason{grid-template-columns:1fr;gap:40px}.bes-sub-reason-heading{position:static}.bes-sub-reason-copy{text-align:left;hyphens:none}.bes-sub-plans-grid{grid-template-columns:1fr}.bes-sub-donation{grid-template-columns:1fr}.bes-sub-donation .bes-sub-button{width:100%}}
@media(max-width:650px){.bes-subscriptions-page{width:calc(100vw - 24px)}.bes-sub-intro{padding:60px 10px 75px}.bes-sub-intro h2{font-size:48px;line-height:1.02}.bes-sub-lead{font-size:21px}.bes-sub-actions{flex-direction:column}.bes-sub-actions .bes-sub-button{width:100%}.bes-sub-reason{padding:65px 0}.bes-sub-reason h2,.bes-sub-plans-heading h2,.bes-sub-benefits-heading h2,.bes-sub-faq-heading h2{font-size:43px}.bes-sub-reason-copy{font-size:18px}.bes-sub-plans{padding:65px 0}.bes-sub-plans-inner{width:100%}.bes-sub-card{padding:40px 24px}.bes-sub-donation{padding:36px 24px}.bes-sub-free{margin:70px auto;padding:45px 24px}.bes-sub-benefits-grid{grid-template-columns:1fr}.bes-sub-benefit{min-height:0;padding:36px 0}.bes-sub-benefit:nth-child(odd){border-right:0}.bes-sub-quote{margin-bottom:75px;padding:48px 24px}.bes-sub-quote blockquote{font-size:31px}.bes-sub-faq-item summary{padding-right:38px}.bes-sub-faq-item p{padding-right:0}.bes-sub-closing{padding:70px 10px 90px}.bes-sub-closing h2{font-size:44px}}


/* v5.5 — CSS originale approvato per il blocco Abbonamenti */
/* =========================================================
   DIARIO DEL GRAND TOUR — PAGINA ABBONAMENTI
   VERSIONE BOZZA
   ========================================================= */

html,
body {
  overflow-x: clip !important;
}

.gt-support-page,
.gt-support-page *,
.gt-support-page *::before,
.gt-support-page *::after {
  box-sizing: border-box;
}

.gt-support-page {
  --gt-blue: #12395d;
  --gt-blue-dark: #0b2f4e;
  --gt-muted: #687b8e;
  --gt-line: rgba(18, 57, 93, 0.18);
  --gt-soft: #eaf2f7;
  --gt-paper: #f5f9fc;
  --gt-white: #ffffff;

  position: relative;
  left: 50%;
  width: min(1180px, calc(100vw - 48px));
  max-width: none !important;
  margin: 0 !important;
  transform: translateX(-50%);
  color: var(--gt-blue);
  overflow: hidden;
}

.entry-content .gt-support-page,
.wp-block-html .gt-support-page {
  width: min(1180px, calc(100vw - 48px)) !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.gt-support-page p,
.gt-support-page h2,
.gt-support-page h3,
.gt-support-page blockquote {
  max-width: 100%;
  margin-top: 0;
  word-break: normal !important;
  overflow-wrap: break-word;
}

.gt-support-page p {
  margin-bottom: 0;
}

.gt-support-page a {
  color: inherit;
}

/* Impedisce la giustificazione sulle sezioni centrate */

.gt-support-intro,
.gt-support-intro *,
.gt-support-plans__heading,
.gt-support-plans__heading *,
.gt-support-free,
.gt-support-free *,
.gt-support-quote,
.gt-support-quote *,
.gt-support-benefits__heading,
.gt-support-benefits__heading *,
.gt-support-faq__heading,
.gt-support-faq__heading *,
.gt-support-closing,
.gt-support-closing * {
  text-align: center !important;
  text-align-last: center !important;
  text-justify: auto !important;
  word-spacing: normal !important;
  hyphens: none !important;
}

/* Etichette */

.gt-support-label {
  display: block;
  margin-bottom: 20px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gt-muted);
}

/* Introduzione */

.gt-support-intro {
  max-width: 1000px;
  margin: 0 auto;
  padding: clamp(78px, 10vw, 145px) 20px clamp(80px, 9vw, 130px);
}

.gt-support-intro h2 {
  max-width: 950px;
  margin: 0 auto 34px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(49px, 7vw, 96px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.05em;
  color: var(--gt-blue);
  text-wrap: balance;
}

.gt-support-intro__lead {
  max-width: 800px;
  margin: 0 auto;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(22px, 2vw, 29px);
  line-height: 1.55;
  color: var(--gt-muted);
  text-wrap: balance;
}

.gt-support-intro__actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 42px;
}

/* Perché sostenere */

.gt-support-reason {
  display: grid;
  grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
  gap: clamp(55px, 8vw, 125px);
  padding: clamp(80px, 10vw, 145px) 0;
  border-top: 1px solid var(--gt-line);
  align-items: start;
}

.gt-support-reason > * {
  min-width: 0;
}

.gt-support-reason__heading {
  position: sticky;
  top: 35px;
}

.gt-support-reason h2,
.gt-support-plans__heading h2,
.gt-support-benefits__heading h2,
.gt-support-faq__heading h2,
.gt-support-closing h2 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5.2vw, 72px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.045em;
  color: var(--gt-blue);
  text-wrap: balance;
}

.gt-support-reason__copy {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(19px, 1.55vw, 23px);
  line-height: 1.78;
  color: var(--gt-blue-dark);
  text-align: justify;
  text-align-last: left;
  hyphens: auto;
}

.gt-support-reason__copy p + p {
  margin-top: 1.5em;
}

/* Piani */

.gt-support-plans {
  padding: clamp(80px, 10vw, 140px) 0;
  background: rgba(234, 242, 247, 0.58);
}

.gt-support-plans__inner {
  width: min(1080px, calc(100% - 40px));
  margin: 0 auto;
}

.gt-support-plans__heading {
  max-width: 850px;
  margin: 0 auto clamp(55px, 7vw, 90px);
}

.gt-support-plans__heading p {
  max-width: 680px;
  margin: 26px auto 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  line-height: 1.7;
  color: var(--gt-muted);
}

.gt-support-plans__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

.gt-support-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 100%;
  padding: clamp(38px, 5vw, 58px);
  flex-direction: column;
  border: 1px solid var(--gt-line);
  background: var(--gt-white);
}

.gt-support-card--featured {
  border-color: var(--gt-blue-dark);
  box-shadow: 0 20px 60px rgba(11, 47, 78, 0.09);
}

.gt-support-card__badge {
  position: absolute;
  top: 0;
  right: 0;
  padding: 11px 16px;
  background: var(--gt-blue-dark);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.17em;
  text-transform: uppercase;
  color: var(--gt-white);
}

.gt-support-card__type {
  display: block;
  margin-bottom: 22px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gt-muted);
}

.gt-support-card h3 {
  margin: 0 0 20px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 3.5vw, 48px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -0.035em;
  color: var(--gt-blue);
  text-align: left !important;
  text-align-last: left !important;
}

.gt-support-card__price {
  display: flex;
  margin-bottom: 30px;
  align-items: baseline;
  gap: 9px;
  font-family: Georgia, "Times New Roman", serif;
  color: var(--gt-blue-dark);
}

.gt-support-card__price strong {
  font-size: clamp(42px, 5vw, 64px);
  font-weight: 400;
  line-height: 1;
}

.gt-support-card__price span {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gt-muted);
}

.gt-support-card__description {
  margin-bottom: 28px !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.65;
  color: var(--gt-muted);
  text-align: left !important;
  text-align-last: left !important;
  hyphens: none !important;
}

.gt-support-card__list {
  display: grid;
  margin: 0 0 36px;
  padding: 0;
  gap: 14px;
  list-style: none;
}

.gt-support-card__list li {
  position: relative;
  padding-left: 24px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
  line-height: 1.55;
  color: var(--gt-blue-dark);
}

.gt-support-card__list li::before {
  content: "—";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--gt-muted);
}

.gt-support-card__action {
  margin-top: auto;
}

/* Donazione */

.gt-support-donation {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto;
  gap: 45px;
  margin-top: 22px;
  padding: clamp(35px, 5vw, 52px);
  border: 1px solid var(--gt-line);
  background: transparent;
  align-items: center;
}

.gt-support-donation h3 {
  margin: 0 0 12px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(29px, 3vw, 42px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.03em;
  color: var(--gt-blue);
  text-align: left !important;
  text-align-last: left !important;
}

.gt-support-donation p {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.65;
  color: var(--gt-muted);
  text-align: left !important;
  text-align-last: left !important;
  hyphens: none !important;
}

/* Pulsanti */

.gt-support-button {
  display: inline-flex;
  min-height: 54px;
  padding: 16px 28px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--gt-blue-dark);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.14em;
  text-decoration: none !important;
  text-transform: uppercase;
  transition:
    background-color 0.25s ease,
    color 0.25s ease,
    transform 0.25s ease;
}

.gt-support-button:hover {
  transform: translateY(-2px);
}

.gt-support-button--primary {
  background: var(--gt-blue-dark);
  color: var(--gt-white) !important;
}

.gt-support-button--primary:hover {
  background: transparent;
  color: var(--gt-blue-dark) !important;
}

.gt-support-button--secondary {
  background: transparent;
  color: var(--gt-blue-dark) !important;
}

.gt-support-button--secondary:hover {
  background: var(--gt-blue-dark);
  color: var(--gt-white) !important;
}

/* Lettura gratuita */

.gt-support-free {
  max-width: 960px;
  margin: clamp(90px, 11vw, 155px) auto;
  padding: clamp(55px, 8vw, 95px);
  background: var(--gt-soft);
}

.gt-support-free h2 {
  margin: 0 auto 26px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(40px, 5vw, 68px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.045em;
  color: var(--gt-blue);
  text-wrap: balance;
}

.gt-support-free p {
  max-width: 760px;
  margin: 0 auto;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(20px, 1.8vw, 25px);
  line-height: 1.7;
  color: var(--gt-blue-dark);
  text-wrap: balance;
}

/* Benefici */

.gt-support-benefits {
  padding: 0 0 clamp(90px, 11vw, 150px);
}

.gt-support-benefits__heading {
  max-width: 850px;
  margin: 0 auto clamp(55px, 7vw, 88px);
}

.gt-support-benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--gt-line);
}

.gt-support-benefit {
  min-width: 0;
  min-height: 230px;
  padding: clamp(38px, 5vw, 60px);
  border-bottom: 1px solid var(--gt-line);
}

.gt-support-benefit:nth-child(odd) {
  border-right: 1px solid var(--gt-line);
}

.gt-support-benefit__number {
  display: block;
  margin-bottom: 30px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: var(--gt-muted);
}

.gt-support-benefit h3 {
  margin: 0 0 15px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 3vw, 42px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.035em;
  color: var(--gt-blue);
  text-align: left !important;
  text-align-last: left !important;
}

.gt-support-benefit p {
  max-width: 470px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.65;
  color: var(--gt-muted);
  text-align: left !important;
  text-align-last: left !important;
  hyphens: none !important;
}

/* Citazione */

.gt-support-quote {
  margin: 0 0 clamp(95px, 11vw, 155px);
  padding: clamp(55px, 8vw, 100px) clamp(35px, 10vw, 145px);
  background: var(--gt-blue-dark);
  color: var(--gt-white);
}

.gt-support-quote blockquote {
  max-width: 930px;
  margin: 0 auto;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(31px, 4.3vw, 58px);
  font-weight: 400;
  font-style: italic;
  line-height: 1.18;
  letter-spacing: -0.025em;
  color: var(--gt-white);
  text-wrap: balance;
}

.gt-support-quote cite {
  display: block;
  margin-top: 30px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.68);
}

/* FAQ */

.gt-support-faq {
  padding: 0 0 clamp(90px, 11vw, 150px);
}

.gt-support-faq__heading {
  max-width: 820px;
  margin: 0 auto clamp(50px, 7vw, 80px);
}

.gt-support-faq__list {
  max-width: 920px;
  margin: 0 auto;
  border-top: 1px solid var(--gt-line);
}

.gt-support-faq details {
  border-bottom: 1px solid var(--gt-line);
}

.gt-support-faq summary {
  position: relative;
  padding: 28px 50px 28px 0;
  cursor: pointer;
  list-style: none;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(21px, 2vw, 28px);
  line-height: 1.3;
  color: var(--gt-blue);
  text-align: left !important;
  text-align-last: left !important;
}

.gt-support-faq summary::-webkit-details-marker {
  display: none;
}

.gt-support-faq summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 4px;
  transform: translateY(-50%);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 25px;
  font-weight: 400;
  color: var(--gt-muted);
}

.gt-support-faq details[open] summary::after {
  content: "−";
}

.gt-support-faq__answer {
  padding: 0 50px 30px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.7;
  color: var(--gt-muted);
  text-align: left !important;
  text-align-last: left !important;
  hyphens: none !important;
}

/* Chiusura */

.gt-support-closing {
  max-width: 1000px;
  margin: 0 auto;
  padding: clamp(80px, 10vw, 145px) 20px;
  border-top: 1px solid var(--gt-line);
}

.gt-support-closing h2 {
  max-width: 900px;
  margin: 0 auto 30px;
  font-size: clamp(44px, 6vw, 79px);
  line-height: 1.02;
}

.gt-support-closing p {
  max-width: 700px;
  margin: 0 auto;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  line-height: 1.7;
  color: var(--gt-muted);
  text-wrap: balance;
}

.gt-support-closing__action {
  margin-top: 42px;
}

/* Tablet */

@media (max-width: 900px) {
  .gt-support-page,
  .entry-content .gt-support-page,
  .wp-block-html .gt-support-page {
    width: calc(100vw - 32px) !important;
  }

  .gt-support-reason {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .gt-support-reason__heading {
    position: static;
  }

  .gt-support-reason__copy {
    text-align: left;
    text-align-last: left;
    hyphens: none;
  }

  .gt-support-plans__grid {
    grid-template-columns: 1fr;
  }

  .gt-support-donation {
    grid-template-columns: 1fr;
  }

  .gt-support-donation .gt-support-button {
    width: 100%;
  }
}

/* Mobile */

@media (max-width: 650px) {
  .gt-support-page,
  .entry-content .gt-support-page,
  .wp-block-html .gt-support-page {
    width: calc(100vw - 24px) !important;
  }

  .gt-support-intro {
    padding: 60px 10px 75px;
  }

  .gt-support-intro h2 {
    font-size: 48px;
    line-height: 1.02;
  }

  .gt-support-intro__lead {
    font-size: 21px;
  }

  .gt-support-intro__actions {
    flex-direction: column;
  }

  .gt-support-intro__actions .gt-support-button {
    width: 100%;
  }

  .gt-support-reason {
    padding: 65px 0;
  }

  .gt-support-reason h2,
  .gt-support-plans__heading h2,
  .gt-support-benefits__heading h2,
  .gt-support-faq__heading h2 {
    font-size: 43px;
  }

  .gt-support-reason__copy {
    font-size: 18px;
  }

  .gt-support-plans {
    padding: 65px 0;
  }

  .gt-support-plans__inner {
    width: 100%;
  }

  .gt-support-card {
    padding: 40px 24px;
  }

  .gt-support-donation {
    padding: 36px 24px;
  }

  .gt-support-free {
    margin: 70px auto;
    padding: 45px 24px;
  }

  .gt-support-benefits__grid {
    grid-template-columns: 1fr;
  }

  .gt-support-benefit {
    min-height: 0;
    padding: 36px 0;
  }

  .gt-support-benefit:nth-child(odd) {
    border-right: 0;
  }

  .gt-support-quote {
    margin-bottom: 75px;
    padding: 48px 24px;
  }

  .gt-support-quote blockquote {
    font-size: 31px;
  }

  .gt-support-faq summary {
    padding-right: 38px;
  }

  .gt-support-faq__answer {
    padding-right: 0;
  }

  .gt-support-closing {
    padding: 70px 10px 90px;
  }

  .gt-support-closing h2 {
    font-size: 44px;
  }
}
