/*
 * Filosofia Osservatorio Orbitale: modernismo editoriale italiano, blu inchiostro,
 * avorio caldo, rame orbitale, tipografia monumentale e asimmetria controllata.
 */

:root {
  --as-ink: #071824;
  --as-ink-2: #0d2735;
  --as-ivory: #f3eee4;
  --as-paper: #fbf8f1;
  --as-white: #fffefa;
  --as-copper: #b66032;
  --as-copper-light: #c87848;
  --as-sage: #cbd2c5;
  --as-line: rgba(7, 24, 36, 0.16);
  --as-line-light: rgba(243, 238, 228, 0.2);
  --as-shadow: 0 32px 90px rgba(4, 18, 27, 0.18);
  --as-radius-sm: 16px;
  --as-radius: 28px;
  --as-radius-lg: 48px;
  --as-radius-xl: 72px;
  --as-shell: min(1440px, calc(100vw - 80px));
  --as-display: "Iowan Old Style", "Baskerville", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  --as-sans: "Aptos", "Avenir Next", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --as-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --as-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--as-paper);
  color: var(--as-ink);
  font-family: var(--as-sans);
  font-size: 17px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
body::before {
  position: fixed;
  inset: 0;
  z-index: 9999;
  pointer-events: none;
  content: "";
  opacity: 0.12;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.17'/%3E%3C/svg%3E");
  mix-blend-mode: multiply;
}
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.18em; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--as-copper); color: var(--as-white); }

.as-site-main { position: relative; }
.as-site-main::before { position: absolute; z-index: 16; top: 1010px; bottom: 0; left: calc((100vw - var(--as-shell))/2 + 20px); width: 1px; content: ""; pointer-events: none; background: linear-gradient(to bottom,transparent,rgba(182,96,50,.62) 5%,rgba(182,96,50,.24) 95%,transparent); }
.as-shell { width: var(--as-shell); margin-inline: auto; }
.as-section { --as-chapter-bg: var(--as-paper); --as-chapter-color: var(--as-copper); position: relative; padding-block: clamp(96px, 11vw, 180px); }
.as-section[data-chapter]::before { position: absolute; z-index: 18; top: clamp(82px,8vw,126px); left: calc((100vw - var(--as-shell))/2 + 2px); display: grid; width: 37px; height: 37px; place-items: center; border: 1px solid currentColor; border-radius: 50%; content: attr(data-chapter); background: var(--as-chapter-bg); box-shadow: 0 0 0 10px var(--as-chapter-bg); color: var(--as-chapter-color); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.as-section[data-chapter] > .as-shell { position: relative; }
.as-section[data-chapter] > .as-shell::after { position: absolute; z-index: 0; top: -18px; right: 0; width: 144px; height: 58px; content: ""; border: 1px solid rgba(182,96,50,.3); border-radius: 50%; pointer-events: none; transform: rotate(-24deg); }
.as-skip-link {
  position: fixed; top: 12px; left: 12px; z-index: 10000; padding: 12px 18px;
  border-radius: 10px; background: var(--as-ivory); color: var(--as-ink);
  transform: translateY(-160%); transition: transform 180ms var(--as-ease-out);
}
.as-skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid var(--as-copper-light); outline-offset: 4px; }

.as-kicker {
  display: flex; align-items: center; gap: 16px; margin: 0 0 24px;
  color: var(--as-copper); font-size: 12px; font-weight: 760; letter-spacing: 0.2em;
  line-height: 1.2; text-transform: uppercase;
}
.as-kicker::before { width: 36px; height: 1px; content: ""; background: currentColor; }
.as-kicker--light { color: var(--as-copper-light); }
h1, h2, h3 { margin: 0; font-family: var(--as-display); font-weight: 550; letter-spacing: -0.045em; }
h1 { font-size: clamp(4rem, 7.7vw, 9.25rem); line-height: 0.87; }
h2 { font-size: clamp(3rem, 5.6vw, 6.8rem); line-height: 0.92; }
h3 { font-size: clamp(1.6rem, 2.7vw, 3rem); line-height: 1.02; }
p { margin: 0 0 1.5em; }

.as-button {
  display: inline-flex; align-items: center; justify-content: space-between; gap: 24px;
  min-width: 240px; padding: 17px 20px 17px 24px; border: 1px solid transparent;
  border-radius: 999px; font-size: 13px; font-weight: 760; letter-spacing: 0.06em;
  line-height: 1.2; text-decoration: none; text-transform: uppercase;
  transition: transform 160ms var(--as-ease-out), background-color 180ms var(--as-ease-out), color 180ms var(--as-ease-out), border-color 180ms var(--as-ease-out);
}
.as-button:hover { transform: translateY(-3px); }
.as-button:active { transform: scale(0.97); }
.as-button--copper { background: var(--as-copper-light); color: var(--as-ink); }
.as-button--copper:hover { background: var(--as-ivory); }
.as-button--ivory { background: var(--as-ivory); color: var(--as-ink); }
.as-button--ivory:hover { background: var(--as-copper-light); }
.as-button--ink { background: var(--as-ink); color: var(--as-ivory); }
.as-button--ink:hover { background: var(--as-copper); }
.as-arrow { width: 28px; height: 16px; flex: 0 0 auto; transition: transform 200ms var(--as-ease-out); }
a:hover .as-arrow { transform: translateX(5px); }
.as-text-link { display: inline-flex; align-items: center; gap: 14px; font-size: 14px; font-weight: 740; letter-spacing: 0.04em; text-decoration: none; text-transform: uppercase; }
.as-text-link--light { color: var(--as-ivory); }

