/* A unified light-concrete footer: brand, catalog, contact, and legal. */
.neutral-body #contact.concrete-footer{--footer-ink:#303030;--footer-muted:#595959;--footer-gold:#755b32;--footer-rule:#c9c9c9;background:#eaeaea;color:var(--footer-ink);isolation:isolate}
#contact.concrete-footer .footer-width{width:min(calc(100% - 8.8%),1400px);margin-inline:auto}
.neutral-body #contact.concrete-footer .footer-invitation{background:#fafafa;border-top:1px solid #d8d8d8;border-bottom:1px solid #cecece}
#contact.concrete-footer .footer-invitation>.footer-width{padding-block:32px;gap:36px;position:relative}
#contact.concrete-footer .footer-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:12px;color:#626262}
#contact.concrete-footer .footer-eyebrow:before{content:"";width:24px;height:1.5px;background:#ca1821}
#contact.concrete-footer .footer-invitation h2{font-size:clamp(29px,3vw,43px);line-height:1.25;letter-spacing:-1.3px;font-weight:650;margin:0 0 10px;color:#303030;text-wrap:balance}
#contact.concrete-footer .footer-invitation h2 span{color:var(--footer-gold);font-weight:450}
#contact.concrete-footer .footer-invitation p{font-size:13px;line-height:1.8;color:var(--footer-muted)}
#contact.concrete-footer .footer-direct{padding:0;gap:8px}
#contact.concrete-footer .footer-direct>span{font-size:12px;color:var(--footer-muted)}
#contact.concrete-footer .footer-dial{direction:ltr;gap:22px;font-size:30px;letter-spacing:-.6px;min-height:60px;padding:10px 18px;border:1px solid #aa9270;background:transparent;color:#303030;border-radius:2px;transition:border-color .2s,color .2s}
#contact.concrete-footer .footer-dial>svg{width:24px;height:24px;stroke:var(--footer-gold);stroke-width:1.3}
#contact.concrete-footer .footer-dial:hover{color:#755b32;border-color:#755b32}
#contact.concrete-footer .footer-dial:hover>svg{transform:none}
#contact.concrete-footer .footer-material{background:linear-gradient(120deg,#ededed,#f5f5f5 55%,#e4e4e4);color:#303030}
#contact.concrete-footer .footer-core{display:grid;grid-template-columns:210px minmax(0,1fr);gap:44px;padding-block:38px 34px}
#contact.concrete-footer .footer-identity{padding:8px 0 0 28px;border-inline-end:1px solid #c6c6c6;position:relative;min-width:0}
#contact.concrete-footer .footer-identity:before{content:"";display:block;width:42px;height:1.5px;background:linear-gradient(to left,#cb1922,transparent);margin-bottom:22px}
#contact.concrete-footer .footer-identity>a{display:inline-flex;min-height:44px;align-items:center}
#contact.concrete-footer .footer-identity img{width:180px;height:auto;max-width:100%;display:block;object-position:right center;filter:none}
#contact.concrete-footer .footer-identity p{font-size:13px;line-height:1.9;color:#555;margin:20px 0 25px}
#contact.concrete-footer .footer-heritage{display:flex;align-items:center;gap:11px;color:#3f3f3f}
#contact.concrete-footer .footer-heritage>strong{font-size:53px;font-weight:450;line-height:1;letter-spacing:-3px;color:#755b32;flex:none}
#contact.concrete-footer .footer-heritage>strong span{font-size:30px;vertical-align:top;line-height:1.2}
#contact.concrete-footer .footer-heritage>span{font-size:13px;line-height:1.6}
#contact.concrete-footer .footer-heritage small{font-size:11px;color:#626262;white-space:nowrap}
#contact.concrete-footer .footer-collections{min-width:0}
#contact.concrete-footer .footer-directory-label{display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.2px;color:#626262;margin-bottom:22px}
#contact.concrete-footer .footer-directory-label:after{content:"";height:1px;background:linear-gradient(to left,#b7a17e,#d0d0d0 30%,#d0d0d0);flex:1}
#contact.concrete-footer .footer-directory{padding:0;gap:24px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}
#contact.concrete-footer .footer-group{border:0;min-width:0}
#contact.concrete-footer .footer-group>summary{min-height:64px;align-items:flex-start;margin:0 0 12px;padding:0;gap:8px;color:#303030;position:relative}
#contact.concrete-footer .footer-family-title{display:flex;flex-direction:column;gap:9px;min-width:0}
#contact.concrete-footer .footer-family-mark{height:28px;width:40px;color:#555;display:block}
#contact.concrete-footer .footer-family-mark>svg{width:40px;height:30px;display:block;fill:none}
#contact.concrete-footer .footer-family-mark [fill="#dce0d7"]{fill:#dedede}
#contact.concrete-footer .footer-family-mark [fill="#f7f8f1"]{fill:#fafafa}
#contact.concrete-footer .footer-family-mark .equipment-accent{stroke:#bf242b}
#contact.concrete-footer .footer-group>summary h3{color:#303030;font-size:15px;font-weight:650;line-height:1.5;margin:0}
.neutral-body #contact.concrete-footer :is(.footer-group>summary,h3.footer-family-title){color:#303030}
.neutral-body #contact.concrete-footer .footer-sitemap h3{color:#626262}
#contact.concrete-footer .footer-family-number{font-size:10px;line-height:28px;color:#755b32;letter-spacing:1px}
#contact.concrete-footer .footer-group>summary>svg{display:none}
#contact.concrete-footer .footer-group-body>nav{align-items:stretch}
#contact.concrete-footer .footer-group-body a{color:#505050;font-size:13px;line-height:1.55;min-height:44px;display:flex;align-items:center;padding:7px 0;transition:color .2s}
#contact.concrete-footer .footer-popular{margin-top:17px;padding-top:14px;border-top:1px solid #cecece}
#contact.concrete-footer .footer-popular h4{font-size:12px;color:#755b32;font-weight:550;margin:0 0 4px}
#contact.concrete-footer .footer-address{display:grid;grid-template-columns:1fr 1fr 1.55fr 1fr;gap:24px;padding:24px 0;margin:0;border-block:1px solid #c5c5c5;align-items:center}
#contact.concrete-footer .footer-address>h3{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;padding:0}
#contact.concrete-footer .footer-address>a,#contact.concrete-footer .footer-address>p{margin:0;min-height:58px;padding:0;display:flex;gap:12px;align-items:center;font-size:13px;line-height:1.65;color:#424242;min-width:0}
#contact.concrete-footer .footer-address>a:first-of-type{font-size:22px;color:#303030}
#contact.concrete-footer .footer-address svg{width:23px;height:23px;stroke:#755b32;stroke-width:1.25;margin:0;flex:none}
#contact.concrete-footer .footer-contact-copy{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
#contact.concrete-footer .footer-contact-copy small{font-size:11px;font-weight:400;color:#626262}
#contact.concrete-footer .footer-contact-copy bdi{font-weight:450}
#contact.concrete-footer .footer-address p .footer-contact-copy>span{font-size:13px;line-height:1.7}
#contact.concrete-footer .footer-base{padding-block:20px}
#contact.concrete-footer .footer-sitemap{display:flex;flex-direction:row;flex-wrap:wrap;gap:3px 24px;align-items:center;border-bottom:1px solid #d0d0d0;padding-bottom:14px}
#contact.concrete-footer .footer-sitemap h3{color:#626262;font-size:11px;font-weight:400;margin:0 4px 0 18px}
#contact.concrete-footer .footer-sitemap a{color:#4e4e4e;font-size:12px;min-height:44px;padding:5px 0}
#contact.concrete-footer .footer-legal{padding:17px 0 0;border:0;gap:10px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto;color:#626262;font-size:10px}
#contact.concrete-footer .footer-legal>a{color:#4e4e4e;min-height:44px;font-size:11px;grid-column:2;grid-row:1/3}
#contact.concrete-footer .footer-legal .footer-legal-note{color:#666;max-width:800px;font-size:10px;grid-column:1;line-height:1.8}
#contact.concrete-footer :is(.footer-material a,.footer-material summary):hover{color:#755b32}
#contact.concrete-footer :is(a,summary):focus-visible{outline:2px solid #755b32;outline-offset:4px}
@media(max-width:1200px){#contact.concrete-footer .footer-core{grid-template-columns:175px minmax(0,1fr);gap:28px}#contact.concrete-footer .footer-identity{padding-inline-end:20px}#contact.concrete-footer .footer-directory{gap:18px}#contact.concrete-footer .footer-group>summary h3{font-size:14px}#contact.concrete-footer .footer-group-body a{font-size:12px}#contact.concrete-footer .footer-address{gap:18px}#contact.concrete-footer .footer-address>a:first-of-type{font-size:20px}}
@media(max-width:950px){#contact.concrete-footer .footer-core{grid-template-columns:170px minmax(0,1fr);gap:32px}#contact.concrete-footer .footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 30px}#contact.concrete-footer .footer-group-body a{font-size:13px}#contact.concrete-footer .footer-invitation h2{font-size:33px}#contact.concrete-footer .footer-dial{font-size:25px;gap:14px;padding-inline:13px}#contact.concrete-footer .footer-address{grid-template-columns:1fr 1.5fr;gap:18px 26px}#contact.concrete-footer .footer-address>a:first-of-type{font-size:23px}#contact.concrete-footer .footer-address>a{grid-row:1}#contact.concrete-footer .footer-address p{grid-row:2}}
@media(max-width:700px){#contact.concrete-footer .footer-width{width:calc(100% - 40px)}#contact.concrete-footer .footer-invitation>.footer-width{padding-block:27px}#contact.concrete-footer .footer-invitation h2{font-size:32px;line-height:1.3;letter-spacing:-1px;max-width:360px}#contact.concrete-footer .footer-invitation h2 span{display:block}#contact.concrete-footer .footer-invitation p{font-size:13px}#contact.concrete-footer .footer-direct{margin-top:20px;gap:7px}#contact.concrete-footer .footer-dial{font-size:28px;min-height:56px;padding:8px 16px;gap:28px}#contact.concrete-footer .footer-core{display:block;padding-block:28px 15px}#contact.concrete-footer .footer-identity{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;align-items:center;padding:0 0 25px;border:0;border-bottom:1px solid #c8c8c8;margin-bottom:23px}#contact.concrete-footer .footer-identity:before{display:none}#contact.concrete-footer .footer-identity>a{grid-column:1;grid-row:1}#contact.concrete-footer .footer-identity img{width:145px;height:auto}#contact.concrete-footer .footer-identity p{grid-column:1/-1;grid-row:2;font-size:12px;margin:10px 0 0}#contact.concrete-footer .footer-identity p br{display:none}#contact.concrete-footer .footer-heritage{grid-column:2;grid-row:1;gap:8px;justify-self:end}#contact.concrete-footer .footer-heritage>strong{font-size:42px}#contact.concrete-footer .footer-heritage>strong span{font-size:23px}#contact.concrete-footer .footer-heritage>span{font-size:12px}#contact.concrete-footer .footer-heritage small{font-size:10px}#contact.concrete-footer .footer-directory-label{margin-bottom:13px}#contact.concrete-footer .footer-directory{display:block}#contact.concrete-footer .footer-group{border-bottom:1px solid #c9c9c9}#contact.concrete-footer .footer-group:last-child{border-bottom:0}#contact.concrete-footer .footer-group>summary{align-items:center;min-height:62px;margin:0;padding-block:10px;gap:12px}#contact.concrete-footer .footer-family-title{flex-direction:row;align-items:center;gap:11px}#contact.concrete-footer .footer-family-mark{width:34px;height:27px;flex:none}#contact.concrete-footer .footer-family-mark>svg{width:34px;height:27px}#contact.concrete-footer .footer-family-number{display:none}#contact.concrete-footer .footer-group>summary h3{font-size:14px}#contact.concrete-footer .footer-group>summary>svg{display:block;width:18px;height:18px;flex:none;color:#755b32;stroke:currentColor;fill:none}#contact.concrete-footer .footer-group-body{padding:2px 0 14px}#contact.concrete-footer .footer-group-body a{padding:8px 0;font-size:13px}#contact.concrete-footer .footer-address{grid-template-columns:1fr 1.25fr;padding-block:20px;gap:18px 20px}#contact.concrete-footer .footer-address>a,#contact.concrete-footer .footer-address>p{gap:9px;min-height:56px}#contact.concrete-footer .footer-address>a:first-of-type{font-size:18px}#contact.concrete-footer .footer-address>a{font-size:12px}#contact.concrete-footer .footer-address svg{width:18px;height:18px}#contact.concrete-footer .footer-address p .footer-contact-copy>span{font-size:11px}#contact.concrete-footer .footer-contact-copy small{font-size:10px}#contact.concrete-footer .footer-base{padding-block:14px 20px}#contact.concrete-footer .footer-sitemap{gap:0 20px;padding-bottom:12px}#contact.concrete-footer .footer-sitemap h3{width:100%;margin:0 0 5px}#contact.concrete-footer .footer-sitemap a{font-size:12px}#contact.concrete-footer .footer-legal{grid-template-columns:1fr auto;gap:4px 12px;padding-top:12px}#contact.concrete-footer .footer-legal>p:first-child{font-size:9px}#contact.concrete-footer .footer-legal>a{font-size:10px;gap:6px}#contact.concrete-footer .footer-legal .footer-legal-note{grid-column:1/-1;font-size:9px;margin-top:7px}}
@media(max-width:360px){#contact.concrete-footer .footer-width{width:calc(100% - 32px)}#contact.concrete-footer .footer-invitation h2{font-size:29px}#contact.concrete-footer .footer-identity{gap:10px}#contact.concrete-footer .footer-identity img{width:125px}#contact.concrete-footer .footer-heritage>strong{font-size:35px}#contact.concrete-footer .footer-heritage>span{font-size:11px}#contact.concrete-footer .footer-heritage small{font-size:9px}#contact.concrete-footer .footer-address{grid-template-columns:1fr;gap:15px}#contact.concrete-footer .footer-address>a,#contact.concrete-footer .footer-address>p{grid-row:auto;font-size:14px}#contact.concrete-footer .footer-address>a:first-of-type{font-size:23px}#contact.concrete-footer .footer-address p .footer-contact-copy>span{font-size:13px}#contact.concrete-footer .footer-address svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){#contact.concrete-footer a{transition:none}}
