:root{font-family:Manrope,Arial,sans-serif;color:#272326;background:#f0efeb;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;overflow-x:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:0}.header{height:92px;background:#f0efeb;display:flex;align-items:center;gap:4vw;padding:0 4.5vw;position:relative;z-index:10;border-bottom:1px solid #d5d0cc}.brand{display:flex;align-items:center;width:235px}.brand img{width:225px;height:auto;display:block}.nav{display:flex;gap:clamp(18px,2.5vw,44px);margin:auto;font-size:13px;font-weight:700}.nav a,.header-link{transition:color .25s}.nav a:hover,.header-link:hover{color:#9e2430}.header-link{font-size:13px;font-weight:800;white-space:nowrap}.header-link span{margin-left:13px}.menu-toggle{display:none}.hero{min-height:calc(100svh - 92px);background:#262326;color:#f4f0eb;position:relative;display:grid;grid-template-columns:52% 48%;overflow:hidden}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0b 1px,transparent 1px),linear-gradient(90deg,#ffffff0b 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,transparent,#000)}.hero-copy{position:relative;z-index:2;padding:clamp(85px,10vw,165px) 0 130px 8.5vw}.eyebrow,.index,.hero-bottom,.stage-caption,.visual-tag,.model-num,.model p,.geo-key,.map-label,.map-water,.map-coordinate,.steps span,.contact-items span,.footer{font-size:12px;font-weight:800;letter-spacing:.12em}.eyebrow{display:flex;align-items:center;gap:10px;color:#c6bcb8}.pulse,.tag-dot{width:8px;height:8px;background:#b23843;border-radius:50%;box-shadow:0 0 0 6px #b2384322;animation:pulse 2.8s infinite}@keyframes pulse{50%{box-shadow:0 0 0 12px #b2384300}}h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(64px,7.4vw,134px);line-height:.99;letter-spacing:-.075em;margin:45px -130px 30px 0;font-weight:700}.hero h1 em{font-style:normal;color:#bf5360}.hero-sub{max-width:390px;font-size:17px;line-height:1.6;color:#bdb6b4}.round-link{display:grid;place-items:center;border:1px solid #ffffff66;border-radius:50%;width:62px;height:62px;font-size:25px;margin-top:65px;transition:background .3s,transform .3s}.round-link:hover{background:#861e29;transform:translateY(5px)}.hero-visual{position:relative;min-height:650px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 60% 50%,#642b31 0%,#3a292c 43%,#262326 76%)}.machine-stage{position:relative;width:min(74%,520px);aspect-ratio:1;display:grid;place-items:center}.stage-halo{position:absolute;width:100%;height:100%;border-radius:50%;border:1px solid #ffffff20;box-shadow:0 0 0 60px #ffffff06,0 0 0 120px #ffffff04}.machine-stage img{width:82%;height:82%;object-fit:cover;object-position:center;mix-blend-mode:screen;filter:contrast(1.2) saturate(.7);mask-image:radial-gradient(ellipse,#000 40%,transparent 73%);position:relative;transform:translateY(10px)}.visual-tag{position:absolute;right:-25px;top:25%;border:1px solid #ffffff55;padding:14px 18px;background:#302a2cc7;display:flex;align-items:center;gap:13px}.stage-caption{position:absolute;bottom:50px;left:8%;right:8%;display:flex;justify-content:space-between;color:#d3c4c3;font-size:12px}.hero-bottom{position:absolute;bottom:30px;left:8.5vw;right:52%;display:flex;justify-content:space-between;color:#a59c99;font-size:12px}.section{padding:105px 8.5vw}.section-kicker{display:flex;align-items:center;gap:35px;margin-bottom:85px}.index{white-space:nowrap;color:#9e2631}.rule{height:1px;background:#c9c4c0;flex:1}.intro{background:#f0efeb}.intro-content{display:grid;grid-template-columns:1.7fr 1fr;gap:10vw}.intro h2,.equipment h2,.geo-copy h2,.process h2,.place h2,.contacts h2{font-size:clamp(44px,5.1vw,90px);letter-spacing:-.067em;line-height:1.08;font-weight:700}.intro h2 span{color:#9e2631}.intro-side{padding-top:12px;max-width:410px}.intro-side p,.geo-copy>p,.place-main p{font-size:18px;line-height:1.7;color:#585256}.intro-side p+p{margin-top:26px}.equipment{background:#e2e1dc}.equipment-heading{display:flex;justify-content:space-between;align-items:end;gap:50px}.equipment h2 i,.geo-copy h2 i,.process h2 i,.place h2 i{font-style:normal;color:#a02d37}.equipment-heading>p{max-width:310px;font-size:16px;line-height:1.6;color:#615a5c}.equipment-showcase{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr);gap:clamp(38px,6vw,96px);align-items:stretch;margin-top:70px}.model-list{border-top:1px solid #aaa4a3}.model{appearance:none;width:100%;color:inherit;text-align:left;background:transparent;border:0;border-bottom:1px solid #aaa4a3;display:grid;grid-template-columns:12% 1fr auto;align-items:center;gap:15px;padding:27px 5px 27px 25px;transition:background .3s,color .3s}.model:hover,.model:focus-visible,.model.is-active{background:#f0efeb;outline:0}.model.is-active{color:#8b1e2b}.model-copy{display:flex;flex-direction:column;gap:8px}.model-copy strong{font-size:clamp(40px,4.2vw,68px);font-weight:700;letter-spacing:-.065em;line-height:1.05}.model-copy small{font-size:12px;font-weight:800;letter-spacing:.12em;color:#777075}.model-arrow{font-size:32px;color:#992a35;transition:color .25s}.model-preview{min-height:570px;background:#29272a;color:#f0efeb;display:grid;grid-template-rows:minmax(360px,1fr) auto;overflow:hidden}.model-preview__media{position:relative;background:#e2e1dc;min-height:360px;display:grid;place-items:center;padding:38px;overflow:hidden}.model-preview__media:after{content:'';position:absolute;inset:18px;border:1px solid #2d292b15;pointer-events:none}.model-preview__media img{display:block;width:100%;height:100%;max-width:100%;max-height:420px;object-fit:contain;mix-blend-mode:multiply;transition:opacity .18s,transform .35s}.model-preview.is-switching .model-preview__media img{opacity:0;transform:translateY(8px)}.model-preview__index{position:absolute;top:28px;left:30px;z-index:1;font-size:12px;font-weight:800;letter-spacing:.12em;color:#8b1e2b}.model-preview__content{padding:32px 36px 35px;display:grid;grid-template-columns:1fr auto;gap:10px 35px;align-items:end}.model-preview__kicker{grid-column:1/-1;font-size:12px;font-weight:800;letter-spacing:.13em;color:#d48a91}.model-preview__content h3{font-size:clamp(38px,4vw,66px);letter-spacing:-.06em;line-height:1;margin:0}.model-preview__content p{max-width:420px;margin:0;font-size:14px;line-height:1.6;color:#c1babb}.model-preview__fact{grid-column:1/-1;border-top:1px solid #555054;margin-top:14px;padding-top:18px;font-size:12px;font-weight:800;letter-spacing:.1em;color:#e7ddda}.geography{background:#29272a;color:#f0efeb}.geography .rule,.process .rule{background:#555054}.geography .index{color:#dc8991}.geo-layout{display:grid;grid-template-columns:42% 58%;gap:30px;align-items:center}.geo-copy>p{max-width:390px;color:#b9b2b4}.geo-key{display:flex;gap:25px;margin-top:55px;color:#c6bcbf}.geo-key span{display:flex;gap:9px;align-items:center}.geo-key b{width:8px;height:8px;border-radius:50%;background:#bd4e59}.geo-key span+span b{background:#f1e8e0}.map{aspect-ratio:1.3;position:relative;overflow:hidden;background:#323136;border:1px solid #575256}.map-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:37px 37px}.map svg{position:absolute;width:100%;height:100%}.map-secondary{fill:none;stroke:#8b888b;stroke-width:1.3;opacity:.45}.map-route{fill:none;stroke:#c34d57;stroke-width:4;stroke-dasharray:700;stroke-dashoffset:700;transition:stroke-dashoffset 2s ease}.map.in-view .map-route{stroke-dashoffset:0}.map circle{fill:#f2eae3;stroke:#be4d58;stroke-width:5}.map-label,.map-water,.map-coordinate{position:absolute}.map-label{background:#eee9e3;color:#282428;padding:10px 12px;line-height:1.4}.map-label small{font-size:12px;color:#8f6b6c}.map-label--city{right:14%;bottom:10%}.map-label--shore{left:20%;top:21%}.map-water{left:8%;bottom:16%;color:#858d93;transform:rotate(-18deg)}.map-coordinate{top:20px;right:20px;color:#a9a3a5;text-align:right;line-height:1.7}.process{background:#f0efeb}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.steps{border-top:1px solid #c4bfbc}.steps>div{display:grid;grid-template-columns:55px 1fr;column-gap:10px;padding:24px 0;border-bottom:1px solid #c4bfbc}.steps span{grid-row:span 2;color:#a02d37;padding-top:7px}.steps h3{font-size:24px;letter-spacing:-.04em;margin:0 0 5px}.steps p{font-size:14px;color:#706a6d;margin:0}.place{position:relative;overflow:hidden;background:#8b1e2b;color:#f6eee9;min-height:570px}.place .index{color:#e2a4aa}.place-main{position:relative;z-index:1;display:grid;grid-template-columns:1.5fr 1fr;gap:5vw;align-items:end;margin-top:70px}.place h2{font-size:clamp(72px,8vw,136px);margin:0}.place h2 i{color:#d7959b}.place-main>div{padding-bottom:12px;max-width:380px}.place-main p{color:#f0cdd0}.pill-button{background:#f2ede7;color:#2b2224;border:0;border-radius:100px;min-height:62px;padding:0 27px;font-size:14px;font-weight:800;display:inline-flex;gap:40px;align-items:center;justify-content:space-between;transition:background .2s,transform .2s}.pill-button:hover{background:#fff;transform:translateY(-3px)}.place-decor{position:absolute;bottom:-70px;right:-20px;font-size:250px;font-weight:800;letter-spacing:-.1em;color:#ffffff08;pointer-events:none}.contacts{background:#eeeae6}.contacts-layout{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.contacts h2{margin:0}.contact-items>div{padding:18px 0 25px;border-bottom:1px solid #c9c2bf;display:flex;flex-direction:column;gap:10px}.contact-items span{color:#9b2d38}.contact-items a{font-size:clamp(20px,2.3vw,33px);font-weight:700;letter-spacing:-.04em;word-break:break-word}.contact-items a:hover{color:#9b2d38}.footer{background:#282528;color:#bfb7b8;padding:55px 8.5vw 35px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-top img{filter:brightness(0) invert(1);width:184px;height:auto}.footer-bottom{border-top:1px solid #545053;margin-top:75px;padding-top:25px;font-size:12px}.footer a:hover{color:white}.dialog{border:0;padding:0;max-width:min(94vw,600px);width:100%;background:#f0efeb;color:#282326;box-shadow:0 25px 100px #0008}.dialog::backdrop{background:#171214b8;backdrop-filter:blur(5px)}.dialog-inner{padding:45px}.dialog-close{position:absolute;right:20px;top:12px;border:0;background:none;font-size:35px}.dialog h2{font-size:40px;letter-spacing:-.06em;margin:24px 0 10px}.dialog p{font-size:14px;line-height:1.6;color:#615a5d}.dialog form{display:grid;gap:18px;margin-top:28px}.dialog label{display:grid;gap:7px;font-size:13px;font-weight:700}.dialog input,.dialog textarea{width:100%;border:1px solid #bdb6b5;background:#fff;padding:12px;border-radius:0;outline-color:#9e2631}.dialog .pill-button{background:#8b1e2b;color:white;justify-self:start}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s,transform .7s}.reveal.in-view{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.map-route{stroke-dashoffset:0}}
@media(max-width:1100px){.header{padding:0 4vw}.hero-copy{padding-left:6vw}.hero h1{font-size:clamp(58px,7vw,95px)}.section{padding:90px 6vw}.equipment-showcase{grid-template-columns:1fr minmax(340px,.8fr);gap:35px}.model-copy strong{font-size:clamp(38px,4vw,58px)}.geo-layout{grid-template-columns:1fr 1.15fr}.footer{padding-left:6vw;padding-right:6vw}}
@media(max-width:760px){.header{height:72px;padding:0 6vw;justify-content:space-between}.brand{width:170px}.brand img{width:170px}.header-link{display:none}.menu-toggle{display:grid;gap:6px;padding:12px;border:0;background:none;z-index:2}.menu-toggle span{display:block;width:26px;height:2px;background:#8b1e2b;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#f0efeb;box-shadow:0 20px 30px #0002;padding:25px 6vw 35px;flex-direction:column;gap:20px;font-size:20px}.nav.open{display:flex}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:80px 6vw 30px}.hero h1{font-size:clamp(56px,12vw,92px);margin:30px 0 20px}.hero-sub{font-size:16px}.round-link{display:none}.hero-visual{min-height:420px}.machine-stage{width:min(75%,400px)}.stage-caption{bottom:20px;font-size:12px}.hero-bottom{display:none}.section{padding:75px 6vw}.section-kicker{margin-bottom:50px}.intro-content,.geo-layout,.process-layout,.place-main,.contacts-layout{grid-template-columns:1fr;gap:35px}.intro h2,.equipment h2,.geo-copy h2,.process h2,.contacts h2{font-size:clamp(42px,9vw,70px)}.intro-side{padding:0}.equipment-heading{display:block}.equipment-showcase{grid-template-columns:1fr;gap:28px;margin-top:45px}.model{grid-template-columns:38px 1fr 30px;padding:22px 5px 22px 12px}.model:hover,.model:focus-visible,.model.is-active{padding-left:12px}.model-copy strong{font-size:clamp(36px,8vw,60px)}.model-copy small{font-size:12px}.model-arrow{font-size:23px}.model-preview{min-height:0;grid-template-rows:auto auto}.model-preview__media{height:clamp(270px,82vw,340px);min-height:0;padding:22px}.model-preview__media:after{inset:12px}.model-preview__media img{width:100%;height:100%;max-height:none;object-fit:contain}.model-preview__content{padding:24px 22px 26px;grid-template-columns:1fr;gap:12px}.model-preview__content h3{font-size:clamp(34px,10vw,48px)}.model-preview__content p{max-width:none;font-size:14px;line-height:1.55}.model-preview__fact{margin-top:8px;padding-top:14px;line-height:1.45}.geo-copy>p{font-size:16px}.geo-key{margin:30px 0 10px;flex-wrap:wrap}.map{min-height:340px}.place{min-height:0}.place-main{margin-top:50px}.place h2{font-size:clamp(72px,14vw,110px)}.place-main>div{padding-bottom:30px}.place-decor{font-size:120px;bottom:-25px}.contacts-layout{gap:15px}.footer-bottom{flex-wrap:wrap;line-height:1.6}.footer-top img{width:155px}}
@media(max-width:420px){.model-preview__media{height:285px;padding:18px}.model-preview__index{top:20px;left:20px}.model-preview__content{padding:22px 18px 24px}.hero-copy{padding-top:65px}.hero h1{font-size:15vw}.hero-visual{min-height:340px}.stage-caption span:last-child{display:none}.geo-key{font-size:12px}.map{min-height:300px}.map-label{font-size:12px;padding:7px}.map-coordinate{font-size:12px}.dialog-inner{padding:35px 25px}.dialog h2{font-size:34px}}

/* Mobile equipment accordion: keep the selected model and its preview together */
@media(max-width:760px){
  .equipment-showcase{display:block;margin-top:45px}
  .model-list{border-top:1px solid #aaa4a3}
  .model{grid-template-columns:34px minmax(0,1fr) 24px;gap:10px;padding:20px 4px}
  .model:hover,.model:focus-visible,.model.is-active{padding-left:8px}
  .model-copy{gap:5px;min-width:0}
  .model-copy strong{font-size:clamp(32px,8.2vw,48px);line-height:1}
  .model-copy small{font-size:12px;line-height:1.35;letter-spacing:.1em}
  .model-arrow{font-size:20px}
  .model-list>.model-preview{width:100%;min-height:0;margin:0 0 18px;background:#29272a;grid-template-rows:auto auto}
  .model-list>.model-preview .model-preview__media{min-height:0;height:clamp(210px,62vw,280px);padding:18px 18px 10px;background:#e2e1dc}
  .model-list>.model-preview .model-preview__media:after{inset:10px}
  .model-list>.model-preview .model-preview__media img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
  .model-list>.model-preview .model-preview__index{top:16px;left:18px;font-size:12px}
  .model-list>.model-preview .model-preview__content{padding:20px 18px 22px;grid-template-columns:1fr;gap:10px}
  .model-list>.model-preview .model-preview__kicker{font-size:12px}
  .model-list>.model-preview .model-preview__content h3{font-size:clamp(34px,10vw,48px)}
  .model-list>.model-preview .model-preview__content p{max-width:none;font-size:13px;line-height:1.5}
  .model-list>.model-preview .model-preview__fact{margin-top:6px;padding-top:12px;font-size:12px;line-height:1.45}
}
@media(max-width:420px){
  .model{grid-template-columns:30px minmax(0,1fr) 20px;padding:18px 2px 18px 8px}
  .model-copy strong{font-size:clamp(30px,8vw,40px)}
  .model-list>.model-preview .model-preview__media{height:220px;padding:16px 12px 8px}
  .model-list>.model-preview .model-preview__content{padding:18px 16px 20px}
}


/* v7 — accepted v5 hero architecture + clean local UNICUM Rosso */
.machine-stage{
  width:min(70%,470px);
  height:78%;
  aspect-ratio:auto;
}
.machine-stage .hero-machine{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center bottom;
  mix-blend-mode:normal;
  filter:none;
  mask-image:none;
  transform:none;
}
.stage-caption{
  color:#d3c4c3;
}
@media(max-width:1100px){
  .machine-stage{
    width:min(72%,430px);
    height:76%;
  }
}
@media(max-width:760px){
  .hero-visual{
    min-height:430px;
  }
  .machine-stage{
    width:min(62vw,290px);
    height:350px;
  }
  .machine-stage .hero-machine{
    max-height:350px;
  }
  .stage-caption{
    left:6vw;
    right:6vw;
  }
}
@media(max-width:420px){
  .hero-visual{
    min-height:390px;
  }
  .machine-stage{
    width:min(64vw,260px);
    height:315px;
  }
  .machine-stage .hero-machine{
    max-height:315px;
  }
}


/* v8 — recognizable Gulf / Sestroretsk geography diagram */
.map--gulf{
  aspect-ratio:1.46;
  min-height:430px;
  background:#25262a;
  border-color:#4d4a4e;
}
.map--gulf .map-grid{
  opacity:.55;
  background-size:42px 42px;
}
.gulf-map{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.map-land{
  fill:#36353a;
}
.map-coast{
  fill:none;
  stroke:#918b8e;
  stroke-width:2;
  opacity:.8;
}
.map--gulf .map-secondary{
  fill:none;
  stroke:#777277;
  stroke-width:1.4;
  opacity:.42;
}
.map-service-zone{
  fill:none;
  stroke:url(#serviceGlow);
  stroke-width:28;
  stroke-linecap:round;
  opacity:.95;
}
.map--gulf .map-route{
  fill:none;
  stroke:#c34d57;
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:760;
  stroke-dashoffset:760;
  transition:stroke-dashoffset 2.2s cubic-bezier(.22,.8,.25,1);
}
.map--gulf.in-view .map-route{
  stroke-dashoffset:0;
}
.map-point-ring{
  fill:#c34d5712;
  stroke:#c34d57;
  stroke-width:2;
}
.map-point-core{
  fill:#f0e7df;
  stroke:#c34d57;
  stroke-width:3;
}
.map--gulf .map-label{
  z-index:2;
  padding:10px 12px;
  border:1px solid #d8d0ca1f;
  background:#eee9e3;
  box-shadow:0 8px 28px #0002;
}
.map--gulf .map-label--city{
  right:11%;
  bottom:7%;
}
.map--gulf .map-label--shore{
  left:4.5%;
  top:20%;
}
.map--gulf .map-water{
  left:17%;
  bottom:18%;
  transform:rotate(-16deg);
  color:#8f949a;
  line-height:1.35;
}
.map--gulf .map-coordinate{
  top:20px;
  right:20px;
  color:#a39da0;
}
.map-direction{
  position:absolute;
  left:22px;
  bottom:20px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.13em;
  color:#6f6b70;
}

@media(max-width:760px){
  .map--gulf{
    aspect-ratio:1.1;
    min-height:360px;
  }
  .map--gulf .map-label{
    padding:7px 9px;
    font-size:12px;
  }
  .map--gulf .map-label small{
    font-size:12px;
  }
  .map--gulf .map-label--city{
    right:5%;
    bottom:6%;
  }
  .map--gulf .map-label--shore{
    left:3%;
    top:17%;
  }
  .map--gulf .map-water{
    left:11%;
    bottom:22%;
    font-size:12px;
  }
  .map--gulf .map-coordinate{
    top:12px;
    right:12px;
    font-size:12px;
  }
  .map-direction{
    left:12px;
    bottom:12px;
    font-size:12px;
  }
}

@media(max-width:420px){
  .map--gulf{
    min-height:320px;
  }
}


/* v17 — real work-area block instead of synthetic map */
.work-area{
  background:#29272a;
  color:#f0efeb;
}
.work-area .rule{
  background:#555054;
}
.work-area .index{
  color:#dc8991;
}
.work-area__layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:clamp(50px,7vw,120px);
  align-items:start;
}
.work-area__copy h2{
  font-size:clamp(52px,5.4vw,96px);
  line-height:1.03;
  letter-spacing:-.067em;
  margin:0 0 42px;
}
.work-area__copy h2 i{
  font-style:normal;
  color:#b93643;
}
.work-area__lead{
  max-width:520px;
  margin:0;
  color:#c0b8ba;
  font-size:18px;
  line-height:1.72;
}
.work-area__facts{
  margin-top:58px;
  border-top:1px solid #555054;
}
.work-area__facts>div{
  display:grid;
  grid-template-columns:48px minmax(150px,.8fr) 1.2fr;
  gap:16px;
  align-items:start;
  padding:20px 0;
  border-bottom:1px solid #555054;
}
.work-area__facts span{
  color:#d36b75;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  padding-top:4px;
}
.work-area__facts strong{
  font-size:17px;
  letter-spacing:-.02em;
}
.work-area__facts p{
  margin:0;
  color:#9f979a;
  font-size:13px;
  line-height:1.55;
}

.work-area__photo{
  margin:0;
}
.work-area__image-wrap{
  position:relative;
  overflow:hidden;
  background:#211f22;
  aspect-ratio:4/4.45;
}
.work-area__image-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  filter:saturate(.92) contrast(1.02);
  transition:transform .7s ease;
}
.work-area__photo:hover .work-area__image-wrap img{
  transform:scale(1.015);
}
.work-area__badge{
  position:absolute;
  top:18px;
  left:18px;
  padding:10px 13px;
  background:#8b1e2b;
  color:#f5ece7;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
}
.work-area__photo figcaption{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:14px;
  color:#aaa2a5;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
}

@media(max-width:1100px){
  .work-area__layout{
    grid-template-columns:1fr 1fr;
    gap:45px;
  }
  .work-area__facts>div{
    grid-template-columns:40px 1fr;
  }
  .work-area__facts p{
    grid-column:2;
  }
}

@media(max-width:760px){
  .work-area__layout{
    grid-template-columns:1fr;
    gap:42px;
  }
  .work-area__copy h2{
    font-size:clamp(48px,11vw,74px);
    margin-bottom:28px;
  }
  .work-area__lead{
    font-size:16px;
  }
  .work-area__facts{
    margin-top:36px;
  }
  .work-area__facts>div{
    grid-template-columns:34px 1fr;
    padding:17px 0;
  }
  .work-area__image-wrap{
    aspect-ratio:4/4.65;
  }
  .work-area__photo figcaption{
    font-size:12px;
  }
}


/* v18 — more specific real-world process block */
.process-layout{
  align-items:start;
}
.process-intro{
  position:sticky;
  top:40px;
}
.process-lead{
  max-width:460px;
  margin:30px 0 0;
  color:#6d6669;
  font-size:17px;
  line-height:1.7;
}
.process-steps{
  border-top:1px solid #c4bfbc;
}
.process-step{
  position:relative;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) auto!important;
  gap:18px;
  align-items:start;
  padding:26px 0!important;
  border-bottom:1px solid #c4bfbc;
}
.process-step__num{
  grid-row:auto!important;
  color:#a02d37!important;
  padding-top:5px!important;
}
.process-step h3{
  margin:0 0 7px;
  font-size:25px;
}
.process-step p{
  max-width:500px;
  margin:0;
  color:#706a6d;
  font-size:14px;
  line-height:1.6;
}
.process-step__state{
  align-self:start;
  justify-self:end;
  color:#9b9295!important;
  font-size:12px!important;
  letter-spacing:.13em!important;
  white-space:nowrap;
  padding-top:8px!important;
}
.process-step::after{
  content:'';
  position:absolute;
  left:52px;
  right:0;
  bottom:-1px;
  height:1px;
  background:#a02d37;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .35s ease;
}
.process-step:hover::after{
  transform:scaleX(1);
}

@media(max-width:760px){
  .process-intro{
    position:static;
  }
  .process-lead{
    margin-top:20px;
    font-size:15px;
  }
  .process-step{
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:12px;
    padding:22px 0!important;
  }
  .process-step__state{
    grid-column:2;
    justify-self:start;
    padding-top:8px!important;
  }
  .process-step::after{
    left:36px;
  }
}


/* v20 — horizontal story made of whole sections */
.horizontal-story{
  position:relative;
  height:270vh;
}
.horizontal-story__sticky{
  position:sticky;
  top:0;
  height:100vh;
  overflow:hidden;
}
.horizontal-story__track{
  display:flex;
  width:max-content;
  height:100%;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.horizontal-story .story-panel{
  flex:0 0 100vw;
  width:100vw;
  height:100vh;
  min-height:0;
  overflow:hidden;
}

/* Compact the existing layouts so every full section fits into one viewport. */
.horizontal-story .story-panel.section{
  padding:54px 6vw 58px;
}
.horizontal-story .story-panel .section-kicker{
  margin-bottom:32px;
}
.horizontal-story .story-panel .intro-content{
  align-items:center;
}
.horizontal-story .story-panel .intro h2,
.horizontal-story .story-panel.equipment h2,
.horizontal-story .story-panel .work-area__copy h2,
.horizontal-story .story-panel.process h2{
  font-size:clamp(46px,4.5vw,76px);
}
.horizontal-story .story-panel .intro-side p,
.horizontal-story .story-panel .work-area__lead{
  font-size:15px;
}

/* Equipment panel */
.horizontal-story .equipment-heading{
  align-items:end;
}
.horizontal-story .equipment-heading>p{
  font-size:14px;
}
.horizontal-story .equipment-showcase{
  margin-top:28px;
  grid-template-columns:minmax(0,1.02fr) minmax(330px,.9fr);
  gap:38px;
}
.horizontal-story .model{
  padding-top:15px;
  padding-bottom:15px;
}
.horizontal-story .model-copy strong{
  font-size:clamp(34px,3.5vw,54px);
}
.horizontal-story .model-preview{
  min-height:400px;
  grid-template-rows:minmax(220px,1fr) auto;
}
.horizontal-story .model-preview__media{
  min-height:220px;
  padding:24px;
}
.horizontal-story .model-preview__media img{
  max-height:275px;
}
.horizontal-story .model-preview__content{
  padding:22px 26px 24px;
}
.horizontal-story .model-preview__content h3{
  font-size:clamp(34px,3.5vw,52px);
}

/* Real work area panel */
.horizontal-story .work-area__layout{
  grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
  gap:44px;
  align-items:center;
}
.horizontal-story .work-area__copy h2{
  margin-bottom:22px;
}
.horizontal-story .work-area__lead{
  line-height:1.58;
}
.horizontal-story .work-area__facts{
  margin-top:30px;
}
.horizontal-story .work-area__facts>div{
  padding:11px 0;
}
.horizontal-story .work-area__image-wrap{
  height:min(62vh,560px);
  aspect-ratio:auto;
}

/* Process panel */
.horizontal-story .process-layout{
  gap:6vw;
  align-items:center;
}
.horizontal-story .process-intro{
  position:static;
}
.horizontal-story .process-lead{
  margin-top:20px;
  font-size:15px;
}
.horizontal-story .process-step{
  padding:16px 0!important;
}
.horizontal-story .process-step h3{
  font-size:21px;
}
.horizontal-story .process-step p{
  font-size:13px;
  line-height:1.45;
}

/* Small persistent progress indicator for the horizontal chapter. */
.horizontal-story__ui{
  position:absolute;
  left:6vw;
  right:6vw;
  bottom:18px;
  z-index:20;
  pointer-events:none;
}
.horizontal-story__meta{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-bottom:9px;
  color:#938c8f;
  font-size:12px;
  font-weight:800;
  letter-spacing:.13em;
}
.horizontal-story__progress{
  height:1px;
  background:#7f77793d;
  overflow:hidden;
}
.horizontal-story__progress span{
  display:block;
  width:100%;
  height:100%;
  background:#9e2631;
  transform:scaleX(0);
  transform-origin:left;
  will-change:transform;
}

/* Floating back-to-top */
.back-to-top{
  position:fixed;
  right:28px;
  bottom:28px;
  z-index:40;
  width:54px;
  height:54px;
  border:1px solid #ffffff33;
  border-radius:50%;
  background:#282528e8;
  color:#f4efea;
  display:grid;
  place-items:center;
  font-size:22px;
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:opacity .25s ease,transform .25s ease,background .25s ease,border-color .25s ease;
  box-shadow:0 10px 30px #00000026;
  backdrop-filter:blur(8px);
}
.back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  transform:none;
}
.back-to-top:hover{
  background:#8b1e2b;
  border-color:#8b1e2b;
}
.back-to-top:focus-visible{
  outline:2px solid #d46e77;
  outline-offset:3px;
}

@media(max-width:1100px){
  .horizontal-story .story-panel.section{
    padding-left:5vw;
    padding-right:5vw;
  }
  .horizontal-story .equipment-showcase{
    grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);
    gap:28px;
  }
  .horizontal-story .work-area__layout{
    gap:30px;
  }
}

/* Tablet/mobile: restore the normal vertical site. */
@media(max-width:860px){
  .horizontal-story{
    height:auto;
  }
  .horizontal-story__sticky{
    position:static;
    height:auto;
    overflow:visible;
  }
  .horizontal-story__track{
    display:block;
    width:auto;
    height:auto;
    transform:none!important;
  }
  .horizontal-story .story-panel{
    width:auto;
    height:auto;
    min-height:0;
    overflow:visible;
  }
  .horizontal-story .story-panel.section{
    padding:75px 6vw;
  }
  .horizontal-story .story-panel .section-kicker{
    margin-bottom:50px;
  }
  .horizontal-story .equipment-showcase{
    margin-top:45px;
    grid-template-columns:1fr;
    gap:28px;
  }
  .horizontal-story .model{
    padding-top:20px;
    padding-bottom:20px;
  }
  .horizontal-story .model-preview{
    min-height:0;
  }
  .horizontal-story .work-area__layout{
    grid-template-columns:1fr;
    gap:42px;
  }
  .horizontal-story .work-area__image-wrap{
    height:auto;
    aspect-ratio:4/4.65;
  }
  .horizontal-story .process-layout{
    grid-template-columns:1fr;
    gap:35px;
  }
  .horizontal-story__ui{
    display:none;
  }
  .back-to-top{
    width:48px;
    height:48px;
    right:18px;
    bottom:18px;
  }
}

@media(prefers-reduced-motion:reduce){
  .horizontal-story{
    height:auto;
  }
  .horizontal-story__sticky{
    position:static;
    height:auto;
    overflow:visible;
  }
  .horizontal-story__track{
    display:block;
    width:auto;
    transform:none!important;
  }
  .horizontal-story .story-panel{
    width:auto;
    height:auto;
    overflow:visible;
  }
  .horizontal-story__ui{
    display:none;
  }
}


/* v21 — richer first panel */
.horizontal-story .story-panel .intro-content{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.7fr);
  gap:4vw;
  align-items:start;
}
.horizontal-story .intro-main{
  display:flex;
  flex-direction:column;
  min-height:calc(100vh - 230px);
  justify-content:space-between;
}
.horizontal-story .intro-main h2{
  max-width:900px;
}
.horizontal-story .intro-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}
.horizontal-story .intro-facts>div{
  padding:18px 18px 16px;
  border:1px solid #c9c4c0;
  background:#f7f5f1;
  min-height:132px;
}
.horizontal-story .intro-facts span{
  display:block;
  margin-bottom:10px;
  color:#aa2e38;
  font-size:12px;
  font-weight:800;
  letter-spacing:.13em;
}
.horizontal-story .intro-facts strong{
  display:block;
  margin-bottom:9px;
  font-size:20px;
  line-height:1.1;
  letter-spacing:-.03em;
}
.horizontal-story .intro-facts p{
  margin:0;
  color:#736d70;
  font-size:12px;
  line-height:1.45;
}
.horizontal-story .story-panel .intro-side{
  align-self:start;
  padding-top:66px;
}
.horizontal-story .story-panel .intro-side p{
  font-size:15px;
  line-height:1.78;
}

/* v21 — better structured equipment panel */
.horizontal-story .equipment-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:30px;
  align-items:end;
}
.horizontal-story .equipment-heading__copy{
  max-width:720px;
}
.horizontal-story .equipment-heading__copy p{
  max-width:470px;
  margin:18px 0 0;
  color:#7a7376;
  font-size:15px;
  line-height:1.6;
}
.horizontal-story .equipment-heading__note{
  align-self:center;
  padding:18px 0 18px 22px;
  border-left:1px solid #c9c4c0;
}
.horizontal-story .equipment-heading__note span{
  display:block;
  margin-bottom:10px;
  color:#aa2e38;
  font-size:12px;
  font-weight:800;
  letter-spacing:.13em;
}
.horizontal-story .equipment-heading__note p{
  margin:0;
  color:#7a7376;
  font-size:13px;
  line-height:1.55;
}
.horizontal-story .equipment-showcase{
  align-items:start;
}
.horizontal-story .model-list{
  padding-top:8px;
}
.horizontal-story .model-preview{
  min-height:470px;
  grid-template-rows:minmax(270px,1fr) auto;
}
.horizontal-story .model-preview__media{
  min-height:270px;
  padding:18px 24px 10px;
}
.horizontal-story .model-preview__media img{
  max-height:320px;
}
.horizontal-story .model-preview__content{
  padding:22px 26px 20px;
}
.horizontal-story .model-preview__content p{
  max-width:420px;
  font-size:14px;
  line-height:1.5;
}

/* v21 — full real photo on third panel */
.horizontal-story .work-area__layout{
  grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);
}
.horizontal-story .work-area__image-wrap--full{
  height:min(68vh,620px);
  background:#1f1d20;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
}
.horizontal-story .work-area__image-wrap--full img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  filter:none;
}
.horizontal-story .work-area__photo figcaption{
  padding-top:10px;
}
.horizontal-story .work-area__copy{
  padding-bottom:18px;
}

