/* Taste Skill: focused refinement of hero, route/proof, and first service card. */

/* Let the photograph and copy form one composition, with the request form below. */
.hero .hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: clamp(36px, 4.5vw, 68px);
  row-gap: 0;
  align-items: start;
  padding: 52px 0 66px;
}
.hero .hero-copy { display: contents; }
.hero .hero-copy > h1,
.hero .hero-copy > .lead,
.hero .hero-copy > .hero-actions,
.hero .hero-copy > .support { grid-column: 1; }
.hero .hero-copy > h1 { grid-row: 1; }
.hero .hero-copy > .lead:first-of-type { grid-row: 2; }
.hero .hero-copy > .lead:nth-of-type(2) { grid-row: 3; }
.hero .hero-copy > .hero-actions { grid-row: 4; }
.hero .hero-copy > .support { grid-row: 5; }
.hero .hero-copy > .lead-form-card {
  grid-column: 1 / -1;
  grid-row: 6;
  justify-self: stretch;
  width: 100%;
  max-width: none !important;
  margin-top: 32px !important;
}
.hero #aar-hero-lead-wrap {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
  gap: clamp(34px, 4.5vw, 68px);
  align-items: center;
  padding: clamp(34px, 4vw, 54px);
  border-radius: 20px;
  background: #0d5b37;
  color: #fff9ed;
  box-shadow: 0 22px 52px rgba(48, 36, 25, .16); /* taste-skill-ignore: requested brand depth for integrated form */
}
.hero #aar-hero-lead-wrap .lead-form-head .eyebrow { /* taste-skill-ignore: preserve existing form label text */
  color: #ffe1a0 !important;
  font-size: .8rem;
  letter-spacing: .08em;
}
.hero #aar-hero-lead-wrap .lead-form-head .eyebrow::before { display: none; }
.hero #aar-hero-lead-wrap .lead-form-head .h3 {
  max-width: 12ch;
  margin-top: 16px !important;
  color: #fff9ed;
  font-size: clamp(2.5rem, 3.5vw, 3.55rem);
  line-height: 1.02;
  letter-spacing: -.038em;
}
.hero #aar-hero-lead-wrap .lead-form-head .body {
  max-width: 34ch;
  margin-top: 18px !important;
  color: #f4e9d5;
  font-size: 1.06rem;
  line-height: 1.55;
}
.hero #aar-hero-lead-wrap .lead-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 0;
}
.hero #aar-hero-lead-wrap .lead-form-row { display: contents; }
.hero #aar-hero-lead-wrap .lead-form > div:not(.lead-form-row),
.hero #aar-hero-lead-wrap .lead-form > .cta {
  grid-column: 1 / -1;
}
.hero #aar-hero-lead-wrap .lead-form label {
  color: #fff9ed;
  font-size: .78rem;
}
.hero #aar-hero-lead-wrap .lead-form input:not([type="hidden"]):not(.hp-field),
.hero #aar-hero-lead-wrap .lead-form select,
.hero #aar-hero-lead-wrap .lead-form textarea {
  min-height: 50px;
  border: 1px solid #d8d3c4;
  border-radius: 10px;
  background: #fffdf8;
}
.hero #aar-hero-lead-wrap .lead-form textarea { min-height: 84px; }
.hero #aar-hero-lead-wrap .lead-form .cta {
  min-height: 52px;
  margin-top: 2px;
  border-radius: 10px;
  box-shadow: 0 8px 18px rgba(28, 31, 20, .15); /* taste-skill-ignore: tactile CTA within dark brand panel */
}
.hero #aar-hero-lead-wrap .lead-form-status {
  min-height: 0;
  color: #fff9ed;
}
.hero .hero-copy > h1.display {
  max-width: none;
  margin: 0 0 29px;
  font-size: clamp(2.8rem, 3.65vw, 3.45rem);
  line-height: 1.055;
  letter-spacing: -0.044em;
  text-wrap: initial;
}
.hero h1 .underline { display: inline; }
.hero h1 .underline::after { display: none; }
.hero .lead {
  max-width: 58ch;
  font-size: clamp(1rem, 1.18vw, 1.075rem);
  line-height: 1.58;
  color: #48342d;
}
.hero .hero-copy > .lead:nth-of-type(2) { margin-top: 16px !important; }
.hero .hero-actions { margin-top: 28px; }
.hero .support { margin-top: 17px; font-size: 0.86rem; }
.hero .hero-visual {
  grid-column: 2;
  grid-row: 1 / 6;
  height: auto;
  min-height: 0;
  align-self: stretch;
}
.hero .photo-card {
  inset: 0;
  border-radius: 20px;
  box-shadow: 0 18px 42px rgba(70, 43, 27, .17); /* taste-skill-ignore: existing brand depth */
}
.hero .photo-card::after,
.hero .hero-sun { display: none; }
.hero .photo-card img,
.hero .hero-visual.show .hero-photo {
  transform: none;
  object-position: 62% center;
}
.hero .hero-badge.speed {
  top: 18px;
  right: 18px;
  transform: none;
  border-radius: 8px;
  box-shadow: none; /* taste-skill-ignore: remove inherited badge shadow */
}
.hero .hero-badge.warranty {
  left: 18px;
  bottom: 18px;
  max-width: calc(100% - 36px);
  padding: 12px 16px;
  transform: none;
  box-shadow: none; /* taste-skill-ignore: remove inherited badge shadow */
}
.hero .hero-badge.warranty span { margin-bottom: 2px; }

