:root {
  --color-bg: #f6f8fc;
  --color-surface: #fff;
  --color-ink: #0b1733;
  --color-muted: #5c6b82;
  --color-border: rgba(30, 64, 120, .12);
  --color-primary: #146cff;
  --color-about: #b58b4a;
  --color-anahit: #1d6fff;
  --color-lineup: #008e99;
  --color-shipping: #1e66e8;
  --color-anahit-dark: #08182f;
  --color-shipping-dark: #0a2246;
  --container-wide: 1440px;
  --container: 1280px;
  --page-gutter: clamp(20px, 4vw, 72px);
  --shape-cut-a: polygon(0 15px, 22px 0, calc(100% - 31px) 0, 100% 19px, 100% calc(100% - 13px), calc(100% - 18px) 100%, 12px 100%, 0 calc(100% - 24px));
  --shape-cut-b: polygon(0 9px, 34px 0, calc(100% - 14px) 0, 100% 27px, 100% calc(100% - 21px), calc(100% - 37px) 100%, 19px 100%, 0 calc(100% - 12px));
  --shape-cut-c: polygon(0 25px, 13px 0, calc(100% - 24px) 0, 100% 12px, 100% calc(100% - 31px), calc(100% - 16px) 100%, 29px 100%, 0 calc(100% - 16px));
  --shape-hex: polygon(24% 0, 78% 6%, 100% 31%, 91% 82%, 66% 100%, 15% 91%, 0 63%, 6% 22%);
  --shadow-card: 0 2px 3px rgba(20, 48, 90, .04), 0 14px 34px rgba(20, 48, 90, .1), 0 30px 70px rgba(20, 48, 90, .08);
  --shadow-card-hover: 0 4px 8px rgba(20, 48, 90, .06), 0 22px 48px rgba(20, 48, 90, .15), 0 44px 90px rgba(20, 48, 90, .1);
  --ease: cubic-bezier(.2, .8, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; border-radius: 0; }
html { overflow-x: clip; scroll-behavior: smooth; scroll-padding-top: 96px; background: var(--color-bg); color: var(--color-ink); }
body {
  margin: 0;
  min-width: 320px;
  overflow-x: clip;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--color-ink);
  background: var(--color-bg);
}
img { display: block; max-width: 100%; }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
h1, h2, h3 { margin-top: 0; font-family: Manrope, Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.038em; }
p { line-height: 1.65; }
:focus-visible { outline: 3px solid color-mix(in srgb, var(--color-primary) 75%, white); outline-offset: 4px; }

.site-atmosphere {
  position: absolute;
  z-index: 0;
  inset: 0 0 auto;
  height: 1800px;
  overflow: hidden;
  pointer-events: none;
  background:
    radial-gradient(circle at 15% 12%, rgba(181,139,74,.12), transparent 28rem),
    radial-gradient(circle at 84% 18%, rgba(0,142,153,.14), transparent 31rem),
    linear-gradient(145deg, #fff, #eaf1fb);
}
.site-atmosphere::before { display: none; }
.site-atmosphere::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background:
    linear-gradient(116deg, transparent 17%, rgba(20,108,255,.08) 17.2%, transparent 17.7%),
    linear-gradient(63deg, transparent 68%, rgba(0,142,153,.08) 68.2%, transparent 68.7%),
    linear-gradient(151deg, transparent 42%, rgba(181,139,74,.07) 42.2%, transparent 42.65%);
  opacity: .8;
}
.atmosphere-grid {
  position: absolute;
  z-index: 1;
  inset: 0;
  opacity: .24;
  background:
    linear-gradient(90deg, rgba(20,108,255,.16) 1px, transparent 1px) 0 0 / 60px 60px,
    linear-gradient(0deg, rgba(0,142,153,.14) 1px, transparent 1px) 0 0 / 60px 60px,
    linear-gradient(135deg, transparent 49.65%, rgba(181,139,74,.12) 50%, transparent 50.35%) 0 0 / 120px 120px;
}
main, .site-footer { position: relative; z-index: 1; }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; top: 12px; left: 12px; padding: 12px 18px; clip-path: var(--shape-cut-b); background: #fff; transform: translateY(-140%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }
.section-shell { width: min(var(--container), calc(100% - 2 * var(--page-gutter))); margin-inline: auto; }

