@font-face{font-family:OcpMontserrat;src:url(/fonts/montserrat-400.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:OcpMontserrat;src:url(/fonts/montserrat-500.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:OcpMontserrat;src:url(/fonts/montserrat-600.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:OcpMontserrat;src:url(/fonts/montserrat-700.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:OcpAutora;src:url(/fonts/autora-subset.woff2) format("woff2");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:OcpAwesome;src:url(/fonts/fontawesome-subset.woff2) format("woff2");font-style:normal;font-weight:400;font-display:block}.public-site{background:#fff;color:#555;font:400 14px/24px Arial,Helvetica,sans-serif;min-width:0;--ocp-blue:#001d7e;--ocp-ease:cubic-bezier(0.77,0,0.175,1)}.public-site *,.public-site :after,.public-site :before{box-sizing:border-box}.public-site ::selection{color:#fff;background:#001d7e}.public-site h1,.public-site h2,.public-site h3,.public-site h4,.public-site h5{font-family:OcpMontserrat,Arial,sans-serif;font-weight:600;color:#222;letter-spacing:0;line-height:1.5}.public-site h2{font-size:28px}.public-site p{margin:0 0 20px}.public-site a{text-decoration:none;color:inherit}.public-site :is(a,button,summary,input,textarea){scroll-margin-top:110px}.public-site button{font:inherit;cursor:pointer}.public-site a:focus-visible,.public-site button:focus-visible,.public-site summary:focus-visible{outline:3px solid #176be0;outline-offset:4px}.public-site .shell{width:1200px;max-width:100%;margin-inline:auto;padding-inline:15px}.public-site .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.public-site .ocp-icon{font:normal 400 1em/1 OcpAwesome,sans-serif;display:inline-block}.public-site .icon-author,.public-site .icon-build,.public-site .icon-quality,.public-site .icon-time{font-family:OcpAutora,sans-serif}.public-site .icon-build:before{content:"\e902"}.public-site .icon-quality:before{content:"\e90c"}.public-site .icon-time:before{content:"\e90d"}.public-site .icon-author:before{content:"\e900"}.public-site .icon-home:before{content:"\f015"}.public-site .icon-phone:before{content:"\f095"}.public-site .icon-clock:before{content:"\f017"}.public-site .icon-facebook:before{content:"\f09a"}.public-site .icon-user:before{content:"\f007"}.public-site .icon-right:before{content:"\f105"}.public-site .icon-left:before{content:"\f104"}.public-site .icon-up:before{content:"\f106"}.public-site .icon-check:before{content:"\f14a"}.public-site .icon-check-circle:before{content:"\f058"}.public-site .icon-whatsapp:before{content:"\f232"}.public-site .icon-mail:before{content:"\f0e0"}.public-site .icon-pin:before{content:"\f041"}.public-site .icon-search:before{content:"\f002"}.public-site .icon-pause:before{content:"\f04c"}.public-site .icon-play:before{content:"\f04b"}.public-site .topline{background:#e9e9e9;color:#666;font:14px/24px Arial,sans-serif;letter-spacing:0}.public-site .topline .shell{min-height:49px;display:flex;justify-content:space-between;gap:18px}.public-site .topline-contacts,.public-site .topline-social{display:flex;align-items:center}.public-site .topline-contacts>*{position:relative;padding-right:18px;margin-right:17px;white-space:nowrap}.public-site .topline-contacts>:not(:last-child):after{content:"";position:absolute;right:0;top:7px;height:10px;width:2px;background:#c8c8c8}.public-site .topline a{color:#666}.public-site .topline-contacts .ocp-icon{margin-right:9px}.public-site .topline-social span{padding-right:15px;border-right:1px solid #c8c8c8;line-height:14px}.public-site .topline-social>span{display:inline-block}.public-site .topline-social a{padding:12px}.public-site .ocp-sticky{position:sticky;top:0;height:106px;z-index:100}.public-site .site-header{position:absolute;inset:0 0 auto;background:#fff;height:106px;box-shadow:1px 1px 5px rgba(0,0,0,.2);transition:height .3s ease}.public-site .header-inner{min-height:0;height:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative}.public-site .brand-logo{width:358px;max-width:100%;height:auto}.public-site .brand-link{margin-left:6px}.public-site .desktop-navigation nav>ul{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none}.public-site .desktop-navigation{margin-right:0}.public-site .desktop-navigation nav>ul>li{position:relative;padding-inline:17.5px}.public-site .desktop-navigation nav>ul>li>a{position:relative;display:block;padding:0;border:0;font:600 14px/106px OcpMontserrat,sans-serif;color:#222;text-transform:uppercase;white-space:nowrap;transition:line-height .3s ease}.public-site .desktop-navigation nav>ul>li>a:after{content:"";position:absolute;bottom:0;left:0;height:3px;width:100%;background:#001d7e;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.public-site .desktop-navigation a[aria-current=page]:after,.public-site .desktop-navigation nav>ul>li>a:hover:after{transform:scaleX(1)}.public-site .desktop-navigation .submenu-toggle{position:absolute;right:0;top:35px;width:18px;height:36px;font-size:10px;opacity:0}.public-site .desktop-navigation .submenu-toggle:focus-visible{opacity:1}.public-site .nav-submenu{position:absolute;left:0;top:100%;width:270px;max-height:65vh;overflow-y:auto;margin:0;padding:15px 0;list-style:none;background:#262626;opacity:0;visibility:hidden;transform:translateY(15px);transition:opacity .3s ease,transform .3s ease}.public-site .nav-submenu a{display:block;padding:6px 20px;font:600 13px/24px OcpMontserrat,sans-serif;color:#ccc;text-transform:none}.public-site .nav-submenu a:focus-visible,.public-site .nav-submenu a:hover{color:#fff;background:#333}.public-site .has-submenu[data-open=true]>.nav-submenu{visibility:visible;opacity:1;transform:translateY(0)}.public-site .ocp-sticky[data-compact=true] .site-header{height:85px}.public-site .ocp-sticky[data-compact=true] .desktop-navigation nav>ul>li>a{line-height:85px}.public-site .ocp-sticky[data-compact=true] .submenu-toggle{top:24px}.public-site .mobile-navigation{display:none}.public-site .header-inner .header-quote{display:inline-flex;min-height:44px;padding:10px 16px;flex-shrink:0;white-space:nowrap}.public-site .button,.public-site .button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 14px/24px OcpMontserrat,sans-serif;text-transform:uppercase;letter-spacing:.5px;border:0;border-radius:0;padding:14px 40px;background:#001d7e;color:#fff;position:relative;overflow:hidden;isolation:isolate;width:fit-content;text-decoration:none;transition:color .3s ease,transform .15s ease}.public-site .button:before{content:"";position:absolute;inset:0;z-index:-1;background:#212121;transform:scaleY(0);transition:transform .3s ease}.public-site .button-secondary:active,.public-site .button:active{transform:scale(.98)}.public-site .button-secondary,.public-site .button-white{background:#fff;color:#001d7e}.public-site .button-white:before{background:#001d7e}.public-site .button:focus-visible:before{transform:scaleY(1)}.public-site .button:focus-visible{color:#fff}.public-site .ocp-hero{position:relative;height:600px;overflow:hidden;color:#fff;background:#48515b;touch-action:pan-y}.public-site .ocp-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1s var(--ocp-ease),visibility 1s}.public-site .ocp-slide[data-active=true]{visibility:visible;opacity:1;z-index:1}.public-site .slide-picture{position:absolute;inset:0}.public-site .slide-photo{object-fit:cover;object-position:center}.public-site .slide-content{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.public-site .ocp-hero .slide-content{width:1200px;max-width:none;left:50%;transform:translateX(-50%);margin-inline:0}.public-site .slide-layer{width:100%;overflow:hidden}.public-site .slide-layer>*{margin:0}.public-site .subtitle-layer{position:absolute;top:calc(50% - 170px);left:15px;width:calc(100% - 30px)}.public-site .subtitle-layer p{font:600 20px/70px OcpMontserrat,sans-serif;text-transform:uppercase;color:#fff}.public-site .title-layer{max-width:1170px}.public-site .title-layer h2{font:700 52px/65px OcpMontserrat,sans-serif;color:#fff;text-transform:uppercase;letter-spacing:0;text-wrap:wrap;overflow-wrap:break-word}.public-site .button-layer{position:absolute;top:calc(50% + 118px);left:15px;width:calc(100% - 30px)}.public-site .button-layer .button{padding:15px 36px}.public-site .slide-left .slide-content{padding-inline:15px}.public-site .slide-left .slide-layer{transform:translateX(34px)}.public-site .slide-center .slide-content{align-items:center;text-align:center}.public-site .slide-right .slide-content{align-items:flex-end;text-align:right;padding-inline:15px}.public-site .slide-right .slide-layer{transform:translateX(14px)}.public-site .ocp-hero[data-motion=true] .ocp-slide[data-active=true] .slide-layer>*{animation:ocp-layer-in 2s var(--ocp-ease) both}.public-site .ocp-hero[data-motion=true] .ocp-slide[data-active=true] .subtitle-layer>*{animation-delay:.7s}.public-site .ocp-hero[data-motion=true] .ocp-slide[data-active=true] .button-layer>*,.public-site .ocp-hero[data-motion=true] .ocp-slide[data-active=true] .title-layer>*{animation-delay:1s}@keyframes ocp-layer-in{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.public-site .slider-controls{position:absolute;z-index:2;bottom:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px}.public-site .carousel-controls button,.public-site .slider-controls>button{width:44px;height:44px;background:#222d;color:#fff;border:1px solid #aaa;display:inline-grid;place-items:center;font-size:12px}.public-site .slide-dots,.public-site .slider-controls>button{opacity:0;transition:opacity .2s}.public-site .slide-dots{display:flex;gap:8px;align-items:center}.public-site .slide-dots button{width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:#ddd}.public-site .slide-dots button[aria-current=true]{background:#001d7e}.public-site .ocp-hero:focus-within .slide-dots,.public-site .ocp-hero:focus-within .slider-controls>button{opacity:1}.public-site .section{padding:60px 0 73px;background:#fff}.public-site .section-tint{background:#f3f4f6}.public-site .ocp-heading{text-align:center}.public-site .ocp-heading h2{margin:0;font-size:28px;line-height:58px;text-transform:uppercase}.public-site .heading-separator{display:flex;align-items:center;gap:8px;width:125px;margin-inline:auto;height:26px;color:#001d7e;font-size:22px}.public-site .heading-separator:after,.public-site .heading-separator:before{content:"";flex:1;height:1px;background:#e0e0e0}.public-site .ocp-heading>p{max-width:590px;margin:16px auto 0;font-size:16px;line-height:32px;color:#666}.public-site .ocp-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:42px}.public-site .ocp-principle{text-align:center;padding-inline:5px}.public-site .principle-icon{position:relative;display:inline-grid;place-items:center;width:95px;height:95px;border-radius:50%;background:#f5f5f5;color:#001d7e;font-size:45px;isolation:isolate}.public-site .principle-icon:before{content:"";position:absolute;inset:0;background:#001d7e;border-radius:inherit;z-index:-1;opacity:0;transform:scale(.7);transition:opacity .3s ease,transform .3s ease}.public-site .ocp-principle h3{font-size:18px;line-height:28px;text-transform:uppercase;margin:26px 0 25px}.public-site .ocp-principle p{color:#666;line-height:26px;margin:0}.public-site .welcome-section{display:grid;grid-template-columns:1fr 1fr;background:#f3f4f6}.public-site .welcome-photo{position:relative;min-height:560px}.public-site .welcome-photo img{object-fit:cover}.public-site .welcome-copy{padding:64px max(30px,calc((100vw - 1200px) / 2)) 75px 4.5%}.public-site .internal-heading,.public-site .welcome-copy h2{margin:0 0 30px;text-transform:uppercase}.public-site .internal-heading:after,.public-site .welcome-copy h2:after{content:"";display:block;width:80px;height:2px;background:#001d7e;margin-top:11px}.public-site .welcome-copy>p{font-size:16px;line-height:32px;margin-bottom:26px;max-width:450px;color:#666}.public-site .welcome-copy ul{margin:0 0 42px;padding:0;list-style:none}.public-site .welcome-copy li{margin-top:8px}.public-site .welcome-copy .ocp-icon{margin-right:13px;color:#001d7e}.public-site .internal-heading+.ocp-carousel,.public-site .ocp-heading+.ocp-carousel{margin-top:56px}.public-site .ocp-carousel{position:relative;--columns:var(--desktop);touch-action:pan-y}.public-site .carousel-window{overflow:hidden;padding:4px;margin:-4px}.public-site .carousel-track{display:flex;gap:var(--gap)}.public-site .carousel-track[data-animated=true]{transition:transform .25s ease}.public-site .carousel-slot{flex:0 0 calc((100% - (var(--columns) - 1) * var(--gap)) / var(--columns));min-width:0}.public-site .carousel-controls{position:absolute;right:0;top:-48px;display:flex;gap:8px;opacity:0;transition:opacity .2s}.public-site .ocp-carousel:focus-within .carousel-controls{opacity:1}.public-site .carousel-controls button{background:#fff;color:#222;border-color:#666}.public-site .section-button{text-align:center;margin-top:50px}.public-site .service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.public-site .service-card{border:0;border-radius:4px;background:#fff;box-shadow:0 3px 12px rgb(0 29 126/6%)}.public-site .card-photo{overflow:hidden;position:relative;aspect-ratio:370/250}.public-site .card-photo img{width:100%;height:100%;object-fit:cover;transition:none;transform:none}.public-site .card-photo:after{content:"";position:absolute;inset:0;background:#0006;opacity:0;transform:translateY(50%) skewX(-6deg);transition:opacity .3s ease,transform .3s ease}.public-site .card-copy{padding:28px 8px 28px 19px;position:relative}.public-site .card-copy h3{margin:0;font-size:16px;line-height:26px;font-weight:600;text-transform:uppercase}.public-site .card-copy p{margin:15px 0 0;color:#666;line-height:26px}.public-site .text-link{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:#001d7e;font:500 14px/26px OcpMontserrat,sans-serif}.public-site .service-card-home .card-copy{background:#f5f5f7;min-height:65px;padding:0 65px 0 21px;display:flex;align-items:center}.public-site .service-card-home h3{font-size:16px;font-weight:500;line-height:24px}.public-site .service-arrow{position:absolute;right:0;top:0;bottom:0;width:65px;display:grid;place-items:center;color:#666;background:#e2e2ea;font-size:20px;transition:background .3s,color .3s}.public-site .service-card a:focus-visible .card-photo:after{opacity:1;transform:none}.public-site .projects-band{background:#333 url(/_next/image?url=%2Fimages%2Fvisual%2Fprojects.jpg&w=1920&q=75) 50%/cover fixed;position:relative;isolation:isolate}@supports (background-image:image-set(url("/images/visual/projects.avif") type("image/avif"))){.public-site .projects-band{background-image:image-set(url("/images/visual/projects.avif") type("image/avif"),url("/_next/image?url=%2Fimages%2Fvisual%2Fprojects.jpg&w=1920&q=75") type("image/webp"))}}.public-site .projects-band:before{content:"";position:absolute;inset:0;background:rgba(40,42,48,.8);z-index:-1}.public-site .projects-band>.ocp-heading{margin-bottom:30px}.public-site .projects-band .ocp-carousel{margin-inline:15px}.public-site .heading-light .heading-separator,.public-site .heading-light h2{color:#fff}.public-site .project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.public-site .projects-list-shell{width:99%;margin-inline:auto}.public-site .project-card{position:relative;overflow:hidden;background:#333}.public-site .project-card>a{display:block;color:#fff;position:relative}.public-site .project-photo{aspect-ratio:370/235;overflow:hidden}.public-site .project-photo img{width:100%;height:100%;object-fit:cover;transform:none}.public-site .project-copy{position:absolute;inset:0;padding:20px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#fff;background:#000b;opacity:0;transform:translateY(50%) skewX(-6deg);transition:opacity .3s,transform .3s}.public-site .project-copy h3{font-size:18px;line-height:27px;color:#fff;text-transform:uppercase}.public-site .project-search{width:40px;height:40px;display:grid;place-items:center;background:#001d7e;margin-top:15px}.public-site .project-card a:focus-visible .project-copy{opacity:1;transform:none}.public-site .whatsapp-band{background:#001d7e url(/images/visual/whatsapp-band.png) 50%/cover no-repeat;padding:40px 0 31px;color:#fff}.public-site .whatsapp-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}.public-site .whatsapp-band h2{margin:0;color:#fff;text-transform:uppercase;font-size:24px}.public-site .whatsapp-band .button{padding:12px 20px;white-space:nowrap;font-family:Arial,sans-serif;font-size:14px;text-transform:none}.public-site .whatsapp-band img{width:28px;height:auto}.public-site .clients-section .ocp-heading{margin-bottom:39px}.public-site .client-logo{border:1px solid #f2f2f2;background:#fff;min-height:140px;padding:23px 0 15px;display:grid;place-items:center}.public-site .client-logo img{max-width:158px;max-height:70px;width:auto;height:auto;object-fit:contain;transition:transform .3s ease}.public-site .client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.public-site .client-record{min-width:0}.public-site .client-logo h2{font-size:14px;margin:10px 0 0}.public-site .client-grid .client-logo{width:350px;max-width:100%;min-height:270px;border:0;padding:0;margin-inline:auto}.public-site .client-record h2{margin:28px 0;font-size:16px;line-height:26px;text-align:center}.public-site .contact-cta{padding:60px 0;background:#f3f5fa;color:#3d465c}.public-site .contact-cta>.shell{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:48px;align-items:center}.public-site .contact-cta h2{font-size:28px;line-height:1.3;color:#001d7e;text-transform:uppercase;margin:0 0 14px}.public-site .contact-cta p{font-size:14px;line-height:26px;margin:0;max-width:65ch}.public-site .contact-cta .button{padding:11px 30px}.public-site .contact-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;grid-column:2;grid-row:1/3}.public-site .site-footer{background:#222 url(/images/visual/footer.jpg) 50%/cover no-repeat;color:#b5b5b5}.public-site .footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding-block:79px 72px}.public-site .footer-grid h2{font-size:14px;line-height:21px;letter-spacing:1.3px;text-transform:uppercase;color:#fff;margin:2px 0 24px}.public-site .footer-grid h2:after{content:"";display:block;height:2px;width:40px;background:#001d7e;margin-top:8px}.public-site .footer-grid p{font:400 14px/24px OcpMontserrat,sans-serif;max-width:none;margin:0}.public-site .footer-brand{display:block;background:none;width:234px;max-width:100%;margin:0 auto}.public-site .footer-brand img{width:234px;height:auto}.public-site .footer-contacts{background:url(/images/visual/footer-map.png) 100% 100% no-repeat}.public-site .footer-grid .footer-contacts>a{flex-direction:row}.public-site .footer-contacts address,.public-site .footer-contacts>a,.public-site .footer-mails{display:flex;align-items:flex-start;gap:14px;font:normal 400 12px/20px OcpMontserrat,sans-serif;margin:7px 0 0;color:#ddd}.public-site .footer-contacts .ocp-icon{width:25px;height:25px;display:grid;place-items:center;flex-shrink:0;background:#1d1d1d;color:#fff;font-size:17px}.public-site .footer-mails a{display:block;overflow-wrap:anywhere}.public-site .footer-bottom{display:block;padding:26px 0 28px;margin:0;border:0;background:#1d1d1d;color:#b5b5b5;font:13px/26px Arial,sans-serif}.public-site .ocp-scroll-top{position:fixed;z-index:110;right:14px;bottom:23px;width:35px;height:35px;background:#3e3e3e;color:#fff;font-size:18px}.public-site .contact-dock,.public-site .ocp-scroll-top[hidden]{display:none}.public-site .page-intro{padding:0;background:#f2f2f2;border:0}.public-site .page-intro>.shell{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}.public-site .page-intro h1{font-size:18px;line-height:24px;font-weight:600;color:#222;max-width:65%;margin:0;text-align:right;text-transform:none}.public-site .breadcrumbs{margin:0;color:#666;font-size:14px;line-height:24px}.public-site .breadcrumbs ol{display:flex;flex-wrap:wrap;gap:0;padding:0;margin:0;list-style:none}.public-site .breadcrumbs li{display:flex;align-items:center}.public-site .breadcrumbs li>span[aria-hidden]{font-size:0;padding:0 10px}.public-site .breadcrumbs li>span[aria-hidden]:after{content:"|";font-size:14px;color:#777}.public-site .body-copy{color:#666;font-size:14px;line-height:26px;margin:28px 0}.public-site .prose-text{white-space:pre-line}.public-site .about-intro{margin-top:28px;text-align:justify}.public-site .internal-heading{font-size:22px;line-height:33px}.public-site .about-page .ocp-principle{border:1px solid #f2f2f2;padding:33px 15px 25px}.public-site .about-accordions{margin-top:38px}.public-site .about-accordions details{margin-top:8px;border:1px solid #e8e8e8;background:#fafafb}.public-site .about-accordions summary{padding:14px 20px;font:600 16px/24px OcpMontserrat,sans-serif;text-transform:uppercase;cursor:pointer}.public-site .about-accordions details>p{padding:6px 20px 18px;margin:0;line-height:26px}.public-site .service-detail-intro{display:grid;grid-template-columns:1fr 1fr;background:#f7f7f7;min-height:390px}.public-site .service-detail-copy{padding:50px 42px;min-width:0}.public-site .service-detail-copy h2{text-transform:uppercase;font-size:28px;line-height:39px}.public-site .service-detail-copy h2:after{content:"";display:block;width:80px;height:2px;margin-top:20px;background:#001d7e}.public-site .service-detail-copy>p{margin-top:33px;line-height:24px}.public-site .service-detail-photo{position:relative;min-height:330px;min-width:0;overflow:hidden}.public-site .service-detail-photo img{width:100%;height:100%;object-fit:cover}.public-site .serralheria-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.public-site .service-quote-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:28px;min-width:0;max-width:100%}.public-site .service-quote-actions .button{min-width:0;max-width:100%;gap:10px}.public-site .service-quote-icon{width:22px;height:22px;flex-shrink:0;display:block}.public-site .button-whatsapp{background:#075e54;color:#fff}.public-site .button-whatsapp:before{background:#054c44}.public-site .button-whatsapp:focus-visible,.public-site .button-whatsapp:hover{background:#054c44;color:#fff}.public-site .serralheria-support{margin:8px 0 0;max-width:720px}.public-site .serralheria-support img{width:100%;height:auto}.public-site .service-items h2{font-size:18px;text-transform:uppercase;margin-bottom:25px}.public-site .service-items li{position:relative;border:0;padding:6px 0 6px 25px}.public-site .service-items li:before{content:"\f058";font-family:OcpAwesome,sans-serif;position:absolute;left:0;color:#001d7e}.public-site .filter-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:25px;margin:0 0 40px}.public-site .filter-nav a{padding:8px 0;background:none;border:0;border-radius:0;color:#555;font:600 14px/24px OcpMontserrat,sans-serif;text-transform:uppercase}.public-site .filter-nav a[aria-current=page]{color:#001d7e;background:none;box-shadow:inset 0 -2px #001d7e}.public-site .project-detail-grid{display:grid;grid-template-columns:28.7% minmax(0,1fr);gap:35.5px}.public-site .project-detail-grid>*{min-width:0}.public-site .related-projects{margin-top:58px;padding-top:46px;border-top:1px solid #eee}.public-site .project-info h2{text-transform:uppercase;font-size:22px;line-height:62px}.public-site .project-info h2:after{content:"";display:block;width:80px;height:2px;background:#001d7e}.public-site .project-info dl{display:grid;gap:0;margin-top:15px}.public-site .project-info dl>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #eee;padding:12px 0}.public-site .project-info dt{color:#222}.public-site .project-info dd{color:#666;text-align:right}.public-site .project-info h3{font-size:20px;text-transform:uppercase;margin:38px 0 30px}.public-site .project-category{display:block;padding:13px 25px;margin-bottom:10px;background:#f2f2f2}.public-site .ocp-gallery{padding-top:21px}.public-site .gallery-main{position:relative;touch-action:pan-y;background:#f2f2f2}.public-site .gallery-main img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.public-site .gallery-main>button{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#fff;color:#222;box-shadow:1px 2px 6px #0003}.public-site .gallery-prev{left:15px}.public-site .gallery-next{right:15px}.public-site .gallery-thumbs{display:flex;gap:10px;margin-top:10px;overflow-x:auto;padding:4px}.public-site .gallery-thumbs button{flex:0 0 calc((100% - 30px) / 4);min-width:80px;max-width:185px;border:2px solid transparent;opacity:.75}.public-site .gallery-thumbs button[aria-current=true]{border-color:#001d7e;opacity:1}.public-site .gallery-thumbs img{width:100%;aspect-ratio:16/9;object-fit:cover}.public-site .gallery-nojs a{display:block;margin-top:20px}.public-site .gallery-nojs img{width:100%;height:auto}.public-site .gallery-status{margin:8px 0 0;font-size:12px;color:#666}.public-site .project-description{margin-top:40px}.public-site .project-description h2{font-size:18px;text-transform:uppercase;margin:0 0 28px}.public-site .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.public-site .contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 2%;padding:22px;border-radius:4px;background:#fff;box-shadow:0 4px 24px rgb(0 29 126/8%)}.public-site .contact-form h2{font-size:22px;text-transform:uppercase;margin:0}.public-site .contact-form h2:after{content:"";display:block;width:80px;height:2px;background:#001d7e;margin-top:11px}.public-site .contact-form>button,.public-site .contact-form>div:has(textarea),.public-site .contact-form>h2,.public-site .contact-form>p{grid-column:1/-1}.public-site .contact-form label{font:400 12px/20px Arial,sans-serif;margin-bottom:5px}.public-site .contact-form input,.public-site .contact-form textarea{border:1px solid #d5d5d5;border-radius:0;background:#fafafb;font:400 14px/24px Arial,sans-serif;color:#555;padding:10px 15px}.public-site .contact-form textarea{height:188px;min-height:188px;resize:vertical}.public-site .contact-form .field-help{margin:6px 0 0;color:#555;font-size:12px;line-height:20px}.public-site .contact-form :is(input,textarea)::placeholder{color:#666;opacity:1}.public-site .contact-form .button{padding:19px 35px;margin-top:0}.public-site .contact-form .field-error{margin:0;color:#a31621;font-size:12px;line-height:20px}.public-site .contact-form .field-error:empty{display:none}.public-site .contact-channels>h2{font-size:22px;text-transform:uppercase;margin:0 0 36px}.public-site .contact-channels>h2:after{content:"";display:block;width:80px;height:2px;background:#001d7e;margin-top:11px}.public-site .contact-channels article{display:flex;gap:14px;padding:0;margin-bottom:22px}.public-site .contact-channels article>.ocp-icon{width:25px;height:25px;background:#f2f2f2;color:#666;display:grid;place-items:center;font-size:17px;flex-shrink:0}.public-site .contact-channels h3{font-size:14px;margin:0 0 8px}.public-site .contact-channels address,.public-site .contact-channels p{font:normal 14px/24px Arial,sans-serif;color:#666;margin:0}.public-site .contact-channels a:not(.text-link){display:block;color:#555;margin:0;font-size:14px;overflow-wrap:anywhere}.public-site .pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px;margin-top:45px;font-size:14px}.public-site .pagination .button-secondary{font-size:13px;padding:10px 18px;background:#f2f2f2}.public-site .empty-state{text-align:center;background:#f7f7f7;padding:40px 20px}@media (hover:hover) and (pointer:fine){.public-site .button:hover:before{transform:scaleY(1)}.public-site .button:hover{color:#fff}.public-site .ocp-carousel:hover .carousel-controls,.public-site .ocp-hero:hover .slide-dots,.public-site .ocp-hero:hover .slider-controls>button{opacity:1}.public-site .ocp-principle:hover .principle-icon:before{opacity:1;transform:scale(1)}.public-site .ocp-principle:hover .principle-icon{color:#fff}.public-site .service-card:hover .card-photo:after{opacity:1;transform:none}.public-site .service-card{transition:box-shadow .18s ease}.public-site .service-card:hover{box-shadow:2px 4px 8px rgba(0,29,126,.12)}.public-site .service-card:hover .service-arrow{background:#001d7e;color:#fff}.public-site .project-card:hover .project-copy{opacity:1;transform:none}.public-site .client-logo:hover img{transform:scale(1.5)}.public-site .ocp-scroll-top:hover{background:#001d7e}}@media (min-width:1200px){.public-site .header-inner>.brand-link{flex:0 0 280px}.public-site .header-inner .brand-logo{width:280px}}@media (max-width:1199px){.public-site .shell{width:970px}.public-site .brand-logo{width:300px}.public-site .desktop-navigation{margin-right:28px}.public-site .header-inner .header-quote{display:none}.public-site .desktop-navigation nav>ul>li{padding-inline:10px}.public-site .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1183px){.public-site .ocp-hero .slide-content{width:1000px}}@media (max-width:975px){.public-site .ocp-hero .slide-content{width:790px}.public-site .title-layer h2{font-size:42px;line-height:45px}}@media (max-width:999px){.public-site .ocp-carousel{--columns:var(--tablet)}}@media (max-width:991px){.public-site .shell{width:750px}.public-site .contact-cta>.shell{grid-template-columns:minmax(0,1fr)}.public-site .contact-cta-actions{grid-column:auto;grid-row:auto;justify-content:flex-start;margin-top:24px}.public-site .topline .shell{justify-content:center}.public-site .desktop-navigation,.public-site .topline-contacts{display:none}.public-site .mobile-navigation{display:block;position:static}.public-site .brand-logo{width:358px}.public-site .mobile-navigation>summary{position:absolute;right:6px;top:50%;transform:translateY(-50%);list-style:none;width:44px;height:44px;padding:10px 9px;display:grid;place-items:center;cursor:pointer;color:#001d7e}.public-site .mobile-navigation>summary::-webkit-details-marker{display:none}.public-site .hamburger{width:26px;height:3px;background:#001d7e;position:relative;display:block;transition:background .2s}.public-site .hamburger:after,.public-site .hamburger:before{content:"";position:absolute;width:26px;height:3px;background:#001d7e;left:0;transition:transform .3s}.public-site .hamburger:before{transform:translateY(-7px)}.public-site .hamburger:after{transform:translateY(7px)}.public-site .mobile-navigation[open] .hamburger{background:transparent}.public-site .mobile-navigation[open] .hamburger:before{transform:rotate(45deg)}.public-site .mobile-navigation[open] .hamburger:after{transform:rotate(-45deg)}.public-site .mobile-navigation nav{position:absolute;top:100%;left:0;right:0;background:#f6f6f6;padding:0;box-shadow:1px 4px 5px #0002;max-height:min(70vh,calc(100vh - 155px));overscroll-behavior:contain;overflow:auto}.public-site .mobile-navigation:not([open]) nav{display:none}.public-site .mobile-navigation nav ul{margin:0;padding:0;list-style:none;display:block}.public-site .mobile-navigation nav>ul>li{position:relative;border-top:1px solid #e5e5e5}.public-site .mobile-navigation nav>ul>li>a{display:block;padding:15px 50px 15px 20px;color:#555;font:600 14px/18px OcpMontserrat,sans-serif;text-transform:uppercase}.public-site .mobile-navigation .submenu-toggle{position:absolute;top:0;right:12px;height:48px;width:44px;color:#555}.public-site .mobile-navigation .nav-submenu{display:none;position:static;width:auto;max-height:none;background:#eee;opacity:1;visibility:visible;transform:none}.public-site .mobile-navigation .has-submenu[data-open=true] .nav-submenu{display:block}.public-site .mobile-navigation .nav-submenu a{color:#555;padding-left:35px}.public-site .ocp-hero{height:500px}.public-site .ocp-hero .slide-content,.public-site .slide-left .slide-content,.public-site .slide-right .slide-content{width:100%;max-width:100%;left:auto;transform:none;align-items:center;justify-content:center;text-align:center;padding:24px 18px 72px;gap:clamp(8px,2.2vw,16px)}.public-site .ocp-hero .slide-layer{transform:none;flex-shrink:0;min-height:min-content;width:100%;max-width:100%}.public-site .ocp-hero .button-layer,.public-site .ocp-hero .subtitle-layer,.public-site .ocp-hero .title-layer{position:static;inset:auto}.public-site .ocp-hero .subtitle-layer p{font-size:clamp(16px,2.6vw,20px);line-height:1.35}.public-site .ocp-hero .title-layer h2{font-size:clamp(24px,5.6vw,42px);line-height:1.25}.public-site .ocp-hero .button-layer{display:flex;justify-content:center}.public-site .ocp-hero .button-layer .button{max-width:100%;white-space:normal;text-align:center}.public-site .ocp-hero .slide-dots,.public-site .ocp-hero .slider-controls>button{opacity:1}.public-site .ocp-hero .slide-dots{display:flex}.public-site .ocp-hero .slide-dots button,.public-site .ocp-hero .slide-dots button[aria-current=true]{width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;display:grid;place-items:center}.public-site .ocp-hero .slide-dots button:before{content:"";width:12px;height:12px;box-sizing:border-box;border-radius:50%;border:2px solid #fff;background:#ddd}.public-site .ocp-hero .slide-dots button[aria-current=true]:before{background:#001d7e}.public-site .contact-form input,.public-site .contact-form textarea{width:100%;max-width:100%;font-size:16px}.public-site .project-detail-grid{grid-template-columns:1fr}.public-site .projects-band{background-attachment:scroll}.public-site .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-site .footer-grid{padding-block:60px}}@media (max-width:767px){.public-site .shell{width:100%}.public-site .brand-logo{width:358px}.public-site .header-inner{gap:10px}.public-site .brand-link{margin-left:6px;min-width:0;width:min(358px,calc(100% - 64px));max-width:calc(100% - 64px)}.public-site .slide-content,.public-site .slide-left .slide-content,.public-site .slide-right .slide-content{padding-inline:18px;align-items:center;text-align:center}.public-site .ocp-slide .slide-layer{transform:none}.public-site .ocp-hero .slide-content{width:100%}.public-site .button-layer .button{padding:15px 20px;font-size:14px}.public-site .slider-controls{bottom:8px}.public-site .slider-controls>button{opacity:1}.public-site .section{padding-block:60px}.public-site .ocp-principles{grid-template-columns:1fr;gap:35px}.public-site .ocp-principle p{max-width:500px;margin-inline:auto}.public-site .welcome-section{grid-template-columns:1fr}.public-site .welcome-photo{min-height:330px}.public-site .welcome-copy{padding:60px 25px}.public-site .contact-grid,.public-site .service-grid{grid-template-columns:1fr}.public-site .client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-site .card-copy{padding-inline:15px}.public-site .service-detail-intro{grid-template-columns:1fr}.public-site .service-detail-copy{padding:40px 20px}.public-site .service-detail-photo{min-height:330px}.public-site .whatsapp-band{padding-block:40px}.public-site .whatsapp-band h2{font-size:18px}.public-site .whatsapp-inner{flex-wrap:wrap}.public-site .footer-grid{grid-template-columns:1fr;gap:35px}.public-site .footer-grid>div{grid-column:auto}.public-site .footer-grid p{max-width:500px}.public-site .footer-brand-column{padding-bottom:15px}.public-site .footer-bottom{text-align:center}.public-site .page-intro>.shell{gap:10px}.public-site .page-intro h1{font-size:16px}.public-site .contact-grid{gap:55px}.public-site .gallery-thumbs button{flex-basis:calc((100% - 20px) / 3)}.public-site .service-quote-actions{width:100%}.public-site .service-quote-actions .button{width:100%;flex-basis:100%;padding:12px 16px;white-space:normal}.public-site .body-copy,.public-site .card-copy h3,.public-site .footer-contacts address,.public-site .footer-grid p,.public-site .page-intro h1,.public-site .project-copy h3,.public-site .project-info dd,.public-site .project-info h2,.public-site .service-detail-copy h2,.public-site .service-items li,.public-site .whatsapp-band h2{overflow-wrap:anywhere}.public-site .service-detail-copy h2{font-size:clamp(22px,7vw,28px);line-height:1.25}.public-site .project-info h2{line-height:1.3}.public-site .whatsapp-band .button{white-space:normal;text-align:center;max-width:100%}.public-site .filter-nav a{min-height:44px;display:inline-flex;align-items:center}.public-site .footer-mails a{min-height:44px}.public-site .footer-grid .footer-contacts>a{min-height:44px;align-items:center}.public-site{padding-bottom:calc(72px + env(safe-area-inset-bottom, 0px))}.public-site .contact-dock{position:fixed;z-index:105;left:0;right:0;bottom:0;display:flex;gap:8px;padding:8px calc(8px + env(safe-area-inset-right, 0px)) calc(8px + env(safe-area-inset-bottom, 0px)) calc(8px + env(safe-area-inset-left, 0px));background:#fff;border-top:1px solid #eee;box-shadow:0 -1px 4px rgba(0,0,0,.06)}.public-site .contact-dock .button{flex:1 1 0;min-width:0;min-height:44px;padding:10px 8px}.public-site .contact-dock .button:focus-visible{outline-offset:2px}.public-site .ocp-scroll-top{bottom:calc(80px + env(safe-area-inset-bottom, 0px))}.public-site .contact-cta-actions .button{width:100%;max-width:100%}.public-site .contact-cta>.shell{display:block}.public-site .contact-cta-actions{margin-top:24px}.public-site:where(:has(.mobile-navigation[open])) .contact-dock{display:none}html:has(.public-site){scroll-padding-bottom:calc(88px + env(safe-area-inset-bottom, 0px))}body:has(.contact-form) .public-site{padding-bottom:0}body:has(.contact-form) .public-site .contact-dock{display:none}body:has(.contact-form) .public-site .ocp-scroll-top{bottom:calc(23px + env(safe-area-inset-bottom, 0px))}}@media (max-width:791px){.public-site .slide-right .slide-layer{transform:none}}@media (max-width:599px){.public-site .ocp-carousel{--columns:1}.public-site .client-grid,.public-site .project-grid{grid-template-columns:1fr}.public-site .page-intro>.shell{min-height:88px;flex-direction:column;align-items:start;justify-content:center;gap:4px}.public-site .page-intro h1{max-width:100%;text-align:left}.public-site .contact-form{grid-template-columns:1fr}.public-site .ocp-heading h2{font-size:28px}.public-site .filter-nav{gap:15px}.public-site .gallery-thumbs button{flex-basis:calc((100% - 10px) / 2)}}@media (max-width:767px) and (max-height:420px){.public-site{padding-bottom:env(safe-area-inset-bottom,0)}.public-site .contact-dock{display:none}.public-site .ocp-scroll-top{bottom:calc(23px + env(safe-area-inset-bottom, 0px))}}@media (hover:none){.public-site .project-copy{opacity:1;transform:none;inset:auto 0 0;padding:10px;background:#000b}.public-site .project-copy h3{font-size:14px}.public-site .project-search{display:none}.public-site .carousel-controls{opacity:1}}@media (prefers-reduced-motion:reduce){.public-site *,.public-site :after,.public-site :before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.public-site .projects-band{background-attachment:scroll}.public-site .slide-layer>*{transform:none!important;opacity:1!important}}@supports (height:100dvh){@media (max-width:991px){.public-site .mobile-navigation nav{max-height:min(70dvh,calc(100dvh - 155px))}}}