/* A legible Atlanta route, followed by facts that have room to breathe. */
.hero .skyline {
  height: auto;
  margin-top: 0;
  background: #0a6038;
}
.hero .skyline svg { display: none; }
.hero .route-ticker {
  position: static;
  height: auto;
  overflow: visible;
  background: transparent;
  border: 0;
}
.hero .route-ticker::before,
.hero .route-ticker::after { display: none; }
.hero .route-track {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  width: min(1200px, calc(100% - 48px));
  min-width: 0;
  height: auto;
  margin: auto;
  padding: 17px 0;
  font-size: 0.76rem;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
}
.hero .route-track span {
  display: block;
  min-width: 0;
  padding: 5px 8px;
  white-space: normal;
}
.hero .route-track span:nth-of-type(n + 9) { display: none; }
.hero .route-track i { display: none; }
.proof {
  padding: 29px 0 36px;
  background: #f6e9c1;
  border: 0;
}
.proof .proof-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px 30px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: none;
}
.proof .proof-card {
  min-height: 116px;
  padding: 20px 22px 19px;
  border: 0;
  border-radius: 12px;
  background: rgba(255, 251, 239, 0.63);
  box-shadow: none; /* taste-skill-ignore: remove inherited proof shadow */
}
.proof .proof-card:hover {
  transform: none;
  background: rgba(255, 251, 239, 0.85);
}
.proof .proof-icon { display: none; }
.proof .proof-value {
  position: static;
  font-size: clamp(1.05rem, 1.5vw, 1.28rem);
  line-height: 1.2;
  letter-spacing: -0.03em;
}
.proof .proof-note {
  margin-top: 8px;
  font-size: 0.87rem;
  line-height: 1.43;
  color: #583e31;
}

/* The first refrigeration card sets a calmer photographic rhythm. */
.services #refrigeration.service-card {
  border: 0;
  border-radius: 19px;
  background: #fffaf0;
  box-shadow: none; /* taste-skill-ignore: remove inherited card shadow */
}
.services #refrigeration.service-card:hover {
  transform: none;
  box-shadow: none; /* taste-skill-ignore: remove inherited hover shadow */
}
.services #refrigeration::before { display: none; }
.services #refrigeration .service-grid {
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
  min-height: 600px;
}
.services #refrigeration .service-copy { padding: clamp(35px, 4.2vw, 58px); }
.services #refrigeration .service-copy .eyebrow::before { display: none; }
.services #refrigeration .service-copy .eyebrow { /* taste-skill-ignore: preserve existing text */
  font-size: 0.83rem;
  letter-spacing: 0.08em;
}
.services #refrigeration .service-copy h2 {
  margin: 18px 0 25px;
  font-size: clamp(2.5rem, 3.55vw, 3.4rem);
  line-height: 1.03;
  letter-spacing: -0.045em;
}
.services #refrigeration .service-copy p {
  font-size: 1rem;
  line-height: 1.58;
  color: #49352e;
}
.services #refrigeration .microline { display: none; }
.services #refrigeration .service-tags {
  margin: 12px 0 23px;
  font-size: 0.8rem;
  line-height: 1.5;
  color: #634c41;
}
.services #refrigeration .service-photo { min-height: 600px; }
.services #refrigeration .service-photo img {
  inset: 0;
  width: 100%;
  height: 100%;
  object-position: 50% 8%;
  transform: none;
  filter: none;
}
.services #refrigeration.in-view .service-photo img { transform: none; }
.services #refrigeration .service-photo::after,
.services #refrigeration .photo-sheen { display: none; }
.services #refrigeration .art-label {
  top: auto;
  bottom: 20px;
  left: 20px;
  border-radius: 8px;
  background: #0a6038;
  color: #fff;
  box-shadow: none; /* taste-skill-ignore: remove inherited label shadow */
}

