:root{--ink:#163445;--body:#293b45;--muted:#52636d;--line:#c7d0d6;--blue:#eef3f7;--paper:#fff;--accent:#8b402b;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--body);font:1rem/1.65 var(--sans)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{color:var(--ink)}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(2.8rem,4.8vw,4.6rem);letter-spacing:-.045em}h2{font-size:clamp(2.1rem,3.1vw,3rem);letter-spacing:-.03em;margin-bottom:1.75rem}h3{font-family:var(--serif);font-weight:400;font-size:1.65rem;line-height:1.2;margin-bottom:1rem}p{margin-bottom:1.15rem}a{color:var(--ink);text-underline-offset:.22em}a:hover{color:var(--accent)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #a0472e;outline-offset:5px}button{cursor:pointer}button:disabled{cursor:not-allowed}.wrap{max-width:1248px;padding:0 40px;margin:auto}.review-bar{text-align:center;background:var(--ink);color:white;font-size:.875rem;padding:5px 18px;letter-spacing:.03em}.skip{position:absolute;top:-100px;left:12px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.masthead{display:flex;justify-content:space-between;align-items:center;min-height:115px;gap:24px}.brand{text-decoration:none;color:var(--ink)}.brand span{display:block;font:2.1rem/1.15 var(--serif);letter-spacing:-.025em}.brand small{display:block;font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;margin-top:7px}.header-contact{text-align:right;white-space:nowrap}.header-contact a{font-size:1.15rem;text-decoration:none;display:block}.header-contact span{font-size:.875rem;color:var(--muted)}.nav-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:6px;padding-bottom:6px;gap:22px}.nav-row nav{display:flex;flex-wrap:wrap;gap:25px}.nav-row a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:.9375rem}.nav-row a[aria-current]{color:var(--accent);font-weight:bold;text-decoration:underline}.nav-contact{font-weight:bold}.site-header{border-bottom:1px solid var(--line)}.menu-toggle{background:none;border:1px solid var(--ink);padding:9px 15px;color:var(--ink);min-height:44px}.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:54px;padding-top:62px;padding-bottom:60px;align-items:center}.hero-copy .eyebrow{margin-bottom:20px}.eyebrow{color:var(--accent);font-size:.8125rem;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;font-weight:bold;margin-bottom:14px}.intro{font-size:1.13rem;margin-top:24px;max-width:540px;line-height:1.7}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 21px;background:var(--ink);color:white;border:1px solid var(--ink);text-decoration:none;font-size:.9375rem;font-weight:bold;line-height:1.5;border-radius:0}.button:hover{background:#284f64;color:white}.button.secondary{background:transparent;color:var(--ink)}.button.secondary:hover{background:var(--blue)}.hero-photo img{width:100%;height:455px;object-fit:cover;display:block}.hero-photo figcaption,figcaption{font-size:.8125rem;color:var(--muted);line-height:1.5;margin-top:9px}.hero-aside{background:var(--ink);color:white;padding:42px;min-height:340px;display:flex;flex-direction:column;justify-content:center}.hero-aside .eyebrow{color:#fff}.aside-title{font:2.4rem/1.2 var(--serif);margin-bottom:24px}.hero-aside p:last-child{margin-bottom:0;color:#dbe5eb}.section{padding:58px 0;border-top:1px solid var(--line)}.section:nth-of-type(even){background:var(--blue)}.offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.offer{border-top:1px solid var(--ink);padding-top:20px}.offer p{color:var(--muted)}.number{display:block;color:var(--accent);font-size:.875rem;margin-bottom:18px;letter-spacing:.1em}.text-link{display:inline-flex;min-height:44px;align-items:center;font-weight:bold;font-size:.9375rem}.feature{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.feature img{width:100%;height:auto;display:block}.feature h3{font-size:2.5rem;line-height:1.13}.feature .small{margin-top:20px}.small{font-size:.875rem;color:var(--muted);line-height:1.6}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:56px}.two-columns>div,.two-columns>article{min-width:0}.buying>article{padding:28px;background:#fff;border:1px solid var(--line)}.buying .button{margin-top:8px}.visit-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:38px}.phone{font-size:1.3rem;text-decoration:none;display:inline-flex;min-height:44px;align-items:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;padding:0;list-style:none}.steps p{color:var(--muted)}.faq{max-width:880px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:1.1rem;color:var(--ink);cursor:pointer;padding:18px 8px;min-height:48px;font-weight:bold}details>div{padding:3px 8px 20px;color:var(--muted)}details p:last-child{margin-bottom:0}.closing{background:var(--ink)!important;color:white}.closing h2{color:white}.closing .button{background:white;color:var(--ink);white-space:normal;flex-shrink:0}.cta{display:flex;align-items:center;justify-content:space-between;gap:32px}.cta p{max-width:720px;margin-bottom:0}.referral{display:flex;align-items:center;gap:50px}.referral>div{flex:1}.referral>a{max-width:275px}.wide-copy{max-width:880px}.page-heading{padding-top:56px;padding-bottom:50px}.page-heading h1{font-size:clamp(2.6rem,4.8vw,4.1rem)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.contact-grid h2{font-size:2.5rem}.preview-notice{padding:18px 22px;border:1px solid var(--line);background:#fff;margin:24px 0}.preview-notice p{font-size:.875rem;margin:4px 0 0}.route-box{border-left:3px solid var(--accent);padding:0 0 0 20px;margin:30px 0}.route-box h3{margin-bottom:10px}form{min-width:0}label{display:block;font-size:.9375rem;font-weight:bold;margin:16px 0 6px;color:var(--ink)}input,select,textarea{border:1px solid #7a8c98;border-radius:0;background:#fff;color:var(--ink);padding:11px 12px;width:100%;min-height:48px}textarea{resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border:2px solid #a52821}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-error{color:#8b201b;font-weight:bold;margin-top:18px}.review{margin-top:40px;background:white;padding:30px;border:2px solid var(--ink);scroll-margin-top:20px}.review dl{display:grid;grid-template-columns:160px 1fr;gap:12px 25px;margin:25px 0}.review dt{font-weight:bold;color:var(--ink)}.review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.review h2{font-size:2.3rem}footer{background:#f8fafb;border-top:1px solid var(--line);padding-top:46px}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:55px}.footer-brand{font:2rem/1.2 var(--serif);color:var(--ink);margin-bottom:14px}footer h2{font:1rem/1.3 var(--sans);font-weight:bold;letter-spacing:0;margin-bottom:12px}footer a{font-size:.9375rem;display:block;min-height:36px}footer p{font-size:.9375rem;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:32px;padding-top:16px;padding-bottom:18px;color:var(--muted);font-size:.875rem}.footer-bottom>div{display:flex;gap:24px}.footer-bottom a{font-size:.875rem}[hidden]{display:none!important}
@media(max-width:1000px){.wrap{padding-left:28px;padding-right:28px}.hero{gap:30px}.hero-photo img{height:415px}.nav-row nav{gap:16px}.two-columns{gap:32px}.contact-grid{gap:35px}.feature{gap:35px}.brand small{font-size:.75rem;letter-spacing:.06em}.header-contact{display:none}.visit-grid{grid-template-columns:1fr 1fr}.visit-grid>p{grid-column:1/-1}.footer-grid{gap:28px}}
@media(max-width:740px){.wrap{padding-left:22px;padding-right:22px}.masthead{min-height:96px}.brand span{font-size:1.85rem}.brand small{font-size:.75rem;letter-spacing:.045em}.nav-row{flex-wrap:wrap;gap:6px;padding-top:10px;padding-bottom:10px}.menu-toggle:not([hidden]){display:block}.nav-row nav{width:100%;order:3;flex-direction:column;gap:0;padding-top:10px}.nav-row nav a{min-height:46px}.nav-row nav:not([hidden]){display:flex}.hero{grid-template-columns:1fr;padding-top:36px;padding-bottom:35px;gap:30px}.hero h1{font-size:clamp(2.65rem,8.7vw,3.5rem)}.hero-photo img{height:320px}.hero-aside{min-height:260px;padding:32px}.intro{font-size:1.05rem;margin-top:20px}.actions{margin-top:24px}.actions .button{font-size:.875rem}.section{padding:38px 0}.offers,.steps,.two-columns,.feature,.visit-grid,.contact-grid,.footer-grid{grid-template-columns:1fr;gap:28px}.feature h3{font-size:2rem}.steps li{border-top:1px solid var(--line);padding-top:16px}.cta,.referral{display:block}.cta .button,.referral .button{margin-top:20px}.visit-grid>p{grid-column:auto}.page-heading{padding-top:35px;padding-bottom:32px}.form-row{grid-template-columns:1fr;gap:0}.contact-grid h2{font-size:2.2rem}.review{padding:22px}.review dl{grid-template-columns:1fr;gap:5px}.review dd{margin-bottom:14px}.footer-bottom{display:block}.footer-bottom>div{flex-wrap:wrap;gap:12px;margin-top:12px}.footer-grid{gap:28px}.buying>article{padding:24px}footer a{min-height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.review-bar,.site-header,footer,.menu-toggle,.actions,button{display:none}.wrap{max-width:none;padding:0}.hero,.contact-grid{display:block}.section{padding:20px 0}body{font-size:11pt}.hero-photo img{height:auto}h1{font-size:28pt}.review{border:1px solid #222}}


.honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }

/* Preserved public project galleries and journal articles. */
.legacy-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:32px 0}
.legacy-gallery li{min-width:0}.legacy-gallery a{display:block;overflow:hidden;background:#f3f5f4}
.legacy-gallery img{display:block;width:100%;height:260px;object-fit:cover}
.legacy-project-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:30px 0}
.legacy-project-card{min-width:0}.legacy-project-card h2{font-size:1.8rem;line-height:1.25}
.legacy-project-card img{display:block;width:100%;height:300px;object-fit:cover}
#legacy-source img{max-width:100%;height:auto;display:block}#legacy-source figure{margin:2rem 0}
#legacy-source h2{margin-top:2rem}#blog-index h2{font-size:1.65rem;line-height:1.25}
@media(max-width:740px){.legacy-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.legacy-gallery img{height:190px}.legacy-project-index{grid-template-columns:1fr}.legacy-project-card img{height:auto}}
@media(max-width:420px){.legacy-gallery{grid-template-columns:1fr}.legacy-gallery img{height:auto}}

/* CI and Design Center conversion preview; existing form/live gates are unchanged. */
.service-proof{background:#f1eee8;border-block:1px solid var(--line)}.service-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-top:28px;padding-bottom:28px}.service-proof strong,.service-proof span{display:block}.service-proof strong{font-size:1.05rem;margin-bottom:6px}.service-proof span{font-size:.95rem;line-height:1.6}.design-center-site .brand{max-width:780px}.design-center-site .brand span{font-size:clamp(1.5rem,2.7vw,2.4rem)}.design-center-site .brand small{letter-spacing:.08em}.design-center-site .hero h1{font-size:clamp(2.8rem,4vw,4.35rem)}.showroom-proof{background:#f6f3ed}.showroom-layout{display:grid;grid-template-columns:minmax(240px,400px) minmax(0,1fr);gap:70px;align-items:center}.showroom-layout figure{margin:0}.showroom-layout img{display:block;width:100%;height:auto}.showroom-layout h2{font-size:clamp(2rem,3vw,3rem);line-height:1.12;margin:12px 0 22px}.showroom-benefits{padding-left:20px;margin:20px 0 28px}.showroom-benefits li{margin:10px 0}.showroom-layout p,.showroom-benefits{max-width:56ch}@media(max-width:740px){.service-proof-grid,.showroom-layout{grid-template-columns:1fr;gap:24px}.service-proof-grid{padding-top:24px;padding-bottom:24px}.design-center-site .brand span{font-size:1.65rem}.design-center-site .brand small{font-size:.65rem;letter-spacing:.04em}.design-center-site .hero h1{font-size:2.7rem}.showroom-layout figure{max-width:400px}.showroom-layout{gap:30px}}
