#footer .footer-box ul.schwan-eu-footer-links { margin:0; padding:0; }
/* The separate one-item list is structurally last-of-type, but has a following list. */
#footer-quick-links .footer-box ul.schwan-eu-footer-links > li { display:block; padding-bottom:5px; }
/* The theme aligns checkout titles with flex, so text-align alone is insufficient. */
body.is-checkout #orderAgbTop .agb.panel > .panel-heading > .panel-title { justify-content:flex-start; text-align:left; }
/* Hanging alignment for the existing consent text; no additional wrapper or wording. */
body.is-checkout #orderAgbTop .agb.panel > .panel-body > .schwan-eu-legal-consent:not(:has(+ .dd-ve-container)) { position:relative; padding-left:26px; }
body.is-checkout #orderAgbTop .agb.panel > .panel-body > .schwan-eu-legal-consent:not(:has(+ .dd-ve-container)) > label { display:block; margin:0; padding:0; cursor:pointer; }
body.is-checkout #orderAgbTop .agb.panel > .panel-body > .schwan-eu-legal-consent:not(:has(+ .dd-ve-container)) #checkAgbTop { position:absolute !important; display:block; left:0; top:.18em; width:16px; height:16px; margin:0 !important; transform:none; }
/* A separate information line, outside the acceptance label and within the same box. */
.schwan-eu-checkout-inline { display:block; margin-top:4px; font:inherit; }
.schwan-eu-checkout-inline a { color:inherit; text-decoration:underline; text-underline-offset:2px; }
.schwan-eu-trigger:focus-visible, .schwan-eu-dialog button:focus-visible, .schwan-eu-notice__panel a:focus-visible { outline:3px solid #a10e16; outline-offset:3px; }
.schwan-eu-notice__panel { min-width:0; padding:16px; box-sizing:border-box; color:#252525; background:#fff; text-align:left; font-family:inherit; font-size:16px; line-height:1.6; overflow-wrap:anywhere; }
.schwan-eu-notice__links { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0 0 16px; }
.schwan-eu-notice__links a { display:inline-flex; align-items:center; min-height:44px; }
.schwan-eu-notice__panel a { color:#343434; text-decoration:underline; text-underline-offset:3px; }
.schwan-eu-notice__panel a:hover { color:#a10e16; }
.schwan-eu-notice__artwork { width:100%; max-width:760px; margin:0 auto; }
.schwan-eu-notice__artwork img { display:block; width:100%; max-width:100%; min-width:0; height:auto; margin:0; border:0; }
.schwan-eu-notice__eu-link { margin:16px 0 24px; }
.schwan-eu-notice__text { border-top:1px solid #dedede; padding-top:20px; }
.schwan-eu-notice__text h3 { margin:0 0 16px; font-family:inherit; font-size:20px; line-height:1.3; }
.schwan-eu-notice__text p { margin:0 0 16px; font-size:16px; line-height:1.6; }
.schwan-eu-dialog { width:calc(100% - 40px); max-width:840px; max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); padding:0; border:0; border-radius:8px; color:#252525; background:#fff; overflow:hidden; box-sizing:border-box; box-shadow:0 12px 48px rgba(0,0,0,.2); font-family:inherit; }
.schwan-eu-dialog[open] { display:flex; flex-direction:column; }
.schwan-eu-dialog::backdrop { background:rgba(0,0,0,.5); }
.schwan-eu-dialog__bar { flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 20px; background:#fff; border-bottom:1px solid #dedede; }
.schwan-eu-dialog__bar h2 { margin:0; font-family:inherit; font-size:20px; font-weight:600; line-height:1.35; }
.schwan-eu-dialog__bar h2:focus { outline:none; }
.schwan-eu-dialog__bar button { flex:0 0 auto; min-width:44px; min-height:44px; padding:8px; border:0; border-radius:3px; background:transparent; color:#252525; cursor:pointer; font:400 28px/1 Arial,sans-serif; }
.schwan-eu-dialog__bar button:hover { background:#f0f0f0; }
.schwan-eu-dialog > .schwan-eu-notice__panel { min-height:0; overflow:auto; overscroll-behavior:contain; }
html.schwan-eu-modal-open { overflow:hidden; }
@media (max-width:640px) {
    .schwan-eu-dialog { position:fixed; inset:0; width:100%; max-width:none; height:100%; height:100dvh; max-height:100%; max-height:100dvh; margin:0; border-radius:0; }
    .schwan-eu-dialog__bar { padding:8px 12px; }
    .schwan-eu-dialog__bar h2 { font-size:18px; }
    .schwan-eu-notice__panel { padding:12px; }
}
@media print { .schwan-eu-dialog[open] { position:static; width:100%; max-height:none; height:auto; overflow:visible; } .schwan-eu-dialog > .schwan-eu-notice__panel { overflow:visible; } .schwan-eu-dialog__bar button { display:none; } }

/* VisualCMS is a sibling after the browser closes the existing consent paragraph.
 * Explicit placement keeps the additional notice out of the auto-sized checkbox column. */
body.is-checkout #orderAgbTop .agb.panel > .panel-body > .schwan-eu-legal-consent:has(+ .dd-ve-container) { align-self:start; margin-top:.18em; }
body.is-checkout #orderAgbTop .agb.panel > .panel-body > .schwan-eu-legal-consent + .dd-ve-container + .schwan-eu-checkout-inline { grid-column:2; min-width:0; }
