@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#102e3a;--lime:#d4ed68;--paper:#f7f9f8;--muted:#57676d;--border:#d9e1df}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;background:var(--paper)}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #528ba1;outline-offset:6px}.skip{position:absolute;left:10px;top:-100px;background:white;padding:15px;z-index:5}.skip:focus{top:10px}.header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#fff}.brand{display:flex;align-items:center;gap:9px;font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:-1.1px;font-size:25px}.brand-icon{display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--lime);height:37px;width:37px;font-size:29px;font-style:italic;line-height:1;border-radius:3px;margin-right:5px}.inc{font-size:12px;letter-spacing:1px;align-self:end;margin-bottom:5px}nav{display:flex;gap:40px;align-items:center;font-size:14px;font-weight:600}.nav-cta{border-bottom:1px solid var(--ink);padding:10px 0}.nav-cta span{margin-left:20px}.hero{display:grid;grid-template-columns:53% 47%;min-height:680px}.hero-copy{padding:65px 7% 45px 9.5%}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:700;margin:0 0 30px}.hero h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(46px,5.15vw,83px);font-weight:600;line-height:1.07;letter-spacing:-4px;margin:0 0 28px}em{font-style:normal;color:#56765e}.intro{font-size:18px;line-height:1.7;max-width:430px;color:var(--muted);margin:0 0 30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--ink);color:white;padding:19px 24px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#254c5c;transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.hero-note{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--muted);margin-top:40px}.line{width:30px;height:1px;background:#829b94}.hero-image{position:relative;background:linear-gradient(155deg,#3c6571,#102e3a);min-height:680px;background-size:cover;background-position:center}.hero-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0b273ac7);pointer-events:none}.photo-label{position:absolute;bottom:40px;left:35px;right:35px;z-index:1;display:flex;justify-content:space-between;color:white;font-size:13px;line-height:1.55}.photo-label>span:first-child{font-size:11px;letter-spacing:2px;padding-top:5px}.approach{padding:100px 5%;display:grid;grid-template-columns:40% 60%;background:#fff}.section-top h2{font:600 clamp(29px,3vw,46px)/1.2 Manrope,Arial,sans-serif;letter-spacing:-1.9px;margin:0}.section-lead{font-size:22px;line-height:1.6;max-width:620px;margin:0 0 40px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.principles article{border-top:1px solid var(--border);padding-top:22px}.number{font-size:12px;color:#65816e}.principles h3{font-size:17px;font-weight:600;margin-top:23px}.principles p{font-size:15px;line-height:1.7;color:var(--muted);margin-bottom:0}.contact{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:11%;padding:80px 9%}.contact .eyebrow{color:#bacacb}.contact h2{font:500 clamp(40px,4.5vw,66px)/1.1 Manrope,Arial,sans-serif;letter-spacing:-3px;margin:0 0 33px}.contact em{color:var(--lime)}.email{font-size:clamp(18px,2vw,26px);border-bottom:1px solid #63808c;padding-bottom:9px;display:inline-block}.email span{margin-left:20px}.location{font-size:14px;color:#b4c7ca;margin-top:23px}.inquiry{padding-top:45px}.inquiry h3{font:500 24px/1.3 Manrope,Arial,sans-serif;letter-spacing:-.6px;margin:0 0 12px}.inquiry>p{color:#b4c7ca;font-size:16px;line-height:1.6}.inquiry ul{list-style:none;margin:27px 0 30px;padding:0}.inquiry li{padding:15px 0;border-bottom:1px solid #35505c;font-size:14px;color:#cedadb;display:grid;grid-template-columns:72px 1fr;gap:12px}.inquiry li span{color:#fff}.button.light{background:var(--lime);color:var(--ink)}.button.light:hover{background:#e0f690}.inquiry small{display:block;font-size:12px;margin-top:14px;color:#b4c7ca}footer{padding:40px 5% 24px;background:white}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-top{padding-bottom:28px}.footer-top p{font-size:14px}.footer-bottom{border-top:1px solid var(--border);padding-top:24px;color:var(--muted);font-size:12px;line-height:1.6}.footer-bottom span:last-child{max-width:430px;text-align:right}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:850px){.header{height:85px}.brand{font-size:21px}nav{gap:22px}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:52px;letter-spacing:-2.7px}.hero-copy{padding:45px 8% 40px 10%}.hero,.hero-image{min-height:640px}.hero-note{line-height:1.6}.photo-label{left:25px;right:25px;display:block}.photo-label>span{display:block;margin-top:15px}.approach{grid-template-columns:1fr;gap:40px;padding:65px 6%}.section-lead{max-width:none}.contact{gap:7%;padding:65px 6%}.contact h2{font-size:48px}.email{font-size:19px}.inquiry{padding-top:30px}}@media(max-width:600px){.header{padding:0 6%;height:80px}.brand-icon{width:30px;height:30px;font-size:24px}.brand{font-size:19px;gap:6px}.inc{font-size:10px}nav>a:first-child{display:none}.nav-cta{font-size:12px}.nav-cta span{margin-left:5px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 6%}.hero h1{font-size:58px;letter-spacing:-3px}.eyebrow{font-size:11px;letter-spacing:1.3px;margin-bottom:25px}.intro{font-size:17px}.hero-note{margin-top:30px}.hero-image{min-height:380px;background-position:center 55%}.photo-label{display:flex;bottom:25px}.photo-label>span{margin-top:0}.section-top h2{font-size:36px}.section-lead{font-size:19px}.principles{grid-template-columns:1fr;gap:28px}.principles article{display:grid;grid-template-columns:34px 1fr;gap:0 12px}.principles h3{margin:0;font-size:18px}.principles p{grid-column:2;margin-top:10px}.number{padding-top:4px}.contact{grid-template-columns:1fr;gap:20px;padding:55px 6%}.contact h2{font-size:53px}.email{font-size:23px}.inquiry{padding-top:25px}.footer-top,.footer-bottom{align-items:start;flex-direction:column;gap:13px}.footer-top p{margin:0}.footer-bottom span:last-child{text-align:left}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.hero-image{background-image:url("port.jpg")}
