/* MGH — design tokens (mirror of Figma variables) */
:root{
  --gold-50:#fff8e1;--gold-300:#ffd45c;--gold-500:#f5b703;--gold-600:#d99e00;
  --teal-50:#ecf6f6;--teal-100:#c7e4e4;--teal-500:#44a4a4;--teal-700:#2a6b6b;
  --g-900:#15191c;--g-800:#1f2529;--g-700:#2e353a;--g-600:#4a5258;--g-500:#6b7379;--g-400:#888;--g-300:#b9bec2;--g-200:#dde0e3;--g-100:#eef0f1;--g-50:#f5f5f5;--white:#fff;
  --color-bg-page:var(--white);--color-bg-subtle:var(--g-50);--color-bg-muted:var(--g-100);--color-bg-inverse:var(--g-900);--color-bg-inverse-raised:var(--g-800);
  --color-bg-brand:var(--gold-500);--color-bg-brand-hover:var(--gold-600);--color-bg-accent-soft:var(--teal-100);
  --color-text-primary:var(--g-900);--color-text-secondary:var(--g-500);--color-text-muted:var(--g-400);--color-text-inverse:var(--white);--color-text-inverse-muted:var(--g-300);--color-text-brand:var(--gold-500);--color-text-accent:var(--teal-700);
  --color-border-default:var(--g-200);--color-border-strong:var(--g-300);--color-border-inverse:var(--g-700);--color-border-focus:var(--teal-500);
  --radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:999px;
  --container:1200px;--gutter:24px;
  --font-head:"Montserrat",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif;
  --edge:max(var(--gutter),calc((100vw - var(--container))/2));
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:400 16px/26px var(--font-body);color:var(--color-text-primary);background:var(--color-bg-page);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5,h6,p{margin:0}
ul{margin:0;padding:0;list-style:none}
button,input,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}
.container{width:100%;max-width:calc(var(--container) + 2*var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:96px}
.section--flush-top{padding-top:0}
.section--subtle{background:var(--color-bg-subtle)}
.section--dark{background:var(--color-bg-inverse);color:var(--color-text-inverse)}

/* type */
.h2{font:600 38px/46px var(--font-head)}
.h3{font:600 28px/36px var(--font-head)}
.h4{font:600 22px/30px var(--font-head)}
.h5{font:600 18px/26px var(--font-head)}
.h6{font:600 16px/24px var(--font-head)}
.overline{font:600 12px/16px var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-accent)}
.section--dark .overline{color:var(--color-text-brand)}
.label-cat{font:600 14px/20px var(--font-head);letter-spacing:.04em;text-transform:uppercase}
.body-l{font-size:18px;line-height:28px;color:var(--color-text-secondary)}
.body-s{font-size:14px;line-height:22px}
.caption{font-size:12px;line-height:16px}
.heading{display:flex;flex-direction:column;gap:12px}
.head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px}
.head-row .actions{display:flex;align-items:center;gap:24px}

/* icons */
.icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}
.icon--sm{width:18px;height:18px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-sm);font:600 14px/20px var(--font-head);padding:12px 20px;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}
.btn--l{font-size:16px;line-height:24px;padding:16px 32px}
.btn--primary{background:var(--color-bg-brand);color:var(--g-900)}
.btn--primary:hover{background:var(--color-bg-brand-hover)}
.btn--secondary{background:var(--g-900);color:#fff}
.btn--secondary:hover{background:var(--g-800)}
.btn--outline{border-color:var(--color-border-strong);background:transparent}
.btn--outline:hover{background:var(--color-bg-muted)}
.btn--ghost{padding:8px 0;background:none}
.btn--ghost:hover{color:var(--color-text-accent)}
.btn--block{width:100%}
.icon-btn{width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-strong);background:transparent;cursor:pointer;transition:background .15s,opacity .15s}
.icon-btn:hover{background:var(--color-bg-muted)}
.icon-btn--filled{background:var(--color-bg-brand);border-color:transparent}
.icon-btn--filled:hover{background:var(--color-bg-brand-hover)}
.icon-btn:disabled{opacity:.4;cursor:default}
.arrows{display:flex;gap:12px}

