@import url("https://fonts.googleapis.com/css2?family=Graduate&display=swap");
/* Falls Beverage Co. LLC — shared styles
   Brand: cream + navy + evergreen + sage (from official logo lockup).
   Easy to retheme via :root custom properties. */

:root {
  /* Balanced: softer surfaces, punchy CTAs — not muted, not neon */
  --color-cream: #FBF7F0;
  --color-navy: #0C3B6E;
  --color-forest: #1A7A4C;
  --color-sage: #3F8A5C;
  --color-sage-soft: #6BAF88;
  --color-water: #1A8FE8;
  --color-water-soft: #4EB2FF;
  --color-sand: #F3E6D2;
  --color-sand-deep: #D9C4A0;
  --color-white: #ffffff;
  --color-ink: #0C3B6E;
  --color-muted: #4A5C66;
  --color-border: #E5D6C2;
  --font-sans: "Source Sans 3", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-display: "Source Sans 3", "Segoe UI", system-ui, -apple-system, sans-serif;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1.25rem;
  --space-lg: 2rem;
  --space-xl: 3.5rem;
  --space-2xl: 5rem;
  --radius: 10px;
  --radius-lg: 16px;
  --shadow: 0 8px 28px rgba(19, 53, 90, 0.08);
  --max: 1100px;
  --header-h: 5.75rem;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--color-ink);
  background: var(--color-cream);
}

img,
svg {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  color: var(--color-navy);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.15em;
}

a:hover {
  color: var(--color-forest);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--color-sage-soft);
  outline-offset: 2px;
}

h1,
h2,
h3 {
  font-family: var(--font-display);
  line-height: 1.15;
  color: var(--color-navy);
  font-weight: 700;
  margin: 0 0 var(--space-md);
  letter-spacing: -0.02em;
}

h1 {
  font-size: clamp(2rem, 4vw, 2.85rem);
  letter-spacing: -0.025em;
  text-transform: none;
}

h2 {
  font-size: clamp(1.55rem, 3vw, 2rem);
}

h3 {
  font-size: 1.2rem;
  letter-spacing: -0.01em;
}

p {
  margin: 0 0 var(--space-md);
}

.muted {
  color: var(--color-muted);
}

.placeholder-text {
  color: var(--color-muted);
  font-style: italic;
}

.container {
  width: min(100% - 2rem, var(--max));
  margin-inline: auto;
}

/* Header / Nav */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(253, 249, 243, 0.94);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--color-border);
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: var(--header-h);
  gap: var(--space-md);
}

.brand {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: var(--color-navy);
}

.brand:hover {
  opacity: 0.9;
}

.brand-logo {
  height: 96px;
  width: auto;
  max-width: min(200px, 48vw);
  object-fit: contain;
  object-position: center top;
}

.site-nav {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.site-nav a {
  text-decoration: none;
  color: var(--color-ink);
  font-weight: 600;
  padding: 0.45rem 0.8rem;
  border-radius: 999px;
}

.site-nav a:hover,
.site-nav a[aria-current="page"] {
  background: var(--color-sand);
  color: var(--color-navy);
}

.nav-toggle {
  display: none;
  border: 1px solid var(--color-border);
  background: var(--color-white);
  border-radius: 8px;
  padding: 0.45rem 0.65rem;
  cursor: pointer;
  font: inherit;
  color: var(--color-navy);
}

.nav-toggle-bars {
  display: block;
  width: 1.25rem;
  height: 2px;
  background: currentColor;
  position: relative;
}

.nav-toggle-bars::before,
.nav-toggle-bars::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
}

.nav-toggle-bars::before {
  top: -6px;
}

