@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500;600&display=swap');
:root{--ink:#292c26;--muted:#84857a;--gold:#9b8660;--line:#e1e2d8;--cream:#f8f7f2}*{box-sizing:border-box}body{margin:0;font:12px 'DM Sans',sans-serif;color:var(--ink);background:var(--cream)}button,input,select{font:inherit}button,a{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}header{height:105px;background:white;padding:20px 6%;display:flex;align-items:center;justify-content:space-between}.brand{display:block;text-align:center}.brand img{width:175px;height:42px}.brand span{display:block;font-size:8px;letter-spacing:3px;color:var(--gold);margin-top:6px}.language{display:flex;gap:20px;align-items:center}.language>span{font-size:10px;color:var(--muted)}.language>div{display:flex;border:1px solid var(--line);padding:3px;gap:3px}.language button{border:0;background:none;font-size:10px;padding:9px 12px;color:var(--muted)}.language button[aria-pressed=true]{background:var(--ink);color:white}main{display:grid;grid-template-columns:1fr 1fr;max-width:1600px;margin:auto;min-height:700px}.story{position:relative;overflow:hidden;min-height:700px}.story-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:85% center}.shade{position:absolute;inset:0;background:linear-gradient(180deg,#10180d00 20%,#172012cc 100%)}.story-copy{position:absolute;bottom:0;left:0;right:0;padding:50px 8%;color:#fff}.eyebrow{font-size:9px;letter-spacing:1.8px;color:var(--gold);font-weight:500}.story .eyebrow{color:#ded4b9}.story h1{font:500 49px/1.08 'Cormorant Garamond',Georgia,serif;margin:20px 0}.story p{font-size:12px;line-height:1.9;color:#e1e4d7;max-width:370px}.story-footer{display:flex;justify-content:space-between;border-top:1px solid #fff4;padding-top:23px;margin-top:43px;font-size:9px;letter-spacing:2px}.access{padding:50px 9%;display:flex;align-items:center;justify-content:center}.access-inner{width:100%;max-width:460px}.tabs{display:flex;gap:27px;border-bottom:1px solid var(--line);margin:18px 0 29px}.tabs button{padding:15px 0;background:none;border:0;font-size:12px;color:var(--muted)}.tabs button[aria-selected=true]{color:var(--ink);border-bottom:2px solid var(--ink)}h2{font:500 40px/1.1 'Cormorant Garamond',Georgia,serif;margin:0 0 14px}.intro{font-size:11px;line-height:1.9;color:var(--muted);margin:0 0 25px}form label{display:block;margin-bottom:17px}label>span{display:block;font-size:10px;margin-bottom:8px}input,select{width:100%;border:1px solid var(--line);background:white;padding:13px 12px;border-radius:0;height:43px;color:var(--ink);font-size:11px}input::placeholder{color:#a5a79c}.password{height:43px;display:flex;border:1px solid var(--line);background:white}.password input{height:100%;border:0;min-width:0}.reveal{border:0;background:none;padding:0 12px;color:var(--muted);font-size:9px;white-space:nowrap}.form-options{display:flex;justify-content:space-between;align-items:center;margin:0 0 25px;font-size:10px;color:var(--muted)}.form-options button{background:none;border:0;padding:0;color:var(--gold);font-size:10px}.primary{display:flex;justify-content:space-between;width:100%;padding:15px 18px;background:var(--ink);color:white;border:0;font-size:11px}.primary:hover{background:#424a3b}.partner-note{display:flex;gap:12px;justify-content:center;font-size:10px;margin:24px 0 34px;color:var(--muted);flex-wrap:wrap}.partner-note button{border:0;background:none;color:var(--gold);font-size:10px;padding:0}.help{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);gap:10px}.help a{color:var(--gold)}.demo{font-size:9px;color:#93978b;line-height:1.8;margin:23px 0 0}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.password-hint{display:block;color:var(--muted);font-size:9px;margin:-6px 0 20px;line-height:1.7}.approval{font-size:9px;color:var(--muted);line-height:1.8;text-align:center;margin:12px 0 22px}#message{padding:14px;background:#edf1e7;border:1px solid #d9e1cb;color:#647453;font-size:11px;line-height:1.8;margin-bottom:22px}#message.error{background:#f5ede8;color:#966f59;border-color:#ead8cc}footer{display:flex;justify-content:space-between;gap:20px;padding:25px 6%;font-size:9px;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:1000px){.access{padding:40px 7%}.story h1{font-size:40px}.language{gap:10px}.language>span{display:none}main{min-height:660px}.story{min-height:660px}.help{font-size:9px}}
@media(max-width:700px){header{height:90px;padding:15px 5%}.brand img{width:135px;height:33px}.brand span{font-size:6px;letter-spacing:2px}.language button{padding:8px 9px}main{display:block}.story{min-height:245px}.story-copy{padding:24px 6%}.story h1{font-size:33px;margin:10px 0}.story p{display:none}.story-footer{margin-top:15px;padding-top:12px;font-size:7px}.story-image{object-position:center 50%}.shade{background:linear-gradient(90deg,#172012cc,#17201222)}.access{padding:35px 6%}.access-inner{max-width:500px}.two{gap:12px}h2{font-size:36px}footer{flex-wrap:wrap;font-size:8px}footer>span:nth-child(2){display:none}}

/* Keep the login form and image crop stable across EN/DE/NL. */
html{scrollbar-gutter:stable}
#login-panel>.intro{min-height:3.8em}

.vat-field{margin-bottom:17px}.vat-field>label{font-size:10px;margin-bottom:8px}.vat-input{display:flex;gap:0}.vat-input select{width:125px;flex-shrink:0;border-right:0;background:#f1f0ea}.vat-input input{min-width:0;flex:1}.vat-field small{display:block;font-size:9px;color:var(--muted);line-height:1.7;margin-top:7px}

.phone-field{margin-bottom:17px}.phone-field>label{font-size:10px;margin-bottom:8px}.phone-input{display:flex}.phone-input #phone-prefix{width:85px;flex-shrink:0;border-right:0;background:#f1f0ea}.phone-input #phone-number{flex:1;min-width:0}.phone-field small{display:block;font-size:9px;color:var(--muted);line-height:1.7;margin-top:7px}

/* Keep the product visible when the registration form grows taller. */
@media(min-width:701px){.story{position:sticky;top:0;align-self:start;height:min(760px,75vw);min-height:0}}

.phone-country{position:relative;width:105px;flex-shrink:0}.phone-country button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#f1f0ea;font-size:11px;color:var(--ink)}#phone-country-toggle{width:100%;height:43px;border-right:0;padding:0 9px}#phone-country-toggle>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#phone-country-toggle:after{content:'⌄';margin-left:auto}.phone-country img{width:22px;height:15px;object-fit:contain;flex-shrink:0}#phone-country-list{position:absolute;left:0;top:48px;width:280px;max-width:80vw;max-height:260px;overflow:auto;background:white;border:1px solid var(--line);box-shadow:0 8px 24px #292c2620;z-index:20;padding:4px}#phone-country-list button{width:100%;border:0;background:white;text-align:left;padding:10px}#phone-country-list button:hover,#phone-country-list button:focus-visible,#phone-country-list button[aria-selected=true]{background:#f1f0ea}

.vat-country{position:relative;width:140px;flex-shrink:0}.vat-country button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#f1f0ea;font-size:11px;color:var(--ink)}#vat-country-toggle{width:100%;height:43px;border-right:0;padding:0 9px;white-space:nowrap}#vat-country-toggle:after{content:'⌄';margin-left:auto}.vat-country img{width:22px;height:15px;object-fit:contain;flex-shrink:0}#vat-country-list{position:absolute;left:0;top:48px;width:280px;max-width:80vw;max-height:260px;overflow:auto;background:white;border:1px solid var(--line);box-shadow:0 8px 24px #292c2620;z-index:20;padding:4px}#vat-country-list button{width:100%;border:0;background:white;text-align:left;padding:10px}#vat-country-list button:hover,#vat-country-list button:focus-visible,#vat-country-list button[aria-selected=true]{background:#f1f0ea}

.field-error{display:block;font-size:9px;color:#966f59!important;line-height:1.7;margin-top:7px}.format-hint{display:block;font-size:9px;color:var(--muted);line-height:1.7;margin-top:7px}input[aria-invalid=true]{border-color:#b28267}

/* Separate prefixes from editable numbers without changing the form rhythm. */
.phone-input,.vat-input{gap:8px}#phone-country-toggle,#vat-country-toggle{border-right:1px solid var(--line)}
#phone-country-list button>img{margin-left:auto}
#registration-received{padding:4px 0 30px}.received-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-size:22px;margin-bottom:24px}
#registration-received>.eyebrow{margin-bottom:14px}#received-title{max-width:430px;outline:none}#registration-received>.intro{margin-bottom:28px}.received-next{border-top:1px solid var(--line);padding:22px 0 14px;margin-bottom:16px}.received-next h3{font-size:11px;font-weight:500;margin:0 0 12px}.received-next p{font-size:11px;color:var(--muted);line-height:1.9;margin:0 0 12px}

.recovery-back{border:0;background:none;padding:0;font-size:11px;color:var(--gold);margin:25px 0 30px}#recovery-sent,#reset-complete{padding-top:8px}#reset-expired .primary{margin-bottom:10px}

/* A complete contact name, with an optional localized title. */
.contact-person-fields{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:end}.contact-person-fields label{min-width:0}.contact-person-fields select{padding-left:10px;padding-right:8px}
@media(max-width:420px){.contact-person-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contact-title-field{grid-column:1/-1}.contact-title-field select{max-width:140px}}

/* Shared access palette. Preserve existing layout rules. */
body.trade-access{--ink:var(--portal-color-text);--muted:#75655d;--gold:var(--portal-color-accent);--line:var(--portal-color-border-warm);--cream:var(--portal-color-cream)}
.trade-access header{background:var(--portal-color-header-surface)}
.trade-access h2,.trade-access .tabs button[aria-selected=true]{color:var(--portal-color-burgundy)}
.trade-access .tabs button[aria-selected=true]{border-bottom-color:var(--portal-color-burgundy)}
.trade-access .primary,.trade-access .language button[aria-pressed=true]{background:var(--portal-color-burgundy);color:var(--portal-color-white)}
.trade-access .primary:hover,.trade-access .language button[aria-pressed=true]:hover{background:var(--portal-color-burgundy-hover)}
.trade-access .story-image{object-position:100% center}
.trade-access .shade{background:linear-gradient(180deg,#30182000 25%,#301820cc 100%)}
.trade-access .story .eyebrow,.trade-access .story p{color:#f3edef}
.trade-access .demo{color:var(--muted)}
.trade-access .vat-country button,.trade-access .phone-country button{background:var(--portal-color-header-surface)}
.trade-access #vat-country-list button:hover,.trade-access #vat-country-list button:focus-visible,.trade-access #vat-country-list button[aria-selected=true],.trade-access #phone-country-list button:hover,.trade-access #phone-country-list button:focus-visible,.trade-access #phone-country-list button[aria-selected=true]{background:var(--portal-color-rose)}
.trade-access #message{background:var(--portal-color-rose);border-color:var(--portal-color-border-warm);color:var(--portal-color-burgundy)}
.trade-access #message.error{background:#f5ede8;color:#7a4235;border-color:#d9bcb2}
.trade-access .field-error{color:#7a4235!important}
.trade-access input[aria-invalid=true]{border-color:#a76858}
@media(max-width:700px){.trade-access .story-image{object-position:center 55%}.trade-access .shade{background:linear-gradient(90deg,#301820cc,#30182033)}}

/* Align the customer header with the existing 1600px photo/form shell. */
.trade-access header{width:100%;max-width:1600px;margin-inline:auto;padding-inline:0 clamp(24px,6vw,96px)}
.trade-access header .brand{text-align:left;flex-shrink:0}
.trade-access header .login-wordmark{position:relative;display:block;margin:0;padding-right:13px;letter-spacing:0;line-height:1;color:var(--portal-color-text)}
.trade-access header .login-wordmark :is(img,svg){display:block;width:190px;height:auto}
.trade-access header .login-wordmark sup{position:absolute;top:-3px;right:0;font-size:9px;line-height:1;letter-spacing:0}
.trade-access header .brand small{display:block;margin-top:11px;position:relative;left:8px;font-size:7px;line-height:1.1;letter-spacing:2px;color:var(--portal-color-accent)}
@media(max-width:700px){.trade-access header{padding-inline:0 5%;gap:14px}.trade-access header .login-wordmark :is(img,svg){width:150px}.trade-access header .brand small{font-size:6px;letter-spacing:1.6px;margin-top:9px}.trade-access header .login-wordmark sup{font-size:8px}}

/* Staff access keeps its Polish form and authentication flow. */
.staff-access header>a:last-child{color:var(--portal-color-accent);font-size:10px}
.staff-access footer{width:100%;max-width:1600px;margin-inline:auto;padding-inline:0}
.staff-access #admin-message{padding:14px;margin-bottom:22px;border:1px solid var(--portal-color-border-warm);background:var(--portal-color-rose);color:var(--portal-color-burgundy);font-size:11px;line-height:1.8}
