/* Readable type scale. Layout grows with the content. */
body{font-size:17px;line-height:1.65}
.eyebrow{font-size:13px;letter-spacing:1px;line-height:1.5}
header{height:88px;padding:0 40px;gap:22px}
.brand{width:174px;height:42px}
header nav{font-size:15px;gap:20px;margin-left:5px}
header nav span{font-size:16px}
.header-phone{gap:9px}.header-phone b{font-size:18px}.header-phone small{font-size:12px}
.phone-round{width:36px;height:36px}.phone-round svg{width:19px;height:19px}
.button,.report{font-size:16px;min-height:50px;padding:13px 23px;gap:14px;border-radius:27px}
.button svg{width:21px;height:21px}.report{font-size:14px;padding:12px 18px;min-height:46px}
.menu-trigger{width:28px;min-height:44px;flex-shrink:0}.menu-trigger svg{width:27px;height:27px}
.hero{height:720px}
.hero-copy{left:48px;top:136px;width:570px;max-width:calc(100% - 500px)}
.hero-copy h1{font-size:64px;line-height:1.06;letter-spacing:-2px;margin-top:18px}
.lead{font-size:18px;line-height:1.65;margin-top:23px;max-width:570px}.lead br{display:none}
.hero-actions{gap:15px;margin-top:27px;flex-wrap:wrap}.hero-actions .button{font-size:16px;min-height:50px;padding:13px 22px}
.benefits{left:48px;bottom:40px;font-size:15px;gap:28px}.benefits svg{width:24px;height:24px}
.panel-group{right:42px;top:153px;width:402px;height:auto;transform:none}
.network-panel{width:312px;min-height:0;padding:21px;border-radius:18px}
.network-panel h2{font-size:19px;line-height:1.3;gap:10px;margin-bottom:16px}.network-panel h2 svg{width:23px;height:23px}
.model-preview{height:147px;margin-bottom:15px}.model-preview>span{font-size:10px;letter-spacing:.7px;bottom:7px;left:9px}
.panel-eyebrow{font-size:12px;line-height:1.5;margin:11px 0 5px;letter-spacing:1px}
.panel-content h3{font-size:22px;line-height:1.25;letter-spacing:-.5px;margin-bottom:8px}
.panel-content p:not(.panel-eyebrow){font-size:16px;line-height:1.55;min-height:50px}
.panel-content .button{font-size:14px;min-height:47px;padding:12px;margin-top:17px;gap:12px}.panel-content .button svg{width:19px;height:19px}
.panel-tabs{left:322px;top:39px;width:80px;padding:9px;gap:9px}.panel-tabs button{width:60px;min-height:76px;padding:9px 2px;gap:7px}.panel-tabs button svg{width:25px;height:25px}.panel-tabs button span{font-size:11px;line-height:1.3}
.service-bubble{top:540px;left:55%;font-size:13px;padding:12px 15px;gap:9px}.service-bubble svg{width:18px;height:18px}
.scroll-cue{font-size:12px;bottom:34px;left:53%;gap:7px}.scroll-cue span{font-size:31px}
.hero-caption{font-size:10px;right:42px;bottom:17px;letter-spacing:.1px}
.services{height:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:28px 40px}
.service-card{padding:22px 20px;min-height:290px;border-radius:20px}
.service-icon{width:44px;height:44px;margin-bottom:16px}.service-icon svg{width:25px;height:25px}
.service-card strong{font-size:22px;line-height:1.2;letter-spacing:-.6px}
.service-desc{font-size:16px;line-height:1.55;margin-top:13px;max-width:calc(100% - 27px)}.service-desc br{display:none}
.card-arrow{width:40px;height:40px;bottom:18px;right:17px}.card-arrow svg{width:21px;height:21px}
.service-chart{width:275px;height:245px;top:40px;right:-30px}
.card-wash{background:linear-gradient(90deg,#eff7fdfc,#eff7fdef 40%,#edf8fe77 80%,#d6f0fa26)}
.overview{height:auto;min-height:460px;padding:46px 44px;grid-template-columns:36% 23% 41%;align-items:start}
.overview h2{font-size:36px;line-height:1.19;letter-spacing:-.9px;margin-top:15px}
.overview-copy>p:not(.eyebrow){font-size:17px;line-height:1.65;margin-top:20px;max-width:410px}.overview-copy>p br{display:none}
.overview .button.outline{font-size:16px;min-height:50px;margin-top:25px;padding:13px 23px}
.meter-art{min-height:330px;align-self:center}.meter-art>img{width:300px;left:-43px;top:4px}.meter-art>span{font-size:10px;left:0;bottom:-10px}
.overview-right{padding:4px 0 0 17px}.proof{margin-bottom:30px}.proof>div{padding:0 10px}.proof svg{width:31px;height:31px;margin-bottom:12px}.proof strong{font-size:36px;line-height:1.3}.proof span{font-size:14px;line-height:1.5;margin-top:8px}
.cooperation{padding-top:25px;gap:15px}.cooperation h3{font-size:18px;line-height:1.45}.cooperation p{font-size:16px;line-height:1.5;margin-top:9px}.cooperation a:not(.cooperation-arrow){font-size:16px;margin-top:16px;gap:17px}.cooperation-arrow{width:47px;height:47px}
.documents{padding:70px 48px;gap:65px}.documents h2{font-size:42px;margin:17px 0 23px}.documents p{font-size:18px;line-height:1.65}.documents p br{display:none}.search{padding:15px 17px}.search input{font-size:17px}.search svg{width:22px;height:22px}.docrow{font-size:18px;padding:24px 7px;gap:15px}.docrow>svg{width:23px;height:23px}.docrow small{font-size:12px}.documents .empty{font-size:17px;padding:20px 0}
.contact{padding:55px 48px;gap:45px}.contact h2{font-size:40px}.contact p{font-size:18px;line-height:1.65}.contact-phone{font-size:39px}.contact>div>span{font-size:15px}.contact-mail{font-size:19px;margin-top:23px}
footer{padding:30px 48px;font-size:14px;line-height:1.7}footer>span{font-size:12px}
dialog{width:min(590px,calc(100% - 32px));padding:44px}dialog .eyebrow{font-size:13px}dialog h2{font-size:34px;line-height:1.25}dialog p{font-size:18px;line-height:1.65}dialog .close{width:44px;height:44px;top:9px;right:9px}dialog .close svg{width:25px;height:25px}.report-mail{font-size:17px}#menu-dialog nav a{font-size:21px;padding:18px 0}
@media(min-width:1440px){header{padding:0 4vw}.hero-copy{left:4vw;max-width:calc(100% - 580px);width:640px}.hero-copy h1{font-size:72px}.lead{font-size:20px;max-width:610px}.hero{height:750px}.panel-group{right:4vw;top:157px}.benefits{left:4vw;font-size:17px}.services{padding:32px 4vw;gap:24px}.service-card{min-height:290px;padding:24px}.service-card strong{font-size:25px}.service-desc{font-size:18px}.overview{padding:50px 4vw;min-height:460px}.overview h2{font-size:40px}.overview-copy>p:not(.eyebrow){font-size:18px}.proof span{font-size:16px}.meter-art>img{width:345px;left:-43px;top:0}}
@media(max-width:1150px){header nav{display:none}.header-phone{margin-left:auto}.hero-copy{left:35px;width:520px;max-width:calc(100% - 440px)}.hero-copy h1{font-size:56px}.lead{font-size:18px}.panel-group{right:30px;width:372px}.network-panel{width:285px;padding:19px}.panel-tabs{left:293px}.panel-content h3{font-size:21px}.service-bubble{display:none}.benefits{left:35px;font-size:14px;gap:20px}.scroll-cue{display:none}.services{grid-template-columns:repeat(2,minmax(0,1fr));padding:28px 35px}.service-card{min-height:260px;padding:23px}.service-card strong{font-size:25px}.service-desc{font-size:18px;max-width:75%}.overview{padding:44px 35px;grid-template-columns:55% 45%;gap:30px}.overview h2{font-size:37px}.overview-copy>p:not(.eyebrow){font-size:18px}.meter-art{min-height:340px;align-self:center}.meter-art>img{width:330px;max-width:100%;left:0;top:0}.overview-right{grid-column:1/3;padding:0}.proof span{font-size:17px}.cooperation h3{font-size:20px}.cooperation p{font-size:18px}.documents{gap:35px;padding:55px 35px}.contact{padding:45px 35px;flex-wrap:wrap}footer{padding:30px 35px;flex-wrap:wrap}}
@media(max-width:850px){header{padding:0 26px;height:88px;gap:20px}.brand{width:174px;height:42px}.header-phone b{font-size:18px}.header-phone small{font-size:12px}.hero{height:auto;min-height:0;padding-bottom:16px}.hero-copy{position:relative;top:auto;left:auto;right:auto;padding:130px 32px 0;max-width:none;width:100%}.hero-copy .eyebrow{font-size:13px;max-width:none}.hero-copy h1{font-size:60px;line-height:1.06}.lead{font-size:19px;max-width:570px}.hero-actions .button{font-size:16px;min-height:50px}.panel-group{position:relative;top:auto;right:auto;width:402px;max-width:calc(100% - 64px);height:auto;margin:40px 32px 30px auto;transform:none}.network-panel{width:calc(100% - 90px);padding:21px}.panel-tabs{left:auto;right:0;top:39px;width:80px}.benefits{position:relative;left:auto;right:auto;bottom:auto;margin:35px 32px 16px;flex-wrap:wrap;justify-content:flex-start;font-size:15px;gap:19px}.benefits>span{gap:8px}.benefits svg{width:23px;height:23px}.hero-caption{position:relative;display:block;right:auto;bottom:auto;margin:0 32px;font-size:11px;text-align:right}.pin-1,.pin-2,.pin-3{display:none}.flow{top:370px;height:600px}.services{padding:26px;gap:20px}.service-card{min-height:280px;padding:23px 21px}.service-card strong{font-size:24px}.service-desc{font-size:17px;max-width:calc(100% - 27px)}.overview{padding:43px 32px;grid-template-columns:1fr 1fr;gap:26px}.overview h2{font-size:32px}.overview-copy>p:not(.eyebrow){font-size:17px}.meter-art{min-height:300px}.meter-art>img{width:300px;left:0;top:0}.proof strong{font-size:36px}.proof span{font-size:16px}.documents{padding:50px 32px;grid-template-columns:1fr;gap:35px}.documents h2{font-size:39px}.documents p{font-size:18px}.contact{padding:43px 32px}.contact h2{font-size:37px}.contact p{font-size:18px}footer{padding:28px 32px;font-size:14px;align-items:start}.report{font-size:14px;min-height:46px}}
@media(max-width:540px){header{padding:0 20px;height:83px;gap:14px}.brand{width:150px;height:36px}.header-phone{display:none}.report{font-size:13px;min-height:44px;padding:11px 13px;margin-left:auto;gap:6px}.report svg{display:none}.menu-trigger{width:27px}.menu-trigger svg{width:25px;height:25px}.hero-copy{padding:115px 24px 0}.hero-copy .eyebrow{font-size:12px;line-height:1.6;letter-spacing:.6px;max-width:340px}.hero-copy h1{font-size:clamp(36px,10.8vw,52px);letter-spacing:-1.5px;line-height:1.08;margin-top:19px}.lead{font-size:18px;line-height:1.65;margin-top:24px;max-width:none}.hero-actions{gap:12px;margin-top:25px;flex-direction:column}.hero-actions .button{font-size:16px;padding:14px 17px;min-height:52px;justify-content:space-between}.hero-actions svg{width:21px;height:21px}.panel-group{width:calc(100% - 48px);max-width:none;margin:37px 24px 26px}.network-panel{width:calc(100% - 80px);padding:17px;transform:none}.network-panel h2{font-size:18px;gap:7px}.network-panel h2 svg{width:19px;height:19px}.network-panel h2 span{display:none}.model-preview{height:138px}.model-preview>span{font-size:10px}.panel-content h3{font-size:21px}.panel-content p:not(.panel-eyebrow){font-size:16px;min-height:0}.panel-content p br{display:none}.panel-content .button{font-size:14px;white-space:normal;padding:12px 10px;min-height:47px;gap:6px}.panel-tabs{width:72px;padding:8px;top:30px;gap:8px}.panel-tabs button{width:54px;min-height:77px;gap:8px}.panel-tabs button span{font-size:11px}.panel-tabs button svg{width:24px;height:24px}.benefits{margin:31px 24px 19px;font-size:15px;gap:15px;flex-direction:column}.benefits svg{width:23px;height:23px}.hero-caption{font-size:11px;margin:0 24px}.flow{left:-180px;width:780px;height:610px;top:480px}.services{grid-template-columns:1fr;padding:24px;gap:20px}.service-card{min-height:266px;padding:24px}.service-card strong{font-size:25px}.service-desc{font-size:18px;max-width:calc(100% - 27px)}.service-icon{width:46px;height:46px;margin-bottom:17px}.card-arrow{width:44px;height:44px;right:20px;bottom:20px}.service-chart{width:280px;height:250px}.overview{display:block;padding:42px 24px;min-height:0}.overview h2{font-size:34px}.overview-copy>p:not(.eyebrow){font-size:18px}.overview .button.outline{font-size:16px;min-height:50px;white-space:normal}.meter-art{width:100%;height:auto;min-height:0;max-width:340px;margin:33px auto}.meter-art>img{position:relative;left:auto;top:auto;width:100%;max-width:100%}.meter-art>span{position:relative;display:block;left:auto;bottom:auto;font-size:11px;text-align:center}.overview-right{padding:0}.proof{gap:0}.proof>div{padding:0 7px}.proof strong{font-size:29px}.proof span{font-size:14px;line-height:1.45}.proof svg{width:28px;height:28px}.cooperation h3{font-size:19px}.cooperation p{font-size:17px}.cooperation a:not(.cooperation-arrow){font-size:16px}.cooperation-arrow{width:42px;height:42px}.documents{padding:43px 24px}.documents h2{font-size:36px}.documents p{font-size:18px}.search input{font-size:16px}.docrow{font-size:17px;gap:11px}.docrow small{font-size:12px}.contact{padding:42px 24px;gap:30px}.contact h2{font-size:34px}.contact p{font-size:18px}.contact-phone{font-size:34px;gap:12px}.contact-mail{font-size:18px}.contact>div>span{font-size:15px;margin-left:39px}footer{padding:27px 24px;font-size:14px;gap:22px}footer>span{font-size:12px}dialog{padding:43px 25px 29px}dialog h2{font-size:30px}dialog p{font-size:18px}dialog .button{white-space:normal;font-size:16px}}
@media(max-width:360px){header{padding:0 14px;gap:10px}.brand{width:134px;height:33px}.report{font-size:12px;padding:10px}.hero-copy{padding-left:20px;padding-right:20px}.hero-copy h1{font-size:36px}.panel-group{margin-left:20px;margin-right:20px;width:calc(100% - 40px)}.network-panel{padding:14px}.network-panel h2{font-size:16px}.panel-content h3{font-size:20px}.proof strong{font-size:26px}.proof span{font-size:13px}.contact-phone{font-size:30px}}
@media(min-width:1151px){.service-bubble{left:51%}}
.lead{text-shadow:0 2px 8px #031d2a80}
.model-preview>span,.hero-caption,.meter-art>span{font-size:12px}.panel-tabs button span{font-size:12px}
/* Finishing details: readable imagery, consistent controls, keyboard access. */
html{scrollbar-gutter:stable}
.skip-link{position:fixed;z-index:100;left:20px;top:12px;padding:12px 20px;border-radius:12px;background:#20e3ed;color:#062c40;font-size:16px;font-weight:700;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
#obsah:focus{outline:0}
:where(a,button,input):focus-visible{outline:3px solid #0dcfe2;outline-offset:5px}
header nav a{position:relative;padding:12px 0}
header nav a:after{content:'';position:absolute;left:0;right:0;bottom:3px;height:2px;border-radius:2px;background:#20e3ed;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
header nav a:hover:after,header nav a:focus-visible:after{transform:scaleX(1)}
.flow{mask-image:linear-gradient(90deg,transparent 0,transparent 40%,#000 57%)}
.hero-shade{background:linear-gradient(90deg,#042638fa 0,#062d3cdd 30%,#0d324837 62%,#092b3850),linear-gradient(0deg,#082a3ae8,transparent 48%)}
.card-wash{background:linear-gradient(90deg,#eff7fdfc 0,#eff7fdf2 42%,#edf8feae 68%,#d6f0fa16)}
.prevence .card-wash{background:linear-gradient(90deg,#eff7fdfc 0,#eff7fdf5 42%,#edf8feae 68%,transparent)}
.service-card strong{max-width:100%}.service-desc{color:#315c74}
.service-card .card-arrow svg,.docrow>svg:last-child{transition:transform .18s ease}
.service-card:hover .card-arrow svg,.service-card:focus-visible .card-arrow svg,.docrow:hover>svg:last-child{transform:translateX(3px)}
.panel-content h3{min-height:2.5em}.panel-content p:not(.panel-eyebrow){min-height:4.65em}
.search:focus-within{border-color:#079db8;box-shadow:0 0 0 3px #09bcd020}
.search input:focus-visible{outline:0}
.docrow:focus-visible{border-radius:6px}.contact-mail:hover,.cooperation a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
dialog[open]{max-height:calc(100dvh - 32px);overflow-y:auto}body:has(dialog[open]){overflow:hidden}
.report-mail{display:flex;width:fit-content;min-height:44px;align-items:center}
@media(max-width:850px){.hero-shade{background:linear-gradient(90deg,#042638ed,#072e3bc4 60%,#0b2c4385),linear-gradient(0deg,#082a3ae8,transparent 50%)}.flow{mask-image:linear-gradient(180deg,transparent,#000 40%)}}
@media(prefers-reduced-motion:reduce){header nav a:after,.service-card .card-arrow svg,.docrow>svg:last-child{transition:none}}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #0dcfe2;outline-offset:5px}
.search input:focus-visible{outline:0}
