/* Interior revision: stronger page identity, real work, and distinct chapter colors. */
.main-page{background:#fcfaf6}.main-page h1{font-weight:500}.sp-hero{background:#0b2d42;background-image:radial-gradient(ellipse at 95% 10%,#2c627088,transparent 60%),linear-gradient(135deg,#0b2d42,#133b50);color:#fffaf2;position:relative;overflow:hidden;grid-template-columns:1.05fr 1fr;gap:5vw;padding-top:75px;padding-bottom:95px}.sp-hero:before{content:'';position:absolute;inset:0;opacity:.2;pointer-events:none;background-image:linear-gradient(#94bdc91b 1px,transparent 1px),linear-gradient(90deg,#94bdc91b 1px,transparent 1px);background-size:66px 66px}.sp-hero>div,.sp-hero>figure{position:relative;z-index:1}.main-page .sp-hero h1{font-size:clamp(58px,5.3vw,94px);font-weight:500;letter-spacing:-.055em;line-height:1.04;max-width:780px}.sp-hero .eyebrow{color:#dbb996}.sp-breadcrumb{color:#bdcfd5}.sp-tagline{font-size:26px!important;color:#a9c4cf;font-weight:500;line-height:1.35!important;max-width:650px;margin-bottom:26px}.sp-hero .ms-lead{font-size:18px;color:#d9e4e7;max-width:580px}.sp-hero .button-wine{background:#934b5e}.sp-hero-photo{height:650px;box-shadow:24px 24px 0 #87adbb20;border-bottom:4px solid #d8b18b}.sp-hero-photo img{object-fit:cover}.sp-intro{background:#fcfaf6}.sp-scope{background:#dce9ed!important;background-image:radial-gradient(ellipse at 10% 90%,#bfd8df88,transparent 70%)!important}.sp-scope-grid{gap:24px}.sp-scope-grid article{background:#fdfbf6;padding:0 26px 26px;border-top:0;box-shadow:0 10px 35px #16384708;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s}.sp-scope-grid article:hover{transform:translateY(-10px);box-shadow:0 18px 38px #0b2d4222}.sp-scope-photo{margin:0 -26px 28px;height:200px;overflow:hidden;border-bottom:3px solid #81384b}.sp-scope-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.sp-scope-grid article:hover img{transform:scale(1.06)}.sp-scope-grid h3{font-size:25px}.sp-scope-grid .ip-detail{font-size:14px!important;line-height:1.85!important;color:#516774}.sp-feature{background:#fffdfa}.sp-feature .ms-photo-frame{position:relative;box-shadow:-18px 18px 0 #b5cfda44}.sp-feature .ms-reading{padding-left:15px}.ms-process-summary{position:relative;background:#0b2d42;background-image:linear-gradient(135deg,#0b2d42,#174b60);overflow:hidden}.ms-process-summary:before{content:'';position:absolute;width:520px;height:520px;border:1px solid #91b1bd18;border-radius:50%;top:-260px;right:-80px;pointer-events:none}.ms-process-summary .ms-process-grid article{border-top:2px solid #d3ae87;padding-top:28px}.ms-process-summary .ip-detail{color:#bad0d8;font-size:14px!important}.sp-faq{background:#edf3f3}.sp-faq details{background:#fbfaf5;padding:26px;box-shadow:0 5px 20px #14344308;border-top:2px solid #81384b}.sp-faq details[open]{background:#fffdf7}.main-page .ms-cta{background:#74364a!important;color:#fff8ef;background-image:linear-gradient(125deg,#74364a,#913f56)!important}.main-page .ms-cta p{color:#ecdae0}.main-page .ms-cta .eyebrow{color:#e8c4a4}.main-page .ms-cta .button-wine{background:#fff8ef;color:#54273a}.main-page .ms-cta .ms-phone{color:#fff8ef}.main-page .ms-cta small{color:#e9cdd5}.ip-tagline{font-size:28px!important;line-height:1.4!important;font-weight:500;max-width:750px;margin-bottom:30px}.ms-about-opening{background:#e2edf0;background-image:linear-gradient(110deg,#e8f0f2,#c8dde3)!important}.main-page .ms-about-copy h1{font-size:clamp(55px,5.3vw,90px);line-height:1.04}.ms-about-opening .ip-tagline{color:#607e8a}.ms-about-copy>p:not(.eyebrow){max-width:650px}.page-about #our-approach{background:#fffdfa}.page-about .ms-values{background:#174a5d!important;background-image:linear-gradient(130deg,#113848,#285c6b)!important;color:#fff8ef}.page-about .ms-values p{color:#ccdee3}.page-about .ms-values h2 em{color:#a4c6d3}.page-about .ms-values .eyebrow{color:#e8c39a}.page-about .ms-value-grid article{border-color:#88aab655}.page-about .ms-local-story{background:#dce9ed}.page-services .ms-editorial-hero,.page-projects .ms-editorial-hero{background:#0b2d42!important;background-image:linear-gradient(125deg,#0b2d42,#23576b)!important;color:#fff8ef;align-items:center}.page-services .ms-editorial-hero p,.page-projects .ms-editorial-hero p{color:#d6e4e8}.page-services .ms-editorial-hero .eyebrow,.page-projects .ms-editorial-hero .eyebrow{color:#e3bd95}.main-page .ms-editorial-hero h1{font-size:clamp(72px,7.5vw,128px);line-height:1.03;margin:26px 0}.page-services .ms-service-index{background:#81384b}.page-services .ms-services-body{background:#fbfaf6}.page-services .ms-service-block{padding:55px 40px;margin-bottom:40px;border-bottom:0}.page-services .ms-service-block:nth-child(even){background:#dce9ed}.page-services #more-projects{background:#194b5e!important;color:#fff8ef}.page-services #more-projects .ms-section-heading p{color:#d1e2e7}.page-services #more-projects h2 em{color:#a9c9d5}.page-services .ms-more-grid article{color:#0b2d42;background:#fcfaf6}.page-projects .ms-gallery-section{background:#e1edf0}.page-projects .ms-project-card{padding:20px!important;background:#fdfbf6}.page-projects .ms-project-caption{padding:25px 14px 15px}.page-projects .ms-project-photo{aspect-ratio:5/4}.page-projects .ms-project-card:nth-child(even){margin-top:80px}.page-contact .ms-contact-opening{background:#dce9ed!important;background-image:linear-gradient(135deg,#edf4f4,#c6dde4)!important}.main-page .ms-contact-intro h1{font-size:clamp(62px,6vw,102px);line-height:1.03}.page-contact .ms-next-steps{background:#174a5d;color:#fff8ef}.page-contact .ms-next-steps p{color:#c5dce3}.page-contact .ms-next-steps h2 em{color:#a5c7d4}.page-contact .ms-next-steps .eyebrow{color:#dfb993}.page-contact .ms-contact-location{background:#fffdfa!important}.page-contact .ms-contact-faq{background:#e4eef0}.page-contact .ms-request-card{box-shadow:0 25px 60px #0b2d4215;border-top-width:5px}.page-contact .ms-contact-intro .ip-tagline{color:#517482}.rg-gallery{padding:80px 0 50px;background:#0d3448;color:#fff8ef;overflow:hidden}.rg-heading{display:flex;gap:40px;align-items:end;justify-content:space-between;padding:0 var(--gutter);margin-bottom:45px}.rg-heading>div{max-width:780px}.rg-heading h2{font-size:clamp(42px,4.8vw,72px);margin:23px 0 20px;line-height:1.12}.rg-heading h2 em{color:#9fc5d4}.rg-heading p{color:#c1d9e1;font-size:16px;max-width:660px;line-height:1.85}.rg-heading .eyebrow{color:#deb68f}.rg-pause{border:1px solid #9bbbc866;color:#e9f3f5;white-space:nowrap;padding:15px 20px;display:flex;gap:25px;align-items:center;font-size:12px;min-height:48px;margin-bottom:4px}.rg-pause:hover,.rg-pause:focus-visible{background:#ffffff15}.rg-window{overflow:hidden;padding:8px 0 15px}.rg-track{display:flex;gap:24px;width:max-content;animation:shore-work-flow 42s linear infinite;will-change:transform}.rg-group{display:flex;gap:24px;flex:none}.rg-photo{display:block;position:relative;flex:none;width:clamp(290px,32vw,480px);height:360px;padding:0;background:#153f51;overflow:hidden;text-align:left;cursor:zoom-in;border:0}.rg-photo:nth-child(2n){width:clamp(250px,27vw,410px)}.rg-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.22,1,.36,1),filter .6s}.rg-photo:hover img{transform:scale(1.045);filter:brightness(.9)}.rg-photo:after{content:'';position:absolute;inset:52% 0 0;background:linear-gradient(transparent,#071e2ce3);pointer-events:none}.rg-photo>span{position:absolute;left:25px;bottom:25px;right:25px;z-index:1;color:#fff8ef;font-size:16px;display:flex;align-items:center;justify-content:space-between;gap:20px}.rg-photo b{font-size:25px}.rg-gallery:hover .rg-track,.rg-gallery:focus-within .rg-track,.rg-gallery.rg-paused .rg-track,.rg-gallery.rg-offscreen .rg-track,.motion-paused .rg-track{animation-play-state:paused}.rg-gallery:focus-within .rg-track,.rg-keyboard .rg-track{animation:none;transform:none}.rg-gallery:focus-within .rg-window,.rg-keyboard .rg-window{overflow-x:auto;scroll-behavior:smooth}.rg-gallery:focus-within .rg-group:nth-child(2),.rg-keyboard .rg-group:nth-child(2){display:none}.rg-bottom{display:flex;justify-content:space-between;gap:25px;padding:25px var(--gutter) 0;font-size:11px;color:#a4c6d3}.rg-dialog{width:min(1320px,94vw);max-height:93svh;border:0;padding:0;background:#0b2d42;color:#f8f5ed}.rg-dialog[open]{display:grid;grid-template-columns:1fr 350px}.rg-dialog::backdrop{background:#061d2ce8;backdrop-filter:blur(9px)}.rg-dialog-photo{width:100%;height:85svh;object-fit:contain;background:#082434}.rg-dialog-copy{padding:75px 32px 35px;display:flex;flex-direction:column;justify-content:center}.rg-dialog-copy h2{font-size:36px;line-height:1.18}.rg-dialog-copy p{font-size:14px;color:#acc8d3;margin:25px 0}.rg-dialog-close{position:absolute;top:15px;right:15px;background:#fff8ef;color:#0b2d42;border:0;border-radius:50%;width:46px;height:46px;font-size:28px;z-index:2}.rg-controls{display:flex;gap:20px;justify-content:space-between;align-items:center;border-top:1px solid #86aab64d;padding-top:25px;margin-top:25px;font-size:12px}.rg-controls button{min-width:44px;min-height:44px;color:#fff8ef;background:#ffffff12;border:0;font-size:22px}.rg-dialog .ms-link{color:#fff8ef;margin-top:30px}.rg-dialog :focus-visible,.rg-gallery :focus-visible{outline:2px solid #efcda8;outline-offset:4px}@keyframes shore-work-flow{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 12px))}}
@media(min-width:1600px){.rg-heading,.rg-bottom{padding-left:max(var(--gutter),calc((100vw - 1480px)/2));padding-right:max(var(--gutter),calc((100vw - 1480px)/2))}}
@media(max-width:1100px){.sp-hero-photo{height:600px}.sp-scope-grid article{padding-left:24px;padding-right:24px}.sp-scope-photo{margin-left:-24px;margin-right:-24px}.page-services .ms-service-block{padding:35px 25px}.rg-dialog[open]{grid-template-columns:1fr 300px}}
@media(max-width:900px){.sp-hero{grid-template-columns:1fr;gap:45px;padding-top:55px}.main-page .sp-hero h1{font-size:clamp(58px,8.2vw,86px)}.sp-hero-photo{height:520px;box-shadow:12px 12px 0 #9cbccb25}.sp-hero-copy{max-width:800px}.sp-hero .ms-lead{max-width:740px}.rg-dialog[open]{grid-template-columns:1fr}.rg-dialog-photo{height:58svh}.rg-dialog-copy{padding:30px;max-width:none}.rg-dialog-copy h2{font-size:30px}.rg-dialog-copy p{margin:18px 0}.rg-controls{margin-top:12px;padding-top:15px}.rg-dialog .ms-link{margin-top:18px}.sp-feature .ms-reading{padding-left:0}}
@media(max-width:700px){.sp-hero{padding:38px var(--gutter) 55px;gap:35px}.main-page .sp-hero h1{font-size:clamp(42px,10.8vw,66px);line-height:1.08;letter-spacing:-.045em;margin:25px 0}.sp-tagline{font-size:22px!important;margin-bottom:20px}.sp-hero .ms-lead{font-size:16px}.sp-hero-photo{height:410px}.sp-breadcrumb{margin-bottom:30px}.sp-scope-photo{height:240px}.sp-scope-grid h3{font-size:28px}.sp-scope-grid .ip-detail{font-size:15px!important}.sp-feature .ms-photo-frame{box-shadow:-10px 10px 0 #b5cfda44}.ip-tagline{font-size:23px!important}.main-page .ms-about-copy h1{font-size:clamp(44px,11.5vw,66px)}.main-page .ms-editorial-hero h1{font-size:clamp(65px,16vw,85px)}.main-page .ms-contact-intro h1{font-size:clamp(44px,11.6vw,67px)}.page-services .ms-service-block{padding:25px 20px;margin-bottom:28px}.page-services .ms-service-copy h2{font-size:36px}.page-projects .ms-project-card{padding:14px!important}.page-projects .ms-project-card:nth-child(even){margin-top:0}.rg-gallery{padding:60px 0 30px}.rg-heading{display:block;padding:0 var(--gutter);margin-bottom:30px}.rg-heading h2{font-size:39px}.rg-heading p{font-size:15px}.rg-pause{margin-top:25px;display:inline-flex;padding:13px 17px}.rg-track{gap:16px;animation-duration:48s}.rg-group{gap:16px}.rg-photo,.rg-photo:nth-child(2n){width:82vw;height:330px}.rg-photo>span{left:20px;right:20px;bottom:20px;font-size:15px}.rg-bottom{flex-direction:column;gap:12px;font-size:10px}.rg-dialog-photo{height:47svh}.rg-dialog-copy{padding:27px 24px}.rg-dialog-copy h2{font-size:28px}.rg-dialog-close{width:42px;height:42px}.rg-dialog-copy p{font-size:14px}.rg-dialog .ms-link{font-size:13px}@keyframes shore-work-flow{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}}
@media(prefers-reduced-motion:reduce){.rg-track{animation:none;will-change:auto}.rg-group:nth-child(2){display:none}.rg-window{overflow-x:auto}.rg-photo img,.sp-scope-grid article,.sp-scope-photo img{transition:none;transform:none!important}}
body.rg-modal-open{overflow:hidden}
