/*
 * Brawus final page polish.
 * This file is intentionally loaded last.  It preserves legacy component
 * semantics and adds a stable dark editorial shell around them.
 */

:root {
  --pp-bg: #080b0f;
  --pp-bg-2: #0c1016;
  --pp-panel: #11161e;
  --pp-panel-2: #151c26;
  --pp-ink: #f4f2ed;
  --pp-copy: #b6bdc9;
  --pp-muted: #7c8594;
  --pp-paper: #e9e5dc;
  --pp-paper-copy: #242931;
  --pp-paper-muted: #676e78;
  --pp-line: rgba(219, 227, 241, .13);
  --pp-line-strong: rgba(219, 227, 241, .25);
  --pp-blue: #788dff;
  --pp-shell: min(1560px, calc(100vw - 64px));
  --pp-radius: 24px;
}

/* Never crop vertical type or sliders at the page shell. */
body.brawus-v2 main,
body.brawus-v2 .br-page-content,
body.brawus-v2 .page-wrapper,
body.brawus-v2 .content-wrapper {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

body.brawus-v2:not(.page-home) .br-page-content {
  color: var(--pp-copy);
  background:
    radial-gradient(circle at 85% 6%, rgba(91, 112, 210, .09), transparent 28%),
    var(--pp-bg) !important;
}

body.brawus-v2.has-ed-template-hero .page-title,
body.brawus-v2.has-ed-template-hero .banner-section,
body.brawus-v2.has-ed-template-hero .banner-style-two { display: none !important; }

body.brawus-v2.has-ed-template-hero .ed-route-section {
  position: relative;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  color: var(--pp-copy) !important;
  border-top: 1px solid var(--pp-line) !important;
  border-radius: 0 !important;
  background: var(--pp-bg) !important;
  overflow: visible !important;
}

body.brawus-v2.has-ed-template-hero .ed-route-section:nth-of-type(odd) {
  background: var(--pp-bg-2) !important;
}

body.brawus-v2.has-ed-template-hero section.ed-route-section {
  padding: clamp(76px, 8vw, 132px) 0 !important;
}

body.brawus-v2.has-ed-template-hero .ed-route-section:empty,
body.brawus-v2.has-ed-template-hero :is(.mb152,.mb36,.mb27):empty,
body.brawus-v2.has-ed-template-hero .desktop-spacer:empty { display: none !important; }

body.brawus-v2:not(.page-home) :is(.auto-container,.ui-container,.container-default) {
  width: var(--pp-shell) !important;
  max-width: 1560px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

body.brawus-v2:not(.page-home) :is(.sec-title h1,.sec-title h2,.content-box > h1,.content-box > h2) {
  width: auto !important;
  max-width: 15ch !important;
  margin: 0 0 clamp(28px, 3.8vw, 54px) !important;
  color: var(--pp-ink) !important;
  font-family: "Tilda Sans", "Mont", Arial, sans-serif !important;
  font-size: clamp(44px, 5.1vw, 82px) !important;
  font-weight: 430 !important;
  line-height: .98 !important;
  letter-spacing: -.052em !important;
  text-wrap: balance !important;
}

body.brawus-v2:not(.page-home) :is(.sec-title h3,.content-box > h3,.inner-box > h3) {
  color: var(--pp-ink) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
}

body.brawus-v2:not(.page-home) :is(.text,p):not([data-phone-app-host] *) {
  color: var(--pp-copy);
}

body.brawus-v2:not(.page-home) .sec-title > :is(span,p):first-child {
  display: inline-flex;
  gap: 9px;
  align-items: center;
  margin: 0 0 24px !important;
  color: #a5adba !important;
  font-size: clamp(12px, .82vw, 14px) !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase;
}

/* Micro-copy is functional navigation, not decorative noise. */
body.brawus-v2 :is(
  .ed-template-hero__eyebrow,
  .ed-template-hero__rail,
  .ed-template-hero__scroll,
  .el-index-line,
  .el-section-label,
  .el-story-index,
  .el-project-topline,
  .el-project-stack
) {
  color: rgba(226, 230, 238, .76) !important;
  font-size: clamp(12px, .8vw, 14px) !important;
  font-weight: 650 !important;
  line-height: 1.42 !important;
  letter-spacing: .09em !important;
}

body.brawus-v2:not(.page-home) .theme-btn,
body.brawus-v2:not(.page-home) .btn-box a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 58px !important;
  padding: 15px 24px !important;
  color: var(--pp-ink) !important;
  border: 1px solid var(--pp-line-strong) !important;
  border-radius: 10px !important;
  background: transparent !important;
  line-height: 1.2 !important;
  opacity: 1 !important;
}

body.brawus-v2:not(.page-home) .theme-btn.style-two,
body.brawus-v2:not(.page-home) .btn-box .style-two {
  color: #080b10 !important;
  border-color: var(--pp-blue) !important;
  background: var(--pp-blue) !important;
  box-shadow: 0 14px 40px rgba(85, 108, 255, .21) !important;
}

body.brawus-v2:not(.page-home) .theme-btn:hover,
body.brawus-v2:not(.page-home) .btn-box a:hover {
  color: #090c11 !important;
  border-color: #a5b1ff !important;
  background: #a5b1ff !important;
  transform: translateY(-2px);
}

/* Shared two-column story sections. */
body.brawus-v2.has-ed-template-hero :is(.about-section,.chooseus-section) > .auto-container > .row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .92fr) !important;
  align-items: center !important;
  margin: 0 !important;
  row-gap: clamp(42px, 6vw, 86px) !important;
}

