/* Service clarity, quotation and care that visitors can keep. */
.service-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) auto;
  align-items: center;
  gap: 28px;
  padding: 28px 7.5%;
  border-bottom: 1px solid #d9decf;
  background: #faf9f4;
}
.service-item { display: flex; align-items: center; gap: 14px; min-width: 0; }
.service-item > .icon { width: 29px; height: 29px; flex: 0 0 29px; color: #71825e; stroke-width: 1.2; }
.service-item strong { font-size: 15px; font-weight: 550; color: #2c4534; }
.service-item p { margin-top: 3px; font-size: 13px; line-height: 1.6; color: #65715b; }
.service-link { display: inline-flex; gap: 20px; align-items: center; min-height: 44px; font-size: 14px; border-bottom: 1px solid #98a68b; }
.service-link > .icon { width: 18px; height: 18px; }
.service-link:hover { color: #896840; }
.hero-secondary { gap: 12px; }
.hero-secondary span { margin-left: 0; }
.delivery-note strong { font-size: 16px; }
.delivery-note p { max-width: 390px; }
.destination-row { display: grid; grid-template-columns: 1fr; gap: 0 15px; }
#order-form select {
  width: 100%; min-height: 50px; font: inherit; font-size: 16px; color: #263f32;
  padding: 11px 36px 11px 12px; border: 1px solid #cdd5c3; background-color: transparent; border-radius: 3px;
}
#order-form select:focus-visible { outline: 3px solid #9d754e; outline-offset: 3px; }
#delivery-city-field { margin-top: 12px; }
#delivery-city-field[hidden] { display: none; }
.quote-next-steps { display: grid; gap: 5px; padding: 17px 0; margin-top: 14px; border-top: 1px solid #d8ddcf; }
.quote-next-steps strong { font-size: 15px; font-weight: 550; }
.quote-next-steps span, .quote-next-steps small { font-size: 13px; line-height: 1.6; color: #607254; }
.ready-care-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 10px; font-size: 14px; color: #4e6743; text-decoration: underline; text-underline-offset: 4px; }
.care-companion {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 9%; align-items: center; background: #ecefe4;
  border-top: 1px solid #d9dece; border-bottom: 1px solid #d9dece;
}
.companion-intro .eyebrow { margin-bottom: 20px; }
.companion-intro h2 { line-height: 1.04; font-size: clamp(44px, 4.7vw, 68px); }
.companion-intro > p:not(.eyebrow) { max-width: 390px; margin: 24px 0 26px; color: #617254; font-size: 16px; line-height: 1.8; }
.companion-actions { display: flex; flex-wrap: wrap; gap: 14px 22px; align-items: center; }
.companion-actions .button { gap: 20px; }
.companion-actions .text-button { display: inline-flex; align-items: center; font-size: 14px; }
.companion-card { position: relative; min-width: 0; padding: 35px; background: #f8f8f0; border: 1px solid #cbd5bd; border-radius: 7px; overflow: hidden; }
.companion-card::after { content: ''; position: absolute; width: 180px; height: 180px; border: 1px solid #d9e0cd; border-radius: 50%; right: -85px; top: -85px; pointer-events: none; }
.companion-card > .icon { display: block; width: 38px; height: 38px; margin-bottom: 20px; stroke-width: 1; color: #718860; }
.companion-tag { display: block; font-size: 10px; letter-spacing: .12em; line-height: 1.7; color: #687954; }
.companion-card h3 { font-family: var(--serif); font-weight: 400; font-size: clamp(35px, 3.1vw, 45px); line-height: 1.08; margin: 15px 0 20px; }
.companion-card p { color: #617254; font-size: 15px; line-height: 1.8; }
.companion-card .inline-link { margin-top: 19px; gap: 20px; background: none; text-align: left; }
.footer-main > p { max-width: 340px; }
.footer-whatsapp { display: inline-flex; align-items: center; min-height: 44px; color: #37573a; text-underline-offset: 4px; }
.footer-whatsapp:hover { text-decoration: underline; }
@media (max-width: 1100px) {
  .service-band { padding: 25px 6%; grid-template-columns: 1fr 1fr; gap: 16px 24px; }
  .service-link { grid-column: 1 / -1; width: max-content; }
  .care-companion { gap: 5%; }
  .companion-card { padding: 28px; }
}
@media (max-width: 760px) {
  .service-band { grid-template-columns: 1fr; padding: 25px 6%; gap: 20px; }
  .service-item strong { font-size: 15px; }
  .service-item p { font-size: 14px; }
  .service-link { grid-column: auto; font-size: 15px; }
  .hero-copy .hero-secondary { position: static; font-size: 14px; }
  .care-companion { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .companion-intro h2 { font-size: clamp(44px, 11vw, 58px); }
  .companion-actions { align-items: flex-start; flex-direction: column; gap: 10px; }
  .companion-actions .button { font-size: 14px; padding: 16px 19px; }
  .companion-card { padding: 26px; }
  .companion-card h3 { font-size: 38px; }
  .companion-card .inline-link { font-size: 14px; gap: 12px; }
  .ready-care-link { font-size: 13px; }
  .footer-main > p { max-width: none; }
}
