/*
 * Lawyer site palette (reference: lawtheme.com)
 * Primary: #C5ADC5 | Secondary: #B2B5E0 | Background: warm with golden tint
 */

:root {
  /* Единая ширина контента для всех блоков и хедеров */
  --lawtheme-content-max: 1440px;
  --lawtheme-content-padding: 32px;
  /* Типографика по SEO: один размер заголовков, два размера текста */
  --heading-size: clamp(26px, 3.2vw, 36px);
  --text-base: 16px;
  --text-small: 14px;
  --lawyer-primary: #C5ADC5;
  --lawyer-primary-dark: #a890a8;
  --lawyer-secondary: #B2B5E0;
  --lawyer-secondary-dark: #9599c9;
  /* Button: default (readable) and hover */
  --lawyer-btn-bg: #9a859e;
  --lawyer-btn-hover: #8b7790;
  --lawyer-btn-hover-alt: #7a7fb5;
  --lawyer-bg: #f0ebe2;
  --lawyer-bg-solid: #e8e2d8;
  --lawyer-gold-tint: rgba(180, 160, 120, 0.12);
  --lawyer-gold-border: rgba(160, 140, 100, 0.35);
  --lawyer-bg-dark: #e2dcd0;
  --lawyer-text: #333333;
  --lawyer-text-muted: #555555;
  --lawyer-btn-text: #ffffff;
  --lawyer-btn-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  --lawyer-btn-shadow-hover: 0 2px 6px rgba(0, 0, 0, 0.28);
  --lawyer-btn-box: 0 2px 8px rgba(154, 133, 158, 0.35);
  --lawyer-btn-box-hover: 0 6px 20px rgba(139, 119, 144, 0.4);
  /* Luxury (duiticketarrest.com style) */
  --lawyer-lux-shadow: 0 4px 20px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);
  --lawyer-lux-shadow-hover: 0 12px 40px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04);
  --lawyer-gold-line: linear-gradient(90deg, transparent, rgba(180, 160, 115, 0.4), transparent);
  --lawyer-letter-spacing: 0.08em;
  /* Отступы по регламенту SEO: единый ритм, читаемость */
  --space-section-y: clamp(44px, 4.5vw, 76px);
  --space-heading-bottom: 0.5em;
  --space-sub-bottom: 0.75em;
  --space-lead-bottom: 1em;
  --space-block: 0.8em;
  --space-button-above: 1.75em;
  /* Вертикальный ритм после сеток / перед CTA */
  --space-after-grid: 1.75em;
  --space-section-join: clamp(1.5rem, 2.2vw, 2.75rem);
  /* Стыки секций Lawtheme: золото ↔ лаванда без резких линий */
  --hl-cream: #faf8f4;
  --hl-gold-light: #f0e8dc;
  --hl-gold-top: #ece8de;
  --hl-gold-mid: #e4d9c8;
  --hl-gold-deep: #ddd2c0;
  --hl-to-lavender: #e0dce8;
  --hl-lav-top: #e0dce8;
  --hl-lav-mid: #d8deef;
  --hl-lav-deep: #cfd6e8;
  --hl-to-gold: #e8e2d6;
  /* Вход в золотую секцию после лаванды (низ alt) */
  --hl-gold-after-lav: #ece8de;
  /* Герой: тот же ритм, что у секций - голубой/лаванда → золото/крем */
  --hero-bg-gradient: linear-gradient(
    180deg,
    #e2e8f4 0%,
    #dce4f0 12%,
    #d4dce8 28%,
    #d8deef 42%,
    #e2dcc8 58%,
    #ebe4d4 72%,
    #f0e8dc 92%,
    #f0e8dc 100%
  );
  --hero-overlay-gradient: linear-gradient(
    180deg,
    rgba(226, 232, 244, 0.92) 0%,
    rgba(216, 226, 240, 0.88) 22%,
    rgba(210, 220, 235, 0.85) 40%,
    rgba(228, 218, 198, 0.82) 62%,
    rgba(236, 228, 210, 0.88) 80%,
    rgba(240, 232, 218, 0.92) 100%
  );
  /* Мост Hero → Skilled Defense: общий нижний оттенок (совпадает с верхом секции) */
  --hl-seam-bridge: #f0e8dc;
}

/* Выделение текста - люкс оттенок */
::selection {
  background: rgba(197, 173, 197, 0.35);
  color: var(--lawyer-text);
}

/* Base & body - солидный фон, плотный крем/золотисто-беж */
body {
  background: linear-gradient(165deg, #ebe6dc 0%, #e8e2d6 25%, #ede8df 50%, #e6e0d4 75%, #e2dcd0 100%) fixed !important;
  background-color: var(--lawyer-bg-solid) !important;
  color: var(--lawyer-text) !important;
  min-height: 100vh !important;
}

#page-container {
  background: linear-gradient( #f5f1e9 0%, #f2ede4 50%, #efeae0 100%) !important;
  background-color: #f2ede4 !important;
  box-shadow: 0 0 0 1px var(--lawyer-gold-border), 0 8px 32px rgba(0, 0, 0, 0.07), 0 2px 8px rgba(0, 0, 0, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.5) !important;
  min-height: 100vh !important;
}

/* Header: элегантная полоса с золотистым оттенком (класс .partners-main-header в layout) */
#main-header,
.et_pb_menu__wrap,
.gt_header .et_pb_menu {
  background: linear-gradient( #fdfcf9 0%, #f9f6f0 100%) !important;
  background-color: #faf8f4 !important;
  border-bottom: 1px solid var(--lawyer-gold-border) !important;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.04), 0 1px 0 rgba(255, 255, 255, 0.6) inset !important;
}

#top-header {
  border-bottom: 1px solid var(--lawyer-gold-border) !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;
}

