
body{margin:0;font-family:Poppins,sans-serif;color:#0f172a;background:#fff}
a{color:#2f5c84}a:hover{color:#193c56}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px;box-sizing:border-box}
.nav a{color:#334155;text-decoration:none;font-size:14px;font-weight:500;padding:10px 4px}
.nav a:hover{color:#193c56}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:12px;font:inherit;font-size:15px;font-weight:600;text-decoration:none;border:1px solid transparent;box-sizing:border-box;cursor:pointer}
.btn.pri{background:#65b786;color:#0d2a1c}.btn.pri:hover{background:#78c597;color:#0d2a1c}
.btn.navy{background:#193c56;color:#fff}.btn.navy:hover{background:#2f5c84;color:#fff}
.btn.ghost{border-color:rgba(255,255,255,.35);color:#fff}.btn.ghost:hover{background:rgba(255,255,255,.08);color:#fff}
.btn.line{border-color:#cbd5e1;color:#193c56;background:#fff}
.tag{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#367750}
h2.sec{font-size:clamp(28px,3.4vw,40px);line-height:1.15;margin:8px 0 0;color:#193c56;font-weight:600;letter-spacing:-.01em}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:24px;box-sizing:border-box}
.muted{color:#5b6b7c}
.ph{background:#e9eef4;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#475569;font-size:13px;text-align:center;padding:12px;box-sizing:border-box}
.foot a{color:#c9d6e3;text-decoration:none;font-size:14px}.foot a:hover{color:#fff}
.logos{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logo-track{display:flex;gap:64px;padding-right:64px;flex:none;animation:logo-scroll 45s linear infinite}
.logos:hover .logo-track{animation-play-state:paused}
@keyframes logo-scroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media (prefers-reduced-motion: reduce){.logo-track{animation:none}.logos{flex-wrap:wrap;justify-content:center;-webkit-mask-image:none;mask-image:none}.logo-track[aria-hidden="true"]{display:none}.logo-track{flex-wrap:wrap;justify-content:center;gap:24px 48px;padding-right:0}}
.nav a.on{color:#193c56;font-weight:600;box-shadow:inset 0 -2px 0 #65b786}
*,*::before,*::after{box-sizing:border-box}
img,video{max-width:100%}
html{-webkit-text-size-adjust:100%}
body{overflow-x:hidden}
#fe-main{overflow-x:clip}
.fe-skip{position:absolute;left:-9999px;top:0;z-index:1000;background:#193c56;color:#fff;padding:10px 16px;border-radius:0 0 10px 0}
.fe-skip:focus{left:0}
/* Header */
.fe-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #e2e8f0}
.fe-header-row{display:flex;align-items:center;gap:24px;min-height:76px;padding-top:10px;padding-bottom:10px}
.fe-logo img{height:40px;width:auto;display:block}
.fe-menu{display:flex;align-items:center;gap:24px;flex:1}
.fe-menu .nav{display:flex;gap:22px;flex-wrap:wrap;flex:1}
.fe-cta{min-height:44px}
.fe-burger{display:none;margin-left:auto;width:44px;height:44px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.fe-burger span{display:block;width:20px;height:2px;background:#193c56;border-radius:2px;transition:transform .2s,opacity .2s}
.fe-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.fe-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.fe-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:1040px){
 .fe-burger{display:flex}
 .fe-menu{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 12px 24px rgba(15,42,62,.08);flex-direction:column;align-items:stretch;gap:12px;padding:12px 24px 20px}
 .fe-menu.open{display:flex}
 .fe-menu .nav{flex-direction:column;gap:0}
 .fe-menu .nav a{padding:14px 4px;font-size:16px;border-bottom:1px solid #eef2f6}
 .fe-menu .nav a.on{box-shadow:inset 3px 0 0 #65b786;padding-left:12px}
 .fe-cta{width:100%}
 .fe-header{position:relative}
}
/* Default page content (pages not from the design) */
.fe-default{padding-top:48px;padding-bottom:80px}
.fe-default h1{color:#193c56;font-size:clamp(30px,4vw,44px);line-height:1.15}
.fe-entry{font-size:16px;line-height:1.7;color:#334155}
/* Work modal */
.fe-modal[hidden]{display:none}
.fe-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto}
.fe-modal-bg{position:fixed;inset:0;background:rgba(15,42,62,.6)}
.fe-modal-box{position:relative;background:#fff;border-radius:20px;width:100%;max-width:880px;box-shadow:0 30px 80px rgba(0,0,0,.3);margin:auto 0}
.fe-note{display:flex;flex-direction:column;gap:6px;background:#f4f7fa;border:1px solid #e2e8f0;border-radius:14px;padding:16px}
.fe-note[hidden]{display:none}
.fe-m-tag{display:inline-flex;background:#eef4f9;color:#193c56;font-size:13px;font-weight:500;border-radius:99px;padding:6px 12px}
.th img{width:100%;height:100%;object-fit:cover;display:block}
body.fe-noscroll{overflow:hidden}
.wcard[hidden]{display:none}
/* Estimate form */
.fe-form{display:flex;flex-direction:column;gap:18px}
.fe-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:500;color:#193c56}
.fe-form input[type=text],.fe-form input[type=email],.fe-form input[type=tel],.fe-form select,.fe-form textarea{font:inherit;font-size:16px;font-weight:400;color:#0f172a;border:1px solid #cbd5e1;border-radius:12px;padding:12px 14px;min-height:48px;background:#fff;width:100%}
.fe-form textarea{min-height:120px;resize:vertical}
.fe-form input:focus,.fe-form select:focus,.fe-form textarea:focus{outline:3px solid rgba(101,183,134,.45);border-color:#65b786}
.fe-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px}
.fe-stage{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0}
.fe-stage legend{font-size:14px;font-weight:500;color:#193c56;margin-bottom:8px;padding:0}
.fe-stage label{flex-direction:row;cursor:pointer}
.fe-stage input{position:absolute;opacity:0;width:1px;height:1px}
.fe-stage span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #cbd5e1;border-radius:99px;font-size:14px;color:#334155;background:#fff}
.fe-stage input:checked+span{background:#193c56;border-color:#193c56;color:#fff}
.fe-stage input:focus-visible+span{outline:3px solid #65b786;outline-offset:2px}
.fe-check{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:400!important;color:#334155!important}
.fe-check input{width:20px;height:20px;margin:2px 0 0;accent-color:#193c56;flex:none}
.fe-hp{position:absolute!important;left:-9999px!important}
.fe-err{background:#fdecec;color:#8a1c1c;border-radius:12px;padding:12px 16px;font-size:14px}
.fe-sent{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
/* Phones and tablets */
@media (max-width:900px){
 [style*="height: 520px"],[style*="height:520px"]{height:360px!important}
 [style*="min-height: 520px"]{min-height:0!important}
}
@media (max-width:600px){
 .wrap{padding-left:16px;padding-right:16px}
 [style*="height: 520px"],[style*="height:520px"]{height:260px!important}
 [style*="height: 420px"],[style*="height: 400px"],[style*="height: 380px"],[style*="height: 360px"]{height:240px!important}
 #fe-m-img{height:240px!important}
 .fe-modal{padding:0}
 .fe-modal-box{border-radius:0;min-height:100%}
 #fe-m-img{border-radius:0!important}
 .fe-modal-box [style*="padding: 28px"]{padding:20px!important}
 #fe-m-thumbs{padding-left:20px!important;padding-right:20px!important}
 .btn{width:100%}
 .fe-header .btn{width:100%}
 h1{word-wrap:break-word}
}
