:root{
  --cream:#f7f0e2;
  --paper:#fffbf2;
  --ink:#39291c;
  --ink-soft:#695544;
  --gold:#bc9145;
  --gold-light:#f1d99a;
  --line:#dfcfad;
  --foil:linear-gradient(115deg,#a7772e 0%,#d3af61 22%,#f8e9b3 42%,#c49948 59%,#f0d58e 78%,#a97831 100%);
  --wood:url('assets/walnut-texture.jpg');
}
body{background:var(--cream);overflow-x:clip}
::selection{background:#dcb75c;color:#27190f}
.topline{background:#2c1b12;color:#f0d69a;border-bottom:1px solid #846333}
.site-header{background:rgba(255,249,235,.95);border-bottom:1px solid #d0ae66;box-shadow:0 3px 20px #2d1b1012}
.site-nav>a:not(.nav-cta):hover{color:#8a6024}
.nav-cta,.button-dark,.button-light{background:var(--foil);color:#322014;border:1px solid #e3c17b;box-shadow:inset 0 1px 0 #fff3c9,0 5px 16px #36200e24}
.nav-cta:hover,.button:hover{box-shadow:inset 0 1px 0 #fff3c9,0 14px 30px #28160940}
.hero,.services,.contact{background-image:linear-gradient(105deg,rgba(30,17,10,.86),rgba(52,30,17,.6)),var(--wood);background-size:cover;background-position:center;color:#fff2d6}
.hero:before{border-color:#c6a46230;box-shadow:0 0 0 96px #d8b56809,0 0 0 190px #d8b56806}
.hero h1{color:#fff6e6}
h1 em,h2 em{color:#9b702d}
.hero h1 em,.services h2 em,.contact h2 em{background:var(--foil);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero .eyebrow,.services .eyebrow,.contact .eyebrow{color:#efd497}
.hero .eyebrow-line{background:#dfbf77}
.hero-lead{color:#e5d2b8}
.hero .text-link{color:#f7dfa8;border-color:#d9b970}
.hero-proof,.hero-proof strong,.proof-number{color:#fff0d0}
.proof-number span{color:#e4c274}
.hero-halo{opacity:.72}
.hero-image-wrap{border-color:#e2c482;box-shadow:0 0 0 1px #8c642b,26px 32px 48px #11080388}
.hero-secondary{border-color:#f0d698;box-shadow:0 0 0 1px #89602a,12px 22px 35px #11080399}
.sun-stamp,.about-note{background:var(--foil);color:#3d2b17;box-shadow:6px 9px 0 #2414092b,0 12px 30px #24140933}
.visual-caption{color:#f0dba8}
.banner-dots button:after{background:#c2a16c}
.banner-dots button.is-active:after{background:#ffedb6}
.banner-pause{background:var(--foil);border-color:#efd595;color:#3a2517}
.intro-strip{background:var(--foil);color:#352211;border-top:1px solid #f9e6b1;border-bottom:1px solid #92672d}
.intro-strip a{border-color:#765326}
.eyebrow{color:#906727}
.about-copy>p:not(.eyebrow){color:#695849}
.about-visual:before{border-color:#b68c45}
.about-note{box-shadow:14px 14px 0 #efe1c3,18px 21px 30px #39261626}
.about-highlights span{color:#9a702e}
.services:before{border-color:#d9b36a33;box-shadow:0 0 0 95px #d8b56808}
.services .section-heading>p{color:#e0cbb0}
.service-card{border:1px solid #cfac62;box-shadow:0 14px 35px #10070344;color:var(--ink)}
.service-card:hover{box-shadow:0 28px 52px #10070377}
.service-index{background:var(--foil);color:#342413;border:1px solid #e5c480}
.service-content p{color:#6f5c48}
.service-content a{border-color:#b99659;color:#745123}
.service-content a:hover{background:var(--foil);color:#302014}
.quote-section{background:var(--foil);color:#352211;border-block:1px solid #c3a05a}
.quote-inner:before,.quote-inner:after{border-color:#79552144}
.gallery{background:#f4ead7}
.section-heading>p{color:#77624b}
.gallery-item{border:1px solid #c6a465;box-shadow:7px 11px 0 #b9954b24}
.gallery-item:hover{box-shadow:12px 19px 28px #422a1c33}
.gallery-item:after{background:linear-gradient(transparent,rgba(37,20,9,.85))}
.testimonials{background:#fff9ec}
.review-grid blockquote{background:#f7edda;border-color:#dac18c}
.review-mark{color:#ba9144}
.review-grid footer{color:#866127}
.contact:before{border-color:#e6c58038;box-shadow:0 0 0 100px #dec27e09,0 0 0 200px #dec27e06}
.contact-copy>p:not(.eyebrow){color:#e2cfb5}
.contact-mail{color:#f3dca5;border-color:#d4b16a}
.address-block{border-color:#e9c78844}
.address-block>span{color:#e4c37d}
.address-block a{color:#f3dca5;border-color:#c4a05c}
.contact-image{border:1px solid #c6a15b;box-shadow:24px 29px 0 #d6b46925,35px 42px 35px #10070366}
.site-footer{background-image:linear-gradient(#24150fe8,#24150fee),var(--wood);background-size:cover;color:#fff0d4;border-top:1px solid #947037}
.footer-top{border-color:#dbbd7840}
.footer-top p{color:#d1bda1}
.footer-top>a:last-child{color:#ead099;border-color:#ae8b4e}
.footer-bottom{color:#c0a787}
.footer-brand .brand-mark{background:#fff1d1}
.lightbox{background:#fff6e3;border:1px solid #c4a160}
.lightbox::backdrop{background:#1b0e09de}
.lightbox-close{background:var(--foil);color:#342013}
@media(max-width:760px){.site-nav{background:#fff7e7}.contact-image{box-shadow:16px 20px 0 #d6b46925}}
.contact .address-block{margin-top:32px}
.contact-location-photo{width:100%;height:170px;object-fit:cover;border:1px solid #c6a15b;border-radius:12px;margin-top:26px}
.callback-form{position:relative;background:var(--paper);color:var(--ink);border:1px solid #d5b366;border-radius:20px;padding:40px;box-shadow:18px 22px 0 #d6b4691f,0 25px 55px #1007034d}
.form-star{display:block;font-size:34px;color:#a67c36;line-height:1;margin-bottom:20px}
.callback-form h3{font-family:var(--serif);font-size:36px;font-weight:500;letter-spacing:-.035em;line-height:1.2;margin-bottom:12px}
.form-intro{color:#705c45;font-size:14px;line-height:1.7;margin-bottom:28px}
.form-field{margin-bottom:22px}
.form-field label{display:block;font-size:13px;font-weight:700;margin-bottom:9px}
.form-field input{display:block;width:100%;min-height:54px;border:1px solid #d5c5a6;background:#fffdf7;border-radius:9px;padding:14px 15px;font:inherit;font-size:15px;color:#3c291b;transition:border-color .2s,box-shadow .2s}
.form-field input::placeholder{color:#978771}
.form-field input:focus{outline:2px solid #b68a3e;outline-offset:2px;border-color:#b68a3e}
.form-field small{display:block;font-size:11px;margin-top:7px;color:#827056}
.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-submit{width:100%;cursor:pointer}
.form-submit:disabled{opacity:.65;cursor:wait;transform:none}
.form-note{font-size:11px;line-height:1.7;color:#806e55;margin:17px 0 0}
.form-status{font-size:13px;line-height:1.7;margin:18px 0 0;border-radius:8px}
.form-status:empty{display:none}
.form-status[data-state='success']{background:#edf2dc;color:#344020;padding:13px}
.form-status[data-state='error']{background:#f7e4db;color:#7b3023;padding:13px}
.form-status[data-state='preview']{background:#f2e8ce;color:#654b1d;padding:13px}
@media(max-width:760px){.callback-form{padding:28px;box-shadow:10px 14px 0 #d6b4691f}.callback-form h3{font-size:32px}}
