:root{--paper:#f5f7f5;--white:#fff;--ink:#152e3d;--soft:#435b69;--blue:#0874ba;--blue-dark:#005f98;--wash:#e3edf2;--line:#b8c9d1;--media:6px;--control:4px;--gutter:clamp(22px,4.8vw,76px);--body:clamp(17px,1.3vw,20px);--head:clamp(32px,4vw,60px);--display:clamp(46px,5.8vw,88px)}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{color:var(--ink);background:var(--paper);font-family:Albert Sans,Arial,sans-serif;font-size:var(--body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance;font-weight:600}h1{font-size:var(--display);letter-spacing:-.045em;line-height:1.02}h2{font-size:var(--head);letter-spacing:-.035em;line-height:1.07}h3{letter-spacing:-.025em;font-size:clamp(24px,2.5vw,36px);line-height:1.15}p{text-wrap:pretty;max-width:60ch}p+p{margin-top:1em}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:.07em}a:hover{text-decoration-color:var(--blue)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{color:var(--ink);background:#b6dbf2}.arrow{vertical-align:middle;flex:0 0 24px;width:24px;height:24px}.wrap{width:100%;max-width:1600px;padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:100px}.section-heading{max-width:24ch;margin-bottom:38px}.lead{font-size:clamp(21px,2vw,28px);line-height:1.4}.caption,figcaption{color:var(--soft);margin-top:12px;font-size:15px;line-height:1.5}.eyebrow{color:var(--soft);margin-bottom:18px;font-size:16px}.button{background:var(--blue);color:#fff;border-radius:var(--control);border:0;justify-content:center;align-items:center;gap:25px;min-height:54px;padding:14px 22px;font-weight:600;line-height:1.25;text-decoration:none;transition:background .18s,transform .18s;display:inline-flex}.button:hover{background:var(--blue-dark)}.button:active{transform:translateY(2px)}.button-light{color:var(--ink);background:#fff}.button-light:hover{background:var(--wash)}.text-link{align-items:center;gap:15px;min-height:48px;font-weight:600;display:inline-flex}.skip-link{z-index:30;background:#fff;padding:16px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:15px}.concept-note{padding:8px var(--gutter);background:var(--wash);justify-content:space-between;align-items:center;gap:15px;font-size:13px;display:flex}.concept-note a{align-items:center;gap:8px;display:inline-flex}.concept-note .arrow{flex-basis:15px;width:15px;height:15px}.site-header{padding:25px var(--gutter);background:var(--white);z-index:5;align-items:center;gap:32px;display:flex;position:relative}.brand{flex-shrink:0;display:block}.brand img{width:207px;height:auto}.desktop-nav{align-items:center;gap:clamp(18px,2.2vw,34px);margin-left:auto;font-size:17px;display:flex}.desktop-nav a{white-space:nowrap;padding-block:10px;text-decoration:none}.desktop-nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--blue);text-decoration-thickness:2px}.header-quote{align-items:center;gap:15px;min-height:48px;font-size:17px;font-weight:600;text-decoration:none;display:flex}.mobile-menu{display:none}.hero{grid-template-columns:.95fr 1.1fr;align-items:center;gap:6%;padding-block:58px 72px;display:grid}.hero-copy p{max-width:38ch;margin:25px 0 28px}.hero-media{padding:10px 0 0 12px;position:relative}.hero-media:before{content:"";pointer-events:none;border:1px dashed #87a7b8;border-radius:92px 8px 60px;position:absolute;inset:0 10px 10px 0}.hero-media img{object-fit:cover;object-position:42% 55%;border-radius:84px 5px 54px;width:100%;height:550px}.hero-bottom{color:var(--soft);justify-content:space-between;gap:10px;margin-top:19px;font-size:15px;display:flex}.service-overview{background:var(--ink);color:#fff;padding-block:48px}.service-overview h2{letter-spacing:0;margin-bottom:22px;font-size:22px}.service-routes{grid-template-columns:1.3fr 1fr 1fr;gap:4%;display:grid}.service-routes a{padding:8px 35px 10px 0;text-decoration:none;display:block;position:relative}.service-routes h3{font-size:27px;font-weight:500}.service-routes p{color:#d5e5ee;margin-top:9px;font-size:16px}.service-routes .arrow{transition:transform .2s;position:absolute;top:11px;right:0}.service-routes a:hover .arrow{transform:translate(4px)}.decision-grid{grid-template-columns:1.12fr 1fr;align-items:center;gap:7%;display:grid}.mica-photo{position:relative}.mica-photo img{aspect-ratio:1.13;object-fit:cover;object-position:40% 75%;border-radius:6px 58px 6px 6px;width:100%}.mica-tag{color:var(--ink);background:#fff;border-radius:3px;align-items:center;gap:10px;padding:8px 14px;font-size:17px;display:flex;position:absolute;bottom:30px;right:18px}.mica-tag:before{content:"";background:var(--blue);width:26px;height:2px}.decision-copy p{margin:24px 0}.decision-copy h2{max-width:14ch}.workshop-teaser{background:var(--wash);grid-template-columns:.65fr 1.25fr .75fr;align-items:center;gap:5%;padding-block:64px;display:grid}.workshop-teaser img{aspect-ratio:.85;object-fit:cover;border-radius:6px 6px 40px;width:100%}.workshop-teaser p{margin-block:22px}.workshop-teaser .atelier-detail{align-self:end;font-size:17px}.atelier-detail strong{font-size:20px;display:block}.contact-strip{padding:60px var(--gutter);background:var(--blue);color:#fff;justify-content:space-between;align-items:center;gap:45px;display:flex}.contact-strip h2{max-width:18ch}.contact-strip p{margin-top:15px}.contact-strip>div:last-child{flex-shrink:0}.contact-strip .text-link{color:#fff;display:flex}.site-footer{padding:60px var(--gutter) 22px;background:var(--white);font-size:16px}.footer-main{grid-template-columns:1.1fr 1fr 1fr;gap:7%;padding-bottom:45px;display:grid}.footer-logo{width:195px;margin-bottom:26px;display:block}.footer-main p{line-height:1.7}.footer-main>div:nth-child(n+2){flex-direction:column;align-items:flex-start;gap:15px;padding-top:8px;display:flex}.footer-main a{align-items:center;gap:10px;min-height:32px;display:inline-flex}.footer-phone{letter-spacing:-.02em;font-size:30px;text-decoration:none}.footer-credit{color:var(--soft);border-top:1px solid #d7e0e4;justify-content:space-between;gap:30px;padding-top:22px;font-size:13px;display:flex}.page-intro{grid-template-columns:1fr 1fr;align-items:center;gap:7%;padding-block:62px 75px;display:grid}.page-intro h1{max-width:16ch;font-size:clamp(44px,5vw,74px)}.page-intro p{margin-top:24px}.page-intro .button{margin-top:28px}.page-intro img{object-fit:cover;border-radius:6px 65px 6px 6px;width:100%;height:500px}.pair{grid-template-columns:1fr 1fr;align-items:center;gap:7%;display:grid}.pair img{border-radius:var(--media);width:100%}.pair p{margin-top:22px}.panel-drawing{background:var(--wash);border-radius:6px 50px 6px 6px;padding:20px}.panel-drawing svg{width:100%;height:auto;display:block}.panel-drawing figcaption{text-align:center;margin:0 0 10px}.panel-drawing.compact{padding:0}.repair-section{background:var(--white)}.repair-section .section-heading{max-width:none}.repair-options{grid-template-columns:1fr 1fr;gap:50px;display:grid}.repair-options h3{font-size:30px}.repair-options p{margin-top:15px}.detail-photo{grid-template-columns:1.4fr 1fr;align-items:center;gap:5%;margin-top:40px;display:grid}.detail-photo img{aspect-ratio:1.5;object-fit:cover;object-position:43% 83%;border-radius:6px}.detail-photo h3{font-size:26px}.service-list{grid-template-columns:1fr 1fr;gap:0 40px;margin:30px 0;padding:0;list-style:none;display:grid}.service-list li{border-top:1px solid var(--line);padding:16px 0}.service-detail p{margin-top:20px}.project-grid{grid-template-columns:1fr 1fr;gap:55px 35px;display:grid}.project-card img{aspect-ratio:1.2;object-fit:cover;border-radius:6px;width:100%}.project-card h3{margin-top:20px}.project-card p{margin-top:12px}.prepare-grid{grid-template-columns:1fr 1.1fr;align-items:start;gap:7%;display:grid}.prepare-intro{max-width:39ch}.prepare-intro h1{max-width:13ch;font-size:clamp(44px,4.7vw,70px)}.prepare-intro .lead{margin-top:25px}.preparer{background:var(--white);border-radius:6px;padding:32px}.preparer h2{margin-bottom:23px;font-size:30px}.field{margin-top:20px}.field label{margin-bottom:8px;font-size:17px;font-weight:600;display:block}.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #8398a5;border-radius:4px;padding:12px;font-size:17px;line-height:1.5}.field textarea{resize:vertical;min-height:180px}.helper{color:var(--soft);margin-top:8px;font-size:15px;line-height:1.45}.prepared-message{margin-top:30px}.prepared-message textarea{background:var(--wash);min-height:220px}.copy-row{flex-wrap:wrap;align-items:center;gap:15px;margin-top:15px;display:flex}.copy-status{color:var(--ink);min-height:24px;font-size:16px}.handoff{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.handoff h3{font-size:25px}.handoff p{margin-block:15px}.handoff .button{width:100%}.no-js-guide{background:var(--wash);padding:20px}.address-block{margin-top:35px}.address-block a{margin-bottom:18px;font-size:32px;text-decoration:none;display:inline-block}.source-note{color:var(--soft);font-size:15px}@media (width>=1600px){.site-header,.site-footer,.contact-strip,.concept-note{padding-inline:max(var(--gutter),calc((100vw - 1448px)/2))}}@media (width<=1100px){.desktop-nav{gap:16px;font-size:15px}.site-header{gap:22px}.brand img{width:170px}.header-quote{font-size:15px}.hero-media img{height:470px}.hero{gap:4%}.workshop-teaser{grid-template-columns:.7fr 1.3fr}.atelier-detail{grid-column:2}.page-intro img{height:420px}}@media (width<=900px){.desktop-nav{display:none}.header-quote{margin-left:auto}.mobile-menu{display:block;position:static}.mobile-menu summary{cursor:pointer;align-items:center;gap:8px;min-height:48px;font-size:16px;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary svg{width:23px;height:23px}.mobile-menu[open] nav{padding:15px var(--gutter) 30px;border-top:1px solid var(--line);background:#fff;flex-direction:column;gap:4px;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 18px 18px #152e3d15}.mobile-menu nav a{justify-content:space-between;padding:12px 0;text-decoration:none;display:flex}.page-intro{gap:5%}.service-routes{grid-template-columns:1fr;gap:16px}.service-routes a{border-top:1px solid #607581;padding-block:17px}.service-routes h3{font-size:28px}.service-routes .arrow{top:23px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:last-child{flex-flow:wrap;grid-column:1/-1;gap:30px;display:flex}.contact-strip{align-items:flex-start}.prepare-grid{gap:5%}.preparer{padding:26px}}@media (width<=700px){:root{--display:48px;--head:36px}.concept-note{text-align:center;padding-block:7px;font-size:12px;line-height:1.45;display:block}.concept-note a{display:none}.site-header{gap:15px;padding-block:17px}.brand img{width:159px}.header-quote{gap:8px;font-size:15px}.header-quote .arrow{display:none}.mobile-menu summary{font-size:15px}.mobile-menu summary svg{width:21px}.hero{flex-direction:column;align-items:stretch;gap:31px;padding-block:36px 42px;display:flex}.hero h1{max-width:12ch;font-size:48px}.hero-copy p{max-width:34ch;margin:22px 0 25px;font-size:18px}.hero-media{padding:8px 0 0 9px}.hero-media img{object-position:40% 55%;border-radius:58px 4px 38px;height:320px}.hero-media:before{border-radius:65px 7px 44px;inset:0 8px 8px 0}.hero-bottom{margin-top:14px;font-size:14px}.service-overview{padding-block:30px}.service-overview h2{margin-bottom:10px;font-size:18px}.service-routes{gap:0}.service-routes h3{font-size:25px}.service-routes p{max-width:30ch;font-size:16px}.section{padding-block:54px}.decision-grid{flex-direction:column;align-items:stretch;gap:25px;display:flex}.decision-copy{order:-1}.decision-copy h2{max-width:none;font-size:35px}.decision-copy p{margin:18px 0 0}.mica-photo img{aspect-ratio:1.3;border-radius:6px 38px 6px 6px}.mica-tag{padding:6px 11px;font-size:16px;bottom:20px;right:14px}.decision-copy .text-link{margin-top:18px}.workshop-teaser{grid-template-columns:100px 1fr;gap:24px;padding-block:38px}.workshop-teaser img{aspect-ratio:auto;object-position:50% 24%;border-radius:4px 4px 28px;height:140px}.workshop-teaser h2{font-size:31px}.workshop-teaser .story-body{grid-column:1/-1}.workshop-teaser .story-body p{margin-top:0}.workshop-teaser .atelier-detail{grid-column:1/-1;margin-top:0}.contact-strip{padding-block:38px;display:block}.contact-strip h2{font-size:34px}.contact-strip>div:last-child{margin-top:25px}.contact-strip .text-link{margin-top:10px}.site-footer{padding-top:38px}.footer-main{padding-bottom:30px;display:block}.footer-logo{width:175px;margin-bottom:20px}.footer-main>div:nth-child(n+2){gap:10px;margin-top:28px}.footer-main>div:last-child{flex-direction:column;gap:10px}.footer-phone{font-size:30px}.footer-credit{font-size:13px;display:block}.footer-credit p+p{margin-top:10px}.page-intro{flex-direction:column;align-items:stretch;gap:30px;padding-block:35px 45px;display:flex}.page-intro h1{max-width:14ch;font-size:46px}.page-intro img{border-radius:5px 45px 5px 5px;height:340px}.page-intro p{margin-top:20px}.page-intro .button{margin-top:24px}.pair{flex-direction:column;align-items:stretch;gap:28px;display:flex}.pair p{margin-top:18px}.panel-drawing{border-radius:5px 35px 5px 5px;padding:10px}.panel-drawing figcaption{margin-bottom:14px;font-size:13px}.repair-options{display:block}.repair-options>div+div{margin-top:30px}.repair-options h3{font-size:27px}.detail-photo{margin-top:30px;display:block}.detail-photo>div{margin-top:22px}.service-list{margin-top:25px;display:block}.service-list li{padding-block:13px}.project-grid{display:block}.project-card+.project-card{margin-top:38px}.project-card h3{margin-top:18px;font-size:27px}.project-card p{margin-top:12px}.prepare-grid{display:block}.prepare-intro{max-width:none}.prepare-intro h1{max-width:14ch;font-size:46px}.prepare-intro .lead{font-size:21px}.preparer{border-radius:5px;margin-top:35px;padding:24px 18px}.preparer h2{font-size:28px}.prepared-message textarea{min-height:300px}.address-block{margin-top:28px}.address-block a{font-size:29px}.section-heading{margin-bottom:28px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.pair .button{margin-top:24px}.detail-photo img{aspect-ratio:1.15}.panel-drawing svg text{font-size:32px}@media (width<=700px){.detail-photo img{aspect-ratio:1}}@media (width<=380px){:root{--gutter:18px}.brand img{width:136px}.site-header{gap:10px}.header-quote,.mobile-menu summary{font-size:14px}.mobile-menu summary svg{width:20px}}