@media(max-width:1100px){
  .horizontal-story .story-panel .intro-content{
    grid-template-columns:minmax(0,1fr) 320px;
    gap:28px;
  }
  .horizontal-story .intro-facts{
    gap:10px;
  }
  .horizontal-story .intro-facts>div{
    padding:15px 14px 14px;
  }
  .horizontal-story .equipment-heading{
    grid-template-columns:minmax(0,1fr) 280px;
  }
  .horizontal-story .work-area__layout{
    grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
  }
}

@media(max-width:860px){
  .horizontal-story .story-panel .intro-content{
    display:block;
  }
  .horizontal-story .intro-main{
    min-height:0;
  }
  .horizontal-story .intro-facts{
    grid-template-columns:1fr;
    margin-top:28px;
  }
  .horizontal-story .story-panel .intro-side{
    padding-top:26px;
  }
  .horizontal-story .equipment-heading{
    grid-template-columns:1fr;
    gap:16px;
  }
  .horizontal-story .equipment-heading__note{
    padding:0;
    border-left:none;
  }
  .horizontal-story .work-area__layout{
    grid-template-columns:1fr;
  }
  .horizontal-story .work-area__image-wrap--full{
    height:auto;
    min-height:0;
    aspect-ratio:auto;
    padding:12px;
  }
  .horizontal-story .work-area__image-wrap--full img{
    width:100%;
    height:auto;
  }
}