.site-header { position: fixed; z-index: 100; inset: 0 0 auto; height: 80px; clip-path: polygon(0 0, 100% 0, 100% 91%, 86% 100%, 64% 94%, 41% 100%, 17% 93%, 0 100%); transition: background .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease); border-bottom: 1px solid transparent; }
.site-header.is-scrolled { background: rgba(255, 255, 255, .98); border-color: var(--color-border); box-shadow: 0 8px 24px rgba(20, 48, 90, .06); }
.header-inner { width: min(var(--container-wide), calc(100% - 2 * var(--page-gutter))); height: 100%; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 14px; text-decoration: none; }
.brand-mark {
  width: 36px;
  height: 42px;
  flex: 0 0 auto;
  color: #6e572f;
  background: currentColor;
  -webkit-mask: url("/assets/brand/kocsisdani-mark.svg") center / contain no-repeat;
  mask: url("/assets/brand/kocsisdani-mark.svg") center / contain no-repeat;
  font-size: 0;
}
.brand-name { font-size: 13px; font-weight: 900; letter-spacing: .22em; }
.primary-nav { display: grid; width: min(690px, 58vw); grid-template-columns: repeat(6, minmax(0, 1fr)); align-items: center; }
.primary-nav a { position: relative; justify-self: center; padding-block: 10px; font-size: 15px; font-weight: 650; text-decoration: none; }
.primary-nav a::after { content: ""; position: absolute; right: 0; bottom: 4px; left: 0; height: 2px; background: var(--color-primary); transform: scaleX(0); transition: transform .2s var(--ease); }
.primary-nav a:hover::after, .primary-nav a:focus-visible::after, .primary-nav a[aria-current="page"]::after { transform: scaleX(1); }
.menu-button { display: none; }

