:root{--bg:#0b1020;--card:#121a34;--card2:#172141;--text:#f8fafc;--muted:#aab6d3;--line:rgba(255,255,255,.13);--brand:#7c3aed;--brand2:#06b6d4}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(124,58,237,.25),transparent 35%),radial-gradient(circle at top right,rgba(6,182,212,.16),transparent 30%),var(--bg);line-height:1.55}a{color:inherit;text-decoration:none}header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 5vw;background:rgba(11,16,32,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center}.brand span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--brand),var(--brand2))}.brand small{display:block;color:var(--muted);font-size:12px}nav{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:14px}nav a:hover{color:white}main{padding:30px 5vw 70px}.hero{display:grid;grid-template-columns:1.5fr .8fr;gap:24px;margin:24px 0 42px}.hero>div,.hero aside,.card,.info,.text,.search,.review-card,.faq details,.product-info{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border:1px solid var(--line);border-radius:26px;box-shadow:0 18px 60px rgba(0,0,0,.2)}.hero>div{padding:50px}.hero aside{padding:28px}.hero h1{font-size:clamp(34px,5vw,66px);line-height:1.02;margin:8px 0 18px}.hero p,.page-title p,.text p,.text li,.faq p,.card p,.note,.specs{color:var(--muted)}.over{color:#8b5cf6;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:14px;background:linear-gradient(135deg,var(--brand),var(--brand2));font-weight:800;color:white}.btn.ghost{background:rgba(255,255,255,.08);border:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:14px}.section-head span,.section-head a{color:var(--muted)}h1,h2,h3{letter-spacing:-.03em}h2{font-size:30px}.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{padding:10px 14px;border:1px solid var(--line);background:rgba(255,255,255,.06);border-radius:999px}.chip span{color:var(--muted);margin-left:5px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.card{overflow:hidden}.pic{display:block;aspect-ratio:1/1;background:#0f172a}.pic img{width:100%;height:100%;object-fit:cover;display:block}.card>div{padding:16px}.title{font-weight:850}.price{margin:10px 0 14px}.big{font-size:32px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:40px 0}.info,.text{padding:24px}.page-title{max-width:1000px;margin:25px 0 34px}.page-title h1{font-size:clamp(34px,4.5vw,56px);margin-bottom:12px}.search{padding:18px;margin-bottom:30px}.search input{width:100%;padding:15px;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.2);color:white;font-size:16px}#searchResults{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-top:14px}.result{padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.05)}.product-page{display:grid;grid-template-columns:minmax(280px,.9fr) 1.1fr;gap:28px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.gallery img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:18px;border:1px solid var(--line);background:#0f172a}.product-info{padding:28px}.product-info h1{font-size:clamp(30px,4vw,52px);line-height:1.05}.breadcrumbs{color:var(--muted);font-size:14px}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.review-card{padding:20px}.stars{color:#fbbf24;letter-spacing:2px}.review-meta{color:var(--muted);margin:12px 0}.faq{display:grid;gap:12px;max-width:980px}.faq details{padding:18px}.faq summary{font-weight:850;cursor:pointer}footer{display:flex;justify-content:space-between;gap:24px;padding:28px 5vw;border-top:1px solid var(--line);color:var(--muted);background:rgba(0,0,0,.18)}.footer-links{display:flex;gap:14px}@media(max-width:850px){header,.footer{flex-direction:column;align-items:flex-start}.hero,.product-page,.info-grid{grid-template-columns:1fr}.hero>div{padding:30px}.gallery{grid-template-columns:1fr}}


.brand-logo{
  overflow:hidden;
  background:transparent !important;
  border:1px solid var(--line);
}
.brand-logo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:inherit;
}
.footer-links{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.contacts-list a{
  color:#93c5fd;
  overflow-wrap:anywhere;
}


/* SoloPrint logo/header fix */
header .brand{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}

header .brand .brand-logo{
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  max-width:46px !important;
  min-height:46px !important;
  max-height:46px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:14px !important;
  overflow:hidden !important;
  background:transparent !important;
  border:1px solid rgba(255,255,255,.18) !important;
  display:block !important;
}

header .brand .brand-logo img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:14px !important;
}

