/* Contact information above navigation; both rows follow the content rail. */
:root {--dm-shell-height:137px;--dm-header:var(--dm-shell-height)}
body.home-layout .header.header,body .site-header.site-header.site-header {
  --header-ink:#151614;--header-muted:#566047;--header-line:#15161426;
  --header-surface:rgb(238 238 231 / .9);--header-active:#98421f;--header-panel:#eeeee7;
  display:block;height:auto;min-height:0;padding:0;gap:0;
  color:var(--header-ink);background:var(--header-surface);
  border-bottom:1px solid var(--header-line);box-shadow:none;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:visible;
}
body.home-layout .header.header:not(.on-paper),
body.complex-editorial .site-header.site-header:not(.on-paper),
body:has(.material-opening) .site-header.site-header:not(.is-glass) {
  --header-ink:#eeeee7;--header-muted:#bdc5b5;--header-line:#eeeee725;
  --header-surface:rgb(11 16 14 / .46);--header-active:#f6b084;--header-panel:#17201c;
}
body.home-layout .header.header:not(.on-paper) {--header-surface:rgb(11 16 14 / .22)}
.header-top,.header-navigation-inner {
  box-sizing:border-box;width:min(var(--dm-container),calc(100% - 2 * var(--dm-gutter)));
  margin-inline:auto;
}
.header-top {display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:32px;min-height:88px;padding:14px 0}
.header-identity {display:flex;align-items:center;min-width:0}
body .header-identity .brand.brand--asset {width:82px;flex-shrink:0}
.header-location {display:flex;align-items:center;gap:10px;max-width:230px}
.header-location svg {width:18px;height:18px;flex-shrink:0;color:var(--header-active)}
.header-location p {font-size:12px;line-height:1.5;font-weight:500;margin:0;color:var(--header-ink);text-wrap:balance}
.header-contacts {--header-phone-size:21px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.header-contacts a {color:var(--header-ink);text-decoration:none;white-space:nowrap}
.header-contacts .header-phone {font-size:var(--header-phone-size);line-height:1.3;letter-spacing:-.025em;font-weight:500}
.header-contacts .header-email {font-size:calc(var(--header-phone-size) * .714286);letter-spacing:calc(var(--header-phone-size) * .0157);line-height:1.5;color:var(--header-muted)}
body :is(.site-header,.header) .header-top.header-top :is(.header-cta,.contact-button) {
  --action-arrow-size:18px;min-height:44px;margin:0;padding:0 16px;font-size:12px;gap:20px;
}
.header-top .messenger-links--header {flex-wrap:nowrap;gap:6px;padding-left:24px;border-left:1px solid var(--header-line)}
.header-top .messenger-links--header .messenger-link {width:44px;height:44px;padding:10px;min-height:44px;border:1px solid var(--header-line);border-radius:50%;color:var(--header-ink);background:transparent;transition:background .18s,color .18s,border-color .18s}
.header-top .messenger-links--header .messenger-link:hover {background:color-mix(in srgb,var(--header-ink) 7%,transparent);color:var(--header-active);border-color:var(--header-active)}
.header-navigation {border-top:1px solid var(--header-line)}
.header-navigation-inner {display:flex;align-items:center;justify-content:space-between;gap:28px}
body .header-navigation.header-navigation .desktop-nav {
  display:flex;align-items:center;justify-content:flex-start;flex:0 1 auto;flex-wrap:wrap;margin:0;gap:38px;font-size:13px;line-height:1.4;
}
body .header-navigation.header-navigation .desktop-nav > a {
  display:inline-flex;align-items:center;min-height:48px;padding:10px 0;
  color:var(--header-ink);text-decoration:none;border:0;font-size:13px;
}
body .header-navigation.header-navigation a:hover,body .header-navigation.header-navigation a[aria-current],body .header-top .header-contacts a:hover {color:var(--header-active)}
body .header-navigation.header-navigation .mobile-menu {display:none}
body :is(.header,.site-header) a:focus-visible,body .header-navigation.header-navigation summary:focus-visible {outline:2px solid var(--header-active);outline-offset:4px}
.services-menu {position:relative}
body .header-navigation.header-navigation .services-menu > summary {display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 0;list-style:none;cursor:pointer;color:var(--header-ink);font-size:13px;line-height:1.4}
.services-menu > summary::-webkit-details-marker {display:none}
.services-menu > summary svg {width:12px;height:12px;transition:transform .18s}
.services-menu[open] > summary svg {transform:rotate(180deg)}
body .header-navigation.header-navigation .services-menu > summary:is(:hover,.is-current),body .header-navigation.header-navigation .services-menu[open] > summary {color:var(--header-active)}
.services-panel {position:absolute;top:100%;left:-20px;width:320px;padding:8px;background:var(--header-panel);color:var(--header-ink);border:1px solid var(--header-line);box-shadow:0 20px 50px #0003;z-index:2}
.services-panel ul {padding:0;margin:0;list-style:none}
body .header-navigation.header-navigation .services-panel a {display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:12px;color:var(--header-ink);font-size:14px;line-height:1.4;text-decoration:none;border:0}
body .header-navigation.header-navigation .services-panel a:is(:hover,:focus-visible,[aria-current]) {color:var(--header-active);background:color-mix(in srgb,var(--header-ink) 5%,transparent)}
body .header-navigation.header-navigation .services-panel .services-overview {padding-block:16px 20px;margin-bottom:6px;border-bottom:1px solid var(--header-line)}
.services-overview strong {font-size:15px;font-weight:600}
.services-overview small {display:block;font-size:11px;line-height:1.6;color:var(--header-muted);margin-top:5px}
body .header-navigation.header-navigation .services-panel a > span {font-size:inherit;color:inherit}
body .header-navigation.header-navigation .services-panel a > .service-arrow {font-size:17px;color:var(--header-active)}

/* Keep fixed/sticky headers clear of page content and anchor destinations. */
html {scroll-padding-top:calc(var(--dm-shell-height) + 24px)}
.material-opening.container {margin-top:calc(-1 * var(--dm-shell-height))}
.material-opening .breadcrumbs {top:calc(var(--dm-shell-height) + 24px)}
.material-panorama-copy {padding-top:calc(var(--dm-shell-height) + 72px)}
.home-layout .hero-copy {top:max(24%,calc(var(--dm-shell-height) + 36px))}
.home-layout .route-heading {top:calc(var(--dm-shell-height) + 36px)}
.home-layout .route-message {top:max(34%,calc(var(--dm-shell-height) + 140px))}
.home-layout .phone-finale:not(.phone-static) .phone-scene-inner {top:calc(var(--dm-shell-height) + 28px)}
.complex-editorial .opening-inner {padding-top:calc(var(--dm-shell-height) + 20px)}
@media(min-width:1001px){.complex-editorial .opening-inner{padding-top:var(--dm-shell-height)}}

@media(max-width:1200px) {
  .header-top {gap:24px}
  .header-location {max-width:180px}
  .header-top .messenger-links--header {padding-left:0;border:0}
}
@media(max-width:1000px) {
  :root {--dm-shell-height:129px}
  .header-top {min-height:84px;padding-block:12px;gap:20px}
  .header-location {max-width:145px}
  .header-location p {font-size:11px}
  .header-location svg {display:none}
  .header-contacts {--header-phone-size:19px}
  body .header-navigation.header-navigation .desktop-nav {display:none}
  body .header-navigation.header-navigation .mobile-menu {display:block;position:relative;width:100%;margin:0;border:0;color:var(--header-ink)}
  body .header-navigation.header-navigation .mobile-menu > summary {display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:13px;list-style:none;cursor:pointer}
  body .header-navigation.header-navigation .mobile-menu > summary span {font-size:22px}
  body .header-navigation.header-navigation .mobile-menu[open] > summary span {transform:rotate(45deg)}
  body .header-navigation.header-navigation .mobile-menu > nav {
    display:grid;position:static;width:100%;max-width:none;padding:8px 0 16px;
    border:0;box-shadow:none;background:transparent;max-height:calc(100svh - var(--dm-shell-height) - 16px);overflow-y:auto;
  }
  body .header-navigation.header-navigation .mobile-menu > nav > a,body .header-navigation.header-navigation .mobile-menu .services-menu > summary {display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 0;font-size:14px;border:0;border-top:1px solid var(--header-line);color:var(--header-ink);background:transparent;text-decoration:none}
  body .header-navigation.header-navigation .mobile-menu nav a[aria-current],body .header-navigation.header-navigation .mobile-menu .services-menu > summary.is-current {color:var(--header-active)}
  .mobile-menu .services-panel {position:static;width:auto;padding:4px 8px;margin-bottom:12px;box-shadow:none;border:1px solid var(--header-line)}
}
@media(max-width:850px) {
  .header-top {grid-template-columns:1fr auto auto auto;gap:20px}
  .header-location {display:none}
}
@media(max-width:700px) {
  :root {--dm-shell-height:175px}
  .header-top,.header-navigation-inner {width:calc(100% - 40px)}
  .header-top {grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;min-height:0;padding:12px 0}
  body .header-identity .brand.brand--asset {width:70px}
  .header-contacts {grid-row:2;grid-column:1;gap:2px}
  .header-contacts a {display:inline-flex;align-items:center;min-height:22px}
  .header-contacts {--header-phone-size:17px}
  body :is(.site-header,.header) .header-top.header-top :is(.header-cta,.contact-button) {grid-column:2;grid-row:1;min-height:44px;font-size:11px;padding-inline:12px;gap:12px}
  .header-top .messenger-links--header {grid-column:2;grid-row:2;justify-content:flex-end;gap:3px}
  .header-top .messenger-links--header .messenger-link {width:44px;height:44px}
  .material-panorama-copy {padding-top:calc(var(--dm-shell-height) + 76px)}
  .home-layout .route-heading {top:calc(var(--dm-shell-height) + 24px)}
  .home-layout .route-message {top:calc(var(--dm-shell-height) + 100px)}
}
@media(max-width:360px) {
  .header-top,.header-navigation-inner {width:calc(100% - 32px)}
  .header-contacts {--header-phone-size:15px}
}
@media(prefers-reduced-transparency:reduce) {
  body.home-layout .header.header,body .site-header.site-header.site-header {--header-surface:#eeeee7}
  body.home-layout .header.header:not(.on-paper),body.complex-editorial .site-header.site-header:not(.on-paper),body:has(.material-opening) .site-header.site-header:not(.is-glass) {--header-surface:#0b100e}
}
@media(prefers-reduced-motion:reduce) {
  .header-top .messenger-links--header .messenger-link,.services-menu > summary svg {transition:none}
  body :is(.site-header,.header) .header-top.header-top :is(.header-cta,.contact-button),
  body :is(.site-header,.header) .header-top.header-top :is(.header-cta,.contact-button) .header-cta-arrow svg {animation:none;transition:none;transform:none}
}