/* Header */
.as-header {
  position: fixed; inset: 0 0 auto; z-index: 200; padding: calc(22px + env(safe-area-inset-top)) 0 22px;
  color: var(--as-ivory); transition: padding 220ms var(--as-ease-out), background-color 220ms var(--as-ease-out), color 220ms var(--as-ease-out), box-shadow 220ms var(--as-ease-out);
}
.as-header.is-scrolled { padding: calc(12px + env(safe-area-inset-top)) 0 12px; color: var(--as-ink); background: rgba(251, 248, 241, 0.92); box-shadow: 0 10px 40px rgba(7, 24, 36, 0.09); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.as-header__inner { width: var(--as-shell); margin: 0 auto; display: grid; grid-template-columns: minmax(230px, 0.95fr) auto minmax(118px, 0.35fr); align-items: center; gap: 36px; }
.as-brand { display: flex; min-width: 0; align-items: center; gap: 11px; color: inherit; text-decoration: none; }
.as-brand__mark { display: grid; width: 54px; height: 54px; flex: 0 0 auto; place-items: center; color: var(--as-copper-light); }
.as-brand__mark svg { width: 100%; height: 100%; overflow: visible; }
.as-brand__mark .as-mark__orbit { color: var(--as-ivory); }
.is-scrolled .as-brand__mark .as-mark__orbit { color: var(--as-ink); }
.as-brand__type { display: grid; min-width: 0; line-height: 1; }
.as-brand__name { display: inline-flex; align-items: baseline; gap: .26em; white-space: nowrap; }
.as-brand__type strong,.as-brand__type em { font-family: var(--as-display); font-size: 25px; font-style: normal; font-weight: 620; letter-spacing: -.028em; }
.as-brand__type small { margin-top: 6px; opacity: .66; font-size: 7.5px; font-weight: 760; letter-spacing: .17em; line-height: 1.25; text-transform: uppercase; white-space: nowrap; }
.as-nav { display: flex; align-items: center; gap: clamp(18px, 2.1vw, 36px); }
.as-nav a { position: relative; padding: 9px 0; font-size: 12px; font-weight: 680; letter-spacing: 0.05em; text-decoration: none; }
.as-nav a::after { position: absolute; right: 0; bottom: 3px; left: 0; height: 1px; content: ""; background: var(--as-copper-light); transform: scaleX(0); transform-origin: right; transition: transform 220ms var(--as-ease-out); }
.as-nav a:hover::after { transform: scaleX(1); transform-origin: left; }
.as-language { justify-self: end; display: flex; align-items: center; gap: 4px; padding: 4px; border: 1px solid currentColor; border-radius: 999px; }
.as-language a { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; font-size: 9px; font-weight: 800; text-decoration: none; }
.as-language a.is-active { background: var(--as-copper-light); color: var(--as-ink); }
.as-menu-button { display: none; border: 0; background: transparent; color: inherit; }
.as-mobile-menu { position: fixed; inset: 0; z-index: 500; background: rgba(3, 13, 20, 0.65); }
.as-mobile-menu__panel { position: absolute; top: 0; right: 0; width: min(620px, 96vw); height: 100vh; height: 100dvh; overflow-y: auto; overscroll-behavior: contain; padding: calc(28px + env(safe-area-inset-top)) max(34px, env(safe-area-inset-right)) calc(60px + env(safe-area-inset-bottom)) 34px; background: var(--as-ink); color: var(--as-ivory); box-shadow: -30px 0 80px rgba(0, 0, 0, 0.3); -webkit-overflow-scrolling: touch; }
.as-mobile-menu__close { display: block; margin-left: auto; padding: 10px; border: 0; background: none; color: inherit; }
.as-mobile-menu__close span { margin-left: 12px; font-size: 26px; }
.as-mobile-menu nav { display: grid; margin-top: 64px; }
.as-mobile-menu nav a { display: grid; grid-template-columns: 34px 52px minmax(0, 1fr) 28px; align-items: center; gap: 12px; min-height: 82px; padding: 10px 4px; border-top: 1px solid var(--as-line-light); line-height: 1; text-decoration: none; transition: color 160ms var(--as-ease-out), padding 160ms var(--as-ease-out), background-color 160ms var(--as-ease-out); }
.as-mobile-menu nav a:hover,.as-mobile-menu nav a:focus-visible { padding-inline: 14px; background: rgba(243,238,228,.05); color: var(--as-copper-light); }
.as-mobile-menu nav a strong { font-family: var(--as-display); font-size: clamp(1.65rem,5vw,2.75rem); font-weight: 550; letter-spacing: -.035em; }
.as-mobile-nav-icon { width: 28px; height: 28px; }
.as-mobile-menu nav a .as-arrow { justify-self: end; opacity: .55; }
.as-mobile-menu nav span { color: var(--as-copper-light); font-family: var(--as-sans); font-size: 10px; letter-spacing: 0.16em; }
.as-menu-is-open { overflow: hidden; }

/* Hero */
.as-hero { position: relative; min-height: 1020px; overflow: hidden; padding: calc(184px + env(safe-area-inset-top)) 0 0; background: var(--as-ink); color: var(--as-ivory); isolation: isolate; }
.as-hero::before { position: absolute; inset: 0; z-index: -2; content: ""; background: radial-gradient(circle at 80% 20%, rgba(31, 72, 85, 0.66), transparent 36%), linear-gradient(122deg, #071824 10%, #0d2735 62%, #071824 100%); }
.as-hero__vector { position: absolute; inset: -150px -100px auto auto; z-index: -1; width: min(850px, 68vw); opacity: 0.35; }
.as-hero__vector svg { width: 100%; fill: none; stroke: rgba(200, 120, 72, 0.42); stroke-width: 1.1; }
.as-hero__vector rect { fill: var(--as-copper-light); stroke: none; }
.as-hero__grid { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(330px, 0.72fr); align-items: center; gap: clamp(48px, 6vw, 110px); }
.as-hero__copy { position: relative; z-index: 2; padding-bottom: 120px; }
.as-hero__copy h1 { max-width: 970px; text-wrap: balance; }
.as-hero__lead { max-width: 720px; margin: 40px 0 42px; color: rgba(243, 238, 228, 0.72); font-size: clamp(17px, 1.4vw, 22px); line-height: 1.55; }
.as-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 28px; }
.as-hero__portrait-wrap { position: relative; align-self: end; width: 100%; max-width: 540px; margin: 10px 0 -5px auto; }
.as-hero__portrait { position: relative; z-index: 1; margin: 0; overflow: hidden; border: 1px solid rgba(243, 238, 228, 0.24); border-radius: 48px 48px 180px 48px; background: #1c3744; box-shadow: 0 50px 120px rgba(0, 0, 0, 0.4); }
.as-hero__portrait::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, transparent 62%, rgba(4, 15, 23, 0.76)); pointer-events: none; }
.as-hero__portrait img { width: 100%; height: 690px; object-fit: cover; object-position: 51% 26%; filter: saturate(0.92) contrast(1.04); }
.as-hero__portrait figcaption { position: absolute; z-index: 2; right: 34px; bottom: 34px; left: 34px; display: flex; align-items: end; justify-content: space-between; gap: 20px; font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; }
.as-hero__portrait figcaption span { opacity: 0.6; }
.as-hero__portrait figcaption strong { max-width: 150px; text-align: right; }
.as-orbit-badge { position: absolute; z-index: 3; top: 38px; left: -48px; display: grid; width: 108px; height: 108px; place-items: center; border: 1px solid rgba(243, 238, 228, 0.35); border-radius: 50%; background: rgba(7, 24, 36, 0.86); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.as-orbit-badge::before, .as-orbit-badge::after { position: absolute; width: 9px; height: 9px; content: ""; border-radius: 2px; background: var(--as-copper-light); }
.as-orbit-badge::before { top: 3px; left: 49px; }.as-orbit-badge::after { right: 5px; bottom: 25px; width: 5px; height: 5px; }
.as-orbit-badge span { font-family: var(--as-display); font-size: 34px; line-height: 1; }.as-orbit-badge small { position: absolute; bottom: 21px; opacity: 0.6; font-size: 8px; letter-spacing: 0.12em; }
.as-hero__facts { position: relative; z-index: 5; display: grid; grid-template-columns: repeat(3, 1fr) 1.35fr; width: calc(var(--as-shell) + 80px); margin: 0 auto; overflow: hidden; border-radius: 36px 36px 0 0; background: var(--as-ivory); color: var(--as-ink); box-shadow: 0 -20px 70px rgba(0, 0, 0, 0.16); }
.as-hero__facts > div { min-height: 132px; padding: 26px 32px; border-right: 1px solid var(--as-line); display: flex; flex-direction: column; justify-content: center; }
.as-hero__facts strong { font-family: var(--as-display); font-size: 46px; font-weight: 600; line-height: 1; }.as-hero__facts span { margin-top: 8px; font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.as-hero__facts-note { position: relative; align-items: center; background: var(--as-copper); color: var(--as-ivory); text-align: center; }
.as-hero__facts-note::before { width: 80px; height: 80px; content: ""; border: 1px solid rgba(243, 238, 228, 0.44); border-radius: 50%; }
.as-hero__facts-note span { position: absolute; margin: 0; }

/* Profile */
.as-profile-section { --as-chapter-bg: var(--as-ivory); background: var(--as-ivory); }
.as-profile-section__grid { display: grid; grid-template-columns: 92px minmax(0, 1.15fr) minmax(300px, 0.62fr); align-items: start; gap: clamp(28px, 5vw, 92px); }
.as-section-index { display: flex; align-items: center; gap: 10px; padding-top: 8px; color: var(--as-copper); font-size: 10px; font-weight: 800; letter-spacing: 0.14em; }
.as-section-index i { display: block; width: 34px; height: 1px; background: currentColor; }
.as-profile-section__heading h2 { max-width: 860px; }
.as-profile-section__body { max-width: 520px; padding-top: 66px; font-size: clamp(18px, 1.55vw, 24px); line-height: 1.55; }
.as-profile-section__body .as-text-link { margin-top: 20px; font-size: 12px; }

/* Areas */
.as-areas { overflow: hidden; background: var(--as-paper); }
.as-section-heading--split { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.47fr); align-items: end; gap: clamp(48px, 8vw, 140px); margin-bottom: 76px; }
.as-section-heading--split h2 { max-width: 970px; }.as-section-heading--split > p, .as-section-heading--split > div:last-child p { margin: 0; color: rgba(7, 24, 36, 0.68); font-size: 18px; }
.as-areas__stack { display: grid; gap: 18px; }
.as-area-card { position: relative; display: grid; grid-template-columns: 88px minmax(0, 1fr) 190px; align-items: center; min-height: 228px; gap: 28px; overflow: hidden; padding: 38px 48px; border: 1px solid var(--as-line); border-left: 3px solid var(--as-copper); border-radius: 2px 24px 2px 2px; transition: transform 240ms var(--as-ease-out), border-color 240ms var(--as-ease-out); }
.as-area-card::before { position: absolute; top: 30px; bottom: 30px; left: 75px; width: 1px; content: ""; background: currentColor; opacity: .15; }
.as-area-card:nth-child(odd) { margin-right: 6%; }.as-area-card:nth-child(even) { margin-left: 6%; }
.as-area-card:hover { z-index: 2; border-color: rgba(182,96,50,.62); transform: translateX(8px); }
.as-area-card__number { align-self: start; color: var(--as-copper); font-size: 11px; font-weight: 800; letter-spacing: 0.15em; }
.as-area-card > div:nth-child(2) > p:first-child { margin-bottom: 12px; color: var(--as-copper); font-size: 10px; font-weight: 800; letter-spacing: 0.15em; text-transform: uppercase; }
.as-area-card h3 { margin-bottom: 18px; }.as-area-card h3 + p { max-width: 760px; margin: 0; color: rgba(7, 24, 36, 0.68); }
.as-area-card__icon { justify-self: end; display: grid; width: 150px; height: 150px; place-items: center; border: 1px solid currentColor; border-radius: 50%; opacity: 0.8; }
.as-area-card__icon svg { width: 75px; height: 75px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.as-area-card--finance { background: var(--as-ivory); }.as-area-card--space { background: var(--as-ink); color: var(--as-ivory); }.as-area-card--space h3 + p { color: rgba(243, 238, 228, 0.65); }.as-area-card--impact { background: var(--as-sage); }

/* University */
.as-university { --as-chapter-bg: var(--as-copper); --as-chapter-color: var(--as-ivory); overflow: hidden; background: var(--as-copper); color: var(--as-ivory); }
.as-university.as-section[data-chapter] > .as-shell::after { border-color: rgba(243,238,228,.44); }
.as-university__mesh { position: absolute; inset: 0; opacity: 0.12; background-image: linear-gradient(rgba(243,238,228,.4) 1px, transparent 1px), linear-gradient(90deg, rgba(243,238,228,.4) 1px, transparent 1px); background-size: 72px 72px; -webkit-mask-image: linear-gradient(90deg, #000, transparent 70%); mask-image: linear-gradient(90deg, #000, transparent 70%); }
.as-university__grid { display: grid; grid-template-columns: minmax(330px, 0.72fr) minmax(0, 1fr); align-items: center; gap: clamp(70px, 12vw, 190px); }
.as-university__visual { position: relative; min-height: 560px; display: grid; place-items: center; }
.as-university__arc { position: absolute; width: min(500px, 42vw); aspect-ratio: 1; border: 1px solid rgba(243, 238, 228, 0.5); border-radius: 50%; }
.as-university__arc::before, .as-university__arc::after { position: absolute; content: ""; border: 1px solid rgba(243, 238, 228, 0.24); border-radius: 50%; }.as-university__arc::before { inset: 16%; }.as-university__arc::after { inset: 32%; }
.as-university__seal { position: relative; z-index: 1; display: flex; width: 270px; height: 270px; align-items: center; justify-content: center; border: 1px solid var(--as-ivory); border-radius: 50%; }
.as-university__seal strong { font-family: var(--as-display); font-size: 64px; letter-spacing: -0.06em; }.as-university__seal span { position: absolute; right: 40px; bottom: 45px; color: var(--as-ink); font-size: 10px; font-weight: 800; letter-spacing: 0.12em; }
.as-university__visual > p { position: absolute; bottom: 0; left: 0; margin: 0; opacity: 0.58; font-size: 10px; line-height: 1.65; letter-spacing: 0.14em; text-transform: uppercase; }
.as-university__copy h2 { max-width: 820px; margin-bottom: 34px; }.as-university__copy > p { max-width: 700px; font-size: clamp(18px, 1.45vw, 23px); }.as-meta-line { margin: 36px 0; padding: 20px 0; border-block: 1px solid rgba(243, 238, 228, 0.32); font-size: 11px; font-weight: 760; letter-spacing: 0.14em; text-transform: uppercase; }

/* Book */
.as-book { --as-chapter-bg: var(--as-ivory); overflow: hidden; background: var(--as-ivory); }
.as-book::after { position: absolute; right: -180px; bottom: -300px; width: 720px; height: 720px; content: ""; border: 1px solid rgba(182, 96, 50, 0.22); border-radius: 50%; }
.as-book__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.67fr); align-items: center; gap: clamp(70px, 11vw, 180px); }
.as-book__copy h2 { max-width: 880px; }.as-book__copy > p { max-width: 660px; margin: 36px 0; font-size: clamp(18px, 1.4vw, 22px); }
.as-book__authors { display: inline-flex; gap: 16px; margin-bottom: 42px; padding-bottom: 14px; border-bottom: 1px solid var(--as-line); font-size: 11px; font-weight: 760; letter-spacing: 0.12em; text-transform: uppercase; }.as-book__authors span { color: var(--as-copper); }
.as-book__visual { position: relative; display: grid; min-height: 720px; place-items: center; }
.as-book__visual img { position: relative; z-index: 2; width: min(390px, 78%); border-radius: 8px 22px 22px 8px; box-shadow: 24px 40px 70px rgba(7, 24, 36, 0.25), -7px 0 0 rgba(7, 24, 36, 0.14); transform: rotate(3deg); transition: transform 400ms var(--as-ease-out); }.as-book__visual:hover img { transform: rotate(0) translateY(-10px); }
.as-book__orbit { position: absolute; width: 650px; height: 300px; border: 1px solid var(--as-copper); border-radius: 50%; transform: rotate(-28deg); }.as-book__orbit::after { position: absolute; top: 30px; right: 66px; width: 13px; height: 13px; content: ""; border-radius: 3px; background: var(--as-copper); }
.as-book__isbn { position: absolute; z-index: 3; right: 0; bottom: 48px; padding: 16px 18px; border-radius: 14px; background: var(--as-ink); color: var(--as-ivory); font-size: 9px; font-weight: 700; line-height: 1.6; letter-spacing: 0.13em; }

/* Press */
.as-press { background: var(--as-paper); }
.as-press__list { border-top: 1px solid var(--as-line); }
.as-press-row { display: grid; grid-template-columns: 60px 190px minmax(0, 1fr) 72px; align-items: center; min-height: 175px; gap: 28px; padding: 26px 10px; border-bottom: 1px solid var(--as-line); transition: background-color 200ms var(--as-ease-out), padding 200ms var(--as-ease-out); }
.as-press-row:hover { padding-inline: 24px; background: var(--as-ivory); }
.as-press-row__index { color: var(--as-copper); font-size: 10px; font-weight: 800; letter-spacing: 0.15em; }
.as-press-row__meta { display: grid; gap: 8px; font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; }.as-press-row__meta time { color: rgba(7, 24, 36, 0.48); }.as-press-row__meta strong { font-weight: 800; }
.as-press-row__title h3 { max-width: 900px; font-size: clamp(1.45rem, 2.25vw, 2.55rem); line-height: 1.08; }.as-press-row__title h3 a { text-decoration: none; }.as-press-row__title p { margin: 10px 0 0; color: rgba(7, 24, 36, 0.54); font-size: 11px; }
.as-press-row__arrow { display: grid; width: 50px; height: 50px; place-items: center; border: 1px solid var(--as-line); border-radius: 50%; text-decoration: none; }.as-press-row:hover .as-press-row__arrow { border-color: var(--as-copper); background: var(--as-copper); color: var(--as-white); }

/* Contact and footer */
.as-contact-cta { --as-chapter-bg: var(--as-ink); --as-chapter-color: var(--as-copper-light); overflow: hidden; background: var(--as-ink); color: var(--as-ivory); }
.as-contact-cta.as-section[data-chapter] > .as-shell::after { border-color: rgba(200,120,72,.48); }
.as-contact-cta__vector { position: absolute; inset: auto -30px -100px auto; width: min(780px, 70vw); opacity: 0.5; }.as-contact-cta__vector svg { width: 100%; fill: none; stroke: var(--as-copper-light); stroke-width: 1; }.as-contact-cta__vector rect { fill: var(--as-copper-light); stroke: none; }
.as-contact-cta__inner { position: relative; z-index: 1; }.as-contact-cta h2 { max-width: 1080px; }.as-contact-cta p { max-width: 660px; margin: 38px 0; color: rgba(243, 238, 228, 0.7); font-size: 20px; }
.as-footer { padding: 74px 0 calc(44px + env(safe-area-inset-bottom)); background: #04121b; color: var(--as-ivory); }
.as-footer__grid { display: grid; grid-template-columns: 1.2fr .6fr 1fr; gap: 70px; align-items: start; }
.as-footer__brand { display: flex; align-items: center; gap: 24px; }.as-footer__mark { width: 68px; color: var(--as-copper-light); }.as-footer__mark .as-mark__orbit { color: var(--as-ivory); }.as-footer__brand p { margin: 0; font-size: 12px; line-height: 1.7; letter-spacing: .04em; }.as-footer__brand strong { font-family: var(--as-display); font-size: 23px; letter-spacing: -.02em; }
.as-footer__links, .as-footer__legal { display: grid; gap: 11px; }.as-footer a { width: fit-content; font-size: 11px; letter-spacing: .06em; text-decoration: none; }.as-footer__legal { justify-items: end; text-align: right; }.as-footer__legal p { margin: 22px 0 0; opacity: .52; font-size: 9px; letter-spacing: .08em; }

/* Generic pages */
.as-page, .as-single, .as-archive { min-height: 70vh; background: var(--as-paper); }
.as-page__hero, .as-single__hero { padding: 190px 0 90px; background: var(--as-ink); color: var(--as-ivory); }.as-page__hero h1, .as-single__hero h1 { max-width: 1120px; font-size: clamp(4rem, 7vw, 8rem); }.as-single__hero > div > p:last-child { max-width: 760px; margin: 30px 0 0; color: rgba(243, 238, 228, .7); font-size: 21px; }
.as-prose { max-width: 920px; padding-block: 90px 140px; }.as-prose > * { max-width: 760px; margin-inline: auto; }.as-prose h2, .as-prose h3 { margin-top: 1.6em; }.as-prose h2 { font-size: clamp(2.6rem, 5vw, 5rem); }.as-prose blockquote { margin-block: 50px; padding: 30px 0 30px 34px; border-left: 4px solid var(--as-copper); font-family: var(--as-display); font-size: 28px; line-height: 1.28; }
.as-archive__list { display: grid; gap: 0; padding-block: 90px 140px; }.as-archive__list article { padding: 38px 0; border-bottom: 1px solid var(--as-line); }.as-archive__list h2 { font-size: clamp(2rem, 4vw, 4rem); }.as-archive__list h2 a { text-decoration: none; }.as-archive__list time { color: var(--as-copper); font-size: 10px; letter-spacing: .12em; }
.as-error { display: grid; min-height: 100vh; place-items: center; padding: 130px 0; background: var(--as-ink); color: var(--as-ivory); }.as-error__code { margin: 0; color: var(--as-copper); font-family: var(--as-display); font-size: clamp(9rem, 30vw, 28rem); line-height: .7; }.as-error h1 { margin-top: 50px; }.as-error p:not(.as-error__code) { max-width: 620px; margin: 30px 0; }

/* Press archive */
.as-press-archive { min-height: 70vh; background: var(--as-paper); }.as-press-archive__hero > .as-shell > p:last-child { max-width: 760px; margin: 32px 0 0; color: rgba(243,238,228,.7); font-size: 21px; }.as-press-archive__content { padding-block: 70px 130px; }
.as-press-filters { display: grid; grid-template-columns: minmax(260px,1.5fr) minmax(180px,.8fr) 150px auto; align-items: end; gap: 14px; margin: -115px 0 70px; padding: 24px; border: 1px solid rgba(243,238,228,.24); border-radius: 28px; background: var(--as-white); box-shadow: var(--as-shadow); }.as-press-filters label { display: block; margin: 0 0 7px 4px; color: rgba(7,24,36,.58); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.as-press-filters input,.as-press-filters select { width: 100%; min-height: 54px; padding: 0 17px; border: 1px solid var(--as-line); border-radius: 16px; background: var(--as-paper); color: var(--as-ink); }.as-press-filters .as-button { min-width: 190px; min-height: 54px; border: 0; }
.as-press-archive__summary { display: flex; align-items: baseline; gap: 14px; margin-bottom: 30px; }.as-press-archive__summary strong { font-family: var(--as-display); font-size: 56px; line-height: 1; }.as-press-archive__summary span { color: rgba(7,24,36,.55); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.as-press-archive .as-press-row { grid-template-columns: 120px 180px minmax(0,1fr) 72px; }.as-press-archive .as-press-row__index { line-height: 1.5; }.as-press-archive .as-press-row__title h2 { font-size: clamp(1.45rem,2.25vw,2.55rem); line-height: 1.08; }.as-press-archive .as-press-row__title h2 a { text-decoration: none; }.as-press-archive .as-press-row__title p { margin: 11px 0 0; color: rgba(7,24,36,.6); font-size: 14px; }.as-empty-state { padding: 90px 0; }.as-empty-state h2 { max-width: 720px; }.page-numbers { list-style: none; display: flex; align-items: center; gap: 8px; padding: 0; margin: 60px 0 0; }.page-numbers a,.page-numbers span { display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid var(--as-line); border-radius: 50%; font-size: 12px; font-weight: 760; text-decoration: none; }.page-numbers .current,.page-numbers a:hover { border-color: var(--as-copper); background: var(--as-copper); color: var(--as-white); }.as-press-intro { font-family: var(--as-display); font-size: clamp(1.8rem,3.4vw,3.2rem); line-height: 1.2; }

/* Contact page */
.as-contact-page { min-height: 100vh; background: var(--as-ink); color: var(--as-ivory); }.as-contact-page__hero { position: relative; min-height: 100vh; overflow: hidden; padding: calc(190px + env(safe-area-inset-top)) 0 calc(120px + env(safe-area-inset-bottom)); }.as-contact-page__vector { position: absolute; inset: auto -80px -80px auto; width: min(860px,72vw); opacity: .34; }.as-contact-page__vector svg { width: 100%; fill: none; stroke: var(--as-copper-light); stroke-width: 1; }.as-contact-page__vector rect { fill: var(--as-copper-light); stroke: none; }.as-contact-page__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,.84fr) minmax(440px,.62fr); align-items: start; gap: clamp(70px,10vw,160px); }.as-contact-page__copy h1 { max-width: 850px; font-size: clamp(4rem,6.8vw,8rem); }.as-contact-page__copy > p:last-child { max-width: 640px; margin-top: 38px; color: rgba(243,238,228,.7); font-size: 20px; }.as-contact-form-wrap { display: grid; gap: 16px; }.as-contact-form { display: grid; gap: 22px; padding: 36px; border: 1px solid var(--as-line-light); border-radius: var(--as-radius-lg); background: rgba(243,238,228,.06); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }.as-field-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.as-contact-form > label,.as-field-pair label { display: grid; gap: 8px; color: rgba(243,238,228,.64); font-size: 10px; font-weight: 760; letter-spacing: .12em; text-transform: uppercase; }.as-contact-form input,.as-contact-form textarea { width: 100%; min-height: 54px; padding: 14px 16px; border: 1px solid var(--as-line-light); border-radius: 15px; background: rgba(4,18,27,.58); color: var(--as-ivory); font-size: 16px; letter-spacing: normal; text-transform: none; resize: vertical; }.as-contact-form textarea { min-height: 156px; }.as-contact-form input:focus,.as-contact-form textarea:focus { border-color: var(--as-copper-light); outline: 0; box-shadow: 0 0 0 3px rgba(200,120,72,.15); }.as-contact-form .as-button { justify-self: start; border: 0; }.as-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }.as-privacy-check { grid-template-columns: 24px 1fr !important; align-items: start; gap: 12px !important; line-height: 1.55; letter-spacing: normal !important; text-transform: none !important; }.as-privacy-check input { position: absolute; width: 1px; height: 1px; opacity: 0; }.as-check-box { display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid var(--as-line-light); border-radius: 7px; color: transparent; }.as-privacy-check input:checked + .as-check-box { border-color: var(--as-copper-light); background: var(--as-copper-light); color: var(--as-ink); }.as-privacy-check input:focus-visible + .as-check-box { outline: 3px solid var(--as-copper-light); outline-offset: 3px; }.as-privacy-check a { color: var(--as-copper-light); }.as-form-notice { padding: 16px 18px; border: 1px solid rgba(243,238,228,.26); border-radius: 16px; background: rgba(243,238,228,.08); font-size: 14px; }.as-form-notice--success { border-color: rgba(153,211,170,.5); background: rgba(46,112,64,.2); }.as-form-notice--error,.as-form-notice--invalid,.as-form-notice--rate,.as-form-notice--security { border-color: rgba(224,126,102,.55); background: rgba(135,45,32,.2); }

/* Reveal */
[data-reveal] { opacity: 0; transform: translateY(28px); transition: opacity 680ms var(--as-ease-out), transform 680ms var(--as-ease-out); }
[data-reveal-delay="1"] { transition-delay: 120ms; }
[data-reveal].is-revealed { opacity: 1; transform: none; }

@media (max-width: 1180px) {
  :root { --as-shell: min(100% - 48px, 1120px); }
  .as-header__inner { grid-template-columns: 1fr auto auto; }.as-nav { display: none; }.as-menu-button { display: grid; grid-template-columns: auto 26px; align-items: center; column-gap: 12px; }.as-menu-button span { grid-row: span 2; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.as-menu-button i { display: block; width: 26px; height: 1px; background: currentColor; }
  .as-hero { min-height: auto; }.as-hero__grid { grid-template-columns: minmax(0, 1fr) 390px; gap: 44px; }.as-hero__portrait img { height: 610px; }.as-hero__facts { width: var(--as-shell); }
  .as-area-card { grid-template-columns: 60px minmax(0, 1fr) 130px; }.as-area-card__icon { width: 120px; height: 120px; }
}

@media (max-width: 860px) {
  :root { --as-shell: min(100% - 36px, 760px); }
  body { font-size: 16px; }.as-section { padding-block: 100px; }
  .as-header { padding: calc(14px + env(safe-area-inset-top)) 0 14px; }.as-header__inner { gap: 14px; }.as-language { display: none; }.as-brand__type small { display: none; }
  .as-hero { padding-top: 140px; }.as-hero__grid { grid-template-columns: 1fr; }.as-hero__copy { padding-bottom: 24px; }.as-hero__copy h1 { font-size: clamp(3.8rem, 15vw, 7rem); }.as-hero__portrait-wrap { width: min(520px, 92%); margin: 0 auto; }.as-hero__portrait img { height: min(720px, 118vw); }.as-orbit-badge { left: -18px; }
  .as-hero__facts { grid-template-columns: repeat(3, 1fr); border-radius: 28px 28px 0 0; }.as-hero__facts > div { min-height: 112px; padding: 20px; }.as-hero__facts-note { display: none !important; }
  .as-profile-section__grid { grid-template-columns: 50px 1fr; }.as-profile-section__body { grid-column: 2; padding-top: 18px; }
  .as-section-heading--split { grid-template-columns: 1fr; gap: 28px; margin-bottom: 50px; }
  .as-site-main::before { left: calc((100vw - var(--as-shell))/2 + 17px); }.as-section[data-chapter]::before { left: calc((100vw - var(--as-shell))/2); }
  .as-area-card { grid-template-columns: 42px 1fr; margin-inline: 0 !important; padding: 30px 28px; border-radius: 5px 32px 5px 5px; }.as-area-card::before { display: none; }.as-area-card__icon { display: none; }
  .as-university__grid, .as-book__grid { grid-template-columns: 1fr; }.as-university__visual { min-height: 430px; order: 2; }.as-university__arc { width: 430px; }.as-book__visual { min-height: 650px; }.as-book__copy { order: 1; }
  .as-press-row { grid-template-columns: 42px 110px minmax(0, 1fr); min-height: 150px; }.as-press-row__arrow { display: none; }
  .as-footer__grid { grid-template-columns: 1fr 1fr; }.as-footer__legal { grid-column: 1 / -1; justify-items: start; text-align: left; }
  .as-press-filters { grid-template-columns: 1fr 1fr; margin-top: -90px; }.as-press-filters > div:first-child { grid-column: 1 / -1; }.as-press-filters .as-button { width: 100%; }.as-press-archive .as-press-row { grid-template-columns: 95px minmax(0,1fr) 52px; }.as-press-archive .as-press-row__meta { grid-column: 2; grid-row: 1; }.as-press-archive .as-press-row__title { grid-column: 2; }
  .as-contact-page__grid { grid-template-columns: 1fr; gap: 54px; }.as-contact-page__copy h1 { max-width: 760px; }.as-contact-page__hero { padding-top: calc(150px + env(safe-area-inset-top)); }
}

@media (max-width: 560px) {
  :root { --as-shell: calc(100% - 28px); --as-radius-lg: 34px; }
  .as-site-main::before,.as-section[data-chapter]::before,.as-section[data-chapter] > .as-shell::after { display: none; }
  h2 { font-size: clamp(2.75rem, 13vw, 4.6rem); }.as-kicker { gap: 10px; font-size: 10px; }.as-kicker::before { width: 22px; }
  .as-brand__mark { width: 40px; height: 40px; }.as-brand__type small { display: none; }.as-brand__name { gap: .22em; }.as-brand__type strong,.as-brand__type em { display: inline; font-size: 18px; }.as-menu-button span { display: none; }.as-menu-button { grid-template-columns: 1fr; }
  .as-header { padding: calc(9px + env(safe-area-inset-top)) 0 9px; }.as-header.is-scrolled { padding: calc(7px + env(safe-area-inset-top)) 0 7px; }
  .as-mobile-menu__panel { width: 100vw; padding-inline: max(18px,env(safe-area-inset-left)) max(18px,env(safe-area-inset-right)); }
  .as-mobile-menu nav { margin-top: 34px; }.as-mobile-menu nav a { grid-template-columns: 28px 45px minmax(0,1fr) 24px; min-height: 73px; gap: 10px; }.as-mobile-nav-icon { width: 25px; height: 25px; }.as-mobile-menu nav a strong { font-size: clamp(1.55rem,7.3vw,2.15rem); }
  .as-hero__lead { margin: 28px 0 30px; }.as-actions { align-items: stretch; }.as-actions .as-button { width: 100%; }.as-actions .as-text-link { padding: 10px 4px; }
  .as-hero__portrait { border-radius: 30px 30px 110px 30px; }.as-hero__portrait figcaption { right: 22px; bottom: 24px; left: 22px; }.as-orbit-badge { top: 26px; width: 86px; height: 86px; }
  .as-hero__facts { grid-template-columns: 1fr; border-radius: 28px; margin: -2px auto 18px; }.as-hero__facts > div { min-height: 86px; border-right: 0; border-bottom: 1px solid var(--as-line); flex-direction: row; align-items: baseline; justify-content: space-between; }.as-hero__facts strong { font-size: 36px; }.as-hero__facts span { max-width: 130px; text-align: right; }
  .as-profile-section__grid { grid-template-columns: 1fr; }.as-section-index { display: none; }.as-profile-section__body { grid-column: auto; }
  .as-area-card { grid-template-columns: 1fr; min-height: auto; }.as-area-card__number { margin-bottom: 16px; }
  .as-university__visual { min-height: 350px; }.as-university__seal { width: 210px; height: 210px; }.as-university__seal strong { font-size: 48px; }.as-university__arc { width: 330px; }.as-university__visual > p { display: none; }
  .as-book__visual { min-height: 520px; }.as-book__visual img { width: 76%; }.as-book__orbit { width: 390px; height: 190px; }.as-book__isbn { right: 4px; bottom: 20px; }
  .as-press-row { grid-template-columns: 34px 1fr; gap: 16px; padding-block: 28px; }.as-press-row__meta { grid-column: 2; grid-row: 1; display: flex; justify-content: space-between; }.as-press-row__title { grid-column: 2; }.as-press-row__title h3 { font-size: 1.55rem; }
  .as-footer__grid { grid-template-columns: 1fr; gap: 40px; }.as-footer__legal { grid-column: auto; }.as-footer__brand { align-items: flex-start; }
  .as-press-filters { grid-template-columns: 1fr; margin-top: -72px; padding: 18px; border-radius: 22px; }.as-press-filters > div:first-child { grid-column: auto; }.as-press-archive .as-press-row { grid-template-columns: 1fr; }.as-press-archive .as-press-row__index,.as-press-archive .as-press-row__meta,.as-press-archive .as-press-row__title { grid-column: 1; }.as-press-archive .as-press-row__meta { grid-row: auto; }.as-press-archive .as-press-row__arrow { display: none; }
  .as-contact-page__hero { padding-top: calc(120px + env(safe-area-inset-top)); }.as-contact-page__copy h1 { font-size: clamp(3.4rem,15vw,5rem); }.as-contact-page__copy > p:last-child { font-size: 17px; }.as-contact-form { padding: 24px 18px; border-radius: 30px; }.as-field-pair { grid-template-columns: 1fr; }.as-contact-form .as-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  [data-reveal] { opacity: 1; transform: none; }
}

/* Correzioni audit: etichette più leggibili e link testuali riconoscibili anche senza colore. */
.as-kicker { color: #8d3c1b; }
.as-kicker--light { color: var(--as-copper-light); }
.as-area-card__number,
.as-area-card > div:nth-child(2) > p:first-child { color: #853819; }
.as-area-card--space .as-area-card__number,
.as-area-card--space > div:nth-child(2) > p:first-child { color: #e9a57e; }
.as-area-card--space h3 + p { color: rgba(243, 238, 228, 0.76); }
.as-university .as-kicker--light { color: #fff4eb; }
.as-press-row__index { color: #8d3c1b; }
.as-press-row__meta time { color: #586267; }
.as-press-row__title p { color: #515c61; }
.as-contact-form > label,
.as-field-pair label { color: rgba(243, 238, 228, 0.82); }
.as-privacy-check a { color: #f2b18c; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18em; }
.as-prose p a,
.as-prose li a { text-decoration: underline; }

/* V1.1 — Tipografia editoriale, social sharing e navigazione vettoriale. */
body {
  font-size: clamp(16px, .18vw + 15.4px, 18px);
  font-kerning: normal;
  font-variant-ligatures: common-ligatures contextual;
  font-synthesis: none;
}
h1, h2, h3 {
  font-kerning: normal;
  text-wrap: balance;
}
h1 { letter-spacing: -.052em; }
h2 { letter-spacing: -.046em; }
h3 { letter-spacing: -.034em; }
p, li { text-wrap: pretty; }
.as-page__hero .as-lead,
.as-releases__hero .as-lead {
  max-width: 780px;
  margin: 32px 0 0;
  color: rgba(243,238,228,.76);
  font-family: var(--as-display);
  font-size: clamp(1.45rem, 2.1vw, 2.15rem);
  line-height: 1.28;
  letter-spacing: -.025em;
}
.as-prose {
  font-size: clamp(1.04rem, .28vw + .98rem, 1.18rem);
  line-height: 1.78;
}
.as-prose > p,
.as-prose > ul,
.as-prose > ol { max-width: 70ch; }
.as-prose h2 { max-width: 18ch; line-height: .98; }
.as-prose h3 { max-width: 28ch; line-height: 1.08; }
.as-prose strong { font-weight: 760; }
.as-prose blockquote { max-width: 880px; font-size: clamp(1.8rem, 3.2vw, 3.4rem); letter-spacing: -.03em; }

.as-nav__icon-link {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
}
.as-nav__icon-link::after { display: none; }
.as-nav__icon-link svg { width: 19px; height: 19px; }
.as-nav__icon-link span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.as-nav__icon-link:hover,
.as-nav__icon-link:focus-visible { border-color: var(--as-copper-light); background: var(--as-copper-light); color: var(--as-ink); }

.as-mobile-menu__panel { isolation: isolate; }
.as-mobile-menu__panel::before {
  position: fixed;
  z-index: -1;
  top: -180px;
  right: -220px;
  width: 620px;
  height: 620px;
  border: 1px solid rgba(200,120,72,.26);
  border-radius: 50%;
  content: "";
  box-shadow: 0 0 0 74px rgba(200,120,72,.05), 0 0 0 148px rgba(243,238,228,.025);
}
.as-mobile-menu nav a:nth-child(even) { margin-left: clamp(0px, 4vw, 44px); }
.as-mobile-menu nav a strong { text-wrap: balance; }

.as-share { display: flex; align-items: center; gap: 12px; }
.as-share__label { color: #586267; font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.as-share__links { display: flex; flex-wrap: wrap; gap: 6px; }
.as-share__link {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid var(--as-line);
  border-radius: 50%;
  background: transparent;
  color: var(--as-ink);
  text-decoration: none;
  transition: transform 150ms var(--as-ease-out), border-color 150ms var(--as-ease-out), background-color 150ms var(--as-ease-out), color 150ms var(--as-ease-out);
}
.as-share__link svg { width: 17px; height: 17px; }
.as-share__link:hover,
.as-share__link:focus-visible { border-color: var(--as-copper); background: var(--as-copper); color: var(--as-white); transform: translateY(-2px); }
.as-share__link:active { transform: scale(.96); }
.as-share--single { margin: 34px 0; padding: 24px 0; border-block: 1px solid var(--as-line); }
.as-share--home { margin-top: 18px; }
.as-share--home .as-share__label { display: none; }
.as-share--home .as-share__link { width: 34px; height: 34px; }
.as-share--home .as-share__link svg { width: 15px; height: 15px; }

.as-press-archive .as-press-row { grid-template-columns: 110px 170px minmax(0,1fr) auto 56px; }
.as-share--press-row { justify-self: end; }
.as-share--press-row .as-share__label { display: none; }
.as-share--press-row .as-share__links { width: 82px; display: grid; grid-template-columns: repeat(2, 38px); }

.as-video-portal {
  position: relative;
  display: grid;
  grid-template-columns: 152px minmax(0,1fr) auto;
  align-items: center;
  gap: clamp(28px, 4vw, 64px);
  margin: -115px 0 0;
  overflow: hidden;
  padding: clamp(28px, 4vw, 54px);
  border: 1px solid rgba(200,120,72,.38);
  border-radius: 8px 54px 8px 54px;
  background: var(--as-ink);
  color: var(--as-ivory);
  box-shadow: var(--as-shadow);
}
.as-video-portal::after {
  position: absolute;
  right: -90px;
  bottom: -170px;
  width: 420px;
  height: 280px;
  border: 1px solid rgba(200,120,72,.3);
  border-radius: 50%;
  content: "";
  transform: rotate(-18deg);
}
.as-video-portal__signal { position: relative; z-index: 1; }
.as-video-portal__signal svg { width: 100%; fill: none; stroke: var(--as-copper-light); stroke-width: 1.6; }
.as-video-portal h2 { max-width: 14ch; font-size: clamp(2.5rem, 4.2vw, 5rem); }
.as-video-portal p:not(.as-kicker) { max-width: 65ch; margin: 20px 0 0; color: rgba(243,238,228,.74); }
.as-video-portal .as-button { position: relative; z-index: 2; min-width: 220px; }
.as-video-portal + .as-press-filters { margin-top: 48px; }

.as-release-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 22px; padding-block: 80px 140px; }
.as-release-card {
  grid-column: span 6;
  min-height: 360px;
  padding: clamp(28px, 3vw, 46px);
  border: 1px solid var(--as-line);
  border-radius: 5px 46px 5px 5px;
  background: var(--as-white);
  box-shadow: 0 18px 60px rgba(7,24,36,.07);
}
.as-release-card:nth-child(3n) { grid-column: 3 / span 8; }
.as-release-card__meta,
.as-release-single__meta { color: #586267; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.as-release-card h2 { margin: 28px 0 20px; font-size: clamp(2.2rem, 3.6vw, 4.6rem); line-height: .98; }
.as-release-card h2 a { text-decoration: none; }
.as-release-single__image { margin-top: 70px; overflow: hidden; border-radius: 8px 64px 8px 8px; }
.as-release-single__image img { width: 100%; max-height: 780px; object-fit: cover; }
.as-release-contact { margin-bottom: 130px; padding: 34px; border: 1px solid var(--as-line); border-radius: var(--as-radius); background: var(--as-white); }
.as-release-contact p:last-child { margin: 0; font-family: var(--as-display); font-size: 26px; }

.as-book-reviews { position: relative; padding: clamp(90px, 10vw, 160px) 0; background: #e8e0d2; }
.as-book-reviews--compact { margin-top: clamp(70px, 8vw, 120px); padding-bottom: 0; background: transparent; }
.as-book-reviews__header { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(260px,.55fr); gap: 40px 90px; align-items: end; margin-bottom: 58px; }
.as-book-reviews__header .as-kicker { grid-column: 1 / -1; margin-bottom: 0; }
.as-book-reviews__header h2 { max-width: 18ch; font-size: clamp(3rem, 5.5vw, 7rem); }
.as-book-reviews__header > p:last-child { max-width: 52ch; margin: 0; font-size: 18px; }
.as-book-reviews__rail { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--as-line); border-bottom: 1px solid var(--as-line); }
.as-review-note { position: relative; min-height: 430px; padding: 34px clamp(24px,3vw,46px) 38px; border-right: 1px solid var(--as-line); }
.as-review-note:last-child { border-right: 0; }
.as-review-note__number { position: absolute; top: 24px; right: 28px; color: rgba(7,24,36,.5); font-family: var(--as-display); font-size: 74px; line-height: 1; }
.as-review-note__outlet { position: relative; z-index: 1; margin-bottom: 56px; color: #8f3e1d; font-size: 11px; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.as-review-note > p:not(.as-review-note__outlet) { min-height: 150px; margin-bottom: 28px; font-family: var(--as-display); font-size: clamp(1.5rem,2.1vw,2.25rem); line-height: 1.14; letter-spacing: -.025em; }
.as-review-note__meta { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 28px; padding-top: 16px; border-top: 1px solid var(--as-line); color: #586267; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.as-video-library-page { position: relative; min-height: 100vh; overflow: hidden; background: #04121b; color: var(--as-ivory); }
.as-video-library-page::after { position: absolute; z-index: 0; top: 420px; right: -260px; width: 820px; height: 480px; border: 1px solid rgba(195,119,70,.16); border-radius: 50%; content: ""; pointer-events: none; transform: rotate(-24deg); }
.as-video-meridian { position: absolute; z-index: 2; top: 174px; bottom: 90px; left: calc((100vw - var(--as-shell))/2 - 24px); display: grid; grid-template-rows: 40px 1fr auto; justify-items: center; gap: 14px; color: var(--as-copper-light); }
.as-video-meridian span { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid currentColor; border-radius: 50%; background: #04121b; font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.as-video-meridian i { width: 1px; background: linear-gradient(to bottom,var(--as-copper-light),rgba(243,238,228,.15),transparent); }
.as-video-meridian small { writing-mode: vertical-rl; color: rgba(243,238,228,.42); font-size: 8px; line-height: 1.7; letter-spacing: .12em; }
.as-video-library-hero { padding: calc(190px + env(safe-area-inset-top)) 0 80px; background: radial-gradient(circle at 78% 14%,rgba(182,96,50,.22),transparent 28%),#04121b; }
.as-video-library-hero h1 { max-width: 11ch; }
.as-video-library-hero > .as-shell > p:last-child { max-width: 760px; margin: 34px 0 0; color: rgba(243,238,228,.74); font-size: clamp(1.15rem,1.4vw,1.45rem); }
.as-video-studio { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(360px,.65fr); gap: clamp(36px,5vw,80px); align-items: start; padding-bottom: 140px; }
.as-crt { position: sticky; top: 110px; }
.as-crt__cabinet { width: 100%; fill: #182b31; stroke: rgba(243,238,228,.38); stroke-width: 2.4; filter: drop-shadow(0 40px 54px rgba(0,0,0,.42)); }
.as-crt__screen { position: absolute; top: 16.8%; left: 10.4%; width: 67.2%; aspect-ratio: 1.48; overflow: hidden; border: 7px solid #061117; border-radius: 13% / 17%; background: #020609; box-shadow: inset 0 0 42px rgba(0,0,0,.9); }
.as-crt__screen::after { position: absolute; inset: 0; content: ""; pointer-events: none; background: radial-gradient(ellipse at center,transparent 45%,rgba(0,0,0,.42) 100%); }
.as-crt__screen img,.as-crt__screen iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; object-fit: cover; }
.as-crt__scanlines { position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: .25; background: repeating-linear-gradient(to bottom,transparent 0 3px,rgba(243,238,228,.12) 4px); mix-blend-mode: screen; }
.as-crt__play { position: absolute; z-index: 4; inset: 50% auto auto 50%; display: grid; min-width: 180px; place-items: center; gap: 10px; border: 0; background: transparent; color: var(--as-ivory); transform: translate(-50%,-50%); }
.as-crt__play svg { width: 76px; fill: rgba(7,24,36,.72); stroke: var(--as-copper-light); stroke-width: 2; filter: drop-shadow(0 6px 20px rgba(0,0,0,.5)); transition: transform 160ms var(--as-ease-out),fill 160ms var(--as-ease-out); }
.as-crt__play:hover svg,.as-crt__play:focus-visible svg { fill: var(--as-copper); transform: scale(1.08); }
.as-crt__play span { padding: 8px 12px; background: rgba(4,18,27,.78); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.as-crt__caption { display: grid; grid-template-columns: 150px 1fr; gap: 24px; margin: -18px 7% 0; padding: 24px 28px; border: 1px solid rgba(200,120,72,.35); border-radius: 4px 28px 4px 4px; background: #06151e; }
.as-crt__caption span { color: var(--as-copper-light); font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.as-crt__caption strong { font-family: var(--as-display); font-size: clamp(1.35rem,1.8vw,2rem); line-height: 1.1; }
.as-vhs { min-width: 0; }
.as-vhs__deck { position: relative; margin-bottom: 36px; }
.as-vhs__deck svg { width: 100%; fill: #0a1d27; stroke: rgba(243,238,228,.38); stroke-width: 1.6; }
.as-vhs__deck span { position: absolute; right: 7%; bottom: 14%; font-size: 8px; letter-spacing: .14em; }
.as-vhs__heading > p:last-child { margin: 0 0 30px; color: rgba(243,238,228,.62); font-size: 13px; }
.as-vhs__heading .as-kicker { color: #d28a5a; }
.as-vhs__playlist { display: grid; gap: 10px; }
.as-vhs-tape { display: grid; grid-template-columns: 34px 82px minmax(0,1fr); align-items: center; gap: 14px; width: 100%; min-height: 108px; padding: 13px 16px; border: 1px solid rgba(243,238,228,.18); border-radius: 5px 22px 5px 5px; background: rgba(243,238,228,.045); color: var(--as-ivory); text-align: left; transition: transform 160ms var(--as-ease-out),background-color 160ms var(--as-ease-out),border-color 160ms var(--as-ease-out); }
.as-vhs-tape:hover,.as-vhs-tape:focus-visible,.as-vhs-tape.is-active { border-color: var(--as-copper-light); background: rgba(200,120,72,.13); transform: translateX(-6px); }
.as-vhs-tape:nth-child(even) { width: calc(100% - 18px); margin-left: 18px; }
.as-vhs-tape__number { color: var(--as-copper-light); font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.as-vhs-tape__reels { position: relative; display: flex; width: 82px; height: 50px; align-items: center; justify-content: space-around; border: 1px solid rgba(243,238,228,.3); border-radius: 7px; }
.as-vhs-tape__reels::before { position: absolute; inset: 6px 17px; border-block: 1px solid rgba(243,238,228,.2); content: ""; }
.as-vhs-tape__reels i { z-index: 1; width: 21px; height: 21px; border: 4px dotted var(--as-copper-light); border-radius: 50%; }
.as-vhs-tape__copy { display: grid; gap: 4px; min-width: 0; }
.as-vhs-tape__copy small,.as-vhs-tape__copy em { color: rgba(243,238,228,.52); font-size: 8px; font-style: normal; letter-spacing: .12em; text-transform: uppercase; }
.as-vhs-tape__copy strong { overflow: hidden; font-family: var(--as-display); font-size: 18px; font-weight: 550; line-height: 1.05; text-overflow: ellipsis; }
.screen-reader-text { position: absolute!important; width: 1px!important; height: 1px!important; overflow: hidden!important; clip: rect(1px,1px,1px,1px)!important; white-space: nowrap!important; }

@media (max-width: 1020px) {
	.as-video-meridian { display: none; }
  .as-video-studio { grid-template-columns: 1fr; }
  .as-crt { position: relative; top: auto; }
  .as-vhs { display: grid; grid-template-columns: 260px 1fr; gap: 24px 38px; }
  .as-vhs__heading { align-self: end; }
	.as-vhs__playlist { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; }
	.as-vhs-tape:nth-child(even) { width: 100%; margin-left: 0; }
}

@media (max-width: 560px) {
  .as-video-library-hero { padding: calc(128px + env(safe-area-inset-top)) 0 54px; }
  .as-video-studio { width: 100%; padding-inline: 14px; padding-bottom: calc(90px + env(safe-area-inset-bottom)); }
  .as-crt__screen { border-width: 4px; }
  .as-crt__play { min-width: 130px; }
  .as-crt__play svg { width: 58px; }
  .as-crt__caption { grid-template-columns: 1fr; gap: 6px; margin: -7px 4% 0; padding: 18px; }
  .as-vhs { grid-template-columns: 1fr; }
  .as-vhs__deck { width: min(330px,100%); margin-bottom: 0; }
  .as-vhs__playlist { grid-column: 1; grid-template-columns: 1fr; }
  .as-vhs-tape { grid-template-columns: 28px 68px minmax(0,1fr); min-height: 98px; padding: 11px 12px; }
  .as-vhs-tape__reels { width: 68px; height: 44px; }
  .as-vhs-tape:hover,.as-vhs-tape:focus-visible,.as-vhs-tape.is-active { transform: none; }
}

@media (max-width: 860px) {
  .as-book-reviews__header { grid-template-columns: 1fr; gap: 28px; }
  .as-book-reviews__header .as-kicker { grid-column: 1; }
  .as-book-reviews__rail { grid-template-columns: 1fr; }
  .as-review-note { min-height: auto; border-right: 0; border-bottom: 1px solid var(--as-line); }
  .as-review-note:last-child { border-bottom: 0; }
  .as-review-note > p:not(.as-review-note__outlet) { min-height: 0; max-width: 27ch; }
}

@media (max-width: 1180px) {
  .as-press-archive .as-press-row { grid-template-columns: 96px 150px minmax(0,1fr) auto; }
  .as-press-archive .as-press-row__arrow { display: none; }
  .as-video-portal { grid-template-columns: 120px minmax(0,1fr); }
  .as-video-portal .as-button { grid-column: 2; justify-self: start; }
}

@media (max-width: 860px) {
  h1 { letter-spacing: -.048em; }
  .as-page__hero, .as-single__hero { padding: calc(150px + env(safe-area-inset-top)) 0 74px; }
  .as-page__hero h1, .as-single__hero h1 { font-size: clamp(3.5rem, 11vw, 6.6rem); }
  .as-prose { padding-block: 70px 110px; }
  .as-press-archive .as-press-row { grid-template-columns: 92px minmax(0,1fr); }
  .as-press-archive .as-press-row__index { grid-column: 1; grid-row: 1 / span 2; }
  .as-press-archive .as-press-row__meta,
  .as-press-archive .as-press-row__title,
  .as-share--press-row { grid-column: 2; }
  .as-share--press-row { justify-self: start; margin-top: 12px; }
  .as-share--press-row .as-share__links { display: flex; width: auto; }
  .as-video-portal { margin-top: -90px; border-radius: 6px 42px 6px 42px; }
  .as-release-card, .as-release-card:nth-child(3n) { grid-column: span 12; }
}

@media (max-width: 560px) {
  body { line-height: 1.62; }
  h1 { font-size: clamp(3.15rem, 15.5vw, 5.15rem); line-height: .9; }
  h2 { line-height: .96; }
  .as-page__hero .as-lead, .as-releases__hero .as-lead { font-size: 1.32rem; }
  .as-prose { font-size: 1.02rem; line-height: 1.72; }
  .as-prose blockquote { margin-inline: 0; padding-left: 22px; font-size: 1.85rem; }
  .as-mobile-menu nav a:nth-child(even) { margin-left: 0; }
  .as-mobile-menu__panel::before { top: -110px; right: -210px; width: 430px; height: 430px; }
  .as-share { align-items: flex-start; flex-direction: column; }
  .as-share--press-row { flex-direction: row; align-items: center; }
  .as-share__link { width: 44px; height: 44px; }
  .as-share--press-row .as-share__links { gap: 7px; }
  .as-video-portal { grid-template-columns: 1fr; gap: 24px; margin-top: -72px; padding: 26px 22px; border-radius: 5px 34px 5px 34px; }
  .as-video-portal__signal { width: 105px; }
  .as-video-portal .as-button { grid-column: 1; width: 100%; }
  .as-video-portal + .as-press-filters { margin-top: 30px; }
  .as-press-archive .as-press-row { grid-template-columns: 1fr; }
  .as-press-archive .as-press-row__index,
  .as-press-archive .as-press-row__meta,
  .as-press-archive .as-press-row__title,
  .as-share--press-row { grid-column: 1; grid-row: auto; }
  .as-release-grid { padding-block: 54px 100px; }
  .as-release-card { min-height: auto; padding: 26px 22px; border-radius: 4px 32px 4px 4px; }
  .as-release-card h2 { font-size: 2.55rem; }
  .as-release-single__meta { line-height: 1.7; }
}

@media print {
  .as-header, .as-mobile-menu, .as-footer, .as-contact-cta { display: none !important; }
  body { background: #fff; color: #000; }
  a { text-decoration: none; }
}

/* Revisione 1.2 — archivio stampa completo e ricerca sempre visibile. */
.as-press-archive__toolbar-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 58px 0 24px; padding-bottom: 20px; border-bottom: 1px solid var(--as-line); }
.as-press-archive__toolbar-heading h2 { font-family: var(--as-display); font-size: clamp(3.2rem,6vw,6.5rem); font-weight: 520; line-height: .78; }
.as-press-archive__toolbar-heading .as-text-link { flex: 0 0 auto; }
.as-press-archive__toolbar-heading + .as-press-filters { position: sticky; z-index: 8; top: 18px; margin: 0 0 38px; border-color: var(--as-line); border-radius: 6px 30px 6px 6px; background: rgba(255,255,255,.94); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.as-press-archive .as-press-row[hidden] { display: none !important; }
.as-press-client-empty[hidden] { display: none; }
.as-press-client-empty { border-top: 1px solid var(--as-line); }
.as-press-archive__summary { padding-bottom: 18px; border-bottom: 1px solid var(--as-line); }
.as-press-filters input:focus,.as-press-filters select:focus { border-color: var(--as-copper); outline: 3px solid rgba(181,91,47,.16); outline-offset: 1px; }

@media (max-width: 900px) {
  .as-press-archive__toolbar-heading + .as-press-filters { position: relative; top: auto; }
}
@media (max-width: 620px) {
  .as-press-archive__toolbar-heading { align-items: flex-start; flex-direction: column; margin-top: 42px; }
  .as-press-archive__toolbar-heading h2 { font-size: 4.2rem; }
  .as-press-archive__toolbar-heading + .as-press-filters { margin-top: 0; }
}

/* Privacy e consenso: pannello editoriale visibile, simmetrico e revocabile. */
.as-footer__cookie { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-decoration: underline; text-decoration-color: var(--as-copper); text-underline-offset: 4px; }
.as-cookie[hidden],.as-cookie__settings[hidden] { display: none !important; }
.as-cookie { position: fixed; z-index: 10000; right: max(22px,env(safe-area-inset-right)); bottom: max(22px,env(safe-area-inset-bottom)); left: max(22px,env(safe-area-inset-left)); display: grid; grid-template-columns: minmax(0,1.35fr) minmax(250px,.65fr); gap: 24px 42px; max-width: 1120px; max-height: calc(100dvh - 44px); margin-inline: auto; overflow: auto; padding: clamp(24px,3vw,42px); border: 1px solid rgba(242,177,140,.55); border-radius: 7px 42px 7px 7px; background: rgba(4,18,27,.98); color: var(--as-ivory); box-shadow: 0 38px 110px rgba(0,0,0,.45); -webkit-backdrop-filter: blur(22px); backdrop-filter: blur(22px); }
.as-cookie__orbit { position: absolute; right: -150px; bottom: -220px; width: 520px; height: 350px; border: 1px solid rgba(242,177,140,.25); border-radius: 50%; pointer-events: none; transform: rotate(-20deg); }
.as-cookie__intro,.as-cookie__actions,.as-cookie__settings { position: relative; z-index: 1; }
.as-cookie__intro h2 { max-width: 14ch; margin: 8px 0 16px; font-family: var(--as-display); font-size: clamp(2.25rem,4vw,4.6rem); font-weight: 520; line-height: .91; }
.as-cookie__intro > p:not(.as-kicker) { max-width: 66ch; color: rgba(243,238,228,.82); font-size: 15px; line-height: 1.6; }
.as-cookie__intro > a { display: inline-block; margin-top: 15px; color: #ffd1b6; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-underline-offset: 4px; }
.as-cookie__actions { display: grid; align-content: center; gap: 10px; }
.as-cookie__actions .as-button,.as-cookie__settings .as-button { width: 100%; min-height: 50px; justify-content: center; }
.as-cookie__customise { min-height: 46px; border: 1px solid rgba(243,238,228,.35); border-radius: 999px; background: transparent; color: var(--as-ivory); font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.as-cookie__customise:hover,.as-cookie__customise:focus-visible { border-color: var(--as-copper-light); color: var(--as-copper-light); }
.as-cookie__settings { grid-column: 1/-1; display: grid; grid-template-columns: 1fr 1fr auto; gap: 12px; padding-top: 22px; border-top: 1px solid rgba(243,238,228,.2); }
.as-consent-option { position: relative; display: grid; grid-template-columns: 1fr 42px; gap: 16px; align-items: center; min-height: 96px; padding: 18px 20px; border: 1px solid rgba(243,238,228,.22); border-radius: 5px 22px 5px 5px; background: rgba(243,238,228,.055); }
.as-consent-option input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.as-consent-option span { display: grid; gap: 5px; }
.as-consent-option strong { font-family: var(--as-display); font-size: 1.35rem; font-weight: 560; }
.as-consent-option small { color: rgba(243,238,228,.7); font-size: 12px; line-height: 1.45; }
.as-consent-option i { position: relative; width: 42px; height: 24px; border: 1px solid rgba(243,238,228,.5); border-radius: 99px; }
.as-consent-option i::after { position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: var(--as-ivory); content: ""; transition: transform 160ms var(--as-ease-out),background-color 160ms var(--as-ease-out); }
.as-consent-option input:checked ~ i { border-color: var(--as-copper-light); background: rgba(200,120,72,.2); }
.as-consent-option input:checked ~ i::after { background: var(--as-copper-light); transform: translateX(18px); }
.as-consent-option input:focus-visible ~ i { outline: 3px solid var(--as-copper-light); outline-offset: 4px; }
.as-consent-option b { color: var(--as-copper-light); font-size: 9px; letter-spacing: .12em; }
.as-legal-review { margin: 70px 0 20px; padding: 26px 30px; border: 1px solid var(--as-copper); border-radius: 4px 28px 4px 4px; background: rgba(181,91,47,.08); font-size: 14px; line-height: 1.65; }
.as-legal-review strong { display: block; margin-bottom: 6px; font-family: var(--as-display); font-size: 1.45rem; }
.as-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; }

/* Contact 2.0: il ricontatto come protocollo editoriale, non come form generico. */
.as-contact-form-wrap { position: relative; gap: 18px; }
.as-contact-form__purpose { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 14px; align-items: start; padding: 18px 20px; border: 1px solid rgba(242,177,140,.36); border-radius: 4px 24px 4px 4px; background: rgba(200,120,72,.1); }
.as-contact-form__purpose > span { color: var(--as-copper-light); font-family: var(--as-display); font-size: 1.8rem; line-height: 1; }
.as-contact-form__purpose p { color: rgba(243,238,228,.9); font-size: 13px; line-height: 1.55; }
.as-contact-form { position: relative; overflow: hidden; border-radius: 5px 42px 5px 5px; background: linear-gradient(145deg,rgba(243,238,228,.085),rgba(243,238,228,.035)); box-shadow: 0 34px 90px rgba(0,0,0,.2); }
.as-contact-form::before { position: absolute; top: 0; right: 0; width: 120px; height: 1px; background: var(--as-copper-light); content: ""; }
.as-contact-required { margin-bottom: -3px; color: rgba(243,238,228,.68); font-size: 11px; line-height: 1.5; }
.as-contact-form input,.as-contact-form textarea { border-radius: 4px 18px 4px 4px; background: rgba(2,13,20,.7); transition: border-color 160ms var(--as-ease-out),box-shadow 160ms var(--as-ease-out),background-color 160ms var(--as-ease-out); }
.as-contact-form input:hover,.as-contact-form textarea:hover { border-color: rgba(242,177,140,.55); background: rgba(2,13,20,.82); }
.as-privacy-check { padding: 17px 18px; border: 1px solid rgba(243,238,228,.18); border-radius: 4px 20px 4px 4px; background: rgba(243,238,228,.045); }
.as-form-fallback { padding: 0 18px 16px; color: rgba(243,238,228,.78); font-size: 13px; }
.as-form-fallback a { color: var(--as-copper-light); font-weight: 800; text-underline-offset: 4px; }
.as-form-notice { border-radius: 4px 20px 4px 4px; }

/* Firma civica: il monogramma guida, città e bandiere costruiscono il contesto. */
.as-header__inner { grid-template-columns: minmax(360px,1.2fr) auto auto; gap: 24px; }
.as-brand { min-width: 0; }
.as-brand__mark { flex: 0 0 auto; }
.as-brand__civic { width: clamp(106px,8.7vw,138px); margin-left: 5px; padding-left: 13px; border-left: 1px solid rgba(243,238,228,.25); opacity: .58; }
.is-scrolled .as-brand__civic { border-left-color: rgba(7,24,36,.18); }
.as-civic { display: inline-flex; color: currentColor; }
.as-civic svg { display: block; width: 100%; height: auto; overflow: visible; }
.as-civic__city,.as-civic__line { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.as-civic__line { opacity: .35; }
.as-civic__it rect,.as-civic__eu rect { stroke: rgba(243,238,228,.4); stroke-width: .6; }
.is-scrolled .as-civic__it rect,.is-scrolled .as-civic__eu rect { stroke: rgba(7,24,36,.25); }
.as-civic__it-green { fill: #168a45; }.as-civic__it-white { fill: #fff; }.as-civic__it-red { fill: #cf3342; }
.as-civic__eu rect { fill: #173f91; }.as-civic__eu circle:not(.as-civic__eu-ring) { fill: #ffd447; stroke: none; }.as-civic__eu-ring { fill: none; stroke: #ffd447; stroke-width: .8; }
.as-mobile-menu__civic { width: min(100%,440px); margin: 8px 0 18px; color: var(--as-ivory); opacity: .85; }
.as-footer__brand { display: grid; grid-template-columns: 68px minmax(0,1fr); gap: 15px 24px; }
.as-footer__mark { grid-row: 1; }.as-footer__brand > p { grid-column: 2; }
.as-footer__civic,.as-footer__social { grid-column: 1/-1; }
.as-footer__civic { width: min(100%,360px); color: rgba(243,238,228,.82); }
.as-social-profiles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 26px; }
.as-social-profiles a { display: flex; min-width: 0; min-height: 54px; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid rgba(243,238,228,.22); border-radius: 4px 16px 4px 4px; color: inherit; text-decoration: none; transition: border-color 160ms var(--as-ease-out),background-color 160ms var(--as-ease-out),transform 160ms var(--as-ease-out); }
.as-social-profiles a:hover,.as-social-profiles a:focus-visible { border-color: var(--as-copper-light); background: rgba(200,120,72,.11); transform: translateY(-2px); }
.as-social-profiles svg { width: 24px; height: 24px; flex: 0 0 auto; }
.as-social-profiles span { display: grid; min-width: 0; }.as-social-profiles strong { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }.as-social-profiles small { overflow: hidden; opacity: .7; font-size: 9px; text-overflow: ellipsis; }
.as-footer__social { margin-top: 0; }.as-footer__social a { min-height: 42px; padding: 7px; }.as-footer__social span { display: none; }

@media (max-width: 1180px) {
  .as-brand__civic { width: 102px; }
}
@media (max-width: 980px) {
  .as-header__inner { grid-template-columns: minmax(0,1fr) auto auto; }
  .as-brand__civic { width: clamp(92px,16vw,150px); }
}
@media (max-width: 700px) {
  .as-brand__civic { display: none; }
  .as-social-profiles { grid-template-columns: 1fr; }
}

/* Navigazione iconica 1.2: strumento editoriale, non barra di link. */
.as-nav { gap: 7px; }
.as-nav__icon-link { position: relative; display: grid; width: 42px; height: 44px; place-items: center; padding: 0 !important; border: 0; border-bottom: 1px solid rgba(243,238,228,.25); border-radius: 0; background: transparent; color: inherit; }
.is-scrolled .as-nav__icon-link { border-bottom-color: rgba(7,24,36,.2); background: transparent; }
.as-nav__icon-link::after { display: none; }
.as-nav__icon-link svg { width: 21px; height: 21px; transition: transform 160ms var(--as-ease-out); }
.as-nav__icon-link > span { position: absolute; top: calc(100% + 9px); left: 50%; width: max-content; max-width: 180px; padding: 7px 10px; border: 1px solid var(--as-line-light); border-radius: 3px 11px 3px 3px; background: var(--as-ink); color: var(--as-ivory); box-shadow: 0 14px 34px rgba(0,0,0,.2); font-size: 9px; font-weight: 800; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; opacity: 0; pointer-events: none; transform: translate(-50%,-5px); transition: opacity 150ms var(--as-ease-out),transform 150ms var(--as-ease-out); }
.as-nav__icon-link:hover,.as-nav__icon-link:focus-visible { border-color: var(--as-copper-light); color: var(--as-copper-light); }
.as-nav__icon-link:hover svg,.as-nav__icon-link:focus-visible svg { transform: translateY(-2px); }
.as-nav__icon-link:hover > span,.as-nav__icon-link:focus-visible > span { opacity: 1; transform: translate(-50%,0); }
.as-nav__icon-link.is-featured { border-bottom: 2px solid var(--as-copper-light); color: var(--as-copper-light); }.as-nav__icon-link.is-featured::before { position: absolute; top: 4px; right: 3px; width: 5px; height: 5px; border-radius: 50%; background: var(--as-copper-light); content: ""; }
.as-mobile-menu nav a.is-featured { margin: 8px -10px; padding-inline: 14px; border: 1px solid rgba(242,177,140,.48); border-radius: 5px 24px 5px 5px; background: rgba(200,120,72,.12); }
.as-mobile-menu nav a.is-featured .as-mobile-nav-icon { color: var(--as-copper-light); }
@media (max-width: 1180px) and (min-width: 701px) {
  .as-menu-button { min-width: 128px; min-height: 54px; padding: 0 18px; border: 1px solid currentColor; border-radius: 5px 20px 5px 5px; background: rgba(243,238,228,.05); }
  .as-mobile-menu__panel { width: min(680px,88vw); }
  .as-mobile-menu nav { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; border-top: 0; }
  .as-mobile-menu nav a { grid-template-columns: 30px 46px minmax(0,1fr); min-height: 102px; padding: 14px; border: 1px solid var(--as-line-light); border-radius: 5px 24px 5px 5px; }
  .as-mobile-menu nav a .as-arrow { display: none; }
  .as-mobile-menu nav a strong { font-size: clamp(1.35rem,3vw,2rem); }
}
@media (max-width: 560px) {
  .as-mobile-menu nav { margin-top: 22px; }
  .as-mobile-menu nav a { min-height: 66px; }
  .as-mobile-menu__civic { margin-bottom: 6px; }
}

/* Finestra videoteca: proporzione audiovisiva e controllo completo del focus. */
.as-video-modal-is-open { overflow: hidden; }
.as-video-modal[hidden] { display: none; }
.as-video-modal { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; padding: max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left)); background: rgba(2,10,16,.88); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.as-video-modal__dialog { display: grid; grid-template-rows: auto minmax(0,1fr); width: min(1480px,calc(100vw - 40px)); height: min(900px,calc(100dvh - 40px)); overflow: hidden; border: 1px solid rgba(242,177,140,.5); border-radius: 6px 34px 6px 6px; background: var(--as-ink); color: var(--as-ivory); box-shadow: 0 60px 180px rgba(0,0,0,.58); }
.as-video-modal__bar { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 18px; min-height: 62px; padding: 9px 13px 9px 20px; border-bottom: 1px solid var(--as-line-light); background: linear-gradient(90deg,rgba(200,120,72,.13),transparent 35%); }
.as-video-modal__bar > div { display: flex; align-items: baseline; gap: 12px; }.as-video-modal__bar > div span { color: var(--as-copper-light); font-size: 9px; font-weight: 800; letter-spacing: .16em; }.as-video-modal__bar > div strong { font-family: var(--as-display); font-size: 1.55rem; font-weight: 560; }
.as-video-modal__bar > a { color: rgba(243,238,228,.72); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.as-video-modal__bar button { display: inline-flex; min-width: 108px; min-height: 44px; align-items: center; justify-content: center; gap: 10px; border: 1px solid var(--as-line-light); border-radius: 4px 14px 4px 4px; background: transparent; color: inherit; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }.as-video-modal__bar button span { font-size: 19px; line-height: 1; }
.as-video-modal__viewport { min-height: 0; background: #041019; }.as-video-modal__viewport iframe { display: block; width: 100%; height: 100%; border: 0; background: var(--as-ink); }
.as-video-popup-view .as-header,.as-video-popup-view .as-footer,.as-video-popup-view > .as-cookie-trigger { display: none !important; }
.as-video-popup-view .as-video-library-hero { min-height: auto; padding: 42px 0 28px; }.as-video-popup-view .as-video-library-hero h1 { font-size: clamp(3rem,5vw,5.4rem); }.as-video-popup-view .as-video-library-hero > .as-shell > p:last-child { max-width: 900px; }
.as-video-popup-view .as-video-studio { padding-top: 30px; padding-bottom: 50px; }
.as-press-modal-is-open { overflow: hidden; }
.as-press-modal[hidden] { display: none; }
.as-press-modal { position: fixed; inset: 0; z-index: 1190; display: grid; place-items: center; padding: max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left)); background: rgba(2,10,16,.88); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.as-press-modal__dialog { display: grid; grid-template-rows: auto minmax(0,1fr); width: min(1480px,calc(100vw - 40px)); height: min(930px,calc(100dvh - 40px)); overflow: hidden; border: 1px solid rgba(242,177,140,.5); border-radius: 6px 34px 6px 6px; background: var(--as-ivory); color: var(--as-ink); box-shadow: 0 60px 180px rgba(0,0,0,.58); }
.as-press-modal__bar { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 18px; min-height: 62px; padding: 9px 13px 9px 20px; border-bottom: 1px solid var(--as-line-light); background: linear-gradient(90deg,rgba(200,120,72,.16),transparent 35%),var(--as-ink); color: var(--as-ivory); }
.as-press-modal__bar > div { display: flex; align-items: baseline; gap: 12px; }.as-press-modal__bar > div span { color: var(--as-copper-light); font-size: 9px; font-weight: 800; letter-spacing: .16em; }.as-press-modal__bar > div strong { font-family: var(--as-display); font-size: 1.55rem; font-weight: 560; }
.as-press-modal__bar > a { color: rgba(243,238,228,.72); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.as-press-modal__bar button { display: inline-flex; min-width: 108px; min-height: 44px; align-items: center; justify-content: center; gap: 10px; border: 1px solid var(--as-line-light); border-radius: 4px 14px 4px 4px; background: transparent; color: inherit; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }.as-press-modal__bar button span { font-size: 19px; line-height: 1; }
.as-press-modal__viewport { min-height: 0; background: var(--as-ivory); }.as-press-modal__viewport iframe { display: block; width: 100%; height: 100%; border: 0; background: var(--as-ivory); }
.as-press-popup-view .as-header,.as-press-popup-view .as-footer,.as-press-popup-view > .as-cookie-trigger { display: none !important; }.as-press-popup-view .as-archive-hero { padding-top: 42px; }.as-press-popup-view .as-archive { padding-top: 30px; }
.as-press-row { content-visibility: auto; contain-intrinsic-size: auto 118px; }
@media (max-width: 760px) {
  .as-video-modal { padding: 0; }
  .as-video-modal__dialog { width: 100vw; height: 100dvh; border: 0; border-radius: 0; }
  .as-video-modal__bar { grid-template-columns: minmax(0,1fr) auto; padding-top: max(9px,env(safe-area-inset-top)); padding-right: max(10px,env(safe-area-inset-right)); padding-left: max(14px,env(safe-area-inset-left)); }
  .as-video-modal__bar > a { display: none; }.as-video-modal__bar button { min-width: 48px; padding: 0 11px; }.as-video-modal__bar button:not(:focus) { font-size: 0; }
  .as-video-popup-view .as-video-library-hero { padding: 26px 0 18px; }.as-video-popup-view .as-video-library-hero h1 { font-size: clamp(2.7rem,12vw,4.4rem); }
  .as-press-modal { padding: 0; }.as-press-modal__dialog { width: 100vw; height: 100dvh; border: 0; border-radius: 0; }.as-press-modal__bar { grid-template-columns: minmax(0,1fr) auto; padding-top: max(9px,env(safe-area-inset-top)); padding-right: max(10px,env(safe-area-inset-right)); padding-left: max(14px,env(safe-area-inset-left)); }.as-press-modal__bar > a { display: none; }.as-press-modal__bar button { min-width: 48px; padding: 0 11px; }.as-press-modal__bar button:not(:focus) { font-size: 0; }
}

@media (max-width: 780px) {
  .as-cookie { grid-template-columns: 1fr; max-height: calc(100dvh - 24px); padding: 24px; }
  .as-cookie__settings { grid-template-columns: 1fr; }
  .as-cookie__settings .as-button { min-height: 54px; }
}
@media (max-width: 520px) {
  .as-cookie { inset: auto max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left)); gap: 18px; max-height: calc(100dvh - 20px); border-radius: 5px 30px 5px 5px; }
  .as-cookie__intro h2 { font-size: 2.65rem; }
  .as-consent-option { grid-template-columns: 1fr 38px; padding: 16px; }
}

/* Ultime uscite: tre dossier ordinati per data, coerenti con la spina editoriale. */
.as-latest-press { margin: clamp(38px,6vw,76px) 0 0; }.as-latest-press--archive { margin-bottom: clamp(52px,7vw,92px); }
.as-latest-press__heading { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(280px,.72fr); gap: clamp(28px,5vw,84px); align-items: end; margin-bottom: 28px; padding-bottom: 22px; border-bottom: 1px solid var(--as-line); }.as-latest-press__heading h2,.as-latest-press__heading h3 { max-width: 720px; margin: 5px 0 0; font-family: var(--as-display); font-size: clamp(2.7rem,5.2vw,5.6rem); font-weight: 550; line-height: .9; letter-spacing: -.045em; }.as-latest-press--archive .as-latest-press__heading h2 { font-size: clamp(2.5rem,4.3vw,4.8rem); }.as-latest-press__heading > p { max-width: 530px; margin: 0; color: #47545a; font-size: clamp(1rem,1.3vw,1.16rem); line-height: 1.72; }
.as-latest-press__grid { display: grid; grid-template-columns: minmax(0,1.2fr) repeat(2,minmax(0,1fr)); gap: 14px; }
.as-latest-press-card { position: relative; display: flex; min-height: 490px; flex-direction: column; overflow: hidden; padding: clamp(24px,3vw,38px); border: 1px solid var(--as-line); border-radius: 6px 34px 6px 6px; background: #fffdf8; box-shadow: 0 24px 70px rgba(7,24,36,.08); transition: transform 190ms var(--as-ease-out),box-shadow 190ms var(--as-ease-out),border-color 190ms var(--as-ease-out); }.as-latest-press-card::before { position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--as-copper); content: ""; }.as-latest-press-card:first-child { border-color: rgba(242,177,140,.42); background: radial-gradient(circle at 92% 8%,rgba(200,120,72,.2),transparent 34%),var(--as-ink); color: var(--as-ivory); }.as-latest-press-card:hover { z-index: 1; border-color: var(--as-copper); box-shadow: 0 34px 90px rgba(7,24,36,.16); transform: translateY(-6px); }
.as-latest-press-card__top { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--as-line); color: #5f696e; font-size: 9px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }.as-latest-press-card:first-child .as-latest-press-card__top { border-color: var(--as-line-light); color: rgba(243,238,228,.7); }.as-latest-press-card__top > span { display: grid; width: 38px; aspect-ratio: 1; place-items: center; border: 1px solid currentColor; border-radius: 50%; color: var(--as-copper); }
.as-latest-press-card__outlet { margin: 24px 0 12px; color: #7a4a32; font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }.as-latest-press-card:first-child .as-latest-press-card__outlet { color: var(--as-copper-light); }.as-latest-press-card h3,.as-latest-press-card h4 { margin: 0; font-family: var(--as-display); font-size: clamp(2rem,3vw,3.25rem); font-weight: 550; line-height: .98; letter-spacing: -.035em; }.as-latest-press-card h3 a,.as-latest-press-card h4 a { color: inherit; text-decoration: none; }.as-latest-press-card h3 a:hover,.as-latest-press-card h3 a:focus-visible,.as-latest-press-card h4 a:hover,.as-latest-press-card h4 a:focus-visible { text-decoration: underline; text-decoration-color: var(--as-copper); text-underline-offset: 6px; }
.as-latest-press-card__excerpt { display: -webkit-box; overflow: hidden; margin: 22px 0 0; color: #566167; line-height: 1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 4; }.as-latest-press-card:first-child .as-latest-press-card__excerpt { color: rgba(243,238,228,.74); }.as-latest-press-card__footer { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-top: auto; padding-top: 28px; color: #566167; font-size: 9px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }.as-latest-press-card:first-child .as-latest-press-card__footer { color: rgba(243,238,228,.72); }.as-latest-press-card__footer > a { display: inline-flex; min-height: 44px; align-items: center; gap: 7px; color: inherit; text-decoration: none; }.as-latest-press-card__footer .as-arrow { width: 17px; color: var(--as-copper); }.as-latest-press-card .as-share { margin-top: 14px; }
@media (max-width: 1040px) { .as-latest-press__grid { grid-template-columns: 1fr 1fr; }.as-latest-press-card:first-child { grid-column: 1 / -1; min-height: 410px; }.as-latest-press-card { min-height: 440px; } }
@media (max-width: 720px) { .as-latest-press__heading { grid-template-columns: 1fr; gap: 18px; }.as-latest-press__grid { grid-template-columns: 1fr; }.as-latest-press-card:first-child { grid-column: auto; }.as-latest-press-card { min-height: 0; padding: 24px 22px 26px; border-radius: 5px 28px 5px 5px; }.as-latest-press-card__excerpt { -webkit-line-clamp: 3; }.as-latest-press-card__footer { align-items: flex-start; flex-direction: column; gap: 4px; } }

@media print {
  .as-cookie,.as-footer__cookie { display: none !important; }
}

/* Navigazione 1.4: indice iconico desktop, tavola editoriale tablet, atlante mobile. */
.as-nav { padding: 4px 8px; border: 1px solid rgba(243,238,228,.2); border-radius: 5px 18px 5px 5px; background: rgba(3,13,20,.14); backdrop-filter: blur(12px); }.is-scrolled .as-nav { border-color: rgba(7,24,36,.14); background: rgba(255,253,248,.64); }.as-nav__icon-link { width: 46px; height: 46px; }
.as-language { min-height: 46px; border-color: color-mix(in srgb,currentColor 44%,transparent); border-radius: 5px 18px 5px 5px; }.as-language a { width: 34px; height: 34px; border-radius: 3px 12px 3px 3px; }
.as-mobile-language { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 14px; margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--as-line-light); }.as-mobile-language > span { color: rgba(243,238,228,.62); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.as-mobile-language > div { display: grid; grid-template-columns: repeat(3,54px); gap: 8px; }.as-mobile-language a { display: grid; min-height: 48px; place-items: center; border: 1px solid var(--as-line-light); border-radius: 4px 15px 4px 4px; color: var(--as-ivory); font-size: 10px; font-weight: 850; text-decoration: none; }.as-mobile-language a.is-active { border-color: var(--as-copper-light); background: var(--as-copper-light); color: var(--as-ink); }
@media (min-width: 1420px) { .as-header__inner { grid-template-columns: minmax(390px,1.1fr) auto auto; }.as-nav__icon-link { display: inline-grid; width: auto; min-width: 54px; grid-template-columns: 22px auto; gap: 8px; padding: 0 12px !important; }.as-nav__icon-link > span { position: static; width: auto; max-width: 112px; overflow: visible; padding: 0; border: 0; background: transparent; color: inherit; box-shadow: none; clip-path: none; font-size: 8px; line-height: 1.1; opacity: .74; pointer-events: auto; transform: none; }.as-nav__icon-link:hover > span,.as-nav__icon-link:focus-visible > span { opacity: 1; transform: none; } }
@media (max-width: 1180px) and (min-width: 701px) { .as-header__inner { grid-template-columns: minmax(0,1fr) auto auto; }.as-language { display: flex; }.as-mobile-menu__close { position: sticky; z-index: 2; top: 0; background: linear-gradient(var(--as-ink) 75%,transparent); } }
@media (max-width: 700px) { .as-mobile-language { grid-template-columns: 1fr; }.as-mobile-language > div { grid-template-columns: repeat(3,1fr); }.as-mobile-menu__close { position: sticky; z-index: 2; top: 0; background: linear-gradient(var(--as-ink) 78%,transparent); } }

/* Field Monitor 1993 / Orbit Deck: reinterpretazione industriale originale e touch-ready. */
.as-crt__cabinet { display: block; width: 100%; filter: drop-shadow(0 40px 54px rgba(0,0,0,.48)); }
.as-crt__screen { top: 13.2%; left: 9.75%; width: 67.35%; aspect-ratio: 606/444; border: 6px solid #05090b; border-radius: 6%/8%; background: #000; box-shadow: inset 0 0 42px rgba(0,0,0,.8),0 0 0 2px rgba(138,148,154,.28); }
.as-crt__screen img,.as-crt__screen iframe { background: #000; }
.as-crt__caption { grid-template-columns: 120px minmax(0,1fr) auto; align-items: center; }
.as-crt__caption > a { display: inline-flex; min-height: 44px; align-items: center; padding: 0 14px; border: 1px solid rgba(243,238,228,.3); border-radius: 4px 14px 4px 4px; color: var(--as-ivory); font-size: 9px; font-weight: 850; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; white-space: nowrap; }.as-crt__caption > a:hover,.as-crt__caption > a:focus-visible { border-color: var(--as-copper-light); background: var(--as-copper-light); color: var(--as-ink); }
.as-share--video { justify-content: flex-end; margin: 14px 7% 0; color: var(--as-ivory); }.as-share--video .as-share__label { color: rgba(243,238,228,.62); }.as-share--video .as-share__link { width: 44px; height: 44px; border-color: rgba(243,238,228,.28); color: var(--as-ivory); }.as-share--video .as-share__link:hover,.as-share--video .as-share__link:focus-visible { border-color: var(--as-copper-light); background: var(--as-copper-light); color: var(--as-ink); }
.as-vhs__deck svg { display: block; width: 100%; filter: drop-shadow(0 22px 34px rgba(0,0,0,.34)); }
@media (max-width: 560px) { .as-crt__screen { border-width: 4px; }.as-crt__play svg { width: 60px; height: 60px; }.as-crt__caption { grid-template-columns: 1fr; gap: 8px; margin: -4px 2% 0; padding: 18px; }.as-crt__caption > a { width: 100%; justify-content: center; margin-top: 4px; }.as-share--video { align-items: flex-start; flex-direction: column; margin-inline: 2%; }.as-vhs__deck { width: min(100%,520px); margin-inline: auto; } }

/* Sintonia CRT: disturbo breve al cambio documento, mai decorazione continua. */
.as-crt__static { position: absolute; inset: 0; z-index: 6; opacity: 0; pointer-events: none; background: repeating-radial-gradient(circle at 28% 44%,rgba(255,255,255,.34) 0 1px,rgba(0,0,0,.62) 1px 3px),repeating-linear-gradient(90deg,rgba(40,220,208,.22) 0 2px,rgba(220,55,82,.2) 2px 4px,transparent 4px 7px); background-size: 5px 4px,13px 100%; mix-blend-mode: screen; }
.as-video-studio.is-tuning .as-crt__static { animation: as-crt-static 540ms steps(7,end) both; }
.as-video-studio.is-tuning .as-crt__screen img { animation: as-crt-picture-shift 540ms steps(6,end) both; }
.as-video-studio.is-tuning .as-crt__caption { animation: as-crt-caption-pulse 540ms var(--as-ease-out) both; }
@keyframes as-crt-static { 0%{opacity:.9;transform:translateX(-2%);filter:contrast(1.8)} 18%{opacity:.42;transform:translate(2%,-1%)} 36%{opacity:.88;transform:translate(-1%,1%);background-position:9px 5px,4px 0} 64%{opacity:.3;transform:translateX(1%)} 82%{opacity:.65;transform:translate(-.5%)} 100%{opacity:0;transform:none} }
@keyframes as-crt-picture-shift { 0%{filter:grayscale(1) contrast(1.8);transform:translateX(3%)} 24%{filter:hue-rotate(45deg) contrast(1.35);transform:translateX(-2%)} 58%{filter:saturate(.2) contrast(1.5);transform:translateY(1%)} 100%{filter:none;transform:none} }
@keyframes as-crt-caption-pulse { 0%,45%{border-color:var(--as-copper-light)} 100%{border-color:rgba(200,120,72,.35)} }
@media (prefers-reduced-motion: reduce) { .as-video-studio.is-tuning .as-crt__static,.as-video-studio.is-tuning .as-crt__screen img,.as-video-studio.is-tuning .as-crt__caption { animation: none !important; } }

/* Release 1.4 finale: spina editoriale dominante, rame segnale raro, archivi da inserto culturale. */
.as-university { --as-chapter-bg: var(--as-ink); --as-chapter-color: var(--as-copper-light); border-block: 1px solid rgba(200,120,72,.3); background: #061721; }
.as-university .as-kicker--light { color: var(--as-copper-light); }
.as-university.as-section[data-chapter] > .as-shell::after { border-color: rgba(200,120,72,.62); }
.as-university__mesh { opacity: .13; background-image: linear-gradient(rgba(200,120,72,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(200,120,72,.35) 1px,transparent 1px); }
.as-university__arc { border-color: rgba(200,120,72,.72); }
.as-university__arc::before,.as-university__arc::after { border-color: rgba(200,120,72,.28); }
.as-university__seal { border-color: var(--as-copper-light); box-shadow: inset 0 0 0 18px rgba(200,120,72,.035); }
.as-university__seal span { color: var(--as-copper-light); }
.as-university .as-meta-line { border-color: rgba(200,120,72,.42); }

.as-latest-press__grid { grid-template-columns: repeat(12,minmax(0,1fr)); grid-template-rows: repeat(2,minmax(250px,auto)); gap: 0; border-block: 1px solid var(--as-line); }
.as-latest-press-card { min-height: 0; border: 0; border-left: 1px solid var(--as-line); border-radius: 0; background: transparent; box-shadow: none; transition: background-color 190ms var(--as-ease-out),transform 190ms var(--as-ease-out),border-color 190ms var(--as-ease-out); }
.as-latest-press-card:first-child { grid-column: 1 / 8; grid-row: 1 / 3; min-height: 560px; border-left-color: var(--as-copper); background: var(--as-ink); }
.as-latest-press-card:nth-child(2) { grid-column: 8 / -1; grid-row: 1; border-bottom: 1px solid var(--as-line); }
.as-latest-press-card:nth-child(3) { grid-column: 8 / -1; grid-row: 2; }
.as-latest-press-card:nth-child(n+2) :is(h3,h4) { max-width: 19ch; font-size: clamp(1.8rem,2.5vw,2.7rem); }
.as-latest-press-card:nth-child(n+2) .as-latest-press-card__excerpt { margin-top: 14px; -webkit-line-clamp: 2; }
.as-latest-press-card:nth-child(n+2) .as-latest-press-card__footer { padding-top: 18px; }
.as-latest-press-card:hover { border-left-color: var(--as-copper); background-color: rgba(200,120,72,.045); box-shadow: none; transform: translateX(6px); }
.as-latest-press-card:first-child:hover { background-color: #0a202d; }

.as-press-archive__content { position: relative; padding-left: 42px; }
.as-press-archive__content::before { position: absolute; top: 58px; bottom: 110px; left: 0; width: 1px; background: linear-gradient(var(--as-copper),var(--as-line) 22%,var(--as-line) 84%,transparent); content: ""; }
.as-press-archive__content::after { position: absolute; top: 82px; left: -7px; color: #75442f; content: "AS–05 / ARCHIVE COORDINATES"; font: 800 7px/1 var(--as-sans); letter-spacing: .16em; text-transform: uppercase; writing-mode: vertical-rl; }
.as-press-archive__toolbar-heading + .as-press-filters { padding: 20px 0; border-block: 1px solid var(--as-line); border-inline: 0; border-radius: 0; box-shadow: none; }
.as-press-filters input,.as-press-filters select { border-radius: 0; }
.as-press__list .as-press-row:nth-child(3n+2) .as-press-row__title { padding-left: clamp(10px,3vw,46px); }
.as-press__list .as-press-row:nth-child(3n) .as-press-row__meta { transform: translateY(14px); }

.as-video-meridian { z-index: 3; top: 166px; bottom: 74px; left: calc((100vw - var(--as-shell))/2 - 30px); grid-template-rows: 46px 1fr auto; }
.as-video-meridian span { width: 46px; height: 46px; box-shadow: 0 0 0 8px rgba(200,120,72,.045); }
.as-video-meridian i { width: 2px; background: linear-gradient(to bottom,var(--as-copper-light),rgba(243,238,228,.24),transparent); }
.as-video-meridian small { color: rgba(243,238,228,.64); letter-spacing: .14em; }
.as-video-library-hero > .as-shell { position: relative; padding-left: 42px; border-left: 1px solid rgba(200,120,72,.36); }
.as-video-library-hero > .as-shell::before { position: absolute; top: 8px; left: 0; width: 26px; height: 1px; background: var(--as-copper); content: ""; }
.as-video-studio { position: relative; grid-template-columns: minmax(0,1.26fr) minmax(370px,.74fr); gap: clamp(42px,5.5vw,88px); padding: 18px 0 140px 42px; border-left: 1px solid rgba(200,120,72,.22); }
.as-video-studio::before { position: absolute; top: 18px; left: -22px; color: rgba(243,238,228,.46); content: "AS–06 / OBSERVATORY INSTRUMENT"; font: 750 7px/1 var(--as-sans); letter-spacing: .16em; text-transform: uppercase; transform: rotate(-90deg) translateX(-100%); transform-origin: left top; }
.as-share--video .as-share__label { color: #dca27e; }

@media (max-width: 1040px) {
  .as-latest-press__grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .as-latest-press-card:first-child { grid-column: 1 / -1; grid-row: auto; min-height: 410px; }
  .as-latest-press-card:nth-child(2),.as-latest-press-card:nth-child(3) { grid-column: auto; grid-row: auto; min-height: 410px; }
  .as-latest-press-card:nth-child(2) { border-bottom: 0; }
}
@media (max-width: 1020px) {
  .as-video-library-hero > .as-shell,.as-video-studio { padding-left: 0; border-left: 0; }
  .as-video-library-hero > .as-shell::before,.as-video-studio::before { display: none; }
}
@media (max-width: 720px) {
  .as-latest-press__grid { grid-template-columns: 1fr; }
  .as-latest-press-card:first-child,.as-latest-press-card:nth-child(2),.as-latest-press-card:nth-child(3) { grid-column: auto; min-height: 0; }
  .as-latest-press-card { border-bottom: 1px solid var(--as-line); border-radius: 0; }
  .as-press-archive__content { padding-left: 0; }
  .as-press-archive__content::before,.as-press-archive__content::after { display: none; }
  .as-press__list .as-press-row:nth-child(3n+2) .as-press-row__title { padding-left: 0; }
  .as-press__list .as-press-row:nth-child(3n) .as-press-row__meta { transform: none; }
}

/* Release 1.4.1: Videoteca touch, monumenti bianchi e palette stampa ad alto contrasto. */
.as-header:not(.is-scrolled) .as-brand__civic,.as-mobile-menu__civic,.as-footer__civic { color: #fff; opacity: .9; }
.as-header:not(.is-scrolled) .as-brand__civic .as-civic__city,.as-header:not(.is-scrolled) .as-brand__civic .as-civic__line,.as-mobile-menu__civic .as-civic__city,.as-mobile-menu__civic .as-civic__line,.as-footer__civic .as-civic__city,.as-footer__civic .as-civic__line { stroke: #fff; }

.as-video-modal__viewport { overflow: hidden; overscroll-behavior: contain; }
.as-crt { scroll-margin-top: max(18px,env(safe-area-inset-top)); }
.as-crt__screen iframe { touch-action: manipulation; }
.as-vhs__heading { display: grid; gap: 12px; }
.as-vhs__heading > * { margin: 0; }
.as-vhs__heading .as-kicker { color: #e0a078; }
.as-vhs-tape { touch-action: manipulation; }
@media (max-width: 1020px) {
	.as-video-studio { gap: 42px; padding-bottom: calc(110px + env(safe-area-inset-bottom)); }
	.as-crt { width: min(100%,760px); justify-self: center; }
	.as-vhs { display: grid; grid-template-columns: minmax(210px,.58fr) minmax(0,1.42fr); gap: 24px 32px; align-items: end; }
	.as-vhs__deck { margin: 0; }
	.as-vhs__heading { align-self: end; padding: 0 0 18px; border-bottom: 1px solid rgba(227,161,123,.32); }
	.as-vhs__playlist { grid-column: 1/-1; grid-template-columns: 1fr 1fr; gap: 10px; }
	.as-vhs-tape { min-height: 116px; }
}
@media (max-width: 700px) {
	.as-video-studio { gap: 34px; padding-inline: max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right)); }
	.as-vhs { grid-template-columns: 1fr; gap: 22px; }
	.as-vhs__heading { padding-bottom: 18px; }
	.as-vhs__playlist { grid-column: 1; grid-template-columns: 1fr; gap: 8px; }
	.as-vhs-tape { min-height: 104px; }
}
@media (max-width: 430px) {
	.as-crt__caption { margin-inline: 0; border-radius: 3px 18px 3px 3px; }
	.as-share--video { width: 100%; margin-inline: 0; padding-inline: 2px; }
	.as-vhs-tape { grid-template-columns: 26px 64px minmax(0,1fr); padding-inline: 10px; }
	.as-vhs-tape__reels { width: 64px; }
}

.as-press-archive { --as-press-paper: #f6f0e5; --as-press-mist: #e8efec; --as-press-mineral: #315c63; background: var(--as-press-paper); }
.as-press-archive__hero { background: radial-gradient(circle at 82% 12%,rgba(227,161,123,.22),transparent 31%),linear-gradient(135deg,#061721 0%,#0a2a34 100%); }
.as-press-archive__toolbar-heading + .as-press-filters { border-color: rgba(49,92,99,.28); background: rgba(250,246,238,.97); }
.as-press-filters label,.as-press-archive__summary span,.as-press-row__meta,.as-press-row__title p { color: #405c61; }
.as-press-filters input,.as-press-filters select { border-color: #b8c8c5; background: #fffdf8; }
.as-press-filters input:focus,.as-press-filters select:focus { border-color: #a6532d; outline: 3px solid rgba(166,83,45,.16); outline-offset: 1px; }
.as-press-archive__summary strong,.as-press-row__index { color: #9b4d2b; }
.as-press__list,.as-press-row,.as-press-archive__summary { border-color: rgba(49,92,99,.24); }
.as-press__list .as-press-row:nth-child(odd) { background: linear-gradient(90deg,rgba(49,92,99,.045),transparent 72%); }
.as-press__list .as-press-row:hover { background: linear-gradient(90deg,rgba(227,161,123,.16),rgba(232,239,236,.72)); }
.as-press-row__meta strong { color: #123c44; }

.as-latest-press-card:first-child { background: linear-gradient(145deg,#061721 0%,#0b3038 100%); }
.as-latest-press-card:nth-child(2) { border-left-color: #315c63; background: #e8efec; }
.as-latest-press-card:nth-child(3) { border-left-color: #bd6d42; background: #fbf3e8; }
.as-latest-press-card:nth-child(n+2) .as-latest-press-card__top { color: #405c61; }
.as-latest-press-card:nth-child(2) .as-latest-press-card__outlet { color: #315c63; }
.as-latest-press-card:nth-child(3) .as-latest-press-card__outlet { color: #9b4d2b; }
.as-latest-press-card:nth-child(n+2) .as-latest-press-card__excerpt { color: #40565b; }
.as-latest-press-card:nth-child(2):hover { background-color: #dde9e5; }
.as-latest-press-card:nth-child(3):hover { background-color: #f7e8d8; }
.as-latest-press-card__ai-summary { margin-top: 20px; padding-top: 18px; border-top: 1px solid rgba(49,92,99,.26); }
.as-latest-press-card__ai-label { display: flex; align-items: center; gap: 9px; margin: 0 0 10px; color: #315c63; font-size: 8px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.as-latest-press-card__ai-label > span { display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: 8px; }
.as-latest-press-card__ai-summary > p:last-child { display: -webkit-box; overflow: hidden; margin: 0; color: #263f45; font-size: 13px; line-height: 1.58; -webkit-box-orient: vertical; -webkit-line-clamp: 4; }
.as-latest-press-card:first-child .as-latest-press-card__ai-summary { border-color: rgba(227,161,123,.34); }
.as-latest-press-card:first-child .as-latest-press-card__ai-label { color: #f0b08a; }
.as-latest-press-card:first-child .as-latest-press-card__ai-summary > p:last-child { color: rgba(255,255,255,.86); -webkit-line-clamp: 6; }
@media (max-width: 720px) {
	.as-latest-press-card:nth-child(2),.as-latest-press-card:nth-child(3) { border-left-width: 3px; }
	.as-latest-press-card__ai-summary > p:last-child { -webkit-line-clamp: 5; }
}
