:root{--paper:#fff9eb;--offwhite:#f7f0e3;--cream:#fef8eb;--ink:#2b190f;--chocolate:#3e2118;--orange:#e96729;--orange-dark:#bb4921;--yellow:#f5b544;--teal:#2b6872;--muted:#75695d;--line:#dfd2bd;--font-body:'DM Sans',Arial,sans-serif;--font-head:'Space Grotesk','Arial Black',sans-serif;--font-slab:'Ultra',Georgia,serif;--max:1240px}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font:16px/1.5 var(--font-body);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,select,input,textarea{-webkit-tap-highlight-color:transparent}::selection{background:var(--yellow);color:var(--ink)}.wrap{width:min(var(--max),calc(100% - 88px));margin:0 auto}.icon-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round;stroke-linecap:round}.skip{position:absolute;left:12px;top:-60px;z-index:200;background:#fff;padding:10px 20px}.skip:focus{top:10px}.section{padding:112px 0}.eyebrow{font:800 12px/1.3 var(--font-head);letter-spacing:.14em;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px;color:#4b3226}.eyebrow>span{color:var(--orange)}.eyebrow-light{color:#fef0d4}.eyebrow-light>span{color:#ffb44d}h1,h2,h3,p{margin:0}h2{font:700 clamp(48px,6.3vw,84px)/.99 var(--font-head);letter-spacing:-.072em;text-transform:uppercase}h2 i{font-style:normal;color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;border-radius:12px;border:2px solid var(--ink);min-height:55px;padding:0 21px;font:800 12px/1.1 var(--font-head);letter-spacing:.045em;text-transform:uppercase;box-shadow:4px 5px 0 var(--ink);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;white-space:nowrap}.button svg{height:19px;width:19px;transition:transform .22s}.button:hover{transform:translate(2px,2px);box-shadow:2px 3px 0 var(--ink)}.button:hover svg{transform:translate(3px,-3px)}.button:active{transform:translate(4px,5px);box-shadow:none}.button-dark{background:var(--ink);color:#fff8e8;border-color:var(--ink);box-shadow:4px 5px 0 #ca9a66}.button-orange{color:#26170f;background:var(--yellow);border-color:var(--ink)}.button-orange:hover{background:#ffce67}.button-cream{background:#fff6e3;color:var(--ink);box-shadow:4px 5px 0 #a85a32}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #1377a0;outline-offset:4px}
/* Banner, navigation */
.announcement{background:var(--ink);color:#f7e8ca}.announcement-inner{min-height:37px;display:flex;justify-content:space-between;align-items:center;gap:20px;font:800 10px/1.25 var(--font-head);letter-spacing:.11em}.announcement-left{display:flex;align-items:center;gap:9px}.announce-star{font-size:18px;color:var(--yellow);line-height:0}.announcement-inner>a{display:flex;gap:7px;align-items:center;white-space:nowrap}.announcement-inner svg{height:13px;width:13px;color:var(--yellow)}.site-header{background:#fffaf0;position:sticky;z-index:100;top:0;border-bottom:2px solid var(--ink)}.nav-bar{display:flex;align-items:center;min-height:89px;gap:24px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{height:58px;width:58px;background:#fbd28a;border:2px solid var(--ink);border-radius:12px;display:grid;place-items:center;overflow:hidden;box-shadow:3px 3px 0 var(--ink)}.brand-mark img{height:53px;width:53px;object-fit:contain}.brand-text{display:flex;flex-direction:column;gap:0;white-space:nowrap}.brand-text strong{font:700 23px/1 var(--font-head);letter-spacing:-.075em}.brand-dot{color:var(--orange)}.brand-text small{font:800 9px/1.4 var(--font-head);letter-spacing:.12em;margin-top:4px}.nav-links{display:flex;align-items:center;justify-content:center;gap:clamp(18px,2.4vw,33px);margin-left:auto}.nav-links>a{font-size:13px;font-weight:800;white-space:nowrap;transition:color .2s}.nav-links>a:hover{color:var(--orange-dark)}.nav-links .mobile-nav-cta{display:none}.nav-cta{margin-left:11px;min-height:47px;padding:0 15px;font-size:11px;gap:15px;box-shadow:3px 4px 0 #d2bfa4}.menu-toggle{display:none;background:transparent;border:0;padding:10px}
/* Hero */
.hero{background:#fff8e9;position:relative;overflow:hidden;isolation:isolate}.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(#b882602c 1px,transparent 1px);background-size:22px 22px;opacity:.5;z-index:-1}.hero::after{content:"";position:absolute;width:530px;height:530px;right:-280px;top:-160px;border:2px dashed #dda95a;transform:rotate(17deg);border-radius:50%;opacity:.7;z-index:-1}.hero-grid{min-height:701px;display:grid;grid-template-columns:54% 46%;align-items:center;position:relative;padding:74px 0 92px}.hero-copy{position:relative;z-index:3;padding-top:18px}.hero-kicker{display:flex;align-items:center;gap:10px;font:800 11px/1.3 var(--font-head);letter-spacing:.09em;color:#7b5135;margin-bottom:26px}.mini-star{background:var(--yellow);border:2px solid var(--ink);width:29px;height:29px;border-radius:50%;display:grid;place-items:center;font-size:13px;color:var(--ink);flex-shrink:0}.kicker-line{height:2px;width:26px;background:#af997d}.hero h1{font:700 clamp(54px,6.4vw,91px)/.91 var(--font-head);letter-spacing:-.085em;text-transform:uppercase;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--orange)}.hero-last{font-size:.85em;letter-spacing:-.085em}.period{color:var(--orange)}.hero-desc{font-size:17px;line-height:1.7;color:#68584b;max-width:485px;margin-top:28px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:33px}.hero-actions .button{min-height:58px}.text-action{font:800 12px/1.4 var(--font-head);letter-spacing:.035em;display:inline-flex;align-items:center;gap:13px;border-bottom:2px solid var(--ink);padding-bottom:6px;white-space:nowrap}.text-action span{font-size:22px}.hero-trust{display:flex;align-items:center;gap:13px;margin-top:47px}.hero-trust-icon{border:2px solid var(--ink);width:38px;height:38px;display:grid;place-items:center;background:#dbecd6;border-radius:50%;flex:none}.hero-trust-icon svg{width:22px;height:22px;stroke-width:3}.hero-trust b{display:block;font:800 11px/1.2 var(--font-head);letter-spacing:.07em}.hero-trust small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.hero-showcase{position:relative;height:590px;margin-left:-15px;display:grid;place-items:center}.hero-visual-ring{position:absolute;width:470px;height:470px;background:#f6c06a;border:2px solid var(--ink);border-radius:50%;right:8px;top:57px;box-shadow:22px 20px 0 #f4d6a1}.hero-visual-ring:before,.hero-visual-ring:after{content:"✳";position:absolute;font-size:43px;color:#fff4d6}.hero-visual-ring:before{top:15px;right:45px}.hero-visual-ring:after{bottom:42px;left:22px;font-size:24px}.hero-photo{position:absolute;right:-20px;top:112px;width:495px;height:375px;overflow:hidden;border:5px solid var(--ink);border-radius:120px 32px 35px 30px;transform:rotate(2.2deg);box-shadow:13px 15px 0 var(--ink);background:#b9d5c2}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-floating-badge{position:absolute;left:-27px;top:42px;width:222px;aspect-ratio:1;background:#fdf8e8;border:4px solid var(--ink);border-radius:50%;box-shadow:7px 9px 0 var(--ink);transform:rotate(-11deg);z-index:2;display:flex;align-items:center;flex-direction:column;justify-content:center}.hero-floating-badge:after{content:"";position:absolute;inset:12px;border:2px dashed #bd7e38;border-radius:50%;pointer-events:none}.badge-curved,.badge-bottom{position:relative;z-index:3;font:800 12px/1.2 var(--font-head);letter-spacing:.09em}.badge-curved{margin-top:12px}.badge-bottom{margin-top:-1px}.badge-bottom span{color:var(--orange)}.floating-badge-inside{width:142px;height:142px;display:grid;place-items:center;position:relative;z-index:3}.floating-badge-inside img{height:151px;width:151px;object-fit:contain;transform:rotate(10deg)}.hero-corner-note{position:absolute;right:-13px;bottom:48px;display:flex;align-items:center;gap:10px;font:800 13px/1.2 var(--font-head);transform:rotate(-7deg)}.note-circle{display:grid;place-items:center;background:#e96729;color:#fff4d8;width:55px;height:55px;border:3px solid var(--ink);border-radius:50%;font-size:30px;box-shadow:4px 4px 0 var(--ink)}.hero-sketch{position:absolute;right:5px;top:26px;color:var(--orange);font-size:60px}.hero-deco{position:absolute;color:#ebb966}.star-a{left:13px;top:78px;font-size:39px}.star-b{left:47%;bottom:23px;font-size:29px}.hero-bottom-cut{position:absolute;bottom:-20px;left:0;right:0;height:38px;background:var(--paper);clip-path:polygon(0 40%,3% 30%,6% 45%,9% 25%,12% 40%,15% 20%,18% 38%,21% 25%,24% 38%,27% 23%,30% 40%,33% 26%,36% 40%,39% 21%,42% 39%,45% 24%,48% 40%,51% 28%,54% 45%,57% 26%,60% 41%,63% 25%,66% 38%,69% 23%,72% 39%,75% 24%,78% 43%,81% 27%,84% 44%,87% 24%,90% 43%,93% 26%,96% 43%,100% 27%,100% 100%,0 100%)}
/* Ticker */
.marquee{background:var(--yellow);border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);transform:rotate(-1.1deg) scale(1.02);overflow:hidden;min-height:62px;display:flex;align-items:center;position:relative;z-index:3}.marquee-track{display:flex;align-items:center;gap:28px;white-space:nowrap;width:max-content;animation:marquee 29s linear infinite}.marquee-track span{font:700 17px/1 var(--font-head);letter-spacing:.085em}.marquee-track b{font-size:27px;color:#9d4921}@keyframes marquee{to{transform:translateX(-50%)}}
/* Services */
.services{background:var(--paper);padding-top:124px}.section-intro{margin-bottom:44px}.split-intro{display:flex;justify-content:space-between;align-items:end;gap:55px}.split-intro h2{margin-top:17px}.split-intro>p,.work-intro-end>p{max-width:340px;color:var(--muted);font-size:16px;line-height:1.75;padding-bottom:5px}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-card{display:block;background:#fffcf4;border:2px solid var(--ink);border-radius:17px;overflow:hidden;box-shadow:4px 5px 0 var(--ink);transition:transform .22s,box-shadow .22s}.service-card:hover{transform:translateY(-5px) rotate(-.5deg);box-shadow:6px 11px 0 var(--ink)}.service-image{height:224px;position:relative;background:#d3ddd0;overflow:hidden;border-bottom:2px solid var(--ink)}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover .service-image img{transform:scale(1.055)}.service-index{position:absolute;top:15px;left:16px;display:grid;place-items:center;background:#fff5dc;border:2px solid var(--ink);border-radius:99px;width:38px;height:38px;font:800 12px var(--font-head)}.service-body{padding:22px 22px 25px}.service-tag{display:inline-block;font:800 9px/1 var(--font-head);color:var(--orange-dark);letter-spacing:.13em;margin-bottom:9px}.service-title-row{display:flex;gap:6px;align-items:center;justify-content:space-between}.service-title-row h3{font:700 clamp(23px,2.5vw,29px)/1 var(--font-head);letter-spacing:-.06em}.service-arrow{background:var(--yellow);border:2px solid var(--ink);width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:22px;font-weight:700;flex:none}.service-body>p{font-size:13px;color:var(--muted);line-height:1.6;margin-top:10px}.service-note{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:34px;font:800 11px/1.5 var(--font-head);letter-spacing:.045em}.service-note>span{font-size:25px;color:var(--orange)}.service-note a{border-bottom:2px solid var(--ink)}.service-note a span{font-size:16px}
/* Finder */
.finder-section{background:#f1ead8;border-top:1px solid #d4c7ae;border-bottom:1px solid #d4c7ae}.finder-shell{display:grid;grid-template-columns:31% minmax(0,69%);gap:36px;align-items:center}.finder-heading h2{font-size:clamp(46px,5.4vw,70px);margin:21px 0 21px}.finder-heading>p{font-size:16px;color:#6c5d50;max-width:320px;line-height:1.75}.finder-window{min-width:0;border:2px solid var(--ink);border-radius:18px;background:#fffaf1;box-shadow:8px 9px 0 var(--ink);overflow:hidden}.finder-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:#faf1df;border-bottom:2px solid var(--ink)}.finder-tab{background:transparent;border:0;border-right:2px solid var(--ink);min-height:65px;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;font:800 11px/1.15 var(--font-head);padding:10px;letter-spacing:-.02em;color:#6a5545;transition:background .2s}.finder-tab:last-child{border-right:0}.finder-tab span{font-size:18px}.finder-tab.is-active{background:var(--yellow);color:var(--ink)}.finder-tab:hover:not(.is-active){background:#ffedce}.finder-panel{display:grid;grid-template-columns:56% 44%;min-height:369px}.finder-visual{position:relative;overflow:hidden;border-right:2px solid var(--ink);background:#c9d9c5}.finder-visual>img{height:100%;width:100%;object-fit:cover}.finder-stamp{position:absolute;right:13px;bottom:16px;transform:rotate(-8deg);font:800 11px/1.1 var(--font-head);text-align:center;background:#fff9e7;border:2px solid var(--ink);border-radius:50%;width:108px;height:108px;display:grid;place-items:center;box-shadow:4px 4px 0 var(--ink)}.finder-detail{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:28px}.finder-detail>span{font:800 10px/1.2 var(--font-head);letter-spacing:.12em;color:var(--orange-dark)}.finder-detail h3{font:700 clamp(28px,3.5vw,46px)/1.03 var(--font-head);letter-spacing:-.07em;margin:17px 0}.finder-detail p{font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:25px}.finder-detail .button{font-size:10px;min-height:48px;gap:10px;padding:0 15px}
/* Values */
.values{background:var(--chocolate);position:relative;color:#fff9ec;overflow:hidden;padding:114px 0 140px}.values::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 89px,#ffffff06 90px,transparent 91px),radial-gradient(circle at 10% 20%,#ac63252e,transparent 39%)}.values-grid{position:relative;display:grid;grid-template-columns:56% 44%;gap:40px;align-items:center}.values-copy h2{margin:24px 0 27px;font-size:clamp(47px,5.55vw,79px)}.values-copy h2 i{color:#ffc262}.values-copy>p{color:#ead6c0;max-width:560px;line-height:1.8;font-size:16px;margin-bottom:31px}.values-right{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:535px}.value-card{border:2px solid #fff3d9;border-radius:13px;box-shadow:5px 5px 0 #24130d}.value-main{background:var(--yellow);color:var(--ink);grid-column:span 2;padding:22px 25px;position:relative}.value-card-top{font:800 11px/1 var(--font-head);letter-spacing:.13em;display:flex;justify-content:space-between}.value-card-top span{font-size:24px}.value-large{font:700 96px/.95 var(--font-head);letter-spacing:-.08em;margin:4px 0}.value-large span{color:var(--orange);font-size:64px}.value-main strong{font:800 15px/1.2 var(--font-head)}.value-main p{font-size:12px;line-height:1.5;margin-top:8px;color:#67462a}.value-secondary{display:flex;align-items:flex-start;gap:10px;background:#533025;padding:21px 16px;min-height:157px}.value-small-icon{width:35px;height:35px;flex:none;display:grid;place-items:center;background:#ed9160;border:2px solid #fff1d6;color:var(--ink);font-weight:900;border-radius:50%;font-size:20px}.value-secondary strong{font:800 13px/1.35 var(--font-head)}.value-secondary p{font-size:12px;line-height:1.5;margin-top:8px;color:#ecd6bd}.values-fence{position:absolute;bottom:-14px;height:69px;left:0;right:0;display:flex;justify-content:space-around;gap:7px;overflow:hidden}.values-fence span{position:relative;background:#bf7c42;border:2px solid #281810;width:calc(100% / 20);height:76px;border-radius:12px 12px 0 0;transform:translateY(1px)}.values-fence span:nth-child(3n){background:#db9552}.values-fence span:nth-child(4n){background:#a76938}.values-fence span:before{content:"";position:absolute;left:24%;top:11px;height:39px;width:3px;border-radius:10px;background:#f2bd79;opacity:.58}
/* Work */
.work{background:var(--paper)}.work-intro-end{display:flex;flex-direction:column;align-items:flex-start;gap:17px}.outline-action{display:inline-flex;align-items:center;gap:11px;font:800 11px/1.3 var(--font-head);padding-bottom:6px;border-bottom:2px solid var(--ink);letter-spacing:.04em}.outline-action svg{width:16px;height:16px}.project-grid{display:grid;grid-template-columns:1.25fr .85fr .85fr;gap:20px}.project{min-width:0;display:block;border:2px solid var(--ink);border-radius:14px;overflow:hidden;box-shadow:5px 6px 0 var(--ink);background:#fff7e8;transition:transform .2s}.project:hover{transform:translateY(-5px)}.project-img{height:290px;position:relative;background:#bfd2c1;overflow:hidden}.project-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.project:hover .project-img img{transform:scale(1.05)}.project-img .gallery-fallback{position:absolute;inset:0;z-index:0}.project-img .gallery-real{position:absolute;inset:0;z-index:1;opacity:0}.project-img .gallery-real.is-loaded{opacity:1}.project-img .gallery-real.is-broken{display:none}.project-caption{border-top:2px solid var(--ink);display:flex;justify-content:space-between;gap:8px;align-items:center;padding:18px;background:#fffaf1;min-height:96px}.project-caption small{font:800 9px/1.3 var(--font-head);letter-spacing:.1em;color:var(--orange-dark)}.project-caption h3{font:700 clamp(17px,2vw,23px)/1.15 var(--font-head);letter-spacing:-.055em;margin-top:6px}.project-caption>span{flex:none;width:34px;height:34px;background:var(--yellow);border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:700 22px var(--font-head)}.gallery-disclaimer{font-size:12px;line-height:1.5;color:#8b8072;margin-top:21px}.gallery-disclaimer a{font-weight:800;color:#674329;text-decoration:underline;text-underline-offset:3px}
/* Process */
.process{background:var(--yellow);border-top:3px solid var(--ink);border-bottom:3px solid var(--ink)}.process-head{text-align:center;max-width:640px;margin:0 auto 48px}.process-head h2{margin:16px 0}.process-head h2 i{color:#c44e28}.process-head>p{font-size:15px;line-height:1.7;max-width:505px;margin:0 auto;color:#68452e}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step{min-height:285px;border:2px solid var(--ink);border-radius:12px;box-shadow:5px 6px 0 var(--ink);background:#fff9e9;padding:24px 27px}.step-number{font:800 11px/1 var(--font-head);display:flex;align-items:center;justify-content:space-between;letter-spacing:.1em}.step-number span{font-size:27px;color:#d8753a}.step-symbol{width:61px;height:61px;border-radius:50%;background:#eecb9e;border:2px solid var(--ink);display:grid;place-items:center;font-size:39px;font-weight:bold;color:var(--chocolate);margin:17px 0 19px}.step-symbol svg{width:31px;height:31px}.step:nth-child(2) .step-symbol{background:#c8e3df}.step:nth-child(3) .step-symbol{background:#f7b07c}.step h3{font:700 25px/1.1 var(--font-head);letter-spacing:-.06em}.step p{font-size:13px;line-height:1.7;color:#736759;margin-top:11px;max-width:300px}
/* FAQ */
.faq{background:#fff9ed}.faq-grid{display:grid;grid-template-columns:41% 59%;gap:35px}.faq-heading h2{font-size:clamp(45px,5.5vw,73px);margin:22px 0}.faq-heading>p{max-width:350px;line-height:1.75;color:var(--muted)}.faq-side-stamp{margin-top:45px;width:154px;height:154px;border:2px dashed #cf8d45;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;transform:rotate(-11deg);font:700 24px/1.04 var(--font-head);letter-spacing:-.05em;background:#f9e5be}.faq-side-stamp span{color:var(--orange);font-size:34px}.faq-list{border-top:2px solid var(--ink)}.faq-list details{border-bottom:2px solid #dfd3c2}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 4px;font:700 19px/1.3 var(--font-head);letter-spacing:-.045em;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list .plus{width:32px;height:32px;flex:none;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;background:var(--yellow);font:500 26px/1 var(--font-head);transition:transform .2s}.faq-list details[open] .plus{transform:rotate(45deg)}.faq-list details p{font-size:14px;line-height:1.8;color:#6e6154;max-width:600px;padding:0 42px 22px 4px}
/* Contact/quote */
.estimate{background:#f1e9d6}.estimate-card{display:grid;grid-template-columns:44% 56%;overflow:hidden;border:3px solid var(--ink);border-radius:20px;background:#fff9ec;box-shadow:9px 10px 0 var(--ink)}.estimate-aside{background:var(--orange);color:#fff7e8;padding:49px 43px 38px;position:relative;overflow:hidden;display:flex;flex-direction:column}.estimate-aside:before{content:"";position:absolute;width:440px;height:440px;border:2px dashed #ffffff6c;border-radius:50%;left:-125px;top:235px}.estimate-aside h2{font-size:clamp(47px,5vw,71px);margin-top:25px}.estimate-aside h2 span{color:#ffc862}.estimate-aside>p{font-size:15px;line-height:1.7;color:#fff3e2;max-width:360px;margin-top:19px}.estimate-mascot{position:relative;margin:15px auto 4px;height:234px;width:240px;display:grid;place-items:center;flex:1;min-height:215px}.estimate-mascot:before{content:"";position:absolute;inset:18px 8px;border-radius:50%;background:#ffcb6d;border:4px solid var(--ink);box-shadow:8px 9px 0 #a43c23}.estimate-mascot img{position:relative;height:219px;width:222px;object-fit:contain;transform:rotate(-8deg)}.mascot-star{position:absolute;z-index:3;color:#fff5d4;font-size:42px}.star-one{left:-22px;top:9px}.star-two{right:-11px;bottom:16px}.contact-options{position:relative;margin-top:auto;border-top:1px solid #ffffff80;padding-top:21px;display:grid;gap:11px}.contact-options a{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;overflow-wrap:anywhere}.contact-options svg{width:17px;height:17px;flex-shrink:0}.estimate-form-panel{padding:45px clamp(28px,3.5vw,54px)}.form-heading{margin-bottom:31px}.form-heading>span{font:800 10px/1 var(--font-head);letter-spacing:.13em;color:#a45f32}.form-heading h3{font:700 clamp(29px,3.5vw,45px)/1.1 var(--font-head);letter-spacing:-.07em;margin-top:12px}.form-heading h3 span{color:var(--orange)}#quote-form{display:grid;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}#quote-form label{display:flex;flex-direction:column;gap:8px;font:800 11px/1.3 var(--font-head);letter-spacing:.035em}#quote-form label .required{display:inline}#quote-form input,#quote-form select,#quote-form textarea{border:2px solid #d9cbb8;background:#fffef8;border-radius:8px;color:var(--ink);min-height:51px;padding:12px 14px;width:100%;min-width:0;outline:none;box-shadow:none;transition:border-color .2s,box-shadow .2s;font:500 14px/1.5 var(--font-body)}#quote-form textarea{resize:vertical;min-height:103px}#quote-form input:focus,#quote-form select:focus,#quote-form textarea:focus{border-color:var(--chocolate);box-shadow:0 0 0 3px #f5c7926b}#quote-form input::placeholder,#quote-form textarea::placeholder{color:#a89b8b}#quote-form select:invalid{color:#988a7a}#quote-form select option{color:var(--ink)}.form-submit{width:100%;margin-top:3px;justify-content:center;gap:22px}.form-privacy{display:flex;align-items:center;gap:8px;color:#7b705e;font-size:11px;line-height:1.5}.form-privacy svg{width:17px;height:17px;flex-shrink:0;stroke:#4d8262}.form-error{color:#a22b11;font-size:13px;font-weight:800}
/* Footer */
.site-footer{background:var(--ink);color:#fff1d9}.footer-main{padding:67px 0 65px;display:grid;grid-template-columns:1.35fr .8fr 1fr 1.2fr;gap:37px}.brand-in-footer .brand-mark{background:#ebbb70}.brand-in-footer .brand-text strong{font-size:22px}.footer-brand>p{margin-top:24px;color:#d9c3a8;font-size:14px;line-height:1.75}.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-nav h3{font:800 12px/1 var(--font-head);letter-spacing:.12em;margin-bottom:10px;color:#f6b74e}.footer-nav a,.footer-nav span{color:#d7c6ae;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.footer-nav a:hover{color:#fff}.footer-instagram{display:flex;align-items:center;gap:7px}.footer-instagram svg{width:17px;height:17px}.footer-cta>span{font:700 20px/1.2 var(--font-head);letter-spacing:-.05em;display:block;margin-bottom:23px}.footer-cta .button{font-size:10px;white-space:normal}.footer-hat{font-size:73px;color:var(--orange);margin-top:30px;transform:rotate(-17deg);line-height:1}.footer-bottom{border-top:1px solid #725a4c;padding:22px 0 28px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#c5ae97;font:800 10px/1.5 var(--font-head);letter-spacing:.045em}.footer-bottom a{color:#fff1d9}.footer-note{opacity:.65}
/* motion */
@media(min-width:900px){.service-card:nth-child(2){margin-top:25px;margin-bottom:-25px}.service-card:nth-child(5){margin-top:25px;margin-bottom:-25px}}
@media(max-width:1180px){.wrap{width:min(var(--max),calc(100% - 64px))}.nav-links{gap:17px}.nav-links>a{font-size:12px}.brand-text strong{font-size:21px}.brand-mark{width:52px;height:52px}.nav-cta{font-size:10px;padding:0 12px;gap:9px}.hero h1{font-size:clamp(58px,6.4vw,78px)}.hero-photo{width:455px;height:352px;right:-10px}.hero-floating-badge{left:-29px}.hero-visual-ring{width:437px;height:437px}.hero-actions{gap:20px}.button{gap:16px}.finder-shell{grid-template-columns:32% minmax(0,68%);gap:24px}.finder-heading h2{font-size:55px}}
@media(max-width:1020px){.nav-bar{min-height:77px}.nav-links{display:none;position:absolute;left:0;right:0;top:100%;background:#fff9eb;border-bottom:2px solid var(--ink);padding:22px 32px 30px;box-shadow:0 15px 25px #26130c20;flex-direction:column;gap:0;align-items:stretch}.nav-links.is-open{display:flex}.nav-links>a{padding:14px 0;border-bottom:1px solid #e8d5b8;font-size:17px}.nav-links .mobile-nav-cta{display:flex;justify-content:space-between;align-items:center;color:var(--orange-dark)}.menu-toggle{display:block;margin-left:auto;border:2px solid var(--ink);border-radius:9px;background:#ffdd91}.menu-toggle svg{width:26px;height:26px}.nav-cta{margin-left:auto}.hero-grid{grid-template-columns:54% 46%;min-height:650px;padding:62px 0 80px}.hero h1{font-size:clamp(53px,7.1vw,76px)}.hero-showcase{height:508px}.hero-visual-ring{width:370px;height:370px;top:52px}.hero-photo{width:395px;height:310px;top:106px}.hero-floating-badge{width:181px;top:25px;left:-12px}.floating-badge-inside{height:112px;width:110px}.floating-badge-inside img{height:119px;width:119px}.badge-curved,.badge-bottom{font-size:10px}.hero-corner-note{right:-6px;bottom:27px;font-size:11px}.hero-desc{font-size:15px}.finder-shell{grid-template-columns:1fr;gap:28px}.finder-heading{display:grid;grid-template-columns:1.2fr 1fr;column-gap:30px;align-items:end}.finder-heading .eyebrow{grid-column:1/-1}.finder-heading h2{font-size:64px;margin:18px 0 0}.finder-heading>p{padding-bottom:7px}.values-grid{grid-template-columns:51% 49%;gap:20px}.value-secondary{padding:15px 10px}.value-secondary strong{font-size:11px}.project-grid{gap:13px}.project-img{height:240px}.project-caption{padding:14px}.footer-main{grid-template-columns:1.2fr 1fr 1fr;gap:30px}.footer-cta{grid-column:1/-1;display:flex;align-items:center;gap:20px;justify-content:space-between;border-top:1px solid #6d5241;padding-top:25px}.footer-cta>span{margin:0}.footer-hat{display:none}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.section{padding:78px 0}.announcement-inner{min-height:33px}.announcement-left{font-size:9px;letter-spacing:.025em}.announcement-inner>a{font-size:0}.announcement-inner svg{width:17px;height:17px}.nav-bar{min-height:72px}.nav-cta{display:none}.brand-text strong{font-size:21px}.brand-mark{height:49px;width:49px;border-radius:10px}.brand-mark img{height:46px;width:46px}.hero-grid{grid-template-columns:1fr;min-height:0;padding:55px 0 51px}.hero-copy{padding:0}.hero-kicker{font-size:10px;margin-bottom:17px}.hero h1{font-size:clamp(52px,10vw,83px)}.hero-last{font-size:.83em}.hero-desc{max-width:500px;font-size:15px;margin-top:25px}.hero-actions{gap:24px;margin-top:27px}.hero-trust{margin-top:29px}.hero-showcase{height:460px;margin:18px auto 0;width:min(100%,550px)}.hero-visual-ring{right:7%;top:29px;width:370px;height:370px}.hero-photo{right:3%;top:85px;width:min(89%,410px);height:295px}.hero-floating-badge{left:5%;top:12px;width:165px}.floating-badge-inside{height:100px}.floating-badge-inside img{height:109px}.hero-corner-note{right:6%;bottom:13px}.hero-sketch{top:5px;right:2%}.star-a,.star-b{display:none}.marquee{min-height:55px}.marquee-track span{font-size:14px}.split-intro{flex-direction:column;align-items:flex-start;gap:18px}.split-intro>p,.work-intro-end>p{max-width:580px}.section-intro{margin-bottom:32px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.service-image{height:205px}.service-body{padding:19px 15px 21px}.service-title-row h3{font-size:24px}.services-grid .service-card:nth-child(2),.services-grid .service-card:nth-child(5){margin:0}.finder-heading{display:block}.finder-heading h2{font-size:clamp(48px,9vw,70px);margin:17px 0}.finder-window{box-shadow:5px 6px 0 var(--ink)}.finder-panel{min-height:340px}.finder-tabs .finder-tab{font-size:10px}.values{padding-bottom:122px}.values-grid{grid-template-columns:1fr;gap:40px}.values-copy h2{font-size:clamp(46px,8vw,67px)}.values-right{max-width:100%}.work-intro-end{max-width:540px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-big{grid-column:span 2}.project-big .project-img{height:340px}.project-img{height:240px}.process-head h2{font-size:clamp(49px,8.2vw,72px)}.process-grid{gap:13px}.step{padding:20px 16px;min-height:290px}.step h3{font-size:20px}.step p{font-size:12px}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-heading h2{margin:16px 0;font-size:clamp(47px,8vw,67px)}.faq-side-stamp{display:none}.faq-list summary{font-size:18px}.estimate-card{grid-template-columns:1fr}.estimate-aside{padding:37px 30px 32px}.estimate-aside h2{font-size:clamp(51px,9vw,74px)}.estimate-aside>p{max-width:530px}.estimate-mascot{position:absolute;right:16px;top:5px;width:175px;height:175px;min-height:0;opacity:.27;pointer-events:none}.estimate-mascot img{height:159px;width:160px}.contact-options{margin-top:30px}.estimate-form-panel{padding:38px 29px 42px}.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:37px}.footer-brand{grid-column:1/-1}.footer-cta{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;justify-content:space-between}.footer-note{display:none}}
@media(max-width:510px){.hero h1{font-size:clamp(44px,10.3vw,56px)}.hero-kicker{font-size:9px;gap:7px}.mini-star{height:25px;width:25px;font-size:11px}.kicker-line{display:none}.hero-actions{flex-direction:column;align-items:flex-start;gap:19px}.hero-actions .button{width:100%;max-width:385px;justify-content:center}.hero-trust{gap:11px}.hero-showcase{height:353px;margin-top:18px}.hero-visual-ring{top:29px;right:3%;width:292px;height:292px}.hero-photo{top:77px;right:0;width:93%;height:242px;border-radius:73px 24px 25px 25px}.hero-floating-badge{width:124px;left:-2%;top:10px;border-width:3px;box-shadow:4px 6px 0 var(--ink)}.hero-floating-badge:after{inset:6px}.badge-curved,.badge-bottom{font-size:7px}.badge-curved{margin-top:7px}.floating-badge-inside{height:76px;width:75px}.floating-badge-inside img{height:89px;width:89px}.hero-corner-note{right:1%;bottom:0;font-size:9px}.note-circle{width:43px;height:43px;font-size:21px}.hero-sketch{font-size:44px}.services-grid{gap:16px;grid-template-columns:1fr}.service-card{display:grid;grid-template-columns:40% 60%;min-height:163px}.service-image{height:100%;min-height:158px;border-bottom:none;border-right:2px solid var(--ink)}.service-image img{height:100%}.service-index{width:30px;height:30px;top:9px;left:9px;font-size:10px}.service-body{padding:16px 13px;display:flex;flex-direction:column;justify-content:center}.service-title-row h3{font-size:clamp(19px,6vw,25px)}.service-arrow{width:26px;height:26px;font-size:16px}.service-body>p{font-size:12px;margin-top:8px}.service-tag{font-size:8px}.service-note{font-size:9px;gap:5px;justify-content:flex-start}.finder-tabs{grid-template-columns:repeat(2,1fr)}.finder-tab{min-height:48px;border-bottom:2px solid var(--ink)}.finder-tab:nth-child(even){border-right:0}.finder-tab:nth-child(n+3){border-bottom:0}.finder-panel{grid-template-columns:1fr}.finder-visual{height:213px;border-right:0;border-bottom:2px solid var(--ink)}.finder-stamp{height:78px;width:78px;right:14px;bottom:11px;font-size:9px}.finder-detail{padding:24px 21px 26px}.finder-detail h3{font-size:39px;margin:10px 0 8px}.finder-detail p{margin-bottom:17px}.values-right{grid-template-columns:1fr}.value-main{grid-column:span 1}.value-secondary{min-height:0;padding:17px}.value-secondary strong{font-size:13px}.values-copy h2{font-size:clamp(43px,9.7vw,59px)}.project-grid{grid-template-columns:1fr}.project-big{grid-column:span 1}.project-img,.project-big .project-img{height:253px}.project-caption h3{font-size:22px}.process-grid{grid-template-columns:1fr}.step{min-height:0;padding:20px 22px;display:grid;grid-template-columns:65px 1fr;gap:0 16px}.step-number{grid-column:1/-1}.step-symbol{grid-row:2/4;margin:20px 0 0}.step h3{grid-column:2;margin-top:24px}.step p{grid-column:2;margin-top:7px}.faq-list summary{font-size:16px;padding:22px 2px}.estimate-aside{padding:34px 22px 31px}.estimate-aside h2{font-size:clamp(47px,12vw,66px)}.estimate-form-panel{padding:31px 20px 37px}.form-row{grid-template-columns:1fr;gap:17px}.form-heading h3{font-size:32px}.form-submit{white-space:normal;text-align:center;line-height:1.3;min-height:60px;font-size:11px;padding:9px 13px}.contact-options a{font-size:13px}.footer-main{grid-template-columns:1fr 1fr;gap:28px 18px}.footer-nav h3{font-size:10px}.footer-nav a,.footer-nav span{font-size:12px}.footer-cta{flex-direction:column;align-items:flex-start}.footer-cta .button{width:100%}.footer-bottom{font-size:9px}}
@media(max-width:360px){.wrap{width:calc(100% - 26px)}.brand-text strong{font-size:18px}.brand-text small{font-size:8px}.hero h1{font-size:42px}.hero-desc{font-size:14px}.hero-corner-note{font-size:8px}.services-grid{gap:12px}.service-card{grid-template-columns:38% 62%}.service-title-row h3{font-size:19px}.service-arrow{width:24px;height:24px}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-cta{grid-column:auto}}

/* Final cross-viewport refinements */
.finder-heading h2{font-size:clamp(38px,3.65vw,52px)}
@media(max-width:1020px) and (min-width:761px){
  .hero-grid{grid-template-columns:1fr;min-height:0;padding:65px 0 76px}
  .hero-copy{max-width:700px}
  .hero h1{font-size:clamp(65px,8.8vw,88px)}
  .hero-showcase{width:min(100%,600px);height:505px;margin:20px auto 0}
  .hero-visual-ring{right:9%;top:41px;width:425px;height:425px}
  .hero-photo{right:5%;top:96px;width:505px;height:345px;max-width:87%}
  .hero-floating-badge{left:1%;top:10px;width:192px}
  .hero-corner-note{right:5%;bottom:2px}
  .finder-heading h2{font-size:clamp(41px,6.4vw,55px)}
}
@media(max-width:760px){
  .hero::after{display:none}
  .finder-heading h2{font-size:clamp(45px,8.8vw,61px)}
}
@media(max-width:510px){.finder-heading h2{font-size:clamp(42px,9.5vw,49px)}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.marquee-track{animation:none}}
/* Keep the decorative ticker inside the viewport at every breakpoint. */
.marquee{transform:none}
/* Reserve actual grid gap instead of adding it on top of 100% columns. */
.finder-shell{grid-template-columns:minmax(0,31fr) minmax(0,69fr)}
.values-grid{grid-template-columns:minmax(0,56fr) minmax(0,44fr)}
.faq-grid{grid-template-columns:minmax(0,41fr) minmax(0,59fr)}
@media(max-width:1180px){.finder-shell{grid-template-columns:minmax(0,32fr) minmax(0,68fr)}}
@media(max-width:1020px){.finder-shell{grid-template-columns:1fr}.values-grid{grid-template-columns:minmax(0,51fr) minmax(0,49fr)}}
@media(max-width:760px){.values-grid,.faq-grid{grid-template-columns:1fr}}

/* ═══ 2026 Design refinement — a confident, legible Western workshop ═══ */
:root{--muted:#625548;--line:#cbbda9}
/* Preserve the bold brand while avoiding inaccessible micro-labels. */
.eyebrow{font-size:12px;letter-spacing:.10em}
.announcement-inner{font-size:11px;letter-spacing:.07em}
.brand-text small{font-size:10px;letter-spacing:.08em}
.nav-links>a{font-size:13px}
.hero-kicker{font-size:12px;letter-spacing:.04em}
.hero-trust b{font-size:12px}
.hero-trust small{font-size:13px;color:#5c5043}
.hero-desc{color:#5c5046}
.service-tag{font-size:10px;line-height:1.3;color:#9b3e1f;letter-spacing:.06em}
.service-body>p{font-size:14px;color:#615344}
.project-caption small{font-size:10px;line-height:1.45;color:#873519;letter-spacing:.06em}
.gallery-disclaimer{font-size:13px;color:#655544;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;text-align:center}
.gallery-disclaimer>span{color:#cf5420;font-size:21px}
#quote-form label{font-size:12px;letter-spacing:.02em;color:#382217}
#quote-form input,#quote-form select,#quote-form textarea{font-size:15px;border-color:#bdae9c;min-height:52px}
.form-heading>span{font-size:11px;color:#82421f}
.form-privacy{font-size:12px;color:#625443;align-items:flex-start}
.form-privacy svg{min-width:18px;margin-top:1px}
.footer-nav a,.footer-nav span{font-size:14px;color:#eddfca;line-height:1.6}
.footer-nav h3{font-size:12px}
.footer-bottom{font-size:11px;color:#decbb2}
.value-secondary p{font-size:13px;color:#f3e2cb}
.value-main p{font-size:13px;color:#57371c}
/* Stronger purpose-built hero hierarchy and consistent button hit areas. */
.hero-grid{gap:18px;grid-template-columns:minmax(0,54fr) minmax(0,46fr)}
.hero-copy{min-width:0}
.hero h1{font-size:clamp(52px,6.35vw,88px);letter-spacing:-.082em}
.hero-actions .button{white-space:normal;text-align:center;line-height:1.3}
.text-action{min-height:40px}
/* Fence selector: the previous long heading could collide with panel at medium widths. */
.finder-shell{grid-template-columns:minmax(0,30fr) minmax(0,70fr);gap:clamp(28px,3.2vw,50px);align-items:center}
.finder-heading{min-width:0}
.finder-heading h2{max-width:100%;font-size:clamp(35px,3.05vw,44px);letter-spacing:-.065em;line-height:1.02;overflow-wrap:normal}
.finder-heading h2 i{display:block;hyphens:none;overflow-wrap:anywhere}
.finder-heading>p{font-size:15px;color:#514536}
.finder-window{min-width:0}
.finder-tab{font-size:11px;line-height:1.35;letter-spacing:0;gap:4px;padding:12px 8px}
.finder-tab span{font-size:16px}
.finder-panel{grid-template-columns:minmax(0,54fr) minmax(0,46fr)}
.finder-detail{min-width:0}
.finder-detail>span{font-size:11px;letter-spacing:.055em}
.finder-detail h3{font-size:clamp(28px,2.75vw,41px);overflow-wrap:break-word}
.finder-detail p{font-size:14px;color:#594b3e}
.finder-detail .button{white-space:normal;text-align:center;min-height:48px;line-height:1.3}
/* Fence change works even when images load instantly from the local bundle. */
.finder-visual.is-swapping>img{animation:fence-switch .38s cubic-bezier(.22,.76,.32,1) both}
.finder-detail.is-swapping>*{animation:finder-appear .42s ease both}
@keyframes fence-switch{from{opacity:.45;transform:translateY(9px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes finder-appear{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
/* Projects: locally bundled visual previews, never a network-dependent blank tile. */
.work{background:#fef9ee}
.project-img{background:#c5d6c4}
.project-img .gallery-illustration{position:relative;inset:auto;display:block;width:100%;height:100%;object-fit:cover;opacity:1;transform:scale(1);transition:transform .5s ease}
.project:hover .project-img .gallery-illustration{transform:scale(1.05)}
.project-overlay{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;left:17px;bottom:15px;background:#fff9e9;border:2px solid var(--ink);border-radius:999px;padding:10px 13px;font:800 11px/1.15 var(--font-head);letter-spacing:.02em;box-shadow:3px 3px 0 var(--ink);transition:transform .18s}
.project-overlay span{font-size:16px}
.project:hover .project-overlay{transform:translateY(-3px)}
.project:focus-visible{outline-offset:8px}
/* Dedicated genuine brand differentiator: illustrated fence engineering principles. */
.craft{background:#e9e7d7;border-block:2px solid #2b190f;position:relative;overflow:hidden}
.craft::before{content:"✳";position:absolute;top:-55px;right:2%;font-size:180px;color:#edbd7d;opacity:.3;pointer-events:none}
.craft-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);align-items:center;gap:clamp(36px,5.5vw,86px)}
.craft-copy h2{font-size:clamp(43px,5vw,69px);margin:19px 0 22px}
.craft-copy>p{max-width:555px;color:#5a4a3c;font-size:16px;line-height:1.8}
.craft-copy>p em{font-style:normal;font-weight:800;color:#2b190f}
.craft-features{margin:32px 0 27px;display:grid;gap:0;border-top:1px solid #b2a58e}
.craft-feature{padding:19px 0;display:flex;align-items:flex-start;gap:16px;border-bottom:1px solid #b2a58e}
.craft-feature-icon{width:45px;height:45px;border:2px solid var(--ink);background:#f5b544;border-radius:50%;display:grid;place-items:center;flex:none;font:800 12px var(--font-head)}
.craft-feature h3{font:700 20px/1.1 var(--font-head);letter-spacing:-.05em}
.craft-feature p{font-size:14px;color:#5c4d3f;line-height:1.6;margin-top:6px}
.craft-visual{border:3px solid var(--ink);background:#dae3d4;border-radius:16px;box-shadow:9px 10px 0 var(--ink);overflow:hidden;transform:rotate(1deg);min-width:0}
.craft-visual-header,.craft-visual-foot{padding:17px 21px;display:flex;justify-content:space-between;gap:15px;align-items:center;font:800 11px/1.3 var(--font-head);letter-spacing:.055em}
.craft-visual-header{border-bottom:3px solid var(--ink);background:#f5b544}
.craft-visual-foot{border-top:3px solid var(--ink);background:#fff4d9}
.craft-visual>img{display:block;width:100%;height:auto;aspect-ratio:760/560;object-fit:cover}
/* Family-owned proof tells ZZ's actual story instead of generic stock claims. */
.values-copy>p{color:#e9d6c0}
.values-copy .button{margin-top:27px}
/* Quote section: give logo deliberate breathing space instead of covering the heading. */
.estimate-aside{isolation:isolate}
.estimate-aside h2{position:relative;z-index:2;line-height:1.01}
.estimate-aside>p{position:relative;z-index:2}
.form-help{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px 12px;margin-top:0;font-size:13px;color:#5b4c3e}
.form-help a{font-weight:800;text-decoration:underline;text-underline-offset:4px;color:#9b421a}
.form-error{padding:12px 14px;background:#fff0da;border-left:4px solid #b15a23;border-radius:5px;line-height:1.5}
/* Make hover feedback deliberate without transforming the entire page into a toy. */
.nav-links a,.footer-nav a,.footer-bottom a,.outline-action,.text-action{transition:color .18s ease}
.nav-links a:hover,.footer-nav a:hover,.footer-bottom a:hover,.outline-action:hover,.text-action:hover{color:#cf6229}
@media(max-width:1180px){
 .finder-shell{grid-template-columns:minmax(0,30fr) minmax(0,70fr);gap:27px}
 .finder-heading h2{font-size:clamp(33px,3.35vw,42px)}
 .finder-tab{font-size:10px;padding:11px 6px}
 .finder-detail{padding:23px}
 .finder-detail h3{font-size:clamp(26px,3.2vw,36px)}
 .hero h1{font-size:clamp(51px,6.3vw,78px)}
}
@media(max-width:1020px){
 .hero-grid{grid-template-columns:1fr}
 .finder-shell{grid-template-columns:1fr;gap:28px}
 .finder-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.65fr);align-items:end;gap:17px 30px}
 .finder-heading .eyebrow{grid-column:1/-1}
 .finder-heading h2{font-size:clamp(40px,6vw,57px);margin:0}
 .finder-heading>p{margin:0;max-width:100%;padding-bottom:5px}
 .finder-detail h3{font-size:clamp(34px,4vw,43px)}
 .craft-grid{gap:30px}
 .craft-copy h2{font-size:clamp(38px,5.5vw,54px)}
 .craft-feature h3{font-size:18px}
 .craft-visual-header,.craft-visual-foot{font-size:10px;padding:13px}
}
@media(max-width:760px){
 .section{padding:74px 0}
 .brand-text small{font-size:9px}
 .announcement-left{font-size:10px;letter-spacing:0}
 .hero-grid{gap:0}
 .hero h1{font-size:clamp(49px,10vw,76px)}
 .hero-kicker{font-size:11px}
 .hero-desc{font-size:16px;line-height:1.65}
 .hero-trust small{font-size:12px}
 .service-tag{font-size:10px}
 .service-body>p{font-size:13px}
 .finder-heading{display:block}
 .finder-heading h2{font-size:clamp(40px,8vw,56px);max-width:500px;margin:16px 0}
 .finder-heading h2 i{overflow-wrap:normal}
 .finder-heading>p{max-width:530px}
 .finder-panel{grid-template-columns:minmax(0,53fr) minmax(0,47fr)}
 .finder-detail h3{font-size:clamp(30px,5.5vw,42px)}
 .craft-grid{grid-template-columns:1fr;gap:38px}
 .craft-copy h2{font-size:clamp(45px,8vw,67px)}
 .craft-visual{max-width:570px;transform:rotate(.4deg);margin-right:10px}
 .craft-visual-header,.craft-visual-foot{font-size:11px;padding:14px 17px}
 .project-img{height:260px}
 .project-big .project-img{height:320px}
 .estimate-mascot{position:relative;right:auto;top:auto;width:160px;height:160px;min-height:160px;max-height:160px;flex:none;opacity:1;pointer-events:none;margin:24px auto 7px}
 .estimate-mascot:before{inset:4px;border-width:3px;box-shadow:5px 6px 0 #a43c23}
 .estimate-mascot img{width:146px;height:146px;transform:rotate(-8deg)}
 .mascot-star{font-size:29px}
 .estimate-aside{padding:37px 31px 31px}
 .estimate-aside:before{top:auto;bottom:60px;width:320px;height:320px}
 .estimate-aside h2{max-width:100%;font-size:clamp(49px,9vw,72px)}
 .contact-options{margin-top:25px}
 .contact-options a{font-size:15px}
 .estimate-form-panel{padding:37px 30px 40px}
 .project-overlay{font-size:10px}
 .footer-main{padding:58px 0}
}
@media(max-width:510px){
 .hero h1{font-size:clamp(44px,10.2vw,55px)}
 .hero-kicker{font-size:10px}
 .hero-actions .button{max-width:none}
 .service-image{min-height:158px}
 .service-card{grid-template-columns:minmax(0,42fr) minmax(0,58fr)}
 .service-tag{font-size:9px}
 .service-title-row h3{font-size:clamp(19px,5.5vw,25px)}
 .finder-heading h2{font-size:clamp(38px,8.9vw,48px)}
 .finder-panel{grid-template-columns:1fr}
 .finder-detail h3{font-size:38px}
 .project-img,.project-big .project-img{height:256px}
 .project-overlay{bottom:12px;left:12px;font-size:10px}
 .craft-copy h2{font-size:clamp(43px,9vw,57px)}
 .craft-copy>p{font-size:15px}
 .craft-features{margin-top:24px}
 .craft-visual-header,.craft-visual-foot{font-size:9px;padding:12px}
 .estimate-aside{padding:35px 23px 28px}
 .estimate-aside h2{font-size:clamp(45px,11vw,62px);line-height:1}
 .estimate-aside>p{font-size:15px;line-height:1.6}
 .estimate-mascot{margin:22px auto 0}
 .contact-options a{font-size:14px}
 .estimate-form-panel{padding:31px 20px 38px}
 #quote-form label{font-size:11px}
 #quote-form input,#quote-form select,#quote-form textarea{font-size:16px}
 .footer-bottom{font-size:10px}
}
@media(max-width:370px){
 .hero h1{font-size:clamp(41px,10.1vw,47px)}
 .finder-heading h2{font-size:clamp(36px,8.7vw,42px)}
 .craft-visual-header,.craft-visual-foot{letter-spacing:0}
 .project-overlay{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.finder-visual.is-swapping>img,.finder-detail.is-swapping>*{animation:none}}
/* JS adds this only to the content it observes: no hidden content without JS. */
@media(prefers-reduced-motion:no-preference){
.reveal-ready{transition:opacity .65s ease,transform .65s cubic-bezier(.21,.75,.37,1)}
.reveal-ready:not(.in-view){opacity:.94;transform:translateY(11px)}
.reveal-ready.in-view{opacity:1;transform:translateY(0)}
}
