/*! 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{--navy:#071727;--green:#285a3a;--gold:#f4b83f;--cream:#f6f1e7;--ink:#15221b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{object-fit:cover;width:100%;height:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}.site-header{background:var(--navy);color:#fff;z-index:10;justify-content:space-between;align-items:center;height:124px;padding:0 clamp(20px,5vw,72px);display:flex;position:relative}.brand{width:108px;height:108px;display:block}.brand img{object-fit:contain;width:100%;height:100%}nav{align-items:center;gap:30px;font-size:14px;font-weight:700;display:flex}.nav-call{border:1px solid #ffffff59;border-radius:999px;padding:11px 18px}.hero{color:#fff;background:url(/images/cabin-hero.jpeg) 50% 44%/cover no-repeat;align-items:center;min-height:720px;display:flex;position:relative;overflow:hidden}.hero-shade{background:linear-gradient(90deg,#04111bea 0%,#04111bad 45%,#04111b1f 78%),linear-gradient(#0000 52%,#04111b94);position:absolute;inset:0}.hero-content{z-index:1;width:min(760px,90%);margin-left:clamp(20px,8vw,124px);padding:76px 0;position:relative}.eyebrow{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px;font-size:12px;font-weight:900}.eyebrow.dark{color:var(--green)}.hero h1{max-width:720px;margin-bottom:24px;font-size:clamp(48px,7vw,82px);line-height:.99}.hero-copy{color:#ffffffe6;max-width:690px;margin-bottom:34px;font-size:clamp(18px,2vw,23px);line-height:1.55}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;min-height:52px;padding:0 24px;font-size:15px;font-weight:900;display:inline-flex}.button-gold{background:var(--gold);color:var(--navy)}.button-gold:hover{background:#ffd16a}.button-light{color:var(--navy);background:#fff}.button-outline{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff12;border:1px solid #ffffffa6}.trust-row{color:#fffc;flex-wrap:wrap;gap:24px;margin-top:34px;font-size:13px;font-weight:700;display:flex}.section{padding:100px clamp(20px,7vw,108px)}.intro{background:var(--gold);grid-template-columns:1.1fr .9fr;align-items:end;gap:9vw;display:grid}.intro h2,.section-heading h2,.about h2,.quote h2{margin-bottom:0;font-size:clamp(36px,5vw,58px);line-height:1.06}.intro>p{margin-bottom:4px;font-size:18px;line-height:1.75}.services{background:var(--cream)}.section-heading{max-width:760px;margin-bottom:52px}.section-heading>p:last-child{color:#5f6c64;margin-top:18px;font-size:17px}.service-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.service-card{background:#fffdf8;border:1px solid #d9d5cb;border-radius:12px;min-height:260px;padding:32px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px #0717271a}.service-icon{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:28px;font-size:20px;display:grid}.service-card h3{margin-bottom:12px;font-size:22px}.service-card p{color:#657067;margin:0;line-height:1.65}.service-link{color:var(--green);margin-top:22px;font-size:14px;font-weight:900;display:inline-block}.seasonal-note{border-left:4px solid var(--gold);background:#fff;margin:28px 0 0;padding:20px 24px}.about-copy>p a{text-underline-offset:3px;-webkit-text-decoration:underline #285a3a66;text-decoration:underline #285a3a66}.work{background:var(--navy);color:#fff}.section-heading.light>p:last-child{color:#ffffffad}.photo-grid{grid-template-rows:1fr 1fr;grid-template-columns:1.5fr 1fr;gap:14px;height:590px;display:grid}.photo-grid figure{border-radius:10px;margin:0;overflow:hidden}.photo-grid .photo-large{grid-row:1/span 2}.before-after{grid-template-columns:.8fr 1fr 1fr;align-items:stretch;gap:18px;margin-top:100px;display:grid}.before-after-copy{align-self:center;padding:32px 30px 32px 0}.before-after-copy h2{font-size:35px;line-height:1.12}.before-after-copy p:last-child{color:#ffffffad;line-height:1.65}.before-after figure{border-radius:10px;height:430px;margin:0;position:relative;overflow:hidden}.before-after figure span{z-index:2;background:var(--gold);color:var(--navy);text-transform:uppercase;border-radius:5px;padding:8px 12px;font-size:12px;font-weight:900;position:absolute;top:16px;left:16px}.gallery-link{color:var(--gold);margin-top:24px;font-weight:900;display:inline-block}.gallery-hero{color:#fff;background:linear-gradient(90deg,#04111be8,#04111b70),url(/images/cabin-yard-new.jpeg) 50% 55%/cover no-repeat;align-items:flex-end;min-height:490px;padding:110px clamp(20px,8vw,124px);display:flex}.gallery-hero>div{max-width:820px}.gallery-hero h1{margin-bottom:22px;font-size:clamp(64px,10vw,116px);line-height:.88}.gallery-hero p:last-child{color:#ffffffd1;max-width:760px;margin:0;font-size:20px;line-height:1.6}.gallery-section{background:var(--cream);padding:100px clamp(20px,7vw,108px)}.gallery-intro{grid-template-columns:1fr 1fr;align-items:end;gap:8vw;margin-bottom:60px;display:grid}.gallery-intro h2{margin:0;font-size:clamp(38px,5vw,60px);line-height:1.04}.gallery-intro>p{color:#5b685f;margin:0;font-size:18px;line-height:1.75}.gallery-masonry{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.gallery-masonry figure{background:var(--navy);border-radius:12px;height:540px;margin:0;position:relative;overflow:hidden}.gallery-masonry .gallery-feature{height:700px}.gallery-masonry img{transition:transform .5s}.gallery-masonry figure:hover img{transform:scale(1.025)}.gallery-masonry figcaption{color:#fff;background:linear-gradient(#0000,#04111bea);padding:70px 28px 26px;position:absolute;inset:auto 0 0}.gallery-masonry strong,.gallery-masonry span{display:block}.gallery-masonry strong{margin-bottom:7px;font-size:22px}.gallery-masonry span{color:#ffffffbd;line-height:1.5}.gallery-before-after{background:var(--navy);color:#fff;grid-template-columns:.8fr 1fr 1fr;gap:18px;padding:100px clamp(20px,7vw,108px);display:grid}.gallery-ba-copy{align-self:center;padding-right:28px}.gallery-ba-copy h2{font-size:clamp(34px,4vw,50px);line-height:1.08}.gallery-ba-copy p:last-child{color:#ffffffad;line-height:1.65}.gallery-before-after figure{border-radius:10px;height:500px;margin:0;position:relative;overflow:hidden}.gallery-before-after figure span{z-index:2;background:var(--gold);color:var(--navy);text-transform:uppercase;border-radius:5px;padding:8px 12px;font-size:12px;font-weight:900;position:absolute;top:16px;left:16px}.gallery-cta{color:#fff;background:var(--green);padding:100px clamp(20px,8vw,124px)}.gallery-cta h2{margin-bottom:20px;font-size:clamp(44px,7vw,76px)}.gallery-cta>p:not(.eyebrow){color:#ffffffcf;max-width:700px;font-size:19px;line-height:1.65}.work-category+.work-category{margin-top:110px}.work-category-heading{border-bottom:1px solid #d7d2c8;grid-template-columns:1fr 1fr;align-items:end;gap:7vw;margin-bottom:34px;padding-bottom:24px;display:grid}.work-category-heading h2{margin:0;font-size:clamp(34px,4vw,52px);line-height:1.05}.work-category-heading>p{color:#5b685f;margin:0;font-size:17px;line-height:1.7}.gallery-masonry .gallery-feature{grid-column:1/-1;height:650px}.about{background:#fff;grid-template-columns:1fr 1fr;align-items:center;gap:8vw;display:grid}.about-image{height:620px;box-shadow:28px 28px 0 var(--gold);border-radius:12px;overflow:hidden}.about-copy>p:not(.eyebrow){color:#56645b;margin:26px 0;font-size:18px;line-height:1.75}.about ul{margin:0 0 28px;padding:0;list-style:none}.about li{border-bottom:1px solid #e5e4df;padding:14px 0 14px 28px;position:relative}.about li:before{content:"✓";color:var(--green);font-weight:900;position:absolute;left:0}.text-link{color:var(--green);font-weight:900}.testimonial{text-align:center;background:var(--green);color:#fff}.stars{color:var(--gold);letter-spacing:.35em;margin-bottom:24px}.testimonial blockquote{max-width:900px;margin:0 auto 20px;font-family:Georgia,serif;font-size:clamp(38px,5vw,62px);font-style:italic;line-height:1.2}.testimonial p{color:#ffffffb3;margin:0}.quote{background:var(--navy);color:#fff;grid-template-columns:.85fr 1.15fr;gap:8vw;display:grid}.quote-copy>p:not(.eyebrow){color:#ffffffad;margin:24px 0 40px;font-size:18px;line-height:1.7}.contact-stack{gap:12px;display:grid}.contact-stack a{border:1px solid #ffffff2e;border-radius:8px;padding:18px 20px}.contact-stack span,.contact-stack strong{display:block}.contact-stack span{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:900}.quote-form{color:var(--ink);background:#fff;border-radius:12px;grid-template-columns:1fr 1fr;gap:20px;padding:38px;display:grid}.quote-form label{gap:8px;font-size:13px;font-weight:800;display:grid}.quote-form label:nth-of-type(3),.quote-form label:nth-of-type(4),.quote-form label:nth-of-type(5),.quote-form .photo-note,.quote-form button{grid-column:1/-1}.quote-form input,.quote-form select,.quote-form textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #ccd1cc;border-radius:6px;padding:14px 15px;font-weight:400}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:#d8931a;outline:3px solid #f4b83f59}.photo-note{color:#68736b;margin:0;font-size:13px;line-height:1.5}.quote-form .photo-upload,.quote-form .form-message{grid-column:1/-1}.photo-upload span{color:#68736b;font-weight:400}.photo-upload input[type=file]{background:#f7f7f3;padding:11px}.photo-upload input[type=file]::file-selector-button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:5px;margin-right:12px;padding:9px 12px;font-weight:800}.quote-form button:disabled{cursor:wait;opacity:.7}.form-message{border-radius:6px;margin:0;padding:14px 16px;font-size:14px;font-weight:800;line-height:1.45}.form-message.sent{color:#205b32;background:#e5f4e9}.form-message.error{color:#8b2c24;background:#fce9e7}.form-trap{opacity:0!important;width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important}footer{color:#fff;background:#04101b;grid-template-columns:1.1fr 1fr 1fr;gap:30px;padding:54px clamp(20px,7vw,108px) 90px;display:grid}footer strong,footer span{display:block}footer span{color:#ffffff94;margin-top:7px;line-height:1.45}.footer-brand strong{color:var(--gold);text-transform:uppercase;font-size:22px}footer p{color:#ffffff59;grid-column:1/-1;margin:14px 0 0;font-size:12px}.mobile-actions{display:none}@media (width<=900px){.site-header{height:72px}nav a:not(.nav-call){display:none}.nav-call{padding:9px 12px;font-size:12px}.hero{min-height:700px}.hero-content{width:calc(100% - 40px);margin:0 auto}.intro,.about,.quote{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.photo-grid{grid-template-rows:400px 260px;grid-template-columns:1fr 1fr;height:auto}.photo-grid .photo-large{grid-area:auto/1/auto/-1}.before-after{grid-template-columns:1fr 1fr}.before-after-copy{grid-column:1/-1}.before-after figure{height:360px}.about-image{height:500px}.gallery-intro,.work-category-heading{grid-template-columns:1fr;gap:28px}.gallery-before-after{grid-template-columns:1fr 1fr}.gallery-ba-copy{grid-column:1/-1}.gallery-before-after figure{height:400px}footer{grid-template-columns:1fr 1fr}}@media (width<=620px){body{padding-bottom:64px}.site-header{height:104px}.brand{width:90px;height:90px}nav{display:none}.hero{background-position:56%;min-height:740px}.hero-shade{background:linear-gradient(#04111b59,#04111bb8 30%,#04111bf0 100%)}.hero-content{align-self:flex-end;padding:72px 0 54px}.hero h1{font-size:50px}.hero-copy{font-size:18px}.hero-actions .button{flex:calc(50% - 8px)}.hero-actions .button-outline{flex-basis:100%}.trust-row{gap:12px 18px}.section{padding:72px 20px}.intro{gap:34px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.photo-grid{grid-template-rows:360px 300px 300px;grid-template-columns:1fr}.photo-grid .photo-large{grid-column:auto}.before-after{grid-template-columns:1fr;margin-top:68px}.before-after-copy{grid-column:auto;padding:0}.before-after figure{height:340px}.about-image{height:430px;box-shadow:14px 14px 0 var(--gold)}.quote-form{grid-template-columns:1fr;padding:24px}.quote-form label,.quote-form label:nth-of-type(3),.quote-form label:nth-of-type(4),.quote-form label:nth-of-type(5),.quote-form .photo-note,.quote-form button{grid-column:1}.gallery-hero{background-position:58%;min-height:430px;padding:78px 20px 48px}.gallery-hero h1{font-size:66px}.gallery-hero p:last-child{font-size:17px}.gallery-section{padding:72px 20px}.work-category+.work-category{margin-top:80px}.gallery-masonry{grid-template-columns:1fr;gap:16px}.gallery-masonry figure,.gallery-masonry .gallery-feature{grid-column:auto;height:460px}.gallery-masonry figcaption{padding:60px 20px 20px}.gallery-masonry figcaption span{font-size:14px}.gallery-before-after{grid-template-columns:1fr;padding:72px 20px}.gallery-ba-copy{grid-column:auto;padding:0}.gallery-before-after figure{height:360px}.gallery-cta{padding:72px 20px}.gallery-cta .button{flex:calc(50% - 8px)}.gallery-cta .button-outline{flex-basis:100%}footer{grid-template-columns:1fr;padding-bottom:48px}footer p{grid-column:1}.mobile-actions{z-index:30;background:var(--gold);height:64px;color:var(--navy);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -8px 30px #0000002e}.mobile-actions a{border-right:1px solid #07172733;place-items:center;font-size:14px;font-weight:900;display:grid}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.seo-hero{color:#fff;align-items:flex-end;min-height:620px;display:flex;position:relative;overflow:hidden}.seo-hero>img{position:absolute;inset:0}.seo-hero-shade{background:linear-gradient(90deg,#04111bf2 0%,#04111bb8 52%,#04111b35),linear-gradient(#0000 40%,#04111bb8);position:absolute;inset:0}.seo-hero-copy{z-index:1;max-width:930px;padding:100px clamp(20px,8vw,124px);position:relative}.seo-hero h1{margin-bottom:24px;font-size:clamp(48px,7vw,78px);line-height:1}.seo-hero-copy>p:not(.eyebrow){color:#ffffffdf;max-width:760px;margin-bottom:32px;font-size:20px;line-height:1.65}.seo-content{background:var(--cream);grid-template-columns:1fr 1fr;gap:70px 8vw;display:grid}.seo-content article h2,.seo-content aside h2{font-size:clamp(32px,4vw,50px);line-height:1.08}.seo-content article>p,.seo-content aside>p:not(.eyebrow){color:#5b685f;font-size:17px;line-height:1.75}.seo-content ul{margin:24px 0 0;padding:0;list-style:none}.seo-content li{border-bottom:1px solid #d8d6cf;padding:13px 0 13px 28px;position:relative}.seo-content li:before{content:"✓";color:var(--green);font-weight:900;position:absolute;left:0}.seo-content aside{background:#fff;border-radius:12px;grid-column:1/-1;padding:48px;box-shadow:0 18px 50px #07172712}.seo-content aside h2{margin-bottom:18px}.seo-content aside .button{margin-top:10px}@media (width<=900px){.seo-content{grid-template-columns:1fr}.seo-content aside{grid-column:1}}@media (width<=620px){.seo-hero{min-height:650px}.seo-hero-copy{padding:80px 20px 54px}.seo-hero h1{font-size:48px}.seo-hero-copy>p:not(.eyebrow){font-size:17px}.seo-content{gap:54px}.seo-content aside{padding:30px 24px}}
