:root {
  --background: #0b0b0b;
  --surface-dark: #242424;
  --paper: #e8e4d8;
  --ui-gray: #c6c6c6;
  --tape-red-dark: #8f1818;
  --tape-red: #c62828;
  --display-green: #a7d129;
  --link-blue: #2448d8;
  --black: #050505;
  --white: #f5f5f0;
  --bg: var(--background);
  --surface: var(--surface-dark);
  --fg: var(--paper);
  --fg-secondary: #c9c5bb;
  --muted: #98958e;
  --border: #5d5d5d;
  --accent: var(--tape-red);
  --accent-cream: var(--white);
  --accent-glow: rgba(198, 40, 40, .18);
  --font-display: Verdana, Arial, Helvetica, sans-serif;
  --font-body: Verdana, Arial, Helvetica, sans-serif;
  --max-w: 1060px;
  --max-w-narrow: 760px;
  --nav-height: 108px;
  --radius: 2px;
  --radius-sm: 1px;
}

html { background: #050505; }
body {
  min-width: 0;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  background-color: var(--background);
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.012) 1px, transparent 1px);
  background-size: 4px 4px;
  color: var(--paper);
}

a { color: inherit; }
a:not(.btn):not(.site-logo):not(.social-card):not(.video-card):not(.plugin-card) { text-underline-offset: 2px; }
:focus-visible { outline: 2px dotted var(--display-green) !important; outline-offset: 3px; }
.container { max-width: var(--max-w); }

