.new-guide,
.new-guide-access-denied {
    --guide-bg: #0b0a09;
    --guide-surface: #151210;
    --guide-surface-soft: #211b17;
    --guide-paper: #f2e4c6;
    --guide-paper-deep: #e2cfaa;
    --guide-ink: #2a2119;
    --guide-text: #d8cbb7;
    --guide-text-muted: #aa9d89;
    --guide-gold: #d7ad62;
    --guide-gold-light: #e8cc8d;
    --guide-bronze: #8e6237;
    --guide-border: rgba(208, 166, 92, .34);
    --guide-radius: 7px;
    --guide-sidebar-width: 258px;
    --guide-toc-width: 215px;
    --guide-font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
    --guide-font-body: "Source Serif 4", Georgia, "Times New Roman", serif;
    --guide-font-ui: "Source Sans 3", Arial, Helvetica, sans-serif;
    box-sizing: border-box;
    color: var(--guide-text);
    font-family: var(--guide-font-ui);
}

.new-guide *, .new-guide *::before, .new-guide *::after { box-sizing: border-box; }

html.guide-standalone,
body.guide-standalone {
    height: 100%;
    min-height: 100%;
    margin: 0;
    background: #0b0a09;
}
body.guide-standalone {
    height: 100vh;
    min-height: 100vh;
    overflow: hidden;
}
body.guide-standalone .new-guide {
    height: 100vh;
    min-height: 0;
}
body.guide-standalone .guide-sidebar { position: relative; top: auto; }

.new-guide {
    position: relative;
    display: grid;
    grid-template-columns: var(--guide-sidebar-width) minmax(0, 1fr);
    width: 100%;
    height: calc(100vh - 20px);
    min-height: 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 72% 0, rgba(142, 98, 55, .07), transparent 34%),
        var(--guide-bg);
    text-align: left;
}
.new-guide.has-page-toc { grid-template-columns: var(--guide-sidebar-width) minmax(0, 1fr) var(--guide-toc-width); }

.new-guide a { color: inherit; text-decoration: none; }
.new-guide img { max-width: 100%; }
.new-guide button, .new-guide input { font: inherit; }
.new-guide mark { padding: 0 .1em; background: rgba(208,166,92,.35); color: inherit; }

