*{box-sizing:border-box} :root{--wine:#682331;--wine-dark:#42171e;--cream:#fbf6eb;--cream-2:#f3eadc;--ink:#211b19;--muted:#716761;--line:#e3d8ca}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.55}.topbar{background:var(--wine-dark);color:#fff7ec;text-align:center;padding:9px 16px;font-size:.75rem;font-weight:700;letter-spacing:.17em}.topbar span{color:#d8b87b;margin:0 12px}.site-header{height:auto;min-height:86px;padding:15px max(5vw,22px);display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fffaf1;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--wine-dark);flex-shrink:0}.brand-mark{width:56px;height:56px;border-radius:13px;background:var(--wine);display:grid;place-items:center;box-shadow:5px 5px 0 #e5d6c5}.brand-mark svg{width:38px;fill:none;stroke:#fff9ef;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.brand-copy strong{font-size:1.08rem;line-height:1.03;letter-spacing:-.035em;display:block}.brand-copy small{font-size:.57rem;letter-spacing:.22em;font-weight:700;color:#82766f;display:block;margin-top:7px}.nav{display:flex;align-items:center;gap:clamp(12px,2vw,28px)}.nav a{font-size:.84rem;font-weight:700;color:var(--ink);text-decoration:none;white-space:nowrap}.nav a:hover{color:var(--wine)}.nav .nav-call,.button-primary{background:var(--wine);color:white;border:1px solid var(--wine)}.nav .nav-call,.nav .nav-estimate{padding:12px 17px;border-radius:7px}.nav .nav-estimate{border:1px solid var(--wine);color:var(--wine)}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;color:var(--wine);border-radius:8px;padding:8px 12px;font-size:1.3rem}.hero{min-height:510px;position:relative;display:flex;align-items:center;overflow:hidden;background:#e9d9c5}.hero-photo{position:absolute;inset:0;background-image:url("https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=2000&q=85");background-size:cover;background-position:center 55%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,246,235,.98) 0%,rgba(251,246,235,.94) 32%,rgba(251,246,235,.48) 53%,rgba(45,25,20,.05) 100%)}.hero-content{position:relative;z-index:1;width:min(650px,60%);padding:70px 0 70px max(7vw,28px)}.eyebrow{font-size:.75rem;letter-spacing:.19em;font-weight:700;color:var(--wine);display:flex;align-items:center;gap:13px;margin:0 0 18px}.eyebrow>span{display:inline-block;width:35px;height:2px;background:var(--wine)}h1,h2{font-family:"Playfair Display",Georgia,serif;letter-spacing:-.045em;line-height:1.04;margin:0}h1{font-size:clamp(3rem,5.4vw,5.2rem);max-width:740px}h1 em,h2 em{font-style:normal;color:var(--wine)}.hero-lede{font-size:1.05rem;max-width:530px;color:#514843;margin:22px 0 20px}.trust-row{display:flex;gap:22px;flex-wrap:wrap;font-size:.9rem;font-weight:700}.trust-row span:first-letter{color:var(--wine)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.button{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:14px 21px;border-radius:7px;text-decoration:none;font-weight:700;font-size:.9rem;transition:transform .15s,background .15s}.button:hover{transform:translateY(-2px)}.button-primary:hover{background:var(--wine-dark)}.button-outline{border:1px solid #9e6f71;color:var(--wine);background:rgba(255,250,241,.72)}.local-stamp{position:absolute;right:6%;bottom:40px;color:white;font-family:"Playfair Display",serif;font-weight:700;font-size:2rem;line-height:1.05;text-shadow:0 2px 12px #0008;transform:rotate(-5deg)}.local-stamp span{display:block;font:600 .8rem "DM Sans",sans-serif;margin-top:12px;letter-spacing:.06em}.section{width:min(1240px,90%);margin:auto}.services-section{padding-top:65px;padding-bottom:66px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:27px}.section-heading h2,.project-intro h2,.about-copy h2,.contact-copy h2{font-size:clamp(2.4rem,4vw,3.5rem)}.section-heading>p{max-width:440px;color:var(--muted);margin:0 0 5px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{background:#fffaf3;border:1px solid #e8dfd3;border-radius:10px;overflow:hidden;box-shadow:0 5px 16px #44221b08;padding-bottom:18px}.service-card img{width:100%;height:175px;object-fit:cover;display:block}.service-icon{font-size:1.5rem;color:var(--wine);font-weight:700;margin:14px 17px 4px}.service-card h3{font-size:1.04rem;margin:0 17px 5px}.service-card p{font-size:.87rem;color:var(--muted);margin:0 17px}.service-note{margin-top:24px;color:var(--muted);font-size:.9rem}.service-note a{color:var(--wine);font-weight:700}.projects-section{background:#f1e5d8;padding:55px 0 24px}.project-layout{display:grid;grid-template-columns:.8fr 2fr;gap:36px;align-items:center}.project-intro>p:not(.eyebrow){color:var(--muted);max-width:320px}.project-intro .button{margin-top:12px}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.project-gallery img{width:100%;height:270px;object-fit:cover;border-radius:8px}.gallery-disclaimer{text-align:center;font-size:.72rem;color:#7b6b61;margin:20px 15px 0}.about-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;padding-top:85px;padding-bottom:85px}.about-image{min-height:360px;border-radius:45% 45% 12px 12px;background:linear-gradient(140deg,#e0cdb8,#a77e69);display:grid;place-items:center;position:relative;overflow:hidden}.portrait-placeholder{width:72%;height:82%;border:1px solid #fff9efaa;border-radius:45% 45% 10px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff9ef;background:linear-gradient(155deg,#8e6251,#412d2b);text-align:center}.portrait-placeholder span{font:800 5rem "Playfair Display",serif}.portrait-placeholder small{font-size:.68rem;letter-spacing:.18em;font-weight:700}.about-copy>p:not(.eyebrow){color:var(--muted);margin:20px 0}.about-copy .button{margin-top:6px}.steps-section{background:#f0e6d9;padding:55px 0 65px}.centered{justify-content:center}.centered-title{text-align:center;font-size:clamp(2.2rem,4vw,3.2rem);margin-bottom:38px}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;text-align:center}.steps-grid>div{padding:10px 20px}.steps-grid b{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--wine);color:#fff;font-size:.95rem}.steps-grid h3{margin:15px 0 6px}.steps-grid p{margin:0;color:var(--muted);font-size:.9rem}.contact-section{display:grid;grid-template-columns:1fr .9fr;gap:9%;padding-top:85px;padding-bottom:85px}.contact-copy>p:not(.eyebrow){color:var(--muted);max-width:430px}.contact-detail{display:flex;align-items:center;gap:14px;margin-top:24px}.contact-detail>span{width:43px;height:43px;border-radius:50%;background:#ead9d0;color:var(--wine);display:grid;place-items:center;font-size:1.15rem}.contact-detail small{display:block;font-size:.65rem;letter-spacing:.12em;color:var(--muted);font-weight:700}.contact-detail a,.contact-detail strong{color:var(--ink);font-weight:700;text-decoration:none;font-size:.94rem;overflow-wrap:anywhere}.estimate-form{background:#fffaf3;border:1px solid var(--line);border-radius:12px;padding:30px;box-shadow:0 12px 35px #3b21120a}.estimate-form h3{font:700 1.8rem "Playfair Display",serif;margin:0}.estimate-form>p{color:var(--muted);font-size:.88rem;margin:5px 0 22px}.estimate-form label{display:block;font-size:.78rem;font-weight:700;margin:14px 0 6px}.estimate-form input,.estimate-form select,.estimate-form textarea{display:block;width:100%;border:1px solid #d9ccbd;background:#fffdf8;border-radius:6px;padding:12px;font:inherit;font-size:.9rem;color:var(--ink)}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{outline:2px solid #b98088;outline-offset:1px}.form-submit{width:100%;margin-top:18px;cursor:pointer;font:700 .9rem "DM Sans",sans-serif}.form-note{display:block;text-align:center;color:var(--muted);font-size:.7rem;margin-top:12px}.form-status{font-size:.82rem;color:var(--wine);font-weight:700}.footer{background:var(--wine-dark);color:#fff5e8;padding:38px max(5vw,22px) 18px}.footer-main{display:flex;align-items:center;gap:24px;padding-bottom:27px}.footer-brand{color:#fff5e8}.footer-brand .brand-mark{background:#7b2a3b;box-shadow:5px 5px 0 #62404a}.footer-brand .brand-copy small{color:#d6c4bb}.footer-main>p{margin-left:auto;color:#e2cfc4;font-size:.85rem}.footer-main>a:last-child{color:#fff5e8;font-weight:700;text-decoration:none}.footer-bottom{border-top:1px solid #ffffff30;padding-top:15px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#d7c3b9;font-size:.75rem}.footer-bottom a{color:#fff5e8;text-decoration:none}@media(max-width:1000px){.site-header{padding:12px 4%}.nav{gap:12px}.nav a{font-size:.75rem}.nav .nav-call,.nav .nav-estimate{padding:10px}.hero-content{width:68%}.local-stamp{right:4%;font-size:1.6rem}.project-layout{grid-template-columns:1fr}.project-gallery img{height:230px}.project-intro>p:not(.eyebrow){max-width:600px}}@media(max-width:720px){.topbar{font-size:.65rem;letter-spacing:.12em}.site-header{min-height:75px}.brand-mark{width:48px;height:48px}.brand-copy strong{font-size:.95rem}.brand-copy small{font-size:.48rem}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffaf1;border-bottom:1px solid var(--line);padding:18px 5%;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 10px 20px #24140d12}.nav.open{display:flex}.nav a{padding:13px 4px;font-size:.92rem}.nav .nav-call,.nav .nav-estimate{margin-top:8px;text-align:center;padding:13px}.hero{min-height:650px;align-items:flex-start}.hero-photo{background-position:58% center}.hero-shade{background:linear-gradient(180deg,rgba(251,246,235,.98) 0%,rgba(251,246,235,.93) 53%,rgba(251,246,235,.28) 100%)}.hero-content{width:100%;padding:62px 6% 200px}.hero h1{font-size:clamp(2.8rem,11vw,4.2rem)}.hero-lede{font-size:1rem}.local-stamp{font-size:1.35rem;bottom:28px;right:7%}.section{width:88%}.services-section{padding-top:48px;padding-bottom:48px}.section-heading{display:block}.section-heading>p{margin-top:15px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-card img{height:125px}.service-card h3{font-size:.93rem}.service-card p{font-size:.8rem}.service-icon{margin:10px 12px 3px}.service-card h3,.service-card p{margin-left:12px;margin-right:12px}.project-gallery{grid-template-columns:1fr 1fr}.project-gallery img{height:170px}.project-gallery img:last-child{display:none}.about-section{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:55px}.about-image{min-height:290px}.steps-grid{grid-template-columns:1fr;gap:12px}.steps-grid>div{padding:8px 18px}.contact-section{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:55px}.estimate-form{padding:22px}.footer-main{align-items:flex-start;flex-wrap:wrap}.footer-main>p{width:100%;margin:0}.footer-bottom{flex-direction:column;gap:8px}}@media(max-width:390px){.brand{gap:8px}.brand-mark{width:42px;height:42px}.brand-copy strong{font-size:.84rem}.hero-actions{flex-direction:column;align-items:stretch}.service-grid{grid-template-columns:1fr}.service-card img{height:180px}.trust-row{gap:12px;font-size:.8rem}}
