:root{--navy:#052758;--red:#c90037;--paper:#fbfaf7;--muted:#536279;--line:#d8dce1;--serif:Didot,"Bodoni MT","Times New Roman",serif;--sans:"Avenir Next",Avenir,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--sans);font-size:16px;line-height:1.7}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--red);outline-offset:6px}a:hover{text-decoration-color:var(--red)}p{margin:0 0 1.25em}figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(72px,7.2vw,122px)}h2{font-size:clamp(44px,4.5vw,76px)}h3{font-size:31px}em{font-weight:400}address{font-style:normal}[hidden]{display:none!important}.skip-link{position:absolute;z-index:20;left:20px;top:-100px;background:var(--navy);color:white;padding:14px}.skip-link:focus{top:10px}
.header{padding:22px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.identity{display:flex;align-items:center;gap:15px}.identity img{width:66px;height:66px;object-fit:contain;mix-blend-mode:multiply}.identity>span{font-family:var(--serif);font-size:26px;letter-spacing:.005em;line-height:1.15}.identity small{font:9px var(--sans);display:block;letter-spacing:.35em;text-align:center;text-indent:.35em;margin-top:8px}.header nav{display:flex;align-items:center;gap:36px;font-size:13px}.header nav>a{padding:10px 0}.header nav>a:hover{color:var(--red)}.header nav>.nav-contact{border:1px solid #8f9bad;padding:11px 21px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;letter-spacing:.07em;transition:background-color .2s,border-color .2s,color .2s}.header nav>.nav-contact:hover{background:var(--navy);border-color:var(--navy);color:var(--paper)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.2em;line-height:1.5;text-transform:uppercase;margin-bottom:24px}.red-star{color:var(--red);font-size:18px;margin-right:12px;vertical-align:-2px}.section{padding:105px 7%}.hero{padding:60px 3% 0}.hero-heading{display:flex;align-items:flex-end;justify-content:space-between;padding:0 2.1% 44px;gap:40px}.hero h1 em{color:var(--red)}.hero-note{width:280px;padding:0 0 9px;margin-right:2%}.hero-note p{font-size:15px;line-height:1.85;margin-bottom:25px}.text-link{display:inline-block;border-bottom:1px solid #9eabba;font-size:12px;letter-spacing:.055em;padding:10px 0 8px;line-height:1.6;transition:color .2s,border-color .2s}.text-link:hover{color:var(--navy);border-color:var(--navy)}.hero-images{display:grid;grid-template-columns:1fr 1.18fr 1fr;align-items:end;gap:18px}.hero-frame{position:relative;overflow:hidden;display:block}.hero-frame img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.hero-frame:hover img{transform:scale(1.025)}.frame-one{height:470px}.frame-two{height:540px}.frame-three{height:470px}.frame-one img{object-position:center 28%}.frame-two img{object-position:center 49%}.frame-three img{object-position:51% center}.hero-frame>span{position:absolute;bottom:0;left:0;right:0;color:white;padding:55px 22px 18px;font-size:10px;letter-spacing:.16em;background:linear-gradient(transparent,rgba(0,0,0,.5))}.hero-bottom{display:flex;justify-content:space-between;gap:20px;padding:22px 2.1%;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.13em}.hero-bottom a{font-size:11px;letter-spacing:0}.hero-bottom a span{margin-left:18px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:55px}.section-heading>p{max-width:310px;font-size:15px;color:var(--muted);margin:0 0 4px}.selected-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:7%;row-gap:65px;align-items:start}.work{display:block}.work figure{overflow:hidden;background:#e7e5df}.work img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.work:hover img{transform:scale(1.025)}.work>div{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:19px}.work h3{font-size:27px;letter-spacing:-.025em}.work>div>span{font-size:10px;letter-spacing:.02em}.work-tall figure{aspect-ratio:4/5}.work-short{padding-top:120px}.work-short figure{aspect-ratio:4/5}.work-wide figure{aspect-ratio:3/2}.work-detail{padding:55px 15% 0}.work-detail figure{aspect-ratio:4/5}.work-detail>div{align-items:flex-start;flex-direction:column;gap:7px}.center-action{text-align:center;margin-top:60px}.services{padding-top:25px}.service-list>a{display:grid;grid-template-columns:45px 1fr 1fr;align-items:center;gap:22px;border-top:1px solid var(--line);padding:30px 0}.service-list>a:last-child{border-bottom:1px solid var(--line)}.service-list>a h3{text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:1px;text-underline-offset:6px;transition:text-decoration-color .2s}.service-list>a:hover h3,.service-list>a:focus-visible h3{text-decoration-color:#9eabba}.service-index{font:11px var(--sans);letter-spacing:.08em;color:var(--red)}.service-list h3{font-size:clamp(26px,2.6vw,40px)}.service-list p{font-size:13px;line-height:1.8;margin:0;max-width:310px;color:var(--muted)}.about{background:#f1f0eb;display:grid;grid-template-columns:1.05fr 1fr;gap:10%;align-items:center}.about-image img{aspect-ratio:1/1.06;object-fit:cover;object-position:53% center}.about-image>span{font-size:9px;letter-spacing:.16em;display:block;margin-top:17px}.about-copy h2{font-size:clamp(44px,4vw,67px);margin-bottom:28px}.about-copy>p:not(.eyebrow){font-size:14px;color:var(--muted)}.contact{background:var(--navy);color:var(--paper)}.contact .eyebrow{color:#d4dcea}.contact-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;align-items:center}.contact h2{font-size:clamp(50px,5.4vw,89px)}.contact-layout>div>p{font-size:14px;color:#dce2eb;max-width:360px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:16px 30px;background:var(--navy);color:var(--paper);font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.11em;line-height:1.4;text-transform:uppercase;text-align:center;border:1px solid var(--navy);border-radius:0;text-decoration:none;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}.button:hover{background:#173b67;border-color:#173b67}.contact .button-primary{background:var(--paper);border-color:var(--paper);color:var(--navy);margin-top:8px}.contact .button-primary:hover{background:#e8e6df;border-color:#e8e6df}.contact a:focus-visible,#lightbox button:focus-visible{outline-color:var(--paper)}.contact-email{display:block;width:fit-content;border-bottom:1px solid #8995a8;font-size:12px;margin-top:22px}.footer{padding:65px 7% 25px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8%;align-items:center;padding-bottom:45px}.footer-logo{max-width:270px;mix-blend-mode:multiply}.footer-top .eyebrow{font-size:9px;margin-bottom:16px}.footer-top address{font-size:13px;margin-bottom:14px}.footer-top>div>a{display:block;font-size:12px;width:fit-content;margin-top:5px}.footer-links{justify-self:end}.footer-top .footer-links>a{margin-bottom:15px;font-size:13px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:25px;font-size:9px;letter-spacing:.04em}.footer-bottom>span:last-child{display:flex;gap:22px}
.portfolio-intro{padding-bottom:45px}.portfolio-intro .section-heading{margin-bottom:0}.portfolio-intro h1{font-size:clamp(65px,6.5vw,105px)}.gallery-section{padding:0 5% 95px}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:25px 0 38px}.filters{display:flex;gap:25px;flex-wrap:wrap}.filters button{background:none;border:0;border-bottom:1px solid transparent;color:var(--muted);padding:7px 0;cursor:pointer;font-size:11px}.filters button[aria-pressed=true]{color:var(--red);border-color:var(--red)}.filters button:hover{color:var(--red)}#gallery-count{font-size:10px;color:var(--muted);margin:0;white-space:nowrap}.gallery-grid{columns:3;column-gap:25px}.gallery-item{break-inside:avoid;margin:0 0 35px}.gallery-item>button{position:relative;display:block;width:100%;padding:0;border:0;background:#e7e5df;cursor:zoom-in;overflow:hidden}.gallery-item img{width:100%;height:auto;transition:transform .6s}.gallery-item>button:hover img{transform:scale(1.03)}.photo-view{position:absolute;bottom:0;left:0;right:0;color:white;font-size:11px;background:linear-gradient(transparent,rgba(0,0,0,.55));padding:45px 20px 18px;text-align:left;opacity:0;transition:opacity .2s}.gallery-item>button:hover .photo-view,.gallery-item>button:focus-visible .photo-view{opacity:1}.gallery-item figcaption{display:flex;justify-content:space-between;gap:10px;font-size:11px;padding-top:12px}.gallery-item figcaption>span:last-child{font-size:9px;color:var(--muted)}
#lightbox{border:0;background:#081525;color:white;width:100vw;height:100dvh;max-width:none;max-height:none;padding:45px 75px;margin:0;overflow:hidden}#lightbox::backdrop{background:#081525}#lightbox[open]{display:flex;align-items:center;justify-content:center}#lightbox figure{display:flex;align-items:center;flex-direction:column;gap:17px;max-width:100%;max-height:100%}#lightbox-image{max-height:calc(100dvh - 150px);max-width:calc(100vw - 150px);width:auto;height:auto;object-fit:contain}#lightbox-caption{font-size:13px}#lightbox button{position:absolute;border:1px solid #657180;width:auto;min-width:80px;min-height:44px;padding:12px 16px;color:white;background:#081525;cursor:pointer;font-size:10px;letter-spacing:.1em;text-transform:uppercase;line-height:1.4;transition:background-color .2s,border-color .2s}#lightbox button:hover{background:#20354e}.lightbox-close{right:23px;top:23px}.lightbox-prev{left:20px;top:auto;bottom:18px}.lightbox-next{right:20px;top:auto;bottom:18px}#lightbox-count{position:absolute;bottom:30px;margin:0;font-size:10px;letter-spacing:.15em}
.seo-intro{padding-bottom:65px}.seo-intro h1{font-size:clamp(62px,6.7vw,110px)}.large-copy{font-size:18px;max-width:600px;margin:30px 0 0;color:var(--muted)}.seo-overview{padding-top:0;display:grid;grid-template-columns:.8fr 1fr;gap:12%;align-items:center}.seo-overview img{aspect-ratio:4/5;object-fit:cover}.seo-overview h2{font-size:clamp(38px,4vw,64px);margin-bottom:27px}.seo-overview p{font-size:14px;color:var(--muted)}.seo-services{background:#f1f0eb}.seo-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 10%}.seo-service-grid h2{font-size:36px;margin:15px 0 22px}.seo-service-grid p{font-size:14px;color:var(--muted)}.seo-service-grid a{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:7px}.local-details{display:grid;grid-template-columns:1fr 1.3fr;gap:13%}.local-details address{margin:30px 0 20px}.local-details>div>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:340px}.faq h2{font-size:38px;margin-bottom:25px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:14px}.faq details p{font-size:13px;color:var(--muted);padding-top:16px;margin-bottom:0}
@media(min-width:1650px){.hero,.section,.header,.footer,.gallery-section{padding-left:max(5%,calc((100vw - 1500px)/2));padding-right:max(5%,calc((100vw - 1500px)/2))}.hero-images{gap:24px}.frame-one,.frame-three{height:550px}.frame-two{height:630px}}
@media(max-width:1000px){.header nav{gap:22px}.hero{padding-top:45px}.hero h1{font-size:82px}.hero-note{width:250px;margin-right:0}.hero-images{gap:12px}.frame-one,.frame-three{height:350px}.frame-two{height:410px}.section{padding:80px 6%}.selected-grid{column-gap:5%;row-gap:45px}.work>div{display:block}.work>div>span{display:block;margin-top:7px}.work-detail{padding-left:8%;padding-right:8%}.service-list>a{grid-template-columns:25px 1fr 1fr;gap:15px}.about{gap:7%}.contact-layout{gap:6%}.footer{padding-left:6%;padding-right:6%}.footer-top{gap:5%}.filters{gap:16px}.gallery-grid{column-gap:18px}.gallery-toolbar{align-items:flex-start}.local-details{gap:8%}}
@media(max-width:700px){body{font-size:15px}.header{padding:15px 5%;gap:12px;flex-wrap:wrap}.identity{gap:10px}.identity img{width:46px;height:46px}.identity>span{font-size:21px}.identity small{font-size:7px;margin-top:6px}.header nav{gap:20px;font-size:11px}.header nav>a:nth-child(2){display:none}.hero{padding:35px 4% 0}.hero-heading{display:block;padding:0 1% 30px}.eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:18px}.hero h1{font-size:clamp(56px,16vw,74px)}.hero-note{width:auto;padding:0;margin-top:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.hero-note p{font-size:12px;line-height:1.65;margin:0}.hero-note .text-link{font-size:10px;max-width:130px}.hero-images{grid-template-columns:1fr 1.15fr;gap:10px}.frame-one{height:300px}.frame-two{height:340px}.frame-three{height:220px;grid-column:1/-1}.frame-three img{object-position:center 39%}.hero-frame>span{font-size:8px;padding:38px 13px 12px}.hero-bottom{padding:18px 1%;font-size:7px;letter-spacing:.08em;align-items:center}.hero-bottom>a{font-size:9px;white-space:nowrap}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin:25px 0 0;font-size:13px;max-width:320px}h2{font-size:49px}.selected-grid{gap:35px 5%}.work h3{font-size:23px}.work>div>span{font-size:9px}.work-short{padding-top:75px}.work-wide{grid-column:1/-1}.work-detail{padding:0 16%;grid-column:1/-1}.work-detail>div{display:flex;flex-direction:row;align-items:center}.work>div{margin-top:14px}.center-action{margin-top:35px}.services{padding-top:0}.service-list>a{grid-template-columns:23px 1fr;gap:12px;padding:23px 0}.service-list h3{font-size:28px}.service-list p{grid-column:2;grid-row:2;font-size:12px;max-width:100%}.about{grid-template-columns:1fr;gap:35px}.about-image img{aspect-ratio:4/3}.about-copy h2{font-size:49px}.about-copy>p:not(.eyebrow){font-size:13px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact h2{font-size:56px}.contact-layout>div>p{font-size:13px}.footer{padding:40px 6% 22px}.footer-top{grid-template-columns:1fr 1fr;gap:25px}.footer-logo{grid-column:1/-1;max-width:230px;justify-self:center;margin-bottom:10px}.footer-links{align-self:start;padding-top:5px}.footer-top .footer-links>a{font-size:11px}.footer-top address{font-size:12px}.footer-top>div>a{font-size:10px}.footer-bottom{display:block;font-size:8px}.footer-bottom>span:last-child{margin-top:15px;justify-content:space-between}.portfolio-intro{padding-top:45px;padding-bottom:30px}.portfolio-intro h1{font-size:61px}.gallery-section{padding:0 5% 50px}.gallery-toolbar{display:block;padding-bottom:25px}.filters{gap:8px 20px}.filters button{font-size:10px}#gallery-count{margin-top:15px;font-size:9px}.gallery-grid{columns:2;column-gap:14px}.gallery-item{margin-bottom:22px}.gallery-item figcaption{font-size:10px;line-height:1.5}.gallery-item figcaption>span:last-child{display:none}.photo-view{display:none}#lightbox{padding:55px 12px 65px}#lightbox-image{max-width:calc(100vw - 24px);max-height:calc(100dvh - 160px)}#lightbox figure{gap:20px}#lightbox button{min-height:44px}.lightbox-close{top:12px;right:12px}.lightbox-prev,.lightbox-next{top:auto;bottom:16px}.lightbox-prev{left:20px}.lightbox-next{right:20px}#lightbox-count{bottom:27px}.seo-intro h1{font-size:59px}.large-copy{font-size:15px}.seo-overview{grid-template-columns:1fr;gap:35px;padding-top:0}.seo-overview img{aspect-ratio:1/1}.seo-overview h2{font-size:44px}.seo-service-grid{grid-template-columns:1fr;gap:40px}.seo-service-grid h2{font-size:34px}.local-details{grid-template-columns:1fr;gap:45px}.faq h2{font-size:36px}}
@media(max-width:390px){.identity>span{font-size:19px}.header nav{gap:14px}.header nav>a:first-child{display:none}.hero h1{font-size:clamp(54px,16vw,62px)}.hero-note{gap:10px}.hero-note p{font-size:11px}.hero-note .text-link{max-width:110px}.frame-one{height:260px}.frame-two{height:300px}.work h3{font-size:21px}.contact h2{font-size:49px}.footer-top{grid-template-columns:1fr}.footer-logo{grid-column:auto}.footer-links{justify-self:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}


@media(max-width:700px){.header nav>.nav-contact{padding:10px 14px;font-size:10px;letter-spacing:.04em}.button{padding:16px 24px}}

/* Keep the complete navigation accessible at every screen width. */
.header nav{gap:clamp(18px,2.5vw,36px)}
@media(max-width:800px){.header{flex-wrap:wrap;justify-content:center}.header nav{width:100%;justify-content:center;flex-wrap:wrap;gap:8px 22px}.header nav>a:first-child{display:block}.header nav>a{min-height:44px;display:inline-flex;align-items:center}.header nav>.nav-contact{margin-left:0}}
@media(max-width:800px){.header nav>a:nth-child(2){display:inline-flex}}
@media(max-width:520px){.header nav{gap:6px 12px;font-size:11px}.header nav>.nav-contact{padding:10px;font-size:10px}}
