:root{--color-background:#f8f7f4;--color-surface:#ffffff;--color-text:#1c2932;--color-muted:#505b61;--color-accent:#a52f29;--color-on-accent:#ffffff;--color-link:#a52f29;--line-color:#c9ccc9;--privacy-ink:#1c2932;--privacy-muted:#505b61;--privacy-paper:#fff;--privacy-line:#c9ccc9;--privacy-accent:#a52f29;--privacy-font:Arial,Helvetica,sans-serif;--focus-color:#a52f29;--display:Georgia,serif;--body:Arial,Helvetica,sans-serif}
body{background:var(--color-background);color:var(--color-text);font:16px/1.65 var(--body);-webkit-font-smoothing:antialiased}a{color:var(--color-link);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button{border:1px solid var(--color-text);background:transparent;color:var(--color-text);padding:11px 18px}p{margin:0 0 1.2em}h1,h2,h3{font-weight:400;margin:0;line-height:1.05;letter-spacing:-.045em}h1,h2{font-family:var(--display)}h1{font-size:clamp(48px,6.5vw,100px)}h2{font-size:clamp(36px,4.5vw,66px);margin-bottom:30px}h3{font-size:25px;line-height:1.18;letter-spacing:-.025em;margin-bottom:14px}p:last-child{margin-bottom:0}img{display:block;width:100%;object-fit:cover}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}.eyebrow{font:11px/1.6 var(--body);font-weight:700;text-transform:uppercase;letter-spacing:.16em;margin-bottom:24px;color:var(--color-accent)}.lead{font-size:19px;line-height:1.6;max-width:580px}.small{font-size:14px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:14px 22px;background:var(--color-accent);color:var(--color-on-accent);text-decoration:none;font-size:14px;white-space:normal}.button:hover{background:#81241f}.button span{font-size:23px;line-height:1}.topline{padding:9px 56px;background:var(--color-text);color:#fff;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.04em}.topline a{color:#fff;text-decoration:none}.header-inner{min-height:123px;padding:22px 56px;display:flex;align-items:center;border-bottom:1px solid var(--line-color);gap:36px}.brand{display:flex;gap:12px;align-items:center;color:var(--color-text);text-decoration:none;flex:none;font-size:15px;font-weight:700;line-height:1.17;letter-spacing:.07em}.brand small{display:block;color:var(--color-muted);font-weight:400;font-size:9px;letter-spacing:.17em;text-transform:uppercase;margin-top:7px}.brand-symbol{background:var(--color-accent);color:#fff;width:46px;height:51px;font:30px/1 Georgia,serif;position:relative;padding:3px 6px}.brand-symbol span{position:absolute;font-size:26px;right:6px;bottom:3px}.header-inner nav{display:flex;justify-content:space-between;align-items:center;gap:30px;flex:1;margin-left:25px}.nav-group{display:flex;align-items:center;gap:24px}.nav-group a{color:var(--color-text);text-decoration:none;font-size:12px;white-space:nowrap}.nav-group .nav-contact{border-bottom:1px solid var(--color-accent);padding:9px 0;color:var(--color-accent)}.block{padding:80px 0;border-bottom:1px solid var(--line-color)}.block-opening{padding:40px 0 0}.opening .photo{margin-bottom:34px}.opening .photo img{aspect-ratio:2.4;max-height:550px}.photo{margin:0}.photo figcaption{font-size:12px;line-height:1.5;color:var(--color-muted);padding:9px 0}.opening-copy{padding-bottom:44px}.opening-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-top:28px}.opening-bottom .lead{margin:0}.hero-rail{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-top:1px solid var(--line-color);font-size:11px}.hero-rail a{color:var(--color-text);text-decoration:none}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.split>.body-copy{padding-top:5px;max-width:600px}.body-copy p{line-height:1.8}.direction-list{margin-top:42px;border-top:1px solid var(--line-color)}.direction-list>a{display:grid;grid-template-columns:70px 1fr 80px;gap:25px;align-items:start;padding:32px 0;border-bottom:1px solid var(--line-color);color:var(--color-text);text-decoration:none}.direction-list>a:hover h3{color:var(--color-accent)}.direction-list h3{font:clamp(30px,3.2vw,46px)/1.15 var(--display);letter-spacing:-.04em}.direction-list p{max-width:560px;color:var(--color-muted)}.chapter-no{color:var(--color-accent);font-size:12px;padding-top:8px}.arrow{font:44px/1 var(--display);text-align:right}.material-story{display:grid;grid-template-columns:1.08fr 1fr;gap:8%;margin-top:40px;align-items:start}.material-story .photo img{aspect-ratio:1.05}.chapters article{display:grid;grid-template-columns:32px 1fr;gap:15px;border-top:1px solid var(--line-color);padding:25px 0}.chapters article p{color:var(--color-muted)}.chapters article:first-child{border-top:1px solid var(--line-color)}.block-materials>.wrap>p{max-width:740px}.block-scope>.wrap>.chapters,.block-preparation>.wrap>.chapters{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.faq-layout.sided{display:grid;grid-template-columns:1fr 1.35fr;gap:10%}.faq-layout.single{max-width:900px;margin:auto}.faq-layout.single>div:first-child{margin-bottom:40px}details{border-top:1px solid var(--line-color);padding:22px 0}details:last-child{border-bottom:1px solid var(--line-color)}summary{cursor:pointer;list-style:none;padding-right:32px;position:relative;font-size:17px;line-height:1.5}summary::after{content:'+';position:absolute;right:0;font-size:25px;top:-5px;color:var(--color-accent)}details[open]>summary::after{content:'−'}summary::-webkit-details-marker{display:none}details p{margin:18px 35px 0 0;color:var(--color-muted);font-size:15px;line-height:1.8}.map-panel{background:#e9e8e2;min-height:385px;padding:44px 50px;position:relative;overflow:hidden;border-left:4px solid var(--color-accent)}.map-panel h3{font:40px/1.2 var(--display);margin-bottom:15px}.map-label{text-transform:uppercase;letter-spacing:.14em;font-size:12px}.map-panel p{max-width:650px}.map-panel a{margin-right:24px;font-size:14px;display:inline-block}.map-panel button{display:inline-block;background:var(--color-accent);color:#fff;border-color:var(--color-accent);margin:8px 24px 15px 0}.map-panel iframe{width:100%;height:420px;border:0;display:block}.map-panel:has(iframe){padding:0;border:0}.contact-rail{display:flex;gap:32px;align-items:center;justify-content:space-between;flex-wrap:wrap}.contact-rail>a:not(.button){font-size:18px;text-decoration:none}.block-contact{background:var(--color-text);color:#fff}.block-contact .eyebrow{color:#e9a59f}.block-contact a:not(.button){color:#fff}.block-contact h2{font-size:clamp(46px,6vw,86px)}.block-contact .contact-rail{border-top:1px solid #637079;margin-top:45px;padding-top:30px}.block-next_step{background:#efeee8}.block-next_step .body-copy{align-self:center}.block-next_step .small{margin-top:20px}.window-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.window-hero .photo{order:2;margin:0}.window-hero .photo img{aspect-ratio:.95;max-height:none}.window-hero .opening-bottom{display:block}.window-hero .button{margin-top:30px}.window-hero .opening-copy{padding:25px 0}.page-service1 .block-opening{padding-bottom:45px}.bath-hero .photo img{aspect-ratio:2.5;object-position:center 60%}.building-hero .photo img{aspect-ratio:3;object-position:center}.about-hero{display:grid;grid-template-columns:1fr 1.2fr;gap:8%;align-items:center}.about-hero .photo{order:2}.about-hero .photo img{aspect-ratio:1.1;max-height:none}.about-hero .opening-bottom{display:block}.about-hero .button{margin-top:25px}.contact-hero{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;align-items:center}.contact-hero .photo{order:2;margin:0}.contact-hero .photo img{aspect-ratio:1.6;max-height:none}.contact-hero .opening-bottom{display:block}.page-contact .block-opening .contact-rail{padding:30px 0 35px;border-top:1px solid var(--line-color)}.page-contact h1{font-size:clamp(44px,5.5vw,80px)}.identity-box{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:34px;background:var(--color-surface);border-top:2px solid var(--color-accent)}.identity-box a{overflow-wrap:anywhere}.identity-box p{margin:0}.phone-large{font:42px/1.2 var(--display)}.contact-form{background:var(--color-surface);padding:32px;border-top:2px solid var(--color-accent)}.contact-form>p{font-size:13px;overflow-wrap:anywhere}.contact-form fieldset{gap:10px}.contact-form legend{font:26px/1.3 var(--display);padding-bottom:22px}.contact-form label{font-size:13px;margin-top:5px}.contact-form button[type=submit]{background:var(--color-accent);color:#fff;border-color:var(--color-accent);margin:12px 0}.contact-form input:disabled,.contact-form textarea:disabled{background:#f3f3f0}.site-footer{padding:65px 56px 25px;background:#eeede7}.footer-wordmark{font-size:clamp(28px,5.2vw,76px);line-height:1.1;font-weight:700;letter-spacing:-.05em;padding-bottom:42px;border-bottom:1px solid var(--line-color)}.footer-wordmark span{font:16px/1.6 var(--display);display:block;letter-spacing:0;margin-top:15px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:8%;padding:45px 0;font-size:13px}.footer-grid a{color:var(--color-text);overflow-wrap:anywhere}.footer-grid nav{display:flex;flex-direction:column;align-items:start;gap:10px}.footer-grid button{padding:0;border:0;font-size:13px;text-decoration:underline;text-underline-offset:4px}.footer-grid .eyebrow{margin-bottom:15px}.footer-bottom{border-top:1px solid var(--line-color);padding-top:22px;display:flex;justify-content:space-between;font-size:10px;color:var(--color-muted)}.legal-shell{max-width:1280px;width:calc(100% - 112px);margin:70px auto 100px;display:grid;grid-template-columns:260px 1fr;gap:8%}.legal-shell aside{font-size:13px}.legal-shell aside nav{display:grid;gap:15px;margin:0 0 35px}.legal-shell aside a{overflow-wrap:anywhere}.legal-shell aside button{justify-self:start;padding:0;border:0;text-decoration:underline}.legal-content h1{font-size:clamp(40px,5vw,66px);margin-bottom:40px}.legal-content h2{font:30px/1.25 var(--display);margin:40px 0 18px;letter-spacing:-.03em}.legal-content h3{font-size:21px;margin:25px 0 12px}.legal-content p,.legal-content li{font-size:15px;line-height:1.8}.legal-content a{overflow-wrap:anywhere}.legal-content .table-scroll{margin:25px 0}.utility-shell{max-width:850px;width:calc(100% - 112px);margin:90px auto}.utility-shell h1{margin-bottom:45px}.utility-shell .button{margin-top:40px}
.legal-content,.legal-shell>*{min-width:0}.nav-group a{font-size:14px;min-height:44px;display:flex;align-items:center}.footer-grid{font-size:14px}.footer-grid nav{gap:0}.footer-grid nav a,.footer-grid nav button{min-height:44px;display:flex;align-items:center}.footer-grid button{font-size:14px}.legal-shell aside nav a,.legal-shell aside nav button{min-height:44px;display:flex;align-items:center}.map-panel::after{content:'⌖';position:absolute;right:45px;top:20px;font:110px/1 Georgia,serif;color:var(--color-accent);pointer-events:none}.map-panel:has(iframe)::after{display:none}
@media(min-width:761px){.home-hero .photo img{aspect-ratio:3.5;max-height:350px}.home-hero .opening-copy{display:grid;grid-template-columns:1.1fr 1fr;column-gap:8%}.home-hero .opening-copy>.eyebrow{grid-column:1/-1}.home-hero .opening-bottom{display:block;align-self:end;margin:0}.home-hero .opening-bottom .button{margin-top:22px}.home-hero h1{font-size:clamp(50px,6vw,88px)}}
@media(min-width:1500px){.header-inner,.topline{padding-left:max(56px,calc((100vw - 1280px)/2));padding-right:max(56px,calc((100vw - 1280px)/2))}}
@media(min-width:761px) and (max-width:1120px){.header-inner{padding:24px 32px;gap:22px;flex-wrap:wrap}.header-inner nav{flex-basis:100%;margin:0}.nav-group{gap:20px}.wrap{width:calc(100% - 64px)}.split{gap:6%}.contact-hero,.about-hero{gap:5%}.footer-grid{gap:5%}.legal-shell{width:calc(100% - 64px);grid-template-columns:200px 1fr;gap:6%}}
@media(max-width:760px){body{font-size:15px}.wrap{width:calc(100% - 40px)}.topline{padding:8px 20px;font-size:10px}.topline>span{max-width:180px}.header-inner{padding:20px;min-height:100px;flex-wrap:wrap;justify-content:space-between;gap:20px}.brand{font-size:13px}.brand-symbol{width:40px;height:46px}.header-inner>button{font-size:12px;border:0;padding:12px 0}.header-inner nav{flex-basis:100%;margin:0;display:grid;gap:10px;border-top:1px solid var(--line-color);padding-top:15px}.nav-group{display:grid;gap:0}.nav-group a{padding:12px 0;font-size:15px;border-bottom:1px solid var(--line-color)}.block{padding:48px 0}.block-opening{padding:20px 0 0}.opening .photo{margin-bottom:23px}.opening .photo img{aspect-ratio:1.35;height:auto;object-position:center}.opening-copy{padding-bottom:30px}h1{font-size:52px;line-height:1.03}h2{font-size:40px;margin-bottom:22px}h3{font-size:24px}.eyebrow{font-size:10px;margin-bottom:17px}.lead{font-size:16px;line-height:1.65}.opening-bottom{display:block;margin-top:22px}.opening-bottom .button{margin-top:25px}.hero-rail{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:10px}.split,.material-story,.faq-layout.sided,.identity-box{grid-template-columns:1fr;gap:26px}.split>.body-copy{padding:0}.direction-list{margin-top:30px}.direction-list>a{grid-template-columns:24px 1fr 25px;gap:14px;padding:25px 0}.direction-list h3{font-size:32px}.direction-list p{font-size:14px}.arrow{font-size:30px}.material-story{margin-top:30px}.material-story .photo img{aspect-ratio:1.25}.block-scope>.wrap>.chapters,.block-preparation>.wrap>.chapters{grid-template-columns:1fr;gap:0;margin-top:30px}.chapters article{padding:22px 0}summary{font-size:16px}.map-panel{padding:27px 24px;min-height:420px}.map-panel a{display:block;margin:0 0 15px}.map-panel button{margin:5px 0 20px}.map-panel iframe{height:400px}.contact-rail{display:grid;gap:20px}.contact-rail>a:not(.button){font-size:16px;overflow-wrap:anywhere}.contact-rail .button{justify-self:start}.block-contact h2{font-size:47px}.window-hero,.about-hero,.contact-hero{display:flex;flex-direction:column;gap:10px;align-items:stretch}.window-hero .photo,.about-hero .photo,.contact-hero .photo{order:0;margin-bottom:18px}.window-hero .photo img,.about-hero .photo img,.contact-hero .photo img{aspect-ratio:1.4}.window-hero .opening-copy{padding:0}.page-service1 .block-opening{padding-bottom:30px}.page-contact h1{font-size:48px}.identity-box{padding:24px}.contact-form{padding:24px 20px}.phone-large{font-size:36px}.site-footer{padding:45px 20px 25px}.footer-wordmark{font-size:34px;line-height:1.1;padding-bottom:28px}.footer-wordmark span{font-size:15px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding:30px 0}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:grid;gap:8px}.legal-shell{width:calc(100% - 40px);margin:40px auto 60px;grid-template-columns:1fr;gap:30px}.legal-shell aside{border-bottom:1px solid var(--line-color);padding-bottom:20px}.legal-shell aside nav{display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:18px}.legal-content h1{font-size:40px;overflow-wrap:anywhere}.utility-shell{width:calc(100% - 40px);margin:50px auto}.utility-shell h1{font-size:48px}.legal-prose table{font-size:13px}}
@media(max-width:360px){h1{font-size:44px}h2{font-size:35px}.footer-wordmark{font-size:29px}.topline>span{max-width:160px}.contact-rail>a:not(.button){font-size:14px}.page-contact h1{font-size:42px}}
@media(max-width:760px){.header-inner nav{justify-content:stretch;align-items:stretch}.nav-group{width:100%}}
