
/* ===== GlobalCom custom: footer, cookie consent, legal pages, form consent ===== */

/* ---------- Footer ---------- */
.site-footer{background:#111214;color:#fff;padding:48px 0 32px;margin-top:auto}
.site-footer__inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px}
.site-footer__logo{color:#fff;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;font-size:18px}
.site-footer__nav{display:flex;flex-wrap:wrap;gap:22px}
.site-footer__nav a{color:#c9c9c9;text-decoration:none;font-size:15px;transition:color .2s}
.site-footer__nav a:hover{color:#E5303D}
.site-footer__copy{margin-top:26px;color:#8a8a8a;font-size:13px}
@media (max-width:575.98px){.site-footer__inner{flex-direction:column;align-items:flex-start}}

/* ---------- Form consent checkbox ---------- */
.form-consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer;margin:14px 0 4px;font-size:14px;line-height:1.4;user-select:none}
.form-consent input{position:absolute;opacity:0;width:0;height:0}
.form-consent__box{flex:0 0 auto;width:20px;height:20px;border:1.5px solid #b5b5b5;border-radius:4px;background:#fff;position:relative;transition:.15s;margin-top:1px}
.form-consent input:checked + .form-consent__box{background:#E5303D;border-color:#E5303D}
.form-consent input:checked + .form-consent__box::after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.form-consent._error .form-consent__box{border-color:#E5303D;box-shadow:0 0 0 2px rgba(229,48,61,.2)}
.form-consent__text{color:inherit}
.form-consent__text a{color:#E5303D;text-decoration:underline}
.strategy .form-consent,.strategy__form .form-consent{color:#fff}
.strategy .form-consent__text a{color:#fff;text-decoration:underline}

/* ---------- Cookie banner ---------- */
.cc-banner{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:#0b0b0c;color:#e9e9e9;border-top:2px solid #E5303D;box-shadow:0 -8px 40px rgba(0,0,0,.5)}
.cc-banner[hidden]{display:none}
.cc-banner__inner{max-width:1200px;margin:0 auto;padding:22px 20px}
.cc-banner__title{font-weight:600;font-size:16px;margin-bottom:8px}
.cc-banner__text{font-size:13px;line-height:1.6;color:#bdbdbd;margin-bottom:16px}
.cc-banner__btns{display:flex;flex-wrap:wrap;gap:12px}
.cc-btn{appearance:none;border:1px solid #4a4a4a;background:transparent;color:#fff;padding:11px 22px;font-size:14px;border-radius:2px;cursor:pointer;transition:.18s;font-family:inherit;white-space:nowrap}
.cc-btn:hover{border-color:#fff}
.cc-btn--primary{background:#E5303D;border-color:#E5303D}
.cc-btn--primary:hover{background:#F74350;border-color:#F74350}
@media (max-width:575.98px){.cc-banner__btns{flex-direction:column}.cc-btn{width:100%}}

/* ---------- Cookie modal ---------- */
.cc-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}
.cc-modal[hidden]{display:none}
.cc-modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.6)}
.cc-modal__dialog{position:relative;width:100%;max-width:760px;background:#161618;color:#eaeaea;border-radius:6px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6);max-height:90vh;display:flex;flex-direction:column}
.cc-modal__head{padding:20px 24px;font-size:18px;font-weight:600;border-bottom:1px solid #2a2a2d}
.cc-modal__close{position:absolute;top:14px;right:16px;background:none;border:none;color:#bbb;font-size:26px;line-height:1;cursor:pointer}
.cc-modal__close:hover{color:#fff}
.cc-modal__body{display:flex;min-height:0;flex:1}
.cc-tabs{flex:0 0 240px;background:#0e0e0f;border-right:1px solid #2a2a2d;display:flex;flex-direction:column;padding:8px 0}
.cc-tab{text-align:left;background:none;border:none;border-left:3px solid transparent;color:#c7c7c7;padding:13px 20px;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;font-family:inherit}
.cc-tab:hover{color:#fff}
.cc-tab.is-active{color:#fff;border-left-color:#E5303D;background:#161618}
.cc-panels{flex:1;padding:24px 26px;overflow-y:auto}
.cc-panel{display:none}
.cc-panel.is-active{display:block}
.cc-panel h3{font-size:18px;margin:0 0 12px;color:#fff}
.cc-panel p{font-size:13.5px;line-height:1.65;color:#b9b9b9}
.cc-panel a{color:#E5303D;text-decoration:underline}
.cc-toggle-row{display:flex;align-items:center;gap:12px;margin-top:18px}
.cc-toggle{position:relative;width:46px;height:24px;border-radius:24px;border:none;background:#4a4a4a;cursor:pointer;transition:.2s;flex:0 0 auto}
.cc-toggle::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}
.cc-toggle.is-on{background:#E5303D}
.cc-toggle.is-on::after{left:25px}
.cc-toggle.is-locked{opacity:.9;cursor:not-allowed}
.cc-toggle-label{font-size:13px;color:#b9b9b9}
.cc-modal__foot{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:18px 24px;border-top:1px solid #2a2a2d}
@media (max-width:575.98px){.cc-modal__body{flex-direction:column}.cc-tabs{flex-basis:auto;flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid #2a2a2d}.cc-tab{white-space:nowrap;border-left:none;border-bottom:3px solid transparent}.cc-tab.is-active{border-left:none;border-bottom-color:#E5303D}}

/* ---------- Legal pages ---------- */
.legal-main{padding:162px 0 40px}
.legal .container{max-width:900px}
.legal__title{font-size:34px;font-weight:600;margin:0 0 24px;color:#191919}
.legal h2{font-size:20px;font-weight:600;margin:30px 0 10px;color:#191919}
.legal p{font-size:16px;line-height:1.7;margin:0 0 14px;color:#333}
.legal a{color:#E5303D;text-decoration:underline}
.legal__imprint p{margin:0 0 8px}
.legal__updated{margin-top:8px;color:#888;font-size:14px}

/* ===== menu fit fix ===== */
@media (min-width:992px){
  .menu__list{gap:16px !important}
  .menu__link{font-size:12px !important;letter-spacing:.02em !important;line-height:1.2 !important}
  .header__btn{margin-left:18px}
}
@media (min-width:992px) and (max-width:1300px){
  .menu__list{gap:11px !important}
  .menu__link{font-size:11px !important;letter-spacing:.01em !important}
  .header__btn{max-width:130px;font-size:13px}
}

/* ===== sticky footer on legal pages ===== */
.legal-page .body_wrapper{display:flex;flex-direction:column;min-height:100vh}
.legal-page .main{flex:1 0 auto}
.legal-page .site-footer{flex-shrink:0}
