/* jolly-trek.motorcycles · prefix .jta- · TEXT-ONLY */
@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue:wght@400;500;600;700&family=Karla:wght@400;500;600;700&display=swap");
:jta-root, .jta-body {
  --bg:#f3ebe6; --ink:#3a2a28; --accent:#9c6b63; --panel:#e4d2c8; --muted:#6e5854; --rule:#b89288;
}
.jta-body {
  margin:0; background:var(--bg); color:var(--ink);
  font-family:"Karla", "Georgia", serif;
  line-height:1.65;
}
.jta-body h1, .jta-body h2, .jta-body h3, .jta-brand-hero, .jta-wordmark, .jta-huge, .jta-numeral, .jta-phone-xl, .jta-brand-huge, .jta-caps, .jta-addr-big {
  font-family:"Bebas Neue", "Georgia", serif;
  font-weight:600;
  letter-spacing:0.02em;
}
.jta-body a { color:var(--accent); }
.jta-main { padding:1.5rem clamp(1rem,4vw,3rem) 4rem; max-width:1100px; margin:0 auto; }
.jta-header, .jta-mobile-bar, .jta-float-head, .jta-mainbar {
  display:flex; flex-wrap:wrap; align-items:center; gap:1rem;
  padding:1rem clamp(1rem,4vw,3rem); border-bottom:1px solid var(--rule);
}
.jta-nav a, .jta-tabs a, .jta-center a, .jta-h-nav a, .jta-wrap-nav a, .jta-linkrow a, .jta-footer a {
  margin-right:0.85rem; text-decoration:none; color:var(--ink);
}
.jta-burger, .jta-menu-toggle, .jta-sheet-btn, .jta-menu-link {
  background:transparent; border:1px solid var(--ink); color:var(--ink);
  padding:0.4rem 0.8rem; cursor:pointer; font:inherit;
}
.jta-cta, .jta-cta-btn {
  display:inline-block; padding:0.75rem 1.25rem; background:var(--accent); color:var(--bg);
  text-decoration:none; border:none; cursor:pointer;
}
.jta-form label { display:block; margin:0.75rem 0; }
.jta-form input, .jta-form textarea {
  width:100%; max-width:32rem; display:block; padding:0.6rem; border:1px solid var(--rule);
  background:var(--panel); color:var(--ink); font:inherit;
}
.jta-form button { margin-top:0.5rem; padding:0.7rem 1.2rem; background:var(--ink); color:var(--bg); border:none; cursor:pointer; font:inherit; }
.jta-form-success { color:var(--accent); }
.jta-contact-once { margin:1.5rem 0; padding:1rem 0; border-top:1px solid var(--rule); }
.jta-footer { padding:2rem clamp(1rem,4vw,3rem); position:relative; overflow:hidden; }
.jta-cookie {
  position:fixed; z-index:50; background:var(--panel); color:var(--ink);
  border:1px solid var(--rule); padding:1rem; max-width:28rem;
}
.jta-cookie-actions { display:flex; flex-wrap:wrap; gap:0.5rem; margin-top:0.75rem; }
.jta-cookie-actions button { font:inherit; padding:0.45rem 0.7rem; cursor:pointer; border:1px solid var(--ink); background:var(--bg); color:var(--ink); }
.jta-cookie[hidden], .jta-cookie-panel[hidden], .jta-drawer[hidden], .jta-sheet[hidden], .jta-menu-panel[hidden], .jta-step-menu[hidden], .jta-nav[hidden] { display:none !important; }
.jta-visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
@media (prefers-reduced-motion: reduce) {
  .jta-body * { animation:none !important; transition:none !important; }
}
.jta-cookie { bottom:1rem; left:50%; transform:translateX(-50%); border-radius:1.25rem; }

.jta-story-open { max-width:40rem; padding:3rem 0; }
.jta-strip { display:flex; gap:0.5rem; overflow-x:auto; margin:2rem 0; }
.jta-frame { flex:0 0 70%; background:var(--panel); padding:2rem; min-height:10rem; border:1px solid var(--rule); }
.jta-frame span { display:block; font-family:"Bebas Neue", sans-serif; font-size:2rem; letter-spacing:0.08em; }
.jta-numbered ol { font-size:1.1rem; }
.jta-grid-cap { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.jta-grid-cap figure { margin:0; border-top:2px solid var(--accent); padding-top:0.75rem; }
.jta-grid-cap figcaption { font-weight:700; font-family:"Bebas Neue", sans-serif; letter-spacing:0.05em; }
.jta-dual { display:grid; grid-template-columns:1fr 1.2fr 1fr; gap:0; margin:3rem 0; }
.jta-dual > div { padding:1.5rem; border:1px solid var(--rule); }
.jta-bleed { background:var(--panel); }
.jta-phone-xl { font-size:clamp(2rem,6vw,4rem); margin:0.5rem 0; font-family:"Bebas Neue", sans-serif; }
.jta-phone-xl a { color:inherit; text-decoration:none; }
@media (max-width:800px) {
  .jta-grid-cap, .jta-dual { grid-template-columns:1fr; }
  .jta-nav { position:absolute; top:4rem; left:0; right:0; background:var(--panel); flex-direction:column; padding:1rem; }
}
.jta-reveal, .jta-grid-cap figure { animation:jta-clip 1s ease both; }
@keyframes jta-clip { from { clip-path:inset(10% 10%); } to { clip-path:inset(0); } }