/* v22 — footer legal links + policy dialogs */
.footer-legal{
  display:flex;
  align-items:center;
  gap:22px;
}
.footer-legal button,
.inline-legal-link{
  appearance:none;
  border:0;
  padding:0;
  background:none;
  color:inherit;
  font:inherit;
  cursor:pointer;
}
.footer-legal button{
  color:#bfb7b8;
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:color .2s ease;
}
.footer-legal button:hover{
  color:#fff;
}
.form-consent{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:flex-start;
  gap:10px!important;
  color:#6c6467;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.45;
}
.form-consent input{
  width:16px!important;
  height:16px;
  margin:1px 0 0;
  flex:0 0 auto;
}
.inline-legal-link{
  color:#8b1e2b;
  text-decoration:underline;
  text-underline-offset:2px;
}
.inline-legal-link:hover{
  text-decoration:none;
}
.legal-dialog{
  max-width:min(94vw,720px);
}
.legal-dialog .dialog-inner{
  max-height:min(86vh,820px);
  overflow:auto;
}
.legal-copy{
  margin-top:28px;
  color:#5e575a;
}
.legal-copy h3{
  margin:26px 0 8px;
  color:#2b2628;
  font-size:16px;
  letter-spacing:-.02em;
}
.legal-copy p{
  margin:0 0 14px;
  font-size:14px;
  line-height:1.7;
}
.legal-copy a{
  color:#8b1e2b;
  text-decoration:underline;
  text-underline-offset:2px;
}