/* header */
.header{height:88px;display:flex;align-items:center;background:#fff;position:sticky;top:0;z-index:50}
.header .container{display:flex;align-items:center;justify-content:space-between;gap:40px}
.header__logo img{height:44px;width:auto}
.nav{display:flex;gap:32px}
.nav a{font:500 15px/24px var(--font-head);padding:8px 0;border-bottom:2px solid transparent}
.nav a:hover{color:var(--color-text-accent)}
.nav a.is-active{border-color:var(--color-bg-brand)}
.header__actions{display:flex;align-items:center;gap:24px}
.phone{display:flex;align-items:center;gap:8px;font:600 18px/24px var(--font-head)}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer}

/* sliders */
.bleed{padding-left:var(--edge)}
.slider{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding-right:var(--edge);scroll-padding-left:0}
.slider::-webkit-scrollbar{display:none}
.slider>*{flex:none;scroll-snap-align:start}
.dots{display:none;gap:8px;margin-top:24px}
.dots i{width:8px;height:8px;border-radius:4px;background:var(--color-border-strong);transition:width .2s,background .2s}
.dots i.is-active{width:24px;background:var(--color-bg-brand)}
.section--dark .dots i{background:var(--color-border-inverse)}
.section--dark .dots i.is-active{background:var(--color-bg-brand)}

