@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--bg:#0c0c0d;--panel:#171719;--fg:#f6f4f0;--muted:#a9a9ac;--line:#333337}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.7 'DM Sans',Arial,sans-serif}a{color:inherit}header{position:sticky;top:0;z-index:20;background:#0c0c0df2;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav,.wrap{max-width:1250px;margin:auto;padding-left:26px;padding-right:26px}.nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-weight:800;letter-spacing:.22em;text-decoration:none;font-size:21px;line-height:1.15}.logo small{display:block;font-size:9px;letter-spacing:.4em;color:var(--muted);margin-top:6px}.links{display:flex;align-items:center;gap:23px}.links a{text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:transparent;border:1px solid #b7b7ba;padding:14px 22px;font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;transition:.2s}.btn:hover{background:#ddd;color:#111}.btn.primary{background:#f6f4f0;color:#111;border-color:#f6f4f0}.btn.primary:hover{background:#c6c6c6}.hero{min-height:700px;display:grid;grid-template-columns:1fr 48%;max-width:1600px;margin:auto}.hero-copy{padding:110px 7% 90px max(26px,calc((100vw - 1198px)/2));align-self:center}.kicker{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.27em;color:#bcbcc0}.hero h1,h2{font-family:'Manrope',Arial,sans-serif;letter-spacing:-.075em;line-height:1.04}.hero h1{font-size:clamp(58px,7vw,112px);margin:25px 0}.hero p{max-width:520px;color:#bfc0c1;font-size:18px}.hero-image{position:relative;overflow:hidden;background:#171719}.hero-image img{width:100%;height:100%;object-fit:contain;display:block}.hero-image:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0c0c0d 0%,transparent 12%);pointer-events:none}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}section{padding:100px 0;border-bottom:1px solid #252527}h2{font-size:clamp(37px,5vw,69px);margin:14px 0 22px}h3{font-size:24px;letter-spacing:-.04em}.lede{max-width:750px;color:#b6b6ba;font-size:18px}.gallery{columns:3 280px;column-gap:20px;margin-top:45px}.work{display:block;break-inside:avoid;margin:0 0 20px;background:var(--panel);border:1px solid #333;padding:10px}.work img{display:block;width:100%;height:auto}.work figcaption{padding:12px 5px 4px;color:#b7b7b7;font-size:12px;letter-spacing:.06em}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.feature-image{background:#1c1c1d;padding:18px}.feature-image img{width:100%;height:auto;display:block}.muted{color:#b4b4b7}.styles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.style{border-top:1px solid #777;padding:18px 4px}.style h3{margin:12px 0}.style p{color:#b3b3b7;font-size:14px}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-weight:700}details p{color:#bbb}footer{padding:55px 0;color:#aaa;font-size:13px}.note{color:#aaa;font-size:13px}.mobile-cta{display:none}@media(max-width:900px){.links{gap:12px}.links a:not(.btn){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 26px}.hero-image{height:580px}.hero-image:before{display:none}.split{grid-template-columns:1fr;gap:35px}.styles{grid-template-columns:1fr}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;z-index:25;padding:10px 18px;background:#101010;border-top:1px solid #333}.mobile-cta .btn{display:flex}body{padding-bottom:66px}}@media(max-width:550px){.nav{min-height:68px}.logo{font-size:17px}.links .btn{padding:10px;font-size:10px}.hero h1{font-size:58px}.hero-image{height:470px}section{padding:68px 0}.gallery{columns:1}.work{max-width:600px}}
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:42px;padding-top:30px;border-top:1px solid #444}.contact-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.contact-grid strong{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:#eee}.contact-grid address{font-style:normal;line-height:1.65;color:#ccc}.contact-grid a{color:#ddd;overflow-wrap:anywhere}.contact-grid a:hover{color:#fff}@media(max-width:750px){.contact-grid{grid-template-columns:1fr;gap:30px}}

/* Studio policies PDF pop-out */
#policies-modal{background:#141414;color:#f5f5f5;border:1px solid #555;border-radius:12px;padding:0;width:min(94vw,940px);height:min(90vh,900px);max-width:none;max-height:none;box-shadow:0 30px 100px #000b}#policies-modal::backdrop{background:#000c;backdrop-filter:blur(5px)}.policy-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;font-size:13px;letter-spacing:.07em}.policy-top>div{display:flex;gap:12px;align-items:center}.policy-download{color:white;text-decoration:underline}#close-policies{background:#292929;color:white;border:1px solid #555;border-radius:6px;padding:8px 12px;cursor:pointer}#policies-modal iframe{width:100%;height:calc(100% - 112px);border:0;background:white}.policy-fallback{margin:7px 20px;font-size:12px}.policy-fallback a{color:white;text-decoration:underline}@media(max-width:600px){.policy-top{padding:12px;font-size:11px}.policy-download{font-size:11px}}

