/*
Theme Name: ZIMO
Theme URI: https://zimo.uz/
Author: ZIMO
Description: Тема по макету ZIMO с Carbon Fields и классическим редактором.
Version: 1.5.5
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: zimo
*/

@font-face{font-family:Mulish;src:url('assets/fonts/mulish-light.ttf') format('truetype');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Mulish;src:url('assets/fonts/mulish-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Mulish;src:url('assets/fonts/mulish-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
:root{--white:#fff;--black:#2b2a29;--container:1735px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--black);background:#fff;font-family:Mulish,Arial,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--black);outline-offset:4px}
.hero :focus-visible,.feature--taupe :focus-visible,.benefits-intro :focus-visible{outline-color:var(--white)}
.skip-link{position:absolute;left:12px;top:-80px;z-index:1000;padding:10px 16px;background:#fff;color:#000}
.skip-link:focus{top:12px}
.quick-nav{position:fixed;z-index:30;top:20px;left:50%;display:flex;align-items:center;justify-content:center;gap:40px;width:318px;height:44px;padding:12px 24px;transform:translateX(-50%);overflow:hidden;border-radius:120px;background:rgba(255,255,255,.8);box-shadow:0 4px 11px rgba(67,67,67,.3);backdrop-filter:blur(2px);white-space:nowrap}
.quick-nav a,.quick-nav button{display:block;padding:0;border:0;background:none;color:var(--black);font-size:14px;font-weight:400;line-height:20px;text-decoration:none}
.quick-nav a{text-decoration:underline;text-decoration-color:var(--black);text-underline-offset:4px}
.language-switch{position:fixed;z-index:31;top:20px;right:48px;display:flex;align-items:center;gap:2px;height:44px;padding:4px;border-radius:120px;background:rgba(255,255,255,.8);box-shadow:0 4px 11px rgba(67,67,67,.2);backdrop-filter:blur(2px)}
.language-switch a{display:flex;align-items:center;justify-content:center;min-width:40px;height:36px;padding:0 8px;border-radius:100px;color:var(--black);font-size:13px;font-weight:500;text-decoration:none}
.language-switch a[aria-current="page"]{background:var(--black);color:#fff}
.admin-bar .quick-nav,.admin-bar .language-switch{top:52px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 32px;border:0;border-radius:100px;font-size:16px;font-weight:500;line-height:1.4;text-align:center;white-space:nowrap;transition:background-color .2s,transform .2s}
.button--dark{background:var(--black);color:var(--white)}
.button--light{background:var(--white);color:var(--black)}
@media(hover:hover) and (pointer:fine){.quick-nav a:hover,.quick-nav button:hover{background:rgba(255,255,255,.65)}.button:hover{transform:translateY(-2px)}.button--dark:hover{background:#464442}.button--light:hover{background:#f0efed}}
.button--large{min-height:80px;padding:20px 48px;font-size:28px}
.hero{position:relative;display:flex;align-items:center;min-height:clamp(680px,63vw,1200px);overflow:hidden;color:var(--white);background:var(--black)}
.hero-swiper{position:absolute;inset:0;z-index:0;width:100%;height:100%}
.hero-swiper .swiper-slide img{width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(90deg,rgba(26,25,22,.8) 0%,rgba(26,25,22,0) 41%),linear-gradient(212deg,rgba(26,25,22,.29) 0%,rgba(26,25,22,0) 27%)}
.hero-logo{position:absolute;top:22px;left:clamp(24px,2.52vw,48px);z-index:3;display:block;width:clamp(92px,8.93vw,170px);height:auto}
.hero-logo img{width:100%;height:auto}
.hero-content{position:relative;z-index:2;width:min(100%,42vw);max-width:800px;padding:80px clamp(24px,2.52vw,48px)}
.hero h1{max-width:740px;margin:0 0 20px;font-size:clamp(24px,2.52vw,48px);font-weight:300;line-height:1.2;text-transform:uppercase}
.hero-intro,.hero-closing{margin:0;font-size:clamp(16px,1.47vw,28px);line-height:1.2}
.hero-list{display:grid;gap:8px;margin:12px 0 20px;padding-left:32px;list-style:none;font-size:clamp(12px,1.05vw,20px);font-weight:400;line-height:1.4}
.hero-list li{position:relative}
.hero-list li::before{content:'';position:absolute;top:.56em;left:-22px;width:7px;height:7px;border-radius:50%;background:#fff}
.hero-actions{display:flex;align-items:center;gap:24px;margin-top:28px}
.hero-actions a{font-size:16px;font-weight:400;text-underline-offset:3px}
.hero-dots,.image-dots{position:absolute;z-index:3;display:flex;gap:4px;width:auto}
.hero-dots{right:48px;bottom:48px}
.hero-dots .swiper-pagination-bullet,.image-dots .swiper-pagination-bullet{width:12px;height:12px;margin:0!important;padding:0;border:2px solid transparent;border-radius:50%;background:#f7f6f6;opacity:1;cursor:pointer}
.hero-dots .swiper-pagination-bullet-active,.image-dots .swiper-pagination-bullet-active{border-color:var(--black)}
.hero .hero-dots.swiper-pagination-bullets.swiper-pagination-horizontal{right:48px;bottom:48px;left:auto;width:auto}
.image-dots{left:50%;bottom:32px;transform:translateX(-50%);align-items:center}
.feature-media .image-dots.swiper-pagination-bullets.swiper-pagination-horizontal{left:50%;bottom:32px;width:auto}
.image-dots:empty{display:none}
.feature{display:flex;align-items:center;min-height:clamp(760px,72.2vw,1376px);padding:88px 4.5%}
.feature--light{background:#fff;color:var(--black)}
.feature--taupe{background:var(--black);color:#fff}
.feature-inner{display:grid;grid-template-columns:minmax(0,573px) minmax(0,909px);align-items:center;justify-content:space-between;gap:48px;width:100%;max-width:var(--container);margin:auto}
.feature--media-left .feature-inner{grid-template-columns:minmax(0,909px) minmax(0,573px)}
.feature-copy{max-width:573px}
.feature-copy h2{margin:0 0 52px;font-size:clamp(28px,2.1vw,40px);font-weight:300;line-height:1.4}
.feature-media{position:relative;width:100%;aspect-ratio:909/1136;overflow:hidden;border-radius:4px}
.feature-swiper{width:100%;height:100%}
.feature-media img{width:100%;height:100%;object-fit:fill}
.steps{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:1084px;padding:120px 24px 96px;background:#fff;text-align:center}
.steps h2{margin:0;font-size:clamp(38px,3vw,56px);font-weight:300;line-height:1.4}
.steps-subtitle{margin:0 0 56px;font-size:28px;line-height:1.4}
.steps-list{display:grid;gap:52px;max-width:850px;margin:0 0 56px;padding:0;list-style:none;text-align:left}
.steps-list li{display:grid;grid-template-columns:52px 1fr;gap:24px}
.step-number{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid var(--black);border-radius:50%;font-size:30px;line-height:1}
.steps-list h3{margin:0 0 4px;font-size:32px;font-weight:300;line-height:1.2}
.steps-list p{margin:0;font-size:20px;line-height:1.4}
.benefits-intro{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:672px;padding:100px 24px;background:var(--black);color:#fff;text-align:center}
.benefits-intro h2{max-width:620px;margin:0 0 20px;font-size:clamp(40px,3vw,56px);font-weight:300;line-height:1.12}
.benefits-intro p{max-width:800px;margin:0;font-size:clamp(22px,1.47vw,28px);line-height:1.4}
.benefits-intro img{margin-top:48px}
.benefit .feature-copy h2{margin-bottom:36px;font-size:clamp(30px,2.52vw,48px);line-height:1.2}
.benefit-items{display:grid;gap:28px;margin-bottom:40px}
.benefit-items h3{margin:0 0 5px;font-size:28px;font-weight:300;line-height:1.2}
.benefit-items p{margin:0;font-size:16px;font-weight:400;line-height:1.5}
.site-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:760px;padding:100px 24px;color:var(--black);background:#fff;text-align:center}
.site-footer--minimal{min-height:600px;padding:90px 24px}
.footer-brand{display:flex;align-items:center;gap:48px;width:100%;margin-bottom:66px;font-size:56px;font-weight:300;line-height:1}
.footer-brand::before,.footer-brand::after{content:'';height:1px;flex:1;background:#bdbdbd}
.footer-phone{display:inline-block;margin:0 0 28px;color:var(--black);font-size:clamp(30px,3.1vw,52px);font-weight:500;line-height:1.15;text-decoration:none;white-space:nowrap}
@media(hover:hover) and (pointer:fine){a.footer-phone:hover{text-decoration:underline;text-underline-offset:6px}}
.site-footer--minimal .footer-phone{margin-bottom:0}
.site-footer--minimal .legal-links{margin-top:28px}
.social-links{display:flex;justify-content:center;align-items:center;gap:40px;width:min(100%,800px);padding:48px 0;border-top:1px solid #e4e4e4;border-bottom:1px solid #bdbdbd}
.social-links a,.social-links span{display:flex;align-items:center;justify-content:center;width:48px;height:48px}
.social-links img{max-width:48px;max-height:48px}
.social-links .social-link--youtube{width:61px;height:60px}
.social-links .social-link--youtube img{max-width:61px;max-height:60px}
.social-links--preview span{cursor:default}
.legal-links{display:grid;gap:22px;margin:60px 0;color:var(--black);font-size:14px;line-height:1.4}
.legal-links a{text-decoration:none}.legal-links a:hover{text-decoration:underline}
.site-footer small{margin-top:42px;font-size:14px;color:#a6a6a6}
.content-page{max-width:900px;min-height:65vh;margin:0 auto;padding:100px 24px;font-size:18px;line-height:1.6}.content-page h1{font-size:48px;font-weight:300}.content-page h2{font-size:30px;font-weight:300}.content-page article+article{margin-top:60px}
/* Design selector */
body.designer-open{overflow:hidden}
.designer-dialog{position:fixed;inset:0;z-index:100;display:none;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;overflow:auto;padding:0;border:0;background:transparent}
.designer-dialog::backdrop{background:transparent}
.designer-dialog[open]{display:flex;align-items:flex-start;justify-content:center}
.designer-panel{position:relative;display:grid;grid-template-columns:minmax(0,43.36%) minmax(0,56.64%);width:min(100%,1905px);height:min(897px,100dvh);overflow:hidden;background:#fff}
.designer-close{position:absolute;z-index:4;top:18px;right:22px;width:36px;height:36px;padding:0;border:0;background:none;color:#999;font-size:38px;font-weight:300;line-height:1}
.designer-gallery{display:grid;grid-template-columns:minmax(0,1fr) 122px;height:100%;min-height:0;overflow:hidden;background:#282725}
.designer-stage{height:100%;min-height:0;overflow:hidden}
.designer-swiper{width:100%;height:100%}
.designer-stage img{width:100%;height:100%;object-fit:fill}
.designer-thumbs{display:flex;flex-direction:column;gap:6px;min-height:0;max-height:100%;overflow:auto;padding:6px;background:#252525;scrollbar-width:thin}
.designer-thumb{flex:0 0 104px;width:100%;padding:0;border:2px solid transparent;background:none;opacity:.8}
.designer-thumb[aria-pressed="true"]{border-color:var(--white);opacity:1}
.designer-thumb img{width:100%;height:100%;object-fit:fill}
.designer-details{overflow:auto;padding:48px clamp(48px,9.45vw,180px) 50px;color:var(--black)}
.designer-details h2{margin:0 0 32px;font-size:clamp(26px,2vw,40px);font-weight:400;line-height:1.2}
.designer-fieldset{margin:0 0 30px;padding:0;border:0}
.designer-fieldset legend{margin-bottom:10px;color:#8a8a8a;font-size:14px;font-weight:400;text-transform:uppercase}
.designer-options{display:grid;grid-template-columns:repeat(4,134px);gap:8px}
.designer-option{min-width:0;min-height:48px;padding:10px 12px;border:1px solid #bababa;border-radius:4px;background:#fff;color:#000;font-size:14px;font-weight:400;overflow-wrap:anywhere}
#designer-styles{display:flex;flex-wrap:wrap;gap:8px}
#designer-styles .designer-option{flex:0 1 auto;max-width:100%;padding-inline:16px;overflow-wrap:break-word}
.designer-option[aria-pressed="true"]{border:2px solid var(--black)}
.designer-option--color{display:flex;align-items:center;justify-content:center;gap:8px}
.color-dot{width:16px;height:16px;border-radius:50%;background:var(--dot)}
.designer-name{margin:15px 0 12px;font-size:32px;font-weight:400;text-transform:uppercase}
.designer-description{max-width:750px;margin:0 0 12px;font-size:16px;font-weight:400;line-height:1.5}
.designer-metrics{display:grid;grid-template-columns:1fr 1fr;gap:22px 26px}
.designer-metric{font-size:clamp(11px,.84vw,16px);font-weight:400}
.designer-metric-line{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px;white-space:nowrap}
.designer-metric-track{height:3px;background:#ddd}.designer-metric-track span{display:block;height:100%;background:var(--black)}
.designer-note{margin-top:25px;color:#767676;font-size:13px;font-weight:400}
.designer-empty{grid-column:1/-1;align-self:center;justify-self:center;max-width:650px;padding:60px 24px;text-align:center}.designer-empty h2{font-size:36px;font-weight:300}.designer-empty p{font-size:18px}
@media(max-width:1600px){.designer-options{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1100px){.feature-inner,.feature--media-left .feature-inner{gap:36px}.feature-copy h2{font-size:30px}.button--large{font-size:22px}.benefit-items{gap:20px}.benefit-items h3{font-size:23px}.designer-panel{grid-template-columns:45% 55%}.designer-gallery{grid-template-columns:minmax(0,1fr) 80px}.designer-thumb{flex-basis:70px}.designer-details{padding:58px 36px}}
@media(max-width:760px){.hero{min-height:720px;align-items:flex-end;background-position:57% center}.hero-logo{left:24px;top:22px}.hero-content{width:100%;padding:90px 24px 84px}.hero h1{font-size:35px}.hero-intro,.hero-closing{font-size:21px}.hero-list{font-size:16px;gap:7px}.hero-actions{flex-wrap:wrap;gap:16px}.hero-dots{right:24px;bottom:22px}.hero-dots button{width:7px;height:7px;border-width:1px}.feature{min-height:0;padding:80px 24px}.feature-inner,.feature--media-left .feature-inner{display:flex;flex-direction:column;align-items:stretch;gap:42px}.feature--media-left .feature-media{order:1}.feature--media-left .feature-copy{order:2}.feature-copy{max-width:none}.feature-copy h2{margin-bottom:34px;font-size:27px}.feature-media{max-width:560px;align-self:center}.button--large{min-height:54px;padding:14px 32px;font-size:16px}.steps{min-height:0;padding:90px 24px}.steps h2{font-size:38px}.steps-subtitle{margin-bottom:44px;font-size:20px}.steps-list{gap:34px;margin-bottom:40px}.steps-list li{grid-template-columns:40px 1fr;gap:14px}.step-number{width:40px;height:40px;font-size:22px}.steps-list h3{font-size:23px}.steps-list p{font-size:16px}.benefits-intro{min-height:430px;padding:80px 24px}.benefits-intro h2{font-size:42px}.benefits-intro p{font-size:20px}.benefit .feature-copy h2{font-size:34px}.benefit-items h3{font-size:22px}.site-footer{min-height:600px;padding:80px 24px}.footer-brand{gap:20px;margin-bottom:45px;font-size:36px}.social-links{gap:14px;padding:28px 0}.social-links a,.social-links span{width:40px;height:40px}.social-links img{max-width:40px;max-height:40px}.legal-links{gap:15px;margin:42px 0;font-size:12px}.designer-dialog{padding:0}.designer-dialog[open]{display:block}.designer-panel{display:flex;flex-direction:column;height:auto;max-height:none;min-height:100vh}.designer-gallery{grid-template-columns:minmax(0,1fr) 72px;height:55vh;min-height:360px}.designer-stage{min-height:0}.designer-thumb{flex-basis:65px}.designer-details{padding:38px 24px 70px}.designer-details h2{padding-right:30px;font-size:27px}.designer-close{top:8px;right:10px;padding:0;background:#fff;border-radius:50%}.designer-options{grid-template-columns:repeat(2,minmax(0,1fr))}.designer-metrics{gap:16px}.designer-metric{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
@media(max-width:760px){.quick-nav{top:14px;max-width:calc(100% - 28px);gap:24px}.quick-nav a,.quick-nav button{font-size:12px}.hero-logo{top:72px;left:24px;width:120px;height:auto}.hero-logo img{width:120px;height:auto}}
@media(max-width:760px){.language-switch{top:72px;right:24px;height:36px}.language-switch a{min-width:34px;height:28px;font-size:11px}}
@media(max-width:760px){.admin-bar .quick-nav{top:60px}.admin-bar .language-switch,.admin-bar .hero-logo{top:118px}}
@media(max-width:760px){
  .quick-nav,.language-switch{position:absolute}
  .hero{--mobile-visual-height:clamp(240px,64vw,310px);display:block;min-height:0;background:var(--black)}
  .hero-swiper{inset:0 0 auto;height:var(--mobile-visual-height)}
  .hero-swiper .swiper-slide img{object-position:center 55%}
  .hero-shade{inset:0 0 auto;height:var(--mobile-visual-height);background:linear-gradient(180deg,rgba(26,25,22,.58),rgba(26,25,22,.07) 76%)}
  .hero-logo{top:76px;left:24px;width:112px}
  .language-switch{top:76px}
  .hero-content{width:100%;max-width:none;margin-top:var(--mobile-visual-height);padding:34px 24px 46px;background:var(--black)}
  .hero h1{margin-bottom:18px;font-size:clamp(28px,7.7vw,33px);line-height:1.13;overflow-wrap:break-word}
  .hero-intro,.hero-closing{font-size:18px;line-height:1.3}
  .hero-list{gap:7px;margin:12px 0 20px;padding-left:24px;font-size:15px;line-height:1.36}
  .hero-list li::before{top:.55em;left:-18px;width:6px;height:6px}
  .hero-actions{flex-direction:column;align-items:flex-start;gap:12px;margin-top:22px}
  .hero-actions .button{min-height:48px;padding:12px 24px;font-size:14px}
  .hero-actions a{font-size:14px}
  .hero .hero-dots.swiper-pagination-bullets.swiper-pagination-horizontal{top:calc(var(--mobile-visual-height) - 25px);right:24px;bottom:auto}
  .hero-dots .swiper-pagination-bullet{width:7px;height:7px;border-width:1px}
}

/* Floating contact form */
body.zimo-contact-open{overflow:hidden}
.zimo-contact-fab{position:fixed;right:clamp(18px,2.5vw,42px);bottom:max(22px,env(safe-area-inset-bottom) + 16px);z-index:80;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:14px 22px;border:1px solid rgba(255,255,255,.35);border-radius:100px;background:var(--black);color:#fff;font-size:15px;font-weight:500;line-height:1.2}
.zimo-contact-fab svg{flex:0 0 auto}
.zimo-contact-fab__mobile{display:none}
@media(hover:hover) and (pointer:fine){.zimo-contact-fab:hover{background:#464442}}
.zimo-contact-dialog{width:min(100% - 32px,600px);max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:0;border-radius:4px;background:#fff;color:var(--black);overflow:auto}
.zimo-contact-dialog::backdrop{background:rgba(22,20,18,.72)}
.zimo-contact-panel{position:relative;padding:48px clamp(28px,5vw,64px) 54px}
.zimo-contact-close{position:absolute;top:20px;right:24px;width:38px;height:38px;padding:0;border:0;background:none;color:#76716c;font-size:36px;font-weight:300;line-height:1}
.zimo-contact-brand{margin-bottom:30px;color:var(--black);font-size:18px;font-weight:400;letter-spacing:.05em}
.zimo-contact-panel h2{margin:0 0 10px;font-size:clamp(32px,3vw,42px);font-weight:300;line-height:1.15}
.zimo-contact-intro{max-width:420px;margin:0 0 30px;color:#5f5953;font-size:16px;line-height:1.5}
#zimo-contact-form{display:flex;flex-direction:column}
#zimo-contact-form>label:not(.zimo-contact-consent){margin:0 0 7px;font-size:13px;font-weight:500}
#zimo-contact-form>input,#zimo-contact-form>textarea{width:100%;margin:0 0 22px;padding:11px 0;border:0;border-bottom:1px solid #bdb7b0;border-radius:0;background:#fff;color:var(--black);font-size:17px;line-height:1.45;outline:none}
#zimo-contact-form>input:focus,#zimo-contact-form>textarea:focus{border-bottom:2px solid var(--black)}
#zimo-contact-form>textarea{min-height:110px;resize:vertical}
.zimo-contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.zimo-contact-status{margin:0 0 18px;padding:12px 14px;border-left:3px solid var(--black);background:#f2f0ed;font-size:14px;line-height:1.4}
.zimo-contact-status[data-state="error"]{border-color:#b5443d;background:#fff0ef}
.zimo-contact-status[data-state="success"]{border-color:#1f9e46;background:#edf8f0}
.zimo-contact-submit{align-self:flex-start;min-height:54px;padding:14px 30px;border:0;border-radius:100px;background:var(--black);color:#fff;font-size:16px;font-weight:500}
.zimo-contact-submit:disabled{opacity:.65;cursor:wait}
@media(hover:hover) and (pointer:fine){.zimo-contact-submit:not(:disabled):hover{background:#464442}}
@media(max-width:760px){
  .zimo-contact-fab{right:18px;bottom:max(18px,env(safe-area-inset-bottom) + 12px);min-height:52px;padding:12px 17px;font-size:14px}
  .zimo-contact-fab__desktop{display:none}
  .zimo-contact-fab__mobile{display:inline}
  .zimo-contact-dialog{inset:0;width:100%;height:100dvh;max-height:none;margin:0;border-radius:0}
  .zimo-contact-panel{min-height:100%;padding:48px 24px max(38px,env(safe-area-inset-bottom) + 24px)}
  .zimo-contact-brand{margin-bottom:32px}
  .zimo-contact-panel h2{font-size:36px}
}
@media(max-width:760px){.social-links .social-link--youtube{width:50px;height:49px}.social-links .social-link--youtube img{max-width:50px;max-height:49px}}
@media(max-width:760px){.site-footer{min-height:520px;padding:72px 24px}}
