/* 01 — Canvas. All rules are scoped to this footer. */
.tsmf{--tsmf-bg:#263e43;--tsmf-text:#f4f1e9;--tsmf-accent:#d5a251;background:var(--tsmf-bg);color:var(--tsmf-text);font-family:Jost,Futura,"Century Gothic",Arial,sans-serif;font-size:13px;font-weight:400;line-height:1.6;position:relative;isolation:isolate;clear:both;width:100%;margin:0;padding:0;border-top:1px solid currentColor;border-top-color:color-mix(in srgb,currentColor 18%,transparent);text-align:left;}
.tsmf,.tsmf *{box-sizing:border-box;}
.tsmf a,.tsmf a:visited{color:inherit;text-decoration:none;transition:color .18s;}
.tsmf a:hover{color:var(--tsmf-accent);}
.tsmf a:focus-visible,.tsmf summary:focus-visible,.tsmf input:focus-visible,.tsmf button:focus-visible{outline:2px solid var(--tsmf-accent);outline-offset:5px;}
.tsmf p,.tsmf h2,.tsmf ul{margin:0;padding:0;}
.tsmf h2{color:inherit;font-family:inherit;font-size:12px;font-weight:400;line-height:1.5;letter-spacing:.035em;}
.tsmf [hidden]{display:none!important;}
/* 02 — Centred Tasmo brand. The bundled stacked logo is cropped to its wordmark. */
.tsmf-brand{display:flex;justify-content:center;padding:28px 28px 14px;}
.tsmf-logo{display:block;position:relative;overflow:hidden;width:158px;height:30px;}
.tsmf-logo img{position:absolute;display:block;width:176px!important;max-width:none!important;height:176px!important;left:-8px;top:-131px;object-fit:contain;}
.tsmf-logo--full{width:170px;height:90px;}
.tsmf-logo--full img{position:static;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain;}
/* 03 — Wide breathing room with two concise utility blocks. */
.tsmf-stage{min-height:192px;}
.tsmf-content{display:flex;justify-content:space-between;gap:70px;padding:12px 32px 54px;}
.tsmf-content section{width:340px;max-width:100%;}
.tsmf-content p{margin-top:6px;opacity:.83;font-size:12px;}
.tsmf-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px 24px;margin-top:34px;border-bottom:1px solid currentColor;padding-bottom:8px;}
.tsmf-actions a{font-size:12px;}
.tsmf-actions a span{margin-left:8px;}
/* 04 — Desktop menus replace the utility area, as in the reference. */
.tsmf-navigation{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 32px;border-block:1px solid #ffffff2e;border-color:color-mix(in srgb,currentColor 18%,transparent);min-height:64px;}
.tsmf-menus{display:flex;flex-wrap:wrap;align-items:center;gap:24px;}
.tsmf-menu{position:static;margin:0;border:0;padding:0;}
.tsmf-menu summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;user-select:none;font-size:12px;letter-spacing:.02em;padding:22px 0;line-height:20px;}
.tsmf-menu summary::-webkit-details-marker{display:none;}
.tsmf-menu summary::marker{content:"";}
.tsmf-menu summary:hover,.tsmf-menu[open] summary{color:var(--tsmf-accent);}
.tsmf-plus{width:9px;height:9px;position:relative;display:inline-block;flex-shrink:0;}
.tsmf-plus:before,.tsmf-plus:after{content:"";position:absolute;background:currentColor;left:0;top:4px;width:9px;height:1px;}
.tsmf-plus:after{transform:rotate(90deg);transition:transform .18s;}
.tsmf-menu[open] .tsmf-plus:after{transform:rotate(0);}
.tsmf-panel{position:absolute;bottom:100%;left:0;width:100%;height:192px;overflow:auto;background:var(--tsmf-bg);display:flex;align-items:center;justify-content:center;padding:28px 32px;z-index:2;}
.tsmf-panel ul{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;list-style:none;gap:15px 0;}
.tsmf-panel li{margin:0;list-style:none;line-height:1.6;padding:0 22px;}
.tsmf-panel li+li{border-left:1px solid currentColor;}
.tsmf:has(.tsmf-menu[open]) .tsmf-content{visibility:hidden;}
.tsmf.has-open-menu .tsmf-content{visibility:hidden;}
.tsmf-region{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;}
.tsmf-region span{font-size:12px;letter-spacing:.02em;}
.tsmf-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 32px;}
.tsmf-bottom small{font-size:10px;opacity:.75;line-height:1.8;}
.tsmf-bottom>a{font-size:11px;white-space:nowrap;}
/* 05 — Existing provider forms inherit the minimal underline treatment. */
.tsmf-newsletter{margin-top:24px;}
.tsmf-newsletter form,.tsmf-newsletter .mc4wp-form-fields{margin:0;}
.tsmf-newsletter input[type=email],.tsmf-newsletter input[type=text]{font:inherit;color:inherit;width:100%;background:transparent;border:0;border-bottom:1px solid currentColor;border-radius:0;box-shadow:none;padding:8px 0;min-height:40px;}
.tsmf-newsletter input::placeholder{color:inherit;opacity:.65;}
.tsmf-newsletter button,.tsmf-newsletter input[type=submit]{font:inherit;font-size:12px;color:inherit;background:transparent;border:1px solid currentColor;border-radius:0;padding:8px 16px;box-shadow:none;cursor:pointer;}
.tsmf-newsletter button:hover,.tsmf-newsletter input[type=submit]:hover{color:var(--tsmf-accent);}
.tsmf-newsletter label{color:inherit;font:inherit;font-size:11px;}
.tsmf-newsletter input[type=checkbox]{accent-color:var(--tsmf-accent);}
.tsmf-newsletter .mc4wp-response{font-size:12px;}
/* 06 — Only replace theme areas while an automatic Tasmo footer exists. */
body.tasmo-footer-mounted .footer-container:not(.tsmf),body:has([data-tasmo-autofooter]) .footer-container:not(.tsmf),body.tasmo-footer-mounted .copyrights-wrapper,body:has([data-tasmo-autofooter]) .copyrights-wrapper{display:none!important;}
body.tasmo-footer-replace-prefooter .wd-prefooter,body.tasmo-footer-replace-prefooter .woodmart-prefooter,body:has([data-tasmo-hide-prefooter]) .wd-prefooter,body:has([data-tasmo-hide-prefooter]) .woodmart-prefooter{display:none!important;}
/* 07 — Mobile: a simple vertical accordion; utility blocks stay visible. */
@media(max-width:900px){
 .tsmf-brand{padding-top:34px;padding-bottom:30px;}
 .tsmf-stage{min-height:0;}
 .tsmf-content{gap:38px;padding:0 24px 40px;}
 .tsmf-content section{width:45%;}
 .tsmf-navigation{display:block;padding:0 24px;}
 .tsmf-menus{display:block;}
 .tsmf-menu{border-bottom:1px solid #ffffff2e;border-color:color-mix(in srgb,currentColor 18%,transparent);}
 .tsmf-menu summary{justify-content:space-between;padding:18px 0;}
 .tsmf-panel{position:static;height:auto;padding:0 0 22px;display:block;background:transparent;}
 .tsmf-panel ul{display:block;}
 .tsmf-panel li{padding:6px 0;}
 .tsmf-panel li+li{border:0;}
 .tsmf:has(.tsmf-menu[open]) .tsmf-content,.tsmf.has-open-menu .tsmf-content{visibility:visible;}
 .tsmf-region{padding:22px 0;justify-content:space-between;}
 .tsmf-bottom{padding:22px 24px;}
}
@media(max-width:560px){
 .tsmf-content{display:block;}
 .tsmf-content section{width:100%;}
 .tsmf-contact{margin-top:40px;}
 .tsmf-actions{margin-top:24px;}
 .tsmf-bottom{align-items:flex-start;}
 .tsmf-region{gap:10px;}
}
@media(prefers-reduced-motion:reduce){.tsmf *{transition:none!important;scroll-behavior:auto!important;}}
