/* gringos.css — style 8, bold colour block. Light, loud, sticker energy. */

:root{
  --cream:#F5EDE0;
  --ink:#1A1512;
  --teal:#12706E;
  --teal-dk:#0C5250;
  --orange:#E2622C;
  --red:#9E2B25;
  --pad:clamp(20px,5vw,72px);
  --disp:"Avenir Next Condensed","Futura","Oswald","Arial Narrow",Impact,sans-serif;
  --sans:-apple-system,BlinkMacSystemFont,"Inter","Helvetica Neue",Arial,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:var(--sans);font-size:clamp(15px,1.05vw,17px);line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,figure,ul,ol{margin:0}
ul,ol{padding:0;list-style:none}

.disp{
  font-family:var(--disp);font-weight:700;text-transform:uppercase;
  line-height:.86;letter-spacing:-.01em;
}
.disp--xl{font-size:clamp(3.4rem,13vw,12rem)}
.disp--lg{font-size:clamp(2.6rem,8vw,6.5rem)}
.disp--md{font-size:clamp(1.9rem,4.6vw,3.6rem)}
.kicker{
  font-family:var(--sans);font-size:.7rem;font-weight:700;
  letter-spacing:.24em;text-transform:uppercase;
}

[data-rise]{opacity:0;transform:translateY(28px);
  transition:opacity .8s var(--ease),transform .8s var(--ease)}
[data-rise].is-in{opacity:1;transform:none}
[data-reveal]{opacity:0;transform:translateY(20px);
  transition:opacity .7s var(--ease),transform .7s var(--ease)}
[data-reveal].is-in{opacity:1;transform:none}

/* ---- sticker ---- */
.sticker{
  display:inline-block;background:var(--orange);color:var(--cream);
  padding:12px 20px;border-radius:999px;transform:rotate(-4deg);
  font-family:var(--disp);font-weight:700;text-transform:uppercase;
  font-size:clamp(.9rem,1.6vw,1.25rem);letter-spacing:.02em;
  box-shadow:5px 5px 0 var(--ink);
}
.sticker--teal{background:var(--teal);transform:rotate(3deg)}

/* ---- nav ---- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px var(--pad);background:var(--cream);
  border-bottom:2px solid var(--ink)}
.nav__brand{font-family:var(--disp);font-weight:700;text-transform:uppercase;
  font-size:1.5rem;letter-spacing:.01em}
.nav__brand em{font-style:normal;color:var(--orange)}
.nav__links{display:flex;gap:26px}
.nav__links a{font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.nav__links a:hover{color:var(--orange)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;padding:0 24px;border-radius:999px;
  background:var(--ink);color:var(--cream);border:2px solid var(--ink);
  font-family:var(--disp);font-weight:700;text-transform:uppercase;
  font-size:1rem;letter-spacing:.04em;
  transition:transform .3s var(--ease),background .3s;
}
.btn:hover{transform:translate(-2px,-2px);background:var(--orange);border-color:var(--orange)}
.btn--big{min-height:62px;padding:0 36px;font-size:clamp(1.1rem,2vw,1.5rem)}
.btn--cream{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.btn--cream:hover{background:var(--orange);color:var(--cream);border-color:var(--orange)}

/* ---- hero ---- */
.hero{position:relative;min-height:100svh;padding-top:72px;display:flex;align-items:flex-end;
  overflow:hidden}
.hero__media{position:absolute;inset:0}
.hero__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.12)}
.hero__media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(26,21,18,.34) 0%,rgba(26,21,18,.05) 40%,rgba(26,21,18,.78) 100%)}
.hero__inner{position:relative;z-index:2;padding:0 var(--pad) clamp(40px,7vh,80px);width:100%}
.hero__inner .disp--xl{color:var(--cream);text-shadow:0 4px 30px rgba(26,21,18,.4)}
.hero__inner .disp--xl span{display:block}
.hero__inner .disp--xl em{font-style:normal;color:var(--orange)}
.hero__row{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:26px}

/* ---- marquee ---- */
.marquee{background:var(--teal);color:var(--cream);
  border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);
  overflow:hidden;padding:16px 0}
