/* Shared visual refinements; loaded after the original theme and landing styles. */
/* Keep the familiar blue/red telephone circles throughout the site. */
a[href^="tel:"]::before {
 content:""; display:inline-block; flex:0 0 28px; width:28px; height:28px;
 margin-right:8px; vertical-align:middle; border-radius:50%; background:#fff url('/uploads/media/phone1.png') center/76% no-repeat;
}
a[href^="tel:"][href*="95763"]::before { background-image:url('/uploads/media/phone2.png'); }
a.home-call-cta__phone::before, .holodok-header-contacts .info a::before { display:none; }
.tmp-footer-area a[href^="tel:"]::before { display:none; }
a[href^="tel:"]:has(img)::before, a.pqc__item[href^="tel:"]::before { display:none; }
a[href^="tel:"] > i.fa-phone { display:none; }
.holodok-header-contacts a.icon::before { width:36px; height:36px; flex-basis:36px; margin:0; }
.holodok-header-contacts a.icon > i.fa-phone { display:none!important; }
.holodok-header-contacts a.icon[href^="tel:"] { display:grid; place-items:center; }
.landing-local__phone { display:flex; align-items:center; gap:4px; }
.landing-local__phone::before { width:38px; height:38px; flex-basis:38px; }
.landing-route__call { display:inline-flex; align-items:center; line-height:1.5; }
.landing-route__call::before { margin-right:10px; }
.repair-actions a[href^="tel:"] { display:inline-flex; align-items:center; }
.holodok-home-guarantee a[href^="tel:"] { display:inline-flex; align-items:center; }
.holodok-guarantee-card__content > .landing-text-link { display:inline-block; margin-top:28px; }