@media (max-width: 1000px) {
  .hero .hero-grid {
    grid-template-columns: 1fr;
    padding: 37px 0 53px;
  }
  .hero .hero-copy > h1,
  .hero .hero-copy > .lead,
  .hero .hero-copy > .hero-actions,
  .hero .hero-copy > .support,
  .hero .hero-visual,
  .hero .hero-copy > .lead-form-card { grid-column: 1; }
  .hero .hero-visual { grid-row: 6; height: 490px; margin-top: 34px; }
  .hero .hero-copy > .lead-form-card { grid-row: 7; margin-top: 28px !important; }
  .hero #aar-hero-lead-wrap {
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
    gap: 30px;
    padding: 34px;
  }
  .hero .hero-copy > h1.display { font-size: clamp(3rem, 6.7vw, 3.75rem); }
  .hero .route-track { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .services #refrigeration .service-grid { grid-template-columns: 1fr; }
  .services #refrigeration .service-photo { height: 440px; min-height: 440px; }
}
@media (max-width: 680px) {
  .hero .hero-grid { display: grid; width: min(100% - 30px, 1200px); padding: 34px 0 46px; }
  .hero .hero-copy > h1.display {
    font-size: clamp(2.55rem, 11.5vw, 3.05rem);
    line-height: 1.07;
    letter-spacing: -0.045em;
    margin-bottom: 20px;
  }
  .hero .hero-copy > h1 br { display: initial; }
  .hero .hero-copy > .lead:first-of-type { grid-row: 3; }
  .hero .hero-copy > .lead:nth-of-type(2) { grid-row: 4; }
  .hero .hero-copy > .hero-actions { grid-row: 5; }
  .hero .hero-copy > .support { grid-row: 6; }
  .hero .lead { font-size: 1rem; line-height: 1.56; }
  .hero .hero-actions { margin-top: 24px; }
  .hero .hero-visual { grid-row: 2; height: 340px; min-height: 0; margin: 0 0 22px; }
  .hero .photo-card { inset: 0; border-radius: 15px; }
  .hero .hero-badge.speed { top: 12px; right: 12px; font-size: 0.61rem; }
  .hero .hero-badge.warranty { left: 12px; bottom: 12px; padding: 9px 11px; }
  .hero .hero-badge.warranty strong { font-size: 0.78rem; }
  .hero .hero-copy > .lead-form-card { grid-row: 7; margin-top: 28px !important; }
  .hero #aar-hero-lead-wrap {
    grid-template-columns: 1fr;
    gap: 27px;
    padding: 28px 22px;
    border-radius: 16px;
  }
  .hero #aar-hero-lead-wrap .lead-form-head .h3 {
    max-width: 100%;
    font-size: 2.4rem;
  }
  .hero #aar-hero-lead-wrap .lead-form-head .body {
    margin-top: 11px !important;
    font-size: 1rem;
  }
  .hero #aar-hero-lead-wrap .lead-form {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .hero #aar-hero-lead-wrap .lead-form textarea { min-height: 78px; }
  .hero .route-track {
    width: min(100% - 22px, 1200px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 12px 0;
    font-size: 0.72rem;
  }
  .hero .route-track span { padding: 8px 5px; }
  .proof { padding: 20px 0 25px; }
  .proof .proof-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .proof .proof-card { min-height: 110px; padding: 16px 13px; }
  .proof .proof-value { font-size: 0.98rem; }
  .proof .proof-note { font-size: 0.77rem; }
  .services #refrigeration.service-card { border-radius: 16px; }
  .services #refrigeration .service-copy { padding: 33px 24px 35px; }
  .services #refrigeration .service-copy h2 { font-size: clamp(2.15rem, 9.2vw, 2.7rem); }
  .services #refrigeration .service-photo { height: 430px; min-height: 430px; }
  .services #refrigeration .art-label { left: 14px; bottom: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero .hero-photo,
  .services #refrigeration .service-photo img { transform: none !important; }
}
