:root{--ink:#151515;--paper:#f7f6f4;--line:#d8d6d2;--muted:#6d6b67;--tattoo:#765d61;--tattoo-soft:#eee8e8;--piercing:#61717b;--piercing-soft:#e8edef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.topbar{height:76px;padding:0 max(4vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #303030;background:#111;color:#fff;position:relative;z-index:10}.topbar.lightbar{position:sticky;top:0;background:rgba(247,246,244,.94);color:var(--ink);border-color:var(--line);backdrop-filter:blur(14px)}.logo{font-family:"Libre Caslon Display",serif;font-size:1.75rem}.topbar nav{display:flex;align-items:center;gap:30px;font-size:.88rem}.topbar nav>a:not(.contact-link){padding:28px 0 24px;border-bottom:2px solid transparent}.tattoo-page .topbar .active{border-color:var(--tattoo)}.piercing-page .topbar .active{border-color:var(--piercing)}.contact-link,.primary-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:12px 18px;font-weight:500;cursor:pointer;transition:.2s}.topbar:not(.lightbar) .contact-link{border-color:#fff;background:#fff;color:#111}.contact-link:hover,.primary-btn:hover{opacity:.78}.home{min-height:100vh;background:#111;color:#fff;display:flex;flex-direction:column}.choice-page{width:min(1180px,calc(100% - 48px));margin:auto;padding:100px 0}.intro-mark,.kicker{text-transform:uppercase;font-size:.7rem;letter-spacing:.17em;font-weight:600;color:#9a9a9a}.choice-page h1,.service-hero h1,.section-heading h2{font-family:"Libre Caslon Display",serif;font-weight:400;letter-spacing:-.04em;line-height:.92}.choice-page h1{font-size:clamp(4.4rem,10vw,9rem);margin:22px 0 30px}.lead{color:#aaa;max-width:560px;font-size:1.05rem}.choice-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #353535;margin-top:85px}.choice{min-height:240px;padding:28px 30px;display:grid;grid-template-rows:auto 1fr auto;border-bottom:1px solid #353535;transition:.25s;background:#151515}.choice+.choice{border-left:1px solid #353535}.choice:hover{background:#1c1c1c}.choice>span{font-size:.7rem;color:#777}.choice h2{font-family:"Libre Caslon Display",serif;font-size:3rem;font-weight:400;margin:16px 0 4px}.choice p{color:#999;margin:0;max-width:330px}.choice b{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.tattoo-choice:hover b{color:#b9989e}.piercing-choice:hover b{color:#93aab7}.home footer{border-color:#303030}.service-hero{min-height:670px;padding:120px max(8vw,28px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:linear-gradient(90deg,var(--tattoo-soft),var(--paper) 58%)}.piercing-hero{background:linear-gradient(90deg,var(--piercing-soft),var(--paper) 58%)}.service-hero h1{font-size:clamp(4rem,8vw,8.2rem);margin:25px 0 30px}.service-hero>p:not(.kicker){max-width:600px;color:var(--muted);font-size:1.05rem}.service-hero .primary-btn{margin-top:25px}.tattoo-page .primary-btn{background:var(--tattoo);border-color:var(--tattoo)}.piercing-page .primary-btn{background:var(--piercing);border-color:var(--piercing)}.content-section{padding:110px max(8vw,28px);border-top:1px solid var(--line);display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw}.section-heading>span{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:600;color:var(--muted)}.section-heading h2{font-size:clamp(2.7rem,4.5vw,5rem);margin:20px 0}.section-heading>p{max-width:470px;color:var(--muted)}.price-tool{align-self:center;padding:45px;background:#fff;border:1px solid var(--line)}.price-tool>label,.code-form>label{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:600;margin-bottom:20px}.range-line{display:flex;align-items:center;gap:24px}.range-line input{width:100%;accent-color:var(--tattoo)}.range-line output{min-width:62px;font-weight:600}.estimated-price{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);margin-top:36px;padding-top:30px}.estimated-price span{color:var(--muted)}.estimated-price strong{font-family:"Libre Caslon Display",serif;font-size:4rem;font-weight:400;line-height:1}.price-tool>p{font-size:.78rem;color:var(--muted);margin:30px 0 0}.project-form{display:grid;gap:24px}.project-form label{display:grid;gap:9px;font-size:.82rem;font-weight:600}.project-form input,.project-form textarea,.code-form input{width:100%;padding:15px;border:1px solid #bebcb8;background:#fff;color:var(--ink);border-radius:0;outline:none}.project-form input:focus,.project-form textarea:focus,.code-form input:focus{border-color:var(--ink)}.project-form .primary-btn{justify-self:start}.message-card,.claim{grid-column:2;margin-top:28px;background:#fff;border:1px solid var(--line);padding:36px}.message-card>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.message-card pre{white-space:pre-wrap;font-family:Inter,sans-serif;line-height:1.65;margin:22px 0}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.secondary-btn{border:1px solid var(--ink);background:transparent;padding:12px 18px;cursor:pointer}.code-section{background:#f0efec}.code-form{align-self:start}.code-form>div{display:flex}.code-form input{border-right:0;text-transform:uppercase}.code-form .primary-btn{white-space:nowrap}.claim{position:relative;overflow:hidden}.claim:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--tattoo)}.piercing-page .claim:before{background:var(--piercing)}.claim-head{display:flex;justify-content:space-between;align-items:center}.claim-head span{font-family:"Libre Caslon Display";font-size:1.4rem}.claim-head small{letter-spacing:.1em}.claim>p{margin:55px 0 5px;color:var(--muted)}.claim>strong{display:block;font-family:"Libre Caslon Display";font-size:clamp(2.5rem,5vw,5rem);font-weight:400;overflow-wrap:anywhere}.claim-ref{margin:30px 0 10px;padding-top:20px;border-top:1px solid var(--line)}.claim>small{color:var(--muted)}.clean-list{list-style:none;margin:0;padding:0}.clean-list li{padding:27px 0;border-bottom:1px solid var(--line);font-size:1.08rem}.clean-list span{display:inline-block;width:65px;color:var(--piercing)}footer{padding:28px max(4vw,24px);display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}@media(max-width:800px){.topbar{height:68px}.topbar nav{gap:14px}.topbar nav>a:not(.contact-link){display:none}.contact-link{padding:9px 12px}.choice-page{padding:70px 0}.choice-grid{grid-template-columns:1fr}.choice+.choice{border-left:0}.service-hero{min-height:590px;padding-top:90px}.content-section{grid-template-columns:1fr;gap:42px;padding-top:80px;padding-bottom:80px}.message-card,.claim{grid-column:1}.price-tool{padding:28px}.code-form>div{display:grid}.code-form input{border-right:1px solid #bebcb8;border-bottom:0}.choice-page h1{font-size:4.5rem}.service-hero h1{font-size:4.1rem}footer{flex-wrap:wrap}}@media(max-width:420px){.choice-page h1{font-size:3.65rem}.service-hero h1{font-size:3.5rem}.estimated-price{align-items:start;flex-direction:column;gap:10px}.estimated-price strong{font-size:3.4rem}.button-row>*{width:100%}}
.hero-actions{align-items:stretch;gap:12px}.service-hero .hero-actions .primary-btn{margin-top:0}.hero-actions .secondary-btn{display:inline-flex;align-items:center;justify-content:center}.project-section{scroll-margin-top:80px}
.price-tool select{width:100%;padding:15px;background:#fff;border:1px solid #bebcb8;border-radius:0;color:var(--ink);font:inherit}.piercing-estimate{align-items:start;gap:16px;flex-wrap:wrap}.piercing-estimate strong{font-family:Inter,Arial,sans-serif;font-size:1.15rem;line-height:1.5;font-weight:500}
.piercing-price-grid{display:grid;grid-template-columns:1fr auto;margin-top:30px;border-top:1px solid var(--line)}.piercing-price-grid span,.piercing-price-grid strong{padding:12px 0;border-bottom:1px solid var(--line);font-size:.92rem}.piercing-price-grid strong{padding-left:28px;font-weight:600;text-align:right}
.promo-strip{position:relative;z-index:8;display:grid;grid-template-columns:auto auto minmax(240px,430px) 1fr;align-items:center;gap:18px;padding:12px max(4vw,24px);background:#ebe9e5;border-bottom:1px solid var(--line);color:var(--ink)}.promo-strip>strong{font-family:"Libre Caslon Display",serif;font-size:1.4rem;font-weight:400}.promo-strip>span{font-size:.78rem;color:var(--muted)}.promo-entry{display:flex}.promo-entry input{min-width:0;width:100%;padding:10px 12px;border:1px solid #aaa;background:#fff;text-transform:uppercase;outline:none}.promo-entry input:focus{border-color:var(--ink)}.promo-entry button{padding:10px 16px;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer}.discount-feedback{color:var(--muted);font-size:.76rem}.price-value del{margin-right:10px;color:#999;font-size:.55em;font-family:Inter,Arial,sans-serif;font-weight:400}.price-value>span{color:inherit}.piercing-price-grid .price-value del{font-size:.8em}.piercing-price-grid .price-value>span{color:var(--piercing)}.confetti-layer{position:fixed;z-index:100;inset:0;pointer-events:none;overflow:hidden}.confetti-layer i{position:absolute;top:-20px;left:var(--x);width:9px;height:16px;animation:confetti-fall var(--duration) ease-in var(--delay) forwards}@keyframes confetti-fall{to{transform:translate3d(-25px,105vh,0) rotate(var(--rotation));opacity:.1}}@media(max-width:800px){.promo-strip{grid-template-columns:auto 1fr;gap:8px 14px}.promo-entry{grid-column:1/-1}.discount-feedback{grid-column:1/-1}.promo-strip>span{text-align:right}}
.privacy-note{font-size:.875rem;line-height:1.6;color:var(--muted);margin:0}.privacy-note a,.privacy-page a{text-decoration:underline}.privacy-page{max-width:840px;margin:auto;padding:70px 24px}.privacy-page h1{font-family:'Libre Caslon Display',serif;font-size:3.5rem;font-weight:400}.privacy-page h2{font-size:1.25rem;margin-top:40px}.privacy-page p{line-height:1.8}footer{flex-wrap:wrap}
.promo-strip{grid-template-columns:auto minmax(240px,430px) 1fr}
@media(max-width:800px){.promo-strip{grid-template-columns:auto 1fr}.promo-entry{grid-column:2}.discount-feedback{grid-column:1/-1}}
.tattoo-gallery-section{padding:105px max(8vw,28px) 120px;border-top:1px solid var(--line);background:#f1efed}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.gallery-heading .kicker{margin:0 0 8px}.gallery-heading h2{margin:0;font-family:"Libre Caslon Display",serif;font-size:clamp(2.8rem,5vw,5.5rem);font-weight:400;letter-spacing:-.04em;line-height:.95}.tattoo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tattoo-gallery figure{position:relative;overflow:hidden;margin:0;background:#ddd8d4;aspect-ratio:4/5}.tattoo-gallery img{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(1.035) contrast(1.035) saturate(.92);transition:transform .55s ease}.tattoo-gallery figure:first-child img{object-position:center 48%}.tattoo-gallery figure:nth-child(2) img{object-position:center 42%}.tattoo-gallery figure:nth-child(3) img{object-position:center 44%}.tattoo-gallery figure:hover img{transform:scale(1.018)}
@media(max-width:800px){.tattoo-gallery-section{padding-top:78px;padding-bottom:84px}.gallery-heading{display:block;margin-bottom:30px}.gallery-heading h2{margin-top:14px}.tattoo-gallery{grid-template-columns:1fr;gap:10px}.tattoo-gallery figure{aspect-ratio:4/5}}

/* Shared sizing and touch-friendly, mobile-first presentation. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
main,.content-section>* ,.price-tool,.project-form,.promo-entry{min-width:0}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
input,select,textarea{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.studio-intro{padding:70px max(8vw,28px);border-bottom:1px solid var(--line)}
.studio-intro h2{font:400 clamp(2.2rem,4vw,4rem)/1.06 "Libre Caslon Display",serif;letter-spacing:-.035em;margin:18px 0}
.studio-intro>p:last-child{max-width:740px;color:var(--muted);margin:0;line-height:1.7}
.message-card pre{overflow-wrap:anywhere}
@media(max-width:800px){
  .topbar,.topbar.lightbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:auto;gap:0 16px;padding:10px 20px 0;position:sticky;top:0;z-index:20}
  .topbar nav{display:contents}
  .topbar .logo{grid-area:1/1;font-size:1.7rem;align-self:center}
  .topbar nav .contact-link{grid-area:1/2;justify-self:end;min-height:44px;font-size:.875rem;padding:10px 12px;white-space:nowrap}
  .topbar nav>a:not(.contact-link){display:flex;justify-content:center;align-items:center;min-height:44px;padding:10px 0 8px;font-size:.875rem;margin-top:8px}
  .topbar nav>a:first-child{grid-area:2/1}
  .topbar nav>a:nth-child(2){grid-area:2/2}
  .promo-strip{grid-template-columns:minmax(0,1fr);gap:8px;padding:14px 20px}
  .promo-strip>strong{font:600 .75rem/1.2 Inter,Arial,sans-serif;letter-spacing:.12em}
  .promo-entry{grid-column:1;display:flex;width:100%}
  .promo-entry input{flex:1;min-width:0;width:0;font-size:16px;min-height:46px;padding:10px 12px}
  .promo-entry button{flex:none;min-height:46px;font-size:.875rem;padding:10px 16px}
  .discount-feedback{grid-column:1;font-size:.8125rem;overflow-wrap:anywhere}
  .discount-feedback:empty{display:none}
  .home{min-height:100svh}
  .choice-page{width:auto;margin:0;padding:42px 20px 48px}
  .choice-page h1{font-size:clamp(2.8rem,11vw,4.4rem);line-height:1.02;margin:18px 0 22px}
  .intro-mark,.kicker{font-size:.75rem;letter-spacing:.1em}
  .lead,.service-hero>p:not(.kicker){font-size:1rem;line-height:1.65;margin:0}
  .choice-grid{margin-top:32px;gap:12px;border-top:0}
  .choice{min-height:180px;padding:22px;border:1px solid #353535;gap:10px}
  .choice+.choice{border-left:1px solid #353535}
  .choice h2{font-size:2.5rem;line-height:1;margin:0 0 10px}
  .choice p{font-size:.9375rem}
  .choice>span{font-size:.75rem}
  .choice b{font-size:.8125rem;margin-top:8px}
  .studio-intro{padding:36px 20px}
  .studio-intro h2{font-size:clamp(2rem,8vw,3rem);margin:14px 0 18px;line-height:1.08}
  .studio-intro .kicker{margin-top:0}
  .studio-intro>p:last-child{font-size:1rem;line-height:1.65}
  .service-hero{min-height:0;padding:42px 20px 48px}
  .service-hero .kicker{margin:0 0 18px}
  .service-hero h1{font-size:clamp(2.65rem,10.5vw,4rem);line-height:1.04;margin:0 0 24px}
  .button-row,.hero-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:10px;margin-top:26px}
  .button-row>*,.project-form .primary-btn{width:100%;min-width:0;text-align:center}
  .primary-btn,.secondary-btn{display:flex;align-items:center;justify-content:center;min-height:50px;padding:13px 14px;font-size:.9375rem;line-height:1.4}
  .content-section{padding:46px 20px;grid-template-columns:minmax(0,1fr);gap:24px;scroll-margin-top:125px}
  .section-heading>span{font-size:.75rem;letter-spacing:.1em}
  .section-heading h2{font-size:clamp(2rem,8vw,3rem);line-height:1.08;margin:12px 0 0}
  .section-heading>p{font-size:1rem;line-height:1.65;margin-bottom:0}
  .price-tool{padding:22px 18px;width:100%}
  .price-tool>label{font-size:.8125rem;letter-spacing:.07em;margin-bottom:16px}
  .range-line{gap:16px}
  .range-line input{min-width:0;min-height:44px;margin:0}
  .range-line output{flex-shrink:0}
  .estimated-price{flex-direction:column;align-items:flex-start;gap:14px;margin-top:22px;padding-top:22px}
  .estimated-price>span{font-size:.9375rem}
  .estimated-price strong{font-size:3.2rem;line-height:1.1;overflow-wrap:anywhere}
  .piercing-estimate strong{font-family:Inter,Arial,sans-serif;font-size:1.125rem;line-height:1.5}
  .price-tool>p{font-size:.875rem;line-height:1.7;margin-top:22px}
  .price-tool select,.project-form input,.project-form textarea{font-size:16px;min-height:50px;padding:13px 12px}
  .project-form{gap:20px}
  .project-form label{font-size:.9375rem;gap:8px}
  .project-form textarea{resize:vertical}
  .privacy-note{font-size:.8125rem;line-height:1.65}
  .message-card{grid-column:1;width:100%;padding:22px 18px;margin:0}
  .message-card pre{font-size:.9375rem}
  .piercing-price-grid{grid-template-columns:minmax(0,1fr) auto;margin-top:24px}
  .piercing-price-grid span,.piercing-price-grid strong{font-size:.9375rem;padding-top:14px;padding-bottom:14px}
  .piercing-price-grid strong{padding-left:12px;white-space:nowrap}
  .tattoo-gallery-section{padding:42px 20px}
  .gallery-heading{margin-bottom:24px}
  .gallery-heading h2{font-size:2.4rem;line-height:1.08}
  .tattoo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .tattoo-gallery figure{aspect-ratio:3/4;min-width:0}
  .privacy-page{padding:40px 20px}
  .privacy-page h1{font-size:2.5rem;line-height:1.1;overflow-wrap:anywhere}
  footer{padding:24px 20px;gap:12px 20px;font-size:.8125rem;align-items:center}
  footer a{display:inline-flex;align-items:center;min-height:44px}
  footer>span{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tattoo-gallery img{transition:none}.tattoo-gallery figure:hover img{transform:none}.confetti-layer{display:none}}
