@font-face{font-family:Workshop;src:url('/fonts/workshop-stencil.woff2?v=65a0c0c1a2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
:root{--oil:#211b16;--deep:#17120f;--bone:#f6eedc;--muted:#cabba4;--accent:#f2593a;--accent-hover:#ff8064;--ink:#241a10;--rule:#75634d;--rust:#8f2f20;--measure:70ch;--gutter:max(4vw,calc((100% - 1160px)/2));color-scheme:dark;scrollbar-color:var(--accent) var(--oil)}
*{box-sizing:border-box}html{scroll-padding-top:1rem}body{margin:0;background:var(--oil);color:var(--bone);font-family:Arial,'Liberation Sans',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:1rem;line-height:1.6}::selection{background:var(--accent);color:var(--ink)}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.25em}a[href^="tel:"]{white-space:nowrap}a:hover{text-decoration-thickness:2px;color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:#f2593a55}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2}h1,h2,h3,p,figure,dl{margin:0}p{max-width:var(--measure)}h1,h2,h3,.brand{font-family:Workshop,'Arial Narrow',sans-serif;font-weight:800;line-height:1;letter-spacing:-.025em;text-wrap:balance}
h1,h2,h3{overflow-wrap:break-word;hyphens:auto}h1{font-size:clamp(3.5rem,7vw,6rem);text-transform:uppercase}h2{font-size:clamp(2.5rem,4vw,4.5rem)}h3{font-size:2rem}main:focus{outline:0}section{scroll-margin-top:1.5rem}.skip{position:absolute;top:8px;left:8px;transform:translateY(-180%);z-index:10;padding:.75rem 1rem;background:var(--accent);color:var(--ink)}.skip:focus{transform:none}.skip:hover{color:var(--ink)}.site-header{background:var(--deep);border-bottom:1px solid var(--rule)}nav{padding:1.2rem var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{font-size:2rem;text-decoration:none;white-space:nowrap}.nav-links{display:flex;gap:1.6rem;align-items:center}.nav-links>a{position:relative;font-size:.9rem;text-decoration:none;padding:.4rem 0}.nav-links>a:after{content:'';position:absolute;inset:-6px}.nav-links>a[aria-current]{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px}.nav-links>.nav-cta{color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent)}.hero{min-height:650px;position:relative;isolation:isolate;background:var(--deep);display:flex;align-items:center;padding:3rem var(--gutter) 5.5rem;overflow:hidden}.hero-photo{position:absolute;inset:0;z-index:-2}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:75% 63%}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(23,18,15,.96) 0%,rgba(23,18,15,.84) 32%,rgba(23,18,15,.3) 72%,rgba(23,18,15,.22))}.hero-content{max-width:610px}.hero-line{max-width:32ch;font-size:clamp(1.1rem,1.8vw,1.4rem);margin:1.7rem 0 2rem;color:var(--bone);text-wrap:balance}.button{display:inline-flex;gap:1.1rem;justify-content:center;align-items:center;background:var(--accent);border:1px solid var(--accent);color:var(--ink);text-decoration:none;font-weight:750;min-height:54px;padding:.85rem 1.4rem}.button:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--ink);text-decoration:underline}.button:focus-visible{outline-color:var(--bone)}.hero-contact{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.5rem;font-size:.9rem;font-variant-numeric:tabular-nums}.hero-location{position:absolute;left:var(--gutter);bottom:1.5rem;font-size:.8rem;color:var(--bone)}.section{padding:6rem var(--gutter)}.section-title{margin-bottom:2.5rem}.section-title p{margin-top:1.5rem;color:var(--muted);text-wrap:balance}
.services-teaser .experience-line{margin-top:.6rem;font-size:clamp(1.25rem,4vw + .5rem,2em);line-height:1.3}
.services-teaser .experience-line+p{margin-top:1.25rem}.text-link{display:inline-block;margin-top:1.5rem;font-weight:650}.services-teaser{display:grid;grid-template-columns:1fr 1.15fr;gap:5vw}.service-sheet{border-top:1px solid var(--accent);font-variant-numeric:tabular-nums}.service-sheet>div{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1.5rem;padding:1.15rem 0;border-bottom:1px solid var(--rule)}
.service-sheet dt{min-width:0;overflow-wrap:break-word}.service-sheet dt{font-size:1.12rem;font-weight:650}.service-sheet dd{margin:0;color:var(--muted);font-size:.8rem}.shop-strip{padding-top:1rem}.shop-strip .section-title{display:flex;align-items:baseline;justify-content:space-between;gap:2rem}.photo-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.photo-plate{position:relative;min-width:0}.photo-plate>a{position:relative;display:block;overflow:hidden}.photo-plate img{width:100%;object-fit:cover}.photo-strip img{aspect-ratio:1.2;height:auto;object-fit:cover;object-position:center}.photo-plate>a:after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#f2593a33 47%,transparent 70%);transform:translateX(-120%);opacity:0}.photo-plate>a:hover:after,.photo-plate>a:focus-visible:after{animation:work-light .7s cubic-bezier(.16,1,.3,1) both}@keyframes work-light{0%{transform:translateX(-120%);opacity:0}20%{opacity:1}100%{transform:translateX(120%);opacity:0}}.contact{background:var(--accent);color:var(--ink);padding:4.5rem var(--gutter);display:grid;grid-template-columns:1fr 1.2fr;gap:6vw;color-scheme:light}.contact h1,.contact h2{font-size:clamp(3rem,5vw,5rem);max-width:9ch}.contact-copy>p{margin-top:1.6rem}.contact-copy>a{display:inline-block;margin-top:1.6rem;font-size:1.3rem;font-weight:750}.contact a:hover{color:var(--ink)}.contact :focus-visible{outline-color:var(--ink)}form{max-width:600px;min-width:0}form label{display:block;font-weight:650;margin:.9rem 0 .35rem}form label:first-of-type{margin-top:0}input,textarea{width:100%;border:1px solid #75603a;border-radius:0;background:#fff9ea;color:var(--ink);padding:.75rem;caret-color:var(--rust);line-height:1.4}textarea{resize:vertical;min-height:130px}
input:user-invalid,textarea:user-invalid{border:2px solid var(--rust);padding:calc(.75rem - 1px)}input:focus-visible,textarea:focus-visible{outline:3px solid var(--ink);outline-offset:2px}form button{margin-top:1.3rem;min-height:54px;width:100%;background:var(--ink);color:var(--bone);border:2px solid var(--ink);font-weight:750;padding:.8rem 1rem}form button:hover{background:#46321e}form button:disabled{background:#695330;color:#fff3da;cursor:wait}form button:focus-visible{outline-color:var(--ink)}.form-status:not(:empty){padding:1rem 0;font-weight:700}.form-status.is-error{color:#461008}.form-status.is-ok{color:#172a18}.form-note{font-size:.85rem;margin-top:1rem}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.page-intro{padding-top:4.5rem;padding-bottom:0}
.page-intro:after{content:'';display:block;height:1px;margin-top:3.5rem;background:var(--rule)}
.page-intro:has(+.services-detail):after{content:none}.page-intro>.button{margin-top:2rem}.services-detail{padding-top:3rem}.service-photo{display:grid;grid-template-columns:1.4fr 1fr;gap:4vw;align-items:center;padding-top:1rem}.service-photo img{aspect-ratio:1.3;object-position:center}.service-photo p,.shop-close p{margin-top:1.5rem;color:var(--muted)}.shop-close>.button{margin-top:2rem}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 1.2rem}.gallery .photo-plate img{aspect-ratio:3/4}.gallery .photo-plate:last-child img{object-position:left center}.gallery-section{padding-top:3rem}.visit{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.visit h2{margin-bottom:1.5rem}.shop-hours dl>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--rule);font-variant-numeric:tabular-nums}.shop-hours dd{margin:0;white-space:nowrap}.shop-hours p{color:var(--muted);font-size:.8rem;margin-top:.7rem}.directions p+p{margin-top:1rem} .video-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;justify-items:center;gap:2rem;padding-block:4.5rem}
.viking-link{display:block;width:100px}
.viking-link img{width:100px;height:100px}
.video-trigger{display:flex;align-items:center;gap:1.5rem;color:var(--bone);text-decoration:none}.video-trigger:hover{color:var(--bone)}
.video-trigger:hover .video-play{background:var(--accent)}
.video-trigger:hover .video-play svg{fill:var(--ink);stroke:var(--ink)}.video-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.video-thumbnail{position:relative;display:block;flex:0 0 250px;width:250px;aspect-ratio:16/9}.video-thumbnail picture{display:block;height:100%}.video-thumbnail img{width:100%;height:100%;object-fit:cover}.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--deep)}.video-play svg{width:22px;height:22px;fill:var(--accent);stroke:var(--accent)}.video-description{display:block;min-width:0}.video-title{display:block;font-weight:650;line-height:1.4}.video-credit{display:block;margin-top:.3rem;color:var(--muted);font-size:.85rem;line-height:1.4}.video-action{display:block;margin-top:.35rem;color:var(--accent);font-size:.9rem;text-decoration:underline;text-underline-offset:.25em}.video-trigger:hover .video-action{text-decoration-thickness:2px}.video-open,.photo-open{overflow:hidden}#video-dialog{width:min(1000px,calc(100% - 2rem));max-height:calc(100svh - 2rem);padding:0;border:1px solid var(--rule);background:var(--deep);color:var(--bone)}#video-dialog::backdrop{background:#17120fe6}.video-dialog-head{display:flex;gap:1rem;align-items:center;padding:1rem}.video-dialog-head h2{flex:1;min-width:0;font-size:1.75rem;line-height:1.1}.video-dialog-head button{display:flex;align-items:center;gap:.4rem;flex-shrink:0;min-height:44px;padding:.5rem .75rem;border:1px solid var(--rule);background:var(--oil);color:var(--bone)}.video-dialog-head button:hover{background:var(--ink);color:var(--accent)}.video-player{aspect-ratio:16/9}.video-player iframe{display:block;width:100%;height:100%;border:0}.credit{font-size:.8rem;color:var(--muted);margin-top:1rem;max-width:75ch}.site-footer{background:var(--deep);padding:3rem 4vw 1.5rem}.footer-top,.footer-bottom{max-width:1160px;margin:auto;display:flex;justify-content:space-between;gap:2rem}.footer-top>div{display:grid;gap:.4rem}.footer-top p{font-size:.95rem}.footer-bottom{border-top:1px solid var(--rule);margin-top:3rem;padding-top:1.2rem;font-size:.75rem;color:var(--muted);flex-wrap:wrap;align-items:center}
.made-by{display:inline-flex;align-items:center;gap:.6rem;padding-block:.5rem}
.made-by img{width:28px;height:28px}.result{max-width:1100px;padding:4rem 4vw;margin:auto}.result p{margin:1.8rem 0}.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}

