/* Pagine interne: il banner comune è in brand.css. Home e schede prodotto
   non ricevono twh-page-system; moduli, schede libro e footer conservano i propri stili. */
body.twh-page-system{
    --twh-page-purple:#3b2154;
    --twh-page-ink:#1c1f39;
    --twh-page-accent:#6b36a1;
    --twh-page-muted:#62576e;
    --twh-page-paper:#faf8f2;
    --twh-page-surface:#fff;
    --twh-page-line:#e6dceb;
    --twh-page-h2:32px;
    --twh-page-h3:22px;
    --twh-page-gutter:48px;
    --twh-page-space:48px;
    font-family:Roboto,Arial,sans-serif;
    color:var(--twh-page-ink);
}
body.twh-page-system .twh-page-content{
    box-sizing:border-box;
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:var(--twh-page-space) var(--twh-page-gutter);
}
/* I documenti a sezioni hanno un contenitore interno per ciascuna sezione. */
body.twh-page-system .twh-page-content--sections{
    max-width:none;
    padding:0;
}
/* Le righe e le colonne del tema mantengono i loro gutter interni. */
body.twh-page-system #primary.content-area>.container{
    box-sizing:border-box;
    width:100%;
    max-width:1180px;
    margin-right:auto;
    margin-left:auto;
    padding-right:var(--twh-page-gutter);
    padding-left:var(--twh-page-gutter);
}
/* La FAQ è già nel contenitore del tema: nessun secondo rientro o spazio sopra. */
body.twh-page-system #primary.content-area #twfaq.twf-integrata.twh-page-content{
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
}
body.twh-page-system #primary.content-area:has(#twfaq.twf-integrata){background:var(--twh-page-paper)}
body.twh-page-system .twh-editorial-body.twh-wrap{
    box-sizing:border-box;
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:var(--twh-page-space) var(--twh-page-gutter) 64px;
}

/* Solo testo editoriale identificato dal server: niente selettori generici sui form. */
body.twh-page-system .twh-prose,
body.twh-page-system.twh-prose-page .entry-content{
    color:var(--twh-page-ink);
    font:400 17px/1.75 Roboto,Arial,sans-serif;
    overflow-wrap:break-word;
}
body.twh-page-system .twh-prose h2,
body.twh-page-system.twh-prose-page .entry-content h2,
body.twh-page-system .twh-about h2,
body.twh-page-system :is(.twt-intro-title,.twt-guide>h2,.twt-form-heading>h2){
    font:900 italic var(--twh-page-h2)/1.15 Roboto,Arial,sans-serif;
    color:var(--twh-page-purple);
    letter-spacing:-.025em;
    text-transform:none;
    margin:0 0 20px;
}
body.twh-page-system .twh-prose h3,
body.twh-page-system.twh-prose-page .entry-content h3,
body.twh-page-system .twh-about h3,
body.twh-page-system .twt-note h3{
    font:900 var(--twh-page-h3)/1.25 Roboto,Arial,sans-serif;
    color:var(--twh-page-purple);
    letter-spacing:-.015em;
    text-transform:none;
    margin:28px 0 12px;
}
body.twh-page-system .twh-prose :is(p,ul,ol),
body.twh-page-system.twh-prose-page .entry-content :is(p,ul,ol){
    font:400 17px/1.75 Roboto,Arial,sans-serif;
    color:var(--twh-page-ink);
    max-width:78ch;
    margin-top:0;
    margin-bottom:22px;
}
body.twh-page-system .twh-prose :is(p,ul,ol)+h2,
body.twh-page-system.twh-prose-page .entry-content :is(p,ul,ol)+h2{margin-top:40px}
body.twh-page-system .twh-prose li,
body.twh-page-system.twh-prose-page .entry-content li{margin:8px 0}
body.twh-page-system .twh-prose a:not([class]),
body.twh-page-system.twh-prose-page .entry-content a:not([class]){
    color:var(--twh-page-accent);
    text-decoration:underline;
    text-underline-offset:3px;
}
body.twh-page-system .twh-prose a:focus-visible,
body.twh-page-system.twh-prose-page .entry-content a:focus-visible{
    outline:3px solid var(--twh-page-accent);
    outline-offset:4px;
}

