/* Vintage Handymans / October 2026. Local assets only; no font or animation libraries. */
:root{--wine:#7c1c23;--wine-dark:#5b1419;--wine-soft:#f2e8e5;--ink:#202320;--muted:#62645f;--sand:#f4f1eb;--line:#deded5;--white:#fff;--green:#107c45;--green-hover:#0c6336;--max:1240px;--radius:16px;--ease:180ms ease}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:132px}body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}img{max-width:100%;height:auto;display:block}picture{display:block}a{color:inherit;text-underline-offset:.22em}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a,button{touch-action:manipulation}button .icon,a .icon{flex-shrink:0}[hidden]{display:none!important}::selection{background:#ead1d1;color:#431013}:focus-visible{outline:3px solid #ad7629;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.047em;font-weight:500;line-height:1.08}h1{font-size:clamp(2.7rem,5.5vw,4.8rem);margin-bottom:26px}h2{font-size:clamp(2.2rem,4vw,3.4rem);margin-bottom:24px}h3{font-size:1.27rem;font-weight:650;line-height:1.3;letter-spacing:-.02em;margin-bottom:13px}p{margin-bottom:20px}em{color:var(--wine);font-style:normal}strong{font-weight:650}.icon{width:23px;height:23px;vertical-align:middle;flex:0 0 23px}.wrap{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.narrow{max-width:780px}.section{padding:94px 0}.section--sand{background:var(--sand)}.eyebrow{font-size:.72rem;line-height:1.5;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--wine);margin-bottom:22px;display:flex;align-items:center;gap:10px}.eyebrow-line{width:22px;height:2px;background:var(--wine);display:inline-block}.lead{font-size:1.18rem;line-height:1.72;color:#525950}.small-note{font-size:.85rem;line-height:1.65;color:var(--muted);margin-bottom:0}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;font-weight:650;font-size:.92rem;line-height:1.35;min-height:54px;border-radius:7px;border:1px solid transparent;padding:15px 21px;transition:background var(--ease),color var(--ease),box-shadow var(--ease),transform var(--ease);text-align:center}.btn .icon{width:20px;height:20px;flex-basis:20px}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--wine);color:white}.btn--primary:hover{background:var(--wine-dark);box-shadow:0 6px 20px #7c1c2326}.btn--whatsapp{background:var(--green);color:#fff}.btn--whatsapp:hover{background:var(--green-hover)}.btn--light{background:#fff;color:var(--ink)}.btn--light:hover{background:#eae5db}.btn--outline{background:transparent;color:var(--ink);border-color:#767a71}.btn--outline:hover{background:var(--ink);color:white}.text-link{display:inline-flex;align-items:center;gap:14px;color:var(--wine);text-decoration:none;font-weight:650;line-height:1.5;padding:7px 0}.text-link .icon{width:21px;height:21px;transition:transform var(--ease)}.text-link:hover .icon{transform:translateX(4px)}.text-link:hover{text-decoration:underline}.skip-link{position:fixed;top:10px;left:10px;z-index:110;background:#fff;color:#111;padding:10px 20px;transform:translateY(-160%)}.skip-link:focus{transform:none}.utility{background:var(--ink);color:#efece5}.utility__inner{display:flex;justify-content:space-between;align-items:center;min-height:36px;font-size:.72rem;letter-spacing:.05em}.utility a{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:650}.utility .icon{width:14px;height:14px;flex-basis:14px}.utility__dot{padding:0 9px;color:#e9c3a9}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.98);border-bottom:1px solid #e9e9e3}.header-inner{min-height:114px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;flex-shrink:0}.logo-header{width:159px;height:auto;max-height:106px;object-fit:contain}.nav{display:flex;align-items:center;gap:24px}.nav>a{font-size:.87rem;font-weight:650;text-decoration:none;white-space:nowrap;padding:12px 0}.nav>a:not(.btn):hover,.nav>a[aria-current="page"]{color:var(--wine)}.nav>a[aria-current="page"]:not(.btn){box-shadow:0 2px 0 var(--wine)}.nav>.btn{padding:13px 18px;min-height:48px;margin-left:8px;color:white}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:6px;align-items:center;gap:8px;padding:9px 12px;font-size:.8rem;font-weight:650;color:var(--ink)}
/* Home */
.hero{background:linear-gradient(110deg,#faf8f4 0%,#fff 65%);padding:62px 0 68px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:58px;align-items:center}.hero-copy h1{font-size:clamp(3rem,5.3vw,4.6rem)}.hero-lead{font-size:1.09rem;line-height:1.8;color:#575d54;margin:0 0 28px;max-width:470px}.hero .eyebrow{font-size:.66rem;margin-bottom:25px}.hero .actions{gap:10px}.hero .btn{font-size:.85rem;padding:15px 17px;gap:10px}.hero-footnote{font-size:.85rem;color:var(--muted);margin:22px 0 0;max-width:440px}.hero-visual{position:relative;isolation:isolate}.hero-image{border-radius:16px 16px 0 0;overflow:hidden}.hero-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.hero-image-caption{background:var(--ink);color:white;padding:19px 22px;display:flex;gap:10px;justify-content:space-between;font-size:.73rem;align-items:center;border-radius:0 0 16px 16px}.hero-image-caption b{font-size:.82rem;letter-spacing:.09em;margin-right:5px}.hero-image-caption a{display:inline-flex;align-items:center;text-decoration:none;gap:8px;color:#e9ddd0}.hero-image-caption .icon{width:16px;height:16px;flex-basis:16px}.hero-corner{position:absolute;inset:22px -22px -22px 42%;z-index:-1;border:1px solid #cebcaf;border-radius:16px}.assurance-strip{border-block:1px solid var(--line);background:#fff}.assurance-inner{display:flex;justify-content:space-around;padding:20px 0;gap:24px}.assurance-inner span{display:flex;align-items:center;gap:12px;font-size:.82rem;font-weight:600}.assurance-inner .icon{color:var(--wine);width:18px;height:18px;flex-basis:18px}.section-heading{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:end;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading p:not(.eyebrow){max-width:510px;margin-bottom:6px;color:var(--muted)}.section-heading .text-link{margin-top:9px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{background:var(--sand);border:1px solid #e7e5dd;position:relative;border-radius:10px;padding:28px 25px 28px;text-decoration:none;transition:background var(--ease),transform var(--ease)}.service-card:hover{background:#eee7df;transform:translateY(-5px)}.service-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;color:var(--wine)}.service-number{font-weight:650;font-size:.78rem;letter-spacing:.04em;color:var(--wine);display:block}.service-card-top .icon{width:21px;height:21px}.service-card h3{font-size:1.25rem;max-width:215px;min-height:52px}.service-card p{font-size:.91rem;color:var(--muted);margin:0}.feature-project{padding:88px 0;background:#20241f;color:#f8f6f0}.project-split{display:grid;grid-template-columns:1.1fr .9fr;gap:78px;align-items:center}.project-visual{position:relative}.project-cover img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:12px}.photo-label{position:absolute;bottom:18px;left:18px;background:#f8f6ed;color:#242922;border-radius:4px;padding:9px 12px;font-size:.7rem;font-weight:650}.project-copy .eyebrow{color:#e8b9b0}.project-copy h2{font-size:clamp(2.1rem,3.6vw,3.25rem)}.project-copy p{color:#c6cbc1}.project-tags{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}.project-tags span{border:1px solid #d8d5ca;border-radius:4px;padding:6px 10px;font-size:.73rem}.project-copy .project-tags span{border-color:#525c4f;color:#e4e9dd}.project-copy .small-note{margin-top:22px;color:#c4cabc}.machine-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.machine-copy .lead{font-size:1.16rem}.machine-copy>p:not(.eyebrow){color:var(--muted)}.machine-visual{position:relative;padding:0 0 28px 25px}.machine-visual>picture>img{width:100%;aspect-ratio:1.1;object-fit:cover;border-radius:12px}.image-note{position:absolute;bottom:0;left:0;background:var(--wine);color:white;padding:20px 28px;border:6px solid #fff;border-radius:10px;min-width:240px}.image-note .eyebrow{font-size:.64rem;color:#edc3c6;display:block;margin:0 0 9px}.image-note strong{font-size:1.1rem;line-height:1.5}.tick-list{list-style:none;padding:0;margin:26px 0}.tick-list li{display:flex;gap:10px;align-items:flex-start;margin:14px 0;font-size:.9rem}.tick-list .icon{color:var(--wine);width:20px;height:20px;flex-basis:20px;margin-top:2px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px;margin-top:40px}.steps article{border-top:1px solid #bebab0;padding-top:23px}.steps article>span{font-weight:650;font-size:.77rem;color:var(--wine);display:block;margin-bottom:27px}.steps p{color:var(--muted);font-size:.93rem;margin-bottom:0}.areas-home{display:grid;grid-template-columns:1fr .82fr;gap:115px;align-items:center}.areas-home p:not(.eyebrow){max-width:490px;color:var(--muted)}.area-list a{display:flex;justify-content:space-between;align-items:center;padding:23px 3px;border-bottom:1px solid var(--line);font-size:1.35rem;text-decoration:none}.area-list a:first-child{border-top:1px solid var(--line)}.area-list a:hover{color:var(--wine)}.area-list .icon{color:var(--wine);width:20px;height:20px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}.faq-grid>div:first-child>p:not(.eyebrow){color:var(--muted);max-width:410px}.faq-list{border-top:1px solid #bebeb2}.faq-list details{border-bottom:1px solid #bebeb2}.faq-list summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;gap:25px;align-items:center;font-weight:650;font-size:1rem;line-height:1.4}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary .icon{color:var(--wine);width:18px;height:18px;flex-basis:18px;transition:transform var(--ease)}.faq-list details[open] summary .icon{transform:rotate(45deg)}.faq-list details>div{padding:0 28px 4px 0}.faq-list p{font-size:.94rem;color:var(--muted)}.cta-section{padding:76px 0;background:#eee5dc;border-top:1px solid #e0d6ca}.cta-inner{display:flex;gap:65px;justify-content:space-between;align-items:center}.cta-inner>div:first-child{max-width:700px}.cta-inner h2{font-size:clamp(2.1rem,3.5vw,3rem);max-width:670px;margin-bottom:17px}.cta-inner p:not(.eyebrow){color:#5a5e54;margin-bottom:0;max-width:620px}.cta-inner .eyebrow{margin-bottom:15px}.cta-actions{display:flex;flex-direction:column;gap:12px;flex-shrink:0}.cta-actions .btn{min-width:235px}
/* Inner pages */
.page-intro{background:var(--sand);padding:32px 0 65px;border-bottom:1px solid #e6e4db}.page-intro h1{max-width:940px;font-size:clamp(2.8rem,4.6vw,4.3rem);margin-bottom:24px}.page-intro .lead{max-width:740px;margin-bottom:0}.page-intro .eyebrow{margin-top:34px;margin-bottom:20px}.breadcrumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.76rem;color:var(--muted)}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.services-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:82px;align-items:start}.services-aside{position:sticky;top:150px}.services-aside>picture>img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 53%;border-radius:12px}.aside-note{padding:26px;background:var(--sand);border-radius:12px;margin-top:20px}.aside-note h2{font-family:inherit;font-size:1.25rem;font-weight:650;letter-spacing:-.02em;line-height:1.3;margin-bottom:14px}.aside-note p{font-size:.95rem;color:var(--muted)}.aside-note .btn{font-size:.85rem}.service-detail{display:grid;grid-template-columns:35px 1fr;gap:18px;border-top:1px solid var(--line);padding:33px 0;scroll-margin-top:150px}.service-detail:last-child{border-bottom:1px solid var(--line)}.service-detail h2{font-family:inherit;letter-spacing:-.025em;font-weight:650;line-height:1.3;font-size:1.4rem;margin-bottom:14px}.service-detail .service-number{padding-top:6px}.service-detail p{color:var(--muted);margin-bottom:12px}.service-detail .detail-note{font-size:.85rem;border-left:2px solid #bcb5a4;padding-left:12px}.service-detail .text-link{font-size:.88rem}.rounded-photo>img{border-radius:12px;width:100%}.area-cards{display:grid;grid-template-columns:1fr 1fr;gap:26px}.area-card{padding:32px 34px;border:1px solid var(--line);border-radius:10px}.area-card .service-number{margin-bottom:25px}.area-card h2{font-size:2.2rem;margin-bottom:14px}.area-card p{color:var(--muted);font-size:.96rem}.area-card .text-link{font-size:.91rem}.album-card{display:grid;grid-template-columns:1.2fr 1fr;border-radius:16px;overflow:hidden;background:var(--ink);color:white;text-decoration:none}.album-cover{overflow:hidden}.album-cover img{width:100%;height:100%;aspect-ratio:1.5;object-fit:cover;transition:transform 400ms ease}.album-card:hover .album-cover img{transform:scale(1.025)}.album-copy{padding:50px;display:flex;flex-direction:column;justify-content:center}.album-copy .eyebrow{color:#ebbfc0}.album-copy h2{font-size:2.7rem}.album-copy>p:not(.eyebrow){color:#c4cbbf}.album-count{display:flex;align-items:center;gap:20px;font-weight:650;font-size:.89rem;margin-top:12px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.gallery-item{display:block;text-decoration:none;border-radius:10px;overflow:hidden;border:1px solid #dfdfd4;background:#fff;transition:box-shadow var(--ease)}.gallery-item picture{overflow:hidden}.gallery-item img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform 300ms ease}.gallery-item:hover img{transform:scale(1.04)}.gallery-item:hover{box-shadow:0 8px 26px #272d201c}.gallery-item__caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;min-height:80px;font-size:.83rem;line-height:1.5}.gallery-item__caption .icon{width:18px;height:18px;flex-basis:18px;color:var(--wine)}.project-intro{padding:65px 0 70px}.project-intro-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:72px;align-items:center}.project-intro-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.project-intro h2{font-size:2.65rem}.project-intro p:not(.eyebrow){color:var(--muted)}.project-intro .text-link{font-size:.92rem}.gallery-more{text-align:center;padding:32px 0 0}.gallery-more p{font-size:.88rem;color:var(--muted)}.back-link{padding-top:28px;padding-bottom:28px}.lightbox{background:#121611;color:white;padding:0;border:1px solid #555f50;border-radius:10px;width:min(1180px,94vw);max-height:94dvh;overflow:hidden}.lightbox::backdrop{background:rgba(0,0,0,.88)}.lightbox-toolbar{height:52px;display:flex;justify-content:space-between;align-items:center;padding:5px 10px 5px 22px}.lightbox-toolbar p{margin:0;font-size:.8rem;color:#d2d9cd}.lightbox button{background:transparent;border:1px solid #788370;border-radius:6px;color:white;width:42px;height:42px;display:grid;place-items:center}.lightbox button:hover{background:#3b4335}.lightbox-stage{position:relative;display:flex;justify-content:center;align-items:center;min-height:200px;background:#0e100d}.lightbox-image{max-height:calc(94dvh - 125px);width:auto;max-width:calc(100% - 112px);object-fit:contain}.lightbox-prev,.lightbox-next{position:absolute;top:calc(50% - 21px);z-index:1}.lightbox-prev{left:9px}.lightbox-prev svg{transform:rotate(180deg)}.lightbox-next{right:9px}.lightbox-caption{padding:14px 22px;margin:0;font-size:.86rem;text-align:center;color:#e6e8e1;line-height:1.5}
/* Contact */
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:58px;align-items:start}.direct-card{background:#252a23;color:white;border-radius:14px;padding:35px 30px}.direct-card .eyebrow{color:#efc6bd}.direct-card h2{font-size:2.7rem}.direct-card>p:not(.eyebrow){color:#d1d5cc}.direct-phone{margin:28px 0 22px}.direct-phone>span{display:block;text-transform:uppercase;font-size:.67rem;font-weight:650;letter-spacing:.12em;color:#dfb7b6;margin-bottom:4px}.direct-phone>a{font-size:1.7rem;text-decoration:none;letter-spacing:-.02em;font-weight:600}.direct-card .btn{width:100%}.named-email{margin-top:26px}.named-email>span{display:block;font-size:.72rem;color:#dfb7b6;letter-spacing:.04em;margin-bottom:3px}.named-email>a{font-size:.94rem;overflow-wrap:anywhere;text-decoration:none}.named-email>a:hover{text-decoration:underline}.direct-card .availability{font-size:.8rem;margin:28px 0 0;border-top:1px solid #4b5345;padding-top:20px}.contact-help{border:1px solid var(--line);padding:26px 28px;border-radius:12px;margin-top:23px}.contact-help p{font-size:.94rem;color:var(--muted)}.contact-help .text-link{font-size:.88rem}.form-panel{border:1px solid var(--line);padding:36px;border-radius:14px}.form-panel .eyebrow{margin-bottom:14px}.form-panel h2{font-size:2.55rem;margin-bottom:15px}.form-intro{font-size:.88rem;color:var(--muted);margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 18px}.field{min-width:0}.field label{display:block;font-size:.82rem;font-weight:650;margin:0 0 8px}.field label>span{color:var(--wine)}.field label>small{font-weight:400;color:var(--muted);font-size:.77rem}.field input,.field select,.field textarea{width:100%;padding:12px 12px;border:1px solid #aeb4a8;border-radius:6px;min-height:48px;background:#fff;color:var(--ink);font-size:16px;max-width:100%}.field select{padding-right:20px}.field textarea{resize:vertical;min-height:135px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--wine)}.field input[aria-invalid="true"],.field select[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:#b62e27;background:#fff8f7}.field--full{grid-column:1/-1}.field-hint{display:block;line-height:1.55;font-size:.75rem;color:#62685d;margin-top:5px}.field-hint:empty{display:none}.consent{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:.8rem;line-height:1.6}.consent input{width:18px;height:18px;margin:4px 0 0;flex-shrink:0;accent-color:var(--wine)}.consent a{color:var(--wine)}#turnstile-widget{margin:20px 0 0;min-height:0}.form-submit{margin-top:24px}.form-submit .btn{width:100%;margin-bottom:13px}.form-submit .small-note{text-align:center;font-size:.76rem}.form-fallback{padding-top:21px;margin:22px 0 0;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}.form-fallback a{color:var(--wine)}.form-status{border:1px solid #c0c7b8;background:#f0f5e9;padding:16px 18px;margin:0 0 25px;border-radius:6px;font-size:.88rem;line-height:1.7}.form-status.error{background:#fff3eb;border-color:#c89e89;color:#593126}.form-status.success{background:#eaf5e9;color:#24542f;border-color:#9bbb9b}.form-status a{overflow-wrap:anywhere}.form-status ul{padding-left:22px;margin:12px 0 0}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-areas{display:flex;align-items:center;justify-content:space-between;gap:70px}.contact-areas>div{max-width:740px}.contact-areas .btn{flex-shrink:0}.contact-areas p{color:var(--muted)}.legal{max-width:830px}.legal h2{font-family:inherit;font-size:1.35rem;font-weight:650;letter-spacing:-.02em;margin:37px 0 15px;line-height:1.4}.legal p{color:#50574b;line-height:1.9}.legal .legal-date{font-size:.8rem;color:var(--muted);padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:27px}.legal a{color:var(--wine);overflow-wrap:anywhere}.notice{padding:18px 23px;background:var(--sand);border-left:3px solid var(--wine);margin:25px 0;font-size:.88rem;color:#51564b}.error-page{min-height:480px}.error-page h1{margin-top:25px}
/* Shared footer & actions. Use the exact approved footer artwork; no substituted logo. */
.site-footer{padding:58px 0 0;background:#161916;color:#d0d5ca}.footer-grid{display:grid;grid-template-columns:.88fr .75fr 1.14fr;gap:75px;padding-bottom:50px}.footer-brand>a{display:inline-block}.logo-footer{width:225px;height:225px;object-fit:contain;filter:drop-shadow(0 0 .6px #ece9dd) drop-shadow(0 0 .35px #ece9dd)}.footer-brand p{font-size:.82rem;line-height:1.8;margin:9px 0 0;color:#c3cabb}.footer-title{font-family:inherit;font-size:.72rem;line-height:1.5;font-weight:650;text-transform:uppercase;letter-spacing:.12em;color:#f6f5ed;margin:27px 0 22px}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin:11px 0}.footer-links a{font-size:.88rem;text-decoration:none}.footer-links a:hover{text-decoration:underline;color:white}.footer-phone{font-size:1.75rem;font-weight:600;text-decoration:none;letter-spacing:-.025em;color:#f7f7f0}.footer-contact>p{font-size:.78rem;margin:4px 0 18px;color:#bfc8b6}.email-pair{display:flex;flex-direction:column;gap:7px;margin:18px 0}.email-pair a{font-size:.88rem;text-decoration:none;overflow-wrap:anywhere}.email-pair a:hover{text-decoration:underline}.footer-contact .btn{font-size:.83rem;padding:12px 15px;min-height:48px;margin-top:11px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 25px;border-top:1px solid #3c4537;min-height:78px;padding-top:18px;padding-bottom:18px;color:#b9c0b3;font-size:.72rem}.footer-bottom p{margin:0}.footer-bottom>div{display:flex;gap:18px}.footer-bottom a{text-decoration:none}.footer-bottom a:hover{text-decoration:underline;color:white}.footer-bottom p:last-child a{color:#faf8f2;font-weight:650}.wa-float{position:fixed;right:22px;bottom:22px;z-index:45;border:2px solid white;background:#25d366;color:#102b19;display:flex;gap:10px;align-items:center;justify-content:center;min-height:54px;border-radius:999px;padding:11px 19px 11px 14px;box-shadow:0 5px 22px #0003;text-decoration:none;font-size:.84rem;font-weight:700}.wa-float .icon{height:28px;width:28px;flex-basis:28px}.wa-float:hover{background:#5cdf8c}.mobile-actions{display:none}
@media(min-width:1650px){.hero{padding:80px 0 86px}.hero-grid{gap:64px}}
@media(max-width:1180px){.wrap{width:calc(100% - 52px)}.nav{gap:17px}.nav>a{font-size:.8rem}.nav>.btn{padding:12px 13px;margin-left:0}.logo-header{width:144px}.header-inner{gap:16px;min-height:105px}.hero-grid{gap:34px}.hero-copy h1{font-size:3.8rem}.hero .btn{font-size:.8rem;padding:13px 14px;gap:8px}.hero-copy .eyebrow{font-size:.62rem}.hero-lead{font-size:1rem}.service-card{padding:24px 21px}.section-heading{gap:55px}.project-split{gap:48px}.machine-grid{gap:46px}.areas-home{gap:65px}.footer-grid{gap:40px}.contact-layout{gap:30px}.form-panel{padding:27px}.direct-card{padding:28px 23px}.named-email>a{font-size:.86rem}.services-layout{gap:48px}}
@media(max-width:980px){.nav{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 28px 24px;display:none;box-shadow:0 12px 14px #0000000f}.nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:5px}.nav>a{font-size:1rem;padding:11px 7px;white-space:normal}.nav>a[aria-current="page"]:not(.btn){box-shadow:none;text-decoration:underline}.nav>.btn{margin-top:10px}.menu-toggle{display:inline-flex}.header-inner{min-height:102px}.logo-header{width:147px;max-height:96px}.hero-grid{grid-template-columns:1fr 1fr;gap:28px}.hero-copy h1{font-size:3.05rem}.hero .actions .btn{padding:12px 14px;min-height:48px}.hero-visual .hero-image-caption{padding:17px 15px}.hero-image-caption>a{display:none}.hero-footnote{font-size:.8rem}.hero .eyebrow{flex-wrap:wrap}.service-grid{grid-template-columns:1fr 1fr}.service-card h3{min-height:0;max-width:none}.service-card-top{margin-bottom:25px}.section{padding:72px 0}.section-heading{gap:35px}.section-heading h2{font-size:2.75rem}.project-split{gap:34px;grid-template-columns:1fr 1fr}.project-copy h2{font-size:2.4rem}.project-copy p{font-size:.94rem}.machine-grid{gap:35px}.machine-grid h2{font-size:2.6rem}.machine-visual{padding-left:15px}.image-note{padding:14px 20px;min-width:210px}.steps{gap:28px}.areas-home{gap:45px}.faq-grid{gap:45px}.faq-grid h2{font-size:2.5rem}.cta-inner{gap:35px}.cta-actions .btn{min-width:205px}.footer-grid{grid-template-columns:.8fr .8fr 1.2fr;gap:24px}.footer-contact .email-pair a{font-size:.82rem}.logo-footer{width:185px;height:210px}.footer-title{font-size:.66rem;letter-spacing:.08em}.contact-layout{grid-template-columns:.85fr 1.15fr;gap:24px}.form-grid{grid-template-columns:1fr}.direct-card{padding:28px 21px}.direct-card h2{font-size:2.3rem}.form-panel h2{font-size:2.3rem}.named-email>a{font-size:.82rem}.photo-grid{gap:18px}.album-copy{padding:35px}.album-copy h2{font-size:2.2rem}.project-intro-grid{gap:38px}.project-intro h2{font-size:2.35rem}.services-layout{gap:35px}.services-aside .btn{width:100%}}
@media(max-width:760px){html{scroll-padding-top:105px}.wrap{width:calc(100% - 36px)}h1{font-size:3.2rem}h2{font-size:2.55rem}.section{padding:62px 0}.utility__inner{min-height:31px;font-size:.62rem;letter-spacing:0}.utility__dot{padding:0 5px}.utility a{gap:5px}.utility .icon{width:12px;height:12px;flex-basis:12px}.header-inner{min-height:89px}.logo-header{width:127px;max-height:85px}.hero{padding:36px 0 52px}.hero-grid{grid-template-columns:1fr;gap:33px}.hero-copy h1{font-size:clamp(2.8rem,8.3vw,4rem);margin-bottom:22px}.hero .eyebrow{font-size:.63rem;margin-bottom:20px}.hero-lead{font-size:1.04rem;max-width:580px;line-height:1.7;margin-bottom:23px}.hero .btn{font-size:.87rem;min-height:52px}.hero-footnote{max-width:520px;margin-top:18px}.hero-visual{margin-right:10px}.hero-corner{inset:15px -10px -12px 50%}.hero-image-caption>a{display:flex}.hero-image-caption{border-radius:0 0 10px 10px}.hero-image{border-radius:10px 10px 0 0}.assurance-inner{gap:10px;justify-content:space-between;padding:17px 0}.assurance-inner span{font-size:.66rem;line-height:1.45;gap:6px;max-width:130px}.assurance-inner .icon{width:15px;height:15px;flex-basis:15px}.section-heading{grid-template-columns:1fr;gap:23px;margin-bottom:31px}.section-heading h2{font-size:2.6rem}.eyebrow{font-size:.67rem;margin-bottom:17px}.section-heading p:not(.eyebrow){font-size:.95rem}.service-grid{gap:13px}.service-card{padding:22px 18px}.service-card h3{font-size:1.12rem}.service-card p{font-size:.86rem}.service-card-top{margin-bottom:24px}.feature-project{padding:57px 0}.project-split{grid-template-columns:1fr;gap:35px}.project-cover img{aspect-ratio:4/3}.project-copy h2{font-size:2.65rem}.project-copy p{font-size:1rem}.project-tags{margin:22px 0}.machine-grid{grid-template-columns:1fr;gap:35px}.machine-visual>picture>img{aspect-ratio:4/3;object-position:50% 40%}.machine-visual{padding-left:18px}.machine-grid h2{font-size:2.55rem}.steps{grid-template-columns:1fr;gap:27px}.steps article{padding-top:19px;display:grid;grid-template-columns:36px 1fr;column-gap:15px}.steps article>span{grid-row:1/3;margin:4px 0 0}.steps h3{margin-bottom:10px}.steps p{font-size:.96rem}.areas-home{grid-template-columns:1fr;gap:28px}.area-list a{padding:20px 0}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-grid h2{font-size:2.55rem}.faq-list summary{padding:20px 0;font-size:.97rem}.cta-section{padding:53px 0}.cta-inner{display:block}.cta-actions{margin-top:26px;flex-direction:row;flex-wrap:wrap}.cta-actions .btn{min-width:0}.cta-inner h2{font-size:2.5rem}.cta-inner p:not(.eyebrow){font-size:.94rem}.page-intro{padding:23px 0 46px}.page-intro h1{font-size:clamp(2.6rem,7.8vw,3.5rem)}.page-intro .lead{font-size:1.07rem}.page-intro .eyebrow{margin-top:29px}.breadcrumb{font-size:.7rem;gap:7px}.services-layout{grid-template-columns:1fr}.services-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:stretch}.services-aside>picture>img{height:100%;min-height:240px;aspect-ratio:auto}.aside-note{margin:0;padding:22px}.aside-note h2{font-size:1.13rem}.aside-note p{font-size:.85rem}.aside-note .btn{padding:12px 9px;font-size:.75rem;gap:6px}.service-detail{scroll-margin-top:115px}.area-cards{gap:18px}.area-card{padding:25px}.area-card h2{font-size:2rem}.area-card .text-link{font-size:.86rem;gap:8px}.album-card{grid-template-columns:1fr}.album-cover img{aspect-ratio:1.65}.album-copy{padding:30px}.album-copy h2{font-size:2.55rem}.album-copy .eyebrow{margin-bottom:15px}.photo-grid{grid-template-columns:1fr 1fr;gap:17px}.gallery-item__caption{font-size:.8rem;padding:13px;min-height:80px}.project-intro{padding:45px 0 50px}.project-intro-grid{grid-template-columns:1fr;gap:35px}.project-intro h2{font-size:2.6rem}.project-intro .project-intro-image img{aspect-ratio:4/3}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-aside{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.direct-card{padding:26px}.direct-card h2{font-size:2.3rem}.direct-card p{font-size:.95rem}.named-email>a{font-size:.86rem}.contact-help{margin:0;padding:24px}.contact-help .text-link{font-size:.82rem;gap:7px}.form-panel{padding:30px}.form-grid{grid-template-columns:1fr 1fr}.contact-areas{display:block}.contact-areas h2{font-size:2.5rem}.contact-areas .btn{margin-top:9px}.site-footer{padding-top:37px;padding-bottom:74px}.footer-grid{grid-template-columns:1fr 1fr;gap:15px 34px;padding-bottom:33px}.footer-brand{grid-column:1/-1;display:flex;gap:25px;align-items:center}.logo-footer{width:175px;height:185px}.footer-brand p{font-size:.82rem;max-width:230px}.footer-title{margin-top:15px;font-size:.7rem}.footer-phone{font-size:1.5rem}.footer-links a{font-size:.83rem}.footer-contact .email-pair a{font-size:.82rem}.footer-contact .btn{font-size:.72rem;padding:12px;gap:6px}.footer-bottom{gap:13px;flex-direction:column;align-items:flex-start;font-size:.72rem;padding-top:25px;padding-bottom:22px}.wa-float{display:none}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.1fr 1.2fr;background:#fff;border-top:1px solid #ced1c7;z-index:49;padding:7px 10px calc(7px + env(safe-area-inset-bottom));box-shadow:0 -4px 17px #00000010;gap:5px}.mobile-actions>a{display:flex;gap:7px;align-items:center;justify-content:center;padding:11px 5px;font-size:.75rem;font-weight:650;text-decoration:none;border-radius:5px;min-height:46px}.mobile-actions>a .icon{width:18px;height:18px;flex-basis:18px}.mobile-actions>a:last-child{color:white;background:var(--wine)}.mobile-actions .mobile-wa{background:#e7f7ec;color:#125c32}.lightbox{width:96vw;border-radius:7px}.lightbox-image{max-width:100%;max-height:calc(88dvh - 125px)}.lightbox-stage{min-height:180px}.lightbox-prev,.lightbox-next{background:#172013c9!important}.lightbox button{width:40px;height:42px}.lightbox-prev{left:5px}.lightbox-next{right:5px}.lightbox-caption{font-size:.8rem;padding:12px 18px}}
@media(max-width:500px){.hero .actions{display:grid;grid-template-columns:1.2fr 1fr;gap:9px}.hero .btn{font-size:.78rem;padding:13px 11px;gap:7px}.hero .btn .icon{width:17px;height:17px;flex-basis:17px}.hero-image-caption{font-size:.67rem;padding:16px 14px}.hero-image-caption b{font-size:.73rem}.hero-image-caption>a{font-size:.64rem;gap:5px}.assurance-inner{display:grid;grid-template-columns:1fr;gap:12px;padding:18px 0}.assurance-inner span{max-width:none;font-size:.77rem;gap:10px}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:20px 16px}.service-card h3{font-size:1.06rem}.service-card p{font-size:.84rem}.service-card-top{margin-bottom:22px}.service-number{font-size:.7rem}.project-copy h2{font-size:2.45rem}.project-copy .btn{width:100%}.project-tags{gap:6px}.project-tags span{font-size:.69rem}.cta-actions{display:flex;flex-direction:column}.cta-actions .btn{width:100%}.services-aside{display:block}.services-aside>picture>img{aspect-ratio:4/3;min-height:0}.aside-note{margin-top:17px}.aside-note .btn{width:auto;font-size:.84rem}.aside-note p{font-size:.94rem}.service-detail{grid-template-columns:29px 1fr;gap:12px;padding:28px 0}.service-detail h2{font-size:1.3rem}.service-detail p{font-size:.94rem}.area-cards{grid-template-columns:1fr}.area-card{padding:28px}.contact-aside{display:block}.direct-card{padding:30px 25px}.direct-card h2{font-size:2.7rem}.named-email>a{font-size:.94rem}.contact-help{margin-top:20px}.form-panel{padding:27px 21px}.form-panel h2{font-size:2.5rem}.form-grid{grid-template-columns:1fr}.form-submit .btn{font-size:.88rem;padding:15px 12px;gap:8px}.photo-grid{grid-template-columns:1fr 1fr;gap:13px}.gallery-item__caption{font-size:.72rem;line-height:1.45;padding:12px 11px;min-height:86px;align-items:flex-start;gap:6px}.gallery-item__caption .icon{width:15px;height:15px;flex-basis:15px}.gallery-item img{aspect-ratio:1}.gallery-load-more{font-size:.82rem}.album-copy{padding:27px}.album-copy h2{font-size:2.3rem}.footer-grid{grid-template-columns:1fr;gap:7px}.footer-brand{gap:21px}.logo-footer{width:158px;height:182px}.footer-brand p{font-size:.74rem;max-width:165px}.footer-title{margin:20px 0 14px;font-size:.74rem}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}.footer-links li{margin:4px 0;line-height:1.4}.footer-links a{font-size:.83rem}.footer-contact>p{font-size:.79rem}.footer-contact .email-pair a{font-size:.91rem}.footer-contact .btn{font-size:.84rem;padding:12px 18px}.footer-bottom{margin-top:6px}.legal h2{font-size:1.25rem}.legal p{font-size:.97rem}.error-page h1{font-size:3rem}}
@media(max-width:350px){.wrap{width:calc(100% - 28px)}.hero .actions{grid-template-columns:1fr}.hero-copy h1{font-size:2.72rem}.hero-image-caption>a{display:none}.service-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr}.gallery-item img{aspect-ratio:4/3}.gallery-item__caption{min-height:65px;font-size:.85rem}.direct-card{padding:26px 19px}.named-email>a{font-size:.85rem}.form-panel{padding:24px 17px}.footer-brand{display:block}.logo-footer{width:185px;height:195px}.footer-brand p{max-width:250px}.mobile-actions>a{font-size:.67rem;gap:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.btn:hover,.service-card:hover{transform:none}}
@media print{.utility,.site-header,.wa-float,.mobile-actions,.cta-section,.lightbox,.menu-toggle{display:none!important}body{font-size:11pt;color:black}.wrap{width:100%}.section{padding:20px 0}.site-footer{background:white;color:black;padding:20px 0}.site-footer a,.footer-title,.footer-phone{color:black}.page-intro{background:white}.hero-grid,.machine-grid,.contact-layout{display:block}.hero-visual{max-width:450px;margin-top:25px}.service-grid,.photo-grid{grid-template-columns:repeat(2,1fr)}.gallery-item{break-inside:avoid}.footer-contact .btn{display:none}.logo-footer{filter:none}.footer-brand{display:none}}

.noscript-nav{display:flex;flex-wrap:wrap;gap:10px 20px;padding-block:14px;font-size:.85rem}
.form-status>p:last-child{margin-bottom:0}.field-error{color:#923024;font-weight:600}

.wa-float.is-footer-visible{visibility:hidden;pointer-events:none}
@media(min-width:761px){.footer-bottom{padding-right:160px}}