@media(max-width:800px){nav{gap:1rem;flex-wrap:wrap}.nav-links{gap:1.3rem}.services-teaser{grid-template-columns:minmax(0,1fr);gap:1rem}.services-teaser .section-title{max-width:650px}.contact{grid-template-columns:1fr;gap:2.5rem}.contact-copy{display:grid;grid-template-columns:1.1fr 1fr;gap:1.5rem}.contact-copy h1,.contact-copy h2{grid-row:span 3}.contact-copy>p,.contact-copy>a{margin:0}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.service-photo{grid-template-columns:1fr 1fr}.hero:before{background:linear-gradient(90deg,#17120ff0,#17120f99)}.hero-contact{max-width:30ch}.footer-top{flex-wrap:wrap}}
@media(max-width:550px){:root{--gutter:6vw}
nav{padding:.75rem 6vw;row-gap:.25rem}
.video-section{grid-template-columns:minmax(0,1fr);gap:2.5rem}.video-trigger{flex-direction:column;gap:1rem;text-align:center}.video-thumbnail{flex:none}.nav-links{gap:.25rem 1.1rem;flex-wrap:wrap}.nav-links>a{font-size:.85rem}.hero{padding:2.5rem 6vw 2.5rem;min-height:0;flex-direction:column;align-items:flex-start}.hero-photo img{object-position:65% center;opacity:.8}.hero:before{background:linear-gradient(180deg,#17120fe6,#17120fc9 50%,#17120f66)}.hero-line{max-width:25ch;margin:1.6rem 0}.hero .button{padding:.85rem 1.1rem;width:100%}.hero-contact{font-size:.95rem;display:grid;gap:0;margin-top:.8rem}.hero-contact a{padding:.6rem 0}.hero-location{position:static;margin-top:2.5rem}.section{padding:3.5rem 6vw}.section-title{margin-bottom:2rem}.shop-strip{padding-top:0}.shop-strip .section-title{display:block}.photo-strip{grid-template-columns:1fr 1fr;gap:.6rem}.photo-strip img{aspect-ratio:3/4}.service-sheet>div{column-gap:1rem}.service-sheet dt{font-size:1rem}.service-sheet dd{font-size:.75rem;text-align:right}.contact{padding:3.5rem 6vw}.contact-copy{display:block}.contact h1,.contact h2{max-width:10ch}.contact-copy>p,.contact-copy>a{margin-top:1.2rem}.page-intro{padding-bottom:0}
.page-intro h1{font-size:min(3.8rem,17vw)}.gallery{grid-template-columns:1fr;gap:2rem}.gallery-section{padding-top:2rem}.service-photo{grid-template-columns:1fr;gap:2rem}.visit{grid-template-columns:1fr;gap:3rem}.footer-top{display:grid;gap:2rem}.footer-top>div{gap:0}.footer-top>div>a{padding:.55rem 0}.site-footer{padding:2.5rem 6vw 1.5rem}.footer-bottom{gap:1rem}.contact form{max-width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}

.services-detail>.button{margin-top:2rem}.shop-close>p:first-child{margin-top:0}

.brand-header{display:block;width:48px;height:48px;flex:0 0 48px}.brand-footer{display:block;width:96px;height:96px}.brand img{width:100%;height:100%;object-fit:contain;aspect-ratio:1}.hero-sign{display:block;width:min(420px,100%)}.hero-sign img{width:100%;height:auto}.hero-content{max-width:610px}.hero-line{max-width:32ch}@media(max-width:550px){.hero-sign{width:min(300px,100%)}.hero-line{font-size:1.1rem;max-width:28ch}}

#video-dialog:not([open]){display:none}
.lightbox{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:var(--deep);color:var(--bone);display:grid;grid-template:"bar bar bar" auto "prev stage next" minmax(0,1fr)/5.5rem minmax(0,1fr) 5.5rem}
.lightbox:not([open]){display:none}
.lightbox::backdrop{background:var(--deep)}
.lightbox-bar{grid-area:bar;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem}
.lightbox-count{font-size:.9rem;color:var(--muted);font-variant-numeric:tabular-nums}
.lightbox-close,.lightbox-prev,.lightbox-next{display:flex;align-items:center;justify-content:center;gap:.4rem;min-width:44px;min-height:44px;border:1px solid var(--rule);background:var(--oil);color:var(--bone)}
.lightbox-close{padding:.5rem .75rem}
.lightbox-prev,.lightbox-next{align-self:center;justify-self:center;width:56px;height:56px}
.lightbox-prev{grid-area:prev}
.lightbox-next{grid-area:next}
.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:var(--ink);color:var(--accent);border-color:var(--accent)}
.lightbox-stage{grid-area:stage;min-height:0;padding-bottom:1.5rem;touch-action:pan-y pinch-zoom}
.lightbox-stage picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.lightbox-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
@media(max-width:550px){.lightbox{grid-template:"bar bar" auto "stage stage" minmax(0,1fr) "prev next" auto/1fr 1fr}
.lightbox-stage{padding-bottom:0}
.lightbox-prev,.lightbox-next{width:100%;height:64px;border-width:1px 0 0}
.lightbox-prev{border-right-width:1px}
}
