/* Warm editorial layer, shared by published content and CMS previews. */
:root{--warm-paper:#fbf6ed;--warm-ink:#29453a;--warm-clay:#b9704d}body{background:#fffdf8}.hero{background:var(--warm-paper)}.hero h1{max-width:680px;letter-spacing:-3px}.hero .eyebrow{color:#886649}.hero .visual-glow{background:#e9c8a1;opacity:.45}.intro{background:#f0ebdf}.solutions{background:#fffdf8}.solution-card{background:#faf6ee;border-color:#e5ddcf}.solution-card:hover{background:#f1eadc}.benefits{background:#f4ede2}.journal-section{background:#f6f0e5}.portfolio-section{background:#efe8db}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.journal-card{background:#fffdf8;border:1px solid #e5ddcf;border-radius:16px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.journal-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #4b35220b}.journal-cover{display:flex;align-items:center;justify-content:space-between;aspect-ratio:1.6;background:#dedac5;overflow:hidden;padding:30px;position:relative}.journal-cover.article{background:#e9d5be}.journal-cover.service{background:#dbe4ce}.journal-cover.project{background:#e0d9cf}.journal-cover:has(img){padding:0}.journal-cover img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.journal-cover>span{align-self:flex-start;max-width:130px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:2px;line-height:1.7;color:#5f684c}.journal-cover>b{font-family:Georgia,serif;font-size:95px;font-weight:400;color:#9c684c;transform:rotate(-8deg);align-self:flex-end;line-height:1}.journal-cover.service>b{color:#5c765a}.journal-copy{padding:26px}.journal-copy .eyebrow{font-size:10px;color:#8c654b;margin-bottom:14px}.journal-copy h3{font-size:22px;line-height:1.35;letter-spacing:-.7px;margin:0 0 16px}.journal-copy h3 a{color:inherit;text-decoration:none}.journal-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#687267}.journal-copy>.text-link{font-size:12px;margin-top:25px}.entry-heading{padding-top:52px;padding-bottom:45px}.entry-heading>.eyebrow{margin-top:48px}.entry-heading h1{font-size:clamp(36px,4.8vw,66px);line-height:1.1;letter-spacing:-2.5px;max-width:950px;margin:18px 0 25px}.entry-lead{font-size:20px;line-height:1.7;max-width:800px;color:#677267}.entry-cover{margin-top:40px;width:100%;max-height:620px;object-fit:cover;border-radius:15px}.entry-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:90px;padding-bottom:100px;align-items:start}.entry-body{font-size:17px;line-height:1.9;color:#4b5e51;overflow-wrap:anywhere}.entry-body h2{font-size:28px;line-height:1.3;margin:34px 0 18px;color:#29453a;letter-spacing:-.8px}.entry-body h3{font-size:22px;margin:28px 0 16px;color:#29453a}.entry-body p{margin-bottom:20px}.entry-body ul{padding-left:22px;margin:20px 0}.entry-body li{margin:9px 0}.entry-body>h2:first-child{margin-top:0}.entry-aside{position:sticky;top:110px;background:#eee7d9;padding:30px;border-radius:14px}.entry-aside h2{font-size:28px;line-height:1.25;margin:16px 0}.entry-aside p{font-size:14px;line-height:1.7;color:#60705f}.entry-aside .button{font-size:13px;margin-top:25px}.entry-aside small{display:block;font-size:10px;line-height:1.8;margin-top:25px;color:#687267}.collection-intro{padding:0 0 55px;font-size:19px;line-height:1.8;max-width:800px;color:#687267}.collection-content{padding-bottom:90px}.portfolio-empty{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#eee6d6;border-radius:16px;padding:48px}.portfolio-empty h2{font-size:34px;line-height:1.2;letter-spacing:-1px}.portfolio-empty p{color:#63705e;line-height:1.8}.portfolio-empty .text-link{margin-top:24px}.service-detail-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.service-detail-links a{display:inline-flex;padding:12px 16px;border:1px solid #d9dccc;border-radius:30px;font-size:12px;font-weight:600}.page-heading{background:#f7f1e6}.site-footer{background:#263f35}.contact{background:#f2eadb}.intro-copy p{white-space:pre-line}.faq{background:#fffdf8}.page-cta{margin-bottom:60px}.navigation{gap:22px}.navigation>a{font-size:13px}.navigation .nav-cta{font-size:12px}.contact-method strong{overflow-wrap:anywhere}.contact-method{min-width:0}.entry-loading{min-height:55vh;padding:80px 0}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b47742;outline-offset:5px}[hidden]{display:none!important}
@media(max-width:1000px){.journal-grid{gap:16px}.journal-copy{padding:20px}.journal-copy h3{font-size:19px}.entry-layout{gap:35px}.navigation{gap:15px}.hero h1{letter-spacing:-2px}}@media(max-width:760px){.journal-grid{grid-template-columns:1fr}.journal-cover{aspect-ratio:1.9}.journal-cover>b{font-size:110px}.entry-layout{display:block;padding-bottom:60px}.entry-aside{position:static;margin-top:35px}.entry-heading{padding-top:30px}.entry-heading h1{letter-spacing:-1.5px}.entry-lead{font-size:17px}.entry-body{font-size:16px}.portfolio-empty{grid-template-columns:1fr;padding:28px;gap:20px}.collection-intro{font-size:17px}.journal-copy h3{font-size:23px}.hero h1{font-size:44px}.navigation>a{font-size:16px}.navigation .nav-cta{font-size:14px}}
.hero{color:#29453a}.hero-description{color:#5d7061}.hero .text-link{color:#29453a}.hero .hero-note{color:#65775f}.hero .button-primary{background:#2a6952;color:#fff8ec}.hero .hero-bottom{border-color:#d5d8c8}.hero .hero-bottom>span{color:#63705c}.hero .hero-tags span{color:#4c614e;background:#eee9da;border-color:#d8dccb}.page-heading{color:#29453a}.page-heading .breadcrumbs{color:#61715e}.page-heading .breadcrumbs a{color:#40604c}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition:none!important}}
/* Company profile: service families, direction, and leadership. */
.service-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0 0 44px;padding:30px 0;border-top:1px solid #d7d7c8;border-bottom:1px solid #d7d7c8}
.service-pillars span{font-size:10px;font-weight:700;letter-spacing:.13em;color:#6d604d}
.service-pillars h3{font-size:20px;line-height:1.35;margin:14px 0 12px;color:#29453a}
.service-pillars p,.company-grid p,.company-missions,.leadership p{color:#59635b;line-height:1.8}
.company-direction{background:#f8f5ed}
.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:32px 0 40px}
.company-grid h3{font-size:clamp(24px,3vw,35px);line-height:1.25;max-width:420px;margin:18px 0}
.company-vision{padding-right:35px;border-right:1px solid #d7d7c8}
.company-missions{padding-left:20px;margin:18px 0 0}.company-missions li{padding:4px 0 9px 8px}
.leadership{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;border-top:1px solid #d7d7c8;padding-top:30px}
.leadership h3{font-size:18px;line-height:1.5;margin:0 0 6px;color:#29453a}.leadership p{font-size:14px;margin:0}
[data-address]{line-height:1.7;max-width:38ch}
@media(max-width:760px){.service-pillars,.company-grid,.leadership{grid-template-columns:1fr;gap:24px}.service-pillars article+article{padding-top:22px;border-top:1px solid #deded2}.company-vision{padding-right:0;padding-bottom:24px;border-right:0;border-bottom:1px solid #d7d7c8}.company-grid{padding-top:10px}.leadership{gap:20px}}
.lis-focus{background:#e9eee4;border-top:1px solid #d7ddcf;border-bottom:1px solid #d7ddcf}
.lis-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.lis-copy h2{font-size:clamp(29px,3.4vw,44px);line-height:1.17;letter-spacing:-.035em;margin:18px 0 24px}
.lis-copy>p:not(.eyebrow){color:#526153;line-height:1.85;margin:0 0 26px;max-width:52ch}
.lis-overview{background:#faf9f2;border:1px solid #d4ddcd;border-radius:24px;padding:34px}
.lis-flow{display:flex;align-items:center;gap:10px;margin:30px 0 18px}.lis-flow span,.lis-flow strong{flex:1;text-align:center;padding:18px 8px;border:1px solid #d4ddcd;border-radius:10px;font-size:13px}.lis-flow strong{background:#294b3c;color:#fff;border-color:#294b3c}
.lis-caption{font-size:12px;line-height:1.75;color:#64715f}.lis-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:24px 0;margin-top:24px;border-top:1px solid #d4ddcd}.lis-facts strong{display:block;font-size:35px;font-weight:600;letter-spacing:-.04em;color:#294b3c}.lis-facts span{display:block;margin-top:6px;font-size:12px;color:#526153}
@media(max-width:900px){.lis-grid{grid-template-columns:1fr;gap:30px}.lis-overview{max-width:580px}}
@media(max-width:480px){.lis-overview{padding:22px 18px}.lis-flow{gap:5px}.lis-flow span,.lis-flow strong{font-size:11px;padding:15px 5px}.lis-flow b{font-size:12px}}
