@import url('./assets/fonts.css');

:root { --yellow:#f8db27; --ink:#202421; --muted:#72766e; --paper:#f5f5ef; --line:#dddfd6; --white:#fff; --dark:#232922; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:105px; }
body { margin:0; color:var(--ink); background:var(--white); font-family:Manrope,Arial,sans-serif; font-size:14px; line-height:1.65; }
button,input,select,textarea { font:inherit; }
button,a,input,select,textarea,summary { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }
img { display:block; max-width:100%; }
button { color:inherit; }
[hidden] { display:none!important; }
:focus-visible { outline:3px solid #817000; outline-offset:5px; }
.wrap { width:min(1320px,calc(100% - 96px)); margin:auto; }
.skip { position:fixed; top:-100px; left:20px; z-index:200; background:var(--yellow); padding:15px; }.skip:focus { top:10px; }
.topline { background:var(--ink); color:#dbded6; font-size:10px; letter-spacing:.045em; }
.topline .wrap { display:flex; justify-content:space-between; padding:8px 0; }.topline span:last-child { color:#b6bbaf; }
.header { position:sticky; top:0; z-index:30; border-bottom:1px solid var(--line); background:rgba(255,255,255,.96); backdrop-filter:blur(15px); }
.header__inner { display:flex; align-items:center; justify-content:space-between; height:88px; gap:28px; }
.brand { flex-shrink:0; }.brand img { width:177px; height:48px; }.brand small { display:block; margin-left:50px; margin-top:-4px; font-size:8px; letter-spacing:.14em; text-transform:uppercase; }
.nav { display:flex; gap:29px; align-items:center; font-size:12px; font-weight:700; }.nav a:hover { color:#847300; }
.header__contact { display:flex; align-items:center; gap:23px; }.phone { font-weight:800; font-size:14px; white-space:nowrap; }.phone small { display:block; font-weight:400; font-size:10px; color:var(--muted); }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:50px; padding:14px 22px; background:var(--yellow); border:1px solid var(--yellow); font-size:12px; font-weight:800; transition:background .2s,transform .2s; }
.btn:hover { background:#efd024; transform:translateY(-2px); }.btn--outline { background:transparent; border-color:#bbbfb3; }.btn--outline:hover { background:#eeefe7; }.btn--dark { background:var(--ink); border-color:var(--ink); color:#fff; }.btn--dark:hover { background:#414939; }.arrow { font-size:20px; line-height:1; font-weight:400; }.menu-toggle { display:none; padding:8px 12px; border:1px solid var(--line); background:#fff; font-size:21px; }
.crumbs { display:flex; flex-wrap:wrap; gap:12px; padding:25px 0 0; color:#777d70; font-size:10px; }.crumbs span { color:var(--ink); }.crumbs a:hover { text-decoration:underline; }
.hero { background:var(--paper); overflow:hidden; position:relative; }
.hero__layout { display:grid; grid-template-columns:1.04fr 1fr; min-height:590px; position:relative; }
.hero__copy { padding:58px 0 60px; z-index:2; }.eyebrow { display:flex; align-items:center; gap:10px; font-family:Manrope,sans-serif; text-transform:uppercase; font-size:10px; letter-spacing:.16em; font-weight:800; }.eyebrow::before { content:''; width:7px; height:7px; background:var(--yellow); display:block; }.eyebrow--dark::before { background:var(--ink); }
h1,h2,h3,p { margin-top:0; }h1,h2 { font-family:Oswald,'Arial Narrow',sans-serif; font-weight:600; text-transform:uppercase; line-height:1.08; letter-spacing:-.025em; }
h1 { font-size:clamp(52px,5.3vw,79px); margin:25px 0 25px; }h1 span { color:#6e7666; }
.hero__copy>p { max-width:450px; color:#697062; font-size:14px; line-height:1.85; }.hero__actions { display:flex; gap:12px; margin-top:30px; }.hero__note { display:flex; align-items:center; gap:9px; margin-top:25px; font-size:10px; color:#73796c; }.hero__note i { width:5px; height:5px; border-radius:50%; background:#728367; }
.hero__art { min-width:0; position:relative; display:flex; align-items:center; }
/*.hero__art::before { content:''; position:absolute; width:410px; height:410px; border:1px solid #d8ddce; border-radius:50%; top:77px; left:50%; transform:translateX(-50%); box-shadow:0 0 0 65px #e8ebdf44,0 0 0 66px #d8ddce77; z-index:-1; }*/
.hero__art::after { content:'+'; position:absolute; top:37px; right:5px; color:#a3ab9b; font-size:26px; font-weight:200; }
.hero__art img { width:116%; max-width:none; margin-left:-7%; mix-blend-mode:multiply;}
.hero__art::before { z-index:0; pointer-events:none; }
.hero__art img { position:relative; z-index:1; }
.art-caption,.art-tag,.hero__stamp { z-index:2; }
.art-caption { position:absolute; bottom:57px; left:48px; font-size:10px; letter-spacing:.08em; }.art-caption b { display:block; font-family:Oswald,sans-serif; font-size:18px; letter-spacing:0; margin-bottom:3px; }.art-tag { position:absolute; right:0; top:75px; font-family:monospace; font-size:10px; color:#68715d; border-top:1px solid #929b84; padding:10px 5px 0 36px; }.art-tag--bottom { top:auto; bottom:112px; right:2px; }
.hero__stamp { position:absolute; bottom:40px; right:8px; width:59px; height:59px; background:var(--yellow); display:grid; place-items:center; font-family:Oswald,sans-serif; font-size:25px; }
.benefits { background:var(--yellow); }.benefits__grid { display:grid; grid-template-columns:repeat(4,1fr); padding:23px 0; }.benefit { display:flex; gap:16px; align-items:center; padding:0 25px; border-right:1px solid #272d242b; }.benefit:first-child { padding-left:0; }.benefit:last-child { border:0; }.benefit>span { font-size:24px; }.benefit b { display:block; font-size:11px; }.benefit small { display:block; font-size:10px; opacity:.7; }
.section { padding:91px 0; }.section-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin:18px 0 31px; }h2 { font-size:clamp(36px,3.25vw,48px); margin-bottom:0; }.section-head>p { max-width:365px; color:var(--muted); font-size:12px; margin:0 0 4px; line-height:1.85; }
.catalog-tools { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:21px 0; border-top:1px solid var(--line); }.filters { display:flex; flex-wrap:wrap; gap:7px; }.filter { padding:9px 14px; border:1px solid var(--line); background:#fff; font-size:10px; font-weight:700; }.filter[aria-pressed=true] { background:var(--ink); color:#fff; border-color:var(--ink); }.search { display:flex; align-items:center; border-bottom:1px solid #aeb3a6; gap:10px; width:220px; }.search input { min-width:0; width:100%; padding:11px 0; border:0; background:transparent; font-size:11px; }.search span { font-size:21px; }
.catalog-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.product-card { border:1px solid var(--line); display:flex; flex-direction:column; transition:box-shadow .2s,transform .2s; }.product-card:hover { box-shadow:0 12px 25px #252b2010; transform:translateY(-4px); }.product-card__image { background:var(--paper); position:relative; overflow:hidden; aspect-ratio:1.12; display:grid; place-items:center; }.product-card__image img { width:90%; height:100%; object-fit:contain; mix-blend-mode:multiply; transition:transform .5s; }.product-card:hover img { transform:scale(1.05); }.product-card__num { position:absolute; top:14px; left:16px; font-family:monospace; font-size:10px; color:#7c8274; z-index:1; }.product-card__tag { position:absolute; right:12px; bottom:12px; background:#fff; font-size:8px; padding:4px 7px; letter-spacing:.04em; }.product-card__body { padding:22px 21px 17px; display:flex; flex-direction:column; flex:1; }.product-card h3 { font-family:Oswald,sans-serif; text-transform:uppercase; font-size:22px; font-weight:500; margin-bottom:10px; }.product-card p { font-size:11px; color:var(--muted); line-height:1.8; min-height:59px; margin-bottom:17px; }.product-card__foot { padding-top:13px; border-top:1px solid var(--line); margin-top:auto; display:flex; justify-content:space-between; align-items:center; font-size:10px; font-weight:700; }.round-arrow { width:29px; height:29px; display:grid; place-items:center; border-radius:50%; background:var(--yellow); font-size:17px; }
.catalog-help { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:24px 0 0; color:var(--muted); font-size:11px; }.text-button { background:none; border:0; border-bottom:1px solid var(--ink); padding:0 0 3px; font-weight:800; font-size:11px; }.empty { padding:32px; background:var(--paper); }
.engineering { background:var(--dark); color:#fff; position:relative; overflow:hidden; }.engineering__grid { display:grid; grid-template-columns:1fr 1.1fr; gap:85px; align-items:center; }.engineering h2 { margin:22px 0; }.engineering p { color:#b8bfb1; font-size:12px; max-width:420px; }.engineering .btn { color:var(--ink); margin-top:16px; }.engineering .eyebrow { color:#ced4c6; }
.blueprint { border:1px solid #5f6856; background-image:linear-gradient(#9dab8810 1px,transparent 1px),linear-gradient(90deg,#9dab8810 1px,transparent 1px); background-size:24px 24px; }.blueprint__head { padding:15px 22px; display:flex; justify-content:space-between; border-bottom:1px solid #5f6856; color:#b6bfa9; font:10px monospace; letter-spacing:.04em; }.blueprint svg { width:100%; height:230px; display:block; }.blueprint__key { display:grid; grid-template-columns:1fr 1fr; margin:0 21px 20px; gap:0 22px; }.blueprint__key div { display:flex; align-items:center; gap:12px; padding:11px 0; border-top:1px solid #55604d; font-size:10px; color:#c6cdbf; }.blueprint__key b { color:var(--yellow); font-family:monospace; width:15px; }
.process { padding:35px 0; border-bottom:1px solid var(--line); }.process__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; }.process__item { display:flex; gap:19px; }.process__item>span { font-family:Oswald,sans-serif; color:#969e8c; font-size:26px; }.process__item b { font-size:12px; }.process__item p { margin:5px 0 0; color:var(--muted); font-size:10px; max-width:265px; }
.applications { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; margin-top:33px; }.application { background:var(--paper); padding:26px 24px; border-top:2px solid var(--line); }.application__icon { font-size:26px; margin-bottom:28px; color:#6e775f; }.application h3 { font-size:13px; margin-bottom:8px; }.application p { font-size:11px; color:var(--muted); margin-bottom:0; }
.request { background:var(--yellow); }.request__grid { display:grid; grid-template-columns:1fr 1.1fr; gap:95px; }.request h2 { margin:23px 0; font-size:49px; }.request p { max-width:370px; font-size:12px; }.request__contact { margin-top:35px; }.request__contact a { font-size:24px; font-weight:800; display:block; }.request__contact span { font-size:10px; }.form { display:grid; gap:18px; }.form__row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.form label { display:block; font-size:10px; font-weight:700; }.form input,.form select,.form textarea { display:block; width:100%; padding:12px 0; border:0; border-bottom:1px solid #5f57276e; border-radius:0; background:transparent; outline-offset:3px; font-size:12px; }.form input::placeholder,.form textarea::placeholder { color:#68602d; }.form textarea { resize:vertical; min-height:73px; }.form__bottom { display:flex; align-items:center; gap:20px; }.form__bottom small { font-size:9px; line-height:1.6; max-width:210px; }.form-status { padding:13px 15px; background:#fff9; font-size:12px; margin:0; }
.faq { display:grid; grid-template-columns:1fr 1.1fr; gap:95px; }.faq h2 { margin-top:20px; }.faq details { border-bottom:1px solid var(--line); }.faq summary { list-style:none; padding:20px 25px 20px 0; cursor:pointer; position:relative; font-weight:700; font-size:12px; }.faq summary::after { content:'+'; position:absolute; right:0; font-size:20px; top:14px; }.faq details[open] summary::after { content:'−'; }.faq details p { color:var(--muted); font-size:12px; padding-right:25px; }
.footer { background:#1b201c; color:#fff; padding:55px 0 20px; }.footer__grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:45px; }.footer .brand { display:block; }.footer .brand img { background:#fff; padding:4px 8px; width:172px; height:auto; }.footer__brand p { color:#929c8e; font-size:10px; max-width:205px; margin:19px 0; }.footer h3 { font-size:9px; text-transform:uppercase; letter-spacing:.15em; color:#929c8e; margin:0 0 20px; }.footer__links { display:grid; gap:8px; font-size:10px; }.footer__links a:hover { color:var(--yellow); }.footer__links .footer-phone { font-size:16px; font-weight:700; }.footer__bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #3b4437; padding-top:20px; margin-top:45px; color:#889481; font-size:9px; }
.dialog { border:0; padding:38px; width:min(590px,calc(100% - 32px)); max-height:90vh; color:var(--ink); background:var(--paper); }.dialog::backdrop { background:#172014b8; backdrop-filter:blur(5px); }.dialog h2 { font-size:36px; margin:22px 0 12px; }.dialog>p { color:var(--muted); font-size:12px; }.dialog__close { position:absolute; right:16px; top:13px; border:0; background:none; font-size:27px; }.dialog .form { margin-top:25px; }.dialog .form__bottom { display:block; }.dialog .form__bottom small { display:block; max-width:none; margin-top:13px; }.dialog .form input::placeholder,.dialog .form textarea::placeholder { color:#767b6f; }
.detail-hero h1 { font-size:clamp(48px,5vw,72px); }.detail-hero .hero__layout { min-height:510px; }.detail-hero .hero__art img { width:95%; margin-left:3%; transform:none; max-height:500px; object-fit:contain; }.detail-hero .hero__copy { padding-top:50px; }.detail__intro { display:grid; grid-template-columns:1fr 1fr; gap:80px; margin-bottom:40px; }.detail__intro p { color:var(--muted); font-size:13px; }.specs { width:100%; border-collapse:collapse; font-size:12px; }.specs th,.specs td { text-align:left; border-bottom:1px solid var(--line); padding:16px; }.specs th { background:var(--paper); font-size:10px; }.table-wrap { overflow:auto; }.spec-note { color:var(--muted); font-size:10px; margin-top:15px; }.back { display:inline-block; font-size:11px; color:var(--muted); margin-top:23px; }.specs .text-button { white-space:nowrap; }
@media(min-width:1600px) { .hero__art img { width:110%; } }
@media(max-width:1150px) { .wrap { width:calc(100% - 56px); }.header__inner { gap:18px; }.nav { gap:17px; }.phone { display:none; }.hero__layout { min-height:570px; }.catalog-grid { grid-template-columns:repeat(2,1fr); }.product-card__image { aspect-ratio:1.55; }.product-card__image img { max-height:280px; }.engineering__grid,.request__grid,.faq { gap:45px; }.benefit { padding:0 15px; }.benefit>span { font-size:20px; } }
@media(max-width:900px) { .wrap { width:calc(100% - 40px); }.header__inner { height:76px; }.brand img { width:153px; }.brand small { font-size:7px; margin-left:43px; }.menu-toggle { display:block; }.header__contact { margin-left:auto; }.nav { display:none; position:absolute; top:76px; left:0; right:0; padding:24px; background:#fff; border-bottom:1px solid var(--line); }.nav.is-open { display:grid; }.hero__layout { grid-template-columns:1.15fr 1fr; min-height:500px; }.hero__copy { padding:45px 0; }h1 { font-size:54px; }.hero__actions { flex-wrap:wrap; }.hero__art img { width:140%; margin-left:-25%; }.hero__art::before { width:270px; height:270px; top:100px; }.art-caption { left:0; bottom:30px; }.art-tag { right:0; }.art-tag--bottom { display:none; }.hero__stamp { display:none; }.benefits__grid { grid-template-columns:1fr 1fr; gap:20px 0; }.benefit:nth-child(3) { padding-left:0; }.benefit:nth-child(2) { border:0; }.section { padding:65px 0; }.section-head>p { max-width:285px; }.engineering__grid,.request__grid,.faq { grid-template-columns:1fr; gap:35px; }.engineering p { max-width:600px; }.request h2 { font-size:43px; }.request__contact { margin-top:20px; }.applications { grid-template-columns:1fr 1fr; }.footer__grid { grid-template-columns:1fr 1fr; }.detail__intro { gap:35px; }.catalog-tools { flex-wrap:wrap; }.search { width:100%; }.process__grid { gap:17px; } }
@media(max-width:560px) { .wrap { width:calc(100% - 36px); }.topline .wrap { font-size:8px; }.topline span:last-child { display:none; }.header__inner { height:70px; gap:10px; }.header .brand img { width:134px; height:39px; }.header .brand small { font-size:6px; margin-left:38px; }.header__contact .btn { min-height:37px; padding:8px 12px; font-size:9px; }.header__contact .arrow { display:none; }.menu-toggle { font-size:18px; padding:4px 8px; }.nav { top:70px; }.crumbs { font-size:9px; gap:7px; padding-top:18px; }.hero__layout { grid-template-columns:1fr; }.hero__copy { padding:36px 0 0; }.eyebrow { font-size:8px; }h1 { font-size:55px; margin:22px 0; }.hero__copy>p { font-size:12px; max-width:340px; }.hero__actions { gap:8px; margin-top:24px; }.hero__actions .btn { padding:12px 16px; font-size:10px; gap:16px; min-height:45px; }.hero__note { margin-top:17px; font-size:9px; }.hero__art { height:320px; margin-top:8px; }.hero__art img { width:100%; height:360px; margin-left:0; object-fit:contain; transform:rotate(-9deg); }.hero__art::before { width:220px; height:220px; top:48px; box-shadow:0 0 0 35px #e8ebdf44,0 0 0 36px #d8ddce77; }.hero__art::after { top:22px; }.art-tag { top:40px; font-size:8px; padding-left:16px; }.art-caption { bottom:20px; font-size:8px; left:5px; }.art-caption b { font-size:16px; }.benefits__grid { padding:20px 0; gap:20px 0; }.benefit { padding:0 9px; gap:9px; }.benefit b { font-size:9px; }.benefit small { font-size:8px; }.section { padding:54px 0; }h2 { font-size:35px; }.section-head { display:block; margin:16px 0 25px; }.section-head>p { margin-top:18px; max-width:330px; font-size:11px; }.filters { gap:5px; }.filter { padding:8px 10px; font-size:9px; }.catalog-grid { grid-template-columns:1fr; gap:18px; }.product-card__image { aspect-ratio:1.45; }.product-card__image img { height:240px; }.product-card__body { padding:21px; }.product-card h3 { font-size:25px; }.product-card p { min-height:0; font-size:12px; }.catalog-help { align-items:start; flex-direction:column; gap:9px; }.engineering h2 { font-size:36px; }.blueprint__head { font-size:8px; padding:12px 14px; }.blueprint svg { height:185px; }.blueprint__key { margin:0 14px 14px; gap:0 12px; }.blueprint__key div { font-size:8px; gap:5px; }.process__grid { grid-template-columns:1fr; gap:25px; }.process__item p { max-width:none; font-size:11px; }.applications { gap:10px; }.application { padding:20px 15px; }.application h3 { font-size:11px; }.application p { font-size:10px; }.request h2 { font-size:41px; }.request__grid { gap:30px; }.form__row { grid-template-columns:1fr; }.form__bottom { align-items:start; flex-direction:column; gap:12px; }.form__bottom small { max-width:280px; }.form__bottom .btn { width:100%; }.footer__grid { gap:32px 18px; }.footer__brand { grid-column:1/-1; }.footer__grid>div:last-child { grid-column:1/-1; }.footer__bottom { flex-direction:column; gap:7px; }.dialog { padding:30px 23px; }.dialog h2 { font-size:31px; }.detail-hero h1 { font-size:49px; }.detail-hero .hero__art img { height:300px; }.detail__intro { grid-template-columns:1fr; gap:22px; }.specs th,.specs td { padding:12px; }.specs { min-width:600px; }.specs--custom { min-width:0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }*,*::before,*::after { transition:none!important; animation:none!important; } }