.nav-toggle-bars::after {
  top: 6px;
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  font: inherit;
  font-weight: 700;
  text-decoration: none;
  border-radius: 999px;
  padding: 0.7rem 1.35rem;
  border: 2px solid transparent;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.btn-primary {
  background: linear-gradient(180deg, #4EB2FF 0%, #1A8FE8 45%, #0B6FC0 100%);
  color: #ffffff;
  border-color: transparent;
  box-shadow: 0 12px 32px rgba(26, 143, 232, 0.45);
  letter-spacing: 0.02em;
}

.btn-primary:hover {
  background: linear-gradient(180deg, #7AC6FF 0%, #4EB2FF 40%, #1A8FE8 100%);
  color: #ffffff;
  box-shadow: 0 14px 36px rgba(26, 143, 232, 0.55);
}

.btn-secondary {
  background: rgba(255, 255, 255, 0.75);
  color: var(--color-navy);
  border-color: var(--color-water);
  border-width: 2px;
}

.btn-secondary:hover {
  background: rgba(63, 122, 92, 0.12);
  color: var(--color-forest);
  border-color: var(--color-sage);
}

.btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: var(--space-lg);
}

/* Hero */
.hero {
  background:
    radial-gradient(ellipse 65% 50% at 92% 0%, rgba(26, 143, 232, 0.18), transparent 58%),
    radial-gradient(ellipse 55% 45% at 5% 18%, rgba(26, 122, 76, 0.12), transparent 55%),
    linear-gradient(165deg, #FFFFFF 0%, var(--color-cream) 48%, var(--color-sand) 100%);
  padding: var(--space-2xl) 0 var(--space-xl);
  border-bottom: 1px solid var(--color-border);
}

.hero-grid {
  display: grid;
  gap: var(--space-xl);
  align-items: center;
}

@media (min-width: 860px) {
  .hero-grid {
    grid-template-columns: 1.15fr 0.85fr;
  }
}

.tagline {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.15rem, 2.4vw, 1.45rem);
  font-weight: 650;
  color: var(--color-sage);
  letter-spacing: 0.01em;
  margin: 0 0 var(--space-sm);
}

.eyebrow {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-sage);
  margin-bottom: var(--space-sm);
}

.hero-lead {
  font-size: 1.15rem;
  color: var(--color-muted);
  max-width: 36rem;
}

.hero-logo-panel {
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(26, 143, 232, 0.18);
  border-radius: var(--radius-lg);
  padding: var(--space-md) var(--space-lg);
  box-shadow: var(--shadow);
  display: grid;
  place-items: center;
}

.hero-logo-panel img {
  width: min(100%, 300px);
  height: auto;
  object-fit: contain;
}

.hero-card {
  background: linear-gradient(155deg, #063A78 0%, #0A62B5 50%, #0D8A52 115%);
  color: var(--color-cream);
  box-shadow: 0 20px 48px rgba(6, 58, 120, 0.35);
  border-radius: var(--radius-lg);
  padding: var(--space-lg);
  box-shadow: var(--shadow);
}

.hero-card h2 {
  color: var(--color-cream);
  font-size: 1.35rem;
  margin-bottom: var(--space-sm);
}

.hero-card p {
  color: rgba(253, 249, 243, 0.88);
  margin-bottom: var(--space-md);
}

.hero-card ul {
  margin: 0;
  padding-left: 1.15rem;
  color: rgba(253, 249, 243, 0.92);
}

.hero-card li + li {
  margin-top: 0.4rem;
}

/* Sections */
.section {
  padding: var(--space-xl) 0;
}

.section-alt {
  background: linear-gradient(180deg, #F7F0E6 0%, var(--color-sand) 100%);
  border-block: 1px solid var(--color-border);
}

.section-head {
  max-width: 40rem;
  margin-bottom: var(--space-lg);
}

.section-head p {
  color: var(--color-muted);
}

/* Value props */
.card-grid {
  display: grid;
  gap: var(--space-md);
}

@media (min-width: 700px) {
  .card-grid.cols-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .card-grid.cols-2 {
    grid-template-columns: repeat(2, 1fr);
  }

  .card-grid.cols-3-brands {
    grid-template-columns: repeat(3, 1fr);
  }
}

.card {
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius);
  padding: var(--space-lg);
  box-shadow: var(--shadow);
}

.card .icon {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: linear-gradient(145deg, #E7F6EE, #DCEEF8);
  color: var(--color-forest);
  display: grid;
  place-items: center;
  margin-bottom: var(--space-md);
  font-size: 1.2rem;
  font-weight: 700;
}

.card p:last-child {
  margin-bottom: 0;
}

/* Brands */
.brand-card {
  text-align: center;
  min-height: 180px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background:
    linear-gradient(180deg, #ffffff, #FFF4E3);
  border: 1px solid rgba(26, 143, 232, 0.22);
  box-shadow: 0 10px 28px rgba(26, 143, 232, 0.1);
}

.brand-card .mark {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(145deg, #1A8FE8, #0D8A52);
  color: #ffffff;
  display: grid;
  place-items: center;
  font-family: var(--font-display);
  font-weight: 700;
  margin-bottom: var(--space-sm);
}

.brand-card .label {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-muted);
  margin: 0 0 0.25rem;
}

.brand-card h3 {
  margin: 0;
  font-size: 1.05rem;
}

.brand-card-desc {
  margin: 0.65rem 0 0;
  font-size: 0.95rem;
  color: var(--color-muted);
  max-width: 22rem;
}

/* Brand portfolio product lists */
.brand-block {
  background: var(--color-white);
  border: 1px solid rgba(26, 143, 232, 0.22);
  border-radius: var(--radius-lg);
  padding: var(--space-lg);
  box-shadow: 0 10px 28px rgba(26, 143, 232, 0.1);
}

.brand-block + .brand-block {
  margin-top: var(--space-lg);
}

.brand-block-head {
  margin-bottom: var(--space-md);
  padding-bottom: var(--space-md);
  border-bottom: 2px solid var(--color-sand);
}

.brand-block-head .label {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-sage);
  font-weight: 700;
  margin: 0 0 0.35rem;
}

.brand-block-head h2 {
  margin-bottom: var(--space-sm);
}

.brand-block-intro {
  color: var(--color-muted);
  margin: 0;
  max-width: 42rem;
}

.product-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.product-list li {
  display: grid;
  gap: 0.45rem;
  padding: 0.85rem 0;
  border-bottom: 1px solid var(--color-border);
}

.product-list li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.product-list li:first-child {
  padding-top: 0;
}

.product-name {
  font-weight: 700;
  color: var(--color-navy);
  font-size: 1.05rem;
}

.product-note {
  display: block;
  font-size: 0.9rem;
  color: var(--color-muted);
  font-style: italic;
}

.size-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.size-tag {
  display: inline-flex;
  align-items: center;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--color-navy);
  background: linear-gradient(180deg, #E8F7FF 0%, #D4F0E4 100%);
  border: 1px solid rgba(26, 143, 232, 0.28);
  border-radius: 999px;
  padding: 0.28rem 0.7rem;
}

@media (min-width: 700px) {
  .product-list li {
    grid-template-columns: minmax(12rem, 1.1fr) minmax(0, 1.4fr);
    align-items: start;
    column-gap: var(--space-md);
  }

  .product-list li:has(.product-note) {
    grid-template-columns: minmax(12rem, 1.1fr) minmax(0, 1.4fr);
  }

  .product-list .product-note {
    grid-column: 1;
    grid-row: 2;
  }

  .product-list .size-tags {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    justify-content: flex-end;
  }
}

.note-banner {
  background: var(--color-cream);
  border: 1px dashed var(--color-sand-deep);
  border-radius: var(--radius);
  padding: var(--space-md) var(--space-lg);
  color: var(--color-muted);
  margin-top: var(--space-lg);
}

/* Contact */
.contact-layout {
  display: grid;
  gap: var(--space-lg);
}

@media (min-width: 800px) {
  .contact-layout {
    grid-template-columns: 1fr 1.1fr;
    align-items: start;
  }
}

.contact-details dt {
  font-weight: 700;
  color: var(--color-navy);
  margin-top: var(--space-md);
}

.contact-details dt:first-child {
  margin-top: 0;
}

.contact-details dd {
  margin: 0.2rem 0 0;
}

.form-card label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.35rem;
  color: var(--color-navy);
}

.form-card .field {
  margin-bottom: var(--space-md);
}

.form-card input,
.form-card textarea {
  width: 100%;
  font: inherit;
  padding: 0.7rem 0.85rem;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  background: var(--color-white);
  color: var(--color-ink);
}

.form-card textarea {
  min-height: 140px;
  resize: vertical;
}

.form-hint {
  font-size: 0.9rem;
  color: var(--color-muted);
  margin-top: var(--space-sm);
}

/* CTA band */
.cta-band {
  background: linear-gradient(120deg, #0C3B6E 0%, #1565A8 55%, #1A7A4C 120%);
  color: var(--color-cream);
  padding: var(--space-xl) 0;
  text-align: center;
}

.cta-band h2 {
  color: var(--color-cream);
}

.cta-band p {
  color: rgba(253, 249, 243, 0.88);
  max-width: 34rem;
  margin-inline: auto;
}

.cta-band .btn-primary {
  background: linear-gradient(180deg, #FFE08A 0%, #FFC24D 100%);
  color: #063A78;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.25);
}

.cta-band .btn-primary:hover {
  background: linear-gradient(180deg, #FFF0B8 0%, #FFE08A 100%);
  color: #063A78;
}

.cta-band .btn-secondary {
  color: var(--color-cream);
  border-color: rgba(253, 249, 243, 0.55);
}

.cta-band .btn-secondary:hover {
  background: rgba(253, 249, 243, 0.12);
  color: var(--color-cream);
}

.cta-band .btn-row {
  justify-content: center;
}

/* Footer */
.site-footer {
  background: linear-gradient(180deg, #0A335F 0%, #0C3B6E 70%, #0E4A6A 100%);
  color: rgba(253, 249, 243, 0.92);
  padding: var(--space-xl) 0 var(--space-lg);
  font-size: 0.95rem;
}

.footer-grid {
  display: grid;
  gap: var(--space-lg);
}

@media (min-width: 700px) {
  .footer-grid {
    grid-template-columns: 1.4fr 1fr 1fr;
  }
}

.site-footer h3 {
  color: var(--color-cream);
  font-size: 1rem;
  margin-bottom: var(--space-sm);
}

.site-footer a {
  color: var(--color-cream);
}

.site-footer a:hover {
  color: var(--color-white);
}

.footer-brand-logo {
  display: block;
  width: auto;
  max-width: 200px;
  max-height: none;
  height: auto;
  object-fit: contain;
  margin: 0 0 var(--space-md);
  padding: 0.5rem;
  background: #FDF9F3;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
}

.footer-tagline {
  color: #7CFFB5;
  font-weight: 700;
  margin: 0 0 var(--space-sm);
}

.footer-nav {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-nav li + li {
  margin-top: 0.35rem;
}

.footer-bottom {
  margin-top: var(--space-lg);
  padding-top: var(--space-md);
  border-top: 1px solid rgba(253, 249, 243, 0.15);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  justify-content: space-between;
  color: rgba(253, 249, 243, 0.65);
  font-size: 0.88rem;
}

/* Page title (inner pages) */
.page-hero {
  padding: var(--space-xl) 0 var(--space-lg);
  background: linear-gradient(180deg, var(--color-cream), #FFFcf7);
  border-bottom: 1px solid var(--color-border);
}

.page-hero p {
  color: var(--color-muted);
  max-width: 38rem;
  margin: 0;
}

/* Prose */
.prose {
  max-width: 42rem;
}

.prose p + p {
  margin-top: var(--space-md);
}

/* Mobile nav */
@media (max-width: 760px) {
  .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .site-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    background: var(--color-cream);
    border-bottom: 1px solid var(--color-border);
    padding: var(--space-sm);
    gap: 0.15rem;
    box-shadow: var(--shadow);
  }

  .site-nav.is-open {
    display: flex;
  }

  .site-nav a {
    padding: 0.75rem 1rem;
    border-radius: 8px;
  }

  .brand-logo {
    height: 72px;
  }
}

/* Utility */
.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;
}

/* Trade form extras */
.form-card select {
  width: 100%;
  font: inherit;
  padding: 0.7rem 0.85rem;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  background: var(--color-white);
  color: var(--color-ink);
}

.form-card .optional {
  font-weight: 400;
  color: var(--color-muted);
  font-size: 0.9em;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 3px solid var(--color-sage-soft);
  outline-offset: 2px;
}

.footer-trade-note {
  margin-top: var(--space-sm);
  font-size: 0.88rem;
  color: rgba(253, 249, 243, 0.7);
  font-style: italic;
}

/* ===== Colorful refresh (vivid accents, AA contrast) ===== */
:root{
  --c-teal:#0FB5BA; --c-teal-deep:#0A7F86; --c-aqua:#7FE3E0;
  --c-gold:#FFC93C; --c-citrus:#FF8A3D; --c-lime:#A8D86E; --c-lime-deep:#2F7A3A;
  --c-navy-deep:#082A50;
}
.site-header{border-bottom:4px solid transparent;border-image:linear-gradient(90deg,var(--c-teal),var(--c-lime),var(--c-gold),var(--c-citrus)) 1;}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:var(--c-teal-deep);color:#fff;}
.btn-primary{background:linear-gradient(180deg,#14A3A8,var(--c-teal-deep));color:#fff;box-shadow:0 10px 26px rgba(10,127,134,.4);}
.btn-primary:hover{background:linear-gradient(180deg,var(--c-teal-deep),#06636A);color:#fff;}
.btn-secondary{background:var(--c-gold);color:var(--c-navy-deep);border-color:var(--c-gold);}
.btn-secondary:hover{background:#FFD866;color:var(--c-navy-deep);border-color:var(--c-citrus);}
.hero{background:
  radial-gradient(ellipse 50% 60% at 95% 10%,rgba(255,201,60,.35),transparent 60%),
  radial-gradient(ellipse 50% 60% at 0% 100%,rgba(168,216,110,.45),transparent 60%),
  linear-gradient(135deg,#E3FAF8 0%,#FBF7F0 50%,#FFF1D6 100%);
  border-bottom:6px solid var(--c-teal);}
.tagline{color:var(--c-teal-deep);}
.eyebrow{background:var(--c-lime);color:var(--c-navy-deep);padding:.2rem .7rem;border-radius:999px;}
.hero-lead{color:#33474F;}
.hero-logo-panel{background:#FBF7F0;border:3px solid var(--c-teal);box-shadow:0 0 0 8px rgba(255,201,60,.45),0 18px 40px rgba(10,127,134,.25);}
.section-alt{background:linear-gradient(135deg,#DDF6F4 0%,#EEF8DF 100%);border-block:0;border-top:6px solid var(--c-lime);}
.card{border:0;border-top:6px solid var(--c-teal);}
.card-grid > .card:nth-child(2){border-top-color:var(--c-gold);}
.card-grid > .card:nth-child(3){border-top-color:var(--c-lime);}
.card .icon{background:var(--c-teal-deep);color:#fff;border-radius:50%;width:48px;height:48px;}
.card-grid > .card:nth-child(2) .icon{background:var(--c-gold);color:var(--c-navy-deep);}
.card-grid > .card:nth-child(3) .icon{background:var(--c-lime-deep);color:#fff;}
/* Brand colors: La Paz = citrus/gold, Quickway = teal/aqua */
.brand-card.brand-lapaz,.brand-block.brand-lapaz{background:linear-gradient(160deg,#FFF6DC 0%,#FFE6C9 100%);border:2px solid var(--c-citrus);border-top:8px solid var(--c-citrus);}
.brand-card.brand-quickway,.brand-block.brand-quickway{background:linear-gradient(160deg,#E4FBF9 0%,#D2F1EE 100%);border:2px solid var(--c-teal);border-top:8px solid var(--c-teal);}
.brand-lapaz .mark{background:linear-gradient(145deg,var(--c-gold),var(--c-citrus));color:var(--c-navy-deep);}
.brand-quickway .mark{background:linear-gradient(145deg,var(--c-teal),var(--c-teal-deep));color:#fff;}
.brand-card .label,.brand-card-desc,.brand-block-intro{color:#33474F;}
.brand-lapaz .brand-block-head .label{color:#9A3B00;}
.brand-quickway .brand-block-head .label{color:#086268;}
.brand-lapaz .brand-block-head{border-bottom-color:var(--c-citrus);}
.brand-quickway .brand-block-head{border-bottom-color:var(--c-teal);}
.brand-block .product-list li{border-bottom-color:rgba(12,59,110,.15);}
.brand-block .product-note{color:#33474F;}
.brand-lapaz .size-tag{background:var(--c-gold);border-color:#E0A800;color:var(--c-navy-deep);}
.brand-quickway .size-tag{background:var(--c-aqua);border-color:var(--c-teal);color:var(--c-navy-deep);}
.page-hero{background:linear-gradient(120deg,#C9F2EF 0%,#EEF8DF 55%,#FFE9B8 100%);border-bottom:6px solid var(--c-gold);}
.page-hero p{color:#33474F;}
.note-banner{background:#FFF6DC;border:2px dashed var(--c-citrus);color:#33474F;}
.cta-band{background:linear-gradient(120deg,#0C3B6E 0%,#0A7F86 60%,#2F7A3A 110%);border-top:6px solid var(--c-gold);}
.cta-band .btn-primary{background:var(--c-gold);color:var(--c-navy-deep);}
.cta-band .btn-primary:hover{background:#FFD866;color:var(--c-navy-deep);}
.cta-band .btn-secondary{background:transparent;color:#fff;border-color:var(--c-aqua);}
.site-footer{border-top:6px solid var(--c-teal);}
.footer-tagline{color:var(--c-gold);}
.site-footer a:hover{color:var(--c-aqua);}
.form-card input:focus,.form-card textarea:focus,.form-card select:focus{border-color:var(--c-teal);}
.btn-primary{background:linear-gradient(180deg,#0A7F86,#06636A);}
.btn-primary:hover{background:linear-gradient(180deg,#086268,#054C52);}
.tagline{color:#086268;}

/* ===== Ballpark theme (no team marks) ===== */
:root{--bp-navy:#0E2240;--bp-red:#BF1E2E;--bp-red-dk:#9E1B28;--bp-cream:#FBF7F0;--bp-green:#2E6B34;--bp-board:#123B2A;--bp-tan:#C99A6B;--bp-tan-lt:#EBD8BF;--bp-chalk:#FFFFFF;--bp-yellow:#FFD23F;
  --stitch:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12'%3E%3Cpath d='M2 10 L8 2 M14 10 L20 2' stroke='%23BF1E2E' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");}
body{background:var(--bp-cream);color:var(--bp-navy);}
h1,h2,.cta-band h2{font-family:"Graduate","Rockwell",serif;letter-spacing:.01em;text-transform:uppercase;color:var(--bp-navy);}
h1{font-size:clamp(1.8rem,3.6vw,2.6rem);line-height:1.15;}
.site-header{background:var(--bp-cream);border-bottom:0;border-image:none;box-shadow:0 4px 0 var(--bp-navy),0 8px 0 var(--bp-red);}
.brand-logo{height:84px!important;width:auto!important;max-width:none!important;object-fit:contain;object-position:center;}
.site-nav a{color:var(--bp-navy);}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:var(--bp-navy);color:#fff;}
.btn-primary,.btn-primary:hover{background:var(--bp-red);color:#fff;box-shadow:0 4px 0 var(--bp-red-dk);border-color:var(--bp-red);}
.btn-primary:hover{background:var(--bp-red-dk);}
.btn-secondary,.btn-secondary:hover{background:#fff;color:var(--bp-navy);border-color:var(--bp-navy);}
.btn-secondary:hover{background:var(--bp-navy);color:#fff;}
/* pinstripe hero */
.hero,.page-hero{background:repeating-linear-gradient(90deg,var(--bp-cream) 0 22px,rgba(14,34,64,.13) 22px 24px),var(--bp-cream);border-bottom:0;position:relative;}
.hero::after,.page-hero::after,.section-alt::before,.cta-band::before{content:"";display:block;height:12px;background:var(--stitch) repeat-x center/24px 12px;}
.hero::after,.page-hero::after{position:absolute;left:0;right:0;bottom:-6px;}
.section-alt::before,.cta-band::before{margin:-3.5rem 0 3rem;}
.cta-band::before{filter:brightness(1.4);}
.tagline{color:var(--bp-red);font-style:italic;}
.eyebrow{background:var(--bp-navy);color:#fff;}
.hero-lead,.page-hero p{color:#2C3A4F;}
.hero-logo-panel{background:var(--bp-cream);border:4px solid var(--bp-navy);box-shadow:0 0 0 6px var(--bp-red),0 18px 36px rgba(14,34,64,.25);}
/* infield-dirt alt sections */
.section-alt{background:linear-gradient(180deg,var(--bp-tan-lt),#F3E6D2);border-top:0;}
.card{border-top-color:var(--bp-navy);}
.card-grid>.card:nth-child(2){border-top-color:var(--bp-red);}
.card-grid>.card:nth-child(3){border-top-color:var(--bp-green);}
.card .icon,.card-grid>.card:nth-child(2) .icon,.card-grid>.card:nth-child(3) .icon{font-family:"Graduate",serif;color:#fff;background:var(--bp-navy);border:2px dashed rgba(255,255,255,.6);box-shadow:0 0 0 2px var(--bp-navy);}
.card-grid>.card:nth-child(2) .icon{background:var(--bp-red);box-shadow:0 0 0 2px var(--bp-red);}
.card-grid>.card:nth-child(3) .icon{background:var(--bp-green);box-shadow:0 0 0 2px var(--bp-green);}
/* brands: La Paz = home red, Quickway = road navy, white "baseball" cards */
.brand-card.brand-lapaz,.brand-block.brand-lapaz,.brand-card.brand-quickway,.brand-block.brand-quickway{background:#fff;border:2px solid var(--bp-navy);}
.brand-lapaz{border-top:10px solid var(--bp-red)!important;}
.brand-quickway{border-top:10px solid var(--bp-navy)!important;}
.brand-lapaz .mark,.brand-quickway .mark{font-family:"Graduate",serif;background:#fff;color:var(--bp-red);border:3px solid var(--bp-red);border-style:dashed;}
.brand-quickway .mark{color:var(--bp-navy);border-color:var(--bp-navy);}
.brand-lapaz .brand-block-head .label{color:var(--bp-red-dk);}
.brand-quickway .brand-block-head .label{color:var(--bp-green);}
.brand-lapaz .brand-block-head,.brand-quickway .brand-block-head{border-bottom:0;padding-bottom:1.5rem;background:var(--stitch) repeat-x bottom/24px 12px;}
.brand-lapaz .size-tag{background:var(--bp-red);border-color:var(--bp-red-dk);color:#fff;}
.brand-quickway .size-tag{background:var(--bp-navy);border-color:var(--bp-navy);color:#fff;}
.brand-card .label,.brand-card-desc,.brand-block-intro,.brand-block .product-note{color:#2C3A4F;}
.note-banner{background:#fff;border:2px dashed var(--bp-red);color:#2C3A4F;}
/* scoreboard band */
.cta-band{background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px) 0 0/100% 8px,var(--bp-board);border-top:8px solid var(--bp-navy);border-bottom:8px solid var(--bp-navy);}
.cta-band h2{color:var(--bp-yellow);text-shadow:0 0 10px rgba(255,210,63,.35);}
.cta-band p{color:#F1F5EF;}
.cta-band .btn-primary{background:var(--bp-red);color:#fff;}
.cta-band .btn-secondary{background:transparent;color:#fff;border-color:#fff;}
/* outfield footer */
.site-footer{background:var(--bp-navy);border-top:10px solid var(--bp-green);}
.footer-tagline{color:var(--bp-yellow);}
.site-footer a:hover{color:var(--bp-yellow);}
@media (max-width:760px){.brand-logo{height:64px!important;}}
.brand-logo{height:104px!important;}
:root{--header-h:7rem;}
@media (max-width:760px){.brand-logo{height:76px!important;}}

/* ===== New logo palette: sampled navy #012459 + red #CE061D on white ===== */
:root{--bp-navy:#012459;--bp-red:#CE061D;--bp-red-dk:#A8051A;--bp-cream:#FFFFFF;--bp-off:#F4F6FA;--bp-board:#011A40;--bp-green:#012459;--bp-tan-lt:#F4F6FA;--color-navy:#012459;--color-ink:#012459;
  --stitch:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12'%3E%3Cpath d='M2 10 L8 2 M14 10 L20 2' stroke='%23CE061D' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");}
body{background:#fff;}
.site-header{background:#fff;}
.brand{gap:.7rem;}
.brand-logo{height:72px!important;width:72px!important;}
.brand-word{font-family:"Graduate",serif;font-size:1.35rem;line-height:1;color:var(--bp-navy);text-transform:uppercase;display:flex;flex-direction:column;}
.brand-word span{font-family:var(--font-sans);font-weight:700;font-size:.78rem;letter-spacing:.18em;color:var(--bp-red);margin-top:.25rem;}
.hero,.page-hero{background:repeating-linear-gradient(90deg,#fff 0 22px,rgba(1,36,89,.08) 22px 24px),#fff;}
.hero-logo-panel{background:#fff;border:3px solid var(--bp-navy);box-shadow:0 0 0 6px #fff,0 0 0 9px var(--bp-red),0 18px 36px rgba(1,36,89,.18);padding:1.5rem;}
.hero-logo-panel img{width:min(100%,300px);}
.section-alt{background:var(--bp-off);}
.card{background:#fff;border-left:1px solid #DDE3EE;border-right:1px solid #DDE3EE;border-bottom:1px solid #DDE3EE;}
.card-grid>.card:nth-child(3){border-top-color:var(--bp-navy);}
.card-grid>.card:nth-child(3) .icon{background:var(--bp-navy);box-shadow:0 0 0 2px var(--bp-navy);}
.brand-quickway .brand-block-head .label{color:var(--bp-navy);}
/* scoreboard band: navy board, white lights */
.cta-band{background:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1.5px) 0 0/8px 8px,var(--bp-board);border-top:8px solid var(--bp-red);border-bottom:8px solid var(--bp-red);}
.cta-band h2{color:#fff;text-shadow:0 0 12px rgba(255,255,255,.25);}
.cta-band .btn-primary{background:var(--bp-red);box-shadow:0 4px 0 #7d0412;}
/* footer: navy with logo on a white card */
.site-footer{background:var(--bp-navy);border-top:10px solid var(--bp-red);}
.footer-brand-logo{background:#fff;padding:.9rem;max-width:190px;border-radius:14px;}
.footer-tagline,.site-footer a:hover{color:#FF8A96;}
@media (max-width:760px){.brand-logo{height:56px!important;width:56px!important}.brand-word{font-size:1.1rem}}
