/* ==========================================================================
   NEMO WASH — landing site styles
   Palette and typography extracted from the live Wix site (www.nemowash.com):
     theme color_43 #024034  deep green      theme color_44 #46A679  green
     theme color_18 #C69D4D  gold            theme color_11 #2C3642  slate
     measured page background #235247, footer #AA8236, mint band #C8E7E0
   Fonts: Cinzel (headings, font_0..font_6) + Montserrat (body, font_7..font_9)
   ========================================================================== */

@font-face{
  font-family:'Cinzel';font-style:normal;font-weight:400 700;font-display:swap;
  src:url('/assets/fonts/cinzel-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Cinzel';font-style:normal;font-weight:400 700;font-display:swap;
  src:url('/assets/fonts/cinzel-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Montserrat';font-style:normal;font-weight:400 700;font-display:swap;
  src:url('/assets/fonts/montserrat-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Montserrat';font-style:normal;font-weight:400 700;font-display:swap;
  src:url('/assets/fonts/montserrat-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{
  --green-deep:#024034;      /* Wix color_43 */
  --green-page:#1D473D;      /* page background (measured #235247, deepened for contrast) */
  --green-panel:#235247;     /* measured section background */
  --green-brand:#46A679;     /* Wix color_44 — decorative fills */
  --green-card:#2F8462;      /* text-bearing green surfaces (AA with white) */
  --mint:#C8E7E0;            /* measured pale band */
  --gold:#C69D4D;            /* Wix color_18 — display type, rules, icons */
  --gold-soft:#E3C27E;       /* readable gold for inline links on dark green */
  --gold-pale:#F2DFAE;       /* gold numerals on the light-green price tiles */
  --gold-footer:#7E5F24;     /* footer (measured #AA8236, deepened for contrast) */
  --ink:#0C2C24;             /* dark text on light surfaces */
  --white:#fff;

  --serif:'Cinzel',Georgia,'Times New Roman',serif;
  --sans:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;

  --wrap:1180px;
  --header-h:64px;
}

*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;overflow-x:hidden;
  background:var(--green-page);
  color:var(--white);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.6;
}

img{max-width:100%;height:auto;display:block}

a{color:var(--gold-soft)}
a:hover{color:var(--white)}

:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:2px}

h1,h2,h3,h4,h5{font-family:var(--serif);font-weight:400;line-height:1.15;margin:0 0 .5em}
h2{font-size:clamp(1.55rem,1.1rem + 1.8vw,2.125rem)}
h3{font-size:clamp(1.1rem,1rem + .5vw,1.35rem)}

.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--gold);color:#1B1405;
  padding:12px 18px;font-weight:700;text-decoration:none}
.skip-link:focus{left:8px;top:8px}

/* ---------------------------------------------------------------- header */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(2,44,36,.94);
  border-bottom:1px solid rgba(198,157,77,.55);
  backdrop-filter:blur(6px);
}
.header-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:var(--header-h);padding-top:8px;padding-bottom:8px}
.brand{display:inline-flex;align-items:center;flex:0 0 auto;margin-right:auto;text-decoration:none;padding:2px}
.brand img{width:124px;height:42px}

.tel-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:44px;padding:10px 12px;
  background:var(--gold);color:#1B1405;
  font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;
  border-radius:2px;
}
@media (max-width:419px){
  .wrap{padding:0 16px}
  .header-bar{gap:8px}
  .brand img{width:106px;height:36px}
  .tel-btn{font-size:13px;padding:8px 10px;gap:5px}
  .tel-btn svg{width:16px;height:16px}
}
@media (min-width:420px){.brand img{width:150px;height:50px}.tel-btn{font-size:15px;padding:10px 16px}}
.tel-btn:hover,.tel-btn:focus{background:var(--white);color:var(--green-deep)}
.tel-btn svg{width:18px;height:18px;flex:0 0 auto;fill:currentColor}