.guide-sidebar {
    position: relative;
    z-index: 20;
    display: flex;
    width: var(--guide-sidebar-width);
    height: 100%;
    min-height: 0;
    flex-direction: column;
    overflow: hidden;
    border-right: 1px solid var(--guide-border);
    background: linear-gradient(180deg, #15110f, #090807 72%);
}
.guide-sidebar-brand { display: flex; align-items: center; justify-content: space-between; padding: 24px 20px 18px; border-bottom: 1px solid var(--guide-border); }
.guide-sidebar-brand a span, .guide-sidebar-brand a strong { display: block; }
.guide-sidebar-brand a span { color: var(--guide-text-muted); font-size: 9px; letter-spacing: .28em; }
.guide-sidebar-brand a strong { margin-top: 2px; color: var(--guide-gold-light); font: 600 25px/1 var(--guide-font-display); letter-spacing: .16em; }
.guide-sidebar-brand button { display: none; border: 0; background: transparent; color: var(--guide-gold-light); font-size: 25px; }

.guide-sidebar-search { padding: 15px 17px 12px; }
.guide-sidebar-search label { display: block; margin-bottom: 5px; color: var(--guide-text-muted); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.guide-sidebar-search div { display: flex; border-bottom: 1px solid var(--guide-border); }
.guide-sidebar-search input { width: 100%; min-width: 0; padding: 8px 2px; border: 0; outline: 0; background: transparent; color: var(--guide-text); font-size: 12px; }
.guide-sidebar-search button { width: 30px; border: 0; background: transparent; color: var(--guide-gold); cursor: pointer; }

.guide-sidebar-nav { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior-y: contain; padding: 5px 10px 18px; scrollbar-color: var(--guide-bronze) transparent; scrollbar-width: thin; }
.guide-sidebar-tree, .guide-sidebar-tree ul { margin: 0; padding: 0; list-style: none; }
.guide-sidebar-tree > li { margin-bottom: 1px; }
.guide-sidebar-section { display: flex; align-items: center; gap: 7px; padding: 8px 7px; color: var(--guide-text-muted); font-size: 10px; font-weight: bold; letter-spacing: .055em; text-transform: uppercase; }
.guide-sidebar-section:hover, .guide-sidebar-tree > li.is-active > .guide-sidebar-section { color: var(--guide-gold-light); background: rgba(208,166,92,.06); }
.guide-section-mark { flex: 0 0 auto; color: var(--guide-gold); font-size: 12px; }
.guide-sidebar-tree .guide-sidebar-tree { margin-left: 15px; border-left: 1px solid rgba(208,166,92,.18); }
.guide-sidebar-tree .guide-sidebar-tree .guide-sidebar-section { padding-block: 6px; font-size: 9px; }
.guide-sidebar-pages { margin: 0 0 6px 25px !important; }
.guide-sidebar-pages li a { display: block; padding: 5px 6px; border-left: 1px solid transparent; color: #a89a84; font: 12px/1.35 var(--guide-font-ui); }
.guide-sidebar-pages li a:hover, .guide-sidebar-pages li.is-current a { border-left-color: var(--guide-gold); color: var(--guide-gold-light); }
.guide-sidebar-tools { display: grid; padding: 12px 17px 17px; border-top: 1px solid var(--guide-border); }
.guide-sidebar-tools a { padding: 5px 0; color: var(--guide-text-muted); font-size: 10px; text-transform: uppercase; }
.guide-sidebar-tools a:hover { color: var(--guide-gold-light); }

.guide-content {
    grid-column: 2;
    min-width: 0;
    min-height: 0;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scrollbar-color: var(--guide-bronze) transparent;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
}
.guide-content.has-toc { padding-right: 0; }
.guide-content > section,
.guide-article { width: min(1120px, calc(100% - 64px)); margin: 0 auto; padding: 58px 0 75px; }
.guide-preview-banner { position: sticky; top: 0; z-index: 8; padding: 8px 18px; border-bottom: 1px solid #b47735; background: #704a26; color: #fff0c7; font-size: 11px; text-align: center; }

.guide-mobile-menu { display: none; }
.guide-mobile-overlay { display: none; }

.guide-kicker, .guide-section-heading > p { margin: 0 0 8px; color: var(--guide-gold); font-size: 9px; font-weight: bold; letter-spacing: .22em; text-transform: uppercase; }
.guide-home-hero { padding-top: 85px !important; }
.guide-home-hero h1, .guide-index-page > header h1, .guide-search-page > header h1, .guide-glossary-page > header h1, .guide-map-page > header h1, .guide-not-found h1 { margin: 0; overflow-wrap: anywhere; color: var(--guide-gold-light); font: 500 clamp(58px, 5.4vw, 64px)/.98 var(--guide-font-display); letter-spacing: .015em; text-wrap: balance; }
.guide-home-hero > p:not(.guide-kicker), .guide-index-page > header > p:not(.guide-kicker), .guide-search-page > header > p, .guide-glossary-page > header > p, .guide-map-page > header > p { max-width: 760px; margin: 18px 0 26px; color: var(--guide-text-muted); font: 18px/1.65 var(--guide-font-body); }

.guide-hero-search { display: flex; width: min(650px, 100%); margin-top: 25px; border: 1px solid var(--guide-border); border-radius: var(--guide-radius); background: rgba(0,0,0,.2); }
.guide-hero-search input { width: 100%; min-width: 0; padding: 13px 15px; border: 0; outline: 0; background: transparent; color: var(--guide-text); font-size: 14px; }
.guide-hero-search button { padding: 10px 20px; border: 0; border-left: 1px solid var(--guide-border); background: rgba(208,166,92,.1); color: var(--guide-gold-light); cursor: pointer; }

.guide-home-section { padding-top: 30px !important; }
.guide-section-heading h2, .guide-related h2, .guide-quickfacts > h2, .guide-search-results > h2 { margin: 0 0 22px; color: var(--guide-gold-light); font: 500 clamp(30px, 3vw, 36px)/1.08 var(--guide-font-display); }
.guide-path-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.guide-path-card {
    --path-accent: var(--guide-gold);
    --path-title: var(--guide-gold-light);
    --path-border: var(--guide-border);
    --path-glow: rgba(208,166,92,.16);
    position: relative;
    display: block;
    min-height: clamp(285px, 22vw, 340px);
    overflow: hidden;
    isolation: isolate;
    border: 1px solid var(--path-border);
    border-radius: 8px;
    background: #151210;
    box-shadow: inset 0 1px rgba(255,255,255,.025);
}

.guide-path-card::after {
    position: absolute;
    z-index: 4;
    inset: 0;
    border: 1px solid transparent;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.018);
    content: "";
    pointer-events: none;
}

.guide-path-card__visual {
    position: absolute;
    z-index: 0;
    inset: 0;
    background-repeat: no-repeat;
    background-position: center right;
    background-size: cover;
    transform: scale(1.01);
    transition: transform .45s ease, filter .35s ease;
}

.guide-path-card__shade {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(10,9,8,.98) 0%, rgba(10,9,8,.94) 28%, rgba(10,9,8,.78) 46%, rgba(10,9,8,.32) 68%, rgba(10,9,8,.08) 100%),
        linear-gradient(0deg, rgba(7,6,5,.5), transparent 48%);
    pointer-events: none;
}

.guide-path-card__ornament {
    position: absolute;
    z-index: 3;
    top: 24px;
    right: 25px;
    color: var(--path-accent);
    font-size: 31px;
    line-height: 1;
    opacity: .82;
    text-shadow: 0 0 18px var(--path-glow);
}

.guide-path-card__content {
    position: relative;
    z-index: 2;
    display: flex;
    width: min(57%, 430px);
    min-height: clamp(285px, 22vw, 340px);
    flex-direction: column;
    padding: 34px 36px 30px;
}

.guide-path-card strong {
    display: block;
    color: var(--path-title);
    font: 500 clamp(32px, 3vw, 40px)/1.02 var(--guide-font-display);
    letter-spacing: .01em;
    text-shadow: 0 2px 16px rgba(0,0,0,.55);
}

.guide-path-card strong::after {
    display: block;
    width: 56px;
    height: 1px;
    margin-top: 12px;
    background: linear-gradient(90deg, var(--path-accent), transparent);
    content: "";
    opacity: .9;
}

.guide-path-card p {
    max-width: 330px;
    min-height: 0;
    margin: 18px 0 22px;
    color: #d2c6b3;
    font: 15px/1.62 var(--guide-font-body);
    text-shadow: 0 1px 10px rgba(0,0,0,.72);
}

.guide-path-card em {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: auto;
    color: var(--path-accent);
    font: 650 11px/1.2 var(--guide-font-ui);
    font-style: normal;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.guide-path-card em span {
    display: inline-block;
    transition: transform .18s ease;
}

.guide-path-card:hover {
    border-color: var(--path-accent);
    box-shadow: 0 12px 34px rgba(0,0,0,.28), 0 0 26px var(--path-glow);
    transform: translateY(-3px);
}

.guide-path-card:hover .guide-path-card__visual {
    filter: brightness(1.06);
    transform: scale(1.045);
}

.guide-path-card:hover em span { transform: translateX(4px); }

/* Percorso Studente: notte, scuola, futuro ancora aperto. */
.guide-path-card--studente {
    --path-accent: #86bce8;
    --path-title: #c9e3f7;
    --path-border: rgba(118,174,220,.48);
    --path-glow: rgba(70,139,197,.22);
}
.guide-path-card--studente .guide-path-card__visual {
    background-image: url("/imgs/guide/pandora-home-studente.jpg");
}

/* Percorso Adulto: Alter Merriwick, maturità e Neo Libero Arbitrio. */
.guide-path-card--adulto {
    --path-accent: #ddb061;
    --path-title: #f0d59a;
    --path-border: rgba(221,176,97,.48);
    --path-glow: rgba(201,137,54,.21);
}
.guide-path-card--adulto .guide-path-card__visual {
    background-image: url("/imgs/guide/pandora-home-adulto.jpg");
}

.guide-section-list { border-top: 1px solid var(--guide-border); }
.guide-section-list > a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 13px; align-items: center; padding: 16px 7px; border-bottom: 1px solid rgba(208,166,92,.2); }
.guide-section-list > a:hover { padding-left: 13px; background: rgba(208,166,92,.035); }
.guide-section-list strong, .guide-section-list small { display: block; }
.guide-section-list strong { color: var(--guide-text); font: 600 17px/1.25 var(--guide-font-body); }
.guide-section-list small { margin-top: 4px; color: var(--guide-text-muted); font-size: 11px; }
.guide-section-list em { color: var(--guide-gold); font-style: normal; }

.guide-recent ol { margin: 0; padding: 0; border-top: 1px solid var(--guide-border); list-style: none; }
.guide-recent li { display: grid; grid-template-columns: 85px 1fr; gap: 6px 15px; padding: 13px 4px; border-bottom: 1px solid rgba(208,166,92,.18); }
.guide-recent time { color: var(--guide-text-muted); font-size: 10px; }
.guide-recent a { color: var(--guide-gold-light); font: 600 16px/1.3 var(--guide-font-body); }
.guide-recent li p { grid-column: 2; margin: 0; color: var(--guide-text-muted); font-size: 11px; }

.guide-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; color: var(--guide-text-muted); font-size: 10px; text-transform: uppercase; }
.guide-breadcrumb a:hover { color: var(--guide-gold-light); }
.guide-page-header { position: relative; display: flex; min-height: clamp(300px, 24vw, 340px); align-items: center; margin: 0 0 32px; overflow: hidden; isolation: isolate; border-block: 1px solid rgba(215,173,98,.16); background: linear-gradient(120deg, #151210, #0b0a09 72%); }
.guide-page-header--plain { min-height: 270px; background: radial-gradient(circle at 82% 20%, rgba(142,98,55,.1), transparent 36%), linear-gradient(120deg, #151210, #0b0a09 72%); }
.guide-page-header--hero::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, #0a0908 0%, rgba(10,9,8,.99) 34%, rgba(10,9,8,.9) 51%, rgba(10,9,8,.48) 70%, rgba(10,9,8,.14) 100%), linear-gradient(0deg, rgba(8,7,6,.54), transparent 38%); content: ""; pointer-events: none; }
.guide-page-header__visual { position: absolute; z-index: 0; inset: 0 0 0 30%; margin: 0; overflow: hidden; }
.guide-page-header__visual img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center center; }
.guide-page-header__visual--left img { object-position: left center; }
.guide-page-header__visual--right img { object-position: right center; }
.guide-page-header__content { position: relative; z-index: 2; width: min(66%, 720px); padding: 28px 32px; }
.guide-page-header--plain .guide-page-header__content { width: min(100%, 850px); }
.guide-page-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 10px; color: var(--guide-text-muted); font-size: 9px; text-transform: uppercase; }
.guide-page-meta > * + *::before { margin-right: 7px; color: var(--guide-bronze); content: "·"; }
.guide-page-header h1 { margin: 0; overflow-wrap: anywhere; color: var(--guide-gold-light); font: 500 clamp(46px, 4.7vw, 58px)/.96 var(--guide-font-display); letter-spacing: .01em; text-wrap: balance; text-shadow: 0 2px 18px rgba(0,0,0,.42); }
.guide-subtitle { max-width: 690px; margin: 8px 0 0; color: #c4b59e; font: italic 19px/1.36 var(--guide-font-body); }
.guide-summary { max-width: 690px; margin: 12px 0 0; color: var(--guide-text); font: 17px/1.52 var(--guide-font-body); }
.guide-edit-current { padding: 2px 7px; border: 1px solid var(--guide-border); border-radius: 999px; color: var(--guide-gold-light) !important; }
.guide-edit-current:hover { border-color: var(--guide-gold); background: rgba(208,166,92,.08); }

.guide-quickfacts { margin: 26px 0 38px; padding: 22px; border: 1px solid var(--guide-border); border-radius: var(--guide-radius); background: rgba(27,23,20,.72); }
.guide-quickfacts > h2 { margin-bottom: 14px; font-size: 30px; }
.guide-quickfacts > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; }
.guide-quickfacts article { display: grid; grid-template-columns: auto 1fr; gap: 9px; align-items: start; }
.guide-quickfacts article > span { color: var(--guide-gold); }
.guide-quickfacts h3 { margin: 0 0 3px; color: var(--guide-gold-light); font: 600 16px/1.25 var(--guide-font-body); }
.guide-quickfacts p { margin: 0; color: var(--guide-text-muted); font: 15px/1.55 var(--guide-font-body); }

.guide-body { max-width: 1120px; color: var(--guide-text); font: 18px/1.67 var(--guide-font-body); hyphens: auto; -webkit-hyphens: auto; }
/* Il corpo dell'articolo usa tutta la larghezza disponibile.
   Il precedente limite a 820px creava una colonna di testo inutilmente stretta. */
.guide-body > :not(table):not(figure) { max-width: 100%; }
.guide-body p { margin: 0 0 1.15em; text-align: justify; text-wrap: pretty; }
.guide-body li, .guide-body li p, .guide-body aside p, .guide-body blockquote p, .guide-body figcaption, .guide-body th, .guide-body td, .guide-body th p, .guide-body td p { text-align: left; hyphens: none; -webkit-hyphens: none; }
.guide-body h2 { margin: 2.1em 0 .62em; scroll-margin-top: 25px; color: var(--guide-gold-light); font: 500 clamp(30px, 3vw, 36px)/1.16 var(--guide-font-display); }
.guide-body > h2:first-child, .guide-body > h3:first-child { margin-top: .65em; }
.guide-body h2::after { display: block; width: 52px; height: 1px; margin-top: 8px; background: var(--guide-gold); content: ""; }
.guide-body h3 { margin: 1.7em 0 .52em; scroll-margin-top: 25px; color: #dfbf81; font: 600 clamp(22px, 2.2vw, 26px)/1.2 var(--guide-font-display); }
.guide-body ul, .guide-body ol { margin: 0 0 1.2em; padding-left: 1.4em; }
.guide-body li { margin-bottom: .35em; }
.guide-body a { color: var(--guide-gold-light); text-decoration: underline; text-decoration-color: rgba(208,166,92,.45); text-underline-offset: 2px; }
.guide-body blockquote { margin: 1.5em 0; padding: 2px 0 2px 19px; border-left: 2px solid var(--guide-bronze); color: var(--guide-text-muted); font-style: italic; }
.guide-body img { height: auto; }

/* Immagini negli articoli: classi editoriali predefinite della Guida. */
.guide-body img.guide-img-left,
.guide-body img.guide-img-right {
    display: block;
    height: auto;
}
.guide-body img.guide-img-left {
    float: left;
    margin: .15em 1.35em .8em 0;
}
.guide-body img.guide-img-right {
    float: right;
    margin: .15em 0 .8em 1.35em;
}
.guide-body img.guide-img-center {
    display: block;
    float: none;
    margin: 1.2em auto;
}
.guide-body img.guide-img-small {
    width: 120px;
    max-width: 120px;
}
.guide-body img.guide-img-medium {
    width: 200px;
    max-width: 200px;
}
.guide-body img.guide-img-large {
    width: 300px;
    max-width: 300px;
}
.guide-body > img.guide-img-wide,
.guide-body img.guide-img-wide {
    display: block;
    float: none;
    width: 100%;
    max-width: 100%;
    margin: 1.4em 0;
}
.guide-body img.guide-img-clear { clear: both; }
.guide-body::after { display: block; clear: both; content: ""; }
/* Un nuovo titolo non deve mai risalire accanto all'immagine della sezione precedente. */
.guide-body h2,
.guide-body h3 { clear: both; }

.guide-body table { display: block; max-width: 100%; margin: 1.4em 0; overflow-x: auto; border-collapse: collapse; }
.guide-body th, .guide-body td { padding: 8px 10px; border: 1px solid var(--guide-border); }
.guide-body th { color: var(--guide-gold-light); background: rgba(208,166,92,.08); }
.guide-body pre, .guide-body code { font-family: Consolas, Monaco, monospace; }
.guide-body pre { overflow-x: auto; padding: 15px; background: rgba(0,0,0,.25); }

.guide-callout { margin: 1.65em 0; padding: 17px 18px; border: 1px solid var(--guide-border); border-left: 3px solid var(--guide-gold); border-radius: 4px; background: rgba(27,23,20,.76); color: var(--guide-text); }
.guide-callout > strong:first-child { display: block; margin-bottom: 6px; color: var(--guide-gold-light); font: 600 18px/1.25 var(--guide-font-display); }
.guide-callout p:last-child { margin-bottom: 0; }
.guide-callout-warning { border-left-color: #c9773c; }
.guide-callout-example { border-left-color: #9b8f7b; }
.guide-callout-game { border-left-color: #b98d43; background: rgba(112,78,35,.14); }

.guide-related { max-width: 1120px; margin-top: 55px; padding-top: 27px; border-top: 1px solid var(--guide-border); }
.guide-related > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.guide-related a { padding: 15px; border-left: 2px solid var(--guide-bronze); background: rgba(46,35,27,.38); }
.guide-related a:hover { border-left-color: var(--guide-gold); background: rgba(46,35,27,.7); }
.guide-related small, .guide-related strong { display: block; }
.guide-related small { color: var(--guide-text-muted); font-size: 9px; text-transform: uppercase; }
.guide-related strong { margin-top: 5px; color: var(--guide-gold-light); font: 600 18px/1.25 var(--guide-font-body); }
.guide-related p { margin: 7px 0 0; color: var(--guide-text-muted); font: 14px/1.5 var(--guide-font-body); }

.guide-page-navigation { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; max-width: 1120px; margin-top: 38px; padding-top: 18px; border-top: 1px solid var(--guide-border); }
.guide-page-navigation a { display: grid; gap: 4px; }
.guide-page-navigation a:last-child { text-align: right; }
.guide-page-navigation small { color: var(--guide-text-muted); font-size: 9px; text-transform: uppercase; }
.guide-page-navigation strong { color: var(--guide-gold-light); font: 600 16px/1.3 var(--guide-font-body); }

.guide-toc {
    position: relative;
    top: auto;
    z-index: 5;
    grid-column: 3;
    grid-row: 1;
    width: var(--guide-toc-width);
    height: 100%;
    min-height: 0;
    max-height: none;
    padding: 42px 20px 20px 15px;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    border-left: 1px solid var(--guide-border);
    color: var(--guide-text-muted);
    scrollbar-color: var(--guide-bronze) transparent;
    scrollbar-width: thin;
}
.guide-toc > strong { display: block; margin-bottom: 11px; color: var(--guide-gold-light); font: 650 13px/1.25 var(--guide-font-ui); }
.guide-toc ol { margin: 0; padding: 0; list-style: none; }
.guide-toc li { margin: 0 0 8px; }
.guide-toc li.level-3 { padding-left: 11px; }
.guide-toc a { display: block; padding: 2px 0; border-left: 1px solid transparent; color: var(--guide-text-muted); font-size: 11px; line-height: 1.38; }
.guide-toc a:hover, .guide-toc a.is-active { border-left-color: var(--guide-gold); color: var(--guide-gold-light); padding-left: 6px; }
.guide-toc-mobile { display: none; }

.guide-index-page > header, .guide-search-page > header, .guide-glossary-page > header, .guide-map-page > header { margin-bottom: 40px; }
.guide-subsections { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-bottom: 32px; }
.guide-subsections a { padding: 17px; border: 1px solid var(--guide-border); border-radius: 5px; background: rgba(46,35,27,.35); }
.guide-subsections strong { color: var(--guide-gold-light); font: 600 18px/1.25 var(--guide-font-body); }
.guide-subsections p { margin: 7px 0 0; color: var(--guide-text-muted); font-size: 11px; line-height: 1.5; }
.guide-page-index { border-top: 1px solid var(--guide-border); }
.guide-page-index > a { display: grid; grid-template-columns: 35px 1fr auto; gap: 12px; align-items: center; padding: 17px 3px; border-bottom: 1px solid rgba(208,166,92,.18); }
.guide-page-index > a > span { color: var(--guide-bronze); font: 500 13px/1 var(--guide-font-ui); }
.guide-page-index strong { color: var(--guide-gold-light); font: 600 18px/1.25 var(--guide-font-body); }
.guide-page-index p { margin: 5px 0 0; color: var(--guide-text-muted); font-size: 11px; }
.guide-page-index em { color: var(--guide-gold); font-style: normal; }

.guide-path-steps { max-width: 760px; margin: 0; padding: 0; list-style: none; }
.guide-path-steps li { position: relative; display: grid; grid-template-columns: 42px 1fr; gap: 18px; padding-bottom: 31px; }
.guide-path-steps li::before { position: absolute; top: 35px; bottom: 0; left: 20px; width: 1px; background: var(--guide-border); content: ""; pointer-events: none; }
.guide-path-steps li:last-child::before { display: none; }
.guide-path-steps li > span { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid var(--guide-gold); border-radius: 50%; color: var(--guide-gold-light); font: 600 17px/1 var(--guide-font-display); }
.guide-path-step__content { position: relative; z-index: 1; min-width: 0; }
.guide-path-steps small { color: var(--guide-text-muted); font-size: 9px; text-transform: uppercase; }
.guide-path-steps h2 { margin: 4px 0 7px; color: var(--guide-gold-light); font: 600 24px/1.15 var(--guide-font-display); }
.guide-path-step__title { position: relative; z-index: 2; display: block; width: 100%; padding: 2px 0 4px; color: inherit; text-decoration: none; cursor: pointer; pointer-events: auto; }
.guide-path-step__title:hover { color: var(--guide-paper); }
.guide-path-step__title:focus-visible { outline: 1px solid var(--guide-gold); outline-offset: 4px; color: var(--guide-paper); }
.guide-path-steps p { margin: 0 0 8px; color: var(--guide-text-muted); font-size: 12px; line-height: 1.55; }
.guide-path-step__action { color: var(--guide-gold); font-size: 10px; text-transform: uppercase; }

.guide-search-results { max-width: 800px; margin-top: 35px; }
.guide-search-results > a { display: block; padding: 17px 3px; border-bottom: 1px solid rgba(208,166,92,.2); }
.guide-search-results small { color: var(--guide-text-muted); font-size: 9px; text-transform: uppercase; }
.guide-search-results h3 { margin: 5px 0 6px; color: var(--guide-gold-light); font: 600 22px/1.2 var(--guide-font-display); }
.guide-search-results p { margin: 0; color: var(--guide-text-muted); font: 15px/1.58 var(--guide-font-body); }
.guide-search-glossary article { padding: 14px 3px; border-bottom: 1px solid rgba(208,166,92,.2); }
.guide-search-glossary article > a { display: inline-block; margin-top: 7px; color: var(--guide-gold); font-size: 10px; }

.guide-glossary-list { max-width: 800px; }
.guide-glossary-list > h2 { position: sticky; top: 0; margin: 28px 0 0; padding: 8px 0; border-bottom: 1px solid var(--guide-gold); background: var(--guide-bg); color: var(--guide-gold-light); font: 600 26px/1.2 var(--guide-font-display); }
.guide-glossary-list article { padding: 16px 2px; border-bottom: 1px solid rgba(208,166,92,.18); }
.guide-glossary-list h3 { margin: 0 0 6px; color: var(--guide-gold-light); font: 600 20px/1.2 var(--guide-font-display); }
.guide-glossary-list p { margin: 0; color: var(--guide-text-muted); font: 15px/1.62 var(--guide-font-body); }
.guide-glossary-list a { display: inline-block; margin-top: 7px; color: var(--guide-gold); font-size: 10px; }

.guide-map-tree, .guide-map-tree ul { margin: 0; padding: 0 0 0 20px; list-style: none; }
.guide-map-tree > li { margin-bottom: 15px; padding-left: 10px; border-left: 1px solid var(--guide-border); }
.guide-map-tree strong { color: var(--guide-gold-light); font: 600 19px/1.2 var(--guide-font-body); }
.guide-map-tree li li { margin: 8px 0; color: var(--guide-text-muted); font-size: 12px; }
.guide-map-tree li li a:hover { color: var(--guide-gold-light); }
.guide-empty { padding: 25px 0; color: var(--guide-text-muted); font: italic 16px/1.62 var(--guide-font-body); }
.guide-not-found { text-align: center; }
.guide-not-found a { display: inline-block; margin-top: 14px; padding: 9px 14px; border: 1px solid var(--guide-border); color: var(--guide-gold-light); }
.new-guide-access-denied { width: min(660px, calc(100% - 30px)); margin: 45px auto; padding: 28px; border: 1px solid var(--guide-border); border-left: 4px solid var(--guide-gold); background: var(--guide-bg); color: var(--guide-text); line-height: 1.65; text-align: center; }

.new-guide a,
.new-guide button { transition: color .16s ease, border-color .16s ease, background-color .16s ease, transform .16s ease, padding .16s ease; }

@media (max-width: 1150px) {
    .new-guide { --guide-sidebar-width: 235px; }
    .new-guide.has-page-toc { grid-template-columns: var(--guide-sidebar-width) minmax(0, 1fr); }
    .guide-content.has-toc { padding-right: 0; }
    .guide-toc { display: none; }
    .guide-toc-mobile { display: block; max-width: 100%; margin: 0 0 25px; padding: 10px 13px; border: 1px solid var(--guide-border); border-radius: 5px; color: var(--guide-text-muted); }
    .guide-toc-mobile summary { color: var(--guide-gold-light); cursor: pointer; font: 650 13px/1.3 var(--guide-font-ui); }
    .guide-toc-mobile ol { margin: 10px 0 0; padding-left: 20px; }
    .guide-toc-mobile li { margin: 5px 0; font-size: 11px; }
    .guide-toc-mobile li.level-3 { margin-left: 12px; }
}

@media (max-width: 760px) {
    html.guide-standalone,
    body.guide-standalone { height: auto; min-height: 100%; }
    body.guide-standalone { overflow-x: hidden; overflow-y: auto; }
    body.guide-standalone .new-guide { height: auto; min-height: 100vh; }
    .new-guide { display: block; height: auto; min-height: 100vh; overflow: visible; }
    .guide-mobile-menu { position: sticky; top: 0; z-index: 15; display: flex; width: 100%; min-height: 43px; align-items: center; gap: 9px; padding: 8px 14px; border: 0; border-bottom: 1px solid var(--guide-border); background: rgba(11,10,9,.97); color: var(--guide-gold-light); font-size: 11px; text-transform: uppercase; }
    .guide-sidebar { position: fixed; top: 0; bottom: 0; left: 0; z-index: 40; width: min(310px, 88vw); height: 100vh; min-height: 0; transform: translateX(-102%); transition: transform .2s ease; }
    body.guide-standalone .guide-sidebar { position: fixed; }
    .new-guide.is-sidebar-open .guide-sidebar { transform: translateX(0); }
    .guide-sidebar-brand button { display: block; }
    .guide-mobile-overlay { position: fixed; inset: 0; z-index: 35; display: block; background: rgba(0,0,0,.62); }
    .guide-mobile-overlay[hidden] { display: none; }
    .guide-content { height: auto; min-height: calc(100vh - 43px); overflow: visible; overscroll-behavior: auto; scrollbar-gutter: auto; }
    .guide-content > section, .guide-article { width: calc(100% - 30px); padding: 35px 0 55px; }
    .guide-home-hero { padding-top: 45px !important; }
    .guide-path-cards, .guide-quickfacts > div, .guide-related > div, .guide-subsections { grid-template-columns: 1fr; }
    .guide-path-card { min-height: 285px; }
    .guide-path-card__content { width: min(66%, 430px); min-height: 285px; padding: 30px 28px 27px; }
    .guide-path-card p { font-size: 14.5px; }
    .guide-path-card__shade {
        background:
            linear-gradient(90deg, rgba(10,9,8,.98) 0%, rgba(10,9,8,.93) 35%, rgba(10,9,8,.7) 58%, rgba(10,9,8,.18) 100%),
            linear-gradient(0deg, rgba(7,6,5,.58), transparent 50%);
    }
    .guide-page-header { min-height: 0; align-items: flex-end; margin-bottom: 25px; }
    .guide-page-header--plain { min-height: 0; }
    .guide-page-header--hero::after { background: linear-gradient(180deg, rgba(9,8,7,.74) 0%, rgba(9,8,7,.9) 44%, #090807 100%), linear-gradient(90deg, rgba(9,8,7,.94), rgba(9,8,7,.42)); }
    .guide-page-header__visual { inset: 0; }
    .guide-page-header__content, .guide-page-header--plain .guide-page-header__content { width: 100%; padding: 28px 20px 25px; }
    .guide-page-header h1, .guide-home-hero h1, .guide-index-page > header h1, .guide-search-page > header h1, .guide-glossary-page > header h1, .guide-map-page > header h1 { font-size: clamp(36px, 11vw, 44px); }
    .guide-subtitle { font-size: 18px; }
    .guide-summary { font-size: 17px; }
    .guide-body { font-size: 16.5px; line-height: 1.66; }
    .guide-body h2 { font-size: 30px; }
    .guide-body h3 { font-size: 23px; }
    .guide-body img.guide-img-left,
    .guide-body img.guide-img-right {
        float: none;
        margin: 1em auto;
        max-width: 100%;
    }
    .guide-body img.guide-img-small { width: 120px; }
    .guide-body img.guide-img-medium { width: 200px; }
    .guide-body img.guide-img-large { width: 300px; }
    .guide-page-navigation { grid-template-columns: 1fr; }
    .guide-page-navigation a:last-child { text-align: left; }
    .guide-recent li { grid-template-columns: 70px 1fr; }
    .guide-page-meta { display: grid; }
    .guide-page-meta > * + *::before { display: none; }
}

/* Quiz riservati: namespace dedicato per non alterare i contenuti editoriali. */
.guide-quiz-page { max-width: 1060px; }
.guide-quiz-header { max-width: 790px; margin-bottom: 34px; }
.guide-quiz-header h1,
.guide-quiz-play__heading h1,
.guide-quiz-result__hero h1 {
    margin: 0;
    color: var(--guide-gold-light);
    font: 500 clamp(42px, 5vw, 62px)/1 var(--guide-font-display);
    text-wrap: balance;
}
.guide-quiz-header > p:not(.guide-kicker) { margin: 17px 0 0; color: var(--guide-text-muted); font: 18px/1.6 var(--guide-font-body); }
.guide-quiz-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.guide-quiz-card {
    position: relative;
    display: flex;
    min-height: 320px;
    flex-direction: column;
    padding: 24px;
    overflow: hidden;
    border: 1px solid var(--guide-border);
    border-radius: var(--guide-radius);
    background: linear-gradient(145deg, rgba(215,173,98,.08), transparent 50%), var(--guide-surface);
    box-shadow: inset 0 0 0 4px rgba(0,0,0,.12);
}
.guide-quiz-card::before { position: absolute; top: 0; left: 22px; width: 48px; height: 2px; background: var(--guide-gold); content: ""; }
.guide-quiz-card__meta { display: flex; gap: 12px; color: var(--guide-gold); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.guide-quiz-card h2 { margin: 16px 0 10px; color: var(--guide-gold-light); font: 500 31px/1.05 var(--guide-font-display); }
.guide-quiz-card > p { margin: 0 0 18px; color: var(--guide-text-muted); font: 15px/1.55 var(--guide-font-body); }
.guide-quiz-card__status { display: grid; gap: 4px; margin-top: auto; margin-bottom: 17px; padding-top: 14px; border-top: 1px solid rgba(215,173,98,.16); }
.guide-quiz-card__status strong { color: var(--guide-text); font-size: 12px; }
.guide-quiz-card__status span { color: var(--guide-text-muted); font-size: 10px; }
.guide-quiz-button,
.new-guide button.guide-quiz-button {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    border: 1px solid #b88545;
    border-radius: 4px;
    outline: 0;
    background: linear-gradient(#9e713b, #704a27);
    color: #fff1ca;
    font: 700 11px/1.2 var(--guide-font-ui);
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
}
.guide-quiz-button:hover,
.new-guide button.guide-quiz-button:hover { border-color: var(--guide-gold-light); filter: brightness(1.09); }
.guide-quiz-button:focus-visible,
.new-guide button.guide-quiz-button:focus-visible { box-shadow: 0 0 0 3px rgba(232,204,141,.3); }
.guide-quiz-button--secondary { background: transparent; color: var(--guide-gold-light); }
.guide-quiz-home-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: 15px !important;
    padding: 28px !important;
    border: 1px solid var(--guide-border);
    border-radius: var(--guide-radius);
    background: linear-gradient(120deg, rgba(215,173,98,.12), transparent 64%), var(--guide-surface);
}
.guide-quiz-home-cta h2 { margin: 0; color: var(--guide-gold-light); font: 500 36px/1 var(--guide-font-display); }
.guide-quiz-home-cta div > p:last-child { max-width: 670px; margin: 9px 0 0; color: var(--guide-text-muted); font: 15px/1.5 var(--guide-font-body); }
.guide-quiz-home-cta .guide-quiz-button { flex: 0 0 auto; }

.guide-quiz-play__heading { margin-bottom: 25px; }
.guide-quiz-play__heading progress,
.guide-quiz-result__hero progress {
    display: block;
    width: 100%;
    height: 8px;
    margin-top: 22px;
    overflow: hidden;
    border: 0;
    border-radius: 999px;
    background: #282019;
    accent-color: var(--guide-gold);
}
.guide-quiz-play__heading progress::-webkit-progress-bar,
.guide-quiz-result__hero progress::-webkit-progress-bar { background: #282019; }
.guide-quiz-play__heading progress::-webkit-progress-value,
.guide-quiz-result__hero progress::-webkit-progress-value { background: linear-gradient(90deg, var(--guide-bronze), var(--guide-gold)); }
.guide-quiz-question,
.guide-quiz-feedback {
    padding: clamp(22px, 4vw, 40px);
    border: 1px solid var(--guide-border);
    border-radius: var(--guide-radius);
    background: linear-gradient(145deg, rgba(215,173,98,.055), transparent 48%), var(--guide-surface);
}
.guide-quiz-question fieldset { min-width: 0; margin: 0 0 24px; padding: 0; border: 0; }
.guide-quiz-question legend { width: 100%; margin: 0 0 25px; color: var(--guide-paper); font: 500 clamp(25px, 3vw, 34px)/1.2 var(--guide-font-display); }
.guide-quiz-options { display: grid; gap: 10px; }
.guide-quiz-options label {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    min-height: 58px;
    padding: 11px 14px;
    border: 1px solid rgba(215,173,98,.23);
    border-radius: 5px;
    background: rgba(0,0,0,.18);
    color: var(--guide-text);
    font: 14px/1.45 var(--guide-font-body);
    cursor: pointer;
}
.guide-quiz-options label:hover { border-color: rgba(215,173,98,.55); background: rgba(215,173,98,.055); }
.guide-quiz-options label:focus-within { border-color: var(--guide-gold-light); box-shadow: 0 0 0 3px rgba(232,204,141,.14); }
.guide-quiz-options input { width: 18px; height: 18px; margin: 0; accent-color: var(--guide-gold); }
.guide-quiz-option-code { display: inline-grid; width: 28px; height: 28px; place-items: center; border: 1px solid var(--guide-border); border-radius: 50%; color: var(--guide-gold-light); font: 700 10px/1 var(--guide-font-ui); }
.guide-quiz-options label:has(input:checked) { border-color: var(--guide-gold); background: rgba(215,173,98,.1); }

.guide-quiz-verdict { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; font-size: 13px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.guide-quiz-verdict span { display: inline-grid; width: 30px; height: 30px; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: 19px; }
.guide-quiz-feedback--correct .guide-quiz-verdict { color: #a9c586; }
.guide-quiz-feedback--wrong .guide-quiz-verdict { color: #e09a80; }
.guide-quiz-feedback h2 { margin: 0 0 24px; color: var(--guide-paper); font: 500 clamp(25px, 3vw, 34px)/1.2 var(--guide-font-display); }
.guide-quiz-feedback h3,
.guide-quiz-review h4 { margin: 0 0 7px; color: var(--guide-gold-light); font: 600 18px/1.2 var(--guide-font-display); }
.guide-quiz-feedback__text,
.guide-quiz-explanation { margin: 17px 0; color: var(--guide-text-muted); font: 15px/1.6 var(--guide-font-body); }
.guide-quiz-feedback__text p,
.guide-quiz-explanation p { margin: 0; }
.guide-quiz-correction { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 0 20px; }
.guide-quiz-correction div { padding: 14px; border: 1px solid rgba(215,173,98,.2); background: rgba(0,0,0,.16); }
.guide-quiz-feedback--wrong .guide-quiz-correction div:first-child { border-color: rgba(224,154,128,.5); }
.guide-quiz-feedback--wrong .guide-quiz-correction div:last-child { border-color: rgba(169,197,134,.48); }
.guide-quiz-correction dt { margin-bottom: 5px; color: var(--guide-gold); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.guide-quiz-correction dd { margin: 0; color: var(--guide-text); font: 14px/1.45 var(--guide-font-body); }
.guide-quiz-source { display: block; margin: 18px 0 24px; color: var(--guide-gold-light) !important; font-size: 12px; font-weight: 700; }
.guide-quiz-source:hover { text-decoration: underline; }

.guide-quiz-result__hero { padding: clamp(25px, 5vw, 52px); border: 1px solid var(--guide-border); border-radius: var(--guide-radius); background: linear-gradient(145deg, rgba(215,173,98,.12), transparent 52%), var(--guide-surface); text-align: center; }
.guide-quiz-result__percentage { display: block; margin: 21px 0 0; color: var(--guide-gold-light); font: 600 clamp(50px, 8vw, 82px)/1 var(--guide-font-display); }
.guide-quiz-result__label { margin: 18px 0 0; color: var(--guide-paper-deep); font: 18px/1.4 var(--guide-font-body); }
.guide-quiz-result__actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 45px; }
.guide-quiz-result__actions form { margin: 0; }
.guide-quiz-review > h2 { margin: 0 0 20px; color: var(--guide-gold-light); font: 500 36px/1 var(--guide-font-display); }
.guide-quiz-review__list { display: grid; gap: 15px; }
.guide-quiz-review__list > article,
.guide-quiz-perfect { padding: 23px; border: 1px solid var(--guide-border); border-radius: var(--guide-radius); background: var(--guide-surface); }
.guide-quiz-review__list h3 { margin: 0 0 18px; color: var(--guide-paper); font: 500 25px/1.25 var(--guide-font-display); }
.guide-quiz-review__list > article > p:not(.guide-kicker) { color: var(--guide-text-muted); font: 15px/1.6 var(--guide-font-body); }

@media (max-width: 760px) {
    .guide-quiz-grid { grid-template-columns: 1fr; }
    .guide-quiz-card { min-height: 0; padding: 20px; }
    .guide-quiz-home-cta { align-items: flex-start; flex-direction: column; margin-inline: 16px !important; }
    .guide-quiz-correction { grid-template-columns: 1fr; }
    .guide-quiz-question, .guide-quiz-feedback { padding: 18px; }
    .guide-quiz-options label { grid-template-columns: auto auto minmax(0, 1fr); padding-inline: 10px; }
    .guide-quiz-result__actions { flex-direction: column; }
    .guide-quiz-result__actions form, .guide-quiz-result__actions .guide-quiz-button { width: 100%; }
}


@media (max-width: 500px) {
    .guide-path-card { min-height: 300px; }
    .guide-path-card__content { width: 78%; min-height: 300px; padding: 28px 23px 25px; }
    .guide-path-card strong { font-size: 32px; }
    .guide-path-card__ornament { top: 19px; right: 20px; font-size: 27px; }
    .guide-path-card__visual { background-position: 68% center; }
    .guide-path-card__shade {
        background:
            linear-gradient(90deg, rgba(10,9,8,.99) 0%, rgba(10,9,8,.95) 42%, rgba(10,9,8,.72) 68%, rgba(10,9,8,.25) 100%),
            linear-gradient(0deg, rgba(7,6,5,.64), transparent 48%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .new-guide *, .new-guide *::before, .new-guide *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* =========================================================
   PANDORA GUIDE — GERARCHIA PAGINE + RAFFINAMENTO IMMERSIVO
   19/08/2026
   ========================================================= */

.new-guide,
.new-guide-access-denied {
    --guide-surface-raised: #1c1713;
    --guide-surface-ink: #100e0c;
    --guide-gold-dim: rgba(215,173,98,.18);
    --guide-gold-faint: rgba(215,173,98,.075);
    --guide-shadow: rgba(0,0,0,.42);
}

/* Atmosfera generale: pelle/pietra scura, luce calda molto controllata. */
.new-guide {
    background:
        radial-gradient(ellipse at 76% -8%, rgba(215,173,98,.075), transparent 34%),
        radial-gradient(ellipse at 8% 88%, rgba(142,98,55,.055), transparent 30%),
        repeating-linear-gradient(135deg, rgba(255,255,255,.009) 0, rgba(255,255,255,.009) 1px, transparent 1px, transparent 8px),
        #0b0a09;
}

.guide-content {
    background:
        linear-gradient(90deg, rgba(255,255,255,.008), transparent 8%, transparent 92%, rgba(0,0,0,.08)),
        radial-gradient(circle at 48% 0, rgba(215,173,98,.025), transparent 30%);
}

/* Sidebar più "oggetto" e meno colonna piatta. */
.guide-sidebar {
    box-shadow: 12px 0 32px rgba(0,0,0,.2), inset -1px 0 rgba(255,255,255,.018);
    background:
        radial-gradient(circle at 25% 0, rgba(215,173,98,.07), transparent 28%),
        repeating-linear-gradient(0deg, rgba(255,255,255,.008) 0, rgba(255,255,255,.008) 1px, transparent 1px, transparent 6px),
        linear-gradient(180deg, #17120f, #090807 72%);
}

.guide-sidebar-brand {
    position: relative;
    background: linear-gradient(180deg, rgba(215,173,98,.035), transparent);
    box-shadow: inset 0 -1px rgba(0,0,0,.35);
}
.guide-sidebar-brand::after {
    position: absolute;
    right: 18px;
    bottom: -4px;
    width: 7px;
    height: 7px;
    transform: rotate(45deg);
    border: 1px solid var(--guide-bronze);
    background: #100d0b;
    content: "";
}
.guide-sidebar-search div:focus-within {
    border-bottom-color: var(--guide-gold);
    box-shadow: 0 7px 16px -12px rgba(215,173,98,.9);
}

/* Sezioni dell'indice laterale. */
.guide-sidebar-section {
    position: relative;
    border-radius: 3px;
}
.guide-sidebar-tree > li.is-active > .guide-sidebar-section,
.guide-sidebar-section:hover {
    box-shadow: inset 2px 0 var(--guide-bronze);
}

/* Gerarchia tra PAGINE: la categoria resta una pagina, ma ha veri figli. */
.guide-sidebar-pages {
    list-style: none;
}
.guide-sidebar-pages--level-0 {
    margin: 1px 0 8px 25px !important;
}
.guide-sidebar-pages--level-1 {
    position: relative;
    margin: 2px 0 8px 8px !important;
    padding: 1px 0 1px 11px !important;
    border-left: 1px solid rgba(215,173,98,.18);
}
.guide-sidebar-pages--level-1::before,
.guide-sidebar-pages--level-1::after {
    position: absolute;
    left: -2px;
    width: 3px;
    height: 3px;
    transform: rotate(45deg);
    background: var(--guide-bronze);
    content: "";
}
.guide-sidebar-pages--level-1::before { top: 0; }
.guide-sidebar-pages--level-1::after { bottom: 0; }
.guide-sidebar-page { position: relative; }
.guide-sidebar-page-link {
    display: block;
    padding: 5px 7px;
    border-left: 1px solid transparent;
    border-radius: 2px;
    color: #a89a84;
    font: 12px/1.35 var(--guide-font-ui);
}
.guide-sidebar-page-link:hover,
.guide-sidebar-page.is-current > .guide-sidebar-page-link {
    border-left-color: var(--guide-gold);
    background: linear-gradient(90deg, rgba(215,173,98,.075), transparent 88%);
    color: var(--guide-gold-light);
}
.guide-sidebar-page--parent > .guide-sidebar-page-link {
    position: relative;
    margin-top: 2px;
    padding: 7px 22px 6px 7px;
    color: #d7c19a;
    font: 600 13px/1.28 var(--guide-font-body);
    letter-spacing: .01em;
}
.guide-sidebar-page--parent > .guide-sidebar-page-link::after {
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-54%);
    color: rgba(215,173,98,.58);
    content: "⌄";
    font: 12px/1 var(--guide-font-ui);
}
.guide-sidebar-page--parent.has-active-descendant > .guide-sidebar-page-link {
    color: var(--guide-gold-light);
    background: linear-gradient(90deg, rgba(215,173,98,.055), transparent 90%);
}
.guide-sidebar-pages--level-1 .guide-sidebar-page-link {
    padding: 4px 6px 4px 8px;
    color: #9e917e;
    font-size: 11.5px;
}
.guide-sidebar-pages--level-1 .guide-sidebar-page-link::before {
    margin-right: 6px;
    color: rgba(215,173,98,.34);
    content: "·";
}

/* Breadcrumb: evidenzia la pagina-categoria quando ci si trova in una razza figlia. */
.guide-breadcrumb-parent-page {
    color: #d7c19a !important;
}

/* Hero: piccola cornice interna e luce bronzo, senza rubare spazio. */
.guide-page-header {
    border-color: rgba(215,173,98,.22);
    border-radius: 5px;
    box-shadow: 0 18px 45px -34px rgba(0,0,0,.95), inset 0 0 0 1px rgba(255,255,255,.012);
}
.guide-page-header::before {
    position: absolute;
    z-index: 3;
    inset: 8px;
    border: 1px solid rgba(215,173,98,.075);
    border-radius: 2px;
    content: "";
    pointer-events: none;
}
.guide-page-header h1,
.guide-home-hero h1,
.guide-index-page > header h1,
.guide-search-page > header h1,
.guide-glossary-page > header h1,
.guide-map-page > header h1 {
    text-shadow: 0 2px 18px rgba(0,0,0,.48), 0 0 24px rgba(215,173,98,.035);
}

/* Titoli dell'articolo: una riga ornamentale più caratteristica ma discreta. */
.guide-body h2::after {
    width: 76px;
    height: 5px;
    margin-top: 9px;
    background:
        radial-gradient(circle at 38px 2.5px, var(--guide-gold) 0 2px, transparent 2.5px),
        linear-gradient(var(--guide-gold), var(--guide-gold)) left 2px / 33px 1px no-repeat,
        linear-gradient(var(--guide-gold), var(--guide-gold)) right 2px / 33px 1px no-repeat;
    opacity: .8;
}
.guide-body h3 {
    text-shadow: 0 1px 12px rgba(215,173,98,.04);
}

/* Pannelli e box: più profondità, niente effetto "scheda da dashboard". */
.guide-quickfacts,
.guide-callout,
.guide-subsections a,
.guide-related a {
    box-shadow: inset 0 1px rgba(255,255,255,.018), 0 14px 28px -28px rgba(0,0,0,.9);
}
.guide-quickfacts {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 100% 0, rgba(215,173,98,.055), transparent 34%),
        linear-gradient(145deg, rgba(31,26,22,.84), rgba(18,15,13,.78));
}
.guide-quickfacts::before {
    position: absolute;
    top: 0;
    left: 22px;
    width: 72px;
    height: 1px;
    background: var(--guide-gold);
    content: "";
    opacity: .58;
}
.guide-callout {
    position: relative;
    background:
        linear-gradient(90deg, rgba(215,173,98,.035), transparent 25%),
        rgba(27,23,20,.76);
}
.guide-callout::after {
    position: absolute;
    top: 8px;
    right: 10px;
    width: 5px;
    height: 5px;
    transform: rotate(45deg);
    border: 1px solid rgba(215,173,98,.3);
    content: "";
}

/* Tabelle più leggibili e coerenti con ottone/pelle. */
.guide-body table {
    border-top: 1px solid rgba(215,173,98,.32);
    border-bottom: 1px solid rgba(215,173,98,.2);
    box-shadow: 0 14px 30px -28px rgba(0,0,0,.9);
}
.guide-body th {
    background: linear-gradient(180deg, rgba(215,173,98,.11), rgba(142,98,55,.055));
}
.guide-body tr:nth-child(even) td {
    background: rgba(255,255,255,.008);
}

/* Link e card: movimento minimo, più "materico". */
.guide-subsections a,
.guide-related a,
.guide-section-list > a,
.guide-page-index-parent,
.guide-page-index-children a {
    transition: color .16s ease, border-color .16s ease, background-color .16s ease, transform .16s ease, box-shadow .16s ease, padding .16s ease;
}
.guide-subsections a:hover,
.guide-related a:hover {
    box-shadow: inset 0 1px rgba(255,255,255,.025), 0 17px 34px -28px rgba(0,0,0,.95);
}

/* Indice di sezione gerarchico. */
.guide-page-index--hierarchical {
    border-top: 1px solid var(--guide-border);
}
.guide-page-index-group {
    border-bottom: 1px solid rgba(208,166,92,.18);
}
.guide-page-index-parent {
    display: grid;
    grid-template-columns: 35px minmax(0,1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 17px 3px;
}
.guide-page-index-parent:hover {
    padding-left: 9px;
    background: linear-gradient(90deg, rgba(215,173,98,.035), transparent 75%);
}
.guide-page-index-parent > span {
    color: var(--guide-bronze);
    font: 500 13px/1 var(--guide-font-ui);
}
.guide-page-index-parent strong {
    color: var(--guide-gold-light);
    font: 600 18px/1.25 var(--guide-font-body);
}
.guide-page-index-parent p,
.guide-page-index-children p {
    margin: 5px 0 0;
    color: var(--guide-text-muted);
    font-size: 11px;
}
.guide-page-index-parent em,
.guide-page-index-children em {
    color: var(--guide-gold);
    font-style: normal;
}
.guide-page-index-group.has-children > .guide-page-index-parent {
    background: linear-gradient(90deg, rgba(215,173,98,.045), transparent 70%);
}
.guide-page-index-group.has-children > .guide-page-index-parent strong {
    font-size: 20px;
}
.guide-page-index-children {
    margin: -2px 0 10px 35px;
    padding: 2px 0 2px 14px;
    border-left: 1px solid rgba(215,173,98,.2);
}
.guide-page-index-children a {
    display: grid;
    grid-template-columns: 22px minmax(0,1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 10px 8px;
    border-bottom: 1px solid rgba(208,166,92,.09);
}
.guide-page-index-children a:last-child { border-bottom: 0; }
.guide-page-index-children a:hover {
    padding-left: 13px;
    background: linear-gradient(90deg, rgba(215,173,98,.03), transparent 80%);
}
.guide-page-index-children > a > span {
    color: rgba(215,173,98,.42);
    font-size: 12px;
}
.guide-page-index-children strong {
    color: #d7c19a;
    font: 600 16px/1.25 var(--guide-font-body);
}

/* Mappa della guida: rappresenta anche la gerarchia fra pagine. */
.guide-map-pages,
.guide-map-pages ul {
    margin: 6px 0 0;
    padding: 0 0 0 14px;
    list-style: none;
}
.guide-map-pages--level-0 { padding-left: 0; }
.guide-map-pages--level-1 {
    margin-left: 7px;
    border-left: 1px solid rgba(215,173,98,.18);
}
.guide-map-pages li { margin: 6px 0; }
.guide-map-pages li.has-children > a {
    color: #d7c19a;
    font-weight: 600;
}
.guide-map-pages--level-1 a::before {
    margin-right: 6px;
    color: rgba(215,173,98,.36);
    content: "·";
}

/* TOC con una presenza appena più editoriale. */
.guide-toc {
    background: linear-gradient(180deg, rgba(215,173,98,.018), transparent 28%);
    box-shadow: inset 1px 0 rgba(255,255,255,.008);
}
.guide-toc > strong {
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(215,173,98,.16);
    letter-spacing: .06em;
    text-transform: uppercase;
}

@media (max-width: 760px) {
    .guide-sidebar-pages--level-0 { margin-left: 20px !important; }
    .guide-sidebar-pages--level-1 { margin-left: 6px !important; }
    .guide-page-header { border-radius: 3px; }
    .guide-page-header::before { inset: 5px; }
    .guide-page-index-children { margin-left: 20px; padding-left: 9px; }
    .guide-page-index-children a { grid-template-columns: 18px minmax(0,1fr) auto; }
}


/* Evita che la vecchia regola discendente evidenzi tutti i figli quando è aperta la pagina-categoria. */
.guide-sidebar-page.is-current > .guide-sidebar-pages .guide-sidebar-page:not(.is-current) > .guide-sidebar-page-link {
    border-left-color: transparent;
    background: transparent;
    color: #9e917e;
}
.guide-sidebar-page.is-current > .guide-sidebar-pages .guide-sidebar-page:not(.is-current) > .guide-sidebar-page-link:hover {
    border-left-color: var(--guide-gold);
    background: linear-gradient(90deg, rgba(215,173,98,.075), transparent 88%);
    color: var(--guide-gold-light);
}

/* =========================================================
   PANDORA GUIDE — LETTURA MORBIDA + IDENTITÀ EDITORIALE V2
   19/08/2026
   Riduce l'abbagliamento del testo e rende la guida più
   caratteristica senza appesantirla.
   ========================================================= */

.new-guide,
.new-guide-access-denied {
    --guide-body-text: #cbbda8;
    --guide-body-strong: #dfceb2;
    --guide-body-soft: #b7aa97;
    --guide-gold-soft: #d8b56f;
    --guide-copper: #a96f3d;
    --guide-line-soft: rgba(215,173,98,.14);
    --guide-line-faint: rgba(215,173,98,.065);
}

/* Il contrasto resta ampio, ma il testo lungo non è più quasi bianco. */
.guide-body {
    color: var(--guide-body-text);
    font-weight: 400;
    line-height: 1.74;
    letter-spacing: .002em;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}
.guide-body p,
.guide-body li,
.guide-body dd,
.guide-body td {
    color: var(--guide-body-text);
}
.guide-body strong,
.guide-body b {
    color: var(--guide-body-strong);
    font-weight: 650;
}
.guide-body em,
.guide-body i {
    color: #c6b79f;
}
.guide-body a {
    color: #d8b970;
    text-decoration-color: rgba(216,185,112,.34);
}
.guide-body a:hover {
    color: #e5ca8c;
    text-decoration-color: rgba(229,202,140,.62);
}
.guide-body blockquote {
    color: var(--guide-body-soft);
    border-left-color: rgba(184,122,66,.7);
}
.guide-body th {
    color: #dfc486;
}
.guide-summary {
    color: #d2c4ae;
}
.guide-subtitle {
    color: #bcae99;
}

/* Il testo evidenziato non deve diventare una macchia luminosa. */
.new-guide mark {
    background: rgba(184,122,66,.22);
    color: #dfceb2;
}

/* La zona di lettura assume una profondità da tavolo/archivio scuro. */
.guide-content {
    background:
        radial-gradient(ellipse at 48% -5%, rgba(183,119,58,.055), transparent 34%),
        radial-gradient(ellipse at 72% 58%, rgba(83,55,33,.035), transparent 28%),
        linear-gradient(90deg, rgba(255,255,255,.007), transparent 9%, transparent 91%, rgba(0,0,0,.12)),
        repeating-linear-gradient(135deg, rgba(255,255,255,.0045) 0 1px, transparent 1px 11px);
}

/* Cornice editoriale quasi invisibile attorno al capitolo. */
.guide-article {
    position: relative;
}
.guide-article::after {
    position: absolute;
    z-index: -1;
    top: 34px;
    right: -18px;
    bottom: 38px;
    left: -18px;
    border-right: 1px solid var(--guide-line-faint);
    border-left: 1px solid var(--guide-line-faint);
    background:
        linear-gradient(180deg, rgba(215,173,98,.018), transparent 180px),
        linear-gradient(0deg, rgba(0,0,0,.08), transparent 160px);
    content: "";
    pointer-events: none;
}

/* Capolettera: dettaglio da compendio, non effetto fantasy eccessivo. */
.guide-body > p:first-of-type::first-letter {
    float: left;
    margin: .075em .11em -.02em 0;
    color: #dfc27d;
    font: 500 3.25em/.78 var(--guide-font-display);
    text-shadow: 0 2px 14px rgba(0,0,0,.5), 0 0 18px rgba(215,173,98,.055);
}

/* I titoli diventano più simili a intestazioni di capitolo Pandora. */
.guide-body h2 {
    color: #e3c785;
    text-shadow: 0 2px 16px rgba(0,0,0,.38);
}
.guide-body h2::after {
    width: 94px;
    height: 7px;
    margin-top: 10px;
    background:
        radial-gradient(circle at 47px 3.5px, #d1a95e 0 2px, transparent 2.6px),
        linear-gradient(90deg, transparent, rgba(215,173,98,.72)) left 3px / 42px 1px no-repeat,
        linear-gradient(90deg, rgba(215,173,98,.72), transparent) right 3px / 42px 1px no-repeat;
    opacity: .76;
}
.guide-body h3 {
    color: #d4ae69;
}
.guide-body h3::before {
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 9px 3px 1px;
    transform: rotate(45deg);
    border: 1px solid rgba(215,173,98,.46);
    content: "";
}

/* Hero più riconoscibile: piccoli segni angolari come una tavola d'archivio. */
.guide-page-header {
    background-color: rgba(12,10,9,.35);
}
.guide-page-header::before {
    inset: 9px;
    border-color: rgba(215,173,98,.085);
    background:
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) left top / 24px 1px no-repeat,
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) left top / 1px 24px no-repeat,
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) right top / 24px 1px no-repeat,
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) right top / 1px 24px no-repeat,
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) left bottom / 24px 1px no-repeat,
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) left bottom / 1px 24px no-repeat,
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) right bottom / 24px 1px no-repeat,
        linear-gradient(var(--guide-gold-soft),var(--guide-gold-soft)) right bottom / 1px 24px no-repeat;
    opacity: .72;
}
.guide-page-header h1,
.guide-home-hero h1,
.guide-index-page > header h1,
.guide-search-page > header h1,
.guide-glossary-page > header h1,
.guide-map-page > header h1 {
    color: #e5ca89;
}

/* Sidebar: meno dashboard, più indice di un archivio sovrannaturale. */
.guide-sidebar-brand::before {
    position: absolute;
    bottom: -1px;
    left: 20px;
    width: 74px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(215,173,98,.7), transparent);
    content: "";
}
.guide-sidebar-section {
    letter-spacing: .075em;
}
.guide-sidebar-page--parent > .guide-sidebar-page-link {
    color: #cdb995;
}
.guide-sidebar-pages--level-1 .guide-sidebar-page-link {
    color: #938674;
}

/* Quick facts e callout: bordi più sottili e caldi, testi meno luminosi. */
.guide-quickfacts,
.guide-callout {
    border-color: rgba(201,153,83,.24);
}
.guide-quickfacts p,
.guide-related p,
.guide-subsections p,
.guide-callout p {
    color: #afa18e;
}
.guide-quickfacts h3,
.guide-callout > strong:first-child {
    color: #d9bd7c;
}
.guide-callout {
    box-shadow: inset 0 1px rgba(255,255,255,.012), inset 18px 0 34px -34px rgba(215,173,98,.34), 0 14px 28px -28px rgba(0,0,0,.9);
}

/* Tabelle: contrasto più dolce anche nelle celle. */
.guide-body td {
    background-color: rgba(13,11,9,.17);
}
.guide-body tr:nth-child(even) td {
    background-color: rgba(215,173,98,.018);
}

/* Barra TOC: il titolo ricorda un'etichetta di archivio. */
.guide-toc > strong::before {
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 8px 2px 1px;
    transform: rotate(45deg);
    border: 1px solid rgba(215,173,98,.4);
    content: "";
}

/* Scrollbar coerente col bronzo senza diventare vistosa. */
.guide-content::-webkit-scrollbar,
.guide-sidebar-nav::-webkit-scrollbar,
.guide-toc::-webkit-scrollbar {
    width: 8px;
}
.guide-content::-webkit-scrollbar-thumb,
.guide-sidebar-nav::-webkit-scrollbar-thumb,
.guide-toc::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 8px;
    background: rgba(142,98,55,.6);
    background-clip: padding-box;
}
.guide-content::-webkit-scrollbar-track,
.guide-sidebar-nav::-webkit-scrollbar-track,
.guide-toc::-webkit-scrollbar-track {
    background: rgba(0,0,0,.08);
}

@media (max-width: 760px) {
    .guide-body { line-height: 1.7; }
    .guide-body > p:first-of-type::first-letter {
        font-size: 2.75em;
        margin-right: .1em;
    }
    .guide-article::after { display: none; }
    .guide-page-header::before { inset: 6px; }
}

/* HOME V3 — testata compatta e percorsi subito protagonisti. */
.guide-home-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(310px, .7fr);
    align-items: center;
    gap: clamp(34px, 5vw, 68px);
    padding-top: 40px !important;
    padding-bottom: 31px !important;
}
.guide-home-hero::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(215,173,98,.48) 12%, rgba(215,173,98,.14) 72%, transparent);
    content: "";
}
.guide-home-intro { min-width: 0; }
.guide-home-title-lockup {
    display: grid;
    grid-template-columns: clamp(52px, 5.2vw, 70px) minmax(0, 1fr);
    align-items: center;
    gap: clamp(18px, 2.4vw, 29px);
    margin-top: 16px;
}
.guide-home-title-lockup h1 {
    color: #ead08e;
    font-size: clamp(54px, 5vw, 71px);
    line-height: .9;
    letter-spacing: .01em;
    text-shadow: 0 1px rgba(255,241,196,.16), 0 14px 34px rgba(166,104,36,.12);
}
.guide-home-title-lockup h1::after {
    display: block;
    width: min(330px, 68%);
    height: 1px;
    margin-top: 16px;
    background: linear-gradient(90deg, #b17734, rgba(215,173,98,.08));
    content: "";
}
.guide-home-sigil {
    position: relative;
    display: grid;
    width: clamp(52px, 5.2vw, 70px);
    aspect-ratio: 1;
    place-items: center;
    transform: rotate(45deg);
    border: 1px solid rgba(215,173,98,.7);
    background: radial-gradient(circle at 32% 28%, rgba(215,173,98,.13), transparent 58%), #100d0b;
    box-shadow: inset 0 0 0 5px #100d0b, inset 0 0 0 6px rgba(215,173,98,.18), 0 10px 30px rgba(0,0,0,.32);
}
.guide-home-sigil::before,
.guide-home-sigil::after {
    position: absolute;
    width: 6px;
    height: 6px;
    border: 1px solid rgba(215,173,98,.5);
    background: #100d0b;
    content: "";
}
.guide-home-sigil::before { top: -4px; left: -4px; }
.guide-home-sigil::after { right: -4px; bottom: -4px; }
.guide-home-sigil span {
    transform: rotate(-45deg);
    color: #e8cc86;
    font: 500 clamp(27px, 2.8vw, 39px)/1 var(--guide-font-display);
}
.guide-home-intro-copy {
    max-width: 700px;
    margin: 20px 0 0;
    color: #b9aa94;
    font: 17px/1.48 var(--guide-font-body);
    text-wrap: balance;
}
.guide-home-discovery {
    position: relative;
    padding: 23px 23px 19px;
    border: 1px solid rgba(215,173,98,.24);
    border-radius: 5px;
    background: linear-gradient(145deg, rgba(215,173,98,.055), transparent 58%), rgba(8,7,6,.54);
    box-shadow: inset 0 0 0 5px rgba(0,0,0,.12), 0 20px 44px -36px rgba(0,0,0,.95);
}
.guide-home-discovery::before {
    position: absolute;
    top: -4px;
    left: 23px;
    width: 7px;
    height: 7px;
    transform: rotate(45deg);
    border: 1px solid #b67a36;
    background: #100d0b;
    content: "";
}
.guide-home-discovery-kicker {
    margin: 0 0 7px;
    color: var(--guide-gold);
    font: 700 8px/1.3 var(--guide-font-ui);
    letter-spacing: .21em;
}
.guide-home-discovery > strong {
    display: block;
    color: #d8c6a8;
    font: 600 17px/1.25 var(--guide-font-body);
}
.guide-home-discovery .guide-hero-search {
    width: 100%;
    margin-top: 15px;
    border-color: rgba(215,173,98,.3);
    background: rgba(0,0,0,.34);
}
.guide-home-discovery .guide-hero-search input { padding: 11px 12px; font-size: 12px; }
.guide-home-discovery .guide-hero-search button { padding-inline: 15px; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.guide-home-discovery-links {
    display: flex;
    gap: 19px;
    margin-top: 13px;
}
.guide-home-discovery-links a {
    color: #9e917e;
    font: 700 9px/1.3 var(--guide-font-ui);
    letter-spacing: .08em;
    text-transform: uppercase;
}
.guide-home-discovery-links a::after { margin-left: 5px; color: var(--guide-gold); content: "→"; }
.guide-home-discovery-links a:hover { color: var(--guide-gold-light); }

.guide-home-paths {
    padding-top: 21px !important;
    padding-bottom: 60px !important;
}
.guide-paths-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 16px;
}
.guide-paths-heading > div > p {
    margin: 0 0 5px;
    color: var(--guide-gold);
    font-size: 9px;
    font-weight: bold;
    letter-spacing: .22em;
    text-transform: uppercase;
}
.guide-paths-heading h2 { margin-bottom: 0; }
.guide-paths-heading > span {
    padding-bottom: 5px;
    color: #887c6c;
    font: 10px/1.3 var(--guide-font-ui);
    letter-spacing: .11em;
    text-transform: uppercase;
}

@media (max-width: 940px) {
    .guide-home-hero {
        grid-template-columns: 1fr;
        gap: 23px;
        padding-top: 36px !important;
    }
    .guide-home-discovery { padding: 18px 20px 16px; }
    .guide-home-discovery .guide-hero-search { margin-top: 12px; }
}

@media (max-width: 760px) {
    .guide-home-hero {
        gap: 21px;
        padding-top: 31px !important;
        padding-bottom: 25px !important;
    }
    .guide-home-title-lockup {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 17px;
        margin-top: 13px;
    }
    .guide-home-sigil { width: 44px; }
    .guide-home-sigil span { font-size: 25px; }
    .guide-home-title-lockup h1 { font-size: clamp(39px, 11vw, 48px); }
    .guide-home-title-lockup h1::after { margin-top: 12px; }
    .guide-home-intro-copy { margin-top: 16px; font-size: 15.5px; }
    .guide-home-discovery { padding: 17px 16px 14px; }
    .guide-home-discovery-links { flex-wrap: wrap; }
    .guide-home-paths { padding-top: 19px !important; }
    .guide-paths-heading { align-items: start; margin-bottom: 14px; }
    .guide-paths-heading > span { display: none; }
}

/* Macrocategorie chiuse inizialmente, apribili anche da tastiera. */
.guide-sidebar-category > summary { cursor: pointer; list-style: none; }
.guide-sidebar-category > summary::-webkit-details-marker { display: none; }
.guide-sidebar-category > summary::marker { content: ""; }
.guide-sidebar-category > summary:focus-visible { outline: 1px solid var(--guide-gold); outline-offset: -1px; }
.guide-category-arrow { margin-left: auto; color: var(--guide-gold); }
.guide-sidebar-category[open] > summary .guide-category-arrow { transform: rotate(90deg); }
.guide-sidebar-tree > li.is-active > .guide-sidebar-category > summary {
    color: var(--guide-gold-light);
    background: rgba(208,166,92,.06);
    box-shadow: inset 2px 0 var(--guide-bronze);
}