header .brand b{
  font-size:22px !important;
  line-height:1 !important;
}

header .brand small{
  display:block !important;
  margin-top:4px !important;
  font-size:13px !important;
  color:var(--muted) !important;
}


/* SoloPrint cleanup patch */
.footer-links{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
header .brand > span:not(.brand-logo){
  display:grid !important;
  place-items:center !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,var(--brand),var(--brand2)) !important;
  color:white !important;
  font-size:18px !important;
}


/* === SoloPrint visual upgrade v1 === */
header{position:sticky;top:0;z-index:50;backdrop-filter:blur(18px);background:rgba(6,12,28,.84)!important;border-bottom:1px solid rgba(255,255,255,.10)}
header .brand{display:flex!important;align-items:center!important;gap:12px!important;min-width:230px;text-decoration:none}
header .brand .brand-logo{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;min-height:42px!important;max-height:42px!important;border-radius:14px!important;overflow:hidden!important;display:block!important;padding:0!important;margin:0!important;background:linear-gradient(135deg,#6d5dfc,#16c8e8)!important;box-shadow:0 0 22px rgba(34,211,238,.22);border:1px solid rgba(255,255,255,.16)!important}
header .brand .brand-logo img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
header .brand b{display:block;font-size:18px!important;line-height:1.05!important;letter-spacing:.2px}
header .brand small{display:block!important;margin-top:3px!important;color:rgba(203,213,225,.78)!important;font-size:12px!important;line-height:1.15!important}
nav a{transition:color .18s ease,opacity .18s ease}nav a:hover{color:#fff!important}
.hero{position:relative;overflow:hidden}.hero::before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 16% 20%,rgba(124,58,237,.30),transparent 32%),radial-gradient(circle at 85% 28%,rgba(34,211,238,.20),transparent 34%);pointer-events:none}.hero>*{position:relative}
.card,.product-card,.offer,.item-card,.catalog-card,.products .item,.grid .item{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),rgba(15,23,42,.74)!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:22px!important;box-shadow:0 18px 50px rgba(0,0,0,.22);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.card:hover,.product-card:hover,.offer:hover,.item-card:hover,.catalog-card:hover,.products .item:hover,.grid .item:hover{transform:translateY(-4px);border-color:rgba(34,211,238,.34)!important;box-shadow:0 22px 70px rgba(0,0,0,.30),0 0 32px rgba(34,211,238,.20)}
.card img,.product-card img,.offer img,.item-card img,.catalog-card img,.products .item img,.grid .item img{transition:transform .25s ease,filter .25s ease}
.card:hover img,.product-card:hover img,.offer:hover img,.item-card:hover img,.catalog-card:hover img,.products .item:hover img,.grid .item:hover img{transform:scale(1.035);filter:saturate(1.08) contrast(1.03)}
.price,.card-price,.product-price{color:#fff!important;font-weight:800!important}
.btn,button,.button,a.btn{border-radius:16px!important;font-weight:800!important;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.btn:hover,button:hover,.button:hover,a.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.market-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.market-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 18px;border-radius:16px;color:white!important;text-decoration:none;font-weight:900;border:1px solid rgba(255,255,255,.14);box-shadow:0 14px 36px rgba(0,0,0,.24)}
.market-btn.ozon{background:linear-gradient(135deg,#005bff,#22d3ee)}
.market-btn.yandex{background:linear-gradient(135deg,#ffcc00,#ff7a00);color:#111827!important}
.market-btn.vk{background:linear-gradient(135deg,#4f46e5,#0ea5e9)}
footer{gap:18px}.footer-links{display:flex;gap:12px;flex-wrap:wrap}.footer-links a{padding:10px 14px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.04)}
#searchResults .result,.result{border-radius:18px!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(15,23,42,.66)!important}
@media (max-width:900px){header .brand{min-width:0}header .brand .brand-logo{width:38px!important;height:38px!important;min-width:38px!important}header .brand b{font-size:16px!important}header .brand small{display:none!important}nav{gap:8px!important;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}nav a{white-space:nowrap;font-size:13px!important}.hero h1,h1{font-size:clamp(34px,10vw,52px)!important;line-height:1.02!important}.hero p,.lead{font-size:16px!important}.grid,.products,.cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}.market-buttons{flex-direction:column}.market-btn{width:100%}}
@media (max-width:560px){body{overflow-x:hidden}main,.container,section{padding-left:16px!important;padding-right:16px!important}.grid,.products,.cards{grid-template-columns:1fr!important}.chips,.categories{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:8px}.chips a,.categories a{white-space:nowrap}footer{flex-direction:column!important;align-items:flex-start!important}}


/* === SoloPrint product / buttons / favicon visual patch === */

header .brand{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}

header .brand .brand-logo{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  max-width:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:14px !important;
  overflow:hidden !important;
  display:block !important;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  box-shadow:0 0 22px rgba(34,211,238,.18);
}

header .brand .brand-logo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

header .brand b{
  font-size:18px !important;
  line-height:1.05 !important;
}

header .brand small{
  font-size:12px !important;
  line-height:1.15 !important;
  color:rgba(203,213,225,.78) !important;
}

.market-buttons{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}

.market-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 14px;
  border-radius:14px;
  color:white !important;
  text-decoration:none;
  font-size:14px;
  font-weight:800;
  line-height:1;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 10px 26px rgba(0,0,0,.20);
  transition:transform .16s ease, filter .16s ease, box-shadow .16s ease;
}

.market-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.06);
}

.market-btn.yandex{
  background:linear-gradient(135deg,#ffd43b,#ff8a00);
  color:#111827 !important;
}

.market-btn.ozon{
  background:linear-gradient(135deg,#005bff,#22d3ee);
}

.market-btn.vk{
  background:linear-gradient(135deg,#4f46e5,#0ea5e9);
}

.product-info-box{
  margin-top:22px;
  padding:22px;
  border-radius:22px;
  background:
    radial-gradient(circle at 12% 0%, rgba(124,58,237,.22), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 18px 50px rgba(0,0,0,.22);
}

.product-info-box h2{
  margin:0 0 14px;
  font-size:24px;
}

.product-info-box ul{
  margin:0;
  padding-left:20px;
  display:grid;
  gap:8px;
  color:rgba(226,232,240,.92);
}

.product-info-box li::marker{
  color:#22d3ee;
}

.important-note{
  margin-top:18px;
  padding:16px;
  border-radius:18px;
  background:rgba(15,23,42,.55);
  border:1px solid rgba(255,255,255,.10);
}

.important-note h3{
  margin:0 0 8px;
  font-size:18px;
}

.important-note p{
  margin:8px 0 0;
  color:rgba(203,213,225,.92);
  line-height:1.65;
}

.card,.product-card,.offer,.item-card,.catalog-card,.products .item,.grid .item{
  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.13) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035)),rgba(15,23,42,.72) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.20);
  overflow:hidden;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.card:hover,.product-card:hover,.offer:hover,.item-card:hover,.catalog-card:hover,.products .item:hover,.grid .item:hover{
  transform:translateY(-3px);
  border-color:rgba(34,211,238,.32) !important;
  box-shadow:0 22px 60px rgba(0,0,0,.26),0 0 28px rgba(34,211,238,.16);
}

@media (max-width: 760px){
  header .brand .brand-logo{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
  }
  header .brand small{
    display:none !important;
  }
  .market-buttons{
    gap:8px;
  }
  .market-btn{
    flex:1 1 100%;
    min-height:44px;
  }
  .product-info-box{
    padding:18px;
    border-radius:18px;
  }
}


/* === SoloPrint SEO + product cleanup patch === */
.seo-text{
  margin:34px auto 0;
  padding:24px;
  border-radius:24px;
  background:
    radial-gradient(circle at 10% 0%, rgba(124,58,237,.20), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.030));
  border:1px solid rgba(255,255,255,.12);
  color:rgba(226,232,240,.92);
}
.seo-text h2{
  margin:0 0 12px;
  font-size:28px;
}
.seo-text p{
  margin:10px 0 0;
  line-height:1.7;
  color:rgba(203,213,225,.94);
}
@media (max-width: 760px){
  .seo-text{
    padding:18px;
    border-radius:18px;
  }
  .seo-text h2{
    font-size:22px;
  }
}


/* === SoloPrint mobile fix v2 === */

html, body{
  max-width:100%;
  overflow-x:hidden;
}

img{
  max-width:100%;
  height:auto;
}

header{
  width:100%;
}

header > *,
header .container{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
}

header .brand{
  min-width:0 !important;
  flex-shrink:0;
}

header .brand b{
  white-space:nowrap;
}

header .brand small{
  white-space:nowrap;
}

nav{
  min-width:0;
}

.hero h1,
.page-title h1,
h1{
  overflow-wrap:break-word;
  word-break:normal;
}

.hero,
.page-title,
section,
main > div{
  max-width:100%;
}

.search-box,
#siteSearch{
  max-width:100%;
  box-sizing:border-box;
}

#searchResults{
  max-width:100%;
}

.chips,
.categories,
.category-list{
  max-width:100%;
}

.card,
.product-card,
.offer,
.item-card,
.catalog-card{
  min-width:0;
}

.card h3,
.product-card h3,
.offer h3,
.item-card h3,
.catalog-card h3{
  overflow-wrap:break-word;
}

footer{
  max-width:100%;
}

/* tablets */
@media (max-width: 900px){
  header{
    position:sticky;
    top:0;
    z-index:50;
  }

  header .container,
  header > div{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }

  header .brand{
    max-width:48%;
  }

  header .brand small{
    display:none !important;
  }

  nav{
    display:flex !important;
    gap:10px !important;
    overflow-x:auto !important;
    white-space:nowrap !important;
    -webkit-overflow-scrolling:touch;
    padding:8px 0 !important;
    scrollbar-width:none;
  }

  nav::-webkit-scrollbar{
    display:none;
  }

  nav a{
    flex:0 0 auto;
    font-size:14px !important;
    line-height:1 !important;
  }

  .hero,
  .page-title{
    padding-top:42px !important;
    padding-bottom:38px !important;
  }

  .hero h1,
  .page-title h1,
  h1{
    font-size:clamp(34px, 8vw, 58px) !important;
    line-height:1.04 !important;
    max-width:100% !important;
  }

  .hero p,
  .page-title p,
  .lead{
    font-size:16px !important;
    line-height:1.55 !important;
    max-width:100% !important;
  }

  .grid,
  .products,
  .cards,
  .popular-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px !important;
  }

  .chips,
  .categories,
  .category-list{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
    overflow-x:auto !important;
    padding-bottom:10px !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .chips::-webkit-scrollbar,
  .categories::-webkit-scrollbar,
  .category-list::-webkit-scrollbar{
    display:none;
  }

  .chips a,
  .categories a,
  .category-list a{
    flex:0 0 auto;
    white-space:nowrap;
  }

  .market-buttons{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .market-btn{
    min-width:0 !important;
    width:auto !important;
    padding:12px 10px !important;
    font-size:13px !important;
    text-align:center;
  }
}

/* phones */
@media (max-width: 560px){
  header .container,
  header > div{
    flex-wrap:wrap !important;
    padding:10px 14px !important;
  }

  header .brand{
    width:100%;
    max-width:100%;
  }

  nav{
    width:100%;
    order:2;
  }

  main,
  .container,
  section{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .hero,
  .page-title{
    padding-top:32px !important;
    padding-bottom:32px !important;
  }

  .hero h1,
  .page-title h1,
  h1{
    font-size:34px !important;
    letter-spacing:-.03em !important;
  }

  h2{
    font-size:26px !important;
  }

  .grid,
  .products,
  .cards,
  .popular-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .card,
  .product-card,
  .offer,
  .item-card,
  .catalog-card{
    border-radius:18px !important;
  }

  .market-buttons{
    grid-template-columns:1fr !important;
  }

  .market-btn{
    width:100% !important;
    min-height:44px !important;
    font-size:14px !important;
  }

  #siteSearch{
    width:100% !important;
    font-size:16px !important;
    padding:14px 16px !important;
  }

  footer{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:14px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .footer-links{
    width:100%;
  }

  .footer-links a{
    display:inline-flex;
    width:100%;
    justify-content:center;
    box-sizing:border-box;
  }
}
