
body.loading{overflow:hidden}
.intro{position:fixed;z-index:9999;inset:0;background:#050505;display:grid;place-items:center;transition:opacity .7s ease,visibility .7s ease}
.intro.hide{opacity:0;visibility:hidden;pointer-events:none}
.intro-mark{position:relative;width:min(440px,82vw);overflow:hidden;opacity:0;transform:scale(.96);animation:introFade .8s .15s ease forwards}
.intro-mark img{width:100%;height:auto;display:block}
.intro-glint{position:absolute;top:-25%;bottom:-25%;width:34%;left:-55%;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,244,198,.12),rgba(255,255,255,.8),rgba(255,244,198,.18),transparent);filter:blur(2px);animation:glint 1.2s .8s ease-in-out forwards}
@keyframes introFade{to{opacity:1;transform:scale(1)}}
@keyframes glint{to{left:125%}}

:root{
  --bg:#090909;--panel:#111;--panel2:#171717;--text:#f5f1e8;--muted:#b8b0a2;
  --gold:#c9a24d;--gold2:#efd78f;--line:rgba(201,162,77,.28);--max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}img{max-width:100%;display:block}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:220px;padding:12px max(22px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to bottom,rgba(5,5,5,.96),rgba(5,5,5,.75));backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.05)}
.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:460px;height:200px;object-fit:contain;object-position:left center}.site-header nav{display:flex;gap:28px}.site-header nav a{text-decoration:none;color:#ddd;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase}.site-header nav a:hover{color:var(--gold2)}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--text);padding:9px 12px}
.hero{min-height:100svh;position:relative;display:grid;place-items:center;padding:245px 22px 70px;background:url('assets/hero-outdoor-knives.webp') 72% center/cover no-repeat}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.7) 48%,rgba(0,0,0,.45) 100%),linear-gradient(0deg,rgba(0,0,0,.72),transparent 45%)}.hero-content{position:relative;width:min(var(--max),100%)}.eyebrow{color:var(--gold2);text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700}.hero h1,.section h2,.split-copy h2,.quote-section h2,.service-area h2{font-family:Georgia,'Times New Roman',serif}.hero h1{font-size:clamp(3.2rem,8vw,7rem);line-height:.92;margin:20px 0 28px;max-width:900px;font-weight:500}.hero h1 span{color:var(--gold2)}.hero-copy{max-width:650px;font-size:1.15rem;color:#ddd}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.button{display:inline-block;padding:14px 20px;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;font-weight:700;border:1px solid var(--gold);cursor:pointer}.primary{background:var(--gold);color:#111}.primary:hover{background:var(--gold2)}.secondary{background:transparent;color:var(--text)}.secondary:hover{background:rgba(201,162,77,.12)}.scroll-cue{position:absolute;bottom:24px;color:var(--gold2);font-size:1.8rem;text-decoration:none}
.trust-strip{max-width:var(--max);margin:-45px auto 0;position:relative;z-index:4;display:grid;grid-template-columns:repeat(3,1fr);background:var(--panel2);border:1px solid var(--line)}.trust-strip div{padding:26px 28px;border-right:1px solid var(--line)}.trust-strip div:last-child{border-right:0}.trust-strip strong,.trust-strip span{display:block}.trust-strip strong{color:var(--gold2);font-family:Georgia,serif;font-size:1.15rem}.trust-strip span{font-size:.9rem;color:var(--muted);margin-top:6px}
.section{max-width:var(--max);margin:auto;padding:110px 22px}.section-heading{max-width:740px;margin-bottom:50px}.section h2,.split-copy h2,.quote-section h2,.service-area h2{font-size:clamp(2.2rem,5vw,4.3rem);line-height:1.05;margin:12px 0 20px;font-weight:500}.section-heading>p:last-child,.split-copy>p,.quote-copy>p,.service-area>p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{padding:30px;background:var(--panel);border:1px solid rgba(255,255,255,.07);min-height:235px}.service-card:hover{border-color:var(--line);transform:translateY(-3px);transition:.25s}.service-card span{color:var(--gold);font-size:.75rem;letter-spacing:.15em}.service-card h3{font-family:Georgia,serif;font-size:1.35rem;margin:28px 0 12px}.service-card p{color:var(--muted);margin:0}.note{margin-top:28px;color:var(--muted)}.note a{color:var(--gold2)}
.split-section{display:grid;grid-template-columns:1fr 1fr;min-height:720px;background:var(--panel)}.split-image{background:url('assets/about-sharpening.webp') center 42%/cover no-repeat;min-height:520px}.split-copy{padding:90px max(28px,calc((100vw - var(--max))/2));padding-left:clamp(35px,7vw,110px);align-self:center}.check-list{list-style:none;padding:0;margin:30px 0}.check-list li{padding:10px 0 10px 28px;position:relative;border-bottom:1px solid rgba(255,255,255,.06)}.check-list li:before{content:'◆';position:absolute;left:0;color:var(--gold);font-size:.65rem;top:15px}
.gallery-section{max-width:none;padding-left:max(22px,calc((100vw - var(--max))/2));padding-right:max(22px,calc((100vw - var(--max))/2))}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gallery-item{margin:0;position:relative;overflow:hidden;aspect-ratio:4/5;background:#111}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.9));font-size:.8rem;text-transform:uppercase;letter-spacing:.09em}.gallery-note{text-align:center;color:var(--muted);margin-top:24px}
.process-section{border-top:1px solid rgba(255,255,255,.05)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{padding:28px 8px}.step span{display:grid;place-items:center;width:56px;height:56px;border:1px solid var(--gold);border-radius:50%;color:var(--gold2);font-family:Georgia,serif;font-size:1.4rem}.step h3{font-family:Georgia,serif;font-size:1.35rem}.step p{color:var(--muted)}
.quote-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:100px max(22px,calc((100vw - var(--max))/2));background:linear-gradient(145deg,#15120c,#090909 55%)}.contact-details{margin-top:34px;display:grid;gap:12px}.contact-details a{text-decoration:none;padding:16px 0;border-bottom:1px solid var(--line)}.contact-details strong,.contact-details span{display:block}.contact-details span{color:var(--muted)}.quote-form{background:rgba(0,0,0,.38);border:1px solid var(--line);padding:32px}.quote-form label{display:block;margin-bottom:18px;font-size:.83rem;text-transform:uppercase;letter-spacing:.08em;color:#ddd}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:7px;padding:13px;background:#0c0c0c;border:1px solid #3b3529;color:white;font:inherit}.quote-form button{width:100%}.form-note{font-size:.76rem;color:var(--muted);text-align:center;margin-bottom:0}
.hours-section{max-width:var(--max);margin:auto;padding:100px 22px;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.hours-card{border:1px solid var(--line);padding:35px}.hours-card div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06)}.hours-card div span{color:var(--muted)}.hours-card>p:last-child{color:var(--gold2);font-size:.9rem}.service-area .button{margin-top:18px}
footer{text-align:center;padding:55px 22px;border-top:1px solid rgba(255,255,255,.07);color:var(--muted);font-size:.85rem}footer img{width:220px;height:150px;object-fit:contain;object-position:center;margin:0 auto 12px}footer p{margin:5px}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header nav{position:absolute;top:220px;left:0;right:0;background:#090909;display:none;flex-direction:column;padding:24px}.site-header nav.open{display:flex}.menu-toggle{display:block}.trust-strip{margin:0;grid-template-columns:1fr}.trust-strip div{border-right:0;border-bottom:1px solid var(--line)}.service-grid{grid-template-columns:1fr 1fr}.split-section{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.quote-section,.hours-section{grid-template-columns:1fr;gap:40px}.split-copy{padding:70px 25px}}
@media(max-width:560px){.hero{background-position:58% center}.hero h1{font-size:3.4rem}.service-grid,.steps{grid-template-columns:1fr}.gallery-grid{gap:6px}.gallery-item figcaption{font-size:.68rem;padding-left:9px}.actions .button{width:100%;text-align:center}.section{padding-top:80px;padding-bottom:80px}.hours-card div{display:block}.hours-card div strong{display:block;margin-top:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.gallery-item img{transition:none}}

@media(prefers-reduced-motion:reduce){.intro-mark,.intro-glint{animation:none}.intro-mark{opacity:1;transform:none}}

@media(max-width:560px){.site-header{height:135px}.brand img{width:250px;height:118px;object-fit:contain}.site-header nav{top:135px}.hero{padding-top:160px;background-position:65% center}}
/* V6: stronger desktop branding + expandable category galleries */
@media(min-width:901px){.site-header{height:270px}.brand img{width:650px;height:245px}.site-header nav{gap:24px}.hero{padding-top:270px}}
.category-gallery{grid-template-columns:repeat(4,1fr);gap:12px}.gallery-category{appearance:none;border:0;padding:0;margin:0;position:relative;overflow:hidden;aspect-ratio:4/5;background:#111;color:var(--text);cursor:pointer;text-align:left}.gallery-category img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-category:hover img{transform:scale(1.04)}.gallery-category>span{position:absolute;left:0;right:0;bottom:0;padding:42px 16px 16px;background:linear-gradient(transparent,rgba(0,0,0,.94))}.gallery-category strong{display:block;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.gallery-category small{display:block;color:#c9c0ae;margin-top:5px}.gallery-modal{position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.9);display:none;padding:40px 20px;overflow:auto}.gallery-modal.open{display:block}.gallery-modal-panel{max-width:1100px;margin:auto;background:#0c0c0c;border:1px solid var(--line);padding:28px;position:relative}.gallery-modal-panel h3{font-size:2rem;margin:0 55px 24px 0}.gallery-close{position:absolute;right:20px;top:14px;border:0;background:none;color:#fff;font-size:2.5rem;cursor:pointer}.gallery-modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-modal-grid figure{margin:0;background:#111}.gallery-modal-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.gallery-modal-grid figcaption{padding:10px 12px;color:#ddd;font-size:.82rem}.gallery-note{max-width:760px;margin-left:auto;margin-right:auto}
@media(max-width:900px){.category-gallery{grid-template-columns:1fr 1fr}.gallery-modal-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.category-gallery{gap:7px}.gallery-category strong{font-size:.7rem}.gallery-category small{font-size:.68rem}.gallery-category>span{padding:35px 9px 10px}.gallery-modal{padding:18px 8px}.gallery-modal-panel{padding:18px 10px}.gallery-modal-grid{grid-template-columns:1fr 1fr;gap:7px}}

.contact-details em{font-style:normal;color:#d8c99a;font-size:.9em}.location-note{margin-top:16px;color:#ddd}.location-note strong{color:var(--gold)}
