/* Guide, contatti e informazioni */
.support-error { margin: 0; min-height: 100vh; background: #f3f7f8; color: #071d46; font-family: Arial, Helvetica, sans-serif; }
.support-error * { box-sizing: border-box; }
.support-error header { background: #fff; padding: 14px 5vw; border-bottom: 5px solid #007c8e; }
.support-error header img { display: block; width: min(240px, 85vw); }
.support-error main { margin: clamp(28px, 9vh, 106px) auto; width: min(90%, 680px); padding: clamp(20px, 4vw, 48px); border: 1px solid #cfdae3; background: #fff; border-radius: 14px; }
.support-error main h1 { margin: 12px 0 16px; font-size: clamp(1.9rem, 4.5vw, 3rem); line-height: 1.05; letter-spacing: -.045em; }
.support-error main p { line-height: 1.6; }
.support-error-code { color: #733073; font-weight: 700; }
.support-error-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin-top: 22px; }
.support-error-actions > a { display: inline-flex; align-items: center; min-height: 44px; color: #006978; }
.support-market {
  --support-border: #cfdae3;
  --support-pale: #edf6f7;
  padding-bottom: clamp(36px, 6vw, 84px);
  color: var(--ink, #071d46);
}
.support-crumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0 8px;
  padding: 16px 0;
  font-size: .84rem;
  color: var(--muted, #506075);
}
.support-crumbs a:hover { text-decoration: underline; }
.support-crumbs > :not(:first-child)::before { content: "›"; margin-right: 8px; color: #68798c; }
.support-layout { display: grid; grid-template-columns: minmax(210px, 255px) minmax(0, 1fr); gap: clamp(20px, 3vw, 48px); align-items: start; }
.support-main { grid-column: 2; grid-row: 1; min-width: 0; }
.support-nav { grid-column: 1; grid-row: 1; background: #fff; border: 1px solid var(--support-border); border-radius: 12px; overflow: hidden; }
.support-nav h2 { margin: 0; padding: 15px 18px; background: var(--support-pale); color: var(--ink); font-size: 1rem; letter-spacing: -.015em; }
.support-nav ul { margin: 5px 0; padding: 0; list-style: none; }
.support-nav li { margin: 0; }
.support-nav a { display: flex; align-items: center; min-height: 44px; padding: 8px 16px; color: var(--ink); border-left: 3px solid transparent; font-size: .94rem; line-height: 1.35; }
.support-nav a:hover { background: #f3f8f9; text-decoration: underline; }
.support-nav a[aria-current="page"] { border-left-color: var(--deep); background: var(--support-pale); color: var(--deep); font-weight: bold; }
.support-head, .support-market .support-article { padding: clamp(20px, 3vw, 42px); border: 1px solid var(--support-border); border-radius: 14px; }
.support-head { margin-bottom: 18px; background: linear-gradient(110deg, var(--support-pale), #fff); }
.support-market .support-article { margin: 0; max-width: none; background: #fff; overflow-wrap: anywhere; }
.support-market h1 { font: 750 clamp(1.8rem, 3vw, 3rem)/1.08 Arial, Helvetica, sans-serif; letter-spacing: -.045em; margin: 0 0 18px; }
.support-market .support-article h1 { margin: 0 0 20px; }
.support-head p, .support-article p, .support-article address { max-width: 78ch; margin: 0 0 16px; font-size: 1rem; line-height: 1.65; font-style: normal; }
.support-head p:last-child, .support-copy p:last-child, .support-service p:last-child { margin-bottom: 0; }
.support-market .support-article h2 { margin: 0 0 12px; font-size: clamp(1.1rem, 1.6vw, 1.5rem); }
.support-article address a, .support-link, .support-service > a { color: var(--deep); text-decoration: underline; text-underline-offset: .16em; }
.support-story, .guide-reference { margin-top: 24px; display: grid; grid-template-columns: minmax(124px, 28%) minmax(0, 1fr); gap: clamp(16px, 2.6vw, 32px); align-items: center; border-radius: 10px; border: 1px solid var(--support-border); background: var(--support-pale); overflow: hidden; }
.support-story > img { width: 100%; height: 100%; min-height: 155px; object-fit: cover; }
.support-story > div, .guide-reference > div:last-child { padding: 15px 18px 15px 0; }
.support-market .support-button, .support-error .support-button { display: inline-flex; gap: 8px; align-items: center; justify-content: center; min-height: 44px; padding: 9px 16px; color: #fff; background: #006978; border-radius: 7px; font-weight: 700; text-decoration: none; line-height: 1.25; }
.support-market .support-button:hover, .support-error .support-button:hover { background: #005465; }
.guide-shelf { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 24px); }
.guide-preview { display: flex; flex-direction: column; border: 1px solid var(--support-border); border-radius: 12px; overflow: hidden; background: #fff; }
.guide-preview:hover { border-color: var(--deep); }
.guide-preview:hover h2 { text-decoration: underline; }
.guide-media { display: grid; place-items: center; aspect-ratio: 16 / 10; overflow: hidden; background: #fff; border-bottom: 1px solid var(--support-border); }
.guide-media img, .guide-reference-media img { display: block; width: 100%; height: 100%; object-fit: contain; }
.guide-media .ico, .guide-reference-media .ico { width: 42px; height: 42px; color: var(--deep); }
.guide-caption { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: clamp(14px, 1.5vw, 22px); }
.guide-caption h2 { margin: 0 0 15px; color: var(--ink); font-size: clamp(1.08rem, 1.45vw, 1.45rem); line-height: 1.2; letter-spacing: -.025em; }
.guide-caption > span { margin-top: auto; color: var(--deep); font-weight: bold; font-size: .94rem; }
.guide-reference-media { display: grid; place-items: center; align-self: stretch; padding: 10px; background: #fff; }
.guide-reference-media img { aspect-ratio: 1 / 1; max-height: 220px; }
.guide-reference .guide-product-name { margin: 0; font-weight: 700; }
.support-contacts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr)); gap: 12px; margin-top: 22px; }
.support-contacts a { display: grid; align-content: center; gap: 6px; padding: 16px; border: 1px solid var(--support-border); border-radius: 8px; background: var(--support-pale); }
.support-contacts a:hover { border-color: var(--deep); }
.support-contacts strong { color: var(--ink); }
.support-contacts span { color: var(--deep); text-decoration: underline; text-underline-offset: .16em; }
.support-address, .support-section { margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--support-border); }
.support-article .support-revision { margin: 10px 0 16px; color: var(--muted); font-size: .9rem; }
.support-preferences { margin-top: 22px; }
.support-preferences fieldset { min-width: 0; }
.support-preferences fieldset p, .support-address address { margin: 0; }
.support-preferences legend { font-size: 1.05rem; }
.support-preferences .privacy-service { display: flex; align-items: center; gap: 8px; min-height: 44px; }
.support-service + .support-service { border-top: 1px solid var(--support-border); margin-top: 14px; padding-top: 14px; }
.support-service > a { display: inline-block; margin: 8px 0; }
.support-preferences .privacy-actions button { color: var(--deep); font: 700 .94rem Arial, sans-serif; }
.support-preferences .privacy-actions button:hover { background: var(--support-pale); }
.support-market :focus-visible, .support-error :focus-visible { outline: 3px solid #7c217e; outline-offset: 2px; }
@media (max-width: 940px) {
  .support-layout { grid-template-columns: 195px minmax(0,1fr); gap: 16px; }
  .guide-shelf { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .support-layout { display: flex; flex-direction: column; align-items: stretch; gap: 20px; }
  .guide-shelf { grid-template-columns: repeat(auto-fit, minmax(min(225px, 100%), 1fr)); }
  .support-nav ul { display: grid; grid-template-columns: 1fr 1fr; }
  .support-crumbs { padding: 12px 0; }
  .support-story, .guide-reference { grid-template-columns: minmax(80px, 32%) minmax(0, 1fr); gap: 12px; }
  .support-story > div, .guide-reference > div:last-child { padding-right: 10px; }
}
@media (max-width: 420px) {
  .guide-reference, .support-story { grid-template-columns: 1fr; gap: 0; }
  .guide-reference-media img, .support-story > img { height: 150px; min-height: 0; }
  .support-story > div, .guide-reference > div:last-child { padding: 16px; }
}

