body{padding-top:100px}
.beta-form-notice{padding:12px!important;margin:0 0 14px!important;background:#fff5c5!important;color:#293241!important;font:14px/1.5 system-ui,sans-serif!important;border-left:3px solid #fcdc43}
.beta-form fieldset{border:0;padding:0;margin:0;min-width:0}.beta-form :disabled{cursor:not-allowed}
.beta-empty{padding:180px 24px 100px;max-width:1100px;margin:auto;min-height:65vh}
.beta-skip{position:fixed;top:-100px;left:20px;background:#fff;color:#111;padding:16px;z-index:10000}.beta-skip:focus{top:12px}
.beta-language-links{display:flex;gap:12px;align-items:center;white-space:nowrap;font-size:14px}.beta-language-links a{color:inherit;text-decoration:underline}
.beta-gallery-dialog{border:0;padding:0;background:transparent;max-width:92vw;max-height:92vh}.beta-gallery-dialog::backdrop{background:#000d}.beta-gallery-dialog img{max-width:90vw;max-height:85vh;object-fit:contain}.beta-gallery-dialog button{display:block;margin-left:auto;background:white;padding:6px 14px;color:#111;border:0;cursor:pointer}
.b-faq__question.active .b-faq__question-a{display:block!important;height:auto!important;max-height:none!important;opacity:1!important}
@media(max-width:1199.98px){.c-header__item.open-submenu>.c-mega-menu{display:block!important}.c-mega-menu__item.open-submenu>.c-mega-menu__menu-wrap,.c-mega-menu__item.open-submenu>.c-mega-menu__menu-wrap-third{display:block!important}}

/* Header controls stay visible outside the mobile navigation drawer. */
.beta-header-controls{display:flex;align-items:center;gap:8px;position:relative;z-index:100;margin-left:24px;flex-shrink:0}
.beta-language{position:relative}
.beta-language summary,.beta-theme-toggle{display:flex;align-items:center;justify-content:center;gap:5px;min-width:42px;height:42px;padding:8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--basicText);cursor:pointer;list-style:none}
.beta-language summary::-webkit-details-marker{display:none}
.beta-language summary:hover,.beta-theme-toggle:hover{background:var(--gray)}
.beta-language summary:focus-visible,.beta-theme-toggle:focus-visible,.beta-language-choice:focus-visible{outline:2px solid #b87900;outline-offset:3px}
.beta-flag{display:block;width:27px;height:18px;border-radius:2px;overflow:hidden;box-shadow:0 0 0 1px #80808055;flex-shrink:0}
.beta-flag svg{display:block;width:100%;height:100%}
.beta-chevron{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8}
.beta-language[open] .beta-chevron{transform:rotate(180deg)}
.beta-language-options{position:absolute;right:0;top:calc(100% + 8px);min-width:144px;padding:6px;border:1px solid var(--megamenuBorder);border-radius:10px;background:var(--headerBg);box-shadow:0 8px 28px #0002}
.beta-language-choice{display:flex;align-items:center;gap:12px;padding:10px;border-radius:6px;color:var(--basicText);text-decoration:none;font:15px/1.4 system-ui,sans-serif}
.beta-language-choice:hover{background:var(--gray);color:var(--basicText)}
.beta-theme-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.beta-theme-toggle .beta-icon-sun{display:none}
html[data-theme="dark"] .beta-theme-toggle .beta-icon-sun{display:block}
html[data-theme="dark"] .beta-theme-toggle .beta-icon-moon{display:none}
.c-header__wrap-menu{margin-left:auto}
@media(min-width:1400px){.c-header__nav{gap:18px}.c-header__item--submenu:focus-within>.c-mega-menu{opacity:1;visibility:visible;z-index:99}}
@media(max-width:1399.98px){body{padding-top:60px}.beta-header-controls{margin-left:auto;margin-right:16px}.c-header__item.open-submenu>.c-mega-menu{display:block!important}.c-mega-menu__item.open-submenu>.c-mega-menu__menu-wrap,.c-mega-menu__item.open-submenu>.c-mega-menu__menu-wrap-third{display:block!important}}
@media(max-width:420px){.c-header__container{padding-inline:14px}.c-header__log{width:150px;height:auto}.beta-header-controls{gap:2px;margin-right:8px;margin-left:8px}.beta-language summary,.beta-theme-toggle{min-width:40px;padding:6px}}

/* Preserve brand accents and media while using dark surfaces and readable text. */
html[data-theme="dark"]{--bgBody:#111720;--headerBg:#161e29;--gray:#222d3b;--basicText:#dce3ed;--headings:#f3f6fa;--basicLink:#dce3ed;--megamenuBg:#1b2532;--megamenuBorder:#354255;--footerBg:#101620;--togleMenu:#f3f6fa;--linkBasicSecondary:#acc8ee;--btnBgHover:#f6b130;--btnTextHover:#111720}
html[data-theme="dark"] body{color:var(--basicText)}
html[data-theme="dark"] .o-uniwersal{background-color:#111720}
html[data-theme="dark"] .o-uniwersal.gray{background-color:#1b2532}
html[data-theme="dark"] .c-heading:not(.b-hero__title,.c-box-v1__title,.c-box-left-icon__title){--color:var(--surfaceText,#e9eef5)!important;color:var(--surfaceText,#e9eef5)}
html[data-theme="dark"] .c-text:not(.c-box-v1__desc,.c-box-left-icon__desc){--color:var(--surfaceText,#e9eef5)!important}
html[data-theme="dark"] .b-hero:not(:has(.b-hero__img-wrapper)) .b-hero__title{--color:#e9eef5!important}
html[data-theme="dark"] .c-header .arrow{fill:var(--basicText)}
html[data-theme="dark"] .c-toggle-menu g{stroke:var(--basicText)}
html[data-theme="dark"] :is(.c-popup-slide-form__body,.c-input,.c-form-field__input){background:#222d3b;color:var(--basicText)}
html[data-theme="dark"] :is(.c-box-v2,.c-box-industry){background:#222d3b}
html[data-theme="dark"] :is(.c-box-v2,.c-box-industry):hover{background:#354255}
html[data-theme="dark"] :is(.b-faq__question-q,.b-faq__question-a){background:#222d3b;color:#e9eef5}
html[data-theme="dark"] .b-faq__question.active .b-faq__question-q{background:#354255}
html[data-theme="dark"] .c-footer .c-heading{color:var(--footerHeading)}
.beta-logo-dark{display:none}
html[data-theme="dark"] .beta-logo-light{display:none}
html[data-theme="dark"] .beta-logo-dark{display:block}
@media(min-width:1400px){.c-header__item--submenu:focus-within>.c-mega-menu{transition:none}}
html[data-theme="dark"] .c-box-avatar__title a{color:#e9eef5!important}
html[data-theme="dark"] .c-logo-box__img{filter:brightness(0) invert(1)}

/* Image-backed heroes keep their original light/dark foreground pairing. */
html[data-theme="dark"] .b-hero:has(.b-hero__img-wrapper) .b-hero__header{--surfaceText:#293241;--basicText:var(--surfaceText);--headings:var(--surfaceText);color:var(--surfaceText)}
html[data-theme="dark"] .b-hero:has(.b-hero__title.c-heading--color-white,.b-hero__title[style*="#ffffff" i]) .b-hero__header{--surfaceText:#fff}
/* Power BI has a faint image over the dark surface, so its heading needs light text. */
html[data-theme="dark"] #block_b06f68c5812f5e264b1dfb6911ba249e .b-hero__header{--surfaceText:#e9eef5}
html[data-theme="dark"] #block_b06f68c5812f5e264b1dfb6911ba249e .b-hero__title{--color:var(--surfaceText)!important}

/* Neutral panels follow the theme; colored surfaces retain dark readable text. */
html[data-theme="dark"] :is(.l-single-post__header,.l-single-post__link,.b-contact,.c-review-box){background-color:#1b2532;color:#e9eef5}
html[data-theme="dark"] .l-single-post__content blockquote{background:#222d3b!important}
html[data-theme="dark"] .l-single-post__post-link{color:#dce3ed}
html[data-theme="dark"] .l-single-post__link-title{color:#e9eef5}
html[data-theme="dark"] :is(.price-section,.c-box-left-icon,.dr-calc__table,[style*="background-color:#e9e9e9"],[style*="background: #d1f4ef"],[style*="background: #f7f7f7"]){--surfaceText:#293241;--basicText:#293241;--headings:#293241;--basicLink:#293241;color:#293241}
html[data-theme="dark"] .c-box-left-icon__title{color:#293241}
html[data-theme="dark"] .price-section h2{color:#293241!important}
html[data-theme="dark"] .c-popup-slide-form.secondary .c-popup-slide-form__text{color:#293241}
html[data-theme="dark"] .b-hero:is([style*="--slider-bg-color-new: #ffad0e"],[style*="--slider-bg-color-new: #ff6600"]) .c-item-hero-slide{--slider-color-new:#293241;--slider-accent-color-new:#293241}
html[data-theme="dark"] .b-hero[style*="--slider-bg-color-new: #2f9174"] .b-hero__slider-wrapper{background-color:#1c5b49}
/* Buttons must not inherit the surrounding paragraph's --color token. */
html[data-theme="dark"] .c-btn{--color:var(--btnText)}
html[data-theme="dark"] .c-btn[style*="--background: #ffad0e"]{--color:#293241!important}

/* The first navigation item is now Services, not the former quote button. */
.c-header__nav>.c-header__item:first-child span.c-header__link-text,.c-header__nav>.c-header__item:first-child:hover span.c-header__link-text{background:transparent;padding:0;color:inherit}

/* Compact live search, shared by both language versions. */
.beta-search{--search-expanded:200px;position:relative;flex:0 0 88px;min-width:0;margin-left:20px;color:var(--basicText);z-index:101;transition:flex-basis .22s ease}
.beta-search input{display:block;width:100%;height:38px;margin:0;padding:8px 8px 8px 34px;border:1px solid var(--megamenuBorder);border-radius:9px;background:var(--gray);color:var(--basicText);font:14px/1.4 system-ui,sans-serif;appearance:none;box-sizing:border-box}
.beta-search:focus-within,.beta-search:has(input:not(:placeholder-shown)){flex-basis:var(--search-expanded)}
.beta-search:has(input:not(:placeholder-shown)) input{padding-right:32px}
@media(hover:hover) and (pointer:fine){.beta-search:hover{flex-basis:var(--search-expanded)}}
@media(prefers-reduced-motion:reduce){.beta-search{transition:none}}
.beta-search input::placeholder{color:var(--basicText);opacity:.7}
.beta-search input:focus{outline:2px solid #b87900;outline-offset:2px}
.beta-search input::-webkit-search-cancel-button{display:none}
.beta-search-icon{position:absolute;left:11px;top:11px;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;pointer-events:none}
.beta-search-clear{position:absolute;right:3px;top:3px;width:32px;height:32px;border:0;border-radius:6px;background:transparent;color:inherit;font:22px/1 system-ui,sans-serif;cursor:pointer}
.beta-search-panel{position:absolute;top:calc(100% + 10px);right:0;width:min(420px,calc(100vw - 32px));max-height:min(540px,calc(100dvh - 130px));overflow-y:auto;overscroll-behavior:contain;background:var(--headerBg);border:1px solid var(--megamenuBorder);border-radius:12px;box-shadow:0 12px 36px #0003;padding:8px;text-align:left}
.beta-search [hidden]{display:none!important}
.beta-search-status{margin:0;padding:8px 10px;font:12px/1.5 system-ui,sans-serif;color:var(--basicText)}
.beta-search-results{list-style:none;margin:0;padding:0}
.beta-search-results li{margin:0;padding:0}
.beta-search-results a{display:flex;flex-direction:column;gap:4px;padding:11px 10px;border-radius:7px;color:var(--basicText);text-decoration:none;font:14px/1.4 system-ui,sans-serif;overflow-wrap:anywhere}
.beta-search-results small{font-size:11px;opacity:.7}
.beta-search-results a:hover,.beta-search-results a:focus-visible,.beta-search-clear:hover{background:var(--gray);color:var(--basicText)}
.beta-search-results a:focus-visible,.beta-search-clear:focus-visible{outline:2px solid #b87900;outline-offset:-2px}
@media(min-width:1400px){.c-header__container{max-width:1440px;padding-inline:32px}.c-header__log-wrapper{flex-shrink:0;margin-right:24px}}
@media(max-width:1399.98px){.beta-search input{font-size:16px}}
@media(min-width:701px) and (max-width:1399.98px){.beta-search{margin-left:auto}.beta-header-controls{margin-left:12px}}
@media(max-width:700px){
  body{padding-top:110px}
  .c-header{height:110px}
  .c-header__wrapper{flex-wrap:wrap;align-content:center;row-gap:5px}
  .beta-search{--search-expanded:100%;flex:0 0 100%;width:100%;order:4;margin:0 0 7px;transition:none}
  .beta-search-panel{width:100%;box-sizing:border-box;max-height:var(--search-results-height,calc(100dvh - 130px - var(--site-notices-height,0px)));top:calc(100% + 6px)}
  .c-header__wrap-menu{padding-top:120px}
  .c-header__wrap-menu:after{height:110px}
  .beta-header-controls{margin-left:auto}
}

html[data-theme="dark"] .it-calculator-title{color:#f3f6fa}

.calculator-support{border:0;padding:0;margin:20px 0 32px;min-width:0;color:#2c3e50}
.calculator-support legend{display:block;width:100%;text-align:center;font-weight:700;margin-bottom:24px;font-size:22px}
.calculator-support-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.calculator-support-options label{position:relative;display:flex;align-items:center;justify-content:center;min-height:96px;box-sizing:border-box;padding:16px 12px;margin:0;border:2px solid #c5ccd2;border-radius:8px;background:#fff;color:#2c3e50;text-align:center;cursor:pointer;font:600 16px/1.4 system-ui,sans-serif}
.calculator-support-options label:has(input:checked){border-color:#806000;background:#fff4ad;box-shadow:inset 0 0 0 1px #806000}
.calculator-support-options label:hover{border-color:#806000}
.calculator-support-options input[type="radio"]{position:absolute;width:1px;height:1px;margin:0;padding:0;opacity:0}
.calculator-support-options label:has(input:focus-visible){outline:3px solid #806000;outline-offset:3px}
@media(max-width:420px){.calculator-support-options{gap:8px}.calculator-support-options label{font-size:14px;padding:12px 8px}}

.contact-section .form-row textarea{display:block;resize:vertical;min-height:120px;font-family:inherit}

/* Native contact forms and delivery feedback. */
.site-form fieldset{border:0;padding:0;margin:0;min-width:0}
.form-honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.form-status,.form-unavailable{padding:12px 16px;margin:12px 0;border:1px solid var(--megamenuBorder,#aaa);border-radius:6px;font:14px/1.5 system-ui,sans-serif;color:var(--basicText,#293241);background:var(--headerBg,#fff)}
.form-status[hidden]{display:none}
.form-status[data-state="error"]{border-color:#b42318}
.form-status[data-state="success"]{border-color:#21823b}
.form-unavailable a{text-decoration:underline}
.site-form [type="submit"]:disabled{cursor:wait;opacity:.65}

/* Author archives retain their public URLs and list all authored articles. */
.author-archive{max-width:1100px;margin:0 auto;padding:48px 24px 72px;line-height:1.6}
.author-archive h1{margin:24px 0;font-size:clamp(28px,5vw,44px)}
.author-archive ul{list-style:none;padding:0;margin:0}
.author-archive li{padding:20px 0;border-bottom:1px solid #8885}
.author-archive li a{font-size:20px;font-weight:600;display:block}
.author-archive time{display:block;font-size:14px;opacity:.75;margin-top:6px}

/* Standalone calculator uses the same typography, spacing and theme as the site. */
.standalone-it-calculator{max-width:1200px;margin:auto;padding:56px 24px 80px;color:var(--basicText);line-height:1.6}
.standalone-it-calculator *{box-sizing:border-box}
.standalone-it-calculator h1{font-size:clamp(32px,4.5vw,60px)!important;line-height:1.15;color:var(--headings);text-align:center;margin:0 0 48px}
.standalone-it-calculator .calculator-holder{display:grid;grid-template-columns:3fr 2fr;gap:24px;align-items:start}
.standalone-it-calculator :is(.calculator-section,.contact-section){min-width:0;padding:32px;border:1px solid var(--megamenuBorder,#d9dfe5);border-radius:12px;background:var(--headerBg,#fff)}
.standalone-it-calculator .form-label{font-size:22px;font-weight:600;color:var(--headings);margin-bottom:24px}
.standalone-it-calculator .calculator-support{color:var(--headings)}
.standalone-it-calculator .calculator-support-options label{font-family:inherit;background:var(--bgBody,#fff);color:var(--basicText);border-color:var(--megamenuBorder,#c5ccd2)}
.standalone-it-calculator .calculator-support-options label:has(input:checked){background:#fff4ad;color:#293241;border-color:#806000}
.standalone-it-calculator .slider-field{padding:20px;margin-top:24px;background:var(--bgBody,#f8f9fa);border:1px solid var(--megamenuBorder,#d9dfe5);border-radius:8px}
.standalone-it-calculator .slider-label{display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:600;margin-bottom:20px}
.standalone-it-calculator .slider-value{padding:4px 10px;border-radius:4px;background:#fff4ad;color:#293241;white-space:nowrap}
.standalone-it-calculator .range-slider{width:100%;accent-color:#b87900;cursor:pointer}
.standalone-it-calculator .slider-min-max{display:flex;justify-content:space-between;font-size:13px;margin-top:8px}
.standalone-it-calculator .slider-price{text-align:right;font-weight:600;margin-top:16px}
.standalone-it-calculator .price-section{padding:24px;margin-bottom:32px;border-radius:8px;background:#ffdd45;color:#293241;text-align:center}
.standalone-it-calculator .price-section h2{font-size:20px!important;line-height:1.4;color:#293241;margin:0}
.standalone-it-calculator .price-amount{font-size:clamp(28px,3vw,40px);line-height:1.2;font-weight:700;margin:20px 0;overflow-wrap:anywhere}
.standalone-it-calculator .info-note{font-size:14px}
.standalone-it-calculator .contact-section>h2{font-size:28px!important;color:var(--headings);margin:0 0 16px}
.standalone-it-calculator .contact-section>h3{font-size:22px!important;line-height:1.4;color:var(--headings);margin:0 0 20px}
.standalone-it-calculator .contact-section p{margin:0 0 20px}
.standalone-it-calculator .form-row{margin-bottom:16px}
.standalone-it-calculator .form-row :is(input,textarea){width:100%;padding:14px;border:1px solid var(--megamenuBorder,#c5ccd2);border-radius:6px;background:var(--bgBody,#fff);color:var(--basicText);font:inherit}
.standalone-it-calculator .form-row :is(input,textarea)::placeholder{color:var(--basicText);opacity:.7}
.standalone-it-calculator :is(input,textarea,button):focus-visible{outline:3px solid #b87900;outline-offset:3px}
.standalone-it-calculator .submit-btn{width:100%;padding:16px;border:0;border-radius:6px;background:#ffdd45;color:#293241;font-family:inherit;font-size:16px;font-weight:600;line-height:1.4;cursor:pointer}
.standalone-it-calculator .contact-footer{font-size:14px;margin-top:24px}
.standalone-it-calculator :is(.loading,.success-message){display:none}
@media(max-width:900px){.standalone-it-calculator .calculator-holder{grid-template-columns:1fr}}
@media(max-width:600px){.standalone-it-calculator{padding:32px 16px 48px}.standalone-it-calculator h1{margin-bottom:32px}.standalone-it-calculator :is(.calculator-section,.contact-section){padding:20px}.standalone-it-calculator .slider-field{padding:16px}}