body.brawus-v2.has-ed-template-hero :is(.about-section,.chooseus-section) > .auto-container > .row > [class*="col-"] {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

body.brawus-v2.has-ed-template-hero :is(.about-section,.chooseus-section) :is(.image-box,.containerTopPhoto) {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--pp-line) !important;
  border-radius: var(--pp-radius) !important;
  background: var(--pp-panel) !important;
}

body.brawus-v2.has-ed-template-hero :is(.about-section,.chooseus-section) :is(.image-box,.containerTopPhoto) img {
  display: block;
  width: 100% !important;
  min-height: clamp(380px, 42vw, 680px);
  object-fit: cover !important;
  filter: saturate(.72) contrast(1.05) brightness(.82) !important;
}

body.brawus-v2.has-ed-template-hero :is(.about-section,.chooseus-section) :is(.image-box,.containerTopPhoto):hover img {
  filter: saturate(.95) contrast(1.03) brightness(.9) !important;
}

body.brawus-v2.has-ed-template-hero :is(.about-section,.chooseus-section) .content-box {
  position: static !important;
  height: auto !important;
  max-height: none !important;
  padding: clamp(12px, 3vw, 44px) !important;
  overflow: visible !important;
  background: transparent !important;
}

body.brawus-v2.has-ed-template-hero .list-item {
  display: grid !important;
  gap: 0 !important;
  margin: 30px 0 !important;
  padding: 0 !important;
  border-top: 1px solid var(--pp-line) !important;
}

body.brawus-v2.has-ed-template-hero .list-item > li {
  position: relative;
  margin: 0 !important;
  padding: 17px 16px 17px 31px !important;
  color: var(--pp-copy) !important;
  border-bottom: 1px solid var(--pp-line) !important;
}

body.brawus-v2.has-ed-template-hero .list-item > li::before {
  position: absolute;
  top: 25px;
  left: 8px;
  width: 6px;
  height: 6px;
  content: "";
  border: 1px solid var(--pp-blue);
  border-radius: 50%;
}

/* Shared service/feature cards, without touching structural Bootstrap lists. */
body.brawus-v2.has-ed-template-hero .feature-section > .auto-container > .row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px !important;
  margin: 0 !important;
}

