/* ALTUS additions to native Deals: source-only fields and B2B inquiry form. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #467fb9;outline-offset:3px}
.ds-product-description table{display:block;overflow-x:auto;max-width:100%}
#information-information img{max-width:100%;height:auto}
.altus-b2b-note{padding:16px;background:#edf6f2;border-left:3px solid var(--ds-primary-color);border-radius:5px;font-size:13px;line-height:1.6;margin-top:20px}
.altus-short-description{margin:20px 0;color:#49616f;font-size:14px;line-height:1.7}#altus-quote{padding-bottom:90px!important}#altus-quote>.row>.col-lg-8{background:#fff;border:1px solid #dce5ea;border-radius:12px;padding:24px}#altus-quote p{font-size:14px;line-height:1.6;margin:10px 0}#altus-quote h1{font-size:28px;margin-bottom:18px}#altus-quote label{font-size:13px}#altus-quote button[type=submit]{background:var(--ds-primary-color);border-color:var(--ds-primary-color);padding:14px 24px;color:#fff;border-radius:8px}@media(max-width:575px){#altus-quote>.row>.col-lg-8{padding:18px}#altus-quote h1{font-size:24px}}

.ocf-btn-mobile-fixed>.ocf-btn{background:#467fb9!important;border-color:#467fb9!important;color:#fff!important}.ocf-container .ocf-search-btn-static:not(.ocf-disabled),.ocf-container .ocf-search-btn-popover:not(.ocf-disabled){background:var(--ds-primary-color)!important;border-color:var(--ds-primary-color)!important;color:#fff!important}

/* Original ALTUS identity: native header background is configured in Deals. */
.ds-header{box-shadow:0 3px 18px #0a243622}
.ds-header .ds-header-user-button>.dark-text,.ds-header .ds-header-phone-button>.dark-text{color:#f2f7fa}
.ds-header .ds-header-user-button>.button-icon,.ds-header .ds-header-phone-button>.button-icon,.ds-header .ds-header-menu-button>.button-icon,.ds-header .ds-header-cart-button>.button-icon,.ds-header .ds-header-wishlist-button>.button-icon,.ds-header .ds-header-compare-button>.button-icon,.ds-header .ds-header-viewed-button>.button-icon{background-color:#e4f1f7}
.ds-header .ds-header-phone-button>.button-icon path{fill:#e4f1f7}
.ds-footer-logo{background:transparent;padding:0}
/* Content remains editable in the native Deals HTML module. */
#common-home .content-block:has(>.content-block-text .altus-company){padding:0;overflow:hidden;border:1px solid #dce7ec;border-radius:12px}
.altus-company{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;padding:44px;background:linear-gradient(115deg,#eff7fb 0%,#fff 70%)}
.altus-company-kicker{font-size:11px;letter-spacing:.13em;font-weight:700;color:#386a9e}
.altus-company h2{font-size:30px;line-height:1.2;letter-spacing:-.025em;color:#142e40;margin:14px 0 18px}
.altus-company-copy>p{max-width:560px;color:#526775;font-size:15px;line-height:1.7;margin:0 0 24px}
.altus-company-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.altus-company-actions .button-primary{background:var(--ds-primary-color);border-color:var(--ds-primary-color);padding:14px 22px}
.altus-company-link{font-size:13px;font-weight:600;text-decoration:none;color:#16384c}
.altus-company-link span{margin-left:8px;color:#386a9e}
.altus-company-steps{list-style:none;margin:0;padding:24px 28px;border-radius:10px;background:#142e40;align-self:center}
.altus-company-steps li{display:flex;align-items:flex-start;gap:20px;padding:16px 0}
.altus-company-steps li+li{border-top:1px solid #ffffff20}
.altus-company-step{font-size:24px;font-weight:600;line-height:1.2;color:#93b9df}
.altus-company-steps h3{font-size:15px;font-weight:600;color:#fff;margin:0 0 5px}
.altus-company-steps p{font-size:13px;line-height:1.5;color:#bed0dc;margin:0}
@media(max-width:767px){.altus-company{grid-template-columns:1fr;gap:24px;padding:24px}.altus-company h2{font-size:26px}.altus-company-steps{padding:14px 20px}.altus-company-actions{gap:18px}.ds-header .ds-header-catalog-button{min-height:34px}}
.ds-header .ds-header-viewed-button>svg path,.ds-header .ds-header-wishlist-button>svg path,.ds-header .ds-header-compare-button>svg path{fill:#e4f1f7}
#common-home .altus-company .altus-company-steps p{color:#bed0dc}
#common-home .altus-company .altus-company-copy>p{color:#526775}
#common-home .altus-company .altus-company-actions a{text-decoration:none}
#common-home .altus-company .altus-company-link{color:#16384c}
#common-home .altus-company .altus-company-actions .button-primary{color:#fff}
.ds-header .ds-header-search-toggle-button>.button-icon{background-color:#e4f1f7}

/* White text belongs to the dark footer content, not the floating contact panel. */
.ds-footer { --altus-footer-ink:#fff; }
.ds-footer > .container-xl,
.ds-footer > .container-xl :is(.dark-text,.light-text,.secondary-text,.ds-footer-item-title,.ds-footer-subscribe-text,a,a:hover,a:focus-visible) {
  color:var(--altus-footer-ink);
}
.ds-footer > .container-xl a,
.ds-footer > .container-xl a:hover,
.ds-footer > .container-xl a:focus-visible { text-decoration:none; }
.ds-footer > .container-xl .button-outline-primary { border-color:var(--altus-footer-ink); }
.ds-footer > .container-xl .ds-footer-item-title svg path { fill:var(--altus-footer-ink); }

.ds-fixed-contact-email{background-color:var(--ds-primary-color)}

/* The quote modal uses Bootstrap scrollbar compensation instead of a second reserved root gutter. */
html:has(body.modal-open #altusQuoteModal){scrollbar-gutter:auto}

/* Optional ALTUS background, selected per slide in the native Slideshow Plus editor. */
.ds-slideshow-item.altus-slide-background {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 26px !important;
  background:
    radial-gradient(circle at 84% 12%, rgba(77,166,227,.42), transparent 34rem),
    linear-gradient(112deg, #243342 0%, #175582 64%, #467fb9 100%);
}
.ds-slideshow-item.altus-slide-background::before,
.ds-slideshow-item.altus-slide-background::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;
}
.ds-slideshow-item.altus-slide-background::before {
  width: 660px;
  height: 660px;
  right: -150px;
  top: -420px;
  border: 1px solid rgba(227,234,242,.24);
  background: radial-gradient(circle, transparent 0 48%, rgba(202,211,219,.045) 48.5% 64%, transparent 64.5%);
  box-shadow: 0 0 0 1px rgba(63,172,255,.055), inset 0 0 80px rgba(63,172,255,.045);
}
.ds-slideshow-item.altus-slide-background::after {
  width: 270px;
  height: 270px;
  left: -126px;
  bottom: -166px;
  border: 1px solid rgba(227,234,242,.28);
  background: radial-gradient(circle, transparent 0 54%, rgba(202,211,219,.055) 54.5% 72%, transparent 72.5%);
  box-shadow: inset 0 0 52px rgba(63,172,255,.04);
}
.ds-slideshow-item.altus-slide-background > .w-100 {
  position: relative;
  z-index: 1;
}

/* Typography from the client reference, part of the selectable ALTUS slide style. */
@font-face {
  font-family: 'AltusSlideOswald';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/altus-wall-oswald.ttf) format('truetype');
}
/* Preserve the Deals font setting globally; brand typography belongs only to these components. */
html:root {
  --altus-brand-font: 'AltusSlideOswald', 'Arial Narrow', Arial, sans-serif;
  --altus-eyebrow-font: var(--altus-brand-font);
}
.altus-header,
.altus-footer,
.ds-slideshow,
.altus-wall {
  --ds-main-font: var(--altus-brand-font);
  --bs-body-font-family: var(--altus-brand-font);
  --bs-font-sans-serif: var(--altus-brand-font);
  font-family: var(--altus-brand-font);
}
.altus-wall-eyebrow { font-family:var(--altus-eyebrow-font); }
.altus-wall-popular-card::before { font-family:var(--altus-brand-font); }
.ds-slideshow-item.altus-slide-background .ds-slideshow-item-title,
.ds-slideshow-item.altus-slide-background .ds-slideshow-item-text {
  font-family: AltusSlideOswald, "Arial Narrow", Arial, sans-serif;
  font-weight: 300 !important;
  letter-spacing: -.035em;
  text-transform: uppercase;
  max-width: none;
}
.ds-slideshow-item.altus-slide-background .ds-slideshow-item-title {
  font-size: clamp(2rem, 4vw, 4rem) !important;
  line-height: 1.12;
}
.ds-slideshow-item.altus-slide-background .ds-slideshow-item-text {
  font-size: clamp(1rem, 1.8vw, 1.875rem) !important;
  line-height: 1.05;
}
.ds-slideshow-item.altus-slide-background .ds-slideshow-item-info {
  gap: 14px !important;
}
@media (max-width: 767.98px) {
  .ds-slideshow-item.altus-slide-background .ds-slideshow-item-text { font-size: 1.3rem !important; }
}
@media (max-width: 430px) {
  .ds-slideshow-item.altus-slide-background .ds-slideshow-item-title { font-size: 2rem !important; }
  .ds-slideshow-item.altus-slide-background .ds-slideshow-item-text { font-size: 1.3rem !important; }
}

/* Six native data columns, in reading order on every screen size. */
.altus-footer-grid {
  display:grid;
  grid-template-columns:.85fr 1.1fr 1.15fr 1.3fr 1fr .85fr;
  gap:24px;
  align-items:start;
  padding:32px 0;
}
.altus-footer-column { min-width:0; }
.altus-footer-brand .ds-footer-logo { width:140px;max-width:100%;height:auto;margin:0; }
.altus-footer-column .ds-footer-item-title { font-size:16px; }
.altus-footer-column .ds-footer-item-title svg { flex-shrink:0; }
.altus-footer-column ul { margin-bottom:0; }
.altus-footer-column li+li { margin-top:6px; }
.altus-footer-column a { overflow-wrap:anywhere; }
.altus-footer-column .ds-footer-contacts-button { padding:10px 14px; }
.altus-footer-phones > .ds-footer-item+.ds-footer-item { margin-top:24px; }
.altus-footer-bottom { border-top:1px solid rgba(255,255,255,.25);padding-top:20px;gap:16px; }
.altus-footer-legal { width:100%;text-align:left;line-height:1.6;overflow-wrap:anywhere; }
.altus-footer-legal p { margin:0; }
.altus-footer-legal p+p { margin-top:10px; }
.altus-footer-subscribe { padding-bottom:24px; }
@media(max-width:1199.98px) {
  .altus-footer-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:28px; }
}
@media(max-width:767.98px) {
  .altus-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px; }
  .altus-footer-brand { grid-column:1/-1; }
}
@media(max-width:359.98px) {
  .altus-footer-grid { grid-template-columns:minmax(0,1fr); }
}

/* Original client motion, adapted to the selectable ALTUS slide style. */
@keyframes altus-banner-ring-pulse {
  0%, 100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: .82;
  }
  50% {
    transform: translate3d(-24px, 22px, 0) scale(1.06);
    opacity: 1;
  }
}
@keyframes altus-banner-ring-pulse-reverse {
  0%, 100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: .76;
  }
  50% {
    transform: translate3d(20px, -18px, 0) scale(1.07);
    opacity: .98;
  }
}
@keyframes altus-hero-float {
  0%, 100% { transform: translateY(0) rotate(-1deg) scale(.98); }
  50% { transform: translateY(-8px) rotate(1deg) scale(1.01); }
}
@media(prefers-reduced-motion:no-preference) {
  .ds-slideshow-item.altus-slide-background::before { animation:altus-banner-ring-pulse 11s ease-in-out infinite; }
  .ds-slideshow-item.altus-slide-background::after { animation:altus-banner-ring-pulse-reverse 13s ease-in-out infinite; }
  .ds-slideshow-item.altus-slide-background > .w-100 > a > img { animation:altus-hero-float 7.2s ease-in-out infinite;transform-origin:center; }
}

/* Optional native, language-specific slide eyebrow. */
.ds-slideshow-item-eyebrow {
  font-family: var(--altus-eyebrow-font);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: .14em;
  overflow-wrap: anywhere;
  color: inherit;
}
.ds-slideshow-item.altus-slide-background .ds-slideshow-item-eyebrow { color: #b8d1df; }

/* Uppercase native slideshow button labels without changing saved text. */
.ds-slideshow-item .button-text { text-transform: uppercase; }