/* Nav links: солидный тёмный цвет (переопределено в layout - #4a4050) */
#main-header .nav li a,
.gt_header .nav ul li a,
.et_pb_menu__menu nav ul li a {
  color: #4a4050 !important;
}

#main-header .nav li a:hover,
.gt_header .nav ul li a:hover,
.et_pb_menu__menu nav ul li a:hover {
  color: var(--lawyer-primary-dark, #7a6a8a) !important;
}

/* Mobile menu */
.gt_header .et_mobile_menu li a {
  color: var(--lawyer-primary) !important;
}

.gt_header .et_mobile_menu li a:hover {
  color: var(--lawyer-secondary) !important;
}

/* Buttons: readable by default (darker bg + shadow), stylish hover */
body .et_pb_button,
.et_pb_button_module_wrapper .et_pb_button,
.et_pb_contact_submit,
input[type="submit"].et_pb_contact_submit {
  background-color: var(--lawyer-btn-bg) !important;
  border-color: var(--lawyer-btn-bg) !important;
  color: var(--lawyer-btn-text) !important;
  text-shadow: var(--lawyer-btn-shadow) !important;
  box-shadow: var(--lawyer-btn-box) !important;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

body .et_pb_button:hover,
.et_pb_button_module_wrapper .et_pb_button:hover,
.et_pb_contact_submit:hover,
input[type="submit"].et_pb_contact_submit:hover {
  background-color: var(--lawyer-btn-hover) !important;
  border-color: var(--lawyer-btn-hover) !important;
  color: var(--lawyer-btn-text) !important;
  text-shadow: var(--lawyer-btn-shadow-hover) !important;
  box-shadow: var(--lawyer-btn-box-hover) !important;
}

/* Links */
a {
  color: var(--lawyer-primary) !important;
}

a:hover {
  color: var(--lawyer-secondary) !important;
}

/* Headings accent */
.et_pb_section h1,
.et_pb_section h2,
.et_pb_section h3,
.et_pb_section h4 {
  color: var(--lawyer-text) !important;
}

.et_pb_section h1 span,
.et_pb_section h2 span,
.et_pb_module_header {
  color: inherit;
}

/* Button/link accent hover - darker for readability */
.et_pb_button.et_pb_custom_button_icon:hover,
.et-db #et-boc .et-l .et_pb_module .et_pb_button:hover {
  background-color: var(--lawyer-btn-hover-alt) !important;
  border-color: var(--lawyer-btn-hover-alt) !important;
  color: var(--lawyer-btn-text) !important;
  text-shadow: var(--lawyer-btn-shadow-hover) !important;
}

/* Section backgrounds: alternate subtle strips (like lawtheme) */
.et_pb_section.et_pb_section_0,
.et_pb_section:nth-of-type(odd) {
  background-color: var(--lawyer-bg) !important;
}

.et_pb_section.et_pb_section_1,
.et_pb_section:nth-of-type(even):not(.et_pb_section_parallax) {
  background-color: rgba(197, 173, 197, 0.08) !important;
}

/* CTA / promo blocks */
.et_pb_promo,
.et_pb_cta {
  background-color: var(--lawyer-secondary) !important;
}

.et_pb_promo .et_pb_promo_button,
.et_pb_cta .et_pb_button {
  background-color: var(--lawyer-bg) !important;
  color: var(--lawyer-secondary-dark) !important;
  border: 2px solid rgba(149, 153, 201, 0.4) !important;
  font-weight: 600 !important;
  text-shadow: none !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
}

.et_pb_promo .et_pb_promo_button:hover,
.et_pb_cta .et_pb_button:hover {
  background-color: var(--lawyer-btn-hover) !important;
  color: var(--lawyer-btn-text) !important;
  border-color: var(--lawyer-btn-hover) !important;
  text-shadow: var(--lawyer-btn-shadow-hover) !important;
}

/* Blurb / service boxes: border or icon in palette */
.et_pb_blurb .et-pb-icon,
.et_pb_blurb .et_pb_main_blurb_image {
  color: var(--lawyer-primary) !important;
}

.et_pb_blurb:hover .et-pb-icon,
.et_pb_blurb:hover .et_pb_main_blurb_image {
  color: var(--lawyer-secondary) !important;
}

.gt_service_style1 .et_pb_promo_description,
.gt_service_style2.et_pb_blurb .et_pb_blurb_description {
  color: var(--lawyer-text) !important;
}

/* Toggle / accordion (like FAQ) */
.et_pb_toggle_title:before,
.gt_accordion .et_pb_toggle_title:before {
  color: var(--lawyer-primary) !important;
}

.et_pb_toggle_open .et_pb_toggle_title:before {
  color: var(--lawyer-secondary) !important;
}

/* Testimonials */
.et_pb_testimonial_description {
  color: var(--lawyer-text) !important;
}

.et_pb_testimonial_author {
  color: var(--lawyer-primary) !important;
}

/* Footer */
#main-footer,
.et_pb_section_4,
footer .container {
  background-color: var(--lawyer-text) !important;
}

#main-footer a,
footer a {
  color: var(--lawyer-secondary) !important;
}

#main-footer a:hover,
footer a:hover {
  color: var(--lawyer-primary) !important;
}

/* Blockquote */
blockquote {
  border-left-color: var(--lawyer-primary) !important;
}

/* Dividers / lines */
.et_pb_divider:before {
  border-top-color: var(--lawyer-primary) !important;
}

/* Contact form focus */
.et_pb_contact_form input:focus,
.et_pb_contact_form textarea:focus {
  border-color: var(--lawyer-primary) !important;
  outline-color: var(--lawyer-primary);
}
