@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/font-8.ttf) format('truetype');
}

:root{--ink:#0d0e10;--dark:#17191c;--asphalt:#222429;--paper:#f0efe9;--grey:#e3e0d9;--red:#9d0013;--red-dark:#72000d;--muted:#a4a4a1;--gutter:clamp(24px,4.5vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font:16px/1.6 'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #b82b3c;outline-offset:6px}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:500}h1,h2{letter-spacing:-.065em;line-height:1.05}h2{font-size:clamp(42px,5.5vw,84px);text-wrap:balance}h3{font-size:clamp(23px,2.2vw,34px);line-height:1.25;letter-spacing:-.04em}em{font-style:normal;color:#92938f}p{max-width:65ch}section{padding:92px var(--gutter);position:relative}section.light{background:var(--paper);color:var(--ink)}section.dark{background:var(--ink)}.section-label{display:flex;gap:16px;align-items:center;font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:550;margin-bottom:60px}.section-label>span:first-child{color:#a71f30}.section-label:after{content:'';height:1px;background:currentColor;opacity:.17;flex:1;margin-left:32px}.light em{color:#787972}.skip{position:fixed;top:-100px;z-index:200;background:var(--paper);color:var(--ink);padding:12px}.skip:focus{top:0}header{position:sticky;top:0;z-index:100;height:92px;display:flex;align-items:center;gap:30px;padding:0 var(--gutter);background:rgba(13,14,16,.96);border-bottom:1px solid #ffffff20;backdrop-filter:blur(18px)}.wordmark{font-family:Manrope,Arial,sans-serif;font-size:37px;font-weight:800;letter-spacing:-.085em;line-height:1}.wordmark span,.footer-word span{color:var(--red)}header nav{display:flex;justify-content:flex-end;gap:22px;flex:1}header nav a{display:flex;flex-direction:column;font-size:14px;line-height:1.5;white-space:nowrap;transition:color .2s}header nav a small{font-size:10px;color:#8b8c87;letter-spacing:.08em}header nav a:hover,header nav a.current{color:#c44757}.header-actions{display:flex;align-items:center;gap:20px}.languages{display:flex;gap:1px}.languages button{border:0;background:none;padding:8px 5px;color:#949591;font-size:12px}.languages button[aria-pressed=true]{color:var(--paper);text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:9px}.menu-button{display:none;background:none;border:0;padding:12px;width:44px;height:44px}.menu-button span{display:block;height:1px;width:22px;background:var(--paper);margin:6px 0;transition:transform .3s}.hero{padding-top:28px;padding-bottom:28px;overflow:hidden}.hero-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.15em;color:#969793}.hero-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:20px;align-items:center;padding:62px 0 48px}.eyebrow{display:block;font-size:14px;margin-bottom:24px}.eyebrow:before{content:'';display:inline-block;width:7px;height:7px;background:var(--red);margin-right:12px}.hero h1{font-size:clamp(58px,6.8vw,112px);font-weight:500;line-height:1.01;letter-spacing:-.068em}.hero h1 em{color:#9a9b96}.europe-panel{align-self:stretch;position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;padding-top:16px}.map-heading{display:flex;justify-content:space-between;color:#90918e;font-size:10px;letter-spacing:.12em}.map-index{color:#d6d6ce}.map-stage{position:relative;width:115%;margin-left:-8%;aspect-ratio:1200/896;isolation:isolate}.map-dots{position:absolute;inset:0;background:radial-gradient(circle,#82847e 1px,transparent 1.35px);background-size:6px 6px;mask:url('assets/europe.png') center/contain no-repeat;-webkit-mask:url('assets/europe.png') center/contain no-repeat;opacity:.8}.map-stage svg{position:absolute;width:100%;height:100%;inset:0;overflow:visible}.routes path{stroke-dasharray:7 5;animation:routeFlow 16s linear infinite}.pulse{fill:#9d001355;stroke:#c12538;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:pulse 3.5s ease-out infinite}.poland-label{position:absolute;left:61%;top:46%;font-size:10px;letter-spacing:.04em;color:#f0efe9;background:var(--ink);padding:2px 5px}.map-bottom{display:flex;align-items:center;gap:22px;margin-top:-50px;z-index:1;align-self:flex-end}.map-bottom strong{font-size:clamp(72px,8vw,130px);font-family:Manrope,Arial,sans-serif;line-height:1;letter-spacing:-.07em;font-weight:400}.map-caption{font-size:13px;line-height:1.5;color:#b9bbb4}.hero-bottom{border-top:1px solid #ffffff26;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:14px}.text-link{display:flex;align-items:center;gap:40px;white-space:nowrap}.text-link>span:last-child{width:38px;height:38px;border:1px solid #666861;border-radius:50%;display:grid;place-items:center;transition:background .25s}.text-link:hover>span:last-child{background:var(--red)}.section-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:end;margin-bottom:64px}.section-intro p{color:#5d5f59;font-size:16px}.brand-portfolio{display:grid;grid-template-columns:1fr 1.04fr;gap:8%;align-items:center}.brand-tab{position:relative;width:100%;background:none;text-align:left;border:0;border-bottom:1px solid #c8c8c0;padding:30px 0 30px 32px;color:#777972;display:grid;grid-template-columns:1fr 35px;transition:color .3s,padding .3s}.brand-tab:first-child{border-top:1px solid #c8c8c0}.brand-number{position:absolute;left:0;top:39px;font-size:11px}.brand-name{font-family:Manrope,Arial,sans-serif;font-size:clamp(24px,3vw,47px);letter-spacing:-.055em;line-height:1.3}.brand-arrow{font-size:29px}.brand-description{grid-column:1/-1;font-size:13px;padding-top:12px}.brand-tab.active{color:var(--ink)}.brand-tab.active .brand-number{color:var(--red)}.brand-tab.active .brand-arrow{color:var(--red);transform:rotate(45deg)}.brand-tab:hover{color:var(--ink);padding-left:38px}.brand-visual{height:590px;position:relative;overflow:hidden;background:#222429}.brand-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .7s}.brand-slide.active{opacity:1;pointer-events:auto}.brand-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(#0003,transparent 35%,#0009)}.brand-slide img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s;transform:scale(1.055)}.brand-slide.active img{transform:scale(1)}.brand-slide:hover img{transform:scale(1.025)}.image-top{position:absolute;inset:25px 28px auto;z-index:1;color:white;font-size:10px;letter-spacing:.1em;display:flex;justify-content:space-between}.image-title{position:absolute;bottom:87px;left:28px;right:28px;z-index:1;font-family:Manrope,Arial,sans-serif;letter-spacing:-.055em;font-size:clamp(30px,4vw,64px);color:white;line-height:1.1}.image-link{position:absolute;bottom:30px;left:28px;z-index:1;color:white;font-size:13px;border-bottom:1px solid #ffffff66;padding-bottom:8px}.distribution-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:12%;align-items:end}.distribution-intro p{color:#b3b4ad}.distribution-models{display:grid;grid-template-columns:1fr 1fr;margin-top:70px;border-top:1px solid #ffffff28}.distribution-models article{display:grid;grid-template-columns:70px 1fr;gap:15px;padding:42px 45px 30px 0}.distribution-models article+article{border-left:1px solid #ffffff28;padding-left:45px;padding-right:0}.model-number{font-size:40px;line-height:1.1;font-weight:400;color:#a73140;letter-spacing:-.05em}.distribution-models p{color:#a4a69f;margin-top:20px;font-size:15px}.operations-strip{margin-top:45px;padding-top:25px;border-top:1px solid #ffffff28;font-size:14px;color:#b3b4ad;word-spacing:5px}.retail{background:var(--grey)!important}.retail-head{display:flex;align-items:center;justify-content:space-between;gap:30px}.retail-monogram{font-family:Manrope,Arial,sans-serif;font-size:clamp(80px,14vw,210px);letter-spacing:-.085em;font-weight:500;line-height:1;color:#cdcdc5;display:flex;gap:15px}.retail-monogram>span{font-size:.6em;color:var(--red);align-self:flex-start}.retail-partners{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:70px}.retail-partners article{border-top:1px solid #b9bab1;padding-top:26px}.retail-partners p{margin-top:20px;color:#585b54}.readiness{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-top:55px;border-top:1px solid #b9bab1;padding-top:25px;font-size:14px}.readiness>span:nth-child(even){color:var(--red);font-size:22px}.ecommerce{background:var(--dark)!important}.ecommerce h2{max-width:1000px}.metrics{display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:65px;border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26;padding:34px 0}.metrics>div{display:flex;flex-direction:column;padding-left:40px;border-left:1px solid #ffffff26}.metrics>div:first-child{padding-left:0;border-left:0}.metrics strong{font-size:clamp(46px,7.5vw,114px);line-height:1.2;letter-spacing:-.065em;font-family:Manrope,Arial,sans-serif;font-weight:400;white-space:nowrap}.metrics>div>span{font-size:14px;color:#b9bab3;margin-top:12px}.system-story{display:grid;grid-template-columns:.8fr 1.2fr;gap:15%;margin-top:58px}.system-story h3{font-size:clamp(28px,3.1vw,47px)}.system-story p{color:#bbbcb5}.system-story p+p{margin-top:20px}.channel-line{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:48px 0 32px;font-family:Manrope,Arial,sans-serif;font-size:clamp(18px,2.5vw,36px);letter-spacing:-.045em;color:#cecec7}.footnote{font-size:12px;color:#90938b;max-width:none}.stock{background:var(--grey);color:var(--ink);background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#00000007 calc(25% - 1px),#00000007 25%)}.stock-heading{display:flex;align-items:center;justify-content:space-between;gap:40px}.stock h2{font-size:clamp(45px,7vw,110px);letter-spacing:-.065em}.stock h2 em{color:var(--red)}.stock-stamp{border:2px solid var(--red);color:var(--red);padding:18px 24px;transform:rotate(7deg);font-size:10px;letter-spacing:.15em;line-height:1.4;flex-shrink:0}.stock-stamp strong{font-size:36px;line-height:1;font-weight:700;display:block;margin:10px 0;letter-spacing:-.05em}.stock-stamp>span{font-size:9px;letter-spacing:.06em}.stock-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:15%;margin-top:55px}.stock-intro p{color:#555950}.stock-process{display:grid;grid-template-columns:repeat(4,1fr);margin-top:58px;border-top:1px solid #96998f}.stock-process article{padding:22px 25px 0 0}.stock-process article+article{border-left:1px solid #bdbfb5;padding-left:25px}.step-top{display:flex;justify-content:space-between;color:var(--red);margin-bottom:25px;font-size:13px}.step-top>span+span{font-size:22px;line-height:1}.stock-process h3{font-size:27px}.stock-process p{font-size:14px;line-height:1.6;margin-top:12px;color:#5c6055}.expertise-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.expertise-list{border-top:1px solid #c3c5ba}.expertise details{border-bottom:1px solid #c3c5ba}.expertise summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:20px;padding:25px 0;font-family:Manrope,Arial,sans-serif;font-size:clamp(19px,1.8vw,27px);letter-spacing:-.03em;line-height:1.3}.expertise summary::-webkit-details-marker{display:none}.expert-number{font-family:'DM Sans',Arial,sans-serif;font-size:11px;color:#7f8278;letter-spacing:0}.plus{margin-left:auto;color:var(--red);font-size:30px;font-weight:400;transition:transform .25s}.expertise details[open] .plus{transform:rotate(45deg)}.expertise details p{padding:0 32px 25px 35px;font-size:15px;color:#686c60}.contact{padding-bottom:25px;overflow:hidden}.contact h2{font-size:clamp(47px,6.6vw,105px)}.contact-bottom{display:grid;grid-template-columns:1.2fr .8fr;gap:16%;align-items:end;margin-top:50px}.contact-bottom p{color:#b7b9b0}.contact-sign{font-size:20px;line-height:1.7}.contact-sign span{font-size:10px;letter-spacing:.14em;color:#8f9288}.footer-word{font-family:Manrope,Arial,sans-serif;letter-spacing:-.09em;font-size:clamp(100px,26vw,420px);font-weight:750;line-height:1.02;margin:55px 0 28px -10px;color:#25272a}footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:25px;border-top:1px solid #ffffff24;font-size:12px;color:#9fa297}.reveal{transition:opacity .7s,transform .7s}.reveal.pending{opacity:0;transform:translateY(25px)}@keyframes routeFlow{to{stroke-dashoffset:-120}}@keyframes pulse{0%{opacity:1;transform:scale(.6)}80%,100%{opacity:0;transform:scale(2.5)}}
@media(min-width:1700px){section,header{padding-left:max(var(--gutter),calc((100vw - 1640px)/2));padding-right:max(var(--gutter),calc((100vw - 1640px)/2))}}
@media(max-width:1250px){header{gap:20px}header nav{gap:13px}header nav a{font-size:10px}.languages button{font-size:11px;padding:8px 3px}.wordmark{font-size:32px}.hero h1{font-size:7vw}.brand-visual{height:530px}.brand-description{font-size:12px}}
@media(max-width:1400px){header{height:78px;justify-content:space-between}header nav{display:none;position:fixed;top:78px;left:0;right:0;max-height:calc(100dvh - 78px);overflow:auto;background:var(--ink);padding:25px var(--gutter) 35px;flex-direction:column;gap:0;border-bottom:1px solid #666}header nav.open{display:flex}header nav a{font-size:22px;padding:12px 0;flex-direction:row;gap:25px;border-bottom:1px solid #ffffff19}header nav a small{font-size:11px;align-self:center}.menu-button{display:block}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.languages button{font-size:12px;padding:8px 7px}.hero-layout{padding-top:45px}.map-caption{font-size:12px}.section-intro,.distribution-intro{gap:7%}.brand-portfolio{gap:5%}.brand-visual{height:480px}.distribution-models article{grid-template-columns:45px 1fr;padding-right:25px}.distribution-models article+article{padding-left:25px}.model-number{font-size:32px}.expertise-layout{gap:7%}.retail-monogram{font-size:14vw}section{padding-top:70px;padding-bottom:70px}.map-bottom{margin-top:-20px}.section-label{margin-bottom:42px}}
@media(max-width:700px){html{scroll-padding-top:90px}header{height:72px}header nav{top:72px;max-height:calc(100dvh - 72px)}.hero{padding-top:20px;padding-bottom:25px}.hero-top{font-size:9px;letter-spacing:.08em}.hero-top>span:last-child{display:none}.hero-layout{grid-template-columns:1fr;padding-top:35px;padding-bottom:24px;gap:20px}.hero h1{font-size:clamp(53px,12.3vw,82px);line-height:1.025}.hero h1 br:nth-of-type(1){display:none}.hero h1 em{display:block}.hero h1 em br{display:none}.hero h1 em br:after{content:' '}.hero-copy .eyebrow{font-size:13px;margin-bottom:18px}.europe-panel{padding-top:8px}.map-heading{font-size:9px}.map-stage{width:88%;margin:6px auto 0}.map-dots{background-size:5px 5px;background-image:radial-gradient(circle,#82847e 1px,transparent 1.2px)}.map-bottom{margin-top:-40px;gap:15px}.map-bottom strong{font-size:76px}.map-caption{font-size:11px}.poland-label{font-size:8px}.hero-bottom{font-size:12px;align-items:flex-start;gap:20px}.hero-bottom p{max-width:220px}.text-link{gap:10px;font-size:11px}.text-link>span:last-child{width:30px;height:30px}.section-intro{grid-template-columns:1fr;gap:25px;margin-bottom:35px}h2{font-size:43px;letter-spacing:-.06em}.section-label{font-size:11px;letter-spacing:.07em;margin-bottom:35px}.section-label:after{margin-left:10px}.section-intro p,.distribution-intro p,.retail-partners p,.stock-intro p,.system-story p,.contact-bottom p{font-size:15px;line-height:1.7}.brand-portfolio{grid-template-columns:1fr;gap:28px}.brand-tab{padding-top:20px;padding-bottom:20px}.brand-number{top:28px}.brand-name{font-size:30px}.brand-description{font-size:12px;padding-top:5px}.brand-visual{height:460px}.image-title{font-size:44px}.distribution-intro{grid-template-columns:1fr;gap:28px}.distribution-models{grid-template-columns:1fr;margin-top:35px}.distribution-models article{padding:30px 0;grid-template-columns:45px 1fr}.distribution-models article+article{border-left:0;border-top:1px solid #ffffff28;padding:30px 0 0}.distribution-models h3{font-size:25px}.operations-strip{font-size:12px;line-height:2.1;word-spacing:2px;margin-top:30px}.retail-monogram{display:none}.retail-partners{grid-template-columns:1fr;gap:30px;margin-top:35px}.readiness{display:grid;grid-template-columns:1fr 25px 1fr;gap:15px;font-size:12px;margin-top:30px}.readiness>span:nth-child(4){display:none}.readiness>span:nth-child(7){grid-column:3}.metrics{margin-top:35px;grid-template-columns:1fr;padding:0}.metrics>div,.metrics>div:first-child{padding:22px 0;display:grid;grid-template-columns:1fr 1fr;align-items:center;border-left:0;gap:20px}.metrics>div+div{border-top:1px solid #ffffff26}.metrics strong{font-size:53px}.metrics>div>span{margin-top:0;font-size:13px}.system-story{grid-template-columns:1fr;gap:25px;margin-top:35px}.channel-line{flex-wrap:wrap;justify-content:flex-start;gap:18px 28px;font-size:24px;padding-top:32px}.footnote{font-size:11px}.stock-heading{align-items:flex-start;gap:12px}.stock h2{font-size:41px}.stock-stamp{padding:8px 10px;font-size:8px;margin-top:5px}.stock-stamp strong{font-size:22px;margin:7px 0}.stock-stamp>span{font-size:6px}.stock-intro{grid-template-columns:1fr;gap:25px;margin-top:32px}.stock-process{grid-template-columns:1fr 1fr;margin-top:30px}.stock-process article{padding:20px 16px 25px 0}.stock-process article+article{padding:20px 0 25px 16px}.stock-process article:nth-child(3){border-left:0;padding-left:0;padding-right:16px}.stock-process article:nth-child(n+3){border-top:1px solid #bdbfb5}.stock-process h3{font-size:24px}.stock-process p{font-size:13px}.step-top{margin-bottom:20px}.expertise-layout{grid-template-columns:1fr;gap:35px}.expertise summary{font-size:20px;gap:15px;padding:23px 0}.contact h2{font-size:47px}.contact-bottom{grid-template-columns:1fr;gap:30px;margin-top:32px}.contact-sign{font-size:17px}.footer-word{font-size:27vw;margin-top:35px;margin-left:-4px}footer{font-size:10px}footer>span:nth-child(2){display:none}.header-actions{gap:12px}.languages button{padding-inline:5px}.wordmark{font-size:33px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}}

/* Original supplied sales map, displayed as one aligned image. */
.map-stage{width:100%;margin:20px auto 0;aspect-ratio:1200/896}
.original-europe-map{display:block;width:100%;height:auto;object-fit:contain}
.map-bottom{margin-top:0}
@media(max-width:700px){.map-stage{width:100%;margin:12px auto 0}.map-bottom{margin-top:8px}.original-europe-map{max-width:430px;margin:auto}}

/* --------------------------------------------------------------------------
   TEBEA visual refinement — presentation only.
   The copy and document structure remain unchanged; these rules improve
   contrast, rhythm and responsive composition around the supplied content.
   -------------------------------------------------------------------------- */
:root{
  --hero-paper:#f7f6f2;
  --hero-panel:#e7e5df;
  --hairline:rgba(13,14,16,.14);
  --soft-shadow:0 24px 70px rgba(13,14,16,.12);
}

body{background:var(--ink)}

/* A brighter opening frame gives the map and the wordmark room to breathe. */
.hero{
  color:var(--ink);
  background:
    linear-gradient(rgba(13,14,16,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(13,14,16,.045) 1px,transparent 1px),
    linear-gradient(135deg,var(--hero-paper) 0%,#efeee9 100%);
  background-size:72px 72px,72px 72px,auto;
  min-height:calc(100svh - 92px);
  padding-top:clamp(40px,6vw,90px);
  padding-bottom:clamp(34px,4vw,58px);
}
.hero-layout{grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);gap:clamp(38px,7vw,120px);align-items:center;padding:clamp(30px,4vw,62px) 0 clamp(42px,5vw,78px)}
.hero-copy{max-width:680px}
.hero-copy .eyebrow{color:#666962;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:600}
.hero-copy .eyebrow:before{box-shadow:0 0 0 5px rgba(157,0,19,.09)}
.hero h1{color:var(--ink);max-width:12ch;font-weight:600}
.hero h1 em{color:var(--red)}
.hero-bottom{border-top-color:var(--hairline);color:#3e403c;font-size:14px}
.hero-bottom p{color:#5d6059}
.text-link{color:var(--ink)}
.text-link>span:last-child{border-color:rgba(13,14,16,.35)}
.text-link:hover>span:last-child{background:var(--red);border-color:var(--red);color:#fff}

/* The original supplied map is a high-resolution image with its dark surround
   removed. A neutral inset keeps the white countries legible and preserves
   the correct 1200×896 proportions at every viewport size. */
.europe-panel{
  padding:clamp(18px,2.5vw,36px);
  border:1px solid rgba(13,14,16,.10);
  border-radius:28px;
  background:var(--hero-panel);
  box-shadow:var(--soft-shadow);
  overflow:hidden;
}
.europe-panel:before{content:'';position:absolute;inset:12px;border:1px solid rgba(13,14,16,.08);border-radius:20px;pointer-events:none}
.europe-panel:after{content:'';position:absolute;right:clamp(22px,3vw,42px);top:clamp(22px,3vw,42px);width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:0 0 0 7px rgba(157,0,19,.10);pointer-events:none}
.map-stage{position:relative;width:100%;margin:0;aspect-ratio:1200/896;display:grid;place-items:center}
.original-europe-map{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;image-rendering:auto;filter:drop-shadow(0 18px 20px rgba(13,14,16,.16))}

/* Keep each information group distinct without turning every item into the
   same component. */
.brand-section{background:#fbfaf7!important}
.brand-section .section-intro{gap:clamp(42px,9vw,150px);margin-bottom:clamp(42px,5vw,72px)}
.brand-section .section-intro p{max-width:48ch}
.brand-portfolio{gap:clamp(28px,5vw,82px)}
.brand-select{border-top:1px solid var(--hairline)}
.brand-tab{border-bottom-color:var(--hairline);padding-top:28px;padding-bottom:28px}
.brand-tab:first-child{border-top:0}
.brand-tab:hover{background:rgba(13,14,16,.025);padding-left:38px}
.brand-visual{border-radius:20px;box-shadow:0 18px 45px rgba(13,14,16,.18)}

.distribution{background:#202226!important}
.distribution-intro{gap:clamp(36px,8vw,132px)}
.distribution-intro>div,.distribution .copy-subhead>p{max-width:60ch}
.distribution-models{gap:16px;border-top:0;margin-top:clamp(42px,5vw,70px)}
.distribution-models article{border:1px solid rgba(255,255,255,.15);border-radius:18px;background:rgba(255,255,255,.045);padding:clamp(26px,3vw,44px);min-height:100%}
.distribution-models article+article{border-left:1px solid rgba(255,255,255,.15);padding-left:clamp(26px,3vw,44px)}
.distribution-models article:hover{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.28);transform:translateY(-4px);transition:transform .35s ease,background .35s ease,border-color .35s ease}
.distribution .copy-subhead{max-width:850px;margin-top:clamp(48px,6vw,84px)}
.distribution .service-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:28px}
.distribution .service-list article{border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.035);padding:26px 24px}
.distribution .service-list article:hover{background:rgba(255,255,255,.08)}

.retail{background:#ebe9e2!important}
.retail .section-intro{gap:clamp(38px,8vw,128px)}
.retail .section-intro>div{max-width:64ch}
.retail-partners{gap:16px;margin-top:clamp(44px,5vw,70px)}
.retail-partners article{border:1px solid rgba(13,14,16,.14);border-radius:18px;background:#17191c;color:#f0efe9;padding:clamp(28px,3.5vw,48px);min-height:100%;transition:transform .35s ease,box-shadow .35s ease}
.retail-partners article+article{border-top:1px solid rgba(13,14,16,.14);padding-top:clamp(28px,3.5vw,48px)}
.retail-partners article:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(13,14,16,.13)}
.retail-partners p,.retail-partners li{color:#c5c6bf}
.retail .service-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid rgba(13,14,16,.14);border-radius:16px;overflow:hidden;background:#f7f6f1}
.retail .service-list article{padding:26px 24px;border-right:1px solid rgba(13,14,16,.14)}
.retail .service-list article:last-child{border-right:0}

.ecommerce{background:#17191c!important}
.ecommerce .distribution-intro{gap:clamp(40px,8vw,140px)}
.ecommerce .distribution-intro>div{max-width:64ch}
.ecommerce .copy-subhead{margin-top:clamp(64px,9vw,140px)}
.ecommerce-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}
.ecommerce-services article{border:1px solid rgba(255,255,255,.14);border-radius:18px;background:#f0efe9;color:var(--ink);padding:clamp(26px,3vw,42px);min-height:100%;display:flex;flex-direction:column;justify-content:space-between;transition:transform .35s ease,box-shadow .35s ease}
.ecommerce-services article:first-child{grid-row:span 2;background:#e3e0d9}
.ecommerce-services article:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(0,0,0,.22)}
.ecommerce-services article p{color:#565952}
.ecommerce-services .copy-tags{margin-top:24px}

.stock{background:#efede7!important;background-image:linear-gradient(120deg,rgba(255,255,255,.36),transparent 55%),repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(13,14,16,.035) calc(25% - 1px),rgba(13,14,16,.035) 25%)}
.stock-heading{gap:clamp(24px,7vw,110px)}
.stock-stamp{box-shadow:8px 8px 0 rgba(157,0,19,.10)}
.stock-intro{gap:clamp(32px,8vw,130px)}
.stock-decision{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-top:clamp(62px,8vw,118px)}
.stock-decision p{max-width:38ch;text-align:right;color:#62645e}
.stock-offer-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px}
.stock-offer-details article{background:#fbfaf7;border:1px solid rgba(13,14,16,.13);border-radius:16px;padding:clamp(24px,3vw,38px);min-height:100%;display:flex;flex-direction:column}
.stock-offer-details article:nth-child(2){background:#e3e0d9}
.stock-offer-details article:nth-child(3){background:#dedbd3}
.stock-offer-details article p{color:#5d6059;margin-top:18px}
.stock-offer-details .copy-tags{margin-top:auto;padding-top:24px}
.stock-process{gap:0;border-top:1px solid rgba(13,14,16,.25)}
.stock-process article{padding-top:26px}
.stock-process article+article{border-left-color:rgba(13,14,16,.18)}
.stock-closing{border-radius:16px;background:#fbfaf7;border:1px solid rgba(13,14,16,.13);padding:clamp(24px,3vw,40px);margin-top:34px}

.expertise{background:#dedbd3!important}
.expertise-layout{gap:clamp(40px,9vw,145px)}
.expertise-layout>div:first-child p{max-width:45ch;color:#5b5d57}
.expertise-list{border:1px solid rgba(13,14,16,.15);border-radius:16px;overflow:hidden;background:#f5f3ed;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.expertise details{border-bottom:1px solid rgba(13,14,16,.15);padding:0 24px}
.expertise details:nth-child(odd){border-right:1px solid rgba(13,14,16,.15)}
.expertise details:nth-child(n+3){border-bottom:0}
.expertise summary{padding:28px 0;min-height:96px}
.expertise details p{padding:0 0 28px 30px;color:#60635b}
.expertise details{display:flex;flex-direction:column}
.expertise details p{margin-top:auto;max-width:34ch}
.expertise .plus{width:10px;height:10px;flex:0 0 10px;margin-left:auto;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px rgba(157,0,19,.10);font-size:0;line-height:0;transform:none!important}
.expertise details[open] .plus{transform:none!important}

/* Small labels should read as separate pieces of information, never as one
   run-on word. The same treatment works on light cards and the dark footer. */
.copy-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.copy-tags span{display:inline-flex;align-items:center;border:1px solid currentColor;border-radius:999px;padding:6px 10px;line-height:1.1;font-size:11px;letter-spacing:.04em;white-space:nowrap}
.ecommerce-services .copy-tags span{border-color:rgba(13,14,16,.28);color:#353833}
.stock .copy-tags span{border-color:rgba(157,0,19,.42);color:var(--red)}
.contact .copy-tags span{border-color:rgba(240,239,233,.34);color:var(--paper)}

/* Stronger typographic contrast keeps the long sections scannable. */
section h2,section h3{font-weight:600}
.image-title{font-weight:700}

/* The first online-sales panel remains the visual anchor without a tall empty
   middle; its warmer surface already differentiates it from the two peers. */
.ecommerce-services{grid-template-columns:1.18fr 1fr 1fr}
.ecommerce-services article:first-child{grid-row:auto}
.ecommerce-services article{justify-content:flex-start}
.ecommerce-services article .copy-tags{margin-top:26px}
.ecommerce .distribution-intro{align-items:start;margin-top:0}
.ecommerce .distribution-intro h2{margin-top:0}
.retail .copy-subhead{margin-top:clamp(46px,6vw,82px)}

/* Scroll-reveal rhythm: enough movement to signal a new section, never enough
   to interrupt reading. */
.reveal:nth-child(2){transition-delay:.06s}
.reveal:nth-child(3){transition-delay:.12s}
.reveal:nth-child(4){transition-delay:.18s}

@media(max-width:1100px){
  .hero-layout{grid-template-columns:1fr .92fr;gap:38px}
  .hero h1{font-size:clamp(54px,7vw,88px)}
  .stock-decision{display:block}.stock-decision p{margin-top:18px;text-align:left}
}
@media(max-width:700px){
  .hero{min-height:auto;padding-top:28px}
  .hero-layout{grid-template-columns:1fr;gap:28px;padding-top:32px;padding-bottom:36px}
  .hero h1{font-size:clamp(52px,13vw,82px);max-width:10ch}
  .europe-panel{padding:16px;border-radius:20px}
  .europe-panel:before{inset:8px;border-radius:14px}
  .europe-panel:after{right:24px;top:24px}
  .original-europe-map{filter:drop-shadow(0 12px 16px rgba(13,14,16,.14))}
  .distribution-models{gap:10px}
  .distribution-models article,.distribution-models article+article{padding:25px 22px}
  .distribution .service-list{grid-template-columns:1fr 1fr;gap:8px}
  .distribution .service-list article{padding:22px 18px}
  .retail-partners{gap:12px}
  .retail-partners article,.retail-partners article+article{padding:25px 22px}
  .retail .service-list{grid-template-columns:1fr 1fr}
  .retail .service-list article{padding:22px 18px;border-right:0}
  .retail .service-list article:nth-child(odd){border-right:1px solid rgba(13,14,16,.14)}
  .retail .service-list article:nth-child(n+3){border-top:1px solid rgba(13,14,16,.14)}
  .ecommerce-services{grid-template-columns:1fr}
  .ecommerce-services article:first-child{grid-row:auto}
  .ecommerce .distribution-intro{margin-top:0}
  .stock-offer-details{grid-template-columns:1fr;gap:10px}
  .stock-offer-details article{min-height:0}
  .expertise-list{grid-template-columns:1fr}
  .expertise details,.expertise details:nth-child(odd){border-right:0;border-bottom:1px solid rgba(13,14,16,.15)}
  .expertise details:last-child{border-bottom:0}
  .expertise details p{max-width:none}
}

/* --------------------------------------------------------------------------
   TEBEA interaction pass — standalone map, cursor, rhythm and stacking.
   These rules are presentation-only; the approved copy remains untouched.
   -------------------------------------------------------------------------- */
:root{--header-h:92px;--cursor-x:-100px;--cursor-y:-100px}

/* The map is now an open visual in the hero, not a framed card. */
.hero-layout{grid-template-columns:minmax(0,1fr) minmax(380px,1.08fr);gap:clamp(30px,5.5vw,96px)}
.europe-panel{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;min-height:0}
.europe-panel:before,.europe-panel:after{display:none}
.hero-map:before{content:'';display:block;position:absolute;inset:10% -4%;z-index:-1;background:radial-gradient(ellipse at center,rgba(227,224,217,.72) 0%,rgba(247,246,242,0) 72%);pointer-events:none}
.map-stage{width:112%;margin:0 0 0 -6%;aspect-ratio:1200/896;display:grid;place-items:center}
.original-europe-map{width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;filter:drop-shadow(0 20px 22px rgba(13,14,16,.13))}
.hero-map{isolation:isolate}
.hero-map .map-stage{transition:transform .9s cubic-bezier(.22,.61,.36,1),opacity .9s cubic-bezier(.22,.61,.36,1)}
.hero-map.reveal.pending .map-stage{transform:translateY(18px) scale(.985)}

/* A small typographic cue adds a restrained red rhythm to long sections. */
.section-label:before{content:'';width:22px;height:2px;flex:0 0 22px;background:var(--red);opacity:.85}
.copy-label,.service-number{color:var(--red)}
.distribution .copy-label,.ecommerce .copy-label{letter-spacing:.09em}

/* Vary card responses by section so the page does not feel generated from a
   single interaction template. */
.distribution-models article,.distribution .service-list article,
.retail-partners article,.retail .service-list article,
.ecommerce-services article,.stock-offer-details article,.stock-closing,
.expertise details{will-change:transform,background-color,border-color,box-shadow}
.distribution-models article{transition:transform .36s cubic-bezier(.22,.61,.36,1),background-color .36s,border-color .36s,box-shadow .36s}
.distribution-models article:hover{border-color:rgba(157,0,19,.72);background:rgba(157,0,19,.09);box-shadow:0 16px 32px rgba(0,0,0,.12)}
.distribution .service-list article{transition:transform .3s cubic-bezier(.22,.61,.36,1),background-color .3s,border-color .3s}
.distribution .service-list article:hover{transform:translateY(-3px);border-color:rgba(157,0,19,.58);background:rgba(157,0,19,.08)}
.retail-partners article{position:relative;overflow:hidden}
.retail-partners article:after{content:'';position:absolute;inset:auto 0 0;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.22,.61,.36,1)}
.retail-partners article:hover:after{transform:scaleX(1)}
.retail .service-list article{transition:transform .3s cubic-bezier(.22,.61,.36,1),background-color .3s,box-shadow .3s}
.retail .service-list article:hover{transform:translateY(-2px);background:#fffdf8;box-shadow:inset 0 -3px 0 var(--red)}
.ecommerce-services article{transition:transform .38s cubic-bezier(.22,.61,.36,1),box-shadow .38s,background-color .38s,border-color .38s}
.ecommerce-services article:first-child:hover{transform:translateY(-4px);border-color:rgba(157,0,19,.45);box-shadow:0 20px 44px rgba(0,0,0,.24)}
.ecommerce-services article:nth-child(2):hover{transform:translateY(-2px) rotate(.18deg);background:#fffdf8;border-color:rgba(157,0,19,.35)}
.ecommerce-services article:nth-child(3):hover{transform:translateY(-2px);background:#eee9e1;border-color:rgba(157,0,19,.35)}
.stock-offer-details article{transition:transform .32s cubic-bezier(.22,.61,.36,1),box-shadow .32s,border-color .32s}
.stock-offer-details article:hover{transform:translateY(-3px);border-color:rgba(157,0,19,.42);box-shadow:0 16px 30px rgba(13,14,16,.10)}
.stock-offer-details article:nth-child(2):hover{transform:translateY(-3px) rotate(-.2deg)}
.stock-closing{transition:transform .36s cubic-bezier(.22,.61,.36,1),box-shadow .36s,border-color .36s}
.stock-closing:hover{transform:translateY(-3px);border-color:rgba(157,0,19,.42);box-shadow:0 16px 34px rgba(13,14,16,.12)}
.expertise details{transition:background-color .3s,border-color .3s}
.expertise details:hover{background:rgba(157,0,19,.045);border-color:rgba(157,0,19,.28)}
.expertise details:hover .plus{box-shadow:0 0 0 6px rgba(157,0,19,.14)}

/* Custom cursor: a black T with a fine white outline. It is only enabled for
   a real mouse/trackpad so touch and keyboard interaction remain native. */
.tebea-cursor{display:none;position:fixed;left:var(--cursor-x);top:var(--cursor-y);z-index:9999;pointer-events:none;color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:24px;font-weight:800;line-height:1;-webkit-text-stroke:1px #fff;text-rendering:geometricPrecision;opacity:0;transform:translate(8px,8px);transition:transform .28s cubic-bezier(.22,.61,.36,1),opacity .2s}
@media(hover:hover) and (pointer:fine){
  body.has-custom-cursor,body.has-custom-cursor *{cursor:none!important}
  body.has-custom-cursor .tebea-cursor{display:block;opacity:1}
  .tebea-cursor.is-interactive{transform:translate(8px,8px) scale(1.14);text-shadow:0 0 0 rgba(157,0,19,0)}
}

@media(max-width:1400px){
  :root{--header-h:78px}
  .hero{min-height:calc(100svh - 78px)}
}
@media(max-width:1100px){
  .hero-layout{grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);gap:32px}
  .map-stage{width:116%;margin-left:-8%}
}
@media(max-width:900px){
  :root{--header-h:78px}
  .hero-layout{grid-template-columns:1fr;gap:28px}
  .map-stage{width:100%;margin-left:0}
  .europe-panel{width:min(100%,720px);margin-inline:auto}
}
@media(max-width:700px){
  :root{--header-h:72px}
  .hero{min-height:auto}
  .hero-layout{gap:24px}
  .map-stage{width:100%;margin:0}
  .original-europe-map{filter:drop-shadow(0 12px 16px rgba(13,14,16,.12))}
  .section-label:before{width:14px;flex-basis:14px}
}
@media(prefers-reduced-motion:reduce){
  .tebea-cursor{transition:none}
}

/* --------------------------------------------------------------------------
   Precision pass — one hero hand-off, tighter opening rhythm and aligned
   information systems.  Copy and language data stay untouched.
   -------------------------------------------------------------------------- */

/* The only stacked transition is the hero entering Brand House. Every later
   section remains a normal-flow panel and simply paints over the hero as it
   arrives. */
.stack-hero{position:relative;z-index:0}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){
  .stack-hero{
    position:sticky;
    top:var(--header-h);
    z-index:1;
    min-height:calc(100svh - var(--header-h));
    align-self:start;
  }
  .brand-section,.distribution,.retail,.ecommerce,.stock,.expertise,.contact{
    position:relative;
    z-index:2;
  }
}
@media(max-width:900px), (prefers-reduced-motion:reduce){
  .stack-hero{position:relative;top:auto;min-height:auto;z-index:0}
}

/* Pull the first visual beat closer to the header while keeping the hero
   generous enough to read as an opening frame. */
.hero{padding-top:clamp(22px,3.2vw,48px);padding-bottom:clamp(28px,3.5vw,54px)}
.hero-layout{padding-top:clamp(18px,2.2vw,38px);padding-bottom:clamp(28px,3.3vw,54px)}
.hero-copy{transform:translateY(clamp(-8px,-.6vw,-3px))}
.hero-map{transform:translateY(clamp(-10px,-.8vw,-3px))}
.map-stage{width:116%;margin-left:-8%;}
.original-europe-map{image-rendering:high-quality;filter:drop-shadow(0 22px 28px rgba(13,14,16,.15));}

/* Operational readiness uses a shared three-row rhythm: marker, title and
   description. Wrapped titles therefore do not push neighbouring copy out of
   alignment. */
.retail .service-list{align-items:stretch;grid-auto-rows:minmax(214px,1fr)}
.retail .service-list article{
  display:grid;
  grid-template-rows:auto minmax(3.05em,auto) 1fr;
  align-content:start;
  gap:10px;
  min-height:214px;
}
.retail .service-list article h3{margin:0;min-height:3.05em;display:flex;align-items:flex-start}
.retail .service-list article p{margin:0;line-height:1.55;align-self:start}
.retail .service-list .service-number{line-height:1}

/* Stock buying: keep the existing channel copy as an editorial side note
   attached to the introductory explanation, rather than a detached card. */
.stock-intro{grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr);align-items:start;gap:clamp(32px,7vw,118px);margin-top:clamp(42px,5vw,72px)}
.stock-intro>div{max-width:48ch;border-left:2px solid var(--red);padding-left:clamp(18px,2.4vw,32px)}
.stock-intro>div h3{margin:0 0 8px}
.stock-intro>div p{margin:0}

/* BUYSTOCK is a live typographic mark, not a raster label. */
.stock-stamp{
  display:grid;
  grid-template-rows:auto auto auto;
  align-content:center;
  min-width:clamp(190px,18vw,270px);
  padding:clamp(20px,2.2vw,30px) clamp(20px,2.6vw,38px);
  background:#f8f6f1;
  border:2px solid var(--red);
  box-shadow:10px 10px 0 rgba(157,0,19,.10);
  transform:rotate(5deg) translateZ(0);
  backface-visibility:hidden;
  font-family:Manrope,Arial,sans-serif;
  font-size:11px;
  line-height:1.15;
  letter-spacing:.16em;
  text-rendering:geometricPrecision;
}
.stock-stamp strong{display:block;margin:12px 0 14px;font-size:clamp(34px,4.1vw,62px);line-height:.92;letter-spacing:-.065em;white-space:nowrap;font-weight:800}
.stock-stamp>span{font-size:9px;letter-spacing:.11em;white-space:nowrap}

/* A deliberate pause separates the three offer panels from the transaction
   sequence below them. */
.stock-offer-details + .copy-subhead{margin-top:clamp(82px,9vw,132px);padding-top:16px;border-top:1px solid rgba(13,14,16,.12)}

/* Expertise rows share a fixed title band and a bottom-aligned description,
   so long headings do not create arbitrary vertical offsets. */
.expertise-list{grid-auto-rows:minmax(220px,auto)}
.expertise details{display:grid;grid-template-rows:auto 1fr;min-height:220px}
.expertise summary{align-items:flex-start;min-height:0;padding:28px 0 16px}
.expertise details p{margin:0;align-self:end;padding:0 0 28px 30px;line-height:1.6}

/* The close is a separate editorial frame: quiet ornament, a wider headline
   and a low, oversized wordmark create a clear end-state without another
   card grid. */
.contact{
  min-height:clamp(650px,92svh,980px);
  padding-top:clamp(70px,8vw,132px);
  background:#0b0c0e!important;
  isolation:isolate;
}
.contact:before{
  content:'';
  position:absolute;
  top:clamp(120px,18vw,260px);
  right:clamp(32px,9vw,170px);
  width:clamp(150px,19vw,320px);
  aspect-ratio:1;
  border:1px solid rgba(157,0,19,.58);
  border-radius:50%;
  transform:rotate(-12deg);
  opacity:.85;
  pointer-events:none;
  z-index:-1;
}
.contact h2{position:relative;z-index:1;max-width:14ch;font-size:clamp(58px,9.4vw,166px);line-height:.93;letter-spacing:-.078em}
.contact-bottom{position:relative;z-index:1;display:block;margin-top:clamp(42px,6vw,88px)}
.contact-bottom p{max-width:58ch;border-top:1px solid rgba(240,239,233,.24);padding-top:22px;color:#d0d1ca}
.contact-bottom:after{content:'';display:block;width:clamp(28px,3vw,46px);height:clamp(28px,3vw,46px);margin-top:clamp(24px,3vw,42px);background:var(--red)}
.footer-word{position:relative;z-index:0;margin-top:auto;padding-top:clamp(64px,9vw,130px);font-size:clamp(132px,24vw,430px);line-height:.78;color:#1d2024}
.contact footer{position:relative;z-index:2;margin-top:clamp(16px,2vw,28px)}
.contact h2.reveal{transition-duration:.9s}
.contact-bottom.reveal{transition-delay:.12s}
.contact .footer-word.reveal{transition-delay:.2s}

@media(max-width:900px){
  .hero-copy,.hero-map{transform:none}
  .map-stage{width:100%;margin-left:0}
  .retail .service-list{grid-auto-rows:minmax(206px,auto)}
  .retail .service-list article{min-height:206px}
  .stock-intro{grid-template-columns:1fr;gap:28px}
  .stock-intro>div{max-width:none}
  .contact{min-height:0;padding-top:clamp(62px,14vw,110px)}
  .contact h2{max-width:13ch;font-size:clamp(52px,11vw,92px)}
  .contact:before{top:clamp(170px,28vw,280px);right:6vw;width:clamp(130px,26vw,240px)}
  .footer-word{font-size:clamp(120px,25vw,270px)}
}
@media(max-width:560px){
  .hero{padding-top:18px}
  .hero-layout{padding-top:24px}
  .retail .service-list{grid-template-columns:1fr;grid-auto-rows:auto}
  .retail .service-list article{min-height:0;grid-template-rows:auto auto auto}
  .retail .service-list article,.retail .service-list article:nth-child(odd){border-right:0}
  .retail .service-list article+article{border-top:1px solid rgba(13,14,16,.14)}
  .retail .service-list article h3{min-height:0}
  .stock-stamp{min-width:148px;padding:13px 14px;font-size:8px}
  .stock-stamp strong{font-size:26px;margin:8px 0 10px}
  .stock-stamp>span{font-size:7px}
  .stock-intro>div{border-left:0;border-top:2px solid var(--red);padding:17px 0 0}
  .stock-offer-details + .copy-subhead{margin-top:72px;padding-top:13px}
  .expertise-list{grid-auto-rows:auto}
  .expertise details{min-height:0;grid-template-rows:auto auto}
  .expertise details p{align-self:start;padding:0 0 23px 30px}
  .contact h2{font-size:clamp(48px,12.5vw,72px);max-width:12ch}
  .contact:before{top:170px;right:6vw;width:120px}
  .contact-bottom{margin-top:36px}
  .contact-bottom p{padding-top:17px}
  .footer-word{padding-top:70px;font-size:28vw}
}

@media(prefers-reduced-motion:reduce){
  .stack-hero{position:relative;top:auto;min-height:auto}
  .hero-map .map-stage{transition:none}
  .contact h2.reveal,.contact-bottom.reveal,.contact .footer-word.reveal{transition:none}
}


/* --------------------------------------------------------------------------
   2026-09-14 — language flags, cleaned Europe map and final contact frame.
   -------------------------------------------------------------------------- */
.languages{gap:8px;align-items:center}
.languages button{width:31px;height:23px;padding:2px;border:1px solid transparent;border-radius:3px;display:grid;place-items:center;opacity:.58;transition:opacity .2s,transform .2s,border-color .2s,background-color .2s;text-decoration:none!important}
.languages button img{display:block;width:100%;height:100%;object-fit:cover;border-radius:1px;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.languages button:hover{opacity:.9;transform:translateY(-1px)}
.languages button[aria-pressed=true]{opacity:1;border-color:rgba(255,255,255,.38);background:rgba(255,255,255,.06);box-shadow:0 3px 0 -2px var(--red)}

/* The source map remains the approved TEBEA map, but the visual defects are
   removed: no halo/filter and crisp local SVG flags cover the old raster badges. */
.hero-map:before{display:none!important}
.map-stage{width:108%;margin-left:-4%;overflow:visible}
.original-europe-map{display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;filter:none!important;image-rendering:auto}
.map-flag{position:absolute;left:var(--x);top:var(--y);z-index:3;width:clamp(24px,1.8vw,34px);aspect-ratio:3/2;transform:translate(-50%,-50%);padding:2px;background:#f6f5f0;border:1px solid rgba(13,14,16,.16);border-radius:4px;box-shadow:0 2px 7px rgba(13,14,16,.18);pointer-events:none}
.map-flag img{display:block;width:100%;height:100%;object-fit:cover;border-radius:2px}

/* Closing section: smaller editorial headline, stable two-column composition,
   real contact form and a calmer final wordmark. */
.contact{min-height:0;padding-top:clamp(72px,7vw,112px);padding-bottom:0;background:#0b0c0e!important;overflow:hidden}
.contact:before{content:'';display:block;position:absolute;top:clamp(150px,18vw,260px);right:-7vw;width:clamp(220px,25vw,440px);aspect-ratio:1;border:1px solid rgba(157,0,19,.34);border-radius:50%;opacity:.55;pointer-events:none;z-index:0}
.contact .section-label{position:relative;z-index:2;margin-bottom:clamp(42px,5vw,70px)}
.contact-shell{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(54px,8vw,138px);align-items:start}
.contact-copy{min-width:0}
.contact h2{max-width:10.8ch;font-size:clamp(52px,6.35vw,112px);line-height:.98;letter-spacing:-.068em;font-weight:500}
.contact-bottom{display:block;margin-top:clamp(34px,4vw,58px)}
.contact-bottom p{max-width:55ch;border-top:1px solid rgba(240,239,233,.22);padding-top:20px;color:#c7c8c2;font-size:clamp(15px,1.15vw,18px);line-height:1.7}
.contact-bottom:after{content:'';display:block;width:34px;height:34px;margin-top:30px;background:var(--red)}
.contact-form-wrap{border-top:1px solid rgba(240,239,233,.28);padding-top:18px}
.form-kicker{display:block;margin-bottom:clamp(24px,3vw,42px);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#a7a8a2}
.contact-form{position:relative}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 28px}
.form-field{display:grid;gap:9px;min-width:0}
.form-field-full{grid-column:1/-1}
.form-field>span{font-size:12px;letter-spacing:.055em;text-transform:uppercase;color:#b4b5af}
.form-field input,.form-field textarea{width:100%;border:0;border-bottom:1px solid rgba(240,239,233,.32);border-radius:0;background:transparent;color:var(--paper);font:inherit;font-size:16px;line-height:1.5;padding:8px 0 13px;outline:none;transition:border-color .2s,background-color .2s}
.form-field textarea{min-height:142px;resize:vertical}
.form-field input:focus,.form-field textarea:focus{border-bottom-color:#c52a3e;background:linear-gradient(to top,rgba(157,0,19,.055),transparent 55%)}
.form-field input:user-invalid,.form-field textarea:user-invalid{border-bottom-color:#d14b5c}
.contact-submit{margin-top:30px;min-width:min(100%,245px);border:1px solid rgba(240,239,233,.55);background:transparent;color:var(--paper);padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:30px;transition:background .25s,border-color .25s,transform .25s}
.contact-submit:hover{background:var(--red);border-color:var(--red);transform:translateY(-1px)}
.form-status{min-height:1.5em;margin-top:16px;color:#b9bab4;font-size:13px;line-height:1.5}
.bot-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.footer-word{position:relative;z-index:1;margin-top:clamp(70px,9vw,125px);padding-top:0;font-size:clamp(120px,17.5vw,315px);line-height:.78;letter-spacing:-.085em;color:#1e2125}
.contact footer{position:relative;z-index:2;margin-top:20px;padding:18px 0 22px;border-top:1px solid rgba(240,239,233,.18);display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:11px;color:#b8b9b2}
.contact footer a{transition:color .2s}
.contact footer a:hover{color:var(--paper)}

@media(max-width:1100px){
  .map-stage{width:104%;margin-left:-2%}
  .contact-shell{grid-template-columns:1fr 1fr;gap:48px}
  .contact h2{font-size:clamp(50px,7.2vw,82px)}
}
@media(max-width:900px){
  .map-stage{width:100%;margin-left:0}
  .contact-shell{grid-template-columns:1fr;gap:54px}
  .contact h2{max-width:11ch;font-size:clamp(52px,10vw,82px)}
  .contact-form-wrap{max-width:760px}
  .footer-word{font-size:clamp(118px,24vw,230px)}
}
@media(max-width:700px){
  .languages{gap:5px}
  .languages button{width:28px;height:21px;padding:2px}
  .map-flag{width:clamp(21px,6vw,29px);padding:1.5px;border-radius:3px;box-shadow:0 1px 5px rgba(13,14,16,.16)}
  .contact{padding-top:62px}
  .contact:before{right:-28vw;top:190px;width:260px}
  .contact h2{font-size:clamp(46px,12vw,68px)}
  .form-grid{grid-template-columns:1fr;gap:22px}
  .form-field-full{grid-column:auto}
  .contact-submit{width:100%}
  .footer-word{margin-top:72px;font-size:27vw}
  .contact footer{font-size:10px}
}
@media(max-width:430px){
  .languages button{width:25px;height:19px}
  .header-actions{gap:8px}
  .contact footer{align-items:flex-end}
}


/* 2026-09-14 FIX: exact map badges + reliable language controls */
.languages button{position:relative;z-index:2;pointer-events:auto;touch-action:manipulation}
.languages button img{pointer-events:none;user-select:none;-webkit-user-drag:none}

/* The base artwork already contains small raster badges. The crisp local SVG badges
   are aligned to their measured centres and slightly oversized to cover the raster
   version completely, leaving one visible flag per country. */
.map-flag{
  width:clamp(31px,2.05vw,41px);
  padding:2px;
  background:#f7f6f2;
  border:1px solid rgba(13,14,16,.20);
  border-radius:4px;
  box-shadow:0 2px 6px rgba(13,14,16,.20);
}
.map-flag img{width:100%;height:100%;display:block;object-fit:cover}
@media(max-width:1100px){.map-flag{width:clamp(28px,3vw,35px)}}
@media(max-width:700px){.map-flag{width:clamp(25px,6.7vw,31px)}}


/* --------------------------------------------------------------------------
   2026-09-14 UI FIX 2 — stable language controls + single map flag layer.
   No position/scale animation on language buttons; native pointer is restored
   over this control so clicking never competes with the custom T cursor.
   -------------------------------------------------------------------------- */
.languages{
  display:flex;
  align-items:center;
  gap:9px;
  flex:0 0 auto;
}
.languages button{
  appearance:none;
  -webkit-appearance:none;
  box-sizing:border-box;
  width:34px;
  height:26px;
  flex:0 0 34px;
  padding:2px;
  margin:0;
  border:1px solid transparent;
  border-radius:4px;
  background:transparent;
  opacity:.76;
  transform:none!important;
  transition:opacity .10s ease,border-color .10s ease,background-color .10s ease,box-shadow .10s ease!important;
  cursor:pointer!important;
  touch-action:manipulation;
  position:relative;
  z-index:4;
}
.languages button:hover{
  opacity:1;
  transform:none!important;
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.16);
}
.languages button[aria-pressed="true"]{
  opacity:1;
  transform:none!important;
  color:var(--paper);
  text-decoration:none!important;
  border-color:rgba(255,255,255,.34);
  background:rgba(255,255,255,.07);
  box-shadow:inset 0 -2px 0 var(--red)!important;
}
.languages button img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:2px;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
body.has-custom-cursor .languages,
body.has-custom-cursor .languages button,
body.has-custom-cursor .languages button *{
  cursor:pointer!important;
}
body:has(.languages:hover) .tebea-cursor{
  opacity:0!important;
}

/* The approved map artwork already contains the country flags.  Any legacy
   overlay badges are suppressed as a second safety layer against duplicates. */
.map-flag{display:none!important}

@media(max-width:700px){
  .languages{gap:7px}
  .languages button{width:32px;height:24px;flex-basis:32px;padding:2px}
}
@media(max-width:430px){
  .languages{gap:6px}
  .languages button{width:30px;height:23px;flex-basis:30px}
}


/* ===== TEBEA MAP — FINAL CLEAN VERSION 2026-09-14 ===== */
.hero-map{isolation:isolate}
.hero-map .map-stage{
  position:relative;
  width:110%;
  margin:0 0 0 -5%;
  aspect-ratio:1200/896;
  display:grid;
  place-items:center;
  overflow:visible;
}
.hero-map .original-europe-map{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
  object-position:center;
  opacity:1;
  filter:none!important;
  image-rendering:auto;
}
.hero-map .map-flag{
  display:block!important;
  position:absolute;
  left:var(--x);
  top:var(--y);
  z-index:4;
  width:clamp(22px,1.45vw,28px);
  aspect-ratio:3/2;
  transform:translate(-50%,-50%);
  padding:2px;
  background:#faf9f6;
  border:1px solid rgba(13,14,16,.16);
  border-radius:4px;
  box-shadow:0 2px 6px rgba(13,14,16,.13);
  pointer-events:none;
  transition:none!important;
}
.hero-map .map-flag img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:2px;
}
@media(max-width:1100px){
  .hero-map .map-stage{width:106%;margin-left:-3%}
  .hero-map .map-flag{width:clamp(21px,2.4vw,27px)}
}
@media(max-width:700px){
  .hero-map .map-stage{width:100%;margin-left:0}
  .hero-map .map-flag{width:clamp(20px,5.8vw,26px);padding:1.5px;border-radius:3px;box-shadow:0 1px 4px rgba(13,14,16,.12)}
}


/* ========================================================================== 
   2026-09-14 — 9-language header + approved map card
   ========================================================================== */
.languages{
  display:grid!important;
  grid-template-columns:repeat(5,30px);
  grid-auto-rows:22px;
  gap:5px 6px!important;
  align-items:center;
  justify-content:end;
  width:174px;
  flex:0 0 174px;
}
.languages button{
  width:30px!important;
  height:22px!important;
  flex:none!important;
  padding:2px!important;
  margin:0!important;
  border-radius:4px!important;
  transform:none!important;
  transition:opacity .10s ease,border-color .10s ease,background-color .10s ease,box-shadow .10s ease!important;
}
.languages button:hover{transform:none!important}
.languages button img{width:100%;height:100%;object-fit:cover}

.hero-map{
  background:var(--grey)!important;
  border-radius:28px!important;
  overflow:hidden!important;
  padding:clamp(14px,1.6vw,26px)!important;
  box-shadow:inset 0 0 0 1px rgba(13,14,16,.055);
}
.hero-map .map-stage{
  width:100%!important;
  margin:0!important;
  aspect-ratio:1448/1086!important;
  overflow:hidden!important;
  border-radius:20px;
}
.hero-map .original-europe-map{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:20px!important;
  background:var(--grey)!important;
}
.hero-map .map-flag{display:none!important}

@media(max-width:1400px){
  .languages{grid-template-columns:repeat(5,28px);grid-auto-rows:21px;width:162px;flex-basis:162px;gap:4px 5px!important}
  .languages button{width:28px!important;height:21px!important}
  .header-actions{gap:12px}
}
@media(max-width:700px){
  .languages{grid-template-columns:repeat(5,26px);grid-auto-rows:20px;width:150px;flex-basis:150px;gap:4px 5px!important}
  .languages button{width:26px!important;height:20px!important}
  .hero-map{border-radius:20px!important;padding:10px!important}
  .hero-map .map-stage,.hero-map .original-europe-map{border-radius:14px!important}
}
@media(max-width:430px){
  header{padding-left:18px;padding-right:18px;gap:8px}
  .wordmark{font-size:29px}
  .languages{grid-template-columns:repeat(5,23px);grid-auto-rows:18px;width:135px;flex-basis:135px;gap:3px 5px!important}
  .languages button{width:23px!important;height:18px!important;padding:1px!important}
  .header-actions{gap:6px}
  .menu-button{width:38px;padding-inline:8px}
}

/* 2026-09-14: final map background adjustment — exact light section tone */
.hero-map{
  background:#efede7!important;
}
.hero-map .original-europe-map{
  background:#efede7!important;
}


/* ==========================================================================\n   BUYSTOCK badge — final visual refinement\n   A deliberate brand plaque: stable, legible and clearly part of the layout.\n   ========================================================================== */
.stock-heading{
  align-items:center;
}
.stock-stamp{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  flex:0 0 auto;
  width:clamp(285px,23vw,365px);
  min-width:0;
  min-height:168px;
  padding:24px 28px 22px;
  margin:0;
  background:var(--red);
  color:#f7f5ef;
  border:1px solid rgba(114,0,13,.78);
  border-radius:16px;
  box-shadow:0 16px 34px rgba(13,14,16,.12);
  transform:none;
  overflow:hidden;
  font-family:Manrope,Arial,sans-serif;
  line-height:1;
  letter-spacing:0;
  text-rendering:optimizeLegibility;
}
.stock-stamp::before{
  content:'';
  position:absolute;
  inset:12px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  pointer-events:none;
}
.stock-stamp::after{
  content:'';
  position:absolute;
  right:-34px;
  top:-38px;
  width:112px;
  height:112px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
  pointer-events:none;
}
.stock-stamp-brand{
  position:relative;
  z-index:1;
  display:block;
  margin:0 0 14px;
  color:rgba(255,255,255,.78);
  font-size:10px;
  font-weight:700;
  line-height:1;
  letter-spacing:.22em;
  text-transform:uppercase;
  white-space:nowrap;
}
.stock-stamp strong{
  position:relative;
  z-index:1;
  display:block;
  margin:0;
  color:#fff;
  font-size:clamp(38px,3.5vw,56px);
  font-weight:800;
  line-height:.96;
  letter-spacing:-.065em;
  white-space:nowrap;
}
.stock-stamp-meta{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  margin-top:17px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.28);
  color:rgba(255,255,255,.74);
  font-size:9px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.15em;
  text-transform:uppercase;
  white-space:nowrap;
}
@media (max-width:900px){
  .stock-heading{
    flex-direction:column;
    align-items:flex-start;
    gap:30px;
  }
  .stock-stamp{
    width:min(100%,360px);
    min-height:150px;
    padding:21px 24px 20px;
  }
}
@media (max-width:700px){
  .stock-stamp{
    width:min(100%,330px);
    min-width:0;
    min-height:138px;
    padding:20px 22px 18px;
    border-radius:14px;
  }
  .stock-stamp::before{inset:9px;border-radius:9px}
  .stock-stamp-brand{font-size:9px;margin-bottom:12px}
  .stock-stamp strong{font-size:clamp(34px,10vw,46px);margin:0}
  .stock-stamp-meta{font-size:8px;margin-top:14px;padding-top:10px}
}


/* ==========================================================================\n   2026-09-14 — Mandarin, company logo, market pulse, sticker and form emphasis\n   ========================================================================== */

/* Header logo: transparent, tightly cropped company mark. The source canvas was
   removed so the actual logo can be larger without stretching or wasting header space. */
.wordmark{
  display:flex!important;
  align-items:center;
  justify-content:flex-start;
  width:94px;
  height:82px;
  flex:0 0 94px;
  font-size:0!important;
  letter-spacing:0!important;
  line-height:1!important;
  overflow:visible;
}
.wordmark img{
  display:block;
  width:88px;
  height:auto;
  max-height:82px;
  object-fit:contain;
}

/* Mandarin fallback fonts — existing Latin typography stays unchanged. */
html[lang="zh-CN"] body{font-family:'DM Sans','Microsoft YaHei','PingFang SC','Noto Sans SC',Arial,sans-serif}
html[lang="zh-CN"] h1,
html[lang="zh-CN"] h2,
html[lang="zh-CN"] h3,
html[lang="zh-CN"] .brand-name,
html[lang="zh-CN"] .footer-word{font-family:Manrope,'Microsoft YaHei','PingFang SC','Noto Sans SC',Arial,sans-serif;letter-spacing:-.035em}

/* Ten flags = two complete rows of five, including Mandarin/China. */
.languages{grid-template-columns:repeat(5,30px)!important;grid-auto-rows:22px!important}

/* Hero micro-market: deliberately no background, frame or label. 9 rises / 3 falls. */
.hero-bottom{position:relative;min-height:42px}
.market-pulse{
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width:232px;
  height:64px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:9px;
  pointer-events:none;
  opacity:.92;
}
.market-bar{
  --h:36px;
  --d:0s;
  position:relative;
  display:block;
  width:6px;
  height:var(--h);
  border-radius:1px;
  transform-origin:50% 100%;
  animation:tebeaMarketPulse 4.8s ease-in-out var(--d) infinite;
  will-change:transform,opacity;
}
.market-bar::before{
  content:'';
  position:absolute;
  left:50%;
  top:-7px;
  bottom:-7px;
  width:1px;
  transform:translateX(-50%);
  background:currentColor;
  opacity:.55;
  z-index:-1;
}
.market-bar.up{color:#6f9b79;background:#6f9b79}
.market-bar.down{color:#b34f5d;background:#b34f5d}
@keyframes tebeaMarketPulse{
  0%,100%{transform:translateY(0) scaleY(.96);opacity:.72}
  45%{transform:translateY(-1.5px) scaleY(1.055);opacity:1}
  68%{transform:translateY(.5px) scaleY(1.01);opacity:.88}
}

/* BUYSTOCK behaves like a straight, applied premium sticker — visible adhesive edge,
   tight cast shadow and a restrained lifted corner, without any rotation. */
.stock-stamp{
  background:linear-gradient(155deg,rgba(255,255,255,.075),transparent 34%),var(--red)!important;
  border:1px solid rgba(91,0,11,.78)!important;
  border-radius:15px 18px 14px 17px!important;
  box-shadow:
    0 0 0 3px rgba(248,247,242,.86),
    0 2px 3px rgba(13,14,16,.16),
    0 12px 24px rgba(13,14,16,.16)!important;
  transform:none!important;
}
.stock-stamp::before{
  inset:11px!important;
  border-color:rgba(255,255,255,.23)!important;
  border-radius:10px 12px 9px 11px!important;
}
.stock-stamp::after{
  content:''!important;
  position:absolute!important;
  top:auto!important;
  right:-1px!important;
  bottom:-1px!important;
  width:25px!important;
  height:25px!important;
  border:0!important;
  border-radius:0 0 14px 0!important;
  background:linear-gradient(135deg,transparent 0 47%,#d1cec6 48% 61%,#f0efe9 62% 100%)!important;
  clip-path:polygon(100% 0,100% 100%,0 100%)!important;
  box-shadow:none!important;
  opacity:.95!important;
  pointer-events:none;
}

/* Contact form kicker: stronger hierarchy, still deliberately compact. */
.form-kicker{
  display:flex!important;
  align-items:center;
  gap:12px;
  margin-bottom:clamp(26px,3vw,42px)!important;
  color:#f0efe9!important;
  font-size:clamp(15px,1.05vw,18px)!important;
  font-weight:700!important;
  line-height:1.2;
  letter-spacing:.085em!important;
}
.form-kicker::before{
  content:'';
  display:block;
  width:25px;
  height:2px;
  flex:0 0 25px;
  background:#b51b30;
}

@media(max-width:1400px){
  .wordmark{width:84px;height:78px;flex-basis:84px}
  .wordmark img{width:78px;max-height:76px}
  .languages{grid-template-columns:repeat(5,28px)!important;grid-auto-rows:21px!important}
}
@media(max-width:900px){
  .market-pulse{width:190px;height:58px;gap:8px;opacity:.88}
  .market-bar{width:5px}
}
@media(max-width:700px){
  .wordmark{width:70px;height:64px;flex-basis:70px}
  .wordmark img{width:64px;max-height:62px}
  .languages{grid-template-columns:repeat(5,26px)!important;grid-auto-rows:20px!important}
  .market-pulse{width:154px;height:52px;gap:6px;bottom:1px}
  .market-bar{width:4px;transform-origin:bottom}
}
@media(max-width:520px){
  .market-pulse{display:none}
}
@media(max-width:430px){
  .wordmark{width:62px;height:58px;flex-basis:62px}
  .wordmark img{width:56px;max-height:56px}
  .languages{grid-template-columns:repeat(5,23px)!important;grid-auto-rows:18px!important}
}
@media(prefers-reduced-motion:reduce){
  .market-bar{animation:none!important;transform:none!important;opacity:.88}
}

/* ==========================================================================\n   2026-09-14 — mobile refinement: brand cards, distribution stack, hero pulse\n   Desktop presentation remains unchanged.\n   ========================================================================== */
@media(max-width:700px){
  /* Brand House: every own brand is immediately visible as an image card. */
  .brand-portfolio{display:block}
  .brand-select{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:16px;
    border-top:0;
  }
  .brand-tab{
    --brand-card:none;
    position:relative;
    isolation:isolate;
    min-height:350px;
    width:100%;
    overflow:hidden;
    border:0!important;
    border-radius:20px;
    padding:26px 24px 24px!important;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-content:end;
    gap:0 14px;
    color:#fff!important;
    background-color:#17191c!important;
    background-image:
      linear-gradient(180deg,rgba(8,9,10,.10) 0%,rgba(8,9,10,.18) 38%,rgba(8,9,10,.84) 100%),
      var(--brand-card)!important;
    background-size:cover!important;
    background-position:center!important;
    box-shadow:0 14px 34px rgba(13,14,16,.16);
    text-shadow:0 1px 10px rgba(0,0,0,.28);
  }
  .brand-tab:nth-child(1){--brand-card:url('assets/image-1.webp');background-position:center 54%!important}
  .brand-tab:nth-child(2){--brand-card:url('assets/image-2.webp');background-position:center 50%!important}
  .brand-tab:nth-child(3){--brand-card:url('assets/image-3.webp');background-position:center 46%!important}
  .brand-tab:hover,
  .brand-tab.active{
    color:#fff!important;
    padding-left:24px!important;
    background-image:
      linear-gradient(180deg,rgba(8,9,10,.08) 0%,rgba(8,9,10,.17) 38%,rgba(8,9,10,.82) 100%),
      var(--brand-card)!important;
  }
  .brand-tab:hover{transform:none}
  .brand-number{
    position:absolute;
    left:24px;
    top:22px;
    z-index:2;
    color:#fff!important;
    font-size:11px;
    letter-spacing:.08em;
    opacity:.92;
  }
  .brand-name,
  .brand-arrow,
  .brand-description,
  .brand-detail{position:relative;z-index:2}
  .brand-name{font-size:clamp(31px,10vw,42px);line-height:1.05;color:#fff}
  .brand-arrow{font-size:27px;align-self:center;color:#fff!important;transform:none!important}
  .brand-description{
    grid-column:1/-1;
    padding-top:12px;
    font-size:12px;
    line-height:1.5;
    color:rgba(255,255,255,.86);
  }
  .brand-detail{
    grid-column:1/-1;
    display:block;
    margin-top:6px;
    max-width:34ch;
    font-size:14px;
    line-height:1.55;
    color:rgba(255,255,255,.96);
  }
  .brand-visual{display:none!important}

  /* Distribution end-to-end: service cards stack vertically to prevent clipping. */
  .distribution{overflow-x:hidden}
  .distribution .service-list{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    width:100%;
  }
  .distribution .service-list article{
    width:100%;
    min-width:0;
    padding:24px 22px!important;
  }

  /* Hero market pulse: same visual language and proportions as desktop. */
  .hero-bottom{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto 68px;
    align-items:center;
    column-gap:12px;
    row-gap:8px;
    min-height:108px;
  }
  .hero-bottom>p{grid-column:1;grid-row:1;max-width:220px}
  .hero-bottom>.text-link{grid-column:2;grid-row:1;justify-self:end}
  .market-pulse{
    display:flex!important;
    position:relative;
    left:auto;
    bottom:auto;
    transform:none;
    grid-column:1/-1;
    grid-row:2;
    justify-self:center;
    width:232px;
    height:64px;
    gap:9px;
    opacity:.92;
  }
  .market-bar{width:6px}
}

@media(max-width:430px){
  .brand-tab{min-height:330px;border-radius:18px}
  .market-pulse{width:216px;gap:8px}
  .market-bar{width:5px}
}


/* --------------------------------------------------------------------------
   2026-09-22 — dane rejestrowe TEBEA w stopce.
   -------------------------------------------------------------------------- */
.contact footer.site-footer{
  display:block;
  align-items:initial;
}
.site-footer{
  display:block!important;
  width:100%;
  padding-top:0;
  border-top:0;
}
.footer-company{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 28px;
  width:100%;
  padding:4px 0 20px;
  color:#d3d4ce;
  font-size:12px;
  line-height:1.5;
}
.footer-company>*{
  display:inline-flex;
  align-items:center;
  position:relative;
  white-space:nowrap;
}
.footer-company strong{
  color:var(--paper);
  font-family:Manrope,Arial,sans-serif;
  font-size:13px;
  font-weight:600;
  letter-spacing:.01em;
}
.footer-company>*+*{padding-left:28px}
.footer-company>*+*::before{
  content:'';
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:1px;
  height:14px;
  background:rgba(240,239,233,.20);
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  width:100%;
  padding-top:18px;
  border-top:1px solid rgba(240,239,233,.12);
  color:#9fa29b;
}
@media(max-width:900px){
  .footer-company{gap:8px 20px}
  .footer-company>*+*{padding-left:20px}
  .footer-bottom{align-items:flex-start}
}
@media(max-width:560px){
  .footer-company{display:grid;grid-template-columns:1fr;gap:6px;padding-bottom:16px}
  .footer-company>*{white-space:normal}
  .footer-company>*+*{padding-left:0}
  .footer-company>*+*::before{display:none}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}
}


/* 2026-09-25 — footer company data alignment */
.footer-company{
  display:flex!important;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  width:100%;
}
.footer-company>strong{
  flex:0 0 auto;
  padding-left:0!important;
}
.footer-company-details{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:0;
  margin-left:auto;
  text-align:right;
}
.footer-company-details>span{
  display:inline-flex;
  align-items:center;
  position:relative;
  white-space:nowrap;
}
.footer-company-details>span+span{padding-left:28px;margin-left:28px}
.footer-company-details>span+span::before{
  content:'';
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:1px;
  height:14px;
  background:rgba(240,239,233,.20);
}
@media(max-width:900px){
  .footer-company{align-items:flex-start;gap:20px}
  .footer-company-details{flex-wrap:wrap;row-gap:6px}
  .footer-company-details>span+span{padding-left:18px;margin-left:18px}
}
@media(max-width:560px){
  .footer-company{display:grid!important;grid-template-columns:1fr;gap:8px}
  .footer-company-details{display:grid;grid-template-columns:1fr;gap:5px;margin-left:0;text-align:left;justify-content:start}
  .footer-company-details>span{white-space:normal}
  .footer-company-details>span+span{padding-left:0;margin-left:0}
  .footer-company-details>span+span::before{display:none}
}
