:root {
  --coal: #121611;
  --coal-2: #1d241d;
  --ink: #20241d;
  --sand: #edeae1;
  --sand-2: #f5f2e9;
  --muted: #8a948b;
  --rust: #e96837;
  --rust-dark: #cf5527;
  --white: #f7f5ed;
  --line-dark: rgba(21, 28, 22, .17);
  --line-light: rgba(255, 255, 255, .2);
  --heading: "Barlow Condensed", "Arial Narrow", Impact, sans-serif;
  --body: "Manrope", system-ui, -apple-system, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { margin: 0; padding-top: 36px; color: var(--ink); background: var(--coal); font-family: var(--body); -webkit-font-smoothing: antialiased; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button:focus-visible, a:focus-visible { outline: 3px solid var(--rust); outline-offset: 4px; }
::selection { background: var(--rust); color: var(--white); }

.container { width: min(100% - 112px, 1400px); margin-inline: auto; }
.section-pad { padding-block: clamp(86px, 9.5vw, 160px); }

/* Concept disclaimer and navigation */
.concept-bar { position: fixed; z-index: 110; inset: 0 0 auto; height: 36px; background: var(--rust); color: #171a16; }
.concept-bar__inner { max-width: 1600px; height: 100%; margin-inline: auto; padding: 0 55px; display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.concept-label, .concept-info, .concept-description { font-size: 10px; font-weight: 800; letter-spacing: .11em; }
.concept-label { display: inline-flex; gap: 9px; align-items: center; white-space: nowrap; }
.concept-dot { height: 7px; width: 7px; background: #161d17; border-radius: 50%; box-shadow: 0 0 0 4px rgba(28,36,28,.13); }
.concept-description { font-weight: 600; letter-spacing: .02em; }
.concept-info { background: none; border: 0; color: inherit; cursor: pointer; padding: 6px 0; white-space: nowrap; }
.concept-info span { font-size: 15px; margin-left: 6px; }

.site-header { position: fixed; top: 36px; left: 0; right: 0; height: 88px; z-index: 90; color: #fff; transition: background .35s ease, border-color .35s ease, height .35s ease; border-bottom: 1px solid transparent; }
.site-header.is-scrolled, .site-header.menu-open { height: 76px; background: rgba(18,22,17,.95); backdrop-filter: blur(16px); border-bottom-color: rgba(255,255,255,.12); }
.header-inner { height: 100%; max-width: 1600px; padding: 0 55px; margin: auto; display: flex; align-items: center; gap: 32px; }
.brand { display: inline-flex; gap: 10px; align-items: center; flex-shrink: 0; color: var(--white); }
.brand-mark { display: flex; align-items: center; justify-content: center; color: var(--rust); width: 53px; height: 53px; transform: rotate(-4deg); }
.brand-mark svg { width: 52px; height: 52px; }
.brand-wordmark { display: flex; flex-direction: column; line-height: .86; font-family: var(--heading); }
.brand-wordmark strong { font-weight: 900; font-size: 33px; letter-spacing: .015em; }
.brand-wordmark small { font-size: 16px; font-weight: 700; letter-spacing: .36em; margin-top: 8px; }
.wordmark-stripes { color: var(--rust); letter-spacing: -.1em; font-weight: 900; }
.header-nav { display: flex; align-items: center; justify-content: center; gap: clamp(22px,3vw,48px); flex: 1; padding-left: 50px; }
.header-nav a { color: rgba(255,255,255,.83); font-size: 11px; letter-spacing: .1em; font-weight: 800; transition: color .2s; }
.header-nav a:hover { color: var(--rust); }
.header-shop { min-width: 180px; height: 42px; border: 1px solid rgba(255,255,255,.52); padding: 0 17px; display: flex; gap: 20px; align-items: center; justify-content: space-between; color: white; font-size: 10px; font-weight: 800; letter-spacing: .08em; transition: background .2s, color .2s; }
.header-shop:hover { background: white; color: var(--ink); }
.header-shop span { font-size: 19px; font-weight: 400; }
.menu-toggle, .mobile-menu { display: none; }

/* Hero */
.hero { position: relative; height: min(960px, calc(100svh - 36px)); min-height: 715px; background: #1b221b; color: var(--white); overflow: hidden; }
.hero-visual { position: absolute; inset: 0; background: url("./assets/hero-pajero-decals-v2.webp") center 51% / cover no-repeat; animation: hero-enter 1.6s cubic-bezier(.2,.6,.2,1) both; }
.hero-scrim { pointer-events: none; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(8,12,9,.91) 0%,rgba(8,12,9,.71) 28%,rgba(8,12,9,.42) 51%,rgba(8,12,9,.08) 83%), linear-gradient(0deg, rgba(7,13,8,.78) 0%,transparent 28%,transparent 65%,rgba(8,11,8,.43) 100%); }
.hero-inner { position: relative; z-index: 2; width: min(100% - 112px, 1400px); height: 100%; margin: auto; display: flex; flex-direction: column; justify-content: center; }
.hero-main { padding-top: 90px; width: min(860px,75%); }
.eyebrow { margin: 0 0 25px; display: flex; align-items: center; gap: 15px; font-size: 11px; font-weight: 800; letter-spacing: .21em; line-height: 1.3; }
.eyebrow--light { color: #dbded4; }
.eyebrow--dark { color: #5b6258; }
.eyebrow-line { width: 38px; height: 2px; background: var(--rust); display: inline-block; }
.hero h1 { font-family: var(--heading); font-size: clamp(90px, 9.8vw, 159px); font-weight: 900; line-height: .77; letter-spacing: -.025em; margin: 0 0 44px -6px; text-transform: uppercase; text-shadow: 0 4px 25px rgba(5,8,5,.16); }
.hero h1 em { color: var(--rust); font-style: normal; white-space: nowrap; }
.hero-copy { max-width: 495px; font-size: 15px; line-height: 1.9; font-weight: 500; color: #e8e9e2; margin: 0 0 34px; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 35px; }
.btn { display: inline-flex; justify-content: space-between; align-items: center; gap: 30px; min-height: 56px; padding: 0 24px; font-size: 11px; letter-spacing: .11em; font-weight: 900; border: 0; cursor: pointer; transition: transform .22s, background .22s, border-color .22s, color .22s; }
.btn:hover { transform: translateY(-3px); }
.btn--orange { background: var(--rust); color: #1b1c17; }
.btn--orange:hover { background: #f57d49; }
.btn--dark { color: #fff; background: #1f2620; }
.btn--dark:hover { background: var(--rust); color: #1b1c17; }
.btn--outline { color: var(--white); border: 1px solid #9aa399; background: transparent; }
.btn--outline:hover { background: var(--white); color: var(--ink); }
.btn-arrow { font-size: 24px; font-weight: 400; line-height: 1; }
.link-arrow { color: #f5f1e8; font-size: 11px; font-weight: 800; letter-spacing: .11em; padding-bottom: 8px; border-bottom: 1px solid rgba(255,255,255,.54); transition: color .2s; }
.link-arrow:hover { color: var(--rust); }
.link-arrow span { margin-left: 15px; font-size: 17px; font-weight: 400; }
.hero-footer { position: absolute; bottom: 37px; left: 0; right: 0; display: flex; justify-content: space-between; align-items: center; gap: 20px; font-size: 10px; font-weight: 800; letter-spacing: .19em; color: rgba(255,255,255,.72); }
.hero-scroll { display: flex; align-items: center; gap: 16px; }
.scroll-line { width: 65px; height: 1px; background: rgba(255,255,255,.5); }
.hero-vertical { position: absolute; right: 29px; top: 43%; z-index: 2; writing-mode: vertical-rl; font-size: 10px; font-weight: 800; letter-spacing: .19em; color: rgba(255,255,255,.7); }
.hero-pajero-note { position: absolute; z-index: 3; right: 30px; bottom: 126px; display: flex; gap: 14px; align-items: center; padding: 15px 18px; border: 1px solid rgba(247,245,237,.42); background: rgba(19,24,19,.7); backdrop-filter: blur(10px); transition: border-color .2s, background .2s; }
.hero-pajero-note:hover { border-color: var(--rust); background: rgba(19,24,19,.91); }
.hero-pajero-note__line { height: 37px; width: 3px; background: var(--rust); flex-shrink: 0; }
.hero-pajero-note strong { display: block; font: 800 23px/.96 var(--heading); letter-spacing: .04em; }
.hero-pajero-note small { display: block; margin-top: 7px; font-size: 9px; letter-spacing: .15em; font-weight: 800; color: #cfd3c8; }
.hero-pajero-note small span { color: var(--rust); font-size: 15px; padding-left: 6px; }
@keyframes hero-enter { from { transform: scale(1.055); opacity: .5; } to { transform: scale(1); opacity: 1; } }

/* Directional banner */
.ticker { height: 70px; overflow: hidden; color: #161c16; background: #d7d5c9; display: flex; align-items: center; border-bottom: 1px solid #bfc0b7; }
.ticker-track { display: flex; align-items: center; gap: 28px; min-width: max-content; animation: ticker-scroll 42s linear infinite; }
.ticker span { font: 800 29px/.9 var(--heading); letter-spacing: .05em; }
.ticker i { color: var(--rust-dark); font-style: normal; font-size: 25px; }
@keyframes ticker-scroll { to { transform: translateX(-50%); } }

/* Merch collection */
.collection { background: var(--sand); }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: 70px; margin-bottom: 54px; }
.section-title { font: 900 clamp(64px,7.3vw,118px)/.82 var(--heading); letter-spacing: -.02em; margin: 0; color: var(--ink); }
.section-title em { font-style: normal; color: var(--rust-dark); }
.section-head__aside { max-width: 280px; margin-bottom: 10px; }
.section-head__aside p { color: #545b54; font-size: 13px; line-height: 1.9; margin: 0 0 25px; }
.small-tag { display: inline-block; border-top: 1px solid #a0a79d; padding-top: 12px; font-size: 9px; font-weight: 800; letter-spacing: .16em; color: #5a665b; }
.product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.product-card { min-width: 0; padding: 0; border: none; background: none; text-align: left; cursor: pointer; color: var(--ink); }
.product-photo { position: relative; overflow: hidden; background: #c5c5b9; aspect-ratio: 1 / 1.06; }
.product-photo::after { content: ""; position: absolute; inset: auto 0 0; height: 26%; background: linear-gradient(0deg,rgba(0,0,0,.35),transparent); pointer-events: none; }
.product-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.19,1,.22,1); }
.product-photo--art { background: radial-gradient(circle at 50% 43%, #353b30 0%, #1a2019 68%, #141914 100%); }
.product-photo--clan { background: radial-gradient(circle at 49% 43%, #4b4b39 0%, #242a22 65%, #131914 100%); }
.product-photo--mud { background: radial-gradient(circle at 50% 42%, #46372b 0%, #282b22 63%, #151912 100%); }
.product-photo--art img { object-fit: contain; padding: clamp(18px,2.7vw,43px) clamp(12px,2vw,30px); filter: drop-shadow(0 18px 19px rgba(0,0,0,.35)); }
.product-card:hover .product-photo img { transform: scale(1.065); }
.product-index { position: absolute; z-index: 2; left: 20px; top: 20px; background: rgba(237,234,225,.91); padding: 8px 10px; color: #333c30; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.product-quick { position: absolute; z-index: 2; bottom: 17px; left: 20px; right: 18px; color: white; display: flex; align-items: center; justify-content: space-between; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.product-quick span { font-size: 26px; font-weight: 400; }
.product-details { display: flex; align-items: start; justify-content: space-between; gap: 12px; padding: 20px 1px 0; }
.product-type { color: #73766c; font-size: 9px; letter-spacing: .12em; font-weight: 800; }
.product-details h3 { font: 800 clamp(24px,2.5vw,36px)/1 var(--heading); letter-spacing: .025em; margin: 9px 0 0; }
.product-price { white-space: nowrap; margin-top: 19px; font: 700 20px/1 var(--heading); color: #30362e; }
.product-price span { color: var(--rust-dark); }
.product-price--soon { font: 900 15px/1 var(--heading); letter-spacing: .1em; color: #8c5c3d; }
.collection-footer { border-top: 1px solid var(--line-dark); padding-top: 22px; margin-top: 54px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.collection-footer p { font-size: 10px; color: #73786e; line-height: 1.5; margin: 0; }
.text-button { font-size: 10px; font-weight: 900; letter-spacing: .13em; padding: 0 0 8px; border: 0; border-bottom: 1px solid var(--ink); cursor: pointer; background: none; color: var(--ink); white-space: nowrap; }
.text-button span { margin-left: 12px; font-size: 17px; font-weight: 400; }

/* Story */
.manifesto { display: grid; grid-template-columns: 1fr 1fr; min-height: 810px; background: #182019; color: var(--white); }
.manifesto-text { align-self: stretch; display: flex; flex-direction: column; align-items: start; justify-content: center; padding: 95px max(42px,calc((100vw - 1400px)/2)) 95px max(56px,calc((100vw - 1400px)/2)); padding-right: 8%; }
.manifesto h2 { font: 900 clamp(68px,7.4vw,116px)/.83 var(--heading); margin: 0 0 38px; letter-spacing: -.017em; }
.manifesto h2 em { font-style: normal; color: var(--rust); }
.manifesto-text > p:not(.eyebrow) { font-size: 14px; line-height: 1.95; color: #c4c9c1; max-width: 470px; margin: 0 0 28px; }
.manifesto-text .manifesto-sign { color: #f0efe7 !important; font-size: 11px !important; font-weight: 800; letter-spacing: .11em; margin-top: 10px !important; margin-bottom: 36px !important; }
.manifesto-sign span { color: var(--rust); text-transform: none; letter-spacing: 0; font-weight: 600; }
.manifesto-picture { overflow: hidden; min-height: 670px; position: relative; background: #293229; }
.manifesto-picture__image { position: absolute; inset: 0; background: linear-gradient(0deg,rgba(0,0,0,.65),transparent 46%), url("./assets/hero-pajero-decals-v2.webp") 73% 50% / cover; filter: saturate(.85); transform: scale(1.09); }
.heritage-badge { position: absolute; z-index: 3; right: 38px; top: 34px; width: 178px; padding: 13px 12px 12px; display: flex; flex-direction: column; align-items: center; background: #e6e0d2; color: #20231d; box-shadow: 0 15px 38px rgba(0,0,0,.25); transform: rotate(3deg); }
.heritage-badge::before { content: ""; position: absolute; inset: 5px; border: 1px solid rgba(27,30,24,.2); pointer-events: none; }
.heritage-badge__eyebrow { align-self: stretch; margin-bottom: 6px; text-align: center; font: 800 8px/1.2 var(--body); letter-spacing: .18em; }
.heritage-badge img { height: 202px; width: 152px; object-fit: contain; }
.heritage-badge__caption { align-self: stretch; text-align: center; padding-top: 5px; border-top: 1px solid rgba(27,30,24,.3); font: 800 7px/1.3 var(--body); letter-spacing: .15em; }
.picture-corner { position: absolute; z-index: 2; color: white; font-weight: 800; letter-spacing: .16em; font-size: 10px; }
.picture-corner--top { top: 38px; left: 38px; }
.picture-corner--bottom { bottom: 36px; left: 38px; }
.picture-stamp { position: absolute; z-index: 2; right: 38px; bottom: 33px; width: 122px; height: 122px; border: 2px solid rgba(255,255,255,.82); color: white; border-radius: 50%; transform: rotate(13deg); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.picture-stamp span { font: 800 44px/.8 var(--heading); }
.picture-stamp small { margin-top: 11px; font: 700 10px/1.15 var(--heading); letter-spacing: .13em; }
.channel-secondary { display: inline-block; margin-top: 24px; padding-bottom: 8px; border-bottom: 1px solid #606b60; font-size: 10px; letter-spacing: .11em; font-weight: 800; color: #3c483c; transition: color .2s; }
.channel-secondary:hover { color: var(--rust-dark); }
.channel-secondary span { font-size: 16px; margin-left: 9px; }

/* Channel */
.channel { background: #f1eee6; }
.channel-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(35px,6vw,100px); }
.channel-copy { max-width: 550px; }
.channel-copy p:not(.eyebrow) { margin: 36px 0; max-width: 465px; font-size: 13px; line-height: 2; color: #576058; }
.channel .section-title { font-size: clamp(65px,7vw,115px); }
.video-card { position: relative; min-height: 430px; overflow: hidden; background: #263328; color: white; display: block; isolation: isolate; }
.video-card__image { position: absolute; inset: 0; background: url("./assets/hero-offroad.webp") 63% 52% / cover; filter: saturate(.8); transform: scale(1.02); transition: transform .7s; }
.video-card:hover .video-card__image { transform: scale(1.1); }
.video-card::after { content: ""; position: absolute; z-index: 0; inset: 0; background: linear-gradient(0deg,rgba(9,13,9,.82),transparent 65%); }
.video-card__screen { position: relative; z-index: 1; min-height: 430px; padding: 29px 32px 30px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; }
.video-eyebrow { align-self: flex-start; font-size: 10px; font-weight: 800; letter-spacing: .12em; color: #e6eee2; }
.play-button { width: 85px; height: 85px; border-radius: 50%; background: var(--rust); color: var(--coal); display: grid; place-items: center; transition: transform .3s, background .3s; }
.play-button svg { height: 27px; width: 27px; margin-left: 5px; }
.video-card:hover .play-button { transform: scale(1.11); background: var(--white); }
.video-card__bottom { align-self: stretch; display: flex; justify-content: space-between; align-items: end; gap: 16px; }
.video-card__bottom span:first-child { font: 800 clamp(24px,3vw,44px)/.92 var(--heading); letter-spacing: .02em; }
.video-card__bottom span:last-child { white-space: nowrap; border-bottom: 1px solid #fff; padding-bottom: 7px; font: 800 9px/1.1 var(--body); letter-spacing: .14em; }

/* Closing */
.statement { position: relative; background: #df6335; color: #191c16; padding: 105px 0 105px; overflow: hidden; }
.statement-inner { position: relative; text-align: center; }
.statement p { margin: 0; font: 900 clamp(79px,13.6vw,220px)/.72 var(--heading); letter-spacing: -.04em; }
.statement p i { font-style: normal; color: #f9efdf; }
.statement-link { display: inline-block; margin-top: 45px; font-size: 11px; font-weight: 900; letter-spacing: .13em; padding-bottom: 10px; border-bottom: 1px solid #1f211c; transition: color .2s; }
.statement-link:hover { color: white; }
.statement-link span { font-size: 20px; font-weight: 400; margin-left: 13px; }
.statement-asterisk { position: absolute; left: 1%; top: -62px; font-size: 66px; }
.statement-asterisk--bottom { left: auto; top: auto; right: 4%; bottom: -15px; font-size: 42px; }

/* Footer */
.footer { background: #0f150f; color: #f3f2e9; padding: 80px 0 24px; }
.footer-upper { display: flex; justify-content: space-between; gap: 32px; align-items: end; padding-bottom: 89px; }
.footer-logo { display: block; font: 900 clamp(76px,9.6vw,153px)/.73 var(--heading); letter-spacing: -.018em; }
.footer-logo em { color: var(--rust); font-style: normal; }
.footer-links { width: min(260px,30%); display: grid; align-items: center; }
.footer-links a { display: flex; justify-content: space-between; gap: 25px; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.24); font: 800 11px/1 var(--body); letter-spacing: .13em; transition: color .2s; }
.footer-links a:hover { color: var(--rust); }
.footer-links span { font-size: 19px; font-weight: 400; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.19); padding-top: 23px; display: flex; justify-content: space-between; gap: 25px; font-size: 10px; color: #8e9a8d; letter-spacing: .08em; font-weight: 700; }

/* Dialogs */
dialog { border: 0; padding: 0; box-shadow: 0 20px 100px rgba(0,0,0,.45); overflow: visible; max-height: calc(100dvh - 35px); }
dialog::backdrop { background: rgba(10,15,10,.86); backdrop-filter: blur(9px); }
.product-dialog { background: var(--sand-2); color: var(--ink); width: min(960px, calc(100vw - 42px)); }
.dialog-grid { display: grid; grid-template-columns: 1fr 1fr; min-height: 510px; }
.dialog-image-wrap { min-height: 510px; background: #c7c4b9; }
.dialog-image-wrap img { height: 100%; width: 100%; object-fit: cover; }
.dialog-image-wrap.is-art { background: radial-gradient(circle at center, #3c4436, #1a221a 70%); }
.dialog-image-wrap.is-art img { object-fit: contain; padding: 28px; }
.dialog-content { padding: 64px 45px 45px; display: flex; flex-direction: column; align-items: start; }
.dialog-close { position: absolute; right: 14px; top: 12px; z-index: 10; background: var(--coal); color: white; border: 0; height: 38px; width: 38px; display: grid; place-items: center; font-size: 27px; line-height: 1; cursor: pointer; }
.dialog-eyebrow { font: 800 10px/1.4 var(--body); letter-spacing: .16em; color: var(--rust-dark); }
.dialog-content h2, .info-dialog h2 { font: 900 clamp(42px,4.5vw,72px)/.88 var(--heading); margin: 19px 0 9px; }
.dialog-type { margin: 0; font: 800 10px/1.5 var(--body); letter-spacing: .16em; color: #667062; }
.dialog-price { display: block; font: 800 27px/1 var(--heading); margin-top: 28px; }
.dialog-note { font-size: 12px; line-height: 1.8; color: #687065; margin: 22px 0; }
.size-fieldset { border: 0; margin: auto 0 25px; padding: 0; width: 100%; }
.size-fieldset legend { margin-bottom: 12px; color: #4f594e; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.sizes { display: flex; flex-wrap: wrap; gap: 8px; }
.size-choice { min-width: 45px; height: 42px; padding: 0 10px; border: 1px solid #b3b9ae; background: transparent; font-size: 11px; font-weight: 800; cursor: pointer; }
.size-choice.is-selected { background: #222b22; color: white; border-color: #222b22; }
.disabled-purchase { opacity: .85; background: #777f73; color: white; width: 100%; min-height: 52px; border: 0; padding: 0 15px; display: flex; justify-content: space-between; align-items: center; font: 800 10px/1 var(--body); letter-spacing: .1em; cursor: not-allowed; }
.disabled-purchase span { font-size: 22px; font-weight: 400; }
.dialog-content small { color: #858b82; margin-top: 15px; font-size: 10px; }
.dialog-store-link { width: 100%; margin-top: auto; }
.info-dialog { padding: 58px; background: var(--sand-2); color: var(--ink); width: min(590px, calc(100vw - 42px)); }
.info-dialog p { font-size: 13px; line-height: 1.85; color: #596257; }
.info-done { margin-top: 22px; }

/* Progressive reveal */
.reveal { opacity: 1; transform: none; transition: opacity .75s ease, transform .75s cubic-bezier(.22,.61,.36,1); }
.reveal.is-visible { opacity: 1; transform: none; }
.product-grid .reveal:nth-child(2) { transition-delay: .11s; }
.product-grid .reveal:nth-child(3) { transition-delay: .22s; }

@media (min-width: 1600px) {
  .hero-main { width: 920px; }
  .hero-scrim { background: linear-gradient(90deg,rgba(8,12,9,.94),rgba(8,12,9,.65) 35%,rgba(8,12,9,.08) 80%),linear-gradient(0deg,rgba(7,13,8,.65),transparent 26%,transparent 75%,rgba(8,11,8,.3)); }
}

@media (max-width: 1150px) {
  .header-inner { padding-inline: 35px; }
  .header-nav { padding-left: 0; gap: 25px; }
  .header-shop { min-width: 160px; }
  .container, .hero-inner { width: calc(100% - 70px); }
  .hero h1 { font-size: clamp(90px,10vw,128px); }
  .manifesto-text { padding: 75px 35px; }
  .manifesto h2 { font-size: clamp(65px,7vw,95px); }
  .manifesto { min-height: 650px; }
}

@media (max-width: 850px) {
  .concept-bar__inner { padding-inline: 22px; }
  .concept-description { font-size: 9px; }
  .site-header { height: 75px; }
  .header-inner { padding-inline: 25px; }
  .brand-mark { width: 46px; height: 46px; }
  .brand-wordmark strong { font-size: 30px; }
  .brand-wordmark small { font-size: 13px; }
  .header-nav, .header-shop { display: none; }
  .menu-toggle { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 7px; width: 48px; height: 48px; border: 1px solid rgba(255,255,255,.45); background: none; margin-left: auto; cursor: pointer; }
  .menu-toggle span { display: block; background: white; height: 2px; width: 20px; transition: transform .2s; }
  .menu-open .menu-toggle span:first-child { transform: translateY(4.5px) rotate(45deg); }
  .menu-open .menu-toggle span:last-child { transform: translateY(-4.5px) rotate(-45deg); }
  .mobile-menu:not([hidden]) { display: flex; flex-direction: column; padding: 15px 25px 30px; background: rgba(18,22,17,.98); backdrop-filter: blur(20px); border-top: 1px solid rgba(255,255,255,.14); }
  .mobile-menu a { display: flex; justify-content: space-between; align-items: center; padding: 19px 0; font: 800 27px/1 var(--heading); border-bottom: 1px solid rgba(255,255,255,.15); }
  .mobile-menu span { color: var(--rust); font-size: 22px; font-weight: 400; }
  .hero { min-height: 760px; max-height: 950px; }
  .hero-visual { background-position: 57% center; }
  .hero-scrim { background: linear-gradient(90deg,rgba(8,12,9,.86) 0%,rgba(8,12,9,.62) 52%,rgba(8,12,9,.18) 100%),linear-gradient(0deg,rgba(7,13,8,.72),transparent 34%,rgba(8,11,8,.1)); }
  .hero-main { width: min(100%,650px); padding-top: 75px; }
  .hero h1 { font-size: clamp(87px,11.8vw,116px); }
  .hero-footer span:last-child { display: none; }
  .hero-vertical { display: none; }
  .hero-pajero-note { right: 35px; bottom: 91px; }
  .product-grid { gap: 13px; }
  .product-details { flex-direction: column; gap: 4px; }
  .product-price { margin-top: 7px; }
  .product-details h3 { font-size: 28px; }
  .manifesto { grid-template-columns: 1fr; }
  .manifesto-text { padding: 95px 35px 85px; }
  .manifesto-picture { min-height: 450px; }
  .manifesto-picture__image { background-position: 60% center; }
  .heritage-badge { width: 150px; right: 26px; top: 24px; }
  .heritage-badge img { height: 160px; width: 122px; }
  .channel-grid { grid-template-columns: 1fr; gap: 48px; }
  .channel-copy { max-width: 660px; }
  .channel-copy p:not(.eyebrow) { max-width: 600px; }
  .footer-upper { align-items: start; }
  .footer-logo { font-size: clamp(60px,9.5vw,90px); }
}

@media (max-width: 580px) {
  body { padding-top: 33px; }
  .concept-bar { height: 33px; }
  .concept-bar__inner { padding-inline: 16px; }
  .concept-label { font-size: 9px; }
  .concept-description { display: none; }
  .concept-info { font-size: 9px; }
  .site-header { top: 33px; height: 72px; }
  .site-header.is-scrolled, .site-header.menu-open { height: 69px; }
  .header-inner { padding-inline: 18px; }
  .brand-mark, .brand-mark svg { width: 40px; height: 40px; }
  .brand-wordmark strong { font-size: 26px; }
  .brand-wordmark small { font-size: 12px; letter-spacing: .25em; margin-top: 7px; }
  .menu-toggle { height: 43px; width: 43px; }
  .container, .hero-inner { width: calc(100% - 36px); }
  .section-pad { padding-block: 78px; }
  .eyebrow { font-size: 9px; gap: 10px; margin-bottom: 24px; letter-spacing: .16em; }
  .eyebrow-line { width: 25px; }
  .hero { height: 750px; min-height: min(750px,calc(100svh - 33px)); max-height: none; }
  .hero-visual { background-position: 60% center; }
  .hero-scrim { background: linear-gradient(90deg,rgba(8,12,9,.78),rgba(8,12,9,.5) 66%,rgba(8,12,9,.3)),linear-gradient(0deg,rgba(6,12,6,.86),transparent 43%,rgba(8,11,8,.28)); }
  .hero-main { padding-top: 52px; }
  .hero h1 { font-size: clamp(66px,13.2vw,88px); margin-bottom: 28px; margin-left: -3px; }
  .hero-copy { font-size: 12px; line-height: 1.8; max-width: 345px; margin-bottom: 26px; }
  .hero-actions { gap: 24px; }
  .btn { padding-inline: 17px; min-height: 52px; font-size: 10px; gap: 15px; }
  .link-arrow { font-size: 9px; }
  .link-arrow span { margin-left: 7px; }
  .hero-footer { bottom: 20px; font-size: 8px; }
  .hero-pajero-note { right: 18px; bottom: 78px; padding: 11px 12px; max-width: 205px; gap: 10px; }
  .hero-pajero-note strong { font-size: 18px; }
  .hero-pajero-note small { font-size: 7px; }
  .hero-pajero-note__line { height: 31px; }
  .hero-scroll { display: none; }
  .ticker { height: 55px; }
  .ticker span { font-size: 24px; }
  .ticker-track { gap: 18px; }
  .section-head { display: block; margin-bottom: 36px; }
  .section-title { font-size: clamp(66px,12vw,87px); }
  .section-head__aside { max-width: 100%; margin-top: 26px; }
  .section-head__aside p { font-size: 12px; margin-bottom: 17px; }
  .product-grid { grid-template-columns: 1fr; gap: 32px; }
  .product-photo { aspect-ratio: 1 / 1.04; }
  .product-details { flex-direction: row; }
  .product-details h3 { font-size: 33px; }
  .product-price { margin-top: 16px; }
  .collection-footer { flex-direction: column; align-items: start; margin-top: 40px; }
  .manifesto-text { padding: 80px 18px; }
  .manifesto h2 { font-size: clamp(67px,12vw,92px); margin-bottom: 25px; }
  .manifesto-text > p:not(.eyebrow) { font-size: 12px; }
  .manifesto-picture { min-height: 370px; }
  .heritage-badge { width: 122px; right: 17px; top: 15px; padding: 10px 9px; }
  .heritage-badge img { height: 129px; width: 99px; }
  .heritage-badge__eyebrow { font-size: 6px; }
  .heritage-badge__caption { font-size: 6px; }
  .picture-corner--top { top: 19px; left: 18px; }
  .picture-corner--bottom { left: 18px; bottom: 20px; font-size: 8px; }
  .picture-stamp { right: 18px; bottom: 20px; width: 85px; height: 85px; }
  .picture-stamp span { font-size: 30px; }
  .picture-stamp small { font-size: 8px; margin-top: 6px; }
  .channel-grid { gap: 38px; }
  .channel .section-title { font-size: clamp(65px,11vw,88px); }
  .channel-copy p:not(.eyebrow) { margin: 27px 0; font-size: 12px; }
  .video-card, .video-card__screen { min-height: 310px; }
  .video-card__screen { padding: 18px; }
  .video-eyebrow { font-size: 8px; }
  .video-card__bottom span:first-child { font-size: 29px; }
  .video-card__bottom span:last-child { font-size: 8px; }
  .play-button { width: 61px; height: 61px; }
  .statement { padding: 85px 0; }
  .statement p { font-size: clamp(67px,14.8vw,105px); }
  .statement-asterisk { font-size: 35px; top: -45px; }
  .statement-link { margin-top: 40px; font-size: 9px; }
  .footer { padding-top: 67px; }
  .footer-upper { display: block; padding-bottom: 63px; }
  .footer-logo { font-size: clamp(78px,15vw,112px); }
  .footer-links { width: 100%; margin-top: 45px; }
  .footer-bottom { flex-direction: column; gap: 11px; font-size: 9px; }
  .dialog-grid { grid-template-columns: 1fr; }
  .product-dialog { width: min(470px,calc(100vw - 24px)); max-height: calc(100dvh - 16px); overflow: auto; }
  .dialog-image-wrap { min-height: 0; height: 240px; }
  .dialog-content { padding: 28px 25px 30px; }
  .dialog-content h2 { font-size: 48px; }
  .dialog-price { margin-top: 17px; }
  .dialog-note { margin: 12px 0 15px; }
  .size-fieldset { margin-bottom: 16px; }
  .info-dialog { padding: 50px 27px 30px; max-height: calc(100dvh - 20px); overflow: auto; }
  .info-dialog h2 { font-size: 52px; }
}

@media (max-width: 375px) {
  .hero h1 { font-size: 63px; }
  .brand-wordmark strong { font-size: 23px; }
  .brand-wordmark small { font-size: 10px; }
  .hero-actions { gap: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; transition-duration: .001ms !important; }
  .reveal { opacity: 1; transform: none; }
}
