:root{--ink:#1f1f1f;--yellow:#ffd258;--paper:#fff;--line:#d8d8d2;--muted:#62625c;font-family:Commissioner,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:90px}*{box-sizing:border-box}body{margin:0;font-size:1.125rem;line-height:1.5}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}a,button{touch-action:manipulation}button{background:none;border:0}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.045em;text-wrap:balance}h1{font-size:4.5rem;line-height:1.05}h2{font-size:3rem;line-height:1.1}h3{font-size:1.65rem;line-height:1.2}p{max-width:70ch}p+p{margin-top:1rem}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:5px}::selection{background:var(--yellow);color:var(--ink)}[hidden]{display:none!important}.wrap{width:min(1328px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.caption{font-size:.875rem;line-height:1.45;color:var(--muted)}.lead{font-size:1.5rem;line-height:1.4}.tape{display:inline-block;width:clamp(110px,13vw,210px);height:1em;object-fit:fill;vertical-align:baseline;margin-inline:.08em;pointer-events:none}.skip-link{position:fixed;top:-80px;left:20px;background:var(--ink);color:white;padding:12px 20px;z-index:200}.skip-link:focus{top:12px}.site-header{width:calc(100% - 64px);margin:auto;height:100px;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line)}.brand{width:128px;flex-shrink:0}.brand img{height:70px;width:auto}.desktop-nav{display:flex;gap:24px;margin-left:32px;font-size:.875rem}.desktop-nav a{padding-block:16px;position:relative}.desktop-nav a:after{content:'';position:absolute;bottom:9px;left:0;width:0;height:2px;background:var(--ink);transition:width .2s}.desktop-nav a:hover:after{width:100%}.header-right{margin-left:auto;display:flex;align-items:center;gap:28px}.languages{display:flex;gap:10px;font-size:.75rem}.languages a{padding:8px 2px;color:#70706a}.languages [aria-current]{color:var(--ink);border-bottom:2px solid var(--ink)}.header-contact{font-size:.875rem;display:flex;gap:20px;border-bottom:1px solid var(--ink);padding:10px 0}.header-contact span{font-size:1.25rem}.menu-toggle,.mobile-nav{display:none}.hero{padding-top:30px}.hero-top{display:flex;justify-content:space-between;align-items:center}.availability-dot{display:inline-block;width:7px;height:7px;border-radius:100%;background:var(--ink);margin-left:16px}.hero-type{font-size:.875rem}.hero-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:70px;align-items:end;padding:32px 0 42px}.hero-last{white-space:nowrap}.hero-last .tape{width:150px;height:42px;margin-left:14px}.hero-side{padding:0 8px 0 20px}.hero-side>p{font-size:1.125rem;max-width:35ch}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font-size:1rem;border-bottom:1px solid currentColor;padding:9px 0;transition:gap .2s}.text-link:hover{gap:40px}.text-link span{flex-shrink:0}.hero-side>.text-link{margin-top:22px}.hero-counter{margin-top:36px;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;font-size:.75rem}.animation-intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;gap:24px}.animation-intro h2{font-size:.875rem;letter-spacing:0;font-weight:400}.animation-intro p{font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:14px}.gesture{font-size:1.5rem}.touch-hint{display:none}#koraci-sanding{width:100%}.step-surface{position:relative;container-type:inline-size;background:#61533f}#koraci-sanding canvas{display:block;width:100%;aspect-ratio:1868/560;touch-action:none;cursor:crosshair}.final-brand{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:33.333%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;pointer-events:none;color:white;white-space:nowrap}.final-brand img{height:68%;width:auto;opacity:0}.final-brand div{font-size:clamp(9px,1.6cqw,15px);line-height:1.2;opacity:0}.is-finished .final-brand img{animation:koraci-reveal 1.2s ease .35s both}.is-finished .final-brand div{animation:koraci-reveal 1.2s ease 1.25s both}@keyframes koraci-reveal{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animation-controls{display:flex;justify-content:space-between;align-items:center;padding:14px 0;gap:15px;border-bottom:1px solid var(--line)}.animation-controls>div{display:flex;gap:25px}.small-link{font-size:.75rem;padding:8px 0;text-decoration:underline;text-underline-offset:4px;min-height:40px}.stages{list-style:none;display:flex;gap:25px;padding:0;margin:0;font-size:.75rem}.stages li{color:var(--muted);display:flex;gap:8px;align-items:center}.stages [aria-current]{color:var(--ink)}.stages span{display:inline-flex;width:25px;height:25px;align-items:center;justify-content:center;border:1px solid var(--line);font-size:.625rem}.stages [aria-current] span{background:var(--yellow);border-color:var(--yellow)}.load-error .animation-error{display:block!important}.stats{display:grid;grid-template-columns:1fr 1fr 1fr 1.05fr;gap:30px;padding:35px 0 45px;align-items:center}.stats>div{display:flex;gap:17px;align-items:center}.stats strong{font-size:2.65rem;font-weight:500;letter-spacing:-.05em}.stats span{font-size:.75rem;max-width:13ch;line-height:1.4}.stats-cta{font-size:.875rem;display:flex;justify-content:space-between;gap:12px;align-items:center;border-left:1px solid var(--line);padding-left:25px}.stats-cta span{font-size:1.8rem}.ticker{overflow:hidden;background:var(--yellow);padding:18px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.ticker>div{display:flex;align-items:center;gap:34px;width:max-content;animation:ticker 40s linear infinite;font-size:1.75rem;line-height:1.2;font-weight:500;letter-spacing:-.03em}.ticker .tape{height:25px;width:135px;margin-inline:15px}@keyframes ticker{to{transform:translateX(-50%)}}.section-top{display:flex;justify-content:space-between}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;margin:22px 0 50px;align-items:end}.section-heading>div{max-width:470px;justify-self:end}.section-heading .caption{margin-top:18px}.featured-grid{display:grid;grid-template-columns:1.12fr 1fr;column-gap:8%;row-gap:75px;align-items:start}.project-2{margin-top:145px}.project-3{margin-top:-65px}.project-4{margin-top:100px}.project-heading{display:flex;justify-content:space-between;gap:10px;padding-bottom:12px}.pair-count{font-size:.75rem;color:var(--muted)}.comparison{position:relative;aspect-ratio:var(--ratio);overflow:hidden;isolation:isolate;background:#eceae5;max-height:750px}.comparison>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.comparison .before-image{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-labels{position:absolute;inset:16px 14px auto;display:flex;justify-content:space-between;pointer-events:none;z-index:2}.compare-labels span{background:#fff;color:var(--ink);font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;padding:6px 10px}.divider{position:absolute;top:0;bottom:0;left:var(--split);width:2px;background:white;pointer-events:none;transform:translateX(-1px);z-index:2}.divider>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;background:var(--yellow);border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:1.5rem;color:var(--ink);box-shadow:0 1px 4px #0002}.compare-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3;touch-action:pan-y}.comparison:focus-within{outline:3px solid var(--ink);outline-offset:5px}.project-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:20px}.project-caption .eyebrow{font-size:.625rem;color:var(--muted);margin-bottom:9px}.project-caption h3{max-width:20ch}.circle-button{display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;width:50px;height:50px;flex-shrink:0;font-size:1.5rem;transition:background .2s,transform .2s}.circle-button:hover{background:var(--yellow);transform:rotate(8deg)}.project>.text-link{font-size:.75rem;margin-top:12px}.gallery-invite{margin-top:64px;padding-block:32px;border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;align-items:center}.gallery-invite h3{font-size:1.5rem;max-width:24ch}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 22px;font-size:1rem;min-height:54px;transition:background .2s}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#3b3b35}.button span{font-size:1.3rem}.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:25px;margin-top:24px}#all-gallery>p{font-size:1rem;margin-top:26px}.gallery-item{text-align:left;padding:0}.gallery-item img{width:100%;height:220px;object-fit:cover;transition:filter .2s}.gallery-item:hover img{filter:brightness(.88)}.gallery-item>span{display:flex;justify-content:space-between;font-size:.875rem;margin-top:10px;gap:8px}.gallery-item small{font-size:.625rem;color:var(--muted)}.services-section{background:#f2f2ed}.services-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.service-title h2{margin-top:22px}.service-title>p:not(.eyebrow){font-size:1rem;max-width:37ch;margin-top:24px}.detail-photo{margin-top:40px;position:relative;width:210px}.detail-photo img{width:210px;height:150px;object-fit:cover;object-position:center 65%}.detail-photo span{position:absolute;right:-65px;bottom:-23px;font-size:4.5rem;line-height:1;font-weight:600;letter-spacing:-.1em}.services-list{padding-top:45px}.service{border-top:1px solid #c8c8c0;padding:22px 0}.service:last-child{border-bottom:1px solid #c8c8c0}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.service summary{display:flex;align-items:start;gap:18px}.service .index{font-size:.75rem;margin-top:6px}.service h3{font-size:1.5rem;letter-spacing:-.025em;max-width:27ch}.plus{margin-left:auto;font-size:1.5rem;line-height:1;flex-shrink:0;transition:transform .2s}details[open]>summary .plus{transform:rotate(45deg)}.service p{margin:18px 30px 0 46px;font-size:1rem;color:#50504a}.process-section>h2{margin:22px 0 45px;max-width:25ch}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.process-item{border-top:1px solid var(--ink);padding-top:15px}.process-item h3{margin:34px 0 18px;font-size:1.5rem;max-width:16ch}.process-item p{font-size:.9375rem;color:#54544d}.duration{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-top:44px;padding:24px 0;border-top:1px solid var(--line)}.duration strong{font-size:1.5rem;font-weight:500;flex-shrink:0}.duration p{font-size:.875rem;max-width:56ch}.pricing-section{background:var(--yellow)}.price-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;margin-top:22px}.price-grid h2{font-size:3rem}.price-from{font-size:1rem;margin-top:35px!important}.price-number{font-size:clamp(70px,7.5vw,112px);font-weight:500;line-height:1;letter-spacing:-.055em}.price-number span{display:block;font-size:.875rem;letter-spacing:0;margin-top:12px}.price-intro{margin-top:28px;max-width:44ch;font-size:1rem}.price-grid .text-link{margin-top:20px;font-size:.875rem}.price-details{padding-top:10px}.price-details>div{padding-block:23px;border-bottom:1px solid #1f1f1f55}.price-details h3{font-size:1.3rem;letter-spacing:-.025em}.price-details p{font-size:1rem;margin-top:10px}.price-details .button{margin-top:30px;width:100%}.payment{border-top:1px solid #1f1f1f55;margin-top:45px;padding-top:20px}.payment summary{display:flex;justify-content:space-between;font-size:1rem}.payment p{font-size:1rem;margin-top:18px;max-width:80ch}.about-section{display:grid;grid-template-columns:.85fr 1fr;gap:9%;align-items:center}.about-photo{position:relative}.about-photo img{width:100%;max-height:720px;object-fit:cover}.photo-stamp{position:absolute;bottom:25px;left:25px;color:white;font-size:2.5rem;font-weight:600;letter-spacing:-.05em;line-height:.8;text-shadow:0 1px 10px #0005}.photo-stamp small{font-size:.625rem;letter-spacing:.12em}.about-copy h2{margin:22px 0 28px}.about-copy>p:not(.eyebrow){font-size:1rem}.warranty{border-top:1px solid var(--line);display:flex;gap:25px;padding-top:28px;margin-top:32px}.warranty>span{font-size:4rem;font-weight:500;letter-spacing:-.05em;line-height:1}.warranty h3{font-size:1.1rem;letter-spacing:-.02em}.warranty p{font-size:.875rem;margin-top:12px;color:var(--muted)}.reviews-section{background:#f2f2ed}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.review{border-top:1px solid var(--ink);padding-top:22px;display:flex;flex-direction:column}.stars{font-size:.875rem;letter-spacing:.12em}.review blockquote{margin:24px 0 30px;font-size:1.4rem;letter-spacing:-.025em;line-height:1.35}.review figcaption{margin-top:auto;display:flex;justify-content:space-between;gap:15px;font-size:.75rem}.review time{color:var(--muted)}#more-reviews{margin-top:35px}.faq-section{display:grid;grid-template-columns:1fr 1.15fr;gap:9%}.faq-section h2{margin:22px 0 35px}.faq-section>.tape{width:180px}.faq{padding:23px 0;border-top:1px solid var(--line)}.faq:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:1.1rem;display:flex;justify-content:space-between;gap:30px}.faq p{font-size:1rem;color:#55554e;margin:18px 36px 0 0}.contact-section{background:var(--ink);color:white}.contact-heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0 48px}.contact-heading h2{font-size:4.5rem;max-width:19ch}.contact-arrow{color:var(--yellow);font-size:9rem;line-height:1}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact-grid .lead{font-size:1.3rem;max-width:35ch}.photo-list{list-style:none;margin:30px 0;padding:0}.photo-list li{display:flex;gap:18px;margin-top:14px;font-size:.9375rem}.photo-list span{color:var(--yellow);font-size:.75rem;padding-top:3px}.hours{font-size:1rem;margin-top:36px}.hours span{font-size:.625rem;display:block;color:#c2c2b9;margin-top:5px}.contact-section .caption{color:#bdbdb4;font-size:.8125rem;margin-top:12px}.contact-button{padding:19px 0;border-top:1px solid #ffffff60;display:flex;justify-content:space-between;font-size:1.5rem;letter-spacing:-.02em}.contact-button:nth-child(2){border-bottom:1px solid #ffffff60}.contact-button>span:last-child{color:var(--yellow);transition:transform .2s}.contact-button:hover>span:last-child{transform:translate(4px,-4px)}.contact-actions .text-link{margin-top:30px}.phone-block{margin-top:25px;display:flex;flex-direction:column;align-items:start}.phone-block>a{font-size:1.55rem;margin-top:5px;letter-spacing:-.025em}.phone-block .small-link{color:#c2c2b9}.email-address{display:inline-block;font-size:.875rem;margin-top:13px;text-decoration:underline;text-underline-offset:4px}#copy-status{font-size:.75rem;color:var(--yellow)}.site-footer{padding-block:40px 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:30px}.footer-brand{width:145px}.footer-top p{font-size:.875rem;max-width:30ch}.footer-top>.text-link{font-size:.875rem}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:20px;font-size:.75rem}.footer-bottom nav{display:flex;gap:22px}.footer-bottom nav a:hover{text-decoration:underline;text-underline-offset:4px}#koraci-strip-v3{width:100%;height:69px;background:#fff;overflow:hidden}#koraci-strip-v3 canvas{display:block;width:100%;height:100%}.mobile-contact{display:none}dialog{border:0;padding:0;background:white;color:var(--ink);width:min(1150px,calc(100% - 40px));max-height:calc(100dvh - 40px);overscroll-behavior:contain}dialog::backdrop{background:#131310b8;backdrop-filter:blur(5px)}body.modal-open{overflow:hidden}.dialog-top{position:sticky;top:0;z-index:5;background:white;border-bottom:1px solid var(--line);padding:14px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.75rem;letter-spacing:.06em}.close-button{font-size:2rem;width:44px;height:44px;line-height:1;padding:0}.dialog-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:35px;padding:30px}.dialog-layout .comparison{max-height:65dvh;max-width:100%;margin-inline:auto;width:auto;min-width:160px}.dialog-image-area{min-width:0;max-width:100%}.dialog-nav{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:10px}.dialog-nav button{border:1px solid var(--line);width:44px;height:42px}.dialog-nav span{font-size:.75rem}.thumbs{display:flex;gap:8px;overflow-x:auto;padding:12px 2px}.thumbs button{border:2px solid transparent;padding:2px;flex-shrink:0}.thumbs [aria-current]{border-color:var(--ink)}.thumbs img{width:46px;height:60px;object-fit:cover}.dialog-copy h2{font-size:2.25rem;margin:15px 0}.dialog-copy h3{font-size:1rem;margin-top:26px}.dialog-copy>p:not(.eyebrow){font-size:1rem;margin-top:14px}.dialog-copy .project-description{color:#55554e}.dialog-copy .button{margin-top:30px;gap:20px;font-size:.875rem;width:100%}.dialog-switches{display:flex;justify-content:center;gap:12px;margin-top:12px}.dialog-switches button{font-size:.75rem;text-decoration:underline;text-underline-offset:4px;padding:8px}.dialog-related{border-top:1px solid var(--line);margin-top:25px;padding-top:18px;display:flex;gap:12px;flex-wrap:wrap}.dialog-related button{font-size:.75rem;text-decoration:underline;text-underline-offset:4px}#privacy-dialog{max-width:650px}#privacy-dialog h2{font-size:1.3rem;letter-spacing:-.02em}#privacy-dialog>p{padding:28px;font-size:1rem}.no-js-note{display:none}
@media(pointer:coarse){.mouse-hint{display:none}.touch-hint{display:inline}.compare-range{touch-action:pan-y}}
@media(min-width:1500px){.hero-grid{padding-top:45px}.hero-side>p{font-size:1.25rem}}
@media(max-width:1199px){h1{font-size:3.5rem}h2{font-size:2.5rem}.wrap{width:calc(100% - 64px)}.desktop-nav{gap:16px;margin-left:0}.header-contact{display:none}.hero-grid{gap:35px}.hero-last .tape{width:120px;height:32px}.hero-side{padding-left:0}.hero-counter{margin-top:24px}.services-grid{gap:55px}.price-grid{gap:55px}.price-grid h2{font-size:2.5rem}.section-heading{gap:45px}.contact-heading h2{font-size:3.5rem}.gallery-grid{grid-template-columns:repeat(4,1fr)}.gallery-item img{height:220px}.process-grid{gap:20px}.process-item h3{font-size:1.3rem}.stats{gap:15px}.stats strong{font-size:2.2rem}.stats>div{gap:12px}.hero-grid h1{max-width:15ch}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex;gap:15px;align-items:center;font-size:.875rem;min-height:44px;padding:8px}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:20px 32px;border-bottom:1px solid var(--line);gap:10px}.mobile-nav a{padding:8px}.hero-grid{grid-template-columns:1.2fr 1fr;gap:25px}.hero-last .tape{width:100px}.stats-cta{display:none}.stats{grid-template-columns:repeat(3,1fr)}.section{padding-block:75px}.featured-grid{column-gap:5%}.project-caption h3{font-size:1.4rem}.project-2{margin-top:100px}.project-3{margin-top:-30px}.project-4{margin-top:70px}.services-grid{gap:40px}.service h3{font-size:1.2rem}.service .index{display:none}.service p{margin-left:0}.process-grid{grid-template-columns:repeat(2,1fr);row-gap:35px}.process-item h3{margin-top:20px;max-width:none}.reviews-grid{gap:22px}.review blockquote{font-size:1.15rem}.about-section{gap:6%}.about-copy h2{font-size:2.2rem}.warranty{gap:18px}.contact-grid{gap:7%}.animation-controls>div{gap:15px}.stages{gap:14px}.dialog-layout{grid-template-columns:1fr 1fr;gap:22px;padding:20px}}
@media(max-width:700px){body{font-size:1rem}.wrap{width:calc(100% - 40px)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}.section{padding-block:60px}.site-header{width:calc(100% - 32px);height:78px;gap:15px}.brand{width:95px}.brand img{height:54px}.header-right{gap:16px}.languages{gap:9px;font-size:.6875rem}.menu-toggle{font-size:.75rem;gap:9px;padding-right:0}.hero{padding-top:20px}.hero-type{display:none}.eyebrow{font-size:.6875rem;letter-spacing:.055em}.hero-grid{display:block;padding:25px 0 28px}.hero-grid h1{max-width:none}.hero-last .tape{height:25px;width:105px;margin-left:8px}.hero-side{margin-top:23px}.hero-side>p{font-size:1rem;max-width:45ch}.hero-side>.text-link{margin-top:12px;font-size:.875rem}.hero-counter{display:none}.animation-intro{display:block;margin-bottom:12px}.animation-intro h2{font-size:.875rem;font-weight:500}.animation-intro p{margin-top:7px;font-size:.6875rem;max-width:none;justify-content:space-between}.animation-controls{display:block;padding-top:10px}.animation-controls>div{justify-content:space-between;margin-top:5px}.stages{justify-content:space-between;gap:10px;font-size:.625rem}.stages li{gap:5px}.stages span{width:21px;height:21px;font-size:.5625rem}.animation-controls .small-link{font-size:.6875rem}.stats{gap:12px;padding:25px 0 30px}.stats>div{display:block}.stats strong{font-size:2rem;display:block}.stats span{font-size:.6875rem;display:block;margin-top:3px}.ticker{padding-block:13px}.ticker>div{font-size:1.5rem;gap:22px}.ticker .tape{width:105px;height:20px}.section-heading{display:block;margin:20px 0 30px}.section-heading>div{margin-top:22px;max-width:none}.section-heading p{font-size:1rem}.section-heading .caption{font-size:.75rem;margin-top:12px}.featured-grid{display:block}.project{margin:0 0 40px}.project .comparison{max-height:none;max-width:100%}.project-2 .comparison{aspect-ratio:3/4}.project-2 .comparison>img{object-fit:contain}.project-3,.project-4{margin-top:0}.project-4{max-width:86%;margin-left:auto}.project-caption h3{font-size:1.4rem}.project-caption .eyebrow{font-size:.5625rem}.circle-button{width:42px;height:42px}.project-heading .eyebrow{font-size:.625rem}.pair-count{font-size:.625rem}.project>.text-link{font-size:.75rem}.gallery-invite{margin-top:15px;display:block;padding-block:25px}.gallery-invite h3{font-size:1.4rem;max-width:none;margin-bottom:20px}.button{font-size:.875rem;min-height:50px;padding:14px 18px}.gallery-invite .button{width:100%}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:24px 16px}.gallery-item img{height:210px}.gallery-item>span{font-size:.75rem}.services-grid{display:block}.service-title h2{max-width:22ch}.service-title>p:not(.eyebrow){font-size:1rem;max-width:none}.detail-photo{display:none}.services-list{padding-top:35px}.service{padding-block:20px}.service h3{font-size:1.25rem;max-width:25ch}.service p{font-size:.9375rem;margin-right:12px}.process-section>h2{margin-bottom:32px}.process-grid{gap:28px 20px}.process-item h3{font-size:1.2rem;margin:18px 0 12px}.process-item p{font-size:.875rem}.duration{display:block;margin-top:30px;padding-bottom:0}.duration strong{font-size:1.4rem}.duration p{font-size:.875rem;margin-top:13px}.price-grid{display:block}.price-grid h2{font-size:2rem}.price-number{font-size:5.2rem}.price-intro{font-size:.9375rem}.price-details{padding-top:24px}.price-details h3{font-size:1.2rem}.price-details p{font-size:.9375rem}.payment{margin-top:30px}.payment p{font-size:.9375rem}.about-section{display:flex;flex-direction:column-reverse;gap:30px}.about-copy h2{font-size:2rem}.about-copy>p:not(.eyebrow){font-size:.9375rem}.about-photo{width:82%;align-self:start}.about-photo img{max-height:500px}.warranty p{font-size:.8125rem}.warranty>span{font-size:3.4rem}.reviews-grid{display:block}.review{padding-block:22px}.review blockquote{font-size:1.3rem;max-width:30ch;margin:18px 0 25px}.review figcaption{font-size:.75rem}.review:last-child{border-bottom:1px solid var(--line)}#more-reviews{margin-top:15px}.faq-section{display:block}.faq-section h2{margin:20px 0 25px}.faq-section>.tape{display:none}.faq-section>div:first-child .tape{display:none}.faq-section>div:last-child{margin-top:25px}.faq summary{font-size:1rem}.faq p{font-size:.9375rem}.contact-heading{margin:20px 0 30px;gap:10px}.contact-heading h2{font-size:2.5rem;max-width:17ch}.contact-arrow{font-size:4rem;align-self:end;margin-bottom:8px}.contact-grid{display:block}.contact-grid .lead{font-size:1.2rem;max-width:none}.contact-actions{margin-top:35px}.contact-button{font-size:1.4rem}.contact-section .caption{font-size:.8125rem}.photo-list li{font-size:.875rem}.hours{margin-top:24px}.site-footer{padding-block:25px 88px}.footer-top{flex-wrap:wrap;gap:20px}.footer-brand{width:105px}.footer-top p{font-size:.75rem;max-width:22ch}.footer-top>.text-link{font-size:.75rem;width:100%}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom nav{order:-1;width:100%;justify-content:space-between;gap:15px;font-size:.875rem;padding:8px 0}.footer-bottom .small-link{font-size:.6875rem}#koraci-strip-v3{height:57px}.mobile-contact{display:flex;position:fixed;bottom:12px;left:20px;right:20px;z-index:10;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--yellow);color:var(--ink);box-shadow:0 3px 16px #0002;font-size:.875rem;border:1px solid #1f1f1f30;transition:transform .2s}.mobile-contact.is-hidden{transform:translateY(100px)}dialog{width:100%;height:100dvh;max-height:100dvh;margin:0;max-width:100%}.dialog-top{padding:10px 18px;font-size:.6875rem}.dialog-layout{display:flex;flex-direction:column;padding:20px;gap:25px}.dialog-layout .comparison{max-height:55dvh;width:auto;max-width:100%;min-width:0}.dialog-image-area{width:100%}.dialog-copy h2{font-size:1.75rem}.dialog-copy>p:not(.eyebrow){font-size:.9375rem}.dialog-copy .button{margin-top:22px}.thumbs img{width:42px;height:52px}.thumbs{gap:5px}.dialog-copy{padding-bottom:20px}#privacy-dialog{height:auto;max-height:90dvh;margin:auto;width:calc(100% - 24px)}#privacy-dialog>p{padding:20px}:root{scroll-padding-top:20px}}
@media(max-width:380px){.languages{gap:6px}.header-right{gap:8px}.hero-last .tape{width:75px}.hero-grid h1{font-size:2.35rem}.process-grid{grid-template-columns:1fr}.gallery-item img{height:180px}.contact-heading h2{font-size:2.2rem}.contact-arrow{display:none}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}.ticker>div{animation:none}.is-finished .final-brand img,.is-finished .final-brand div{animation-delay:0s}}
@media(max-width:700px){.hero-top{display:block}.hero-type{display:block;font-size:.75rem;margin-top:8px;color:var(--muted)}}
/* Final design review: legible mobile labels and accessible contact controls. */
.contact-section a:focus-visible,.contact-section button:focus-visible{outline-color:var(--yellow)}
@media(max-width:700px){.languages{gap:3px}.languages a{min-width:28px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.animation-intro p{font-size:.8125rem}.stages,.animation-controls .small-link,.pair-count,.project-caption .eyebrow,.project-heading .eyebrow{font-size:.75rem}.stages{gap:6px}.stages li{gap:4px}.stages span{font-size:.625rem}}
/* Quiet motion: image comparisons retain exact alignment. */
.gallery-item{transition:transform .4s cubic-bezier(.2,.65,.3,1)}
.gallery-item img{transition:filter .4s ease}
.text-link span,.contact-button span,.gallery-item>span>span{display:inline-block;transition:transform .3s ease}
.circle-button{transition:background .3s,color .3s,transform .3s}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
.gallery-item:hover{transform:translateY(-4px)}
.gallery-item:hover img{filter:brightness(1.035)}
.gallery-item:hover>span>span,.contact-button:hover span{transform:translate(3px,-3px)}
.text-link:hover span{transform:translateX(3px)}
.circle-button:hover{background:var(--yellow);transform:rotate(-8deg)}
}
@media(prefers-reduced-motion:reduce){.gallery-item,.gallery-item img,.text-link span,.contact-button span,.gallery-item>span>span,.circle-button{transition:none}}
/* Clearer portfolio labels; tape keeps the original image proportions. */
.tape,.hero-last .tape{width:auto;height:.58em;max-width:30vw;object-fit:contain;vertical-align:baseline}
.project-heading .eyebrow,.project-caption .eyebrow{font-size:.875rem;font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}
.project-caption .eyebrow{line-height:1.45;margin-bottom:10px}
.project>.text-link{font-size:.9375rem;min-height:44px;margin-top:14px}
.gallery-item>span{font-size:1rem;line-height:1.4;color:var(--ink)}
.gallery-item small{display:block;font-size:.8125rem;line-height:1.45;margin-top:5px;color:var(--muted)}
.dialog-nav span,.dialog-switches button,.dialog-related button{font-size:.875rem}
.dialog-switches button{min-height:44px;padding:10px 16px}
@media(max-width:700px){
.project-4{max-width:100%;margin-left:0}
.project-heading .eyebrow,.project-caption .eyebrow{font-size:.8125rem}
.project>.text-link{font-size:.875rem}
.gallery-item>span{font-size:.875rem}
.gallery-item small{font-size:.75rem}
}
.hero-estimate{margin-top:24px;display:flex;max-width:360px}.hero-side>.text-link{margin-top:14px}.comparison-help{font-size:.875rem;color:var(--muted);margin-top:12px}.project-caption{margin-top:12px}.project-caption h3{max-width:29ch}.service p{margin-left:0}.gallery-item>span{align-items:start}.gallery-item small{display:block;margin-top:6px}.review blockquote{font-size:1.2rem;line-height:1.5;max-width:none}.about-copy h2{font-size:2.6rem}.hero-grid h1{font-size:clamp(2.4rem,5.4vw,4.5rem)}.work-section{border-top:1px solid var(--line)}.section-heading{margin-top:0}.service-title h2{margin-top:0}.process-section>h2{margin-top:0}
@media(max-width:700px){.comparison-help{font-size:.8125rem}.about-copy h2{font-size:2rem}.hero-estimate{max-width:none}.project-caption h3{font-size:1.5rem}.gallery-item>span{font-size:1rem}.review blockquote{font-size:1.125rem}.hero-grid h1{font-size:clamp(2rem,9vw,2.9rem)}.hero-last{white-space:normal}}
.about-photo .portrait{aspect-ratio:4/5;object-fit:cover;max-height:none}.review h3{font-size:1.125rem;line-height:1.35;letter-spacing:-.02em;margin-top:18px}.review blockquote{margin-top:14px}.services-list{padding-top:0}
@media(max-width:700px){.about-section{flex-direction:column}.about-photo{width:100%;max-width:460px}.services-list{padding-top:28px}.review h3{font-size:1.125rem}}
/* Original tape cut-outs: natural proportions and space around the lettering. */
.hero-last .tape{display:inline-block;width:clamp(72px,11vw,150px);height:auto;max-width:none;margin-left:10px;vertical-align:middle}
.process-section h2 .tape{width:clamp(95px,11vw,145px);height:auto;vertical-align:middle;margin-left:12px}
.faq-section>div:first-child .tape{display:block;width:175px;height:auto;max-width:65%;margin:25px 0 0;object-fit:contain}
@media(max-width:700px){.hero-last .tape{width:72px;margin-left:6px}.process-section h2 .tape{width:88px;margin-left:8px}.faq-section>div:first-child .tape{width:125px;margin-top:18px}}
.detail-photo{display:block;width:240px;max-width:100%;margin-top:32px}
.detail-photo>img:not(.service-mark){width:100%;height:auto;object-fit:contain;object-position:center}
.detail-photo .service-mark{position:absolute;right:-24px;bottom:46px;width:104px;height:auto;padding:9px;background:var(--paper);object-fit:contain}
.detail-photo figcaption{font-size:.8125rem;color:var(--muted);line-height:1.4;margin-top:12px}
@media(max-width:700px){.detail-photo{width:210px;margin-top:26px}.detail-photo .service-mark{width:90px;right:-22px}}
.hero-side>.hero-service{font-weight:600;font-size:1.0625rem;line-height:1.35;margin-bottom:12px;max-width:none}.hero-service+p{margin-top:0}
@media(max-width:700px){.hero-side>.hero-service{font-size:1rem;margin-bottom:10px}.hero-grid h1{font-size:clamp(2rem,8.7vw,2.9rem)}}
/* The contact arrow points directly at the invitation, rather than empty space. */
.contact-intro{display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px;align-items:start}
.contact-intro .contact-arrow{display:block;font-size:4rem;line-height:1;align-self:start;margin:0}
@media(max-width:700px){.contact-intro{grid-template-columns:32px minmax(0,1fr);gap:12px}.contact-intro .contact-arrow{font-size:2rem;line-height:1.3}}
/* A shared photographic stage keeps each row calm and easy to compare. */
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,3.2vw,48px);row-gap:64px;align-items:start}
.featured-grid .project{margin:0;max-width:100%;min-width:0}
.featured-grid .comparison{width:100%;aspect-ratio:3/4;max-height:720px;background:#f3f3ef}
.featured-grid .comparison>img{width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:700px){.featured-grid{grid-template-columns:minmax(0,1fr);row-gap:42px}.featured-grid .comparison{aspect-ratio:3/4;max-height:none}}
.contact-heading{margin:0 0 32px}.contact-heading h2{font-size:clamp(2.2rem,4.3vw,3.5rem)}
.contact-brand{display:block;width:260px;max-width:80%;height:auto;margin:0 0 36px}
@media(max-width:700px){.contact-heading{margin-bottom:25px}.contact-heading h2{font-size:2.5rem}.contact-brand{width:210px;margin-bottom:28px}}
@media(max-width:380px){.contact-heading h2{font-size:2.2rem}}
/* Geometric, centered comparison handle; no frame around the photograph. */
.comparison:focus-within{outline:none}
.compare-range:focus-visible{outline:none}
.divider>span{border-radius:0;box-shadow:none;font-size:0;display:grid;place-items:center}
.divider>span::before{content:'';display:block;width:24px;height:24px;background:center/24px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 12h18M8 7l-5 5 5 5M16 7l5 5-5 5' fill='none' stroke='%231f1f1f' stroke-width='1' stroke-linecap='butt' stroke-linejoin='miter'/%3E%3C/svg%3E")}
.comparison:has(.compare-range:focus-visible) .divider>span{outline:2px solid white;outline-offset:3px}

/* Round handle with matching thin, straight arrow strokes. */
.divider>span{border-radius:50%;border-width:1px}

.divider>span{border-color:#fff}

/* Match the handle outline to the 2px white comparison divider. */
.divider>span{border:2px solid #fff;display:flex;align-items:center;justify-content:center;line-height:0;padding:0}
.divider>span::before{flex:0 0 24px;margin:0}
.detail-photo{display:grid;grid-template-columns:minmax(0,1fr)}
.detail-photo>img{grid-area:1/1}
.detail-photo figcaption{grid-area:2/1}
.detail-photo .service-mark{position:relative;inset:auto;justify-self:end;align-self:end;width:60px;height:auto;padding:0;margin:0 -12px 12px 0;background:transparent}
@media(max-width:700px){.detail-photo .service-mark{width:52px;inset:auto;margin-right:-10px}}
.featured-grid{align-items:stretch}
.featured-grid .project{display:flex;flex-direction:column}
.featured-grid .comparison{flex-shrink:0}
.featured-grid .project-caption{flex-grow:1;align-items:flex-start}
.project>.project-open{display:flex;width:100%;min-height:48px;margin-top:20px;padding:11px 15px;background:transparent;color:var(--ink);border:1px solid var(--line);text-align:left;justify-content:space-between;gap:18px;font-size:.9375rem;line-height:1.35}
.project-open>span{flex-shrink:0;font-size:1.35rem}
@media(hover:hover){.project>.project-open:hover{background:#f7f7f3;border-color:var(--ink);color:var(--ink)}}
@media(max-width:700px){.project>.project-open{font-size:.9375rem;margin-top:18px}}
.detail-photo.restoration-stages{width:360px;max-width:100%}.detail-photo.restoration-stages>img{width:100%;height:auto}
.faq-project-link{display:inline-flex;align-items:center;gap:16px;margin-top:14px;padding:10px 0;border-bottom:2px solid var(--yellow);font-size:1rem;font-weight:500;text-align:left;text-decoration:underline;text-underline-offset:4px}
.faq-project-link:hover{background:var(--yellow)}
.stage-photo{width:100%;aspect-ratio:3/4;background:#f3f3ef;display:flex;align-items:center;justify-content:center}
.stage-photo img{width:100%;height:100%;object-fit:contain;min-height:0}
#active-pair{--viewer-height:min(62dvh,620px);height:calc(var(--viewer-height) + 64px);display:flex;flex-direction:column;align-items:center;overflow-anchor:none}
#active-pair>.comparison,#active-pair>.stage-photo{height:var(--viewer-height);min-height:var(--viewer-height);max-height:var(--viewer-height);width:100%;max-width:100%;aspect-ratio:auto;flex:none;background:#f3f3ef}
#active-pair>.comparison>img{width:100%;height:100%;object-fit:contain}
#active-pair>.dialog-switches{height:64px;min-height:64px;margin:0;display:flex;align-items:center;justify-content:center;flex:none}
@media(max-width:700px){#active-pair{--viewer-height:55dvh}}
.stage-switches{flex-wrap:wrap;gap:8px}
.stage-switches button[aria-pressed="true"]{background:var(--ink);color:white}
/* Align photograph edges independently of the length of each project title. */
.gallery-grid{align-items:stretch}
.gallery-item{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-width:0}
.gallery-item>img{flex-shrink:0}
.gallery-item>span{flex-grow:1}
.gallery-item:hover{transform:none}
.comparison:has(.compare-range:focus-visible) .divider>span{outline:2px solid var(--ink);outline-offset:3px}

/* Align mobile statistics regardless of caption length. */
@media(max-width:700px){.stats{align-items:start}.stats strong{line-height:1.2}}

/* Vector arrows keep the same shape on iOS and Android. */
.arrow-ne{display:inline-block;width:1em;height:1em;min-width:1em;flex-shrink:0;vertical-align:-.12em;overflow:visible}

/* Balance the services columns on desktop; retain the mobile layout. */


/* Align the services list with the bottom edge of the heading on desktop. */
@media(min-width:701px){.services-grid{row-gap:0}.services-grid>.service-title{display:contents}.services-grid>.service-title>h2{grid-column:1;grid-row:1}.services-grid>.service-title>p{grid-column:1;grid-row:2}.services-grid>.service-title>figure{grid-column:1;grid-row:3}.services-grid>.services-list{grid-column:2;grid-row:2 / 4;align-self:start}}
