
:root {
  --zone-black: #080b0a;
  --zone-panel: #121715;
  --zone-soft: #f5f7f4;
  --zone-line: rgba(255,255,255,.13);
  --zone-green: #00a651;
  --zone-green-2: #6fd044;
  --zone-red: #e23b3b;
  --zone-muted: #aeb8b2;
}
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--zone-soft); background: var(--zone-black); }
a { color: inherit; }
.zone-page { background: linear-gradient(180deg, #080b0a 0%, #101412 58%, #f4f6f3 58%, #f4f6f3 100%); }
.zone-wrap { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.zone-hero { min-height: 430px; padding: 48px 0 34px; display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 36px; align-items: center; overflow: hidden; }
.zone-kicker { color: var(--zone-green-2); font-weight: 800; letter-spacing: 0; font-size: 13px; text-transform: uppercase; }
.zone-hero h1 { max-width: 100%; margin: 10px 0 14px; font-size: clamp(38px, 3.65vw, 56px); line-height: 1; letter-spacing: 0; white-space: nowrap; overflow: hidden; }
.zone-hero p { margin: 0; color: #d8ded9; font-size: 17px; line-height: 1.85; max-width: 560px; }
.zone-hero-media { position: relative; min-height: 300px; aspect-ratio: 16 / 7.2; border-radius: 14px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); background: #111; box-shadow: 0 24px 52px rgba(0,0,0,.34); }
.zone-hero-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.1), rgba(0,0,0,0) 44%, rgba(0,0,0,.18)); pointer-events: none; }
.zone-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(1.06) contrast(1.04); }
.zone-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.zone-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px; border-radius: 8px; text-decoration: none; font-weight: 800; border: 1px solid var(--zone-line); }
.zone-btn.primary { background: var(--zone-green); color: #fff; border-color: var(--zone-green); }
.zone-btn.dark { background: #1c221f; color: #fff; }
.zone-section { padding: 34px 0; color: #111; background: #07100c; }
.zone-section-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.zone-section h2 { margin: 0; font-size: 30px; letter-spacing: 0; color: #fff; }
.zone-section-note { color: #b7c2bb; font-size: 14px; }
.zone-displacement-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; }
.zone-displacement-nav a { min-height: 34px; display: inline-flex; align-items: center; justify-content: center; padding: 0 12px; border-radius: 999px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); color: #eef5ef; text-decoration: none; font-weight: 850; font-size: 13px; }
.zone-displacement-block { padding: 18px 0 24px; border-top: 1px solid rgba(255,255,255,.12); }
.zone-displacement-title { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; margin-bottom: 14px; color: #fff; }
.zone-displacement-title h3 { margin: 0; font-size: 24px; line-height: 1.1; letter-spacing: 0; }
.zone-displacement-title span { color: #b7c2bb; font-size: 13px; font-weight: 800; white-space: nowrap; }
.zone-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; overflow: hidden; }
.zone-card { display: flex; flex-direction: column; min-height: 100%; background: #fff; color: #111; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; overflow: hidden; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.zone-card:hover { transform: translateY(-4px); box-shadow: 0 22px 42px rgba(0, 0, 0, .38); border-color: rgba(111,208,68,.48); }
.zone-card-img { height: 172px; display: grid; place-items: center; background: #eef3ef; padding: 20px 22px 16px; overflow: hidden; }
.zone-card-img img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 14px 15px rgba(0,0,0,.12)); }
.zone-card-img img[src*="versys650-cutout"] { transform: translateY(-8px) scale(1.08); transform-origin: center center; }
.zone-card-body { min-height: 96px; padding: 15px 18px 16px; display: grid; align-items: center; border-top: 1px solid rgba(7,16,12,.04); }
.zone-card-top { display: grid; gap: 10px; width: 100%; }
.zone-card h3 { min-width: 0; margin: 0; font-size: var(--card-name-size, clamp(19px, 1.45vw, 26px)); line-height: 1; letter-spacing: 0; font-weight: 900; text-transform: uppercase; white-space: nowrap; overflow: hidden; text-overflow: clip; }
.zone-badge { justify-self: start; display: inline-flex; align-items: center; justify-content: center; min-height: 30px; padding: 0 12px; border-radius: 999px; background: #e8f5ee; color: #08783e; border: 1px solid rgba(8,120,62,.08); font-weight: 900; font-size: clamp(12px, .95vw, 15px); white-space: nowrap; }
.zone-card p { margin: 0; color: #4f5c54; line-height: 1.65; font-size: 14px; }
.zone-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
.zone-chip { display: inline-flex; min-height: 28px; align-items: center; padding: 0 10px; border-radius: 8px; background: #f0f3f0; color: #253027; font-size: 12px; font-weight: 700; }
.zone-detail { background: #f4f6f3; color: #111; min-height: 100vh; }
.zone-detail-hero { background: #07100c; color: #fff; padding: 34px 0 42px; }
.zone-detail-grid { display: grid; grid-template-columns: minmax(420px, .82fr) minmax(0, 1.18fr); gap: 32px; align-items: center; }
.zone-detail-title { min-width: 0; max-width: 100%; }
.zone-detail-title h1 { max-width: 100%; margin: 8px 0 14px; font-size: clamp(34px, 4.05vw, 68px); line-height: .94; letter-spacing: 0; text-transform: uppercase; white-space: nowrap; overflow: visible; }
.zone-detail-title h1 .title-line { display: block; }
.zone-detail-title p { color: #d8ded9; line-height: 1.7; margin: 0; font-size: 18px; font-weight: 700; }
.zone-detail-specs { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.zone-detail-spec { display: inline-flex; align-items: center; min-height: 36px; padding: 0 13px; border-radius: 999px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); color: #edf5ef; font-weight: 800; font-size: 13px; }
.zone-detail-image { min-height: 390px; display: grid; place-items: center; background: #eef3ef; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; padding: 28px; overflow: hidden; }
.zone-detail-image img { width: min(100%, 760px); max-height: 440px; object-fit: contain; filter: drop-shadow(0 24px 26px rgba(0,0,0,.22)); }
.zone-detail-image.photo { min-height: 0; aspect-ratio: 16 / 9; padding: 0; background: #0b120f; border-color: rgba(255,255,255,.2); box-shadow: inset 0 -90px 120px rgba(0,0,0,.3); }
.zone-detail-image.photo img { width: 100%; height: 100%; min-height: 0; max-height: none; object-fit: cover; filter: saturate(1.06) contrast(1.03); }
.zone-info { padding: 28px 0 48px; background: #f4f6f3; }
.zone-info-grid { display: grid; grid-template-columns: minmax(280px, .55fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.zone-panel { background: #fff; border: 1px solid #dde4de; border-radius: 8px; padding: 20px; }
.zone-panel h2, .zone-panel h3 { margin: 0 0 12px; letter-spacing: 0; }
.zone-panel p { color: #48564e; line-height: 1.85; margin: 0; }
.zone-link-list { display: grid; gap: 10px; }
.zone-link-list a, .zone-placeholder { min-height: 56px; border-radius: 8px; border: 1px solid #dce5de; padding: 13px 16px; text-decoration: none; display: flex; justify-content: space-between; gap: 12px; align-items: center; font-weight: 900; }
.zone-link-list a { background: #0f1512; color: #fff; transition: transform .16s ease, background .16s ease; }
.zone-link-list a:hover { transform: translateY(-2px); background: #08783e; }
.zone-placeholder { color: #66736b; background: #f7faf7; }
.zone-video-panel { background: #fff; border: 1px solid #dde4de; border-radius: 8px; padding: 20px; }
.zone-video-panel h2 { margin: 0 0 12px; }
.zone-video-frame { aspect-ratio: 16/9; background: #08100c; border-radius: 8px; overflow: hidden; }
.zone-video-empty { min-height: 220px; display: grid; place-items: center; color: #66736b; background: #fff; border: 1px dashed #cfd9d2; border-radius: 8px; font-weight: 800; }
.zone-note { margin-top: 16px; padding: 14px; background: #eef7f1; border-left: 4px solid var(--zone-green); color: #1e3527; line-height: 1.75; }
.zone-footer-nav { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
@media (max-width: 820px) {
  .zone-hero, .zone-detail-grid, .zone-info-grid { grid-template-columns: 1fr; }
  .zone-hero { padding-top: 32px; }
  .zone-hero h1 { white-space: normal; font-size: clamp(38px, 11vw, 64px); }
  .zone-hero-media { min-height: 220px; aspect-ratio: 16 / 9; }
  .zone-detail-title h1 { font-size: clamp(34px, 10vw, 60px); white-space: normal; overflow-wrap: normal; }
  .zone-detail-image { min-height: 300px; }
  .zone-detail-image.photo, .zone-detail-image.photo img { min-height: 0; }
  .zone-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zone-card-img { height: 160px; }
  .zone-card-body { min-height: 86px; padding: 13px 16px 15px; }
  .zone-card h3 { font-size: var(--card-name-size, clamp(17px, 3vw, 24px)); }
}
@media (max-width: 1120px) and (min-width: 821px) {
  .zone-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .zone-wrap { width: min(100% - 22px, 1120px); }
  .zone-grid { grid-template-columns: 1fr; }
  .zone-card-img { height: 190px; padding: 18px; }
  .zone-card-body { min-height: 86px; padding: 13px 14px 15px; }
  .zone-card h3 { font-size: var(--card-name-size, clamp(20px, 6vw, 28px)); }
  .zone-badge { min-height: 30px; padding: 0 12px; font-size: clamp(13px, 3.8vw, 16px); }
  .zone-section-head { display: block; }
}