/* Policies accessible popup: works even in previews with JavaScript disabled */
#policies-modal{display:none;position:fixed;inset:4vh max(3vw,10px);z-index:9999;margin:auto;width:min(94vw,850px);height:90vh;max-height:90vh;overflow:auto;background:#171717;color:#f5f5f5;border:1px solid #666;border-radius:12px;box-shadow:0 0 0 100vmax #000d,0 25px 80px #000}#policies-modal:target{display:block}#policies-modal .policy-top{position:sticky;top:0;background:#171717;z-index:2;border-bottom:1px solid #444}.policy-document{padding:clamp(20px,4vw,48px);font-size:16px;line-height:1.75;letter-spacing:normal;color:#eee}.policy-document h2{font-size:clamp(25px,4vw,38px);line-height:1.15;margin:0 0 12px}.policy-document h3{font-size:22px;margin:30px 0 10px}.policy-document h4{font-size:17px;margin:18px 0 8px}.policy-document p{margin:12px 0}.policy-document ol{padding-left:25px}.policy-close{color:#fff;background:#333;border:1px solid #777;border-radius:6px;padding:8px 12px;text-decoration:none}.policy-close:hover{background:#555}html:has(#policies-modal:target){overflow:hidden}

/* Native, accessible on-page policies modal */
#policies-modal{display:none;position:fixed;inset:0;margin:auto;padding:0;width:min(94vw,850px);height:min(90vh,900px);max-height:90vh;overflow:auto;background:#171717;color:#f5f5f5;border:1px solid #666;border-radius:12px;box-shadow:0 25px 80px #000b;z-index:9999}
#policies-modal[open]{display:block}
#policies-modal::backdrop{background:rgba(0,0,0,.82)}
#policies-modal .policy-top{position:sticky;top:0;background:#171717;z-index:2;border-bottom:1px solid #444}
#policies-modal .policy-close{font:inherit;cursor:pointer}
@media(max-width:600px){#policies-modal{width:96vw;height:94vh;max-height:94vh}.policy-top>div{flex-wrap:wrap;justify-content:flex-end}}

/* Snafu Tattoo Supply Co. apparel feature */
#apparel{scroll-margin-top:92px;padding:42px 0;background:#0c0c0d}
.apparel-banner{min-height:330px;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,1.6fr) minmax(0,1fr);align-items:center;overflow:hidden;border:1px solid #363639;background:radial-gradient(ellipse at center,#252528 0%,#171719 48%,#101011 100%)}
.apparel-product{height:330px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.apparel-product img{height:95%;width:115%;object-fit:contain;filter:drop-shadow(0 12px 24px #0009)}
.apparel-product-left img{transform:rotate(-9deg) translateX(-10px)}.apparel-product-right img{transform:rotate(8deg) translateX(10px)}
.apparel-copy{text-align:center;position:relative;z-index:1;padding:30px 4px}.apparel-copy h2{font-size:clamp(31px,3.4vw,52px);margin:18px 0;letter-spacing:-.065em}.apparel-copy p{font-size:14px;line-height:1.6;color:#c6c6c9;max-width:380px;margin:0 auto 25px}.apparel-copy .btn{white-space:nowrap}
@media(max-width:900px){.links .merch-nav{display:inline-block!important}.links{gap:10px}.links .merch-nav{font-size:11px}.apparel-banner{grid-template-columns:1fr 1.8fr 1fr}.apparel-product{height:270px}}
@media(max-width:600px){#apparel{padding:28px 0;scroll-margin-top:72px}.apparel-banner{grid-template-columns:1fr 1fr;gap:0;padding:12px 8px 24px}.apparel-product{height:155px}.apparel-product img{height:100%;width:100%}.apparel-copy{grid-column:1/-1;grid-row:1;padding:24px 10px 8px}.apparel-copy h2{font-size:34px}.apparel-copy p{font-size:13px;margin-bottom:20px}.apparel-product-left{grid-column:1;grid-row:2}.apparel-product-right{grid-column:2;grid-row:2}.links .merch-nav{font-size:10px!important}}
