html{scroll-behavior:smooth;scroll-padding-top:100px}button{font:inherit;cursor:pointer}.classic-skip{position:fixed;left:15px;top:-60px;background:#fff;padding:12px;z-index:100}.classic-skip:focus{top:10px}.navbar .nav-link{padding:.5rem 1rem!important}.navbar .logo img{max-height:75px;object-fit:contain}.navbar .navbar-toggler{border:1px solid #ffffff80;border-radius:4px}.navbar .quote-link{border:1px solid #1db2dd;border-radius:25px}.nav-scroll .logo{width:180px}.header .item[hidden]{display:none!important}.header .item{min-height:100vh;position:absolute;inset:0}.header .caption{padding:100px 25px 40px}.header .caption h1.tle0{color:#f8dc21}.header .caption .row{margin:0}.classic-slider-controls{position:absolute;bottom:25px;left:0;right:0;display:flex;justify-content:center;gap:12px;z-index:3}.classic-slider-controls button,.classic-gallery-controls button{border:1px solid #1db2dd;border-radius:20px;background:#fff;color:#167891;padding:7px 17px}.classic-slider-controls button{background:#0008;color:#fff;border-color:#fff8}.serviceGal{display:flex;overflow:hidden;gap:0}.serviceGal a{flex:0 0 20%;width:20%;margin:0}.serviceGal a img{width:100%;object-fit:cover}.serviceGal.is-rolling{animation:gallery-change .45s ease}.classic-gallery-controls{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.classic-gallery-controls button{font-size:13px}.classic-faq details{margin-bottom:10px;border:1px solid #a6a6a6;border-radius:3px}.classic-faq summary{padding:17px 24px;cursor:pointer;font-size:14px;font-weight:500;list-style:disclosure-closed}.classic-faq details[open] summary{background:#1db2dd96}.classic-faq details>div{padding:18px 24px;line-height:1.8}.team .owl-carousel{display:flex;gap:20px;align-items:center;justify-content:center;flex-wrap:wrap}.team .owl-carousel .item{width:135px;padding:10px}.team-img img{max-height:90px;object-fit:contain}.classic-contact input,.classic-contact select,.classic-contact textarea{width:100%;padding:12px 15px;border:1px solid #ddd;background:#fff;font-family:inherit}.classic-contact textarea{min-height:140px}.classic-contact .form-group{margin-bottom:20px}.classic-contact button{border:0}.classic-upload-link{background:#fff;padding:14px;border:1px dashed #1db2dd}.honey{display:none}.classic-notices{position:fixed;top:100px;left:20px;right:20px;z-index:20;max-width:850px;margin:auto}.classic-notice{padding:16px;background:#e7f8fd;border:1px solid #1db2dd;color:#163b47}.classic-notice.error{background:#ffefee;border-color:#b74231}.classic-footer-links{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;color:#ddd;font-size:13px}.classic-contact .butn{background:#1db2dd;color:#fff}.works .tab-pane[hidden]{display:none}.classic-faq div p{margin:0}@keyframes gallery-change{from{opacity:.4;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}@media(max-width:991px){.navbar .navbar-collapse.show{display:block;background:#fff}.navbar .navbar-collapse.show .nav-link{color:#111}.navbar .navbar-nav .nav-link{margin:6px}.navbar .navbar-nav{padding-bottom:15px}.header .caption h1{font-size:42px}.header .caption p{font-size:16px}.serviceGal a{flex-basis:33.333%;width:33.333%}}@media(max-width:575px){.header .caption h1{font-size:34px}.header .caption{padding:120px 15px 50px}.serviceGal a{flex-basis:50%;width:50%}.hero .feat-item .text-center{padding-bottom:25px}.bg-fixed{background-attachment:scroll}.navbar .logo{width:170px}.section-head h4{font-size:26px}.serviceGal a img{height:145px}.tabs-section .nav-pills .nav-link{padding:12px 16px}.tabs-section .tab-content .left .box-white{padding:30px 15px 0}.classic-faq summary{padding:15px}.classic-faq details>div{padding:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* v4: portfolio presentation and motion use the original cyan/blue theme. */
.capability-tags{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.capability-tags span{padding:9px 14px;border:1px solid #9edbef;background:#fff9;border-radius:20px;color:#136a85;font-size:13px}.service-benefits{margin:20px 0;padding-left:20px}.service-benefits li{position:relative;padding-left:17px;margin-bottom:11px;line-height:1.7;list-style:none}.service-benefits li:before{content:'✓';position:absolute;left:-3px;color:#139ac1;font-weight:700}.serviceGal{align-items:stretch;gap:18px;padding:22px 0 16px}.serviceGal a.portfolio-image{flex:0 0 calc((100% - 36px)/3);width:calc((100% - 36px)/3);padding:14px;background:#ffffffeb;border:1px solid #d2eaf2;border-radius:10px;overflow:hidden;box-shadow:0 8px 24px #174a5910;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}.serviceGal a.portfolio-image:after{display:none}.serviceGal a.portfolio-image img{height:250px;border:0;object-fit:contain;background:transparent}.serviceGal a.portfolio-image:hover{background:#fff;transform:translateY(-3px);box-shadow:0 14px 28px #174a5920}.serviceGal a.portfolio-image:hover img{opacity:1}.portfolio-caption{display:block;margin-top:14px;font-size:12px;line-height:1.5;color:#33525d;min-height:36px}.serviceGal[data-gallery-service="vector"] a.portfolio-image{flex-basis:calc((100% - 18px)/2);width:calc((100% - 18px)/2)}.serviceGal[data-gallery-service="vector"] a img{height:280px}.gallery-empty{width:100%;padding:25px;background:#fff9;border:1px dashed #8acbe0;text-align:center;border-radius:8px}.gallery-count{align-self:center;color:#456571;font-size:12px;padding:7px 3px}.classic-gallery-controls[hidden]{display:none}.classic-gallery-controls button:disabled{opacity:.45;cursor:default}.classic-gallery-controls button:hover:not(:disabled){background:#1db2dd;color:#fff}.portfolio-dialog{width:min(1200px,94vw);max-width:94vw;max-height:94vh;padding:16px;border:1px solid #c8e0e8;border-radius:12px;background:#fff;color:#173c4a;box-shadow:0 25px 100px #0005}.portfolio-dialog::backdrop{background:#102a38d9;backdrop-filter:blur(4px)}.portfolio-dialog[open]{display:flex;flex-direction:column;gap:12px;margin:auto}.portfolio-dialog img{width:100%;max-height:75vh;object-fit:contain;min-height:0;flex:1;background:#f8fbfc}.portfolio-dialog-bar{display:flex;justify-content:flex-end;gap:10px}.portfolio-dialog button{padding:9px 15px;border:1px solid #83c8de;border-radius:25px;background:#fff;color:#126a85;cursor:pointer}.portfolio-dialog button:hover{background:#e9f7fc}.portfolio-dialog p{margin:0;text-align:center;color:#355464;font-size:13px}.portfolio-image:focus-visible,.classic-gallery-controls button:focus-visible,.portfolio-dialog button:focus-visible{outline:3px solid #1db2dd;outline-offset:3px}.butn{transition:transform .2s ease,box-shadow .2s ease}.butn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #13546b20}.classic-banner-active .caption h1{animation:classic-title-in .7s ease both}.classic-banner-active .caption p{animation:classic-title-in .85s .08s ease both}.classic-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.classic-reveal-visible{opacity:1;transform:none}@keyframes classic-title-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:991px){.serviceGal a.portfolio-image{flex-basis:calc((100% - 18px)/2);width:calc((100% - 18px)/2)}.serviceGal a.portfolio-image img{height:220px}.serviceGal[data-gallery-service="vector"] a img{height:230px}}@media(max-width:575px){.serviceGal a.portfolio-image,.serviceGal[data-gallery-service="vector"] a.portfolio-image{flex-basis:100%;width:100%}.serviceGal a.portfolio-image img{height:280px}.serviceGal[data-gallery-service="vector"] a img{height:240px}.portfolio-dialog{padding:10px}.portfolio-dialog img{max-height:70vh}.classic-gallery-controls{gap:8px}.classic-gallery-controls button{padding:7px 12px}}@media(prefers-reduced-motion:reduce){.classic-reveal{opacity:1;transform:none}.butn:hover,.serviceGal a.portfolio-image:hover{transform:none}}
/* v5: isolate the viewer from Bootstrap's dialog display rule. */
.portfolio-dialog:not([open]){display:none!important}
.portfolio-dialog[open]{position:fixed!important;inset:0!important;z-index:10000;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;width:min(1100px,calc(100vw - 32px));height:min(900px,calc(100vh - 32px));max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);margin:auto!important;overflow:hidden;box-sizing:border-box;float:none;transform:none}
.portfolio-dialog[open] img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain}
.portfolio-dialog[open] .portfolio-dialog-bar{min-width:0;flex-wrap:wrap;align-items:center}.portfolio-dialog[open] p{min-width:0;max-height:4em;overflow:auto;overflow-wrap:anywhere}
html.portfolio-viewing,html.portfolio-viewing body{overflow:hidden!important}
.classic-footer{position:relative;float:none;clear:both;display:block;width:100%;max-width:100%;overflow:hidden;padding:50px 0}
.classic-footer>.container{position:static;float:none;width:min(1200px,calc(100% - 40px));max-width:1200px;margin-left:auto!important;margin-right:auto!important;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:none}
.classic-footer .logo{display:block;max-width:200px;margin:0 auto 18px;padding:0}.classic-footer .logo img{display:block;width:100%;height:auto;max-height:80px;object-fit:contain}
.classic-footer p{display:block;width:100%;max-width:100%;margin:0 0 18px;color:#ddd;letter-spacing:1px;line-height:1.8;white-space:normal;overflow-wrap:anywhere}
.classic-footer-links{width:100%;max-width:100%;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 24px}.classic-footer-links a{white-space:normal}
.contact .classic-contact label{display:block;font-size:13px;font-weight:500;line-height:1.6;color:#183c49;width:100%}
.contact .classic-contact input,.contact .classic-contact select,.contact .classic-contact textarea{background:#fff!important;color:#173845!important;border:1px solid #b7d9e4!important;border-radius:5px;box-shadow:none;outline-offset:3px;padding:11px 13px}
.contact .classic-contact input::placeholder,.contact .classic-contact textarea::placeholder{color:#6a7f88!important;opacity:1}
.contact .classic-contact input:focus,.contact .classic-contact textarea:focus,.contact .classic-contact select:focus{outline:2px solid #1db2dd!important;border-color:#1db2dd!important}
.contact .classic-contact textarea{height:auto;max-height:none;min-height:145px}.classic-format-groups fieldset{border:1px solid #c6e4ef;border-radius:6px;padding:14px;background:#ffffffed;margin-bottom:14px}.classic-format-groups fieldset[hidden]{display:none!important}.classic-format-groups legend{width:auto;font-size:13px;font-weight:600;padding:0 7px;margin:0}
.classic-format-options{display:flex;flex-wrap:wrap;gap:9px 16px}.contact .classic-contact .classic-format-options label{display:flex;align-items:center;gap:7px;width:auto;font-weight:400;cursor:pointer}.contact .classic-contact input[type=checkbox]{width:17px;height:17px;padding:0;flex:0 0 17px;accent-color:#159cc5}
.classic-file-upload{padding:16px;background:#f4fbfe;border:1px dashed #69bdd6;border-radius:6px}.contact .classic-contact input[type=file]{display:block;width:100%;margin:9px 0;font-size:13px;padding:9px;background:#fff!important}.classic-file-upload small{display:block;color:#416674;font-size:12px;font-weight:400}
.contact .classic-contact .classic-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:400}.classic-consent input{margin-top:3px}.classic-consent a{text-decoration:underline;color:#087f9f}.classic-direct-note{font-size:12px!important;color:#315f70!important;margin:12px 0 20px!important}
@supports(height:100dvh){.portfolio-dialog[open]{height:min(900px,calc(100dvh - 32px));max-height:calc(100dvh - 32px)}}
@media(max-width:575px){.portfolio-dialog[open]{width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:calc(100vh - 16px);max-height:calc(100vh - 16px);gap:8px}.classic-footer>.container{width:calc(100% - 28px)}.classic-footer p{font-size:10px;letter-spacing:.5px}.classic-footer-links{font-size:12px;gap:10px 18px}}
@media(max-width:575px){@supports(height:100dvh){.portfolio-dialog[open]{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}}}
/* v13 progressive popup: the decoded preview stays visible until HQ is ready. */
.portfolio-viewer-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;background:#f8fbfc;border-radius:8px}
.portfolio-dialog[open] .portfolio-viewer-stage img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;object-fit:contain;margin:0;background:transparent}
.portfolio-dialog[open] .portfolio-viewer-stage img[hidden]{display:none}
.portfolio-dialog .portfolio-viewer-status{position:absolute;bottom:10px;left:12px;right:12px;max-width:560px;margin:auto;padding:8px 12px;border-radius:8px;background:#fffefaeF;color:#355464;font-size:12px;line-height:1.45;box-shadow:0 2px 12px #1234}
.portfolio-dialog .portfolio-viewer-status[hidden],.portfolio-dialog button[hidden]{display:none!important}
@media(max-width:575px){.portfolio-dialog-bar{flex-wrap:wrap}.portfolio-dialog .portfolio-viewer-status{font-size:11px;bottom:6px;left:6px;right:6px}}