/* hero */
.hero{padding:20px 0 64px}
.hero__visual{position:relative;overflow:hidden}
.hero__art{position:relative}
.hero__art img{width:100%;aspect-ratio:2172/724}
.hero__caption{position:absolute;left:9.24%;top:80.6%;width:37.85%}
.hero__caption text{font:700 21px Arial,Helvetica,sans-serif;fill:#888}
.hero__title{position:absolute;left:36.1%;top:4px;width:min(520px,40vw);font:600 clamp(18px,1.95vw,28px)/1.29 var(--font-head)}
.hero__brands{display:flex;align-items:center;gap:32px;margin-top:8px}
.hero__brands-label{font:500 16px/24px var(--font-head);letter-spacing:.08em;text-transform:uppercase;text-align:right;color:var(--color-text-muted)}
.hero__brands img{height:69px;width:auto}

/* circles (illustration background) */
.circles{position:absolute;inset:0;pointer-events:none}
.circles i{position:absolute;border-radius:50%;aspect-ratio:1}
.circles .a{background:var(--teal-500);opacity:.3}
.circles .n{background:var(--g-100)}
.circles .s{background:var(--g-50)}
.circles .w{background:#fff}
.circles .r{border:1.5px dashed var(--g-300)}

/* categories */
.cat{width:220px;display:flex;flex-direction:column;align-items:center;gap:16px;padding:16px 0;border-radius:var(--radius-lg);text-align:center;transition:background .15s}
.cat:hover{background:var(--color-bg-subtle)}
.cat:hover .label-cat{color:var(--color-text-accent)}
.cat__ill{position:relative;width:200px;aspect-ratio:1}
.cat__ill img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.cat__ill .a{left:40%;top:9.2%;width:55%}
.cat__ill .n{left:5%;top:43.3%;width:50.8%}
.cat__ill .s{left:46.7%;top:49.2%;width:48.3%}
.cat__ill .r{left:17.5%;top:14.2%;width:70.8%;border-width:1px}
.cat__ill .n2{left:9.2%;top:29.2%;width:18.3%;background:var(--g-100)}
.cat__ill .r2{left:12.1%;top:32.1%;width:12.5%;border:1px dashed var(--g-300)}

/* about */
.about{overflow-x:clip}
.about__row{display:flex;align-items:center;gap:24px}
.about__text{width:486px;flex:none;display:flex;flex-direction:column;gap:32px}
.features{display:flex;flex-direction:column;gap:20px}
.feature{display:flex;align-items:center;gap:16px}
.feature__icon{width:64px;height:64px;border-radius:50%;flex:none;background:url(img/feature-icons.webp) no-repeat;background-size:288.3px 96.1px;background-position:calc(var(--i)*-71.9px - 4px) -15.3px}
.about__visual{position:relative;width:690px;height:500px;flex:none}
.about__visual .tractor{position:absolute;left:190px;top:-80px;width:640px;max-width:none}
.about__visual .w{left:220px;top:-50px;width:580px}
.about__visual .r{left:245px;top:-25px;width:530px}
.about__visual .a{left:470px;top:-40px;width:350px}
.about__visual .n{left:300px;top:290px;width:300px}
.about__visual .n2{left:258px;top:-30px;width:64px;background:var(--g-100)}
.about__visual .r2{left:268px;top:-20px;width:44px;border:1.5px dashed var(--g-300)}
.stat{position:absolute;width:240px;padding:24px;border-radius:var(--radius-xl);border:1px solid var(--color-border-default);background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:8px}
.stat b{font:300 72px/72px var(--font-head)}
.stat span{font:600 12px/16px var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}
.stat--1{left:0;top:0}.stat--2{left:0;top:190px}.stat--3{left:250px;top:350px}

/* products */
.products{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}
.product{position:relative;padding-top:110px;display:flex;flex-direction:column}
.product__img{position:absolute;top:0;left:50%;transform:translateX(-50%);height:220px;width:190px;object-fit:contain;z-index:1;transition:transform .2s}
.product:hover .product__img{transform:translateX(-50%) translateY(-6px)}
.product__panel{flex:1;background:var(--color-bg-subtle);border-radius:var(--radius-lg);padding:126px 16px 20px;display:flex;flex-direction:column;gap:16px}
.product__panel .overline{display:block;margin-bottom:8px}
.specs{display:flex;flex-direction:column;gap:12px}
.specs dt{font-size:12px;line-height:16px;color:var(--color-text-secondary);margin-bottom:4px}
.specs dd{margin:0}
.chip{display:inline-block;background:transparent;border:1px solid var(--teal-100);color:var(--color-text-accent);font:500 14px/22px var(--font-body);padding:3px 8px;border-radius:6px}

/* catalogs */
.catalogs{display:flex;gap:24px}
.catalogs__text{width:384px;flex:none;display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.catalogs__slider{flex:1;min-width:0;margin-right:calc(-1*var(--edge))}
.catalog{width:220px;display:flex;flex-direction:column;gap:16px}
.catalog img{transition:box-shadow .2s,transform .2s}
.catalog:hover img{box-shadow:0 16px 40px rgba(21,25,28,.16);transform:translateY(-4px)}
.catalog__link{display:flex;align-items:center;gap:8px;color:var(--color-text-accent);font:500 14px/22px var(--font-body)}

/* bento */
.bento{display:grid;grid-template-columns:486fr 690fr;gap:24px}
.bento--rev{grid-template-columns:690fr 486fr;margin-top:24px}
.info{position:relative;overflow:hidden;border-radius:var(--radius-xl);padding:40px;min-height:322px;display:flex;flex-direction:column;gap:16px;align-items:flex-start;background:linear-gradient(215deg,var(--g-50),var(--g-100))}
.bento:not(.bento--rev) .info{min-height:348px}
.info--brand{background:linear-gradient(215deg,var(--gold-300),var(--gold-500))}
.info--dark{background:linear-gradient(215deg,var(--g-700),var(--g-900));color:#fff}
.info>*{position:relative;z-index:1}
.info p{color:var(--color-text-secondary);max-width:calc(100% - 232px);flex:1}
.info--brand p{color:var(--g-900)}
.info--dark p{color:var(--color-text-inverse-muted)}
.info__img{position:absolute!important;z-index:0!important;right:-70px;top:56px;width:380px;height:calc(100% - 12px);object-fit:contain;max-width:none}

/* contact */
.contact{position:relative;min-height:768px}
.contact__left{position:relative;z-index:2;width:460px;pointer-events:none}
.contact__left>*{pointer-events:auto}
.contact__lead{margin-top:12px;text-transform:uppercase}
.year{font:600 200px/200px var(--font-head);letter-spacing:-.02em;color:transparent;-webkit-text-stroke:3px var(--gold-500);margin:20px 0 0 -6px;display:block}
.roku{font:600 56px/64px var(--font-head);color:transparent;-webkit-text-stroke:2px var(--gold-500);text-transform:uppercase;display:block}
.contact__map{position:absolute;left:310px;top:150px;width:600px}
.map{position:relative}
.map img{width:100%}
.pin{position:absolute;display:flex;align-items:center;gap:8px;transform:translate(-14px,-14px);font:600 12px/16px var(--font-head);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.pin::before{content:"";width:28px;height:28px;border-radius:50%;flex:none;background:radial-gradient(circle,var(--g-900) 0 4px,var(--gold-500) 4px 6px,var(--g-900) 6px 12px,var(--gold-500) 12px 14px,transparent 14px)}
.contact__right{position:absolute;right:0;top:0;width:280px;display:flex;flex-direction:column;gap:32px}
.contact__right>p{color:var(--color-text-inverse-muted)}
.offices{display:flex;flex-direction:column;gap:32px}
.contact__left .offices{margin-top:64px;width:280px}
.office h3{font:600 14px/20px var(--font-head);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-brand);margin-bottom:12px}
.office li{display:flex;gap:8px;font-size:14px;line-height:22px;color:var(--color-text-inverse-muted)}
.office li+li{margin-top:12px}
.office .icon{width:16px;height:16px;margin-top:3px;opacity:.6;color:#fff}
.office a:hover{color:#fff}
.contact__mobile-title{display:none}

/* form */
.formsec{overflow-x:clip}
.formsec__row{display:flex;gap:24px;align-items:flex-start}
.formsec__text{width:486px;flex:none;display:flex;flex-direction:column;gap:24px}
.car{position:relative;width:486px;height:380px}
.car img{position:absolute;left:20px;top:-36px;width:623px;max-width:none}
.car .a{left:210px;top:10px;width:260px}.car .n{left:10px;top:120px;width:250px}.car .s{left:220px;top:170px;width:220px}
.car .r{left:60px;top:20px;width:340px}.car .n2{left:20px;top:40px;width:60px;background:var(--g-100)}.car .r2{left:30px;top:50px;width:40px;border:1.5px dashed var(--g-300)}
.form{position:relative;z-index:2;flex:1;padding:40px;border-radius:var(--radius-xl);border:1px solid var(--color-border-default);background:rgba(245,245,245,.6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:grid;grid-template-columns:1fr 1fr;gap:24px}
.field{display:flex;flex-direction:column;gap:8px;font:500 14px/22px var(--font-body)}
.field--wide,.form .check,.form .form__submit,.form__note{grid-column:1/-1}
.field input,.field textarea,.newsletter input{border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:#fff;padding:14px 16px;font:400 16px/26px var(--font-body);width:100%}
.field textarea{min-height:140px;resize:vertical}
.field input:focus,.field textarea:focus,.newsletter input:focus{outline:0;border-color:var(--color-border-focus);box-shadow:0 0 0 4px rgba(68,164,164,.2)}
::placeholder{color:var(--color-text-muted)}
.check{display:flex;gap:12px;font-size:14px;line-height:22px;color:var(--color-text-secondary);cursor:pointer}
.check input{width:20px;height:20px;flex:none;accent-color:var(--gold-500);margin:1px 0 0}
.check a{text-decoration:underline}
.form__submit{justify-self:start}
.form__note{font-size:14px;line-height:22px;color:var(--color-text-accent);display:none}
.form__note.is-visible{display:block}

/* brands */
.brand{width:200px;height:104px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;background:#fff}
.brand span{width:172px;height:70px;background:url(img/brands.webp) no-repeat;background-size:1457.6px 212.9px;background-position:calc(var(--cx)*-.7288px) calc(var(--cy)*-.7292px)}
.slider--tight{gap:16px}

/* news */
.newsrow{display:flex;gap:64px}
.newsletter{width:384px;min-height:320px;flex:none;border-radius:var(--radius-xl);padding:32px;background:linear-gradient(215deg,var(--gold-300),var(--gold-500));display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.newsletter p{font-size:14px;line-height:22px;margin-top:8px}
.newsletter form{display:flex;flex-direction:column;gap:12px}
.newsletter input{border-color:transparent;padding:12px 16px}
.news{flex:1;min-width:0;display:flex;flex-direction:column;gap:40px;margin-right:calc(-1*var(--edge))}
.news__controls{display:flex;align-items:center;gap:24px}
.newscard{width:282px;padding-right:24px;border-right:1px solid var(--color-border-default);display:flex;flex-direction:column;gap:16px}
.newscard__meta{display:flex;justify-content:space-between;font-size:12px;line-height:16px;color:var(--color-text-muted)}
.newscard p{font-size:14px;line-height:22px;color:var(--color-text-secondary)}
.newscard:hover h3{color:var(--color-text-accent)}

/* footer */
.footer{padding-bottom:64px}
.footer hr{border:0;border-top:1px solid var(--color-border-default);margin:0 0 64px}
.footer__row{display:flex;gap:24px}
.footer__brand{width:384px;flex:none;display:flex;flex-direction:column;gap:32px}
.footer__brand img{height:44px;width:auto;align-self:flex-start}
.footer__legal{display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:22px;color:var(--color-text-muted)}
.footer__content{flex:1;display:flex;flex-direction:column;gap:48px}
.footer__contact{display:flex;align-items:center;gap:48px;flex-wrap:wrap}
.footer__phone{display:flex;flex-direction:column;gap:4px;font:600 18px/24px var(--font-head)}
.footer__phone small{font:500 14px/22px var(--font-body);border-bottom:2px solid var(--gold-500);align-self:flex-start}
.footer__mail{font:600 18px/24px var(--font-head)}
.footer__links{display:flex;gap:48px;flex-wrap:wrap}
.footer__links ul{display:flex;flex-direction:column;gap:16px;color:var(--color-text-secondary)}
.footer__links a:hover{color:var(--color-text-primary)}

/* ---------- tablet / mobile ---------- */
@media (max-width:1239px){
  .nav,.header .phone span,.header__actions .btn{display:none}
  .burger{display:inline-flex}
  .header{height:64px}
  .header__logo img{height:32px}
  .header__actions{gap:12px}
  .nav.is-open{display:flex;flex-direction:column;gap:0;position:absolute;top:64px;left:0;right:0;background:#fff;padding:8px var(--gutter) 24px;border-bottom:1px solid var(--color-border-default);box-shadow:0 16px 32px rgba(21,25,28,.08)}
  .nav.is-open a{padding:14px 0;border-bottom:1px solid var(--color-border-default);font-size:17px}
  .section{padding-block:56px}
  .section--flush-top{padding-top:0}
  .h2{font-size:28px;line-height:36px}
  .heading{gap:8px}
  .head-row{flex-direction:column;align-items:flex-start;margin-bottom:32px;gap:16px}
  .head-row .arrows{display:none}
  .dots{display:flex}
  .slider{gap:16px}
  .hero{padding:8px 0 40px}
  .hero__art{width:146%;margin:-5% 0 0 -5%}
  .hero__title{position:static;width:auto;font-size:22px;line-height:30px;padding:24px var(--gutter) 0}
  .hero__brands{flex-direction:column;align-items:flex-start;gap:12px;margin-top:24px}
  .hero__brands-label{display:none}
  .hero__brands img{height:54px}
  .cat{width:160px}.cat__ill{width:140px}.cats{gap:40px}
  .about__row{flex-direction:column;align-items:stretch;gap:32px}
  .about__text{width:auto}
  .body-l{font-size:16px;line-height:26px}
  .about__visual{--u:calc(min(100vw - 2*var(--gutter),460px)/342);width:calc(342*var(--u));height:calc(400*var(--u));margin-inline:auto}
  .about__visual .tractor{left:calc(10*var(--u));top:calc(10*var(--u));width:calc(330*var(--u))}
  .about__visual .w{left:calc(159*var(--u));top:calc(152*var(--u));width:calc(158*var(--u))}
  .about__visual .r{left:calc(43*var(--u));top:calc(44*var(--u));width:calc(245*var(--u))}
  .about__visual .a{left:calc(151*var(--u));top:calc(37*var(--u));width:calc(187*var(--u))}
  .about__visual .n{left:calc(7*var(--u));top:calc(116*var(--u));width:calc(180*var(--u))}
  .about__visual .n2{left:calc(14*var(--u));top:calc(59*var(--u));width:calc(43*var(--u))}
  .about__visual .r2{left:calc(22*var(--u));top:calc(66*var(--u));width:calc(29*var(--u))}
  .stat{width:156px;padding:16px;gap:4px;border-radius:var(--radius-lg);background:rgba(255,255,255,.6)}
  .stat b{font-size:36px;line-height:40px}
  .stat span{font-size:10px;line-height:14px}
  .stat--1{left:auto;right:-10px;top:calc(-24*var(--u))}
  .stat--2{left:-12px;top:calc(150*var(--u))}
  .stat--3{left:auto;right:-10px;top:calc(292*var(--u))}
  .products{display:flex;overflow-x:auto;scrollbar-width:none;gap:16px;margin-right:calc(-1*var(--gutter));padding-right:var(--gutter);scroll-snap-type:x proximity}
  .products::-webkit-scrollbar{display:none}
  .product{width:220px;flex:none;scroll-snap-align:start}
  .catalogs{flex-direction:column;gap:32px}
  .catalogs__text{width:auto}
  .catalogs__text .arrows{display:none}
  .catalogs__slider{margin-right:calc(-1*var(--gutter))}
  .bento,.bento--rev{display:contents}
  .bento-wrap{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;margin-right:calc(-1*var(--gutter));padding-right:var(--gutter);scroll-snap-type:x mandatory}
  .bento-wrap::-webkit-scrollbar{display:none}
  .info,.bento:not(.bento--rev) .info{width:300px;flex:none;min-height:504px;padding:24px 24px 0;scroll-snap-align:start}
  .info .h3{font-size:22px;line-height:30px}
  .info p{max-width:none;flex:none}
  .info__img{position:relative!important;right:auto;top:auto;width:100%;height:200px;margin-top:auto}
  .contact{min-height:0;display:flex;flex-direction:column;gap:32px}
  .contact__left{width:auto;display:contents}
  .contact__head{order:1}
  .contact__lead{font-size:18px;line-height:26px}
  .year{font-size:112px;line-height:112px;-webkit-text-stroke-width:2px;margin:8px 0 0 -3px}
  .roku{font-size:38px;line-height:46px;-webkit-text-stroke-width:1.5px}
  .contact__map{position:static;width:100%;max-width:520px;order:2}
  .pin{font-size:10px;gap:6px}
  .pin--left{flex-direction:row-reverse;transform:translate(calc(-100% + 14px),-14px)}
  .contact__mobile-title{display:block;order:3}
  .contact__right,.contact__left .offices{display:none}
  .offices-mobile{order:4;display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;margin-right:calc(-1*var(--gutter));padding-right:var(--gutter);scroll-snap-type:x mandatory}
  .offices-mobile::-webkit-scrollbar{display:none}
  .office{width:280px;flex:none;padding:24px;border:1px solid var(--color-border-inverse);border-radius:var(--radius-lg);background:var(--color-bg-inverse-raised);scroll-snap-align:start}
  .contact .dots{order:5;margin-top:-8px}
  .formsec__row{flex-direction:column;gap:32px}
  .formsec__text{display:contents}
  .formsec__text .heading{order:1}
  .formsec__text .body-l{order:2}
  .form{order:3;width:100%;grid-template-columns:1fr;padding:24px;gap:16px}
  .form__submit{justify-self:stretch}
  .car{order:4;width:342px;max-width:100%;height:250px;margin:-94px auto 0;z-index:1}
  .car img{left:-9px;top:0;width:360px}
  .car .a{left:139px;top:7px;width:172px}.car .n{left:7px;top:79px;width:165px}.car .s{left:145px;top:112px;width:145px}
  .car .r{left:40px;top:13px;width:224px}.car .n2,.car .r2{display:none}
  .brand{width:156px;height:84px}
  .brand span{transform:scale(.744)}
  .newsrow{flex-direction:column-reverse;gap:32px}
  .news{margin-right:calc(-1*var(--gutter));gap:24px}
  .news__controls .arrows{display:flex}
  .newsletter{width:auto;min-height:0}
  .footer{padding-bottom:40px}
  .footer hr{margin-bottom:32px}
  .footer__row{flex-direction:column;gap:32px}
  .footer__brand{width:auto;display:contents}
  .footer__brand img{height:36px;order:1}
  .footer__content{order:2;gap:32px}
  .footer__legal{order:3;font-size:12px;line-height:16px}
  .footer__contact{flex-direction:column;align-items:stretch;gap:16px}
  .footer__mail{font:500 16px/26px var(--font-body)}
  .footer__links{gap:16px 24px;display:grid;grid-template-columns:1fr 1fr}
  .footer__links ul{gap:12px;font-size:14px;line-height:22px}
}
@media (min-width:1240px){
  .bento-wrap{display:block}
  .offices-mobile{display:none}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* drag to scroll */
@media (hover:hover) and (pointer:fine){
  [data-slider]{cursor:grab}
  [data-slider].is-dragging{cursor:grabbing;scroll-snap-type:none!important;user-select:none}
  [data-slider].is-dragging *{pointer-events:none}
  [data-slider] img{-webkit-user-drag:none;user-select:none}
}
@media (min-width:1240px){.bento-wrap,.products{cursor:auto}}

/* catalog covers + PDF viewer */
.catalog__cover{width:220px;height:310px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--color-border-default)}
.catalog__cover--ext{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:linear-gradient(215deg,var(--g-700),var(--g-900));color:#fff;transition:box-shadow .2s,transform .2s}
.catalog__cover--ext b{font:600 28px/36px var(--font-head);letter-spacing:.04em}
.catalog__cover--ext small{font:600 12px/16px var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--gold-500)}
.catalog:hover .catalog__cover--ext{box-shadow:0 16px 40px rgba(21,25,28,.16);transform:translateY(-4px)}
.pdfmodal{width:min(1040px,calc(100vw - 48px));height:min(920px,calc(100dvh - 48px));max-width:none;max-height:none;padding:0;border:0;border-radius:var(--radius-xl);background:#fff;color:var(--color-text-primary);overflow:hidden;box-shadow:0 32px 80px rgba(21,25,28,.35)}
.pdfmodal[open]{display:flex;flex-direction:column}
.pdfmodal::backdrop{background:rgba(21,25,28,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.pdfmodal__bar,.pdfmodal__foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;flex:none}
.pdfmodal__bar{border-bottom:1px solid var(--color-border-default)}
.pdfmodal__foot{border-top:1px solid var(--color-border-default)}
.pdfmodal__titles{display:flex;flex-direction:column;gap:2px;min-width:0}
.pdfmodal__titles h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdfmodal .caption{color:var(--color-text-secondary)}
.pdfmodal__body{flex:1;overflow-y:auto;background:var(--g-100);padding:24px;display:flex;flex-direction:column;align-items:center;gap:16px;overscroll-behavior:contain}
.pdfpage{width:100%;max-width:860px;background:#fff;box-shadow:0 2px 12px rgba(21,25,28,.12);position:relative}
.pdfpage canvas{display:block;width:100%;height:100%;position:absolute;inset:0}
.pdfmodal__body iframe{width:100%;height:100%;border:0;flex:1}
html.modal-open{overflow:hidden}
@media (max-width:767px){
  .pdfmodal{width:100vw;height:100dvh;border-radius:0}
  .pdfmodal__bar,.pdfmodal__foot{padding:12px 16px}
  .pdfmodal__body{padding:12px;gap:8px}
  .pdfmodal__foot .caption{display:none}
  .pdfmodal__foot .btn{width:100%}
}
