:root{--paper:#f6f5ef;--white:#fff;--ink:#172b38;--muted:#5f6c70;--line:#d9ddd6;--red:#ac3830;--light:#e9ece5;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}::selection{background:#cfc4ac;color:#172b38}.wrap{width:min(var(--max),calc(100% - 96px));margin:auto}.skip{position:fixed;left:20px;top:-100px;background:white;z-index:999;padding:15px}.skip:focus{top:12px}.topline{border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.topline .wrap{display:flex;justify-content:space-between;padding:8px 0}.topline a{letter-spacing:0}header{background:var(--paper);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--line)}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:57px;height:57px;object-fit:contain}.brand-text{font-size:19px;font-weight:700;letter-spacing:.13em;line-height:1.2;white-space:nowrap}.brand-text small{display:block;font-size:8px;font-weight:400;letter-spacing:.26em;margin-top:8px}#main-nav{display:flex;align-items:center;gap:30px;font-size:13px}#main-nav a{position:relative}#main-nav a:not(.btn):after{content:'';position:absolute;height:1px;bottom:-7px;left:0;right:100%;background:var(--red);transition:.25s}#main-nav a:hover:after,#main-nav a[aria-current=page]:after{right:0}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:14px 23px;background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:13px;font-weight:500;line-height:1.45;transition:background .2s}.btn:hover{background:#315264;border-color:#315264}.btn.light{background:transparent;color:var(--ink);border-color:var(--line)}.btn.light:hover{background:var(--light)}.btn.red{background:var(--red);border-color:var(--red)}.btn.red:hover{background:#892b25}.text-link{display:inline-flex;align-items:center;gap:26px;border-bottom:1px solid currentColor;padding:3px 0;font-size:13px}.arrow{font-size:20px;line-height:1}.menu-toggle{display:none;border:1px solid var(--line);background:none;width:44px;height:44px;font-size:20px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.22em;display:flex;gap:12px;align-items:center;margin:0 0 25px;font-weight:600}.eyebrow:before{content:'';background:var(--red);height:6px;width:6px}.serif,h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.06}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(44px,5.2vw,78px);margin-bottom:30px}h2{font-size:clamp(36px,3.6vw,54px);margin-bottom:24px}h3{font-size:21px;line-height:1.3;letter-spacing:-.025em;font-weight:500}em{font-weight:400;color:var(--red)}.muted{color:var(--muted)}.hero{padding:34px 0 0}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;min-height:650px;gap:6vw}.hero-copy{padding:62px 0 30px;position:relative}.hero-copy p:not(.eyebrow){max-width:420px;font-size:15px;color:var(--muted);margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.hero-bottom{display:flex;gap:40px;margin-top:55px;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.hero-bottom b{font-size:21px;color:var(--ink);display:block;font-weight:400}.hero-picture{position:relative;min-width:0}.hero-picture>img{width:100%;height:100%;object-fit:cover;object-position:center;max-height:670px}.photo-tag{position:absolute;bottom:24px;left:24px;right:24px;background:rgba(246,245,239,.95);display:flex;justify-content:space-between;padding:17px 20px;font-size:11px;gap:20px}.photo-tag small{color:var(--muted);display:block;font-size:10px}.photo-tag b{font-weight:500}.hero-picture:before{content:'A / 01';position:absolute;top:18px;left:20px;color:white;font-size:10px;letter-spacing:.12em}.ribbon{margin-top:34px;background:var(--ink);color:#fff;padding:23px 0}.ribbon .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:11px;letter-spacing:.07em}.ribbon span{opacity:.8}.ribbon span:before{content:'+';margin-right:14px;color:#c5b798}.section{padding:108px 0}.section.white{background:white}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.section-head h2{margin:0}.section-head>p{font-size:14px;color:var(--muted);max-width:330px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px}.service-card .imgbox{overflow:hidden;aspect-ratio:1.4;background:var(--light);margin-bottom:23px}.service-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service-card:hover img{transform:scale(1.035)}.service-card h3{display:flex;justify-content:space-between;margin-bottom:12px;gap:15px}.service-card p{color:var(--muted);font-size:13px;margin:0;max-width:350px}.number{font-size:10px;color:var(--red);letter-spacing:.1em;margin-bottom:12px;display:block}.extra-services{border-top:1px solid var(--line);padding-top:25px;margin-top:40px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:13px;color:var(--muted)}.story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.story-photo{position:relative;padding-right:45px}.story-photo img{height:570px;width:100%;object-fit:cover}.story-stamp{position:absolute;bottom:36px;right:0;background:var(--ink);color:white;padding:30px;font-size:11px;width:180px}.story-stamp strong{display:block;font:58px/1 Georgia;margin-bottom:12px}.story p{font-size:14px;color:var(--muted)}.story ul{padding:0;list-style:none;margin:30px 0}.story li{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;display:flex;gap:20px}.story li:before{content:'↗';color:var(--red)}.process{background:var(--ink);color:white}.process .eyebrow:before{background:#d6b8a3}.process .section-head p{color:#bac3c7}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:70px}.step{border-top:1px solid #50606a;padding-top:25px}.step .serif{font-size:40px;color:#c6b9a2}.step h3{margin:30px 0 15px;font-size:18px}.step p{color:#bac3c7;font-size:13px;margin-bottom:0}.project-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:28px}.project{margin:0}.project img{width:100%;height:400px;object-fit:cover}.project:nth-child(2) img{object-position:center}.project figcaption{padding-top:20px;display:flex;justify-content:space-between;font-size:13px;gap:15px}.project figcaption small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.reference{border:1px solid var(--line);padding:25px;display:flex;justify-content:space-between;gap:30px;margin-top:35px;font-size:12px}.reference span{color:var(--muted);font-size:10px;letter-spacing:.08em;max-width:150px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 28px}.blog-card{display:flex;flex-direction:column}.blog-card .imgbox{aspect-ratio:1.7;overflow:hidden;margin-bottom:20px;background:var(--light)}.blog-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.blog-card:hover img{transform:scale(1.035)}.meta{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;display:flex;justify-content:space-between;gap:15px}.meta .category{color:var(--red)}.blog-card h3{font-size:23px;line-height:1.25}.blog-card p{font-size:13px;color:var(--muted)}.blog-card .text-link{align-self:flex-start;margin-top:auto}.cta{border-top:1px solid var(--line);padding:65px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-size:48px;margin-bottom:14px}.cta p{color:var(--muted);font-size:14px;margin:0}footer{background:var(--ink);color:#fff;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.4fr;gap:40px}.footer-brand{font-size:26px;letter-spacing:.12em;line-height:1.2}.footer-grid h3{font:11px Arial;text-transform:uppercase;letter-spacing:.14em;margin-bottom:25px;color:#bac3c7}.footer-grid p,.footer-grid a{font-size:12px;color:#d5dcdf}.footer-grid a{display:block;margin:9px 0}.footer-grid p{max-width:270px;margin-top:22px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:55px;border-top:1px solid #40515c;padding-top:24px;font-size:10px;color:#bac3c7}.floating{position:fixed;bottom:24px;right:24px;z-index:80;background:var(--ink);color:white;border:1px solid #778891;padding:12px 18px;font-size:12px;box-shadow:0 3px 20px #0002}.crumb{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--muted);padding:25px 0}.crumb a{text-decoration:underline;text-underline-offset:3px}.page-intro{padding:50px 0 65px}.page-intro h1{max-width:950px;margin:20px 0 28px}.page-intro .lead{font-size:18px;max-width:710px;color:var(--muted)}.page-banner{width:100%;height:460px;object-fit:cover}.detail-layout{display:grid;grid-template-columns:minmax(0,2.2fr) 1fr;gap:9vw;padding:70px 0 90px}.prose h2{font-size:34px;margin:48px 0 22px;scroll-margin-top:120px}.prose h2:first-child{margin-top:0}.prose h3{margin:30px 0 15px}.prose p,.prose li{font-size:16px;color:#46565f;line-height:1.85}.prose p{margin-bottom:22px}.prose ul,.prose ol{padding-left:22px}.prose li{margin-bottom:12px}.prose a:not(.btn){color:var(--red);text-decoration:underline;text-underline-offset:3px}.prose table{border-collapse:collapse;width:100%;font-size:13px;margin:25px 0}.prose td,.prose th{text-align:left;padding:13px;border:1px solid var(--line)}.prose th{background:var(--light)}.aside-box{border:1px solid var(--line);padding:27px;margin-bottom:28px}.aside-box h3{font-size:18px;margin-bottom:20px}.aside-box p{font-size:13px;color:var(--muted)}.aside-box a:not(.btn){display:block;font-size:13px;padding:10px 0;border-bottom:1px solid var(--line)}.aside-box .btn{font-size:12px;display:flex;gap:10px}.sidebar-inner{position:sticky;top:120px}.note{border-left:2px solid var(--red);padding:16px 24px;background:var(--light);font-size:14px;margin:30px 0;color:var(--ink)}.faq{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;list-style:none;font-weight:500;padding-right:30px;position:relative;font-size:16px}summary:after{content:'+';position:absolute;right:0}details[open] summary:after{content:'−'}details p{margin-top:15px;margin-bottom:0;color:var(--muted);font-size:14px}.blog-tools{display:grid;grid-template-columns:1fr 280px;gap:24px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin-bottom:40px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{background:transparent;border:1px solid var(--line);font-size:11px;padding:8px 13px}.filter.active{background:var(--ink);border-color:var(--ink);color:white}.search{width:100%;background:white;border:1px solid var(--line);padding:11px 15px;font-size:13px}.result-count{font-size:12px;color:var(--muted);margin-bottom:25px}.empty{padding:40px;border:1px solid var(--line);grid-column:1/-1}.topic-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.topic-links a{border:1px solid var(--line);padding:10px 16px;font-size:12px}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:8vw}.contact-list a{display:block;font-size:25px;margin:15px 0}.contact-list p{max-width:350px;font-size:15px}.contact-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:32px}form{background:white;border:1px solid var(--line);padding:38px}form h2{font-size:34px}label{display:block;font-size:12px;margin:18px 0 8px}input,select,textarea{width:100%;padding:13px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:0}textarea{resize:vertical}form .btn{margin-top:23px;width:100%}.form-note{font-size:11px;color:var(--muted);margin-top:15px}.checkbox{display:flex;gap:12px;align-items:start;font-size:12px}.checkbox input{width:auto;margin-top:4px}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:20px}.checklist article{border:1px solid var(--line);padding:25px}.checklist article p{font-size:14px}.author{font-size:12px;display:flex;gap:22px;align-items:center;color:var(--muted);margin:25px 0}.author strong{color:var(--ink);font-weight:500}.article-hero{max-width:920px}.article-hero h1{font-size:clamp(38px,4.5vw,66px)}[hidden]{display:none!important}.top-category{display:inline-block;font-size:11px;color:var(--red);text-transform:uppercase;letter-spacing:.14em}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.category-tile{padding:25px;border:1px solid var(--line);background:white}.category-tile h3{font-size:19px}.category-tile p{font-size:13px;color:var(--muted);margin:0}
@media(min-width:1600px){.hero-grid{min-height:710px}.hero-picture>img{max-height:710px}.hero-copy{padding-top:85px}}@media(max-width:1100px){.wrap{width:calc(100% - 56px)}#main-nav{gap:18px;font-size:12px}.header-inner{gap:15px}.brand-text{font-size:16px}.brand img{width:47px;height:47px}#main-nav .btn{padding:12px 16px;gap:14px}.hero-grid{gap:40px;min-height:590px}.hero-copy{padding-top:45px}.hero-bottom{margin-top:30px;gap:25px}.section{padding:80px 0}.story{gap:50px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr;gap:30px}.footer-grid>div:last-child{grid-column:1/-1;display:flex;gap:35px;align-items:baseline}.footer-grid>div:last-child p{margin-top:0}.detail-layout{gap:45px}.hero h1{font-size:61px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.topline .wrap span:nth-child(2){display:none}.header-inner{height:76px}.menu-toggle{display:block}#main-nav{position:absolute;left:0;right:0;top:76px;background:var(--paper);padding:25px;box-shadow:0 15px 20px #0001;display:none;align-items:stretch;gap:0;border-bottom:1px solid var(--line)}#main-nav.open{display:flex;flex-direction:column}#main-nav a{padding:13px 0;font-size:15px}#main-nav .btn{margin-top:15px;padding:15px}.brand-text{font-size:17px}.hero{padding-top:24px}.hero-grid{grid-template-columns:1fr 1fr;gap:25px;min-height:500px}.hero-copy{padding-top:30px}.hero h1{font-size:48px}.hero .eyebrow{font-size:8px;letter-spacing:.14em}.hero-copy p:not(.eyebrow){font-size:13px}.hero-actions{gap:20px}.hero-actions .btn{padding:12px 15px;gap:18px}.hero-bottom{gap:15px;font-size:9px;margin-top:25px}.hero-bottom b{font-size:17px}.photo-tag{left:12px;right:12px;bottom:12px;padding:12px;gap:10px;font-size:10px}.ribbon .wrap{flex-wrap:wrap;justify-content:start;gap:12px 28px;font-size:9px}.section-head{gap:25px}.section-head>p{max-width:260px;font-size:13px}.service-grid{grid-template-columns:1fr 1fr}.story{gap:35px}.story-photo{padding-right:15px}.story-photo img{height:490px}.story-stamp{width:145px;padding:20px}.story-stamp strong{font-size:45px}.story h2{font-size:38px}.steps{gap:22px}.project img{height:300px}.blog-grid{grid-template-columns:1fr 1fr}.blog-card h3{font-size:21px}.blog-grid.home-blog .blog-card:last-child{display:none}.blog-tools{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.detail-layout{grid-template-columns:1fr;gap:35px}.sidebar-inner{position:static;display:grid;grid-template-columns:1fr 1fr;gap:25px}.aside-box{margin-bottom:0}.contact-grid{gap:35px}form{padding:25px}.category-grid{grid-template-columns:1fr 1fr}.page-banner{height:350px}}
@media(max-width:580px){.hero-grid{grid-template-columns:1fr;gap:25px}.hero-copy{padding:20px 0 0}.hero h1{font-size:59px;max-width:400px}.hero-copy p:not(.eyebrow){font-size:14px;max-width:350px}.hero-bottom{margin-top:32px;padding-top:20px;gap:35px;font-size:10px}.hero-bottom b{font-size:23px;margin-bottom:5px}.hero-picture{height:430px}.hero-picture>img{object-position:center 45%}.hero .eyebrow{font-size:9px}.hero-actions .btn{padding:14px 20px}.photo-tag{left:18px;right:18px;bottom:18px;padding:15px}.ribbon{margin-top:25px}.ribbon .wrap{gap:12px 20px}.ribbon span{font-size:9px}.section{padding:65px 0}.section-head{display:block;margin-bottom:30px}.section-head>p,.section-head>.text-link{margin-top:24px}.section-head>p{max-width:100%}h2{font-size:38px}.service-grid{gap:30px 15px}.service-card h3{font-size:17px;gap:5px}.service-card .arrow{font-size:16px}.service-card p{font-size:12px}.service-card .imgbox{aspect-ratio:1.05;margin-bottom:17px}.extra-services{align-items:start;font-size:12px}.extra-services .text-link{white-space:nowrap;font-size:11px;gap:10px}.story{grid-template-columns:1fr;gap:40px}.story-photo img{height:430px}.story-photo{padding-right:25px}.story-stamp{bottom:25px}.steps{grid-template-columns:1fr 1fr;margin-top:40px;gap:35px 25px}.step h3{margin-top:20px;font-size:17px}.step p{font-size:12px}.project-grid{grid-template-columns:1fr}.project img{height:310px}.project figcaption{padding-top:15px}.reference{flex-direction:column;gap:18px;font-size:12px}.reference span{max-width:none}.blog-grid{grid-template-columns:1fr;gap:35px}.blog-card .imgbox{aspect-ratio:1.65}.blog-card h3{font-size:25px}.blog-grid.home-blog .blog-card:last-child{display:flex}.cta .wrap{display:block}.cta h2{font-size:40px}.cta .btn{margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{display:block}.footer-grid>div:last-child p{max-width:100%}.footer-bottom{display:block;font-size:10px;margin-top:35px}.footer-bottom span{display:block;margin:8px 0}.floating{padding:10px 14px;bottom:15px;right:15px;font-size:11px}.page-intro{padding:25px 0 40px}.page-intro h1{font-size:43px}.page-intro .lead{font-size:16px}.page-banner{height:300px}.crumb{font-size:10px;padding:22px 0}.detail-layout{padding:45px 0 60px}.prose h2{font-size:30px;margin-top:35px}.prose p,.prose li{font-size:15px}.prose table{font-size:11px}.prose td,.prose th{padding:9px}.sidebar-inner{display:block}.aside-box{margin-bottom:20px}.contact-grid{grid-template-columns:1fr}.contact-list a{font-size:24px}.checklist,.category-grid{grid-template-columns:1fr}.article-hero h1{font-size:40px}.author{font-size:11px;gap:15px}.blog-tools{padding:18px 0}.filter{font-size:10px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(max-width:580px){.hero h1{font-size:clamp(36px,10.6vw,46px)}.topline a{white-space:nowrap;font-size:9px}.topline .wrap>span:first-child{font-size:8px;letter-spacing:.06em;max-width:210px}.topline .wrap{gap:15px}}

.visual-note{font-size:11px;color:var(--muted);margin:28px 0 0}.map-section{padding-top:65px}.map-frame{background:var(--light);border:1px solid var(--line)}.map-frame iframe{display:block;width:100%;height:460px;border:0}.map-caption{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-top:18px;font-size:12px;color:var(--muted)}@media(max-width:580px){.map-frame iframe{height:360px}.map-caption{align-items:flex-start;flex-direction:column;gap:12px}.map-section{padding-top:45px}}

.btn:disabled{opacity:.55;cursor:not-allowed}

.consent-settings{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.ads-consent{position:fixed;bottom:20px;left:24px;right:24px;z-index:200;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:24px 28px;display:flex;align-items:center;gap:35px;box-shadow:0 8px 35px #0003}.ads-consent h2{font:500 20px/1.3 Arial;letter-spacing:0;margin:0 0 10px}.ads-consent p{font-size:12px;line-height:1.65;max-width:780px;margin:0}.ads-consent p a{text-decoration:underline}.consent-actions{display:flex;gap:12px;flex-shrink:0}.consent-actions .btn{gap:0;white-space:nowrap}.consent-actions .btn.light{border-color:var(--ink)}@media(max-width:800px){.ads-consent{flex-direction:column;align-items:stretch;gap:18px;left:15px;right:15px;bottom:15px;padding:22px}.consent-actions .btn{flex:1}.ads-consent p{font-size:11px}}
