/* Single footer layout source for public pages and editor previews. */
.footer-info-wrapper{width:100%;max-width:none;box-sizing:border-box;display:block;line-height:1.5;font-size:.792em;text-align:left;}
.footer-info-wrapper>.kws-footer-builder-grid{display:flex;width:95%;max-width:1400px;margin-inline:auto;align-items:flex-start;justify-content:space-around;gap:clamp(.75rem,1.6vw,1.75rem);box-sizing:border-box;}
.footer-info-wrapper .kws-footer-column{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.3rem;}
.footer-info-wrapper .kws-footer-component{width:100%;min-width:0;}
.footer-info-wrapper .kws-footer-component>.footer-info-item{display:block;width:100%;max-width:none;margin:0;padding:.18rem 0;box-sizing:border-box;}
.footer-info-wrapper .footer-info-item .foot-logo{margin-bottom:.4rem!important;}
.footer-info-wrapper .footer-info-item .site-logo img{display:block;max-width:100%;height:auto;}
.footer-info-wrapper .footer-info-content>div{margin-block:.25rem!important;}
.footer-info-wrapper .footer-info-item p{margin:.3em 0;}
.footer-info-wrapper .footer-info-item,.footer-info-wrapper .footer-info-content,.footer-info-wrapper .footer-navigation-wrap,.footer-info-wrapper .kws-footer-menu-title,.footer-info-wrapper .social{text-align:left;}
.footer-info-wrapper .footer-navigation-wrap ul,.footer-info-wrapper .footer-navigation-wrap .primary-menu{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.2rem;margin:0;padding-left:0;}
.footer-info-wrapper .footer-navigation-wrap li{display:block;width:100%;margin:0;text-align:left;}
.footer-info-wrapper .kws-footer-menu-title{font-size:1.1em;margin:0 0 .2em;padding:0;text-align:left;}
.footer-info-wrapper .kws-footer-opening-compact{font-size:.92em;}
.footer-info-wrapper .kws-footer-socials--minimal{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.45em;}
.footer-info-wrapper .kws-footer-socials--minimal>a.kws-footer-social{display:inline-flex;align-items:center;justify-content:flex-start;width:auto;min-height:28px;height:auto;margin:0;padding:0;gap:.55em;background:transparent;box-shadow:none;border:0;}
.footer-info-wrapper .kws-footer-socials--minimal .kws-footer-social-name{display:inline;font-size:1em;line-height:1.4;}
.kws-footer-custom img{max-width:100%;height:auto;}.kws-footer-custom-button{display:inline-block;}
@media(max-width:800px){.footer-info-wrapper>.kws-footer-builder-grid{flex-wrap:wrap;gap:1.5rem}.footer-info-wrapper .kws-footer-column{flex:1 1 calc(50% - 1rem)}}
@media(max-width:560px){.footer-info-wrapper>.kws-footer-builder-grid{flex-direction:column;gap:1rem}.footer-info-wrapper .kws-footer-column{flex:none;width:100%}}

.kws-footer-builder-admin{max-width:1200px}.kws-footer-editor-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kws-footer-editor-col{background:#f6f7f7;padding:9px;border:1px dashed #999;min-height:90px}.kws-footer-editor-col h3{margin-top:0}.kws-footer-builder-row{background:#fff;border:1px solid #c3c4c7;margin:0 0 6px;padding:8px;border-radius:4px;min-width:0}.kws-footer-builder-row-head{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.kws-footer-builder-row-head strong{flex:1 1 auto}.kws-footer-grip{cursor:grab;font-size:20px}.kws-footer-builder-row label{display:block;margin:5px 0}.kws-footer-builder-row textarea,.kws-footer-builder-row input[type=url]{max-width:100%;width:100%}#kws-footer-builder-preview{display:block;width:100%;height:490px;border:1px solid #999;background:#fff}@media(max-width:800px){.kws-footer-editor-columns{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.kws-footer-editor-columns{grid-template-columns:1fr}}

.kws-footer-builder-preview-heading{margin:1.2rem 0 .5rem}
.kws-footer-builder-add-panel{display:flex;align-items:center;flex-wrap:wrap;gap:12px;background:#fff;padding:16px 18px;margin:16px 0;border:2px solid #2271b1;border-radius:6px}
.kws-footer-builder-add-panel>strong{font-size:1.15rem;margin-right:auto}
.kws-footer-builder-add-panel #kws-footer-builder-add-button{font-weight:700;padding:4px 18px}
.kws-footer-builder-row-options{padding-top:8px}.kws-footer-builder-row-options[hidden]{display:none}
.kws-footer-builder-row-head .kws-footer-options-toggle{margin-left:auto}

/* Footer copyright and credit are one compact, wrapping line. */
#footer.footer-bottom{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.3em;flex-wrap:wrap;text-align:center;font-size:.78em;line-height:1.45}
#footer.footer-bottom>span,#footer.footer-bottom>a{display:inline!important;width:auto!important;margin:0!important;padding:0!important;float:none!important;font-size:inherit!important;line-height:inherit!important}
#footer.footer-bottom>a{text-decoration:underline;text-underline-offset:2px}

/* Minimal social links follow footer link colours, hover behaviour and alignment. */
.footer-info-wrapper .kws-footer-socials--minimal,
.footer-info-wrapper .kws-footer-socials--minimal a.kws-footer-social{align-items:center;justify-content:flex-start;text-align:left;margin:0;padding:0;}
.footer-info-wrapper .kws-footer-socials--minimal a.kws-footer-social,
.footer-info-wrapper .kws-footer-socials--minimal a.kws-footer-social:hover,
.footer-info-wrapper .kws-footer-socials--minimal a.kws-footer-social:focus{ text-decoration:none!important; }

.footer-info-wrapper .kws-footer-socials--minimal a.kws-footer-social .kws-footer-social-name{display:inline-block;text-align:left;}
.footer-info-wrapper .kws-footer-facebook-page{max-width:100%;overflow:hidden;}

.footer-info-wrapper .kws-footer-custom > h3.kws-footer-menu-title{margin-top:0;padding-top:0;margin-bottom:.2em;padding-bottom:0;}

/* Minimal social items use the same link and hover colours as other footer links. */
.footer-info-wrapper div.social_block.kws-footer-socials--minimal{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;justify-content:flex-start;align-content:flex-start;width:100%;text-align:left;}
.footer-info-wrapper div.social_block.kws-footer-socials--minimal>a.kws-footer-social{display:inline-flex;flex:none;width:auto;max-width:100%;margin:0;padding:0;align-items:center;justify-content:flex-start;text-align:left;gap:.55em;}
.footer-info-wrapper div.social_block.kws-footer-socials--minimal>a.kws-footer-social:hover{transform:none;}

/* Footer contact links and social heading share the same compact footer typography. */
.footer-info-wrapper .kws-footer-socials-label.kws-footer-menu-title{display:block;width:100%;text-align:left;margin:0 0 .55em;padding:0;}
.footer-info-wrapper .footer-info-content .kws-footer-email{white-space:nowrap;max-width:100%;overflow-x:auto;overflow-y:hidden;}
.footer-info-wrapper .footer-info-content .kws-footer-email a{white-space:nowrap;overflow-wrap:normal;word-break:normal;hyphens:none;}
.footer-info-wrapper .kws-footer-component>.footer-info-item.social{padding-top:.18rem;padding-bottom:.18rem;}
