/*
 * Gabriele Bertoloni — sito-wide design system
 * Da caricare dopo i CSS attuali di Astra e del sito.
 * Richiede la classe gb-v2-site aggiunta da sitewide-template-hooks.php.
 */
:root{--gb2-violet:#7331c7;--gb2-violet-dark:#59229e;--gb2-plum:#2b104c;--gb2-ink:#1a1526;--gb2-muted:#5b5470;--gb2-lilac:#f1eafa;--gb2-lilac-2:#e7daf8;--gb2-gold:#f4c84a;--gb2-paper:#fff;--gb2-line:#e7def3;--gb2-radius:16px;--gb2-shadow:0 12px 34px rgba(43,16,76,.08);--gb2-width:1180px}
.gb-v2-site{background:var(--gb2-paper);color:var(--gb2-ink);font-family:Outfit,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.gb-v2-site :where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--gb2-violet);outline-offset:3px;box-shadow:0 0 0 6px var(--gb2-gold)}
.gb-v2-site :where(img){max-width:100%;height:auto}
.gb-v2-site :where(h1,h2,h3,h4,h5,h6){font-family:Georgia,'Times New Roman',serif;letter-spacing:-.025em}
.gb-v2-site :where(p,li){line-height:1.7}
.gb-v2-site :where(a){text-underline-offset:3px}
.gb-v2-site :target{scroll-margin-top:118px}

