/* Layout clean-up of the Bulgarian pages (Ivan 13.11.2026): one content width, one height for the
   top image, a shorter footer, less empty space. Nothing is removed from the pages here, only
   spaced and lined up. Linked last in <head> on the Bulgarian pages only; the English pages
   have their own header/footer and are not touched.
   Three screens (Ivan 13.11.2026, tools/breakpoints.py): phone ≤640px, tablet 641-900px,
   computer from 901px. Nothing here uses any other width. */

/* ---- Header: logo without the slogan, no request button ------------------------------------ */
/* The button's column is gone; the other three share its width. */
@media (min-width:641px){
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-4bdbb15c { width: 18%; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-3c1c0961 { width: 54%; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-c816d13 { width: 28%; }
}
@media (max-width:900px){   /* the menu had a fixed 442px width here and broke into two lines */
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-5fce697 { --container-widget-width: 100%; width: 100%; max-width: 100%; }
}
@media (min-width:901px){   /* small computers: the five menu words stay on one line (space grows with the screen) */
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-5fce697 .elementor-nav-menu--main .elementor-item { font-size: clamp(14px, 1.25vw, 18px); padding-left: clamp(10px, 1.4vw, 20px); padding-right: clamp(10px, 1.4vw, 20px); }
}

/* Tablet and phone: logo left, country/language, menu button at the right edge. */
@media (max-width:900px){
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-4bdbb15c { order: 1; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-c816d13 { order: 2; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-3c1c0961 { order: 3; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-5fce697 .elementor-menu-toggle { margin: 0 0 0 auto; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-9e8d764 { --spacer-size: 0px; }   /* the gap was for the button */
}
@media (min-width:641px) and (max-width:900px){
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-4bdbb15c { width: 30%; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-c816d13 { width: 50%; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-3c1c0961 { width: 20%; }
}
@media (max-width:640px){   /* (!important: the old phone fixes in the pages' own style block use it) */
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-4bdbb15c { width: 50% !important; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-3c1c0961 { width: 50% !important; order: 2; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-c816d13 { order: 3; }
}
html[lang="bg-BG"] .elementor-318 .elementor-widget-theme-site-logo { text-align: left; }
@media (min-width:901px){   /* country and language end where the page's content ends */
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-d194fbb > .elementor-container { justify-content: flex-end; flex-wrap: nowrap; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-903b971 .elementor-nav-menu { flex-wrap: nowrap; }
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-4cdf70a,
  html[lang="bg-BG"] .elementor-318 .elementor-element.elementor-element-9b6cdca { width: auto !important; }
}
html[lang="bg-BG"] .elementor-widget-image a img.sonnis-logo { width: clamp(140px, 13vw, 180px); height: auto; }
@media (max-width:900px){ html[lang="bg-BG"] .elementor-widget-image a img.sonnis-logo { width: 150px; } }
@media (max-width:640px){ html[lang="bg-BG"] .elementor-widget-image a img.sonnis-logo { width: 140px; } }

/* ---- One content width ------------------------------------------------------------------------ */
/* The pages used 1420px (text from one screen edge to the other on a laptop) next to pages of
   940-1240px. Now 1200px, the same as the header and the footer. Sections that set their own,
   narrower width keep it (:where keeps this rule weaker than theirs). */
@media (min-width:901px){
  :where(html[lang="bg-BG"]) .elementor-section.elementor-section-boxed > .elementor-container { max-width: 1200px; }
  :where(html[lang="bg-BG"]) .e-con { --container-max-width: 1200px; }
}

/* ---- Top image: one height on every page ------------------------------------------------------ */
/* (the home page's video is its own design and stays as it is) */
html[lang="bg-BG"] body:not(.home):not(.page-id-171) .elementor[data-elementor-type="wp-page"] > .elementor-top-section.elementor-section-full_width:first-child,
html[lang="bg-BG"] .elementor[data-elementor-type="single-post"] > .elementor-top-section:first-child,
html[lang="bg-BG"] .elementor[data-elementor-type="archive"] > .elementor-top-section:first-child {
  display: flex; align-items: center;
  min-height: 440px; padding-top: 40px !important; padding-bottom: 40px !important;
}
html[lang="bg-BG"] body:not(.home):not(.page-id-171) .elementor[data-elementor-type="wp-page"] > .elementor-top-section.elementor-section-full_width:first-child > .elementor-container,
html[lang="bg-BG"] .elementor[data-elementor-type="single-post"] > .elementor-top-section:first-child > .elementor-container,
html[lang="bg-BG"] .elementor[data-elementor-type="archive"] > .elementor-top-section:first-child > .elementor-container {
  width: 100%; min-height: 0 !important;
}
@media (max-width:900px){
  html[lang="bg-BG"] body:not(.home):not(.page-id-171) .elementor[data-elementor-type="wp-page"] > .elementor-top-section.elementor-section-full_width:first-child,
  html[lang="bg-BG"] .elementor[data-elementor-type="single-post"] > .elementor-top-section:first-child,
  html[lang="bg-BG"] .elementor[data-elementor-type="archive"] > .elementor-top-section:first-child { min-height: 380px; }
}
@media (max-width:640px){
  html[lang="bg-BG"] body:not(.home):not(.page-id-171) .elementor[data-elementor-type="wp-page"] > .elementor-top-section.elementor-section-full_width:first-child,
  html[lang="bg-BG"] .elementor[data-elementor-type="single-post"] > .elementor-top-section:first-child,
  html[lang="bg-BG"] .elementor[data-elementor-type="archive"] > .elementor-top-section:first-child { min-height: 320px; padding-top: 32px !important; padding-bottom: 32px !important; }
}

/* Titles that were too long for it: blog posts (the title had a narrow column and 43px letters)
   and the service pages' sub-titles on phones. */
html[lang="bg-BG"] .elementor-element.elementor-element-4946a79c > .elementor-container { max-width: 960px; }
html[lang="bg-BG"] .elementor-element.elementor-element-5894daf7 .elementor-heading-title { font-size: 36px; line-height: 1.3; }
@media (max-width:900px){ html[lang="bg-BG"] .elementor-element.elementor-element-5894daf7 .elementor-heading-title { font-size: 30px; } }
@media (max-width:640px){
  html[lang="bg-BG"] .elementor-element.elementor-element-5894daf7 .elementor-heading-title { font-size: 24px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-5d16db5 h1.elementor-heading-title,
  html[lang="bg-BG"] .elementor-element.elementor-element-46a7fce1 h1.elementor-heading-title { font-size: 32px; line-height: 1.3; }
  html[lang="bg-BG"] .elementor-element.elementor-element-5d16db5 h2.elementor-heading-title,
  html[lang="bg-BG"] .elementor-element.elementor-element-46a7fce1 h2.elementor-heading-title { font-size: 20px; line-height: 1.4; }
}

/* ---- Footer: same content, less height --------------------------------------------------------- */
html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-28f239e3 { padding: 48px 0 12px; }
html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-732d1b35 { margin-top: 32px; padding-top: 12px; }
@media (max-width:900px){
  html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-28f239e3 { padding: 40px 20px 16px; }
  html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-732d1b35 { margin-top: 28px; }
}
@media (max-width:640px){
  /* two columns side by side, twice */
  html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-49dac4f3,
  html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-64dbcc81 { width: 50%; }
  html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-49dac4f3 > .elementor-element-populated,
  html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-64dbcc81 > .elementor-element-populated { margin-top: 24px; }
  html[lang="bg-BG"] .elementor-294 .elementor-column .elementor-widget-heading:not(.elementor-element-7e8082dd) .elementor-heading-title { font-size: 16px !important; line-height: 1.3 !important; }
  html[lang="bg-BG"] .elementor-294 .elementor-column .elementor-widget-heading:not(.elementor-element-7e8082dd) { margin-bottom: 10px !important; }
  html[lang="bg-BG"] .elementor-294 .elementor-icon-list-text { line-height: 1.6; }
  html[lang="bg-BG"] .elementor-294 .elementor-element.elementor-element-732d1b35 { margin-top: 24px; }
}

/* ---- Less empty space between blocks ----------------------------------------------------------- */
/* Gaps of 130-350px between blocks (or before the footer) brought down to about 60-110px on
   computers and 40-90px on phones. Each line names the block it shortens. */
html[lang="bg-BG"] .elementor-element.elementor-element-9195f65,        /* services: logos band below the button */
html[lang="bg-BG"] .elementor-element.elementor-element-11b4994,
html[lang="bg-BG"] .elementor-element.elementor-element-5636764c,       /* частни клиенти: after the two columns */
html[lang="bg-BG"] .elementor-element.elementor-element-1ddf643,        /* офиси: before the footer */
html[lang="bg-BG"] .elementor-element.elementor-element-c2022f1,        /* за нас / нашата визия */
html[lang="bg-BG"] .elementor-element.elementor-element-5355b275 { padding-bottom: 60px; }
html[lang="bg-BG"] .elementor-element.elementor-element-49595721 { padding-bottom: 40px; }   /* контакт */
html[lang="bg-BG"] .elementor-element.elementor-element-2aca41f { --spacer-size: 20px; }
html[lang="bg-BG"] .elementor-element.elementor-element-b185174 { --spacer-size: 40px; }
html[lang="bg-BG"] .elementor-element.elementor-element-2775ada { padding-top: 20px; }      /* офиси: under the top image */
html[lang="bg-BG"] .elementor-element.elementor-element-41cf56ce,       /* домакинства / бизнес: before „Вашите предимства“ */
html[lang="bg-BG"] .elementor-element.elementor-element-743b8bfd { padding-bottom: 20px; }
@media (min-width:641px){   /* home: the three blocks after the arrows (phones already have 40px) */
  html[lang="bg-BG"] .elementor-4757 .elementor-element.elementor-element-7fca887f,
  html[lang="bg-BG"] .elementor-4757 .elementor-element.elementor-element-68774c21,
  html[lang="bg-BG"] .elementor-4757 .elementor-element.elementor-element-647ddbb5 { --margin-top: 60px; margin-top: 60px; }
}
/* Проекти and Блог: the page numbers had no space above them and ~300px below them. */
html[lang="bg-BG"] .elementor-element.elementor-element-2b778ec1,
html[lang="bg-BG"] .elementor-element.elementor-element-ec0b8ca { margin-bottom: 64px; }
html[lang="bg-BG"] .elementor-pagination { margin-top: 48px; }
html[lang="bg-BG"] .elementor-pagination .page-numbers { color: var(--e-global-color-primary); }
html[lang="bg-BG"] .elementor-pagination a.page-numbers:hover { color: #0f9d3a; }
html[lang="bg-BG"] .elementor-pagination .page-numbers.current { font-weight: 700; border-bottom: 2px solid var(--e-global-color-secondary); }
html[lang="bg-BG"] .elementor-pagination span.page-numbers.prev,
html[lang="bg-BG"] .elementor-pagination span.page-numbers.next { color: #b5bcc4; }
@media (max-width:640px){
  html[lang="bg-BG"] .elementor-element.elementor-element-9195f65,
  html[lang="bg-BG"] .elementor-element.elementor-element-11b4994,
  html[lang="bg-BG"] .elementor-element.elementor-element-d0382f8,
  html[lang="bg-BG"] .elementor-element.elementor-element-43686678,
  html[lang="bg-BG"] .elementor-element.elementor-element-2775ada,
  html[lang="bg-BG"] .elementor-element.elementor-element-c2022f1,
  html[lang="bg-BG"] .elementor-element.elementor-element-20d6f21c,
  html[lang="bg-BG"] .elementor-element.elementor-element-38101593 { padding-bottom: 30px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-5636764c { padding-bottom: 40px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-15e885de,
  html[lang="bg-BG"] .elementor-element.elementor-element-7590b6c,
  html[lang="bg-BG"] .elementor-element.elementor-element-41cf56ce,
  html[lang="bg-BG"] .elementor-element.elementor-element-743b8bfd,
  html[lang="bg-BG"] .elementor-element.elementor-element-72a2da2c,
  html[lang="bg-BG"] .elementor-element.elementor-element-6013e16f { padding-top: 30px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-5355b275 { padding-top: 20px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-4d7f7440,
  html[lang="bg-BG"] .elementor-element.elementor-element-1855b9bd,
  html[lang="bg-BG"] .elementor-element.elementor-element-72a2da2c { margin-bottom: 20px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-b185174 { --spacer-size: 30px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-158d72aa,
  html[lang="bg-BG"] .elementor-element.elementor-element-3b19551,
  html[lang="bg-BG"] .elementor-element.elementor-element-586bdaa2 { --spacer-size: 20px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-4239a10b { margin-top: 20px; }        /* project pages */
  html[lang="bg-BG"] .elementor-element.elementor-element-3c5af7e6 { margin-bottom: 40px; }
  html[lang="bg-BG"] .elementor-element.elementor-element-5c9021f { --padding-top: 40px; padding-top: 40px; }   /* нашата визия */
  html[lang="bg-BG"] .elementor-element.elementor-element-2b778ec1,
  html[lang="bg-BG"] .elementor-element.elementor-element-ec0b8ca { margin-bottom: 48px; }
  html[lang="bg-BG"] .elementor-pagination { margin-top: 32px; }
}

/* ---- Project cards: one label each, as designed ------------------------------------------------- */
/* The card template shows only the first category; a category written as plain text (its page
   was removed) slipped past that rule and stuck to the first one: "БизнесСИСТЕМИ ЗА ...". */
html[lang="bg-BG"] .elementor-5054 .elementor-element.elementor-element-703ee99 .elementor-heading-title > :not(:first-child) { display: none; }
html[lang="bg-BG"] .elementor-5054 .elementor-element.elementor-element-703ee99 .elementor-heading-title > span { text-transform: none; }

/* ---- Small alignment fixes ------------------------------------------------------------------- */
/* Headings set to "justify" were stretched with big holes between the words. */
html[lang="bg-BG"] .elementor-element.elementor-element-de95505 .elementor-heading-title,
html[lang="bg-BG"] .elementor-element.elementor-element-179a7802 .elementor-heading-title,
html[lang="bg-BG"] .elementor-element.elementor-element-353119af .elementor-heading-title,
html[lang="bg-BG"] .elementor-element.elementor-element-166d71b4 :is(h1, h2, h3, h4, h5, h6) { text-align: left; }
/* Домакинства / Бизнес клиенти: the text next to the tall photo sits in the middle, not at the top. */
@media (min-width:641px){
  html[lang="bg-BG"] .elementor-element.elementor-element-41cf56ce > .elementor-container,
  html[lang="bg-BG"] .elementor-element.elementor-element-743b8bfd > .elementor-container { align-items: center; }
}
/* Проекти: the cards of one row end on the same line. */
html[lang="bg-BG"] .elementor-element.elementor-element-a03dac0 .e-loop-item > .elementor-element.elementor-element-75b1151 { height: 100%; }

/* ---- Home page: the three cards' titles in white (green on the green photos was hard to read) -- */
html[lang="bg-BG"] .elementor-4757 .elementor-element.elementor-element-1bd4553 .elementor-heading-title,
html[lang="bg-BG"] .elementor-4757 .elementor-element.elementor-element-18839d4 .elementor-heading-title,
html[lang="bg-BG"] .elementor-4757 .elementor-element.elementor-element-7c2190d .elementor-heading-title { color: #fff; }
