/* Shared navigation and footer links; portfolio colors continue to inherit their own brand. */
.company-footer .company-footer-top { display:grid; grid-template-columns:1.5fr .75fr .75fr .9fr; gap:36px; padding-bottom:46px; }
.company-footer .footer-brand { display:block; font-size:clamp(2.5rem,4vw,4.5rem); }
.company-footer .footer-brand span { max-width:31ch; }
.company-footer .footer-column h2 { font:400 .65rem/1.5 var(--sans); letter-spacing:.12em; text-transform:uppercase; color:#a8b5a7; margin:5px 0 17px; }
.company-footer .footer-column a { display:block; font-size:.75rem; line-height:1.6; width:fit-content; margin:10px 0; overflow-wrap:anywhere; }
.company-footer .footer-column a:hover { text-decoration:underline; text-underline-offset:4px; }
.company-footer .footer-bottom { display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.company-footer .footer-legal { display:flex; gap:25px; flex-wrap:wrap; }
.portfolio-utility { display:flex; align-items:center; justify-content:center; gap:12px 28px; flex-wrap:wrap; padding:21px 25px; font:400 .69rem/1.7 var(--sans,Arial,sans-serif); letter-spacing:.025em; border-top:1px solid currentColor; opacity:.8; }
.portfolio-utility a { color:inherit; text-decoration:none; }
.portfolio-utility a:hover { text-decoration:underline; text-underline-offset:4px; }
.contact-layout .form-notice { font-size:.71rem; line-height:1.7; margin:0 0 20px; }
.contact-layout .form-notice a { text-decoration:underline; text-underline-offset:3px; }
@media(min-width:1001px) and (max-width:1150px) { .header .desktop-nav { gap:16px; }.header .header-inner { gap:17px; }.header .brand { flex-basis:145px; }.header .brand img { width:145px; }.header .header-cta { font-size:.68rem; padding-inline:11px; }.header .header-cta:after { margin-left:10px; } }
@media(max-width:1050px) { .company-footer .company-footer-top { grid-template-columns:1.3fr 1fr 1fr; }.company-footer .footer-column:last-child { grid-column:2/4; }.company-footer .footer-column:last-child a { display:inline-block; margin:0 24px 10px 0; } }
@media(max-width:650px) { .company-footer .company-footer-top { grid-template-columns:1fr 1fr; gap:26px; padding-bottom:25px; }.company-footer .footer-identity { grid-column:1/-1; }.company-footer .footer-column:last-child { grid-column:1/-1; }.company-footer .footer-column h2 { margin-bottom:14px; }.company-footer .footer-brand { font-size:3rem; }.company-footer .footer-legal { gap:20px; }.portfolio-utility { gap:10px 22px; font-size:.65rem; } }
