:root {
  --paper: #fff8ef;
  --violet: #7b2cff;
  --pink: #ff3e9d;
  --yellow: #ffd738;
}

body { background: var(--paper); }

.topbar {
  min-height: 92px;
  height: auto;
  border-bottom: 3px solid transparent;
  border-image: linear-gradient(90deg, var(--blue), var(--violet), var(--pink), var(--orange), var(--yellow), var(--lime)) 1;
}
.logo-names {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: Unbounded, sans-serif;
  font-size: clamp(14px, 1.35vw, 20px);
  line-height: 1;
  letter-spacing: -.045em;
  text-transform: uppercase;
}
.logo-names b { display: block; font-weight: 700; }
.logo-names b:first-child {
  color: #3b1a78;
  text-shadow: 2px 2px 0 var(--yellow);
}
.logo-names b:last-child {
  padding: 8px 10px;
  border-radius: 10px;
  color: white;
  background: linear-gradient(100deg, var(--blue), var(--violet), var(--pink));
  box-shadow: 3px 4px 0 var(--yellow);
}
.mini-cta {
  border: 0;
  background: #22c55e;
  color: white;
  box-shadow: 0 8px 22px rgba(34,197,94,.28);
}

.hero {
  background:
    radial-gradient(circle at 8% 12%, rgba(255, 215, 56, .58), transparent 26%),
    radial-gradient(circle at 76% 82%, rgba(255, 62, 157, .24), transparent 29%),
    linear-gradient(135deg, #fff7e7 0%, #fff 48%, #eee9ff 100%);
}

.hero::before {
  content: '';
  position: absolute;
  width: 220px;
  height: 220px;
  left: -80px;
  bottom: -85px;
  border-radius: 44% 56% 64% 36%;
  background: linear-gradient(135deg, var(--violet), var(--blue));
  opacity: .9;
  transform: rotate(24deg);
}
.primary {
  background: linear-gradient(100deg, var(--blue), var(--violet), var(--pink));
  box-shadow: 0 12px 30px rgba(123,44,255,.3);
}
.ghost { background: rgba(255,255,255,.72); backdrop-filter: blur(8px); }

.hero-eyebrow {
  display: inline-flex;
  background: var(--yellow);
  padding: 9px 14px;
  border-radius: 999px;
  box-shadow: 4px 4px 0 var(--ink);
}

.brand-title {
  display: grid;
  gap: clamp(10px, 1.4vw, 18px);
  max-width: 1050px;
  font-size: clamp(44px, 7.2vw, 104px) !important;
  line-height: .9 !important;
  letter-spacing: -.072em !important;
  text-transform: uppercase;
}
.brand-title span { display: block; }
.brand-title .studio-name {
  color: var(--ink);
  text-shadow: 4px 4px 0 var(--yellow);
}
.brand-title .shop-name {
  width: fit-content;
  padding: .08em .15em .12em;
  margin-left: clamp(0px, 4vw, 58px);
  color: white;
  background: linear-gradient(100deg, var(--blue), var(--violet), var(--pink));
  border-radius: .18em;
  box-shadow: 8px 9px 0 var(--ink);
  transform: rotate(-1deg);
}
.brand-promise {
  margin: clamp(26px, 3vw, 38px) 0 0;
  font-family: Unbounded, sans-serif;
  font-size: clamp(18px, 2vw, 27px);
  font-weight: 700;
  letter-spacing: -.035em;
}

.paint-orb {
  background: linear-gradient(145deg, var(--pink), var(--orange) 36%, var(--yellow) 68%, var(--lime));
  filter: saturate(1.25);
  box-shadow: inset -40px -35px 70px rgba(120, 20, 0, .18), 0 35px 90px rgba(123, 44, 255, .18);
}

.quick-choice {
  padding: 34px clamp(20px, 5vw, 76px) 42px;
  background: white;
  display: grid;
  grid-template-columns: minmax(210px, .7fr) 2.3fr;
  gap: clamp(24px, 4vw, 60px);
  align-items: end;
}
.quick-choice-head h2 {
  margin: 0;
  font-family: Unbounded, sans-serif;
  font-size: clamp(28px, 3.7vw, 50px);
  line-height: 1.05;
  letter-spacing: -.05em;
}
.quick-choice-links { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.quick-choice-links a {
  min-height: 148px;
  padding: 18px;
  border: 2px solid rgba(125,53,255,.13);
  border-radius: 20px;
  background: linear-gradient(145deg, #fff, #f7f2ff);
  display: flex;
  flex-direction: column;
  transition: transform .2s, box-shadow .2s;
}
.quick-choice-links a:first-child { background: linear-gradient(145deg, #ffdf36, #ff9b51); }
.quick-choice-links a:last-child { background: linear-gradient(145deg, #7d35ff, #ff3f8e); color: white; }
.quick-choice-links a:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(71,43,130,.14); }
.quick-choice-links span { font-family: Unbounded, sans-serif; font-size: 13px; font-weight: 700; }
.quick-choice-links strong { margin-top: auto; font-size: 16px; line-height: 1.25; }
.quick-choice-links small { margin-top: 6px; font-size: 12px; opacity: .72; }

.mobile-whatsapp { display: none; }

.sale-section {
  margin: 12px;
  padding: clamp(28px, 5vw, 72px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 90% 12%, rgba(255,255,255,.42), transparent 28%),
    linear-gradient(125deg, #ffcf25 0%, #ff7a18 48%, #ff3e78 100%);
  color: #171118;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  align-items: center;
  gap: clamp(28px, 5vw, 74px);
  overflow: hidden;
  position: relative;
}
.sale-section::before {
  content: '';
  position: absolute;
  width: 270px;
  height: 270px;
  border-radius: 50%;
  left: -110px;
  bottom: -150px;
  background: #8f2cff;
  opacity: .3;
}
.sale-copy, .sale-gallery { position: relative; z-index: 1; }
.sale-kicker {
  display: inline-flex;
  margin: 0 0 18px;
  padding: 8px 13px;
  border: 2px solid currentColor;
  border-radius: 999px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 12px;
}
.sale-discount { display: flex; align-items: flex-start; line-height: .78; font-family: Unbounded, sans-serif; }
.sale-discount span { font-size: clamp(82px, 11vw, 162px); font-weight: 700; letter-spacing: -.1em; }
.sale-discount b { margin: 8px 0 0 8px; font-size: clamp(35px, 5vw, 68px); }
.sale-section h2 { margin: 24px 0 14px; font-family: Unbounded, sans-serif; font-size: clamp(31px, 4.5vw, 62px); line-height: 1.05; letter-spacing: -.05em; }
.sale-lead { margin: 0 0 20px; max-width: 610px; font-size: clamp(17px, 1.7vw, 21px); line-height: 1.55; font-weight: 600; }
.sale-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.sale-tags span { padding: 8px 12px; border-radius: 999px; background: rgba(255,255,255,.65); font-size: 13px; font-weight: 800; }
.sale-note { margin: 18px 0 24px; font-size: 14px; font-weight: 700; }
.sale-button { background: #171118; color: white; box-shadow: 7px 7px 0 rgba(255,255,255,.82); }
.sale-gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; transform: rotate(1deg); }
.sale-gallery img { width: 100%; height: 210px; object-fit: cover; display: block; border-radius: 18px; border: 5px solid white; box-shadow: 0 18px 45px rgba(76,18,30,.2); }
.sale-gallery .sale-photo-main { grid-column: 1 / -1; height: clamp(280px, 39vw, 560px); }
.sale-gallery.sale-posters { align-items: start; }
.sale-gallery.sale-posters img { height: auto; aspect-ratio: 9 / 16; object-fit: cover; }

.new-product {
  margin: 12px;
  padding: clamp(30px, 5vw, 72px);
  border-radius: 30px;
  background: linear-gradient(125deg, #080b0d 0%, #111c26 58%, #172d3a 100%);
  color: white;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  align-items: center;
  gap: clamp(28px, 6vw, 84px);
  overflow: hidden;
}
.new-product-copy { position: relative; z-index: 1; }
.new-product-label {
  display: inline-flex;
  margin: 0 0 26px;
  padding: 10px 16px;
  border-radius: 999px;
  background: var(--yellow);
  color: var(--ink);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  box-shadow: 5px 5px 0 var(--blue);
}
.new-product h2 {
  margin: 0;
  font-family: Unbounded, sans-serif;
  font-size: clamp(40px, 6vw, 84px);
  line-height: 1;
  letter-spacing: -.055em;
}
.new-product-lead { margin: 24px 0; max-width: 620px; font-size: clamp(18px, 2vw, 23px); line-height: 1.55; color: rgba(255,255,255,.84); }
.new-product-points { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 32px; }
.new-product-points span { padding: 9px 13px; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; font-size: 13px; font-weight: 700; }
.new-product-button { background: var(--yellow); color: var(--ink); }
.new-product-image { position: relative; min-width: 0; }
.new-product-image::before { content: ''; position: absolute; inset: -14px; border-radius: 30px; background: linear-gradient(135deg, var(--yellow), var(--orange)); transform: rotate(2deg); }
.new-product-image img { position: relative; width: 100%; max-height: 690px; object-fit: contain; display: block; border-radius: 22px; background: #080b0d; }

.saitex-news { padding: 100px clamp(12px, 5vw, 78px); background: linear-gradient(180deg, #fff8ef, #fff); }
.saitex-news-head { max-width: 1180px; margin: 0 auto 38px; display: flex; align-items: end; justify-content: space-between; gap: 36px; }
.saitex-news-head h2 { margin: 0; font-family: Unbounded, sans-serif; font-size: clamp(38px, 6vw, 78px); line-height: 1; letter-spacing: -.055em; }
.saitex-news-head > p { max-width: 520px; margin: 0; font-size: 18px; line-height: 1.6; color: #54545a; }
.saitex-feature { max-width: 1440px; margin: 18px auto; border-radius: 32px; overflow: hidden; color: white; display: grid; grid-template-columns: minmax(300px, .78fr) minmax(0, 1.35fr); box-shadow: 0 24px 70px rgba(32,18,18,.18); }
.sauna-feature { background: linear-gradient(145deg, #35191a, #6b3027); }
.aqua-feature { background: linear-gradient(145deg, #061b38, #07396b); }
.saitex-feature-copy { padding: clamp(32px, 5vw, 70px); display: flex; flex-direction: column; align-items: flex-start; }
.arrival-pill { padding: 9px 15px; border-radius: 999px; background: #ff9c00; color: #24140a; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.aqua-feature .arrival-pill { background: #5dd7ff; color: #041a30; }
.feature-brand { margin: auto 0 4px; font-size: 25px; font-weight: 800; }
.saitex-feature h3 { margin: 0 0 18px; font-family: Unbounded, sans-serif; font-size: clamp(38px, 5vw, 67px); line-height: 1; letter-spacing: -.05em; }
.feature-subtitle { margin: 0 0 22px; font-size: clamp(17px, 1.7vw, 21px); line-height: 1.55; color: rgba(255,255,255,.84); }
.saitex-feature ul { margin: 0 0 24px; padding-left: 21px; line-height: 1.6; color: rgba(255,255,255,.82); }
.saitex-feature li::marker { color: #ff9c00; }
.aqua-feature li::marker { color: #5dd7ff; }
.feature-meta { margin: 0 0 28px; font-weight: 800; }
.feature-button { background: white; color: #131313; }
.saitex-gallery { padding: 16px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-content: center; }
.saitex-gallery img { width: 100%; aspect-ratio: 1.82 / 1; object-fit: cover; display: block; border-radius: 14px; }
.saitex-gallery .gallery-main { grid-column: 1 / -1; }

.dealers {
  margin: 12px;
  padding: 72px clamp(28px, 6vw, 90px);
  border-radius: 30px;
  background: linear-gradient(125deg, var(--ink) 0%, #202138 52%, #31176e 100%);
  color: white;
  display: grid;
  grid-template-columns: auto 1.1fr 1fr;
  gap: clamp(26px, 5vw, 72px);
  align-items: center;
  position: relative;
  overflow: hidden;
}

.dealers::after {
  content: '';
  position: absolute;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: var(--pink);
  opacity: .2;
  right: -100px;
  top: -120px;
}

.dealer-badge {
  width: 126px;
  height: 126px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--yellow);
  color: var(--ink);
  font-family: Unbounded, sans-serif;
  font-size: 13px;
  transform: rotate(-8deg);
  box-shadow: 10px 10px 0 var(--blue);
}

.dealer-copy, .dealer-brands { position: relative; z-index: 1; }
.dealer-copy h2 {
  font-family: Unbounded, sans-serif;
  margin: 0;
  font-size: clamp(30px, 3.8vw, 56px);
  line-height: 1.07;
  letter-spacing: -.045em;
}
.dealer-copy > p:last-child { line-height: 1.65; color: rgba(255,255,255,.75); max-width: 660px; }
.dealer-brands { display: grid; gap: 12px; }
.dealer-brands article { padding: 24px; border: 1px solid rgba(255,255,255,.2); border-radius: 20px; background: rgba(255,255,255,.09); backdrop-filter: blur(10px); }
.dealer-brands span { display: block; color: var(--lime); font-weight: 800; font-size: 12px; margin-bottom: 18px; }
.dealer-brands strong { display: block; font-family: Unbounded, sans-serif; font-size: clamp(21px, 2.4vw, 32px); margin-bottom: 6px; }
.dealer-brands small { color: rgba(255,255,255,.72); font-size: 14px; }

.section { background: linear-gradient(180deg, var(--paper), #fff3d8); }
.cobalt { background: linear-gradient(145deg, var(--blue), var(--violet)); }
.coral { background: linear-gradient(145deg, var(--orange), #ff9566); }
.lime { background: linear-gradient(145deg, var(--lime), var(--yellow)); }
.dark { background: linear-gradient(145deg, var(--ink), #352064); }

.catalog { background: linear-gradient(180deg, var(--paper), #fff0cf); }
.brand-group { margin-top: 54px; }
.brand-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.brand-heading small { display: block; margin-bottom: 6px; font-weight: 700; color: #6e6e72; }
.brand-heading h3 { margin: 0; font-family: Unbounded, sans-serif; font-size: clamp(30px, 4vw, 58px); letter-spacing: -.05em; }
.brand-heading > span { border: 1px solid var(--ink); border-radius: 999px; padding: 10px 16px; font-size: 13px; font-weight: 800; white-space: nowrap; }
.product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.product-card { min-height: 350px; padding: 26px; border-radius: 26px; display: flex; flex-direction: column; color: var(--ink); box-shadow: 0 18px 42px rgba(30, 25, 55, .08); }
.product-card:hover { transform: translateY(-6px); transition: .25s; }
.product-icon { width: 54px; height: 54px; border: 1px solid currentColor; border-radius: 50%; display: grid; place-items: center; font-weight: 800; }
.product-type { margin: auto 0 8px; text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 800; }
.product-card h4 { margin: 0 0 12px; font-family: Unbounded, sans-serif; font-size: clamp(21px, 2.2vw, 30px); line-height: 1.12; }
.product-card > p:not(.product-type) { margin: 0 0 24px; line-height: 1.55; }
.product-card a { border-top: 1px solid rgba(18,19,21,.3); padding-top: 18px; font-weight: 800; display: flex; justify-content: space-between; gap: 10px; }
.product-card a:hover { text-decoration: underline; }
.product-blue { background: #7290ff; }
.product-orange { background: #ff8a62; }
.product-yellow { background: #ffdc4a; }
.product-violet { background: #b794ff; }
.product-pink { background: #ff8fc6; }
.product-lime { background: #d3ff61; }
.saiver-group { margin-top: 76px; }

.pdf-catalogs { padding: 110px clamp(20px, 7vw, 105px); background: #fff; }
.pdf-intro { max-width: 860px; margin-bottom: 46px; }
.pdf-intro h2 { margin: 0; font-family: Unbounded, sans-serif; font-size: clamp(36px, 5vw, 70px); line-height: 1.04; letter-spacing: -.05em; }
.pdf-intro > p:last-child { max-width: 700px; font-size: 18px; line-height: 1.65; }
.pdf-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.pdf-card { min-width: 0; display: grid; grid-template-columns: minmax(150px, .78fr) 1.15fr; border-radius: 28px; overflow: hidden; color: white; box-shadow: 0 22px 55px rgba(20,25,60,.15); }
.saiver-pdf { background: linear-gradient(145deg, #192358, #771c76); }
.abc-pdf { background: linear-gradient(145deg, #172c50, #3157ff); }
.pdf-cover { min-height: 390px; overflow: hidden; }
.pdf-cover img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
.pdf-info { padding: clamp(25px, 3vw, 40px); display: flex; flex-direction: column; }
.pdf-info > span { text-transform: uppercase; letter-spacing: .11em; font-size: 11px; font-weight: 800; color: rgba(255,255,255,.72); }
.pdf-info h3 { margin: auto 0 12px; font-family: Unbounded, sans-serif; font-size: clamp(26px, 3vw, 42px); line-height: 1; }
.pdf-info p { margin: 0 0 28px; color: rgba(255,255,255,.78); line-height: 1.55; }
.pdf-button { min-height: 50px; padding: 0 18px; border-radius: 999px; background: white; color: var(--ink); display: flex; align-items: center; justify-content: space-between; gap: 12px; font-weight: 800; }
.pdf-button:hover { transform: translateY(-2px); }

.services { background: linear-gradient(140deg, #fff 0%, #edf1ff 48%, #fff0f7 100%); }
.consult { background: linear-gradient(120deg, var(--blue), var(--violet) 48%, var(--pink)); box-shadow: 0 24px 60px rgba(91,45,210,.25); }
footer { background: linear-gradient(90deg, #fff3d3, #f1eaff 48%, #ffe7f3); }

@media (max-width: 900px) {
  .topbar { min-height: 82px; }
  .logo-names { gap: 5px; font-size: clamp(11px, 2.6vw, 16px); }
  .logo-names b:last-child { padding: 7px 8px; }
  .sale-section { grid-template-columns: 1fr; }
  .sale-gallery { transform: none; }
  .sale-gallery img { height: 150px; }
  .sale-gallery .sale-photo-main { height: min(92vw, 480px); }
  .sale-gallery.sale-posters { grid-template-columns: 1fr 1fr; }
  .sale-gallery.sale-posters img { height: auto; }
  .new-product { grid-template-columns: 1fr; }
  .new-product-copy { order: 1; }
  .new-product-image { order: 2; max-width: 720px; }
  .dealers { grid-template-columns: 1fr 1fr; }
  .dealer-badge { grid-column: 1 / -1; width: 100px; height: 100px; }
  .dealer-copy { grid-column: 1; }
  .dealer-brands { grid-column: 2; }
  .product-grid { grid-template-columns: 1fr 1fr; }
  .pdf-grid { grid-template-columns: 1fr; }
  .saitex-news-head { align-items: flex-start; flex-direction: column; }
  .saitex-feature { grid-template-columns: 1fr; }
  .feature-brand { margin-top: 52px; }
  .quick-choice { grid-template-columns: 1fr; }
  .quick-choice-links { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .topbar { min-height: 78px; padding-left: 12px; padding-right: 12px; gap: 8px; }
  .logo { gap: 7px; }
  .logo > span { width: 32px; height: 32px; flex: 0 0 32px; }
  .logo-names { flex-direction: column; align-items: flex-start; gap: 4px; font-size: 10px; }
  .logo-names b:last-child { padding: 5px 7px; box-shadow: 2px 2px 0 var(--yellow); }
  .mini-cta { padding: 8px 11px; font-size: 12px; }
}

@media (max-width: 560px) {
  .brand-title { font-size: clamp(36px, 11.5vw, 54px) !important; gap: 12px; }
  .brand-title .shop-name { margin-left: 0; box-shadow: 5px 6px 0 var(--ink); }
  .brand-title .studio-name { text-shadow: 3px 3px 0 var(--yellow); }
  .brand-promise { font-size: 17px; line-height: 1.35; }
  .new-product { padding: 42px 22px 26px; border-radius: 23px; }
  .new-product h2 { font-size: 42px; }
  .new-product-label { margin-bottom: 22px; }
  .new-product-button { width: 100%; text-align: center; }
  .dealers { grid-template-columns: 1fr; padding: 50px 24px; }
  .dealer-badge, .dealer-copy, .dealer-brands { grid-column: 1; }
  .dealer-badge { width: 92px; height: 92px; }
  .dealer-copy h2 { font-size: 31px; }
  .dealer-brands article { padding: 20px; }
  .brand-heading { align-items: flex-start; flex-direction: column; }
  .product-grid { grid-template-columns: 1fr; }
  .product-card { min-height: 310px; }
  .pdf-catalogs { padding-top: 78px; padding-bottom: 78px; }
  .pdf-card { grid-template-columns: 1fr; }
  .pdf-cover { height: 250px; min-height: 0; }
  .pdf-info { min-height: 280px; }
  .saitex-news { padding-top: 72px; padding-bottom: 72px; }
  .saitex-news-head { padding: 0 10px; }
  .saitex-feature { border-radius: 23px; }
  .saitex-feature-copy { padding: 34px 24px; }
  .saitex-feature h3 { font-size: 40px; }
  .feature-brand { margin-top: 44px; }
  .feature-button { width: 100%; text-align: center; }
  .saitex-gallery { grid-template-columns: 1fr; padding: 9px; }
  .saitex-gallery .gallery-main { grid-column: auto; }
  body { padding-bottom: 78px; }
  .quick-choice { padding: 28px 12px 32px; gap: 20px; }
  .quick-choice-links { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding: 0 2px 8px; }
  .quick-choice-links a { min-width: 76vw; min-height: 132px; scroll-snap-align: start; }
  .mobile-whatsapp {
    position: fixed;
    z-index: 20;
    left: 10px;
    right: 10px;
    bottom: calc(10px + env(safe-area-inset-bottom));
    min-height: 58px;
    padding: 9px 18px;
    border-radius: 18px;
    background: linear-gradient(135deg, #12b95c, #27d972);
    color: white;
    box-shadow: 0 14px 38px rgba(12,126,65,.35);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }
  .mobile-whatsapp span { font-size: 12px; opacity: .88; }
  .mobile-whatsapp strong { font-size: 14px; text-align: right; }
}

/* Яркая светлая версия: цветные самостоятельные блоки без тяжёлых тёмных пятен */
:root {
  --ink: #24134f;
  --paper: #fffaf2;
  --blue: #355cff;
  --violet: #7d35ff;
  --pink: #ff3f8e;
  --orange: #ff7043;
  --yellow: #ffdf36;
  --lime: #baf238;
  --aqua: #31d4c9;
  --line: rgba(36,19,79,.14);
}

body { background: #fffaf2; }
.topbar { background: rgba(255,255,255,.9); box-shadow: 0 10px 35px rgba(71,43,130,.08); }
.logo span, .footer-brand > span { background: linear-gradient(135deg, var(--violet), var(--pink)); }
.mini-cta { background: linear-gradient(135deg, #12b95c, #34d782); }
.hero { background: radial-gradient(circle at 9% 14%, rgba(255,223,54,.78), transparent 26%), radial-gradient(circle at 84% 72%, rgba(49,212,201,.34), transparent 29%), linear-gradient(135deg,#fff5fb,#fffdf2 45%,#e8f3ff); }
.brand-title .studio-name { color: #3b1a78; }
.brand-title .shop-name { box-shadow: 8px 9px 0 var(--yellow); }
.ghost { border-color: #6c3fe0; color: #4b238e; }

.marquee { background: linear-gradient(90deg, var(--blue), var(--violet), var(--pink), var(--orange)); color: white; }

.new-product { background: linear-gradient(135deg, #ffdf36 0%, #ff9e3d 48%, #ff5f8e 100%); color: var(--ink); box-shadow: 0 24px 65px rgba(255,95,142,.2); }
.new-product-label { background: white; box-shadow: 5px 5px 0 var(--violet); }
.new-product-lead { color: rgba(36,19,79,.82); }
.new-product-points span { background: rgba(255,255,255,.55); border-color: rgba(36,19,79,.18); }
.new-product-button { background: #5730d8; color: white; }
.new-product-image::before { background: linear-gradient(135deg,#fff,#6ce8dc); }
.new-product-image img { background: white; }

.saitex-news { background: linear-gradient(180deg,#fffaf2,#f4f0ff); }
.saitex-feature { color: var(--ink); box-shadow: 0 24px 60px rgba(79,45,150,.16); }
.sauna-feature { background: linear-gradient(145deg,#ffd044,#ff8b5e); }
.aqua-feature { background: linear-gradient(145deg,#64dfda,#72a5ff); }
.arrival-pill { background: white; color: #683300; }
.aqua-feature .arrival-pill { background: white; color: #0a5367; }
.feature-subtitle, .saitex-feature ul { color: rgba(36,19,79,.82); }
.saitex-feature li::marker { color: #8d2cff; }
.aqua-feature li::marker { color: #144ccc; }
.feature-button { background: #5632cf; color: white; }

.dealers { background: linear-gradient(125deg,#7450ff 0%,#c64cff 48%,#ff5da2 100%); color: white; box-shadow: 0 24px 65px rgba(123,44,255,.2); }
.dealers::after { background: var(--yellow); opacity: .46; }
.dealer-badge { background: var(--yellow); color: var(--ink); box-shadow: 10px 10px 0 #34ddd0; }
.dealer-copy > p:last-child, .dealer-brands small { color: rgba(255,255,255,.9); }
.dealer-brands article { background: rgba(255,255,255,.2); border-color: rgba(255,255,255,.45); }
.dealer-brands span { color: var(--yellow); }

.catalog { background: linear-gradient(180deg,#fffaf2,#eaf8ff 48%,#fff1fa); }
.brand-heading > span { background: white; border-color: #8055e5; color: #5d31b6; }
.product-card { border: 2px solid rgba(255,255,255,.8); box-shadow: 0 20px 48px rgba(67,40,126,.12); }
.product-blue { background: linear-gradient(145deg,#7ca1ff,#aec4ff); }
.product-orange { background: linear-gradient(145deg,#ff9567,#ffc05f); }
.product-yellow { background: linear-gradient(145deg,#ffe04d,#fff09b); }
.product-violet { background: linear-gradient(145deg,#a77cff,#d1bcff); }
.product-pink { background: linear-gradient(145deg,#ff79bc,#ffb8da); }
.product-lime { background: linear-gradient(145deg,#baf044,#e4ff9c); }

.pdf-catalogs { background: linear-gradient(180deg,#fff,#f2efff); }
.pdf-card { color: var(--ink); }
.saiver-pdf { background: linear-gradient(145deg,#ffb14b,#ff6f9c); }
.abc-pdf { background: linear-gradient(145deg,#5fe0d1,#6e9cff); }
.pdf-info > span, .pdf-info p { color: rgba(36,19,79,.78); }
.pdf-button { background: #fff; color: #4d269b; box-shadow: 0 9px 24px rgba(65,36,125,.14); }

.services { background: linear-gradient(140deg,#fff8dc,#ebf5ff 48%,#ffe9f5); }
.steps { border-color: #7a55cb; }
.consult { background: linear-gradient(120deg,#3c63ff,#7b37ed 48%,#ff408c); }
footer { background: linear-gradient(90deg,#fff0a8,#dff8ff 48%,#ffd7eb); }

.locations {
  padding: clamp(72px, 9vw, 120px) clamp(20px, 6vw, 90px);
  background: linear-gradient(145deg, #fff6c9, #f5efff 48%, #dcfbf7);
}
.locations-head { max-width: 760px; margin-bottom: 38px; }
.locations-head h2 { margin: 10px 0 16px; font-family: Unbounded, sans-serif; font-size: clamp(34px, 5vw, 64px); line-height: 1.08; }
.locations-head > p:last-child { max-width: 680px; margin: 0; font-size: 17px; line-height: 1.65; color: rgba(36,19,79,.76); }
.location-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.location-card { position: relative; overflow: hidden; min-height: 480px; padding: clamp(28px, 4vw, 48px); border: 2px solid rgba(255,255,255,.82); border-radius: 34px; box-shadow: 0 24px 55px rgba(67,40,126,.14); }
.studio-location { background: linear-gradient(145deg, #ffd95d, #ff8faa); }
.shop-location { background: linear-gradient(145deg, #73e2d7, #8da8ff); }
.location-number { position: absolute; top: 28px; right: 32px; font-family: Unbounded, sans-serif; font-size: 64px; line-height: 1; color: rgba(255,255,255,.55); }
.location-label { display: inline-flex; margin: 0 0 32px; padding: 8px 13px; border-radius: 999px; background: white; font-weight: 800; box-shadow: 4px 4px 0 rgba(36,19,79,.18); }
.location-card h3 { max-width: 80%; margin: 0 0 22px; font-family: Unbounded, sans-serif; font-size: clamp(30px, 4vw, 48px); line-height: 1.05; }
.location-card address { margin-bottom: 24px; font-style: normal; font-size: 17px; font-weight: 600; line-height: 1.6; }
.location-card dl { margin: 0 0 30px; padding: 18px 0; border-top: 1px solid rgba(36,19,79,.2); border-bottom: 1px solid rgba(36,19,79,.2); }
.location-card dl div { display: flex; justify-content: space-between; gap: 20px; }
.location-card dl div + div { margin-top: 9px; }
.location-card dt { font-weight: 800; }
.location-card dd { margin: 0; font-weight: 700; }
.location-card > a { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 52px; padding: 0 18px; border-radius: 999px; background: #fff; color: #4d269b; font-weight: 800; box-shadow: 0 9px 24px rgba(65,36,125,.13); }
.location-card > a:hover { transform: translateY(-2px); }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .marquee div { animation: none; }
  .button, .product-card, .card { transition: none; }
}

@media (max-width: 720px) {
  .locations { padding-left: 18px; padding-right: 18px; }
  .location-grid { grid-template-columns: 1fr; }
  .location-card { min-height: 0; border-radius: 24px; }
  .location-number { font-size: 52px; }
  .location-card h3 { max-width: 78%; }
}
