@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");
:root{--bg:#f5f5f7;--bg2:#ececee;--card:#ffffff;--line:#d2d2d7;--text:#1d1d1f;--muted:#6e6e73;--accent:#1d1d1f;--accent2:#0066cc;--r:18px;
--blue:#1d1d1f;--blue-dark:#000; /* named --blue/--blue-dark but kept as black/white per current theme */
--font:"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,Inter,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font-family:var(--font);-webkit-font-smoothing:antialiased;letter-spacing:-.011em;background:var(--bg);color:var(--text);line-height:1.6}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.container{width:min(1200px,100% - 32px);margin-inline:auto}
.ico{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;vertical-align:-3px;margin-right:6px}

.topbar{background:var(--bg2);border-bottom:1px solid var(--line);font-size:14px}
.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:8px}
.lang{padding:2px 10px;border-radius:6px;color:var(--muted)}
.lang.is-active{background:var(--accent);color:#fff}
.topbar__phone{font-weight:600}

.header{position:sticky;top:0;z-index:50;background:rgba(245,245,247,.8);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--line)}
.header__in{display:flex;align-items:center;justify-content:space-between;height:56px}
.logo{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:600;letter-spacing:-.02em}
.logo b{color:var(--muted);font-weight:600}
.logo__mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--accent);color:#fff;font-weight:700}
.logo__sub{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.nav{display:flex;align-items:center;gap:24px;font-size:13px}
.nav a{color:var(--muted);transition:color .2s}
.nav a:hover{color:var(--text)}
.dd{position:relative}
.dd__menu{position:absolute;top:100%;left:-12px;min-width:180px;padding:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);display:none;flex-direction:column}
.dd:hover .dd__menu{display:flex}
.dd__menu a{padding:8px 12px;border-radius:8px}
.dd__menu a:hover{background:var(--bg2)}
.burger{display:none;width:40px;height:40px;flex-direction:column;justify-content:center;gap:5px;align-items:center}
.burger span{width:22px;height:2px;background:var(--text)}

