:root{--ink:#303130;--gold:#efb13e;--paper:#faf9f6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid #ddd;position:sticky;top:0;z-index:10}.brand img{width:135px;height:90px;object-fit:cover}nav{display:flex;gap:32px;font-size:14px}.header-call{font-weight:700;font-size:15px}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:650px}.hero-copy{padding:70px 8% 30px 9%}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;line-height:1.8}.eyebrow span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--gold);margin-right:9px}h1{font-size:clamp(48px,5.3vw,82px);font-weight:500;letter-spacing:-4px;line-height:1.04;margin:30px 0}em{font-family:Georgia,serif;font-weight:400}h1 em{white-space:nowrap}.intro{max-width:440px;color:#63645f;font-size:16px;line-height:1.8}.actions{display:flex;gap:25px;align-items:center;margin:32px 0 50px;flex-wrap:wrap}.button{background:var(--gold);padding:20px 24px;display:inline-flex;justify-content:space-between;gap:25px;align-items:center;font-weight:700;font-size:13px;border:0;cursor:pointer}.button:hover{background:#e4a22b}.text-link{font-size:13px;border-bottom:1px solid #888;padding-bottom:6px}.hero-bottom{border-top:1px solid #d8d7d1;padding-top:20px;display:flex;gap:25px;font-size:11px;color:#777}.visual{position:relative;overflow:hidden;background:#d6d3c9;min-height:600px;isolation:isolate}.sun{position:absolute;width:380px;height:380px;top:45px;right:-80px;border-radius:50%;background:var(--gold)}.wall{position:absolute;inset:90px 65px 80px 60px;background:linear-gradient(125deg,#f3f0e7,#cac5b8);box-shadow:25px 30px 60px #69664b30;transform:perspective(900px) rotateY(-8deg)}.window{position:absolute;inset:45px 55px 55px;background:#343d39;border:14px solid #f8f7f1;box-shadow:inset 0 0 0 4px #adae9e,12px 15px 25px #3c493f35;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:10px;padding:4px}.pane{background:linear-gradient(140deg,#d2e5e4 0%,#9ebdb9 43%,#728875 44%,#596e55 70%,#8b9d76 100%);position:relative}.pane:after{content:'';position:absolute;inset:0;background:linear-gradient(125deg,transparent 30%,#ffffff44 31%,#ffffff11 54%,transparent 55%)}.p3,.p4{background:linear-gradient(130deg,#9ca78b,#6d7f62)}.window i{position:absolute;right:calc(50% + 7px);top:53%;height:25px;width:6px;background:#303130;border-radius:3px}.sill{position:absolute;bottom:38px;left:40px;right:35px;height:20px;background:#f7f5ec;box-shadow:0 10px 20px #45463744}.visual-caption{position:absolute;bottom:25px;left:30px;right:30px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px}.strip{background:var(--ink);color:white;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px}.strip b{color:var(--gold);font-size:22px}.section{padding:90px 8%}.section-top{display:grid;grid-template-columns:1fr 2fr 1.1fr;gap:30px;margin-bottom:45px}h2{font-size:clamp(32px,3.2vw,48px);line-height:1.13;letter-spacing:-1.7px;font-weight:500;margin:0 0 25px}.section-top>p:last-child,.about p,.contact p{font-size:15px;line-height:1.8;color:#64655e}.service-list details{border-top:1px solid #ccc}.service-list details:last-child{border-bottom:1px solid #ccc}summary{list-style:none;display:flex;align-items:center;gap:30px;padding:25px 0;cursor:pointer}summary::-webkit-details-marker{display:none}.num{font-size:11px;color:#888}h3{font-size:27px;font-weight:500;margin:0}.tag{margin-left:auto;font-size:12px;color:#777}.plus{font-size:26px;margin-left:20px}details[open] .plus{transform:rotate(45deg)}details>p{margin:0 0 25px 45px;max-width:650px;line-height:1.8;color:#666;font-size:15px}.about{background:#eeece5;display:grid;grid-template-columns:1.3fr 1fr;gap:100px}.about>div>p{max-width:520px}.about .text-link{display:inline-block;margin-top:20px}.territory{border-left:1px solid #cbc9bd;padding-left:65px}.radius{font-size:110px;letter-spacing:-7px;line-height:1.2}.radius span{font-size:28px;letter-spacing:0;margin-left:10px}.territory h3{font-size:22px}.location{font-size:12px;border-top:1px solid #cbc9bd;display:block;padding-top:20px;margin-top:25px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact h2{font-size:52px}.contact>div>p{max-width:410px}.phone{display:block;font-size:30px;margin:30px 0 15px}.email{font-size:14px;border-bottom:1px solid #aaa;overflow-wrap:anywhere}.address{margin-top:30px}form{background:white;padding:35px;border:1px solid #e5e3dc}label{display:block;font-size:12px;margin:0 0 10px}input,select,textarea{width:100%;font:inherit;font-size:14px;padding:14px;border:1px solid #d9d8d2;background:var(--paper);margin-bottom:22px;border-radius:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}form .button{width:100%}.contact .form-note{font-size:11px;line-height:1.6;margin-bottom:0}footer{background:var(--ink);color:white;padding:35px 8%;display:flex;justify-content:space-between;gap:25px;font-size:11px}footer strong{font-size:14px}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}@media(max-width:1000px){.hero-copy{padding-top:45px}h1{letter-spacing:-2px}.section-top{grid-template-columns:1fr 2fr}.section-top>p:last-child{grid-column:2}.contact,.about{gap:35px}.territory{padding-left:35px}.contact h2{font-size:42px}nav{gap:15px}.header-call{font-size:12px}}@media(max-width:700px){header{height:80px;padding:0 5%}.brand img{width:105px;height:75px}nav{display:none}.header-call{font-size:13px}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6% 30px}h1{font-size:54px}.hero-bottom{justify-content:space-between;gap:12px}.visual{min-height:420px}.wall{inset:35px 60px 60px}.sun{width:280px;height:280px}.strip{flex-wrap:wrap;justify-content:center;font-size:11px;padding:20px}.strip b{font-size:14px}.section{padding:55px 6%}.section-top{display:block}.section-top h2{margin-top:20px}.section-top>p:last-child{max-width:450px}.tag{display:none}summary{gap:18px}summary h3{font-size:24px}.plus{margin-left:auto}details>p{margin-left:30px}.about,.contact{grid-template-columns:1fr;gap:40px}.territory{border-left:0;border-top:1px solid #ccc;padding:25px 0 0}.radius{font-size:90px}.contact h2{font-size:42px}form{padding:22px}.phone{font-size:27px}footer{flex-direction:column;gap:16px}.visual-caption{font-size:8px}h1 em{white-space:normal}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
#email-options{border-top:1px solid #ddd;margin-top:24px;padding-top:24px}#email-options h3{font-size:22px}.email-actions{display:flex;flex-wrap:wrap;gap:20px;margin:22px 0}#email-options textarea{background:#fff;font-size:13px}#copy-status{font-size:12px}

.history{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.history-intro>p:last-child{max-width:450px;color:#64655e;line-height:1.8;font-size:15px}.timeline{border-left:1px solid #d4d0c5;padding-left:35px}.timeline article{position:relative;margin-bottom:35px}.timeline article:last-child{margin-bottom:0}.timeline article:before{content:'';position:absolute;width:9px;height:9px;left:-40px;top:4px;border-radius:50%;background:var(--gold)}.timeline article>span{font-size:10px;font-weight:bold;letter-spacing:1.5px}.timeline h3{font-size:23px;margin:14px 0}.timeline p{font-size:14px;color:#64655e;line-height:1.8;margin:0}.archives{background:#eeece5}.gallery-heading{display:flex;gap:50px;justify-content:space-between;align-items:end;margin-bottom:30px}.gallery-heading>p{max-width:330px;color:#64655e;font-size:14px;line-height:1.8}.photo-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:24px}.photo-grid figure{margin:0;min-width:0}.photo-grid img{width:100%;height:360px;object-fit:cover;display:block;transition:filter .2s}.photo-grid a:hover img{filter:brightness(1.08)}.photo-grid figure:first-child img{object-position:center}.photo-grid figcaption{padding-top:18px;display:flex;flex-direction:column;gap:9px;font-size:14px}.photo-grid small{color:#73746e;font-size:10px;letter-spacing:1px}nav{gap:22px}@media(max-width:900px){.history{gap:40px}.photo-grid{gap:15px}.photo-grid img{height:290px}}@media(max-width:700px){.history{grid-template-columns:1fr}.gallery-heading{display:block}.photo-grid{grid-template-columns:1fr}.photo-grid img{height:330px}.photo-grid figure:first-child img{height:auto}.timeline{padding-left:25px}.timeline article:before{left:-30px}}
/* Immersive visual direction */
:root{--paper:#f5f3ec;--ink:#242622;--gold:#f3b73f}body{overflow-x:hidden}header{background:#f5f3ecf2;backdrop-filter:blur(16px);height:88px}.brand img{mix-blend-mode:multiply;height:80px;width:120px}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;z-index:30}.hero{min-height:calc(100svh - 88px);grid-template-columns:1fr 1fr;background:var(--ink);color:var(--paper);overflow:hidden}.hero-copy{padding:70px 5% 40px 10%;position:relative;z-index:2}.hero h1{font-size:clamp(65px,7.3vw,118px);font-weight:900;letter-spacing:-6px;line-height:.92}.hero h1 span{display:inline-block}.hero h1 em{font-size:.76em;color:var(--gold);line-height:1.3}.hero .intro{color:#c3c5ba;max-width:390px}.hero .eyebrow{font-size:9px;letter-spacing:1.8px}.hero .text-link{color:#f5f3ec}.hero-bottom{color:#c3c5ba;border-color:#52554b}.button{border-radius:100px;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.interactive-window{background:var(--gold);color:var(--ink);min-height:650px;display:flex;align-items:center;justify-content:center;perspective:1200px}.scene-orbit{position:absolute;border:1px solid #24262222;border-radius:50%;width:650px;height:650px;top:10%;left:0;transform:translateY(var(--orbit-shift,0px))}.scene-word{position:absolute;top:30px;left:20px;font-size:clamp(60px,8vw,135px);font-weight:900;letter-spacing:-7px;color:#24262212}.window-stage{position:relative;width:62%;max-width:380px;transform:rotate(-6deg) translateY(var(--scene-shift,0px));transition:transform .3s ease-out;perspective:1200px}.window-view{position:relative;aspect-ratio:3/4;border:14px solid #f7f6ed;background:#94b4ae;box-shadow:15px 25px 0 #2527221a,0 30px 80px #33392d45;perspective:1200px;transform-style:preserve-3d}.landscape{position:absolute;inset:0;overflow:hidden;background:radial-gradient(circle at 70% 23%,#fff9c5 0 9%,transparent 10%),linear-gradient(#bdd9d7 0 58%,#8da77d 59% 100%)}.landscape:before,.landscape:after{content:'';position:absolute;width:150%;height:60%;border-radius:50%;background:#526e54;bottom:-28%;left:-40%;transform:rotate(15deg)}.landscape:after{background:#708b60;left:20%;bottom:-33%;transform:rotate(-20deg)}.window-leaf{position:absolute;top:0;bottom:0;width:50%;border:9px solid #f7f6ed;transform-style:preserve-3d;transition:transform 1.5s cubic-bezier(.2,.7,.2,1);background:linear-gradient(115deg,#ffffff50,transparent 45%,#ffffff35 46%,transparent 65%);box-shadow:inset 0 0 0 1px #808b8044;backface-visibility:visible}.window-leaf:before{content:'';position:absolute;left:0;right:0;top:47%;height:8px;background:#f7f6ed}.left-leaf{left:0;transform-origin:left center}.right-leaf{right:0;transform-origin:right center}.window-leaf i{position:absolute;top:53%;width:5px;height:28px;background:#31372f}.left-leaf i{right:2px}.right-leaf i{left:2px}.is-open .left-leaf{transform:rotateY(-62deg)}.is-open .right-leaf{transform:rotateY(62deg)}.window-shadow{height:20px;filter:blur(12px);background:#24262240;position:absolute;bottom:-60px;left:-10%;right:-10%;border-radius:50%}.window-toggle{position:absolute;bottom:65px;left:50%;transform:translateX(-50%);border:1px solid #24262270;border-radius:100px;background:transparent;color:var(--ink);padding:14px 22px;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}.window-toggle:hover{background:var(--ink);color:var(--gold)}.visual-caption{font-size:8px;bottom:22px}.strip{overflow:hidden;background:var(--gold);color:var(--ink);padding:28px 0;display:block}.strip-track{display:flex;justify-content:space-around;gap:40px;white-space:nowrap;min-width:max-content;padding:0 35px}.strip span{font-size:22px;font-weight:700}.strip b{color:var(--ink)}h2{font-size:clamp(38px,4.1vw,64px);letter-spacing:-2px}.section{padding-top:110px;padding-bottom:110px}.section-top{grid-template-columns:.8fr 2fr 1.1fr}.service-list h3{font-size:clamp(28px,3.5vw,52px);letter-spacing:-1.5px}.service-list summary{transition:padding .3s,color .3s}.service-list summary:hover{padding-left:15px;color:#a26800}.service-list details[open]{background:#efb13e0c}.about{background:var(--ink);color:var(--paper)}.about p,.about .eyebrow{color:#c3c5ba}.radius{color:var(--gold)}.location{color:#c3c5ba}.history-intro{position:sticky;top:130px;align-self:start}.timeline article{padding-bottom:22px}.timeline h3{font-size:27px}.archives{background:var(--gold)}.gallery-heading>p{color:#44473e}.photo-grid{grid-template-columns:1.4fr 1fr 1fr;align-items:start}.photo-grid figure:nth-child(2){margin-top:75px}.photo-grid figure:nth-child(3){margin-top:150px}.photo-grid img{height:390px;filter:saturate(.8);transition:transform .6s,filter .6s}.photo-grid a{display:block;overflow:hidden}.photo-grid a:hover img{transform:scale(1.045);filter:saturate(1)}.photo-grid small{color:#494d41}.contact h2{font-size:clamp(44px,5vw,78px)}.contact form{border-radius:22px}.contact input,.contact select,.contact textarea{border-radius:8px}footer{padding-top:55px;padding-bottom:55px}.reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.pending{opacity:0;transform:translateY(35px)}.hero h1{animation:title-in 1.1s ease both}.hero .intro,.hero .actions{animation:title-in 1.3s .15s both}@keyframes title-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@media(max-width:1000px){.hero-copy{padding-left:8%;padding-top:55px}.hero h1{font-size:76px;letter-spacing:-4px}.interactive-window{min-height:610px}.photo-grid img{height:300px}nav{gap:14px;font-size:12px}.section-top{grid-template-columns:1fr 2fr}.section-top>p:last-child{grid-column:2}}@media(max-width:700px){header{height:76px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:42px 6% 30px}.hero h1{font-size:clamp(65px,15vw,94px);letter-spacing:-4px}.hero .intro{font-size:15px}.hero .actions{margin-bottom:30px}.interactive-window{min-height:540px}.window-stage{max-width:270px;width:60%;margin-top:-20px}.scene-word{font-size:95px}.scene-orbit{width:520px;height:520px;left:-10%}.section{padding:65px 6%}.section-top{display:block}.history-intro{position:static}.photo-grid{grid-template-columns:1fr;gap:35px}.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(3){margin-top:0}.photo-grid img{height:380px}.strip span{font-size:18px}.strip-track{gap:25px}.strip{overflow-x:auto}.contact h2{font-size:48px}.hero-bottom{font-size:10px}.visual-caption{left:16px;right:16px;font-size:7px}.section-top>p:last-child{margin-top:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal.pending{opacity:1;transform:none}.window-stage,.scene-orbit{transform:none!important}}
/* Entry sequence: CSS also dismisses it if JavaScript is unavailable. */
.entry-window{position:fixed;inset:0;z-index:100;background:#242622;color:#f5f3ec;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;perspective:1200px;animation:entry-away .7s 2.1s forwards;pointer-events:none}.entry-brand{font-size:25px;font-weight:900;letter-spacing:2px}.entry-brand span{color:var(--gold)}.entry-window>p{font-size:13px;color:#c3c5ba;text-align:center;margin:0 20px}.entry-frame{width:min(260px,55vw);height:min(340px,46vh);border:12px solid #f5f3ec;position:relative;perspective:1000px;background:linear-gradient(#c4dfde,#efb13e);box-shadow:0 0 90px #efb13e25}.entry-leaf{position:absolute;top:0;bottom:0;width:50%;border:7px solid #f5f3ec;background:#b6d0cf66;z-index:2;transform-style:preserve-3d}.entry-leaf:after{content:'';position:absolute;top:46%;left:0;right:0;height:7px;background:#f5f3ec}.entry-left{left:0;transform-origin:left;animation:entry-left-open 1.5s .35s forwards}.entry-right{right:0;transform-origin:right;animation:entry-right-open 1.5s .35s forwards}.entry-light{position:absolute;inset:0;background:radial-gradient(circle,#fff7d2,transparent);opacity:0;animation:entry-glow 1.5s .35s forwards}.skip-entry{pointer-events:auto;background:transparent;color:#f5f3ec;border:1px solid #999;border-radius:30px;padding:12px 22px;cursor:pointer}.entry-window.dismissed{display:none}@keyframes entry-left-open{to{transform:rotateY(-100deg)}}@keyframes entry-right-open{to{transform:rotateY(100deg)}}@keyframes entry-glow{to{opacity:1}}@keyframes entry-away{to{opacity:0;visibility:hidden}}
.joinery-motion{position:relative;width:185px;height:185px;margin:5px 0 25px 45px;border:8px solid #eeece5;background:#c8d8ca;perspective:700px;overflow:visible;box-shadow:0 8px 22px #24262215}.joinery-backdrop{position:absolute;inset:0;background:linear-gradient(150deg,#c6e0df 0 55%,#849a73 56%);overflow:hidden}.joinery-backdrop:after{content:'';position:absolute;top:15px;right:18px;width:34px;height:34px;border-radius:50%;background:var(--gold)}.joinery-part{position:absolute;inset:0;transition:transform 1s cubic-bezier(.2,.7,.2,1);border:7px solid #f5f3ec;background:linear-gradient(120deg,#ffffff55,transparent);transform-style:preserve-3d}.window-motion .joinery-part{width:50%}.window-motion .part-one{right:auto;transform-origin:left}.window-motion .part-two{left:50%;transform-origin:right}.window-motion .joinery-part:after{content:'';position:absolute;top:46%;left:0;right:0;height:5px;background:#f5f3ec}.door-motion{width:120px;height:200px}.door-motion .part-one{background:#41483e;border:6px solid #333a30;transform-origin:left}.door-motion .part-one:after{content:'';position:absolute;right:8px;top:52%;width:17px;height:5px;background:var(--gold)}.door-motion .part-two{display:none}.shutter-motion,.garage-motion{overflow:hidden}.shutter-motion .part-one{border:0;background:repeating-linear-gradient(to bottom,#777f72 0 12px,#4b5346 12px 14px)}.shutter-motion .part-two{display:none}.garage-motion{width:240px;height:165px}.garage-motion .part-one{border:0;background:repeating-linear-gradient(to bottom,#40473c 0 30px,#252c21 30px 33px)}.garage-motion .part-two{display:none}.gate-motion{width:245px;height:155px;border-width:0 9px;background:transparent}.gate-motion .joinery-backdrop{inset:0 0 15px}.gate-motion .joinery-part{top:20px;bottom:0;width:50%;border:5px solid #343d30;background:repeating-linear-gradient(90deg,#343d30 0 7px,transparent 7px 20px);transform-origin:left}.gate-motion .part-one{right:auto}.gate-motion .part-two{left:50%;transform-origin:right}
.motion-open .window-motion .part-one{transform:rotateY(-65deg)}.motion-open .window-motion .part-two{transform:rotateY(65deg)}.motion-open .door-motion .part-one{transform:rotateY(-78deg)}.motion-open .shutter-motion .part-one{transform:translateY(-94%)}.motion-open .garage-motion .part-one{transform:translateY(-96%)}.motion-open .gate-motion .part-one{transform:rotateY(-72deg)}.motion-open .gate-motion .part-two{transform:rotateY(72deg)}
details.motion-wait>p{opacity:0;transform:translateY(12px)}.service-list details>p{transition:opacity .45s,transform .45s}.service-list details.motion-open:not(.motion-wait)>p{opacity:1;transform:none}@media(max-width:700px){.joinery-motion{margin-left:30px}.entry-brand{font-size:20px}}@media(prefers-reduced-motion:reduce){.entry-window{display:none}.joinery-part{transition:none!important}details.motion-wait>p{opacity:1;transform:none}}
/* Softer surfaces and more deliberate motion */
:root{--paper:#f7f7f2}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}header{margin:12px 3% 0;border:1px solid #ffffff80;border-radius:28px;height:78px;padding:0 3%;box-shadow:0 8px 28px #22262208;top:12px;background:#fafaf5ed}.brand img{height:70px;width:110px;border-radius:18px}.header-call{padding:12px 18px;border-radius:30px;background:#eeece5}main{padding-top:16px}.hero{margin:0 3%;border-radius:40px;min-height:670px;box-shadow:0 22px 60px #24262212}.hero-copy{padding:65px 7% 35px 9%}.hero h1{letter-spacing:-5px}.interactive-window{border-radius:36px;margin:14px;min-height:640px}.window-view{border-radius:12px;border-width:12px;box-shadow:0 30px 65px #33392d32}.landscape{border-radius:4px}.window-leaf{transition:transform 1.65s cubic-bezier(.16,1,.3,1);border-radius:4px}.window-stage{transition:transform .65s cubic-bezier(.16,1,.3,1)}.scene-orbit{border-color:#24262215}.window-toggle{background:#fff4;border-color:#fff8;backdrop-filter:blur(12px);transition:background .3s,color .3s,box-shadow .3s}.window-toggle:hover{box-shadow:0 8px 25px #24262220}.strip{margin:22px 3% 0;border-radius:28px;padding:24px 0}.strip span{font-size:18px}.section{padding:90px 7%}.services{padding-bottom:70px}.section-top{gap:35px}.service-list{display:grid;gap:14px}.service-list details,.service-list details:last-child{background:#fff;border:1px solid #e8e8df;border-radius:24px;overflow:hidden;padding:0 25px;box-shadow:0 5px 20px #24262204;transition:box-shadow .4s,border-color .4s,background .4s}.service-list details:hover{box-shadow:0 14px 40px #24262209;border-color:#d9d9ce}.service-list details[open]{background:#fffdf6;box-shadow:0 16px 40px #2426220b}.service-list summary{padding:25px 0}.service-list summary:hover{padding-left:6px}.service-list h3{font-size:clamp(27px,3vw,42px);letter-spacing:-1px}.plus{background:#f2f2eb;border-radius:50%;height:36px;width:36px;display:flex;align-items:center;justify-content:center;font-size:23px;transition:transform .5s cubic-bezier(.16,1,.3,1),background .3s}details[open] .plus{background:var(--gold)}.service-list details>p{padding-bottom:5px;margin-bottom:28px;max-width:650px}.joinery-motion{border-radius:12px;border-color:#f0efe8;box-shadow:0 12px 30px #24262214;margin-top:10px}.joinery-backdrop{border-radius:4px}.joinery-part{transition:transform 1.25s cubic-bezier(.22,.8,.25,1);box-shadow:inset 0 0 0 1px #24262218}.door-motion .part-one{background:linear-gradient(135deg,#5c6654,#35412f);border-radius:4px}.door-motion .part-one:before{content:'';position:absolute;inset:12px 10px;border:1px solid #aab49c50;border-radius:5px}.gate-motion{border-radius:8px}.gate-motion .joinery-part{border-radius:8px 8px 0 0}.shutter-motion .part-one{background:repeating-linear-gradient(to bottom,#a0a79a 0 9px,#727d68 9px 11px,#bec4b6 11px 13px)}.garage-motion .part-one{background:repeating-linear-gradient(to bottom,#697360 0 28px,#384330 28px 30px,#8b9582 30px 33px)}.service-list details>p{transition:opacity .6s ease,transform .6s cubic-bezier(.16,1,.3,1)}.about{margin:0 3%;border-radius:36px;background:linear-gradient(130deg,#30362b,#242622)}.territory{border:1px solid #ffffff20;border-radius:26px;padding:30px;background:#ffffff05}.territory .eyebrow{margin-top:0}.radius{font-weight:300;letter-spacing:-6px}.history{gap:65px}.timeline{border:0;padding:0;display:grid;gap:18px}.timeline article{margin:0;padding:28px;border:1px solid #e6e6dc;background:#fff;border-radius:24px;box-shadow:0 8px 25px #24262204}.timeline article:before{display:none}.timeline article>span{color:#8a641e}.archives{margin:0 3%;border-radius:36px;background:#f0b946}.photo-grid a{border-radius:24px;box-shadow:0 14px 38px #624e2320}.photo-grid img{transition:transform .85s cubic-bezier(.16,1,.3,1),filter .5s}.photo-grid figcaption{padding-left:8px}.contact form{padding:35px;border:1px solid #e8e8df;border-radius:30px;box-shadow:0 18px 60px #24262208}.contact input,.contact select,.contact textarea{border-radius:14px;padding:16px;background:#f6f6f1;border:1px solid #e6e6dc;transition:border-color .25s,box-shadow .25s}.contact input:focus,.contact select:focus,.contact textarea:focus{outline:none;border-color:#b48524;box-shadow:0 0 0 3px #efb13e25}.button{padding:18px 24px;box-shadow:0 5px 15px #24262208;transition:transform .4s cubic-bezier(.16,1,.3,1),background .3s,box-shadow .3s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px #24262214}.button:active{transform:scale(.98)}footer{margin:0 3% 20px;border-radius:30px}.reveal{transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}.reveal.pending{transform:translateY(22px)}.entry-frame{border-radius:14px;box-shadow:0 0 100px #efb13e18}.entry-leaf{border-radius:4px}.entry-left,.entry-right{animation-timing-function:cubic-bezier(.22,.8,.25,1)}.entry-window{animation-duration:.9s}.entry-brand{letter-spacing:1px}.skip-entry{transition:background .3s}.skip-entry:hover{background:#ffffff15}
@media(max-width:1000px){.hero h1{font-size:72px;letter-spacing:-4px}.hero-copy{padding-left:8%}.interactive-window{min-height:610px}.header-call{font-size:11px;padding:10px 12px}nav{gap:12px;font-size:11px}}@media(max-width:700px){header{margin:8px 4% 0;top:8px;height:68px;border-radius:22px;padding:0 4%}.brand img{height:58px;width:90px}.header-call{font-size:12px}main{padding-top:12px}.hero{margin:0 4%;border-radius:30px;min-height:0}.hero-copy{padding:38px 7% 26px}.hero h1{font-size:clamp(53px,13.8vw,78px);letter-spacing:-3px}.hero .actions{gap:20px}.interactive-window{margin:8px;border-radius:24px;min-height:500px}.hero-bottom{flex-direction:column;gap:8px}.strip{margin:16px 4% 0;border-radius:22px}.section{padding:60px 6%}.service-list details{padding:0 18px;border-radius:20px}.service-list summary{gap:12px}.service-list h3{font-size:27px}.service-list details>p{margin-left:0}.joinery-motion{margin-left:0}.about,.archives{margin:0 4%;border-radius:28px;padding:45px 7%}.territory{padding:24px;border-top:1px solid #ffffff20}.timeline article{padding:23px;border-radius:22px}.photo-grid a{border-radius:22px}.contact form{padding:24px;border-radius:24px}.contact h2{font-size:44px}.contact .phone{font-size:26px}.form-row{grid-template-columns:1fr;gap:0}footer{margin:0 4% 16px;border-radius:24px}.entry-brand{font-size:18px}.history{gap:35px}}@media(prefers-reduced-motion:reduce){.reveal.pending{transform:none}.button:hover,.button:active,.photo-grid a:hover img{transform:none}}
.mobile-menu-toggle{display:none}section[id]{scroll-margin-top:110px}
@media(max-width:850px){header{position:sticky;overflow:visible;gap:10px}header nav{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;gap:4px;background:#fafaf5;border:1px solid #e5e5dc;border-radius:24px;padding:16px;box-shadow:0 18px 45px #24262222;max-height:calc(100svh - 120px);overflow-y:auto}header nav a{display:block;padding:16px 18px;font-size:16px;border-radius:14px}header nav a:hover,header nav a:focus-visible{background:#efb13e20}.mobile-menu-toggle{display:flex;align-items:center;gap:9px;border:1px solid #dcdcd0;border-radius:30px;background:#fff9;padding:12px 15px;color:var(--ink);font:inherit;font-size:13px;cursor:pointer;min-height:44px;margin-left:auto}.menu-icon{display:block;position:relative;width:18px;height:14px}.menu-icon i{position:absolute;left:0;width:18px;height:2px;background:currentColor;top:3px;transition:transform .25s,top .25s}.menu-icon i:last-child{top:10px}.menu-open nav{display:flex;animation:menu-appear .25s ease both}.menu-open .menu-icon i{top:6px;transform:rotate(45deg)}.menu-open .menu-icon i:last-child{transform:rotate(-45deg)}.header-call{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:12px}.brand{flex-shrink:0}.menu-open .mobile-menu-toggle{background:var(--gold);border-color:var(--gold)}}
@media(max-width:380px){header{padding:0 12px;gap:7px}.brand img{width:75px}.mobile-menu-toggle{padding:11px}.menu-label{font-size:12px}.header-call{font-size:10px;padding:10px 9px}}@keyframes menu-appear{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.menu-open nav{animation:none}}
.scroll-showcase{height:420svh;position:relative;margin:25px 3%;border-radius:36px;background:#343b30}.showcase-sticky{position:sticky;top:102px;height:calc(100svh - 120px);min-height:530px;border-radius:36px;overflow:hidden;background:radial-gradient(ellipse at 75% 45%,var(--scene-color,#efb13e) 0%,#343b30 80%);color:#fff;transition:background .8s}.showcase-kicker{position:absolute;left:5%;top:25px;font-size:10px;letter-spacing:2px;z-index:3}.showcase-word{position:absolute;left:5%;top:23%;font-size:clamp(90px,15vw,225px);line-height:.9;letter-spacing:-7px;font-weight:900;color:#ffffff13;white-space:nowrap;transform:translateX(var(--word-x,0px));transition:opacity .4s}.showcase-copy{position:absolute;left:6%;top:37%;width:38%;z-index:2}.showcase-copy h2{font-size:clamp(30px,3.6vw,57px);margin-top:18px}.showcase-copy p{font-size:14px;line-height:1.7;color:#eeeeea;max-width:330px}.showcase-number{font-size:11px;letter-spacing:3px;color:#ffffffb0}.showcase-copy .button{font-size:11px;margin-top:14px;color:var(--ink)}.showcase-object{position:absolute;left:57%;top:16%;width:30%;height:65%;display:flex;align-items:center;justify-content:center;perspective:1000px;transform:rotate(var(--object-angle,-10deg)) translateY(var(--object-y,0px));will-change:transform}.showcase-object .joinery-motion{margin:0;width:250px;height:320px;transform:rotateY(-12deg);box-shadow:25px 35px 70px #0005}.showcase-object .door-motion{width:195px;height:350px}.showcase-object .garage-motion{width:330px;height:235px}.showcase-object .gate-motion{width:330px;height:210px}.showcase-object.swap{animation:object-enter .7s cubic-bezier(.16,1,.3,1)}.showcase-steps{position:absolute;bottom:25px;left:5%;right:5%;display:flex;gap:9px;justify-content:center;z-index:4}.showcase-steps button{padding:12px 19px;border:1px solid #fff4;border-radius:50px;background:#ffffff0a;color:#fff;cursor:pointer;backdrop-filter:blur(10px)}.showcase-steps button[aria-pressed=true]{background:#fff;color:#242622}.showcase-steps button:hover{border-color:#fff}@keyframes object-enter{from{opacity:0;scale:.85}to{opacity:1;scale:1}}@media(max-width:700px){.scroll-showcase{margin:20px 4%;border-radius:28px;height:350svh}.showcase-sticky{top:88px;height:calc(100svh - 100px);min-height:570px;border-radius:28px}.showcase-kicker{font-size:8px;top:20px;letter-spacing:1px}.showcase-word{top:15%;font-size:80px;letter-spacing:-4px;left:4%}.showcase-copy{left:7%;top:auto;bottom:100px;width:86%}.showcase-copy h2{font-size:30px;margin:8px 0}.showcase-copy h2 br{display:none}.showcase-copy p{font-size:12px;margin:8px 0}.showcase-copy .button{margin-top:4px;padding:12px 18px}.showcase-object{left:20%;width:60%;top:7%;height:48%}.showcase-object .joinery-motion{width:145px;height:190px}.showcase-object .door-motion{width:110px;height:210px}.showcase-object .garage-motion{width:200px;height:150px}.showcase-object .gate-motion{width:210px;height:145px}.showcase-steps{flex-wrap:wrap;gap:6px;bottom:18px;left:4%;right:4%}.showcase-steps button{font-size:10px;padding:10px 12px}}@media(prefers-reduced-motion:reduce){.scroll-showcase{height:auto}.showcase-sticky{position:relative;top:0}.showcase-object{transform:none!important;animation:none!important}.showcase-word{transform:none!important}}
