/* SALA STAMPA /sala-stampa (pages/press.php, lib/press.php, chat #632, 24 Oct 2026). Loaded only by the press room. */
.pr-hero { background: linear-gradient(135deg, var(--sea-deep), var(--sea) 62%, #1a8a8f); color: #fff; padding: clamp(2rem, 5vw, 3.6rem) 0; position: relative; overflow: hidden; }
.pr-hero::after { content: ""; position: absolute; width: 520px; height: 520px; border-radius: 50%; background: var(--sun); opacity: .12; right: -160px; top: -220px; pointer-events: none; }
.pr-hero-grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 2rem 3rem; align-items: center; position: relative; z-index: 1; }
.pr-hero h1 { color: #fff; }
.pr-hero .eyebrow { color: var(--sun); }
.pr-hero .lead { color: rgba(255, 255, 255, .9); }
.pr-hero .btn small { font-weight: 500; opacity: .85; font-size: .82rem; }
.pr-kit-note { font-size: .9rem; color: rgba(255, 255, 255, .8); margin: .9rem 0 0; max-width: 60ch; }
.pr-facts { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
.pr-facts li { background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .18); border-radius: var(--radius); padding: 1rem 1.1rem; }
.pr-facts b { display: block; font-family: var(--display); font-size: 2rem; line-height: 1.1; color: #fff; }
.pr-facts span { font-size: .9rem; color: rgba(255, 255, 255, .82); }

.pr-jump { background: var(--paper); border-bottom: 1px solid var(--line); }
.pr-jump .container { display: flex; flex-wrap: wrap; gap: .3rem 1.4rem; padding: .7rem 0; }
.pr-jump a { font-weight: 600; font-size: .95rem; text-decoration: none; color: var(--sea-dark); }
.pr-jump a:hover { color: var(--coral-dark); }
#chi-sei, #comunicati, #nascita, #foto, #logo, #hashtag, #contatti, .pr-aud { scroll-margin-top: 190px; }
@media (max-width: 900px) { #chi-sei, #comunicati, #nascita, #foto, #logo, #hashtag, #contatti, .pr-aud { scroll-margin-top: 80px; } }

.pr-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 1.6rem; }
.pr-auds { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 1rem; }
.pr-aud { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 1.2rem 1.25rem; box-shadow: var(--shadow); display: flex; flex-direction: column; gap: .2rem; }
.pr-aud:target { outline: 3px solid var(--sun); outline-offset: 2px; }
.pr-aud header { display: flex; align-items: center; gap: .7rem; margin-bottom: .3rem; }
.pr-aud h3 { margin: 0; font-size: 1.18rem; }
.pr-ico { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--sea-soft); color: var(--sea-dark); }
.pr-aud-who { font-size: .86rem; color: var(--muted); margin: 0 0 .5rem; }
.pr-aud p { margin-bottom: .6rem; }
.pr-aud details { margin-top: auto; border-top: 1px solid var(--line); padding-top: .6rem; }
.pr-aud summary { cursor: pointer; font-weight: 650; color: var(--sea-dark); }
.pr-aud h4 { font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); margin: .9rem 0 .4rem; }
.pr-aud ul { margin: 0; padding-left: 1.1rem; }
.pr-aud li { margin-bottom: .3rem; font-size: .95rem; }
.pr-aud-links { display: flex; flex-wrap: wrap; gap: .4rem; }
.pr-aud-links .chip { font-size: .85rem; padding: .35rem .75rem; }

.pr-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
.pr-item { display: grid; grid-template-columns: 220px 1fr; gap: 1.3rem; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem; align-items: start; }
.pr-item:not(:has(.pr-item-ph)) { grid-template-columns: 1fr; }
.pr-item-ph img { width: 100%; aspect-ratio: 960 / 653; object-fit: cover; border-radius: 10px; border: 1px solid var(--line); }
.pr-item h3 { margin: .1rem 0 .4rem; font-size: 1.3rem; }
.pr-item h3 a { color: var(--ink); text-decoration: none; }
.pr-item h3 a:hover { color: var(--sea-dark); text-decoration: underline; }
.pr-item p { margin: 0 0 .5rem; color: var(--muted); }
.pr-item-meta { font-size: .85rem; font-weight: 600; color: var(--coral-dark) !important; text-transform: uppercase; letter-spacing: .05em; }
.pr-item-go { display: flex; gap: 1.2rem; flex-wrap: wrap; font-weight: 600; }
.pr-muted { color: var(--muted); font-size: .92rem; }

.pr-story-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 2.5rem; align-items: start; }
.pr-tl { list-style: none; margin: 0; padding: 0 0 0 1.2rem; border-left: 3px solid var(--sea-soft); }
.pr-tl li { position: relative; padding: 0 0 1rem .4rem; }
.pr-tl li::before { content: ""; position: absolute; left: -1.72rem; top: .35rem; width: 13px; height: 13px; border-radius: 50%; background: var(--sun); border: 3px solid var(--paper); box-shadow: 0 0 0 2px var(--sun); }
.pr-tl time { display: block; font-weight: 700; color: var(--sea-dark); font-size: .92rem; }
.pr-tl span { font-size: .95rem; }

