/* ZYLO shared footer V14. Approved Web Studio palette, typography and controls. */
.zylo-footer{--footer-plum:#392641;--footer-cream:#f3efe7;--footer-ink:#302839;--footer-lavender:#e9e0ef;--footer-accent:#e1cdef;--footer-action:#624678;--footer-ease:cubic-bezier(.22,1,.36,1);padding:28px 0 max(18px,env(safe-area-inset-bottom,0px));background:var(--footer-plum);color:#fffdf8;border-top:1px solid #ffffff18;font-family:Bricolage,"Bricolage Grotesque",Arial,sans-serif;font-size:14px;line-height:1.5}
.zylo-footer-inner{width:min(1376px,100%);margin-inline:auto;padding-inline:max(clamp(22px,4vw,64px),env(safe-area-inset-left,0px)) max(clamp(22px,4vw,64px),env(safe-area-inset-right,0px));display:grid;grid-template-columns:1fr 1.25fr 1fr;align-items:center;gap:24px}
.zylo-footer-identity{display:grid;gap:12px;justify-items:start}
.zylo-footer-brand{display:flex;align-items:center;min-height:44px;padding:4px 12px;border:1px solid #d7cedd;border-radius:12px;background:var(--footer-cream)}
.zylo-footer-brand img{display:block;width:126px;height:auto}
.zylo-footer-identity p{margin:0;font-size:12px;color:var(--footer-lavender)}
.zylo-footer-signature{display:flex;align-items:center;justify-content:center;gap:14px;min-width:0}
.zylo-footer-kova{display:block;width:78px;height:auto;flex:none;transform:translateY(5px);transition:transform .65s var(--footer-ease)}
.zylo-footer[data-in-view=true] .zylo-footer-kova{transform:translateY(0)}
.zylo-footer-label{display:block;font-size:11px;font-weight:550;letter-spacing:.08em;color:var(--footer-lavender)}
.zylo-footer-signature p{margin:5px 0 0;font-size:28px;font-weight:600;letter-spacing:-.04em;line-height:1.15}
.zylo-footer-signature em{font-family:Fraunces,Georgia,serif;font-style:italic;color:var(--footer-accent);font-weight:550}
.zylo-footer-navigation{display:grid;gap:4px;justify-items:end}
.zylo-footer-primary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;padding:4px 4px 4px 16px;border:1px solid #d7cedd;border-radius:14px;background:var(--footer-cream);color:var(--footer-ink);font-size:14px;font-weight:650;transition:background .2s}
.zylo-footer-arrow{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--footer-lavender);color:var(--footer-action);flex:none}
.zylo-footer-icon{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;transition:transform .25s var(--footer-ease)}
.zylo-footer-primary:is(:hover,:focus-visible){background:#fffdf8}
.zylo-footer-primary:is(:hover,:focus-visible) .zylo-footer-icon{transform:translateX(3px)}
.zylo-footer-top{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 8px;font-size:12px;color:var(--footer-lavender)}
.zylo-footer-top .zylo-footer-icon{width:18px;height:18px;rotate:-90deg}
.zylo-footer-top:is(:hover,:focus-visible) .zylo-footer-icon{transform:translateX(3px)}
.zylo-footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #ffffff26;padding-top:14px;color:var(--footer-lavender);font-size:11px;letter-spacing:.05em}
.zylo-footer-bottom small{font-size:11px;letter-spacing:0;white-space:nowrap}
.zylo-footer-services{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px}
.zylo-footer-services a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;font-size:12px;color:var(--footer-lavender);border:1px solid #ffffff26;border-radius:12px;transition:background .2s}
.zylo-footer-services a:is(:hover,:focus-visible){background:#ffffff12}
.zylo-footer a:focus-visible{outline:3px solid var(--footer-accent);outline-offset:4px}
@media(min-width:701px) and (max-width:1100px){.zylo-footer-inner{gap:18px;grid-template-columns:1fr 1.15fr 1fr}.zylo-footer-signature{gap:8px}.zylo-footer-kova{width:64px}.zylo-footer-signature p{font-size:24px}.zylo-footer-label{letter-spacing:0}.zylo-footer-primary{font-size:13px;gap:10px;padding-left:12px}}
@media(max-width:700px){.zylo-footer{padding-top:22px;padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}.zylo-footer-inner{grid-template-columns:1fr;gap:18px;padding-inline:max(20px,env(safe-area-inset-left,0px)) max(20px,env(safe-area-inset-right,0px))}.zylo-footer-identity{display:flex;align-items:center;justify-content:space-between;gap:12px}.zylo-footer-brand{padding:3px 10px}.zylo-footer-brand img{width:100px}.zylo-footer-identity p{font-size:11px;max-width:130px;text-align:right}.zylo-footer-signature{justify-content:start;gap:12px}.zylo-footer-kova{width:64px}.zylo-footer-signature p{font-size:28px}.zylo-footer-label{letter-spacing:.06em}.zylo-footer-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px}.zylo-footer-primary{font-size:12px;padding-left:12px;gap:8px;min-height:44px}.zylo-footer-arrow{width:34px;height:34px}.zylo-footer-top{padding:0;gap:5px}.zylo-footer-bottom{padding-top:12px;letter-spacing:0}.zylo-footer-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.zylo-footer-services a{padding:0 8px}}
@media(max-width:370px){.zylo-footer-inner{padding-inline:max(16px,env(safe-area-inset-left,0px)) max(16px,env(safe-area-inset-right,0px))}.zylo-footer-label{letter-spacing:0}.zylo-footer-top span{max-width:40px;line-height:1.2}.zylo-footer-signature p{font-size:26px}.zylo-footer-bottom{gap:12px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.zylo-footer *, .zylo-footer *:before, .zylo-footer *:after{animation:none!important;transition:none!important}.zylo-footer-kova{transform:none}}
@media(forced-colors:active){.zylo-footer{background:Canvas;color:CanvasText;border-color:CanvasText}.zylo-footer-brand img{forced-color-adjust:none;background:#f3efe7}.zylo-footer-primary,.zylo-footer-brand,.zylo-footer-services a{border:1px solid ButtonText;background:ButtonFace;color:ButtonText}.zylo-footer-arrow{background:transparent}.zylo-footer-identity p,.zylo-footer-label,.zylo-footer-signature em,.zylo-footer-top,.zylo-footer-bottom,.zylo-footer-services a{color:CanvasText}.zylo-footer-bottom{border-color:CanvasText}.zylo-footer a:focus-visible{outline-color:Highlight}}
