@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--cream:#f5f1e8;--green:#253f32;--orange:#ae4e2d;--line:#d6d3c8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--green);font-family:'DM Sans',Arial,sans-serif}button,input,textarea{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}.announcement{text-align:center;background:var(--green);color:#f5f1e8;padding:12px;font-size:10px;letter-spacing:2px}header{display:flex;align-items:center;justify-content:space-between;padding:25px 5%;border-bottom:1px solid var(--line)}.brand{font-weight:700;font-size:30px;letter-spacing:-1.5px;line-height:1}.brand span{font-size:18px;letter-spacing:1px;margin-left:8px}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:9px}nav{display:flex;gap:30px;font-size:13px}.outline{background:transparent;border:1px solid var(--green);padding:13px 18px;color:var(--green)}#count{margin-left:12px}.hero{display:grid;grid-template-columns:1fr 1.1fr;min-height:640px}.heroCopy{padding:85px 10%}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;margin:0 0 25px}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-2px;margin:0 0 22px;line-height:.98}h1{font-size:clamp(60px,6.7vw,106px)}h2{font-size:clamp(42px,4.1vw,64px)}p{line-height:1.7}.intro{max-width:340px;font-size:16px;color:#586054}.button{background:var(--orange);color:white;border:0;padding:17px 23px;display:inline-flex;gap:30px;align-items:center;font-size:13px}.hero .button{margin-top:20px}.opening{margin-top:44px;font-size:11px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.dot{width:7px;height:7px;border-radius:100%;background:var(--orange)}.muted{color:#777d70}.heroPhoto{position:relative;background:#b99870;min-height:500px;overflow:hidden}.heroPhoto img{width:100%;height:100%;object-fit:cover;position:absolute}.photoLabel{position:absolute;bottom:25px;left:25px;color:white;font-size:10px;letter-spacing:1.3px;text-shadow:0 1px 6px #000}.photoLabel small{display:block;margin-top:8px;font-size:9px}.ribbon{display:flex;justify-content:space-around;gap:20px;align-items:center;padding:27px 4%;background:#e6e3d8;font-size:11px;letter-spacing:1.5px}.ribbon b{font-size:22px;color:var(--orange)}.section{padding:95px 6%}.sectionTop{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:40px}.sectionTop p{font-size:13px}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.product h3{font-size:21px;font-weight:500;margin:23px 0 7px}.product p{font-size:13px;max-width:290px}.product .wood{height:275px}.productBottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:12px}.productBottom button{border:0;background:none;font-size:22px;color:var(--green)}.note{font-size:11px;color:#697164}.wood{position:relative;overflow:hidden;background-color:#bd8f58;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 55px,#684b3070 56px,#42301f 58px,transparent 60px),repeating-linear-gradient(1deg,#ffffff0a 0,#613b2320 2px,transparent 4px,transparent 8px)}.wood:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 28px 8px at 30% 30%,#6c482858 15%,transparent 70%),radial-gradient(ellipse 40px 10px at 70% 65%,#7e542b50 10%,transparent 70%)}.wood.white{background-color:#dedbd0;filter:saturate(.4)}.wood.cedar{background-color:#a75f3b}.looks{background:#e7e7dc;display:grid;grid-template-columns:.9fr 1.2fr;gap:9%;align-items:center}.looks p{max-width:360px;font-size:14px}.looks .note{font-size:11px}.swatches{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}.swatches button{background:transparent;border:1px solid #a5ad9c;padding:11px;color:var(--green);font-size:12px}.swatches .active{background:var(--green);color:white}#sample{height:470px;box-shadow:0 12px 30px #27372716;transform:rotate(-2deg)}.sampleCaption{position:absolute;bottom:20px;left:20px;right:20px;background:var(--cream);padding:20px;display:flex;justify-content:space-between;gap:15px;font-size:12px}.sampleCaption span{font-size:10px}.visit{text-align:center;max-width:850px;margin:auto}.visit p{font-size:14px}.visit .button{margin:20px 0 5px}footer{padding:45px 6%;border-top:1px solid var(--line);display:flex;gap:35px;justify-content:space-between;align-items:center}footer p,footer a:not(.brand),footer small{font-size:11px}.textButton{border:0;background:none;color:var(--green);font-size:10px}dialog{background:var(--cream);border:1px solid var(--line);padding:42px;max-width:600px;width:90%;max-height:90vh;color:var(--green)}dialog::backdrop{background:#14261dc0}.close{position:absolute;top:8px;right:12px;background:none;border:0;font-size:28px;color:var(--green)}dialog h2{font-size:45px}label{display:block;font-size:12px;margin:20px 0}input,textarea{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #b8beae;background:white;border-radius:0}textarea{min-height:90px}.basketRow{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.basketRow input{width:65px;margin:0}.basketRow button{border:0;background:none;color:var(--orange)}@media(max-width:800px){nav{display:none}.hero{grid-template-columns:1fr}.heroCopy{padding:60px 7%}.heroPhoto{min-height:420px}.ribbon{flex-wrap:wrap;font-size:9px}.ribbon b{display:none}.section{padding:60px 7%}.sectionTop{display:block}.products{grid-template-columns:1fr}.product .wood{height:270px}.looks{grid-template-columns:1fr;gap:35px}#sample{height:340px}.sampleCaption{display:block}.sampleCaption span{display:block;margin-top:7px}footer{flex-wrap:wrap}.brand{font-size:25px}.brand span{font-size:14px}header{padding:20px 6%}.outline{font-size:11px;padding:11px}dialog{padding:35px 24px}}

