/* Footer styles for the live site, taken from cg.css by tools/build-live-footer.php. */
:root {
  --cg-red: #c1272d;
  --cg-red-dark: #9e1f24;
  --cg-ink: #161616;
  --cg-muted: #707070;
  --cg-paper: #f3efeb;
  --cg-line: #e5e1dc;
  --cg-dark: #111;
  --cg-dark-2: #1c1c1c;
  --cg-radius: 14px;
  --cg-font: var(--loobek-main-font, "Plus Jakarta Sans", sans-serif);
  --cg-font-bold: var(--loobek-main-font-bold, var(--cg-font));
}
.cg-wrap { box-sizing: border-box; width: 100%; max-width: 1400px; margin: 0 auto; padding: 0 30px; }
.cg-wrap *, .cg-wrap *::before, .cg-wrap *::after { box-sizing: border-box; }
@media (max-width: 767px) {
  .cg-wrap { padding: 0 16px; }
}
.cg-footer { font-family: var(--cg-font); color: var(--cg-ink); }
.cg-btns { display: flex; flex-wrap: wrap; gap: 12px; }
.cg-btns--center { justify-content: center; }
.cg-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 22px;
  border-radius: 999px; border: 1.5px solid transparent; font-family: var(--cg-font-bold); font-weight: 700; font-size: 15px;
  text-decoration: none !important; cursor: pointer; transition: background .15s, color .15s, border-color .15s; line-height: 1;
}
.cg-btn--red { background: var(--cg-red); color: #fff !important; }
.cg-btn--red:hover { background: var(--cg-red-dark); }
.cg-btn--dark { background: var(--cg-ink); color: #fff !important; }
.cg-btn--dark:hover { background: #000; }
.cg-btn--line { border-color: var(--cg-ink); color: var(--cg-ink) !important; background: transparent; }
.cg-btn--line:hover { background: var(--cg-ink); color: #fff !important; }
.cg-btn--ghost { border-color: rgba(255,255,255,.7); color: #fff !important; background: transparent; }
.cg-btn--ghost:hover { background: #fff; color: var(--cg-ink) !important; }
.cg-btn--white { background: #fff; color: var(--cg-ink) !important; }
.cg-btn--white:hover { background: var(--cg-ink); color: #fff !important; }
.cg-btn .icon { vertical-align: -3px; }
.cg-footer { background: var(--cg-dark); color: #cfcac4; font-size: 15px; line-height: 1.6; }
.cg-footer a { color: inherit; text-decoration: none; }
.cg-footer a:hover { color: #fff; }
.cg-footer h2 { color: #fff; font-family: var(--cg-font-bold); font-size: clamp(26px, 3vw, 34px); font-weight: 700; margin: 0 0 10px; text-transform: none; }
.cg-footer h3 { color: var(--cg-red); font-family: var(--cg-font-bold); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 14px; }
.cg-footer address { font-style: normal; margin: 0 0 10px; }
.cg-footer p { margin: 0 0 10px; }
.cg-footer__visit { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 32px; padding: clamp(40px, 6vw, 64px) 0; border-bottom: 1px solid #2c2c2c; }
.cg-footer__intro p { max-width: 420px; }
.cg-footer__intro .cg-btns { margin-top: 20px; }
.cg-hours { margin: 0; display: grid; gap: 6px; }
.cg-hours div { display: flex; justify-content: space-between; gap: 12px; max-width: 290px; }
.cg-hours dt { display: block !important; font-weight: 400; color: #cfcac4 !important; float: none; width: auto; margin: 0; }
.cg-hours dd { margin: 0; color: #fff; }
.cg-footer__main { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 32px; padding: clamp(36px, 5vw, 56px) 0; }
.cg-footer__main ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.cg-footer__main ul a { display: inline-flex; align-items: center; gap: 8px; }
.cg-footer__brand img { width: 170px; height: auto; margin-bottom: 16px; }
.cg-footer__brand p { max-width: 340px; }
.cg-social { display: flex !important; gap: 10px !important; margin-top: 16px !important; }
.cg-social a { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 999px; border: 1px solid #2c2c2c; color: #fff; }
.cg-social a:hover { background: var(--cg-red); border-color: var(--cg-red); }
.cg-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding: 22px 0 28px; border-top: 1px solid #2c2c2c; font-size: 13px; color: #8f8a84; }
.cg-footer__bottom p { margin: 0; }
.cg-footer__bottom ul { display: flex; flex-wrap: wrap; gap: 20px; list-style: none; margin: 0; padding: 0; }
.cg-madeby { color: #cfcac4; }
.cg-madeby a { color: #fff !important; font-weight: 700; border-bottom: 2px solid var(--cg-red); padding-bottom: 1px; }
.cg-madeby a:hover { color: var(--cg-red) !important; }
@media (max-width: 960px) {
  .cg-footer__visit { grid-template-columns: 1fr 1fr; }
  .cg-footer__intro { grid-column: span 2; }
  .cg-footer__main { grid-template-columns: 1fr 1fr; }
  .cg-footer__brand { grid-column: span 2; }
}
@media (max-width: 560px) {
  .cg-footer__visit, .cg-footer__main { grid-template-columns: 1fr; }
  .cg-footer__intro, .cg-footer__brand { grid-column: auto; }
  .cg-footer { padding-bottom: 70px; }
}
#to-top { bottom: 84px !important; }
@media (min-width: 768px) {
  .cg-footer__bottom { padding-right: 90px; }
}
@media (max-width: 767px) {
  .cg-footer { padding-bottom: 150px; }
}
.cg-footer li { padding: 0 !important; margin: 0 !important; }
.cg-social { align-items: center; }
.cg-footer__main ul li { line-height: 22px; }
.cg-footer__main ul:not(.cg-social) a { display: flex; align-items: center; gap: 8px; min-height: 24px; }
.cg-footer__main ul a .icon { flex: none; }
@media (max-width: 767px) {
  .cg-hero .cg-btns .cg-btn { flex: 1 1 auto; }
}
@media (min-width: 1200px) {
  .cg-wrap { max-width: none; margin: 0; padding-left: var(--cg-pad, 50px); padding-right: var(--cg-pad, 50px); }
}