.marquee__track{display:flex;gap:0;width:max-content;will-change:transform}
.marquee__track span{font-family:var(--disp);font-weight:700;text-transform:uppercase;
  font-size:clamp(1.6rem,4vw,3rem);padding:0 .5em;white-space:nowrap}
.marquee__track span::after{content:"\2022";margin-left:1em;color:var(--orange)}

/* ---- block sections ---- */
.block{padding:clamp(70px,12vh,150px) var(--pad)}
.block--orange{background:var(--orange);color:var(--cream)}
.block--teal{background:var(--teal);color:var(--cream)}
.block--ink{background:var(--ink);color:var(--cream)}
.block__grid{display:grid;gap:clamp(28px,5vw,64px);align-items:center}
@media (min-width:900px){.block__grid{grid-template-columns:1.05fr .95fr}}
.block__body p{margin-top:20px;max-width:38ch;font-size:clamp(1rem,1.35vw,1.15rem)}
.block__body .kicker{margin-bottom:16px;opacity:.8}
.shot{position:relative;margin:0}
.shot img{width:100%;height:clamp(280px,52vh,600px);object-fit:cover;
  border:3px solid var(--ink)}
.shot--offset{box-shadow:16px 16px 0 var(--ink)}
.shot--tilt{transform:rotate(-1.6deg)}

/* ---- tiles ---- */
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:0;
  border-top:2px solid var(--ink)}
@media (min-width:900px){.tiles{grid-template-columns:repeat(4,1fr)}}
.tile{padding:clamp(34px,5vw,60px) clamp(20px,3vw,36px);
  border-right:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.tile:nth-child(1){background:var(--orange);color:var(--cream)}
.tile:nth-child(2){background:var(--cream)}
.tile:nth-child(3){background:var(--teal);color:var(--cream)}
.tile:nth-child(4){background:var(--red);color:var(--cream)}
.tile b{display:block;font-family:var(--disp);font-weight:700;text-transform:uppercase;
  font-size:clamp(2rem,4.4vw,3.4rem);line-height:.9;margin-bottom:12px}
.tile span{font-size:.82rem;opacity:.9}

/* ---- horizontal rail ---- */
.rail{padding:clamp(70px,12vh,140px) 0;overflow:hidden;background:var(--cream)}
.rail__head{padding:0 var(--pad);margin-bottom:clamp(26px,4vh,48px)}
.rail__head .kicker{margin-bottom:12px;color:var(--teal)}
.rail__viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.rail__viewport::-webkit-scrollbar{display:none}
.rail__track{display:flex;gap:clamp(16px,2.4vw,30px);padding:0 var(--pad);width:max-content}
.card{margin:0;width:clamp(240px,34vw,430px);flex:0 0 auto}
.card img{width:100%;height:clamp(300px,46vh,520px);object-fit:cover;border:3px solid var(--ink)}
.card figcaption{margin-top:12px;font-family:var(--disp);font-weight:700;
  text-transform:uppercase;font-size:1.15rem}

/* ---- band ---- */
.band{position:relative;height:clamp(320px,62vh,640px);overflow:hidden;
  border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.band img{width:100%;height:120%;object-fit:cover;position:absolute;inset:-10% 0}

/* ---- cta ---- */
.cta{background:var(--teal);color:var(--cream);
  padding:clamp(80px,14vh,170px) var(--pad);text-align:center}
.cta .disp--lg em{font-style:normal;color:var(--orange)}
.cta p{margin:22px auto 0;max-width:34ch}
.cta__actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:36px}

/* ---- footer ---- */
.foot{background:var(--ink);color:var(--cream);padding:40px var(--pad);
  display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:space-between;font-size:.78rem}
.foot span{opacity:.55}

@media (max-width:720px){ .nav__links{display:none} }
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important}
  [data-rise],[data-reveal]{opacity:1;transform:none}
}


/* ---------- ENQUIRE ----------
   The shared form, tinted to this page. Structure lives in leadform.css. */
.lead{
  --lf-bg     : var(--cream);
  --lf-fg     : var(--ink);
  --lf-accent : var(--orange);
  --lf-line   : rgba(20,18,16,.20);
  --lf-muted  : rgba(20,18,16,.62);
}
.lead__btn{color:var(--cream);font-weight:700}