/* Chi siamo: restano foto, colonne e social allineati in fondo alle biografie. */
body.twh-page-system .twh-about{padding-top:var(--twh-page-space);background:var(--twh-page-paper)}
body.twh-page-system .twh-about>.wp-block-group{
    box-sizing:border-box;
    width:100%;
    max-width:1180px;
    margin-right:auto;
    margin-left:auto;
    padding-right:var(--twh-page-gutter);
    padding-left:var(--twh-page-gutter);
}
body.twh-page-system .twh-about>.twh-about-intro{padding-bottom:var(--twh-page-space)}
body.twh-page-system .twh-about>.twh-about-founders,
body.twh-page-system .twh-about>.twh-about-stories{padding-top:var(--twh-page-space);padding-bottom:var(--twh-page-space)}
body.twh-page-system .twh-about>.twh-about-closing{padding-top:var(--twh-page-space);padding-bottom:64px}
body.twh-page-system .twh-about .twh-about-lead{font-size:20px;line-height:1.6;max-width:70ch}

/* Nuovi talenti: introduzione creativa nel corpo, sotto l'unico banner viola. */
body.twh-page-system .twt-hero{background:var(--twh-page-paper);color:var(--twh-page-ink)}
body.twh-page-system .twt-hero:after{border-color:#6b36a124}
body.twh-page-system :is(.twt-hero-inner,.twt-layout){
    box-sizing:border-box;
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding-right:var(--twh-page-gutter);
    padding-left:var(--twh-page-gutter);
}
body.twh-page-system .twt-hero-inner{grid-template-columns:minmax(0,1fr) 220px;gap:48px;padding-top:var(--twh-page-space);padding-bottom:var(--twh-page-space)}
body.twh-page-system .twt-intro-title{max-width:27ch;margin-bottom:20px}
body.twh-page-system .twt-hero .twt-eyebrow{color:var(--twh-page-accent)}
body.twh-page-system .twt-back{color:var(--twh-page-accent)!important}
body.twh-page-system .twt-lead{color:var(--twh-page-muted);font-size:17px;line-height:1.75;margin:0 0 24px;max-width:62ch}
body.twh-page-system .twt-stamp{padding:22px 20px;box-shadow:7px 7px 0 #3b2154;transform:rotate(4deg)}
body.twh-page-system .twt-stamp>span{font-size:12px;padding-bottom:12px;margin-bottom:14px}
body.twh-page-system .twt-stamp>b{font-size:34px}
body.twh-page-system .twt-stamp>i{margin-top:16px}
body.twh-page-system .twt-layout{padding-top:var(--twh-page-space);padding-bottom:64px;border-top:1px solid var(--twh-page-line)}
body.twh-page-system .twt-note h3{margin-top:14px}

/* Solo intestazioni delle aree WooCommerce, mai titoli di card o campi. */
body.twh-page-system .woocommerce .cart_totals>h2,
body.twh-page-system .woocommerce .woocommerce-MyAccount-content>h2{
    font:900 italic var(--twh-page-h2)/1.15 Roboto,Arial,sans-serif;
    color:var(--twh-page-purple);
    letter-spacing:-.025em;
    text-transform:none;
}
body.twh-page-system .woocommerce :is(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields,.woocommerce-Address-title)>h3,
body.twh-page-system .woocommerce #order_review_heading{
    font:900 var(--twh-page-h3)/1.25 Roboto,Arial,sans-serif;
    color:var(--twh-page-purple);
    letter-spacing:-.015em;
    text-transform:none;
}

@media(max-width:879px){
    body.twh-page-system{--twh-page-gutter:24px;--twh-page-space:32px;--twh-page-h2:28px}
    body.twh-page-system .twt-hero-inner{grid-template-columns:minmax(0,1fr) 190px;gap:28px}
    body.twh-page-system .twt-stamp{padding:19px 16px}
    body.twh-page-system .twt-stamp>b{font-size:30px}
}
@media(max-width:680px){
    body.twh-page-system .twt-hero-inner{display:block}
    body.twh-page-system .twt-intro-title{max-width:27ch}
    body.twh-page-system .twt-lead{font-size:16px}
    body.twh-page-system .twt-layout{padding-bottom:48px}
    body.twh-page-system .twh-about .twh-about-lead{font-size:19px}
    body.twh-page-system .twh-about>.twh-about-closing{padding-bottom:48px}
}