.pr-photos { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.pr-photo { margin: 0; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; }
.pr-photo > a { display: block; background: var(--sea-soft); }
.pr-photo img { width: 100%; aspect-ratio: 960 / 653; object-fit: cover; object-position: top; }
.pr-photo.is-phone img { object-position: center; }
.pr-photo figcaption { padding: .8rem .9rem 1rem; display: flex; flex-direction: column; gap: .2rem; align-items: flex-start; flex: 1; }
.pr-photo figcaption span { font-size: .82rem; color: var(--muted); margin-bottom: .5rem; }
.pr-photo figcaption .btn { margin-top: auto; }
.pr-usage { margin-top: 1.3rem; max-width: 90ch; }

.pr-logos { display: grid; grid-template-columns: 1fr 2fr 2fr; gap: 1rem; }
.pr-logo { margin: 0; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; }
.pr-logo img { height: 170px; width: 100%; object-fit: contain; padding: 1.2rem; background: repeating-conic-gradient(#f3efe7 0 25%, #fff 0 50%) 0 0 / 18px 18px; }
.pr-logo.is-dark img { background: #0b5a66; padding: 0; object-fit: cover; }
.pr-logo figcaption { padding: .8rem .9rem 1rem; display: flex; flex-direction: column; gap: .2rem; align-items: flex-start; }
.pr-logo figcaption span { font-size: .82rem; color: var(--muted); margin-bottom: .4rem; }
.pr-brand { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-top: 1.8rem; }
.pr-brand h3 { font-size: 1.05rem; margin-top: 0; }
.pr-colors { list-style: none; padding: 0; margin: 0; display: grid; gap: .45rem; }
.pr-colors li { display: flex; align-items: center; gap: .6rem; }
.pr-colors li span { width: 34px; height: 34px; border-radius: 9px; border: 1px solid var(--line); flex: none; }
.pr-colors code { color: var(--muted); }
.pr-f1 { font-family: var(--display); font-size: 1.3rem; font-weight: 600; }
.pr-f2 { font-family: var(--font); font-size: 1.15rem; font-weight: 650; }

.pr-tags { display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: .8rem; }
.pr-tag { background: var(--paper); border: 1px solid var(--line); border-radius: 999px; padding: .35rem .8rem; font-weight: 600; color: var(--sea-dark); }
.pr-tag.is-main { background: var(--sea); border-color: var(--sea); color: #fff; }
.pr-boilers { display: grid; grid-template-columns: 1fr 2fr; gap: 1rem; margin-top: 1.4rem; }
.pr-boiler { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 1.1rem 1.2rem; }
.pr-boiler h3 { font-size: 1.05rem; margin-top: 0; }

.pr-contact { display: grid; grid-template-columns: 1fr 1.2fr; gap: 2.5rem; align-items: start; }
.pr-contact-list { list-style: none; padding: 0; margin: 0 0 1.2rem; display: grid; gap: .55rem; }
.pr-contact-list li { display: flex; gap: .6rem; align-items: flex-start; }
.pr-contact-list .ico { color: var(--sun); margin-top: .2rem; flex: none; }
.pr-form .join-consent { display: flex; gap: .6rem; align-items: flex-start; font-weight: 400; }
.pr-form .join-consent input { width: auto; margin-top: .25rem; }
.pr-msg { margin: 0; padding: .7rem .9rem; border-radius: 10px; font-weight: 600; }
.pr-msg.is-ok { background: #e3f4e8; color: #17552b; }
.pr-msg.is-err { background: #fbe1de; color: #8a1a12; }

/* one release */
.pr-art { padding: clamp(1.6rem, 4vw, 2.8rem) 0 clamp(2rem, 5vw, 3.4rem); }
.pr-crumb { font-weight: 600; margin-bottom: 1.2rem; }
.pr-crumb a { text-decoration: none; }
.pr-kicker { font-size: .9rem; color: var(--muted); margin-bottom: .6rem; }
.pr-kicker span { display: inline-block; background: var(--coral); color: #fff; font-weight: 700; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; padding: .2rem .6rem; border-radius: 999px; margin-right: .4rem; }
.pr-sub { color: var(--sea-dark); font-weight: 500; }
.pr-note { display: flex; gap: .5rem; align-items: flex-start; font-size: .9rem; color: var(--muted); background: var(--sun-soft); border-radius: 10px; padding: .6rem .8rem; }
.pr-note .ico { flex: none; margin-top: .15rem; }
.pr-tools { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.2rem 0 1.6rem; }
.pr-cover { margin: 0 0 1.8rem; }
.pr-cover img { width: 100%; height: auto; border-radius: var(--radius); border: 1px solid var(--line); }
.pr-cover figcaption { font-size: .85rem; color: var(--muted); margin-top: .4rem; }
.pr-body { font-size: 1.08rem; line-height: 1.7; }
.pr-body h2 { font-size: 1.35rem; margin: 2rem 0 .6rem; color: var(--sea-deep); }
.pr-body ul { padding-left: 1.2rem; margin: 0 0 1.2em; }
.pr-body li { margin-bottom: .45rem; }
.pr-body blockquote { margin: 1.5rem 0; padding: 1rem 1.3rem; border-left: 4px solid var(--sun); background: var(--sun-soft); border-radius: 0 12px 12px 0; font-family: var(--display); font-size: 1.15rem; font-style: italic; }
.pr-body blockquote p { margin: 0; }
.pr-art .pr-boiler { margin-top: 2rem; font-size: .95rem; }
.pr-art .pr-boiler h2 { font-size: 1.1rem; }
.pr-langs { font-size: .9rem; color: var(--muted); margin-top: 1.4rem; display: flex; flex-wrap: wrap; gap: .3rem .7rem; }
.pr-langs a { white-space: nowrap; }
.pr-langs a[aria-current] { font-weight: 700; color: var(--ink); text-decoration: none; }
.pr-contact-line { margin-top: 1.4rem; font-weight: 600; }
.pr-rels { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: .9rem; }
.pr-rel { display: flex; flex-direction: column; gap: .3rem; background: var(--sand); border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem; text-decoration: none; color: var(--ink); }
.pr-rel:hover { border-color: var(--sea); color: var(--sea-deep); }
.pr-rel time { font-size: .82rem; color: var(--muted); }

@media (max-width: 900px) {
  .pr-hero-grid, .pr-story-grid, .pr-contact, .pr-brand, .pr-boilers { grid-template-columns: 1fr; }
  .pr-logos { grid-template-columns: 1fr; }
  .pr-item { grid-template-columns: 1fr; }
  .pr-auds { grid-template-columns: 1fr; }
}
@media (max-width: 560px) { .pr-facts b { font-size: 1.6rem; } .pr-form .row2 { grid-template-columns: 1fr; } }
.pr-body blockquote footer { font-family: var(--font); font-style: normal; font-size: .9rem; font-weight: 650; color: var(--sea-dark); margin-top: .5rem; }
.pr-all { margin-top: 1rem; }
.pr-all > summary { cursor: pointer; font-weight: 650; color: var(--sea-dark); padding: .8rem 1rem; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); }
.pr-all[open] > summary { margin-bottom: 1rem; }