@media(max-width:760px){
  .footer-top{
    align-items:flex-start;
  }
  .footer-legal{
    flex-direction:column;
    align-items:flex-end;
    gap:10px;
  }
  .footer-bottom{
    gap:14px;
  }
  .legal-dialog .dialog-inner{
    padding:36px 24px;
  }
}


/* v23 — switch header to mobile navigation earlier */
@media(max-width:860px){
  .header{
    height:72px;
    padding:0 6vw;
    justify-content:space-between;
    gap:18px;
  }

  .brand{
    width:170px;
    flex:0 0 170px;
  }

  .brand img{
    width:170px;
    height:auto;
  }

  .header-link{
    display:none;
  }

  .menu-toggle{
    display:grid;
    gap:6px;
    padding:12px;
    border:0;
    background:none;
    z-index:12;
    flex:0 0 auto;
  }

  .menu-toggle span{
    display:block;
    width:26px;
    height:2px;
    background:#8b1e2b;
    transition:transform .2s;
  }

  .menu-toggle[aria-expanded=true] span:first-child{
    transform:translateY(4px) rotate(45deg);
  }

  .menu-toggle[aria-expanded=true] span:last-child{
    transform:translateY(-4px) rotate(-45deg);
  }

  .nav{
    display:none;
    position:absolute;
    top:72px;
    left:0;
    right:0;
    margin:0;
    background:#f0efeb;
    box-shadow:0 20px 30px #0002;
    padding:25px 6vw 35px;
    flex-direction:column;
    gap:20px;
    font-size:20px;
  }

  .nav.open{
    display:flex;
  }

  .nav a{
    white-space:nowrap;
  }
}


