/* The footer, lifted out of the 2023 chrome.

   No September 2026 design draws one - they all end after the last band -
   and Jack asked for the footer the site had before. Its rules were in every
   2023 design sheet, and those are switched off on the new routes
   (config/design.php, legacy_off), so they are lifted out here on their own.

   Verbatim from hidden-scotland-magazine-redesign.css, at-rules included.
   Built by scratchpad/design-2026/build-footer.py - do not edit by hand.  */
/* ========================================================= FOOTER — the shop footer ============================================================ */ footer.ft{background:var(--forest);color:#EDE8E6;}
.ft-inner{max-width:1240px;margin:0 auto;padding:clamp(56px,9vh,100px) clamp(24px,4vw,56px) 0}
.ft-top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,346px);gap:clamp(32px,6vw,110px);align-items:center;padding-bottom:clamp(48px,7vh,80px)}
.ft-h{font-family:var(--serif);font-style:italic;font-weight:400;font-size:min(clamp(28px,3.2vw,42px), 28px + (clamp(28px,3.2vw,42px) - 28px) * 0.6);line-height:1.25;letter-spacing:-.01em;max-width:15ch}
.ft-k{font-family:var(--sans);font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:rgba(237,232,230,.6);margin:26px 0 14px;font-weight:500}
.ft-form{display:flex;max-width:380px}
.ft-form input{flex:1;min-width:0;background:transparent;border:1px solid rgba(237,232,230,.35);border-right:none;padding:0 16px;height:50px;font-family:var(--sans);font-size:14px;color:#EDE8E6;outline:none}
.ft-form input::placeholder{color:rgba(237,232,230,.5)}
.ft-form input:focus{border-color:rgba(237,232,230,.7)}
.ft-form button{background:#EDE8E6;color:var(--forest);border:none;height:50px;padding:0 22px;cursor:pointer;font-family:var(--sans);font-size:11.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
.ft-form button:hover{background:#fff}
.ft-sub{font-family:var(--sans);font-size:12.5px;color:rgba(237,232,230,.55);margin-top:12px}
.ft-map svg{width:100%;height:auto;max-height:380px}
.ft-map path{fill:none;stroke:rgba(237,232,230,.45);stroke-width:1.2}
.ft-cols{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:clamp(28px,4vw,56px);border-top:1px solid rgba(237,232,230,.18);padding:clamp(40px,6vh,60px) 0}
.ft-brand p{font-family:var(--sans);font-size:14px;line-height:1.7;color:rgba(237,232,230,.7);max-width:34ch;margin-bottom:16px}
.ft-brand > a{font-family:var(--sans);font-size:14px;color:#EDE8E6;text-decoration:underline;text-underline-offset:4px}
.ft-cols h6{font-family:var(--sans);font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:rgba(237,232,230,.55);font-weight:500;margin-bottom:16px}
.ft-cols ul{list-style:none}
.ft-cols ul a{font-family:var(--sans);font-size:14.5px;text-decoration:none;color:rgba(237,232,230,.85);display:block;padding:5px 0}
.ft-cols ul a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.ft-copy{border-top:1px solid rgba(237,232,230,.18);padding:22px 0 28px;font-family:var(--sans);font-size:12px;letter-spacing:.06em;color:rgba(237,232,230,.55)}
.ft-copy b{color:rgba(237,232,230,.8);font-weight:500}
@media (max-width:960px){.ft-top{grid-template-columns:1fr}.ft-map{max-width:220px}.ft-cols{grid-template-columns:1fr 1fr}}
