


h1, h2, h3, h4, .wc-lead, .pagehead p, .hero-eyebrow { hyphens: manual; -webkit-hyphens: manual; }


.nb { white-space: nowrap; }


.logo { gap: 0.35em; padding: 0.15rem 0 0.15rem 0.75rem; border-left: 5px solid var(--c-brand); min-height: 44px; white-space: nowrap; font-size: 1.2rem; letter-spacing: -0.01em; }
.logo__a { font-weight: 700; color: var(--c-ink); }
.logo__b { font-weight: 600; color: var(--c-brand-ink); }
.logo:hover .logo__a { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 0.15em; }
a[href^="tel:"] { white-space: nowrap; }


.header-actions { display: flex; align-items: center; gap: calc(var(--space-unit) * 0.5); }
.header-call { white-space: nowrap; }
.header-call__num { margin-left: -0.55em; }
.wc-footer__legal { max-width: none; }
.wc-nav { margin-left: auto; }
@media (max-width: 1199.98px) { .header-call__num { display: none; } }
@media (max-width: 899.98px) {
  .wc-nav { margin-left: 0; }
  .wc-nav__toggle { order: 3; }
  .header-actions { order: 2; margin-left: auto; }
}
@media (max-width: 767.98px) {
  .wc-header__bar { flex-wrap: wrap; row-gap: calc(var(--space-unit) * 0.5); padding-block: calc(var(--space-unit) * 0.6); }
  .wc-brand { order: 1; width: 100%; }
  .header-actions { order: 2; flex: 1; margin-left: 0; }
  .header-call { flex: 1; }
  .wc-nav__toggle { order: 3; }
}
@media (max-width: 379.98px) { .logo { font-size: 1.05rem; } }


.wc-hero--type, .pagehead { background: var(--c-btn); color: var(--c-on-btn); border-top: 0; }
.wc-hero--type h1, .pagehead h1 { color: var(--c-on-btn); }
.wc-hero--type h1 { max-width: 15ch; letter-spacing: -0.02em; }
.wc-hero--type .wc-lead, .pagehead .wc-lead { color: var(--c-on-btn); max-width: 46ch; }
.hero-eyebrow { display: inline-block; font-size: 0.95rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--c-on-btn);
  padding-bottom: calc(var(--space-unit) * 0.3); border-bottom: 2px solid currentColor; margin-bottom: var(--space-unit); }
.wc-hero--type :focus-visible, .pagehead :focus-visible { outline-color: var(--c-focus-on-dark); }
.btn-light { background: var(--c-surface); color: var(--c-ink); }
.btn-light:hover, .btn-light:active { background: var(--c-surface-alt); color: var(--c-ink); }
.wc-hero--type .wc-btn--secondary, .pagehead .wc-btn--secondary { color: var(--c-on-btn); border-color: var(--c-on-btn); }
.wc-hero--type .wc-btn--secondary:hover, .wc-hero--type .wc-btn--secondary:active,
.pagehead .wc-btn--secondary:hover, .pagehead .wc-btn--secondary:active { background: var(--c-surface); color: var(--c-ink); border-color: var(--c-surface); }
.hero-grid { display: grid; gap: calc(var(--space-unit) * 2); align-items: center; }
@media (min-width: 960px) { .hero-grid { grid-template-columns: 1.35fr 1fr; gap: calc(var(--space-unit) * 3); } }
.hero-facts { margin-top: calc(var(--space-unit) * 1.8); }
.hero-facts li { border-left-color: var(--c-on-btn); color: var(--c-on-btn); }
@media (max-width: 599.98px) {
  .wc-hero .wc-actions .wc-btn, .pagehead .wc-actions .wc-btn { width: 100%; }
}


.hours-card { background: var(--c-surface); color: var(--c-ink); border-radius: var(--radius-lg); padding: calc(var(--space-unit) * 1.4);
  box-shadow: 0 18px 40px rgba(var(--c-dark-rgb), 0.28); }
.hours-card h2 { font-size: 1.35rem; margin-bottom: calc(var(--space-unit) * 0.5); }
.hours-card .wc-hours { max-width: none; margin-bottom: calc(var(--space-unit) * 0.6); }
.hours-card p { margin: 0; color: var(--c-muted); font-size: 0.95rem; }
.hours-card :focus-visible { outline-color: var(--c-focus); }
.wc-hours__today { font-size: 0.875rem; }


.pagehead { padding-block: calc(var(--space-unit) * 3) calc(var(--space-unit) * 3.2); }
.pagehead h1 { max-width: 22ch; }
.pagehead .wc-actions { margin-top: calc(var(--space-unit) * 1.2); }


.wc-section-head h2 { position: relative; padding-top: calc(var(--space-unit) * 0.9); }
.wc-section-head h2::before { content: ""; position: absolute; top: 0; left: 0; width: 56px; height: 5px; border-radius: 3px; background: var(--c-brand); }
.wc-section--dark .wc-section-head h2::before { background: var(--c-brand-on-dark); }


.services { display: grid; gap: calc(var(--space-unit) * 1); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); list-style: none; padding: 0; margin: 0; }
.services li { max-width: none; }
.service-tile { display: flex; flex-direction: column; gap: calc(var(--space-unit) * 0.5); height: 100%; padding: calc(var(--space-unit) * 1.4);
  border: 2px solid var(--c-surface-alt); border-radius: var(--radius-lg); background: var(--c-surface); color: var(--c-ink); text-decoration: none;
  transition: border-color 0.18s ease, transform 0.18s ease; }
