*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:#f5f1e9;color:#242a25;font-family:Arial,Helvetica,sans-serif}a{color:inherit}header{max-width:1320px;margin:auto;padding:30px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d7d0c3}.brand{text-decoration:none;font-family:Georgia,serif;font-size:32px;font-weight:bold;letter-spacing:-1.3px}.brand span{font-weight:normal}.brand small{display:block;font:9px Arial,sans-serif;letter-spacing:3.8px;margin-top:6px}.nav{font-size:13px;text-decoration:none}.nav span{margin-left:15px}.hero{position:relative;overflow:hidden;text-align:center;padding:65px 24px 45px;isolation:isolate}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2px;line-height:1.8}.eyebrow>span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#96714a;margin-right:9px}h1{font-family:Georgia,'Times New Roman',serif;font-size:88px;font-size:clamp(64px,10.5vw,150px);font-weight:bold;line-height:1.02;letter-spacing:-.055em;margin:27px 0 25px;color:#8c572e;text-shadow:0 2px 0 #d8b893}.intro{font-size:17px;line-height:1.8;color:#5b6058}.button{display:inline-flex;gap:34px;align-items:center;margin-top:17px;padding:18px 24px;background:#293c30;color:#fff;text-decoration:none;font-size:13px;border-radius:3px}.button:hover{background:#3e5546}.location{font-size:10px;letter-spacing:2.5px;margin:47px 0 5px;color:#65685c}.location span{color:#a7835a;margin:0 12px}.grain{position:absolute;width:650px;height:650px;right:-530px;top:0;border-radius:46%;border:1px solid #d7c8ae;box-shadow:0 0 0 30px #f5f1e9,0 0 0 31px #ddd1be,0 0 0 65px #f5f1e9,0 0 0 66px #ddd1be,0 0 0 100px #f5f1e9,0 0 0 101px #ddd1be;z-index:-1}.services{max-width:1200px;margin:20px auto 80px;padding:60px 30px 0;display:grid;grid-template-columns:1fr 1.35fr;gap:80px;border-top:1px solid #d7d0c3}.section-heading h2{font-family:Georgia,serif;font-size:46px;font-weight:normal;line-height:1.14;letter-spacing:-1.5px;margin:20px 0}.section-heading>p:not(.eyebrow){max-width:340px;color:#64675f;font-size:15px;line-height:1.8}.section-heading .hint{font-size:12px!important;color:#7b664d!important}.service{border-bottom:1px solid #d7d0c3;scroll-margin:30px}.service:first-child{border-top:1px solid #d7d0c3}summary{display:flex;align-items:center;gap:22px;padding:24px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.number{font-size:11px;color:#90724f}summary strong{display:block;font-size:19px;font-weight:normal}summary small{display:block;font-size:12px;color:#696d64;margin-top:7px}.plus{margin-left:auto;font-size:24px;font-weight:normal;color:#7b664d;transition:transform .2s}details[open] .plus{transform:rotate(45deg)}.service-content{padding:0 25px 24px 36px;font-size:14px;line-height:1.8;color:#64675f}.service-content img{display:block;width:100%;height:auto;margin-top:18px;border-radius:3px}footer{padding:30px 6%;background:#242e26;color:#e5e4da;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:11px}.footer-brand{font:24px Georgia,serif}footer a{text-decoration:none}.skip{position:absolute;top:-100px;left:10px;padding:12px;background:white;z-index:10}.skip:focus{top:10px}:focus-visible{outline:3px solid #b37c38;outline-offset:5px}@media(max-width:700px){header{padding:23px 6%}.brand{font-size:27px}.nav{font-size:11px}.nav span{margin-left:5px}.hero{padding-top:48px}h1{font-size:54px;font-size:clamp(44px,14.5vw,100px)}.eyebrow{letter-spacing:1.3px;font-size:9px}.intro{font-size:15px}.services{grid-template-columns:1fr;gap:25px;margin:5px 6% 45px;padding:36px 0 0}.section-heading h2{font-size:37px}.section-heading>p:not(.eyebrow){max-width:100%}summary{gap:15px}summary strong{font-size:18px}footer{flex-direction:column;align-items:flex-start;gap:15px}.grain{opacity:.45}.location{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(forced-colors:active){h1{-webkit-text-fill-color:CanvasText;background:none;filter:none}}
/* Browser compatibility: readable solid text first; texture is progressive enhancement. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
 h1{background-color:#8c572e;background-image:url('wood.svg'),linear-gradient(90deg,#73421f,#b37d42,#73421f);background-size:620px 390px;background-repeat:repeat;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:none}
}
summary::marker{content:""}summary{min-height:64px;-webkit-tap-highlight-color:rgba(140,87,46,.12)}
summary>span:nth-child(2){min-width:0}.number,.plus{flex-shrink:0}
.service-content img{max-width:100%;object-fit:contain}
a:focus,summary:focus{outline:2px solid #a77036;outline-offset:5px}
@supports not (display:grid){.services{display:block}.section-heading{margin-bottom:32px}}
@media(max-width:380px){header{padding-left:16px;padding-right:16px}.nav{font-size:10px}.brand{font-size:25px}.hero{padding-left:16px;padding-right:16px}summary strong{font-size:16px}}
@media(forced-colors:active){h1{color:CanvasText;-webkit-text-fill-color:CanvasText;background:none;text-shadow:none}}
@media print{h1{color:#73421f;-webkit-text-fill-color:#73421f;background:none;text-shadow:none}.grain,.button{display:none}body{background:white}}
