/* A concise headline and one current product photo. */
.brand-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr);
  align-items: center;
  gap: 3vw;
  min-height: 700px;
  padding: 151px max(5.5vw,calc((100vw - 1250px)/2)) 60px;
  overflow: hidden;
  background: #fff1b0;
  border-bottom: 1px solid #25433120;
}
.brand-hero-copy { position: relative; z-index: 2; min-width: 0; }
.brand-hero h1 {
  max-width: 620px;
  margin: 0;
  color: #214b32;
  font: 400 clamp(87px,8.6vw,133px)/.96 "Permanent Marker","Arial Black",cursive;
  letter-spacing: -.055em;
  font-synthesis: none;
  text-transform: none;
}
.brand-hero h1 em { color: inherit; font-style: normal; }
.brand-hero-description { max-width: 430px; margin: 29px 0 30px; color: #4e5036; font-size: 19px; line-height: 1.6; }
.brand-hero-cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 43px;
  min-height: 59px;
  padding: 15px 26px;
  border: 1px solid #a32e25;
  border-radius: 999px;
  background: #a32e25;
  color: #fff9e9;
  font: 750 17px/1.2 system-ui,sans-serif;
  transition: transform .22s ease,background .22s ease;
}
.brand-hero-cta span { font-size: 24px; line-height: 1; transition: transform .22s ease; }
.brand-hero-cta:hover { background: #89271f; transform: translateY(-2px); }
.brand-hero-cta:hover span { transform: translate(2px,-2px); }
.brand-hero-cta:active { transform: translateY(1px); }
.brand-hero-media { position: relative; width: 100%; max-width: 520px; aspect-ratio: 1; min-width: 0; margin: 0; justify-self: start; }
.brand-hero-media img { display: block; width: 100%; height: 100%; max-width: none; object-fit: contain; object-position: center; border-radius: 22px; }
html.fit-motion .brand-hero-copy { animation: brand-copy-enter .6s var(--fit-ease) both; }
html.fit-motion .brand-hero-media img { animation: brand-photo-enter .7s ease-out both; }
@keyframes brand-copy-enter { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes brand-photo-enter { from { opacity: 0; } to { opacity: 1; } }
@media(min-width:1600px) { .brand-hero { gap: 65px; } }
@media(max-width:1100px) and (min-width:901px) {
  .brand-hero { min-height: 650px; padding-inline: 4vw; gap: 25px; }
  .brand-hero h1 { font-size: 9.2vw; }
  .brand-hero-description { font-size: 18px; }
}
@media(max-width:900px) {
  .fit-home .nav { grid-template-columns: 1fr auto auto; gap: 16px; }
  .fit-home .nav-links { display: none; }
  .fit-home .mobile-menu-toggle { display: flex; }
  .brand-hero { grid-template-columns: 1fr; gap: 32px; min-height: 0; padding: 137px 6vw 35px; }
  .brand-hero h1 { max-width: 590px; font-size: clamp(80px,18.8vw,122px); }
  .brand-hero-description { max-width: 430px; margin: 24px 0 25px; font-size: 17px; }
  .brand-hero-cta { min-height: 55px; padding: 14px 23px; font-size: 16px; gap: 35px; }
  .brand-hero-media { width: 100%; max-width: 490px; justify-self: center; }
  .brand-hero-media img { border-radius: 17px; }
}
@media(min-width:721px) and (max-width:1000px) { .fit-home .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; } }
@media(max-width:360px) { .brand-hero h1 { font-size: 21vw; } .brand-hero-description { font-size: 16px; } }
