/* ═══════════════════════════════════════════════════════
   АРТВЕЛЛ 2026 — CSS overlay for legacy inner pages
   Modernizes artwell.ru template without changing HTML
   ═══════════════════════════════════════════════════════ */

/* ─── Fonts ─── */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700;800&display=swap');

:root {
  --aw-navy: #1a2332;
  --aw-navy-light: #243044;
  --aw-brand: #FEDC3C;
  --aw-light: #f5f7fa;
  --aw-border: #e2e7ef;
  --aw-text: #1a2332;
  --aw-text-secondary: #4d5d72;
  --aw-text-tertiary: #7a8a9e;
}

/* ─── Global ─── */
body {
  font-family: 'Rubik', system-ui, -apple-system, sans-serif !important;
  color: var(--aw-text) !important;
  background: #fff !important;
  -webkit-font-smoothing: antialiased;
}

::selection {
  background: var(--aw-brand);
  color: var(--aw-text);
}

/* ─── Logo — new SVG ─── */
.logo {
  background: url(/local/templates/arwell_2021/images/dest/logo-static.svg) no-repeat left center !important;
  background-size: contain !important;
  width: 200px;
  height: 60px;
}
.logo a {
  padding-top: 65px !important;
  font-size: 0 !important;
  visibility: hidden;
}

/* ─── Header ─── */
.logo {
  margin-bottom: 10px !important;
}

.header-top {
  border-bottom: 1px solid var(--aw-border);
  padding-bottom: 8px;
  margin-bottom: 10px;
}

.header-info {
  width: auto !important;
  float: right !important;
}

.header-info-city {
  padding-bottom: 5px !important;
}

.header-info-city li {
  font-size: 13px !important;
  font-weight: 600 !important;
}
.header-info-city li.active {
  color: var(--aw-navy) !important;
}

.header-presentation-link {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--aw-text-tertiary) !important;
  text-decoration: none !important;
}
.header-presentation-link:hover {
  color: var(--aw-navy) !important;
}
.header-presentation-link::before {
  display: none !important;
}

.header-info-contact,
.header-info-addr {
  font-size: 14px !important;
  line-height: 1.5 !important;
}
.header-info-contact::before,
.header-info-addr::before {
  opacity: 0.4;
}

/* ─── Navigation ─── */
.menu {
  background: var(--aw-navy) !important;
  border: none !important;
  padding: 0 !important;
}

.menu-list {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  gap: 0 !important;
}

.menu-list li {
  float: none !important;
}

.menu-list li a {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  padding: 14px 24px !important;
  border: none !important;
  transition: background 0.2s !important;
  white-space: nowrap !important;
}
.menu-list li a:hover,
.menu-list li a.selected {
  background: var(--aw-navy-light) !important;
  color: var(--aw-brand) !important;
}

.menu-list li a span {
  border: none !important;
}

/* ─── Breadcrumbs ─── */
.breadcrumbs {
  font-size: 13px !important;
  color: var(--aw-text-tertiary) !important;
  padding: 16px 0 !important;
  border-bottom: 1px solid var(--aw-border) !important;
  margin-bottom: 30px !important;
}
.breadcrumbs a {
  color: var(--aw-text-secondary) !important;
  text-decoration: none !important;
}
.breadcrumbs a:hover {
  color: var(--aw-navy) !important;
}
.breadcrumbs-home {
  background: none !important;
  width: auto !important;
  padding: 0 !important;
}
.breadcrumbs-home::before {
  content: "Главная";
  font-size: 13px;
  color: var(--aw-text-secondary);
}
.breadcrumbs-arrow {
  background: none !important;
  width: auto !important;
  padding: 0 4px !important;
}
.breadcrumbs-arrow::before {
  content: "›";
  font-size: 14px;
  color: var(--aw-text-tertiary);
}

/* ─── Content area ─── */
.spanning {
  padding: 40px 0 !important;
}

h1 {
  font-size: 32px !important;
  font-weight: 800 !important;
  color: var(--aw-navy) !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 24px !important;
  line-height: 1.15 !important;
}

h2 {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: var(--aw-navy) !important;
  letter-spacing: -0.01em !important;
  margin-top: 32px !important;
  margin-bottom: 16px !important;
}

h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--aw-navy) !important;
}

.text {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: var(--aw-text-secondary) !important;
}

.text p {
  margin-bottom: 16px !important;
}

.text a {
  color: var(--aw-navy) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--aw-border) !important;
  text-underline-offset: 3px !important;
}
.text a:hover {
  text-decoration-color: var(--aw-navy) !important;
}

.text ul li::before {
  background-color: var(--aw-brand) !important;
  background-image: none !important;
}

.text blockquote {
  border-left: 3px solid var(--aw-brand) !important;
  padding: 16px 24px !important;
  background: var(--aw-light) !important;
  border-radius: 0 8px 8px 0 !important;
  font-style: normal !important;
}
.text blockquote::before {
  display: none !important;
}

