:root{--background:#fbfaf6;--ink:#181611;--accent:#b19a57;--line:#1816112e}*{box-sizing:border-box}html{scroll-behavior:auto}body{min-height:100vh;color:var(--ink);background:linear-gradient(#fbfaf6d6,#fbfaf6d6),repeating-linear-gradient(135deg,#18161106 0 1px,#0000 1px 18px);margin:0;font-family:Times New Roman,Times,serif}a{color:inherit;text-decoration:none}img{max-width:100%}.scrollProgress{z-index:60;background:var(--accent);transform-origin:0;height:3px;position:fixed;top:0;left:0;right:0}.siteShell{width:100%;min-height:100vh;padding:128px clamp(16px,5vw,80px) 20px}.siteHeader{z-index:40;background:linear-gradient(#fbfaf6f0,#fbfaf6f0),repeating-linear-gradient(135deg,#18161106 0 1px,#0000 1px 18px);justify-content:space-between;align-items:center;gap:36px;height:128px;padding:16px clamp(16px,5vw,80px);display:flex;position:fixed;inset:0 0 auto}.logoMark{color:#221f18;text-transform:uppercase;place-items:center;width:214px;min-width:214px;line-height:1;transition:transform .42s;display:grid}.logoMark:hover{transform:translateY(-2px)}.logoMark span{letter-spacing:.28em;font-size:1.1rem}.logoMark strong{letter-spacing:.04em;margin-top:-1px;font-size:2.95rem;font-weight:400}.logoMark small{letter-spacing:.42em;border-top:1px solid;margin-top:2px;padding-top:5px;font-family:Arial,Helvetica,sans-serif;font-size:.63rem}.navMenu{justify-content:flex-end;align-items:center;gap:42px;display:flex;position:relative}.menuToggle{display:none}.navMenu a{z-index:2;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:#111;padding:8px 0;font-family:Montserrat,sans-serif;font-size:15px;font-weight:500;line-height:1;text-decoration:none;position:relative}.navMenu a:after{content:"";transform-origin:50%;background:#d4b11a;height:3px;transition:transform .4s;position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.navMenu a:hover:after,.navMenu a.isActive:after{transform:scaleX(1)}.homeGallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-bottom:38px;display:grid;position:relative;overflow:clip}.galleryPanel{isolation:isolate;background:#e9e4da;height:75vh;min-height:520px;position:relative;overflow:hidden}.galleryPanel:after{content:"";z-index:3;opacity:0;pointer-events:none;background:linear-gradient(#18161100 54%,#18161133 100%);transition:opacity .42s;position:absolute;inset:0}.galleryPanel:hover:after{opacity:1}.galleryImage{object-fit:cover;pointer-events:none;will-change:clip-path, opacity, transform;width:100%;height:100%;display:block;position:absolute;inset:0}.lineOverlay{z-index:6;pointer-events:none;position:absolute}.lineOverlayTop{border-top:2px solid #fbfaf6d1;border-left:2px solid #fbfaf6b3;height:36%;top:1.4rem;left:0;right:2%;transform:skewY(-8deg)}.lineOverlayBottom{border-top:2px solid #fbfaf6d1;border-right:2px solid #fbfaf6bd;width:52%;height:18%;bottom:4.5rem;right:12%;transform:skewY(5deg)}.siteFooter{z-index:10;justify-content:space-between;align-items:center;gap:22px;padding:11px 0 0;display:flex;position:relative}.siteShellPinnedFooter{padding-bottom:20px}.siteFooter p{letter-spacing:.015em;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:1.24rem;font-weight:600}.socialLinks{align-items:center;gap:18px;display:flex}.socialLinks a{color:#111;justify-content:center;align-items:center;width:28px;height:28px;transition:color .24s,transform .24s;display:inline-flex}.socialLinks svg{width:100%;height:100%;display:block}.socialLinks path,.socialLinks circle,.socialLinks rect{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75px}.socialLinks text{fill:currentColor;stroke:none;font-family:Arial,Helvetica,sans-serif;font-size:25px;font-weight:400}.socialLinks a:hover{color:var(--accent);transform:translateY(-2px)}.innerHero{align-items:end;min-height:36vh;padding:clamp(42px,7vw,92px) 0 clamp(28px,5vw,64px);display:flex}.teamHero{text-align:center;justify-content:center;align-items:center;min-height:52vh}.teamHero>div{width:min(900px,100%);margin:0 auto}.teamHero p{letter-spacing:.22em;margin-bottom:10px;margin-left:auto;margin-right:auto;font-size:.68rem}.teamHero h1,.teamHero span{margin-left:auto;margin-right:auto}.teamHero h1{width:min(620px,100%);margin-bottom:14px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.02}.teamHero span{width:min(540px,100%);font-size:clamp(.92rem,1.15vw,1.02rem);line-height:1.7}.innerHero p,.contactPage p{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:700}.innerHero h1,.contactPage h1{width:min(900px,100%);margin:0 0 20px;font-size:clamp(3.2rem,8vw,7.8rem);font-weight:400;line-height:.95}.innerHero span,.contactPage span,.contactPage a{width:min(660px,100%);font-family:Arial,Helvetica,sans-serif;font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.65;display:block}.portfolioGrid,.teamGrid,.servicePageGrid{gap:8px;padding-bottom:42px;display:grid}.portfolioGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolioGridLinked{gap:34px 24px}.portfolioMotion{min-height:100%}.portfolioCard,.teamCard,.servicePageItem{background:#ffffff85;height:100%;transition:box-shadow .32s,transform .32s}.portfolioCard:hover,.teamCard:hover,.servicePageItem:hover{transform:translateY(-4px);box-shadow:0 22px 50px #1816111f}.portfolioProjectToggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block;position:relative}.portfolioProjectStatic{cursor:default}.portfolioProjectLink{text-decoration:none}.portfolioProjectLink:hover{box-shadow:none}.portfolioCardPortrait.isOpen{grid-template-columns:minmax(280px,.86fr) minmax(0,1fr);align-items:stretch;display:grid}.portfolioCardGallery.isOpen{display:block}.portfolioCardLinked{box-shadow:none;background:0 0;display:block;transform:none}.portfolioCardLinked:hover{box-shadow:none;transform:none}.portfolioImageFrame{aspect-ratio:16/10;background:#e4ddd0;position:relative;overflow:hidden}.portfolioImageFramePortrait{aspect-ratio:auto;background:linear-gradient(#1816111a,#1816110a),#e4ddd0;height:100%;min-height:clamp(420px,46vw,760px)}.portfolioCard img,.portfolioImage{object-fit:cover;will-change:opacity, transform, filter;width:100%;height:100%;transition:transform .7s;display:block;position:absolute;inset:0}.portfolioImagePortrait{object-fit:contain;object-position:center top;background:0 0;width:100%;height:100%}.portfolioCardTitleSwap:hover .portfolioImage{transform:scale(1.5)}.portfolioCardTitleSwap .portfolioImage{transition:transform .2s}.portfolioCard:not(.portfolioCardLinked):not(.portfolioCardTitleSwap):hover img,.teamCard:hover img{transform:scale(1.035)}.portfolioCardStacked:hover .portfolioImage{transform:scale(1.03)}.portfolioCardGallery:hover .portfolioImage{transform:scale(1.02)}.portfolioCardDetails,.teamCard,.servicePageItem{overflow:hidden}.portfolioCardContent,.teamCard,.servicePageItem{padding:clamp(16px,2.2vw,28px)}.portfolioCardContent{flex-direction:column;justify-content:center;display:flex}.portfolioImageMeta{color:#fbfaf6;background:linear-gradient(#18161100 0%,#181611bd 100%);flex-direction:column;gap:6px;padding:clamp(18px,2vw,24px);display:flex;position:absolute;bottom:0;left:0;right:0}.portfolioImageMetaAnimated{background:0 0;padding:0;top:0;overflow:hidden}.portfolioImageMeta:before{content:"";opacity:0;background:#1816112e;transition:opacity .32s;position:absolute;inset:0}.portfolioImageMetaAnimated:before{display:none}.portfolioImageTitle{letter-spacing:.12em;text-transform:uppercase;font-family:Montserrat,Avenir Next,Century Gothic,Arial,Helvetica,sans-serif;font-size:clamp(1.35rem,2.6vw,2.2rem);font-weight:600;line-height:1.02;position:relative}.portfolioImageLocation{letter-spacing:.14em;text-transform:uppercase;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;position:relative}.portfolioImageBottomGroup{z-index:2;flex-direction:column;gap:6px;max-width:calc(100% - 48px);transition:opacity .22s,transform .22s;display:flex;position:absolute;bottom:clamp(18px,2vw,24px);left:clamp(18px,2vw,24px)}.portfolioImageTitleHoverCenter{z-index:2;opacity:0;text-align:center;transform-origin:50%;width:min(82%,520px);transition:opacity .34s,transform .34s;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(10px - 50%))scale(.96)}.portfolioCardTitleSwap:hover .portfolioImageBottomGroup{opacity:0;transform:translateY(8px)}.portfolioCardTitleSwap:hover .portfolioImageTitleHoverCenter{opacity:1;transform:translate(-50%,-50%)scale(1)}.portfolioCardTitleSwap:hover .portfolioImageMetaOverlay{opacity:1}.portfolioImageMetaCenter{text-align:center;background:0 0;align-content:center;place-items:center;gap:10px;transition:background .32s;display:grid;top:0}.portfolioImageMetaLinked{background:0 0;justify-content:stretch;align-items:stretch;padding:0;top:0;overflow:hidden}.portfolioImageMetaCenter:before{opacity:1;background:#18161114}.portfolioImageMetaOverlay{z-index:1;opacity:0;background:#18161152;transition:opacity .32s;position:absolute;inset:0}.portfolioCardStacked:hover .portfolioImageMetaCenter{background:#18161114}.portfolioCardStacked:hover .portfolioImageMetaCenter:before{opacity:1;background:#1816115c}.portfolioCardStacked .portfolioImageTitle{transition:transform .32s;transform:translateY(14px)}.portfolioCardStacked .portfolioImageLocation{opacity:0;transition:opacity .26s,transform .32s;transform:translateY(10px)}.portfolioCardStacked:hover .portfolioImageTitle,.portfolioCardStacked:hover .portfolioImageLocation{transform:translateY(0)}.portfolioCardStacked:hover .portfolioImageLocation{opacity:1}.portfolioCardDetails{background:#ffffffad;border-top:1px solid #18161114}.portfolioCardGallery .portfolioCardDetails{background:#ffffff75}.portfolioCardDetailsStatic{background:#ffffff6b;height:auto}.portfolioCardStacked .portfolioCardContent{padding-top:18px}.portfolioCardStacked .portfolioCardContent h2{font-size:clamp(1.2rem,1.9vw,1.6rem)}.portfolioCardStacked .portfolioCardContent p:first-of-type{color:#18161180;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;font-size:.8rem}.portfolioCardGallery .portfolioImageMetaCenter:before{background:#1816111f}.portfolioCardGallery:hover .portfolioImageMetaCenter:before{background:#18161157}.portfolioCardGallery .portfolioImageTitle{transition:transform .32s;transform:translateY(10px)}.portfolioCardGallery .portfolioImageLocation{opacity:0;transition:opacity .26s,transform .32s;transform:translateY(10px)}.portfolioCardGallery:hover .portfolioImageTitle,.portfolioCardGallery:hover .portfolioImageLocation{transform:translateY(0)}.portfolioCardGallery:hover .portfolioImageLocation{opacity:1}.portfolioImageTitleLinked{z-index:2;letter-spacing:.12em;text-transform:uppercase;white-space:normal;will-change:opacity, transform;max-width:calc(100% - 56px);font-family:Montserrat,sans-serif;font-size:20px;font-weight:500;line-height:1;position:absolute}.portfolioImageTitleBottom{text-align:left;bottom:26px;left:28px}.portfolioImageTitleCenter{text-align:center;transform-origin:50%;width:min(82%,520px);max-width:none;top:50%;left:50%}.portfolioCardDetailsMinimal{background:0 0;border-top:0;min-height:6px;padding:0}.portfolioDetailGallery{gap:14px;padding:0 clamp(16px,2.2vw,28px) clamp(16px,2.2vw,28px);display:grid}.portfolioDetailImageWrap{aspect-ratio:16/10;background:#e4ddd0;position:relative;overflow:hidden}.portfolioDetailImageWrapPortrait{aspect-ratio:4/5}.portfolioDetailImage{object-fit:cover;width:100%;height:100%;display:block}.portfolioDetailImagePortrait{object-fit:contain;object-position:center top}.portfolioCardPortrait.isOpen .portfolioCardDetails{border-top:0;border-left:1px solid #18161114}.portfolioCard h2,.teamCard h2,.servicePageItem h2{margin:0 0 8px;font-size:clamp(1.55rem,2.8vw,2.55rem);font-weight:400;line-height:1.05}.portfolioCard p,.teamCard p,.teamCard small,.servicePageItem span{color:#181611a3;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:.9rem}.portfolioDescription{line-height:1.6;margin-top:10px!important}.teamPage{isolation:isolate;position:relative}.teamPage:before{content:"";z-index:-1;background:repeating-radial-gradient(at 22% 58%,#0000 0 56px,#1816110b 57px 58px,#0000 59px 112px),repeating-radial-gradient(at 73% 48%,#0000 0 72px,#1816110a 73px 74px,#0000 75px 140px),repeating-radial-gradient(at 50% -4%,#0000 0 62px,#18161109 63px 64px,#0000 65px 126px),#fbfbfa;position:absolute;inset:-128px calc(-1*clamp(16px,5vw,80px)) -90px}.teamIntro{text-align:center;place-items:start center;min-height:clamp(180px,24vw,260px);padding:clamp(18px,4vw,24px) 0 clamp(24px,4vw,48px);display:grid}.teamIntro>div{width:min(930px,100%);margin:0 auto}.teamIntro h1{letter-spacing:.04em;text-transform:uppercase;margin:0 0 24px;font-family:Montserrat,Avenir Next,Century Gothic,Arial,Helvetica,sans-serif;font-size:clamp(1.2rem,1.8vw,1.58rem);font-weight:700;line-height:1.1}.teamIntro p{letter-spacing:.01em;width:min(930px,100%);margin:0 auto;font-family:Courier New,Courier,monospace;font-size:clamp(1.05rem,1.58vw,1.42rem);font-weight:400;line-height:1.42}.teamGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.teamDirectory{grid-template-columns:repeat(3,minmax(190px,1fr));align-items:end;gap:clamp(14px,2vw,28px) clamp(28px,4vw,60px);padding:clamp(10px,2vw,24px) min(7vw,104px) 0}.teamProfile{min-height:clamp(335px,33vw,480px);box-shadow:none;background:0 0;align-items:end;padding:0 0 48px;display:grid;position:relative;overflow:visible}.teamProfile:hover{box-shadow:none;transform:none}.teamPortraitFrame{background:0 0;height:calc(100% - 30px);position:absolute;bottom:74px;left:0;right:0;overflow:hidden}.teamPhoto,.teamPlaceholder{width:100%;height:100%;transition:transform .7s;overflow:hidden}.teamPhoto{object-fit:cover;object-position:50% 30%;filter:saturate(.96)contrast(1.02);background:0 0;display:block}.teamProfile:hover .teamPhoto{transform:scale(1.025)}.teamPlaceholder{border:1px solid var(--line);background:linear-gradient(#fbfaf633,#fbfaf6d1),repeating-linear-gradient(135deg,#b19a5738 0 1px,#0000 1px 18px);justify-content:center;align-items:center;transition:background .36s,transform .7s;display:flex}.teamPlaceholder span{color:#1816118c;letter-spacing:.22em;font-family:Arial,Helvetica,sans-serif;font-size:.8rem;font-weight:700}.teamCard:hover .teamPlaceholder{background:linear-gradient(#fbfaf61a,#fbfaf6b8),repeating-linear-gradient(135deg,#b19a5757 0 1px,#0000 1px 18px);transform:scale(1.025)}.teamNameplate{z-index:2;text-align:center;background:#ffffffe0;border:1px solid #18161114;align-content:center;justify-items:center;width:100%;min-height:80px;padding:16px 18px 14px;display:grid;position:relative;box-shadow:0 3px 9px #1816111f}.teamCard h2,.teamNameplate h2{letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-family:Montserrat,Avenir Next,Century Gothic,Arial,Helvetica,sans-serif;font-size:clamp(.86rem,1.05vw,1.03rem);font-weight:700;line-height:1.18}.teamCard p,.teamNameplate p{color:#181611b8;letter-spacing:.02em;margin:0;font-family:Courier New,Courier,monospace;font-size:clamp(.78rem,.95vw,.96rem);line-height:1.2}.architectureProjectHero{min-height:28vh}.architectureProjectWrap{gap:clamp(18px,3vw,28px);padding-bottom:48px;display:grid}.architectureProjectLeadImageWrap{aspect-ratio:16/10;background:#e4ddd0;overflow:hidden}.architectureProjectLeadImageWrapPortrait{aspect-ratio:4/5}.architectureProjectLeadImage,.architectureProjectGalleryImage{object-fit:cover;width:100%;height:100%;display:block}.architectureProjectLeadImagePortrait,.architectureProjectGalleryImagePortrait{object-fit:cover;object-position:center}.architectureProjectIntro{border-top:1px solid var(--line);grid-template-columns:minmax(220px,.5fr) minmax(0,1fr);align-items:start;gap:clamp(20px,4vw,48px);padding:clamp(14px,2vw,22px) 0;display:grid}.architectureProjectMeta p{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-family:Arial,Helvetica,sans-serif;font-size:.72rem;font-weight:700}.architectureProjectMeta h2{margin:0 0 10px;font-size:clamp(1.8rem,3vw,3rem);font-weight:400;line-height:1.02}.architectureProjectMeta span,.architectureProjectCopy p,.architectureProjectBack a{font-family:Arial,Helvetica,sans-serif}.architectureProjectMeta span{color:#1816118a;letter-spacing:.14em;text-transform:uppercase;font-size:.85rem}.architectureProjectCopy p{color:#181611bd;margin:0;font-size:clamp(.98rem,1.15vw,1.08rem);line-height:1.82}.architectureProjectGallery{gap:14px;display:grid}.architectureProjectGalleryImageWrap{aspect-ratio:16/10;background:#e4ddd0;overflow:hidden}.architectureProjectGalleryImageWrapPortrait{aspect-ratio:4/5}.architectureProjectBack{padding-top:8px}.architectureProjectBack a{letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:8px;font-size:.84rem;display:inline-flex}.servicePageGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.servicePageItem{border-top:2px solid var(--accent);flex-direction:column;justify-content:space-between;min-height:190px;display:flex}.serviceHero span{width:min(850px,100%)}.serviceDetailGrid{gap:10px;padding-bottom:48px;display:grid}.serviceDetailCard{border-top:1px solid var(--line);isolation:isolate;will-change:filter, opacity, transform;background:#ffffff80;grid-template-columns:76px minmax(240px,.42fr) minmax(0,1fr);align-items:stretch;gap:clamp(18px,3vw,38px);padding:clamp(22px,4vw,46px);transition:background .32s,box-shadow .32s,transform .32s,border-color .32s;display:grid;position:relative;overflow:hidden}.serviceDetailCard:before{content:"";z-index:-1;opacity:0;background:linear-gradient(90deg,#b19a5729,#0000 38%),linear-gradient(135deg,#ffffffc7,#ffffff57);transition:opacity .42s,transform .62s;position:absolute;inset:0;transform:translate(-18%)}.serviceDetailCard:hover{background:#ffffffb8;border-color:#b19a57bf;transform:translateY(-3px);box-shadow:0 24px 58px #1816111c}.serviceDetailCard:hover:before{opacity:1;transform:translate(0)}.serviceNumber{z-index:2;color:var(--accent);letter-spacing:.16em;font-family:Arial,Helvetica,sans-serif;font-size:.9rem;font-weight:700;position:relative}.serviceImageWrap{background:#e9e4da;min-height:290px;position:relative;overflow:hidden}.serviceImageWrap:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(#18161100,#18161133);transition:opacity .36s;position:absolute;inset:0}.serviceImageWrap img{object-fit:cover;filter:saturate(.95)contrast(1.02);will-change:transform;width:100%;height:100%;display:block}.serviceDetailCard:hover .serviceImageWrap:after{opacity:1}.serviceContent{z-index:2;grid-template-columns:minmax(190px,.85fr) minmax(230px,1fr);align-content:start;gap:clamp(16px,3vw,42px);display:grid;position:relative}.serviceContent h2{will-change:transform;margin:0;font-size:clamp(2rem,4vw,4.5rem);font-weight:400;line-height:.98}.serviceContent p{color:#181611b8;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.7}.serviceContent h3{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;grid-column:2;margin:4px 0 -6px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem}.serviceContent ul{grid-column:2;gap:8px;margin:0;padding:0;list-style:none;display:grid}.serviceContent li{color:#181611c7;will-change:opacity, transform;padding-left:18px;font-family:Arial,Helvetica,sans-serif;font-size:.96rem;line-height:1.55;position:relative}.serviceContent li:before{content:"";background:var(--accent);border-radius:999px;width:6px;height:6px;position:absolute;top:.72em;left:0}@media (prefers-reduced-motion:reduce){.serviceDetailCard,.serviceDetailCard:before,.serviceImageWrap:after{transition:none}.serviceDetailCard:hover{transform:none}}.contactPage{min-height:calc(100vh - 180px)}.contactPageDetailed{isolation:isolate;grid-template-columns:minmax(360px,.95fr) minmax(360px,1fr);align-items:start;gap:clamp(48px,6vw,88px) clamp(42px,5vw,82px);padding:clamp(34px,6vw,84px) clamp(12px,2vw,20px) 76px;display:grid;position:relative;overflow:hidden}.contactPageDetailed:before{content:"";z-index:-1;background:repeating-radial-gradient(at 18% 12%,#0000 0 72px,#1816110b 73px 74px,#0000 75px 146px),repeating-radial-gradient(at 68% 52%,#0000 0 82px,#1816110a 83px 84px,#0000 85px 164px),repeating-radial-gradient(at 28% 88%,#0000 0 70px,#1816110b 71px 72px,#0000 73px 138px),#fbfbfa;position:absolute;inset:-180px calc(-1*clamp(16px,5vw,80px)) -120px}.contactFormPanel{background:#ffffffd1;min-height:clamp(420px,43vw,550px);padding:clamp(30px,3vw,40px)}.contactFormPanel h1,.contactInfoPanel h2,.contactInquiryPanel h2,.contactMapPanel h2{letter-spacing:.03em;text-transform:uppercase;margin:0;font-family:Montserrat,Avenir Next,Century Gothic,Arial,Helvetica,sans-serif;font-size:clamp(1.05rem,1.28vw,1.34rem);font-weight:650;line-height:1.2}.contactFormPanel form{gap:28px;margin-top:34px;display:grid}.contactFormPanel label{letter-spacing:.01em;gap:12px;font-family:Courier New,Courier,monospace;font-size:clamp(.94rem,1.1vw,1.05rem);font-weight:400;display:grid}.contactFormPanel label span{color:#181611c2;width:auto;font:inherit;line-height:1.35}.contactFormPanel input,.contactFormPanel textarea{width:100%;color:var(--ink);font:inherit;resize:none;background:0 0;border:0;border-bottom:1px solid #1816111a;border-radius:0;outline:none;padding:12px 0;transition:border-color .22s}.contactFormPanel input:focus,.contactFormPanel textarea:focus{border-bottom-color:var(--accent)}.contactFormPanel button{color:#111;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;background:#f4db27;border:0;justify-self:end;min-width:108px;height:56px;margin-top:10px;font-family:Arial,Helvetica,sans-serif;font-size:.86rem;font-weight:700;transition:background .22s,transform .22s}.contactFormPanel button:hover{background:var(--accent);transform:translateY(-2px)}.contactInfoPanel{gap:clamp(32px,4vw,52px);padding-top:8px;display:grid}.contactInfoPanel section{gap:18px;display:grid}.contactInfoPanel p,.contactInfoPanel a,.contactInfoPanel strong,.contactInquiryPanel p{color:#181611e6;letter-spacing:.01em;text-transform:none;width:auto;margin:0;font-family:Courier New,Courier,monospace;font-size:clamp(1rem,1.13vw,1.12rem);font-weight:400;line-height:1.52}.contactInfoPanel strong{letter-spacing:0;font-family:Arial,Helvetica,sans-serif;font-size:clamp(.92rem,1.02vw,1rem);font-weight:700;display:block}.contactInquiryPanel{align-self:start;gap:20px;max-width:780px;display:grid}.contactMapPanel{gap:28px;display:grid}.contactMapFrame{background:linear-gradient(#ffffff57,#ffffff57),repeating-linear-gradient(28deg,#0000 0 26px,#295d8133 27px 31px,#0000 32px 78px),repeating-linear-gradient(104deg,#0000 0 38px,#295d8129 39px 43px,#0000 44px 96px),#edf2f3;min-height:clamp(260px,26vw,350px);overflow:hidden}.contactMapFrame iframe{filter:grayscale(.1)saturate(.82);border:0;width:100%;height:clamp(260px,26vw,350px);display:block}.contactSocialLinks{flex-wrap:wrap;align-items:center;gap:clamp(20px,2.2vw,32px);padding-top:2px;display:flex}.contactSocialLinks a{color:#111;justify-content:center;align-items:center;width:28px;height:28px;font-family:Arial,Helvetica,sans-serif;font-size:1.65rem;line-height:1;transition:color .22s,transform .22s;display:inline-flex}.contactSocialLinks svg{width:100%;height:100%;display:block}.contactSocialLinks path,.contactSocialLinks circle,.contactSocialLinks rect{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px}.contactSocialLinks span{color:currentColor;width:auto;font:inherit;line-height:1}.contactSocialLinks a:hover{color:var(--accent);transform:translateY(-2px)}@media (max-width:1023px){.siteShell{padding:96px 16px 58px}.siteHeader{flex-direction:row;justify-content:center;gap:16px;height:96px;padding:10px 16px}.logoMark{width:155px;min-width:155px}.siteShellPinnedFooter{padding-bottom:120px}.siteShellPinnedFooter>.siteFooter{z-index:60;background:#fbfaf6fa;width:100%;padding:12px 16px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #18161114}.logoMark span{font-size:.8rem}.logoMark strong{font-size:2.15rem}.logoMark small{font-size:.48rem}.menuToggle{width:44px;height:44px;color:var(--ink);cursor:pointer;background:#fbfaf6e0;border:1px solid #18161138;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;transition:border-color .22s,background .22s,transform .22s;display:inline-flex}.menuToggle:hover,.menuToggle.isOpen{background:#fffffff5;border-color:#b19a57b8}.menuToggle span{transform-origin:50%;background:currentColor;width:20px;height:2px;transition:opacity .18s,transform .22s}.menuToggle.isOpen span:first-child{transform:translateY(7px)rotate(45deg)}.menuToggle.isOpen span:nth-child(2){opacity:0}.menuToggle.isOpen span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.navMenu{opacity:0;pointer-events:none;background:linear-gradient(#fbfaf6fa,#fbfaf6fa),repeating-linear-gradient(135deg,#18161106 0 1px,#0000 1px 18px);border:1px solid #1816111f;border-top:0;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;width:auto;max-height:0;transition:max-height .28s,opacity .22s,transform .22s;position:absolute;top:100%;left:16px;right:16px;overflow:hidden;transform:translateY(-8px);box-shadow:0 20px 40px #1816111a}.navMenu.isOpen{opacity:1;pointer-events:auto;max-height:420px;transform:translateY(0)}.navMenu a{letter-spacing:.12em;border-top:1px solid #18161114;padding:16px 18px;font-size:.76rem;display:block}.navMenu a:after{bottom:10px;left:18px;right:18px}.homeGallery{grid-template-columns:1fr;gap:8px;padding-bottom:88px}.galleryPanel{height:60vh;min-height:420px}.lineOverlay{display:none}.siteFooter{background:#fbfaf6f5;flex-direction:column-reverse;gap:4px;padding:8px 12px 10px;position:static}.siteFooter p{font-size:.75rem}.socialLinks{gap:14px}.socialLinks a{width:20px;height:20px;font-size:.44rem}.innerHero{min-height:30vh}.teamHero{text-align:center}.portfolioGrid,.teamGrid,.servicePageGrid{grid-template-columns:1fr;padding-bottom:86px}.teamPage:before{inset:-96px -16px -100px}.teamIntro{min-height:auto;padding:48px 0 36px}.teamIntro h1{margin-bottom:20px;font-size:1.08rem}.teamIntro p{max-width:34rem;font-size:.98rem;line-height:1.5}.teamDirectory{row-gap:58px;padding:26px clamp(10px,7vw,44px) 112px}.teamProfile{min-height:min(116vw,500px)}.portfolioGridLinked{row-gap:22px}.portfolioCardPortrait.isOpen{grid-template-columns:1fr}.portfolioImageFramePortrait{min-height:clamp(420px,96vw,680px)}.portfolioCardPortrait.isOpen .portfolioCardDetails{border-top:1px solid #18161114;border-left:0}.serviceDetailGrid{padding-bottom:92px}.serviceDetailCard{grid-template-columns:1fr;gap:18px}.serviceImageWrap{aspect-ratio:16/10;min-height:240px}.serviceContent{grid-template-columns:1fr}.serviceContent h3,.serviceContent ul{grid-column:auto}.architectureProjectIntro{grid-template-columns:1fr}.portfolioCard img{aspect-ratio:4/3}.contactPage{min-height:calc(100vh - 210px);padding-bottom:76px}.contactPageDetailed{grid-template-columns:1fr;gap:34px;padding:32px 0 100px}.contactPageDetailed:before{inset:-96px -16px -120px}.contactFormPanel{min-height:auto;padding:26px 22px 30px}.contactFormPanel form{gap:22px;margin-top:26px}.contactInfoPanel{gap:30px;padding-top:0}.contactMapPanel{gap:18px}.contactMapFrame,.contactMapFrame iframe{height:300px}}@media (max-width:420px){.navMenu{width:auto;left:12px;right:12px}.navMenu a{font-size:.72rem}}
