:root{--red:#cb292b;--ink:#262725;--paper:#f3f3ed;--line:#d8d9d1;--gray:#676a63}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none;cursor:pointer}button,input{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--red);outline-offset:5px}img{max-width:100%}.topbar{display:flex;justify-content:space-between;background:var(--ink);color:white;font:10px monospace;letter-spacing:1px;padding:11px 5%}.site-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;background:#ffffffef;backdrop-filter:blur(20px);padding:21px 5%;border-bottom:1px solid var(--line)}.logo img{width:216px;display:block}nav{display:flex;align-items:center;gap:30px;font-size:12px}nav a:hover{color:var(--red)}.nav-contact{border-bottom:2px solid var(--red);padding:10px 0}.menu{display:none}.hero{display:grid;grid-template-columns:46% 54%;background:var(--paper);min-height:660px;padding:60px 5% 35px;gap:20px;border-bottom:1px solid var(--line);overflow:hidden}.hero-copy{padding:25px 0 0}.kicker{font:10px monospace;letter-spacing:1.5px;display:flex;align-items:center;gap:10px;line-height:1.6}.signal{width:8px;height:8px;display:inline-block;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px #cb292b15}h1{font-size:clamp(65px,7.6vw,122px);line-height:.96;letter-spacing:-7px;font-weight:500;margin:40px 0 30px}h1>span{color:var(--red)}.hero-copy>p{font-size:16px;line-height:1.8;color:var(--gray)}.hero-buttons{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:30px}.solid,.outline{padding:17px 24px;font-size:12px;display:inline-block;border:1px solid var(--red);background:var(--red);color:white;transition:background .2s}.solid:hover{background:#a71e20}.outline{background:transparent;color:var(--ink);border-color:var(--line)}.outline:hover{background:var(--paper)}.underlined{font-size:12px;border-bottom:1px solid var(--ink);padding:8px 0;display:inline-block;transition:color .2s}.underlined:hover{color:var(--red);border-color:var(--red)}.hero-note{display:flex;gap:18px;font:8px monospace;letter-spacing:1.3px;margin-top:50px;color:var(--gray)}.house-stage{display:flex;flex-direction:column;justify-content:center;padding-top:15px;min-width:0}.drawing-label{display:flex;justify-content:space-between;font:8px monospace;letter-spacing:1px;border-bottom:1px solid var(--line);padding-bottom:15px}.house-canvas{position:relative}.house{display:block;width:100%;height:auto}.room-glow{fill:#f9d785;opacity:0;transition:opacity .6s}.lights-on .room-glow{opacity:.65}.lights-on .building{filter:drop-shadow(0 0 12px #f3db9c35)}.hotspot{position:absolute;width:31px;height:31px;border:0;border-radius:50%;background:var(--red);color:white;font:10px monospace;box-shadow:0 0 0 6px #cb292b12;transition:box-shadow .3s,transform .3s}.hotspot:hover,.hotspot.selected{box-shadow:0 0 0 11px #cb292b20;transform:scale(1.1)}.h1{left:49%;top:63%}.h2{left:40%;top:42%}.h3{left:58%;top:74%}.h4{left:75%;top:30%}.light-switch{position:absolute;left:0;bottom:7px;padding:9px 11px;border:1px solid var(--line);font:9px monospace;background:var(--paper);color:var(--ink)}.light-switch[aria-pressed=true]{background:var(--ink);color:white}.house-caption{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:20px}.house-caption span{font:10px monospace;letter-spacing:1px;color:var(--red)}.house-caption p{font-size:13px;margin:10px 0}.model-hint{font:9px monospace;color:#81847b;margin-top:13px}.chapter-band{display:flex;justify-content:space-between;gap:20px;padding:24px 5%;border-bottom:1px solid var(--line);align-items:center}.chapter-band>span{font-size:14px}.chapter-band>div{font:9px monospace;letter-spacing:1.5px}.chapter-band i{color:var(--red);font-style:normal;margin:0 15px}.section{padding:95px 7%}.section-intro{display:grid;grid-template-columns:1.4fr 1fr;gap:20px 65px;margin-bottom:50px;align-items:end}.section-intro .kicker{grid-column:1/-1}.red{color:var(--red)}h2{font-size:clamp(34px,4vw,60px);letter-spacing:-2.5px;line-height:1.06;font-weight:500;margin:0}.section-intro>p{font-size:14px;line-height:1.8;color:var(--gray);max-width:360px;margin:0}.service-list{border-top:1px solid var(--ink)}.service-row{border-bottom:1px solid var(--line);scroll-margin-top:115px}.service-row summary{list-style:none;display:grid;grid-template-columns:45px 1fr 1fr 28px;align-items:center;gap:20px;padding:27px 0;cursor:pointer}.service-row summary::-webkit-details-marker{display:none}.service-num{font:11px monospace;color:var(--red)}.service-row h3{font-size:23px;font-weight:400;letter-spacing:-.6px;margin:0}.service-short{font-size:12px;color:var(--gray);line-height:1.7}.plus{position:relative;width:22px;height:22px;justify-self:end}.plus:before,.plus:after{content:'';position:absolute;background:var(--red);width:16px;height:1px;top:10px;left:3px;transition:transform .25s}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}.service-row[open]{background:var(--paper);padding:0 25px;margin:0 -25px}.service-body{padding:0 50px 40px 65px;max-width:950px;font-size:14px;line-height:1.9}.service-body h1{display:none}.service-body h2{font-size:26px;letter-spacing:-.5px;line-height:1.3;margin:22px 0}.service-body h3{font-size:20px}.service-body img{max-height:260px;max-width:50%;object-fit:contain;float:right;margin:0 0 20px 30px}.service-body a:not(.solid){text-decoration:underline;text-underline-offset:4px}.service-body .solid{margin-top:18px}.service-body:after{content:'';display:block;clear:both}.company{background:var(--ink);color:white}.company-heading{display:flex;justify-content:space-between;align-items:start;gap:35px;margin-bottom:55px}.company-heading .kicker{color:#afafa7;margin-top:8px}.company-heading h2{width:53%;font-size:59px}.company-heading h2 span{color:#bdbfb7}.company-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.company-photo{position:relative}.company-photo img{display:block;width:100%;aspect-ratio:1.35;object-fit:cover}.company-photo>span{display:block;font:8px monospace;letter-spacing:1px;padding-top:16px;color:#aaa}.company-copy .lead{font-size:25px;line-height:1.3;letter-spacing:-.5px}.company-copy>p:not(.lead){color:#b9bcb2;font-size:13px;line-height:1.9}.company-pages{display:grid;grid-template-columns:1fr 1fr;margin-top:25px;gap:0 25px}.company-pages a{padding:14px 0;border-bottom:1px solid #ffffff25;font-size:12px}.company-pages a:hover{color:#f47777}.promise{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #ffffff25;padding-top:30px;margin-top:55px;font:10px monospace;color:#d2d2ca}.project-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:35px}.project-card .project-image{position:relative;overflow:hidden;background:var(--paper)}.project-image img{display:block;width:100%;height:350px;object-fit:cover;transition:transform .7s}.project-card:hover img{transform:scale(1.04)}.project-card h3{font-size:24px;font-weight:400;letter-spacing:-.6px;margin:18px 0 10px;line-height:1.3}.project-card .kicker{font-size:9px;margin-top:20px;color:var(--red)}.project-card p{font-size:13px;color:var(--gray);line-height:1.8}.project-links{display:flex;gap:32px;flex-wrap:wrap;margin-top:35px}.showroom{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.showroom h2{margin:25px 0;font-size:62px}.showroom em{font-style:normal;color:var(--red)}.showroom-heading>p{max-width:380px;font-size:14px;color:var(--gray);line-height:1.9}.opening{border-top:4px solid var(--red);padding-top:25px}.opening-label{font:10px monospace;letter-spacing:1.5px}.opening>div{display:flex;justify-content:space-between;padding:28px 0;border-bottom:1px solid var(--line);gap:25px}.opening>div>span{font-size:13px}.opening strong{font-weight:400;font-size:25px;line-height:1.4;letter-spacing:-1px;font-variant-numeric:tabular-nums}.opening>p{font-size:12px;line-height:1.9;margin:25px 0}.library-tools{border-top:1px solid var(--ink);padding-top:28px}.search>span{font:9px monospace;letter-spacing:1px;display:block;margin-bottom:10px}.search input{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:15px 0 23px;font-size:23px;letter-spacing:-.5px;color:var(--ink)}.search input::placeholder{color:#999c94}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.filters button{font-size:11px;padding:10px 14px;border:1px solid var(--line);background:white;border-radius:0;color:var(--ink)}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.library-status{font:10px monospace;color:var(--gray);padding:12px 0}.library{display:grid;grid-template-columns:repeat(3,1fr);gap:0 35px}.library a{padding:22px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}.library a:hover{color:var(--red)}.library small{display:block;color:var(--gray);font:8px monospace;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.load-more{margin-top:35px}.contact{background:var(--red);color:white}.contact-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin:30px 0 50px}.contact h2{font-size:100px;letter-spacing:-5px}.contact h2 em{font-style:normal;color:#f7c5c2}.contact-heading>p{font-size:15px;line-height:1.9;max-width:300px}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;border-top:1px solid #ffffff60;padding-top:30px;gap:35px}.contact-grid span{font:9px monospace;letter-spacing:1.5px;display:block;margin-bottom:18px;color:#ffdfdc}.contact-grid strong{font-size:26px;font-weight:400;letter-spacing:-.8px}.contact-grid p{font-size:13px}.contact-grid a:hover strong{text-decoration:underline;text-underline-offset:6px}footer{padding:40px 5%}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:35px}.footer-top img{width:180px}.footer-top p{font-size:12px;color:var(--gray)}.footer-top>a{font-size:11px}.footer-links{border-top:1px solid var(--line);padding-top:25px;display:flex;flex-wrap:wrap;gap:18px 28px;font-size:10px}.footer-links a:hover{color:var(--red)}.article-page{max-width:1140px;margin:0 auto;padding:60px 6% 100px}.article-nav{display:flex;gap:25px;font-size:11px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:40px;flex-wrap:wrap}.article-nav a{border-bottom:1px solid var(--ink);padding-bottom:4px}.article-meta{font:10px monospace;color:var(--red);letter-spacing:1.5px;margin-bottom:20px}.article-page h1{font-size:55px;line-height:1.1;letter-spacing:-2px;margin:20px 0 40px}.article-content{font-size:16px;line-height:1.9;overflow-wrap:anywhere}.article-content h1{display:none}.article-content h2{font-size:31px;line-height:1.3;letter-spacing:-1px;margin:40px 0 20px}.article-content h3{font-size:23px;line-height:1.4}.article-content img{display:block;max-height:480px;width:auto;max-width:100%;margin:25px 0;object-fit:contain}.article-content a{color:var(--red);text-decoration:underline;text-underline-offset:4px}.article-content table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse}.article-content td,.article-content th{border:1px solid var(--line);padding:12px}.article-contact{border-top:1px solid var(--line);margin-top:50px;padding-top:30px;display:flex;justify-content:space-between;gap:30px;align-items:center}.article-contact p{font-size:14px}.article-related{margin-top:60px;border-top:1px solid var(--line);padding-top:30px}.article-related h2{font-size:26px;letter-spacing:-.5px}.article-related>div{display:flex;gap:18px;flex-wrap:wrap;margin-top:25px;font-size:12px}.article-related a{border-bottom:1px solid var(--line);padding-bottom:6px}.empty{font-size:14px;line-height:1.8}.loading{padding:60px 7%;font-size:18px}@media(min-width:1700px){body{max-width:1920px;margin:auto}}@media(max-width:1050px){nav{gap:20px}.logo img{width:180px}.hero{grid-template-columns:45% 55%;padding-top:35px;min-height:580px}h1{font-size:82px;letter-spacing:-5px}.hero-copy>p{font-size:14px}.hero-note{font-size:7px;gap:12px}.hero-buttons{gap:17px}.hero-buttons .solid{padding:15px}.chapter-band>div{font-size:8px}.chapter-band i{margin:0 7px}.section{padding:75px 6%}.company-heading h2{font-size:48px}.showroom h2{font-size:51px}.contact-grid strong{font-size:22px}.project-image img{height:290px}.contact h2{font-size:85px}.service-row summary{grid-template-columns:30px 1fr 1fr 20px;gap:13px}.service-row h3{font-size:21px}}@media(max-width:700px){html{scroll-padding-top:90px}.topbar{font-size:8px;letter-spacing:.3px}.site-header{padding:17px 5%}.logo img{width:175px}.menu{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:12px}.menu span{width:24px;height:1px;background:var(--ink);transition:transform .2s}.menu[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}nav{display:none;position:absolute;left:0;right:0;top:100%;padding:22px 6%;background:white;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:22px;font-size:15px}.hero{grid-template-columns:1fr;padding:28px 6% 30px;gap:40px}.hero-copy{padding-top:10px}.kicker{font-size:9px;letter-spacing:1px}h1{font-size:90px;letter-spacing:-5px;margin:30px 0 25px}.hero-copy>p{font-size:15px}.hero-buttons{gap:25px}.hero-note{margin-top:35px;font-size:8px}.house-stage{border-top:1px solid var(--line);padding-top:18px}.drawing-label{font-size:7px}.house-caption p{font-size:12px;line-height:1.6}.house-caption span{font-size:9px}.hotspot{width:28px;height:28px;font-size:9px}.chapter-band{display:block;padding:23px 6%}.chapter-band>div{margin-top:15px;font-size:8px;letter-spacing:1px}.chapter-band i{margin:0 7px}.section{padding:60px 6%}.section-intro{display:block;margin-bottom:35px}.section-intro h2{margin:22px 0}h2{font-size:38px;letter-spacing:-1.5px}.section-intro>p{font-size:13px}.service-row summary{grid-template-columns:25px 1fr 22px;gap:12px;padding:23px 0}.service-row h3{font-size:21px}.service-short{grid-column:2;grid-row:2;font-size:11px}.service-row summary .plus{grid-column:3;grid-row:1/3}.service-row[open]{padding:0 14px;margin:0 -14px}.service-body{padding:0 14px 30px 37px;font-size:13px}.service-body img{float:none;max-width:100%;max-height:220px;margin:15px 0}.service-body h2{font-size:23px}.company-heading{display:block;margin-bottom:30px}.company-heading h2{width:100%;margin-top:25px;font-size:47px}.company-layout{grid-template-columns:1fr;gap:22px}.company-copy .lead{font-size:26px}.promise{display:grid;grid-template-columns:1fr 1fr;gap:22px;font-size:9px;line-height:1.6;margin-top:35px}.project-grid{grid-template-columns:1fr;gap:40px}.project-image img{height:auto;max-height:360px}.project-card h3{font-size:25px}.project-links{gap:18px}.showroom{grid-template-columns:1fr;gap:40px}.showroom h2{font-size:49px}.opening strong{font-size:27px}.library{grid-template-columns:1fr 1fr;gap:0 24px}.library a{font-size:13px}.library small{font-size:7px;line-height:1.6}.search input{font-size:17px;letter-spacing:-.4px}.filters{gap:7px}.filters button{font-size:10px;padding:9px 11px}.contact-heading{display:block}.contact h2{font-size:86px;letter-spacing:-4px}.contact-heading>p{margin-top:25px;font-size:14px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-grid>a{border-bottom:1px solid #ffffff30;padding-bottom:25px}.contact-grid strong{font-size:29px}.contact-grid span{margin-bottom:12px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top img{width:150px}.footer-top p{font-size:10px}.footer-top>a{font-size:10px}.footer-links{font-size:10px;gap:18px 22px}.article-page{padding:35px 6% 60px}.article-page h1{font-size:39px;letter-spacing:-1.5px;margin-bottom:30px}.article-content{font-size:14px;line-height:1.9}.article-content h2{font-size:27px}.article-contact{display:block}.article-contact .solid{margin-top:15px}.article-nav{gap:17px;font-size:10px}.article-meta{font-size:8px}.model-hint{font-size:8px}}@media(max-width:370px){h1{font-size:76px}.library{grid-template-columns:1fr}.contact-grid strong{font-size:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.flow-dots{display:none}}

[hidden]{display:none!important}.overview-link{margin:0 0 30px}.service-list+.overview-link{margin:25px 0 0}

/* Letter-by-letter entrance and original photo sequence */
h1.fall-title>span{color:var(--ink)}.fall-title .title-line{display:block;white-space:nowrap;line-height:1.12}.fall-title .title-line.future{color:var(--red)}.fall-letter{display:inline-block;opacity:0;transform:translateY(-140px) rotate(-7deg);animation:letter-drop 850ms cubic-bezier(.22,.75,.2,1) both;animation-delay:calc(var(--letter) * 85ms + 120ms);will-change:transform,opacity}@keyframes letter-drop{0%{opacity:0;transform:translateY(-140px) rotate(-7deg)}18%{opacity:1}65%{opacity:1;transform:translateY(10px) rotate(1deg)}82%{opacity:1;transform:translateY(-4px) rotate(-.4deg)}100%{opacity:1;transform:translateY(0) rotate(0)}}
.carousel-window{overflow:hidden;touch-action:pan-y}.carousel-track{display:flex;transition:transform .8s cubic-bezier(.22,.61,.36,1)}.carousel-slide{min-width:100%;width:100%}.company-photo .carousel-slide img{display:block;width:100%;aspect-ratio:1.35;object-fit:cover}.carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0 5px}.carousel-dots{display:flex;gap:12px}.carousel-dots button{background:transparent;color:#a7a99f;border:0;border-bottom:2px solid transparent;padding:6px 2px;font:11px monospace}.carousel-dots button[aria-pressed=true]{color:white;border-color:#ef6567}.carousel-pause{background:transparent;color:#c5c7bc;border:1px solid #ffffff40;padding:8px 10px;font:9px monospace}.legal-content{max-width:800px}.legal-content h2{font-size:26px;margin-top:36px}.legal-content p{line-height:1.9}.legal-index{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:35px;font-size:12px}.legal-index a{border-bottom:1px solid var(--line);padding-bottom:5px}
@media(max-width:700px){.fall-title .title-line{line-height:1.1}.carousel-pause{font-size:8px;padding:8px}.carousel-controls{gap:10px}.carousel-dots{gap:10px}}@media(prefers-reduced-motion:reduce){.fall-letter{opacity:1;transform:none;animation:none!important}.carousel-track{transition:none}}

.cookie-banner{position:fixed;bottom:24px;left:5%;right:5%;max-width:1150px;margin:auto;z-index:100;background:#fff;color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--red);box-shadow:0 12px 60px #0003;padding:24px 28px;display:flex;justify-content:space-between;gap:35px;align-items:center}.cookie-banner h2{font-size:21px;letter-spacing:-.5px;line-height:1.3;margin:0 0 8px}.cookie-banner p{font-size:12px;line-height:1.8;max-width:800px;margin:0;color:var(--gray)}.cookie-banner a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.cookie-accept{flex-shrink:0}.cookie-settings{font:inherit;border:0;padding:0;background:none;color:inherit;cursor:pointer}.cookie-settings:hover{color:var(--red)}@media(max-width:700px){.cookie-banner{bottom:12px;left:4%;right:4%;padding:20px;display:block}.cookie-banner .solid{margin-top:15px;padding:12px 22px}.cookie-banner h2{font-size:19px}.cookie-banner p{font-size:11px}}

.cookie-banner.cookie-choice{display:block;max-width:920px;max-height:85vh;overflow-y:auto;padding:24px 28px}.cookie-choice .cookie-intro p{max-width:none}.cookie-categories{border:0;margin:20px 0 0;padding:0;min-width:0}.cookie-categories legend{font-size:11px;color:var(--gray);padding:0 0 8px}.cookie-category{display:flex;position:relative;justify-content:space-between;gap:25px;align-items:center;padding:13px 0;border-top:1px solid var(--line);cursor:pointer}.cookie-category strong{display:block;font-size:13px;font-weight:600}.cookie-category small{display:block;font-size:11px;color:var(--gray);line-height:1.7;margin-top:3px}.cookie-category input{position:absolute;right:0;width:44px;height:26px;opacity:0;margin:0;cursor:pointer;z-index:1}.cookie-toggle{display:block;flex-shrink:0;width:44px;height:26px;background:#c7cac2;border-radius:20px;position:relative;transition:background .2s}.cookie-toggle:after{content:'';position:absolute;width:20px;height:20px;top:3px;left:3px;background:white;border-radius:50%;transition:transform .2s}.cookie-category input:checked+.cookie-toggle{background:var(--red)}.cookie-category input:checked+.cookie-toggle:after{transform:translateX(18px)}.cookie-category input:disabled+.cookie-toggle{background:#73776c}.cookie-category input:focus-visible+.cookie-toggle{outline:3px solid var(--ink);outline-offset:4px}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.cookie-actions .solid,.cookie-actions .outline{flex:1;white-space:nowrap;text-align:center;padding:14px 16px;font-size:12px}.cookie-actions .outline{border-color:#9b9f94}@media(max-width:700px){.cookie-banner.cookie-choice{padding:20px;max-height:82vh}.cookie-category{gap:14px;padding:11px 0}.cookie-category small{font-size:10px}.cookie-choice .cookie-actions{display:grid;grid-template-columns:1fr;gap:8px}.cookie-choice .cookie-actions .solid{margin:0}.cookie-actions .solid,.cookie-actions .outline{padding:12px 16px;font-size:11px}}

:root{--surface:#fff;--header:#fffffff0;--fixed-ink:#262725}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header{gap:24px}.site-header nav{gap:22px}.header-tools{display:flex;gap:14px;align-items:center}.site-search{display:flex;align-items:center;border-bottom:1px solid var(--line);max-width:190px}.site-search input{width:155px;min-width:0;border:0;background:transparent;color:var(--ink);font-size:11px;padding:10px 0;outline-offset:2px}.site-search button{background:transparent;border:0;color:var(--ink);padding:8px 0 8px 8px;display:flex}.theme-switch{display:flex;gap:0;border:1px solid var(--line)}.theme-switch button{background:transparent;color:var(--gray);border:0;padding:9px 8px;font-size:10px}.theme-switch button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.search-dialog{color:var(--ink);background:var(--surface);border:1px solid var(--line);width:min(840px,92vw);max-height:85vh;padding:32px;margin:auto;overscroll-behavior:contain}.search-dialog::backdrop{background:#0c140faa;backdrop-filter:blur(5px)}.search-dialog-head{display:flex;justify-content:space-between;gap:25px;align-items:start}.search-dialog-head h2{font-size:40px;margin-top:15px;letter-spacing:-1.5px}.search-close{padding:10px 14px;font-size:11px}.global-search-label{display:block;font-size:11px;color:var(--gray);margin:30px 0 12px}.search-dialog input{width:100%;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:16px;font-size:17px;border-radius:0}.global-search-status{font:10px monospace;color:var(--gray);padding:16px 0 5px;line-height:1.7}.global-search-results a{display:block;padding:20px 0;border-bottom:1px solid var(--line)}.global-search-results a:hover h3{color:var(--red)}.global-search-results h3{font-size:20px;font-weight:400;margin:7px 0;letter-spacing:-.4px}.global-search-results small{font:9px monospace;letter-spacing:1px;color:var(--red);text-transform:uppercase}.global-search-results p,.search-empty{font-size:12px;color:var(--gray);line-height:1.8;margin-bottom:0}.search-more{margin-top:25px}html[data-theme=dark]{color-scheme:dark;--ink:#edf1e8;--paper:#1c231e;--line:#3b473d;--gray:#b2bcaf;--red:#ee686a;--surface:#151b17;--header:#151b17f0}html[data-theme=light]{color-scheme:light}body{background:var(--surface)}.site-header{background:var(--header)}.solid{background:#cb292b;color:#fff;border-color:#cb292b}.solid:hover{background:#a71e20}html[data-theme=dark] .company{background:#242d26;color:#edf1e8}html[data-theme=dark] .contact{background:#a82428;color:#fff}html[data-theme=dark] .topbar{background:#0d130f;color:#e4eadd}html[data-theme=dark] .logo,html[data-theme=dark] .footer-top>img{background:#f3f3ed;padding:7px;display:block}html[data-theme=dark] .logo img{width:202px}html[data-theme=dark] .filters button{background:var(--surface);color:var(--ink)}html[data-theme=dark] .filters button.active{background:var(--ink);color:var(--surface)}html[data-theme=dark] .cookie-banner{background:var(--surface);color:var(--ink)}html[data-theme=dark] .cookie-banner a{color:var(--ink)}html[data-theme=dark] .cookie-category input:checked+.cookie-toggle{background:#cb292b}html[data-theme=dark] .light-switch{background:var(--paper);color:var(--ink)}html[data-theme=dark] .light-switch[aria-pressed=true]{background:#edf1e8;color:#151b17}html[data-theme=dark] .house .building{fill:#202a22;stroke:#bccbbd}html[data-theme=dark] .house .building [fill="#deded7"]{fill:#445344}html[data-theme=dark] .house .building [fill="#eee"],html[data-theme=dark] .house .building [fill="#ddd"]{fill:#364739}html[data-theme=dark] .house #grid path{stroke:#526653}html[data-theme=dark] .house .circuit{stroke:#ee686a}html[data-theme=dark] .house .flow-dots{fill:#ee686a}html[data-theme=dark] .coast-image span{background:var(--surface);color:var(--ink)}html[data-theme=dark] nav{background:var(--header)}html[data-theme=dark] .cookie-toggle{background:#526052}html[data-theme=dark] .service-body img,html[data-theme=dark] .article-content img{background:#e5e9df;padding:4px}
@media(max-width:1150px){.site-header{gap:15px}.site-header nav{gap:15px;font-size:11px}.site-search{max-width:150px}.site-search input{width:120px;font-size:10px}.header-tools{gap:10px}.theme-switch button{font-size:9px;padding:9px 6px}.logo img{width:180px}html[data-theme=dark] .logo img{width:166px}}@media(max-width:850px){.site-header{flex-wrap:wrap}.site-header nav{gap:17px}.header-tools{width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px}.site-search{max-width:none;width:calc(100% - 120px)}.site-search input{width:100%;font-size:12px}.theme-switch button{font-size:10px;padding:9px 12px}html{scroll-padding-top:155px}}@media(max-width:700px){.site-header{gap:12px;padding-bottom:12px}.site-header>.logo{order:0}.site-header>.menu{order:1}.site-header>nav{order:3;font-size:15px;gap:22px}.header-tools{order:2}.logo img{width:175px}html[data-theme=dark] .logo img{width:161px}.search-dialog{padding:22px;width:94vw;max-height:88vh}.search-dialog-head h2{font-size:30px;letter-spacing:-1px}.search-dialog-head{gap:15px}.search-dialog-head .kicker{font-size:8px}.search-close{padding:9px;font-size:10px}.search-dialog input{font-size:14px;padding:14px}.global-search-results h3{font-size:18px}.global-search-results p{font-size:11px}}

/* Purpose-made dark logo: no backing plate, consistent size in both themes. */
html[data-theme=dark] .logo,html[data-theme=dark] .footer-top>img{background:none;padding:0}html[data-theme=dark] .logo img{width:216px}html[data-theme=dark] .logo img,html[data-theme=dark] .footer-top>img{filter:drop-shadow(0 1px 0 #0003)}@media(max-width:1150px){html[data-theme=dark] .logo img{width:180px}}@media(max-width:700px){html[data-theme=dark] .logo img{width:175px}}
