/* The approved logo is always the original SVG, with its original palette. */
.logo,.footer-logo{height:auto;aspect-ratio:318/75;object-fit:contain}
/* A light backing preserves the dark original lettering on the navy footer. */
.footer-logo{background:#fff;box-shadow:0 0 0 5px #fff}
@media(min-width:861px){
 .footer-logo{margin-bottom:calc(6 * var(--u) + 4.745283 * var(--t))}
}

/* Reflow the existing artwork without changing the desktop composition. */
@media(max-width:860px){
 .home-hero{display:grid;grid-template-columns:minmax(0,1fr);height:auto;min-height:0;max-height:none}
 .hero-content{display:contents}
 .hero-content>.eyebrow,.hero-content>h1,.hero-description,.hero-buttons,.hero-benefits{width:90%;margin-left:auto;margin-right:auto}
 .hero-content>.eyebrow{grid-row:1;margin-top:34px}
 .hero-content>h1{grid-row:2}
 .hero-description{grid-row:3;max-width:none}
 .hero-buttons{grid-row:4;margin-bottom:24px}
 .hero-reference{grid-row:5;position:static;width:100%;height:auto;opacity:1;overflow:visible}
 .hero-reference .hero-art{width:100%;height:auto;object-fit:contain;object-position:center;mask-image:none}
 .hero-benefits{grid-row:6;margin-top:24px;margin-bottom:30px}

 .service-art{height:auto;object-fit:contain}
 .domain-band{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:18px 10px}
 .domain-intro{grid-area:1/1;min-width:0}
 .domain-plane{display:block;position:static;grid-area:1/2;width:34px;height:auto;align-self:start}
 .domain-band:after{display:block;position:static;grid-area:1/2;align-self:start;justify-self:center;margin-top:43px;width:18px;height:25px;transform:none}
 .domain-band .domain-form{grid-column:1/-1;min-width:0}

 .infrastructure-home{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:20px;min-height:0;padding-block:25px 0}
 .infrastructure-copy{grid-area:1/1/2/-1;width:100%;padding:0}
 .infrastructure-leaf{display:block;position:static;grid-area:1/2;align-self:start;justify-self:end;width:20px;height:auto}
 .infrastructure-art{grid-area:2/1/3/-1;width:100%;margin:0}
 .page-hero-inner{display:flex;flex-direction:column;gap:24px}
 .page-hero-inner>div{width:100%}
 .page-hero-art{display:block;width:100%;max-width:640px;margin:0;opacity:1}

 .stats{row-gap:25px;padding-bottom:0}
 .stats-mountains{position:relative;order:1;grid-column:1/-1;left:-5.555%;bottom:auto;width:111.111%;height:auto}
 .closing-cta{padding-bottom:0}
 .mountain-line{position:static;display:block;width:100%;height:auto;margin-top:24px}
 .site-footer{display:flex;flex-direction:column;padding-bottom:0}
 .footer-grid{order:0}
 .footer-bottom{order:1}
 .footer-mountains{position:static;order:2;width:100%;min-width:0;max-width:100%;height:auto;opacity:1}
 .footer-note{display:flex;align-items:center;gap:12px;position:relative;right:auto;bottom:auto;margin:24px 0 0;padding:0 0 12px 8px;transform:rotate(-8deg)}
 .footer-note>img{position:static;width:32px;height:auto;flex:none}
}
@media(min-width:581px) and (max-width:860px){
 .footer-note{grid-column:1;grid-row:3/5;align-self:start;justify-self:start;margin:12px 0 0 12px}
}
@media(max-width:580px){
 /* Keep all four brand links in balanced rows, without stranded separators. */
 .footer-group .group-brands{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
 .footer-group .group-brands a,.footer-group .group-brands span{grid-column:auto;grid-row:auto}
 .footer-group .group-brands i{display:none}
}
