/* Site footer (shop, freebies, account, Audio Cabin, Gift Exchange): contact form, socials, email, credit.
   Self-contained so pages with their own stylesheet (Gift Exchange) can use it too. */
.cl-footer{--gold:#d0ae58;--deep:#102b1d;--green:#173c29;--cream:#fbf7ed;background:var(--deep);color:#dbe1d6;font-family:Inter,system-ui,sans-serif;line-height:1.65}
.cl-footer a{color:inherit}
.cl-footer h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.1;font-size:1.2rem;color:#ead6a1;margin:0 0 14px}
.cl-footer .footer-grid{max-width:1320px;margin:auto;padding:60px 30px;display:grid;grid-template-columns:1.15fr .8fr .8fr 1.35fr;gap:44px;align-items:start}
.cl-footer .footer-grid img{width:260px;max-width:100%;background:var(--cream);padding:14px 18px;border-radius:6px;outline:1px solid rgba(212,175,55,.7);outline-offset:5px;box-shadow:0 14px 30px #0005}
.cl-footer .footer-grid p{font-size:.85rem;line-height:1.7;margin:20px 0 0}
.cl-footer .footer-grid a{display:block;font-size:.85rem;text-decoration:none;margin:9px 0}
.cl-footer .footer-grid a:hover{color:#ead6a1}
.cl-footer .footer-email{font-family:'Playfair Display',serif;font-size:1.1rem!important;color:#f4d77b!important;margin:22px 0 4px!important}
.cl-footer .socials{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:16px 0}
.cl-footer .socials a{width:42px;height:42px;display:grid;place-items:center;margin:0;border:1px solid rgba(212,175,55,.55);border-radius:50%;color:#f4d77b;transition:background .25s ease,color .25s ease,transform .25s ease}
.cl-footer .socials a:hover{background:var(--gold);color:var(--deep);transform:translateY(-3px)}
.cl-footer .contact-form{display:grid;gap:10px;max-width:460px;padding:22px;border:1px solid rgba(212,175,55,.45);border-radius:10px;background:#ffffff08}
.cl-footer .contact-note{font-size:.8rem!important;margin:0!important;color:#c9d0c4}
.cl-footer .contact-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cl-footer .contact-form label{display:grid;gap:5px;font-size:.78rem;font-weight:600;letter-spacing:.04em;color:#ead6a1}
.cl-footer .contact-form input,.cl-footer .contact-form textarea{width:100%;box-sizing:border-box;min-height:46px;padding:10px 13px;border:1px solid #ffffff2e;border-radius:6px;background:#ffffff0f;color:#fff;font:inherit;font-size:.92rem}
.cl-footer .contact-form textarea{resize:vertical;min-height:96px}
.cl-footer .contact-form input:focus,.cl-footer .contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px}
.cl-footer .contact-form .hp{position:absolute;left:-9999px}
.cl-footer .button{justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 22px;border:0;border-radius:6px;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;color:var(--green);background:var(--cream)}
.cl-footer .button:hover{background:var(--gold)}
.cl-footer .form-status{margin:0!important;font-size:.85rem;color:#f4d77b;min-height:1.2em}
.cl-footer .footer-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;max-width:1320px;margin:auto;padding:20px 30px;border-top:1px solid #ffffff22;font-size:.78rem}
.cl-footer .footer-base a{color:#f4d77b;text-underline-offset:3px}
@media(max-width:1050px){.cl-footer .footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.cl-footer .footer-grid{grid-template-columns:1fr;gap:30px;padding:45px 24px}.cl-footer .contact-row{grid-template-columns:1fr}.cl-footer .footer-base{justify-content:center;text-align:center}}
.cl-footer .footer-legal{display:flex;flex-wrap:wrap;gap:6px 16px}.cl-footer .footer-legal a{color:#dbe1d6;text-decoration:none}.cl-footer .footer-legal a:hover{color:#f4d77b}
.cl-footer .guard-slot:empty{display:none}
