@font-face{font-family:Manrope;src:url('../fonts/manrope.woff') format('woff');font-style:normal;font-weight:200 800;font-display:swap}
:root{--navy:#162338;--deep:#101c2e;--blue:#1877f2;--red:#e53935;--ink:#162338;--muted:#536174;--line:#dce2e9;--pale:#f2f5f8;--white:#fff;--container:1264px;--radius:3px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Manrope,Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}
body:has(dialog[open]){overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
button{color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:6px}
::selection{background:#c4dcff;color:var(--navy)}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:600;line-height:1.15;letter-spacing:-.045em}
h1,h2,h3{overflow-wrap:anywhere}
h2{font-size:clamp(2.4rem,4vw,3.45rem)}
.container{width:min(var(--container),calc(100% - 112px));margin-inline:auto}
.section{padding:112px 0}
.icon{width:24px;height:24px;flex-shrink:0;display:block}
.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:var(--white);padding:10px 20px;font-weight:700;box-shadow:0 0 0 2px var(--blue)}
.skip-link:focus{top:12px}
.site-header{background:var(--white);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px}
.brand{display:flex;gap:14px;align-items:center;flex-shrink:0}
.brand-logo{width:70px;height:70px;object-fit:contain}
.brand-wordmark{font-size:1.55rem;font-weight:800;line-height:1.2;letter-spacing:-.035em}
.brand-wordmark>span{display:block;font-size:.75rem;font-weight:500;color:var(--muted);letter-spacing:.025em;line-height:1.7;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:32px;font-size:.875rem;font-weight:600}
.main-nav>a:not(.nav-contact){padding:12px 0;position:relative}
.main-nav>a:not(.nav-contact)::after{content:'';height:2px;position:absolute;left:0;bottom:8px;right:100%;background:var(--blue);transition:right .2s}
.main-nav>a:hover::after{right:0}
.nav-contact{padding:13px 20px;background:var(--navy);color:var(--white);border-radius:var(--radius);transition:background .2s}
.nav-contact:hover{background:var(--blue)}
.menu-toggle{display:none}
.eyebrow{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700;line-height:1.5;margin-bottom:25px}
.eyebrow-line{width:27px;height:2px;background:var(--blue);display:inline-block;flex-shrink:0}
.eyebrow.light{color:#bdcadd}
.hero{position:relative;background:var(--navy);color:var(--white);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:690px;gap:60px;align-items:center;position:relative;padding-block:52px}
.hero-copy{padding:19px 0 23px;z-index:2}
.hero-no-photo{grid-template-columns:1fr;gap:0;min-height:580px}
.hero-no-photo .hero-copy{max-width:760px}
.hero .eyebrow{margin-bottom:28px}
.hero h1{font-size:clamp(3.15rem,4.85vw,4.65rem);font-weight:500;line-height:1.095;letter-spacing:-.05em}
.hero h1>span{color:#79b2ff}
.hero-description{font-size:1rem;line-height:1.8;color:#c4cedc;margin-top:29px;max-width:495px}
.hero-actions{display:flex;align-items:center;gap:30px;margin-top:35px;flex-wrap:wrap}
.button{display:inline-flex;justify-content:center;align-items:center;min-height:49px;padding:12px 23px;border-radius:var(--radius);font-size:.875rem;font-weight:700;line-height:1.5;transition:background .2s,color .2s}
.button-white{background:var(--white);color:var(--navy)}
.button-white:hover{background:#dcebff}
.text-link{font-size:.875rem;font-weight:600;border-bottom:1px solid currentColor;padding-block:5px;line-height:1.7}
.light-link{color:#e3eaf3;border-color:#7d8aa1}
.light-link:hover{color:#79b2ff}
.hero-baseline{display:flex;gap:22px;margin-top:43px;font-size:.75rem;color:#b7c4d6;flex-wrap:wrap}
.hero-baseline>span+span{border-left:1px solid #596478;padding-left:22px}
.hero-media{align-self:stretch;position:relative;margin-block:0;min-height:580px}
.hero-photo-frame{height:100%;position:absolute;inset:0;overflow:hidden;background:var(--deep)}
.hero-photo{width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform:scale(1.075)}
.hero-photo-frame::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,28,46,.04) 42%,rgba(16,28,46,.84) 100%)}
.hero-caption{position:absolute;left:32px;bottom:32px;right:32px;color:#fff;z-index:2}
.caption-kicker{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#d0d9e4;margin-bottom:8px}
.hero-caption strong{display:block;font-size:1.65rem;line-height:1.3;letter-spacing:-.035em;font-weight:500}
.photo-corner{position:absolute;left:-12px;top:-12px;border-left:3px solid var(--blue);border-top:3px solid var(--blue);width:50px;height:50px}
.hero-bottom-line{position:absolute;bottom:0;left:0;height:4px;width:90px;background:var(--blue)}
.credentials{background:var(--pale);border-bottom:1px solid var(--line)}
.credentials-grid{display:grid;grid-template-columns:repeat(3,1fr);padding-block:30px;gap:30px}
.credentials-grid>div{display:flex;gap:17px;align-items:center}
.credentials-grid>div+div{border-left:1px solid var(--line);padding-left:34px}
.credentials .icon{width:27px;height:27px;color:var(--blue)}
.credentials p{font-weight:650;line-height:1.55;font-size:.875rem}
.credentials p>span{display:block;font-weight:400;color:var(--muted);font-size:.75rem;margin-top:3px}
.section-intro{margin-bottom:53px}
.section-heading-row{display:flex;justify-content:space-between;gap:75px;align-items:flex-end}
.section-heading-row>p{color:var(--muted);font-size:.9375rem;max-width:374px;line-height:1.85;padding-bottom:5px}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.service{border-top:1px solid var(--line);padding-top:24px}
.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px}
.service-number{font-size:.75rem;font-weight:700;color:var(--muted);letter-spacing:.1em}
.service-top .icon{width:27px;height:27px;color:var(--blue)}
.service h3{font-size:2rem;margin-bottom:17px}
.service>p{color:var(--muted);font-size:.9375rem;line-height:1.85;min-height:84px;max-width:340px}
.service ul{list-style:none;margin:25px 0 0;padding:0;font-size:.875rem}
.service li{padding:7px 0 7px 18px;position:relative}
.service li::before{content:'';position:absolute;left:0;top:19px;width:5px;height:5px;background:var(--blue)}
.craft{background:var(--pale)}
.craft-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.craft-no-photo{grid-template-columns:1fr}
.craft-no-photo .craft-copy{max-width:740px}
.craft-photo{height:660px;position:relative;overflow:hidden;background:var(--navy)}
.craft-photo>img{height:100%;width:100%;object-fit:cover;object-position:50% 38%}
.craft-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(16,28,46,.84))}
.craft-photo figcaption{position:absolute;left:30px;right:30px;bottom:28px;z-index:1;font-size:1.5rem;font-weight:700;color:var(--white)}
.craft-photo figcaption span{display:block;font-size:.75rem;font-weight:400;letter-spacing:.05em;color:#d6deea;margin-top:3px}
.craft h2{font-size:clamp(2.3rem,3.55vw,3.2rem)}
.craft-lead{color:var(--muted);font-size:.9375rem;line-height:1.9;margin-top:27px}
.craft-points{margin-top:34px}
.craft-points article{display:flex;gap:21px;padding:20px 0;border-top:1px solid #d6dde6}
.craft-points article>span{color:var(--blue);font-weight:700;font-size:.75rem;padding-top:2px}
.craft-points h3{font-size:.9375rem;line-height:1.5;letter-spacing:-.01em;font-weight:700}
.craft-points p{font-size:.875rem;color:var(--muted);line-height:1.8;margin-top:5px}
.gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px 26px}
.project{grid-column:span 4;min-width:0}
.project-0{grid-column:span 7}
.project-1{grid-column:span 5}
.project-image{display:block;overflow:hidden;position:relative;background:var(--pale);height:305px}
.project-0 .project-image,.project-1 .project-image{height:390px}
.project-image img{height:100%;width:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.3,1)}
.project-0 .project-image img{object-position:50% 28%}
.project-1 .project-image img{object-position:50% 38%}
.project-2 .project-image img{object-position:50% 22%}
.project-3 .project-image img{object-position:50% 35%}
.project-image:hover img{transform:scale(1.035)}
.photo-zoom{position:absolute;right:16px;bottom:16px;width:37px;height:37px;display:flex;justify-content:center;align-items:center;background:var(--white);color:var(--navy);border-radius:50%;box-shadow:0 2px 10px #0002}
.photo-zoom .icon{width:19px;height:19px}
.project figcaption{margin-top:18px}
.project figcaption>span{font-size:.75rem;color:var(--muted);letter-spacing:.025em}
.project h3{font-size:1.2rem;letter-spacing:-.02em;line-height:1.5;margin-top:4px}
.gallery-note{font-size:.75rem;color:var(--muted);margin-top:36px;line-height:1.8;max-width:900px}
.area{background:var(--navy);color:var(--white);padding:80px 0;position:relative}
.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.area h2{font-size:clamp(2.7rem,4vw,3.6rem)}
.area-copy>p{max-width:550px;color:#ccd5e2;font-size:1rem;line-height:1.9}
.area-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
.area-tags>span{font-size:.75rem;padding:6px 12px;border:1px solid #5d6a7e;color:#e8edf4}
.area-copy .area-small{font-size:.875rem;margin-top:19px;color:#b2bfd1}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.contact-copy>p:not(.eyebrow){font-size:.9375rem;color:var(--muted);max-width:375px;margin-top:24px;line-height:1.85}
.contact-copy .contact-location{display:flex;align-items:center;gap:12px;margin-top:31px}
.contact-location .icon{color:var(--blue);width:22px;height:22px}
.contact-location span{color:var(--ink);font-weight:650;font-size:.875rem;line-height:1.6}
.contact-location small{display:block;color:var(--muted);font-size:.75rem;font-weight:400}
.contact-details{border-top:1px solid var(--line)}
.contact-item{display:flex;gap:20px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);transition:color .2s;min-width:0}
a.contact-item:hover{color:var(--blue)}
.contact-icon{width:50px;height:50px;background:var(--pale);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-icon .icon{color:var(--blue);width:23px;height:23px}
.contact-item>span:last-child{min-width:0}
.contact-label{display:block;font-size:.75rem;color:var(--muted);margin-bottom:4px}
.contact-item strong{display:block;font-size:clamp(1.05rem,1.8vw,1.55rem);letter-spacing:-.035em;line-height:1.5;font-weight:600;overflow-wrap:anywhere}
.contact-placeholder strong{font-size:1.05rem;letter-spacing:0}
.contact-item small{font-size:.75rem;color:var(--muted);display:block;margin-top:4px}
.contact-note{font-size:.875rem;color:var(--muted);margin-top:21px;line-height:1.85}
.site-footer{background:var(--deep);color:var(--white);padding:44px 0 23px}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:34px}
.footer-top{flex-wrap:wrap}
.footer-brand{font-size:1.5rem;font-weight:750;line-height:1.5;letter-spacing:-.035em}
.footer-brand>span{display:block;font-size:.75rem;font-weight:400;letter-spacing:0;color:#a9b6c9;margin-top:4px}
.footer-top>p,.back-top{font-size:.75rem;color:#b6c2d3}
.back-top{text-decoration:underline;text-underline-offset:5px}
.footer-bottom{border-top:1px solid #354055;padding-top:22px;display:flex;gap:20px;justify-content:space-between;font-size:.75rem;color:#a9b6c9}
.footer-bottom nav{display:flex;gap:26px;flex-wrap:wrap}
.footer-bottom a:hover,.back-top:hover{color:var(--white)}
.footer-bottom a[aria-current]{color:var(--white)}
.lightbox{border:0;background:var(--deep);color:var(--white);width:min(1120px,94vw);max-height:94dvh;padding:22px 26px;border-radius:4px;box-shadow:0 24px 100px #0006;overflow:auto}
.lightbox:not([open]){display:none}
.lightbox button[hidden]{display:none}
.lightbox::backdrop{background:rgba(5,12,23,.86);backdrop-filter:blur(4px)}
.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px}
.lightbox-counter{font-size:.875rem;color:#c2cddd}
.lightbox button{background:transparent;border:0;color:var(--white)}
.lightbox-close{display:flex;gap:8px;align-items:center;font-size:.875rem;padding:8px}
.lightbox-close .icon{width:21px;height:21px}
.lightbox-stage{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:180px}
.lightbox-image{width:calc(100% - 106px);height:64vh;object-fit:contain;min-width:0;background:#0b1525}
.lightbox-prev,.lightbox-next{width:36px;height:44px;flex-shrink:0;display:flex;justify-content:center;align-items:center}
.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff16}
.lightbox-caption{padding:20px 55px 6px}
.lightbox-caption h2{font-size:1.3rem;letter-spacing:-.02em;line-height:1.4}
.lightbox-description{font-size:.875rem;color:#bdcadb;margin-top:7px;line-height:1.7}
.will-reveal{opacity:0;transform:translateY(19px);transition:opacity .65s ease,transform .65s ease}
.will-reveal.is-visible{opacity:1;transform:none}
.legal-hero{background:var(--pale);padding:68px 0 59px;border-bottom:1px solid var(--line)}
.legal-hero h1{font-size:clamp(2.7rem,4.5vw,4rem);line-height:1.1}
.legal-hero>div>p:last-child{color:var(--muted);margin-top:20px;max-width:740px;font-size:.9375rem}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:70px;padding-block:70px 95px;align-items:start}
.legal-summary{position:sticky;top:132px;font-size:.875rem}
.legal-summary>p{font-weight:700;margin-bottom:16px}
.legal-summary a{display:block;padding:6px 0;color:var(--muted)}
.legal-summary a:hover{color:var(--blue)}
.legal-content{max-width:850px;min-width:0}
.legal-content section+section{margin-top:46px}
.legal-content h2{font-size:1.5rem;line-height:1.4;letter-spacing:-.025em;margin-bottom:18px}
.legal-content h3{font-size:1rem;line-height:1.5;letter-spacing:-.01em;margin-top:24px;margin-bottom:8px}
.legal-content p{color:var(--muted);font-size:.9375rem;line-height:1.85;margin-bottom:15px}
.legal-content a{color:#0d58b7;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-details{margin:0}
.legal-details>div{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.875rem}
.legal-details dt{font-weight:650}
.legal-details dd{margin:0;color:var(--muted);overflow-wrap:anywhere}
.legal-content ul{padding-left:22px;color:var(--muted);font-size:.9375rem;line-height:1.85}
.legal-status{border-left:3px solid var(--blue);background:var(--pale);padding:18px 22px;margin-bottom:40px}
.legal-status p{margin:0;font-size:.875rem}
.legal-date{font-size:.75rem!important;margin-top:36px}
.button-navy{background:var(--navy);color:var(--white)}
.button-navy:hover{background:var(--blue)}
@media(min-width:1600px){.hero-grid{gap:75px}.hero h1{font-size:4.9rem}}
@media(max-width:1199px){.container{width:calc(100% - 72px)}.main-nav{gap:22px}.hero-grid{gap:40px;min-height:640px}.hero-media{min-height:530px}.hero h1{font-size:clamp(3.1rem,5vw,4.2rem)}.hero-actions{gap:22px}.craft-grid,.contact-grid,.area-grid{gap:60px}.craft-photo{height:610px}.credentials-grid{gap:22px}.credentials-grid>div+div{padding-left:24px}.section{padding:92px 0}.legal-layout{gap:45px;grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:959px){.container{width:calc(100% - 48px)}.header-inner{min-height:86px}.brand-logo{width:61px;height:61px}.brand-wordmark{font-size:1.35rem}.main-nav{gap:17px;font-size:.8125rem}.nav-contact{padding:11px 13px}.hero-grid{gap:32px;min-height:595px;padding-block:38px}.hero-media{min-height:510px}.hero h1{font-size:3.3rem}.hero-actions{gap:20px}.hero-baseline{gap:14px;line-height:1.6;margin-top:30px}.hero-baseline>span+span{padding-left:14px}.hero-description{font-size:.9375rem}.desktop-break{display:none}.hero-caption{left:22px;bottom:24px;right:22px}.hero-caption strong{font-size:1.35rem}.credentials-grid{gap:15px;padding-block:25px}.credentials-grid>div{gap:10px}.credentials-grid>div+div{padding-left:17px}.credentials p{font-size:.8125rem}.credentials .icon{width:24px;height:24px}.section-heading-row{gap:50px}.section-heading-row>p{max-width:290px}.services-grid{gap:25px}.service>p{min-height:110px}.craft-grid{gap:40px}.craft-photo{height:630px}.craft h2{font-size:2.45rem}.craft-points article{gap:16px}.gallery-grid{gap:25px 20px}.project-0 .project-image,.project-1 .project-image{height:350px}.project-image{height:260px}.area-grid,.contact-grid{gap:50px}.contact-icon{width:43px;height:43px}.contact-placeholder strong{font-size:.9375rem}.contact-item{gap:14px}.footer-top>p{display:none}.legal-layout{grid-template-columns:170px minmax(0,1fr);gap:32px}.legal-details>div{grid-template-columns:160px minmax(0,1fr);gap:20px}}
@media(max-width:767px){html{scroll-padding-top:94px}.container{width:calc(100% - 40px)}.section{padding:72px 0}.header-inner{min-height:80px;flex-wrap:wrap;gap:0;padding-block:7px}.brand{gap:9px}.brand-logo{width:59px;height:59px}.brand-wordmark{font-size:1.3rem}.brand-wordmark>span{font-size:.6875rem}.js .menu-toggle{display:flex;align-items:center;gap:9px;padding:12px 0 12px 14px;background:transparent;border:0;font-size:.875rem}.menu-lines{width:19px;height:12px;display:block;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor;position:relative}.menu-lines::after{content:'';position:absolute;top:4px;left:0;width:19px;height:1.5px;background:currentColor}.menu-toggle[aria-expanded=true] .menu-lines{border:0}.menu-toggle[aria-expanded=true] .menu-lines::before,.menu-toggle[aria-expanded=true] .menu-lines::after{content:'';position:absolute;top:5px;left:0;width:20px;height:1.5px;background:currentColor;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines::after{transform:rotate(-45deg)}.main-nav{width:100%;justify-content:space-between;flex-wrap:wrap;padding:13px 0 10px;gap:12px;font-size:.875rem}.main-nav .nav-contact{width:100%;text-align:center;padding:12px}.js .main-nav{display:none}.js .main-nav.is-open{display:flex}.hero-grid{grid-template-columns:1fr;gap:33px;padding-block:39px 30px;min-height:auto}.hero-copy{padding:0}.hero .eyebrow{font-size:.6875rem;margin-bottom:23px}.hero h1{font-size:clamp(2.9rem,8.3vw,4.8rem);line-height:1.09}.hero-description{margin-top:23px;max-width:540px;font-size:.9375rem}.hero-actions{margin-top:27px;gap:23px}.hero-baseline{margin-top:26px;font-size:.6875rem}.hero-media{min-height:370px;margin:0}.hero-caption strong{font-size:1.4rem}.hero-photo{object-position:50% 30%}.hero-caption{left:24px;bottom:24px}.photo-corner{width:36px;height:36px;left:-7px;top:-7px;border-width:2px}.credentials-grid{grid-template-columns:1fr;padding-block:18px;gap:0}.credentials-grid>div{padding:14px 0;gap:17px}.credentials-grid>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.credentials p{font-size:.875rem}.credentials p>span{font-size:.75rem}.credentials-grid .icon{width:25px;height:25px}.eyebrow{font-size:.6875rem;margin-bottom:20px}.section-heading-row{display:block}.section-heading-row h2{font-size:clamp(2.3rem,7vw,3.4rem)}.section-heading-row>p{max-width:550px;margin-top:23px;padding:0}.section-intro{margin-bottom:38px}.services-grid{grid-template-columns:1fr;gap:36px}.service-top{margin-bottom:19px}.service h3{font-size:1.9rem}.service>p{min-height:0;max-width:520px}.service ul{margin-top:15px}.craft-grid{grid-template-columns:1fr;gap:42px}.craft-photo{height:420px}.craft-photo img{object-position:50% 37%}.craft-copy{max-width:580px}.craft h2{font-size:clamp(2.3rem,7vw,3.4rem)}.craft-lead{margin-top:22px}.craft-points{margin-top:28px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 17px}.project,.project-0,.project-1{grid-column:auto}.project-0{grid-column:1/-1}.project-0 .project-image{height:350px}.project-1 .project-image,.project-image{height:230px}.project h3{font-size:1rem;line-height:1.45}.project figcaption{margin-top:12px}.project figcaption>span{font-size:.6875rem}.gallery-note{font-size:.75rem;margin-top:29px}.area{padding:66px 0}.area-grid{grid-template-columns:1fr;gap:28px}.area h2{font-size:2.65rem}.area-copy>p{font-size:.9375rem}.area-tags{margin-top:20px}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-copy h2{font-size:clamp(2.5rem,7.5vw,3.5rem)}.contact-copy>p:not(.eyebrow){max-width:520px;margin-top:21px}.contact-item strong{font-size:1.3rem}.contact-placeholder strong{font-size:1rem}.contact-item{gap:18px;padding-block:22px}.contact-icon{width:46px;height:46px}.contact-note{font-size:.8125rem}.site-footer{padding-top:34px}.footer-top{gap:20px;padding-bottom:25px}.footer-brand{font-size:1.4rem}.footer-brand>span{max-width:220px;font-size:.6875rem}.back-top{font-size:.6875rem;flex-shrink:0}.footer-bottom{display:block;font-size:.6875rem}.footer-bottom nav{gap:24px;margin-top:14px}.lightbox{padding:15px 13px;max-height:95dvh}.lightbox-image{width:calc(100% - 64px);height:60vh}.lightbox-stage{gap:6px}.lightbox-prev,.lightbox-next{width:26px}.lightbox-caption{padding:17px 7px 6px}.lightbox-caption h2{font-size:1.15rem}.lightbox-description{font-size:.8125rem}.lightbox-close{font-size:.8125rem}.legal-hero{padding-block:46px}.legal-hero h1{font-size:2.65rem}.legal-layout{grid-template-columns:1fr;gap:35px;padding-block:35px 66px}.legal-summary{position:static;padding-bottom:23px;border-bottom:1px solid var(--line)}.legal-summary a{padding:4px 0}.legal-content h2{font-size:1.4rem}.legal-details>div{grid-template-columns:minmax(0,1fr);gap:5px;padding-block:13px}.legal-status{margin-bottom:30px;padding:16px 18px}}
@media(max-width:389px){.container{width:calc(100% - 32px)}.hero h1{font-size:2.85rem}.hero-actions{gap:16px}.button{padding-inline:19px}.hero-media{min-height:320px}.hero-baseline{gap:10px}.hero-baseline>span+span{padding-left:10px}.gallery-grid{grid-template-columns:1fr}.project,.project-0{grid-column:auto}.project-0 .project-image,.project-1 .project-image,.project-image{height:280px}.contact-item{gap:12px}.contact-placeholder strong{font-size:.875rem}.brand-wordmark{font-size:1.15rem}.brand-logo{width:52px;height:52px}.menu-label{font-size:.8125rem}.footer-top{align-items:flex-start}.footer-brand>span{max-width:180px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}.hero-photo{transform:none!important}}
@media print{.site-header,.site-footer,.hero-media,.craft-photo,.lightbox,.gallery-grid,.hero-actions,.menu-toggle,.legal-summary{display:none!important}.container{width:100%}.hero,.area,.craft,.legal-hero{background:transparent;color:#000;padding:25px 0}.hero-grid,.craft-grid,.area-grid,.contact-grid,.legal-layout{display:block;min-height:0;padding:0}.hero h1,.hero h1>span,.eyebrow.light{color:#000}.hero-description,.hero-baseline,.area-copy>p{color:#333}.section{padding:25px 0}.will-reveal{opacity:1;transform:none}.hero h1{font-size:2.4rem}.legal-content{max-width:none}.services-grid{gap:20px}a{color:#000}.contact-details{margin-top:20px}}
