/* Shared copy/accessibility improvements; the previous visual layout is retained. */
.home-style-switch { display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-block:12px;font-size:14px; }
.home-style-switch>span { color:var(--muted);margin-right:8px; }
.home-style-switch>a { display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:70px;padding:8px 12px;border:1px solid var(--line); }
.home-style-switch>a[aria-current] { color:var(--accent);border-color:var(--accent);text-decoration:underline;text-underline-offset:5px; }
.z4d-home .opening-description,.z4d-home .home-line>p,.z4d-home .home-line-more>p:last-child,
.z4d-home .home-find>div>p:last-child,.z4d-home .home-find-action label,
.z4d-home .home-footer-top #progetto p,.z4d-home .home-footer-info details p { font-size:16px;line-height:1.65; }
.z4d-home .home-footer-top nav>a,.z4d-home .home-footer-info summary { min-height:44px;padding-block:10px;font-size:16px; }
.z4d-home .home-find-action>a { min-height:44px; }
.z4d-home .home-footer-bottom { font-size:14px; }
.z4d-home .home-footer-bottom>a { min-height:44px; }
.gallery-bottom { justify-content:flex-end; }

/* A single Gen 1–2 inspired vocabulary: solid panels, double rules, selection cursors. */
html[data-home-style="retro"] { --retro-edge:#8d9b98;--retro-panel:#202526;--retro-type:ui-monospace,Consolas,"Liberation Mono",monospace;scroll-padding-top:24px; }
[data-home-style="retro"] .site-header { position:static;background:var(--bg);backdrop-filter:none;border:0;padding-top:22px; }
[data-home-style="retro"] .header-inner { width:calc(100% - var(--gutter) * 2);max-width:1456px;height:auto;min-height:86px;padding:18px 24px;border:1px solid var(--retro-edge);box-shadow:inset 0 0 0 4px var(--bg),inset 0 0 0 5px var(--retro-edge);background:var(--retro-panel);gap:20px; }
[data-home-style="retro"] .site-header nav { gap:12px;font-family:var(--retro-type);font-size:15px; }
[data-home-style="retro"] .site-header nav a { position:relative;min-height:44px;padding:11px 12px 11px 28px; }
[data-home-style="retro"] .site-header nav a::before,
[data-home-style="retro"] .home-line h3 a::before,
[data-home-style="retro"] .home-line-more h3::before { content:"";position:absolute;left:12px;top:50%;transform:translateY(-50%);border-block:5px solid transparent;border-left:7px solid var(--accent);opacity:0; }
[data-home-style="retro"] .site-header nav a:is(:hover,:focus-visible)::before,
[data-home-style="retro"] .home-line h3 a:is(:hover,:focus-visible)::before,
[data-home-style="retro"] .home-line-more:is(:hover,:focus-visible) h3::before { opacity:1; }
[data-home-style="retro"] .site-header nav a:is(:hover,:focus-visible) { background:#2c3737; }
[data-home-style="retro"] .home-style-switch { padding-block:12px 0; }
[data-home-style="retro"] .home-opening { grid-template-columns:1fr 1.12fr;gap:32px;align-items:center;padding-block:40px 72px; }
[data-home-style="retro"] .opening-copy { padding:34px;border:1px solid var(--retro-edge);box-shadow:inset 0 0 0 5px var(--bg),inset 0 0 0 6px var(--retro-edge);background:var(--retro-panel); }
[data-home-style="retro"] .opening-copy h1 { font-size:clamp(38px,4.2vw,64px);line-height:1.09;letter-spacing:-.035em;max-width:12ch; }
[data-home-style="retro"] .opening-description { max-width:39ch;margin-top:24px;font-size:18px; }
[data-home-style="retro"] .button { position:relative;border:1px solid var(--accent);border-radius:0;box-shadow:3px 3px 0 #0e1011;background:var(--accent);color:#171819;min-height:52px;padding:14px 22px;font-weight:600; }
[data-home-style="retro"] .button:hover { background:#98ede7;transform:none; }
[data-home-style="retro"] .opening-piece { border:1px solid var(--retro-edge);padding:7px;background:var(--retro-panel); }
[data-home-style="retro"] .opening-piece>a { border:1px solid #586561; }
[data-home-style="retro"] .opening-piece img { aspect-ratio:4/3;object-fit:contain; }
[data-home-style="retro"] .opening-piece figcaption { padding:14px 16px;margin:0;align-items:center;border-top:1px solid var(--retro-edge); }
[data-home-style="retro"] .opening-piece small { font-family:var(--retro-type);font-size:13px;letter-spacing:.05em;color:var(--accent);margin-bottom:5px; }
[data-home-style="retro"] .opening-piece strong { font-size:26px;letter-spacing:0; }
[data-home-style="retro"] .home-media-label { background:#171819;color:var(--ink);border:1px solid #66716e;font-size:12px; }
[data-home-style="retro"] .home-section { padding-block:44px 64px; }
[data-home-style="retro"] .home-section-heading { padding-block:16px;border-block:1px solid var(--retro-edge);margin-bottom:32px;align-items:center; }
[data-home-style="retro"] .home-section-heading h2,[data-home-style="retro"] .home-find h2 { font-family:var(--retro-type);font-size:clamp(25px,2.4vw,36px);font-weight:600;line-height:1.25;letter-spacing:-.035em; }
[data-home-style="retro"] .home-section-heading h2::before { content:"";display:inline-block;width:9px;height:9px;background:var(--accent);margin:0 15px 3px 2px;box-shadow:3px -3px 0 var(--bg),3px -3px 0 1px var(--accent); }
[data-home-style="retro"] .home-lines { gap:24px; }
[data-home-style="retro"] .home-line { min-width:0;border:1px solid #66736f;padding:7px 7px 24px;background:var(--retro-panel); }
[data-home-style="retro"] .line-image { aspect-ratio:1.1;border:1px solid #46534e;background:#29312d; }
[data-home-style="retro"] .line-image img { object-fit:contain;transition:none; }
[data-home-style="retro"] .line-image:hover img { transform:none; }
[data-home-style="retro"] .home-line h3 { margin:20px 8px 0;font-size:25px; }
[data-home-style="retro"] .home-line h3 a { min-height:44px;align-items:center;position:relative;padding-left:24px;gap:8px; }
[data-home-style="retro"] .home-line h3 a::before { left:4px; }
[data-home-style="retro"] .home-line>p { margin:12px 16px 0;max-width:none; }
[data-home-style="retro"] .home-line:focus-within,[data-home-style="retro"] .home-line:hover { border-color:var(--accent); }
[data-home-style="retro"] .home-more-lines { margin-top:24px; }
[data-home-style="retro"] .home-line-more { border:1px solid #66736f;background:var(--retro-panel);padding:24px;box-shadow:inset 0 0 0 4px var(--bg),inset 0 0 0 5px #46534e; }
[data-home-style="retro"] .home-line-more h3 { position:relative;padding-left:22px;font-size:25px; }
[data-home-style="retro"] .home-line-more h3::before { left:0; }
[data-home-style="retro"] .home-line-more:is(:hover,:focus-visible) { border-color:var(--accent);background:#26302e; }
[data-home-style="retro"] .home-gallery-section { background:var(--bg); }
[data-home-style="retro"] .home-gallery { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;width:min(100%,1600px);margin-inline:auto;overflow:visible;padding-bottom:0;scroll-snap-type:none; }
[data-home-style="retro"] .home-gallery a { height:100%;padding:7px 7px 18px;border:1px solid #66736f;background:var(--retro-panel); }
[data-home-style="retro"] .home-gallery a:hover { border-color:var(--accent); }
[data-home-style="retro"] .gallery-image { aspect-ratio:1.1;background:#29312d; }
[data-home-style="retro"] .gallery-image img { object-fit:contain; }
[data-home-style="retro"] .home-gallery figcaption { padding-inline:12px;font-size:22px; }
[data-home-style="retro"] .home-gallery figcaption small { font-size:14px; }
[data-home-style="retro"] .gallery-controls,[data-home-style="retro"] .gallery-bottom { display:none; }
[data-home-style="retro"] .home-find { width:calc(100% - var(--gutter) * 2);max-width:1456px;margin-block:30px 68px;padding:36px;gap:40px;background:var(--retro-panel);border:1px solid var(--retro-edge);box-shadow:inset 0 0 0 5px var(--bg),inset 0 0 0 6px var(--retro-edge); }
[data-home-style="retro"] .home-find>div>p:last-child { margin-top:18px;max-width:34ch; }
[data-home-style="retro"] .pokemon-search-row { border-color:var(--retro-edge);background:var(--bg); }
[data-home-style="retro"] .pokemon-search-row button { background:var(--accent);color:var(--bg);font-weight:600;font-size:16px; }
[data-home-style="retro"] #pokemon-search-status { font-size:14px; }
[data-home-style="retro"] .home-footer { border-top:3px double var(--retro-edge); }
[data-home-style="retro"] .home-footer-top h2 { font-family:var(--retro-type);font-size:16px; }
[data-home-style="retro"] .home-footer-top #progetto p { max-width:38ch; }
@media(max-width:1000px) {
  [data-home-style="retro"] .home-opening{gap:24px}
  [data-home-style="retro"] .opening-copy{padding:28px}
  [data-home-style="retro"] .opening-description{font-size:16px}
  [data-home-style="retro"] .home-lines{grid-template-columns:1fr 1fr}
  [data-home-style="retro"] .home-gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:700px) {
  .z4d-home .home-footer-bottom,.z4d-home #pokemon-search-status{font-size:16px}
  .z4d-home .site-header nav{font-size:14px;gap:12px}
  .z4d-home .site-header nav a{min-height:44px}
  .home-style-switch{font-size:13px;gap:6px}
  [data-home-style="retro"] .site-header{padding-top:16px}
  [data-home-style="retro"] .header-inner{display:block;padding:20px}
  [data-home-style="retro"] .site-header nav{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:4px;font-size:14px}
  [data-home-style="retro"] .site-header nav a:last-child{display:block}
  [data-home-style="retro"] .site-header nav a{padding-left:22px;padding-right:4px}
  [data-home-style="retro"] .site-header nav a::before{left:6px}
  [data-home-style="retro"] .home-opening{grid-template-columns:1fr;padding-block:28px 42px;gap:24px}
  [data-home-style="retro"] .opening-copy{padding:26px}
  [data-home-style="retro"] .opening-copy h1{font-size:clamp(32px,8.8vw,48px);max-width:14ch}
  [data-home-style="retro"] .opening-description{margin-top:20px;font-size:16px}
  [data-home-style="retro"] .opening-piece figcaption{padding:12px 10px;gap:10px}
  [data-home-style="retro"] .opening-piece strong{font-size:23px}
  [data-home-style="retro"] .opening-piece .home-media-label{font-size:12px;max-width:110px}
  [data-home-style="retro"] .home-section{padding-block:24px 42px}
  [data-home-style="retro"] .home-section-heading{padding-block:18px;gap:12px}
  [data-home-style="retro"] .home-lines,[data-home-style="retro"] .home-gallery{grid-template-columns:1fr;gap:24px}
  [data-home-style="retro"] .line-image,[data-home-style="retro"] .gallery-image{aspect-ratio:1.2}
  [data-home-style="retro"] .home-more-lines{gap:20px}
  [data-home-style="retro"] .home-line-more{padding:24px 20px}
  [data-home-style="retro"] .home-line-more h3{font-size:22px}
  [data-home-style="retro"] .home-find{grid-template-columns:1fr;padding:28px 22px;gap:26px;margin-block:16px 44px}
  [data-home-style="retro"] .home-find h2{font-size:28px}
  [data-home-style="retro"] .pokemon-search-row input{padding-inline:10px}
  [data-home-style="retro"] .pokemon-search-row button{padding-inline:12px}
}
