@charset "UTF-8";
[hidden]{display:none!important}
:root{--paper:#f7f6f0;--white:#fffefa;--ink:#243c32;--muted:#68746c;--line:#d9ded4;--sage:#e4e9df;--sand:#c6ad88;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9b783f;outline-offset:5px}button:disabled{cursor:default}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section{padding-block:100px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2,.serif{font-family:var(--serif)}p{max-width:65ch}svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;fill:none;flex:none}.skip-link{position:fixed;top:-70px;left:20px;padding:12px 20px;background:var(--ink);color:white;z-index:100}.skip-link:focus{top:12px}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;text-transform:uppercase;display:flex;align-items:center;gap:12px;line-height:1.4}.eyebrow::before{content:"";height:1px;width:25px;background:currentColor;opacity:.6}.section-heading{font-size:clamp(38px,4.2vw,56px);line-height:1.11;letter-spacing:-1.8px}.section-heading em{font-weight:400}.lede{color:var(--muted);line-height:1.8;font-size:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:52px;padding:14px 23px;background:var(--ink);border:1px solid var(--ink);color:var(--white);font-size:12px;font-weight:500;letter-spacing:.3px;transition:background .2s,color .2s,transform .2s}.button:hover{background:#365344;transform:translateY(-1px)}.button svg{width:17px;height:17px}.button-outline{background:transparent;color:var(--ink);border-color:#bac5b9}.button-outline:hover{background:var(--sage)}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:12px;padding-bottom:5px;border-bottom:1px solid #aeb9ad}.text-link:hover{border-color:var(--ink)}.text-link svg{width:16px;height:16px}.icon-button{border:1px solid var(--line);background:transparent;display:grid;place-items:center;width:44px;height:44px;border-radius:50%}.icon-button:hover{background:var(--sage)}
.site-header{height:100px;position:sticky;top:0;background:rgba(247,246,240,.97);z-index:30;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;height:100%}.brand{display:block;flex:none}.brand img{width:258px;height:auto}.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.desktop-nav a{font-size:12px;position:relative;padding:10px 0}.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--ink);transition:right .2s}.desktop-nav a:hover::after{right:0}.header-cta{margin-left:15px;min-height:44px;padding:10px 18px;gap:18px}.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent}.mobile-nav{position:absolute;inset:100% 0 auto;background:var(--paper);padding:12px 24px 28px;border-bottom:1px solid var(--line)}.mobile-nav[hidden]{display:none}.mobile-nav a{display:block;padding:12px 8px;border-bottom:1px solid var(--line);font-size:15px}.mobile-nav a:last-child{border:0}
.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center;padding-block:54px 58px}.hero-copy{padding:6px 0 12px}.hero h1{font-size:clamp(52px,5.25vw,77px);line-height:1.08;letter-spacing:-3px;margin-top:28px;margin-bottom:25px}.hero h1 em{font-weight:400;color:#65775f}.hero .lede{max-width:385px}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:33px;flex-wrap:wrap}.hero-actions .text-link{font-size:11px}.hero-media{position:relative;padding:0 0 37px 22px}.hero-image{background:#e7eadd;position:relative}.hero-image img{width:100%;aspect-ratio:1.333;object-fit:cover}.hero-image::before{content:"";position:absolute;inset:20px -20px -20px 20px;border:1px solid #b7c3ae;z-index:-1}.hero-caption{display:flex;justify-content:space-between;align-items:flex-start;padding-top:17px;font-size:11px;gap:15px}.hero-caption strong{font-weight:500;font-size:12px}.hero-caption span{display:block;color:var(--muted);font-size:9px;letter-spacing:.5px;margin-top:3px}.hero-caption .image-type{padding-top:2px;text-align:right;letter-spacing:.4px;font-size:9px;color:var(--muted)}.hero-index{position:absolute;right:-1px;top:-21px;font-size:9px;letter-spacing:2px;color:var(--muted)}.hero-scroll{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:9px;letter-spacing:1.4px;text-transform:uppercase;margin-top:44px}.hero-scroll svg{width:14px;height:14px}.services-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:24px}.services-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}.services-strip p{font-size:10px;color:var(--muted);letter-spacing:1.3px;text-transform:uppercase}.strip-items{display:flex;gap:65px;font-size:12px;align-items:center}.strip-items span{display:flex;gap:12px;align-items:center}.strip-items i{width:4px;height:4px;background:#9baa91;border-radius:50%}
.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-top .eyebrow{margin-bottom:17px}.section-top .lede{max-width:335px;font-size:13px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 28px}.project-card{min-width:0}.project-image{display:block;width:100%;padding:0;border:0;background:#e3e6df;position:relative;overflow:hidden;text-align:left}.project-image>img{width:100%;aspect-ratio:12/7;object-fit:cover;transition:transform .55s}.project-image:hover>img{transform:scale(1.035)}.project-image .expand{position:absolute;bottom:12px;right:12px;background:rgba(255,254,250,.95);border:0;width:33px;height:33px;display:grid;place-items:center}.project-image .expand svg{width:15px;height:15px}.project-kind{position:absolute;left:12px;top:12px;padding:3px 8px;background:rgba(255,254,250,.94);font-size:8px;letter-spacing:.4px}.project-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:17px 0 14px;border-bottom:1px solid var(--line)}.project-meta h3{font-family:var(--serif);font-size:26px;letter-spacing:-.7px;line-height:1.2}.project-meta p{font-size:10px;color:var(--muted);margin-top:4px}.project-action{background:transparent;border:1px solid #c8d0c3;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;flex:none;transition:background .2s}.project-action:hover{background:var(--sage)}.project-action svg{width:15px;height:15px}.project-feature-link{display:flex;align-items:center;gap:8px;font-size:10px;margin-top:11px}.project-feature-link svg{width:13px;height:13px}.portfolio-note{margin-top:25px;font-size:10px;color:var(--muted);display:flex;align-items:center;gap:8px}.portfolio-note svg{width:13px;height:13px}
.about-section{background:var(--ink);color:var(--paper);padding:80px 0}.about-grid{display:grid;grid-template-columns:.95fr 1fr;gap:90px;align-items:center}.about-copy .section-heading{font-size:48px;margin:24px 0;letter-spacing:-1.4px}.about-copy p{color:#c4d0c4;font-size:14px;line-height:1.9;max-width:450px}.about-image img{width:100%;aspect-ratio:2.1;object-fit:cover}.about-image figcaption{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:#b5c6b7;margin-top:15px;display:flex;justify-content:space-between}.about-foot{display:flex;gap:25px;border-top:1px solid #516456;margin-top:35px;padding-top:25px;align-items:center}.about-foot .year{font-family:var(--serif);font-size:32px;color:#e0cfb4}.about-foot span:last-child{font-size:10px;line-height:1.7;max-width:180px;letter-spacing:.3px;color:#d0d9cd}.about-image .image-line{width:50px;height:1px;background:#8da38c;margin:35px 0 26px}.about-image .serif{font-size:27px;color:#e1d9c7;max-width:380px;line-height:1.4}
.services-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:90px}.services-intro .section-heading{margin:22px 0}.services-intro .lede{font-size:13px;max-width:310px}.services-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:36px 1fr;gap:22px;padding:27px 0;border-bottom:1px solid var(--line)}.service-number{font-size:10px;color:#7c8a79;padding-top:6px}.service-row h3{font-family:var(--serif);font-size:29px;margin-bottom:8px;letter-spacing:-.6px}.service-row p{font-size:13px;line-height:1.8;color:var(--muted);max-width:440px}.service-row:last-child{padding-bottom:0;border-bottom:0}
.contact-section{padding-block:72px;background:var(--sage)}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px}.contact-intro .section-heading{margin:22px 0;max-width:480px;font-size:53px}.contact-intro p{font-size:13px;color:var(--muted);max-width:375px}.contact-options{display:grid;gap:0;align-content:center}.contact-item{display:flex;gap:21px;padding:20px 0;border-bottom:1px solid #c7d0c0;align-items:flex-start}.contact-item:last-child{border:0}.contact-item>svg{margin-top:4px;width:20px;height:20px}.contact-item small{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:4px}.contact-item a,.contact-item address{font-size:17px;font-style:normal;line-height:1.65}.contact-item a:hover{text-decoration:underline;text-underline-offset:4px}.contact-item address{font-size:13px}.contact-item .contact-direction{font-size:10px;text-decoration:underline;display:block;margin-top:5px}.site-footer{padding:34px 0 25px;background:var(--paper)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.footer-brand{width:220px}.footer-links{display:flex;gap:28px;flex-wrap:wrap;font-size:11px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:20px;justify-content:space-between;color:var(--muted);font-size:9px}.back-top{display:flex;gap:10px;align-items:center}.back-top svg{width:12px;height:12px}
.breadcrumbs{display:flex;gap:11px;align-items:center;font-size:10px;color:var(--muted);padding-top:30px}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs svg{width:12px;height:12px}.project-intro{padding:50px 0 38px;display:flex;justify-content:space-between;gap:30px;align-items:flex-end}.project-intro h1{font-size:clamp(52px,6vw,80px);line-height:1.1;letter-spacing:-3px;margin:16px 0 8px}.project-location{font-size:12px;display:flex;align-items:center;gap:8px;color:var(--muted)}.project-location svg{width:14px;height:14px}.project-intro>p{max-width:340px;font-size:14px;color:var(--muted);line-height:1.8}.project-main{display:grid;grid-template-columns:1.6fr .8fr;gap:50px;align-items:center;padding-bottom:65px}.project-main-image{background:#e9ecdf;position:relative}.project-main-image button{display:block;border:0;background:none;padding:0;width:100%;position:relative}.project-main-image img{width:100%;aspect-ratio:12/7;object-fit:contain}.project-main-image .image-zoom{position:absolute;right:15px;bottom:15px;display:flex;align-items:center;gap:10px;background:var(--paper);padding:10px 14px;font-size:10px;box-shadow:0 1px 8px #0001}.project-main-image .image-zoom svg{width:15px;height:15px}.project-main-figure figcaption{color:var(--muted);font-size:9px;margin-top:12px;display:flex;align-items:center;gap:7px}.project-main-figure figcaption svg{width:12px;height:12px}.project-facts{margin:0}.project-facts div{padding:17px 0;border-bottom:1px solid var(--line)}.project-facts div:first-child{padding-top:0}.project-facts dt{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.project-facts dd{margin:0;font-family:var(--serif);font-size:23px;line-height:1.4}.project-sidebar>.button{margin-top:25px;width:100%;font-family:var(--sans);font-size:12px}.project-overview{border-top:1px solid var(--line);padding-block:70px;display:grid;grid-template-columns:.8fr 1.3fr;gap:90px}.project-overview .section-heading{margin-top:20px;max-width:350px;font-size:46px}.project-overview p{font-size:14px;color:var(--muted);line-height:1.9}.project-overview p+p{margin-top:20px}.project-features{margin-top:30px;display:flex;gap:20px;flex-wrap:wrap}.project-feature{display:flex;gap:10px;align-items:center;font-size:10px;border:1px solid var(--line);padding:10px 13px}.project-feature svg{width:17px;height:17px}.project-next{background:#eeeee5;padding:44px 0}.project-next .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.project-next h2{font-size:32px;letter-spacing:-.8px;margin-bottom:6px}.project-next p{font-size:12px;color:var(--muted)}.project-contact{background:var(--ink);color:var(--paper);padding-block:60px}.project-contact .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.project-contact h2{font-family:var(--serif);font-size:40px;letter-spacing:-1px;margin-bottom:10px}.project-contact p{font-size:12px;color:#c7d0c4}.project-contact .button{background:var(--paper);color:var(--ink);border-color:var(--paper);flex:none}.project-contact .button:hover{background:#e2e6d9}
.lightbox{position:fixed;border:0;padding:0;background:var(--paper);color:var(--ink);width:min(860px,calc(100vw - 40px));max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 25px 120px #0004}.lightbox::backdrop{background:rgba(13,25,19,.84);backdrop-filter:blur(4px)}.lightbox-header{display:flex;justify-content:space-between;align-items:center;padding:17px 24px;gap:20px;border-bottom:1px solid var(--line)}.lightbox-header h2{font-family:var(--serif);font-size:25px;letter-spacing:-.4px}.lightbox-close{width:34px;height:34px;flex:none}.lightbox-stage{position:relative;padding:28px 55px;background:#e9ece3}.lightbox-stage img{width:100%;max-width:710px;max-height:60vh;object-fit:contain;margin:auto}.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);background:var(--paper);border:0;width:35px;height:35px;border-radius:50%;display:grid;place-items:center}.gallery-nav:hover{background:white}.gallery-nav.prev{left:10px}.gallery-nav.next{right:10px}.gallery-nav svg{width:17px;height:17px}.lightbox-bottom{padding:18px 24px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.lightbox-bottom p{color:var(--muted);font-size:11px}.lightbox-bottom a{font-size:11px;text-decoration:underline;text-underline-offset:4px}.gallery-counter{font-size:10px;letter-spacing:2px;white-space:nowrap;color:var(--muted)}.lightbox-bottom .gallery-detail{margin-top:9px}.noscript-note{font-size:12px;color:var(--muted);padding:16px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.hero h1{font-size:80px}.hero{padding-block:65px 70px}}
@media(max-width:1120px){.wrap{width:calc(100% - 72px)}.brand img{width:230px}.desktop-nav{gap:20px}.header-cta{margin-left:0;gap:10px;padding-inline:14px}.hero{gap:25px}.hero h1{font-size:61px}.hero-media{padding-left:0}.hero-actions{gap:20px}.hero .lede{font-size:14px}.hero-scroll{margin-top:30px}.strip-items{gap:30px}.about-grid{gap:55px}.services-layout{gap:55px}.contact-grid{gap:50px}.project-main{gap:35px}}
@media(max-width:900px){.site-header{height:82px}.brand img{width:235px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}.wrap{width:calc(100% - 48px)}.hero{gap:28px;grid-template-columns:1fr 1fr;padding-block:44px 35px}.hero h1{font-size:49px;letter-spacing:-2px}.hero h1 em{white-space:nowrap}.hero .lede{font-size:13px}.hero-actions{gap:17px}.hero-actions .button{min-height:46px;padding:12px 16px;gap:14px;font-size:11px}.hero-actions .text-link{font-size:10px}.hero-media{padding-bottom:20px}.hero-image::before{inset:12px -12px -12px 12px}.hero-scroll{display:none}.hero-caption{gap:8px}.hero-caption strong{font-size:10px}.hero-caption .image-type{font-size:8px;max-width:85px}.services-strip .wrap{flex-direction:column;gap:14px}.strip-items{gap:45px}.section{padding-block:70px}.section-top{gap:25px}.section-top .lede{max-width:270px;font-size:12px}.portfolio-grid{gap:30px 20px}.project-meta h3{font-size:23px}.project-meta p{font-size:9px}.project-kind{font-size:7px;left:8px;top:8px}.about-grid{gap:38px}.about-copy .section-heading{font-size:38px}.about-copy p{font-size:12px}.about-image .serif{font-size:22px}.about-foot{gap:17px}.services-layout{grid-template-columns:.8fr 1.2fr;gap:40px}.service-row{gap:10px;grid-template-columns:24px 1fr}.service-row h3{font-size:25px}.service-row p{font-size:12px}.contact-intro .section-heading{font-size:41px}.contact-grid{gap:35px}.contact-item a{font-size:15px}.project-intro{align-items:flex-start}.project-intro>p{max-width:250px;margin-top:30px;font-size:12px}.project-main{grid-template-columns:1.4fr .8fr;gap:28px}.project-facts dd{font-size:20px}.project-facts div{padding:12px 0}.project-overview{gap:40px}.project-overview .section-heading{font-size:38px}.project-contact h2{font-size:35px}}
@media(max-width:650px){html{scroll-padding-top:100px}.wrap{width:calc(100% - 40px)}.site-header{height:76px}.brand img{width:221px}.menu-toggle{width:40px;height:40px}.hero{grid-template-columns:1fr;gap:38px;padding-block:37px 34px}.hero-copy{padding:0}.hero h1{font-size:59px;letter-spacing:-2.6px;margin-top:24px;margin-bottom:22px}.eyebrow{font-size:9px;letter-spacing:1.8px}.hero .lede{font-size:14px;max-width:360px}.hero-actions{margin-top:28px;gap:24px}.hero-actions .button{font-size:11px;padding:14px 19px;min-height:49px;gap:18px}.hero-actions .text-link{font-size:11px}.hero-media{margin-right:10px;padding:0}.hero-image img{aspect-ratio:1.43}.hero-caption{padding-top:17px}.hero-caption strong{font-size:11px}.hero-caption span{font-size:9px}.hero-caption .image-type{font-size:8px;max-width:130px}.hero-index{display:none}.services-strip{padding-block:21px}.services-strip p{font-size:8px;letter-spacing:1.3px}.strip-items{gap:17px;font-size:10px;justify-content:space-between;width:100%}.strip-items span{gap:6px}.strip-items i{width:3px;height:3px}.section{padding-block:57px}.section-top{display:block;margin-bottom:30px}.section-top .section-heading{font-size:43px;letter-spacing:-1.5px}.section-top .lede{max-width:340px;margin-top:19px;font-size:13px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 16px}.project-image .expand{width:27px;height:27px;right:7px;bottom:7px}.project-kind{font-size:8px;letter-spacing:0;padding:2px 5px;top:6px;left:6px}.project-meta{padding:12px 0;align-items:flex-start;gap:5px}.project-meta h3{font-size:22px;letter-spacing:-.65px;line-height:1.15}.project-meta p{font-size:10px;line-height:1.5;margin-top:5px}.project-action{width:26px;height:26px;margin-top:2px}.project-action svg{width:12px;height:12px}.project-feature-link{font-size:9px;gap:4px;margin-top:8px}.portfolio-note{font-size:9px;align-items:flex-start;line-height:1.6}.portfolio-note svg{margin-top:1px;flex:none}.about-section{padding:54px 0}.about-grid{grid-template-columns:1fr;gap:38px}.about-copy .section-heading{font-size:43px;margin-block:21px}.about-copy p{font-size:13px;max-width:100%}.about-foot{margin-top:25px;padding-top:20px;gap:25px}.about-foot .year{font-size:35px}.about-foot span:last-child{max-width:230px}.about-image img{aspect-ratio:2.2}.about-image .image-line{display:none}.about-image .serif{font-size:24px;margin-top:25px;max-width:310px}.services-layout{grid-template-columns:1fr;gap:35px}.services-intro .section-heading{font-size:44px;margin-block:21px}.services-intro .lede{max-width:360px;font-size:13px}.service-row{grid-template-columns:28px 1fr;gap:18px;padding:24px 0}.service-row h3{font-size:29px}.service-row p{font-size:13px}.contact-section{padding-block:52px}.contact-grid{grid-template-columns:1fr;gap:24px}.contact-intro .section-heading{font-size:46px;max-width:350px}.contact-intro p{font-size:13px}.contact-item{gap:17px;padding-block:18px}.contact-item a{font-size:18px}.contact-item address{font-size:13px}.footer-top{display:block;margin-bottom:25px}.footer-brand{width:215px}.footer-links{gap:18px;font-size:10px;margin-top:22px}.footer-bottom{font-size:8px;align-items:center}.site-footer{padding-block:27px 24px}.breadcrumbs{font-size:9px;padding-top:24px;gap:8px}.project-intro{display:block;padding:35px 0 30px}.project-intro h1{font-size:59px;letter-spacing:-2.6px;margin-top:17px}.project-intro>p{max-width:380px;font-size:13px;margin-top:23px}.project-location{font-size:11px}.project-main{display:flex;flex-direction:column;gap:25px;padding-bottom:42px;align-items:stretch}.project-main-image .image-zoom{right:9px;bottom:9px;padding:7px 10px;font-size:9px}.project-main-figure figcaption{font-size:8px;line-height:1.6;align-items:flex-start}.project-main-figure figcaption svg{flex:none;margin-top:1px}.project-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.project-facts div{padding:15px 0}.project-facts div:first-child{padding-top:15px}.project-facts dt{font-size:8px}.project-facts dd{font-size:21px}.project-sidebar>.button{grid-column:1/-1;margin-top:23px;width:max-content;gap:30px}.project-overview{display:block;padding-block:45px}.project-overview .section-heading{font-size:42px;margin-bottom:26px}.project-overview p{font-size:13px}.project-features{gap:9px;margin-top:23px}.project-feature{font-size:9px;padding:8px 10px;gap:7px}.project-next{padding-block:32px}.project-next .wrap{align-items:flex-start;flex-direction:column;gap:22px}.project-next h2{font-size:31px}.project-next p{font-size:12px}.project-contact{padding-block:43px}.project-contact .wrap{display:block}.project-contact h2{font-size:36px;max-width:310px}.project-contact .button{margin-top:25px}.lightbox{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.lightbox-header{padding:14px 17px}.lightbox-header h2{font-size:23px}.lightbox-stage{padding:30px 30px}.gallery-nav{width:26px;height:26px}.gallery-nav svg{width:14px;height:14px}.gallery-nav.prev{left:3px}.gallery-nav.next{right:3px}.lightbox-bottom{padding:16px 17px;gap:12px}.lightbox-bottom p,.lightbox-bottom a{font-size:10px}.gallery-counter{font-size:9px}}
@media(max-width:370px){.hero h1{font-size:51px}.hero-actions{gap:17px}.hero-actions .button{gap:10px;padding:13px 14px}.brand img{width:198px}.project-meta h3{font-size:20px}.strip-items{font-size:9px;gap:12px}.project-action{width:24px;height:24px}.project-intro h1{font-size:51px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* A softer, image-led presentation; all restored content remains visible. */
:root {
  --radius: 26px;
  --radius-small: 18px;
  --sand-light: #eee5d6;
  --panel-shadow: 0 12px 36px rgba(36,60,50,.045);
}
.button { border-radius: 100px; }
.menu-toggle { border-radius: 13px; }
.hero-media { isolation: isolate; }
.hero-image { border-radius: 32px; box-shadow: 0 18px 45px rgba(36,60,50,.1); }
.hero-image img { border-radius: inherit; }
.hero-image::before { border: 0; border-radius: inherit; background: #e5e9dc; inset: 18px -18px -18px 18px; }
.hero-caption { padding-inline: 7px; }
.hero-index { right: 9px; }
.project-image { border-radius: 20px; box-shadow: var(--panel-shadow); }
.project-kind { border-radius: 100px; padding: 4px 10px; }
.project-image .expand { border-radius: 50%; }
.project-meta { padding-inline: 3px; }
.project-feature-link { margin-left: 3px; }
.about-image img { border-radius: var(--radius); }
.project-main-image { border-radius: var(--radius); overflow: hidden; box-shadow: var(--panel-shadow); }
.project-main-image .image-zoom, .project-feature { border-radius: 12px; }
.lightbox { border-radius: 24px; }
.lightbox-stage img { border-radius: 12px; }
.contact-options { border: 1px solid rgba(255,255,255,.5); background: rgba(255,254,250,.57); border-radius: var(--radius); padding: 10px 30px; }
.card-icon, .service-symbol, .care-icon, .package-icon {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  width: 48px; height: 48px; background: #e9edde; color: #546a47; border-radius: 15px;
}
.card-icon svg, .care-icon svg, .package-icon svg { width: 25px; height: 25px; stroke-linecap: round; stroke-linejoin: round; }
.strip-items a:hover { text-decoration: underline; text-underline-offset: 4px; }

/* Company story: varied compositions, rather than consecutive text blocks. */
.company-jump-links {
  display: grid; grid-template-columns: repeat(4,1fr); gap: 14px;
  border-top: 1px solid #516456; margin-top: 43px; padding-top: 25px;
}
.company-jump-links a {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  font-size: 12px; color: #e3e9df; padding: 13px 17px; border-radius: 14px;
  background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.1);
  transition: background .2s;
}
.company-jump-links a:hover { color: white; background: rgba(255,255,255,.12); }
.company-jump-links svg { width: 15px; height: 15px; color: #c1cfb5; }
.company-sections { padding-top: 76px; padding-bottom: 82px; }
.company-sections h2 { font-family: var(--serif); font-size: 44px; line-height: 1.14; font-weight: 400; letter-spacing: -1.25px; margin: 19px 0 25px; }
.company-copy p { font-size: 14px; color: var(--muted); line-height: 1.9; max-width: 100%; }
.company-copy p+p { margin-top: 19px; }
.mission-block {
  display: grid; grid-template-columns: .75fr 1.25fr; gap: 62px; align-items: center;
  background: #f0eee5; border: 1px solid #e7e5da; border-radius: 32px; padding: 26px;
}
.mission-figure { position: relative; min-width: 0; align-self: stretch; }
.mission-figure img { width: 100%; height: 100%; min-height: 440px; max-height: 570px; object-fit: cover; border-radius: 23px; }
.mission-figure figcaption {
  position: absolute; bottom: 18px; left: 17px; right: 17px; padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.3); border-radius: 12px;
  background: rgba(36,60,50,.85); color: #fffefa; font-size: 10px; line-height: 1.5;
}
.mission-content { padding: 25px 29px 25px 0; }
.mission-content .company-copy { max-width: 640px; }
.mission-values { list-style: none; margin: 30px 0 0; padding: 26px 0 0; border-top: 1px solid #dadccf; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.mission-values li { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; font-size: 11px; line-height: 1.5; }
.mission-values .card-icon { width: 39px; height: 39px; background: #e2e7d8; border-radius: 12px; }
.mission-values svg { width: 21px; height: 21px; }
.history-block { padding-top: 86px; }
.history-layout { display: grid; grid-template-columns: 330px minmax(0,1fr); gap: 56px; align-items: start; }
.history-heading { position: sticky; top: 130px; min-width: 0; }
.history-heading>p { font-size: 14px; line-height: 1.85; color: var(--muted); margin-top: 0; }
.history-heading h2 { margin-bottom: 23px; }
.history-figure { margin-top: 29px; }
.history-figure img { width: 100%; height: auto; border-radius: 18px; border: 5px solid var(--white); box-shadow: var(--panel-shadow); }
.history-figure figcaption { font-size: 10px; color: var(--muted); padding: 9px 5px 0; }
.history-highlights { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 29px 0 0; }
.history-highlights>div { display: flex; flex-direction: column-reverse; border-top: 1px solid var(--line); padding-top: 15px; gap: 3px; }
.history-highlights dd { font-family: var(--serif); font-size: 37px; letter-spacing: -1px; margin: 0; color: #687a59; }
.history-highlights dt { font-size: 10px; color: var(--muted); line-height: 1.5; }
.history-content { min-width: 0; }
.history-table-wrap { max-width: 100%; border: 1px solid #dce1d4; border-radius: 23px; overflow: hidden; background: var(--white); box-shadow: var(--panel-shadow); }
.history-table { border-collapse: collapse; width: 100%; table-layout: fixed; text-align: left; }
.history-table thead { background: #e7ebdf; }
.history-table thead th { font-size: 9px; font-weight: 500; letter-spacing: .7px; text-transform: uppercase; padding: 17px 19px; }
.history-table th:first-child { width: 43%; }
.history-table th:nth-child(2) { width: 18%; }
.history-table tbody th, .history-table tbody td { font-size: 12px; line-height: 1.55; font-weight: 400; padding: 12px 19px; border-bottom: 1px solid #e3e6dc; vertical-align: top; overflow-wrap: anywhere; }
.history-table tbody th { font-weight: 500; }
.history-table tbody td:nth-child(2) { color: #607650; font-variant-numeric: tabular-nums; }
.history-table tbody td:last-child { color: var(--muted); }
.history-table tbody tr:nth-child(even) { background: #f5f6ee; }
.history-table tbody tr:last-child>* { border-bottom: 0; }
.historic-stage { color: #657054; }
.historic-stage small { display: block; text-transform: uppercase; font-size: 8px; letter-spacing: .7px; margin-top: 3px; color: #6a775d; }
.history-context { font-size: 11px; color: var(--muted); line-height: 1.8; max-width: 100%; margin-top: 18px; padding-inline: 3px; }
.history-closing { font-family: var(--serif); font-size: 23px; line-height: 1.5; max-width: 830px; margin-top: 24px; color: #57674f; }
.people-block { display: grid; grid-template-columns: 1fr 1.2fr; gap: 26px; margin-top: 78px; align-items: stretch; }
.people-block>section { padding: 39px; border-radius: 27px; position: relative; }
.director-profile { background: var(--white); border: 1px solid #e2e5da; box-shadow: var(--panel-shadow); }
.people-block h2 { font-size: 35px; }
.director-monogram { display: grid; place-items: center; width: 72px; height: 72px; border-radius: 50%; background: #e7ebdf; color: #607453; font-family: var(--serif); font-size: 26px; letter-spacing: -1px; margin: 28px 0 20px; border: 5px solid #f5f6ef; }
.director-name { font-family: var(--serif); font-size: 28px; line-height: 1.3; font-weight: 400; margin: 0 0 19px; }
.owners-message { background: var(--sand-light); border: 1px solid #e5d9c6; }
.owners-message h2 { padding-right: 22px; }
.quotation-mark { position: absolute; top: 26px; right: 34px; font-family: var(--serif); font-size: 99px; line-height: 1; color: #c6b594; pointer-events: none; }
.owners-message blockquote { margin: 0; padding: 8px 0 0; }
.owners-message .company-copy p { font-family: var(--serif); font-size: 18px; line-height: 1.75; color: #52604d; }
.owners-message .company-copy p+p { margin-top: 22px; }

/* Services now have the page width to combine generous images with complete copy. */
.expanded-services { padding-top: 72px; border-top: 1px solid var(--line); display: block; }
.services-guide { display: grid; grid-template-columns: 1fr 1fr; gap: 15px 100px; position: static; margin-bottom: 66px; }
.services-guide>.eyebrow { grid-column: 1; grid-row: 1; }
.services-guide .section-heading { grid-column: 1; grid-row: 2 / 4; font-size: 57px; line-height: 1.12; letter-spacing: -1.6px; margin: 0; }
.services-guide>.lede { grid-column: 2; grid-row: 2; font-size: 14px; max-width: 400px; align-self: end; }
.service-guide-contact { grid-column: 2; grid-row: 3; justify-self: start; align-self: start; margin: 0; font-size: 12px; }
.service-jump-links { grid-column: 1 / -1; grid-row: 4; display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; margin-top: 22px; border: 0; }
.service-jump-links a { display: flex; align-items: center; gap: 15px; padding: 20px; background: #ecede3; border: 1px solid #e0e4d6; border-radius: 17px; font-size: 13px; transition: background .2s; }
.service-jump-links a:nth-child(2) { background: #f0eade; border-color: #e8decd; }
.service-jump-links a:hover { background: #e1e7d7; }
.service-jump-links a span { color: #728267; font-size: 10px; letter-spacing: .7px; }
.service-jump-links a svg { width: 16px; height: 16px; margin-left: auto; }
.service-content { min-width: 0; }
.full-service { padding: 0 0 72px; margin-bottom: 72px; border-bottom: 1px solid var(--line); }
.full-service:last-child { padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
.full-service-heading { position: relative; padding-left: 78px; margin-bottom: 25px; }
.service-symbol { width: 57px; height: 57px; position: absolute; left: 0; top: 4px; background: #e6eadd; border-radius: 18px; }
.service-symbol svg { width: 29px; height: 29px; stroke-linecap: round; stroke-linejoin: round; }
.full-service-heading .service-number { letter-spacing: 1.7px; font-size: 9px; color: #697b60; }
.full-service-heading h3 { font-family: var(--serif); font-size: 43px; line-height: 1.15; letter-spacing: -1.2px; margin-top: 15px; }
.full-service p { font-size: 14px; line-height: 1.85; color: var(--muted); max-width: 100%; }
.full-service p+p { margin-top: 17px; }
.full-service p a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.service-lead { display: grid; grid-template-columns: 1fr 1.1fr; gap: 65px; align-items: center; }
.service-lead .full-service-heading { margin-bottom: 0; }
.service-subheading { font-family: var(--serif); font-weight: 400; font-size: 29px; line-height: 1.25; letter-spacing: -.5px; margin: 40px 0 25px; }
.service-project { display: grid; grid-template-columns: 1fr 1.1fr; gap: 37px; align-items: center; padding: 27px; margin-top: 24px; background: var(--white); border: 1px solid #e3e5da; border-radius: 28px; box-shadow: var(--panel-shadow); }
.service-project figure { min-width: 0; }
.service-project img { width: 100%; aspect-ratio: 12/7; object-fit: cover; border-radius: 19px; }
.service-project figcaption { font-size: 10px; color: var(--muted); margin: 10px 5px 0; }
.service-project:nth-of-type(even) { grid-template-columns: 1.1fr 1fr; background: #eeefe5; }
.service-project:nth-of-type(even)>figure { order: 2; }
.service-project>div { padding: 7px 6px; }
.service-project-label { font-size: 9px; letter-spacing: 1.5px; color: #6e7c64; }
.service-project h5 { font-family: var(--serif); font-size: 33px; letter-spacing: -.7px; font-weight: 400; line-height: 1.25; margin: 9px 0 17px; }
.service-project p { font-size: 14px; line-height: 1.8; }
.service-project p+p { margin-top: 14px; }
.service-project .text-link { margin-top: 20px; font-size: 12px; }
.full-service .service-note { font-size: 11px; line-height: 1.8; padding-left: 16px; border-left: 2px solid #b9c4ac; margin-top: 24px; color: #64725f; }
.construction-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 62px; align-items: center; }
.construction-intro .full-service-heading { padding-left: 0; padding-top: 78px; }
.construction-intro .service-symbol { top: 0; }
.construction-intro figure { min-width: 0; }
.construction-intro img { width: 100%; height: auto; border-radius: 25px; box-shadow: var(--panel-shadow); }
.construction-intro figcaption { font-size: 10px; color: var(--muted); padding: 10px 5px 0; }
.construction-details { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 35px; }
.construction-details article { padding: 29px; border: 1px solid #dfe4d5; background: #eff1e7; border-radius: 22px; }
.construction-details article:nth-child(2) { background: #f1ece2; border-color: #e6dece; }
.construction-details article:nth-child(3) { background: var(--white); border-color: #e3e5da; }
.service-card-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 23px; }
.service-card-top .card-icon { background: rgba(255,254,250,.82); }
.card-number { font-size: 10px; letter-spacing: 1px; color: #859177; }
.construction-details h4 { font-family: var(--serif); font-weight: 400; font-size: 27px; line-height: 1.25; letter-spacing: -.5px; margin: 0 0 17px; }
.construction-details p { font-size: 13px; line-height: 1.9; }
.full-service>.text-link { margin-top: 27px; font-size: 12px; }
.management-lead { display: grid; grid-template-columns: .9fr 1.1fr; gap: 55px; align-items: center; }
.management-lead .full-service-heading { padding-left: 0; padding-top: 78px; }
.management-lead .service-symbol { top: 0; }
.management-figure img { width: 100%; height: 292px; object-fit: cover; border-radius: 26px; }
.management-figure figcaption { font-size: 10px; color: var(--muted); padding: 9px 6px 0; }
.management-options { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; margin-top: 38px; }
.management-options>article { padding: 34px; border: 1px solid #e1e4d8; background: var(--white); border-radius: 25px; box-shadow: var(--panel-shadow); }
.management-options>article:nth-child(2) { background: #edf0e5; border-color: #dde4d3; }
.management-options .card-icon { margin-bottom: 23px; width: 52px; height: 52px; }
.management-options>article:nth-child(2)>.card-icon { background: #e0e7d3; }
.management-options h4 { font-family: var(--serif); font-size: 31px; font-weight: 400; line-height: 1.22; letter-spacing: -.65px; margin: 0 0 19px; max-width: 340px; }
.management-options p { font-size: 14px; line-height: 1.85; }
.service-bullets { list-style: none; margin: 24px 0 0; padding: 0; }
.service-bullets li { position: relative; padding-left: 21px; font-size: 13px; line-height: 1.75; color: var(--muted); margin-bottom: 11px; break-inside: avoid; }
.service-bullets li::before { position: absolute; content: ''; left: 0; top: .57em; width: 6px; height: 6px; border: 1px solid #97a985; border-radius: 50%; background: #dce6d1; }
.service-bullets li:last-child { margin-bottom: 0; }
.inspection-section { margin-top: 50px; padding-top: 43px; border-top: 1px solid var(--line); }
.inspection-section>h4 { font-family: var(--serif); font-size: 35px; font-weight: 400; letter-spacing: -.7px; line-height: 1.25; margin: 0 0 19px; }
.inspection-section>p { max-width: 760px; }
.inspection-list { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 13px; margin-top: 28px; }
.inspection-list li { display: flex; flex-direction: column; gap: 17px; padding: 23px 20px; margin: 0; background: #ecede2; border: 1px solid #e1e5d7; border-radius: 20px; color: #596b50; font-size: 13px; line-height: 1.6; }
.inspection-list li::before { display: none; }
.inspection-list .care-icon { background: #e0e7d3; width: 42px; height: 42px; border-radius: 13px; }
.inspection-list .care-icon svg { width: 23px; height: 23px; }
.inspection-section>.packages-title { margin-top: 48px; }
.care-packages { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 21px; margin-top: 28px; }
.care-package { grid-column: span 2; padding: 29px; background: var(--white); border: 1px solid #e0e4d5; border-radius: 23px; box-shadow: var(--panel-shadow); }
.care-package:nth-child(2), .care-package:nth-child(5) { background: #f1ece2; border-color: #e5ddcc; }
.care-package:nth-child(3) { background: #eef1e6; border-color: #dde5d3; }
.care-package:nth-child(4), .care-package:nth-child(5) { grid-column: span 3; }
.package-heading { display: grid; grid-template-columns: 1fr auto; gap: 21px 10px; align-items: start; margin-bottom: 18px; }
.package-heading .package-number { font-size: 10px; letter-spacing: 1px; color: #7a896f; padding-top: 7px; }
.package-heading h5 { grid-column: 1/-1; font-family: var(--serif); font-size: 27px; font-weight: 400; line-height: 1.23; letter-spacing: -.5px; margin: 0; }
.package-icon { background: #e8eddd; }
.care-package:nth-child(2) .package-icon, .care-package:nth-child(5) .package-icon { background: #e9dfce; color: #877044; }
.care-package p { font-size: 13px; line-height: 1.8; }
.care-package .service-bullets { margin-top: 21px; padding-top: 19px; border-top: 1px solid #dee2d5; }
.care-package .service-bullets li { font-size: 13px; margin-bottom: 9px; }
.grocery-list { columns: 2; column-gap: 13px; }

@media (max-width: 1120px) {
  .mission-block { gap: 36px; grid-template-columns: .8fr 1.2fr; padding: 22px; }
  .mission-content { padding-right: 15px; }
  .company-sections h2 { font-size: 39px; }
  .history-layout { grid-template-columns: 280px minmax(0,1fr); gap: 35px; }
  .history-table thead th, .history-table tbody th, .history-table tbody td { padding-inline: 13px; }
  .people-block>section { padding: 31px; }
  .people-block h2 { font-size: 32px; }
  .company-jump-links { gap: 10px; }
  .company-jump-links a { padding: 12px; font-size: 11px; }
  .service-lead, .construction-intro { gap: 40px; }
  .full-service-heading h3 { font-size: 38px; }
  .service-project { gap: 29px; padding: 23px; }
  .construction-details { gap: 15px; }
  .construction-details article { padding: 23px; }
  .construction-details h4 { font-size: 25px; }
  .management-lead { gap: 35px; }
  .management-options>article { padding: 28px; }
  .inspection-list li { padding: 20px 16px; }
  .care-package { padding: 24px; }
  .package-heading h5 { font-size: 25px; }
}
@media (max-width: 900px) {
  .company-jump-links { grid-template-columns: repeat(2,1fr); gap: 10px; margin-top: 33px; padding-top: 22px; }
  .company-jump-links a { font-size: 12px; padding: 14px; }
  .mission-block { gap: 28px; grid-template-columns: .8fr 1.2fr; padding: 18px; }
  .mission-content { padding: 17px 6px 17px 0; }
  .mission-figure img { min-height: 490px; }
  .company-copy p { font-size: 13px; }
  .mission-values { gap: 7px; }
  .mission-values li { font-size: 10px; }
  .history-layout { grid-template-columns: 240px minmax(0,1fr); gap: 26px; }
  .history-heading { top: 110px; }
  .history-heading>p { font-size: 13px; }
  .company-sections h2 { font-size: 35px; }
  .history-table thead th { padding: 14px 10px; font-size: 8px; letter-spacing: .3px; }
  .history-table tbody th, .history-table tbody td { padding: 10px; font-size: 11px; }
  .history-highlights { gap: 12px; }
  .history-highlights dd { font-size: 32px; }
  .history-highlights dt { font-size: 9px; }
  .people-block { gap: 19px; }
  .people-block>section { padding: 27px; }
  .people-block h2 { font-size: 29px; }
  .owners-message .company-copy p { font-size: 16px; }
  .quotation-mark { font-size: 78px; right: 23px; }
  .services-guide { gap: 15px 45px; }
  .services-guide .section-heading { font-size: 50px; }
  .service-jump-links { gap: 11px; }
  .service-jump-links a { padding: 16px 14px; gap: 10px; font-size: 12px; }
  .service-lead { gap: 30px; }
  .full-service-heading { padding-left: 0; padding-top: 75px; }
  .full-service-heading .service-symbol { top: 0; }
  .full-service-heading h3 { font-size: 36px; }
  .full-service p { font-size: 13px; }
  .service-project { grid-template-columns: .9fr 1.1fr; gap: 24px; }
  .service-project:nth-of-type(even) { grid-template-columns: 1.1fr .9fr; }
  .service-project h5 { font-size: 29px; }
  .service-project p { font-size: 13px; }
  .construction-intro { gap: 30px; }
  .construction-details article { padding: 20px; }
  .construction-details h4 { font-size: 23px; }
  .construction-details p { font-size: 12px; }
  .management-figure img { height: 310px; }
  .management-options { gap: 20px; }
  .management-options>article { padding: 25px; }
  .management-options h4 { font-size: 28px; }
  .management-options p { font-size: 13px; }
  .inspection-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .inspection-list li { padding: 21px; }
  .care-packages { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 19px; }
  .care-package, .care-package:nth-child(4), .care-package:nth-child(5) { grid-column: auto; }
  .care-package:last-child { grid-column: 1/-1; }
  .care-package:last-child>.service-bullets { columns: 2; column-gap: 30px; }
}
@media (max-width: 650px) {
  :root { --radius: 22px; }
  .hero-image { border-radius: 26px; }
  .hero-image::before { inset: 10px -10px -10px 10px; }
  .project-image { border-radius: 14px; }
  .project-kind { font-size: 8px; padding: 3px 7px; }
  .project-image .expand { right: 7px; bottom: 7px; }
  .hero-caption { padding-inline: 2px; }
  .company-jump-links { gap: 9px; margin-top: 29px; padding-top: 21px; }
  .company-jump-links a { font-size: 11px; padding: 12px 11px; gap: 7px; min-height: 47px; }
  .company-jump-links svg { width: 13px; height: 13px; }
  .company-sections { padding-top: 45px; padding-bottom: 51px; }
  .company-sections h2 { font-size: 37px; margin-top: 17px; margin-bottom: 22px; }
  .company-copy p { font-size: 14px; line-height: 1.85; }
  .mission-block { display: flex; flex-direction: column; gap: 0; border-radius: 25px; padding: 13px; align-items: stretch; }
  .mission-figure img { min-height: 0; height: 260px; max-height: none; object-position: 50% 48%; border-radius: 17px; }
  .mission-figure figcaption { left: 13px; right: 13px; bottom: 13px; padding: 9px 12px; font-size: 9px; }
  .mission-content { padding: 29px 12px 18px; }
  .mission-values { margin-top: 25px; padding-top: 23px; gap: 8px; }
  .mission-values li { font-size: 10px; }
  .mission-values .card-icon { width: 37px; height: 37px; }
  .history-block { padding-top: 49px; }
  .history-layout { display: block; }
  .history-heading { position: static; }
  .history-heading>p { font-size: 14px; }
  .history-figure { margin-top: 24px; }
  .history-figure img { max-height: 310px; object-fit: contain; background: white; border-radius: 18px; }
  .history-figure figcaption { font-size: 10px; }
  .history-highlights { gap: 24px; margin-top: 24px; }
  .history-highlights dd { font-size: 36px; }
  .history-highlights dt { font-size: 10px; }
  .history-content { margin-top: 28px; }
  .history-table-wrap { border-radius: 18px; }
  .history-table th:first-child { width: 42%; }
  .history-table th:nth-child(2) { width: 18%; }
  .history-table thead th { font-size: 8px; line-height: 1.5; letter-spacing: .2px; padding: 12px 8px; }
  .history-table tbody th, .history-table tbody td { font-size: 11px; line-height: 1.65; padding: 11px 8px; }
  .historic-stage small { font-size: 7px; letter-spacing: .5px; }
  .history-context { font-size: 10px; line-height: 1.75; margin-top: 16px; }
  .history-closing { font-size: 22px; margin-top: 21px; }
  .people-block { display: grid; grid-template-columns: 1fr; gap: 20px; margin-top: 43px; }
  .people-block>section { padding: 28px 25px; border-radius: 23px; }
  .people-block h2 { font-size: 33px; }
  .director-monogram { margin-top: 23px; width: 66px; height: 66px; }
  .director-name { font-size: 28px; }
  .owners-message .company-copy p { font-size: 17px; line-height: 1.75; }
  .quotation-mark { right: 22px; top: 24px; font-size: 83px; }
  .expanded-services { padding-top: 49px; }
  .services-guide { display: block; margin-bottom: 43px; }
  .services-guide .section-heading { font-size: 46px; margin: 20px 0; }
  .services-guide>.lede { font-size: 14px; }
  .service-guide-contact { margin-top: 21px; font-size: 12px; }
  .service-jump-links { grid-template-columns: 1fr; gap: 10px; margin-top: 24px; }
  .service-jump-links a { font-size: 13px; padding: 16px 18px; gap: 17px; border-radius: 15px; }
  .service-jump-links a span { font-size: 10px; }
  .full-service { padding-bottom: 44px; margin-bottom: 44px; }
  .full-service-heading { padding-top: 71px; margin-bottom: 23px; }
  .full-service-heading h3 { font-size: 37px; letter-spacing: -1.1px; }
  .full-service-heading .service-number { font-size: 9px; }
  .service-symbol { width: 52px; height: 52px; border-radius: 16px; }
  .service-symbol svg { width: 27px; height: 27px; }
  .full-service p { font-size: 14px; line-height: 1.85; }
  .service-lead { display: block; }
  .service-lead .full-service-heading { margin-bottom: 24px; }
  .service-subheading { font-size: 29px; margin-top: 30px; }
  .service-project, .service-project:nth-of-type(even) { display: flex; flex-direction: column; gap: 23px; padding: 15px; border-radius: 22px; align-items: stretch; }
  .service-project:nth-of-type(even)>figure { order: 0; }
  .service-project img { border-radius: 14px; }
  .service-project figcaption { font-size: 9px; margin-top: 8px; }
  .service-project>div { padding: 0 9px 12px; }
  .service-project-label { font-size: 8px; letter-spacing: 1.2px; }
  .service-project h5 { font-size: 31px; }
  .service-project p { font-size: 14px; }
  .full-service .service-note { font-size: 11px; }
  .construction-intro { grid-template-columns: 1fr; gap: 27px; }
  .construction-intro .full-service-heading { padding-top: 71px; }
  .construction-intro img { border-radius: 22px; }
  .construction-details { grid-template-columns: 1fr; gap: 17px; margin-top: 27px; }
  .construction-details article { padding: 26px; border-radius: 21px; }
  .construction-details h4 { font-size: 28px; }
  .construction-details p { font-size: 14px; line-height: 1.85; }
  .service-card-top { margin-bottom: 20px; }
  .management-lead { grid-template-columns: 1fr; gap: 27px; }
  .management-lead .full-service-heading { padding-top: 71px; }
  .management-figure img { height: 215px; border-radius: 22px; }
  .management-options { grid-template-columns: 1fr; margin-top: 27px; gap: 20px; }
  .management-options>article { padding: 27px 25px; border-radius: 22px; }
  .management-options h4 { font-size: 30px; max-width: 310px; }
  .management-options p, .service-bullets li { font-size: 14px; }
  .service-bullets li { margin-bottom: 12px; }
  .inspection-section { padding-top: 33px; margin-top: 37px; }
  .inspection-section>h4 { font-size: 31px; }
  .inspection-list { grid-template-columns: 1fr 1fr; gap: 11px; }
  .inspection-list li { padding: 21px 17px; font-size: 13px; gap: 15px; margin: 0; border-radius: 18px; }
  .inspection-list li:last-child { grid-column: 1/-1; flex-direction: row; align-items: center; }
  .care-packages { grid-template-columns: 1fr; gap: 18px; margin-top: 25px; }
  .care-package, .care-package:nth-child(4), .care-package:nth-child(5) { grid-column: auto; padding: 27px; border-radius: 22px; }
  .package-heading { gap: 21px 12px; }
  .package-heading h5 { font-size: 28px; }
  .care-package p { font-size: 14px; }
  .care-package .service-bullets li { font-size: 14px; margin-bottom: 10px; }
  .care-package:last-child>.service-bullets { columns: 1; }
  .inspection-section>.packages-title { margin-top: 35px; }
  .contact-options { padding: 6px 23px; border-radius: 23px; margin-top: 7px; }
  .contact-item a { font-size: 16px; overflow-wrap: anywhere; }
}
@media (max-width: 370px) {
  .mission-content { padding-inline: 8px; }
  .mission-values li { font-size: 9px; }
  .company-jump-links a { font-size: 10px; }
  .full-service-heading h3 { font-size: 33px; }
  .people-block>section { padding-inline: 22px; }
  .care-package { padding-inline: 23px; }
}