.nav-toggle{position:absolute;opacity:0;width:44px;height:44px;margin:0}
.nav-toggle-label{
  display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;cursor:pointer;flex:0 0 auto;
}
.nav-toggle-label span,
.nav-toggle-label span::before,
.nav-toggle-label span::after{
  display:block;width:26px;height:2px;background:var(--gold);content:'';position:relative;
}
.nav-toggle-label span::before{position:absolute;top:-8px}
.nav-toggle-label span::after{position:absolute;top:8px}
.nav-toggle:focus-visible + .nav-toggle-label{outline:3px solid var(--gold);outline-offset:2px}

/* the nav is behind the hamburger at every width, like the original */
.site-nav{display:none;width:100%;order:3}
.nav-toggle:checked ~ .site-nav{display:block}
.nav-list{list-style:none;margin:0;padding:8px 0 12px;display:flex;flex-direction:column}
.nav-list a{
  display:block;padding:12px 4px;min-height:44px;
  color:var(--white);text-decoration:none;font-size:15px;letter-spacing:.06em;
  font-family:var(--serif);text-transform:uppercase;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.nav-list a:hover,.nav-list a:focus{color:var(--gold)}

/* language switcher (LV / EN / RU) */
.lang{list-style:none;display:flex;align-items:center;gap:2px;margin:0;padding:0}
.lang li{display:flex}
.lang a,.lang .lang-current{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:44px;min-height:44px;padding:6px;text-decoration:none;
}
.lang svg{width:26px;height:17px;display:block;border:1px solid rgba(255,255,255,.55)}
.lang .lang-current{background:rgba(198,157,77,.35)}
.lang a:hover svg,.lang a:focus svg{border-color:var(--gold)}
.lang--menu{padding:10px 0 14px}
@media (min-width:560px){.lang--menu{display:none}}
@media (max-width:559px){.lang--bar{display:none}}

@media (min-width:1000px){
  .brand img{width:190px;height:64px}
  .nav-list{padding:14px 0 18px;flex-direction:row;gap:34px;justify-content:flex-end}
  .nav-list a{border-bottom:0}
}

/* ------------------------------------------------------------------ hero */
.hero{
  position:relative;
  background:#0d2b23 url('/assets/hero-bg.jpg') center/cover no-repeat;
  padding:40px 0 44px;
  text-align:center;
  overflow:hidden;
}
.hero-video{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;border:0;pointer-events:none;
}
.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,45,37,.82),rgba(3,38,31,.90))}
.hero .wrap{position:relative}
@media (max-width:767px){.hero-video{display:none}}
@media (prefers-reduced-motion:reduce){.hero-video{display:none}}

.hero-inner{display:flex;flex-direction:column;gap:34px}
.hero-display{position:relative;padding:26px 0 34px}
.hero h1{
  font-size:clamp(1.3rem,.75rem + 2.6vw,2.6rem);
  letter-spacing:.16em;text-transform:uppercase;color:var(--white);margin-bottom:.1em;font-weight:400;
}
.hero .brandmark{
  font-family:var(--serif);font-weight:700;color:var(--gold);
  font-size:clamp(2.6rem,1rem + 7.4vw,7rem);
  line-height:1.02;letter-spacing:.01em;margin:0;
}
/* thin diagonal rules + bubbles, as on the original hero */
.diag{position:absolute;left:50%;width:min(42%,420px);height:1px;background:rgba(255,255,255,.75)}
.diag--top{top:0;transform:translateX(-98%) rotate(-11deg)}
.diag--bottom{bottom:8px;transform:translateX(-58%) rotate(-11deg)}
.bubbles{position:absolute;right:8%;bottom:6px;width:104px;height:88px}
.bubbles i{position:absolute;border:3px solid rgba(255,255,255,.92);border-radius:50%}
.bubbles i:nth-child(1){width:44px;height:44px;left:0;bottom:0}
.bubbles i:nth-child(2){width:22px;height:22px;left:46px;bottom:30px}
.bubbles i:nth-child(3){width:12px;height:12px;left:34px;bottom:62px}
@media (max-width:520px){.diag{display:none}}
@media (max-width:999px){.bubbles{display:none}}

