/* Pacheco's Tires mockup · MN Design · direction: name-as-monument (taste-skill seed 171897999), type redrawn to Archivo, colours from the subject: rubber, sidewall letters, shop-sign yellow */
:root{
  --bg:#151515; --surface:#222220; --ink:#efeee9; --muted:#b4b3ad; --accent:#f2c230; --accent-ink:#151515;
  --field:#efeee9; --field-ink:#151515;
  --m:clamp(20px,3vw,40px);
  --t-small:.875rem; --t-body:clamp(1.0625rem,1rem + .25vw,1.1875rem); --t-lead:clamp(1.25rem,1.1rem + .6vw,1.5rem);
  --t-head:clamp(2rem,1.3rem + 3vw,3.75rem); --t-poster:clamp(3.4rem,9vw,8.6rem);
  --r:6px;

  --c1:#ffd54d;
  --c2:#fbfaf6;
  --c3:#0d0d0d;
  --c4:rgba(10,10,10,.62);
  --c5:#e2e0d8;
  --c6:#151515;
  --c7:#4a4945;
  --c8:#333;
  --c9:#2c2a22;
}
*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:clip}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--t-body)/1.55 "Archivo",system-ui,sans-serif;font-variation-settings:"wdth" 100}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2{margin:0;font-weight:850;line-height:.95;letter-spacing:-.01em;font-variation-settings:"wdth" 112}
h2{font-size:var(--t-head);text-wrap:balance}
p{margin:0}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:absolute;left:var(--m);top:-80px;background:var(--accent);color:var(--accent-ink);padding:12px 16px;z-index:10;font-weight:700}
.skip:focus{top:12px}
.tap{display:inline-flex;align-items:center;min-height:44px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;background:var(--accent);color:var(--accent-ink);font-weight:750;text-decoration:none;border-radius:var(--r);font-variation-settings:"wdth" 100;transition:transform .15s ease,background-color .15s ease}
.btn:hover{background:var(--c1)}.btn:active{transform:translateY(1px)}

/* top bar over the photo */
.top{position:absolute;inset:0 0 auto;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px var(--m);color:var(--c2)}
.mark{font-weight:800;text-decoration:none;font-variation-settings:"wdth" 110}
.top nav{display:flex;gap:22px}
.top nav a{text-decoration:none;font-size:.95rem}
.top nav a:hover{text-decoration:underline;text-underline-offset:4px}

/* hero: the name on the bottom edge, like the raised letters on a sidewall */
.hero{position:relative;height:100svh;min-height:600px;max-height:1100px;overflow:hidden;background:var(--c3)}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:48%;background:var(--c4);z-index:1}
.hero-foot{position:absolute;inset:auto var(--m) 0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px 24px;color:var(--c2)}
.lede{font-size:var(--t-lead);line-height:1.35;max-width:30ch}
h1{grid-column:1/-1;font-size:min(calc((100vw - 2 * var(--m)) / 7.5),15rem);line-height:.78;letter-spacing:-.025em;font-variation-settings:"wdth" 125;text-transform:uppercase;white-space:nowrap;margin:0 0 -.02em -.04em;overflow:hidden;padding-bottom:.06em}
h1 span{display:block;animation:rise .9s cubic-bezier(.2,.7,.1,1) both}
@keyframes rise{from{transform:translateY(60%);opacity:0}to{transform:none;opacity:1}}

