/* Shared site footer: the same grid as the service pages. */
.aloniss-footer{background:linear-gradient(120deg,#fff,#f5f9fa);color:#123a52;padding:54px clamp(24px,4vw,72px) 22px;font:300 16px/1.7 "DM Sans",sans-serif;border-top:1px solid #eaf0f2;}
.aloniss-footer-grid,.aloniss-footer-bottom{max-width:var(--aloniss-grid);margin:0 auto;}
.aloniss-footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1.45fr;gap:34px;align-items:start;}
.aloniss-footer h2{font:500 17px/1.3 "DM Sans",sans-serif;color:#092b41;margin:0 0 18px;}
.aloniss-footer ul{list-style:none;margin:0;padding:0;}
.aloniss-footer li{margin:0 0 5px;}
.aloniss-footer a{color:inherit;text-decoration:none;}
.aloniss-footer a:hover{color:#2681c8;text-decoration:underline;text-underline-offset:4px;}
.aloniss-footer a:focus-visible{outline:2px solid #2681c8;outline-offset:5px;border-radius:3px;}
.aloniss-footer-brand img{width:105px;max-width:100%;height:auto;}
.aloniss-footer-brand p{margin:16px 0 0;color:#587080;font-size:14px;}
.aloniss-footer-contact li{display:flex;align-items:start;gap:12px;margin-bottom:10px;overflow-wrap:anywhere;}
.aloniss-footer-icon{flex:none;margin-top:4px;}
.aloniss-footer-hours{font-size:13px;color:#587080;margin:18px 0 0;}
.aloniss-footer-bottom{margin-top:32px;padding-top:18px;border-top:1px solid #e6eef1;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#587080;}
@media(max-width:1000px){.aloniss-footer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;}.aloniss-footer-brand{grid-column:1/-1;}}
@media(max-width:600px){.aloniss-footer{padding:36px 20px 20px;}.aloniss-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px;}.aloniss-footer-brand img{width:90px;}.aloniss-footer-brand p{margin-top:8px;}.aloniss-footer-bottom{flex-direction:column;gap:6px;}.aloniss-footer{font-size:14px;}}


.aloniss-footer-hours{padding-top:16px;border-top:1px solid #e6eef1;}
.aloniss-footer-hours h3{display:flex;align-items:center;gap:10px;margin:0 0 12px;font:500 15px/1.4 "DM Sans",sans-serif;color:#123a52;}
.aloniss-footer-hours h3 img{margin:0;}
.aloniss-footer-hours dl{margin:0;font-size:13px;line-height:1.7;}
.aloniss-footer-hours dl>div{display:flex;justify-content:space-between;gap:12px;padding:3px 0;}
.aloniss-footer-hours dt,.aloniss-footer-hours dd{margin:0;}
.aloniss-footer-hours dd{white-space:nowrap;font-weight:500;color:#123a52;}
@media(max-width:600px){.aloniss-footer-contact{grid-column:1/-1;}.aloniss-footer-hours{max-width:320px;}}

.aloniss-footer-brand .aloniss-footer-slogan{font-size:17px;font-weight:500;color:var(--aloniss-ink);margin:16px 0 8px;}.aloniss-footer-brand .aloniss-footer-slogan+p{margin-top:0;}
/* Mobile footer: About, Contact, then Opening hours in the right column. */
@media(max-width:600px){
 .aloniss-footer-grid{grid-template-areas:"brand brand" "services about" "services contact" "help hours";align-items:start;}
 .aloniss-footer-grid>.aloniss-footer-brand{grid-area:brand;}
 .aloniss-footer-grid>nav[aria-label="Tjänster i sidfoten"]{grid-area:services;}
 .aloniss-footer-about{display:contents;}
 .aloniss-footer-about>nav{grid-area:about;}
 .aloniss-footer-grid>.aloniss-footer-contact{grid-area:contact;min-width:0;}
 .aloniss-footer-about>.aloniss-footer-hours{grid-area:hours;margin:0;}
 .aloniss-footer-grid>nav[aria-label="Hjälp i sidfoten"]{grid-area:help;}
 .aloniss-footer-hours dl>div{flex-wrap:wrap;gap:0 8px;}
}
.aloniss-footer-credit{display:flex;justify-content:flex-end;margin-top:18px;font-size:12px;color:#587080;}
.aloniss-footer-credit a{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;}
.aloniss-footer-credit img{display:block;width:110px;height:auto;}
@media(max-width:600px){.aloniss-footer-credit{justify-content:flex-start;margin-top:20px;}.aloniss-footer-credit a{gap:10px;}}
/* Keep opening hours together, with consistent day/time columns. */
.aloniss-footer .aloniss-footer-hours{width:100%;max-width:230px;}
.aloniss-footer .aloniss-footer-hours dl{display:grid;grid-template-columns:max-content max-content;column-gap:18px;row-gap:5px;justify-content:start;}
.aloniss-footer .aloniss-footer-hours dl>div{display:contents;}
.aloniss-footer .aloniss-footer-hours dt,.aloniss-footer .aloniss-footer-hours dd{padding:0;line-height:1.6;}
.aloniss-footer .aloniss-footer-hours dd{text-align:left;font-variant-numeric:tabular-nums;}
@media(max-width:600px){.aloniss-footer .aloniss-footer-hours dl{column-gap:12px;font-size:12px;}.aloniss-footer .aloniss-footer-hours{max-width:100%;}}