body.brawus-v2.has-ed-template-hero .feature-section .feature-block {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

body.brawus-v2.has-ed-template-hero .feature-section .inner-box {
  display: flex !important;
  flex-direction: column;
  min-height: 430px !important;
  padding: clamp(26px, 3vw, 42px) !important;
  overflow: hidden !important;
  color: var(--pp-copy) !important;
  border: 1px solid var(--pp-line) !important;
  border-radius: var(--pp-radius) !important;
  background: linear-gradient(145deg, var(--pp-panel-2), var(--pp-panel)) !important;
}

body.brawus-v2.has-ed-template-hero .feature-section .inner-box :is(.secretBlock,.icon-box) {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 190px !important;
  margin: 0 0 30px !important;
  overflow: hidden !important;
  border: 1px solid var(--pp-line) !important;
  border-radius: 16px !important;
  background: #0b0f15 !important;
}

body.brawus-v2.has-ed-template-hero .feature-section .inner-box :is(.secretBlock,.icon-box) :is(img,svg) {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: saturate(.7) contrast(1.05) brightness(.82) !important;
}

body.brawus-v2.has-ed-template-hero .feature-section .inner-box h3 {
  margin-bottom: 26px !important;
  color: var(--pp-ink) !important;
  font-size: clamp(23px, 2.2vw, 34px) !important;
}

body.brawus-v2.has-ed-template-hero .feature-section .inner-box .btn-box { margin-top: auto; }

/* Warm editorial accent: one card per group, never a full white section. */
body.brawus-v2.has-ed-template-hero .feature-section .feature-block:nth-child(2) .inner-box {
  color: var(--pp-paper-copy) !important;
  border-color: rgba(25, 30, 38, .12) !important;
  background: var(--pp-paper) !important;
}
body.brawus-v2.has-ed-template-hero .feature-section .feature-block:nth-child(2) .inner-box :is(h3,h4,p,li,.text) {
  color: var(--pp-paper-copy) !important;
}
body.brawus-v2.has-ed-template-hero .feature-section .feature-block:nth-child(2) .inner-box .theme-btn {
  color: var(--pp-paper-copy) !important;
  border-color: rgba(25, 30, 38, .32) !important;
}

/* About page: narrative process instead of overlapping click panels. */
body.page-about-us .sectionMy {
  height: auto !important;
  min-height: 0 !important;
  padding: clamp(76px, 8vw, 128px) 0 !important;
  border-top: 1px solid var(--pp-line) !important;
  background: var(--pp-bg-2) !important;
}

body.page-about-us .sectionMy.hidden { display: none !important; }
body.page-about-us .sectionMy .container { width: var(--pp-shell) !important; max-width: 1560px !important; }
body.page-about-us .vision-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 22px !important;
  height: auto !important;
}
body.page-about-us :is(.vision-grid-left,.vision-grid-right) { display: grid !important; gap: 22px !important; }
body.page-about-us .vision-block {
  min-height: 270px;
  padding: clamp(28px, 4vw, 52px) !important;
  border: 1px solid var(--pp-line) !important;
  border-radius: 20px !important;
  background: var(--pp-panel) !important;
}
body.page-about-us .vision-grid-left .vision-block:first-child {
  color: var(--pp-paper-copy) !important;
  border-color: rgba(25, 30, 38, .12) !important;
  background: var(--pp-paper) !important;
}
body.page-about-us .vision-grid-left .vision-block:first-child :is(h2,h3,h4,p,.text) {
  color: var(--pp-paper-copy) !important;
}
body.page-about-us .vision-image-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 12px; }
body.page-about-us .vision-image-wrapper { min-height: 280px; border-radius: 18px; overflow: hidden; }
body.page-about-us .vision-image { width: 100% !important; height: 100% !important; object-fit: cover !important; filter: saturate(.65) contrast(1.05) brightness(.82); }

