/* Kovalskii.Group visual system 2026. Scoped over legacy Worker/Bootstrap styles. */
:root{--kg-ink:#17262e;--kg-primary:#087963;--kg-primary-hover:#066451;--kg-brand-teal:#2caa95;--kg-orange:#fb6633;--kg-bg:#f5f7f6;--kg-line:#dce5e4;--kg-muted:#52656b;--kg-white:#fff;--kg-radius:18px;--kg-shadow:0 10px 30px rgba(23,38,46,.07)}
.ww_main_body,.ww_before_body{color:var(--kg-ink)}
.ww_main_body :is(h1,h2,h3,h4),.ww_before_body :is(h1,h2,h3,h4){letter-spacing:-.028em;line-height:1.22;overflow-wrap:break-word}
.ww_main_body :is(p,li),.ww_before_body :is(p,li){line-height:1.65}
.ww_main_body :is(a,button,input,textarea,select):focus-visible,.ww_head_top :is(a,button,input):focus-visible{outline:3px solid var(--kg-orange);outline-offset:3px}
.ww_main_body a:not(.btn):not(.nav-link):not(.kg-prices-button){text-underline-offset:.18em}
/* widget chrome: remove legacy card resets only within widgets */
.ww_main_body .icms-widget:not(.kg-prices)>.card-header{margin-bottom:clamp(18px,2.6vw,32px);padding:0;border:0;background:transparent;box-shadow:none}
.ww_main_body .icms-widget>.card-header :is(h2,h3,.title){color:var(--kg-ink);font-size:clamp(1.5rem,2.6vw,2.5rem);font-weight:750;line-height:1.2}
.ww_main_body .icms-widget>.card-body{min-width:0}
.ww_main_body .icms-widget .card:not(.ww_faq):not(.kg-prices-card){border-radius:var(--kg-radius);overflow:hidden}
/* Header and menu */
header.ww_header,header.ww_header_1{background-color:var(--kg-ink);box-shadow:none}
.ww_head_top .navbar .nav-link{font-weight:600;letter-spacing:.005em;transition:color .18s ease,background-color .18s ease;border-radius:10px}
.ww_head_top .navbar .nav-link:hover,.ww_head_top .navbar .nav-link:focus-visible{color:#a6ecdf}
.ww_head_top .navbar-toggler{border:1px solid rgba(255,255,255,.42);border-radius:10px;min-width:44px;min-height:44px}
/* CTA controls; keep Bootstrap variants and modal triggers working */
.ww_main_body .btn-primary,.ww_before_body .btn-primary,.ww_main_body .btn-success{background:var(--kg-primary);border-color:var(--kg-primary);color:#fff;border-radius:12px;font-weight:700;min-height:44px;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}
.ww_main_body .btn-primary:hover,.ww_before_body .btn-primary:hover,.ww_main_body .btn-success:hover{background:var(--kg-primary-hover);border-color:var(--kg-primary-hover);box-shadow:0 7px 18px rgba(44,170,149,.18)}
.ww_main_body .btn-outline-primary{color:#087561;border-color:var(--kg-primary);border-radius:12px}
.ww_main_body .btn-outline-primary:hover{background:var(--kg-primary);color:#fff}
/* Cards: scoped opt-in for standard content widget cards */
.ww_main_body .icms-widget .card:not(.ww_faq):not(.kg-prices-card){background:#fff;box-shadow:0 6px 22px rgba(23,38,46,.045)}
/* Counters */
.ww_counters{flex-wrap:wrap;gap:clamp(12px,2vw,24px)}
.ww_counters .ww_counter{flex:1 1 160px;margin-right:0!important;padding:clamp(16px,2vw,28px);border:1px solid var(--kg-line);border-radius:var(--kg-radius);background:var(--kg-bg)}
.ww_counters .ww_counter h2{font-size:clamp(2rem,3vw,3rem);color:var(--kg-ink);font-variant-numeric:tabular-nums}
.ww_counters .ww_counter h5{font-size:.95rem;font-weight:600;color:var(--kg-muted)!important;line-height:1.45}
/* FAQ uses Bootstrap collapse without changing its structure */
.ww_main_body .ww_faqs{display:grid;gap:10px}
.ww_main_body .ww_faqs>.ww_faq.card{background:#fff!important;border:1px solid var(--kg-line)!important;border-radius:14px;box-shadow:none;overflow:hidden}
.ww_main_body .ww_faq .card-header{background:transparent;border:0;padding:0;margin:0!important;box-shadow:none}
.ww_main_body .ww_faq .card-header button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:56px;padding:16px 20px;color:var(--kg-ink);font-size:clamp(1rem,1.3vw,1.14rem);font-weight:700;line-height:1.45;text-decoration:none;text-align:left;white-space:normal}
.ww_main_body .ww_faq .card-header button:after{content:'−';flex:none;font-weight:400;font-size:1.55rem;color:#087561}
.ww_main_body .ww_faq .card-header button.collapsed:after{content:'+'}
.ww_main_body .ww_faq .card-body{padding:0 20px 20px!important;color:var(--kg-muted);font-size:1rem}
/* Forms: scope to content and custom iforms */
.ww_main_body :is(.form-control,.custom-select),.ww_before_body :is(.form-control,.custom-select){border:1px solid #c9d7d5;border-radius:12px;min-height:46px;background-color:#fff;color:var(--kg-ink);box-shadow:none}
.ww_main_body :is(.form-control,.custom-select):focus,.ww_before_body :is(.form-control,.custom-select):focus{border-color:#168a76;box-shadow:0 0 0 3px rgba(44,170,149,.15)}
.ww_main_body textarea.form-control{min-height:112px}
.ww_main_body label{color:var(--kg-ink);font-weight:600}
.ww_main_body .invalid-feedback{color:#b42318}
/* Simple widgets / tabs */
.ww_main_body .icms-widget__tabbed>.card-header{border-radius:14px;box-shadow:none;background:var(--kg-bg);padding:14px!important}
.ww_main_body .icms-widget__tabbed>.card-header .nav-link{color:var(--kg-muted);font-weight:650;border-radius:9px;padding:8px 12px!important}
.ww_main_body .icms-widget__tabbed>.card-header .nav-link.active{background:#fff;color:var(--kg-ink);box-shadow:0 2px 8px rgba(23,38,46,.07)}
/* Footer */
.ww_footer{background:var(--kg-ink)}
.ww_footer :is(a,.card-body){color:#d8e3e3}
.ww_footer a:hover{color:#9ce5d7}
.ww_footer .card .card-header{color:#fff}
/* Content images */
.ww_main_body .icms-widget img,.ww_before_body .icms-widget img{max-width:100%;height:auto}
@media(max-width:767.98px){.ww_main_body .ww_faq .card-header button{padding:15px 16px}.ww_main_body .ww_faq .card-body{padding:0 16px 18px!important}.ww_main_body .icms-widget>.card-header :is(h2,h3,.title){font-size:clamp(1.4rem,6vw,2rem)}.ww_counters .ww_counter{flex-basis:calc(50% - 12px)}}
@media(max-width:440px){.ww_counters .ww_counter{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.ww_main_body .btn-primary,.ww_main_body .btn-success,.ww_head_top .navbar .nav-link{transition:none}}


/* CORPORATE PALETTE: legacy classes used directly in page content and widget options.
   Keep semantic classes for backwards compatibility; do not use Bootstrap's global .blue etc. */
:root{--kg-accent-soft:#e9f7f3;--kg-ink-soft:#223943;--kg-border:#dce5e4;--kg-radius-lg:20px}
.ww_after_body{background:#17262e;color:#fff;padding-top:clamp(46px,5vw,80px);padding-bottom:clamp(42px,5vw,76px);min-height:0}
.ww_after_body :is(h1,h2,h3,h4,h5,h6,.title_top){color:#fff}
.ww_after_body :is(p,li){color:#e0ecea}
.ww_after_body a:not(.btn){color:#a9f1e2;text-underline-offset:.2em}
.ww_after_body a:not(.btn):hover{color:#fff}
.ww_after_body :is(.card,.icms-widget){border-radius:18px}
.ww_after_body .btn-primary{background:var(--kg-primary);border-color:var(--kg-primary);border-radius:12px;color:#fff}
.ww_after_body .btn-primary:hover{background:var(--kg-primary-hover);border-color:var(--kg-primary-hover);color:#fff}
/* Historical section names are preserved because editor content references them. */
.pink{background:#17262e!important;color:#fff!important;padding-block:clamp(32px,5vw,72px);border-radius:clamp(12px,1.7vw,22px)}
.pink :is(h1,h2,h3,h4,h5,h6,.title_top){color:#fff!important}
.pink :is(p,li){color:#e2eeec}
.pink a:not(.btn){color:#abf0e4}
.dark,.grey2{background:#223943;color:#fff;border-radius:18px}
.dark :is(h2,h3,h4),.grey2 :is(h2,h3,h4){color:#fff}
.dark a:not(.btn),.grey2 a:not(.btn){color:#a9e5d9!important}
.faq,.cian{background:#e9f7f3;color:#17262e;border-radius:18px}
.blue{background:#dff1ed;color:#17262e;border-radius:18px}
.white{background:#fff;color:#17262e;border-radius:18px}
.grey{background:#edf2f0;color:#17262e;border-radius:18px}
.grey a:not(.btn){color:#176b5c!important}
/* Content sections, callouts and common editorial blocks */
.bordershadow,.bordershadow_dark{background:#fff;border:1px solid #dce5e4;border-radius:18px;box-shadow:0 10px 30px rgba(23,38,46,.07)}
.bordershadow_dark:hover{background:#fff;box-shadow:0 14px 34px rgba(23,38,46,.13)}
.form_mail{border:1px solid var(--kg-primary)!important;border-radius:12px!important;background:var(--kg-primary)!important;color:#fff!important;box-shadow:none;transition:background-color .2s ease,border-color .2s ease}
.form_mail:hover{background:var(--kg-primary-hover)!important;border-color:var(--kg-primary-hover)!important;color:#fff!important}
blockquote,.bb_quote{background:#f1f7f5!important;color:#17262e;border:1px solid #dce5e4!important;border-left:4px solid #2caa95!important;border-radius:16px}
blockquote::before,.bb_quote::before{color:#2caa95}
.ww_footer{background-color:#17262e}
.ww_footer_left .card .card-header::after,.ww_footer_center .card .card-header::after,.ww_footer_right .card .card-header::after{background-image:linear-gradient(to right,#2caa95,transparent)}
.pages_list_item .value img{border-radius:16px;max-width:100%;height:auto}
.ww_main_body .icms-widget :is(.img-thumbnail,.rounded-0):not(.worker-video-gallery img){border-radius:12px}
.ww_main_body .icms-widget .btn-secondary{border-radius:12px}
/* Legacy UI rules previously used red / royal blue for collapsibles and links */
.ww_main_body .ww_faq h2 button.collapsed:hover{background:#e9f7f3;color:#17262e}
.ww_main_body .ww_faq h2 button:not(.collapsed){background:#e9f7f3;color:#17262e}
.ww_main_body .icms-widget :is(a.text-primary,.text-info){color:#176b5c!important}
.ww_main_body .icms-widget .alert-info{color:#1a5148;background:#e9f7f3;border-color:#b9e6db;border-radius:12px}
.ww_main_body .icms-widget .alert-warning{border-radius:12px}
.ww_main_body .icms-widget .badge-primary{background:#176b5c}
@media(max-width:767.98px){.pink,.dark,.grey2,.faq,.cian,.blue,.grey{border-radius:14px}.ww_after_body{padding-block:40px}}

/* Worker corporate refinement — keep CTA text white across all Bootstrap states.
   Use darker teal on filled controls to ensure accessible white-on-teal contrast. */
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(a.btn-primary,button.btn-primary,input.btn-primary,.btn-success,.form_mail),
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(a.btn-primary,button.btn-primary,input.btn-primary,.btn-success,.form_mail):is(:link,:visited,:hover,:focus,:focus-visible,:active),
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(.btn-primary,.btn-success,.form_mail) :is(span,small,strong,i,svg) {color:#fff!important;}
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(.btn-primary,.btn-success,.form_mail) {background-color:var(--kg-primary)!important;border-color:var(--kg-primary)!important;border-radius:12px;}
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(.btn-primary,.btn-success,.form_mail):is(:hover,:focus,:focus-visible,:active) {background-color:var(--kg-primary-hover)!important;border-color:var(--kg-primary-hover)!important;color:#fff!important;}
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(.btn-primary,.btn-success,.form_mail):disabled,
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(.btn-primary,.btn-success,.form_mail).disabled {color:#fff!important;opacity:.65;}
/* Restore native text on unfilled CTA variants until hover makes the button filled. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) .btn-outline-primary:not(:hover):not(:focus):not(:active) {background:transparent;color:#087561;}
:where(.ww_main_body,.ww_before_body,.ww_after_body) .btn-outline-primary:is(:hover,:focus,:active){background:var(--kg-primary);border-color:var(--kg-primary);color:#fff!important;}
/* Legibility and geometry for modern widgets without globally overriding Bootstrap's .card. */
:where(.ww_main_body,.ww_before_body) .icms-widget .card:not(.kg-prices-card):not(.ww_faq){border:1px solid var(--kg-line)!important;border-radius:var(--kg-radius);}
:where(.ww_main_body,.ww_before_body) .icms-widget .card:not(.kg-prices-card):not(.ww_faq)>.card-body{min-width:0;}
:where(.ww_main_body,.ww_before_body) .icms-widget .card img:not(.worker-video-poster){max-width:100%;}
:where(.ww_main_body,.ww_before_body) :is(.alert,.dropdown-menu,.modal-content){border-radius:14px;}
:where(.ww_main_body,.ww_before_body) .modal-content{overflow:visible;}
:where(.ww_main_body,.ww_before_body) .form-control::placeholder{color:#66777d;opacity:1;}
@media(prefers-reduced-motion:reduce){:where(.ww_main_body,.ww_before_body,.ww_after_body) :is(.btn,.form_mail){transition:none!important;}}

/* Corporate CTA arrows: glyph independent of icon fonts / Bootstrap icons.
   Exclude price widget where the link already contains a visible arrow. */
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer)
:is(a.btn-primary,button.btn-primary,a.btn-success,button.btn-success,a.form_mail,button.form_mail):not(.kg-prices-button):not(.dropdown-toggle):not(.btn-icon):not([data-no-arrow]) {
  display:inline-flex;align-items:center;justify-content:center;gap:.75em;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer)
:is(a.btn-primary,button.btn-primary,a.btn-success,button.btn-success,a.form_mail,button.form_mail):not(.kg-prices-button):not(.dropdown-toggle):not(.btn-icon):not([data-no-arrow])::after {
  content:"\2192";display:inline-block;color:#fff;font-family:Arial,sans-serif;
  font-weight:600;font-size:1.25em;line-height:1;flex:none;
  transition:transform .18s ease;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer)
:is(a.btn-primary,button.btn-primary,a.btn-success,button.btn-success,a.form_mail,button.form_mail):not(.kg-prices-button):not(.dropdown-toggle):not(.btn-icon):not([data-no-arrow]):is(:hover,:focus-visible)::after {transform:translateX(3px)}
/* Submit inputs cannot render ::after, so use a CSS icon asset instead. */
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer)
:is(input[type=submit].btn-primary,input[type=submit].btn-success,input[type=submit].form_mail) {
  padding-right:2.8em!important;
  background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpath d="M4 12h16m-7-7 7 7-7 7"/%3E%3C/svg%3E')!important;
  background-repeat:no-repeat!important;background-position:right 1em center!important;background-size:1.15em!important;
}
@media(prefers-reduced-motion:reduce){
:where(.ww_main_body,.ww_before_body,.ww_after_body,.ww_footer) :is(.btn-primary,.btn-success,.form_mail)::after{transition:none!important}
}

/* Corporate Card System v5: explicit light/dark surface contract.
   Do not force light backgrounds on historical .dark/.pink variants or specialist widgets. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.icms-widget__tabbed):not(.ww_faq):not(.kg-prices-card):not(.kg-card--dark):not(.dark):not(.pink):not(.grey2):not(.bg-dark):not(.bg-primary):not(.bg-secondary):not(.bg-success):not(.text-bg-dark) {
  --kg-card-text:#56676b;
  --kg-card-title:#17262e;
  --kg-card-surface:#fff;
  background-color:var(--kg-card-surface)!important;
  color:var(--kg-card-text)!important;
  border:1px solid var(--kg-line)!important;
  border-radius:20px;
  box-shadow:0 8px 28px rgba(23,38,46,.055);
  min-width:0;
  overflow-wrap:break-word;
  transition:box-shadow .2s ease,border-color .2s ease;
}
/* Text in a light card must not inherit white from an enclosing dark band.
   Exclude deliberately colored descendants and button/link actions. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card):not(.kg-card--dark):not(.dark):not(.pink):not(.grey2):not(.bg-dark):not(.bg-primary):not(.bg-secondary):not(.bg-success) > :is(.card-body,.card-header,.card-footer) {
  color:#56676b;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card):not(.kg-card--dark):not(.dark):not(.pink):not(.grey2):not(.bg-dark):not(.bg-primary):not(.bg-secondary):not(.bg-success) :is(.card-title,.card-header > h2,.card-header > h3,.card-body > h2,.card-body > h3,.card-body > h4) {
  color:#17262e!important;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card):not(.kg-card--dark):not(.dark):not(.pink):not(.grey2):not(.bg-dark):not(.bg-primary):not(.bg-secondary):not(.bg-success) > .card-body :is(p,li,.text-white,.text-light):not(.btn):not(.badge) {
  color:#56676b!important;
}
/* Card geometry is owned by body/header/footer; free-standing icons need their own inset. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card) > .card-body {
  padding:clamp(20px,2.2vw,32px)!important;
  min-width:0;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card) > .card-header {
  padding:clamp(18px,1.8vw,26px) clamp(20px,2.2vw,32px);
  border-radius:19px 19px 0 0;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card) > .card-footer {
  padding:16px clamp(20px,2.2vw,32px);
  border-radius:0 0 19px 19px;
}
/* Historical tiles sometimes place their icon directly under .card rather than in .card-body. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card) > :is(svg,i,.icon,.fa,.fas,.far,.fab,.bi) {
  margin:clamp(20px,2.2vw,32px) 0 0 clamp(20px,2.2vw,32px);
  flex-shrink:0;
}
/* An icon immediately followed by the card body shares the top rhythm. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card) > :is(svg,i,.icon,.fa,.fas,.far,.fab,.bi) + .card-body {
  padding-top:16px!important;
}
/* Corporate Card v6: InstantCMS SVG icons (icms-svg-icon w-16).
   The utility w-16 is used site-wide; only leading icons belonging to the
   content card are decorated. Inline icons in buttons, copy, lists and media
   players retain their original dimensions/spacing. */
:where(.ww_main_body,.ww_before_body,.ww_after_body)
.card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card)
> .icms-svg-icon.w-16 {
  display:block;
  box-sizing:content-box;
  width:28px;
  height:28px;
  padding:12px;
  margin:clamp(20px,2.2vw,32px) 0 0 clamp(20px,2.2vw,32px);
  border-radius:14px;
  background:#eaf6f3;
  color:#087963;
  flex:none;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body)
.card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card)
> .card-body > .icms-svg-icon.w-16:first-child {
  display:block;
  box-sizing:content-box;
  width:28px;
  height:28px;
  padding:12px;
  margin:0 0 20px;
  border-radius:14px;
  background:#eaf6f3;
  color:#087963;
  flex:none;
}
/* Keep leading content icons legible on the intentionally dark cards. */
:where(.ww_main_body,.ww_before_body,.ww_after_body)
:is(.card.kg-card--dark,.card.dark,.card.pink,.card.grey2)
> :is(.icms-svg-icon.w-16,.card-body > .icms-svg-icon.w-16:first-child) {
  background:#285047;
  color:#a1e8d7;
}
@media (max-width:767.98px) {
  :where(.ww_main_body,.ww_before_body,.ww_after_body)
  .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card)
  > .icms-svg-icon.w-16 {
    margin:20px 0 0 20px;
  }
}
/* Variants explicitly opt into dark surfaces, preserving legibility. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) :is(.card.kg-card--dark,.card.dark,.card.pink,.card.grey2) {
  background:#17262e!important;
  color:#e0ecea!important;
  border:1px solid #385057!important;
  border-radius:20px;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body) :is(.card.kg-card--dark,.card.dark,.card.pink,.card.grey2) :is(.card-title,.card-header,.card-body > h2,.card-body > h3) {color:#fff!important;}
:where(.ww_main_body,.ww_before_body,.ww_after_body) :is(.card.kg-card--dark,.card.dark,.card.pink,.card.grey2) :is(.card-body,.card-body > p,.card-body > ul,.card-body > ol) {color:#e0ecea!important;}
:where(.ww_main_body,.ww_before_body,.ww_after_body) .card.kg-card--mint {background:#eaf6f3!important;color:#17262e!important;}
@media (hover:hover) and (pointer:fine) {
  :where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card):hover {
    border-color:#b5d8d0!important;
    box-shadow:0 14px 36px rgba(23,38,46,.085);
  }
}
@media (max-width:767.98px) {
  :where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card){border-radius:16px;}
  :where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card) > .card-header{border-radius:15px 15px 0 0;}
  :where(.ww_main_body,.ww_before_body,.ww_after_body) .card:not(.icms-widget):not(.ww_faq):not(.kg-prices-card) > .card-footer{border-radius:0 0 15px 15px;}
}
@media (prefers-reduced-motion:reduce) {
  :where(.ww_main_body,.ww_before_body,.ww_after_body) .card {transition:none!important;}
}

/* Corporate FAQ v8 — Worker widget (Bootstrap 4 Collapse).
   Scope to the actual .ww_faqs widget; do not restyle other Bootstrap accordions. */
.ww_faqs.accordion {
  display:grid;
  gap:14px;
  min-height:0;
  margin-block:clamp(22px,3vw,38px);
}
.ww_faqs.accordion > .ww_faq.card {
  position:relative;
  margin:0;
  width:100%;
  min-width:0;
  overflow:hidden;
  border:1px solid #dce5e4!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#17262e!important;
  box-shadow:0 4px 18px rgba(23,38,46,.045);
  transition:border-color .18s ease,box-shadow .18s ease;
}
.ww_faqs.accordion > .ww_faq.card:focus-within {
  border-color:#087963!important;
}
@media(hover:hover) and (pointer:fine){
  .ww_faqs.accordion > .ww_faq.card:hover {
    border-color:#b4d8cf!important;
    box-shadow:0 10px 28px rgba(23,38,46,.07);
  }
}
.ww_faqs .ww_faq > .card-header {
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0;
  background:#fff!important;
}
.ww_faqs .ww_faq .card-header > h2 {
  margin:0!important;
  padding:0;
  font-size:inherit;
  line-height:inherit;
}
.ww_faqs .ww_faq .card-header h2 > button.btn {
  display:flex;
  position:relative;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  width:100%;
  min-height:72px;
  margin:0;
  padding:22px 26px!important;
  border:0!important;
  border-radius:0!important;
  background:#eaf6f3!important;
  color:#17262e!important;
  font-family:inherit;
  font-size:clamp(16px,1.25vw,19px)!important;
  font-weight:700;
  line-height:1.45;
  letter-spacing:normal;
  text-align:left;
  text-decoration:none!important;
  white-space:normal;
  overflow-wrap:anywhere;
  box-shadow:none!important;
  transition:background-color .18s ease,color .18s ease;
}
.ww_faqs .ww_faq .card-header h2 > button.btn.collapsed {
  background:#fff!important;
  color:#17262e!important;
}
.ww_faqs .ww_faq .card-header h2 > button.btn:hover {
  background:#eaf6f3!important;
  color:#17262e!important;
}
.ww_faqs .ww_faq .card-header h2 > button.btn:focus-visible {
  outline:3px solid #fb6633!important;
  outline-offset:-4px;
}
.ww_faqs .ww_faq .card-header h2 > button.btn::after {
  content:'−';
  display:grid;
  place-items:center;
  position:static;
  inset:auto;
  flex:0 0 34px;
  width:34px;
  height:34px;
  margin:0;
  border-radius:10px;
  background:#087963;
  color:#fff;
  font-size:23px;
  font-weight:500;
  line-height:1;
  transition:background-color .18s ease;
}
.ww_faqs .ww_faq .card-header h2 > button.btn.collapsed::after {
  content:'+';
  background:#eaf6f3;
  color:#087963;
}
.ww_faqs .ww_faq .collapse > .card-body,
.ww_faqs .ww_faq .collapsing > .card-body {
  padding:6px 26px 26px!important;
  border-top:1px solid #dce5e4;
  background:#fff;
  color:#52656b!important;
  font-size:16px;
  line-height:1.65;
  overflow-wrap:anywhere;
}
.ww_faqs .ww_faq .card-body :is(p,ul,ol) {color:#52656b!important;line-height:1.65;}
.ww_faqs .ww_faq .card-body :is(h3,h4,strong,b) {color:#17262e!important;}
.ww_faqs .ww_faq .card-body a {color:#087963!important;text-decoration:underline;text-underline-offset:3px;}
.ww_faqs .ww_faq .card-body > :last-child {margin-bottom:0;}
@media(max-width:767.98px){
  .ww_faqs.accordion {gap:10px;margin-block:20px 28px;}
  .ww_faqs.accordion > .ww_faq.card {border-radius:14px!important;}
  .ww_faqs .ww_faq .card-header h2 > button.btn {min-height:62px;padding:17px 18px!important;gap:12px;}
  .ww_faqs .ww_faq .card-header h2 > button.btn::after {flex-basis:30px;width:30px;height:30px;font-size:21px;}
  .ww_faqs .ww_faq .collapse > .card-body,
  .ww_faqs .ww_faq .collapsing > .card-body {padding:5px 18px 20px!important;}
}
@media(prefers-reduced-motion:reduce){
  .ww_faqs .ww_faq,
  .ww_faqs .ww_faq .card-header h2 > button.btn,
  .ww_faqs .ww_faq .card-header h2 > button.btn::after {transition:none!important;}
}

/* Ensure legacy Bootstrap/worker styles cannot override focus and state colors. */
.ww_faqs.accordion > .ww_faq.card .card-header h2 > button.btn.collapsed:hover { background:#eaf6f3!important; color:#17262e!important; }
.ww_faqs.accordion > .ww_faq.card .card-header h2 > button.btn:not(.collapsed) { background:#eaf6f3!important; color:#17262e!important; }

/* Corporate hyperlink palette: content links only, never navigation or CTA controls. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) :is(p,li,blockquote,.card-body,.kg-prices-intro) a:where(:not(.btn):not(.nav-link):not(.form_mail):not(.kg-prices-button):not(.dropdown-item):not(.badge):not(.ajax-modal.form_mail)){
  color:#087963;text-decoration-color:#74bfb0;text-underline-offset:.17em;
}
:where(.ww_main_body,.ww_before_body,.ww_after_body) :is(p,li,blockquote,.card-body,.kg-prices-intro) a:where(:not(.btn):not(.nav-link):not(.form_mail):not(.kg-prices-button):not(.dropdown-item):not(.badge)):is(:hover,:focus-visible){color:#065e4d;text-decoration-color:currentColor}
/* Preserve legibility of content hyperlinks on explicit dark backgrounds. */
:where(.ww_main_body,.ww_before_body,.ww_after_body) :is(.kg-card--dark,.dark,.pink,.grey2,.bg-dark,.ww_after_body) :is(p,li,blockquote) a:where(:not(.btn):not(.nav-link):not(.form_mail):not(.kg-prices-button)){color:#a5f0df;text-decoration-color:#77cdb9}

/* Corporate 12: FAQ content links vs actionable filled buttons. */
.ww_faqs .ww_faq .card-body a:not(.btn):not(.form_mail):not(.kg-prices-button) {
  color:#087963!important;
  text-decoration:underline;
  text-underline-offset:3px;
}
.ww_faqs .ww_faq .card-body a:not(.btn):not(.form_mail):hover {
  color:#065e4d!important;
}
.ww_faqs .ww_faq .card-body :is(a.btn-primary,a.btn-success,a.form_mail,a.btn.form_mail,a.ajax-modal.form_mail),
.ww_faqs .ww_faq .card-body :is(a.btn-primary,a.btn-success,a.form_mail,a.btn.form_mail,a.ajax-modal.form_mail):is(:link,:visited,:hover,:active,:focus,:focus-visible) {
  color:#fff!important;
  background-color:#087963!important;
  border-color:#087963!important;
  text-decoration:none!important;
  border-radius:12px;
}
.ww_faqs .ww_faq .card-body :is(a.btn-primary,a.btn-success,a.form_mail,a.btn.form_mail,a.ajax-modal.form_mail):is(:hover,:active,:focus-visible) {
  background-color:#066451!important;
  border-color:#066451!important;
}
.ww_faqs .ww_faq .card-body :is(a.btn-primary,a.btn-success,a.form_mail,a.btn.form_mail) :is(span,strong,i,svg) {
  color:#fff!important;
}
.ww_faqs .ww_faq .card-body :is(a.btn-primary,a.btn-success,a.form_mail,a.btn.form_mail):focus-visible {
  outline:3px solid #fb6633;
  outline-offset:3px;
}