/* Turquoise lighting, real call actions and quiet informational benefits. */
.landing-hero__grid { background:linear-gradient(145deg,#004677 15%,#006b89 65%,#009db3 100%); box-shadow:0 16px 42px rgba(0,70,119,.10); }
.landing-hero__copy { position:relative; z-index:1; padding:clamp(28px,3.2vw,52px); }
.landing-hero__media::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg,rgba(0,163,185,.76),rgba(0,110,145,.08) 65%); }
.landing-hero__benefits { gap:8px 18px; margin:0 0 24px; }
.landing-hero__benefits li { display:flex; align-items:baseline; gap:7px; padding:0; border:0; border-radius:0; background:none; font-size:13px; line-height:1.6; }
.landing-hero__benefits li::before { content:"✓"; color:#8ff1ed; font-weight:800; }
.landing-hero__phones { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0 0 16px; }
.landing-hero a.hero-phone { display:flex; align-items:center; justify-content:center; gap:4px; padding:12px 8px; min-width:0; border:1px solid rgba(255,255,255,.27); border-radius:10px; background:rgba(255,255,255,.12); color:#fff; text-decoration:none; font-size:clamp(15px,1.45vw,22px); font-weight:750; white-space:nowrap; transition:background .2s,border-color .2s; }
.landing-hero a.hero-phone:hover { background:rgba(255,255,255,.24); border-color:#b5f7f4; }
.landing-hero a.hero-phone::before { width:34px; height:34px; flex-basis:34px; margin-right:3px; }
.landing-hero__actions .landing-button { min-height:46px; padding:10px 18px; font-size:15px; }
.landing-hero__note { color:#def5f6; margin-top:14px; }

/* In-page navigation is visibly actionable, including on touch screens. */
.landing-jumpnav { justify-content:flex-start; gap:10px; padding:20px 0 0; }
.landing-jumpnav a,.landing-page-nav a { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 16px; min-height:46px; border:1px solid #bcdce5; border-radius:9px; background:#fff; color:#005476; font-size:14px; font-weight:650; line-height:1.4; text-decoration:none; box-shadow:0 3px 10px rgba(0,70,119,.035); transition:background .2s,border-color .2s,color .2s; }
.landing-jumpnav a::after,.landing-page-nav a::after { content:"↓"; color:#008da7; }
.landing-jumpnav a:hover,.landing-page-nav a:hover { background:#e1f6f8; border-color:#0099bd; color:#004677; }
.landing-jumpnav a:focus-visible,.landing-page-nav a:focus-visible,a.hero-phone:focus-visible { outline:3px solid #0099bd; outline-offset:3px; }
.landing-page-nav { gap:10px; padding-bottom:24px; }

/* A consistent rhythm without stacked theme/module spacing. */
.holodok-landing .landing-section,.holodok-landing .holodok-home-section.tmp-section-gap { padding:52px 0; }
.holodok-landing #symptoms .holodok-home-section.tmp-section-gap { padding-top:32px; }
.holodok-landing .holodok-home-heading { margin-bottom:28px; }
.holodok-landing .holodok-home-heading--row { gap:32px; }
.holodok-landing .holodok-home-heading--row>p { max-width:510px; }
.holodok-landing .holodok-service-module { margin-bottom:0; }
.landing-price-links { margin-top:22px; }
.landing-price-links p:last-child { margin-bottom:0; }
.landing-local__grid { gap:36px; }
.repair-service .repair-section { margin:36px 0; }
.polished-contacts .tmp-bread-crumb-area,.landing-detail .tmp-bread-crumb-area { padding-bottom:0; min-height:0!important; }
.polished-contacts .breadcrumb-inner,.landing-detail .breadcrumb-inner { padding:56px 0!important; }
.polished-contacts .pb-controler-breadcrumb + .holodok-contact-cards { padding-top:44px; }
@media(min-width:1401px) { .holodok-landing-main { padding-top:162px; } }
@media(min-width:1561px) { .holodok-landing-main { padding-top:176px; } }

/* Homepage cards must not inherit the illustrated service-card grid. */
.holodok-home-faults a.holodok-fault-card { display:grid; grid-template-columns:48px minmax(0,1fr) 22px; align-items:start; gap:14px; min-height:0; padding:24px; }
.holodok-home-faults .holodok-fault-card__icon { width:48px; height:48px; border-radius:12px; background:#e5f5f8; font-size:21px; }
.holodok-home-faults .holodok-fault-card__content { gap:8px; }
.holodok-home-faults .holodok-fault-card__content strong { font-size:20px; }
.holodok-home-faults a.holodok-fault-card > i { display:grid; place-items:center; width:22px; height:32px; margin:6px 0 0; align-self:start; color:#008da7; }
.holodok-landing .holodok-brands-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.holodok-landing .holodok-brand-card { padding:28px; min-height:0; align-items:center; justify-content:flex-start; }
.holodok-landing .holodok-brand-card .landing-brand-title { margin:18px 0 10px; }
.holodok-landing .landing-brand-description { max-width:280px; margin-bottom:16px; }
.holodok-landing .holodok-brand-card>span:last-child { margin-top:auto; padding-top:8px; }

@media(min-width:768px) and (max-width:1100px) {
 .landing-hero__phones { grid-template-columns:1fr; }
 .landing-hero a.hero-phone { justify-content:flex-start; padding-left:16px; font-size:19px; }
}
@media(max-width:991px) {
 .holodok-home-faults .holodok-faults-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .holodok-landing .holodok-home-heading--row { display:block; }
 .holodok-landing .holodok-home-heading--row>p { max-width:none; margin-top:18px; }
}
@media(max-width:767px) {
 .polished-contacts .breadcrumb-inner,.landing-detail .breadcrumb-inner { padding:40px 0!important; }
 .polished-contacts .pb-controler-breadcrumb + .holodok-contact-cards { padding-top:30px; }
 .landing-hero__copy { padding:28px 24px; }
 .landing-hero__phones { grid-template-columns:1fr; gap:10px; }
 .landing-hero a.hero-phone { justify-content:flex-start; padding:11px 16px; font-size:21px; }
 .landing-hero a.hero-phone::before { width:36px; height:36px; flex-basis:36px; }
 .landing-hero__benefits { flex-direction:column; gap:6px; margin-bottom:20px; }
 .landing-hero__actions .landing-button { width:auto; }
 .landing-hero__media::after { background:linear-gradient(0deg,rgba(0,163,185,.65),transparent 80%); }
 .landing-jumpnav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding-top:16px; }
 .landing-jumpnav a { padding:10px 9px; font-size:13px; text-align:center; }
 .landing-jumpnav a:last-child:nth-child(odd) { grid-column:1/-1; }
 .landing-page-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .landing-page-nav a { padding:10px 8px; font-size:13px; text-align:center; }
 .holodok-landing .landing-section,.holodok-landing .holodok-home-section.tmp-section-gap { padding:36px 0; }
 .holodok-landing #symptoms .holodok-home-section.tmp-section-gap { padding-top:26px; }
 .holodok-home-faults .holodok-faults-grid { grid-template-columns:1fr; gap:14px; }
 .holodok-home-faults a.holodok-fault-card { padding:20px; gap:12px; grid-template-columns:42px minmax(0,1fr) 18px; }
 .holodok-home-faults .holodok-fault-card__icon { width:42px; height:42px; font-size:19px; }
 .holodok-home-faults .holodok-fault-card__content strong { font-size:19px; }
 .holodok-home-faults a.holodok-fault-card > i { width:18px; }
 .holodok-landing .holodok-brands-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .holodok-landing .holodok-brand-card { padding:22px 12px; }
 .holodok-landing .landing-brand-description { font-size:13px; line-height:1.5; }
 .landing-local__phone { font-size:23px; }
 .landing-route__call { max-width:100%; font-size:14px; padding:12px; }
 .landing-route__call::before { margin-right:7px; }
}
@media(max-width:359px) {
 .landing-hero__copy { padding:24px 18px; }
 .holodok-landing .holodok-brands-grid { grid-template-columns:1fr; }
 .landing-hero a.hero-phone { font-size:19px; }
}
@media(prefers-reduced-motion:reduce) {
 .landing-jumpnav a,.landing-page-nav a,a.hero-phone { transition:none; }
}

/* Brand landing pages and compact equipment selector. */
.brand-service .content-area { overflow-wrap:anywhere; }
.brand-service .brand-intro { display:grid; grid-template-columns:130px minmax(0,1fr); align-items:start; gap:24px; margin-bottom:24px; }
.brand-intro__logo { display:grid; place-items:center; padding:18px; border:1px solid #dce9ee; border-radius:12px; background:#fff; min-height:94px; }
.brand-intro__logo img { width:100%; height:54px; object-fit:contain; }
.brand-service .brand-intro p { margin:0; font-size:18px; line-height:1.7; color:#24485c; }
.brand-service .landing-button { background:#004677; color:#fff; }
.brand-service .landing-button:hover { background:#007b98; }
.brand-service .brand-section { margin:38px 0; }
.brand-service .brand-model { display:flex; align-items:flex-start; gap:18px; margin:32px 0; padding:26px; border-radius:14px; background:linear-gradient(135deg,#e4f5f8,#f5fafc); border:1px solid #cfe6ec; }
.brand-section-icon { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border-radius:10px; background:#fff; color:#0093ac; font-size:23px; }
.brand-service .brand-model h2 { margin:0 0 14px; font-size:25px; line-height:1.35; }
.brand-service .brand-model p { margin:0; }
.brand-cases { display:grid; gap:14px; margin-top:22px; }
.brand-service .brand-case { position:relative; padding:24px 24px 24px 76px; border:1px solid #dce9ee; border-radius:12px; background:#fff; }
.brand-case__number { position:absolute; left:20px; top:24px; display:grid; place-items:center; width:38px; height:38px; background:#e7f5f8; border-radius:10px; color:#007f9b; font-size:15px; font-weight:750; }
.brand-service .brand-case h3 { margin:0 0 10px; font-size:22px; line-height:1.4; }
.brand-service .brand-case p { margin:0; font-size:16px; line-height:1.7; }
.brand-cost-links { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:24px 0; }
.brand-cost-links a { display:flex; align-items:center; gap:12px; padding:18px; border-radius:10px; background:#eef8fa; border:1px solid #cfe6ec; color:#005777; font-weight:650; }
.brand-cost-links a:hover { background:#dff3f6; }
.brand-cost-links i { color:#0093ac; }
.brand-close { margin:32px 0 24px; padding:28px; border-radius:14px; background:linear-gradient(135deg,#eef8fa,#e0f1f6); }
.brand-service .brand-close h2 { font-size:28px; line-height:1.3; }
.brand-switch { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:22px 0; border-top:1px solid #dce9ee; }
.brand-switch a { padding:7px 12px; border-radius:7px; background:#f0f7f9; color:#005777; font-size:14px; }
.brand-service [id] { scroll-margin-top:100px; }
.brand-service #brand-faq { margin-top:38px; }
.equipment-links { background:linear-gradient(145deg,#f0f8fa,#e5f3f7); border-top:1px solid #e0edf2; border-bottom:1px solid #e0edf2; }
.equipment-links__heading { display:grid; grid-template-columns:1.25fr 1fr; align-items:end; gap:40px; margin-bottom:24px; }
.equipment-links__heading .sub-title { margin:0 0 10px; font-size:13px; font-weight:700; letter-spacing:.06em; }
.equipment-links__heading h2 { margin:0; font-size:clamp(27px,2.6vw,36px); line-height:1.2; }
.equipment-links__heading>p { margin:0; max-width:440px; color:#496070; font-size:16px; }
.equipment-links__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.equipment-link { display:grid; grid-template-columns:72px minmax(0,1fr) 20px; align-items:center; gap:16px; padding:20px; border-radius:14px; border:1px solid #d5e7ee; background:#fff; box-shadow:0 5px 18px rgba(0,70,119,.035); transition:transform .2s,border-color .2s; }
.equipment-link:hover { transform:translateY(-3px); border-color:#0099bd; }
.equipment-link__image { display:grid; place-items:center; width:72px; height:80px; padding:5px; overflow:hidden; border-radius:10px; background:#eef7fa; }
.equipment-link__image img { display:block; width:100%; height:100%; object-fit:contain; }
.equipment-link__body { display:flex; flex-direction:column; gap:8px; }
.equipment-link h3 { margin:0; font-size:20px; line-height:1.3; color:#004677; }
.equipment-link__body>span { color:#496070; font-size:14px; line-height:1.5; }
.equipment-link__arrow { font-size:22px; color:#0093ac; }
.equipment-link:focus-visible,.brand-cost-links a:focus-visible,.brand-switch a:focus-visible { outline:3px solid #0099bd; outline-offset:3px; }
@media(max-width:1199px) { .equipment-links__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
 .brand-service .brand-intro { grid-template-columns:1fr; gap:18px; }
 .brand-intro__logo { width:150px; min-height:78px; }
 .brand-service .brand-model { padding:20px; gap:12px; flex-direction:column; }
 .brand-service .brand-model h2 { font-size:23px; }
 .brand-service .brand-case { padding:64px 20px 20px; }
 .brand-case__number { top:18px; left:20px; width:32px; height:32px; }
 .brand-service .brand-case h3 { font-size:21px; }
 .brand-cost-links { grid-template-columns:1fr; }
 .brand-close { padding:22px; }
 .brand-service .brand-close h2 { font-size:25px; }
 .brand-service .repair-actions { align-items:flex-start; flex-direction:column; }
 .brand-service .repair-actions .landing-button { width:auto; }
 .equipment-links__heading { grid-template-columns:1fr; gap:14px; }
 .equipment-links__grid { grid-template-columns:1fr; gap:12px; }
 .equipment-link { grid-template-columns:62px minmax(0,1fr) 18px; gap:12px; padding:16px; }
 .equipment-link__image { width:62px; height:70px; }
 .equipment-link h3 { font-size:19px; }
 .equipment-link__body>span { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .equipment-link { transition:none; } .equipment-link:hover { transform:none; } }

.brand-service .landing-page-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
#other-equipment { scroll-margin-top:100px; }
@media(max-width:767px) { .brand-service .landing-page-nav { grid-template-columns:repeat(2,minmax(0,1fr)); } }

.equipment-link__image { padding:0; }
.equipment-link__image img { object-fit:cover; border-radius:10px; }

/* A supporting work/diagnostics page rather than a second local sales landing. */
.landing-route { padding:12px 0; }
.landing-route__inner { min-height:26px; }
.repair-service--compact .service-brief { font-size:18px; line-height:1.7; margin-bottom:28px; }
.repair-service--compact .service-compact-section { margin:28px 0; }
.repair-service--compact .service-compact-section h2 { font-size:28px; line-height:1.3; margin-bottom:18px; }
.repair-service--compact .service-symptoms { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0; margin:0; list-style:none; }
.repair-service--compact .service-symptoms li { margin:0; padding:16px; background:#f0f8fa; border:1px solid #dcebef; border-radius:10px; }
.repair-service--compact .service-symptoms li::before { display:none; }
.repair-service--compact .service-symptoms strong { display:block; margin-bottom:6px; color:#005375; font-size:17px; }
.repair-service--compact .service-symptoms span { display:block; font-size:15px; line-height:1.5; }
.service-work-list { margin:0; }
.service-work-list>div { display:grid; grid-template-columns:190px minmax(0,1fr); gap:18px; padding:16px 0; border-bottom:1px solid #dcebef; }
.service-work-list dt { color:#005375; font-size:17px; font-weight:700; }
.service-work-list dd { margin:0; font-size:16px; line-height:1.6; }
.service-estimate { padding:24px; background:linear-gradient(135deg,#e7f6f8,#f5fafc); border-radius:12px; border:1px solid #d0e7ed; }
.service-next-links { display:flex; flex-wrap:wrap; gap:10px; }
.service-next-links a,.service-brand-links a { display:inline-flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; min-height:44px; background:#fff; color:#00647e; border:1px solid #c5e1e9; border-radius:8px; font-size:14px; font-weight:650; }
.service-next-links a:hover,.service-brand-links a:hover { border-color:#0099bd; background:#e9f8fa; }
.service-brand-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.service-prepare { padding:20px 24px; border-left:3px solid #0099bd; background:#f2f8fa; margin:28px 0; }
.service-prepare>strong { color:#005375; }
.service-prepare p { margin:10px 0 0; }
.repair-service--compact .holodok-service-faq { margin-top:28px; }
.repair-service--compact .service-bottom-links { margin:26px 0 0; font-size:15px; }
.service-next-links a:focus-visible,.service-brand-links a:focus-visible { outline:3px solid #0099bd; outline-offset:3px; }
@media(max-width:767px) {
 .repair-service--compact .service-symptoms { grid-template-columns:1fr; gap:10px; }
 .repair-service--compact .service-compact-section h2 { font-size:25px; }
 .service-work-list>div { grid-template-columns:1fr; gap:7px; }
 .service-brand-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .service-estimate { padding:20px; }
 .service-next-links { flex-direction:column; }
}

.repair-service--compact .service-brief a { color:#00768e; font-weight:650; text-decoration:underline; text-underline-offset:4px; }

/* Commercial units and industrial systems have separate content, shared visual rhythm. */
.business-lead { color:#254c60; font-size:19px; line-height:1.75; }
.business-equipment { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.business-equipment article { padding:22px; border:1px solid #d4e8ee; background:linear-gradient(145deg,#eef8fa,#fff); border-radius:12px; }
.business-equipment__icon { display:grid; place-items:center; width:42px; height:42px; margin-bottom:16px; color:#008ba5; background:#fff; border-radius:10px; font-size:23px; }
.business-service .business-equipment h3 { font-size:20px; line-height:1.35; margin:0 0 12px; }
.business-service .business-equipment p { font-size:15px; line-height:1.6; margin:0; }
.business-cost { padding:26px; border-radius:14px; background:#eaf6f9; margin:32px 0; border-left:4px solid #0099bd; }
.business-service .business-cost h2,.business-service .business-boundary h2 { font-size:27px; line-height:1.35; margin:0 0 16px; }
.business-cost p:last-child { margin:0; }
.business-boundary { padding:24px 0; border-top:1px solid #dce9ee; border-bottom:1px solid #dce9ee; }
.business-after { margin-top:28px; font-size:15px; }
/* One offset for native fragment navigation, rather than two stacked 100px gaps. */
html { scroll-behavior:smooth; scroll-padding-top:88px; }
:is(.holodok-landing-main,.repair-service,.brand-service,.business-service) [id] { scroll-margin-top:8px!important; }
@media(max-width:767px) {
 html { scroll-padding-top:80px; }
 .business-equipment { grid-template-columns:1fr; gap:12px; }
 .business-equipment article { padding:20px; }
 .business-cost { padding:22px; }
 .business-lead { font-size:18px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.float-text a:focus-visible,.hero-gallery button:focus-visible,.mobile-call summary:focus-visible { outline:3px solid #2cd0e0; outline-offset:4px; }
.hero-gallery [hidden] { display:none!important; }
.mobile-call,.mobile-menu-language { display:none; }
html[lang^="ru"] [data-ui-lang="uk"],html:not([lang^="ru"]) [data-ui-lang="ru"] { display:none!important; }

/* A calm photo carousel with a stable heading, copy and contact buttons. */
.landing-hero__grid { grid-template-columns:1.05fr .95fr; border-radius:18px; }
.landing-hero__copy { padding:clamp(28px,3vw,52px); }
.landing-hero__media { overflow:hidden; }
.landing-hero__media::after { display:none; }
.hero-gallery { position:absolute; inset:0; overflow:hidden; background:#005272; }
.hero-gallery__frames,.hero-gallery__slide { position:absolute; inset:0; }
.hero-gallery__slide { margin:0; opacity:0; visibility:hidden; transition:opacity 1.15s ease,visibility 1.15s; }
.hero-gallery__slide.is-active { opacity:1; visibility:visible; }
.hero-gallery__slide::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,77,103,.96),rgba(0,140,164,.28) 44%,rgba(0,47,73,.03) 80%); pointer-events:none; }
.landing-hero__media .hero-gallery__slide img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:42% center; }
.hero-gallery__slide.is-active img { animation:hero-photo-drift 13s linear both; }
.hero-gallery,.hero-gallery__frames { overflow:clip; }
.hero-gallery.is-paused .hero-gallery__slide img { animation-play-state:paused; }
.hero-gallery__bar { position:absolute; inset:auto 24px 24px; z-index:2; display:flex; justify-content:space-between; align-items:end; gap:16px; color:#fff; }
.hero-gallery__caption { display:flex; flex-direction:column; gap:10px; max-width:290px; font-size:18px; font-weight:650; line-height:1.4; }
.hero-gallery__counter { color:#a5edf2; font-size:12px; font-weight:600; letter-spacing:.12em; }
.hero-gallery__controls { display:flex; flex-shrink:0; gap:6px; }
.hero-gallery__controls button { display:grid; place-items:center; width:40px; height:40px; padding:0; border:1px solid rgba(255,255,255,.45); border-radius:50%; background:rgba(0,58,85,.24); color:#fff; font-size:20px; backdrop-filter:blur(6px); }
.hero-gallery__controls button:hover { background:#007b96; }
.hero-gallery__controls [data-gallery-pause] svg { display:block; width:22px; height:22px; fill:currentColor; }
.hero-gallery__controls [data-gallery-pause] .hero-gallery__play-icon,
.hero-gallery__controls [data-gallery-pause][aria-pressed="true"] .hero-gallery__pause-icon { display:none; }
.hero-gallery__controls [data-gallery-pause][aria-pressed="true"] .hero-gallery__play-icon { display:block; }
@keyframes hero-photo-drift { from { transform:scale(1.01); } to { transform:scale(1.065); } }
@media(min-width:1200px) {
 .holodok-landing .header-custom-container2 { max-width:1140px; margin:0 auto; padding:0 var(--bs-gutter-x,.75rem); }
 .holodok-landing .header-custom-container2 .header-main { margin-left:0; margin-right:0; }
 .header-three:not(.sticky) .header-main { margin-top:-15px; }
}
@media(min-width:1400px) { .holodok-landing .header-custom-container2 { max-width:1320px; } }
@media(min-width:1600px) { .holodok-landing .container-3,.holodok-landing .header-custom-container2 { max-width:1440px; } }
@media(max-width:1199px) {
 .header-right .desktop-language { display:none!important; }
 .header-right .mobile-call { display:block; position:relative; order:1; }
 .header-right .holodok-mobile-menu-trigger { order:2; }
 .mobile-call summary { display:grid; place-items:center; width:44px; height:44px; padding:0; list-style:none; cursor:pointer; border:1px solid rgba(255,255,255,.35); border-radius:50%; color:#fff; background:rgba(0,153,189,.2); font-size:20px; }
 .mobile-call summary::marker,.mobile-call summary::-webkit-details-marker { display:none; content:""; }
 .mobile-call[open] summary { background:#0099bd; }
 .mobile-call-panel { position:absolute; top:calc(100% + 12px); right:0; width:min(310px,calc(100vw - 32px)); padding:18px; border:1px solid #d1e8ef; border-radius:14px; background:#fff; box-shadow:0 15px 45px rgba(0,36,65,.25); z-index:80; }
 .mobile-call-panel>strong { display:block; color:#004677; font-size:17px; margin-bottom:12px; }
 .mobile-call-panel .holodok-header-contacts { display:flex!important; flex-direction:column; gap:8px; width:100%; }
 .mobile-call-panel .holodok-header-contacts .single-component { display:flex!important; align-items:center; gap:10px; width:100%; padding:10px; margin:0; border:1px solid #dcecf0; border-radius:10px; background:#f2f9fb; }
 .mobile-call-panel .holodok-header-contacts .single-component:first-child { display:none!important; }
 .mobile-call-panel .holodok-header-contacts .icon { display:grid!important; place-items:center; width:36px; height:36px; min-width:36px; padding:0; margin:0; }
 .mobile-call-panel .holodok-header-contacts .info { margin:0; }
 .mobile-call-panel .holodok-header-contacts .info p { display:none; }
 .mobile-call-panel .holodok-header-contacts .info a { color:#004677; font-size:18px; font-weight:750; white-space:nowrap; }
 #side-bar .mobile-menu-language { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:0 0 20px; margin-bottom:10px; border-bottom:1px solid rgba(255,255,255,.2); color:#c5edf4; font-size:14px; }
 #side-bar .mobile-menu-language .language-switcher { margin:0!important; padding:0; }
 #side-bar .mobile-menu-language .switcher-language { margin:0; padding:0; list-style:none; }
 #side-bar .mobile-menu-language .has-child-menu { font-size:0; padding:0; }
 #side-bar .mobile-menu-language .right-icon { display:none; }
 #side-bar .mobile-menu-language .sub-menu { position:static!important; display:flex!important; gap:8px; padding:0; margin:0; width:auto; opacity:1!important; visibility:visible!important; transform:none!important; pointer-events:auto!important; box-shadow:none; border:0; background:none; }
 #side-bar .mobile-menu-language .sub-menu li { margin:0; padding:0; }
 #side-bar .mobile-menu-language .sub-menu a { display:grid; place-items:center; min-width:46px; min-height:44px; padding:8px 12px; border:1px solid rgba(255,255,255,.3); border-radius:8px; color:#fff; font-size:15px; line-height:1.3; }
 #side-bar .mobile-menu-language .sub-menu a[aria-current="page"],#side-bar .mobile-menu-language .sub-menu .active a { background:#0099bd; border-color:#70d5e6; }
}
@media(max-width:767px) {
 .landing-hero__grid { display:flex; }
 .landing-hero__media { aspect-ratio:16/10; min-height:0; width:100%; }
 .hero-gallery__bar { inset:auto 18px 18px; align-items:center; gap:10px; }
 .hero-gallery__caption { font-size:15px; max-width:175px; gap:7px; }
 .hero-gallery__controls { gap:4px; }
 .hero-gallery__controls button { width:36px; height:36px; font-size:18px; }
 .header-three .header-right { gap:12px; }
}
@media(prefers-reduced-motion:reduce) {
 .hero-gallery__slide { transition:none; }
 .hero-gallery__slide.is-active img { animation:none; }
}

/* Original homepage photography, with a rounded cut-out for the contact card. */
.landing-hero__grid { position:relative; display:grid; grid-template-columns:minmax(0,1.9fr) minmax(310px,1fr); background:#004677; isolation:isolate; }
.landing-hero__media { position:absolute; inset:0; width:auto; min-height:0; aspect-ratio:auto; z-index:0; }
.landing-hero__copy { align-self:center; padding:52px 46px 122px; min-width:0; pointer-events:none; }
.landing-hero__copy>* { pointer-events:auto; }
.landing-hero h1 { max-width:620px; text-shadow:0 2px 20px rgba(0,30,49,.2); }
.landing-hero__lead { max-width:560px; }
.landing-hero__note { max-width:500px; }
.landing-hero__grid { min-height:650px; box-shadow:none; }
.landing-hero { background:var(--primary-100); }
.landing-hero__media .hero-gallery__slide img { object-position:center; }
.hero-gallery__slide::after { background:linear-gradient(0deg,rgba(0,151,172,.88),transparent 70%),linear-gradient(90deg,rgba(0,40,66,.88),rgba(0,48,73,.45) 54%,rgba(0,45,65,.12)); }
.hero-gallery__bar { left:46px; right:calc(34.5% + 40px); bottom:28px; }
.hero-gallery__caption { max-width:360px; font-size:15px; }
.landing-hero__contact { position:relative; z-index:2; align-self:stretch; margin-top:64px; padding:0; background:transparent; }
/* Use the original banner-contact-form cut-outs from the holodoknew theme. */
.landing-hero__contact .home-call-cta { position:relative; width:100%; height:100%; padding:20px 0 0 20px; margin:0; background:var(--primary-100); box-shadow:none; }
.landing-hero__contact .home-call-cta__card { position:relative; width:100%; min-height:0; height:100%; border-radius:14px; overflow:hidden; }
.landing-hero__contact .home-call-cta__content { padding:30px 24px 20px; }
.landing-hero__contact .home-call-cta__title { font-size:clamp(25px,2.2vw,32px); }
.landing-hero__contact .home-call-cta__description { margin-bottom:20px; font-size:15px; }
.landing-hero__contact .home-call-cta__phone { padding:12px; gap:10px; min-height:70px; }
.landing-hero__contact .home-call-cta__phone-icon { width:40px; height:40px; flex-basis:40px; padding:4px; }
.landing-hero__contact .home-call-cta__phone-text strong { font-size:clamp(18px,1.6vw,23px); }
.landing-hero__contact .home-call-cta__media { height:120px; }
.landing-hero__contact .home-call-cta>.top-right,.landing-hero__contact .home-call-cta>.bottom-left { display:block; }
@media(max-width:1199px) {
 .header-three .header-right { gap:12px; }
 .mobile-call-panel { position:fixed; top:72px; right:16px; width:310px; max-width:calc(100% - 32px); max-height:calc(100dvh - 88px); overflow-y:auto; }
 body:has(#side-bar.show) .float-text,body:has(#side-bar.show) .scrollbar-v,
 body:has(.mobile-call[open]) .float-text,body:has(.mobile-call[open]) .scrollbar-v,
 body:has(#side-bar.show) .primo-quick-contact,body:has(.mobile-call[open]) .primo-quick-contact { visibility:hidden; }
 #side-bar.holodok-mobile-navigation { overscroll-behavior:contain; }
 #side-bar .mobile-menu-language .has-child-menu>.menu-item { display:none; }
 #side-bar .mobile-menu-language .sub-menu { flex-direction:row; }
 .landing-hero__copy { padding:36px 28px 118px; }
 .hero-gallery__bar { left:28px; right:calc(35% + 36px); }
}
@media(max-width:991px) {
 .landing-hero__grid { grid-template-columns:minmax(0,1fr); min-height:0; background:#f3f8fa; }
 .landing-hero__copy { grid-area:1/1; align-self:stretch; min-height:540px; padding:32px 26px 120px; display:flex; flex-direction:column; justify-content:center; }
 .landing-hero__media { grid-area:1/1; position:relative; inset:auto; width:100%; height:100%; border-radius:18px; z-index:0; }
 .landing-hero__copy { z-index:1; pointer-events:none; }
 .landing-hero__copy a { pointer-events:auto; }
 .hero-gallery__bar { left:26px; right:26px; bottom:24px; }
 .hero-gallery__caption { max-width:300px; }
 .landing-hero__contact { grid-area:2/1; padding:14px 0 0; margin:0; border-radius:0; }
 .landing-hero__contact .home-call-cta { padding:0; background:transparent; }
 .landing-hero__contact .home-call-cta>.top-right,.landing-hero__contact .home-call-cta>.bottom-left { display:none; }
 .landing-hero__contact .home-call-cta__content { padding:24px; }
 .landing-hero__contact .home-call-cta__title { font-size:25px; margin-bottom:18px; }
 .landing-hero__contact .home-call-cta__description,.landing-hero__contact .home-call-cta__media,.landing-hero__contact .home-call-cta__note { display:none; }
 .landing-hero__contact .home-call-cta__phones { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .landing-hero__contact .home-call-cta__phone-text strong { font-size:20px; }
}
@media(max-width:575px) {
 .landing-hero__contact .home-call-cta__phones { grid-template-columns:1fr; }
 .landing-hero__contact .home-call-cta__phone { min-height:64px; }
 .hero-gallery__caption { max-width:185px; font-size:13px; }
 .hero-gallery__controls { gap:4px; }
 .hero-gallery__controls button { width:32px; height:36px; }
 .hero-gallery__bar { left:20px; right:20px; }
 .landing-hero__copy { padding:30px 24px 120px; }
}
@media(max-width:359px) {
 .hero-gallery__bar { gap:8px; left:16px; right:16px; }
 .hero-gallery__controls button { width:28px; height:32px; }
 .hero-gallery__controls { gap:3px; }
}

/* Mobile audit: readable heading, separate caption and usable touch targets. */
@media(max-width:767px) {
 .landing-hero__copy { padding-bottom:166px; }
 .hero-gallery__bar { align-items:flex-start; flex-direction:column; gap:12px; }
 .hero-gallery__caption { max-width:100%; min-height:52px; }
 .hero-gallery__controls { gap:8px; }
 .hero-gallery__controls button { width:44px; height:44px; }
 .mobile-call-panel .holodok-header-contacts .info a { display:flex; align-items:center; min-height:44px; }
 .float-text { right:12px; margin-left:0; transform:translateY(-50%); }
 .float-text a { width:20px; padding:10px 4px; }
 .scrollbar-v { right:22px; }
}
@media(max-width:359px) {
 .landing-hero h1 { font-size:29px; }
 .landing-hero__copy { padding-left:20px; padding-right:20px; }
}

/* Original theme geometry: reserve the banner background behind white content cards. */
.home-inner { --holodok-content-overlap:170px; --holodok-banner-tail:150px; }
.home-inner .pb-controler-breadcrumb:has(+ :is(.rts-project-details-area,.holodok-article)) { padding-bottom:var(--holodok-banner-tail); }
.home-inner .pb-controler-breadcrumb + .rts-project-details-area { margin-top:calc(-1 * var(--holodok-content-overlap)); padding-top:0; }

/* Shared editorial rhythm: page copy, rather than the icons inside cards. */
.rts-project-details-area .content-area > :is(h2,h3,h4) { margin:36px 0 18px; line-height:1.28; }
.rts-project-details-area .content-area > :is(h2,h3,h4):first-child { margin-top:0; }
.rts-project-details-area .content-area > p { margin-bottom:22px; }
.rts-project-details-area .content-area > :is(ul,ol) { margin-top:18px; margin-bottom:28px; }
.rts-project-details-area .content-area > img,
.rts-project-details-area .content-area > p:has(> img:only-child),
.rts-project-details-area .content-area > figure { margin:32px 0; }
.rts-project-details-area .content-area > img,
.rts-project-details-area .content-area > p > img:only-child { display:block; max-width:100%; height:auto; border-radius:12px; }
.rts-project-details-area .content-area > figure img { max-width:100%; height:auto; }
.rts-project-details-area .content-area > p:empty { display:none; }
.breadcrumb-inner .title { margin-bottom:20px; }
.tmp-bread-crumb-area .breadcrumb-inner nav.meta { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:6px 10px; margin:0; font-size:15px; line-height:1.65; }
.breadcrumb-inner nav.meta > span { min-width:0; max-width:100%; }
.breadcrumb-inner nav.meta [aria-current="page"] { color:rgba(255,255,255,.82); }
.breadcrumb-inner nav.meta .next { color:inherit; }
.breadcrumb-inner nav.meta .breadcrumb-separator { flex-shrink:0; }
@media(max-width:767px) {
 .home-inner { --holodok-content-overlap:64px; --holodok-banner-tail:80px; }
 .rts-project-details-area .content-area > :is(h2,h3,h4) { margin-top:28px; margin-bottom:16px; }
 .rts-project-details-area .content-area > img,
 .rts-project-details-area .content-area > p:has(> img:only-child),
 .rts-project-details-area .content-area > figure { margin:24px 0; }
 .tmp-bread-crumb-area .breadcrumb-inner nav.meta { gap:5px 8px; font-size:13px; line-height:1.5; }
}

/* Blog list, categories and article pages share the same compact header. */
.holodok-blog-index-page .tmp-bread-crumb-area { padding-bottom:0; min-height:0!important; }
.holodok-blog-article-page .tmp-bread-crumb-area { min-height:0!important; }
:is(.holodok-blog-index-page,.holodok-blog-article-page) .breadcrumb-inner { padding:48px 0!important; }
.holodok-blog-article-page .breadcrumb-inner .title { max-width:none; margin:0 auto 20px; font-size:clamp(28px,3.3vw,44px); line-height:1.2; text-wrap:balance; }
.holodok-blog-intro { padding-top:28px; }
.holodok-blog-intro p { margin:0; font-size:16px; line-height:1.65; }
.holodok-blog-grid { padding-top:32px; padding-bottom:64px; }
.holodok-blog-categories { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 32px; }
.holodok-blog-category { display:flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; padding:9px 15px; font-size:14px; line-height:1.5; text-align:center; }
.holodok-blog-grid .blog-card-style-two.inner { overflow:hidden; border-radius:14px; }
.holodok-blog-grid .image-area { margin:0; }
.holodok-blog-grid .image-area a { display:block; }
.holodok-blog-grid .image-area img { display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:contain; background:#eef6f9; }
.holodok-blog-grid .blog-content-area-2 { padding:24px; }
.holodok-blog-grid .blog-meta { flex-wrap:wrap; gap:8px 16px; margin:0 0 16px; }
.holodok-blog-grid .blog-meta li { margin:0; }
.holodok-blog-grid .blog-meta :is(p,time) { margin:0; font-size:13px; line-height:1.4; }
.holodok-blog-grid .blog-title { margin:0 0 14px; font-size:22px; line-height:1.3; }
.holodok-blog-grid .blog-description { margin:0; font-size:15px; line-height:1.65; }
.holodok-blog-grid .blog-description p { margin:0; font-size:inherit; line-height:inherit; }
.holodok-blog-grid .button-area { margin-top:auto; padding-top:20px; }
.holodok-blog-pagination { margin-top:40px!important; margin-bottom:0!important; }
.holodok-blog-pagination ul { flex-wrap:wrap; gap:8px; }
.holodok-blog-index-page .holodok-blog-pagination ul li { width:auto; height:auto; min-height:44px; line-height:1; }
.holodok-blog-pagination :is(a,[aria-current="page"]) { min-height:44px; min-width:44px; }
.holodok-blog-index-page > .holodok-blog-grid + .tmp-section-gapBottom { display:none; }
.holodok-blog-article-page .pb-controler-breadcrumb + .holodok-article { margin-top:calc(-1 * var(--holodok-content-overlap)); padding:0 0 64px; }
.holodok-article__body { padding:0; }
.holodok-blog-article-page .holodok-article__card { width:100%; max-width:none; margin:0; padding:32px; border-radius:16px; }
.holodok-article__content-shell { width:100%; max-width:none; padding:0; min-width:0; }
.holodok-article__toolbar { flex-wrap:wrap; align-items:center; margin:0 0 28px; padding:0 0 24px; }
.holodok-article__toolbar .holodok-article__meta { margin:0; font-size:14px; gap:8px 20px; }
.holodok-article__toolbar .primo-blog-category { max-width:100%; padding:8px 12px; border:1px solid #d6e9ef; border-radius:8px; color:#00647d; background:#f0f8fa; font-size:14px; font-weight:650; line-height:1.5; }
.holodok-article__image { margin:0; }
.holodok-article__image img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; border-radius:12px; }
.holodok-article__content { padding:28px 0 0; font-size:18px; line-height:1.75; overflow-wrap:anywhere; }
.holodok-article__content :is(h2,h3,h4) { text-wrap:balance; }
.holodok-article__content > :is(h2,h3,h4):first-child { margin-top:0; }
.holodok-article__content img { max-width:100%!important; height:auto!important; }
.holodok-article__content table { max-width:100%; width:100%!important; overscroll-behavior-x:contain; }
.holodok-article__content .article-table-hint { display:none; }
.holodok-article__content :is(iframe,video) { max-width:100%; }
.holodok-article__footer { max-width:none; margin-top:32px; padding:24px 0 0; }
.holodok-article__back { min-height:44px; white-space:normal; }
@media(max-width:767px) {
 :is(.holodok-blog-index-page,.holodok-blog-article-page) .breadcrumb-inner { padding:32px 0!important; }
 .holodok-blog-article-page .breadcrumb-inner .title { font-size:clamp(25px,6.8vw,32px); }
 .holodok-blog-intro { padding-top:24px; }
 .holodok-blog-intro p { font-size:15px; }
 .holodok-blog-grid { padding-top:24px; padding-bottom:40px; }
 .holodok-blog-categories { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:24px; }
 .holodok-blog-category { padding:8px; border-radius:10px; font-size:13px; }
 .holodok-blog-category:first-child { grid-column:1/-1; }
 .holodok-blog-grid .blog-content-area-2 { padding:20px; }
 .holodok-blog-grid .blog-title { font-size:21px; }
 .holodok-blog-article-page .pb-controler-breadcrumb + .holodok-article { padding-bottom:40px; }
 .holodok-blog-article-page .holodok-article__card { padding:18px; border-radius:12px; }
 .holodok-article__toolbar { align-items:flex-start; gap:14px; margin-bottom:24px; padding-bottom:20px; }
 .holodok-article__content { padding:24px 0 0; font-size:16px; }
 .holodok-article__content h2 { margin:32px 0 16px; font-size:25px; }
 .holodok-article__content h3 { margin:26px 0 14px; font-size:21px; }
 .holodok-article__content :is(ul,ol) { padding-left:20px; }
 .holodok-article__content blockquote { padding:18px; font-size:17px; }
 .holodok-article__content :is(th,td) { min-width:155px; padding:10px; font-size:14px; }
 .holodok-article__content :is(th,td):first-child { min-width:110px; }
 .holodok-article__content .article-table-hint { display:block; margin:24px 0 8px; color:#00647d; font-size:13px; line-height:1.5; }
 .holodok-article__content .article-table-hint + table { margin-top:8px; }
}
