/* ===== ТИПОГРАФІКА: єдиний шрифт і шкала (2026-09-14) ===== */
:root { --adup-font: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; --adup-text: #5f6675; --adup-heading: #283a5e; }
html body { font-family: var(--adup-font) !important; color: var(--adup-text); font-size: 16px; line-height: 1.7; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
body :is(h1, h2, h3, h4, h5, h6, p, a, li, dt, dd, label, input, textarea, select, button, blockquote, figcaption, td, th, small, strong, b, em, span, div, summary):not(i):not([class^="icon"]):not([class*=" icon-"]):not([class*="fa-"]):not(.fa):not(.fas):not(.far):not(.fab):not([class*="eicon"]) { font-family: var(--adup-font) !important; }
body :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title) { letter-spacing: -0.01em; }
body h1, body h2, body h3, body h4, body h5, body h6 { color: var(--adup-heading); }
body .elementor-widget-text-editor, body .elementor-widget-text-editor p { line-height: 1.7; }
body .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
/* SEO-текст на головній: зручне читання */
.elementor-widget-wp-widget-text .textwidget { max-width: 900px; margin: 0; color: var(--adup-text); font-size: 16px; line-height: 1.75; }
.elementor-widget-wp-widget-text .textwidget h2 { font-size: 26px !important; line-height: 1.3 !important; font-weight: 800 !important; color: var(--adup-heading); margin: 40px 0 14px !important; }
.elementor-widget-wp-widget-text .textwidget h2:first-child { margin-top: 0 !important; }
.elementor-widget-wp-widget-text .textwidget h3 { font-size: 20px !important; line-height: 1.35 !important; font-weight: 700 !important; color: var(--adup-heading); margin: 28px 0 10px !important; }
.elementor-widget-wp-widget-text .textwidget p { font-size: 16px !important; line-height: 1.75 !important; margin: 0 0 14px !important; color: var(--adup-text); }
.elementor-widget-wp-widget-text .textwidget strong { color: var(--adup-heading); font-weight: 700; }
.elementor-widget-wp-widget-text .textwidget hr { border: 0; border-top: 1px solid #eceef3; margin: 34px 0; }
/* позначки секцій однаково по сайту */
body .elementor-widget-heading .elementor-heading-title[style*="uppercase"], .adup-label { letter-spacing: .08em !important; }
@media (max-width: 767px) { html body { font-size: 15px; } .elementor-widget-wp-widget-text .textwidget h2 { font-size: 22px !important; } .elementor-element-f2c7325 h1.adup-home-h1 { font-size: 24px; line-height: 32px; } }

/* adup.net.ua — стилі замість pixerex-core (2026-09-14) */
.adup-infobox .elementor-icon { transition: background-color .3s, color .3s; }
.adup-infobox .elementor-icon i { display: block; }
.adup-infobox .elementor-icon-box-title { margin-top: 0; }
/* відгуки */
.adup-tslider-on > .adup-tslide:not(.is-active) { display: none; }
.adup-tslide .elementor-testimonial-content { margin-bottom: 30px; }
.adup-tnav { display: flex; gap: 10px; justify-content: flex-end; margin-top: -40px; }
.adup-tnav button { background: #fff; border: 0; color: #c4bfcc; font-size: 22px; line-height: 1; padding: 5px; cursor: pointer; transition: color .2s; }
.adup-tnav button:hover, .adup-tnav button:focus-visible { color: #ff8156; }
/* команда */
.adup-team-card .elementor-image-box-wrapper { background: #fff; border-radius: 5px; box-shadow: 0 5px 15px rgba(130,136,147,.15); padding: 25px; height: 100%; }
.adup-team-card .elementor-image-box-img img { border-radius: 5px; aspect-ratio: 1 / 1; object-fit: cover; }
.adup-team-card .elementor-image-box-title { text-transform: capitalize; }
/* ціни */
.main-price-table { position: relative; }
@media (min-width: 1025px) { .main-price-table > .elementor-element-populated { margin-top: -10px !important; margin-bottom: -10px !important; } }
.elementor-widget-icon-list .elementor-icon-list-text { font-family: var(--adup-font); }
/* форма CF7 */
.adup-cf7 .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio]), .adup-cf7 .wpcf7-form textarea { color: #828893; }
.adup-cf7 .wpcf7-form input::placeholder, .adup-cf7 .wpcf7-form textarea::placeholder { color: #828893; }
.adup-cf7 .wpcf7-form input:focus, .adup-cf7 .wpcf7-form textarea:focus { border-color: #ff6d34; }
/* команда: сітка */
.adup-team-grid > .elementor-widget-wrap { max-width: 1170px; margin: 0 auto; box-sizing: border-box; padding-left: 15px !important; padding-right: 15px !important; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; align-items: stretch; }
.adup-team-grid > .elementor-widget-wrap > .elementor-widget { margin-bottom: 0 !important; width: auto !important; }
@media (max-width: 1024px) { .adup-team-grid > .elementor-widget-wrap { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) { .adup-team-grid > .elementor-widget-wrap { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; } }
/* меню HFE */
.adup-nav-vertical .sub-menu, .adup-nav-vertical .hfe-menu-toggle { display: none !important; }
.adup-nav-vertical .hfe-nav-menu__layout-vertical .menu-item a.hfe-menu-item { padding-left: 0; }
.adup-nav .hfe-nav-menu a.hfe-menu-item { white-space: nowrap; }

/* hover карток і валюта цін (згенеровано конвертером) */
.elementor-element-28605b2:hover .elementor-icon{background-color:#ffdd6e!important;color:#fff7df!important;fill:#fff7df!important}
.elementor-element-e20eca7:hover .elementor-icon{background-color:#9365d4!important;color:#f8f1ff!important;fill:#f8f1ff!important}
.elementor-element-d76ef02:hover .elementor-icon{background-color:#ff6d34!important;color:#FFEEE4!important;fill:#FFEEE4!important}
.elementor-element-2df12d5:hover .elementor-icon{background-color:#ff6d34!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-2df12d5 .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-779b863:hover .elementor-icon{background-color:#9365d4!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-779b863 .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-97adc18:hover .elementor-icon{background-color:#ffdd6e!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-97adc18 .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-1773761:hover .elementor-icon{background-color:#5edbd5!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-1773761 .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-7c617b2:hover .elementor-icon{background-color:#ff6d34!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-7c617b2 .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-5604025:hover .elementor-icon{background-color:#9365d4!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-5604025 .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-eb75477:hover .elementor-icon{background-color:#ffdd6e!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-eb75477 .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-63b902f:hover .elementor-icon{background-color:#5edbd5!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-63b902f .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-614abae:hover .elementor-icon{background-color:#ff6d34!important;color:#ffffff!important;fill:#ffffff!important}
.elementor-element-614abae .elementor-icon{box-shadow:0px 2px 10px 0px rgba(0,0,0,0.06)}
.elementor-element-51a20fe .adup-price-cur{color:#dce0e6;font-size:23px;line-height:20px;vertical-align:top;margin-right:-8px;letter-spacing:0;position:relative;top:4px}
.elementor-element-29f5817 .adup-price-cur{color:#dce0e6;font-size:23px;line-height:20px;vertical-align:top;margin-right:-8px;letter-spacing:0;position:relative;top:4px}
.elementor-element-92ab782 .adup-price-cur{color:#dce0e6;font-size:23px;line-height:20px;vertical-align:top;margin-right:-8px;letter-spacing:0;position:relative;top:4px}

/* ===== Сторінка SEO-просування (1413) ===== */
.adup-seo-cardcol > .elementor-widget-wrap { background: #fff; border-radius: 12px; box-shadow: 0 6px 24px rgba(130,136,147,.13); padding: 40px 30px !important; transition: transform .3s, box-shadow .3s; }
.adup-seo-cardcol:hover > .elementor-widget-wrap { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(130,136,147,.2); }
.elementor-section.elementor-inner-section:has(.adup-seo-cardcol) + .elementor-inner-section { margin-top: 30px; }
.adup-seo-card .elementor-icon { transition: background-color .3s, color .3s; }
.adup-seo-card .elementor-icon-box-description { margin: 0; }
@media (max-width: 1024px) { .adup-seo-cardcol { margin-bottom: 20px; } }

/* етапи */
.adup-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px; position: relative; counter-reset: s; }
.adup-steps::before { content: ""; position: absolute; left: 8%; right: 8%; top: 32px; border-top: 2px dashed #ffc4ad; z-index: 0; }
.adup-step { position: relative; z-index: 1; text-align: center; padding: 0 4px; }
.adup-step-num { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin: 0 auto 18px; border-radius: 50%; background: #fff; color: #ff6d34; font: 600 24px/1 var(--adup-font); box-shadow: 0 8px 20px rgba(255,109,52,.18); border: 2px solid #ff6d34; transition: background .3s, color .3s; }
.adup-step:hover .adup-step-num { background: #ff6d34; color: #fff; }
.adup-step-title { display: block; color: #283a5e; font-weight: 600; font-size: 16px; line-height: 22px; margin-bottom: 8px; }
.adup-step-text { display: block; color: #828893; font-size: 14px; line-height: 21px; }
.adup-terms { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-top: 60px; }
.adup-term { display: grid; grid-template-columns: 64px 1fr; grid-template-rows: auto auto; column-gap: 18px; align-items: center; background: #fff; border-radius: 12px; padding: 26px 28px; box-shadow: 0 6px 24px rgba(130,136,147,.13); }
.adup-term-icon { grid-row: 1 / 3; width: 64px; height: 64px; border-radius: 50%; background: #ffeee4; color: #ff6d34; display: flex; align-items: center; justify-content: center; font-size: 28px; }
.adup-term-val { color: #283a5e; font: 600 21px/1.25 var(--adup-font); letter-spacing: -0.3px; }
.adup-term-cap { color: #828893; font-size: 14px; line-height: 20px; }
@media (max-width: 1024px) {
  .adup-steps { grid-template-columns: repeat(3, 1fr); row-gap: 40px; }
  .adup-steps::before { display: none; }
  .adup-terms { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 767px) {
  .adup-steps { grid-template-columns: 1fr; row-gap: 0; }
  .adup-step { display: grid; grid-template-columns: 52px 1fr; column-gap: 16px; text-align: left; padding: 0 0 26px; }
  .adup-step::after { content: ""; position: absolute; left: 25px; top: 52px; bottom: 0; border-left: 2px dashed #ffc4ad; }
  .adup-step:last-child::after { display: none; }
  .adup-step-num { grid-row: 1 / 3; width: 52px; height: 52px; margin: 0; font-size: 20px; }
  .adup-step-title { margin: 4px 0 4px; }
  .adup-term { padding: 20px; grid-template-columns: 54px 1fr; }
  .adup-term-icon { width: 54px; height: 54px; font-size: 24px; }
  .adup-term-val { font-size: 22px; }
}

/* для кого */
.adup-seo-photo img { border-radius: 16px; box-shadow: 0 25px 50px rgba(40,58,94,.15); }
.adup-seo-for .elementor-icon-list-item { align-items: center !important; }
.adup-seo-for .elementor-icon-list-icon { display: inline-flex !important; align-items: center; justify-content: center; width: 46px !important; height: 46px; min-width: 46px; border-radius: 50%; background: #ffeee4; flex: none; padding: 0 !important; }
.adup-seo-for .elementor-icon-list-icon i { line-height: 1; }

/* фактори ціни */
.adup-factor { position: relative; background: #fff; border-radius: 12px; padding: 36px 30px 30px; box-shadow: 0 6px 24px rgba(130,136,147,.13); height: 100%; box-sizing: border-box; overflow: hidden; }
.adup-factor-num { position: absolute; right: 18px; top: 6px; font: 700 64px/1 var(--adup-font); color: #fff2ea; }
.adup-factor-title { position: relative; margin: 0 0 12px; color: #283a5e; font-size: 20px; line-height: 27px; font-weight: 600; }
.adup-factor-title::before { content: ""; display: block; width: 40px; height: 4px; border-radius: 2px; background: #ff6d34; margin-bottom: 18px; }
.adup-factor-text { position: relative; margin: 0; color: #828893; font-size: 15px; line-height: 24px; }
.elementor-widget-html:has(.adup-factor), .elementor-widget-html:has(.adup-factor) > .elementor-widget-container { height: 100%; }
@media (max-width: 767px) { .adup-factor { margin-bottom: 16px; } }

/* FAQ */
.adup-faq-item { background: #fff; border-radius: 12px; margin-bottom: 14px; box-shadow: 0 4px 16px rgba(130,136,147,.1); overflow: hidden; }
.adup-faq-item summary { list-style: none; cursor: pointer; position: relative; padding: 22px 64px 22px 28px; color: #283a5e; font-weight: 600; font-size: 17px; line-height: 25px; }
.adup-faq-item summary::-webkit-details-marker { display: none; }
.adup-faq-item summary::after { content: "+"; position: absolute; right: 22px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border-radius: 50%; background: #ffeee4; color: #ff6d34; font-size: 22px; line-height: 30px; text-align: center; transition: transform .25s, background .25s, color .25s; }
.adup-faq-item[open] summary::after { content: "−"; background: #ff6d34; color: #fff; }
.adup-faq-item summary:focus-visible { outline: 2px solid #ff6d34; outline-offset: -2px; }
.adup-faq-a { padding: 0 28px 22px; color: #828893; font-size: 15px; line-height: 25px; }
.adup-faq-a p { margin: 0; }
@media (max-width: 767px) { .adup-faq-item summary { padding: 18px 56px 18px 18px; font-size: 16px; } .adup-faq-a { padding: 0 18px 18px; } }

/* ===== Форма заявки CF7 (ID 5): попап, «Контакти», «Про нас» ===== */
.adup-form { text-align: left; }
.adup-form-head { margin-bottom: 22px; }
.adup-form-title { color: #283a5e; font: 600 28px/1.2 var(--adup-font); letter-spacing: -.5px; margin: 0 0 8px; }
.adup-form-sub { color: #828893; font-size: 15px; line-height: 23px; margin: 0; }
.adup-cf7 .adup-form-head { display: none; } /* на сторінках над формою вже є заголовок */
.adup-field { display: block; margin: 0 0 16px; }
.adup-field-label { display: block; margin-bottom: 7px; color: #283a5e; font-size: 14px; font-weight: 500; line-height: 18px; }
.adup-field-label em { color: #ff6d34; font-style: normal; }
.adup-form .wpcf7-form-control-wrap { display: block; }
.adup-form input.wpcf7-text, .adup-form input.wpcf7-tel, .adup-form select.wpcf7-select, .adup-form textarea.wpcf7-textarea {
  width: 100%; box-sizing: border-box; height: 52px; margin: 0; padding: 0 18px; border: 1.5px solid #e3e6ee; border-radius: 12px;
  background: #f9fafc; color: #283a5e; font: 400 16px/1.3 var(--adup-font); box-shadow: none; transition: border-color .2s, background .2s, box-shadow .2s; }
.adup-form textarea.wpcf7-textarea { height: 96px; padding: 14px 18px; resize: vertical; }
.adup-form input::placeholder, .adup-form textarea::placeholder { color: #a3a8b3; opacity: 1; }
.adup-form input.wpcf7-text:hover, .adup-form input.wpcf7-tel:hover, .adup-form select.wpcf7-select:hover, .adup-form textarea:hover { border-color: #cfd4df; }
.adup-form input.wpcf7-text:focus, .adup-form input.wpcf7-tel:focus, .adup-form select.wpcf7-select:focus, .adup-form textarea:focus {
  outline: none; border-color: #ff6d34; background: #fff; box-shadow: 0 0 0 4px rgba(255,109,52,.12); }
.adup-form select.wpcf7-select { appearance: none; -webkit-appearance: none; cursor: pointer; padding-right: 48px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23ff6d34' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 18px center; }
.adup-form select.wpcf7-select:invalid, .adup-form select.adup-placeholder { color: #a3a8b3; }
.adup-form select.wpcf7-select option { color: #283a5e; }
.adup-form .wpcf7-not-valid { border-color: #e5484d !important; background: #fff7f7 !important; }
.adup-form .wpcf7-not-valid-tip { color: #e5484d; font-size: 13px; margin-top: 5px; }
.adup-form-captcha { margin: 4px 0 18px; }
.adup-form-captcha .wpcf7-form-control-wrap { display: inline-block; max-width: 100%; }
.adup-form .adup-submit, .adup-form input.wpcf7-submit {
  display: block; width: 100%; height: 56px; margin: 0; border: 0; border-radius: 100px; cursor: pointer;
  background: linear-gradient(135deg, #ff6d34, #D24A43); color: #fff; font: 600 17px/1 var(--adup-font); letter-spacing: .2px;
  box-shadow: 0 14px 28px rgba(210,74,67,.3); transition: transform .2s, box-shadow .2s, filter .2s; }
.adup-form .adup-submit:hover { transform: translateY(-2px); box-shadow: 0 18px 34px rgba(210,74,67,.38); filter: brightness(1.04); }
.adup-form .adup-submit:focus-visible { outline: 3px solid #283a5e; outline-offset: 3px; }
.adup-form .wpcf7-spinner { display: block; margin: 10px auto 0; }
.adup-form-note { margin: 12px 0 0; color: #a3a8b3; font-size: 12px; line-height: 17px; text-align: center; }
.wpcf7 form .wpcf7-response-output { margin: 16px 0 0; padding: 12px 16px; border-radius: 10px; font-size: 14px; line-height: 20px; }
.wpcf7 form.sent .wpcf7-response-output { border: 0; background: #e8f8ef; color: #1d7a4a; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output { border: 0; background: #fff4e5; color: #9a5a00; }
/* сторінкова форма */
.adup-cf7 .adup-form { max-width: 560px; margin: 0 auto; background: #fff; border-radius: 16px; padding: 34px; box-shadow: 0 10px 40px rgba(130,136,147,.14); }
/* попап */
.popup .popup_body { max-width: 480px; width: calc(100% - 32px); margin: 6vh auto 0; padding: 38px 36px 30px; border-radius: 20px; box-shadow: 0 30px 80px rgba(20,30,50,.35); box-sizing: border-box; max-height: 88vh; overflow-y: auto; }
.popup .popup_close { top: 14px; right: 14px; width: 36px; height: 36px; line-height: 36px; border-radius: 50%; background: #f3f4f8; color: #283a5e; font-size: 0; text-align: center; cursor: pointer; transition: background .2s, color .2s; }
.popup .popup_close::before { content: "×"; font-size: 24px; font-weight: 400; line-height: 36px; }
.popup .popup_close:hover { background: #ff6d34; color: #fff; }
.popup .popup_content h2 { display: none; }
@media (max-width: 480px) {
  .popup .popup_body { padding: 30px 20px 22px; margin-top: 3vh; border-radius: 16px; }
  .adup-form-title { font-size: 23px; }
  .adup-cf7 .adup-form { padding: 24px 18px; }
  .adup-form-captcha { transform: scale(.92); transform-origin: left top; margin-bottom: 12px; }
}
.adup-form > p { margin: 0; padding: 0; }
.adup-form br { display: none; }
.adup-form .adup-form-title p { margin: 0; }
.adup-form .adup-field { margin-bottom: 16px; }
.adup-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Шапка: підменю HFE під пунктом «Послуги» */
.elementor-9 .adup-nav .sub-menu { box-shadow: 0 16px 40px rgba(40,58,94,.14); border-radius: 10px; overflow: hidden; min-width: 230px; }
.elementor-9 .adup-nav .sub-menu a.hfe-sub-menu-item { border-bottom: 1px solid #f0f1f5 !important; }
.elementor-9 .adup-nav .sub-menu li:last-child a.hfe-sub-menu-item { border-bottom: 0 !important; }
.elementor-9 .adup-nav .hfe-nav-menu > li > .sub-menu { overflow: visible; }
.elementor-9 .adup-nav .hfe-nav-menu > li > .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
.elementor-9 .adup-nav .sub-menu > li:first-child > a { border-radius: 10px 10px 0 0; }
.elementor-9 .adup-nav .sub-menu > li:last-child > a { border-radius: 0 0 10px 10px; }

/* ===== Карта з адресою (головна 831, контакти 91) ===== */
.adup-map { position: relative; max-width: 1140px; margin: 0 auto; height: 460px; border-radius: 18px; overflow: hidden; box-shadow: 0 20px 50px rgba(40,58,94,.14); background: #e5e3df; }
.adup-map-frame { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.adup-map-card { position: absolute; left: 50%; top: 50%; transform: translate(-50%, calc(-100% - 58px)); display: flex; align-items: center; gap: 14px; padding: 16px 18px; background: #fff; border-radius: 14px; box-shadow: 0 16px 40px rgba(40,58,94,.22); white-space: nowrap; z-index: 2; }
.adup-map-card::after { content: ""; position: absolute; left: 50%; bottom: -8px; width: 16px; height: 16px; background: #fff; transform: translateX(-50%) rotate(45deg); box-shadow: 4px 4px 8px rgba(40,58,94,.08); }
.adup-map-icon { flex: none; width: 46px; height: 46px; border-radius: 50%; background: #ffeee4; color: #ff6d34; display: flex; align-items: center; justify-content: center; font-size: 22px; }
.adup-map-text { display: flex; flex-direction: column; }
.adup-map-title { color: #283a5e; font: 600 16px/1.3 var(--adup-font); }
.adup-map-addr { color: #828893; font-size: 14px; line-height: 20px; }
.adup-map-route { position: relative; z-index: 1; margin-left: 8px; padding: 10px 18px; border-radius: 100px; background: linear-gradient(135deg, #ff6d34, #D24A43); color: #fff !important; font: 600 14px/1 var(--adup-font); text-decoration: none !important; box-shadow: 0 8px 18px rgba(210,74,67,.28); transition: transform .2s; }
.adup-map-route:hover { transform: translateY(-2px); }
.adup-map-route:focus-visible { outline: 3px solid #283a5e; outline-offset: 2px; }
@media (max-width: 1170px) { .adup-map { margin: 0 15px; } }
@media (max-width: 767px) {
  .adup-map { height: 380px; border-radius: 14px; }
  .adup-map-card { left: 12px; right: 12px; top: auto; bottom: 12px; transform: none; white-space: normal; flex-wrap: wrap; gap: 10px 12px; padding: 14px; }
  .adup-map-card::after { display: none; }
  .adup-map-text { flex: 1; min-width: 0; }
  .adup-map-route { margin: 0; width: 100%; text-align: center; box-sizing: border-box; }
}

/* ===== Головна: H1 з виглядом колишнього H2 ===== */
.elementor-element-f2c7325 h1.adup-home-h1 { font-family: var(--adup-font); font-size: 34px; line-height: 44px; font-weight: 800; color: #283a5e; margin: 0; letter-spacing: normal; text-transform: none; }

/* ===== Клієнти: стрічка логотипів ===== */
.adup-marquee { position: relative; display: flex; overflow: hidden; gap: 24px; padding: 18px 0 34px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.adup-marquee-track { display: flex; flex: none; gap: 24px; margin: 0; padding: 0; list-style: none; animation: adup-marquee 32s linear infinite; }
.adup-marquee:hover .adup-marquee-track { animation-play-state: paused; }
@keyframes adup-marquee { from { transform: translateX(0); } to { transform: translateX(calc(-100% - 24px)); } }
.adup-client-card { flex: none; width: 210px; height: 120px; display: flex; align-items: center; justify-content: center; background: #fff; border-radius: 16px; box-shadow: 0 6px 24px rgba(130,136,147,.13); transition: transform .35s, box-shadow .35s; }
.adup-client-card { overflow: hidden; }
.adup-client-card img { width: 128px; height: 90px; max-width: none; object-fit: cover; image-rendering: auto; filter: grayscale(1); opacity: .6; transition: filter .35s, opacity .35s, transform .35s; }
.adup-client-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(130,136,147,.22); }
.adup-client-card:hover img { filter: none; opacity: 1; transform: scale(1.06); }
@media (max-width: 767px) { .adup-client-card { width: 160px; height: 96px; } .adup-client-card img { width: 98px; height: 72px; } .adup-marquee, .adup-marquee-track { gap: 16px; } @keyframes adup-marquee { to { transform: translateX(calc(-100% - 16px)); } } }
@media (hover: none) { .adup-client-card img { filter: none; opacity: .9; } }

/* ===== Кнопки: мікроанімації по всьому сайту ===== */
.elementor-button { position: relative; overflow: hidden; transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease !important; }
.elementor-button:hover { transform: translateY(-3px); }
.elementor-button:active { transform: translateY(-1px); }
.elementor-button .elementor-button-icon { transition: transform .25s ease; }
.elementor-button:hover .elementor-button-icon { transform: translateX(4px); }
.elementor-button::after { content: ""; position: absolute; top: 0; left: -80%; width: 50%; height: 100%; background: linear-gradient(115deg, transparent, rgba(255,255,255,.38), transparent); transform: skewX(-20deg); pointer-events: none; }
.elementor-button:hover::after { animation: adup-shine .85s ease; }
@keyframes adup-shine { to { left: 130%; } }
/* головні заклики: відблиск раз на кілька секунд */
#popup-init .elementor-button::after, .adup-cta-shine .elementor-button::after, .adup-seo-cta .elementor-button::after { animation: adup-shine-loop 6s ease-in-out 2s infinite; }
@keyframes adup-shine-loop { 0% { left: -80%; } 14%, 100% { left: 130%; } }
.adup-form .adup-submit { overflow: hidden; }

/* ===== Картки послуг на головній ===== */
.elementor-element-28605b2 > .elementor-widget-wrap, .elementor-element-e20eca7 > .elementor-widget-wrap, .elementor-element-d76ef02 > .elementor-widget-wrap { transition: transform .35s ease, box-shadow .35s ease; }
.elementor-element-28605b2:hover > .elementor-widget-wrap, .elementor-element-e20eca7:hover > .elementor-widget-wrap, .elementor-element-d76ef02:hover > .elementor-widget-wrap { transform: translateY(-8px); box-shadow: 0 22px 44px rgba(130,136,147,.22) !important; }
.adup-infobox .elementor-icon { transition: background-color .35s, color .35s, transform .35s; }
.elementor-element-28605b2:hover .elementor-icon, .elementor-element-e20eca7:hover .elementor-icon, .elementor-element-d76ef02:hover .elementor-icon { transform: scale(1.08) rotate(-6deg); }

/* ===== Поява під час прокрутки (класи ставить adup.js) ===== */
.adup-reveal { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.adup-reveal.is-in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  .adup-marquee-track { animation: none; flex-wrap: wrap; justify-content: center; }
  .adup-marquee { -webkit-mask-image: none; mask-image: none; }
  .adup-marquee-track[aria-hidden="true"] { display: none; }
  .elementor-button, .elementor-button .elementor-button-icon { transition: none !important; }
  .elementor-button::after { display: none; }
  .adup-reveal { opacity: 1; transform: none; transition: none; }
}

/* ===== Ефектне підменю «Послуги» (mu-plugin adup-megamenu) ===== */
.elementor-9 .adup-nav .hfe-nav-menu > li > ul.sub-menu, .elementor-9 .elementor-element .adup-nav ul.sub-menu { width: 430px !important; min-width: 430px !important; }
.elementor-9 .adup-nav .hfe-nav-menu > li > .sub-menu { padding: 10px; background: #fff; border-radius: 16px !important; box-shadow: 0 24px 60px rgba(40,58,94,.18) !important; transform: translateY(10px); transition: opacity .25s ease, transform .25s ease, visibility .25s !important; }
.elementor-9 .adup-nav .hfe-nav-menu > li:hover > .sub-menu, .elementor-9 .adup-nav .hfe-nav-menu > li:focus-within > .sub-menu { transform: translateY(0); }
.elementor-9 .adup-nav .sub-menu > li { border: 0 !important; }
.elementor-9 .adup-nav .sub-menu a.adup-mm-link { display: grid !important; grid-template-columns: 84px 1fr 20px; align-items: center; gap: 14px; padding: 10px !important; border: 0 !important; border-radius: 12px !important; background: transparent !important; transition: background .2s !important; white-space: normal; }
.elementor-9 .adup-nav .sub-menu a.adup-mm-link:hover, .elementor-9 .adup-nav .sub-menu a.adup-mm-link:focus-visible { background: #fff6f1 !important; }
.adup-mm-thumb { display: block; width: 84px; height: 63px; border-radius: 10px; overflow: hidden; background: #fbf6f2; }
.adup-mm-thumb img.adup-mm-img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.15); transition: transform .35s ease; }
.adup-mm-link:hover .adup-mm-thumb img.adup-mm-img { transform: scale(1.3); }
.adup-mm-text { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.adup-mm-title { color: #283a5e; font: 600 15px/1.3 var(--adup-font); transition: color .2s; }
.adup-mm-desc { color: #828893; font: 400 13px/1.35 var(--adup-font); text-transform: none; }
.adup-mm-link:hover .adup-mm-title { color: #ff6d34; }
.adup-mm-arrow { color: #ff6d34; font-size: 18px; opacity: 0; transform: translateX(-6px); transition: opacity .2s, transform .2s; }
.adup-mm-link:hover .adup-mm-arrow, .adup-mm-link:focus-visible .adup-mm-arrow { opacity: 1; transform: none; }
.elementor-9 .adup-nav .sub-menu > li.adup-mm-cta { margin-top: 6px; padding-top: 6px; border-top: 1px solid #f0f1f5 !important; }
.elementor-9 .adup-nav .sub-menu > li.adup-mm-cta > a { display: block; padding: 12px 14px !important; border-radius: 12px !important; background: linear-gradient(135deg, #fff2ea, #ffe6d9) !important; color: #828893 !important; font: 400 13px/1.3 var(--adup-font) !important; text-align: center; border: 0 !important; transition: filter .2s !important; }
.elementor-9 .adup-nav .sub-menu > li.adup-mm-cta > a b { color: #ff6d34; font-weight: 600; }
.elementor-9 .adup-nav .sub-menu > li.adup-mm-cta > a:hover { filter: brightness(.97); }
.elementor-9 .adup-nav .sub-menu > li.adup-mm-cta > a b::after { content: " →"; }
/* у підвалі та мобільній версії HFE — без мініатюр */
.adup-nav-vertical .adup-mm-thumb, .adup-nav-vertical .adup-mm-desc, .adup-nav-vertical .adup-mm-arrow, .adup-nav-vertical .adup-mm-cta { display: none !important; }
@media (prefers-reduced-motion: reduce) { .elementor-9 .adup-nav .hfe-nav-menu > li > .sub-menu, .adup-mm-thumb img.adup-mm-img, .adup-mm-arrow { transition: none !important; transform: none !important; } }

/* SEO-текст головної: списки, посилання, «детальніше» */
.elementor-widget-wp-widget-text .textwidget ul { margin: 0 0 18px; padding: 0; list-style: none; }
.elementor-widget-wp-widget-text .textwidget li { position: relative; padding-left: 26px; margin: 0 0 10px; font-size: 16px; line-height: 1.7; color: var(--adup-text); }
.elementor-widget-wp-widget-text .textwidget li::before { content: ""; position: absolute; left: 4px; top: .7em; width: 8px; height: 8px; border-radius: 50%; background: #ff6d34; }
.elementor-widget-wp-widget-text .textwidget a { color: #ff6d34; text-decoration: none; border-bottom: 1px solid rgba(255,109,52,.35); transition: border-color .2s, color .2s; }
.elementor-widget-wp-widget-text .textwidget a:hover { color: #d24a43; border-bottom-color: #d24a43; }
.elementor-element-2945c55 .textwidget { max-height: 900px !important; }
@media (max-width: 767px) { .elementor-element-2945c55 .textwidget { max-height: 560px !important; } }
.adup-readmore-btn { color: #ff6d34 !important; font: 600 15px/1 var(--adup-font) !important; letter-spacing: 0 !important; padding: 10px 16px !important; }
.adup-readmore-btn:hover { color: #d24a43 !important; }
.elementor-element-0a5f5c9 { margin-top: 50px; }
.elementor-element-0a5f5c9 .elementor-heading-title { margin-bottom: 18px; }
.elementor-element-2945c55 .textwidget.expanded { max-height: 5000px !important; }
.elementor-element-2945c55 .textwidget.expanded::after { display: none !important; }