/* FAQ: remove the enormous light answer rectangles. */
body.page-faq .faq-section > .auto-container > .row { align-items: start !important; row-gap: 48px; }
body.page-faq .accordion-box { margin: 0 !important; padding: 0 !important; }
body.page-faq .accordion-box > li,
body.page-faq .accordion-box > .accordion {
  margin: 0 0 10px !important;
  overflow: hidden;
  border: 1px solid var(--pp-line) !important;
  border-radius: 16px !important;
  background: var(--pp-panel) !important;
}
body.page-faq .accordion-box .acc-btn { padding: 23px 64px 23px 24px !important; color: var(--pp-ink) !important; }
body.page-faq .accordion-box .acc-btn h4 { color: var(--pp-ink) !important; font-size: clamp(18px, 1.7vw, 25px) !important; line-height: 1.3 !important; }
body.page-faq .accordion-box .acc-content,
body.page-faq .accordion-box .content {
  margin: 0 !important;
  padding: 0 24px 24px !important;
  color: var(--pp-copy) !important;
  border: 0 !important;
  background: transparent !important;
}

/* Careers. */
body.page-offer-work .offer-critical { padding-top: clamp(82px, 9vw, 138px) !important; }
body.page-offer-work .offer-critical .image-box img { object-position: center 28%; }

/* Mobile and desktop product pages. */
body.page-mobile-development .fun-fact .row,
body.page-desktop .fun-fact .row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0 !important;
  margin: 0 !important;
}
body.page-mobile-development .fun-fact [class*="col-"],
body.page-desktop .fun-fact [class*="col-"] { width: 100% !important; max-width: none !important; padding: 0 !important; }
body.page-mobile-development .fun-fact .counter-block,
body.page-desktop .fun-fact .counter-block { min-height: 230px; padding: 40px 24px; border-right: 1px solid var(--pp-line); }

body :is(.service-style-two,.service-style-three) .tab-btns {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 0 30px !important;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid var(--pp-line) !important;
  border-radius: 16px !important;
  background: var(--pp-panel) !important;
}
body :is(.service-style-two,.service-style-three) .tab-btns > li {
  width: auto !important;
  margin: 0 !important;
  padding: 22px !important;
  border: 0 !important;
  border-right: 1px solid var(--pp-line) !important;
}
body :is(.service-style-two,.service-style-three) .tab-btns > li:last-child { border-right: 0 !important; }
body :is(.service-style-two,.service-style-three) .tabs-content {
  overflow: hidden;
  border: 1px solid var(--pp-line) !important;
  border-radius: var(--pp-radius) !important;
  background: var(--pp-panel) !important;
}
body :is(.service-style-two,.service-style-three) .tabs-content .tab { padding: clamp(24px, 4vw, 58px) !important; }

body.page-mobile-development .module-price-mobdev__cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px !important;
}

/* Service overview and support pricing. */
body.page-it-services .pricing-section .tabs-content .row,
body.page-vedenie-podderzhka .pricing-section .tabs-content > .tab > .row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px !important;
  margin: 0 !important;
}
body.page-it-services .pricing-section .tabs-content [class*="col-"],
body.page-vedenie-podderzhka .pricing-section .tabs-content [class*="col-"] {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}
body.page-vedenie-podderzhka .pricing-table {
  height: 100% !important;
  min-height: 690px;
  padding: clamp(26px, 3vw, 42px) !important;
  border: 1px solid var(--pp-line) !important;
  border-radius: 22px !important;
  background: linear-gradient(145deg, var(--pp-panel-2), var(--pp-panel)) !important;
}
body.page-vedenie-podderzhka .pricing-table :is(ul,li) { border-color: var(--pp-line) !important; }
body.page-vedenie-podderzhka .pricing-block:nth-child(2) .pricing-table {
  color: var(--pp-paper-copy) !important;
  border-color: rgba(25, 30, 38, .12) !important;
  background: var(--pp-paper) !important;
}
body.page-vedenie-podderzhka .pricing-block:nth-child(2) .pricing-table :is(h5,p,li) {
  color: var(--pp-paper-copy) !important;
  border-color: rgba(25, 30, 38, .14) !important;
}
body.page-vedenie-podderzhka .pricing-block:nth-child(2) .pricing-table .table-header h2:last-child {
  color: var(--pp-paper-copy) !important;
}
body.page-vedenie-podderzhka .consent-box { position: static !important; inset: auto !important; width: auto !important; margin: 20px 0 !important; }
body.page-vedenie-podderzhka .legacy-inline-footer { display: none !important; }

