




.cookie-banner{

    position:fixed;

    left:20px;
    right:20px;
    bottom:20px;

    z-index:999999;

    display:none;

    justify-content:center;

    animation:cookieFade .35s ease;

}

.cookie-content{

    width:100%;
    max-width:850px;

    background:#ffffff;

    border-radius:16px;

    box-shadow:
            0 15px 45px rgba(0,0,0,.18);

    padding:28px;

    border:1px solid #d9e4ef;

}

.cookie-content h3{

    margin-bottom:15px;

    color:#0b5fa5;

    font-size:24px;

}

.cookie-content p{

    font-size:15px;

    line-height:1.8;

    margin-bottom:20px;

    color:#444;

}

.cookie-buttons{

    display:flex;

    gap:12px;

    flex-wrap:wrap;

    align-items:center;

}

.cookie-buttons button{

    background:#0b5fa5;

    color:white;

    border:none;

    padding:12px 24px;

    border-radius:8px;

    cursor:pointer;

    font-size:15px;

    font-weight:bold;

    transition:.25s;

}

.cookie-buttons button:hover{

    background:#094a81;

}

.cookie-buttons a{

    text-decoration:none;

    padding:12px 20px;

    border-radius:8px;

    background:#eef6ff;

    color:#0b5fa5;

    font-weight:bold;

    transition:.25s;

}

.cookie-buttons a:hover{

    background:#dceeff;

}

@keyframes cookieFade{

    from{

        opacity:0;
        transform:translateY(40px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

@media(max-width:768px){

    .cookie-banner{

        left:10px;
        right:10px;
        bottom:10px;

    }

    .cookie-content{

        padding:20px;

    }

    .cookie-buttons{

        flex-direction:column;
        align-items:stretch;

    }

    .cookie-buttons button,
    .cookie-buttons a{

        width:100%;
        text-align:center;

    }

}





.cookie-banner{
    left:24px;
    right:24px;
    bottom:24px;
}

.cookie-content{
    max-width:920px;
    background: linear-gradient(145deg, rgba(255,255,255,0.96), rgba(255,255,255,0.84));
    border-radius:28px;
    box-shadow: 0 22px 52px rgba(24, 48, 61, 0.16);
    padding:32px;
    border:1px solid rgba(31, 58, 74, 0.08);
    backdrop-filter: blur(14px);
}

.cookie-content h3{
    margin-bottom:12px;
    color:#1f3a4a;
    font-size:clamp(1.3rem, 3vw, 1.7rem);
    letter-spacing:-0.02em;
}

.cookie-content p{
    font-size:15px;
    line-height:1.9;
    color:#5d707d;
}

.cookie-buttons{
    gap:14px;
}

.cookie-buttons button,
.cookie-buttons a{
    min-height:46px;
    border-radius:999px;
    padding:12px 22px;
    font-size:14px;
    font-weight:700;
    letter-spacing:0.03em;
}

.cookie-buttons button{
    background:linear-gradient(135deg, #1f3a4a 0%, #31576a 100%);
    box-shadow:0 12px 28px rgba(24, 48, 61, 0.16);
}

.cookie-buttons button:hover{
    background:linear-gradient(135deg, #18303d 0%, #1f3a4a 100%);
    transform:translateY(-1px);
}

.cookie-buttons a{
    background:rgba(185, 147, 94, 0.12);
    color:#1f3a4a;
}

.cookie-buttons a:hover{
    background:rgba(185, 147, 94, 0.2);
    transform:translateY(-1px);
}

@media(max-width:768px){
    .cookie-banner{
        left:12px;
        right:12px;
        bottom:12px;
    }

    .cookie-content{
        border-radius:22px;
        padding:22px;
    }
}





.cookie-banner {
    left: max(16px, env(safe-area-inset-left));
    right: max(16px, env(safe-area-inset-right));
    bottom: max(16px, env(safe-area-inset-bottom));
}

.cookie-content {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 22px;
    align-items: center;
    max-width: 1060px;
    padding: 22px 24px;
    border: 1px solid rgba(23, 47, 59, 0.15);
    border-radius: 0;
    background: rgba(251, 250, 246, 0.96);
    box-shadow: 0 18px 48px rgba(16, 57, 70, 0.18);
    backdrop-filter: blur(18px);
}

.cookie-content__icon {
    display: grid;
    width: 43px;
    height: 43px;
    place-items: center;
    border-radius: 50%;
    background: #dce9e4;
    color: #174d60;
    font-size: 1.15rem;
}

.cookie-content__copy {
    min-width: 0;
}

.cookie-eyebrow {
    display: block;
    margin-bottom: 5px;
    color: #174d60;
    font-size: 0.61rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.cookie-content h3 {
    margin: 0;
    color: #172f3b;
    font-family: 'Sentient-Light', Georgia, serif;
    font-size: 1.35rem;
    font-weight: 400;
    letter-spacing: -0.035em;
    line-height: 1.05;
}

.cookie-content p {
    max-width: 61ch;
    margin: 7px 0 0;
    color: #506570;
    font-size: 0.76rem;
    line-height: 1.62;
}

.cookie-buttons {
    justify-content: flex-end;
    gap: 7px;
}

.cookie-buttons button,
.cookie-buttons a {
    display: inline-flex;
    min-height: 39px;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 750;
    letter-spacing: 0.01em;
}

.cookie-buttons button {
    background: #174d60;
    box-shadow: none;
}

.cookie-buttons button:hover {
    background: #103946;
    transform: none;
}

.cookie-buttons a {
    padding-inline: 5px;
    background: transparent;
    color: #174d60;
}

.cookie-buttons a:hover {
    background: transparent;
    color: #103946;
    text-decoration: underline;
    text-underline-offset: 3px;
    transform: none;
}

@media (max-width: 820px) {
    .cookie-content {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .cookie-buttons {
        grid-column: 2;
        justify-content: flex-start;
    }
}

@media (max-width: 540px) {
    .cookie-content {
        grid-template-columns: 1fr;
        gap: 13px;
        padding: 19px;
    }

    .cookie-content__icon {
        width: 38px;
        height: 38px;
    }

    .cookie-buttons {
        grid-column: auto;
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .cookie-buttons button {
        flex: 1 0 100%;
    }
}


.cookie-banner,
.cookie-content,
.cookie-buttons {
    box-sizing: border-box;
}

.cookie-content {
    width: 100%;
}

.cookie-buttons {
    min-width: 0;
}

@media (max-width: 540px) {
    .cookie-banner {
        left: max(10px, env(safe-area-inset-left));
        right: max(10px, env(safe-area-inset-right));
        bottom: max(10px, env(safe-area-inset-bottom));
    }

    .cookie-buttons a {
        flex: 1 1 auto;
        padding-inline: 8px;
        text-align: center;
    }
}

@media (max-width: 360px) {
    .cookie-content {
        gap: 11px;
        padding: 16px;
    }

    .cookie-content h3 {
        font-size: 1.18rem;
    }

    .cookie-content p {
        font-size: 0.73rem;
    }

    .cookie-buttons {
        gap: 5px;
    }

    .cookie-buttons a {
        flex-basis: 100%;
        justify-content: flex-start;
    }
}

@media (max-height: 620px) and (orientation: landscape) {
    .cookie-banner {
        top: max(10px, env(safe-area-inset-top));
        bottom: auto;
        display: grid;
        align-items: start;
    }

    .cookie-content {
        max-height: calc(100dvh - 20px);
        overflow-y: auto;
    }
}

@media (pointer: coarse) {
    .cookie-buttons button,
    .cookie-buttons a {
        min-height: 44px;
    }
}
