/* Palazzo 01: use the Casa stop's common visual language with a horizontal archaeological drawing. */
.granafei-page .casa-hero h1{max-width:15ch;font-size:clamp(2.65rem,5vw,5.2rem)}
.granafei-architecture{margin-top:clamp(45px,6vw,75px);padding-top:25px;border-top:1px solid var(--line)}
.granafei-architecture h2{font-size:clamp(1.65rem,2.7vw,2.5rem);margin:0 0 20px}
.granafei-architecture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:1050px}
.granafei-architecture-grid .casa-photo img{height:260px;object-fit:cover}
.granafei-history{margin-top:clamp(40px,5vw,65px);padding-top:24px;border-top:1px solid var(--line)}
.granafei-history h2{font-size:clamp(1.7rem,2.8vw,2.5rem);margin:0 0 20px}
.granafei-history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,40px)}
.granafei-history article{border-top:2px solid var(--coral);padding-top:15px}
.granafei-history h3{font-size:1.12rem;line-height:1.3;margin:0 0 10px}
.granafei-history p{font-size:.95rem;line-height:1.6;max-width:55ch}
.granafei-page .casa-map-stage{grid-template-columns:minmax(0,1fr) 270px}
.granafei-page .casa-map-canvas{aspect-ratio:2000/1309;min-width:1050px}
.granafei-page .casa-map-scroll{max-width:100%}
.granafei-page .casa-map-overview{display:block;margin:0;padding:12px;border-bottom:1px solid var(--line)}
.granafei-page .casa-map-overview img{display:block;width:100%;height:auto}
.granafei-page .casa-map-key{position:static}
.granafei-key{list-style:none;margin:0;padding:0}
.granafei-key li{border-top:1px solid var(--line)}
.granafei-key a{display:flex;align-items:center;gap:12px;min-height:49px;padding:5px 0;font-size:.86rem;line-height:1.3}
.granafei-key a span:first-child{color:var(--rust);font-weight:700}
.granafei-key a span:last-child{display:none}
.granafei-page .casa-map-key>p:last-child{margin-top:12px}
.granafei-page .casa-pin{background:#1e4b73}
.granafei-page .casa-pin:hover,.granafei-page .casa-pin:focus-visible{background:#171717}
.granafei-page .casa-story-lead img{object-fit:cover}
@media(max-width:1050px){.granafei-page .casa-map-stage{grid-template-columns:1fr}.granafei-page .casa-map-key{display:block}}
@media(max-width:700px){.granafei-architecture-grid,.granafei-history-grid{grid-template-columns:1fr}.granafei-architecture-grid .casa-photo img{height:auto;max-height:280px}.granafei-page .casa-map-canvas{width:1050px;min-width:1050px}.granafei-page .casa-map-overview{display:block}}

/* Tre percorsi della tappa 01: scelta esplicita, con tap target ampi. */
.granafei-paths{margin-top:clamp(50px,7vw,100px);padding:30px 0;border-top:1px solid var(--line)}
.granafei-paths h2,.granafei-domus-intro h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.1;letter-spacing:-.045em;margin:8px 0 16px}
.granafei-paths>p:not(.eyebrow),.granafei-domus-intro>p:not(.eyebrow){max-width:70ch;line-height:1.65;color:var(--muted)}
.granafei-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.granafei-path-card{min-height:190px;display:flex;flex-direction:column;gap:18px;background:#faf9f7;border:1px solid var(--line);padding:22px;transition:border-color .16s,background-color .16s}
.granafei-path-card:hover,.granafei-path-card:focus-visible{background:#fdecea;border-color:var(--rust)}
.granafei-path-card:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.granafei-path-number{font-size:1.4rem;line-height:1;color:var(--rust);font-weight:700}
.granafei-path-copy{display:grid;gap:8px}.granafei-path-copy strong{font-size:1.25rem;line-height:1.2}.granafei-path-copy small{color:var(--muted);font-size:.85rem;line-height:1.45}
.granafei-path-arrow{margin-top:auto;align-self:flex-end;font-size:1.35rem}
.granafei-feature{scroll-margin-top:20px;margin-top:clamp(28px,4vw,55px);border-top:1px solid var(--line)}
.granafei-feature h2{font-size:clamp(1.8rem,3vw,2.9rem);line-height:1.13;letter-spacing:-.045em;margin:0}
.granafei-feature-more{grid-area:gallery;padding-top:20px;border-top:1px solid var(--line)}
.granafei-feature-more h3{font-size:1.4rem;margin:0 0 18px}
.granafei-pills{list-style:none;counter-reset:pills;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 18px;padding:0}
.granafei-pills li{border-left:3px solid var(--coral);padding:4px 10px 8px 18px;counter-increment:pills}
.granafei-pills strong{display:block;font-size:1rem;margin-bottom:8px}.granafei-pills p{font-size:.95rem;line-height:1.6;max-width:60ch;margin:0}
.granafei-domus-intro{scroll-margin-top:22px;margin-top:clamp(40px,6vw,72px);padding-top:22px;border-top:1px solid var(--line)}
.granafei-domus-intro a{display:inline-flex;min-height:48px;align-items:center;gap:8px;color:var(--rust);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.granafei-project{grid-template-areas:"head body" "gallery gallery";grid-template-rows:auto auto}
.granafei-project-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 18px}
.granafei-project-list li{padding:10px 14px;border:1px solid var(--line);background:#faf9f7;line-height:1.3}
.granafei-feature .casa-back{display:inline-flex;min-height:44px;align-items:center;color:var(--rust)}
@media(max-width:850px){.granafei-path-grid{grid-template-columns:1fr}.granafei-path-card{min-height:115px;display:grid;grid-template-columns:40px 1fr 20px;align-items:center}.granafei-path-arrow{align-self:center}.granafei-project{grid-template-areas:"head" "body" "gallery"}}
@media(max-width:700px){.granafei-pills{grid-template-columns:1fr}.granafei-feature{padding-bottom:40px}.granafei-feature h2{font-size:1.9rem}}
.high-contrast .granafei-path-card,.high-contrast .granafei-project-list li{background:#fff;border:2px solid #000}

/* Gerarchia Palazzo: lettere per i tre percorsi, numeri blu per i punti della pianta. */
.granafei-path-number,.granafei-route-badge{display:inline-grid;place-items:center;flex:none;width:48px;height:48px;border-radius:3px;background:#171717;color:#fff;font-size:1.5rem;line-height:1;letter-spacing:0;font-weight:700}
.granafei-route-badge{width:64px;height:64px;font-size:2rem}
.granafei-domus-heading{display:flex;align-items:flex-start;gap:24px}
.granafei-domus-heading h2{margin-top:0}
.granafei-page .casa-narratives{border-top:3px solid #1e4b73}
.granafei-page .casa-narratives .granafei-point-number{font-size:clamp(2rem,3.5vw,3rem);color:#1e4b73;letter-spacing:-.04em}
.granafei-page .casa-narratives .casa-story-head .eyebrow{color:#1e4b73;font-weight:700}
.granafei-page .granafei-project{margin-top:clamp(80px,9vw,130px);padding:clamp(22px,3vw,42px);border-top:4px solid #171717;background:#f7f5f1}
.granafei-page .granafei-project:target{background:#fdecea}
.high-contrast .granafei-path-number,.high-contrast .granafei-route-badge{background:#000;color:#fff}
.high-contrast .granafei-page .casa-narratives{border-color:#000}
.high-contrast .granafei-page .casa-narratives .granafei-point-number,.high-contrast .granafei-page .casa-narratives .casa-story-head .eyebrow{color:#000}
@media(max-width:700px){.granafei-route-badge{width:52px;height:52px;font-size:1.7rem}.granafei-domus-heading{gap:16px}.granafei-page .granafei-project{padding:20px}.granafei-path-number{width:40px;height:40px;font-size:1.3rem}}
