/* Architectural component system: loaded after site.css */
:root{--c-charcoal:#182322;--c-stone:#eeeae3;--c-paper:#fbfaf7;--c-gold:#b8a07b;--c-line:#d4cec3;--c-ink:#26302e;--c-muted:#70766e} .section{padding-block:78px}.section-head{position:relative;padding-left:42px;margin-bottom:34px}.section-head:before{content:"";position:absolute;left:0;top:5px;width:22px;height:2px;background:var(--c-gold)}.section-head h2{font-size:clamp(30px,3.2vw,42px);font-weight:500;letter-spacing:-.7px}.section-description{max-width:390px}.eyebrow{color:var(--c-gold)}.text-link{transition:color .22s,border-color .22s}.text-link:hover{color:var(--c-gold)}
.service-strip{grid-template-columns:repeat(3,1fr) 1.12fr;background:var(--c-paper)}.service-strip>div,.service-strip>a{position:relative;min-height:88px;padding:18px 22px;border-color:var(--c-line);transition:background .22s}.service-strip>div:before{content:"";width:5px;height:5px;background:var(--c-gold);margin-right:9px}.service-strip>a{background:var(--c-charcoal);color:#fff;justify-content:space-between}.service-strip>a:hover{background:#303c38}.service-strip>a span{color:var(--c-gold);font-size:20px}.category-scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:4px}.category-scroll a{white-space:nowrap;border:0;border-bottom:1px solid var(--c-line);padding:10px 15px;background:transparent}.category-scroll a.selected,.category-scroll a:hover{background:var(--c-charcoal);color:#fff}
.product-grid{gap:24px}.work-card{padding:10px;background:var(--c-paper);border:1px solid transparent;transition:transform .25s,box-shadow .25s,border-color .25s}.work-card:hover{transform:translateY(-5px);border-color:var(--c-gold);box-shadow:0 15px 32px #26312b18}.work-image{background:#fff;padding:12px;border-bottom:1px solid var(--c-line)}.work-caption{padding:17px 6px 8px;border:0}.work-caption h3{font-size:16px;line-height:1.55;min-height:3.1em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.work-caption small{letter-spacing:.7px;color:#826d4c}.project-section .work-caption small{color:#d4bd97}.card-arrow{width:40px;height:40px;flex:0 0 auto;border-radius:50%;border-color:var(--c-line);transition:background .22s,color .22s,transform .22s}.work-card:hover .card-arrow{background:var(--c-charcoal);color:#fff;transform:translateX(3px)}.project-section{background:var(--c-charcoal)}.project-section .case-grid{gap:24px}.project-section .work-card{background:#24302d;border-color:#ffffff1a}.project-section .work-image{padding:10px}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-card:nth-child(3n){grid-column:auto}
.brand-story{grid-template-columns:1.08fr .92fr;box-shadow:0 18px 40px #2c332b12}.story-visual{min-height:440px}.story-body{padding:54px;display:flex;flex-direction:column;align-items:start;justify-content:center}.story-body h2{font-size:34px}.story-stats{width:100%;border-top:1px solid var(--c-line);padding-top:22px}.capability-section{background:#d9d2c6}.capability-row{position:relative;padding:21px 0}.capability-row:before{content:"";position:absolute;left:0;top:0;width:0;height:2px;background:var(--c-gold);transition:width .25s}.capability-row:hover:before{width:100%}.process{gap:0;background:var(--c-paper);border:1px solid var(--c-line);padding:0}.process li{min-height:185px;padding:23px 18px;border:0;border-right:1px solid var(--c-line);transition:background .22s}.process li:last-child{border:0}.process li:hover{background:#e4ddd1}.join-band{position:relative;overflow:hidden;background:var(--c-charcoal)}.join-band:after{content:"";position:absolute;width:360px;height:360px;right:-100px;top:-180px;border:1px solid #ffffff24;border-radius:50%}.join-band>.wrap{position:relative;z-index:1}.join-band .button{background:var(--c-gold);border-color:var(--c-gold)}
.list-section,.news-section,.page-body{background:var(--c-stone)}.list-summary{padding-bottom:13px;border-bottom:1px solid var(--c-line)}.detail{box-shadow:0 15px 34px #2b312a12}.detail-meta{letter-spacing:.4px}.detail-bottom{border-color:var(--c-line)}.gallery-open{background:#f6f3ee;transition:transform .22s}.gallery-open:hover{transform:translateY(-3px)}.pagination a{transition:background .2s,color .2s}.pagination a:hover{background:var(--c-gold);border-color:var(--c-gold)}.page-sidebar{position:sticky;top:112px;align-self:start}.page-sidebar h2{font-size:29px}.richtext blockquote{margin:24px 0;padding:14px 20px;border-left:3px solid var(--c-gold);background:#f4f0e9}
.partner-anchor{border-block:1px solid var(--c-line)}.partner-anchor a{transition:background .2s,color .2s}.partner-anchor a:hover{background:var(--c-charcoal);color:#fff}.partner-model-grid{gap:14px;background:none}.partner-model{border-top:3px solid var(--c-gold);box-shadow:0 8px 20px #28322d10}.partner-model-top{background:#26312f}.partner-model-foot{margin-top:20px}.partner-commerce{position:relative}.commerce-workflow li{background:#f4f0e9;padding:15px;margin-bottom:6px;border:0}.partner-contact{box-shadow:0 15px 34px #26312b22}.partner-contact .button{background:var(--c-gold);border-color:var(--c-gold)}
.journal-post,.news-row{border-left:0;border-top:1px solid var(--c-line);transition:transform .2s,box-shadow .2s}.journal-post:hover,.news-row:hover{transform:translateX(4px);box-shadow:0 8px 18px #26312b12}.journal-feed-heading{padding-bottom:12px;border-bottom:1px solid var(--c-line)}.journal-bottom{background:#26312f}.contact-layout{box-shadow:0 15px 34px #26312b12}.contact-panel{position:relative}.contact-panel:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c-gold)}
.site-footer{background:#101817}.footer-brand-block h2{font-weight:500;line-height:1.5}.footer-links>div>a:first-child{color:var(--c-gold)}.footer-contact button:hover,.footer-friends a:hover{color:var(--c-gold)}.floating-contact{border:1px solid #ffffff24}.floating-contact a,.floating-contact button{transition:background .2s}.image-dialog,#image-dialog,#qr-dialog{box-shadow:0 20px 60px #0006}.dialog-close:hover{background:var(--c-gold)}
@media(max-width:900px){.section{padding-block:58px}.service-strip{grid-template-columns:1fr 1fr}.service-strip>a{grid-column:span 2}.brand-story{grid-template-columns:1fr}.story-visual{min-height:340px}.story-body{padding:38px}.process{grid-template-columns:repeat(3,1fr)}.process li:nth-child(3){border-right:0}.process li:nth-child(n+4){border-top:1px solid var(--c-line)}.page-sidebar{position:static}.partner-model-grid{grid-template-columns:1fr}.partner-model{padding-bottom:1px}}
@media(max-width:560px){.section{padding-block:45px}.section-head{padding-left:28px}.section-head:before{width:15px}.section-head h2{font-size:25px}.service-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.service-strip>a{grid-column:auto}.product-grid{gap:12px}.work-card{padding:6px}.work-image{padding:8px}.work-caption{padding:10px 3px}.work-caption h3{font-size:13px}.card-arrow{width:28px;height:28px}.case-grid{grid-template-columns:1fr}.story-visual{min-height:285px}.story-body{padding:28px}.story-body h2{font-size:28px}.capability-section{padding-block:48px}.process{grid-template-columns:1fr 1fr}.process li{min-height:145px;border-right:1px solid var(--c-line)!important;border-top:0!important}.process li:nth-child(even){border-right:0!important}.process li:nth-child(n+3){border-top:1px solid var(--c-line)!important}.partner-anchor a{font-size:11px;padding:12px 9px}.journal-post,.news-row{padding:18px}.detail{box-shadow:none}.contact-layout{box-shadow:none}}
@media(prefers-reduced-motion:reduce){.work-card,.card-arrow,.gallery-open,.journal-post,.news-row,.capability-row:before{transition:none!important}}

@media(min-width:700px) and (max-width:1000px){.partner-hero-grid{grid-template-columns:1.1fr .9fr;gap:28px}.partner-hero h1{font-size:38px}.partner-hero-art{padding:18px}.partner-art-label{font-size:9px}.partner-art-label span:last-child{display:none}.contact-layout{grid-template-columns:1.1fr .9fr;gap:0}.contact-layout>div:first-child,.contact-panel{padding:32px}.contact-phone{font-size:24px}}
@media(max-width:900px){.journal-wordmark{display:none}}

/* Collection explorer and brand identity composition */
.collection-intro{margin-top:16px;max-width:500px;color:#626d65;font-size:14px;line-height:1.9}
.collection-toolbar{display:flex;align-items:center;gap:24px;margin-bottom:28px;border-bottom:1px solid var(--c-line)}
.collection-toolbar .category-scroll{flex:1;min-width:0;margin:0;padding:0;border:0}
.collection-toolbar .category-scroll a{min-height:48px;display:flex;align-items:center;border-bottom:2px solid transparent;padding:12px 15px;transition:color .2s,background .2s}
.collection-toolbar .category-scroll a.selected{background:transparent;color:var(--c-ink);border-color:var(--c-gold);font-weight:600}
.collection-status{flex:0 0 auto;font-size:11px;color:#70766e;white-space:nowrap}
.collection-empty{padding:54px 24px;text-align:center;background:#e6e0d5;border:1px solid var(--c-line)}
.collection-empty .text-link{margin-top:18px}
.brand-canvas{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:520px;padding:36px;background:#1b2824;color:#f3eee4}
.brand-canvas-top,.brand-canvas-bottom{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1.5px;color:#d0bc99}
.brand-canvas-top>span:first-child{font-size:20px;letter-spacing:5px;color:#f2ece0}
.brand-canvas-copy{position:relative;z-index:2;margin:42px 0}
.brand-canvas-copy>span{font-size:12px;letter-spacing:4px;color:#d0bc99}
.brand-canvas-copy strong{display:block;margin-top:18px;font-weight:400;font-size:clamp(36px,3.6vw,52px);line-height:1.45;letter-spacing:1px}
.light-sculpture{position:absolute;z-index:0;inset:-10% -20% -15% 38%;transform:rotate(-16deg);background:repeating-linear-gradient(0deg,transparent 0 21px,#e4c48f38 21px 23px,transparent 23px 29px);mask-image:linear-gradient(90deg,transparent,#000);pointer-events:none}
.light-sculpture i{position:absolute;inset:14% 18%;border:1px solid #dbbd882e}
.light-sculpture i:nth-child(2){inset:20% 26%}.light-sculpture i:nth-child(3){inset:26% 34%}
.site-header:after{content:"";position:absolute;left:0;bottom:0;width:var(--scroll,0%);height:2px;background:#b8a07b;pointer-events:none}
:where(a,button,summary):focus-visible{outline:2px solid #a58b61;outline-offset:5px}
.work-card:active .card-arrow{background:var(--c-charcoal);color:#fff}
.footer-top{padding-bottom:30px}.footer-contact{line-height:1.8}.footer-contact>a,.footer-contact>span{overflow-wrap:anywhere}
@media(max-width:1000px){.collection-toolbar{display:block}.collection-status{padding:12px 0 15px}.collection-toolbar .category-scroll a{padding-inline:13px}.brand-canvas{min-height:400px}}
@media(max-width:560px){
 .collection-intro{font-size:13px;margin-top:13px}.collection-toolbar{margin-bottom:22px}.collection-status{font-size:11px;padding-bottom:12px}
 .brand-canvas{min-height:380px;padding:27px}.brand-canvas-copy{margin:32px 0}.brand-canvas-copy strong{font-size:36px}
 .brand-canvas-top,.brand-canvas-bottom{font-size:8px;letter-spacing:1px}.brand-canvas-top>span:first-child{font-size:18px}
 .story-stats>div{min-width:0}.story-stats strong{font-size:23px;white-space:nowrap}.story-stats strong small{font-size:12px}.story-stats span{display:block;font-size:10px}
 .footer-contact{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:24px 0}.footer-contact>span,.footer-contact>a[href^="mailto:"]{grid-column:1/-1}.footer-contact button{text-align:left}
 .footer-bottom{padding-block:24px}.filing-links{gap:13px}.filing-links a{min-height:30px}.footer-friends{gap:12px 20px}.floating-contact{bottom:max(16px,env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.collection-toolbar .category-scroll a{transition:none}}

.collection-grid.is-single{grid-template-columns:minmax(0,min(100%,620px));justify-content:center}
.collection-grid.is-pair{grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px;margin-inline:auto}
.story-stats strong,.story-body>.eyebrow,.section-head .eyebrow,.capability-heading .eyebrow,.page-sidebar .eyebrow,.contact-layout .eyebrow{color:#806543}
.project-section .section-head .eyebrow{color:#d0bc99}
#collection,[id^="partner-"],.journal-post[id]{scroll-margin-top:104px}
@media(max-width:900px){#collection,[id^="partner-"],.journal-post[id]{scroll-margin-top:92px}}

/* Balanced brand, centered navigation and contact columns. */
@media(min-width:1101px){.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:26px}.site-header>.brand{justify-self:start}.desktop-nav{margin-left:0;justify-self:center;justify-content:center;font-size:15px;gap:26px;letter-spacing:.2px}.header-contact{justify-self:end}.nav-drop{font-size:14px}.nav-drop a{padding:10px 0}.header-contact>span{font-size:10px}.header-contact b{font-size:15px}}
@media(min-width:1101px) and (max-width:1280px){.brand-logo{width:195px}.desktop-nav{font-size:14px;gap:21px}.site-header{column-gap:18px}.header-contact{padding-left:16px}}
@media(max-width:1100px){.site-header{display:flex}.desktop-nav,.header-contact{display:none!important}.menu-toggle{display:block;margin-left:auto}.mobile-nav{inset:88px 0 0;font-size:16px}.mobile-nav details>a{font-size:14px}}@media(max-width:900px){.mobile-nav{inset:76px 0 0}}

/* Lighter wordmark and more breathing room around the centered menu. */
.site-header .brand-logo{width:180px;height:46px}
@media(min-width:1440px){.desktop-nav{gap:38px;font-size:15px}.site-header{column-gap:32px}}
@media(min-width:1281px) and (max-width:1439px){.desktop-nav{gap:30px;font-size:15px}}
@media(min-width:1101px) and (max-width:1280px){.site-header .brand-logo{width:165px;height:43px}.desktop-nav{gap:25px;font-size:14px}.site-header{column-gap:22px}.header-contact b{font-size:14px}}
@media(max-width:1100px){.site-header .brand-logo{width:172px;height:44px}}

/* Product photo gallery: open images, restrained captions, no duplicate filters. */
.collection-section{border-top:1px solid #d5cdbf;padding-top:66px;padding-bottom:76px}.collection-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.collection-heading .eyebrow{font-size:9px;letter-spacing:2.5px;color:#967a50;margin:0 0 13px}.collection-heading h2{font-size:28px;line-height:1.4;font-weight:500;letter-spacing:.5px;margin:0}.collection-heading>p{font-size:12px;line-height:1.9;color:#7b7f73;margin:0}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 30px}.collection-section .collection-card{padding:0;border:0;background:none;box-shadow:none;transform:none;scroll-margin-top:110px}.collection-section .collection-card:hover{border:0;background:none;box-shadow:none;transform:none}.collection-card .work-image{position:relative;aspect-ratio:1/1;padding:0;border:0;background:#e5e0d6;overflow:hidden;border-radius:3px}.collection-card .work-image img{display:block;object-fit:contain;width:100%;height:100%;transition:filter .3s}.collection-card:hover .work-image img{filter:brightness(1.035)}.collection-card .image-label{display:none}.collection-card .work-caption{padding:18px 0 20px;border-bottom:1px solid #d2c8b7;align-items:center;gap:18px}.collection-card .work-caption small{display:block;font-size:10px;font-weight:400;letter-spacing:1.2px;color:#968161;margin-bottom:7px}.collection-card .work-caption h3{font-size:17px;line-height:1.6;min-height:0;font-weight:500;letter-spacing:.2px;margin:0;color:#25332f}.collection-card .card-arrow{height:32px;width:32px;flex:0 0 32px;border:0;border-radius:0;background:none;color:#89724d;font-size:22px;transition:transform .2s}.collection-card:hover .card-arrow{background:none;color:#25332f;transform:translate(3px,-3px)}.collection-bottom{display:flex;align-items:center;gap:24px;justify-content:center;padding-top:36px}.collection-progress{font-size:11px;letter-spacing:.4px;color:#91846d;margin:0}.collection-more{display:inline-flex;align-items:center;gap:42px;padding:13px 23px;border:1px solid #b9aa90;border-radius:2px;background:transparent;color:#3c473e;font-size:12px;cursor:pointer;transition:background .2s,border-color .2s}.collection-more:hover{background:#e0d7c7;border-color:#a48b65}.collection-more span{font-size:18px;font-weight:300}.collection-all{font-size:11px;color:#6e796f;display:flex;gap:14px;align-items:center}.collection-all span{color:#9d8056}.collection-bottom[hidden],.collection-more[hidden]{display:none}@media(max-width:900px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}.collection-heading h2{font-size:26px}.collection-heading{align-items:start}.collection-card .work-caption h3{font-size:15px}}@media(max-width:560px){.collection-section{padding-top:40px;padding-bottom:45px}.collection-heading{display:block;margin-bottom:24px}.collection-heading h2{font-size:22px}.collection-heading>p{font-size:11px;margin-top:13px}.collection-heading>p br{display:none}.collection-grid{gap:26px 14px}.collection-card .work-caption{padding:12px 0 14px;gap:8px}.collection-card .work-caption h3{font-size:13px;line-height:1.6}.collection-card .work-caption small{font-size:9px;margin-bottom:5px;letter-spacing:.3px}.collection-card .card-arrow{flex-basis:20px;width:20px;font-size:18px}.collection-bottom{flex-wrap:wrap;gap:20px;padding-top:26px}.collection-progress{width:100%;text-align:center;font-size:10px}.collection-more{gap:24px;padding:11px 18px;font-size:11px}.collection-all{font-size:10px}.collection-section .collection-card{scroll-margin-top:94px}}@media(prefers-reduced-motion:reduce){.collection-card .work-image img,.collection-card .card-arrow,.collection-more{transition:none}}

@media(min-width:1001px){.collection-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}.collection-card .work-caption h3{font-size:15px}.collection-card .work-caption{padding:15px 0 17px;gap:10px}}@media(min-width:901px) and (max-width:1000px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}}

.collection-entry{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;flex-shrink:0;padding:12px 20px;border:1px solid #b9aa90;border-radius:3px;color:#465043;background:#f4efe6;font-size:12px;line-height:1.6;transition:background .2s,border-color .2s}.collection-entry span{font-size:18px;color:#9a8059}.collection-entry:hover{background:#e6ddce;border-color:#9d825b}@media(max-width:560px){.collection-heading{display:flex;align-items:center;gap:18px}.collection-heading h2{font-size:20px}.collection-entry{font-size:10px;padding:9px 12px;gap:12px}.collection-entry span{font-size:15px}.collection-heading .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:9px}}@media(max-width:360px){.collection-heading{flex-wrap:wrap;gap:16px}}@media(prefers-reduced-motion:reduce){.collection-entry{transition:none}}

.collection-footer{display:flex;justify-content:flex-end;padding-top:24px}.collection-footer .collection-entry{padding:8px 14px;font-size:11px;gap:22px;background:transparent;border-color:#c4b69e;border-radius:2px}.collection-footer .collection-entry span{font-size:16px}.collection-footer .collection-entry:hover{background:#e6ddce}.project-section>.section{padding-top:64px;padding-bottom:70px}.project-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.project-heading .eyebrow{color:#c4aa7d;font-size:9px;letter-spacing:2.4px;margin:0 0 12px}.project-heading h2{color:#f4efe6;font-size:28px;line-height:1.4;font-weight:500;letter-spacing:.3px;margin:0}.project-intro{color:#aebbb1;font-size:12px;line-height:1.9;margin:12px 0 0}.project-entry{display:inline-flex;align-items:center;gap:26px;padding:9px 15px;border:1px solid #a58c655c;border-radius:2px;color:#dfd6c5;font-size:11px;white-space:nowrap;background:#ffffff03;transition:background .2s}.project-entry span{font-size:17px;color:#bc9f70}.project-entry:hover{background:#ffffff0b}.project-section .case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 26px}.project-section .home-project{padding:0;background:none;border:0;box-shadow:none;transform:none;scroll-margin-top:110px}.project-section .home-project:hover{background:none;border:0;box-shadow:none;transform:none}.project-section .home-project .work-image{aspect-ratio:4/3;padding:0;border:0;background:#27342e;overflow:hidden;border-radius:3px}.project-section .home-project .work-image img{width:100%;height:100%;object-fit:contain;transition:filter .25s}.project-section .home-project:hover .work-image img{filter:brightness(1.045)}.project-section .home-project .image-label{display:none}.project-section .home-project .work-caption{padding:17px 0 20px;gap:16px;border-bottom:1px solid #ffffff1f;align-items:center}.project-section .home-project .work-caption small{display:block;font-size:10px;color:#bca57e;letter-spacing:.6px;margin-bottom:7px}.project-section .home-project .work-caption h3{font-size:15px;font-weight:500;line-height:1.7;min-height:3.4em;color:#ecece3;letter-spacing:.2px}.project-section .home-project .card-arrow{border:0;border-radius:0;background:none;color:#baa17c;width:26px;height:32px;flex:0 0 26px;font-size:21px}.project-section .home-project:hover .card-arrow{background:none;transform:translate(2px,-2px);color:#ece4d5}@media(max-width:1000px){.project-section .case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}}@media(max-width:560px){.collection-footer{padding-top:20px}.collection-footer .collection-entry{padding:8px 12px;font-size:10px;gap:18px}.project-section>.section{padding-top:42px;padding-bottom:44px}.project-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:26px}.project-heading h2{font-size:23px}.project-intro{font-size:11px;max-width:300px}.project-entry{padding:8px 13px;font-size:10px}.project-section .case-grid{grid-template-columns:1fr;gap:28px}.project-section .home-project .work-image{aspect-ratio:4/3}.project-section .home-project .work-caption{padding:14px 0 17px}.project-section .home-project .work-caption h3{font-size:14px;min-height:0}.project-section .home-project .work-caption small{font-size:9px}.project-section .home-project .card-arrow{font-size:19px}}@media(prefers-reduced-motion:reduce){.project-entry,.project-section .home-project .work-image img{transition:none}}

@media(min-width:1001px){.project-section .case-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}.project-section .home-project .work-caption{padding:14px 0 17px;gap:10px}.project-section .home-project .work-caption h3{font-size:14px;line-height:1.65;min-height:3.3em}.project-section .home-project .card-arrow{width:22px;flex-basis:22px;font-size:19px}}

/* Quiet brand introduction, integrated with the stone page palette. */
.about-section{background:#f0ece5;padding:72px 0 74px}.about-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:70px;align-items:center}.about-visual{min-width:0}.about-visual>img{display:block;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;object-position:65% center;border-radius:3px}.about-image-note{display:flex;justify-content:space-between;gap:20px;padding-top:15px;color:#9a8b72;font-size:9px;letter-spacing:1.3px;line-height:1.7}.about-copy .eyebrow{font-size:9px;letter-spacing:2.5px;color:#9b825b;margin:0 0 18px}.about-copy h2{font-size:29px;line-height:1.55;font-weight:500;letter-spacing:.5px;margin:0 0 22px;color:#293b33}.about-company{font-size:14px;color:#4f6056;margin:0 0 12px}.about-description{font-size:14px;color:#788075;line-height:2;margin:0 0 12px;max-width:470px}.about-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:22px 0;margin:22px 0 12px;border-top:1px solid #d6cdbf;border-bottom:1px solid #d6cdbf}.about-facts>div{min-width:0}.about-facts strong{display:block;font-size:16px;font-weight:500;color:#53644f;line-height:1.5;margin-bottom:7px}.about-facts span{display:block;font-size:10px;color:#8b8e80;line-height:1.7}.about-entry{display:inline-flex;align-items:center;gap:34px;font-size:11px;color:#4a584c;padding:10px 0 7px;border-bottom:1px solid #b9a78b}.about-entry span{font-size:18px;color:#a68c64;transition:transform .2s}.about-entry:hover span{transform:translate(2px,-2px)}@media(max-width:1100px){.about-layout{gap:38px}.about-copy h2{font-size:26px}.about-facts{gap:10px}.about-facts strong{font-size:15px}}@media(max-width:900px){.about-section{padding:54px 0}.about-layout{grid-template-columns:1fr;gap:35px}.about-visual>img{aspect-ratio:16/10}.about-description{max-width:620px}.about-copy h2 br{display:none}.about-copy h2{margin-bottom:18px}.about-facts{max-width:620px}}@media(max-width:560px){.about-section{padding:40px 0 45px}.about-layout{gap:28px}.about-visual>img{aspect-ratio:5/4}.about-image-note{padding-top:12px;gap:10px;font-size:8px;letter-spacing:.6px}.about-copy .eyebrow{font-size:8px;margin-bottom:13px}.about-copy h2{font-size:23px;line-height:1.6}.about-copy h2 br{display:block}.about-company{font-size:13px}.about-description{font-size:12px;line-height:1.95}.about-facts{padding:18px 0;margin-top:20px;gap:10px}.about-facts strong{font-size:14px}.about-facts span{font-size:9px}.about-entry{font-size:10px;gap:25px}}@media(prefers-reduced-motion:reduce){.about-entry span{transition:none}}

/* Footer contact directory, with an immediately visible WeChat code. */
.site-footer{background:#15201c;color:#bbc2b7}.footer-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.65fr) 156px;gap:58px;padding-top:52px;padding-bottom:43px}.footer-details h2,.footer-wechat h2{font-size:14px;font-weight:500;line-height:1.6;color:#e6ddcb;margin:0 0 22px}.footer-detail-phone{margin:0 0 21px}.footer-detail-phone>span{display:block;font-size:10px;letter-spacing:1px;color:#8f9a8b;margin-bottom:8px}.footer-detail-phone>a{font-size:22px;font-weight:500;letter-spacing:.5px;color:#e9e4d9}.footer-contact-list{margin:0}.footer-contact-list>div{display:grid;grid-template-columns:58px minmax(0,1fr);column-gap:12px;margin-bottom:12px;align-items:baseline}.footer-contact-list dt{font-size:10px;font-weight:400;color:#8d9989;line-height:1.9}.footer-contact-list dd{font-size:12px;line-height:1.9;margin:0;color:#bbc4b6;overflow-wrap:anywhere}.footer-contact-list a:hover{color:#ddc7a3}.footer-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;align-items:start}.footer-nav>div{min-width:0}.footer-nav a{display:block;font-size:11px;line-height:1.8;color:#98a58f;padding:6px 0;transition:color .2s}.footer-nav a:hover{color:#e3d6bf}.footer-nav .footer-nav-title{font-size:13px;color:#c3ad88;padding:0 0 18px;line-height:1.7}.footer-wechat{text-align:center}.footer-wechat h2{margin-bottom:18px;font-size:13px}.footer-qr-frame{display:inline-block;padding:9px;background:#fff;border-radius:3px;line-height:0}.footer-qr-frame img{display:block;width:136px;height:136px;object-fit:contain}.footer-wechat p{font-size:10px;line-height:1.7;color:#889681;margin:13px 0 0}.site-footer .footer-bottom{border-top:1px solid #ffffff13;padding-top:23px;padding-bottom:22px;font-size:10px;gap:24px;align-items:center;color:#889581}.site-footer .filing-links{gap:19px;align-items:center;flex-wrap:wrap}.site-footer .filing-links a{font-size:10px;color:#9caa92;line-height:1.7}.site-footer .filing-links a:hover{color:#d7c2a0}.site-footer .footer-friends{display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:10px;color:#84917c;border-top:1px solid #ffffff0c;padding-top:17px;padding-bottom:24px}.site-footer .footer-friends>span{color:#66775f}.site-footer .footer-friends a:hover{color:#d8c4a1}@media(max-width:1150px){.footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) 138px;gap:30px}.footer-nav{gap:16px}.footer-qr-frame img{width:118px;height:118px}.footer-contact-list>div{grid-template-columns:50px minmax(0,1fr);column-gap:8px}.footer-contact-list dd{font-size:11px}.footer-detail-phone>a{font-size:20px}}@media(max-width:900px){.footer-main{grid-template-columns:minmax(0,1fr) 156px;gap:35px 50px;padding-top:40px;padding-bottom:34px}.footer-details{grid-column:1;grid-row:1}.footer-wechat{grid-column:2;grid-row:1}.footer-nav{grid-column:1/-1;grid-row:2;gap:25px;padding-top:25px;border-top:1px solid #ffffff10}.footer-contact-list dd{font-size:12px}.footer-qr-frame img{width:136px;height:136px}.site-footer .footer-bottom{display:block}.site-footer .filing-links{margin-top:14px}}@media(max-width:560px){.footer-main{grid-template-columns:minmax(0,1fr) 112px;gap:26px 18px;padding-top:35px;padding-bottom:30px}.footer-details h2{font-size:13px;margin-bottom:18px}.footer-detail-phone>a{font-size:18px;letter-spacing:0}.footer-contact-list>div{display:block;margin-bottom:11px}.footer-contact-list dt{font-size:9px;margin-bottom:2px}.footer-contact-list dd{font-size:11px;line-height:1.8}.footer-detail-phone>span{font-size:9px}.footer-wechat h2{font-size:12px;margin-bottom:15px}.footer-qr-frame{padding:7px}.footer-qr-frame img{width:96px;height:96px}.footer-wechat p{font-size:9px;max-width:112px;margin-top:10px}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 28px;padding-top:23px}.footer-nav .footer-nav-title{font-size:12px;padding-bottom:10px}.footer-nav a{font-size:11px;padding:5px 0}.site-footer .footer-bottom{font-size:9px;line-height:1.8;padding-block:19px}.site-footer .filing-links{display:flex;gap:11px;align-items:start}.site-footer .filing-links a{font-size:9px;min-height:24px}.site-footer .footer-friends{font-size:9px;gap:13px;padding-top:15px;padding-bottom:20px}}@media(prefers-reduced-motion:reduce){.footer-nav a{transition:none}}

.site-footer .footer-bottom{display:flex;justify-content:center;padding-top:20px;padding-bottom:20px}.site-footer .filing-links{justify-content:center;margin:0}.site-footer .footer-friends{justify-content:center;padding-bottom:19px}.footer-copyright{padding:17px 0 23px;border-top:1px solid #ffffff0b;text-align:center;font-size:10px;line-height:1.9;color:#8b9884}.footer-wechat-code{display:inline-grid;width:max-content;grid-template-columns:max-content;justify-items:stretch;max-width:100%}.footer-wechat-code>p{grid-column:1;grid-row:2;white-space:nowrap;font-size:10px;line-height:1.7;margin:12px 0 0;max-width:none;letter-spacing:0}.footer-wechat-code .footer-qr-frame{position:relative;grid-column:1;grid-row:1;width:100%;aspect-ratio:1/1;box-sizing:border-box;padding:7px;line-height:0}.footer-wechat-code .footer-qr-frame img{position:absolute;inset:7px;display:block;width:calc(100% - 14px);height:calc(100% - 14px);object-fit:contain}@media(max-width:900px){.site-footer .footer-bottom{display:flex}.site-footer .filing-links{margin:0}}@media(max-width:560px){.footer-wechat-code>p{font-size:9px;margin-top:10px;max-width:none}.footer-copyright{font-size:9px;padding:16px 0 21px}.site-footer .footer-bottom{padding-block:17px}.site-footer .filing-links{gap:10px;justify-content:center}.site-footer .footer-friends{padding-bottom:16px}}

.footer-legal{position:relative;display:flex;align-items:center;justify-content:center;min-height:65px;border-top:1px solid #ffffff10;padding-top:18px;padding-bottom:21px;gap:24px}.site-footer .footer-legal .filing-links{position:absolute;left:0;top:50%;transform:translateY(-50%);justify-content:flex-start;margin:0;gap:16px}.footer-legal .footer-copyright{border:0;padding:0;text-align:center;font-size:10px;line-height:1.9;color:#8b9884}.site-footer .footer-friends{border-top:1px solid #ffffff10;padding-top:19px;padding-bottom:19px}@media(max-width:1100px){.footer-legal{display:grid;grid-template-columns:1fr;gap:14px;padding-top:18px;padding-bottom:20px}.site-footer .footer-legal .filing-links{position:static;transform:none;grid-row:2;justify-content:flex-start}.footer-legal .footer-copyright{grid-row:1}.footer-wechat-code{max-width:100%}}@media(max-width:560px){.footer-legal .footer-copyright{font-size:9px}.site-footer .footer-legal .filing-links{gap:10px}.footer-legal{gap:12px;padding-block:16px}}

.site-footer .footer-friends{justify-content:flex-start;gap:22px;padding-top:10px;padding-bottom:8px}.site-footer .footer-friends>span,.site-footer .footer-friends>a{font-size:11px;font-weight:400;line-height:1.6}.footer-legal{min-height:44px;padding-top:10px;padding-bottom:12px}@media(max-width:1100px){.footer-legal{padding-top:12px;padding-bottom:13px;gap:10px}}@media(max-width:560px){.site-footer .footer-friends{gap:17px;padding-top:10px;padding-bottom:8px}.site-footer .footer-friends>span,.site-footer .footer-friends>a{font-size:10px}.footer-legal{padding-top:11px;padding-bottom:12px;gap:9px}}

/* Case studies share the warm, light palette of the surrounding sections. */
.project-section{background:#e8e4dc;color:#344039;border-block:1px solid #ddd6c9}.project-heading h2{color:#304239}.project-heading .eyebrow{color:#947b56}.project-intro{color:#727c70}.project-entry{color:#4e5d4e;border-color:#b8aa90;background:transparent}.project-entry span{color:#947b56}.project-entry:hover{background:#f4f0e7}.project-section .home-project .work-image{background:#dfdbd2}.project-section .home-project .work-caption{border-bottom-color:#cdc6b8}.project-section .home-project .work-caption small{color:#897654}.project-section .home-project .work-caption h3{color:#35423a}.project-section .home-project .card-arrow{color:#947d57}.project-section .home-project:hover .card-arrow{color:#415b45}

/* Two aligned levels: contact details above the navigation directory. */
.footer-main{grid-template-columns:minmax(0,1fr) 140px;gap:30px 72px;padding-top:42px;padding-bottom:30px}.footer-details{position:relative;grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:center;padding-bottom:29px;border-bottom:1px solid #ffffff16}.footer-details h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}.footer-detail-phone{margin:0}.footer-detail-phone>span{margin-bottom:9px}.footer-detail-phone>a{font-size:24px}.footer-contact-list{display:grid;grid-template-columns:2fr .65fr 1.1fr;gap:26px}.footer-contact-list>div{display:block;margin:0}.footer-contact-list dt{font-size:10px;margin-bottom:7px}.footer-contact-list dd{font-size:12px;line-height:1.85}.footer-nav{grid-column:1;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px;padding:0;border:0}.footer-nav .footer-nav-title{padding-bottom:14px}.footer-wechat{grid-column:2;grid-row:2;text-align:right}.footer-wechat h2{font-size:12px;margin-bottom:14px;text-align:center}.site-footer .footer-friends>span,.site-footer .footer-friends>a{display:inline-flex;align-items:center;gap:7px}.footer-friends svg,.footer-friends img{width:14px;height:14px;flex:0 0 14px;object-fit:contain}.footer-friends>span{color:#91a087!important}
@media(max-width:1100px){.footer-main{gap:28px 40px}.footer-details{grid-template-columns:220px minmax(0,1fr);gap:26px}.footer-contact-list{grid-template-columns:1.7fr .65fr 1fr;gap:18px}.footer-contact-list dd{font-size:11px}}@media(max-width:900px){.footer-details{grid-template-columns:1fr;gap:23px}.footer-contact-list{grid-template-columns:2fr .6fr 1.2fr}.footer-nav{grid-column:1;grid-row:2;gap:23px}.footer-wechat{grid-column:2;grid-row:2}.footer-main{grid-template-columns:1fr 120px;gap:28px}.footer-detail-phone>a{font-size:23px}}@media(max-width:560px){.footer-main{grid-template-columns:minmax(0,1fr) 100px;gap:27px 22px;padding-top:32px;padding-bottom:27px}.footer-details{padding-bottom:24px;gap:22px}.footer-detail-phone>a{font-size:22px}.footer-contact-list{grid-template-columns:.7fr 1.3fr;gap:17px}.footer-contact-list>div:first-child{grid-column:1/-1}.footer-contact-list dt{font-size:9px;margin-bottom:4px}.footer-contact-list dd{font-size:11px}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.footer-nav .footer-nav-title{font-size:12px;padding-bottom:8px}.footer-nav a{font-size:10px}.footer-wechat h2{font-size:11px}.footer-wechat{text-align:right}}

/* Shared light palette: warm ivory navigation and a soft sage contact directory. */
.site-header{background:#faf8f3;color:#35483d;border-bottom:1px solid #dcded4;box-shadow:0 3px 16px #394c3810}.desktop-nav>a,.nav-group>a{color:#3e5144}.desktop-nav .active,.desktop-nav>a:hover,.nav-group>a:hover{color:#8a7048}.desktop-nav .active:after,.desktop-nav>a:hover:after{background:#ad9370}.header-contact{border-left-color:#d6d8cc;color:#3e5144}.header-contact>span{color:#7a826f}.header-contact i{color:#9a8058}.nav-drop{background:#faf8f3;border-top-color:#b29a75;box-shadow:0 14px 28px #3f50321c;border-radius:0 0 3px 3px}.nav-drop a{color:#4f6251}.nav-drop a:hover{color:#91764b}.menu-toggle span{background:#425746}.mobile-nav{background:#f7f6f0;color:#3d5142}.mobile-nav>a,.mobile-nav summary{border-bottom-color:#d9ded2}.mobile-nav details>a{color:#66755f}.mobile-nav a:hover{color:#987d51}
.site-footer{background:#e0e5dc;color:#435442;border-top:1px solid #cdd4c6}.footer-details{border-bottom-color:#c6cebe}.footer-details h2,.footer-wechat h2{color:#4c6049}.footer-detail-phone>span{color:#6a7963}.footer-detail-phone>a{color:#354e3b}.footer-contact-list dt{color:#6f7d66}.footer-contact-list dd{color:#43563f}.footer-contact-list a:hover{color:#8e7148}.footer-nav a{color:#62715b;font-size:12px}.footer-nav .footer-nav-title{color:#40583e;font-size:13px}.footer-nav a:hover{color:#967a4d}.footer-qr-frame{background:#fff;border-radius:3px;box-shadow:0 2px 10px #5e6e4510}.footer-wechat,.footer-wechat h2{text-align:center}.footer-wechat p{color:#6c7b61}.site-footer .footer-friends{border-top-color:#c6cebe;color:#627159}.site-footer .footer-friends>span{color:#627159!important}.site-footer .footer-friends a:hover{color:#8e7148}.footer-legal{border-top-color:#c9d0c2}.site-footer .filing-links a,.footer-legal .footer-copyright{color:#68775e}.site-footer .filing-links a:hover{color:#8e7148}.floating-contact{background:#eff1e9;border:1px solid #c8d0be;border-radius:4px;box-shadow:0 5px 18px #4255321c;overflow:hidden}.floating-contact a,.floating-contact button{color:#4e6448}.floating-contact a:hover,.floating-contact button:hover{background:#dce3d3}
@media(max-width:560px){.footer-nav a{font-size:11px}.footer-nav .footer-nav-title{font-size:12px}.footer-wechat{text-align:center}}

.floating-contact{flex-direction:column;right:20px;bottom:90px;background:#f8f7f1;border-color:#d0d6c7;border-radius:7px;box-shadow:0 5px 20px #42553216}.floating-contact a,.floating-contact button{width:48px;height:48px;min-height:48px;color:#53684e;border-bottom:1px solid #dde1d5;transition:background .2s,color .2s}.floating-contact>:last-child{border-bottom:0}.floating-contact a:hover,.floating-contact button:hover{background:#e8eddf;color:#3e5838}.floating-contact svg{display:block}.floating-contact a:focus-visible,.floating-contact button:focus-visible{outline:2px solid #9a835e;outline-offset:-4px}@media(max-width:560px){.floating-contact{right:12px;bottom:72px}.floating-contact a,.floating-contact button{width:44px;height:44px;min-height:44px}}

/* A quiet partnership invitation between the service story and contact directory. */
.join-band{padding:0;background:#e6e0d5;color:#33483b;overflow:visible;border-top:1px solid #d7cfbf}.join-band:after{display:none}.join-band>.join-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center;padding-top:55px;padding-bottom:55px}.join-copy .eyebrow{font-size:9px;letter-spacing:2.6px;color:#9a805b;margin:0 0 17px}.join-copy h2{font-size:28px;line-height:1.5;letter-spacing:1px;font-weight:500;margin:0 0 12px}.join-description{font-size:12px;line-height:1.8;color:#7d8578;margin:0}.join-action{border-left:1px solid #cfc5b3;padding-left:48px}.join-types{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:12px 0}.join-types li{font-size:11px;color:#7b806f;line-height:1.6;padding:0 15px;border-right:1px solid #c9beaa}.join-types li:first-child{padding-left:0}.join-types li:last-child{border:0;padding-right:0}.join-entry{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:13px 0;border-bottom:1px solid #a99a7f;color:#3f5140;font-size:14px;max-width:320px;transition:border-color .2s,color .2s}.join-entry-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid #b9a88b;border-radius:50%;font-size:21px;color:#967d54;transition:transform .2s,background .2s}.join-entry:hover{color:#80683e;border-color:#80683e}.join-entry:hover .join-entry-arrow{transform:translate(2px,-2px);background:#f2ede3}.site-footer{padding-top:0}
@media(max-width:1100px){.join-band>.join-layout{gap:38px}.join-action{padding-left:28px}.join-types li{padding-inline:10px}.join-copy h2{font-size:25px}}@media(max-width:760px){.join-band>.join-layout{grid-template-columns:1fr;gap:28px;padding-top:36px;padding-bottom:38px}.join-copy h2{font-size:23px;letter-spacing:.3px}.join-copy .eyebrow{font-size:8px;margin-bottom:12px}.join-description{font-size:11px}.join-action{border-left:0;border-top:1px solid #cfc5b3;padding:22px 0 0}.join-types{margin-bottom:13px}.join-types li{font-size:10px;padding-inline:12px}.join-entry{max-width:none;font-size:13px;padding:9px 0}.join-entry-arrow{width:32px;height:32px;font-size:20px}}@media(prefers-reduced-motion:reduce){.join-entry,.join-entry-arrow{transition:none}}