/* Shared homepage header, rendered once before every WordPress template. */
.gb-v2-site #masthead{display:none!important}
.gb-v2-site .gb-site-header{position:sticky;top:0;z-index:1000;display:flex;height:88px;align-items:center;gap:30px;padding:0 max(28px,calc((100vw - var(--gb2-width))/2));background:var(--gb2-plum);color:#fff;box-shadow:0 0 0 transparent;transition:background .2s,box-shadow .2s}
.gb-v2-site .gb-site-header .brand{display:flex;flex:none;align-items:center}
.gb-v2-site .gb-site-header .brand img{display:block;width:190px;height:auto}
.gb-v2-site .gb-site-header .brand-logo-dark{display:none}
.gb-v2-site .gb-site-header>nav:not(.mobile-nav){display:flex;align-items:center;gap:clamp(18px,2.7vw,34px);margin-left:auto}
.gb-v2-site .gb-site-header>nav a{color:#fff;font:500 14px Outfit,Arial,sans-serif;text-decoration:none}
.gb-v2-site .gb-site-header>nav a:hover,.gb-v2-site .gb-site-header>nav a:focus-visible{color:var(--gb2-gold)}
.gb-v2-site .gb-site-header .nav-item-services{position:relative;display:flex;align-items:center}
.gb-v2-site .gb-site-header .nav-parent{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.gb-v2-site .gb-site-header .nav-parent span{font-size:13px;transition:transform .18s}
.gb-v2-site .gb-site-header .nav-submenu{position:absolute;top:100%;left:-18px;z-index:10;display:grid;min-width:220px;gap:2px;padding:10px;border:1px solid var(--gb2-line);border-radius:12px;background:#fff;box-shadow:0 16px 34px rgba(18,8,31,.16);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .16s,transform .16s,visibility .16s}
.gb-v2-site .gb-site-header .nav-item-services:is(:hover,:focus-within) .nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}
.gb-v2-site .gb-site-header .nav-item-services:is(:hover,:focus-within) .nav-parent span{transform:rotate(180deg)}
.gb-v2-site .gb-site-header .nav-submenu a{display:block;padding:10px 12px;border-radius:8px;color:var(--gb2-plum);font-size:13px;white-space:nowrap}
.gb-v2-site .gb-site-header .nav-submenu a:hover,.gb-v2-site .gb-site-header .nav-submenu a:focus-visible{background:var(--gb2-lilac);color:var(--gb2-violet)}
.gb-v2-site .gb-site-header .header-cta{display:inline-flex;min-height:46px;align-items:center;gap:12px;padding:0 18px;border:1px solid var(--gb2-gold);border-radius:999px;background:var(--gb2-gold);color:#2b2105;font:600 14px Outfit,Arial,sans-serif;text-decoration:none}
.gb-v2-site .gb-site-header .header-cta:hover{border-color:#ffdc70;background:#ffdc70}
.gb-v2-site .gb-site-header .mobile-toggle,.gb-v2-site .gb-site-header .mobile-nav{display:none}
.gb-v2-site.gb-sticky-menu-active .gb-site-header{background:#fff;color:var(--gb2-ink);box-shadow:0 8px 26px rgba(18,8,31,.12)}
.gb-v2-site.gb-sticky-menu-active .gb-site-header .brand-logo-light{display:none}
.gb-v2-site.gb-sticky-menu-active .gb-site-header .brand-logo-dark{display:block}
.gb-v2-site.gb-sticky-menu-active .gb-site-header>nav:not(.mobile-nav) a{color:var(--gb2-plum)}
.gb-v2-site.gb-sticky-menu-active .gb-site-header>nav:not(.mobile-nav) a:hover{color:var(--gb2-violet)}
.gb-v2-site.gb-sticky-menu-active .gb-site-header .mobile-toggle{border-color:var(--gb2-plum)}
.gb-v2-site.gb-sticky-menu-active .gb-site-header .mobile-toggle span{background:var(--gb2-plum)}

/* Keep the blog cards and sidebar inside a predictable two-column frame. */
.gb-v2-site:is(.blog,.archive,.search,.category) .site-content>.ast-container{display:grid!important;grid-template-columns:minmax(0,1fr) 280px;align-items:start;column-gap:40px;width:min(var(--gb2-width),calc(100% - 48px));max-width:none;margin-inline:auto;padding:32px 0 64px}
.gb-v2-site:is(.blog,.archive,.search,.category) #primary{grid-column:1;float:none;width:auto;min-width:0;margin:0;padding:0;border:0}
.gb-v2-site:is(.blog,.archive,.search,.category) #secondary{grid-column:2;float:none;width:auto;min-width:0;margin:0;padding:0 0 0 24px;border:0;border-left:1px solid var(--gb2-line)}

/* Keep existing service-page actions on the brand palette. */
.gb-v2-site .svc-btn.svc-btn-primary{border-color:var(--gb2-violet)!important;background:var(--gb2-violet)!important;color:#fff!important}
.gb-v2-site .svc-btn.svc-btn-primary:hover,.gb-v2-site .svc-btn.svc-btn-primary:focus-visible{border-color:var(--gb2-violet-dark)!important;background:var(--gb2-violet-dark)!important;color:#fff!important}
:is(.gb-v2-site #gb-service-seo,.gb-v2-site #gb-service-ai,.gb-v2-site #gb-service-web,.gb-v2-site #gb-service-consulting) .svc-hero .svc-btn-primary,
:is(.gb-v2-site #gb-service-seo,.gb-v2-site #gb-service-ai,.gb-v2-site #gb-service-web,.gb-v2-site #gb-service-consulting) .svc-hero .svc-btn-primary:visited{border-color:var(--gb2-violet)!important;background:var(--gb2-violet)!important;color:#fff!important}
:is(.gb-v2-site #gb-service-seo,.gb-v2-site #gb-service-ai,.gb-v2-site #gb-service-web,.gb-v2-site #gb-service-consulting) .svc-hero .svc-btn-primary:hover,
:is(.gb-v2-site #gb-service-seo,.gb-v2-site #gb-service-ai,.gb-v2-site #gb-service-web,.gb-v2-site #gb-service-consulting) .svc-hero .svc-btn-primary:focus-visible{border-color:var(--gb2-violet-dark)!important;background:var(--gb2-violet-dark)!important;color:#fff!important}

/* Ordinary WordPress pages */
.gb-v2-site.page:not(.home) .site-content>.ast-container{max-width:var(--gb2-width);padding-block:clamp(38px,6vw,80px)}
.gb-v2-site.page:not(.home) .entry-title{margin:0 0 1.2rem;color:var(--gb2-ink);font-size:clamp(2.2rem,4.5vw,3.7rem);line-height:1.08}
.gb-v2-site.page:not(.home) .entry-content{color:var(--gb2-ink);font-size:1.08rem;line-height:1.78}
.gb-v2-site.page:not(.home) .entry-content> :where(p,ul,ol,blockquote,figure,table,.wp-block-buttons){max-width:820px}
.gb-v2-site.page:not(.home) .entry-content h2{margin:2.8em 0 .75em;color:var(--gb2-ink);font-size:clamp(1.8rem,3.2vw,2.55rem);line-height:1.15}
.gb-v2-site.page:not(.home) .entry-content h3{margin:2em 0 .6em;color:var(--gb2-violet-dark);font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.2}
.gb-v2-site.page:not(.home) .entry-content a:not(.wp-block-button__link){color:var(--gb2-violet-dark);text-decoration-thickness:1px}
.gb-v2-site.page:not(.home) .entry-content a:not(.wp-block-button__link):hover{color:var(--gb2-violet)}
.gb-v2-site.page:not(.home) .entry-content img{display:block;max-width:100%;height:auto;border-radius:12px}
.gb-v2-site.page:not(.home) .entry-content figure{margin:2rem 0}
.gb-v2-site.page:not(.home) .entry-content figcaption{margin-top:.7rem;color:var(--gb2-muted);font-size:.88rem;text-align:center}
.gb-v2-site.page:not(.home) .entry-content blockquote,.gb-v2-site.page:not(.home) .entry-content .wp-block-quote{margin:2rem 0;padding:1.3rem 1.5rem;border-left:4px solid var(--gb2-violet);border-radius:0 12px 12px 0;background:var(--gb2-lilac);color:var(--gb2-plum);font-family:Georgia,'Times New Roman',serif;font-size:1.25rem}
.gb-v2-site.page:not(.home) .entry-content :where(code,pre){border-radius:8px}
.gb-v2-site.page:not(.home) .entry-content pre{padding:1.25rem;overflow:auto;background:#1b1027;color:#f6f0fc}
.gb-v2-site.page:not(.home) .entry-content table{width:100%;border-collapse:collapse}
.gb-v2-site.page:not(.home) .entry-content th{background:var(--gb2-plum);color:#fff;text-align:left}
.gb-v2-site.page:not(.home) .entry-content :where(th,td){padding:.8rem;border:1px solid var(--gb2-line)}
.gb-v2-site.page:not(.home) .entry-content .wp-block-button__link{border-radius:999px;background:var(--gb2-violet);color:#fff}
.gb-v2-site.page:not(.home) .entry-content .wp-block-button__link:hover{background:var(--gb2-violet-dark)}

/* Article detail pages: comfortable reading column plus restrained sidebar */
.gb-v2-site.single-post .site-content>.ast-container{max-width:var(--gb2-width);gap:clamp(34px,5vw,72px);padding-block:48px 80px}
.gb-v2-site.single-post #primary{min-width:0}
.gb-v2-site.single-post .ast-article-single{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
.gb-v2-site.single-post .entry-header{margin:0 0 1.8rem;padding:clamp(24px,5vw,48px);border:1px solid var(--gb2-line);border-radius:var(--gb2-radius);background:linear-gradient(125deg,var(--gb2-lilac) 0%,#fff 78%)}
.gb-v2-site.single-post .entry-title{margin:0 0 1rem;color:var(--gb2-ink);font-size:clamp(2.15rem,4.2vw,3.65rem);line-height:1.08;text-wrap:balance}
.gb-v2-site.single-post .ast-single-entry-banner .entry-title{color:#fff!important}
.gb-v2-site.single-post .entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;color:var(--gb2-muted);font-family:Outfit,Arial,sans-serif;font-size:.9rem}
.gb-v2-site.single-post .entry-meta a{color:var(--gb2-violet-dark)}
.gb-v2-site.single-post .post-thumb{aspect-ratio:16/9;margin:1.4rem 0 0;overflow:hidden;border-radius:12px;background:var(--gb2-lilac-2)}
.gb-v2-site.single-post .post-thumb img,.gb-v2-site.single-post .ast-featured-img img{display:block;width:100%;height:100%;object-fit:cover}
.gb-v2-site.single-post .entry-content{max-width:780px;color:var(--gb2-ink);font-size:1.08rem;line-height:1.82}
.gb-v2-site.single-post .entry-content>p:first-of-type{color:#393047;font-size:1.2rem;line-height:1.72}
.gb-v2-site.single-post .entry-content h2{margin:2.7em 0 .7em;padding-top:.25em;color:var(--gb2-ink);font-size:clamp(1.75rem,3.1vw,2.4rem);line-height:1.17;scroll-margin-top:120px}
.gb-v2-site.single-post .entry-content h3{margin:2.15em 0 .6em;color:var(--gb2-violet-dark);font-size:clamp(1.35rem,2.5vw,1.75rem);line-height:1.22;scroll-margin-top:120px}
.gb-v2-site.single-post .entry-content h4{margin:1.8em 0 .55em;color:var(--gb2-plum);font-size:1.2rem;line-height:1.3}
.gb-v2-site.single-post .entry-content :where(p,ul,ol){margin-block-end:1.3em}
.gb-v2-site.single-post .entry-content li+li{margin-top:.45em}
.gb-v2-site.single-post .entry-content a:not(.wp-block-button__link){color:var(--gb2-violet-dark);text-decoration-thickness:1px}
.gb-v2-site.single-post .entry-content a:not(.wp-block-button__link):hover{color:var(--gb2-violet)}
.gb-v2-site.single-post .entry-content :where(img,video,iframe){max-width:100%;height:auto}
.gb-v2-site.single-post .entry-content img{border-radius:12px}
.gb-v2-site.single-post .entry-content figure{margin:2rem 0}
.gb-v2-site.single-post .entry-content figcaption{margin-top:.7rem;color:var(--gb2-muted);font-size:.88rem;text-align:center}
.gb-v2-site.single-post .entry-content blockquote,.gb-v2-site.single-post .entry-content .wp-block-quote{margin:2rem 0;padding:1.3rem 1.5rem;border-left:4px solid var(--gb2-violet);border-radius:0 12px 12px 0;background:var(--gb2-lilac);color:var(--gb2-plum);font-family:Georgia,'Times New Roman',serif;font-size:1.23rem}
.gb-v2-site.single-post .entry-content :where(code,pre){border-radius:8px}
.gb-v2-site.single-post .entry-content pre{padding:1.25rem;overflow:auto;background:#1b1027;color:#f6f0fc}
.gb-v2-site.single-post .entry-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}
.gb-v2-site.single-post .entry-content th{background:var(--gb2-plum);color:#fff;text-align:left}
.gb-v2-site.single-post .entry-content :where(th,td){min-width:120px;padding:.8rem;border:1px solid var(--gb2-line)}
.gb-v2-site.single-post .entry-content hr{border:0;border-top:1px solid var(--gb2-line)}
.gb-v2-site.single-post .entry-content .wp-block-button__link{border-radius:999px;background:var(--gb2-violet);color:#fff}
.gb-v2-site.single-post .entry-content .wp-block-button__link:hover{background:var(--gb2-violet-dark)}
.gb-v2-site.single-post #secondary{min-width:0}
.gb-v2-site.single-post #secondary .widget{margin-bottom:1.4rem;padding:1.25rem;border:1px solid var(--gb2-line);border-radius:14px;background:#fff;box-shadow:0 6px 22px rgba(43,16,76,.045)}
.gb-v2-site.single-post #secondary .widget-title{color:var(--gb2-ink);font-family:Georgia,'Times New Roman',serif;font-size:1.35rem}

/* Override Astra's double sidebar divider and oversized post gutters. */
.gb-v2-site.single-post .site-content>.ast-container{gap:clamp(28px,4vw,48px);padding-block:32px 64px}
.gb-v2-site.single-post #primary{margin-block:0;padding:0;border:0}
.gb-v2-site.single-post #secondary{margin:0;padding:0;border:0}
.gb-v2-site.single-post #secondary{padding-left:28px;border-left:1px solid var(--gb2-line)}
.gb-v2-site.single-post .ast-article-single{padding:0!important}
.gb-v2-site.single-post #secondary .widget{margin:0 0 20px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.gb-v2-site.single-post :is(#gb-author-card,#gb-mini-cta,#gb-essential-guides)::before{display:none}

/* Article reading tools and rhythm */
body.gb-v2-site.single-post .entry-content .gb-reading-time.gb-reading-time--single{min-height:36px;margin:10px 0 18px;padding:7px 13px;font-size:14px!important;line-height:1.35}
body.gb-v2-site.single-post .entry-content .gb-toc{margin:18px 0 8px!important}
body.gb-v2-site.single-post .entry-content h2{margin:1.15em 0 .55em!important;padding-top:0!important}
body.gb-v2-site.single-post .entry-content h3{margin:1.25em 0 .5em!important}
body.gb-v2-site.single-post .entry-content .gb-toc+h2{margin-top:16px!important}

/* Related articles: prevent Astra's banner title scale from leaking into cards. */
body.gb-v2-site.single-post .ast-related-posts-wrapper{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body.gb-v2-site.single-post .ast-related-post{min-width:0;overflow:hidden;border:1px solid var(--gb2-line);border-radius:14px;background:#fff}
body.gb-v2-site.single-post .ast-related-posts-inner-section{height:100%}
body.gb-v2-site.single-post .ast-related-post-featured-section .post-thumb-img-content{aspect-ratio:16/9;overflow:hidden}
body.gb-v2-site.single-post .ast-related-post-featured-section .post-thumb-img-content{margin-top:0!important}
body.gb-v2-site.single-post .ast-related-post-featured-section img{display:block;width:100%;height:100%;object-fit:cover}
body.gb-v2-site.single-post .ast-related-post .related-entry-header{margin:0;padding:16px 16px 18px;border:0;background:#fff}
body.gb-v2-site.single-post .ast-related-post .ast-related-post-title{margin:0 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:19px!important;line-height:1.28!important;overflow-wrap:normal;word-break:normal}
body.gb-v2-site.single-post .ast-related-post .entry-meta{display:flex;flex-wrap:wrap;gap:4px 8px;margin:0;font-size:12px;line-height:1.45}
body.gb-v2-site.single-post .ast-related-post .entry-meta a{color:var(--gb2-violet-dark)}

/* Comment form */
body.gb-v2-site.single-post .comments-area{margin:42px 0 0;padding:26px;border:1px solid var(--gb2-line);border-radius:16px;background:var(--gb2-lilac)}
body.gb-v2-site.single-post .comments-title,body.gb-v2-site.single-post .comment-reply-title{margin:0 0 12px;color:var(--gb2-ink);font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,2.4vw,28px);line-height:1.2}
body.gb-v2-site.single-post .comment-respond{margin:0;padding:0}
body.gb-v2-site.single-post .comment-notes{margin:0 0 16px;color:var(--gb2-muted);font-size:14px}
body.gb-v2-site.single-post .comment-form-comment{margin:0 0 16px}
body.gb-v2-site.single-post .comment-form-comment label,body.gb-v2-site.single-post .ast-comment-formwrap label{display:block;margin:0 0 6px;color:var(--gb2-ink);font-size:14px;font-weight:600}
body.gb-v2-site.single-post .comment-form-comment textarea,body.gb-v2-site.single-post .ast-comment-formwrap input{box-sizing:border-box;width:100%;min-height:46px;padding:11px 13px;border:1px solid #d8c9e8;border-radius:10px;background:#fff;color:var(--gb2-ink);font:inherit}
body.gb-v2-site.single-post .comment-form-comment textarea{min-height:150px;resize:vertical}
body.gb-v2-site.single-post .ast-comment-formwrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}
body.gb-v2-site.single-post .ast-comment-formwrap :is(.comment-form-author,.comment-form-email,.comment-form-url){width:auto;max-width:none;margin:0;float:none}
body.gb-v2-site.single-post .form-submit{margin:0}
body.gb-v2-site.single-post .form-submit input[type=submit]{min-height:44px;padding:10px 20px;border:1px solid var(--gb2-violet);border-radius:999px;background:var(--gb2-violet);color:#fff;font:600 14px Outfit,Arial,sans-serif}
body.gb-v2-site.single-post .form-submit input[type=submit]:hover{background:var(--gb2-violet-dark);border-color:var(--gb2-violet-dark)}

/* Keep article byline centered as a single group. */
body.gb-v2-site.single-post .ast-single-entry-banner .entry-meta{width:max-content;max-width:calc(100% - 32px);margin:0 auto 20px;justify-content:center;align-items:center;flex-wrap:wrap}
@media(max-width:780px){body.gb-v2-site.single-post .ast-related-posts-wrapper{grid-template-columns:repeat(2,minmax(0,1fr))}body.gb-v2-site.single-post .ast-comment-formwrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){body.gb-v2-site.single-post .ast-related-posts-wrapper,body.gb-v2-site.single-post .ast-comment-formwrap{grid-template-columns:1fr}body.gb-v2-site.single-post .comments-area{padding:20px 16px}body.gb-v2-site.single-post .ast-single-entry-banner .entry-meta{width:auto;margin-inline:16px}}

/* Blog, category, search, tag and author archives */
.gb-v2-site.blog .site-content>.ast-container,.gb-v2-site.archive .site-content>.ast-container,.gb-v2-site.search .site-content>.ast-container{max-width:var(--gb2-width);padding-block:44px 80px}
.gb-v2-site.blog #primary,.gb-v2-site.archive #primary,.gb-v2-site.search #primary{min-width:0;margin-top:0}
.gb-v2-site:is(.blog,.archive,.search,.category) .site-content>.ast-container{gap:clamp(28px,4vw,48px);padding:32px 0 64px}
.gb-v2-site:is(.blog,.archive,.search,.category) #primary{margin:0;padding:0;border:0}
.gb-v2-site:is(.blog,.archive,.search,.category) #secondary{min-width:0;margin:0;padding:0 0 0 28px;border:0;border-left:1px solid var(--gb2-line)}
.gb-v2-site:is(.blog,.archive,.search,.category) #secondary{position:sticky;top:112px;align-self:start}
.gb-v2-site.category .ast-archive-entry-banner,.gb-v2-site.blog .ast-archive-entry-banner,.gb-v2-site.search .ast-archive-entry-banner{margin:0;padding:clamp(36px,6vw,76px) 24px;background:linear-gradient(105deg,rgba(43,16,76,.92),rgba(89,34,158,.70)),url('../../uploads/2026/07/podio-digitale-con-tre-risultati-di-ricerca-google-che-rappresentano-le-posizioni-1-2-e-3-nella-serp-skyline-futuristico-sullo-sfondo-1536x864.webp') center 46%/cover no-repeat;color:#fff}
.gb-v2-site.category .ast-archive-entry-banner .ast-container,.gb-v2-site.blog .ast-archive-entry-banner .ast-container,.gb-v2-site.search .ast-archive-entry-banner .ast-container{max-width:var(--gb2-width)}
.gb-v2-site.category .ast-archive-entry-banner :where(h1,p),.gb-v2-site.blog .ast-archive-entry-banner :where(h1,p),.gb-v2-site.search .ast-archive-entry-banner :where(h1,p){color:#fff}
.gb-v2-site.category .ast-archive-entry-banner h1,.gb-v2-site.blog .ast-archive-entry-banner h1,.gb-v2-site.search .ast-archive-entry-banner h1{font-size:clamp(2.3rem,4.5vw,3.7rem);line-height:1.08}
:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) .ast-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-inline:0!important}
:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) #primary.ast-blog-layout-4-grid{display:block;grid-template-columns:none;gap:0;width:auto}
:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) .ast-row>:is(.gb-filtro,.gb-pillar-hero,.navigation.pagination){grid-column:1/-1}
:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) .ast-row>.ast-article-post{width:auto;max-width:none}
:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) .ast-row:before,:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) .ast-row:after{display:none}
.gb-v2-site .ast-article-post{display:flex;min-width:0;flex-direction:column;overflow:hidden;margin:0!important;border:1px solid var(--gb2-line);border-radius:var(--gb2-radius);background:#fff;box-shadow:0 8px 28px rgba(43,16,76,.055);transition:transform .2s,box-shadow .2s,border-color .2s}
.gb-v2-site .ast-article-post{padding:0!important}
.gb-v2-site .ast-article-post:hover{transform:translateY(-4px);border-color:#c9a8f5;box-shadow:var(--gb2-shadow)}
.gb-v2-site .ast-article-post .post-thumb{display:block;aspect-ratio:3/2;margin:0;overflow:hidden;background:var(--gb2-lilac)}
.gb-v2-site .ast-article-post .post-thumb img,.gb-v2-site .ast-article-post .wp-post-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.gb-v2-site .ast-article-post:hover .post-thumb img{transform:scale(1.025)}
.gb-v2-site .ast-article-post .entry-header,.gb-v2-site .ast-article-post .entry-content{padding-inline:20px}
.gb-v2-site .ast-article-post .entry-header{padding-top:19px}
.gb-v2-site .ast-article-post .entry-title{margin:0 0 .7rem;font-size:clamp(1.2rem,1.55vw,1.48rem);line-height:1.22}
.gb-v2-site .ast-article-post .entry-title a{color:var(--gb2-ink)}
.gb-v2-site .ast-article-post .entry-title a:hover{color:var(--gb2-violet)}
.gb-v2-site .ast-article-post .entry-meta{color:var(--gb2-muted);font-size:.82rem}
.gb-v2-site .ast-article-post .entry-meta{text-align:left}
.gb-v2-site .ast-article-post .entry-content{display:flex;flex:1;flex-direction:column;padding-bottom:20px}
.gb-v2-site .ast-article-post .entry-content p{margin:0 0 1rem;color:var(--gb2-muted);font-size:.96rem;line-height:1.6}
.gb-v2-site .ast-article-post .entry-content .read-more{margin-top:auto;color:var(--gb2-violet-dark);font-weight:600}
/* Astra nests two .post-thumb frames and pads the inner card; reset each layer explicitly. */
.gb-v2-site .ast-article-post>.ast-article-inner{padding:0!important}
.gb-v2-site .ast-article-post .ast-blog-featured-section.post-thumb{width:100%;aspect-ratio:auto;margin:0;padding:0;background:transparent}
.gb-v2-site .ast-article-post .ast-blog-featured-section.post-thumb>.post-thumb-img-content.post-thumb{position:relative;width:100%;aspect-ratio:16/9;margin:0!important;overflow:hidden;background:transparent}
.gb-v2-site .ast-article-post .ast-blog-featured-section.post-thumb>.post-thumb-img-content.post-thumb>a{position:absolute;inset:0;display:block;width:100%;height:100%;line-height:0}
.gb-v2-site .ast-article-post .ast-blog-featured-section.post-thumb>.post-thumb-img-content.post-thumb img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;margin:0;object-fit:cover}
.gb-v2-site .ast-article-post:hover .ast-blog-featured-section.post-thumb img{transform:none!important}
.gb-v2-site .ast-article-post .entry-header,.gb-v2-site .ast-article-post .entry-content{padding-inline:20px}
.gb-v2-site .gb-pillar-hero{display:grid;grid-template-columns:1.02fr .98fr;align-items:stretch;overflow:hidden;margin:0 0 2rem;border:1px solid var(--gb2-line);border-radius:var(--gb2-radius);background:#fff;box-shadow:var(--gb2-shadow)}
.gb-v2-site .gb-pillar-hero__link{display:contents}
.gb-v2-site .gb-pillar-hero__media{min-width:0;min-height:250px;overflow:hidden;background:var(--gb2-plum)}
.gb-v2-site .gb-pillar-hero__media img{display:block;width:100%;height:100%;min-height:250px;object-fit:cover;transition:transform .35s}
.gb-v2-site .gb-pillar-hero:hover .gb-pillar-hero__media img{transform:scale(1.025)}
.gb-v2-site .gb-pillar-hero__body{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:.8rem;padding:clamp(22px,4vw,42px)}
.gb-v2-site .gb-pillar-hero__badge{padding:.38rem .72rem;border-radius:999px;background:var(--gb2-gold);color:#2b2105;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.gb-v2-site .gb-pillar-hero__title{margin:0;color:var(--gb2-ink);font-size:clamp(1.6rem,2.5vw,2.25rem);line-height:1.15}
.gb-v2-site .gb-pillar-hero__desc{margin:0;color:var(--gb2-muted);font-size:1rem;line-height:1.65}
.gb-v2-site .gb-pillar-hero__cta{display:inline-flex;gap:.5rem;margin-top:.25rem;color:var(--gb2-violet);font-weight:600}
.gb-v2-site .navigation.pagination{display:flex;justify-content:center;gap:8px;margin:38px 0}
.gb-v2-site .navigation.pagination .page-numbers{display:inline-flex;min-width:42px;min-height:42px;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--gb2-line);border-radius:999px;background:#fff;color:var(--gb2-violet-dark)}
.gb-v2-site .navigation.pagination .page-numbers.current,.gb-v2-site .navigation.pagination .page-numbers:hover{border-color:var(--gb2-violet);background:var(--gb2-violet);color:#fff}
.gb-v2-site .ast-archive-description{max-width:var(--gb2-width);margin:0 auto 28px;padding:0 24px;color:var(--gb2-muted)}

/* PHP-generated reading tools, category filters, breadcrumbs and CTAs */
.gb-v2-site .gb-reading-time,.gb-v2-site .gb-data-aggiornamento{display:inline-flex;min-height:34px;align-items:center;gap:.5rem;padding:.45rem .8rem;border:1px solid var(--gb2-line);border-radius:999px;background:var(--gb2-lilac);color:var(--gb2-plum);font-size:.82rem;line-height:1.25}
.gb-v2-site .gb-reading-time--single{margin:.8rem 0 1rem}
.gb-v2-site .gb-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.2rem}
.gb-v2-site .gb-breadcrumb__voce{display:inline-flex;align-items:center;min-height:32px;padding:5px 11px;border:1px solid var(--gb2-line);border-radius:999px;background:#fff;color:var(--gb2-violet-dark);font-size:.8rem}
.gb-v2-site .gb-breadcrumb__voce--cat{border-color:var(--gb2-lilac-2);background:var(--gb2-lilac)}
.gb-v2-site .gb-filtro{margin:0 0 2rem;padding:clamp(18px,3vw,28px);border:1px solid var(--gb2-line);border-radius:var(--gb2-radius);background:linear-gradient(120deg,#f1eafa,#fff 75%);box-shadow:0 8px 24px rgba(43,16,76,.05)}
.gb-v2-site .gb-filtro__intro{margin:0 0 1rem;color:var(--gb2-ink);font-family:Georgia,'Times New Roman',serif;font-size:1.25rem}
.gb-v2-site .gb-filtro__search{display:flex;gap:10px;max-width:680px;margin-bottom:1.1rem}
.gb-v2-site .gb-filtro__search-input,.gb-v2-site .gb-filtro__tag select{min-height:46px;border:1px solid #d3c3e3;border-radius:10px;background:#fff;color:var(--gb2-ink)}
.gb-v2-site .gb-filtro__search-input{flex:1;min-width:0;padding:0 14px}
.gb-v2-site .gb-filtro__search-btn{min-height:46px;padding:0 18px;border:0;border-radius:999px;background:var(--gb2-violet);color:#fff;font-weight:600}
.gb-v2-site .gb-filtro__search-btn:hover{background:var(--gb2-violet-dark)}
.gb-v2-site .gb-filtro__lista{display:flex;flex-wrap:wrap;gap:8px}
.gb-v2-site .gb-filtro__voce{min-height:38px;padding:8px 13px;border:1px solid #d9c9e9;border-radius:999px;background:#fff;color:var(--gb2-violet-dark);font-size:.82rem}
.gb-v2-site .gb-filtro__voce.is-attivo,.gb-v2-site .gb-filtro__voce:hover{border-color:var(--gb2-violet);background:var(--gb2-violet);color:#fff}
.gb-v2-site .gb-filtro__count{color:inherit;font-size:.76em;opacity:.8}
.gb-v2-site .gb-cta{margin:3rem 0 1rem;padding:clamp(24px,5vw,46px);border:1px solid rgba(255,255,255,.18);border-radius:var(--gb2-radius);background:radial-gradient(90% 140% at 0 0,#7331c7 0%,#59229e 48%,#2b104c 100%);color:#fff;box-shadow:0 18px 46px rgba(43,16,76,.18)}
.gb-v2-site .gb-cta__eyebrow{color:var(--gb2-gold);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.gb-v2-site .gb-cta__pitch{max-width:780px;margin:.4rem 0 1.4rem;color:#fff;font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.4rem,3vw,2rem);line-height:1.25}
.gb-v2-site .gb-cta__actions{display:flex;flex-wrap:wrap;gap:10px}
.gb-v2-site .gb-cta__btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:10px 20px;border:1px solid #fff;border-radius:999px;font-weight:600}
.gb-v2-site .gb-cta__btn--primary{background:var(--gb2-gold);border-color:var(--gb2-gold);color:#2b2105!important}
.gb-v2-site .gb-cta__btn--ghost{background:transparent;color:#fff!important}
.gb-v2-site .gb-toc{margin:2rem 0;padding:0;overflow:hidden;border:1px solid var(--gb2-line);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(43,16,76,.045)}
.gb-v2-site .gb-toc__toggle{min-height:58px;padding:14px 18px;background:var(--gb2-lilac);color:var(--gb2-plum)}
.gb-v2-site .gb-toc__title{font-family:Georgia,'Times New Roman',serif;font-size:1.2rem}
.gb-v2-site .gb-toc__nav{padding:12px 20px 20px}
.gb-v2-site .gb-toc__voce a{color:var(--gb2-violet-dark)}
.gb-v2-site .gb-categories-box{padding:20px;border:1px solid var(--gb2-line);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(43,16,76,.045)}
.gb-v2-site .gb-categories-box__title{color:var(--gb2-ink);font-family:Georgia,'Times New Roman',serif}
.gb-v2-site .gb-categories-box__link:hover,.gb-v2-site .gb-categories-box__link.is-current{background:var(--gb2-lilac);color:var(--gb2-violet-dark)!important}
.gb-v2-site .gb-pillar-hero,.gb-v2-site .gb-filtro,.gb-v2-site .gb-cta,.gb-v2-site .gb-categories-box{scroll-margin-top:120px}

/* Custom HTML pages already built for the site keep their own section layouts. */
.gb-v2-site :where(#gb-home,#gb-about,#gb-contact,#gb-service){font-family:Outfit,Arial,sans-serif}
.gb-v2-site .gb-footer{border-top:4px solid var(--gb2-gold);background:#12081f;color:#e9e1f3}
.gb-v2-site .gb-footer__heading{color:var(--gb2-gold)}

@media(max-width:1020px){:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) .ast-row{grid-template-columns:repeat(2,minmax(0,1fr))}.gb-v2-site.single-post .site-content>.ast-container{gap:28px}}
@media(max-width:900px){.gb-v2-site .gb-site-header{height:76px;padding-inline:22px}.gb-v2-site .gb-site-header>nav:not(.mobile-nav),.gb-v2-site .gb-site-header .header-cta{display:none}.gb-v2-site .gb-site-header .mobile-toggle{display:flex;width:42px;height:42px;flex-direction:column;align-items:center;justify-content:center;gap:5px;margin-left:auto;border:1px solid #ffffff70;border-radius:50%;background:transparent}.gb-v2-site .gb-site-header .mobile-toggle span{display:block;width:17px;height:2px;border-radius:2px;background:#fff}.gb-v2-site .gb-site-header .mobile-nav{position:absolute;top:100%;right:16px;left:16px;z-index:5;gap:0;padding:10px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:var(--gb2-plum);box-shadow:0 18px 36px rgba(18,8,31,.2)}.gb-v2-site .gb-site-header .mobile-nav.is-open{display:flex;flex-direction:column}.gb-v2-site .gb-site-header .mobile-nav a{padding:13px 14px;border-radius:8px;color:#fff}.gb-v2-site .gb-site-header .mobile-nav a:hover{background:rgba(255,255,255,.08);color:var(--gb2-gold)}.gb-v2-site .mobile-nav-group{display:grid;grid-template-columns:1fr 1fr}.gb-v2-site .mobile-nav-group .mobile-nav-parent{grid-column:1/-1;font-weight:700}.gb-v2-site .gb-site-header .mobile-nav .mobile-nav-child{padding:10px 14px 10px 28px;color:#ded0f0;font-size:13px}.gb-v2-site.gb-sticky-menu-active .gb-site-header .mobile-nav{background:#fff;border-color:var(--gb2-line)}.gb-v2-site.gb-sticky-menu-active .gb-site-header .mobile-nav a{color:var(--gb2-plum)}.gb-v2-site.gb-sticky-menu-active .gb-site-header .mobile-nav .mobile-nav-child{color:var(--gb2-muted)}}
@media(max-width:780px){.gb-v2-site.single-post .site-content>.ast-container{display:block}.gb-v2-site.single-post #secondary{margin-top:42px;padding:28px 0 0;border-top:1px solid var(--gb2-line);border-left:0}.gb-v2-site .gb-pillar-hero{grid-template-columns:1fr}.gb-v2-site .gb-pillar-hero__media{min-height:0;aspect-ratio:16/9}.gb-v2-site .gb-pillar-hero__media img{min-height:0}.gb-v2-site .gb-pillar-hero__body{padding:24px}}
@media(max-width:780px){.gb-v2-site:is(.blog,.archive,.search,.category) .site-content>.ast-container{grid-template-columns:minmax(0,1fr);row-gap:34px;width:calc(100% - 40px);padding-inline:0}.gb-v2-site:is(.blog,.archive,.search,.category) #secondary{position:static;grid-column:1;margin:0;padding:28px 0 0;border-top:1px solid var(--gb2-line);border-left:0}}
@media(max-width:600px){:is(.gb-v2-site.blog,.gb-v2-site.archive,.gb-v2-site.search) .ast-row{grid-template-columns:1fr;gap:16px}.gb-v2-site.blog .site-content>.ast-container,.gb-v2-site.archive .site-content>.ast-container,.gb-v2-site.search .site-content>.ast-container{padding-block:26px 56px}.gb-v2-site.single-post .site-content>.ast-container{padding-block:24px 56px}.gb-v2-site.single-post .entry-header{padding:22px 18px}.gb-v2-site.single-post .entry-content,.gb-v2-site.page:not(.home) .entry-content{font-size:1rem;line-height:1.75}.gb-v2-site .gb-filtro__search{flex-direction:column}.gb-v2-site .gb-filtro__search-btn{width:100%}.gb-v2-site .gb-filtro__voce{min-height:40px}.gb-v2-site .gb-cta__actions{flex-direction:column}.gb-v2-site .gb-cta__btn{width:100%}.gb-v2-site .gb-cta{margin-top:2rem}.gb-v2-site .gb-pillar-hero__body{padding:20px}.gb-v2-site .ast-article-post .entry-header,.gb-v2-site .ast-article-post .entry-content{padding-inline:17px}}
@media(prefers-reduced-motion:reduce){.gb-v2-site :where(*,*::before,*::after){scroll-behavior:auto!important;transition:none!important;animation:none!important}.gb-v2-site .ast-article-post:hover,.gb-v2-site .gb-pillar-hero:hover{transform:none}}
@media print{.gb-v2-site #masthead,.gb-v2-site .gb-filtro,.gb-v2-site .gb-cta,.gb-v2-site .gb-floating-cta,.gb-v2-site #gb-read-progress{display:none!important}.gb-v2-site .single-post .site-content>.ast-container{display:block;max-width:none}}

/* Shared page finish and the same call-to-action treatment outside the homepage. */
.gb-v2-site #colophon{border-top:4px solid var(--gb2-gold);background:#12081f;color:#e9e1f3}
.gb-v2-site #colophon :where(h1,h2,h3,h4,.widget-title){color:#fff}
.gb-v2-site #colophon a{color:#d8c3f4}
.gb-v2-site #colophon a:hover{color:var(--gb2-gold)}
.gb-v2-site :where(.ast-button,.button,.wp-block-button__link,input[type=submit]){border-radius:999px;background:var(--gb2-violet);color:#fff}
.gb-v2-site :where(.ast-button,.button,.wp-block-button__link,input[type=submit]):hover{background:var(--gb2-violet-dark);color:#fff}
.gb-v2-site :where(input:not([type=submit]),textarea,select){border-color:#d3c3e3;border-radius:10px;color:var(--gb2-ink)}
.gb-v2-site :where(.ast-breadcrumbs-wrapper,.ast-breadcrumbs){color:var(--gb2-muted)}
.gb-v2-site .gb-site-header .brand img.brand-logo-dark{display:none}
.gb-v2-site.gb-sticky-menu-active .gb-site-header .brand img.brand-logo-dark{display:block}
.gb-v2-site :is(#gb-author-card,#gb-essential-guides){border:1px solid var(--gb2-line)!important;border-radius:16px;background:#fff!important;box-shadow:0 8px 24px rgba(43,16,76,.055)}
.gb-v2-site #gb-mini-cta{border:1px solid rgba(255,255,255,.18)!important;border-radius:16px;background:radial-gradient(90% 140% at 0 0,#7331c7 0%,#59229e 48%,#2b104c 100%)!important;color:#fff!important;box-shadow:0 14px 34px rgba(43,16,76,.16)}
.gb-v2-site #gb-mini-cta :where(h2,h3,p,a){color:#fff!important}
.gb-v2-site #gb-mini-cta :where(a,.gb-mini-cta__button){border-color:var(--gb2-gold)!important;background:var(--gb2-gold)!important;color:#2b2105!important}
.gb-v2-site :is(#gb-author-card,#gb-mini-cta) p::before{background:var(--gb2-gold)!important}
.gb-v2-site :is(#gb-author-card,#gb-mini-cta,#gb-essential-guides)::before{display:none!important}
.gb-v2-site .ast-article-post .entry-title a,.gb-v2-site .ast-article-post .entry-title a:hover{text-decoration:none!important}
@media(max-width:600px){.gb-v2-site .gb-site-header{height:68px;padding-inline:16px}.gb-v2-site .gb-site-header .brand img{width:154px}.gb-v2-site:is(.blog,.archive,.search) .site-content>.ast-container{width:calc(100% - 32px)}}

/* Bring legacy custom landing pages onto the homepage palette without changing their copy or layout. */
.gb-v2-site.gb-v2-site #gb-about :is(.abt-btn-primary,.abt-service a),
.gb-v2-site.gb-v2-site [id^="gb-service"] :is(.svc-btn-primary,.svc-case a),
.gb-v2-site.gb-v2-site #gb-contact :is(.ct-btn-primary,.ct-form-shell button,.ct-form-shell input[type=submit]){background:var(--gb2-violet)!important;border-color:var(--gb2-violet)!important;color:#fff!important}
.gb-v2-site.gb-v2-site #gb-about :is(.abt-btn-primary,.abt-service a):is(:hover,:focus-visible),
.gb-v2-site.gb-v2-site [id^="gb-service"] :is(.svc-btn-primary,.svc-case a):is(:hover,:focus-visible),
.gb-v2-site.gb-v2-site #gb-contact :is(.ct-btn-primary,.ct-form-shell button,.ct-form-shell input[type=submit]):is(:hover,:focus-visible){background:var(--gb2-violet-dark)!important;border-color:var(--gb2-violet-dark)!important;color:#fff!important}

/* Keep Astra's hover zoom from cropping archive thumbnails beyond their frame. */
body.gb-v2-site:is(.blog,.archive,.search,.category) .ast-article-post .post-thumb-img-content.post-thumb>a>img.wp-post-image{transform:none!important}
.gb-v2-site.gb-v2-site #gb-about :is(.abt-service,.abt-value,.abt-proof),
.gb-v2-site.gb-v2-site [id^="gb-service"] :is(.svc-feature,.svc-fit-card,.svc-proof-copy,.svc-case,.svc-lab,.svc-data,.svc-limit,.svc-option,.svc-use,.svc-no){border-color:var(--gb2-line)!important}
.gb-v2-site.gb-v2-site #gb-about .abt-service{border-top:3px solid var(--gb2-violet)!important}
.gb-v2-site.gb-v2-site #gb-about :is(.abt-accent,.abt-eyebrow,.abt-section-label),
.gb-v2-site.gb-v2-site [id^="gb-service"] :is(.svc-accent,.svc-eyebrow,.svc-section-label),
.gb-v2-site.gb-v2-site #gb-contact :is(.ct-accent,.ct-eyebrow,.ct-section-label){color:var(--gb2-violet)!important}
.gb-v2-site.gb-v2-site #gb-about :is(.abt-section-lilac,.abt-section-dark,.abt-proof-section),
.gb-v2-site.gb-v2-site [id^="gb-service"] :is(.svc-section-lilac,.svc-section-dark),
.gb-v2-site.gb-v2-site #gb-contact .ct-section-lilac{background:var(--gb2-lilac)!important;color:var(--gb2-ink)!important}
.gb-v2-site.gb-v2-site #gb-about :is(.abt-section-lilac,.abt-section-dark,.abt-proof-section) :is(h2,h3,p),
.gb-v2-site.gb-v2-site [id^="gb-service"] :is(.svc-section-lilac,.svc-section-dark) :is(h2,h3,p),
.gb-v2-site.gb-v2-site #gb-contact .ct-section-lilac :is(h2,h3,p){color:var(--gb2-ink)!important}
.gb-v2-site.gb-v2-site :is(#gb-about,[id^="gb-service"],#gb-contact) :is(.abt-hero,.svc-hero,.ct-hero) :is(.abt-accent,.svc-accent,.ct-accent){color:#fff!important}
.gb-v2-site.gb-v2-site :is(#gb-about,[id^="gb-service"],#gb-contact) :is(.abt-hero,.svc-hero,.ct-hero) :is(.abt-eyebrow,.svc-eyebrow,.ct-eyebrow){color:var(--gb2-gold)!important}
body.gb-v2-site.single-post .entry-content a:not(.wp-block-button__link){text-decoration:none}
body.gb-v2-site.single-post .entry-content a:not(.wp-block-button__link):hover{text-decoration:underline;text-underline-offset:3px}