/* v24 — header switches to mobile earlier on tablet widths */
@media(max-width:1024px){
  .header{
    height:72px;
    padding:0 6vw;
    justify-content:space-between;
    gap:18px;
  }

  .brand{
    width:170px;
    flex:0 0 170px;
  }

  .brand img{
    width:170px;
    height:auto;
  }

  .header-link{
    display:none;
  }

  .menu-toggle{
    display:grid;
    gap:6px;
    padding:12px;
    border:0;
    background:none;
    z-index:12;
    flex:0 0 auto;
  }

  .menu-toggle span{
    display:block;
    width:26px;
    height:2px;
    background:#8b1e2b;
    transition:transform .2s;
  }

  .menu-toggle[aria-expanded=true] span:first-child{
    transform:translateY(4px) rotate(45deg);
  }

  .menu-toggle[aria-expanded=true] span:last-child{
    transform:translateY(-4px) rotate(-45deg);
  }

  .nav{
    display:none;
    position:absolute;
    top:72px;
    left:0;
    right:0;
    margin:0;
    background:#f0efeb;
    box-shadow:0 20px 30px #0002;
    padding:25px 6vw 35px;
    flex-direction:column;
    gap:20px;
    font-size:20px;
  }

  .nav.open{
    display:flex;
  }

  .nav a{
    white-space:nowrap;
  }
}
/* v25 — richer mobile navigation */
.nav-main{
  display:flex;
  align-items:center;
  gap:clamp(18px,2.5vw,44px);
}
.nav-main>a>span{
  display:none;
}
.nav-mobile-extra{
  display:none;
}

