:root{--ink:#1d2024;--paper:#f6f2ea;--orange:#e8590c;--orange-d:#c24a08;--steel:#4a5560;--line:#d9d2c3}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font-family:'Work Sans',system-ui,sans-serif;color:var(--ink);background:var(--paper);font-size:1.05rem}
h1,h2,h3,.brand{font-family:'Big Shoulders Display',Impact,sans-serif;text-transform:uppercase;letter-spacing:.01em;line-height:.95}
.navbar{background:var(--ink);border-bottom:4px solid var(--orange)}
.navbar .brand{color:#fff;font-size:1.6rem;font-weight:800;text-decoration:none}
.navbar .brand span{color:var(--orange)}
.navbar .nav-link{color:#e9e6df;font-weight:500;text-transform:uppercase;font-size:.85rem;letter-spacing:.08em}
.navbar .nav-link:hover{color:var(--orange)}
.navbar-toggler{border-color:#777}.navbar-toggler-icon{filter:invert(1)}
.btn-jar{background:var(--orange);color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:0;padding:.8rem 1.6rem;border:0}
.btn-jar:hover{background:var(--orange-d);color:#fff}
.btn-line{border:2px solid var(--ink);color:var(--ink);font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:0;padding:.75rem 1.5rem}
.btn-line:hover{background:var(--ink);color:#fff}
.hero{padding:3rem 0 0;position:relative}
.eyebrow{font-weight:700;text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;color:var(--orange-d)}
.hero h1{font-size:clamp(3.4rem,9vw,7rem);font-weight:900;margin:.6rem 0 1rem}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero p.lead{max-width:34rem}
.hero-photo{width:100%;height:clamp(300px,52vh,520px);object-fit:cover;object-position:center 40%;border:6px solid #fff;box-shadow:0 0 0 1px var(--line)}
.tape{height:34px;margin-top:2.5rem;background:#f2c200;border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);position:relative;
background-image:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 12px),repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 60px);
background-size:100% 10px,100% 20px;background-repeat:repeat-x;background-position:0 0,0 0;background-color:#f2c200}
.facts{background:var(--ink);color:#fff}
.facts .f{padding:1.2rem 0;font-family:'Big Shoulders Display';text-transform:uppercase;font-size:1.35rem;font-weight:700;letter-spacing:.03em}
.facts .f small{display:block;font-family:'Work Sans';font-size:.72rem;letter-spacing:.14em;color:#f4a26b;font-weight:600}
section{padding:4.5rem 0}
h2{font-size:clamp(2.4rem,5vw,3.8rem);font-weight:900;margin-bottom:1.2rem}
h2::after{content:"";display:block;width:70px;height:6px;background:var(--orange);margin-top:.8rem}
.svc{border-top:3px solid var(--ink);padding:1.1rem 0 1.4rem}
.svc h3{font-size:1.7rem;font-weight:800;margin-bottom:.4rem}
.svc .n{font-family:'Big Shoulders Display';color:var(--orange);font-weight:800;font-size:1rem;letter-spacing:.1em}
.svc p{margin:0;color:var(--steel)}
.gal img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;border:4px solid #fff;box-shadow:0 0 0 1px var(--line)}
.ba{background:#fff}
.ba figure{margin:0}.ba img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.ba figcaption{font-family:'Big Shoulders Display';text-transform:uppercase;font-weight:800;letter-spacing:.08em;padding:.4rem .7rem;background:var(--ink);color:#fff}
.ba figure.after figcaption{background:var(--orange)}
.about{background:var(--ink);color:#e9e6df}
.about h2{color:#fff}
.about .big{font-family:'Big Shoulders Display';font-size:clamp(1.8rem,3.4vw,2.6rem);text-transform:uppercase;font-weight:800;line-height:1.05;color:#fff}
.about ul{list-style:none;padding:0;margin:0}.about li{padding:.55rem 0;border-bottom:1px solid #3b4148}.about li::before{content:"✓ ";color:var(--orange);font-weight:700}
.contact .card-c{border:3px solid var(--ink);padding:2rem;background:#fff;height:100%}
.contact .ph{font-family:'Big Shoulders Display';font-size:clamp(2.4rem,6vw,3.6rem);font-weight:900;color:var(--ink);text-decoration:none;line-height:1}
.contact .ph:hover{color:var(--orange)}
.contact a.em{color:var(--ink);font-weight:600;word-break:break-all}
footer{background:#111;color:#bbb;padding:2rem 0;font-size:.9rem}
footer a{color:#fff}
@media(max-width:575px){section{padding:3rem 0}.hero{padding-top:2rem}.hero-photo{height:280px}}