/* Product design: consistent 2x2 principles and unclipped case rail. */
body.page-designdevelopment .ui-container {
  display: grid !important;
  grid-template-columns: minmax(320px, .8fr) minmax(0, 1.2fr);
  gap: clamp(44px, 7vw, 110px);
  align-items: start;
  padding-block: clamp(78px, 8vw, 126px) !important;
}
body.page-designdevelopment .title-con { display: contents !important; }
body.page-designdevelopment .fixik-main-container-desktop { display: grid !important; grid-template-columns: 1fr 1fr; gap: 22px !important; }
body.page-designdevelopment .fixik-row { display: contents !important; }
body.page-designdevelopment .fixik-row > [class*="col-"] { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.page-designdevelopment .fixik-principles-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(150px, .55fr);
  gap: 20px;
  min-height: 310px !important;
  padding: clamp(28px, 3vw, 44px) !important;
  border: 1px solid var(--pp-line) !important;
  border-radius: 22px !important;
  background: var(--pp-panel) !important;
}
body.page-designdevelopment .fixik-principles-card img { width: 100% !important; max-width: none !important; height: 100% !important; object-fit: cover; border-radius: 14px; filter: saturate(.55) contrast(1.04) brightness(.8); }
body.page-designdevelopment .fixik-row:first-child > div:nth-child(2) .fixik-principles-card,
body.page-designdevelopment .fixik-row:nth-child(2) > div:first-child .fixik-principles-card {
  color: var(--pp-paper-copy) !important;
  border-color: rgba(25, 30, 38, .12) !important;
  background: var(--pp-paper) !important;
}
body.page-designdevelopment .fixik-row:first-child > div:nth-child(2) .fixik-principles-card :is(h3,p),
body.page-designdevelopment .fixik-row:nth-child(2) > div:first-child .fixik-principles-card :is(h3,p) {
  color: var(--pp-paper-copy) !important;
}
body.page-designdevelopment .fixik-cases-section .swiper-container { overflow: hidden !important; }

