lutece-welcome-offer{display:contents}
.lutece-welcome{position:fixed;inset:0;margin:auto;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:40px 32px 28px;border:1px solid #e7e3dd;border-radius:14px;background:#fff;color:#141a24;text-align:center;box-shadow:0 24px 80px #0003;overflow:auto;font-family:var(--font-body--family,Arial,sans-serif)}
.lutece-welcome::backdrop{background:#0b12294d}
.lutece-welcome__close{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.lutece-welcome__tricolour{display:flex;width:42px;height:3px;margin:0 auto 22px;border:1px solid #ddd}
.lutece-welcome__tricolour span{flex:1;background:#182d60}
.lutece-welcome__tricolour span:nth-child(2){background:#fff}
.lutece-welcome__tricolour span:nth-child(3){background:#b23237}
.lutece-welcome__eyebrow{margin:0 0 12px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.lutece-welcome__title{margin:0;font-family:var(--font-heading--family,Georgia,serif);font-size:56px;font-weight:500;line-height:1.12;letter-spacing:-.04em}
.lutece-welcome__subtitle{margin:8px 0 20px;font-size:18px;line-height:1.4}
.lutece-welcome__description{margin:0 0 22px;color:#48505a;font-size:14px;line-height:1.65}
.lutece-welcome__cta{display:block;width:100%;min-height:48px;padding:14px 20px;border:1px solid #141a24;border-radius:4px;background:#141a24;color:#fff;font:inherit;font-size:14px;cursor:pointer}
.lutece-welcome__terms{margin:16px 0 0;color:#626871;font-size:11px;line-height:1.6}
.lutece-welcome__teaser{position:fixed;left:14px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:10;min-height:40px;max-width:calc(100% - 28px);display:flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid #ddd;border-radius:24px;background:#fff;color:#141a24;box-shadow:0 3px 14px #0001;font:inherit;font-size:12px;cursor:pointer}
.lutece-welcome__teaser[hidden]{display:none!important}
.lutece-welcome__teaser span{font-weight:700}
.lutece-welcome button:focus-visible{outline:2px solid #1d4ed8;outline-offset:3px}
body:has(cart-drawer dialog[open]) .lutece-welcome__teaser,body:has(.cart-drawer[open]) .lutece-welcome__teaser{display:none}
@media(max-width:749px){.lutece-welcome{inset:auto 0 20px;padding:32px 24px 24px;max-height:calc(100dvh - 56px)}.lutece-welcome__title{font-size:48px}.lutece-welcome__teaser{bottom:calc(8px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:no-preference){.lutece-welcome[open]{animation:lutece-welcome-in .2s ease-out}@keyframes lutece-welcome-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}

.lutece-welcome__teaser:focus-visible{outline:2px solid #1d4ed8;outline-offset:3px}

.lutece-welcome__teaser{left:auto;right:calc(14px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));width:48px;height:48px;min-height:48px;padding:0;gap:0;border-radius:50%;justify-content:center;font-size:13px}
.lutece-welcome__teaser-label{display:none}
.lutece-welcome__teaser.is-expanded{width:auto;padding:0 16px;gap:8px;border-radius:24px}
.lutece-welcome__teaser.is-expanded .lutece-welcome__teaser-label{display:inline}
.lutece-welcome__code{margin:0 0 16px;padding:12px;border:1px dashed #bfc5cd;border-radius:6px;font-size:18px;letter-spacing:.04em;user-select:all}

@media(max-width:749px){.lutece-welcome__teaser{display:none!important}}