.hero-facts{
  display:grid;gap:18px;text-align:left;
  grid-template-columns:1fr;
}
.hero-fact{display:flex;gap:14px;align-items:flex-start;padding-left:14px;border-left:1px solid var(--gold)}
.hero-fact img{width:34px;height:34px;flex:0 0 auto}
.hero-fact p{margin:0}
.hero-fact a{color:var(--white);text-decoration:none}
.hero-fact a:hover{color:var(--gold)}
.hero-hours{margin:0;list-style:none;padding:0}
.hero-hours li{margin:0}
@media (min-width:768px){
  .hero{padding:0;min-height:clamp(560px,calc(100vh - var(--header-h)),900px);display:flex;align-items:stretch}
  .hero-inner{justify-content:space-between;padding:70px 20px 56px;gap:0;flex:1}
  .hero-display{padding:60px 0 40px}
  .hero-facts{grid-template-columns:repeat(2,1fr);gap:26px 30px;align-items:start}
  .hero-fact{padding-left:22px}
}
@media (min-width:960px){
  .hero-facts{grid-template-columns:repeat(3,1fr)}
}

/* --------------------------------------------------------------- section */
.section{padding:56px 0}
@media (min-width:768px){.section{padding:80px 0}}
.section--photo{position:relative;background-color:var(--green-deep);background-size:cover;background-position:center}
.section--photo::before{content:'';position:absolute;inset:0;background:rgba(6,48,39,.78)}
.section--photo .wrap{position:relative}
.section h2{color:var(--white)}
.section--photo h2{color:var(--white)}

.lead{max-width:62ch;margin:0 0 8px;font-size:1rem}

/* services grid */
.cards{display:grid;gap:34px 28px;grid-template-columns:1fr;margin-top:40px}
@media (min-width:640px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.cards{grid-template-columns:repeat(3,1fr)}}
.card img{width:100%;aspect-ratio:424/405;object-fit:cover}
.card h3{margin:18px 0 6px;text-transform:uppercase;letter-spacing:.03em;color:var(--white);font-size:1.15rem}
.card p{margin:0;font-size:.95rem;color:rgba(255,255,255,.92)}

/* prices */
.prices{display:grid;gap:18px;grid-template-columns:1fr;margin-top:34px}
@media (min-width:620px){.prices{grid-template-columns:repeat(2,1fr)}}
@media (min-width:980px){.prices{grid-template-columns:repeat(3,1fr)}}
.price{background:var(--green-card);padding:18px 22px 22px;
  display:flex;flex-direction:column;justify-content:space-between;gap:22px}
.price h3{font-family:var(--sans);font-weight:700;font-size:1rem;line-height:1.35;margin:0;color:var(--white)}
.price p{margin:0;text-align:right;font-weight:700;font-size:1.05rem}
.price .amount{font-family:var(--sans);font-size:2.2rem;color:var(--gold-pale);font-weight:700;margin:0 6px}
@media (min-width:980px){
  .price:nth-child(2){transform:translateY(26px)}
  .price:nth-child(3){transform:translateY(52px)}
  .price:nth-child(5){transform:translateY(26px)}
  .prices{margin-bottom:60px}
}

