.py-modern{--ink:#183650;--ocean:#0c304f;--cyan:#8cb3d4;--accent:#1769ff;--paper:#f5f6f3;font-family:'Open Sans',Arial,sans-serif;font-size:16px;color:var(--ink);background:var(--paper);line-height:1.65;margin:0}.py-modern *{box-sizing:border-box}.py-modern a{color:inherit;text-decoration:none}.py-modern img{max-width:100%;display:block}.py-modern button{font:inherit}.py-modern h1,.py-modern h2,.py-modern h3,.py-modern p{margin:0}.py-modern h1,.py-modern h2,.py-modern h3{font-family:'Plus Jakarta Sans',Arial,sans-serif}.py-modern a:focus-visible,.py-modern button:focus-visible{outline:3px solid #287b97;outline-offset:5px}.py-wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.py-main{margin:0}.py-skip{position:fixed;left:20px;top:-100px;z-index:9999;padding:12px 20px;background:white}.py-skip:focus{top:15px}.py-header{background:var(--ocean);color:white}.py-nav{height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.py-logo{display:flex;align-items:center;gap:22px}.py-logo img{width:156px;height:48px;object-fit:contain}.py-nav nav{display:flex;align-items:center;gap:32px}.py-nav nav>a{font-size:13px;font-weight:500;text-shadow:0 1px 8px rgba(1,10,18,.7)}.py-nav-quote{text-shadow:0 1px 8px rgba(1,10,18,.7)}.py-logo img{filter:drop-shadow(0 1px 6px rgba(1,10,18,.6))}.py-nav nav>a:hover{color:var(--cyan)}.py-nav-link{position:relative;padding-bottom:4px}.py-nav-link.is-active:after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:currentColor}.py-menu-toggle{display:none}.py-hero{position:relative;min-height:670px;color:white;background:var(--ocean);isolation:isolate;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.py-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.py-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,24,37,.95),rgba(4,24,37,.69) 48%,rgba(4,24,37,.2)),linear-gradient(0deg,rgba(4,24,37,.75),transparent 45%);z-index:-1}.py-hero-content{padding-top:72px;padding-bottom:95px}.py-hero-centered .py-hero-content{text-align:center;display:flex;flex-direction:column;align-items:center}.py-hero-centered .py-eyebrow{justify-content:center}.py-hero-centered .py-hero-description{margin-inline:auto}.py-hero-centered .py-actions{justify-content:center}.py-eyebrow{font-size:13px;letter-spacing:.01em;font-weight:600;display:flex;align-items:center;gap:11px;color:inherit}.py-eyebrow>span{height:1px;width:24px;background:currentColor;opacity:.45;flex-shrink:0}.py-hero h1{font-size:clamp(58px,6.8vw,100px);line-height:1.04;letter-spacing:-.065em;font-weight:500;margin:27px 0}.py-modern em{font-family:inherit;font-style:normal;font-weight:inherit;color:var(--cyan)}.py-hero-description{max-width:450px;font-size:15px;color:#d8e4e9;line-height:1.85}.py-actions{display:flex;gap:32px;align-items:center;margin-top:33px}.py-button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:16px 23px;font-size:12px;font-weight:600;min-height:52px;transition:background .2s,transform .2s}.py-button:hover{transform:translateY(-2px)}.py-modern .py-button-light{color:var(--ink);background:#f3f5f1}.py-modern .py-button-light:hover{background:var(--cyan)}.py-text-link{font-size:12px;display:flex;gap:18px;align-items:center}.py-hero-bottom{display:flex;gap:18px;align-items:center;padding-block:26px;font-size:9px;letter-spacing:.16em;color:#c7d4d9;margin-top:auto}.py-hero-tagline{font-size:9px;letter-spacing:.05em;color:#8fa3ac;opacity:.85}.py-proof{border-bottom:1px solid #d7dfe0;background:#eaf0ef}.py-proof .py-wrap{display:flex;padding-block:22px}.py-proof span{font-size:12px;font-weight:500;color:#4a6373;flex:1;padding-left:26px;border-left:1px solid #c9d6d5}.py-proof span:first-child{padding-left:0;border-left:none}.py-section{padding-block:100px}.py-section-heading{display:flex;justify-content:space-between;gap:70px;align-items:end;margin-bottom:44px}.py-section-heading>.py-eyebrow{margin-bottom:20px}.py-modern h2{font-size:clamp(32px,3.4vw,49px);letter-spacing:-.045em;line-height:1.15;font-weight:700}.py-section-heading h2{margin-top:20px}.py-section-heading>p{max-width:365px;color:#586b77;font-size:13px;line-height:1.85}.py-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.py-service{background:white;border:1px solid #dfe5e3}.py-service-photo{height:230px;position:relative;overflow:hidden;background:#dbe4e4}.py-service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.py-service:hover img{transform:scale(1.035)}.py-service-photo>span{position:absolute;top:15px;left:15px;color:white;background:#102d40;padding:4px 10px;font-size:10px}.py-service-copy{padding:26px}.py-service h3{font-size:19px;letter-spacing:-.035em;font-weight:600;display:flex;justify-content:space-between;gap:10px;align-items:center}.py-service h3 span{font-size:21px;font-weight:400}.py-service p{font-size:12px;color:#586b77;margin:13px 0 25px;line-height:1.9}.py-small-link{font-size:10px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #9bafb8;padding-bottom:5px}.py-about{padding-block:85px;background:#e8edeb}.py-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.py-about-image{height:560px;position:relative;background:var(--ocean)}.py-about-image img{width:100%;height:100%;object-fit:cover}.py-about-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#082638)}.py-about-image>span{position:absolute;bottom:30px;left:30px;color:white;z-index:1;font-size:12px;letter-spacing:.04em}.py-about-copy h2{margin:21px 0}.py-about-copy>p:not(.py-eyebrow){font-size:13px;color:#586b77;line-height:1.9}.py-about-row{display:flex;gap:22px;border-top:1px solid #cbd6d5;padding-top:20px;margin-top:25px}.py-about-row>span{font-size:10px;color:#527780;padding-top:3px}.py-about-row h3{font-size:14px;font-weight:600}.py-about-row p{font-size:12px;margin-top:5px;color:#586b77}.py-inline-link{display:inline-flex;gap:30px;font-size:12px;border-bottom:1px solid #7b959f;padding-bottom:8px;margin-top:26px}.py-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px}.py-process-grid article{border-top:1px solid #b9c9cc;padding-top:23px}.py-process-grid article>span{font-size:9px;letter-spacing:.13em;color:#526f7a}.py-process-grid h3{font-weight:600;font-size:18px;margin:22px 0 13px;letter-spacing:-.025em}.py-process-grid p{font-size:12px;color:#586b77;line-height:1.9}.py-contact{padding-block:75px 85px;background:var(--ocean);color:white}.py-contact .py-eyebrow{color:#bbd2da}.py-contact-grid{display:flex;align-items:center;justify-content:space-between;gap:50px;margin-top:23px}.py-contact h2{font-size:clamp(55px,6.5vw,88px);line-height:1.07}.py-contact-grid>div{min-width:320px}.py-contact-grid p{color:#c7d7de;font-size:13px;line-height:1.9;margin-bottom:23px}.py-phone{display:block;font-size:12px;margin-top:17px;color:#dce7eb}.py-footer{background:#f5f6f3;padding:60px 0 20px}.py-footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px;padding-bottom:55px}.py-footer-wordmark{display:inline-flex}.py-footer-wordmark img{width:230px;height:auto;object-fit:contain}.py-footer p{font-size:11px;color:#586b77;margin-top:15px;line-height:1.9}.py-footer h2{font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:19px;font-weight:600}.py-footer-top>div>a:not(.py-footer-wordmark){font-size:11px;display:block;margin-block:9px}.py-footer-bottom{border-top:1px solid #d7dfe0;padding-top:20px;display:flex;gap:30px;justify-content:space-between;font-size:9px;color:#586b77}.py-footer-bottom>span{margin-right:auto}.py-modern.admin-bar .py-header{margin-top:0}
@media(min-width:1600px){.py-hero{min-height:740px}}
@media(max-width:1050px){.py-wrap{width:calc(100% - 64px)}.py-nav nav{gap:20px}.py-about-grid{gap:40px}.py-service-photo{height:190px}.py-service-copy{padding:21px}.py-service h3{font-size:17px}}
@media(max-width:760px){.py-wrap{width:calc(100% - 40px)}.py-nav{height:80px}.py-logo img{width:135px;height:40px}.py-menu-toggle{display:flex;align-items:center;gap:15px;color:white;background:none;border:1px solid #ffffff50;padding:8px 12px;font-size:11px;min-height:44px}.py-nav nav{display:none;position:absolute;top:80px;left:0;right:0;background:#102d40;z-index:10;padding:20px;box-shadow:0 15px 25px #0003}.admin-bar .py-nav nav{top:126px}.py-nav nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.py-nav nav>a{padding:15px;font-size:14px}.py-nav-quote{margin-top:10px;justify-content:space-between}.py-hero{min-height:610px}.py-hero-content{padding-top:65px;padding-bottom:65px}.py-hero h1{font-size:64px;margin-block:24px}.py-eyebrow{font-size:12px}.py-eyebrow>span{width:16px}.py-hero-description{font-size:13px;max-width:360px}.py-hero:before{background:linear-gradient(90deg,#041825eb,#04182580),linear-gradient(0deg,#041825bd,transparent)}.py-actions{gap:22px;flex-wrap:wrap}.py-text-link{font-size:11px}.py-hero-bottom{font-size:8px;gap:15px}.py-hero-tagline{display:none}.py-proof .py-wrap{flex-direction:column;gap:10px;padding-block:18px}.py-proof span{font-size:11px;width:100%;padding-left:0!important;border-left:none!important}.py-section{padding-block:65px}.py-section-heading{display:block;margin-bottom:30px}.py-section-heading>p{margin-top:22px;max-width:100%;font-size:13px}.py-modern h2{font-size:37px}.py-service-grid{grid-template-columns:1fr;gap:25px}.py-service-photo{height:240px}.py-service-copy{padding:25px}.py-service h3{font-size:21px}.py-service p{font-size:13px}.py-about{padding-block:55px}.py-about-grid{grid-template-columns:1fr;gap:35px}.py-about-image{height:360px}.py-process-grid{grid-template-columns:1fr;gap:30px}.py-process-grid h3{margin-top:15px}.py-contact{padding-block:55px}.py-contact-grid{display:block}.py-contact h2{font-size:64px}.py-contact-grid>div{min-width:0;margin-top:30px}.py-footer{padding-top:45px}.py-footer-top{grid-template-columns:1fr 1fr;gap:35px}.py-footer-top>div:first-child{grid-column:1/-1}.py-footer-bottom{flex-wrap:wrap;gap:15px}.py-footer-bottom>span{width:100%}}
@media(prefers-reduced-motion:reduce){.py-modern *{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){.py-footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.py-footer-top>div{min-width:0}.py-footer a{overflow-wrap:anywhere}.py-hero h1{font-size:clamp(44px,12.5vw,58px);letter-spacing:-.06em}}