.hero { position: relative; z-index: 5; min-height: 1060px; padding: 64px 0 90px; overflow: visible; }
.hero-art { position: relative; isolation: isolate; width: 100vw; height: clamp(680px, 57vw, 820px); margin-inline: auto; overflow: hidden; clip-path: polygon(0 2%, 12% 0, 31% 1.2%, 52% 0, 73% 1.4%, 91% 0, 100% 2.2%, 100% 97%, 86% 100%, 66% 98.5%, 48% 100%, 27% 98.4%, 9% 100%, 0 97.5%); }
.hero-art::after { content: ""; position: absolute; z-index: 6; inset: 0; pointer-events: none; background: radial-gradient(circle at 50% 50%, rgba(255,255,255,.04), transparent 14%), linear-gradient(115deg, rgba(255,255,255,.18), transparent 22%, transparent 78%, rgba(255,255,255,.08)); mix-blend-mode: screen; }
.hero-panel { position: absolute; inset: 0; overflow: hidden; }
.hero-panel::before { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; }
.hero-layer { position: absolute; inset: 0; display: block; overflow: hidden; }
.hero-layer img { width: 100%; height: 100%; transition: transform .7s var(--ease); }
.hero-layer--background img { object-fit: cover; transform: scale(1.06); }
.hero-layer--foreground { z-index: 2; }
.hero-layer--foreground img { object-fit: contain; object-position: center; transform: scale(1.03); filter: drop-shadow(0 12px 18px rgba(4, 14, 31, .18)); }
.hero-layer--scene { z-index: 2; }
.hero-layer--scene img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 18px 26px rgba(4, 14, 31, .2)); transform: scale(1.01); }
.hero-panel::after { content: ""; position: absolute; z-index: 3; inset: 0; pointer-events: none; opacity: .14; background-image: radial-gradient(circle, #fff 1px, transparent 1.6px); background-size: 9px 9px; mask-image: linear-gradient(130deg, #000, transparent 50%); }
.hero-panel--about { clip-path: polygon(0 0, 50% 0, 56% 47%, 0 41%); transform-origin: 24% 25%; }
.hero-panel--lineup { clip-path: polygon(48% 0, 100% 0, 100% 42%, 56% 47%); transform-origin: 76% 25%; }
.hero-panel--anahit { clip-path: polygon(0 39%, 56% 47%, 49% 100%, 0 100%); transform-origin: 24% 76%; }
.hero-panel--shipping { clip-path: polygon(56% 47%, 100% 40%, 100% 100%, 48% 100%); transform-origin: 76% 76%; }
.hero-panel--about .hero-layer--scene { inset: 0 44% 53% 0; }
.hero-panel--lineup .hero-layer--scene { inset: 0 0 53% 48%; }
.hero-panel--anahit .hero-layer--scene { inset: 39% 44% 0 0; }
.hero-panel--shipping .hero-layer--scene { inset: 39% 0 0 48%; }
.hero-panel--about .hero-layer--scene img, .hero-panel--anahit .hero-layer--scene img { object-position: right center; }
.hero-panel--lineup .hero-layer--scene img, .hero-panel--shipping .hero-layer--scene img { object-position: left center; }
.hero-panel--about::before { background: linear-gradient(135deg, rgba(255,247,224,.16), rgba(181,139,74,.19)); }
.hero-panel--lineup::before { background: linear-gradient(135deg, rgba(0,66,78,.16), rgba(0,142,153,.24)); mix-blend-mode: multiply; }
.hero-panel--anahit::before { background: linear-gradient(135deg, rgba(4,14,35,.45), rgba(29,111,255,.25)); mix-blend-mode: multiply; }
.hero-panel--shipping::before { background: linear-gradient(135deg, rgba(10,34,70,.1), rgba(30,102,232,.22)); mix-blend-mode: multiply; }
.hero-panel--about { background: linear-gradient(145deg, rgba(255,251,241,.8), rgba(225,209,178,.38)); }
.hero-panel--lineup { background: linear-gradient(145deg, rgba(224,249,250,.72), rgba(43,161,172,.34)); }
.hero-panel--anahit { background: linear-gradient(145deg, rgba(19,38,73,.82), rgba(25,91,184,.48)); }
.hero-panel--shipping { background: linear-gradient(145deg, rgba(225,239,255,.7), rgba(44,105,211,.42)); }
.hero-panel--about .hero-layer--foreground img { object-position: 20% center; }
.hero-panel--lineup .hero-layer--foreground img { object-position: 80% center; }
.hero-panel--anahit .hero-layer--foreground img { object-position: 24% center; }
.hero-panel--shipping .hero-layer--foreground { inset: 44% 0 0; }
.hero-panel--shipping .hero-layer--foreground img { object-position: 74% bottom; }
.hero-art.is-interacting .hero-panel:not(.is-active) { opacity: .94; }
.hero-panel.is-active { z-index: 2; }
.hero-separators { position: absolute; z-index: 5; inset: -1px; width: calc(100% + 2px); height: calc(100% + 2px); pointer-events: none; filter: drop-shadow(0 0 13px rgba(80, 154, 255, .4)); }
.hero-fade { position: absolute; z-index: 7; right: 0; bottom: 0; left: 0; height: 230px; pointer-events: none; background: linear-gradient(to bottom, transparent, rgba(246,248,252,.5) 35%, var(--color-bg) 88%); }

.hero-card { --card-accent: var(--color-primary); position: absolute; z-index: 8; width: clamp(210px, 18vw, 270px); height: 270px; min-height: 270px; padding: 20px 22px 18px; display: flex; flex-direction: column; align-items: center; color: var(--color-ink); text-align: center; text-decoration: none; border: 1px solid rgba(255,255,255,.9); clip-path: var(--shape-cut-a); background: rgba(248,251,255,.97); box-shadow: 0 14px 34px rgba(20,48,90,.1); transition: transform .2s var(--ease), box-shadow .2s var(--ease); }
.hero-card--about { --card-accent: var(--color-about); left: clamp(56px, 7vw, 112px); top: 14%; }
.hero-card--lineup { --card-accent: var(--color-lineup); right: clamp(56px, 7vw, 112px); top: 14%; }
.hero-card--anahit { --card-accent: var(--color-anahit); left: clamp(56px, 7vw, 112px); bottom: 9%; }
.hero-card--shipping { --card-accent: var(--color-shipping); right: clamp(56px, 7vw, 112px); bottom: 9%; }
.hero-card:hover, .hero-card:focus-visible, .hero-card.is-active { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(20,48,90,.14); }
.hero-card-icon { width: 60px; height: 60px; flex: 0 0 60px; display: grid; place-items: center; margin-bottom: 12px; color: var(--card-accent); border: 1px solid currentColor; clip-path: var(--shape-hex); background: color-mix(in srgb, var(--card-accent) 9%, white); box-shadow: 0 8px 30px rgba(20,48,90,.12); }
.hero-card-icon svg, .path-icon svg, .value-icon svg { width: 34px; height: 34px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.hero-card-title { font-family: Manrope, Inter, sans-serif; font-size: clamp(20px, 1.7vw, 27px); font-weight: 800; letter-spacing: -.04em; }
.hero-card-description { min-height: 54px; max-width: 210px; margin: 8px 0 12px; display: flex; align-items: center; justify-content: center; font-size: 14px; line-height: 1.5; }
.circle-arrow { width: 46px; height: 46px; flex: 0 0 46px; display: grid; place-items: center; margin-top: auto; clip-path: polygon(20% 0, 74% 5%, 100% 27%, 91% 78%, 67% 100%, 17% 91%, 0 60%, 6% 20%); color: #fff; font-size: 23px; background: var(--card-accent); box-shadow: 0 8px 26px color-mix(in srgb, var(--card-accent) 38%, transparent); transition: transform .25s var(--ease); }
.hero-card:hover .circle-arrow, .hero-card:focus-visible .circle-arrow { transform: translateX(4px); }
.pending-label { margin: -7px 0 12px; padding: 4px 10px; border: 1px solid currentColor; clip-path: var(--shape-cut-b); font-size: 10px; font-weight: 700; letter-spacing: .04em; opacity: .72; }
.hero-card .pending-label { display: none; }

.hero-intro { position: relative; z-index: 6; min-height: 410px; margin-top: clamp(72px, 7vw, 112px); display: grid; align-items: center; overflow: visible; isolation: isolate; }
.hero-intro::before { content: ""; position: absolute; z-index: 0; inset: 7% 8% 4%; clip-path: polygon(0 15%, 11% 2%, 38% 8%, 62% 0, 89% 9%, 100% 4%, 97% 88%, 80% 100%, 49% 92%, 20% 100%, 3% 89%); background: radial-gradient(circle at 83% 33%, rgba(0,142,153,.16), transparent 25%), linear-gradient(135deg, rgba(255,255,255,.54), rgba(232,241,253,.26)); }
.hero-intro-portrait { position: absolute; z-index: 3; top: clamp(36px, 7vw, 96px); right: clamp(-56px, 1.2vw, 18px); width: clamp(350px, 31vw, 470px); pointer-events: none; opacity: .88; filter: drop-shadow(0 18px 28px rgba(11,23,51,.18)); -webkit-mask-image: linear-gradient(#000 0 84%, transparent 100%); mask-image: linear-gradient(#000 0 84%, transparent 100%); }
.hero-intro-portrait img { width: 100%; height: auto; object-fit: contain; }
.hero-copy { position: relative; z-index: 2; width: min(900px, calc(100% - 40px)); margin: 0 auto; padding: 54px 0; text-align: center; }
.eyebrow, .section-kicker { margin: 0 0 14px; color: var(--color-primary); font-size: 11px; font-weight: 800; letter-spacing: .28em; }
.hero h1 { margin-bottom: 20px; font-size: clamp(44px, 5vw, 74px); line-height: 1.02; font-weight: 800; }
.hero h1 span { display: block; }
.hero-description { max-width: 700px; margin: 0 auto 28px; color: var(--color-muted); font-size: clamp(16px, 1.35vw, 19px); }
.hero-actions { display: flex; justify-content: center; gap: 14px; }
.button { min-width: 170px; min-height: 54px; padding: 0 25px; display: inline-flex; align-items: center; justify-content: center; gap: 16px; border: 1px solid transparent; clip-path: var(--shape-cut-a); font-size: 15px; font-weight: 750; text-decoration: none; transition: transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease); }
.button-secondary { clip-path: var(--shape-cut-b); }
.button:hover { transform: translateY(-3px); }
.button-primary { color: #fff; background: linear-gradient(135deg, #287cff, #0758d7); box-shadow: 0 12px 28px rgba(20,108,255,.28); }
.button-secondary { border-color: var(--color-border); background: rgba(255,255,255,.72); box-shadow: 0 8px 24px rgba(20,48,90,.06); }

.about-section { display: grid; grid-template-columns: 34% 66%; min-height: 430px; margin-top: 20px; padding: clamp(42px, 5vw, 70px); overflow: hidden; border: 1px solid var(--color-border); clip-path: polygon(0 22px, 4% 0, 34% 9px, 61% 0, 91% 11px, 100% 3px, 100% calc(100% - 24px), 96% 100%, 68% calc(100% - 8px), 43% 100%, 13% calc(100% - 10px), 0 100%); background: radial-gradient(circle at 12% 50%, rgba(20,108,255,.1), transparent 25%), linear-gradient(135deg, #fbfdff, #eef4fd); box-shadow: 0 20px 70px rgba(20,48,90,.06); }
.about-orbit { position: relative; min-height: 300px; display: grid; place-items: center; }
.orbit { position: absolute; aspect-ratio: 1; border: 1px solid rgba(20,108,255,.2); clip-path: var(--shape-hex); }
.orbit-one { width: 112px; }.orbit-two { width: 176px; }.orbit-three { width: 232px; }
.about-monogram { position: relative; z-index: 1; font-family: Georgia, serif; font-size: 68px; color: transparent; -webkit-text-stroke: 1.5px #61708a; filter: drop-shadow(2px 3px 0 #fff); opacity: .28; }
.about-cyclist { position: absolute; z-index: 2; left: 50%; bottom: -58px; width: clamp(330px, 30vw, 430px); transform: translateX(-51%); filter: saturate(1.04) contrast(1.06) drop-shadow(0 20px 28px rgba(11,23,51,.2)); pointer-events: none; }
.about-cyclist img { width: 100%; height: auto; object-fit: contain; }
.orbit-dot { position: absolute; width: 8px; height: 8px; border: 2px solid #fff; clip-path: polygon(50% 0, 100% 42%, 68% 100%, 0 73%, 11% 18%); background: var(--color-primary); box-shadow: 0 0 18px rgba(20,108,255,.7); }
.dot-one { top: 6%; left: 32%; }.dot-two { top: 30%; right: 5%; }.dot-three { bottom: 8%; right: 20%; }.dot-four { bottom: 10%; left: 19%; }
.about-copy { position: relative; z-index: 3; align-self: center; }
.about-copy h2, .section-heading h2 { margin-bottom: 12px; font-size: clamp(32px, 3.5vw, 47px); line-height: 1.1; }
.about-lead { max-width: 780px; margin: 0 0 34px; color: var(--color-muted); font-size: 17px; }
.value-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.value-item { display: flex; gap: 12px; align-items: flex-start; }
.value-icon { flex: 0 0 36px; width: 36px; height: 36px; color: #365486; }
.value-icon svg { width: 30px; height: 30px; }
.value-item h3 { margin: 2px 0 4px; font-size: 14px; letter-spacing: -.02em; }
.value-item p { margin: 0; color: var(--color-muted); font-size: 11px; line-height: 1.45; }

.paths-section { padding: 120px 0 110px; }
.section-heading { max-width: 690px; margin: 0 auto 42px; text-align: center; }
.section-heading p:last-child { margin: 0; color: var(--color-muted); font-size: 17px; }
.path-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.path-card { --accent: var(--color-primary); position: relative; min-height: 590px; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--color-border); clip-path: var(--shape-cut-a); background: var(--color-surface); box-shadow: 0 12px 36px rgba(20,48,90,.07); transition: transform .3s var(--ease), box-shadow .3s var(--ease); }
.path-card:nth-child(2) { clip-path: var(--shape-cut-c); }
.path-card:nth-child(3) { clip-path: var(--shape-cut-b); }
.path-card:nth-child(4) { clip-path: polygon(0 31px, 18px 0, calc(100% - 33px) 0, 100% 14px, 100% calc(100% - 18px), calc(100% - 12px) 100%, 25px 100%, 0 calc(100% - 29px)); }
.path-card:hover { transform: translateY(-7px); box-shadow: var(--shadow-card); }
.path-card--about { --accent: var(--color-about); }.path-card--anahit { --accent: var(--color-anahit); }.path-card--lineup { --accent: var(--color-lineup); }.path-card--shipping { --accent: var(--color-shipping); }
.path-image { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: #eaf0f9; }
.path-layer { position: absolute; inset: 0; display: block; }
.path-layer img { width: 100%; height: 100%; transition: transform .6s var(--ease); }
.path-layer--background img { object-fit: cover; }
.path-layer--foreground { z-index: 1; }
.path-layer--foreground img { object-fit: contain; object-position: center bottom; filter: drop-shadow(0 10px 16px rgba(4,14,31,.24)); }
.path-layer--scene img { object-fit: cover; object-position: center; }
.path-card:hover .path-layer--background img { transform: scale(1.035); }
.path-card:hover .path-layer--foreground img { transform: translateY(-3px) scale(1.035); }
.path-card:hover .path-layer--scene img { transform: scale(1.025); }
.path-icon { position: absolute; top: calc((100vw - 2 * var(--page-gutter) - 60px) / 4 * 1.25 - 35px); left: 20px; width: 70px; height: 70px; display: grid; place-items: center; color: var(--accent); border: 4px solid #fff; clip-path: var(--shape-hex); background: color-mix(in srgb, var(--accent) 12%, white); box-shadow: 0 10px 25px rgba(20,48,90,.16); }
.path-content { flex: 1; display: flex; flex-direction: column; padding: 48px 22px 24px; }
.path-content h3 { margin-bottom: 10px; font-size: clamp(21px, 1.8vw, 28px); }
.path-content > p { margin: 0 0 17px; color: var(--color-muted); font-size: 14px; line-height: 1.55; }
.path-content ul { margin: 0 0 22px; padding: 0; list-style: none; }
.path-content li { position: relative; margin: 9px 0; padding-left: 22px; color: #42516a; font-size: 12px; }
.path-content li::before { content: "◇"; position: absolute; left: 0; color: var(--accent); font-weight: 800; }
.path-content .pending-note { padding: 8px 12px; clip-path: var(--shape-cut-c); color: #4e607e; background: #f1f5fc; font-size: 11px; }
.text-link { display: flex; align-items: center; gap: 9px; margin-top: auto; color: var(--accent); font-size: 12px; font-weight: 800; text-decoration: none; }
.text-link span[aria-hidden] { font-size: 18px; transition: transform .2s var(--ease); }
.text-link:hover span[aria-hidden] { transform: translateX(4px); }

.site-footer { margin-top: -14px; padding-top: 22px; clip-path: polygon(0 20px, 12% 4px, 31% 14px, 49% 0, 69% 13px, 88% 3px, 100% 17px, 100% 100%, 0 100%); border-top: 1px solid var(--color-border); background: linear-gradient(180deg, #eef3fb, #f8faff); }
.footer-main { display: grid; grid-template-columns: 1.5fr 1fr 1.25fr; gap: 60px; padding-block: 54px 42px; }
.footer-brand p, .footer-contact p { margin: 16px 0 0; color: var(--color-muted); font-size: 13px; }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.footer-column h2 { margin: 0 0 8px; font-family: inherit; font-size: 13px; letter-spacing: 0; }
.footer-column a { color: #34445f; font-size: 12px; text-decoration: none; }
.footer-column a:hover { color: var(--color-primary); }
.footer-contact a { margin-top: 8px; color: var(--color-primary); font-weight: 700; }
.footer-bottom { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-top: 1px solid var(--color-border); color: #738096; font-size: 11px; }

.js .reveal { opacity: 0; transform: translateY(22px); transition: opacity .65s var(--ease), transform .65s var(--ease); }
.js .reveal.is-visible { opacity: 1; transform: translateY(0); }
.path-card:nth-child(2) { transition-delay: .06s; }.path-card:nth-child(3) { transition-delay: .12s; }.path-card:nth-child(4) { transition-delay: .18s; }

/* Könnyített scrollytelling: megfigyelővel váltott, statikus rétegek. */
.hub-story { position: relative; z-index: 4; min-height: 400svh; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(380px, .65fr); color: #f4f8ff; background: #071328; box-shadow: 0 -24px 60px rgba(7,19,40,.14); }
.story-sticky { position: sticky; top: 0; height: 100svh; min-height: 680px; overflow: hidden; isolation: isolate; }
.story-sticky::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 58% 53%, rgba(24,110,255,.24), transparent 34%), linear-gradient(135deg, rgba(255,255,255,.035), transparent 38%); }
.story-sticky::after { content: "K"; position: absolute; z-index: 0; right: -2vw; bottom: -15vh; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.085); font-family: Georgia, serif; font-size: min(58vw, 760px); line-height: .8; transform: rotate(-9deg); }
.story-stage-copy { position: absolute; z-index: 5; top: clamp(98px, 12vh, 145px); left: clamp(30px, 5vw, 76px); max-width: 600px; pointer-events: none; }
.story-kicker { margin: 0 0 16px; color: #7ec6ff; font-size: 9px; font-weight: 800; letter-spacing: .28em; }
.story-stage-copy h2 { margin: 0; font-size: clamp(45px, 6vw, 88px); line-height: .91; letter-spacing: -.065em; }
.story-stage-copy h2 span { color: #72e1dc; }
.story-stage-meta { margin-top: 22px; display: flex; align-items: center; gap: 12px; font-size: 9px; letter-spacing: .2em; }
.story-stage-meta b { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.3); clip-path: var(--shape-hex); color: #72e1dc; font-size: 10px; }
.story-media { position: absolute; z-index: 3; inset: 25% 1% -10% 20%; overflow: hidden; clip-path: polygon(7% 4%, 93% 0, 100% 77%, 83% 100%, 4% 91%, 0 18%); background: #0b1f3c; box-shadow: 0 24px 60px rgba(0,0,0,.24); }
.story-media::after { content: ""; position: absolute; z-index: 7; inset: 0; background: linear-gradient(90deg, rgba(7,19,40,.85), transparent 38%), linear-gradient(0deg, rgba(7,19,40,.75), transparent 45%); pointer-events: none; }
.story-visual { position: absolute; z-index: 1; inset: 0; opacity: 0; transition: opacity .24s linear; }
.story-visual.is-active { z-index: 2; opacity: 1; }
.story-visual img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.story-chapters { position: relative; z-index: 5; border-left: 1px solid rgba(255,255,255,.12); background: linear-gradient(90deg, rgba(4,12,27,.35), rgba(4,12,27,.82)); }
.story-chapter { min-height: 100svh; padding: 15vh clamp(34px, 4vw, 70px) 12vh; display: flex; flex-direction: column; justify-content: center; border-bottom: 1px solid rgba(255,255,255,.1); opacity: .28; transform: translateY(35px); transition: opacity .45s var(--ease), transform .55s var(--ease); }
.story-chapter.is-active { opacity: 1; transform: none; }
.story-chapter-number { width: 62px; height: 62px; display: grid; place-items: center; margin-bottom: 38px; border: 1px solid rgba(255,255,255,.25); clip-path: var(--shape-hex); color: #72e1dc; font-size: 13px; font-weight: 800; }
.story-chapter > p:not(.story-chapter-copy) { margin: 0 0 16px; color: #72e1dc; font-size: 8px; font-weight: 800; letter-spacing: .2em; }
.story-chapter h3 { margin: 0 0 22px; font-size: clamp(32px, 3.5vw, 54px); line-height: 1.02; }
.story-chapter-copy { margin: 0 0 30px; color: #9babc3; font-size: 15px; }
.story-chapter a { width: max-content; display: inline-flex; align-items: center; gap: 17px; color: #fff; font-size: 11px; font-weight: 800; text-decoration: none; }
.story-chapter a span { color: #72e1dc; font-size: 20px; transition: transform .2s var(--ease); }
.story-chapter a:hover span { transform: translateX(6px); }

.about-section, .paths-section, .site-footer { content-visibility: auto; contain-intrinsic-size: 700px; }

@media (min-width: 1441px) {
  .path-icon { top: 346px; }
}

@media (max-width: 1180px) {
  .hero-card { width: 220px; height: 240px; min-height: 240px; padding: 16px 18px; }
  .hero-card-icon { width: 52px; height: 52px; flex-basis: 52px; margin-bottom: 10px; }
  .hero-card-description { min-height: 48px; margin-block: 7px 10px; font-size: 12px; }
  .circle-arrow { width: 42px; height: 42px; flex-basis: 42px; }
  .value-grid { grid-template-columns: repeat(2, 1fr); }
  .path-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .path-card { min-height: 570px; }
  .path-icon { top: calc((100vw - 2 * var(--page-gutter) - 20px) / 2 * 1.25 - 35px); }
}

@media (max-width: 1023px) {
  .hub-story { min-height: 430svh; display: block; }
  .story-sticky { z-index: 2; height: 100svh; min-height: 620px; }
  .story-stage-copy { top: 11vh; left: 28px; }
  .story-stage-copy h2 { font-size: clamp(42px, 8vw, 68px); }
  .story-media { inset: 28% 2% 0 15%; }
  .story-chapters { z-index: 4; margin-top: -100svh; padding-top: 58svh; border-left: 0; background: transparent; }
  .story-chapter { position: relative; min-height: 93svh; padding: 48vh 7vw 9vh; justify-content: flex-end; opacity: .18; border-bottom-color: rgba(255,255,255,.08); }
  .story-chapter::before { content: ""; position: absolute; z-index: -1; inset: 35% 0 0; background: linear-gradient(0deg, rgba(4,12,27,.98) 20%, rgba(4,12,27,.85) 68%, transparent); }
  .story-chapter h3, .story-chapter p, .story-chapter a, .story-chapter-number { position: relative; z-index: 1; }
  .hero { min-height: auto; padding-top: 74px; }
  .hero-art { width: min(920px, calc(100vw - 32px)); height: auto; min-height: 620px; aspect-ratio: 4 / 5; box-shadow: 0 18px 50px rgba(20,48,90,.12); }
  .hero-card { width: auto; max-width: 44%; height: auto; min-height: 58px; padding: 12px 14px; flex-direction: row; gap: 10px; align-items: center; text-align: left; }
  .hero-card-icon { width: 38px; height: 38px; flex-basis: 38px; margin: 0; }
  .hero-card-icon svg { width: 22px; height: 22px; }
  .hero-card-title { font-size: 17px; }
  .hero-card-description, .pending-label { display: none; }
  .circle-arrow { width: 34px; height: 34px; flex: 0 0 34px; margin: 0 0 0 auto; font-size: 18px; }
  .hero-card--about { left: 24px; top: 18px; }.hero-card--lineup { right: 24px; top: 18px; }.hero-card--anahit { left: 24px; bottom: 18px; }.hero-card--shipping { right: 24px; bottom: 18px; }
  .hero-intro { min-height: 390px; margin-top: 64px; }
  .hero-intro-portrait { right: -90px; width: 390px; opacity: .7; }
  .about-section { grid-template-columns: 1fr; }
  .about-orbit { min-height: 250px; }
}

@media (max-width: 767px) {
  html { scroll-padding-top: 76px; }
  .site-header { height: 68px; }
  .header-inner { width: calc(100% - 36px); }
  .brand-mark { width: 31px; height: 36px; }.brand-name { font-size: 11px; letter-spacing: .17em; }
  .menu-button { width: 44px; height: 44px; display: grid; place-content: center; gap: 6px; padding: 0; border: 1px solid var(--color-border); clip-path: var(--shape-hex); color: var(--color-ink); background: rgba(255,255,255,.75); }
  .menu-button span:not(.sr-only) { width: 18px; height: 2px; background: currentColor; transition: transform .2s var(--ease); }
  .menu-button[aria-expanded="true"] span:nth-last-child(2) { transform: translateY(4px) rotate(45deg); }
  .menu-button[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
  .primary-nav { position: absolute; top: 62px; right: 18px; width: auto; min-width: 190px; padding: 16px; display: none; flex-direction: column; align-items: stretch; gap: 0; border: 1px solid var(--color-border); clip-path: var(--shape-cut-b); background: #fff; box-shadow: var(--shadow-card); }
  .primary-nav.is-open { display: flex; }
  .primary-nav a { padding: 12px; }
  .hero { padding-top: 72px; padding-bottom: 66px; }
  .hero-art { width: calc(100vw - 24px); min-height: 540px; }
  .hero-panel--about { clip-path: polygon(0 0, 52% 0, 54% 50%, 0 47%); }
  .hero-panel--lineup { clip-path: polygon(50% 0, 100% 0, 100% 47%, 54% 50%); }
  .hero-panel--anahit { clip-path: polygon(0 45%, 54% 50%, 50% 100%, 0 100%); }
  .hero-panel--shipping { clip-path: polygon(54% 50%, 100% 45%, 100% 100%, 48% 100%); }
  .hero-separators { transform: none; filter: none; }
  .hero-fade { height: 110px; opacity: .45; }
  .hero-card { max-width: calc(50% - 20px); padding: 8px 9px; gap: 6px; }
  .hero-card-icon { display: none; }
  .hero-card-title { overflow-wrap: anywhere; font-size: 13px; letter-spacing: -.03em; }
  .circle-arrow { width: 28px; height: 28px; flex-basis: 28px; font-size: 15px; }
  .hero-card--about { left: 14px; top: 10px; }.hero-card--lineup { right: 14px; top: 10px; }.hero-card--anahit { left: 14px; bottom: 10px; }.hero-card--shipping { right: 14px; bottom: 10px; }
  .hero-copy { width: calc(100% - 40px); }
  .hero-intro { min-height: 430px; margin-top: 56px; }
  .hero-intro { overflow: hidden; }
  .hero-intro::before { inset: 3% 8px 2%; }
  .hero-intro-portrait { top: 12px; right: -12px; width: 230px; opacity: .45; }
  .hero-copy { padding: 70px 0 46px; }
  .hero h1 { font-size: clamp(36px, 10vw, 48px); line-height: 1.05; }
  .hero-description { font-size: 16px; line-height: 1.55; }
  .hero-actions { flex-direction: column; }
  .button { width: 100%; }
  .about-section { width: calc(100% - 24px); padding: 34px 22px; }
  .about-orbit { min-height: 290px; margin: -28px 0 4px; }
  .about-cyclist { bottom: -34px; width: 310px; }
  .value-grid { grid-template-columns: 1fr; }
  .value-item p { font-size: 12px; }
  .paths-section { padding: 82px 0 76px; }
  .path-grid { grid-template-columns: 1fr; }
  .path-card { min-height: 0; }
  .path-icon { top: calc((100vw - 2 * var(--page-gutter)) * 1.25 - 35px); }
  .path-content { min-height: 340px; }
  .footer-main { grid-template-columns: 1fr; gap: 38px; }
  .footer-bottom { padding-block: 20px; flex-direction: column; align-items: flex-start; justify-content: center; }
  .footer-legal { max-width: 330px; }
  .atmosphere-grid { opacity: .2; }
  .hub-story { min-height: 415svh; }
  .story-sticky { min-height: 560px; }
  .story-stage-copy { top: 84px; right: 18px; left: 18px; }
  .story-kicker { font-size: 7px; letter-spacing: .2em; }
  .story-stage-copy h2 { font-size: clamp(40px, 13vw, 58px); }
  .story-stage-meta { margin-top: 13px; }
  .story-stage-meta b { width: 32px; height: 32px; }
  .story-media { inset: 28% 0 4% 8%; }
  .story-chapter { min-height: 90svh; padding: 45vh 22px 8vh; }
  .story-chapter-number { width: 48px; height: 48px; margin-bottom: 22px; }
  .story-chapter h3 { font-size: clamp(30px, 9vw, 42px); }
  .story-chapter-copy { font-size: 14px; }
}

@media (max-width: 390px) {
  .hero-card-title { font-size: 11px; }
  .hero-card { max-width: calc(50% - 16px); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .hero-panel.is-active, .hero-panel.is-active img, .hero-card:hover, .hero-card:focus-visible, .hero-card.is-active { transform: none; }
  .js .reveal { opacity: 1; transform: none; }
  .atmosphere-grid { opacity: .18; }
  .hero-art, .hero-intro-portrait { transform: none; }
  .hub-story { min-height: auto; display: block; }
  .story-sticky { position: relative; height: 760px; min-height: 0; }
  .story-chapters { margin: 0; padding: 0; background: #08152b; }
  .story-chapter { min-height: auto; padding: 70px var(--page-gutter); opacity: 1; transform: none; }
  .story-visual { transition: none; }
}