/* steps */
.steps-section{padding:0;background:var(--mint);color:var(--ink)}
.steps-head{text-align:center;padding:56px 20px 10px}
@media (min-width:768px){.steps-head{padding:76px 20px 6px}}
.steps-head h2{color:var(--ink);margin:0}
.steps{display:grid;grid-template-columns:1fr;gap:0}
@media (min-width:768px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{padding:34px 24px 40px;text-align:center}
@media (min-width:768px){
  .step{padding:44px 26px 64px}
  .step:nth-child(3),.step:nth-child(4){padding-top:104px}
}
.step:nth-child(1),.step:nth-child(2){background:var(--mint);color:var(--ink)}
.step:nth-child(3),.step:nth-child(4){background:var(--green-card);color:var(--white)}
.step h3{letter-spacing:.12em;text-transform:uppercase;font-size:1.05rem}
.step:nth-child(1) h3,.step:nth-child(2) h3{color:#14513E}
.step:nth-child(3) h3,.step:nth-child(4) h3{color:var(--white)}
.step p{margin:0;font-size:.94rem}
.step svg{width:56px;height:44px;margin:0 auto 16px;display:block;fill:none;stroke-width:8;stroke-linecap:square}
.step:nth-child(1) svg,.step:nth-child(2) svg{stroke:#2F8462}
.step:nth-child(3) svg,.step:nth-child(4) svg{stroke:var(--gold)}

/* why us */
.why-list{list-style:none;margin:22px 0 0;padding:0;max-width:70ch}
.why-list li{position:relative;margin:0 0 14px;font-size:1rem}
.why-rule{width:100%;max-width:620px;height:1px;background:rgba(255,255,255,.45);border:0;margin:0}

/* ---------------------------------------------------------------- footer */
.site-footer{background:var(--gold-footer);color:var(--white);padding:48px 0 0;margin-top:0}
.footer-grid{display:grid;grid-template-columns:1fr;gap:32px}
@media (min-width:700px){.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.footer-grid{grid-template-columns:auto 1fr 1fr;gap:56px}}
.site-footer h2{font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;color:var(--white);margin:0 0 14px}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{margin:0 0 6px}
.site-footer p{margin:0 0 6px}
.site-footer a{color:var(--white);text-decoration:underline;text-underline-offset:3px}
.site-footer a:hover,.site-footer a:focus{color:#1B1405}
.footer-logo img{width:120px;height:159px}
.footer-phone{font-size:1.35rem;font-weight:700;display:inline-flex;align-items:center;min-height:44px;text-decoration:none!important}
.footer-phone:hover{text-decoration:underline!important}
.footer-hours{margin-top:16px}
/* client logo wall — every mark rendered as a white silhouette so dark and
   light source logos read equally on the gold footer */
.footer-clients{margin-top:44px;padding-top:30px;border-top:1px solid rgba(255,255,255,.35)}
.clients{display:flex;flex-wrap:wrap;gap:10px 26px;align-items:center;justify-content:flex-start}
.clients li{display:flex}
.clients a{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:56px;min-width:56px;padding:8px 10px;text-decoration:none;
}
.clients img{
  width:auto;max-width:150px;height:42px;object-fit:contain;
  filter:grayscale(1) brightness(0) invert(1);opacity:.78;
  transition:opacity .2s ease;
}
.clients a:hover img,.clients a:focus img{opacity:1}
.client-word{
  font-family:var(--serif);font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--white);text-align:center;line-height:1.2;
}
.clients a:hover .client-word,.clients a:focus .client-word{text-decoration:underline}
.badges a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.badges img{width:44px;height:44px;object-fit:contain}
.footer-bottom{border-top:1px solid rgba(255,255,255,.35);margin-top:40px;padding:20px 0 26px;
  display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center;justify-content:space-between;font-size:.9rem}
.footer-bottom a{display:inline-flex;align-items:center;min-height:44px}
.footer-dev{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}
.footer-dev img{width:150px;height:24px}
.footer-copy{width:100%;text-align:center;font-size:.85rem;margin:0;padding-bottom:6px}

/* ------------------------------------------------------------ text pages */
.page{padding:44px 0 64px}
.page h1{font-size:clamp(1.5rem,1.1rem + 2vw,2.25rem);color:var(--white)}
.page h2{margin-top:1.4em}
.legal{max-width:78ch}
.legal p{margin:0 0 1.1em;font-size:1rem;color:#F2F7F5}
.legal strong{color:var(--gold-soft);font-weight:700;display:inline-block;margin-top:.6em}
.legal a{word-break:break-word}
.entity{margin-bottom:2em;font-size:1rem}