.site-nav {
  position: fixed;
  top: 0;
  left: 50%;
  right: auto;
  width: min(100%, var(--max-w));
  height: var(--nav-height);
  transform: translateX(-50%);
  background: var(--ui-gray);
  border: 1px solid #ededed;
  border-right-color: #303030;
  border-bottom-color: #303030;
  box-shadow: 3px 3px 0 rgba(0,0,0,.75);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.site-nav::before {
  content: "TAPE MUSIC STORIES // ONLINE";
  position: absolute;
  inset: 4px 4px auto;
  height: 25px;
  padding: 3px 9px;
  background: var(--tape-red-dark);
  color: var(--white);
  border: 1px solid #ef6d6d;
  border-right-color: #460707;
  border-bottom-color: #460707;
  font: 700 13px/17px "Courier New", Courier, monospace;
  letter-spacing: .08em;
  text-shadow: 1px 1px #000;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.site-nav::after {
  content: "GOOD MUSIC NEVER EXPIRES  ▪";
  position: absolute;
  top: 9px;
  right: 12px;
  z-index: 2;
  padding-left: 14px;
  color: var(--white);
  font: 700 11px/14px "Courier New", Courier, monospace;
}
.site-nav .container { height: 100%; padding-top: 32px; }
.site-logo {
  position: relative;
  color: #111;
  font: 900 23px/.95 Verdana, Arial, sans-serif;
  letter-spacing: -.04em;
  text-transform: uppercase;
}
.site-logo::after {
  content: "MUSICA  ::  STORIE  ::  ARCHIVI  ::  CULTURA";
  position: absolute;
  left: 42px;
  bottom: -10px;
  color: #565656;
  font: 700 8px/1 "Courier New", Courier, monospace;
  letter-spacing: .1em;
  white-space: nowrap;
}
.nav-logo-img { width: 42px; height: 38px; filter: contrast(1.3); }
.nav-links { gap: 3px; }
.nav-links a,
.lang-toggle,
.mobile-nav-toggle {
  min-height: 34px;
  padding: 8px 11px;
  border: 2px solid #f0f0f0;
  border-right-color: #4b4b4b;
  border-bottom-color: #4b4b4b;
  border-radius: 0;
  background: var(--ui-gray);
  color: #111;
  font: 700 13px/14px "Courier New", Courier, monospace;
  text-transform: uppercase;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.nav-links a:hover,
.nav-links a[aria-current="true"] { background: #e5e5e5; color: var(--tape-red-dark); }
.nav-links a[aria-current="true"]::after { display: none; }
.nav-links a:active,
.lang-toggle:active,
.mobile-nav-toggle:active {
  border-color: #4b4b4b #f0f0f0 #f0f0f0 #4b4b4b;
  padding: 9px 10px 7px 12px;
}
.lang-toggle { width: auto; cursor: pointer; }
.lang-toggle option { background: var(--paper); color: #111; }

.hero {
  min-height: 620px;
  max-width: var(--max-w);
  margin: 0 auto;
  border: 1px solid #595959;
  background-size: 120% auto;
  background-position: center bottom;
  background-attachment: scroll;
  box-shadow: 0 0 0 4px #171717, 8px 8px 0 rgba(0,0,0,.6);
}
.hero::before {
  background: linear-gradient(90deg, rgba(5,5,5,.9) 0 36%, rgba(5,5,5,.58) 48%, rgba(5,5,5,.16) 72%, rgba(5,5,5,.08));
}
.hero-content { max-width: 650px; padding: 135px 30px 85px; }
.hero-kicker {
  border: 1px solid #586f14;
  border-radius: 0;
  background: #11180a;
  color: var(--display-green);
  font: 700 13px/1.4 "Courier New", Courier, monospace;
  letter-spacing: .08em;
}
.hero h1 {
  max-width: 12ch;
  margin-bottom: 22px;
  color: var(--white);
  font-family: Verdana, Arial, sans-serif;
  font-size: clamp(44px, 7vw, 82px);
  font-weight: 900;
  letter-spacing: -.06em;
  line-height: .94;
  text-transform: uppercase;
  text-shadow: 3px 3px 0 var(--tape-red-dark), 5px 5px 0 #000;
}
.hero-tagline { max-width: 43ch; color: var(--paper); font-size: 17px; }
.hero-keywords {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 25px;
  color: #aaa79f;
  font: 700 10px/1.3 "Courier New", Courier, monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.hero-keywords i { color: var(--tape-red); font-style: normal; }
html[lang="en"] .hero-keywords span,
html[lang="en"] .hero-keywords i { display: none; }
html[lang="en"] .hero-keywords::before { content: "MUSIC  /  STORIES  /  ARCHIVES  /  CULTURE"; }
.btn {
  border: 2px solid #efefef;
  border-right-color: #383838;
  border-bottom-color: #383838;
  border-radius: 0;
  background: var(--ui-gray);
  color: #111;
  font: 700 14px/1.2 "Courier New", Courier, monospace;
  text-transform: uppercase;
  box-shadow: 1px 1px 0 #000;
}
.btn-primary { background: var(--tape-red); color: var(--white); border-color: #ef6868 #5e0808 #5e0808 #ef6868; }
.btn-secondary { background: var(--ui-gray); color: #111; }
.btn:hover { background: var(--paper); color: var(--tape-red-dark); }
.btn:active { border-color: #383838 #efefef #efefef #383838; transform: translate(1px,1px); box-shadow: none; }

@media (max-width: 760px) {
  :root { --nav-height: 76px; }
  .site-nav::before { height: 24px; }
  .site-nav::after { display: none; }
  .site-nav .container { padding: 28px 12px 0; }
  .site-logo { font-size: 16px; }
  .site-logo::after { display: none; }
  .nav-logo-img { width: 34px; height: 32px; }
  .mobile-nav-toggle { display: inline-flex; align-items: center; }
  .hero { min-height: 620px; border-left: 0; border-right: 0; }
  .hero { background-size: cover; background-position: center; }
  .hero::before { background: rgba(5,5,5,.76); }
  .hero-content { padding: 125px 20px 60px; }
  .hero h1 { font-size: clamp(38px, 13vw, 54px); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Shared portal chrome */
main:not(#main-content),
main#main-content,
.site-footer {
  width: min(100%, var(--max-w));
  margin-inline: auto;
}
.section { padding: 56px 0; }
.section-divider { width: min(100%, var(--max-w)); margin: 0 auto; background: #555; }
.bg-section { background-attachment: scroll !important; }
.bg-section::before { background: rgba(11,11,11,.54) !important; }
.bg-section > * { position: relative; }
.bg-tape::before {
  background: linear-gradient(to bottom, rgba(11,11,11,.34), rgba(11,11,11,.58)) !important;
}
.bg-music-home::before {
  background: linear-gradient(to bottom, rgba(11,11,11,.26), rgba(11,11,11,.5)) !important;
}
.bg-console::before {
  background: linear-gradient(to bottom, rgba(11,11,11,.34), rgba(11,11,11,.58)) !important;
}
.bg-cassettes::before {
  background: linear-gradient(to bottom, rgba(11,11,11,.24), rgba(11,11,11,.5)) !important;
}
.bg-social-home::before {
  background: linear-gradient(to bottom, rgba(11,11,11,.34), rgba(11,11,11,.62)) !important;
}
h1, h2, h3, .h-like,
.font-display {
  font-family: Verdana, Arial, Helvetica, sans-serif !important;
  font-weight: 800;
  letter-spacing: -.04em;
}
h1 { font-size: clamp(34px, 6vw, 58px); }
h2 { font-size: clamp(26px, 4vw, 38px); }
h3 { font-size: clamp(20px, 3vw, 27px); }
.eyebrow {
  width: fit-content;
  margin-bottom: 13px;
  padding: 4px 7px;
  border: 1px solid #607619;
  background: #10170a;
  color: var(--display-green);
  font: 700 13px/1.25 "Courier New", Courier, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.eyebrow::before { content: ":: "; }
.deck { color: var(--fg-secondary); }

.video-card,
.plugin-card,
.social-card,
.plugin-grid-card,
.release-banner,
.disclaimer-banner,
.ai-transparency-banner,
.plugin-cta-box,
.about-intro-note,
.notice,
.service {
  border: 1px solid #e9e9e9 !important;
  border-right-color: #494949 !important;
  border-bottom-color: #494949 !important;
  border-radius: 1px !important;
  background: var(--ui-gray) !important;
  color: #111 !important;
  box-shadow: 3px 3px 0 rgba(0,0,0,.55) !important;
}
.video-card:hover,
.plugin-card:hover,
.social-card:hover,
.plugin-grid-card:hover,
.plugin-grid-card:focus-visible {
  border-color: #ff7979 var(--tape-red-dark) var(--tape-red-dark) #ff7979 !important;
  transform: translateY(-2px);
  box-shadow: 4px 5px 0 rgba(0,0,0,.7) !important;
}
.video-card:active,
.plugin-card:active,
.social-card:active,
.plugin-grid-card:active {
  border-color: #494949 #e9e9e9 #e9e9e9 #494949 !important;
  transform: translate(1px,1px);
  box-shadow: 1px 1px 0 #000 !important;
}

/* Homepage: compact music portal */
.home-videos-section h2 {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
}
.home-videos-section h2::after {
  content: "MUSICA È MEMORIA  |  IDEE  |  PERSONE  |  LUOGHI  ▪";
  color: #77746e;
  font: 700 10px/1.3 "Courier New", Courier, monospace;
  letter-spacing: .08em;
  white-space: nowrap;
}
html[lang="en"] .home-videos-section h2::after {
  content: "MUSIC IS MEMORY  |  IDEAS  |  PEOPLE  |  PLACES  ▪";
}
.videos-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
.video-card { overflow: hidden; }
.video-card .video-thumb { border-bottom: 2px solid #555; }
.video-info { padding: 12px 14px 15px; }
.video-title { color: #0a0a0a; font: 700 16px/1.35 Verdana, Arial, sans-serif; }
.video-artist { color: #4a4a4a; font: 13px/1.4 "Courier New", Courier, monospace; }
.video-meta { gap: 7px; }
.video-badge,
.plugin-grid-badge,
.badge-coming {
  border: 1px solid #681010;
  border-radius: 0;
  background: var(--tape-red) !important;
  color: var(--white) !important;
  font: 700 12px/1.25 "Courier New", Courier, monospace;
  letter-spacing: .04em;
}
.video-duration { color: #3f3f3f; font: 700 12px/1.3 "Courier New", Courier, monospace; }
.plugins-grid { gap: 13px; margin-top: 28px; }
.plugin-card { padding: 22px !important; }
.plugins-grid .plugin-card { padding: 0 20px 20px !important; }
.plugins-grid .plugin-card::before { margin-inline: -20px; border-bottom: 2px solid #555; filter: none; }
.plugin-icon { border-radius: 0; background: #111 !important; color: var(--display-green); border: 2px inset #777; box-shadow: none; }
.plugin-name { color: #111; font: 800 19px/1.2 Verdana, Arial, sans-serif; }
.plugin-desc { color: #383838; font-size: 15px; }
.plugin-cta { color: var(--link-blue); font: 700 13px/1.2 "Courier New", Courier, monospace; text-decoration: underline; }
.music-home-grid { gap: 14px; }
.music-home-grid .plugin-card { padding: 22px !important; }
.music-home-grid .plugin-card > div:first-child { border: 2px inset #777; border-radius: 0 !important; }
.social-grid { gap: 10px; margin-top: 28px; }
.social-card { padding: 22px 12px; }
.social-card .name { color: #111; font: 800 16px Verdana, Arial, sans-serif; }
.social-card .desc { color: #444; }
.social-card svg { color: var(--tape-red-dark); }
.about-brief { border: 1px solid #525252; background: rgba(8,8,8,.88); padding: 24px; }

/* Video archive */
.storie-header { padding: 150px 0 30px; }
.storie-header h1 { text-transform: uppercase; text-shadow: 3px 3px var(--tape-red-dark); }
.storie-header p { color: var(--fg-secondary); }
.search-bar {
  align-items: stretch;
  margin-bottom: 10px;
  padding: 28px 12px 12px;
  border: 1px solid #eee;
  border-right-color: #444;
  border-bottom-color: #444;
  background: var(--ui-gray);
  position: relative;
}
.search-bar::before {
  content: "VIDEO_ARCHIVE.SEARCH";
  position: absolute;
  inset: 4px 4px auto;
  padding: 3px 7px;
  background: var(--tape-red-dark);
  color: #fff;
  font: 700 12px/16px "Courier New", Courier, monospace;
}
.search-bar input[type="search"] {
  max-width: none;
  min-height: 42px;
  border: 2px inset #777;
  border-radius: 0;
  background: #fff;
  color: #111;
  font: 15px/1.3 Verdana, Arial, sans-serif;
}
.search-bar input[type="search"]::placeholder { color: #666; }
.filter-bar { gap: 4px; margin-bottom: 25px; }
.filter-btn,
.page-btn {
  min-height: 40px;
  padding: 8px 15px;
  border: 2px solid #eee;
  border-right-color: #444;
  border-bottom-color: #444;
  border-radius: 0;
  background: var(--ui-gray);
  color: #111;
  font: 700 13px "Courier New", Courier, monospace;
  text-transform: uppercase;
}
.filter-btn:hover, .page-btn:hover { background: var(--paper); color: var(--tape-red-dark); }
.filter-btn.active, .page-btn.active { border-color: #520b0b #f66 #f66 #520b0b; background: var(--tape-red); color: #fff; }
.storie-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.pagination { border-top: 1px dashed #777; padding-top: 18px; }
.page-info { color: var(--paper); font: 13px "Courier New", Courier, monospace; }
.search-no-results { color: var(--paper); }

/* Free audio software archive */
.plugin-grid-page { padding-top: 150px; padding-bottom: 60px; }
.plugin-grid-hero { padding: 0 0 26px; }
.plugin-grid-hero h1 { text-transform: uppercase; text-shadow: 3px 3px var(--tape-red-dark); }
.plugin-grid-page > div[style*="background:var(--surface)"] { display: grid; grid-template-columns: 1.15fr .85fr; align-items: stretch; }
.plugin-grid-page > div[style*="background:var(--surface)"] > div:first-child { min-height: 290px; height: 100%; aspect-ratio: auto !important; }
.plugin-grid-page > div[style*="background:var(--surface)"] > div:nth-child(2) { display: flex; flex-direction: column; justify-content: center; padding: 28px !important; }
.release-banner { position: relative; padding: 34px 16px 14px; }
.release-banner::before,
.plugin-cta-box::before,
.disclaimer-banner::before,
.ai-transparency-banner::before,
.about-intro-note::before {
  content: "SYSTEM MESSAGE";
  position: absolute;
  inset: 4px 4px auto;
  padding: 3px 7px;
  background: var(--tape-red-dark);
  color: #fff;
  font: 700 12px/15px "Courier New", Courier, monospace;
}
.release-banner-icon { filter: grayscale(1); }
.plugin-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.plugin-grid-card { min-height: 0; overflow: hidden; cursor: pointer; }
.plugin-screenshot { min-height: 180px; border-bottom: 2px solid #555; filter: none; }
.plugin-grid-body { padding: 14px; }
.plugin-grid-name { color: #111; font: 800 18px/1.2 Verdana, Arial, sans-serif; }
.plugin-grid-tagline { color: #3e3e3e; font-size: 15px; }
.plugin-grid-price { color: #255300; font: 700 13px "Courier New", Courier, monospace; text-transform: uppercase; }
.plugin-grid-price::before { content: "● "; color: #467d0a; }
.plugin-grid-cta { color: var(--link-blue); text-decoration: underline; font-weight: 700; }
.faq-section { margin-top: 45px; border: 1px solid #666; background: #111; padding: 12px; }
.faq-section > h3 { margin: -12px -12px 0; padding: 7px 10px; background: var(--tape-red-dark); color: #fff; font: 700 15px "Courier New", Courier, monospace; letter-spacing: .04em; }
.faq-item { padding: 17px 10px 17px 38px; border-color: #555; position: relative; }
.faq-item::before { content: "[+]"; position: absolute; left: 8px; top: 17px; color: var(--display-green); font: 700 14px "Courier New", Courier, monospace; }
.faq-q { color: var(--white); font: 700 16px/1.35 Verdana, Arial, sans-serif; }
.faq-a { color: #c7c7c0; font-size: 15px; }
.disclaimer-banner,
.ai-transparency-banner { position: relative; padding-top: 42px !important; }
.disclaimer-banner::before { content: "README / IMPORTANT"; }
.ai-transparency-banner::before { content: "TRANSPARENCY.LOG"; }
.disclaimer-banner a,
.ai-transparency-banner a,
.policy-section a { color: var(--link-blue) !important; text-decoration: underline; }

/* Plugin detail windows */
.plugin-detail-section { padding-top: 150px; padding-bottom: 60px; }
.plugin-grid-hero { gap: 30px; }
.plugin-grid-hero > div:first-child h1 { text-transform: uppercase; text-shadow: 3px 3px var(--tape-red-dark); }
.plugin-grid-hero .tagline { color: var(--fg-secondary); font-size: 17px; }
.plugin-detail-section p { text-align: left !important; }
.plugin-image-wrapper,
.plugin-hero-img,
.plugin-image-full { border: 3px ridge #888 !important; border-radius: 0 !important; box-shadow: 6px 6px 0 rgba(0,0,0,.65) !important; overflow: hidden; }
.plugin-features-list { border: 1px solid #555; }
.plugin-features-list li { padding: 14px; border-color: #4f4f4f; }
.plugin-features-list strong { color: var(--display-green); font: 700 14px/1.4 "Courier New", Courier, monospace; }
.plugin-features-list span { color: var(--fg-secondary); font-size: 15px; }
.plugin-specs-table { border: 2px inset #777; background: #101010; }
.plugin-specs-table tr { border-color: #484848; }
.plugin-specs-table th { color: var(--display-green); font: 700 13px "Courier New", Courier, monospace; text-transform: uppercase; }
.plugin-specs-table td { color: var(--paper); font-size: 15px; }
.plugin-usage-list li { color: var(--fg-secondary); }
.plugin-usage-list li::marker { color: var(--display-green); font-family: monospace; }
.plugin-model-card { border: 1px solid #555; border-radius: 0; background: #111; }
.plugin-cta-box { position: relative; padding-top: 55px; }
.plugin-cta-box::before { content: "DOWNLOAD MANAGER"; }
.plugin-cta-box h3,
.plugin-cta-box p { color: #111; }
.cta-notice { color: #4b4b4b !important; }

/* Tape player / music */
#musica { width: min(100%, var(--max-w)); background-attachment: scroll; }
#musica::before { background: rgba(5,5,5,.78); }
.music-hero { min-height: 480px; border-bottom: 1px solid #555; }
.music-hero-content { padding-top: 150px; }
.music-hero-content h1 { text-transform: uppercase; text-shadow: 3px 3px var(--tape-red-dark); }
.music-ep-section, .music-album-section, .music-story-section { padding: 55px 0; }
.music-layout { gap: 34px; }
.music-cover { border: 3px ridge #888; border-radius: 0 !important; background: #111; box-shadow: 6px 6px 0 rgba(0,0,0,.7); }
.music-text { min-width: 0; }
.music-text h3 { text-transform: uppercase; }
.music-text .label { color: var(--display-green); font: 700 14px "Courier New", Courier, monospace; }
.music-text p, .music-story-section p { color: #d0cdc4; font-size: 16px; }
#spotify-consent,
#spotify-player {
  position: relative;
  padding-top: 42px !important;
  border: 3px ridge #777 !important;
  border-radius: 0 !important;
  background: #0c1009 !important;
  color: var(--display-green);
}
#spotify-consent::before,
#spotify-player::before {
  content: "TAPE PLAYER 01 // EPISODIO 1";
  position: absolute;
  inset: 5px 5px auto;
  padding: 4px 7px;
  border: 1px solid #4c6610;
  background: #11170a;
  color: var(--display-green);
  font: 700 12px/15px "Courier New", Courier, monospace;
}
#spotify-consent p { color: #c7c7bd !important; }
#spotify-player iframe { border-top: 1px solid #555 !important; }
#spotify-remove { color: var(--display-green) !important; font-family: "Courier New", Courier, monospace; }
.music-cover-placeholder { color: var(--display-green); font-family: "Courier New", Courier, monospace !important; }
.music-story-section .container-narrow { border: 1px solid #515151; background: rgba(7,7,7,.85); padding: 24px; }
.gear-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; margin: 30px 0; }
.gear-item { border: 1px solid #eee; border-right-color: #494949; border-bottom-color: #494949; border-radius: 0; background: var(--ui-gray); color: #111; padding: 14px; box-shadow: 2px 2px 0 #000; }
.gear-item .cat { margin-bottom: 5px; color: var(--tape-red-dark); font: 700 12px/1.3 "Courier New", Courier, monospace; letter-spacing: .05em; text-transform: uppercase; }
.gear-item h4 { color: #111; font: 800 15px/1.35 Verdana, Arial, sans-serif; }
.gear-item .note { margin-top: 4px; color: #494949; font-size: 13px; line-height: 1.4; }

/* About and policy pages */
.about-article { padding-top: 155px; padding-bottom: 65px; }
.about-article > h1 { text-transform: uppercase; text-shadow: 3px 3px var(--tape-red-dark); }
.about-article .deck { padding-bottom: 18px; border-bottom: 1px dashed #777; }
.about-article h2 { margin-top: 40px; padding: 6px 9px; border-left: 7px solid var(--tape-red); background: #191919; font-size: 22px; letter-spacing: -.02em; }
.about-article p, .about-list { font-size: 16px; color: #d2cfc6; }
.about-intro-note { position: relative; padding-top: 42px; }
.about-intro-note::before { content: "TAPE_NOTES.TXT"; }
.about-intro-note blockquote, .about-intro-note small { color: #111; }
.about-list li::marker { color: var(--display-green); }

.page { padding-top: 135px; }
.page > .container { max-width: 860px; border: 1px solid #555; background: #141414; padding: 30px; }
.page h1 { text-transform: uppercase; text-shadow: 3px 3px var(--tape-red-dark); }
.page .lead { color: #d1cec5; }
.updated, .language-note { color: var(--display-green); font: 13px/1.5 "Courier New", Courier, monospace; }
.policy-section { padding: 25px 0; border-color: #4b4b4b; }
.policy-section h2 { padding: 5px 8px; background: var(--ui-gray); color: #111; font-size: 20px; letter-spacing: -.02em; }
.policy-section p, .policy-section li { color: #d0cdc4; font-size: 15px; }
.service-list { gap: 8px; }
.service { padding: 13px; }
.service strong, .service p { color: #111; }
.notice { padding: 18px; }
.notice h2, .notice p { color: #111; }
.nav-back { color: #111 !important; font: 700 13px "Courier New", Courier, monospace; text-decoration: underline; }

/* Footer status bar */
.site-footer {
  position: relative;
  margin-top: 0;
  padding: 28px 0 8px;
  border: 0;
  border-top: 1px solid #555;
  border-bottom: 1px solid #050505;
  background: #101010;
  color: var(--paper);
  box-shadow: inset 0 1px 0 #282828, 0 -4px 0 #080808;
}
.site-footer::before {
  content: "TAPE STATUS // ONLINE";
  position: absolute;
  top: 7px;
  left: max(14px, calc((100% - var(--max-w)) / 2 + 14px));
  color: #77746e;
  font: 700 9px/1 "Courier New", Courier, monospace;
  letter-spacing: .12em;
}
.site-footer .container { gap: 16px; }
.site-footer > .container:first-child {
  padding-bottom: 18px;
  border-bottom: 1px solid #3b3b3b;
}
.site-footer > .container:last-child { padding-top: 8px; }
.site-footer .site-logo {
  color: var(--paper);
  font-size: 18px;
  letter-spacing: -.02em;
}
.site-footer .site-logo::after { display: none; }
.footer-brand p { color: #9b9890; font: 12px/1.4 "Courier New", Courier, monospace; }
.footer-links { align-items: flex-end; gap: 8px; }
.footer-links h4 { color: var(--display-green); font: 700 11px "Courier New", Courier, monospace; letter-spacing: .1em; text-transform: uppercase; }
.social-row { gap: 0; flex-wrap: wrap; justify-content: flex-end; }
.social-row a {
  min-height: 26px;
  padding: 3px 4px;
  border: 0;
  background: transparent;
  color: var(--paper) !important;
  font: 700 12px "Courier New", Courier, monospace;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.social-row a + a::before { content: "/"; margin: 0 9px 0 5px; color: #77746e; text-decoration: none; }
.social-row a:hover { color: #fff !important; background: #282828; }
.footer-bottom {
  margin-top: 0;
  padding: 7px 8px;
  border: 1px solid #343434;
  background: #171717;
  color: #aaa79f;
  font: 12px/1.3 "Courier New", Courier, monospace;
}
.footer-bottom p:last-child::after { content: "  // PLAY DIFFERENTLY."; color: #77746e; }
.footer-bottom::after {
  content: "▂▅▇▃▆";
  color: var(--display-green);
  font: 700 18px/.8 "Courier New", Courier, monospace;
  letter-spacing: -3px;
}

/* 404 */
body > h1:first-child { margin: 15vh auto 0; color: var(--display-green); font: 900 clamp(80px,20vw,180px)/1 "Courier New", Courier, monospace; text-shadow: 5px 5px var(--tape-red-dark); }
body > h1:first-child,
body > h1:first-child ~ h2,
body > h1:first-child ~ p,
body > h1:first-child ~ .btn { margin-left: max(20px, calc((100% - 760px)/2)); margin-right: max(20px, calc((100% - 760px)/2)); }
body > h1:first-child ~ h2 { margin-top: 15px; }
body > h1:first-child ~ p { max-width: 600px; color: var(--fg-secondary); }

@media (max-width: 900px) {
  .videos-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .plugins-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .social-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .plugin-grid-hero, .music-layout { grid-template-columns: 1fr; }
  .music-layout-reverse { direction: ltr; }
  .music-cover { max-width: 440px !important; width: 100%; }
}

@media (max-width: 640px) {
  body { font-size: 16px; }
  .container, .container-narrow { padding-inline: 14px; }
  .section { padding: 40px 0; }
  .site-nav { left: 0; width: 100%; transform: none; }
  .site-logo { max-width: calc(100vw - 100px); }
  .site-logo svg { flex: 0 0 auto; }
  .nav-links.open {
    top: var(--nav-height);
    left: 0;
    right: 0;
    width: 100%;
    padding: 8px;
    gap: 3px;
    border: 2px outset #ddd;
    background: var(--ui-gray);
    box-shadow: 4px 4px 0 rgba(0,0,0,.75);
  }
  .nav-links.open a { width: 100%; min-height: 42px; }
  .nav-links.open .nav-utils { width: 100%; }
  .nav-links.open .lang-toggle { width: 100%; min-height: 42px; }
  .videos-grid, .storie-grid, .plugins-grid, .plugin-grid, .social-grid { grid-template-columns: 1fr; }
  .home-videos-section h2 { display: block; }
  .home-videos-section h2::after { display: block; margin-top: 8px; white-space: normal; font-size: 9px; }
  .hero { min-height: 590px; }
  .hero-actions { gap: 8px; }
  .btn { justify-content: center; min-height: 44px; }
  .hero-actions .btn { width: 100%; }
  .plugin-grid-page, .plugin-detail-section, .about-article { padding-top: 125px; }
  .storie-header { padding-top: 125px; }
  .music-hero-content { padding-top: 125px; }
  .search-bar { padding-inline: 8px; }
  .filter-bar { display: grid; grid-template-columns: repeat(2, 1fr); }
  .filter-btn { width: 100%; }
  .plugin-screenshot { min-height: 150px; }
  .plugin-grid-page > div[style*="background:var(--surface)"] { grid-template-columns: 1fr; }
  .plugin-grid-page > div[style*="background:var(--surface)"] > div:first-child { min-height: 0; aspect-ratio: 16 / 9 !important; }
  .page { padding-top: 110px; }
  .page > .container { border-left: 0; border-right: 0; padding: 22px 15px; }
  .site-footer .container { align-items: stretch; }
  .site-footer::before { left: 14px; }
  .site-footer > .container:first-child { gap: 18px; }
  .footer-links { align-items: flex-start; }
  .social-row { justify-content: flex-start; }
  .social-row a + a::before { margin-left: 3px; margin-right: 6px; }
  .social-row a { flex: 1 1 45%; justify-content: center; }
  .footer-bottom { flex-direction: column; }
  .gear-grid { grid-template-columns: 1fr; }
}

@media (max-width: 300px) {
  .site-nav::before { font-size: 10px; letter-spacing: .02em; }
  .site-nav .site-logo { font-size: 0; gap: 0; }
  .site-nav .nav-logo-img { width: 30px; height: 30px; }
}

/* Compact one-page home dashboard */
body.home-page main#main-content,
body.home-page .site-footer { width: calc(100% - 72px); max-width: none; }
body.home-page .site-nav {
  position: absolute;
  top: 0;
  height: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  pointer-events: none;
}
body.home-page .site-nav::before,
body.home-page .site-nav::after,
body.home-page .site-nav .site-logo,
body.home-page .site-nav .nav-links > a,
body.home-page .site-nav .mobile-nav-toggle { display: none; }
body.home-page .site-nav .container { height: 0; padding: 0; }
body.home-page .site-nav .nav-links { display: block; }
body.home-page .site-nav .nav-utils { position: absolute; top: 6px; right: 77px; z-index: 200; pointer-events: auto; }
body.home-page .site-nav .lang-toggle { min-height: 24px; padding: 3px 8px; font-size: 11px; }
.home-it { display: inline; }
.home-en { display: none; }
html[lang="en"] .home-it { display: none !important; }
html[lang="en"] .home-en { display: inline; }

.home-dashboard {
  width: 100%;
  margin-top: 0;
  padding: 0 14px 16px;
  border: 1px solid #5d5d5d;
  background:
    linear-gradient(180deg, rgba(8,8,8,.28), rgba(8,8,8,.8)),
    url('bg-hero.jpg') center 15% / cover fixed;
  box-shadow: 0 0 0 4px #171717, 8px 8px 0 rgba(0,0,0,.58);
}
.home-dashboard-head { position: relative; }
.home-window-caption {
  position: relative;
  min-height: 29px;
  padding: 4px 86px 4px 10px;
  border: 1px solid #dcdcdc;
  border-top: 0;
  border-right-color: #444;
  border-bottom-color: #444;
  background: #202d67;
  color: #fff;
  font: 700 13px/18px "Courier New", Courier, monospace;
  letter-spacing: .06em;
  text-shadow: 1px 1px #000;
}
.home-window-caption::after {
  content: "_   □   ×";
  position: absolute;
  top: 3px;
  right: 9px;
  font: 700 16px/18px Arial, sans-serif;
  letter-spacing: 2px;
}
.home-dashboard-brand {
  display: flex;
  align-items: center;
  min-height: 155px;
  gap: 13px;
  padding: 17px 25px 14px;
  border-bottom: 3px ridge #777;
  background:
    linear-gradient(90deg, rgba(4,4,4,.7), rgba(4,4,4,.24) 58%, rgba(4,4,4,.6)),
    url('bg-tubes.jpg') center 42% / cover;
  color: var(--paper);
}
.home-brand-logo { flex: 0 0 auto; margin: 0; line-height: 0; }
.home-brand-logo img { display: block; width: auto; height: clamp(92px, 8vw, 126px); max-width: min(360px, 42vw); object-fit: contain; object-position: left center; filter: drop-shadow(3px 3px 0 #101010); }
.home-brand-copy { margin-left: 0; color: #eee8da; font: 13px/1.43 "Courier New", Courier, monospace; letter-spacing: .05em; text-shadow: 1px 1px #000; }
.home-brand-mark { margin-left: auto; color: var(--tape-red); font: 700 30px/1 "Courier New", Courier, monospace; text-shadow: 2px 2px #000; }
.home-dashboard-nav {
  display: flex;
  align-items: center;
  gap: 4px;
  min-height: 55px;
  padding: 6px 8px;
  border-bottom: 2px ridge #999;
  background: linear-gradient(#e2e2e2, #aaa);
  overflow-x: auto;
}
.home-dashboard-nav > a {
  flex: 0 0 auto;
  min-height: 37px;
  padding: 9px 19px;
  border: 2px solid #f8f8f8;
  border-right-color: #4b4b4b;
  border-bottom-color: #4b4b4b;
  background: #c8c8c8;
  color: #111;
  font: 700 14px/15px "Courier New", Courier, monospace;
  text-transform: uppercase;
  text-decoration: underline;
  white-space: nowrap;
}
.home-dashboard-nav > a[aria-current="page"] { background: var(--tape-red); color: #fff; border-color: #f36b6b #5a0808 #5a0808 #f36b6b; text-shadow: 1px 1px #000; }
.home-dashboard-nav > a:hover { background: #f0f0f0; color: var(--tape-red-dark); }
.home-dashboard-nav > a:active { border-color: #4b4b4b #f8f8f8 #f8f8f8 #4b4b4b; transform: translate(1px,1px); }
.home-nav-social { display: flex; align-items: center; gap: 5px; margin-left: auto; padding-left: 8px; }
.home-nav-social a { min-width: 28px; padding: 3px 5px; color: #111; font: 700 18px/25px Arial, sans-serif; text-align: center; text-decoration: none; }
.home-nav-social a:hover { color: var(--tape-red-dark); }

.home-dashboard-grid {
  display: grid;
  grid-template-columns: 1.45fr .78fr .92fr;
  grid-template-rows: 214px 214px 174px 100px;
  grid-template-areas:
    "feature player about"
    "feature videos videos"
    "notes music plugins"
    "quote quote links";
  gap: 11px;
  padding-top: 12px;
}
.home-panel {
  min-width: 0;
  overflow: hidden;
  border: 2px ridge #aaa;
  background: rgba(13,13,13,.93);
  color: var(--paper);
  box-shadow: 3px 3px 0 rgba(0,0,0,.72);
}
.home-panel-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 29px;
  padding: 5px 9px;
  background: linear-gradient(#b92323, #801111);
  color: #fff;
  font: 700 13px/16px "Courier New", Courier, monospace;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-shadow: 1px 1px #000;
}
.home-panel-title a { margin-left: auto; color: #fff; font: 700 11px/14px "Courier New", Courier, monospace; text-decoration: underline; text-transform: none; }
.home-panel-body { padding: 12px; }
.home-panel-link { display: inline-block; margin-top: 10px; color: #5d8cff; font: 700 12px/1.3 "Courier New", Courier, monospace; text-decoration: underline; }
.home-feature-panel { grid-area: feature; }
.home-feature-link { position: relative; display: block; height: calc(100% - 29px); color: #fff; }
.home-feature-image { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,6,6,.8), rgba(6,6,6,.1)), linear-gradient(135deg, #1a2117, #39452d) center / cover; filter: saturate(.76) contrast(1.06); }
.home-feature-copy { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; max-width: 56%; height: 100%; padding: 27px 20px; text-shadow: 2px 2px #000; }
.home-feature-kicker { margin-bottom: 14px; color: var(--paper); font: 700 11px/1.2 "Courier New", Courier, monospace; letter-spacing: .12em; }
.home-feature-copy strong { margin-bottom: 7px; font: 800 clamp(24px, 3.5vw, 40px)/.95 Verdana, Arial, sans-serif; letter-spacing: -.05em; }
.home-feature-copy > span:not(.home-feature-kicker) { color: #f3f0e8; font: 16px/1.35 Georgia, serif; }
.home-feature-copy em { margin-top: auto; padding: 8px 11px; border: 1px solid #ee5555; background: rgba(139,14,14,.86); color: #fff; font: 700 12px/1.2 "Courier New", Courier, monospace; font-style: normal; text-decoration: underline; }
.home-player-panel { grid-area: player; }
.home-player-body { position: relative; height: calc(100% - 29px); background: linear-gradient(130deg, #090b09, #151a10); font-family: "Courier New", Courier, monospace; }
.home-player-status { color: var(--display-green); font-size: 12px; }
.home-player-body > strong { display: block; margin: 7px 0 15px; color: var(--display-green); font: 700 15px/1.2 "Courier New", Courier, monospace; }
.home-player-track { height: 8px; border: 2px inset #777; background: #080808; }
.home-player-track span { display: block; width: 34%; height: 100%; background: var(--display-green); }
.home-player-time { margin-top: 7px; color: #b9bcb1; font-size: 11px; }
.home-player-controls { display: flex; gap: 5px; margin-top: 15px; }
.home-player-controls span { display: inline-flex; align-items: center; justify-content: center; width: 31px; height: 28px; border: 2px outset #d8d8d8; background: #bdbdbd; color: #111; font: 700 12px Arial, sans-serif; }
.home-vu { position: absolute; top: 4px; right: 3px; display: flex; flex-direction: column-reverse; gap: 2px; width: 13px; height: 124px; padding: 3px; border: 2px inset #777; background: #090909; }
.home-vu i { display: block; height: 7px; background: var(--display-green); box-shadow: 0 0 4px rgba(167,209,41,.45); }
.home-vu i:nth-child(1), .home-vu i:nth-child(2) { opacity: .35; } .home-vu i:nth-child(3) { opacity: .55; } .home-vu i:nth-child(4) { opacity: .7; }
.home-player-body .home-panel-link { position: absolute; bottom: 8px; left: 12px; right: 12px; }
.home-about-panel { grid-area: about; }
.home-about-body { height: calc(100% - 29px); padding: 10px; }
.home-about-avatar { float: left; width: 78px; height: 102px; margin: 0 11px 5px 0; border: 2px solid #bbb; background: linear-gradient(135deg, rgba(8,8,8,.2), rgba(8,8,8,.6)), url('bg-cassettes.jpg') center / cover; filter: grayscale(.35); }
.home-about-body p { color: #f0ede4; font: 14px/1.5 Georgia, serif; }
.home-about-body .home-panel-link { clear: both; }
.home-videos-panel { grid-area: videos; }
.home-mini-videos { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; padding: 10px; }
.home-mini-video { min-width: 0; color: var(--paper); }
.home-mini-thumb { height: 93px; border: 1px solid #dedede; background: #181818 center / cover; }
.home-mini-video strong { display: block; margin-top: 6px; color: #fff; font: 700 12px/1.22 Verdana, Arial, sans-serif; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.home-mini-video small { display: block; margin-top: 4px; color: #aaa79d; font: 10px/1.2 "Courier New", Courier, monospace; }
.home-music-panel { grid-area: music; }
.home-music-body { display: flex; align-items: center; gap: 10px; height: calc(100% - 29px); padding: 10px; }
.home-music-body img { width: 90px; height: 116px; flex: 0 0 90px; border: 2px ridge #888; object-fit: cover; }
.home-music-body strong { display: block; color: #fff; font: 800 16px/1.1 Verdana, Arial, sans-serif; }
.home-music-body small { display: block; margin-top: 7px; color: #bdbab2; font: 11px/1.2 "Courier New", Courier, monospace; }
.home-plugins-panel { grid-area: plugins; }
.home-plugin-list { padding: 7px 11px; }
.home-plugin-list a { display: flex; align-items: center; gap: 7px; padding: 5px 0; border-bottom: 1px dotted #666; color: #f0ede4; font: 13px/1.15 "Courier New", Courier, monospace; }
.home-plugin-list a:last-child { border-bottom: 0; }
.home-plugin-list a span { color: var(--white); font-size: 10px; }
.home-plugin-list a b { margin-left: auto; color: var(--display-green); font-size: 14px; }
.home-notes-panel { grid-area: notes; }
.home-notes-panel .home-panel-body { display: flex; align-items: center; gap: 12px; height: calc(100% - 29px); padding: 10px 13px; }
.home-note-count { color: var(--display-green); font: 800 39px/.8 "Courier New", monospace; text-shadow: 2px 2px #000; }
.home-notes-panel strong { display: block; color: #fff; font: 700 13px/1.2 Verdana, Arial, sans-serif; }
.home-notes-panel small { display: block; margin-top: 4px; color: #aaa79d; font: 11px/1.2 "Courier New", monospace; }
.home-notes-panel .home-panel-link { margin: 0 0 0 auto; }
.home-links-panel { grid-area: links; }
.home-quick-links { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 12px; padding: 10px 12px; }
.home-quick-links a { color: #f1eee6; font: 12px/1.2 "Courier New", monospace; text-decoration: underline; }
.home-quick-links a span { display: inline-block; width: 19px; color: var(--tape-red); font: 700 15px/1 Arial, sans-serif; text-decoration: none; }
.home-dashboard-quote { grid-area: quote; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #eeeae0; text-align: center; text-shadow: 2px 2px #000; }
.home-dashboard-quote span { font: 700 18px/1.2 Georgia, serif; letter-spacing: .05em; }
.home-dashboard-quote i { margin-top: 5px; color: var(--tape-red); font: 700 22px/1 "Courier New", monospace; }

.home-full-sections { margin-top: 13px; border: 1px solid #5c5c5c; background: #151515; }
.home-full-sections > summary { display: flex; align-items: center; justify-content: space-between; min-height: 40px; padding: 8px 13px; color: var(--display-green); cursor: pointer; font: 700 13px/1.3 "Courier New", monospace; letter-spacing: .06em; list-style: none; text-decoration: underline; }
.home-full-sections > summary::-webkit-details-marker { display: none; }
.home-full-sections > summary b { color: #fff; font-size: 20px; text-decoration: none; }
.home-full-sections[open] > summary { border-bottom: 1px solid #555; background: #202020; }
.home-full-sections[open] > summary b { transform: rotate(45deg); }
.home-full-sections-body { padding-top: 1px; }
.home-full-sections[open] .reveal { opacity: 1; transform: none; }
/* The compact home is self-contained; the legacy long-form sections stay out of the layout. */
body.home-page .home-full-sections { display: none; }
body.home-page .footer-bottom { border: 2px inset #777; background: var(--ui-gray); color: #1b1b1b; }
body.home-page .footer-bottom p:last-child::after { color: #444; }
body.home-page .footer-bottom::after { color: #2e5d06; }
/* The reference home ends with one compact Windows-style status strip. */
body.home-page .site-footer { padding: 0 0 8px; border: 0; background: transparent; box-shadow: none; }
body.home-page .site-footer::before { display: none; }
body.home-page .site-footer > .container:first-child { display: none; }
body.home-page .site-footer > .container:last-child { width: 100%; max-width: none; padding: 0 12px; }
body.home-page .footer-bottom { display: flex; align-items: center; width: 100%; gap: 14px; min-height: 34px; margin: 0; padding: 6px 9px; border: 2px ridge #777; background: var(--ui-gray); color: #1b1b1b; font-size: 11px; line-height: 1.2; }
body.home-page .footer-bottom p { margin: 0; color: #1b1b1b; white-space: nowrap; }
body.home-page .footer-bottom p:first-child::after { content: "  |  UN PROGETTO INDIPENDENTE"; }
body.home-page .footer-bottom p:last-child { margin-left: auto; font-size: 0; }
body.home-page .footer-bottom p:last-child::before { content: "BUILT WITH MUSIC"; font: 700 10px/1.2 "Courier New", Courier, monospace; letter-spacing: .05em; }
body.home-page .footer-bottom p:last-child::after { content: none; }
body.home-page .footer-bottom::after { content: "■  ■  ▪"; margin-left: 2px; color: var(--tape-red); font: 700 13px/1 "Courier New", monospace; letter-spacing: 1px; }
html[lang="en"] body.home-page .footer-bottom p:first-child::after { content: "  |  INDEPENDENT PROJECT"; }
html[lang="en"] body.home-page .footer-bottom p:last-child::before { content: "BUILT WITH MUSIC"; }

@media (max-width: 900px) {
  .home-dashboard { padding-inline: 9px; }
  .home-dashboard-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 250px 196px 170px 155px 110px; grid-template-areas: "feature feature" "player about" "videos videos" "notes music" "plugins links"; }
  .home-feature-copy { max-width: 50%; }
  .home-dashboard-quote { display: none; }
  .home-plugins-panel { grid-area: plugins; }
  .home-links-panel { grid-area: links; }
}
@media (max-width: 640px) {
  body.home-page main#main-content,
  body.home-page .site-footer { width: 100%; }
  .home-dashboard { margin-top: var(--nav-height); padding: 0 5px 10px; box-shadow: none; }
  .home-dashboard-brand { min-height: 118px; padding: 14px 9px 11px; gap: 7px; }
  .home-brand-logo img { height: 84px; max-width: 48vw; }
  .home-brand-copy { margin-left: 7px; font-size: 10px; }
  .home-brand-mark { font-size: 22px; }
  .home-dashboard-nav { min-height: 50px; padding: 5px 3px; }
  .home-dashboard-nav > a { min-height: 35px; padding: 8px 11px; font-size: 12px; }
  .home-nav-social { display: none; }
  body.home-page .site-nav .nav-utils { right: 65px; }
  body.home-page .footer-bottom { align-items: flex-start; flex-wrap: wrap; gap: 4px 10px; }
  body.home-page .footer-bottom p:last-child { margin-left: 0; }
  body.home-page .footer-bottom p { white-space: normal; }
  .home-dashboard-grid { grid-template-columns: 1fr; grid-template-rows: auto; grid-template-areas: "feature" "player" "about" "videos" "notes" "music" "plugins" "links"; gap: 9px; }
  .home-panel { min-height: 0; }
  .home-feature-panel { min-height: 310px; }
  .home-feature-copy { max-width: 70%; padding: 25px 15px; }
  .home-mini-videos { grid-template-columns: 1fr 1fr 1fr; gap: 6px; padding: 8px; }
  .home-mini-thumb { height: 62px; }
  .home-mini-video strong { font-size: 10px; }
  .home-mini-video small { font-size: 9px; }
  .home-player-panel { min-height: 205px; }
  .home-about-panel { min-height: 190px; }
  .home-notes-panel, .home-music-panel, .home-links-panel { min-height: 148px; }
  .home-plugins-panel { min-height: 184px; }
  .home-dashboard-quote { display: none; }
  .home-full-sections > summary { font-size: 11px; }
}
@media (max-width: 380px) {
  .home-brand-logo img { height: 70px; }
  .home-brand-copy { font-size: 8px; letter-spacing: 0; }
  .home-brand-mark { display: none; }
  .home-dashboard-nav > a { padding-inline: 9px; }
}

/* Internal pages: a shared late-90s music workstation. */
body.portal-page {
  --portal-width: 1320px;
  background-color: #070707;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    radial-gradient(ellipse at center, #222 0%, #090909 68%);
  background-size: 5px 5px, 5px 5px, auto;
}
body.portal-page .site-nav,
body.portal-page main#main-content,
body.portal-page main#musica,
body.portal-page .site-footer {
  width: calc(100% - 72px);
  max-width: none;
}
body.portal-page .site-nav {
  height: 112px;
  border: 1px solid #dedede;
  border-right-color: #303030;
  border-bottom-color: #303030;
  background: linear-gradient(#e1e1e1, #b1b1b1);
  box-shadow: 0 0 0 4px #171717, 7px 7px 0 rgba(0,0,0,.6);
}
body.portal-page .site-nav::before {
  inset: 4px 4px auto;
  height: 26px;
  background: #202d67;
  border-color: #bcc9ff #0e183f #0e183f #bcc9ff;
}
body.portal-page .site-nav::after {
  top: 10px;
  right: 13px;
  color: #f7f7f2;
}
body.video-page .site-nav::before { content: "TAPE MUSIC STORIES // VIDEO ARCHIVE"; }
body.music-page .site-nav::before { content: "TAPE MUSIC STORIES // MUSIC PLAYER"; }
body.plugin-page .site-nav::before { content: "TAPE MUSIC STORIES // PLUGIN LIBRARY"; }
body.about-page .site-nav::before { content: "TAPE MUSIC STORIES // ABOUT"; }
body.portal-page .site-nav .container,
body.portal-page .site-footer .container {
  width: min(calc(100% - 48px), var(--portal-width));
  max-width: var(--portal-width);
}
body.portal-page main#main-content,
body.portal-page main#musica {
  position: relative;
  border: 1px solid #4d4d4d;
  border-top: 0;
  box-shadow: 0 0 0 4px #171717, 7px 7px 0 rgba(0,0,0,.55);
}
body.portal-page main#musica {
  background: #0d0d0d;
}
body.portal-page .page-section > .container,
body.music-page .music-hero-content,
body.music-page .music-ep-section > .container,
body.music-page .music-album-section > .container,
body.music-page .music-story-section > .container-narrow {
  width: min(calc(100% - 56px), var(--portal-width));
  max-width: var(--portal-width);
}
body.portal-page .site-footer {
  margin-top: 8px;
  padding-inline: 0;
  border: 1px solid #4d4d4d;
  box-shadow: 0 0 0 4px #171717, 7px 7px 0 rgba(0,0,0,.55);
}
body.portal-page .site-footer::before { left: 24px; }

/* Video: a compact archive browser. */
.video-page .storie-header {
  position: relative;
  margin: 0 0 18px;
  padding: 58px 28px 28px;
  border: 2px ridge #8c8c8c;
  background:
    linear-gradient(90deg, rgba(5,5,5,.88), rgba(5,5,5,.35)),
    url('bg-stage.jpg') center 42% / cover;
  box-shadow: 5px 5px 0 rgba(0,0,0,.58);
}
.video-page .storie-header::before,
.plugin-page .plugin-grid-hero::before,
.about-page .about-article::before {
  position: absolute;
  inset: 5px 5px auto;
  padding: 5px 8px;
  background: linear-gradient(#bd2929, #7f1010);
  color: #fff;
  font: 700 12px/15px "Courier New", Courier, monospace;
  letter-spacing: .07em;
  text-shadow: 1px 1px #000;
}
.video-page .storie-header::before { content: ":: VIDEO CATALOG / CHANNEL ARCHIVE"; }
.video-page .storie-header::after {
  content: "STREAMING NOW  ▪";
  position: absolute;
  right: 18px;
  bottom: 15px;
  color: var(--display-green);
  font: 700 11px/1.2 "Courier New", Courier, monospace;
  letter-spacing: .08em;
}
.video-page .storie-header h1 {
  max-width: 10ch;
  margin: 0 0 10px;
  color: #fff;
  font-size: clamp(42px, 5vw, 72px);
  line-height: .9;
}
.video-page .storie-header p { max-width: 42ch; margin: 0; color: #f0ece1; font-size: 17px; }
.video-page .search-bar {
  margin-bottom: 8px;
  padding: 37px 16px 16px;
  border: 2px ridge #8d8d8d;
  background: #bdbdbd;
  box-shadow: 4px 4px 0 rgba(0,0,0,.48);
}
.video-page .search-bar::before { content: "FIND IN VIDEO ARCHIVE"; background: #202d67; }
.video-page .filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0 0 19px;
  padding: 8px;
  border: 1px solid #515151;
  background: rgba(8,8,8,.9);
}
.video-page .filter-btn,
.video-page .page-btn { min-height: 37px; padding-inline: 13px; }
.video-page .storie-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
  margin-top: 0;
  padding-bottom: 24px;
}
.video-page .video-card {
  position: relative;
  border: 2px ridge #9c9c9c !important;
  background: #bdbdbd !important;
}
.video-page .video-card > a { display: flex !important; height: 100%; flex-direction: column; }
.video-page .video-card .video-thumb { aspect-ratio: 16 / 9; min-height: 0; border-bottom: 3px ridge #777; }
.video-page .video-card .play-overlay {
  border: 2px outset #e1e1e1;
  border-radius: 0;
  background: rgba(137,18,18,.92);
  color: #fff;
}
.video-page .video-info { display: flex; min-height: 130px; flex: 1; flex-direction: column; padding: 12px 13px 14px; }
.video-page .video-meta { margin-bottom: 7px; }
.video-page .video-title { font-size: 15px; }
.video-page .video-artist { margin-top: auto; padding-top: 8px; border-top: 1px dotted #777; }
.video-page .pagination { margin-bottom: 10px; padding: 15px; border: 2px ridge #777; background: #111; }

/* Plugin: a hardware-software catalog. */
.plugin-page .plugin-grid-page { padding-top: 150px; padding-bottom: 48px; }
.plugin-page .plugin-grid-hero {
  position: relative;
  margin-bottom: 16px;
  padding: 58px 28px 27px;
  border: 2px ridge #8d8d8d;
  background:
    linear-gradient(90deg, rgba(7,7,7,.86), rgba(7,7,7,.38)),
    url('bg-tubes.jpg') center 46% / cover;
  box-shadow: 5px 5px 0 rgba(0,0,0,.58);
}
.plugin-page .plugin-grid-hero::before { content: ":: AUDIO SOFTWARE / FREEWARE LIBRARY"; }
.plugin-page .plugin-grid-hero h1 { margin: 0 0 10px; color: #fff; font-size: clamp(42px, 5vw, 70px); line-height: .92; }
.plugin-page .plugin-grid-hero p { max-width: 52ch; color: #eeeae0; font-size: 17px; }
.plugin-page .release-banner {
  margin: 0 0 18px;
  padding: 42px 18px 16px;
  border: 2px ridge #8d8d8d !important;
  background: #bdbdbd !important;
  box-shadow: 4px 4px 0 rgba(0,0,0,.5) !important;
}
.plugin-page .release-banner::before { content: "SYSTEM BULLETIN / RELEASE STATUS"; background: #202d67; }
.plugin-page .release-banner strong,
.plugin-page .release-banner span { color: #111; }
.plugin-page .release-banner-icon { border: 2px inset #777; border-radius: 0 !important; background: #dedede !important; }
.plugin-page .plugin-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
}
.plugin-page .plugin-grid-card {
  display: flex;
  min-height: 0;
  flex-direction: column;
  border: 2px ridge #9c9c9c !important;
  background: #bebebe !important;
}
.plugin-page .plugin-screenshot {
  min-height: 0;
  aspect-ratio: 16 / 9;
  border-bottom: 3px ridge #777;
}
.plugin-page .plugin-grid-body { display: flex; min-height: 154px; flex: 1; flex-direction: column; padding: 13px; }
.plugin-page .plugin-grid-name { font-size: 17px; }
.plugin-page .plugin-grid-badge { padding: 3px 7px; border-radius: 0; }
.plugin-page .plugin-grid-tagline { font-size: 14px; line-height: 1.43; }
.plugin-page .plugin-grid-meta { margin-top: auto; padding-top: 10px; border-top: 1px dotted #777; }
.plugin-page .disclaimer-banner,
.plugin-page .ai-transparency-banner {
  padding: 43px 26px 22px !important;
  border: 2px ridge #8d8d8d !important;
  background: #c6c6c6 !important;
  color: #1b1b1b !important;
  box-shadow: 4px 4px 0 rgba(0,0,0,.5) !important;
}
.plugin-page .disclaimer-banner h3,
.plugin-page .ai-transparency-banner h3 {
  color: #181818 !important;
  font-size: 18px;
}
.plugin-page .disclaimer-banner p,
.plugin-page .ai-transparency-banner p {
  color: #292929 !important;
  font-size: 15px;
  line-height: 1.62;
}
.plugin-page .disclaimer-banner strong,
.plugin-page .ai-transparency-banner strong { color: #111 !important; }
.plugin-page .disclaimer-banner a,
.plugin-page .ai-transparency-banner a { color: #123cc0 !important; font-weight: 700; }

/* Music: an EP page built like a tape player. */
.music-page #musica { background: #0d0d0d; }
.music-page .music-hero {
  min-height: 410px;
  border-bottom: 2px ridge #777;
  background:
    linear-gradient(90deg, rgba(4,4,4,.84), rgba(4,4,4,.38)),
    url('bg-tape.svg') center / cover;
}
.music-page .music-hero::after {
  content: "PLAY  ▸  EPISODIO 1  ▸  2025";
  position: absolute;
  right: max(26px, calc((100% - var(--portal-width)) / 2 + 26px));
  bottom: 22px;
  color: var(--display-green);
  font: 700 11px/1.2 "Courier New", Courier, monospace;
  letter-spacing: .09em;
}
.music-page .music-hero-content { padding-top: 160px; padding-bottom: 67px; }
.music-page .music-hero-content .hero-kicker { display: table; margin-bottom: 14px; padding: 4px 7px; border: 1px solid #607619; background: #11170a; color: var(--display-green); font: 700 13px/1.3 "Courier New", Courier, monospace; letter-spacing: .08em; }
.music-page .music-hero-content h1 { max-width: 10ch; margin: 0 0 13px; color: #fff; font-size: clamp(43px, 5vw, 72px); line-height: .91; }
.music-page .music-hero-content .hero-tagline { max-width: 44ch; color: #eeeae0; font-size: 17px; }
.music-page .music-ep-section,
.music-page .music-album-section { padding: 34px 0; }
.music-page .music-ep-section { background: linear-gradient(90deg, rgba(167,209,41,.04), transparent 55%); }
.music-page .music-album-section { border-top: 1px solid #3f3f3f; background: rgba(0,0,0,.2); }
.music-page .music-layout {
  align-items: stretch;
  gap: 24px;
  padding: 17px;
  border: 2px ridge #777;
  background: rgba(8,8,8,.92);
  box-shadow: 5px 5px 0 rgba(0,0,0,.5);
}
.music-page .music-cover {
  display: grid;
  min-height: 0;
  aspect-ratio: 1;
  place-items: center;
  align-self: center;
  border: 3px ridge #9b9b9b !important;
}
.music-page .music-cover img { width: 100% !important; height: 100%; object-fit: cover; }
.music-page .music-text { position: relative; padding: 41px 16px 16px; border: 1px solid #515151; background: #101010; }
.music-page .music-text::before,
.music-page .music-story-section .container-narrow::before {
  position: absolute;
  inset: 5px 5px auto;
  padding: 4px 7px;
  background: linear-gradient(#b92323, #801111);
  color: #fff;
  font: 700 12px/15px "Courier New", Courier, monospace;
  letter-spacing: .07em;
  text-shadow: 1px 1px #000;
}
.music-page .music-text::before { content: ":: TAPE PLAYER / RELEASE NOTES"; }
.music-page .music-text h3 { margin: 0 0 6px; color: #fff; font-size: 28px; }
.music-page .music-text .label { margin-bottom: 17px; }
.music-page .music-text p,
.music-page .music-story-section p { color: #dedbd2; }
.music-page .music-story-section { padding: 35px 0 49px; }
.music-page .music-story-section .container-narrow {
  position: relative;
  max-width: 920px;
  padding: 48px 25px 26px;
  border: 2px ridge #777;
  background: rgba(9,9,9,.94);
  box-shadow: 5px 5px 0 rgba(0,0,0,.5);
}
.music-page .music-story-section .container-narrow::before { content: ":: STUDIO NOTES / EPISODIO 1"; }
.music-page .music-story-section h2 { margin-top: 0; color: #fff; font-size: 30px; }
.music-page .music-story-section .deck { color: var(--display-green); font: 700 13px/1.45 "Courier New", Courier, monospace; }
.music-page .gear-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.music-page .gear-item { min-height: 126px; }

/* About: a readable editor's notebook. */
.about-page .about-article {
  position: relative;
  width: min(calc(100% - 56px), 980px);
  max-width: 980px;
  margin: 150px auto 0;
  padding: 58px 42px 48px;
  border: 2px ridge #777;
  background: rgba(10,10,10,.94);
  box-shadow: 6px 6px 0 rgba(0,0,0,.62);
}
.about-page .about-article::before { content: ":: TAPE MUSIC STORIES / NOTEBOOK"; }
.about-page .about-article > .eyebrow { margin-bottom: 12px; }
.about-page .about-article > h1 { margin: 0 0 10px; color: #fff; font-size: clamp(40px, 5vw, 64px); line-height: .92; }
.about-page .about-article .deck { margin-bottom: 28px; color: var(--display-green); font: 700 14px/1.45 "Courier New", Courier, monospace; }
.about-page .about-intro-grid {
  margin: 26px 0 42px;
  gap: 26px;
  padding: 17px;
  border: 1px solid #515151;
  background: rgba(255,255,255,.025);
}
.about-page .about-intro-text p { margin: 0; color: #efebe0; font-size: 17px; line-height: 1.7; }
.about-page .about-intro-note {
  min-height: 220px;
  justify-content: flex-start;
  border: 2px ridge #8c8c8c !important;
  background: #bebebe !important;
  box-shadow: 3px 3px 0 rgba(0,0,0,.55) !important;
}
.about-page .about-intro-note::before { content: "TAPE NOTE"; position: static; display: inline-block; margin-bottom: 24px; background: #202d67; color: #fff; font-size: 11px; }
.about-page .about-intro-note .note-mark { color: #8f1818; margin-bottom: 18px; }
.about-page .about-intro-note blockquote { margin: 0; color: #111; font: 800 23px/1.08 Georgia, serif; }
.about-page .about-intro-note small { color: #444; font: 700 11px/1.3 "Courier New", Courier, monospace; }
.about-page .about-article h2 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 38px;
  padding: 8px 10px;
  border: 1px solid #ee6464;
  border-right-color: #610909;
  border-bottom-color: #610909;
  background: linear-gradient(#bd2929, #801111);
  color: #fff;
  font: 800 20px/1.2 Verdana, Arial, sans-serif;
  text-shadow: 1px 1px #000;
}
.about-page .about-article h2::before { content: "::"; color: var(--display-green); font: 700 15px/1 "Courier New", Courier, monospace; }
.about-page .about-article p,
.about-page .about-list { color: #dedbd3; line-height: 1.72; }
.about-page .about-list { margin-bottom: 0; padding: 16px 18px; border: 1px solid #515151; background: rgba(255,255,255,.025); }
.about-page .about-list li { margin-bottom: 14px; }
.about-page .about-list li:last-child { margin-bottom: 0; }
.about-page .about-list li::before { border-radius: 0; background: var(--display-green); }

@media (max-width: 1020px) {
  .video-page .storie-grid,
  .plugin-page .plugin-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .music-page .gear-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  body.portal-page .site-nav,
  body.portal-page main#main-content,
  body.portal-page main#musica,
  body.portal-page .site-footer { width: 100%; }
  body.portal-page .site-nav { height: var(--nav-height); box-shadow: 0 3px 0 rgba(0,0,0,.6); }
  body.portal-page .site-nav::before { height: 24px; }
  body.portal-page .site-nav .container,
  body.portal-page .site-footer .container,
  body.portal-page .page-section > .container,
  body.music-page .music-hero-content,
  body.music-page .music-ep-section > .container,
  body.music-page .music-album-section > .container,
  body.music-page .music-story-section > .container-narrow,
  .about-page .about-article { width: calc(100% - 24px); }
  body.portal-page main#main-content,
  body.portal-page main#musica { box-shadow: none; }
  body.portal-page .site-footer { margin-top: 0; box-shadow: none; }
  .video-page .storie-header,
  .plugin-page .plugin-grid-hero { padding: 52px 17px 23px; }
  .video-page .storie-header::after,
  .music-page .music-hero::after { display: none; }
  .video-page .storie-header h1,
  .plugin-page .plugin-grid-hero h1,
  .music-page .music-hero-content h1,
  .about-page .about-article > h1 { font-size: clamp(36px, 12vw, 52px); }
  .video-page .storie-grid,
  .plugin-page .plugin-grid,
  .music-page .gear-grid { grid-template-columns: 1fr; }
  .video-page .video-info { min-height: 0; }
  .music-page .music-hero { min-height: 350px; }
  .music-page .music-hero-content { padding-top: 122px; padding-bottom: 45px; }
  .music-page .music-layout { gap: 16px; padding: 10px; }
  .music-page .music-cover { max-width: none !important; }
  .music-page .music-text { padding: 39px 13px 13px; }
  .music-page .music-story-section .container-narrow { padding: 45px 16px 20px; }
  .about-page .about-article { margin-top: 96px; padding: 51px 17px 30px; }
  .about-page .about-intro-grid { grid-template-columns: 1fr; padding: 10px; }
}

/* Keep the same wide-leader / narrow-content rhythm as the plugin catalog. */
.video-page .video-page-leader > .container,
.about-page .about-page-leader > .container,
.music-page .music-hero-content {
  width: min(calc(100% - 56px), var(--portal-width));
  max-width: var(--portal-width);
}
.video-page .storie-header { margin-bottom: 0; }
.video-page .video-archive-shell {
  padding: 22px 0 38px;
  border-top: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(180deg, rgba(5,5,5,.15), rgba(5,5,5,.52));
}
.video-page .video-archive-shell > .container {
  width: min(calc(100% - 96px), 1060px);
  max-width: 1060px;
  padding: 16px;
  border: 2px ridge #777;
  background: rgba(8,8,8,.91);
  box-shadow: 5px 5px 0 rgba(0,0,0,.5);
}
.video-page .video-archive-shell .search-bar { margin-bottom: 8px; }
.video-page .video-archive-shell .pagination { margin-bottom: 0; }

.music-page .music-ep-section > .container,
.music-page .music-album-section > .container {
  width: min(calc(100% - 96px), 980px);
  max-width: 980px;
}
.music-page .music-story-section > .container-narrow { max-width: 900px; }

.about-page .about-page-leader { padding: 150px 0 0; }
.about-page .about-leader-panel {
  position: relative;
  padding: 58px 28px 29px;
  border: 2px ridge #8d8d8d;
  background:
    linear-gradient(90deg, rgba(5,5,5,.86), rgba(5,5,5,.36)),
    url('bg-cassettes.jpg') center 42% / cover;
  box-shadow: 5px 5px 0 rgba(0,0,0,.58);
}
.about-page .about-leader-panel::before {
  content: ":: TAPE MUSIC STORIES / ABOUT";
  position: absolute;
  inset: 5px 5px auto;
  padding: 5px 8px;
  background: linear-gradient(#bd2929, #7f1010);
  color: #fff;
  font: 700 12px/15px "Courier New", Courier, monospace;
  letter-spacing: .07em;
  text-shadow: 1px 1px #000;
}
.about-page .about-leader-panel .eyebrow { margin-bottom: 12px; }
.about-page .about-leader-panel h1 {
  margin: 0 0 11px;
  color: #fff;
  font-size: clamp(42px, 5vw, 70px);
  line-height: .92;
  text-transform: uppercase;
  text-shadow: 3px 3px var(--tape-red-dark);
}
.about-page .about-leader-panel .deck {
  max-width: 52ch;
  margin: 0;
  color: #eeeae0;
  font: 17px/1.45 Georgia, serif;
}
.about-page .about-article { margin-top: 22px; }
.about-page .about-article::before { content: ":: ABOUT / PERSONAL NOTES"; }

@media (max-width: 640px) {
  .video-page .video-page-leader > .container,
  .about-page .about-page-leader > .container,
  .music-page .music-hero-content,
  .video-page .video-archive-shell > .container,
  .music-page .music-ep-section > .container,
  .music-page .music-album-section > .container { width: calc(100% - 24px); }
  .video-page .video-archive-shell { padding-block: 12px 24px; }
  .video-page .video-archive-shell > .container { padding: 10px; }
  .about-page .about-page-leader { padding-top: 96px; }
  .about-page .about-leader-panel { padding: 51px 17px 23px; }
  .about-page .about-leader-panel h1 { font-size: clamp(36px, 12vw, 52px); }
  .about-page .about-leader-panel .deck { font-size: 16px; }
  .about-page .about-article { margin-top: 12px; }
}

/* 2026-09 editorial pass: keep the retro window in the page leader,
   then let music, video and about content breathe like a late-90s magazine. */
body.video-page main#main-content,
body.music-page main#musica,
body.about-page main#main-content {
  border: 0;
  box-shadow: none;
  background-color: transparent;
}

/* Music */
.music-page main#musica { padding-top: 150px; }
.music-page .music-hero {
  width: min(calc(100% - 56px), var(--portal-width));
  min-height: 450px;
  margin: 0 auto;
  border: 2px ridge #8d8d8d;
  background:
    linear-gradient(90deg, rgba(4,4,4,.63) 0%, rgba(4,4,4,.392) 46%, rgba(4,4,4,.084) 100%),
    url('mp75qnv6-music.jpg') center / cover;
  box-shadow: 5px 5px 0 rgba(0,0,0,.58);
}
.music-page .music-hero::before { background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.168)); }
.music-page .music-hero-content { width: 100%; padding: 78px 30px 64px; }
.music-page .music-ep-section,
.music-page .music-album-section { padding: 64px 0; }
.music-page .music-album-section { border-top: 1px dashed #454545; background: transparent; }
.music-page .music-layout {
  gap: clamp(34px, 6vw, 78px);
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  align-items: center;
}
.music-page .music-cover {
  border: 1px solid #777 !important;
  box-shadow: 10px 12px 0 rgba(0,0,0,.32), 0 0 36px rgba(200,146,42,.08) !important;
}
.music-page .music-text { padding: 0; border: 0; background: transparent; }
.music-page .music-text::before {
  position: static;
  display: table;
  margin-bottom: 22px;
  padding: 4px 8px;
  border-left: 4px solid var(--tape-red);
  background: rgba(255,255,255,.055);
  color: #b9d978;
  text-shadow: none;
}
.music-page .music-text h3 { font-size: clamp(30px, 4vw, 48px); }
.music-page #spotify-consent {
  padding: 14px 0 14px 18px !important;
  border: 0 !important;
  border-left: 1px dashed #666 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.music-page .music-story-section { padding: 58px 0 72px; }
.music-page .music-story-section .container-narrow {
  max-width: 900px;
  padding: 42px 0 0;
  border: 0;
  border-top: 1px dashed #555;
  background: transparent;
  box-shadow: none;
}
.music-page .music-story-section .container-narrow::before {
  inset: 0 auto auto 0;
  transform: translateY(-50%);
  background: #0d0d0d;
  color: #b9d978;
  text-shadow: none;
}
.music-page .gear-grid { gap: 0 28px; }
.music-page .gear-item {
  min-height: 0;
  padding: 17px 0 20px;
  border: 0;
  border-top: 1px solid #474747;
  background: transparent;
  color: var(--paper);
  box-shadow: none;
}
.music-page .gear-item .cat { color: #d76b62; }
.music-page .gear-item h4 { color: #f0ede4; }
.music-page .gear-item .note { color: #aaa79d; }

/* Video */
.video-page .video-archive-shell { padding: 38px 0 64px; border: 0; background: transparent; }
.video-page .video-archive-shell > .container {
  width: min(calc(100% - 96px), 1120px);
  max-width: 1120px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.video-page .search-bar {
  padding: 35px 0 14px;
  border: 0;
  border-bottom: 1px dashed #555;
  background: transparent;
  box-shadow: none;
}
.video-page .search-bar::before { inset: 0 auto auto 0; background: transparent; color: #b9d978; padding-inline: 0; }
.video-page .search-bar input[type="search"] {
  max-width: 560px;
  border: 0;
  border-bottom: 1px solid #858585;
  background: transparent;
  color: #f3efe4;
  box-shadow: none;
}
.video-page .filter-bar { padding: 11px 0 22px; border: 0; background: transparent; }
.video-page .filter-btn {
  min-height: 32px;
  padding: 6px 12px;
  border: 1px solid #595959;
  border-radius: 2px;
  background: transparent;
  color: #c8c5bc;
  box-shadow: none;
}
.video-page .filter-btn.active { border-color: #9f2727; background: #8f1d1d; color: #fff; }
.video-page .storie-grid { gap: 30px 22px; }
.video-page .video-card {
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  overflow: visible;
}
.video-page .video-card:hover { transform: translateY(-3px); }
.video-page .video-card .video-thumb {
  border: 1px solid #777;
  box-shadow: 6px 7px 0 rgba(0,0,0,.35);
}
.video-page .video-info { min-height: 0; padding: 15px 2px 0; }
.video-page .video-title { color: #f1eee5; font: 600 17px/1.35 Georgia, serif; }
.video-page .video-artist { margin-top: 9px; padding-top: 8px; border-top: 1px dotted #4e4e4e; color: #9e9b92; }
.video-page .video-badge { border: 0; border-left: 3px solid var(--tape-red); background: transparent; color: #d5d1c6; }
.video-page .video-duration { color: #85827a; }
.video-page .pagination { padding: 30px 0 0; border: 0; border-top: 1px dashed #4b4b4b; background: transparent; }

/* About */
.about-page .about-article {
  width: min(calc(100% - 96px), 880px);
  max-width: 880px;
  margin: 46px auto 0;
  padding: 0 0 72px;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.about-page .about-article::before { display: none; }
.about-page .about-intro-grid {
  grid-template-columns: minmax(0, 1.4fr) minmax(210px, .6fr);
  gap: clamp(32px, 6vw, 70px);
  margin: 0 0 58px;
  padding: 0 0 48px;
  border: 0;
  border-bottom: 1px dashed #555;
  background: transparent;
  align-items: center;
}
.about-page .about-intro-text p { font: 19px/1.78 Georgia, serif; }
.about-page .about-intro-note {
  min-height: 0;
  padding: 24px 0 24px 24px;
  border: 0 !important;
  border-left: 3px solid #8f1d1d !important;
  background: transparent !important;
  box-shadow: none !important;
}
.about-page .about-intro-note::before { margin-bottom: 20px; padding: 0; background: transparent; color: #b9d978; }
.about-page .about-intro-note .note-mark { color: #c54b42; }
.about-page .about-intro-note blockquote { color: #f1eee5; font-size: 25px; }
.about-page .about-intro-note small { color: #96938b; }
.about-page .about-article h2 {
  display: block;
  margin: 48px 0 13px;
  padding: 0 0 9px;
  border: 0;
  border-bottom: 1px solid #4c4c4c;
  background: transparent;
  color: #f3efe5;
  font: 600 clamp(24px, 3vw, 32px)/1.2 Georgia, serif;
  text-shadow: none;
}
.about-page .about-article h2::before { content: "// "; color: #bb4038; font-size: .66em; }
.about-page .about-list { padding: 7px 0 0; border: 0; background: transparent; }
.about-page .about-list li { padding-left: 26px; }
.about-page .about-list li::before { top: 11px; width: 8px; height: 2px; background: #b9d978; }

@media (max-width: 900px) {
  .about-page .about-intro-grid { grid-template-columns: 1fr; }
  .about-page .about-intro-note { max-width: 430px; }
}
@media (max-width: 640px) {
  .music-page main#musica { padding-top: 96px; }
  .music-page .music-hero,
  .video-page .video-archive-shell > .container,
  .about-page .about-article { width: calc(100% - 24px); }
  .music-page .music-hero { min-height: 400px; background-position: 61% center; }
  .music-page .music-hero-content { padding: 56px 18px 46px; }
  .music-page .music-ep-section,
  .music-page .music-album-section { padding: 46px 0; }
  .music-page .music-layout { padding: 0; gap: 34px; }
  .music-page .music-story-section .container-narrow { width: calc(100% - 32px); padding-inline: 0; }
  .video-page .video-archive-shell > .container { padding: 0; }
  .video-page .filter-btn { width: auto; }
  .about-page .about-article { margin-top: 34px; padding: 0 4px 56px; }
  .about-page .about-intro-grid { padding: 0 0 38px; }
}

/* 2026-09 home hierarchy pass: music magazine first, desktop chrome second. */
body.home-page .home-dashboard {
  padding: 0 18px 26px;
  background:
    linear-gradient(180deg, rgba(7,7,7,.18), rgba(7,7,7,.86)),
    url('bg-hero.jpg') center 12% / cover fixed;
}
body.home-page .home-dashboard-brand { min-height: 136px; }
body.home-page .home-brand-logo img { height: clamp(88px, 7vw, 112px); }

body.home-page .home-dashboard-grid {
  grid-template-columns: 1.35fr 1fr .76fr;
  grid-template-rows: 420px 268px 205px 76px;
  grid-template-areas:
    "feature feature about"
    "videos videos videos"
    "music plugins notes"
    "quote quote quote";
  gap: 22px 20px;
  padding-top: 20px;
}
body.home-page .home-player-panel,
body.home-page .home-links-panel { display: none; }
body.home-page .home-panel {
  border: 0;
  background: rgba(9,9,9,.82);
  box-shadow: none;
  overflow: visible;
}
body.home-page .home-panel-title {
  min-height: 31px;
  padding: 6px 10px;
  border-top: 1px solid #ed5f5f;
  border-bottom: 1px solid #620d0d;
}

body.home-page .home-feature-panel {
  border: 2px ridge #aaa;
  box-shadow: 7px 8px 0 rgba(0,0,0,.42);
  overflow: hidden;
}
body.home-page .home-feature-image {
  background:
    linear-gradient(90deg, rgba(4,4,4,.92) 0%, rgba(4,4,4,.5) 46%, rgba(4,4,4,.05) 78%),
    linear-gradient(135deg, #1a2117, #39452d) center / cover;
  filter: saturate(.84) contrast(1.08);
  transition: transform .5s ease, filter .5s ease;
}
body.home-page .home-feature-link:hover .home-feature-image { transform: scale(1.018); filter: saturate(1) contrast(1.08); }
body.home-page .home-feature-copy { max-width: 49%; padding: 42px 30px 30px; }
body.home-page .home-feature-copy strong { font-size: clamp(38px, 4.8vw, 66px); line-height: .88; }
body.home-page .home-feature-copy > span:not(.home-feature-kicker) { max-width: 29ch; font-size: 18px; }
body.home-page .home-feature-copy em { padding: 10px 14px; }

body.home-page .home-about-panel {
  border-top: 1px solid #555;
  border-bottom: 1px dashed #555;
  background:
    linear-gradient(180deg, rgba(7,7,7,.55), rgba(7,7,7,.93)),
    url('bg-cassettes.jpg') center / cover;
}
body.home-page .home-about-body { height: calc(100% - 31px); padding: 18px 16px; }
body.home-page .home-about-avatar {
  float: none;
  width: 100%;
  height: 145px;
  margin: 0 0 16px;
  border: 1px solid #777;
  background: url('bg-cassettes.jpg') 72% center / cover;
  filter: sepia(.18) contrast(1.05);
}
body.home-page .home-about-body p { font-size: 16px; line-height: 1.58; }
body.home-page .home-about-body .home-panel-link { margin-top: 16px; }

body.home-page .home-videos-panel { background: transparent; }
body.home-page .home-mini-videos { gap: 22px; padding: 18px 0 0; }
body.home-page .home-mini-video { transition: transform .2s ease; }
body.home-page .home-mini-video:hover { transform: translateY(-3px); }
body.home-page .home-mini-thumb {
  height: 157px;
  border: 1px solid #888;
  box-shadow: 5px 6px 0 rgba(0,0,0,.35);
}
body.home-page .home-mini-video strong {
  margin-top: 11px;
  color: #f2eee4;
  font: 600 16px/1.3 Georgia, serif;
}
body.home-page .home-mini-video small { margin-top: 7px; color: #a5c85a; font-size: 11px; }

body.home-page .home-music-panel,
body.home-page .home-plugins-panel,
body.home-page .home-notes-panel {
  border-top: 1px solid #555;
  border-bottom: 1px dashed #555;
}
body.home-page .home-music-body { gap: 18px; padding: 15px 12px 12px; }
body.home-page .home-music-body img {
  width: 122px;
  height: 148px;
  flex-basis: 122px;
  border: 1px solid #888;
  box-shadow: 5px 6px 0 rgba(0,0,0,.34);
}
body.home-page .home-music-body strong { font-size: 22px; }
body.home-page .home-music-body .home-panel-link {
  padding: 7px 10px;
  border: 1px solid #477100;
  background: #182408;
  color: #c3e67a;
  text-decoration: none;
}
body.home-page .home-plugin-list { padding: 12px 14px; }
body.home-page .home-plugin-list a { padding: 7px 0; font-size: 14px; }
body.home-page .home-notes-panel .home-panel-body {
  display: block;
  padding: 19px 15px;
}
body.home-page .home-note-count { margin-bottom: 13px; font-size: 48px; }
body.home-page .home-notes-panel .home-panel-link { margin: 18px 0 0; }
body.home-page .home-dashboard-quote { border-top: 1px dashed #4e4e4e; }

/* Complete footer, finished with the original operating-system status strip. */
body.home-page .site-footer {
  padding: 0 0 8px;
  border: 1px solid #4d4d4d;
  background: rgba(8,8,8,.96);
}
body.home-page .site-footer > .container:first-child {
  display: flex;
  width: 100%;
  max-width: none;
  padding: 28px 26px 24px;
  gap: 32px;
}
body.home-page .site-footer .footer-brand p { color: #aaa79e; }
body.home-page .site-footer .footer-links { margin-left: auto; align-items: flex-end; }
body.home-page .site-footer .footer-links h4 { color: #a5c85a; }
body.home-page .site-footer .social-row a { color: #e7e3d9; }
body.home-page .site-footer .social-row a:hover { color: #fff; }

@media (max-width: 980px) {
  body.home-page .home-dashboard-grid {
    grid-template-columns: 1.35fr 1fr;
    grid-template-rows: 400px 230px 260px 205px 70px;
    grid-template-areas:
      "feature feature"
      "about about"
      "videos videos"
      "music plugins"
      "quote quote";
  }
  body.home-page .home-about-body { display: grid; grid-template-columns: 220px 1fr; gap: 12px 20px; align-items: center; }
  body.home-page .home-about-avatar { grid-row: 1 / span 2; height: 160px; margin: 0; }
  body.home-page .home-notes-panel { display: none; }
  body.home-page .home-about-body .home-panel-link { margin-top: 0; }
}
@media (max-width: 640px) {
  body.home-page .home-dashboard { padding: 0 8px 18px; }
  body.home-page .home-dashboard { margin-top: 0; }
  body.home-page .home-dashboard-nav > a[href="privacy.html"] { display: none; }
  body.home-page .site-nav .nav-utils { top: 3px; right: 54px; }
  body.home-page .home-dashboard-brand { min-height: 112px; }
  body.home-page .home-dashboard-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-template-areas: "feature" "videos" "music" "plugins" "about" "quote";
    gap: 30px;
    padding-top: 14px;
  }
  body.home-page .home-feature-panel { min-height: 410px; }
  body.home-page .home-feature-copy { max-width: 78%; padding: 34px 18px 24px; }
  body.home-page .home-feature-copy strong { font-size: clamp(36px, 12vw, 50px); }
  body.home-page .home-videos-panel { min-height: 0; }
  body.home-page .home-mini-videos { grid-template-columns: 1fr; gap: 26px; padding-top: 15px; }
  body.home-page .home-mini-thumb { height: auto; aspect-ratio: 16 / 9; }
  body.home-page .home-mini-video strong { font-size: 17px; }
  body.home-page .home-music-panel,
  body.home-page .home-plugins-panel,
  body.home-page .home-about-panel { min-height: 0; }
  body.home-page .home-about-body { display: block; height: auto; }
  body.home-page .home-about-avatar { height: 180px; margin-bottom: 16px; }
  body.home-page .home-dashboard-quote { min-height: 74px; }
  body.home-page .site-footer > .container:first-child { padding: 24px 16px 20px; }
  body.home-page .site-footer .footer-links { margin-left: 0; align-items: flex-start; }
}

/* Home side rail: two printed 1990s music-magazine adverts. */
@media (min-width: 981px) {
  body.home-page .home-dashboard-grid {
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr) 286px;
    grid-template-rows: 204px 204px 270px 220px 76px;
    grid-template-areas:
      "feature feature music"
      "feature feature plugins"
      "videos videos notes"
      "about about about"
      "quote quote quote";
  }
  body.home-page .home-about-body {
    display: grid;
    grid-template-columns: 270px 1fr;
    gap: 16px 26px;
    align-items: center;
  }
  body.home-page .home-about-avatar { grid-row: 1 / span 2; height: 150px; margin: 0; }
  body.home-page .home-about-body .home-panel-link { margin-top: 0; }
}

body.home-page .home-music-panel,
body.home-page .home-plugins-panel {
  position: relative;
  isolation: isolate;
  border: 2px solid #efe9cb;
  box-shadow: 7px 8px 0 rgba(0,0,0,.5);
  overflow: hidden;
}
body.home-page .home-music-panel {
  transform: rotate(-.25deg);
  background:
    repeating-linear-gradient(0deg, rgba(72,51,18,.035) 0 1px, transparent 1px 4px),
    #d8cc98;
}
body.home-page .home-music-panel::after {
  content: "EP OUT NOW";
  position: absolute;
  right: -31px;
  bottom: 16px;
  z-index: -1;
  transform: rotate(-14deg);
  color: rgba(121,18,14,.15);
  font: 900 27px/1 Verdana, Arial, sans-serif;
  letter-spacing: -.08em;
}
body.home-page .home-music-panel .home-panel-title { background: #941b17; }
body.home-page .home-music-panel .home-music-body {
  display: grid;
  grid-template-columns: 86px 1fr;
  gap: 12px;
  height: calc(100% - 31px);
  padding: 13px 11px;
}
body.home-page .home-music-panel .home-music-body img {
  width: 86px;
  height: 134px;
  border: 1px solid #352c18;
  box-shadow: 4px 4px 0 rgba(72,46,11,.3);
}
body.home-page .home-music-panel .home-music-body strong { color: #17130c; font-size: 19px; }
body.home-page .home-music-panel .home-music-body small { color: #51452b; }
body.home-page .home-music-panel .home-panel-link {
  margin-top: 14px;
  border: 2px solid #59100c;
  background: #941b17;
  color: #fff4d5;
  box-shadow: 3px 3px 0 rgba(63,34,8,.35);
  font-size: 11px;
}

body.home-page .home-plugins-panel {
  transform: rotate(.18deg);
  border-color: #d9d9d9;
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), transparent 45%),
    #bdbdbd;
}
body.home-page .home-plugins-panel::after {
  content: "3 FREE PLUGINS";
  position: absolute;
  right: 10px;
  bottom: 7px;
  z-index: -1;
  color: rgba(18,38,112,.13);
  font: 900 25px/1 Verdana, Arial, sans-serif;
  letter-spacing: -.08em;
}
body.home-page .home-plugins-panel .home-panel-title { background: linear-gradient(#26387b, #172457); }
body.home-page .home-plugin-feature {
  display: block;
  margin: 10px 10px 3px;
  border: 2px outset #f1f1f1;
  background: #090909;
  color: #fff;
  box-shadow: 4px 5px 0 rgba(20,31,87,.42);
}
body.home-page .home-plugin-feature-image {
  aspect-ratio: 16 / 9;
  border-bottom: 2px ridge #9b9b9b;
  background:
    linear-gradient(135deg, rgba(5,5,5,.05), rgba(5,5,5,.34)),
    url('mq22f81e-analogchannelgui-sitoweb.jpg') center / cover;
}
body.home-page .home-plugin-feature-copy { padding: 8px 9px 9px; }
body.home-page .home-plugin-feature-copy small {
  display: block;
  color: #b9dc68;
  font: 700 9px/1.2 "Courier New", monospace;
  letter-spacing: .04em;
}
body.home-page .home-plugin-feature-copy strong {
  display: block;
  margin: 3px 0 2px;
  color: #fff;
  font: 900 17px/.95 Verdana, Arial, sans-serif;
  letter-spacing: -.055em;
  text-shadow: 2px 2px #7e1616;
}
body.home-page .home-plugin-feature-copy > span {
  color: #dedede;
  font: 11px/1.3 Georgia, serif;
}
body.home-page .home-plugins-panel .home-plugin-list { padding: 9px 12px; }
body.home-page .home-plugins-panel .home-plugin-list a {
  padding: 5px 0;
  border-color: #6e6e6e;
  color: #171717;
  font-size: 12px;
  font-weight: 700;
  text-shadow: 1px 1px rgba(255,255,255,.35);
}
body.home-page .home-plugins-panel .home-plugin-list a span { color: #8d1717; }
body.home-page .home-plugins-panel .home-plugin-list a b { color: #26387b; }

@media (max-width: 980px) and (min-width: 641px) {
  body.home-page .home-music-panel,
  body.home-page .home-plugins-panel { transform: none; }
}
@media (max-width: 640px) {
  body.home-page .home-music-panel,
  body.home-page .home-plugins-panel { transform: none; }
  body.home-page .home-music-panel .home-music-body {
    grid-template-columns: 118px 1fr;
    min-height: 186px;
  }
  body.home-page .home-music-panel .home-music-body img { width: 118px; height: 158px; }
  body.home-page .home-plugins-panel .home-plugin-list a { padding-block: 9px; font-size: 14px; }
}

/* Wide home: centered editorial column with ads breaking into the margins. */
@media (min-width: 1180px) {
  body.home-page .home-dashboard { padding-bottom: 30px; }
  body.home-page .home-dashboard-grid {
    position: relative;
    width: min(calc(100% - 360px), 860px);
    margin: 0 auto;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 440px auto auto 76px;
    grid-template-areas:
      "feature"
      "videos"
      "about"
      "quote";
    gap: 30px;
    overflow: visible;
  }
  body.home-page .home-feature-panel,
  body.home-page .home-videos-panel,
  body.home-page .home-about-panel,
  body.home-page .home-dashboard-quote { position: relative; z-index: 1; }
  body.home-page .home-notes-panel { display: none; }

  body.home-page .home-music-panel,
  body.home-page .home-plugins-panel {
    position: absolute;
    z-index: 5;
    width: 220px;
    height: auto;
  }
  body.home-page .home-music-panel {
    left: -188px;
    top: 66px;
    transform: rotate(-3.2deg);
    border: 3px double #f6edc4;
    box-shadow: -5px 7px 0 #71130f, 10px 15px 22px rgba(0,0,0,.62);
    background:
      radial-gradient(circle, rgba(93,62,15,.12) 0 1px, transparent 1.5px) 0 0 / 6px 6px,
      #ddce8e;
  }
  body.home-page .home-music-panel::before {
    content: "";
    position: absolute;
    top: -11px;
    left: 50%;
    width: 62px;
    height: 19px;
    transform: translateX(-50%) rotate(2deg);
    background: rgba(222,205,145,.72);
    border: 1px solid rgba(100,78,35,.35);
    box-shadow: 0 2px 4px rgba(0,0,0,.18);
  }
  body.home-page .home-music-panel::after {
    content: "EPISODIO 1";
    right: -20px;
    bottom: 22px;
    color: rgba(126,20,15,.16);
    font-size: 25px;
  }
  body.home-page .home-music-panel .home-music-body {
    display: flex;
    height: auto;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 15px 15px 17px;
    text-align: center;
  }
  body.home-page .home-music-panel .home-music-body img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    margin: 0 0 14px;
    object-fit: cover;
    box-shadow: 5px 6px 0 rgba(73,47,9,.28);
  }
  body.home-page .home-music-panel .home-music-body strong {
    font-size: 23px;
    letter-spacing: -.04em;
  }
  body.home-page .home-music-panel .home-music-body small { margin-top: 5px; }
  body.home-page .home-music-panel .home-panel-link {
    display: block;
    margin-top: 13px;
    padding: 9px 10px;
  }

  body.home-page .home-plugins-panel {
    right: -205px;
    top: 344px;
    z-index: 9;
    width: 242px;
    min-height: 348px;
    transform: perspective(680px) rotateY(-7deg) rotateZ(2.8deg);
    transform-origin: left center;
    border: 3px double #e7e7e7;
    box-shadow: 6px 8px 0 #172457, 11px 15px 0 #821a16, -12px 22px 28px rgba(0,0,0,.72);
    background:
      linear-gradient(45deg, rgba(255,255,255,.14) 25%, transparent 25% 75%, rgba(255,255,255,.14) 75%) 0 0 / 8px 8px,
      #bcbcbc;
    overflow: visible;
    transition: transform .2s ease, filter .2s ease;
  }
  body.home-page .home-plugins-panel:hover {
    transform: perspective(680px) rotateY(-3deg) rotateZ(1deg) translate(-4px, -3px);
    filter: saturate(1.12);
  }
  body.home-page .home-plugins-panel::before {
    content: "FREE\A PLUGIN";
    position: absolute;
    top: 38px;
    right: -20px;
    z-index: 3;
    display: grid;
    width: 72px;
    height: 88px;
    place-items: center;
    transform: rotate(11deg) skewY(-3deg);
    border: 2px solid #fff0b7;
    border-radius: 48% 52% 45% 55%;
    background: radial-gradient(circle at 32% 24%, #ef5b3f, #a20f12 58%, #660609);
    color: #fff7d9;
    box-shadow: 4px 5px 0 #172457, 7px 9px 0 rgba(0,0,0,.32);
    font: 900 13px/.9 Verdana, Arial, sans-serif;
    letter-spacing: -.04em;
    text-align: center;
    white-space: pre-line;
  }
  body.home-page .home-plugins-panel::after {
    right: 7px;
    bottom: 5px;
    font-size: 20px;
  }

  body.home-page .home-videos-panel { padding-top: 1px; }
  body.home-page .home-mini-thumb { height: auto; aspect-ratio: 16 / 9; }
  body.home-page .home-about-body {
    grid-template-columns: 245px 1fr;
    min-height: 190px;
  }
}

/* Compact plugin stories: each page gets its own artwork and a continuous reading rhythm. */
body.plugin-analogchannel { --plugin-page-bg: url('mq22f81e-analogchannelgui-sitoweb.jpg'); }
body.plugin-analogstudio { --plugin-page-bg: url('mq22erka-imageWEB.jpg'); }
body.plugin-dualcomp { --plugin-page-bg: url('mpluzf1d-DualComp-Web.jpg'); }
body.plugin-mimic { --plugin-page-bg: url('mqdvb0vd-ChatGPT-Image-14-giu-2026_-16_13_45.jpg'); }
body.plugin-pluginlab { --plugin-page-bg: url('mqdyl28z-ChatGPT-Image-14-giu-2026_-17_48_06.jpg'); }
body.plugin-splitheat { --plugin-page-bg: url('mp7jq3ia-splitheat.jpg'); }
body.plugin-stagebox { --plugin-page-bg: url('mqdm5y5e-ChatGPT-Image-14-giu-2026_-11_59_59.jpg'); }
body.plugin-studioclipper { --plugin-page-bg: url('mp77m7dd-StudioClipper3.jpg'); }
body.plugin-tapetotape { --plugin-page-bg: url('mplon3w0-GuixWebsite.jpg'); }

body.plugin-detail-page main.page-section {
  width: 100%;
  max-width: none;
  background-color: #080808;
  background-image: var(--plugin-page-bg), url('bg-tubes.jpg');
  background-position: center top, center top;
  background-size: 100% auto, cover;
  background-repeat: no-repeat, no-repeat;
  background-attachment: fixed, fixed;
}
body.plugin-detail-page .site-nav {
  width: 100%;
  max-width: none;
}
body.plugin-detail-page .site-nav .container {
  width: min(calc(100% - 48px), var(--max-w));
  max-width: var(--max-w);
}
body.plugin-detail-page main.page-section::before {
  background:
    linear-gradient(180deg, rgba(4,4,4,.3) 0, rgba(4,4,4,.47) 420px, rgba(5,5,5,.68) 860px, rgba(5,5,5,.86) 100%);
}
body.plugin-detail-page .plugin-grid-page {
  padding-top: 142px;
  padding-bottom: 54px;
}
body.plugin-detail-page .plugin-grid-hero {
  padding: 0 0 16px;
  margin: 0;
}
body.plugin-detail-page .plugin-grid-hero .eyebrow { margin-bottom: 0; }
body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] {
  margin-bottom: 34px !important;
  border: 1px solid #777 !important;
  background: rgba(20,20,20,.9) !important;
  box-shadow: 6px 7px 0 rgba(0,0,0,.48);
}
body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] > div:first-child {
  min-height: 270px;
}
body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] > div:nth-child(2) {
  padding: 24px 28px !important;
}
body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] h1 {
  margin-bottom: 7px !important;
  font-size: clamp(34px, 4.5vw, 54px) !important;
  line-height: .96;
}
body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] .tagline {
  margin-bottom: 0 !important;
  font-size: 18px !important;
  line-height: 1.45;
}

body.plugin-detail-page .plugin-detail-section {
  margin: 0 0 34px;
  padding: 0;
}
body.plugin-detail-page .plugin-detail-section h2 {
  margin: 0 0 12px;
  padding: 0 0 8px;
  border-bottom: 1px solid rgba(255,255,255,.2);
  font-size: clamp(23px, 2.6vw, 30px);
  line-height: 1.18;
}
body.plugin-detail-page .plugin-detail-section h2::before {
  content: "// ";
  color: var(--tape-red);
  font: 700 .65em/1 "Courier New", Courier, monospace;
}
body.plugin-detail-page .plugin-detail-section h3 { margin-top: 20px; margin-bottom: 8px; }
body.plugin-detail-page .plugin-detail-section p {
  max-width: 920px;
  margin: 0;
  font-size: 16px;
  line-height: 1.68;
}
body.plugin-detail-page .plugin-features-list li {
  padding: 11px 4px;
  grid-template-columns: 190px 1fr;
  gap: 18px;
}
body.plugin-detail-page .plugin-features-list strong { font-size: 14px; }
body.plugin-detail-page .plugin-features-list span { font-size: 15px; line-height: 1.48; }
body.plugin-detail-page .plugin-specs-table td,
body.plugin-detail-page .plugin-specs-table th { padding-top: 9px; padding-bottom: 9px; }
body.plugin-detail-page .plugin-usage-list li {
  margin-bottom: 9px;
  line-height: 1.58;
}
body.plugin-detail-page .plugin-detail-section:has(.plugin-image-wrapper),
body.plugin-detail-page .plugin-detail-section:has(.plugin-image-full) { margin-top: 8px; margin-bottom: 34px; }
body.plugin-detail-page .plugin-image-wrapper,
body.plugin-detail-page .plugin-image-full { box-shadow: 5px 6px 0 rgba(0,0,0,.5) !important; }
body.plugin-detail-page .plugin-image-wrapper img,
body.plugin-detail-page .plugin-image-full img { margin-bottom: 0 !important; }
body.plugin-detail-page .plugin-cta-box {
  margin-top: 8px;
  padding: 50px 28px 28px;
}
body.plugin-detail-page .plugin-cta-box p { margin-bottom: 16px; }

@media (max-width: 900px) {
  body.plugin-detail-page .plugin-features-list li { grid-template-columns: 1fr; gap: 4px; }
}
@media (max-width: 640px) {
  body.plugin-detail-page main.page-section {
    background-size: auto 620px, cover;
    background-attachment: scroll, scroll;
  }
  body.plugin-detail-page main.page-section::before {
    background: linear-gradient(180deg, rgba(4,4,4,.48), rgba(5,5,5,.78) 600px, rgba(5,5,5,.9));
  }
  body.plugin-detail-page .plugin-grid-page { padding-top: 118px; padding-bottom: 38px; }
  body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] { margin-bottom: 28px !important; }
  body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] > div:first-child { min-height: 0; }
  body.plugin-detail-page .plugin-grid-page > div[style*="background:var(--surface)"] > div:nth-child(2) { padding: 20px 18px !important; }
  body.plugin-detail-page .plugin-detail-section { margin-bottom: 28px; }
  body.plugin-detail-page .plugin-detail-section p { font-size: 15px; line-height: 1.62; }
}

/* Music keeps a full-bleed photographic backdrop while its content stays centered. */
body.music-page main#musica {
  width: calc(100% - 72px);
  max-width: none;
  background-color: #1a0d06;
  background-image:
    linear-gradient(180deg, rgba(12,7,3,.02) 0, rgba(10,6,3,.07) 520px, rgba(8,5,3,.14) 100%),
    url('bg-stage.jpg');
  background-position: center top, center top;
  background-size: cover, cover;
  background-repeat: no-repeat;
  background-attachment: fixed, fixed;
}
body.music-page main#musica::before {
  background: transparent;
}

/* Music leader: same window, typography and title bar as the Plugin page. */
body.music-page .music-hero {
  width: min(calc(100% - 104px), calc(var(--portal-width) - 48px));
  min-height: 0;
}
body.music-page .music-hero::before {
  display: none;
}
body.music-page .music-window-title {
  position: absolute;
  inset: 5px 5px auto;
  z-index: 3;
  padding: 5px 8px;
  background: linear-gradient(#bd2929, #7f1010);
  color: #fff;
  font: 700 12px/15px "Courier New", Courier, monospace;
  letter-spacing: .07em;
  text-shadow: 1px 1px #000;
}
body.music-page .music-hero-content {
  padding: 58px 28px 27px;
}
body.music-page .music-hero-content .hero-kicker {
  margin-bottom: 13px;
  font: 700 13px/1.25 "Courier New", Courier, monospace;
}
body.music-page .music-hero-content h1 {
  max-width: none;
  margin: 0 0 10px;
  font-size: clamp(42px, 5vw, 70px);
  line-height: .92;
  text-transform: uppercase;
}
body.music-page .music-hero-content .hero-tagline {
  max-width: 52ch;
  margin: 0;
  color: #eeeae0;
  font-size: 17px;
}
@media (max-width: 640px) {
  body.music-page main#musica {
    width: 100%;
    background-position: center top, center top;
    background-size: auto 100%, auto 760px;
    background-attachment: scroll, scroll;
  }
  body.music-page .music-hero {
    width: calc(100% - 24px);
    min-height: 0;
  }
  body.music-page .music-hero-content {
    padding: 52px 17px 23px;
  }
  body.music-page .music-hero-content h1 {
    max-width: 10ch;
  }
}

/* Neutral video cards use project CSS only; YouTube opens from the link. */
.home-mini-thumb { display: grid; place-items: center; }
.home-mini-thumb::after { content: "▶"; color: #b2cb7d; font: 32px/1 sans-serif; }

/* Plugin catalog: fluid desktop width, aligned header and content. */
body.plugin-page .site-nav {
  position: relative;
  top: auto;
  left: 0;
  width: 100%;
  transform: none;
}

body.plugin-page main#main-content > .container {
  padding-top: 38px;
  padding-bottom: 48px;
}
@media (min-width: 641px) {
  body.plugin-page .site-nav {
    left: 0;
    width: 100%;
    transform: none;
  }
  body.plugin-page .site-nav .container,
  body.plugin-page .site-footer .container,
  body.plugin-page main#main-content > .container {
    width: 100%;
    max-width: none;
    padding-inline: clamp(24px, 3vw, 64px);
  }
  body.plugin-page main#main-content,
  body.plugin-page .site-footer {
    width: 100%;
    max-width: none;
  }
}
@media (max-width: 640px) {
  body.plugin-page main#main-content > .container {
    padding-top: 24px;
    padding-bottom: 28px;
  }
}

/* Shared Tape Music Stories masthead: one layout across editorial and PNAM pages. */
.tms-header {
  box-sizing: border-box; position: relative; z-index: 30;
  width: calc(100% - 32px); margin: 0 auto 18px; padding: 0;
  border: 1px solid #666; background: #080808; color: #eee8da;
  box-shadow: 0 0 0 3px #171717, 5px 5px 0 #0008;
  text-align: left; font: 13px/1.4 "Courier New", Courier, monospace;
}
.tms-header *, .tms-header *::before, .tms-header *::after { box-sizing: border-box; }
.tms-header-caption {
  display: flex; align-items: center; gap: 14px; min-height: 30px;
  margin: 3px 4px 0; padding: 3px 9px; border: 1px solid #c5c5c5;
  background: #202d67; color: #fff; font: 700 13px/18px "Courier New",monospace;
  letter-spacing: .06em; text-shadow: 1px 1px #000;
}
.tms-header-language { margin: 0 22% 0 auto; color: #111; flex-shrink: 0; }
.tms-header-language select {
  width: auto; min-height: 26px; margin: 0; padding: 2px 9px;
  border: 2px solid; border-color: #fff #555 #555 #fff; border-radius: 0;
  background: #c8c8c8; color: #111; font: 700 12px/18px "Courier New",monospace;
}
.tms-header-controls { flex-shrink: 0; white-space: nowrap; font: 700 16px/18px Arial,sans-serif; }
.tms-header-brand {
  display: flex; align-items: center; gap: 18px; min-height: 155px; padding: 18px 28px;
  border-bottom: 3px ridge #777;
  background: linear-gradient(90deg,#040404b3,#0404043d 58%,#04040499),url('/bg-tubes.jpg') center 42%/cover;
}
.tms-header-logo { display: block; flex: 0 1 310px; max-width: 42%; margin: 0; padding: 0; line-height: 0; }
.tms-header-logo img { display: block; width: 100%; height: clamp(92px,8vw,126px); margin: 0; object-fit: contain; object-position: left center; filter: drop-shadow(3px 3px #101010); }
.tms-header-copy { margin: 0; color: #eee8da; font: 13px/1.43 "Courier New",monospace; letter-spacing: .05em; text-shadow: 1px 1px #000; }
.tms-header-mark { margin-left: auto; color: #c62828; font: 700 30px/1 "Courier New",monospace; }
.tms-header-nav { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; min-height: 55px; padding: 6px 8px; border-bottom: 2px ridge #999; background: linear-gradient(#e2e2e2,#aaa); }
.tms-header-pages { display: flex; flex: 1 1 auto; flex-wrap: wrap; gap: 4px; min-width: 0; }
.tms-header-pages > a { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; min-height: 40px; margin: 0; padding: 8px 19px; border: 2px solid; border-color: #f8f8f8 #4b4b4b #4b4b4b #f8f8f8; background: #c8c8c8; color: #111; font: 700 14px/18px "Courier New",monospace; text-transform: uppercase; text-decoration: underline; white-space: nowrap; }
.tms-header-pages > a[aria-current="page"] { background: #c62828; color: #fff; border-color: #f36b6b #5a0808 #5a0808 #f36b6b; text-shadow: 1px 1px #000; }
.tms-header-pages > a:hover { background: #f0f0f0; color: #8f1818; }
.tms-header-social { display: flex; flex: 0 0 auto; gap: 5px; margin-left: auto; }
.tms-header-social a { display: grid; place-items: center; min-width: 32px; min-height: 40px; margin: 0; padding: 3px 5px; color: #111; font: 700 18px/25px Arial,sans-serif; text-decoration: none; }
.tms-header [data-header-en] { display: none; }
.tms-header[data-header-lang="en"] [data-header-it] { display: none; }
.tms-header[data-header-lang="en"] [data-header-en] { display: inline; }
.tms-header-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body.tms-header-ready:not(.pnam-shell) main#main-content,
body.tms-header-ready:not(.pnam-shell) main#musica,
body.tms-header-ready:not(.pnam-shell) .site-footer { width: calc(100% - 32px); max-width: none; margin-inline: auto; }
body.tms-header-ready .video-page-leader,
body.tms-header-ready .about-page-leader,
body.tms-header-ready.music-page main#musica { padding-top: 20px; }
body.tms-header-ready.plugin-page main#main-content > .container { padding-top: 20px; }
body.tms-header-ready.home-page .home-dashboard { padding-top: 16px; }
body.tms-header-ready .page { padding-top: 20px; }
body.tms-header-ready.pnam-shell .sidebar-navigation { top: 12px; max-height: calc(100dvh - 24px); }
body.tms-header-ready.tms-error-page { display: block; padding: 0 0 32px; }
body.tms-header-ready.tms-error-page > h1 { margin-top: 44px; }
body.tms-header-ready.tms-error-page > p { margin-inline: auto; padding-inline: 18px; }
@media (max-width: 640px) {
 .tms-header { width: calc(100% - 16px); margin-bottom: 12px; }
 .tms-header-caption { gap: 6px; font-size: 10px; letter-spacing: 0; }
 .tms-header-language { margin-right: 0; }
 .tms-header-controls { display: none; }
 .tms-header-brand { min-height: 128px; padding: 16px 12px; gap: 12px; }
 .tms-header-logo { max-width: 52%; }
 .tms-header-copy { font-size: 10px; }
 .tms-header-mark { display: none; }
 .tms-header-nav { gap: 6px; }
 .tms-header-pages { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); width: 100%; }
 .tms-header-pages > a { padding: 7px 3px; min-height: 44px; font-size: 12px; }
 .tms-header-social { margin-left: auto; }
 body.tms-header-ready:not(.pnam-shell) main#main-content,
 body.tms-header-ready:not(.pnam-shell) main#musica,
 body.tms-header-ready:not(.pnam-shell) .site-footer { width: calc(100% - 16px); }
 body.tms-header-ready.pnam-shell .sidebar-navigation { max-height: none; }
}
@media (max-width: 360px) {
 .tms-header-caption { font-size: 9px; }
 .tms-header-brand { gap: 8px; padding-inline: 8px; }
 .tms-header-copy { font-size: 9px; }
}
