@font-face{font-family:Blacksword;src:url(/fonts/Blacksword.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:dark;--ink:#a6a6a6;--muted:#8b918b;--paper:#282a2e;--accent:#95bf48;--line:#474a51;--header-bg:#0a0808;color:var(--ink);background:var(--paper);font-family:Helvetica,Verdana,Arial,sans-serif;line-height:1.7}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.25em}img{max-width:100%;height:auto;display:block}h1,h2,h3{text-wrap:balance;color:var(--accent);font-family:Blacksword,Dancing Script,cursive;font-weight:400;line-height:1.3}h1{margin:.4em 0;font-size:clamp(2.5rem,5vw,4.5rem)}h2{font-size:clamp(1.7rem,3vw,2.6rem)}h3{font-size:1.8rem}p{margin:0 0 1.2em}section[id],div[id]{scroll-margin-top:2rem}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.container{width:min(1200px,90%);margin-inline:auto}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-family:inherit;font-size:.75rem;font-weight:600}.site-header{background:var(--header-bg);color:#a6a6a6;border-bottom:1px solid #2f2525}.header-inner{justify-content:space-between;align-items:center;gap:2rem;width:min(1200px,90%);margin:auto;padding:1rem 0;display:flex}.brand{flex-shrink:0}.brand img{width:235px}nav{gap:clamp(1rem,4vw,3rem);display:flex}nav a{border-bottom:1px solid #0000;padding:.5rem 0;text-decoration:none}nav a:hover,nav a[aria-current]{color:var(--accent);border-color:var(--accent)}.hero-slideshow{background:#000;height:min(700px,72vh);position:relative;overflow:hidden}.hero-slideshow img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.2s;position:absolute;inset:0}.hero-slideshow img.is-active{opacity:1}.slide-arrow{z-index:2;color:#fff;cursor:pointer;background:#0a080873;border:none;padding:.4em .5em;font-size:2.2rem;line-height:1;transition:background .2s;position:absolute;top:50%;transform:translateY(-50%)}.slide-arrow:hover{background:#0a0808cc}.slide-arrow.prev{left:0}.slide-arrow.next{right:0}.lightbox{background:0 0;border:none;max-width:92vw;max-height:92vh;padding:0}.lightbox::backdrop{background:#050505eb}.lightbox img{width:auto;max-width:92vw;height:auto;max-height:84vh;margin:0 auto}.lightbox-caption{text-align:center;color:#a6a6a6;margin:.8rem 0 0;font-size:.85rem}.lightbox button{z-index:2;color:#fff;cursor:pointer;background:#0a08088c;border:none;padding:.35em .5em;font-size:2rem;line-height:1;transition:background .2s;position:fixed}.lightbox button:hover{background:#0a0808e6}.lightbox-close{top:1rem;right:1rem}.lightbox-arrow.prev{top:50%;left:1rem;transform:translateY(-50%)}.lightbox-arrow.next{top:50%;right:1rem;transform:translateY(-50%)}.intro{text-align:center;max-width:850px;padding-block:5rem 4rem}.intro>p:not(.eyebrow){color:var(--muted);font-size:1.1rem}.button{border:1px solid var(--accent);background:var(--accent);color:#1a2210;font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:1.5rem;padding:.85rem 1.6rem;text-decoration:none;display:inline-flex}.button:hover{background:#7ea839;border-color:#7ea839}.intro .button{margin-top:1rem}.gallery-section{margin-bottom:4.5rem}.section-heading{border-top:1px solid var(--line);align-items:baseline;gap:1.3rem;padding-block:1rem;display:flex}.section-heading h2{margin-block:.4rem 1rem;font-size:clamp(1.5rem,2.6vw,2.2rem)}.gallery-grid{columns:3;column-gap:1rem}.photograph{break-inside:avoid;cursor:zoom-in;background:#15171a;margin-bottom:1rem;display:block}.photograph:hover{outline:2px solid var(--accent);outline-offset:4px}.photograph img{width:100%}.callout{text-align:center;padding-bottom:5rem}.testimonial{text-align:center;background:#1f2125;padding:4rem 0}blockquote{max-width:800px;margin:1.5rem auto 0}blockquote p{color:#c4c8c4;font-family:Georgia,serif;font-size:clamp(1.4rem,3vw,2rem);line-height:1.5}blockquote cite{color:var(--muted);font-size:.9rem;font-style:normal}.pricing{text-align:center;padding-block:5rem}.pricing-grid{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-block:2.5rem;display:grid}.print-card{border:1px solid var(--line);background:#2f3238;padding:2.5rem}.print-card>img{object-fit:contain;width:300px;height:180px;margin:0 auto 2rem}.print-card h3{margin-bottom:.5rem}.subtitle{color:var(--muted)}table{border-collapse:collapse;width:100%;margin-block:2rem}th,td{border-bottom:1px solid var(--line);text-align:left;padding:.6rem 0}tbody th{font-weight:400}td:last-child,thead th:last-child{text-align:right}.site-footer{background:var(--paper);color:#a6a6a6;border-top:1px solid #212121;justify-content:space-between;gap:2rem;padding:2.5rem 5%;font-size:.85rem;display:flex}.site-footer p{margin:0}.site-footer a{color:var(--accent)}.site-footer span{color:var(--muted)}.contact{grid-template-columns:1fr 1fr;gap:5rem;padding-block:5rem;display:grid}.contact h1{font-size:clamp(2.5rem,4vw,3.8rem)}.contact-photo{margin-top:2rem}.text-link{color:var(--accent);font-weight:600}form{padding-top:1rem}label{margin-bottom:.5rem;font-weight:600;display:block}input,textarea{font:inherit;color:#d2d5d2;background:#1e2023;border:1px solid #565b61;border-radius:0;width:100%;margin-bottom:1.5rem;padding:.8rem 1rem}textarea{resize:vertical}.form-note{color:var(--muted);font-size:.85rem}.form-status{border:1px solid var(--accent);margin-top:1.5rem;padding:1rem}.form-status[data-state=error]{border-color:#e58b8b}form[aria-busy=true] button{opacity:.65;cursor:wait}.honeypot{display:none}.sr-only,.skip-link{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{z-index:10;clip-path:none;color:#202c29;background:#fff;width:auto;height:auto;padding:.75rem 1rem;position:fixed;top:1rem;left:1rem}@media (width<=800px){.gallery-grid{columns:2}.contact{gap:2rem}.pricing-grid{gap:1rem}.print-card{padding:1.5rem}}@media (width<=560px){.header-inner{flex-direction:column;gap:.75rem}.brand img{width:210px}nav{justify-content:center;gap:2.5rem;width:100%}.intro,.contact,.pricing{padding-block:3rem}.gallery-grid{column-gap:.65rem}.photograph{margin-bottom:.65rem}.section-heading{gap:.7rem}.contact,.pricing-grid{grid-template-columns:1fr}.site-footer{text-align:center;flex-direction:column}}