.service-tile:hover { border-color: var(--c-brand); transform: translateY(-2px); }
.service-tile h3 { margin: 0; }
.service-tile p { margin: 0; color: var(--c-muted); }
.service-tile__more { margin-top: auto; padding-top: calc(var(--space-unit) * 0.4); font-weight: 700; color: var(--c-brand-ink); }
.picto { width: 52px; height: 52px; padding: 10px; border-radius: var(--radius); background: var(--c-surface-alt); color: var(--c-brand-ink); flex: none; }
.picto svg { width: 100%; height: 100%; }

.service-list { display: grid; gap: calc(var(--space-unit) * 1.2); }
@media (min-width: 760px) { .service-list { grid-template-columns: 1fr 1fr; } }
.service-block { display: grid; grid-template-columns: auto 1fr; gap: calc(var(--space-unit) * 1); align-items: start; padding: calc(var(--space-unit) * 1.4);
  border-radius: var(--radius-lg); background: var(--c-surface-alt); scroll-margin-top: calc(var(--space-unit) * 2); }
.service-block h2 { font-size: clamp(1.3rem, 1.15rem + 0.6vw, 1.6rem); margin-bottom: calc(var(--space-unit) * 0.3); }
.service-block p { margin: 0; color: var(--c-muted); }
.picto--lg { background: var(--c-surface); width: 60px; height: 60px; }


.find { display: grid; gap: calc(var(--space-unit) * 2); }
@media (min-width: 860px) { .find { grid-template-columns: 1.3fr 1fr; align-items: start; } }
.find__address { font-size: clamp(1.4rem, 1.1rem + 1.4vw, 2.1rem); font-weight: 700; line-height: 1.25; margin-bottom: calc(var(--space-unit) * 1); max-width: 22ch; }
.wc-map .wc-actions { margin: 0; }
.ways { display: grid; gap: calc(var(--space-unit) * 1.2); }
@media (min-width: 760px) { .ways { grid-template-columns: 1fr 1fr; } }
.way { padding: calc(var(--space-unit) * 1.4); border: 1px solid rgba(255, 255, 255, 0.18); border-radius: var(--radius-lg); display: flex; flex-direction: column; gap: calc(var(--space-unit) * 0.6); }
.way h3 { margin: 0; }
.way p { margin: 0; color: var(--c-on-dark-muted); }
.way .wc-actions { margin-top: auto; padding-top: calc(var(--space-unit) * 0.4); }
.wc-section--dark .wc-contact a { color: var(--c-on-dark); }


.endcta { display: flex; flex-wrap: wrap; gap: calc(var(--space-unit) * 1.2) calc(var(--space-unit) * 2); align-items: center; justify-content: space-between; }
.endcta > div:first-child { flex: 1 1 22rem; }
@media (min-width: 860px) { .endcta { flex-wrap: nowrap; } .endcta .wc-actions { flex: none; } }
.endcta h2 { margin: 0; max-width: 20ch; }
.endcta p { margin: calc(var(--space-unit) * 0.4) 0 0; color: var(--c-muted); }
.wc-section--dark .endcta p { color: var(--c-on-dark-muted); }


.contact-grid { display: grid; gap: calc(var(--space-unit) * 2.5); }
@media (min-width: 860px) { .contact-grid { grid-template-columns: 1.2fr 1fr; } }
.contact-grid h2 { font-size: clamp(1.35rem, 1.2rem + 0.7vw, 1.8rem); }
.wc-contact a[href^="mailto:"] { overflow-wrap: anywhere; }
.contact-grid .wc-map { margin-top: calc(var(--space-unit) * 1.5); }
.form-wrap { max-width: 760px; }
.wc-form .form-ok { margin: 0; padding: calc(var(--space-unit) * 0.7) calc(var(--space-unit) * 0.9); border-left: 4px solid var(--c-brand); border-radius: var(--radius);
  background: var(--c-surface-alt); color: var(--c-ink); font-weight: 600; font-size: 1rem; }
.wc-form { background: var(--c-surface); border-radius: var(--radius-lg); padding: calc(var(--space-unit) * 1.5); border: 1px solid rgba(0, 0, 0, 0.08); }


.wc-field__hint { font-size: 0.9375rem; color: #3f4f45; }
.wc-section--dark .wc-form .wc-field__hint { color: var(--c-on-dark-muted); }


.pagehead h1, .wc-hero--type h1, .endcta h2, .wc-section-head h2 { text-wrap: balance; }


.policy h2 { font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.55rem); margin-top: calc(var(--space-unit) * 1.8); }
.policy h2:first-child { margin-top: 0; }


@media (min-width: 900px) { .wc-footer__grid { grid-template-columns: 1.5fr 1.3fr 1.1fr 0.8fr; } }
.wc-footer h2 { font-size: 1.05rem; }
.wc-footer p { color: var(--c-on-dark-muted); margin-bottom: calc(var(--space-unit) * 0.5); }
.footer-name { font-family: var(--font-head); font-weight: 700; font-size: 1.25rem; color: var(--c-on-dark); padding-left: calc(var(--space-unit) * 0.6); border-left: 4px solid var(--c-brand-on-dark); }
.wc-footer ul a { text-decoration: none; }
.wc-footer ul a:hover { text-decoration: underline; }
.wc-footer a[href^="mailto:"] { overflow-wrap: anywhere; }