/* Contact: grid belongs to the inner container, not to the section. */
body.page-contact .google-map-section { display: block !important; padding: clamp(76px, 8vw, 126px) 0 !important; }
body.page-contact .fixik-google-map-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(340px, .65fr) !important;
  gap: 22px !important;
  align-items: stretch;
}
body.page-contact .fixik-google-map-container > [class*="col-"] { width: 100% !important; max-width: none !important; padding: 0 !important; }
body.page-contact .fixik-google-map-area {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 650px !important;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid var(--pp-line) !important;
  border-radius: var(--pp-radius) !important;
  background: #10161d !important;
}
body.page-contact .fixik-map-fallback { position: absolute !important; inset: 0 !important; background: #10161d !important; filter: saturate(.45) brightness(.72); }
body.page-contact .fixik-contact-column {
  padding: clamp(28px, 3vw, 44px) !important;
  border: 1px solid var(--pp-line) !important;
  border-radius: var(--pp-radius) !important;
  background: var(--pp-panel) !important;
}
body.page-contact .fixik-info-list { margin: 0 !important; padding: 0 !important; }
body.page-contact .fixik-info-list > li { padding: 24px 0 !important; border-bottom: 1px solid var(--pp-line) !important; }

/* Editorial listings: less empty space, readable cards, no white logo slabs. */
body :is(.page-portfolionew,.page-news) .el-intro { min-height: min(760px, 76svh) !important; padding-block: clamp(150px, 17vh, 220px) 70px !important; }
body :is(.page-portfolionew,.page-news) .editorial-listing { overflow: visible !important; }
body :is(.page-portfolionew,.page-news) .el-project-logo { background: rgba(8, 12, 18, .84) !important; border: 1px solid var(--pp-line) !important; }
body :is(.page-portfolionew,.page-news) .el-project-card { min-height: 380px !important; overflow: hidden !important; }
body.page-news .el-featured-link { min-height: 700px !important; max-height: 820px !important; }
body.page-news .el-story-author { margin-top: 0 !important; }
body.page-portfolionew .el-listing-outro {
  padding-block: clamp(78px, 9vw, 136px) !important;
  background: var(--pp-bg-2) !important;
}
body.page-portfolionew .el-listing-outro-grid {
  padding: clamp(32px, 5vw, 72px) !important;
  color: var(--pp-paper-copy) !important;
  border: 0 !important;
  border-radius: var(--pp-radius);
  background: var(--pp-paper) !important;
}
body.page-portfolionew .el-listing-outro-grid :is(h2,p,.el-section-label) {
  color: var(--pp-paper-copy) !important;
}

/* Existing web editorial page should keep its own deliberate system. */
body.page-web-development :is(.web-editorial,.web-section) { overflow: visible !important; }
body.page-web-development :is(.web-case,.web-manifest__media) img { filter: none !important; }
body.page-web-development :is(.web-manifest__title,.web-section__title) { height: auto !important; max-height: none !important; overflow: visible !important; word-break: normal !important; }

/* Case/article editorial modes: do not crop oversized type or real screens. */
body.ed-case-mode :is(.ed-case-chapter,.works-slider),
body.ed-article-mode :is(.ed-article-hero,.main__text) { overflow-y: visible !important; }
body.ed-case-mode .works-slider img { filter: none !important; }
body.ed-article-mode .ed-article-hero__title { max-width: 12ch !important; font-size: clamp(58px, 7vw, 112px) !important; }

/* ----------------------------------------------------------------------- */
/* Home: stable thesis and services at every desktop width.                */
/* ----------------------------------------------------------------------- */
body.page-home .eh-thesis { padding: clamp(72px, 7.5vw, 118px) 0 !important; }
body.page-home .eh-thesis h2 { font-size: clamp(64px, 7vw, 118px) !important; line-height: .92 !important; }
body.page-home .eh-thesis-foot { margin-top: clamp(38px, 5vw, 70px) !important; }

body.page-home .eh-services {
  display: grid !important;
  grid-template-columns: minmax(360px, .68fr) minmax(0, 1.32fr) !important;
  height: auto !important;
  min-height: 0 !important;
  background: #080a0d !important;
}
body.page-home .eh-services-intro {
  position: sticky;
  top: 0;
  align-self: start;
  min-height: 100svh !important;
  padding: clamp(76px, 7vw, 118px) clamp(38px, 5vw, 78px) clamp(44px, 5vw, 70px) !important;
  border-right: 1px solid rgba(255,255,255,.14) !important;
}
body.page-home .eh-services-rail {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
body.page-home .eh-service {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.14) !important;
  background: #0c0f14 !important;
}
body.page-home .eh-service summary {
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) 34px;
  gap: 18px;
  align-items: center;
  width: 100%;
  height: auto !important;
  min-height: 100px !important;
  padding: 24px clamp(24px, 4vw, 54px) !important;
}
body.page-home .eh-service summary::after {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  content: "+";
  color: rgba(255,255,255,.72);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;
}
body.page-home .eh-service[open] summary::after { content: "−"; }
body.page-home .eh-service-number { align-self: center !important; }
body.page-home .eh-service-summary-title {
  overflow: visible !important;
  color: rgba(255,255,255,.88) !important;
  font-size: clamp(20px, 2vw, 29px) !important;
  line-height: 1.1 !important;
  text-overflow: clip !important;
  white-space: normal !important;
  writing-mode: horizontal-tb !important;
  transform: none !important;
  opacity: 1 !important;
}
body.page-home .eh-service-body {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .9fr) !important;
  grid-template-rows: auto !important;
  height: auto !important;
  min-height: 470px !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(255,255,255,.1);
}
body.page-home .eh-service-copy {
  justify-content: center !important;
  padding: clamp(42px, 5vw, 76px) !important;
}
body.page-home .eh-service-copy h3 {
  max-width: 11ch !important;
  font-size: clamp(42px, 4.2vw, 68px) !important;
  line-height: .96 !important;
}
body.page-home .eh-service-media { min-height: 470px !important; }
body.page-home .eh-service-media img { width: 100% !important; height: 100% !important; object-fit: cover !important; filter: saturate(.72) contrast(1.05) brightness(.77); }

