:root {
     --cc-bg: #9f9f9f;
     --cc-fg: #000;
     --cc-accent: #22c55e;
     --cc-border: #7a7a7a;
     --cc-btn-bg: #d4d4d4;
     --cc-shadow: 0 4px 20px rgba(0, 0, 0, .25);
     --cc-font: 15px/1.4 system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}
 .cc {
     position: fixed;
     left: 15px;
     right: 15px;
     bottom: 15px;
     width: calc(100% - 30px);
     max-width: 100%;
     box-sizing: border-box;
     z-index: var(--z-overlay-cookie, 125);
     background: #fff;
     color: var(--cc-fg);
     font: var(--cc-font);
     border-radius: 8px;
     box-shadow: var(--cc-shadow);
     opacity: 0;
     transform: translateY(40px);
     transition: opacity .45s ease, transform .45s ease;
     pointer-events: none;
     overflow: hidden;
}
 .cc.cc--visible {
     opacity: 1;
     transform: translateY(0);
     pointer-events: all;
}
 .cc.cc--hidden {
     opacity: 0;
     transform: translateY(40px);
     pointer-events: none;
}
 .cc__container {
     display: flex;
     align-items: center;
     justify-content: flex-start;
     gap: 10px;
     padding: 12px 16px;
     position: relative;
     min-height: 52px;
     flex-wrap: wrap;
}
 .cc__text {
     flex: 0 1 auto;
     min-width: 0;
     position: relative;
     z-index: 1;
}
 .cc__title {
     font-family: Bison, Verdana, Arial, sans-serif;
     font-size: 24px;
     font-weight: normal;
     color: #a9201f;
     line-height: 1.2;
     display: flex;
     align-items: center;
     gap: 8px;
     margin: 0 0 8px 0;
}
 .cc__icon {
     margin-top: -5px;
}
 .cc__desc {
     font-family: Verdana, Arial, sans-serif;
     font-size: 14px;
     font-weight: normal;
     color: #404040;
     display: block;
     margin: 10px 0;
	 hyphens: auto;
}
 .cc__desc-2 {
     font-family: Verdana, Arial, sans-serif;
     font-size: 10.5px;
     font-weight: normal;
     color: #404040;
     opacity: 0.6;
     display: block;
     margin-top: 4px;
     margin-left: 2px;
	 hyphens: auto;
}
 .cc__actions {
     display: flex;
     gap: 10px;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
     position: relative;
}
 .cc__btn {
     padding: 8px 14px;
     font-family: Bison, Verdana, Arial, sans-serif;
     font-size: 19px;
     color: #fff;
     width: 125px;
     height: 46px;
     border: 1px solid #fff;
     border-radius: 10px;
     font-weight: normal;
     cursor: pointer;
     transition: background-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease, border-color .25s ease;
     display: flex;
     align-items: center;
     justify-content: center;
     text-align: center;
     position: relative;
     will-change: transform;
}

 .cc__btn--ghost {
     background: #fff;
	 color: #9f9f9f;
     border: 2px solid #9f9f9f;
}
 .cc__btn--ghost:hover, .cc__btn--ghost:focus-visible {
     background: #9f9f9f;
	 color: #fff;
     border: 2px solid #9f9f9f;
}
 .cc__btn--primary {
     background: #a9201f;
     font-family: Bison, Verdana, Arial, sans-serif;
     font-size: 19px;
     color: #fff;
     width: 250px;
     height: 46px;
     border: 2px solid #a9201f;
     border-radius: 10px;
     font-weight: normal;
}
 .cc__btn--primary:hover, .cc__btn--primary:focus-visible {
     background: #fff;
	 color: #a9201f;
     border: 2px solid #a9201f;
}

.cc__close {
    display: none;
}


 @media (max-width: 991px) {
     .cc {
         left: 15px;
         right: 15px;
         bottom: 15px;
         width: calc(100% - 30px);
    }
     .cc__container {
         flex-direction: column;
         align-items: stretch;
         padding: 18px 22px;
         gap: 8px;
    }
     .cc__icon {
         margin-top: 0;
    }
     .cc__actions {
         flex-direction: row;
         gap: 10px;
         width: 100%;
         margin-top: 2px;
    }
     .cc__btn {
         flex: 1 1 0;
         min-width: 0;
         width: auto;
    }
     .cc__btn--primary {
         flex: 2 1 0;
    }
     .cc__btn--ghost {
         flex: 1 1 0;
    }
     .cc__desc-2 {
         margin: 7px 0px;
    }
}
 @media (max-width: 480px) {
     .cc {
         left: 0px;
         right: 0px;
         bottom: 0px;
         width: 100%;
		 border-radius: 0px;
    }
     .cc__container {
         padding: 12px 18px;
         gap: 8px;
    }
     .cc__btn {
         font-size: 18px;
         height: 46px;
    }
     .cc__btn--primary {
         font-size: 18px;
         height: 46px;
    }
	 
    .cc__close {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 8px;
        right: 10px;
        width: 28px;
        height: 28px;
        background: none;
        border: none;
        cursor: pointer;
        color: #9f9f9f;
        font-size: 18px;
        line-height: 1;
        padding: 0;
        z-index: 2;
        border-radius: 50%;
        transition: color .2s ease, background .2s ease;
    }

    .cc__close:hover {
        color: #404040;
        background: rgba(0,0,0,.07);
    }
	 
}
 @media (min-width: 992px) {
     .cc {
         left: 15px;
         right: 15px;
         bottom: 15px;
         width: calc(100% - 30px);
         max-width: 100%;
         transform: translateY(40px);
    }
     .cc.cc--visible {
         transform: translateY(0);
    }
     .cc.cc--hidden {
         transform: translateY(40px);
    }
     .cc__container {
         display: flex;
         flex-direction: row;
         align-items: center;
         justify-content: space-between;
         gap: 20px;
         padding: 20px 30px;
         flex-wrap: nowrap;
         max-width: 1600px;
         margin: 0 auto;
    }
     .cc__text {
         order: 0;
         flex: 1 1 auto;
         min-width: 0;
         display: flex;
         flex-direction: column;
         gap: 4px;
         padding-left: 0;
         max-width: none;
         margin-right: 0;
    }
     .cc__actions {
         order: 1;
         flex-direction: row;
         align-items: center;
         justify-content: flex-end;
         gap: 14px;
         flex: 0 0 auto;
    }
     .cc__text > .cc__title, .cc__text > .cc__desc, .cc__text > .cc__desc-2 {
         display: block;
         margin: 0;
         white-space: normal;
         overflow-wrap: anywhere;
    }
     .cc__text > .cc__desc, .cc__text > .cc__desc-2 {
         margin-left: 0;
    }
     .cc__title {
    }
     .cc__desc {
         margin-top: 0;
    }
     .cc__desc-2 {
         margin-top: 2px;
    }
}
 @media (min-width: 1400px) {
     .cc__actions {
         justify-content: flex-start;
    }
}