@media(max-width:1024px){
  .nav{
    min-height:calc(100svh - 72px);
    padding:0 6vw 28px;
    box-shadow:0 22px 40px #0000001f;
    border-top:1px solid #d5d0cc;
    overflow:auto;
  }

  .nav.open{
    display:flex;
    flex-direction:column;
  }

  .nav-main{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    width:100%;
    border-bottom:1px solid #d5d0cc;
  }

  .nav-main>a{
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    align-items:center;
    min-height:62px;
    border-bottom:1px solid #ded9d5;
    font-size:clamp(24px,4vw,34px);
    font-weight:700;
    letter-spacing:-.035em;
    transition:color .2s ease, padding-left .2s ease;
  }

  .nav-main>a:last-child{
    border-bottom:0;
  }

  .nav-main>a::after{
    content:'↗';
    justify-self:end;
    color:#8b1e2b;
    font-size:18px;
    font-weight:400;
  }

  .nav-main>a>span{
    display:block;
    color:#9f9799;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
  }

  .nav-main>a:hover,
  .nav-main>a:focus-visible{
    color:#8b1e2b;
    padding-left:8px;
    outline:none;
  }

  .nav-mobile-extra{
    display:flex;
    flex-direction:column;
    gap:24px;
    margin-top:auto;
    padding-top:28px;
    width:100%;
  }

  .nav-mobile-extra__meta{
    display:flex;
    justify-content:space-between;
    gap:20px;
    color:#8f888a;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
  }

  .nav-mobile-extra__contacts{
    display:grid;
    gap:10px;
  }

  .nav-mobile-extra__contacts a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    color:#2c282a;
    font-size:17px;
    font-weight:700;
    border-bottom:1px solid #d5d0cc;
    padding:0 0 10px;
  }

  .nav-mobile-extra__contacts a span{
    color:#8b1e2b;
    font-size:16px;
  }

  .nav-mobile-extra__footer{
    display:flex;
    justify-content:space-between;
    gap:20px;
    color:#9d9598;
    font-size:12px;
    font-weight:800;
    letter-spacing:.11em;
    line-height:1.5;
  }
}

@media(max-width:560px){
  .nav-main>a{
    min-height:58px;
    font-size:26px;
  }

  .nav-mobile-extra__meta,
  .nav-mobile-extra__footer{
    flex-direction:column;
    gap:7px;
  }

  .nav-mobile-extra__contacts a{
    font-size:16px;
  }
}


/* v26 — final technical polish */
html.menu-open,
body.menu-open{
  overflow:hidden;
}

@media(max-width:1024px){
  .nav{
    overscroll-behavior:contain;
  }
}


/* v27 — local UNICUM images + disabled proposal submit */
.model-preview__media{
  background:#e2e1dc;
}

.pill-button:disabled,
.pill-button:disabled:hover{
  background:#d8d2ce;
  color:#91898c;
  cursor:not-allowed;
  transform:none;
  opacity:.7;
}


/* v28 — cleaner equipment product shots */
.model-preview__media{
  background:#e2e1dc;
  padding:14px 20px 8px;
}

.model-preview__media img{
  width:auto;
  height:auto;
  max-width:92%;
  max-height:345px;
  object-fit:contain;
  filter:none;
  mix-blend-mode:normal;
}

.horizontal-story .model-preview__media{
  min-height:270px;
  padding:12px 18px 6px;
}

.horizontal-story .model-preview__media img{
  max-width:94%;
  max-height:335px;
}

@media(max-width:860px){
  .model-preview__media{
    padding:18px;
  }

  .model-preview__media img{
    max-width:100%;
    max-height:320px;
  }
}


/* v29 — equipment preview fits full machine and sits higher */
.horizontal-story .equipment-showcase{
  margin-top:10px;
  align-items:start;
}

.horizontal-story .model-list{
  align-self:start;
}

.horizontal-story .model-preview{
  min-height:430px;
  grid-template-rows:minmax(250px,1fr) auto;
  align-self:start;
}

.horizontal-story .model-preview__media{
  min-height:250px;
  padding:16px 20px 0;
  place-items:end center;
}

.horizontal-story .model-preview__media img{
  width:auto;
  height:auto;
  max-width:88%;
  max-height:248px;
  align-self:end;
  justify-self:center;
}

.horizontal-story .model-preview__index{
  top:16px;
  left:20px;
}


/* v30 — lift the whole equipment panel in horizontal desktop */
.horizontal-story .story-panel.section.equipment{
  padding-top:42px;
  padding-bottom:34px;
}

.horizontal-story .story-panel.section.equipment .section-kicker{
  margin-bottom:22px;
}

.horizontal-story .story-panel.section.equipment .equipment-heading{
  align-items:start;
}

.horizontal-story .story-panel.section.equipment .equipment-heading__copy p{
  margin-top:12px;
}

.horizontal-story .story-panel.section.equipment .equipment-heading__note{
  align-self:start;
  margin-top:4px;
  padding-top:10px;
  padding-bottom:10px;
}

.horizontal-story .story-panel.section.equipment .equipment-showcase{
  margin-top:8px;
  gap:30px;
  align-items:start;
}