@media (max-width: 1180px) {
  :root { --pp-shell: min(100% - 42px, 1100px); }
  body.brawus-v2.has-ed-template-hero .feature-section > .auto-container > .row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-designdevelopment .ui-container { grid-template-columns: 1fr; }
  body.page-home .eh-services { grid-template-columns: minmax(300px, .7fr) minmax(0, 1.3fr) !important; }
  body.page-home .eh-service-body { grid-template-columns: 1fr !important; }
  body.page-home .eh-service-media { min-height: 340px !important; }
}

@media (max-width: 1000px) and (min-width: 721px) {
  body.page-portfolionew .el-project-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: auto !important;
  }
  body.page-portfolionew .el-project {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 430px !important;
  }
  body.page-portfolionew .el-project h2,
  body.page-portfolionew .el-project:nth-child(8n + 1) h2 {
    font-size: clamp(25px, 4vw, 40px) !important;
  }
}

@media (max-width: 820px) {
  :root { --pp-shell: calc(100vw - 32px); }
  body.brawus-v2.has-ed-template-hero section.ed-route-section { padding-block: 68px !important; }
  body.brawus-v2:not(.page-home) :is(.sec-title h1,.sec-title h2,.content-box > h1,.content-box > h2) { max-width: 18ch !important; font-size: clamp(38px, 11vw, 62px) !important; }
  body.brawus-v2.has-ed-template-hero .feature-section > .auto-container > .row,
  body.brawus-v2.has-ed-template-hero :is(.about-section,.chooseus-section) > .auto-container > .row,
  body.page-about-us .vision-grid,
  body.page-designdevelopment .fixik-main-container-desktop,
  body.page-contact .fixik-google-map-container,
  body.page-it-services .pricing-section .tabs-content .row,
  body.page-vedenie-podderzhka .pricing-section .tabs-content > .tab > .row { grid-template-columns: 1fr !important; }
  body.page-about-us .vision-image-grid { grid-template-columns: 1fr; }
  body.page-mobile-development .fun-fact .row,
  body.page-desktop .fun-fact .row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body :is(.service-style-two,.service-style-three) .tab-btns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-mobile-development .module-price-mobdev__cards { grid-template-columns: 1fr !important; }
  body.page-designdevelopment .fixik-principles-card { grid-template-columns: 1fr; }
  body.page-contact .fixik-google-map-area { min-height: 500px !important; }

  body.page-home .eh-thesis-grid,
  body.page-home .eh-thesis-foot { grid-template-columns: 1fr !important; }
  body.page-home .eh-thesis-foot { gap: 34px !important; }
  body.page-home .eh-thesis-result { grid-template-columns: 1fr !important; }
  body.page-home .eh-services { display: block !important; }
  body.page-home .eh-services-intro { position: relative; min-height: 380px !important; padding-block: 56px 36px !important; border-right: 0 !important; border-bottom: 1px solid rgba(255,255,255,.14) !important; }
  body.page-home .eh-service-body { min-height: 0 !important; }
  body.page-home .eh-service-copy { padding: 38px 24px 46px !important; }
}

@media (max-width: 520px) {
  body.brawus-v2.has-ed-template-hero .feature-section > .auto-container > .row { grid-template-columns: 1fr; }
  body.page-mobile-development .fun-fact .row,
  body.page-desktop .fun-fact .row { grid-template-columns: 1fr; }
  body :is(.service-style-two,.service-style-three) .tab-btns { display: flex !important; overflow-x: auto; }
  body :is(.service-style-two,.service-style-three) .tab-btns > li { flex: 0 0 220px; }
  body.page-home .eh-services-intro { min-height: 330px !important; padding-block: 46px 28px !important; }
  body.page-home .eh-service summary { grid-template-columns: 34px minmax(0,1fr) 32px; gap: 10px; min-height: 82px !important; padding: 18px 16px !important; }
  body.page-home .eh-service-summary-title { font-size: 18px !important; }
  body.page-home .eh-service-media { min-height: 260px !important; }
}
