/* Cache Generated at 2026-07-01 05:27:09 | Post: 217 | Template: .twig, page.twig, default.twig */
 .footer { background: var(--color-primary-deep); color: #f4ece9; text-align: center; padding-top: clamp(2.4rem, 5vw, 3.4rem); } .footer__brand { line-height: 0; margin-bottom: 1.4rem; } .footer__logo { height: clamp(48px, 4.4vw, 62px); width: auto; display: inline-block; } /* Contact: phone · divider · stacked labeled addresses */ .footer__contact { font-size: .92rem; color: #f0ddd8; margin-bottom: 1.6rem; padding: 0 var(--x-gap); display: flex; flex-direction: column; align-items: center; gap: 1rem; } .footer__phone { font-family: var(--font-family-secondary); font-weight: 700; font-size: clamp(1.45rem, 2.4vw, 1.95rem); line-height: 1; letter-spacing: .01em; color: #fff; } .footer__phone:hover { text-decoration: underline; } .footer__divider { width: 64px; height: 1px; background: rgba(255, 255, 255, .28); } .footer__addresses { display: flex; flex-direction: column; gap: .35rem; text-align: center; } .footer__addr { display: flex; flex-direction: column; flex-wrap: wrap; justify-content: center; align-items: center; gap: .5rem; } .footer__addr-label { font-family: var(--font-family-primary); font-weight: 700; font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; color: var(--color-accent-light); } @media (min-width: 680px) { .footer__contact { flex-direction: row; align-items: center; justify-content: center; gap: 0; } .footer__divider { width: 1px; height: 50px; margin: 0 1.5rem; } .footer__addresses { text-align: left; } .footer__addr { flex-direction: row; justify-content: flex-start; } } /* Social icons restyled for the dark footer (outlined circles) */ .footer__socials { justify-content: center; margin-bottom: 2.2rem; } .footer__socials .sns__link { background: #fff; border: 1.5px solid rgba(255, 255, 255, .6); padding: .6rem; } .footer__socials .sns__link::before { background: var(--color-primary-deep); } .footer__socials .sns__link:hover, .footer__socials .sns__link:focus-visible { background: transparent; } .footer__socials .sns__link:hover::before, .footer__socials .sns__link:focus-visible::before { background: #fff; } /* Bottom bar: policies · footer nav · partner logo */ .footer__bar { border-top: 1px solid rgba(255, 255, 255, .18); padding: 1.2rem var(--x-gap); display: grid; grid-template-columns: 1fr; gap: 1rem; align-items: center; justify-items: center; } .footer__policies-menu { display: flex; gap: .5rem; justify-content: center; } .footer__policies-menu .menu__item { display: inline-block; } .footer__policies-menu .menu__item:not(:last-child)::after { content: '|'; font-size: .7em; color: rgba(255, 255, 255, .18); margin-left: .25rem; } .footer__policies-menu .menu__link { font-family: var(--font-family-primary); font-size: 9px; letter-spacing: .05em; text-transform: uppercase; color: #f4ece9; } .footer__nav { display: flex; flex-wrap: wrap; gap: .9rem 1.4rem; justify-content: center; } .footer__nav .menu__link { font-family: var(--font-family-primary); font-size: .7rem; letter-spacing: .13em; text-transform: uppercase; font-weight: 600; color: #f4ece9; } /* current page: coral accent + underline against the brick footer */ .footer__nav .menu__item--current .menu__link { color: var(--color-accent, #e9bcb0); text-decoration: underline; text-underline-offset: 4px; } .footer__partner { display: flex; align-items: center; } .footer__partner img { width: 90px; height: auto; display: block; } @media (min-width: 980px) { .footer__bar { grid-template-columns: 1fr auto 1fr; } .footer__policies-menu { justify-self: start; } .footer__nav { justify-self: center; } .footer__partner { justify-self: end; grid-column: 3; } } 