.hero{position:relative;height:min(640px,78vh);min-height:480px;overflow:hidden}
.slide{color:var(--text);position:absolute;inset:0;background:var(--g);opacity:0;transition:opacity .9s;display:flex;align-items:center}
.slide.is-active{opacity:1;z-index:1}
.slide::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 30%,rgba(255,255,255,.5),transparent 50%)}
.slide__row{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:32px}
.slide__in{max-width:640px}
.slide__in h1{max-width:720px;font-size:clamp(32px,5.5vw,64px);line-height:1.07;font-weight:600;letter-spacing:-.03em;margin:12px 0 28px}
.eyebrow{font-size:19px;font-weight:600;color:var(--muted)}
.slide__index{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--muted);margin-bottom:16px}
.slide__index i{width:28px;height:1px;background:currentColor;display:inline-block}
.btn{display:inline-block;padding:12px 24px;border-radius:999px;background:var(--blue);color:#fff;font-weight:600;border:1px solid var(--blue);transition:transform .2s,background .2s,border-color .2s}
.btn:hover{transform:translateY(-2px);background:var(--blue-dark);border-color:var(--blue-dark)}
.btn--outline{background:#fff;color:var(--blue);border:1px solid var(--blue)}
.btn--outline:hover{background:var(--blue);color:#fff}

/* kinetic text reveal — restarted via JS reflow trick on each slide change */
.kinetic>*{opacity:0;transform:translateY(16px);animation:heroRise .8s cubic-bezier(.22,.9,.32,1) forwards}
.kinetic>*:nth-child(1){animation-delay:.05s}
.kinetic>*:nth-child(2){animation-delay:.16s}
.kinetic>*:nth-child(3){animation-delay:.28s}
.kinetic>*:nth-child(4){animation-delay:.42s}
@keyframes heroRise{to{opacity:1;transform:translateY(0)}}

/* decorative per-slide artwork */
.slide__art{flex:none;width:clamp(200px,24vw,300px);height:auto;color:var(--text);overflow:visible}
.iris__ring{fill:none;stroke:currentColor;stroke-opacity:.18;stroke-width:1}
.iris__ring--2{stroke-opacity:.28}
.iris__hole{fill:none;stroke:currentColor;stroke-opacity:.4;stroke-width:1.5}
.iris__blades{fill:currentColor;fill-opacity:.1;transform-origin:100px 100px;animation:irisBreathe 8s ease-in-out infinite}
@keyframes irisBreathe{0%,100%{transform:rotate(0deg) scale(1)}50%{transform:rotate(16deg) scale(1.05)}}

.slide__art--flare{color:#f5f5f7}
.flare__ring{fill:none;stroke:currentColor;stroke-opacity:.35;stroke-width:1;transform-origin:110px 110px;animation:flarePulse 4.5s ease-in-out infinite}
.flare__ring--2{animation-delay:.3s}
.flare__ring--3{animation-delay:.6s}
@keyframes flarePulse{0%,100%{transform:scale(1);stroke-opacity:.3}50%{transform:scale(1.06);stroke-opacity:.55}}
.flare__streak{mix-blend-mode:screen;animation:flareSweep 5s ease-in-out infinite alternate}
@keyframes flareSweep{from{transform:translateX(-30px)}to{transform:translateX(30px)}}

.nodes__lines line{stroke-opacity:.25;stroke-width:1.5}
.nodes__dots .n{transform-box:fill-box;transform-origin:center;animation:nodeFloat 4s ease-in-out infinite}
.n2{animation-delay:.5s}.n3{animation-delay:1s}.n4{animation-delay:1.5s}
@keyframes nodeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

.hero__nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.7);color:var(--text);font-size:26px}
.hero__prev{left:16px}.hero__next{right:16px}
.hero__progress{position:absolute;z-index:3;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.hero__progress .bar{width:40px;height:3px;border-radius:3px;background:rgba(31,42,68,.15);overflow:hidden;cursor:pointer}
.hero__progress .bar i{display:block;height:100%;width:0;background:var(--text);border-radius:3px}
.hero__progress .bar.is-active i{animation:barGrow 6s linear forwards}
@keyframes barGrow{from{width:0}to{width:100%}}
.hero.is-dark .hero__progress .bar{background:rgba(255,255,255,.22)}
.hero.is-dark .hero__progress .bar i{background:#fff}
.hero.is-dark .hero__nav{background:rgba(0,0,0,.35);color:#fff}
@media(max-width:960px){.slide__art{display:none}.slide__row{justify-content:center}}

.section{padding:72px 0}
.section--alt{background:#fff}
.section__title{font-size:clamp(28px,4vw,44px);font-weight:600;letter-spacing:-.025em;margin-bottom:32px}

.cats{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.cat{display:flex;flex-direction:column;align-items:center;gap:14px;padding:28px 12px;background:var(--card);border:0;border-radius:var(--r);text-align:center;transition:.25s}
.cat:hover{border-color:var(--line);transform:scale(1.03);background:#fafafc}
.cat__ico{width:48px;height:48px;fill:none;stroke:var(--text);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

.news{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:var(--bg);border:0;border-radius:var(--r);overflow:hidden;padding-bottom:20px}
.card{display:block;color:inherit;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,.08)}
.card__img{height:220px;background:#fff;margin-bottom:16px;display:flex;align-items:center;justify-content:center;padding:14px}
.card__img img{max-width:100%;max-height:100%;object-fit:contain}
.card time,.card h3,.card p{padding-inline:20px;display:block}
.card time{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.card h3{margin:6px 0;font-size:19px}
.card p{color:var(--muted);font-size:15px}

.srv{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.srv__item{padding:32px;background:var(--card);border-radius:var(--r)}
.srv__item h3{margin-bottom:8px}
.srv__item p{color:var(--muted)}

.vintage{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.vintage p{color:var(--muted);margin-bottom:24px}

.vintage__img{height:320px;border-radius:28px;background:radial-gradient(circle at 50% 50%,#1d1d1f 0 18%,#3a3a3c 19% 30%,#2a2a2c 31% 45%,#6e6e73 46% 48%,#2a2a2c 49%)}

.about{max-width:820px}
.about p{color:var(--muted);font-size:18px}
.stats{display:flex;gap:48px;margin-top:36px;flex-wrap:wrap}
.stats b{display:block;font-size:48px;font-weight:600;letter-spacing:-.03em}
.stats span{color:var(--muted)}

.footer{font-size:14px;background:var(--bg2);border-top:1px solid var(--line);padding-top:56px}
.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.footer h4{margin-bottom:12px}
.footer__grid>div>a{display:block;color:var(--muted);padding:3px 0}
.footer a:hover{color:var(--text)}
.muted{color:var(--muted);margin:10px 0}
.footer p{margin-bottom:10px}
.footer__bottom{margin-top:40px;padding:20px 0;border-top:1px solid var(--line);color:var(--muted);font-size:14px}

@media(max-width:1000px){.cats{grid-template-columns:repeat(4,1fr)}.nav{gap:14px;font-size:14px}}
@media(max-width:860px){
  .burger{display:flex}
  .nav{position:absolute;top:56px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:var(--bg2);border-bottom:1px solid var(--line);display:none;padding:8px 16px}
  .nav.is-open{display:flex}
  .nav>a,.dd>a{padding:12px 0;width:100%}
  .dd{width:100%}.dd__menu{display:flex;position:static;border:0;background:none;padding:0 0 0 14px}
  .news,.srv,.vintage{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .hero__nav{display:none}
  .cats{grid-template-columns:repeat(2,1fr)}
  .topbar__in{flex-wrap:wrap;justify-content:center}
  .footer__grid{grid-template-columns:1fr}
  .section{padding:48px 0}
}
.slide:nth-child(2) .btn{background:#f5f5f7;color:#1d1d1f}
.slide:nth-child(2) .btn:hover{background:#d8d8dc;border-color:#d8d8dc}
.slide:nth-child(2) .eyebrow{color:#a1a1a6}
.slide:nth-child(2) .slide__index{color:#8e8e93}

/* quantity selector: − 1 + */
.qty{display:inline-flex;align-items:stretch;height:32px;border:1px solid var(--text);border-radius:8px;overflow:hidden;background:#fff;flex:none}
.qty__btn{width:30px;font-size:16px;line-height:1;color:var(--text);transition:background .15s}
.qty__btn:hover{background:var(--bg2)}
.qty__val{min-width:34px;display:grid;place-items:center;font-size:14px;font-weight:600;border-inline:1px solid var(--text)}
.qty--lg{height:46px}
.qty--lg .qty__btn{width:46px;font-size:20px}
.qty--lg .qty__val{min-width:60px;font-size:18px}
