/* Consent UI: shop typography, sage palette and equal primary actions. */
body.apitz-ccm19 .ccm-root {font-family:var(--font,Montserrat,Arial,sans-serif); color:#20291e;
    button {border-radius:0;}
    .ccm-settings-summoner {display:none;}
    .ccm-modal-inner {background:rgb(222 229 217 / 97%); color:#20291e; border:1px solid var(--primary-soft,#cbd1c8); border-radius:0; box-shadow:0 8px 30px rgb(32 41 30 / 18%);}
    .ccm-widget--title, .ccm-modal--title {font-family:inherit; color:#354332; font-size:22px; font-weight:400; line-height:1.3; letter-spacing:.7px; text-transform:uppercase;}
    .ccm-widget--title {padding-right:28px;}
    .ccm-modal--body, .ccm-modal--subline, .ccm-inner-overflow {font-size:15px; font-weight:400; line-height:1.55;}
    .ccm-modal--body, .ccm-modal--footer {background:transparent;}
    .ccm-modal p {font-size:inherit; line-height:inherit;}
    .ccm-widget--buttons {gap:12px;}
    .ccm-widget--buttons button, .ccm-modal--footer button {min-height:44px; padding:10px 18px; border:1px solid #53664e; border-radius:0; background:#53664e; color:#fff; font-family:inherit; font-size:13px; font-weight:400; line-height:1.4; letter-spacing:.6px; text-transform:uppercase;
        &:hover {background:#3f513b; border-color:#3f513b; color:#fff;}
    }
    .ccm-modal a {color:#354332; text-decoration:underline; text-underline-offset:3px;}
    .ccm-modal--footer {font-size:13px; line-height:1.5;}
    .ccm-dismiss-button {right:0; top:0; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border-radius:0; color:#53664e; opacity:1;
        &::before, &::after {content:""; display:block; position:absolute; left:50%; top:50%; right:auto; bottom:auto; margin:0; width:14px; height:1.5px; background:currentColor; transform:translate(-50%,-50%) rotate(45deg);}
        &::after {transform:translate(-50%,-50%) rotate(-45deg);}
        &:hover {background:transparent; color:#354332;}
    }
    :focus-visible {outline:2px solid #354332; outline-offset:3px;}
    .ccm-inner-overflow, .ccm-inner-overflow:focus {border:0; outline:none; box-shadow:none;}
}

@media (max-width:767px) {
    body.apitz-ccm19 .ccm-root .ccm-widget {
        .ccm-modal-inner {left:12px; right:12px; bottom:12px; top:auto; width:auto; max-width:none; max-height:min(65dvh,440px); margin:0; transform:none;}
        .ccm-modal--body {padding:18px 16px 12px;}
        .ccm-widget--title {font-size:17px; line-height:1.3; letter-spacing:.4px;}
        .ccm-inner-overflow {font-size:13px; line-height:1.5; padding-bottom:8px;}
        .ccm-widget--text {margin:0; padding-bottom:8px;}
        .ccm-widget--buttons {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin:0;
            button {width:100%; min-width:0; max-width:none; margin:0; padding:8px 4px; font-size:clamp(11px,3vw,12px); line-height:1.35; letter-spacing:0; text-transform:none; white-space:normal;}
        }
        .ccm-modal--footer {padding:8px 16px; font-size:12px; line-height:1.5;}
    }
}

@media (min-width:768px) and (max-height:500px) {
    body.apitz-ccm19 .ccm-root .ccm-widget {
        .ccm-modal-inner {left:24px; right:24px; bottom:12px; top:auto; width:auto; max-width:none; max-height:min(75dvh,440px); margin:0; transform:none;}
        .ccm-modal--body {padding:16px 16px 10px;}
        .ccm-widget--title {font-size:17px; line-height:1.3; letter-spacing:.4px;}
        .ccm-inner-overflow {font-size:13px; line-height:1.5; padding-bottom:8px;}
        .ccm-widget--buttons {gap:8px; margin:0;
            button {padding:8px 12px; font-size:12px; letter-spacing:.4px;}
        }
        .ccm-modal--footer {padding:8px 16px; font-size:12px; line-height:1.5;}
    }
}
