/* The administrator-selected color is set in --theme by render.php. */
:root{
 --theme:#345DA8;
 --theme-action:color-mix(in srgb,var(--theme) 40%,#14223d);
 --theme-hover:color-mix(in srgb,var(--theme) 62%,#14223d);
 --theme-mist:color-mix(in srgb,var(--theme) 10%,white);
 --theme-light:color-mix(in srgb,var(--theme) 28%,white);
 --theme-tint:color-mix(in srgb,var(--theme) 54%,white);
 --ink:color-mix(in srgb,var(--theme) 15%,#172033);
 --muted:#657187;
 --paper:color-mix(in srgb,var(--theme) 4%,white);
 --line:color-mix(in srgb,var(--theme) 17%,white);
 --dark:color-mix(in srgb,var(--theme) 55%,#15213a);
 --teal:var(--theme-action);
 --mint:var(--theme-light);
}
html{scrollbar-color:var(--theme-light) var(--paper)}
:focus-visible{outline-color:var(--theme)}
.header{background:var(--paper);border-color:var(--line)}
.header nav a:hover,.header nav a[aria-current],.breadcrumbs a:hover,.text-link:hover,.footer-grid a:hover{color:var(--theme)}
.header nav a:hover,.header nav a[aria-current]{background:var(--theme-mist)}
.header-contact,.header-contact:hover{background:var(--dark);color:white}
.button,.button-outline:hover{background:var(--theme-light);border-color:var(--theme-light);color:var(--ink)}
.button:hover,.button-outline:hover{background:var(--theme-tint);border-color:var(--theme-tint)}
.hero{background:var(--dark)}
.hero h1 em,.cta em{color:var(--theme-tint)}
.hero .eyebrow,.hero-intro,.hero-note,.cta .eyebrow{color:#e6ebf7}
.status-dot,.tiny-line,.original-benefits li:before{background:var(--theme-tint)}
.status-dot{box-shadow:0 0 9px var(--theme-tint)}
.expertise-strip{background:var(--theme-mist);color:var(--ink)}
.expertise-strip i .ti,.service-icon .ti,.feature-list .ti,.step-icon .ti,.contact-details span .ti{color:var(--theme)}
.service-caption>span.service-icon,.step-icon{background:var(--theme-mist);color:var(--theme)}
.foil-feature,.steps>div,.filters,.inquiry-form input,.inquiry-form select,.inquiry-form textarea{background:var(--theme-mist)}
.steps>div:hover{background:var(--theme-light)}
.project-image,.gallery-image{background:var(--theme-light)}
.filters button.active{background:white;color:var(--theme-action)}
.filters button:hover{background:var(--theme-light)}
.filters button.active:hover{background:white}
.faq-item{background:var(--theme-mist);border-color:var(--line)}
.contact-details>a,.contact-details>div,.inquiry-form{border-color:var(--line)}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{border-color:var(--line)}
.cta{background:radial-gradient(ellipse at top right,var(--theme-hover),var(--dark) 72%)}
.footer-grid a.footer-logo{background:var(--dark)}
.footer-grid a:hover{color:var(--theme)}
.social .ti,.image-arrow .ti{color:var(--theme)}
.mobile-call,.mobile-call:hover{background:var(--theme-action);color:white}
.article-share{margin-top:clamp(28px,5vw,64px);margin-bottom:28px;padding:clamp(24px,4vw,42px);border:1px solid var(--line);border-radius:28px;background:var(--theme-mist)}
.article-share-header{display:flex;align-items:end;justify-content:space-between;gap:30px}
.article-share-header .eyebrow{margin-bottom:10px;color:var(--theme-action)}
.article-share-header h2{font-size:clamp(28px,3vw,42px);line-height:1.15}
.article-share-header>p{max-width:310px;color:var(--muted);font-size:16px;line-height:1.6}
.article-share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.article-share-actions a,.article-share-actions button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:11px 17px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--ink);font-size:15px;font-weight:700;line-height:1.2;transition:background .2s,border-color .2s,transform .2s}
.article-share-actions a:hover,.article-share-actions button:hover{background:var(--theme-light);border-color:var(--theme-tint);transform:translateY(-2px)}
.article-share-actions .ti{width:20px;height:20px;flex:none}
.article-share-actions [data-share-copy]{background:var(--theme-action);border-color:var(--theme-action);color:white}
.article-share-actions [data-share-copy]:hover{background:var(--theme-hover);border-color:var(--theme-hover)}
.article-share-actions [hidden]{display:none!important}
.article-share-status{min-height:1.5em;margin-top:12px;color:var(--theme-action);font-size:14px;font-weight:600}
@media(max-width:640px){.article-share{border-radius:23px;padding:24px 20px}.article-share-header{display:block}.article-share-header>p{max-width:none;margin-top:12px;font-size:15px}.article-share-actions{gap:8px}.article-share-actions a,.article-share-actions button{font-size:14px;padding:10px 14px}}
@media(max-width:850px){.header nav{background:var(--paper)}.header nav a:hover{background:var(--theme-mist)}}
.mobile-contact{display:none}
@media(max-width:850px){
 .mobile-contact{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:10px;max-width:calc(100vw - 36px)}
 .mobile-contact .mobile-call{position:static;right:auto;bottom:auto;min-height:56px;min-width:87px;padding:10px 12px;gap:7px;box-shadow:0 8px 28px #092c3a33}
 .mobile-contact .mobile-call::after{content:none}
 .mobile-contact .contact-main-phone{width:25px;height:25px}
 .contact-mini{display:flex;align-items:center;gap:3px}
 .contact-mini>span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;color:white}
 .contact-mini-wa{background:#22BA60}.contact-mini-viber{background:#8068B4}
 .contact-mini .ti{width:13px;height:13px;stroke-width:2.1}
 .mobile-contact.open .mobile-call{outline:2px solid var(--theme-tint);outline-offset:3px}
 .mobile-contact-menu{width:228px;max-width:calc(100vw - 36px);padding:9px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 16px 48px #12274438}
 .mobile-contact-menu[hidden]{display:none!important}
 .mobile-contact-menu p{padding:9px 12px 7px;color:var(--muted);font-size:13px;font-weight:700;line-height:1.4}
 .mobile-contact-menu a{display:flex;align-items:center;gap:13px;padding:10px 11px;border-radius:13px;font-size:16px;font-weight:700;color:var(--ink);min-height:52px}
 .mobile-contact-menu a:hover,.mobile-contact-menu a:focus-visible{background:var(--theme-mist)}
 .mobile-contact-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;color:white}
 .mobile-contact-icon .ti{width:19px;height:19px}
 .mobile-contact-icon.whatsapp{background:#25d366}.mobile-contact-icon.viber{background:#7360a9}.mobile-contact-icon.call{background:var(--theme-action)}
}