.product select{padding:10px;border:1px solid #c9c6b9;background:#faf8f2;font:inherit;border-radius:4px;margin:4px 0 14px;width:100%}.product label{font-size:14px}.productBottom span{max-width:80%;font-size:14px}

.guideGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 55px;margin-top:35px}.productGuide{border-top:1px solid var(--line)}.productGuide>p{max-width:800px}.guideGrid h3{font-size:22px;font-weight:500}.guideGrid p{font-size:14px}.guideGrid .outline{display:inline-block;font-size:12px}.productPhoto{width:100%;height:275px;object-fit:cover;display:block}.photoCredit{display:block;font-size:10px;color:#697164;margin-top:7px}.guideDetails{border-top:1px solid var(--line);padding-top:15px}@media(max-width:800px){.guideGrid{grid-template-columns:1fr;gap:15px}.productPhoto{height:270px}}

#sample.natural{background-image:url(assets/pine-wall-detail.jpg);background-size:cover;background-position:center}#sample.cedar{background-image:url(assets/cedar.png);background-size:cover;background-position:center}#sample.white{background-image:linear-gradient(#ffffffe0,#ffffffb0),url(assets/shiplap.png);background-size:cover;background-position:center}

.cabinListing{background:#e9e5da;border-bottom:1px solid var(--line);scroll-margin-top:24px}.cabinHeading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:38px}.cabinHeading h2{margin-bottom:0}.cabinJump{font-size:13px;border-bottom:1px solid var(--green);padding-bottom:6px}.cabinLayout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:6%;align-items:start}.cabinGallery{min-width:0}.cabinPhotoLink{display:block;background:#ded9cb}.cabinPhotoLink img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.cabinCaption{font-size:12px;margin:12px 0}.cabinThumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.cabinThumb{padding:3px;border:2px solid transparent;background:transparent;min-width:0}.cabinThumb[aria-pressed=true]{border-color:var(--orange)}.cabinThumb img{width:100%;height:65px;object-fit:cover;display:block}.cabinThumb:focus-visible,.cabinPhotoLink:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.cabinDetails .eyebrow{margin-bottom:12px}.cabinPrice{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(46px,5vw,72px);line-height:1;margin:0 0 22px;letter-spacing:-1px}.cabinLead{font-size:16px}.cabinFeatures{padding-left:18px;font-size:14px;line-height:1.65;margin:25px 0}.cabinFeatures li{margin:8px 0}.cabinDetails .button{margin:6px 0 8px}.cabinDetails .note{max-width:400px}.heroPhoto img{object-position:65% center}.photoLabel{background:#253f32d9;padding:14px 18px;right:25px}.cabinGallery .note{margin-bottom:0}
@media(max-width:800px){.cabinHeading{display:block}.cabinJump{display:inline-block;margin-top:20px}.cabinLayout{grid-template-columns:1fr;gap:32px}.cabinThumb img{height:48px}.cabinThumbs{gap:4px}.cabinFeatures{margin:20px 0}.cabinPhotoLink img{max-height:360px}.cabinPrice{font-size:60px}}

.cabinTour{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;margin-top:55px;padding-top:45px;border-top:1px solid #c7cbbd}.cabinTour h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(40px,4.5vw,66px);font-weight:400;line-height:1;letter-spacing:-1.5px;margin:0 0 22px}.cabinTour p:not(.eyebrow){max-width:410px;font-size:15px}.cabinTour video{display:block;width:100%;max-width:360px;aspect-ratio:9/16;max-height:640px;background:#17291f;justify-self:center;object-fit:contain}#cabin-tour{scroll-margin-top:24px}@media(max-width:800px){.cabinThumbs{grid-template-columns:repeat(4,minmax(0,1fr))}.cabinThumb img{height:55px}.cabinTour{grid-template-columns:1fr;gap:28px;margin-top:35px}.cabinTour video{max-width:320px}}

.cabinSize{font-size:14px;line-height:1.7;margin-top:-8px;padding-bottom:16px;border-bottom:1px solid #c7cbbd}.cabinPhone{display:block;font-weight:600;font-size:15px;margin:12px 0 18px}.cabinPlanJump{display:inline-block;margin-left:18px}.cabinFloorPlan{margin-top:55px;border-top:1px solid #c7cbbd;padding-top:42px;scroll-margin-top:24px}.cabinSectionTop{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:25px}.cabinSectionTop h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(36px,4vw,56px);font-weight:400;line-height:1;margin:0;letter-spacing:-1px}.planImageLink{display:block;background:#fffdf8;border:1px solid var(--line);padding:10px}.planImageLink img{width:100%;height:auto;display:block}.cabinSpecGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px}.cabinSpecGrid h4{font-size:17px;margin:0 0 18px}.cabinSpecGrid dl{margin:0}.cabinSpecGrid dl div{margin:0 0 12px}.cabinSpecGrid dt{font-size:11px;color:#596352}.cabinSpecGrid dd{margin:3px 0 0;font-size:14px}.cabinSpecGrid ul{font-size:14px;line-height:1.7;padding-left:18px;margin:0}.cabinDownloads{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.cabinDownloads .outline{display:inline-block;font-size:12px}.woodExamples{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:35px}.woodExamples figure{margin:0}.woodExamples img{width:100%;height:310px;object-fit:cover;display:block}.woodExamples figcaption{font-size:12px;line-height:1.6;margin-top:12px;max-width:450px}.woodExamples strong{display:block;font-size:17px;margin-bottom:5px}#sample.natural:before{display:none}@media(max-width:800px){.cabinSpecGrid{grid-template-columns:1fr;gap:25px}.cabinSectionTop{display:block}.cabinSectionTop .cabinJump{margin-top:20px;display:inline-block}.cabinPlanJump{margin:12px 0 0;display:block;width:fit-content}.woodExamples{grid-template-columns:1fr}.woodExamples img{height:280px}.cabinDownloads{flex-direction:column}.cabinDownloads .outline{text-align:center}}

/* Stock photographs lead; installed examples remain secondary. */
.productStock{height:275px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:20px;background:#e9e5d9;border:1px solid #d7d0bf;color:#5d6558;overflow:hidden}
.stockPhotoEyebrow{font-size:10px;letter-spacing:2px;font-weight:600}
.stockPhotoPending{font-family:Georgia,serif;font-size:25px;line-height:1.3;color:#77806f}
.productStockPhoto{width:100%;height:100%;object-fit:cover;display:block}
.productApplication{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:14px;margin-top:14px;min-height:82px}
.productApplication .productPhoto{width:110px;height:82px;object-fit:cover}
.applicationLabel{display:block;font-size:9px;font-weight:700;letter-spacing:1px;line-height:1.5;color:#364b3e}
.productApplication .photoCredit{font-size:10px;line-height:1.5;margin-top:5px}

.cabinFeature{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center;border-bottom:1px solid var(--line);background:#ede9dc}
.cabinFeatureImage{display:block;background:#e3dfd2;overflow:hidden}
.cabinFeatureImage img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.cabinFeature p:not(.eyebrow):not(.featurePrice){max-width:470px;font-size:14px;color:#586054}
.cabinFeature .featurePrice{font-family:'Libre Caslon Display',Georgia,serif;font-size:38px;margin:10px 0;line-height:1.2}
.featureTour{display:block;margin-top:18px;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.backToLumber{display:inline-block;margin:30px 6% 0;font-size:12px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.cabinFeature{grid-template-columns:1fr;gap:30px}.cabinFeatureImage{max-width:100%}.productStock{height:250px}}

/* All site photography shares a full-size viewer. */
img[data-expandable]{cursor:zoom-in}img[data-expandable]:focus-visible{outline:3px solid #a66a36;outline-offset:4px}
.photoViewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:64px 16px 20px;border:0;border-radius:0;background:rgba(12,17,14,.97);color:#fff;overflow:auto;text-align:center}
.photoViewer::backdrop{background:#0c110e}.photoViewerImage{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 140px);object-fit:contain;margin:auto;cursor:default}.photoViewerCaption{margin:16px auto 0;max-width:900px;font-size:15px;color:#fff}.photoViewerClose{position:fixed;top:12px;right:16px;width:44px;height:44px;border:1px solid #fff8;border-radius:50%;background:#152219;color:white;font-size:30px;line-height:1;cursor:pointer}

/* Cut profiles: diagrams precede the catalog; actual stock photos take precedence. */
.cutGuide{background:#ebe7db;border-bottom:1px solid var(--line);scroll-margin-top:20px}
.cutGuide .sectionTop p{max-width:340px}.cutCards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.cutCard{min-width:0;background:#faf7ef;border:1px solid #d5cbbb}.cutCard>img{display:block;width:100%;height:auto;background:#f5efe2}
.cutCardCopy{padding:28px 30px 30px;border-top:1px solid #ded4c3}.cutNumber{font-size:10px;letter-spacing:1.6px;color:var(--orange);font-weight:700}
.cutCard h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:37px;font-weight:400;margin:12px 0}.cutCard p{font-size:14px;margin:0 0 20px;max-width:470px}.cutCardCopy a{font-size:12px;text-decoration:underline;text-underline-offset:4px}
.cutDetails{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:16px}.cutDetails p{font-size:13px;max-width:520px}.cutDetails strong{display:block;margin-bottom:5px}
.productCut{gap:4px;background:#f5efe2;padding:8px}.productCut img{display:block;object-fit:contain;width:100%;height:calc(100% - 22px)}.productCut small{font-size:9px;letter-spacing:1px;padding-bottom:4px}
@media(max-width:800px){.cutCards,.cutDetails{grid-template-columns:1fr}.cutCards{gap:24px}.cutCardCopy{padding:22px}.cutCard h3{font-size:32px}.cutDetails{gap:0} .cutGuide .sectionTop p{margin-top:20px}}