/* ─── Sidebar ─── */
.sidebar {
  font-size: 14px !important;
}

.sidebar-menu > li > a,
.sidebar-menu-default > li > a {
  font-size: 14px !important;
  color: var(--aw-text-secondary) !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid var(--aw-border) !important;
  text-decoration: none !important;
}
.sidebar-menu > li > a:hover,
.sidebar-menu-default > li > a:hover,
.sidebar-menu > li > a.selected,
.sidebar-menu-default > li > a.selected {
  color: var(--aw-navy) !important;
}
.sidebar-menu > li > a::before,
.sidebar-menu-default > li > a::before {
  display: none !important;
}

.sidebar-awards-title,
.sidebar-shares-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--aw-navy) !important;
  margin-bottom: 12px !important;
}

/* ─── Service cards ─── */
.service-card,
.service-item {
  border: 1px solid var(--aw-border) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  background: #fff !important;
}
.service-card:hover,
.service-item:hover {
  border-color: var(--aw-brand) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.04) !important;
}

.service-icon {
  background: none !important;
}

/* ─── Portfolio/Project cards ─── */
.project-item {
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid var(--aw-border) !important;
  transition: box-shadow 0.2s !important;
}
.project-item:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,0.06) !important;
}

/* ─── Client logos ─── */
.content-review-client {
  filter: grayscale(100%) !important;
  opacity: 0.5 !important;
  transition: filter 0.3s, opacity 0.3s !important;
}
.content-review:hover .content-review-client {
  filter: grayscale(0%) !important;
  opacity: 1 !important;
}

/* ─── Buttons ─── */
.button,
.btn-accent,
input[type="submit"] {
  background: var(--aw-brand) !important;
  color: var(--aw-navy) !important;
  border: none !important;
  border-radius: 50px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  padding: 12px 28px !important;
  cursor: pointer !important;
  transition: box-shadow 0.2s, transform 0.2s !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.button:hover,
.btn-accent:hover,
input[type="submit"]:hover {
  box-shadow: 0 8px 24px rgba(254,220,60,0.25) !important;
  transform: translateY(-1px) !important;
}

/* ─── Forms ─── */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea,
select {
  border: 1px solid var(--aw-border) !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-family: 'Rubik', sans-serif !important;
  transition: border-color 0.2s !important;
  outline: none !important;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus {
  border-color: var(--aw-navy) !important;
}

/* ─── Footer ─── */
footer,
.footer {
  background: var(--aw-navy) !important;
  color: rgba(255,255,255,0.4) !important;
}

.footer-nav-title,
footer h4 {
  color: rgba(255,255,255,0.7) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

footer a,
.footer a {
  color: rgba(255,255,255,0.35) !important;
  text-decoration: none !important;
  font-size: 13px !important;
}
footer a:hover,
.footer a:hover {
  color: var(--aw-brand) !important;
}

.footer-support {
  font-size: 13px !important;
}

.social-list a {
  opacity: 0.4 !important;
  transition: opacity 0.2s !important;
}
.social-list a:hover {
  opacity: 1 !important;
}

/* ─── Legal info ─── */
.footer-legal {
  font-size: 12px !important;
  color: rgba(255,255,255,0.25) !important;
  border-top: 1px solid rgba(255,255,255,0.05) !important;
  padding-top: 16px !important;
  margin-top: 16px !important;
}

/* ─── Chat widget ─── */
.send-me {
  z-index: 1000 !important;
}
.send-me__toggle {
  border-radius: 50% !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.15) !important;
  transition: transform 0.2s !important;
}
.send-me__toggle:hover {
  transform: scale(1.05) !important;
}
.send-me__text {
  border-radius: 8px !important;
  font-family: 'Rubik', sans-serif !important;
}

/* ─── Tables ─── */
table {
  border-collapse: collapse !important;
  width: 100% !important;
}
table th {
  background: var(--aw-light) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  padding: 10px 14px !important;
  text-align: left !important;
  border-bottom: 2px solid var(--aw-border) !important;
}
table td {
  padding: 10px 14px !important;
  border-bottom: 1px solid var(--aw-border) !important;
  font-size: 14px !important;
}

/* ─── Section backgrounds — clean white ─── */
.alt-section,
section.alt,
.review-section,
.feedback-section {
  background: var(--aw-light) !important;
}

body.no-js {
  background: #fff !important;
}

/* Header wrap — tighten spacing */
.wrap {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

/* ─── Misc cleanup ─── */
.text-infoblock {
  border: 1px solid var(--aw-border) !important;
  border-radius: 12px !important;
  padding: 24px !important;
  background: var(--aw-light) !important;
}

.content-review-link::after {
  display: none !important;
}

/* Smooth scroll */
html {
  scroll-behavior: smooth;
}

/* Image borders */
img {
  border-radius: 4px;
}
.logo img,
.social-list img {
  border-radius: 0;
}
