/* Shared UI corrections after the release review. */
:root{--motion-duration:180ms;--motion-easing:cubic-bezier(.2,0,0,1)}

/* Intrinsic image attributes reserve space without overriding aspect-ratio CSS. */
.solution-preview img,.aluminum-system-pics img{height:auto}

/* Compact discount with the same soft tint as the bottom enquiry badge. */
.project-calc .calc-discount{width:fit-content;max-width:100%;align-self:flex-start;justify-self:start;background:rgba(140,242,44,.15);color:#3b7420;line-height:1.35}

/* Keep contact artwork green independently of the row text styles. */
.contact-pair__item>span.contact-pair__icon,.contact-pair__icon>svg{color:var(--lime-dark);stroke:currentColor}

/* Navigation groups: office + other, sanitary, company. */
.footer .footer-grid{grid-template-columns:minmax(150px,.72fr) minmax(0,2.05fr) minmax(180px,.83fr);gap:36px;align-items:start}
.footer .footer-links--grouped{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 24px;margin:0}
.footer .footer-group--office{grid-column:1;grid-row:1}
.footer .footer-group--other{grid-column:1;grid-row:2}
.footer .footer-group--sanitary{grid-column:2;grid-row:1/span 2}
.footer .footer-group--company{grid-column:3;grid-row:1/span 2}
.footer .footer-contact{justify-self:end;min-width:0}
.footer .footer-brand{min-width:0;grid-column:auto}
.footer .footer-phone{font-size:18px!important}

/* Linked cards retain their photo zoom and keyboard focus. */
.service-solution-card .office-type__title,.about-solution-card .office-type__title{align-items:flex-start;gap:10px}
.service-solution-card .office-type__title h3,.about-solution-card .office-type__title h3{min-width:0;flex:1}
.service-solution-card:focus-visible,.about-solution-card:focus-visible{outline:2px solid var(--lime);outline-offset:3px}

/* Same subtle lift for technical/information cards. */
.motion-tech{transition:transform var(--motion-duration) var(--motion-easing),box-shadow var(--motion-duration) var(--motion-easing),border-color var(--motion-duration) var(--motion-easing)}
.motion-photo{transition:transform var(--motion-duration) var(--motion-easing);transform-origin:center}
.motion-photo-frame{overflow:hidden}
@media(hover:hover) and (pointer:fine){
  .landing-page .motion-tech.motion-tech:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(18,29,23,.07);border-color:#d4ddd0}
  body .motion-photo.motion-photo:hover,body .motion-photo.motion-photo:focus-visible{transform:scale(1.02)}
}

/* Larger dropdown without changing the header or menu content. */
@media(min-width:1021px){
  .nav-bar__inner{position:relative}
  .nav-group{position:static}
  .mega-menu{width:min(940px,calc(100vw - 48px));gap:32px;padding:30px}
  .mega-menu>div{gap:8px}
  .mega-menu b{font-size:12px}
  .mega-menu a{font-size:14px;line-height:1.45;min-height:32px;display:flex;align-items:center}
}
@media(max-width:1020px){
  .footer .footer-grid{grid-template-columns:1fr minmax(180px,.6fr);gap:30px}
  .footer .footer-brand{grid-column:1/-1}
}
@media(max-width:760px){
  .footer .footer-grid{display:grid;grid-template-columns:1fr}
  .footer .footer-links--grouped{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px}
  .footer .footer-contact{justify-self:start}
}
@media(max-width:480px){
  .footer .footer-links--grouped{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer .footer-group--office{grid-column:1;grid-row:1}
  .footer .footer-group--sanitary{grid-column:2;grid-row:1}
  .footer .footer-group--other{grid-column:1;grid-row:2}
  .footer .footer-group--company{grid-column:2;grid-row:2}
  .footer .footer-links>div{font-size:12px;line-height:1.45}
  .footer .footer-links a{min-height:32px;display:flex;align-items:center}
}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){
  .motion-tech.motion-tech,.motion-photo.motion-photo,.office-type__media img,.aluminum-type__media img,.service-project__media img,.mount-process-gallery__item img{transform:none!important;transition:none!important}
}

/* Preserve the intended one-column canopy example on tablet and mobile. */
@media(max-width:1020px){
  .landing-page--canopy .canopy-tech__grid{grid-template-columns:minmax(0,1fr)}
}
.landing-hero__grid>*{min-width:0}
@media(max-width:360px){
  .landing-hero__copy h1,.hero-copy h1,.accent-title{overflow-wrap:anywhere}
}

.motion-photo:focus-visible{outline-offset:-3px}

@media(hover:none),(pointer:coarse){
  .motion-tech.motion-tech{box-shadow:none!important}
}

/* Product prices share a left alignment; no divider on aluminum cards. */
.landing-page .office-type__footer{justify-content:flex-start}
.landing-page .office-type__footer>strong{order:-1}
.landing-page .office-type__footer>.text-link{margin-left:auto}
.landing-page--sanitary .sanitary-types__grid .office-type__footer{justify-content:flex-start}
.landing-page .aluminum-type-card__footer{border-top:0!important}
.office-type__title h3>a{color:inherit;text-decoration:none}

/* Homepage benefits: shared information icons without separate tiles. */
.why-us .why-icon{
  width:var(--ui-icon-info)!important;
  height:var(--ui-icon-info)!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  margin-bottom:14px;
  color:var(--ui-icon-color)!important;
}
.why-us .why-icon svg{width:100%;height:100%}