.horizontal-story .story-panel.section.equipment .model-list{
  padding-top:0;
}

.horizontal-story .story-panel.section.equipment .model{
  padding-top:13px;
  padding-bottom:13px;
}

.horizontal-story .story-panel.section.equipment .model-preview{
  min-height:356px;
  grid-template-rows:minmax(190px,1fr) auto;
}

.horizontal-story .story-panel.section.equipment .model-preview__media{
  min-height:190px;
  padding:12px 20px 0;
  place-items:end center;
}

.horizontal-story .story-panel.section.equipment .model-preview__media img{
  max-width:86%;
  max-height:206px;
  align-self:end;
}

.horizontal-story .story-panel.section.equipment .model-preview__index{
  top:12px;
  left:18px;
}

.horizontal-story .story-panel.section.equipment .model-preview__content{
  padding:18px 24px 16px;
  gap:8px 24px;
}

.horizontal-story .story-panel.section.equipment .model-preview__content h3{
  font-size:clamp(28px,3vw,46px);
}

.horizontal-story .story-panel.section.equipment .model-preview__content p{
  font-size:13px;
  line-height:1.45;
}

.horizontal-story .story-panel.section.equipment .model-preview__fact{
  margin-top:8px;
  padding-top:12px;
}


/* v30b — move equipment note under model list, keep preview on the right */
.horizontal-story .equipment-showcase{
  grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr);
  grid-template-areas:
    "list preview"
    "note preview";
  align-items:start;
}
.horizontal-story .model-list{grid-area:list;}
.horizontal-story .equipment-heading__note--moved{
  grid-area:note;
  align-self:start;
  max-width:420px;
  margin-top:28px;
  padding:18px 0 0 22px;
  border-left:1px solid #c9c4c0;
}
.horizontal-story .model-preview{
  grid-area:preview;
  align-self:start;
}
@media (max-width: 991px){
  .horizontal-story .equipment-showcase{
    grid-template-areas:
      "list"
      "note"
      "preview";
    grid-template-columns:1fr;
  }
  .horizontal-story .equipment-heading__note--moved{
    max-width:none;
    margin-top:18px;
  }
}


/* v30d — only stretch upper equipment preview; keep dark lower panel unchanged */
.horizontal-story .equipment-showcase{
  align-items:stretch;
}

.horizontal-story .model-preview{
  grid-area:preview;
  align-self:stretch;
  height:100%;
  min-height:0;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
}

/* The dark content block remains unchanged; only media absorbs extra height. */
.horizontal-story .model-preview__media{
  min-height:0;
  height:auto;
  padding:20px 24px 0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  background:#e2e1dc;
}

/* Remove the decorative inner frame. */
.horizontal-story .model-preview__media:after{
  display:none;
}

/* Red model index stays at the top of the enlarged media area. */
.horizontal-story .model-preview__index{
  top:18px;
  left:22px;
}

/* Make the machine materially larger but keep the whole product visible. */
.horizontal-story .model-preview__media img{
  width:auto;
  height:auto;
  max-width:90%;
  max-height:calc(100% - 42px);
  object-fit:contain;
  align-self:flex-end;
  mix-blend-mode:normal;
}

/* Mobile/tablet: no inner frame either; keep natural vertical layout. */
@media(max-width:991px){
  .horizontal-story .model-preview{
    height:auto;
    min-height:0;
    align-self:auto;
  }

  .horizontal-story .model-preview__media{
    min-height:300px;
    height:auto;
    padding:22px 18px 0;
  }

  .horizontal-story .model-preview__media:after{
    display:none;
  }

  .horizontal-story .model-preview__media img{
    max-width:92%;
    max-height:360px;
  }
}


/* v30e — exact equipment workfix:
   preview spans full left content height; dark bottom stays unchanged */

