/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--cream:#f4efe5;--paper:#fbf8f1;--ink:#20211e;--muted:#6d6d63;--forest:#1d3a32;--forest-dark:#10261f;--oak:#b57948;--sand:#d8c6a8;--line:#20211e2e;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Baskerville, "Times New Roman", serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}.shell{width:min(100% - 64px,1240px);margin-inline:auto}.section{padding-block:120px}.eyebrow{color:var(--forest);letter-spacing:.18em;text-transform:uppercase;margin:0 0 20px;font-size:.72rem;font-weight:700;line-height:1.4}.eyebrow.light{color:#e7dbc6}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:-.045em;font-weight:400}h2{font-size:clamp(2.7rem,5.2vw,5.2rem);line-height:.98}h2 em,h1 em{font-weight:400;display:block}.hero{color:#fff;background:#26352e;height:min(900px,100svh);min-height:780px;position:relative;overflow:hidden}.hero-image{background-color:#2f3b34;background-image:linear-gradient(90deg,#0d1b1670 0%,#0d1b161f 46%,#0000 100%),url(/images/hero-cabinetry.webp);background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.015)}.hero-shade{background:linear-gradient(#08151085 0%,#0000 24%),linear-gradient(#0000 58%,#0815107a 100%);position:absolute;inset:0}.site-header{z-index:2;border-bottom:1px solid #ffffff40;grid-template-columns:1fr auto 1fr;align-items:center;min-height:106px;display:grid;position:relative}.brand{align-items:center;gap:13px;width:max-content;display:inline-flex}.brand-mark{width:44px;height:44px;font-family:var(--serif);border:1px solid;border-radius:50%;place-items:center;font-size:1.55rem;display:grid}.brand-copy{flex-direction:column;line-height:1;display:flex}.brand-copy strong{font-family:var(--serif);letter-spacing:.04em;text-transform:uppercase;font-size:1.32rem;font-weight:600}.brand-copy small{letter-spacing:.2em;text-transform:uppercase;margin-top:6px;font-size:.58rem;font-weight:600}.desktop-nav{letter-spacing:.08em;text-transform:uppercase;gap:38px;font-size:.75rem;font-weight:600;display:flex}.desktop-nav a,.text-link,.concept-note a{transition:opacity .18s}.desktop-nav a:hover,.text-link:hover,.concept-note a:hover{opacity:.66}.header-call{flex-direction:column;justify-self:end;align-items:flex-end;gap:3px;display:flex}.header-call span{letter-spacing:.15em;text-transform:uppercase;font-size:.58rem;font-weight:700}.header-call strong{font-family:var(--serif);letter-spacing:.03em;font-size:1.13rem}.hero-content{z-index:1;flex-direction:column;justify-content:center;align-items:flex-start;height:calc(100% - 106px);padding-bottom:58px;display:flex;position:relative}.hero-content h1{text-wrap:balance;max-width:900px;margin:0;font-size:clamp(4.4rem,8.7vw,8.4rem);line-height:.83}.hero-content h1 em{margin-left:.5em}.hero-lede{color:#ffffffd9;max-width:650px;margin:34px 0 0 .45rem;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.65}.hero-actions{gap:14px;margin:32px 0 0 .45rem;display:flex}.button{letter-spacing:.11em;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;gap:32px;min-height:54px;padding:0 25px;font-size:.72rem;font-weight:750;transition:transform .18s,background-color .18s,color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#1b211e;background:#e5d7bd}.button-primary:hover{background:#f4ead7}.button-ghost{color:#fff;border-color:#ffffff8c}.button-ghost:hover{background:#ffffff1a}.hero-detail{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#112b22f2;width:min(420px,34vw);padding:28px 38px 30px;position:absolute;bottom:0;right:0}.detail-rule{background:#b99463;width:45px;height:2px;margin-bottom:18px;display:block}.hero-detail p{font-family:var(--serif);margin:0 0 8px;font-size:1.1rem}.hero-detail small{color:#ffffffa6;letter-spacing:.1em;text-transform:uppercase;font-size:.65rem}.proof-bar{border-bottom:1px solid var(--line);background:var(--cream)}.proof-grid{grid-template-columns:repeat(3,1fr);display:grid}.proof-item{border-right:1px solid var(--line);padding:32px 36px}.proof-item:first-child{padding-left:0}.proof-item:last-child{border-right:0}.proof-item span,.story-meta span,.year-block>span{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin-bottom:7px;font-size:.62rem;font-weight:700;display:block}.proof-item strong{font-family:var(--serif);font-size:1.13rem;font-weight:600}.section-kicker{color:var(--forest);letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:24px;margin-bottom:62px;font-size:.7rem;font-weight:700;display:flex}.kicker-line{background:var(--forest);width:65px;height:1px}.intro-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);align-items:end;gap:10vw;display:grid}.intro h2{max-width:850px;margin-bottom:0}.intro-copy p,.feature-copy>p,.area-grid>div>p{color:var(--muted);font-size:1.05rem;line-height:1.75}.text-link{border-bottom:1px solid var(--ink);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:18px;margin-top:18px;padding-bottom:7px;font-size:.7rem;font-weight:750;display:inline-flex}.services{background:#e9e0d2}.services-heading{grid-template-columns:1fr .55fr;align-items:end;gap:12vw;margin-bottom:66px;display:grid}.services-heading h2{margin-bottom:0}.services-heading>p{color:var(--muted);margin:0 0 8px;font-size:1rem;line-height:1.7}.service-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.service-card{border-bottom:1px solid var(--line);grid-template-columns:52px 1fr;gap:20px;min-height:245px;padding:46px 42px 48px 0;display:grid;position:relative;overflow:hidden}.service-card:nth-child(odd){border-right:1px solid var(--line)}.service-card:nth-child(2n){padding-left:42px}.service-number{color:var(--oak);font-family:var(--serif);font-size:.84rem}.service-card h3{font-family:var(--serif);margin-bottom:18px;font-size:clamp(1.65rem,2.5vw,2.35rem);font-weight:500}.service-card p{max-width:440px;color:var(--muted);margin-bottom:0;font-size:.92rem;line-height:1.72}.card-line{background:var(--forest);height:4px;transition:transform .26s;position:absolute;bottom:-4px;left:0;right:0;transform:translate(-102%)}.service-card:hover .card-line{transform:translate(0)}.feature{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:stretch;gap:9vw;display:grid}.feature-image-wrap{min-height:690px;position:relative}.feature-image{background-color:#c7af8e;background-image:linear-gradient(140deg,#18372c14,#0000 45%),url(/images/hero-cabinetry.webp);background-position:50%;background-size:cover;width:100%;height:100%}.image-label{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;background:#fbf8f1f0;padding:13px 17px;font-size:.56rem;font-weight:700;position:absolute;bottom:0;right:0}.feature-copy{flex-direction:column;justify-content:center;display:flex}.feature-copy h2{margin-bottom:32px;font-size:clamp(2.8rem,4.5vw,4.8rem)}.wood-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:20px;margin:20px 0 34px;padding:24px 0;display:flex}.wood-swatch{background:repeating-linear-gradient(4deg,#0000 0 7px,#3320122b 8px 9px),#b47d4d;border-radius:50%;flex:none;width:55px;height:55px}.wood-note p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.55}.wood-note strong{color:var(--ink);margin-bottom:3px;display:block}.button-dark{background:var(--forest);color:#fff;width:max-content}.button-dark:hover{background:var(--forest-dark)}.gallery{background:var(--forest-dark);color:#fff}.gallery-heading{grid-template-columns:1fr .55fr;align-items:end;gap:12vw;margin-bottom:60px;display:grid}.gallery-heading h2{margin-bottom:0}.gallery-heading>p{color:#fff9;margin:0 0 5px;font-size:.9rem;line-height:1.7}.gallery-grid{grid-template-columns:1.2fr .8fr .8fr;gap:18px;display:grid}.project-card{background:#5e695f;min-height:520px;position:relative;overflow:hidden}.project-card:not(:first-child){margin-top:70px}.project-image{background-position:50%;background-size:cover;transition:transform .5s;position:absolute;inset:0}.project-cabinetry .project-image{background-image:url(/images/hero-cabinetry.webp)}.project-stair .project-image{background-image:url(/images/spiral-staircase.webp)}.project-deck .project-image{background-image:url(/images/cedar-deck.webp)}.project-card:hover .project-image{transform:scale(1.035)}.project-card:after{content:"";background:linear-gradient(#0000,#091611d6);position:absolute;inset:45% 0 0}.project-caption{z-index:1;align-items:flex-end;gap:18px;display:flex;position:absolute;bottom:27px;left:27px;right:27px}.project-caption span{color:#d5b889;font-family:var(--serif);font-size:.75rem}.project-caption h3{font-family:var(--serif);margin:0;font-size:1.55rem;font-weight:500}.story{color:#fff;background:#22483d}.story-grid{grid-template-columns:.75fr 1.25fr;align-items:center;gap:10vw;display:grid}.year-block{border-top:1px solid #ffffff40;border-bottom:1px solid #ffffff40;padding:28px 0;position:relative}.year-block>span{color:#ffffff8c}.year-block strong{font-family:var(--serif);letter-spacing:-.075em;font-size:clamp(7.5rem,15vw,14rem);font-weight:400;line-height:.62;display:block}.year-block strong:last-child{color:#d9c5a4;margin-left:.65em}.story-copy h2{max-width:760px;margin-bottom:34px}.story-copy>p:not(.eyebrow){color:#ffffffb3;max-width:650px;font-size:1.05rem;line-height:1.8}.story-meta{border-top:1px solid #fff3;grid-template-columns:1fr 1.3fr;gap:40px;margin-top:48px;padding-top:30px;display:grid}.story-meta span{color:#ffffff80}.story-meta strong{font-family:var(--serif);font-size:1.25rem;font-weight:500}.custom{grid-template-columns:.85fr 1.15fr;gap:10vw;display:grid}.custom-heading h2{font-size:clamp(3rem,5vw,5rem)}.custom-list{border-top:1px solid var(--line)}.custom-row{border-bottom:1px solid var(--line);grid-template-columns:45px 1fr auto;align-items:center;gap:15px;min-height:100px;display:grid}.custom-row>span{color:var(--oak);font-family:var(--serif);font-size:.82rem}.custom-row>span:last-child{font-size:1.1rem}.custom-row p{font-family:var(--serif);margin:0;font-size:1.25rem}.service-area{background:var(--cream);position:relative;overflow:hidden}.service-area:before{content:"";border:1px solid #1d3a321f;border-radius:50%;width:660px;height:660px;position:absolute;top:-250px;right:-100px;box-shadow:0 0 0 80px #1d3a3208,0 0 0 160px #1d3a3206}.area-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:12vw;display:grid;position:relative}.area-grid h2{max-width:650px;margin-bottom:30px}.area-grid>div>p{max-width:530px}.region-mark{background:#fbf8f1ad;border:1px solid #1d3a3240;padding:72px 48px;position:relative}.region-mark>div{font-family:var(--serif);text-align:center;grid-template-columns:1fr 80px 1fr;align-items:center;font-size:clamp(1.45rem,2.4vw,2.2rem);display:grid}.region-mark i{background:var(--oak);height:1px;display:block;position:relative}.region-mark i:before,.region-mark i:after{border:1px solid var(--oak);background:var(--cream);content:"";border-radius:50%;width:9px;height:9px;position:absolute;top:-4px}.region-mark i:before{left:0}.region-mark i:after{right:0}.region-mark small{color:var(--muted);letter-spacing:.14em;text-align:center;text-transform:uppercase;margin-top:32px;font-size:.6rem;font-weight:700;display:block}.contact{color:#fff;background:#7d5435;position:relative;overflow:hidden}.contact-grain{opacity:.34;background:repeating-linear-gradient(2deg,#0000 0 30px,#ffffff0f 31px 32px),linear-gradient(90deg,#29190e59,#0000 55%,#29190e26);position:absolute;inset:0}.contact-inner{z-index:1;text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.contact-inner h2{max-width:890px;margin-bottom:32px}.contact-number{font-family:var(--serif);border-bottom:1px solid #ffffff59;margin-bottom:35px;font-size:clamp(1.8rem,3vw,2.8rem)}.button-cream{background:var(--cream);color:var(--ink)}.site-footer{color:#fff;background:#13241e;padding:54px 0 28px}.footer-main{justify-content:space-between;align-items:center;padding-bottom:52px;display:flex}.footer-contact{align-items:center;gap:30px;display:flex}.footer-contact span{color:#ffffff7a;letter-spacing:.11em;text-transform:uppercase;font-size:.67rem}.footer-contact a{font-family:var(--serif);font-size:1.25rem}.concept-note{color:#ffffff73;border-top:1px solid #ffffff21;justify-content:space-between;gap:30px;padding-top:24px;font-size:.61rem;line-height:1.55;display:flex}.concept-note p{max-width:680px;margin:0}.concept-note a{text-transform:uppercase;flex:none}@media (width<=1000px){.shell{width:min(100% - 44px,1240px)}.desktop-nav{display:none}.site-header{grid-template-columns:1fr auto}.hero-content h1 em{margin-left:0}.hero-detail{display:none}.intro-grid,.services-heading,.gallery-heading,.story-grid,.custom,.area-grid{gap:70px}.feature{gap:55px}.gallery-grid{grid-template-columns:1.15fr .85fr}.project-card:last-child{grid-column:1/-1;min-height:420px;margin-top:0}}@media (width<=760px){.shell{width:min(100% - 32px,1240px)}.section{padding-block:82px}h2{font-size:clamp(2.7rem,14vw,4.3rem)}.hero{height:100svh;min-height:720px;max-height:840px}.site-header{min-height:88px}.brand-mark{width:39px;height:39px;font-size:1.3rem}.brand-copy strong{font-size:1.05rem}.brand-copy small{font-size:.48rem}.header-call span{display:none}.header-call strong{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}.hero-content{justify-content:flex-end;height:calc(100% - 88px);padding-bottom:58px}.hero-content h1{max-width:650px;font-size:clamp(3.7rem,17vw,5.5rem);line-height:.88}.hero-lede{margin-top:26px;margin-left:0;font-size:.98rem;line-height:1.55}.hero-actions{width:100%;margin-top:25px;margin-left:0}.hero-actions .button{flex:1;gap:10px;padding-inline:15px}.proof-grid{grid-template-columns:1fr}.proof-item,.proof-item:first-child{border-right:0;border-bottom:1px solid var(--line);padding:22px 0}.proof-item:last-child{border-bottom:0}.section-kicker{margin-bottom:40px}.intro-grid,.services-heading,.feature,.gallery-heading,.story-grid,.custom,.area-grid{grid-template-columns:1fr;gap:42px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(2n){border-right:0;min-height:0;padding:34px 0 36px}.feature-image-wrap{min-height:480px}.feature-copy h2{font-size:clamp(2.7rem,13vw,4rem)}.gallery-grid{grid-template-columns:1fr}.project-card,.project-card:not(:first-child),.project-card:last-child{grid-column:auto;min-height:480px;margin-top:0}.year-block{max-width:490px}.year-block strong{font-size:clamp(8.5rem,43vw,13rem)}.custom-row{min-height:88px}.region-mark{padding:50px 22px}.region-mark>div{grid-template-columns:1fr;gap:20px}.region-mark i{width:1px;height:60px;margin-inline:auto}.region-mark i:before,.region-mark i:after{left:-4px}.region-mark i:after{top:auto;bottom:-4px}.footer-main,.footer-contact,.concept-note{flex-direction:column;align-items:flex-start}.footer-contact{gap:8px}}@media (width<=430px){.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.header-call strong{font-size:.61rem}.service-card{grid-template-columns:40px 1fr}.story-meta{grid-template-columns:1fr;gap:24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