/* poster list */
.racks{padding:clamp(80px,10vw,150px) var(--m) clamp(70px,8vw,120px)}
.racks h2{margin-bottom:clamp(28px,4vw,56px)}
.poster{list-style:none;margin:0;padding:0}
.poster li{display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.poster span{font-size:var(--t-poster);font-weight:850;line-height:.98;text-transform:uppercase;font-variation-settings:"wdth" 118;transition:color .15s ease}
.poster small{font-size:1.125rem;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.poster li:hover span{color:var(--accent)}

/* size decoder */
.size{background:var(--field);color:var(--field-ink);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);padding:clamp(80px,9vw,140px) var(--m);align-items:center}
.size-text>p{max-width:44ch;margin:20px 0 32px}
.decoder{background:var(--c5);border-radius:var(--r);padding:clamp(20px,3vw,32px)}
.decoder label{display:block;font-weight:700;margin-bottom:10px}
.decoder input{width:100%;min-height:60px;font:800 clamp(1.6rem,3vw,2.2rem)/1 "Archivo",sans-serif;font-variation-settings:"wdth" 112;letter-spacing:.02em;padding:0 16px;border:2px solid var(--c6);border-radius:var(--r);background:var(--c2);color:var(--c6)}
.hint{font-size:var(--t-small);color:var(--c7);margin:8px 0 18px}
.read{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 20px;margin:0 0 24px}
.read dt{font-size:var(--t-small);color:var(--c7)}
.read dd{margin:0;font-weight:750;font-variant-numeric:tabular-nums}
.decoder .btn{background:var(--c6);color:var(--ink)}
.decoder .btn:hover{background:var(--c8)}
.tread{margin:0}
.tread img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
figcaption{font-size:var(--t-small);color:var(--muted);margin-top:10px}
.size figcaption{color:var(--c7)}

/* what comes with it */
.straight{padding:clamp(80px,9vw,140px) var(--m)}
.straight h2{margin-bottom:40px}
table{width:100%;border-collapse:collapse;font-size:1.125rem}
th,td{text-align:left;vertical-align:top;padding:20px 18px}
th{width:28%;font-weight:800;font-variation-settings:"wdth" 112;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.15}
tr:nth-child(odd){background:var(--surface)}
tr:last-child th{color:var(--accent)}

/* since 2006 */
.since{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,4fr);gap:clamp(20px,3vw,40px);padding:0 var(--m) clamp(80px,9vw,140px);align-items:end}
.since-text p{margin-top:20px;max-width:36ch}
.since figure{margin:0}
.since img{border-radius:var(--r);width:100%;object-fit:cover}
.s1 img{aspect-ratio:3/4}.s2 img{aspect-ratio:4/3}

/* visit rows */
.visit{padding:0 0 clamp(60px,7vw,100px)}
.vrow{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:clamp(84px,10vw,150px);padding:0 var(--m);font-size:clamp(2.1rem,6vw,5.5rem);font-weight:800;line-height:1;font-variation-settings:"wdth" 110;text-decoration:none}
.vrow:nth-child(even){background:var(--surface)}
a.vrow:hover span{color:var(--accent)}
.mv{width:clamp(64px,9vw,130px);aspect-ratio:1;object-fit:cover;border-radius:50%}
.vnote{padding:24px var(--m) 0;color:var(--muted)}
.vnote a{color:var(--ink)}

.foot{background:var(--accent);color:var(--accent-ink);padding:0 var(--m) 40px;overflow:hidden}
.foot .big{font-size:min(calc((100vw - 2 * var(--m)) / 7.6),15rem);font-weight:900;line-height:.8;text-transform:uppercase;font-variation-settings:"wdth" 125;letter-spacing:-.025em;margin:0 0 28px -.04em;white-space:nowrap;padding-top:.1em}
.foot p{max-width:72ch;margin-bottom:12px;font-size:.9375rem}
.foot .credits{font-size:var(--t-small);color:var(--c9)}

@media (max-width:900px){
  .top nav{display:none}
  .hero-foot{grid-template-columns:minmax(0,1fr);padding-bottom:20px;gap:12px}
  .hero-foot .lede{order:1}.hero-foot h1{order:2}.hero-foot .btn{order:3}
  .tread img{aspect-ratio:4/3}
  h1{font-variation-settings:"wdth" 75;font-size:calc((100vw - 2 * var(--m)) / 4.9)}
  .foot .big{font-variation-settings:"wdth" 75;font-size:calc((100vw - 2 * var(--m)) / 5)}
  .size,.since{grid-template-columns:minmax(0,1fr)}
  .since .s1{max-width:60%}
  .poster li{flex-direction:column;gap:4px;margin-bottom:18px}
  .poster span{font-size:clamp(2.2rem,11.4vw,4.5rem)}
  .poster small{text-align:left;font-size:1rem}
  th,td{display:block;width:auto;padding:4px 16px}
  th{padding-top:18px}td{padding-bottom:18px}
  .vrow{font-size:clamp(1.6rem,8.4vw,3rem)}
}
@media (pointer:coarse),(max-width:820px){
  html,body{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
  input{-webkit-user-select:text;user-select:text}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation:none!important;transition:none!important}
}
.foot .credits{line-height:2}.foot .credits a,.foot p a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere;line-height:1.4}
td{max-width:62ch}