/* No decorative frame around the product image anywhere, desktop or mobile. */
.model-preview__media,
.horizontal-story .model-preview__media{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.model-preview__media:after,
.model-preview__media::after,
.horizontal-story .model-preview__media:after,
.horizontal-story .model-preview__media::after{
  content:none!important;
  display:none!important;
  border:0!important;
}

@media (min-width:992px){
  /* Turn the equipment panel itself into the two-column layout.
     The existing showcase wrapper becomes transparent to the grid. */
  .horizontal-story .story-panel.section.equipment{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
    grid-template-rows:auto auto auto 1fr;
    column-gap:clamp(30px,4vw,58px);
    row-gap:0;
    align-items:start;
  }

  .horizontal-story .story-panel.section.equipment>.section-kicker{
    grid-column:1/-1;
    grid-row:1;
  }

  .horizontal-story .story-panel.section.equipment>.equipment-heading{
    grid-column:1;
    grid-row:2;
    display:block;
    min-width:0;
  }

  .horizontal-story .story-panel.section.equipment>.equipment-showcase{
    display:contents;
  }

  .horizontal-story .story-panel.section.equipment .model-list{
    grid-column:1;
    grid-row:3;
    margin-top:10px;
    padding-top:0;
  }

  .horizontal-story .story-panel.section.equipment .equipment-heading__note--moved{
    grid-column:1;
    grid-row:4;
    align-self:end;
    margin:18px 0 2px;
    max-width:430px;
  }

  /* The complete right card spans title + list + note height. */
  .horizontal-story .story-panel.section.equipment .model-preview{
    grid-column:2;
    grid-row:2/5;
    width:100%;
    height:100%;
    min-height:0;
    align-self:stretch;
    display:grid;
    grid-template-rows:minmax(0,1fr) auto;
    background:#29272a;
  }

  /* Only the light top absorbs the added height. */
  .horizontal-story .story-panel.section.equipment .model-preview__media{
    min-height:0;
    height:100%;
    padding:34px 22px 0;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    background:#e2e1dc;
    overflow:hidden;
  }

  .horizontal-story .story-panel.section.equipment .model-preview__index{
    top:16px;
    left:18px;
  }

  /* Force a materially larger product instead of merely raising max-height. */
  .horizontal-story .story-panel.section.equipment .model-preview__media img{
    width:auto!important;
    height:clamp(330px,52vh,520px)!important;
    max-width:88%!important;
    max-height:calc(100% - 44px)!important;
    object-fit:contain;
    align-self:flex-end;
    mix-blend-mode:normal;
  }

  /* Do not alter the accepted dark lower panel. */
  .horizontal-story .story-panel.section.equipment .model-preview__content{
    height:auto;
  }
}

/* Mobile/tablet: remove the frame too and make the product noticeably larger,
   but keep the existing vertical flow. */
@media (max-width:991px){
  .model-preview__media,
  .horizontal-story .model-preview__media{
    padding:20px 14px 0;
  }

  .model-preview__media img,
  .horizontal-story .model-preview__media img{
    width:auto!important;
    height:auto!important;
    max-width:96%!important;
    max-height:440px!important;
    object-fit:contain;
    mix-blend-mode:normal;
  }
}


/* v30f — polish ONLY the machine area in the accepted equipment layout */

/* Remove every visual rectangle/frame from the light preview area. */
.horizontal-story .story-panel.section.equipment .model-preview__media,
.model-preview__media{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.horizontal-story .story-panel.section.equipment .model-preview__media::before,
.horizontal-story .story-panel.section.equipment .model-preview__media::after,
.model-preview__media::before,
.model-preview__media::after{
  content:none!important;
  display:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Desktop: keep the accepted stretched right block and dark bottom untouched.
   Give the product real breathing room above the dark panel. */
@media (min-width:992px){
  .horizontal-story .story-panel.section.equipment .model-preview__media{
    padding:42px 28px 54px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  .horizontal-story .story-panel.section.equipment .model-preview__media img{
    width:auto!important;
    height:auto!important;
    max-width:86%!important;
    object-fit:contain!important;
    object-position:center center!important;
    mix-blend-mode:normal!important;
    margin:0!important;
  }

  /* Rosso: taller than before, lifted off the black information panel. */
  .horizontal-story .model-preview[data-model="rosso"] .model-preview__media img{
    max-height:min(52vh,500px)!important;
    transform:translateY(-18px);
  }

  /* Rosso Street: show the full outdoor cabinet, no clipping, with air below. */
  .horizontal-story .model-preview[data-model="rosso-street"] .model-preview__media img{
    max-height:min(57vh,540px)!important;
    max-width:80%!important;
    transform:translateY(-22px);
  }

  /* Rossobar is wider, so size it by both axes and keep the full pair visible. */
  .horizontal-story .model-preview[data-model="rossobar"] .model-preview__media img{
    max-height:min(53vh,505px)!important;
    max-width:88%!important;
    transform:translateY(-18px);
  }

  /* Switching animation can move only slightly; don't drop the machine onto the plaque. */
  .horizontal-story .model-preview.is-switching .model-preview__media img{
    opacity:0;
    transform:translateY(-8px)!important;
  }
}

/* Mobile/tablet: same visual rule — no frame, full machine, visible gap above black panel. */
@media (max-width:991px){
  .model-preview__media,
  .horizontal-story .model-preview__media{
    background:transparent!important;
    padding:28px 16px 38px!important;
    overflow:visible!important;
  }

  .model-preview__media img,
  .horizontal-story .model-preview__media img{
    width:auto!important;
    height:auto!important;
    max-width:92%!important;
    max-height:410px!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0 auto!important;
    transform:translateY(-8px);
  }

  .model-preview[data-model="rossobar"] .model-preview__media img{
    max-width:96%!important;
  }

  .model-preview.is-switching .model-preview__media img{
    opacity:0;
    transform:translateY(0)!important;
  }
}


/* v30g — restore light machine area; use new transparent Rosso Street image */
.model-preview__media,
.horizontal-story .story-panel.section.equipment .model-preview__media{
  background:#e2e1dc!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

.model-preview__media::before,
.model-preview__media::after,
.horizontal-story .story-panel.section.equipment .model-preview__media::before,
.horizontal-story .story-panel.section.equipment .model-preview__media::after{
  content:none!important;
  display:none!important;
}

@media (min-width:992px){
  /* Keep Rosso / Rossobar as in the accepted version. */
  .horizontal-story .model-preview[data-model="rosso"] .model-preview__media img,
  .horizontal-story .model-preview[data-model="rossobar"] .model-preview__media img{
    mix-blend-mode:normal!important;
  }

  /* Rosso Street: new clean image, shown almost at the full height of the light area. */
  .horizontal-story .model-preview[data-model="rosso-street"] .model-preview__media{
    padding:26px 26px 34px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  .horizontal-story .model-preview[data-model="rosso-street"] .model-preview__media img{
    width:auto!important;
    height:calc(100% - 18px)!important;
    max-height:none!important;
    max-width:88%!important;
    object-fit:contain!important;
    object-position:center center!important;
    mix-blend-mode:normal!important;
    transform:translateY(-6px)!important;
  }
}

@media (max-width:991px){
  .model-preview__media,
  .horizontal-story .model-preview__media{
    background:#e2e1dc!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }

  .model-preview[data-model="rosso-street"] .model-preview__media img{
    width:auto!important;
    height:auto!important;
    max-width:88%!important;
    max-height:480px!important;
    object-fit:contain!important;
    transform:translateY(-6px)!important;
  }
}


/* v30h — remove remaining preview side lines and tidy the adaptive view */
.horizontal-story .story-panel.section.equipment .model-preview,
.horizontal-story .story-panel.section.equipment .model-preview *{
  box-shadow:none!important;
}

.horizontal-story .story-panel.section.equipment .model-preview{
  border:0!important;
  outline:0!important;
}

/* Desktop: cover the faint side rules by letting the light media stretch edge-to-edge. */
@media (min-width:992px){
  .horizontal-story .story-panel.section.equipment .model-preview__media{
    width:calc(100% + 2px)!important;
    margin:0 -1px!important;
    padding:18px 18px 28px!important;
    min-height:0!important;
    height:100%!important;
    align-items:center!important;
  }

  .horizontal-story .model-preview[data-model="rosso-street"] .model-preview__media img{
    max-height:min(66vh,620px)!important;
    max-width:80%!important;
    transform:translateY(-2px)!important;
  }
}

/* Mobile: keep the insert clean, without frame feeling, and tighten the spacing a bit. */
@media (max-width:991px){
  .model-list>.model-preview,
  .horizontal-story .model-list>.model-preview{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }

  .model-list>.model-preview .model-preview__media,
  .horizontal-story .model-list>.model-preview .model-preview__media{
    padding:16px 12px 12px!important;
    min-height:0!important;
    height:auto!important;
    width:100%!important;
    margin:0!important;
  }

  .model-list>.model-preview .model-preview__media img,
  .horizontal-story .model-list>.model-preview .model-preview__media img{
    max-width:90%!important;
    max-height:360px!important;
    transform:translateY(0)!important;
  }

  .model-list>.model-preview .model-preview__content,
  .horizontal-story .model-list>.model-preview .model-preview__content{
    padding:18px 16px 20px!important;
  }
}


/* v30r — new Rossobar photo only */
@media (min-width:992px){
  .horizontal-story .model-preview[data-model="rossobar"] .model-preview__media img{
    width:auto!important;
    height:auto!important;
    max-width:88%!important;
    max-height:min(61vh,590px)!important;
    object-fit:contain!important;
    object-position:center center!important;
    mix-blend-mode:normal!important;
    transform:translateY(-8px)!important;
  }
}

@media (max-width:991px){
  .model-preview[data-model="rossobar"] .model-preview__media img{
    width:auto!important;
    height:auto!important;
    max-width:96%!important;
    max-height:430px!important;
    object-fit:contain!important;
    transform:none!important;
  }
}

/* v31 — remove useless note block and lift the right preview a bit */
.horizontal-story .story-panel.section.equipment .equipment-heading__note--moved,
.equipment-heading__note--moved{
  display:none!important;
}

@media (min-width: 992px){
  /* With the note removed, keep a clean gap below the right card
     so the section label at the bottom right stays visible. */
  .horizontal-story .story-panel.section.equipment .model-preview{
    margin-bottom:18px!important;
  }
}

@media (max-width: 991px){
  .equipment-heading__note--moved,
  .horizontal-story .equipment-heading__note--moved{
    display:none!important;
  }

  .model-preview,
  .horizontal-story .model-preview{
    margin-top:6px!important;
  }
}

/* v31 gridfix — actually lift the right equipment card by removing the empty bottom grid row */
@media (min-width:992px){
  .horizontal-story .story-panel.section.equipment .model-preview{
    grid-row:2/4!important;
    height:100%!important;
    margin-bottom:0!important;
    align-self:stretch!important;
  }
}


/* v31 release — accepted equipment preview geometry */
.horizontal-story .story-panel.section.equipment .model-preview {
  grid-row: 2 / 4 !important;
  height: calc(100% - 20px) !important;
  margin-bottom: 20px !important;
  align-self: stretch !important;
}


/* v31 antispam */
.form-hp{
  position:absolute!important;
  left:-10000px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

.form-status{
  min-height:1.35em;
  margin:2px 0 10px;
  font-size:12px;
  line-height:1.35;
  color:#9e2631;
}

#proposal-submit:disabled{
  cursor:not-allowed;
  opacity:.45;
}


/* v32 — Turnstile + server form */
.turnstile-field{
  width:100%;
  margin:4px 0 12px;
}

#turnstile-widget{
  width:100%;
  min-height:65px;
}

.form-status[data-status="success"]{
  color:#2d6c42;
}

.form-status[data-status="progress"]{
  color:#6e6668;
}

#proposal-submit:disabled{
  opacity:.45;
  cursor:not-allowed;
  transform:none;
}

@media(max-width:420px){
  .turnstile-field{
    margin-top:2px;
  }
}
