:root{color-scheme:light;--ink:#132d36;--muted:#52616a;--paper:#f8f8f5;--copper:#97512d;--line:#d5dcd9;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.3em}a:focus-visible{outline:3px solid var(--copper);outline-offset:7px}a:hover{color:var(--copper)}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;padding-block:30px;border-bottom:1px solid var(--line);gap:24px}.company{font:1.7rem/1.1 var(--serif);text-decoration:none}.company span{display:block;font:.65rem/1 var(--sans);letter-spacing:.29em;margin-top:10px}nav{display:flex;gap:36px}nav a{text-decoration:none;font-size:.9rem}nav span{margin-left:8px}.hero{padding-block:58px 44px}.eyebrow{font-size:.75rem;letter-spacing:.14em;line-height:1.6;font-weight:600;margin:0}.hero>.eyebrow{display:flex;justify-content:space-between;color:var(--muted)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-weight:400}h1{font:clamp(3.5rem,6.9vw,6.6rem)/1.06 var(--serif);letter-spacing:-.055em;margin-block:36px 34px}em{font-weight:400;color:var(--copper)}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.hero-bottom p{margin:0;color:var(--muted);font-size:1.05rem}.text-link{font-size:.9rem;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:8px;white-space:nowrap}.text-link span{padding-left:34px}.harbor{background:var(--ink);color:white}.water{height:270px;background:linear-gradient(115deg,#314e55,#152e36 60%,#665142);background-position:center 58%;background-size:cover}.image-caption{padding:16px 24px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;letter-spacing:.07em}.image-caption span:first-child{font-size:.65rem;letter-spacing:.18em}.section{padding-block:96px}.about,.contact{display:grid;grid-template-columns:1fr 2fr;gap:55px}h2{font:clamp(2.3rem,3.5vw,3.6rem)/1.17 var(--serif);letter-spacing:-.035em;margin-bottom:30px}.body-copy{max-width:650px;color:var(--muted);font-size:1.1rem}.body-copy:last-child{margin-bottom:0}.work{background:var(--ink);color:#f8f8f5}.work em{color:#d6a67f}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:55px;margin-bottom:30px}.arbora{border-top:1px solid #54666c;border-bottom:1px solid #54666c;padding:48px 0;display:grid;grid-template-columns:1fr 1fr;gap:80px}.arbora h3{font:clamp(4rem,7vw,6.5rem)/1.2 var(--serif);letter-spacing:-.05em;margin:12px 0 20px}.status{display:inline-block;border:1px solid #85979a;padding:5px 13px;border-radius:2px;font-size:.85rem;color:#e0e8e7}.arbora-copy{max-width:480px}.arbora h4,.physical h3{font:1.8rem/1.3 var(--serif);margin-bottom:20px}.arbora-copy p,.physical p:not(.eyebrow){color:#d3dddf}.arbora-copy .note{font-size:.875rem;color:#b8c9cc;margin-top:28px;margin-bottom:0}.physical{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:40px}.physical p{margin-bottom:0}.contact h2{margin-bottom:16px}.contact p:not(.eyebrow){color:var(--muted)}.email{display:inline-block;font-size:clamp(1rem,2.05vw,1.8rem);text-decoration:none;border-bottom:1px solid var(--copper);padding-bottom:10px;overflow-wrap:anywhere}.email span{display:inline-block;margin-left:16px;color:var(--copper)}footer{border-top:1px solid var(--line);padding-block:30px 40px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;color:var(--muted);font-size:.75rem}footer span{display:block}.footer-name{color:var(--ink);font-size:.9rem;margin-bottom:4px}footer p{margin:0}footer a{white-space:nowrap}
@media(min-width:1600px){.hero{padding-top:75px}.water{height:330px}}
@media(max-width:900px){.wrap{width:calc(100% - 56px)}.about,.contact,.section-heading{grid-template-columns:1fr;gap:24px}.arbora,.physical{gap:36px}.section{padding-block:64px}.hero>.eyebrow{font-size:.65rem}h1{font-size:clamp(3rem,7.8vw,5.8rem)}footer{flex-wrap:wrap}}
@media(max-width:560px){.wrap{width:calc(100% - 40px)}.header{padding-block:24px;align-items:flex-start;flex-direction:column;gap:24px}.company{font-size:1.6rem}nav{width:100%;justify-content:space-between;gap:18px}nav a{font-size:.875rem}.hero{padding-block:32px}.hero>.eyebrow{gap:16px;flex-wrap:wrap}h1{font-size:clamp(2.7rem,10.7vw,3.75rem);line-height:1.12;letter-spacing:-.055em;margin-block:27px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:24px}.hero-bottom p{font-size:1rem}.desktop-break{display:none}.water{height:230px}.image-caption{padding:14px 16px;flex-direction:column;gap:6px}.image-caption span:last-child{font-size:.7rem}.section{padding-block:52px}h2{font-size:2.4rem}.body-copy{font-size:1rem}.section-heading{margin-bottom:16px}.arbora,.physical{grid-template-columns:1fr;gap:30px}.arbora{padding-block:32px}.arbora h3{font-size:4.5rem;margin-bottom:16px}.arbora h4,.physical h3{font-size:1.65rem}.contact .email{font-size:1rem}.email span{margin-left:5px}footer{align-items:flex-start;flex-direction:column;gap:20px}}
.water{background-image:url('harbor.webp')}.company span,.image-caption span:first-child{font-size:.75rem}.hero>.eyebrow{font-size:.75rem}.image-caption span:last-child{font-size:.75rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Approved artwork is displayed whole, without filters, cropping or recoloring. */
.hero-brand{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,30%);align-items:center;gap:40px;margin-block:28px 34px}.hero-brand h1{font-size:clamp(3rem,5.1vw,5.1rem);margin:0}.approved-logo{display:block;width:100%;height:auto;object-fit:contain;padding:8px}.header{flex-wrap:wrap}nav{flex-wrap:wrap}
@media(max-width:900px){.hero-brand{grid-template-columns:minmax(0,1fr) minmax(180px,30%);gap:24px}.hero-brand h1{font-size:clamp(2.7rem,5.5vw,4rem)}}
@media(max-width:600px){.hero-brand{grid-template-columns:1fr;gap:24px;margin-block:24px 28px}.approved-logo{grid-row:1;width:min(280px,85%);justify-self:center}.hero-brand h1{font-size:clamp(2.7rem,10.7vw,3.75rem)}}
h1,h2,h3,h4{overflow-wrap:anywhere}.hero-brand>*{min-width:0}
