:root{--cream:#f3ebdd;--paper:#fbf7ef;--walnut:#49301f;--dark:#292724;--brown:#70533d;--tan:#d7c5aa;--line:#d9cbb7;--white:#fffdf8}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--walnut);font-family:"DM Sans",sans-serif;line-height:1.65}
a{color:inherit}
.site-header{height:auto;min-height:84px;padding:16px max(5vw,24px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:rgba(243,235,221,.96)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.brand-mark{width:42px;height:42px;border:1px solid var(--walnut);display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:22px;position:relative}
.brand-mark span{font-size:14px;margin-left:-5px}
.brand-name{font-weight:700;font-size:12px;letter-spacing:2px;line-height:1.25}
.brand-name small{display:block;font-size:9px;letter-spacing:4px;margin-top:5px}
nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:600}
nav a{text-decoration:none}
nav a:hover,.text-link:hover{opacity:.7}
.nav-quote{border:1px solid var(--walnut);padding:10px 16px}
.hero{min-height:590px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;padding:70px max(8vw,32px);gap:5vw;background:var(--cream)}
.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:700;color:var(--brown);margin:0 0 18px}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:"Playfair Display",serif;font-weight:500;line-height:1.08;letter-spacing:-.8px}
h1{font-size:clamp(48px,6vw,78px);margin-bottom:22px}
h1 em,h2 em{font-weight:500;color:var(--brown)}
.hero-sub{font-weight:700;letter-spacing:.5px;font-size:16px;margin-bottom:14px}
.hero-text{max-width:530px;color:#65503d;font-size:15px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}
.button{display:inline-block;text-decoration:none;padding:14px 22px;font-size:12px;font-weight:700;letter-spacing:.5px;transition:transform .2s,background .2s}
.button:hover{transform:translateY(-2px)}
.button-dark{background:var(--walnut);color:var(--white)}
.button-light{border:1px solid var(--cream);color:var(--cream)}
.text-link{font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.location-note{font-size:11px;color:var(--brown);margin-top:30px}
.hero-art{height:430px;max-width:510px;width:100%;justify-self:center;position:relative;background:#e5d7c2;overflow:hidden;display:grid;place-items:center}
.hero-art:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.22),transparent 45%),repeating-linear-gradient(90deg,transparent 0 38px,rgba(73,48,31,.035) 39px 40px)}
.sun{position:absolute;width:230px;height:230px;border-radius:50%;background:#c5a77f;right:10%;top:10%;opacity:.65}
.window-frame{width:62%;height:68%;position:relative;z-index:1;border:12px solid #49301f;box-shadow:0 14px 24px #49301f33;background:#d5c3a7;display:flex;padding:8px;gap:8px}
.window-glass{position:absolute;inset:8px;background:#b8c3bd;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:6px;padding:6px}
.window-glass span{background:linear-gradient(140deg,#d7ded4,#91a39d)}
.shutter{width:25%;height:100%;position:absolute;top:0;background:repeating-linear-gradient(0deg,#67452d 0 22px,#805b3d 23px 25px);border:5px solid #49301f;z-index:2;box-shadow:inset 0 0 0 2px #a27a52}
.shutter-left{left:-31%}.shutter-right{right:-31%}
.shutter i{position:absolute;left:0;right:0;height:3px;background:#3b281d}
.shutter i:nth-child(1){top:18%}.shutter i:nth-child(2){top:38%}.shutter i:nth-child(3){top:58%}.shutter i:nth-child(4){top:78%}.shutter i:nth-child(5){top:95%}
.art-caption{position:absolute;bottom:17px;left:20px;font-family:"Playfair Display",serif;font-style:italic;font-size:14px;color:var(--walnut)}
.intro-strip{background:var(--walnut);color:var(--cream);padding:18px 5vw;text-align:center;font-family:"Playfair Display",serif;font-size:20px}
.intro-strip p{margin:0}.intro-strip span{color:#d9c4a5}
.section{padding:88px max(8vw,28px)}
.section-heading{max-width:680px;margin:0 auto 44px;text-align:center}
.section-heading h2{font-size:clamp(36px,4vw,52px);margin-bottom:14px}
.section-heading>p:last-child{color:#725b45;font-size:14px}
.style-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1120px;margin:auto}
.style-card{background:var(--paper);border:1px solid var(--line)}
.style-visual{height:245px;display:grid;place-items:center;background:#e4d6c1;overflow:hidden}
.mini-shutter{width:128px;height:185px;background:repeating-linear-gradient(0deg,#69472e 0 24px,#815c3d 25px 27px);border:8px solid #49301f;position:relative;box-shadow:8px 9px 0 #49301f22;display:flex;flex-direction:column;justify-content:space-around}
.mini-shutter b{height:2px;background:#3b281d;width:100%}
.mini-shutter strong{position:absolute;height:9px;width:150px;background:#49301f;left:-19px;top:46%;transform:rotate(90deg)}
.mini-shutter strong:nth-last-child(1){transform:rotate(-90deg)}
.z-visual .mini-shutter .zbrace{height:9px;width:150px;left:-19px;top:46%;transform:rotate(42deg)}
.custom-visual .mini-shutter .custombrace{height:9px;width:145px;left:-10px;top:46%;transform:rotate(0deg);clip-path:polygon(0 0,100% 0,82% 100%,18% 100%)}
.style-info{padding:22px 24px 26px;position:relative}
.number{font-size:10px;letter-spacing:2px;color:#9b7b58}
.style-info h3{font-family:"Playfair Display",serif;font-size:23px;font-weight:500;margin:8px 0}
.style-info p{font-size:13px;color:#705b47;margin:0}
.small-note{text-align:center;color:#806e5b;font-size:11px;margin:24px 0 0}
.price-band{background:var(--walnut);color:var(--cream);padding:48px max(8vw,28px);display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:50px}
.price-band .eyebrow{color:#d9c4a5}
.price-band h2{font-size:clamp(48px,6vw,70px);margin:0}
.price-band h2 small{font-family:"DM Sans",sans-serif;font-size:18px;letter-spacing:0}
.price-band>div:first-child>p:last-child{margin:5px 0 0;color:#dfd0bb;font-size:13px}
.price-detail{max-width:530px}.price-detail p{color:#eee2d1;font-size:15px;margin-bottom:22px}
.process-list{list-style:none;max-width:850px;margin:0 auto;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 42px}
.process-list li{display:flex;gap:20px;padding:22px 0;border-top:1px solid var(--line)}
.process-list li>span{font-family:"Playfair Display",serif;font-size:23px;color:#a1815d}
.process-list h3{font-family:"Playfair Display",serif;font-weight:500;font-size:21px;margin:0 0 5px}
.process-list p{font-size:13px;color:#705b47;margin:0}
.wood-note{background:#e7dccb;padding:60px max(8vw,28px);display:grid;grid-template-columns:110px 1fr;gap:30px;align-items:center}
.wood-mark{width:90px;height:90px;border:1px solid #9d8060;display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:48px;color:#9d8060}
.wood-note h2{font-size:clamp(30px,3vw,42px);margin-bottom:12px}
.wood-note p:last-child{max-width:850px;font-size:14px;color:#68523e;margin:0}
.details-section{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:72px;padding-bottom:72px}
.detail-card{border-top:2px solid var(--brown);padding-top:22px}
.detail-card .eyebrow{margin-bottom:12px}
.detail-card h2{font-size:26px;margin-bottom:10px}
.detail-card p:last-child{font-size:13px;color:#705b47;margin:0}
.about-section{background:#e8dece;padding:86px max(8vw,28px);display:grid;grid-template-columns:9px 1fr;gap:42px}
.about-rule{background:var(--brown)}
.about-copy{max-width:760px}.about-copy h2{font-size:clamp(42px,5vw,60px);margin-bottom:24px}
.about-copy>p:not(.eyebrow):not(.scripture){font-size:15px;color:#66503d;max-width:720px}
.scripture{font-family:"Playfair Display",serif;font-style:italic;font-size:20px;margin:30px 0 0}
.scripture span{display:block;font-family:"DM Sans",sans-serif;font-style:normal;font-size:11px;letter-spacing:1px;margin-top:8px;color:#705b47}
.quote-section{padding:78px max(8vw,28px);display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;background:var(--paper)}
.quote-copy h2{font-size:clamp(42px,5vw,60px);margin-bottom:18px}
.quote-copy>p:last-child{max-width:480px;color:#705b47;font-size:14px}
.contact-panel{border:1px solid var(--line);padding:8px 28px;background:var(--cream)}
.contact-panel a{display:block;text-decoration:none;padding:18px 0;border-bottom:1px solid var(--line)}
.contact-panel a:last-child{border:0}
.contact-panel a span{display:block;font-size:9px;letter-spacing:2px;color:#80664b;font-weight:700}
.contact-panel a strong{font-family:"Playfair Display",serif;font-weight:500;font-size:22px}
.contact-panel a:hover strong{text-decoration:underline;text-underline-offset:4px}
.site-footer{background:var(--dark);color:var(--cream);padding:34px max(5vw,24px);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.footer-brand .brand-mark{border-color:var(--cream)}.site-footer p{font-size:11px;margin:0;color:#d8cbb9}.site-footer>small{font-size:10px;color:#b7a995}
@media(max-width:850px){.site-header{align-items:flex-start;flex-direction:column}nav{width:100%;gap:16px;flex-wrap:wrap}.hero{grid-template-columns:1fr;padding-top:58px}.hero-art{height:360px;max-width:470px}.price-band{grid-template-columns:1fr;gap:22px}.details-section{grid-template-columns:1fr;gap:34px}}
@media(max-width:600px){.site-header{padding:14px 20px}nav{font-size:11px;gap:13px}nav .nav-quote{padding:7px 10px}.hero{padding:50px 24px}.hero-art{height:300px}.window-frame{width:58%;height:65%}.intro-strip{font-size:16px}.section{padding:65px 24px}.style-grid{grid-template-columns:1fr}.style-visual{height:220px}.process-list{grid-template-columns:1fr}.wood-note{grid-template-columns:1fr;padding:48px 24px}.wood-mark{width:62px;height:62px;font-size:34px}.details-section{padding-top:58px;padding-bottom:58px}.about-section{padding:60px 24px;gap:22px;grid-template-columns:5px 1fr}.quote-section{padding:60px 24px;grid-template-columns:1fr;gap:22px}.contact-panel{padding:6px 20px}.site-footer{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Customer referral offer */
.referral-section{padding:76px max(8vw,28px);background:var(--paper);text-align:center;border-bottom:1px solid var(--line)}
.referral-inner{max-width:900px;margin:0 auto}
.referral-inner h2{font-size:clamp(36px,4vw,50px);margin:0 0 14px}
.referral-intro{max-width:600px;margin:0 auto 30px;color:#705b47;font-size:14px}
.referral-offers{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 auto 22px;text-align:left}
.referral-offers article{background:var(--cream);border:1px solid var(--line);padding:25px 28px}
.referral-percent{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--brown)}
.referral-offers h3{font:500 22px "Playfair Display",serif;margin:8px 0}
.referral-offers p{font-size:13px;color:#705b47;margin:0}
.referral-note{font-size:12px;color:#806e5b;margin:0 0 22px}
@media(max-width:600px){.referral-section{padding:58px 24px}.referral-offers{grid-template-columns:1fr}.referral-offers article{padding:22px}}

/* Wix Forms quote request */
.quote-side{min-width:0}
.quote-form{background:var(--cream);border:1px solid var(--line);padding:24px;margin-bottom:18px}
.quote-request-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px}
.form-field{min-width:0}
.form-field.full-width{grid-column:1/-1}
.form-field label:not(.quote-choice){display:block;font-size:11px;font-weight:700;color:var(--walnut);margin:0 0 6px}
.required-star{color:#9a4d35}.required-word{font-size:9px;color:#80664b;font-weight:500}
.form-field input:not([type=checkbox]):not([type=radio]),.form-field select,.form-field textarea{display:block;width:100%;border:1px solid #cdbda8;border-radius:0;background:#fffdf8;color:var(--dark);font:13px "DM Sans",sans-serif;padding:11px 12px;outline:none}
.form-field textarea{resize:vertical;min-height:105px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--brown);box-shadow:0 0 0 2px #70533d18}
.field-help{display:block;color:#806e5b;font-size:10px;margin-top:5px}
.field-error,.form-error-summary{display:block;color:#9a3f32;font-size:11px;margin-top:5px}
.form-error-summary{background:#f6e8e2;padding:10px;margin:0 0 12px}
.form-actions{grid-column:1/-1;display:flex;align-items:center;gap:12px}
.form-submit{border:0;cursor:pointer;font-family:"DM Sans",sans-serif}
.form-submit:disabled{opacity:.55;cursor:wait}
.form-back{border:1px solid var(--line);background:transparent;color:var(--walnut);padding:12px 16px;cursor:pointer}
.form-footnote{grid-column:1/-1;font-size:10px;color:#806e5b;margin:0}
.form-loading,.form-closed{font-size:13px;color:#705b47}
.form-success{padding:28px 12px;text-align:center}
.form-success h3{font:500 28px "Playfair Display",serif;margin:8px 0}
.form-success p{font-size:13px;color:#705b47;margin:8px 0}
.success-mark{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--walnut);color:var(--cream);font-size:20px}
.quote-choice-list{display:grid;gap:7px}
.quote-choice{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--dark)}
.quote-choice input{accent-color:var(--walnut)}
.quote-side .contact-panel{padding:4px 20px}
.quote-side .contact-panel a{padding:12px 0}
@media(max-width:600px){.quote-form{padding:18px}.quote-request-form{grid-template-columns:1fr}.form-field.full-width,.form-actions,.form-footnote{grid-column:1}.quote-side .contact-panel{padding:4px 16px}}


/* Original homepage image: full image, no crop */
.hero-art{display:block;width:100%;height:auto;max-width:510px;justify-self:center;object-fit:contain;background:none;border:0;box-shadow:none;overflow:visible;position:static}


/* Real example photos in the shutter styles section */
.style-photo{display:block;width:100%;height:245px;object-fit:cover;object-position:center;border:0}
@media(max-width:600px){.style-photo{height:230px}}


/* Approved rustic wood-sign homepage design */
:root{--cream:#f3ebdd;--paper:#fbf7ef;--walnut:#49301f;--dark:#211811;--brown:#70533d;--tan:#d7c5aa;--line:#b99a74;--white:#fffdf8}
body{background:var(--cream)}
.rustic-header{display:block;padding:14px max(3vw,20px) 0;background-color:#24170f;background-image:repeating-linear-gradient(2deg,rgba(185,137,83,.12) 0 2px,transparent 3px 17px),linear-gradient(90deg,#1b120d,#4b2d19 48%,#21150e);color:#f4e6cb;border:0;border-bottom:5px solid #8a633c;box-shadow:0 5px 16px #0005}
.header-top{display:grid;grid-template-columns:1fr minmax(300px,1.4fr) 1fr;align-items:center;gap:20px;max-width:1440px;margin:0 auto 12px}
.header-side{font:600 13px/1.65 "Playfair Display",serif;letter-spacing:.5px;color:#f0dfbf;text-align:center}
.header-side-right{font-style:italic;font-size:18px}
.rustic-header .brand{justify-content:center;min-height:108px;padding:8px 24px;background:linear-gradient(180deg,#805a32,#4b2c18);border:4px double #c6a16b;box-shadow:inset 0 0 0 2px #382012,0 4px 10px #0008;color:#f8e8c6}
.rustic-header .brand-name{font:700 clamp(24px,3vw,42px)/.95 "Playfair Display",serif;letter-spacing:1px;text-align:center;text-shadow:1px 2px 2px #24160d}
.rustic-header .brand-name small{font:italic 500 clamp(24px,2.8vw,38px)/1.1 "Playfair Display",serif;letter-spacing:1px;margin-top:5px}
.rustic-header nav{display:flex;justify-content:center;gap:0;max-width:1100px;margin:0 auto;padding:12px 8px;background:rgba(13,9,6,.56);border-top:1px solid #a77a4c;flex-wrap:wrap}
.rustic-header nav a{color:#f4e6cb;padding:4px 22px;border-right:1px solid #a77a4c;font:600 15px "Playfair Display",serif;text-decoration:none}
.rustic-header nav a:last-child{border-right:0}
.rustic-header nav a:hover{color:#fff;background:#805a32}
.hero{min-height:500px;grid-template-columns:.78fr 1.22fr;gap:0;padding:0;background:#281a11;color:#f6e8ce;align-items:stretch}
.hero-copy{padding:58px max(3vw,24px) 45px max(6vw,30px);align-self:center}
.hero .eyebrow{color:#d5b98e}
.hero h1{font-size:clamp(40px,4.6vw,66px);color:#fff0d4;margin-bottom:18px}
.hero h1 em{color:#e2c69d}
.hero-sub{font:italic 500 21px/1.35 "Playfair Display",serif;color:#f2e2c6}
.hero-text{color:#e4d4bc;font-size:14px;max-width:520px}
.hero .button-light{background:#d9bd8d;color:#24170f;border:1px solid #f0d9ac;font-size:14px;padding:14px 22px}
.hero .text-link{color:#f4e6cb}
.hero .location-note{color:#d7c09b}
.hero-art{display:block;width:100%;height:100%;min-height:500px;max-width:none;object-fit:cover;object-position:center;border:0;box-shadow:none;position:static}
.intro-strip{background-color:#2a1a10;background-image:repeating-linear-gradient(3deg,rgba(185,137,83,.12) 0 2px,transparent 3px 17px);border-top:4px solid #8b633d;border-bottom:4px solid #8b633d;font-size:20px}
.styles-section{background:#f3ebdd}
.style-grid{scroll-margin-top:18px}
.style-card{border:4px solid #6d482a;box-shadow:0 4px 12px #39251525}
.style-photo{height:245px;object-fit:cover}
.style-info{background:#fbf7ef}
.site-footer{background-color:#21150e;background-image:repeating-linear-gradient(2deg,rgba(185,137,83,.1) 0 2px,transparent 3px 17px);border-top:5px solid #8a633c}
.site-footer .brand-mark{display:none}
.site-footer .brand-name{font-family:"Playfair Display",serif;color:#f4e6cb}
html{scroll-padding-top:18px}
@media(max-width:850px){
 .header-top{grid-template-columns:1fr;gap:8px}
 .header-side{display:none}
 .rustic-header .brand{min-height:78px}
 .rustic-header nav a{padding:7px 13px;font-size:13px}
 .hero{grid-template-columns:1fr}
 .hero-copy{padding:48px 28px 36px}
 .hero-art{min-height:0;height:auto;aspect-ratio:16/9}
}
@media(max-width:600px){
 .rustic-header{padding:10px 12px 0}
 .rustic-header nav{gap:2px}
 .rustic-header nav a{padding:7px 9px;font-size:12px}
 .hero-copy{padding:42px 22px 30px}
 .hero h1{font-size:44px}
 .hero-art{aspect-ratio:4/3}
 .style-photo{height:230px}
}


/* Real completed-project gallery — style examples above remain unchanged */
.project-gallery-section{background:#e8dece}
.project-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1160px;margin:0 auto}
.project-photo{margin:0;background:var(--paper);border:4px solid #6d482a;box-shadow:0 4px 12px #39251525}
.project-photo img{display:block;width:100%;height:280px;object-fit:cover;object-position:center}
.project-photo figcaption{padding:14px 16px;font:500 17px "Playfair Display",serif;color:var(--walnut)}
@media(max-width:850px){.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.project-gallery-grid{grid-template-columns:1fr}.project-photo img{height:auto;max-height:360px;object-fit:cover}}
