:root{--navy:#18295e;--navy-deep:#101b45;--green:#9bd25a;--green-ink:#4b7e30;--ink:#182448;--muted:#5c6971;--line:#dce2e6;--paper:#fff;--soft:#f3f6f7;--shell:1320px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:100px}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;width:100%;object-fit:cover}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #398359;outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:600}h1,h2{letter-spacing:-.05em}h2{font-size:clamp(2.25rem,4.2vw,3.6rem);line-height:1.1}h1 em,h2 em{font-style:normal;color:var(--green-ink)}p{font-size:1rem;line-height:1.7}button{border:0}button[hidden],[hidden]{display:none!important}.shell{max-width:var(--shell);width:calc(100% - 112px);margin-inline:auto}.skip-link{position:fixed;left:16px;top:16px;transform:translateY(-150%);z-index:1000;background:var(--navy);color:#fff;padding:16px}.skip-link:focus{transform:none}.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px}.brand-mark{width:48px;height:49px;display:flex;align-items:center;justify-content:center;background:var(--navy);font-size:2.15rem;font-weight:700;color:white;line-height:1}.brand-mark span{color:var(--green)}.brand-type{font-size:1.28rem;letter-spacing:-.04em;font-weight:800;white-space:nowrap}.brand-type>span,.footer-brand>span{color:var(--green-ink)}.brand-type small{display:block;font-size:0.75rem;letter-spacing:.12em;font-weight:500;margin-top:6px}#main-nav{display:flex;gap:31px;align-items:center;font-size:.875rem;font-weight:600}#main-nav a{padding-block:12px}#main-nav a:hover{color:var(--green-ink)}#main-nav .nav-contact{padding:14px 24px;background:var(--navy);color:white}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:.95fr 1.05fr;min-height:650px;padding-block:42px 48px;gap:40px}.hero-copy{padding:36px 0 0;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:.75rem;letter-spacing:.15em;font-weight:700;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:13px}.small-rule{display:inline-block;width:29px;height:2px;background:var(--green-ink);flex-shrink:0}h1{font-size:clamp(3.1rem,4.9vw,4.8rem);line-height:1.09;margin-block:34px 25px;max-width:580px}h1 em{display:inline-block}.hero-intro{max-width:395px;color:var(--muted);font-size:1.0625rem;line-height:1.8}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:31px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:16px 25px;font-size:.875rem;font-weight:700;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--navy);color:#fff}.button-dark:hover{background:#254b61}.text-link{font-size:.875rem;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#87969e;line-height:1.8}.hero-footnote{display:flex;align-items:center;gap:16px;margin-top:auto;padding-top:40px}.hero-footnote p{font-size:.8125rem;color:var(--muted);line-height:1.7}.hero-footnote strong{font-weight:600;color:var(--ink)}.crosshair{font-size:2rem;font-weight:300;color:var(--green-ink)}.hero-visual{position:relative;min-width:0;display:flex;flex-direction:column;align-self:stretch;padding-bottom:24px}.hero-visual>img{height:100%;min-height:485px;max-height:650px;flex:1;object-position:58% center}.hero-visual figcaption{display:flex;justify-content:space-between;gap:10px;font-size:0.75rem;line-height:1.4;letter-spacing:.06em;position:absolute;bottom:0;left:0;right:0;color:var(--muted)}.image-label{position:absolute;left:-27px;bottom:52px;padding:24px 33px;background:var(--navy);color:white;font-size:.8rem;letter-spacing:.13em;line-height:1.6}.image-label span{font-size:1.55rem;font-family:Georgia,serif;font-style:italic;letter-spacing:-.01em;color:var(--green)}.craft-strip{background:var(--navy);color:#fff}.craft-strip>.shell{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px;font-size:1.0625rem;letter-spacing:.01em}.strip-plus{color:var(--green);font-size:1.5rem;font-weight:300}.section{padding-block:100px}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:42px}.section-top h2{margin-top:18px}.section-summary{max-width:350px;color:var(--muted)}.illustration-note{font-size:.75rem!important;color:var(--muted);margin-top:12px;line-height:1.6}.gallery-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:30px}.project{text-align:left;background:none;padding:0;display:flex;flex-direction:column;min-width:0}.project-large{grid-row:span 2}.project-image{display:block;position:relative;overflow:hidden;flex:1;width:100%}.project-image img{height:265px;transition:transform .5s}.project-large .project-image img{height:100%;min-height:560px}.project:hover .project-image img{transform:scale(1.035)}.zoom-mark{position:absolute;right:16px;bottom:16px;width:36px;height:36px;background:white;border-radius:50%;display:grid;place-content:center;font-size:1.6rem;font-weight:300;box-shadow:0 2px 10px #0001}.image-chip{position:absolute;top:18px;left:18px;background:#fffffff0;padding:8px 13px;font-size:0.75rem;letter-spacing:.12em;font-weight:700}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;width:100%}.project-caption strong{display:block;font-size:1.125rem;letter-spacing:-.02em;margin-bottom:6px}.project-caption>span>span{color:var(--muted);font-size:.875rem;line-height:1.5;display:block}.project-number{font-size:.875rem;color:#82919b}.expertise{background:var(--soft);border-block:1px solid var(--line)}.expertise .section-top{margin-bottom:54px}.services-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:66px}.service{display:flex;gap:27px;border-top:1px solid #cbd6dd;padding:30px 0 35px}.service-no{color:var(--green-ink);font-size:.8rem;line-height:1.8;font-weight:700;flex-shrink:0}.service h3{font-size:1.3125rem;letter-spacing:-.02em;line-height:1.4;margin-bottom:14px}.service p{color:var(--muted);max-width:435px}.service-detail{display:block;margin-top:22px;font-size:0.75rem;font-weight:700;letter-spacing:.1em;color:var(--green-ink)}.company-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;padding-block:110px}.company-heading h2{margin-top:20px}.company-location{display:inline-block;margin-top:35px;font-size:.75rem;letter-spacing:.13em;font-weight:600;border-bottom:2px solid var(--green);padding-bottom:8px}.company-copy>p{color:var(--muted);margin-bottom:21px}.company-copy .large-copy{font-size:1.375rem;line-height:1.6;letter-spacing:-.025em;color:var(--navy)}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:35px;padding-top:28px;border-top:1px solid var(--line)}.process span{font-size:.75rem;color:var(--green-ink);font-weight:600}.process h3{font-size:1rem;margin:12px 0 8px}.process p{font-size:.875rem;line-height:1.65;color:var(--muted)}.contact-section{background:var(--navy);color:#fff;position:relative}.contact-inner{padding-block:78px 84px;display:grid;grid-template-columns:1.3fr 1fr;gap:110px}.contact-intro h2{margin-top:19px;font-size:clamp(2.3rem,4vw,3.5rem)}.contact-intro h2 em{color:var(--green)}.contact-intro>p:not(.eyebrow){margin:25px 0 29px;color:#c4d2dc;max-width:420px}.button-green{background:var(--green);color:var(--navy-deep)}.button-green:hover{background:#b5ed86}.contact-details{display:flex;flex-direction:column;justify-content:center;gap:28px;border-left:1px solid #3b5262;padding-left:48px;min-width:0}.contact-details>div>span{display:block;color:#bbd1df;font-size:0.75rem;letter-spacing:.13em;margin-bottom:9px;font-weight:600}.contact-details a{font-size:clamp(1rem,1.5vw,1.2rem);border-bottom:1px solid #718997;padding-bottom:5px;overflow-wrap:anywhere;line-height:1.7}.contact-details a:hover{color:var(--green)}.contact-details p{font-size:1rem}.contact-details small{font-size:.8125rem;color:#bbd1df}.site-footer{background:var(--navy-deep);color:#acbfcb}.footer-inner{min-height:99px;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-brand{font-size:1.2rem;letter-spacing:-.045em;font-weight:700;color:#fff;white-space:nowrap}.footer-brand>span{color:var(--green)}.footer-inner p{font-size:.75rem}.footer-inner>span{font-size:0.75rem}.lightbox{border:0;background:white;padding:0;max-width:1100px;width:calc(100% - 48px);max-height:94dvh;overflow:auto;color:var(--navy);box-shadow:0 12px 80px #0005}.lightbox::backdrop{background:#061725db;backdrop-filter:blur(5px)}.lightbox>img{height:min(58vh,650px);object-fit:contain;background:#071c2a}.lightbox-close{position:absolute;top:15px;right:15px;background:white;display:flex;align-items:center;gap:15px;padding:9px 13px;min-height:44px;font-size:.875rem;box-shadow:0 2px 10px #0002}.lightbox-close span{font-size:1.7rem;line-height:1}.lightbox-bottom{padding:25px 30px;display:flex;justify-content:space-between;gap:30px;align-items:center}.lightbox-bottom h2{font-size:1.55rem;letter-spacing:-.03em;margin:7px 0}.lightbox-bottom p:not(.eyebrow){font-size:.875rem;color:var(--muted)}.lightbox-controls{display:flex;align-items:center;gap:14px;flex-shrink:0}.lightbox-controls button{background:var(--soft);padding:12px;font-size:.875rem;min-height:44px}.lightbox-controls button:hover{background:var(--green)}#photo-count{font-size:.75rem;white-space:nowrap}body.dialog-open{overflow:hidden}@media(min-width:1600px){.hero{min-height:710px}.hero-visual>img{min-height:550px}}@media(max-width:1150px){.shell{width:calc(100% - 64px)}.hero{gap:32px;min-height:620px}h1{font-size:clamp(2.8rem,5.3vw,4.1rem)}#main-nav{gap:20px}.hero-visual>img{min-height:470px}.hero-actions{gap:18px}.button{padding:15px 19px}.company-section{gap:60px}.contact-inner{gap:55px}.contact-details{padding-left:35px}.brand-type{font-size:1.15rem}.brand-mark{width:43px;height:45px}.services-grid{column-gap:45px}}@media(max-width:850px){.shell{width:calc(100% - 44px)}.header-inner{min-height:80px}.brand-type{font-size:1.15rem}#main-nav{gap:18px}.brand-type small{font-size:0.75rem}#main-nav .nav-contact{padding:12px 15px}h1{font-size:3.1rem}.hero{gap:26px;min-height:590px}.hero-copy{padding-top:18px}.hero .eyebrow{font-size:0.75rem;letter-spacing:.07em}.hero-intro{font-size:1rem}.hero-visual>img{min-height:470px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-footnote{padding-top:28px}.image-label{left:-15px;padding:19px 23px}.craft-strip>.shell{font-size:.875rem;min-height:70px}.section{padding-block:76px}.section-top{gap:30px}.section-summary{max-width:300px}.gallery-grid{gap:25px}.project-image img{height:215px}.project-large .project-image img{min-height:465px}.project-caption strong{font-size:1rem}.services-grid{column-gap:35px}.service{gap:19px}.company-section{gap:45px;grid-template-columns:.8fr 1.2fr}.process{gap:14px}.contact-inner{gap:35px;padding-block:65px}.contact-details{padding-left:25px}.footer-inner{gap:15px}.footer-inner p{max-width:180px;line-height:1.6}.lightbox-bottom{flex-direction:column;align-items:flex-start}.lightbox-controls{align-self:flex-end}}@media(max-width:700px){:root{scroll-padding-top:82px}.shell{width:calc(100% - 40px)}.header-inner{min-height:77px}.brand-mark{height:41px;width:40px;font-size:1.9rem}.brand-type{font-size:1.12rem}.brand-type small{font-size:0.75rem;letter-spacing:.09em}.menu-toggle{display:flex;align-items:center;gap:8px;padding:12px 0 12px 12px;background:none;font-size:.875rem;min-height:44px}.menu-lines{width:18px;height:10px;border-top:1.5px solid var(--navy);border-bottom:1.5px solid var(--navy)}#main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:13px 20px 22px;border-bottom:1px solid var(--line);box-shadow:0 12px 18px #142d3f10;align-items:stretch;gap:0;font-size:1rem}#main-nav.is-open{display:flex;flex-direction:column}#main-nav a{padding:15px 6px}#main-nav .nav-contact{margin-top:6px;padding:16px}.hero{display:flex;flex-direction:column;gap:31px;padding-block:25px 33px}.hero-copy{padding-top:11px}.hero .eyebrow{font-size:0.75rem;letter-spacing:.08em}h1{font-size:clamp(2.9rem,11vw,4rem);margin:26px 0 21px;max-width:510px}.hero-intro{max-width:475px;font-size:1rem;line-height:1.75}.hero-actions{flex-direction:row;align-items:center;gap:17px;margin-top:25px}.hero-actions .text-link{font-size:.8125rem}.button{font-size:.8125rem;padding:15px 18px;min-height:50px}.hero-footnote{display:none}.hero-visual{height:335px;min-height:0;padding-bottom:21px}.hero-visual>img{height:100%;min-height:0;max-height:100%;object-position:50% 58%}.hero-visual figcaption{font-size:0.75rem;letter-spacing:.025em}.image-label{left:-8px;bottom:43px;padding:14px 21px;font-size:0.75rem}.image-label span{font-size:1.35rem}.craft-strip>.shell{min-height:80px;display:grid;grid-template-columns:1fr 1fr;gap:15px;padding-block:18px;font-size:.875rem;text-align:center}.strip-plus{display:none}.section{padding-block:62px}.section-top{display:block;margin-bottom:28px}.section-top h2{margin-top:15px}h2{font-size:2.55rem}.section-summary{margin-top:20px;max-width:100%}.section-summary p{font-size:1rem}.illustration-note{font-size:.75rem!important;margin-top:10px}.eyebrow{font-size:0.75rem;letter-spacing:.11em}.gallery-grid{display:flex;flex-direction:column;gap:29px}.project-large .project-image img,.project-image img{min-height:0;height:280px}.project-large .project-image img{height:350px;object-position:50% 55%}.project-caption{margin-top:14px}.project-caption strong{font-size:1.1rem}.project-caption>span>span{font-size:.875rem}.image-chip{font-size:0.75rem;left:15px;top:15px}.expertise .section-top{margin-bottom:31px}.services-grid{display:block}.service{padding:26px 0;gap:23px}.service h3{font-size:1.25rem}.service p{max-width:none;font-size:1rem}.service-detail{margin-top:17px;font-size:0.75rem}.company-section{display:block}.company-heading h2{max-width:430px}.company-location{margin-top:23px}.company-copy{margin-top:31px}.company-copy .large-copy{font-size:1.25rem}.process{gap:15px;margin-top:27px;padding-top:25px}.process h3{font-size:.9375rem}.process p{font-size:.875rem}.contact-inner{display:block;padding-block:57px 53px}.contact-intro h2{font-size:2.55rem}.contact-intro>p:not(.eyebrow){margin-top:22px}.button-green{font-size:.875rem}.contact-details{margin-top:38px;border-left:0;border-top:1px solid #3b5262;padding-left:0;padding-top:31px;gap:27px}.contact-details a{font-size:1.25rem}.contact-details>div>span{font-size:0.75rem}.contact-details small{font-size:.875rem}.footer-inner{padding-block:28px;display:flex;flex-wrap:wrap;gap:13px;min-height:0;justify-content:flex-start}.footer-brand{width:100%;font-size:1.25rem}.footer-inner p{max-width:none;font-size:0.75rem;width:100%}.footer-inner>span{font-size:0.75rem}.lightbox{width:calc(100% - 24px);max-height:95dvh}.lightbox>img{height:45vh}.lightbox-close{top:10px;right:10px}.lightbox-bottom{padding:20px;gap:20px}.lightbox-bottom h2{font-size:1.5rem}.lightbox-controls{width:100%;justify-content:space-between;gap:8px}.lightbox-controls button{font-size:.8125rem}.lightbox-bottom p:not(.eyebrow){font-size:.875rem}}@media(max-width:370px){.shell{width:calc(100% - 32px)}.brand-type{font-size:1rem}.brand-type small{font-size:0.75rem}.brand{gap:9px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual{height:285px}.process{grid-template-columns:1fr;gap:20px}.process h3{display:inline-block;margin:0 0 7px 12px}.brand-mark{width:36px}.menu-toggle{font-size:.8125rem}h1{font-size:2.8rem}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Identity adapted from the BATI’SUD&CIE business card. */
.brand-logo{width:77px;height:49px;object-fit:contain;flex-shrink:0}.brand-type{font-family:Georgia,'Times New Roman',serif;font-size:1.5rem;font-weight:700;letter-spacing:-.035em}.brand-type small{font-family:Arial,Helvetica,sans-serif;font-size:.75rem;letter-spacing:.04em;line-height:1.5}.brand-hero{min-height:690px;position:relative;overflow:hidden;background:var(--navy)}.hero-photo{position:absolute;inset:0 0 0 40%;width:60%}.hero-photo>img{height:100%;width:100%;object-position:68% center}.hero-photo::after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#111b48cc)}.hero-photo-caption{position:absolute;bottom:40px;right:55px;z-index:1;text-align:right;color:white}.hero-photo-caption p{font-family:Georgia,serif;font-style:italic;font-size:2rem;line-height:1.2;text-shadow:0 2px 14px #0005}.hero-photo-caption p em{font-style:italic}.hero-photo-caption>span{font-size:.75rem;display:block;margin-top:22px;color:#e4e7f0}.hero-curve{position:absolute;z-index:1;left:-37%;top:-48%;width:100%;height:192%;border-radius:0 50% 50% 0;background:#fff;border-right:24px solid #6fa638;box-shadow:25px 0 0 #18295e;transform:rotate(10deg);pointer-events:none}.hero-content{position:relative;z-index:2}.brand-hero .hero-copy{width:53%;padding:40px 0 48px;min-height:690px;display:flex;align-items:flex-start;justify-content:center}.brand-hero .eyebrow{font-size:.75rem;letter-spacing:.095em;color:var(--green-ink)}.hero-logo{height:117px;width:235px;object-fit:contain;object-position:left center;margin-top:22px}.brand-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.5rem,4.1vw,4rem);font-weight:700;line-height:1.1;letter-spacing:-.05em;margin:6px 0 6px;white-space:nowrap}.brand-hero h1 span{color:var(--green-ink)}.hero-trades{font-size:.75rem;font-weight:700;letter-spacing:.075em;line-height:1.7}.hero-slogan{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(2rem,2.6vw,2.6rem);line-height:1.15;letter-spacing:-.035em;margin:24px 0 19px;color:var(--navy)}.brand-hero .hero-intro{max-width:345px;font-size:1rem;line-height:1.7}.brand-hero .hero-actions{margin-top:25px;gap:20px;flex-wrap:wrap}.brand-hero .button-dark{background:var(--green-ink)}.brand-hero .button-dark:hover{background:#376022}.hero-phone{margin-top:22px;font-size:1.25rem;letter-spacing:.02em;font-weight:700}.hero-phone:hover{color:var(--green-ink)}.craft-strip>.shell{max-width:1000px;letter-spacing:.09em;font-size:.875rem;text-transform:uppercase;font-weight:600}.strip-plus{font-size:1rem;font-weight:400}.footer-brand{font-family:Georgia,serif;font-size:1.35rem}.services-grid{grid-template-columns:repeat(3,1fr);column-gap:40px}.service{gap:19px}.service h3{font-size:1.35rem}.service-detail{font-size:.75rem;line-height:1.6}.contact-details>div>span{font-size:.75rem}.section-summary{font-size:1rem}.brand-hero a:focus-visible{outline-color:var(--navy)}
@media(max-width:1180px){.brand-type small{max-width:220px;font-size:.75rem;letter-spacing:0}.brand-type{font-size:1.35rem}.brand-logo{width:65px}.brand-hero h1{font-size:3.15rem}.brand-hero .hero-copy{width:56%}.brand-hero .hero-actions{gap:16px;max-width:355px}.hero-curve{left:-35%}.hero-photo-caption{right:33px}.brand-hero .text-link{font-size:.875rem}.services-grid{column-gap:29px}.brand-hero .hero-intro{max-width:330px}.brand-hero .hero-copy{min-height:690px}}
@media(max-width:950px){#main-nav{gap:17px;font-size:.875rem}.brand-type{font-size:1.2rem}.brand-logo{width:60px}.brand-type small{max-width:190px;letter-spacing:0;line-height:1.3}.brand-hero h1{font-size:2.75rem}.hero-trades{max-width:330px;letter-spacing:.02em}.hero-photo-caption p{font-size:1.7rem}.hero-curve{left:-31%}.hero-photo{left:40%}.brand-hero .hero-copy{width:58%}.hero-logo{width:210px;height:105px}.brand-hero .eyebrow{max-width:300px;line-height:1.6}.services-grid{grid-template-columns:1fr 1fr}.brand-hero .hero-actions{flex-direction:column;align-items:flex-start}.brand-hero .hero-intro{max-width:300px}.brand-hero .hero-copy,.brand-hero{min-height:685px}.hero-photo-caption{right:25px;bottom:32px}}
@media(max-width:700px){.brand-type{font-size:1.15rem}.brand-type small{font-size:.75rem;max-width:180px}.brand-logo{width:55px;height:42px}.brand{gap:9px}.header-inner{min-height:84px}.brand-hero{display:flex;flex-direction:column;min-height:0;background:#fff}.hero-content{order:1}.brand-hero .hero-copy{width:100%;min-height:0;padding:29px 0 36px;align-items:center;text-align:center}.hero-logo{margin-top:20px;width:190px;height:99px;object-position:center}.brand-hero h1{font-size:clamp(2.5rem,9vw,3.4rem);margin-top:6px}.hero-trades{font-size:.75rem;max-width:100%;letter-spacing:.025em}.brand-hero .eyebrow{max-width:none;font-size:.75rem;letter-spacing:.035em}.hero-slogan{font-size:2.2rem;margin-top:20px;margin-bottom:16px}.hero-slogan br{display:none}.brand-hero .hero-intro{max-width:360px}.brand-hero .hero-actions{align-items:center;gap:16px;margin-top:22px;max-width:none}.brand-hero .button{font-size:.875rem;padding-inline:24px}.hero-phone{margin-top:20px;font-size:1.2rem}.hero-curve{display:none}.hero-photo{order:2;position:relative;inset:auto;width:100%;height:350px;border-top:8px solid #6fa638;border-radius:44% 0 0 0 / 16% 0 0 0;overflow:hidden}.hero-photo>img{object-position:60% 50%}.hero-photo-caption{bottom:24px;right:24px}.hero-photo-caption p{font-size:1.8rem}.hero-photo-caption>span{font-size:.75rem;margin-top:14px}.craft-strip>.shell{font-size:.75rem;min-height:82px;gap:13px;letter-spacing:.08em}.services-grid{display:block}.service h3{font-size:1.35rem}.brand-hero .hero-actions{flex-direction:row;flex-wrap:wrap;justify-content:center}.footer-inner p,.footer-inner>span{font-size:.75rem}.hero .eyebrow,.hero-visual figcaption{font-size:.75rem}.project-caption strong{font-size:1.125rem}}
@media(max-width:380px){.brand-type{font-size:1.02rem}.brand-type small{font-size:.75rem;max-width:156px}.brand-logo{width:45px}.brand-hero h1{font-size:2.4rem}.hero-slogan{font-size:2rem}.hero-trades{max-width:270px}.brand-hero .hero-actions{flex-direction:column}.brand-hero .eyebrow{max-width:275px}.hero-photo{height:310px}}
.brand-hero h1{white-space:normal;overflow-wrap:anywhere}.brand-hero h1 span{display:inline-block}
/* Full, uncropped before-and-after montages, in their supplied order. */
.montage-intro-note{font-size:.875rem;color:var(--green-ink);margin-top:12px;line-height:1.65}.montage-gallery{list-style:none;margin:0 auto;padding:0;max-width:1120px;display:grid;gap:58px}.montage-card{min-width:0;border-bottom:1px solid var(--line);padding-bottom:32px}.montage-card:last-child{border-bottom:0;padding-bottom:0}.montage-heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:22px}.montage-number{font-size:.875rem;line-height:1.8;font-weight:700;color:var(--green-ink);padding-top:1px;min-width:25px}.montage-heading .eyebrow{color:var(--green-ink);font-size:.75rem}.montage-heading h3{font-size:1.5rem;line-height:1.35;letter-spacing:-.025em;margin-top:7px}.montage-open{display:block;width:100%;padding:0;background:var(--soft);text-align:left;border:1px solid var(--line)}.montage-open img{width:100%;height:auto;object-fit:contain;display:block;transform:none}.montage-enlarge{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 16px;background:var(--soft);font-size:.875rem;font-weight:600;min-height:46px}.montage-enlarge>span{font-size:1.35rem;font-weight:400;line-height:1}.montage-open:hover .montage-enlarge{background:var(--navy);color:#fff}.montage-description{display:flex;justify-content:space-between;gap:24px;margin-top:15px;color:var(--muted);font-size:1rem;line-height:1.7}.montage-description>span{font-size:.8125rem;white-space:nowrap;color:var(--green-ink);line-height:2}.montage-lightbox{max-width:1280px}.montage-lightbox>img{height:auto;max-height:67dvh;object-fit:contain;background:var(--soft)}.montage-lightbox .lightbox-close{position:sticky;top:0;right:auto;margin-left:auto;display:flex;z-index:1;border-bottom:1px solid var(--line);width:max-content;box-shadow:none;min-height:48px}.montage-lightbox-note{font-size:.8125rem!important;margin-top:12px;color:var(--green-ink)!important}.lightbox-navigation{display:flex;flex-direction:column;gap:18px;align-items:flex-end}.lightbox-navigation>a{font-size:.875rem;text-decoration:underline;text-underline-offset:4px;line-height:1.7}.montage-lightbox .lightbox-bottom{padding-top:24px}.montage-lightbox .lightbox-controls{gap:12px}.montage-lightbox .lightbox-controls button{white-space:nowrap}
@media(max-width:700px){.montage-gallery{gap:35px}.montage-card{padding-bottom:25px}.montage-heading{gap:12px;margin-bottom:17px}.montage-heading h3{font-size:1.25rem}.montage-heading .eyebrow{font-size:.75rem;letter-spacing:.06em}.montage-number{font-size:.8125rem;min-width:20px}.montage-enlarge{font-size:.8125rem;padding:11px 12px;min-height:44px}.montage-description{display:block;font-size:.9375rem;margin-top:12px}.montage-description>span{display:block;margin-top:5px;font-size:.8125rem}.montage-intro-note{font-size:.875rem}.montage-lightbox{width:calc(100% - 16px)}.montage-lightbox>img{max-height:60dvh;height:auto}.lightbox-navigation{width:100%;align-items:flex-start;gap:17px}.montage-lightbox .lightbox-controls{width:100%;justify-content:space-between}.lightbox-navigation>a{font-size:.875rem}.montage-lightbox .lightbox-bottom{padding:19px 16px}.montage-lightbox .lightbox-close{top:0;padding:6px 14px}}
