:root{--navy:#07384b;--navy-2:#0c4c61;--deep:#052d3c;--teal:#4c9ca6;--teal-light:#a9cfd1;--gold:#c59055;--cream:#f7faf9;--ink:#143748;--muted:#58707b;--line:#dce5e5;--white:#fff;--shadow:0 18px 45px #022e3c17}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.58}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-weight:500;line-height:1.1}h1{font-size:clamp(3rem,6.2vw,5.7rem)}h2{font-size:clamp(2.05rem,3.8vw,3.35rem)}h3{font-size:1.28rem;line-height:1.24}em{color:#236a78;font-style:normal}.container{width:min(1200px,100% - 3rem);margin-inline:auto}.section{padding:95px 0}.section-soft{background:var(--cream)}.eyebrow{color:#a87641;letter-spacing:.19em;text-transform:uppercase;margin-bottom:18px;font-size:.72rem;font-weight:800;display:block}.eyebrow.light{color:#e3b37f}.section-heading{max-width:780px;margin-bottom:32px}.section-heading h2{margin-bottom:15px}.section-heading p{color:var(--muted);max-width:700px;margin:0;font-size:1.04rem}.section-heading.centered{text-align:center;max-width:800px;margin-inline:auto}.centered p{margin-inline:auto}.split-heading{justify-content:space-between;align-items:end;gap:30px;max-width:none;display:flex}.split-heading p{max-width:430px}.section-end{text-align:center;margin-top:34px}.text-link{color:#0c6474;letter-spacing:.02em;border-bottom:1px solid #7ea9ae;padding-bottom:4px;font-size:.91rem;font-weight:750;display:inline-block}.text-link:hover{color:var(--gold)}.small-note{color:var(--muted);font-size:.8rem}.button{border-radius:999px;justify-content:center;align-items:center;gap:20px;min-height:47px;padding:12px 23px;font-size:.89rem;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #001e2824}.button-primary{background:var(--navy);color:#fff}.button-outline{border:1.5px solid var(--navy);color:var(--navy);background:#ffffff94}.button-gold{background:var(--gold);color:#fff}.skip-link{z-index:9999;background:#fff;padding:8px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}.site-header{z-index:25;background:#fffffff7;border-bottom:1px solid #edf1f0;position:sticky;top:0;box-shadow:0 4px 22px #041e2809}.header-inner{justify-content:space-between;align-items:center;gap:28px;min-height:95px;display:flex}.brand{flex:none;display:block}.brand img{width:275px;height:auto}.desktop-nav{align-items:center;gap:clamp(10px,1.6vw,30px);display:flex}.desktop-nav a{white-space:nowrap;padding:17px 0;font-size:.83rem;font-weight:600;position:relative}.desktop-nav a:hover{color:#0d8593}.desktop-nav a.active:after{content:"";border-bottom:3px solid var(--gold);position:absolute;bottom:8px;left:0;right:0}.mobile-nav{display:none}.footer-cta{color:#fff;background:linear-gradient(100deg,#063648f2,#074756db),url(/images/costa-hero.webp) 50% 65%/cover;padding:42px 0}.footer-cta-inner{justify-content:space-between;align-items:center;gap:20px;display:flex}.footer-cta h2{margin:0 0 4px;font-size:clamp(2rem,3vw,2.7rem)}.footer-cta p{color:#e6f2f3;margin:0}.footer-cta .eyebrow{margin-bottom:8px}.site-footer{background:#fff;padding:27px 0}.footer-inner{justify-content:space-between;align-items:center;gap:36px;display:flex}.footer-brand img{width:220px}.footer-brand small{color:var(--muted);margin:0 0 0 10px;font-size:.68rem;display:block}.footer-links{flex-wrap:wrap;gap:18px;font-size:.76rem;font-weight:650;display:flex}.footer-links a:hover{color:var(--teal)}.copyright{color:#70838a;font-size:.72rem}.hero{background:linear-gradient(96deg,#f5f8f7 5%,#e6eeee 42%,#c8dde2 73%);align-items:center;min-height:585px;display:flex;position:relative;overflow:hidden}.hero-image{background:url(/images/costa-hero.webp) 50%/cover no-repeat;position:absolute;inset:0 0 0 45%}.hero-screen{background:linear-gradient(90deg,#f9fbfafa 0%,#f9fbfaf2 30%,#f9fbfab8 46%,#f9fbfa1f 66%,#0000 85%);position:absolute;inset:0}.hero-content{z-index:2;padding-top:55px;padding-bottom:90px;position:relative}.hero-content .eyebrow{color:#256779}.hero h1{max-width:760px;color:var(--navy);margin:0 0 25px}.hero p{color:#344f5e;max-width:550px;margin-bottom:31px;font-size:1.14rem;line-height:1.6}.hero-actions{flex-wrap:wrap;gap:15px;display:flex}.hero-wave{z-index:3;height:58px;position:absolute;bottom:-1px;left:0;right:0}.hero-wave svg{width:100%;height:100%}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;display:grid}.service-card{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 5px 20px #01344109}.service-card img{object-fit:cover;width:100%;height:185px}.service-card-inner{padding:24px 23px 27px}.service-tag{color:#b77e43;text-transform:uppercase;letter-spacing:.15em;margin-bottom:12px;font-size:.69rem;font-weight:800;display:block}.service-card h3{color:var(--navy);margin-bottom:12px;font-family:Georgia,serif;font-size:1.37rem;font-weight:600}.service-card p{color:var(--muted);margin:0;font-size:.9rem}.statement-section{color:#fff;background:linear-gradient(100deg,#063448,#084c5b);padding:76px 0}.statement-section h2{color:#fff;font-size:clamp(2.2rem,4.5vw,3.7rem)}.statement-grid{grid-template-columns:1.05fr 1fr;align-items:center;gap:68px;display:grid}.statement-grid p{color:#e4eff0;font-size:1.05rem}.light-link{color:#c3e3e3;border-color:#c3e3e3}.wide-title{max-width:970px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.project-card{border:1px solid var(--line);background:#fff;border-radius:13px;transition:transform .2s,box-shadow .2s;overflow:hidden}.project-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.project-photo{position:relative}.project-photo img{object-fit:cover;width:100%;height:215px}.image-note{color:#486068;background:#fff;border-radius:5px;padding:3px 7px;font-size:.67rem;position:absolute;bottom:8px;right:8px}.project-card-inner{padding:22px}.project-card-inner h3{color:var(--navy);margin:0 0 10px;font-family:Georgia,serif;font-size:1.4rem}.project-card-inner p{color:var(--muted);margin-bottom:18px;font-size:.86rem}.project-card-link{color:#126b79;font-size:.86rem;font-weight:750}.editorial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.editorial-tile{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.editorial-tile img{object-fit:cover;width:100%;height:165px}.editorial-tile span{padding:13px;font-size:.83rem;font-weight:650;display:block}.editorial-tile:hover span{color:#287482}.page-hero{background:linear-gradient(108deg,#f2f8f8 10%,#e0f0ee 55%,#e9efed 100%);border-bottom:1px solid #d9e9e8;padding:92px 0 96px;position:relative}.page-hero:after{content:"";opacity:.2;pointer-events:none;background:repeating-radial-gradient(at 100% 100%,#0000 0 31px,#4e9aa3 32px 34px,#0000 35px 47px);width:38%;height:75%;position:absolute;bottom:0;right:0}.page-hero h1{max-width:1000px;color:var(--navy);margin-bottom:17px}.page-hero p{color:#40606c;max-width:750px;margin:0;font-size:1.17rem}.content-grid{grid-template-columns:1fr 1.12fr;align-items:start;gap:80px;display:grid}.content-grid h2{color:var(--navy)}.prose p{color:#455e6a;font-size:1.02rem;line-height:1.8}.prose h2{margin:38px 0 16px;font-size:2.03rem}.prose h2:first-child{margin-top:0}.bio-grid{grid-template-columns:330px 1fr;align-items:start;gap:65px;display:grid}.bio-badge{color:#fff;text-align:center;background:linear-gradient(150deg,#083b4e,#0c6472);border-radius:15px;flex-direction:column;align-items:center;gap:12px;min-height:345px;padding:52px 25px;display:flex}.bio-initials{border:2px solid #ffffffb3;border-radius:50%;justify-content:center;align-items:center;width:165px;height:165px;font-family:Georgia,serif;font-size:4.8rem;display:flex}.bio-badge small{color:#dceced}.pillars{grid-template-columns:repeat(4,minmax(0,1fr));gap:23px;display:grid}.pillars article{border-top:3px solid var(--gold);padding:26px 15px 15px 0}.pillars article span{color:#ad7a4d;font-size:.85rem;font-weight:800}.pillars h3{color:var(--navy);margin:14px 0 11px;font-family:Georgia,serif}.pillars p{color:var(--muted);font-size:.91rem}.service-details{gap:26px;display:grid}.service-detail{border:1px solid var(--line);border-radius:18px;grid-template-columns:300px 1fr;align-items:center;gap:42px;padding:25px;display:grid}.detail-photo img{object-fit:cover;border-radius:10px;width:100%;height:195px}.service-detail h2{margin-bottom:15px;font-size:2.2rem}.service-detail p{max-width:700px;color:var(--muted)}.project-disclaimer{margin-top:25px}.project-hero{color:#fff;background:linear-gradient(100deg,#06374c,#0c6070);padding:70px 0}.project-hero h1{color:#fff;max-width:1080px;font-size:clamp(2.5rem,4.6vw,4.5rem)}.project-hero p{color:#dceef0;max-width:700px;font-size:1.12rem}.project-hero .eyebrow{color:#d6aa76}.back-link{color:#dbebed;margin-bottom:33px;font-size:.88rem;display:block}.project-detail-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:48px;display:grid}.detail-main-image{border-radius:14px;position:relative;overflow:hidden}.detail-main-image img{object-fit:cover;width:100%;height:350px}.detail-main-image span{color:#fff;background:#032a36bf;padding:8px 15px;font-size:.77rem;position:absolute;bottom:0;left:0;right:0}.project-story{padding-top:36px}.project-facts{background:#f8fbfa;border:1px solid #d3e5e4;border-radius:15px;padding:26px;position:sticky;top:115px}.project-facts h2{margin:0 0 22px;font-size:1.8rem}.project-facts dt{color:#a07149;text-transform:uppercase;letter-spacing:.11em;margin-bottom:5px;font-size:.7rem;font-weight:800}.project-facts dd{color:#2b4c5a;margin:0 0 22px;font-size:.91rem}.project-facts .button{text-align:center;width:100%}.content-placeholder{text-align:center;background:#f8fbfa;border:1px dashed #b9cbce;border-radius:13px;align-items:center;gap:18px;padding:28px;display:flex}.content-placeholder span{color:#79a8ad;font-size:2.4rem}.content-placeholder p{margin:0}.photo-gallery{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.photo-gallery img{object-fit:cover;width:100%;height:160px}.youtube-wrapper{aspect-ratio:16/9;position:relative}.youtube-wrapper iframe{border:0;border-radius:10px;width:100%;height:100%;position:absolute;inset:0}.feed-empty{text-align:center;background:#f4faf9;border:1px dashed #9fbfc3;border-radius:16px;max-width:850px;margin:auto;padding:60px 25px}.feed-icon{color:var(--teal);font-size:3rem}.feed-empty h3{color:var(--navy);margin:15px 0;font-family:Georgia,serif;font-size:1.8rem}.feed-empty p{max-width:570px;color:var(--muted);margin:auto}.contact-grid{grid-template-columns:1fr .82fr;gap:75px;display:grid}.contact-grid h2{color:var(--navy)}.contact-grid p{color:var(--muted)}.contact-options{gap:16px;margin-top:35px;display:grid}.contact-options>div{border-left:3px solid var(--gold);background:#f5f9f9;gap:4px;padding:18px 21px;display:grid}.contact-options span{text-transform:uppercase;letter-spacing:.1em;color:#9d6c3b;font-size:.72rem;font-weight:750}.contact-options strong{color:var(--navy);font-size:1.1rem}.contact-options small{color:var(--muted)}.contact-panel{color:#fff;background:linear-gradient(140deg,#06394a,#0b5d6a);border-radius:17px;padding:46px}.contact-panel h3{color:#fff;font-family:Georgia,serif;font-size:2.5rem;line-height:1.14}.contact-panel p{color:#dae8e9}.contact-line{background:var(--gold);width:90px;height:2px;margin:40px 0}.not-found{text-align:center;padding:85px 0 100px}.not-found h1{font-size:4rem}.not-found p{color:var(--muted);margin-bottom:30px}@media (width<=1120px){.brand img{width:235px}.desktop-nav{gap:13px}.desktop-nav a{font-size:.78rem}.container{width:min(1100px,100% - 2.5rem)}.project-detail-grid{grid-template-columns:minmax(0,1fr) 290px;gap:25px}}@media (width<=850px){.header-inner{min-height:82px}.brand img{width:240px}.desktop-nav{display:none}.mobile-nav{z-index:35;display:block;position:relative}.mobile-nav summary{cursor:pointer;color:var(--navy);align-items:center;gap:12px;font-weight:700;list-style:none;display:flex}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{width:min(300px,100vw - 30px);box-shadow:var(--shadow);border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px;display:grid;position:absolute;top:37px;right:0}.mobile-nav nav a{border-radius:6px;padding:10px 12px}.mobile-nav nav a:hover{background:var(--cream)}.service-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.statement-grid,.content-grid,.bio-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.project-detail-grid{grid-template-columns:1fr}.project-facts{position:static}.pillars,.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-inner{flex-wrap:wrap}.service-detail{grid-template-columns:250px 1fr;gap:25px}.hero-image{left:30%}.hero-screen{background:linear-gradient(90deg,#f8fbfa 2%,#f8fbfaf0 35%,#f8fbfaa6 66%,#f8fbfa33)}}@media (width<=600px){.container{width:calc(100% - 2rem)}.brand img{width:190px}.header-inner{min-height:72px}.section{padding:65px 0}.hero{align-items:flex-start;min-height:590px}.hero-image{opacity:.55;background-position:63%;inset:0}.hero-screen{background:linear-gradient(#f9fbfaf7 0%,#f9fbfae8 46%,#f9fbfa75 100%)}.hero-content{padding-top:72px;padding-bottom:105px}.hero h1{font-size:clamp(2.7rem,10.5vw,4.1rem)}.hero p{font-size:1.04rem}.hero-actions{flex-direction:column;align-items:stretch;display:flex}.button{width:100%;font-size:.87rem}.hero-wave{height:41px}.service-grid,.project-grid{grid-template-columns:1fr}.section-heading{margin-bottom:28px}.split-heading{display:block}.statement-section{padding:64px 0}.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.editorial-tile img{height:120px}.editorial-tile span{font-size:.72rem}.pillars{grid-template-columns:1fr 1fr;gap:15px}.pillars h3{font-size:1.14rem}.pillars p{font-size:.83rem}.page-hero{padding:68px 0}.page-hero h1{font-size:clamp(2.5rem,9.5vw,4.2rem)}.page-hero p{font-size:1.02rem}.service-detail{grid-template-columns:1fr;gap:16px;padding:17px}.service-detail h2{font-size:1.9rem}.detail-photo img{height:205px}.project-hero{padding:52px 0}.detail-main-image img{height:260px}.project-facts{padding:20px}.footer-cta-inner{display:block}.footer-cta-inner .button{margin-top:22px}.footer-inner{gap:25px;display:grid}.footer-links{gap:14px}.content-placeholder{flex-direction:column;padding:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
