/* Hallmark · macrostructure: Portfolio Grid · genre: Modern Minimal · nav: N9 · footer: Ft5.
 * Pre-emit critique: P4 H5 E4 S4 R4 V5. Photograph-led, asymmetric, neutral.
 * Custom: neutral paper, photographic tattoo concepts, quiet type, active gallery.
 * Onest is an intentional single variable family for Cyrillic display and UI.
 * Axes: light / geometric-sans / neutral. Motion is explicitly requested.
 * Inspiration: 21st.dev Portfolio Scroll Grid and Filmstrip Gallery; original code.
 */
@import url("modern-fonts.84d6aa5771a0.css");
@import url("home-tokens.f4f072040224.css");
@font-face{font-family:'Onest fallback';src:local('Arial');size-adjust:104%;ascent-override:93%;descent-override:24%;line-gap-override:0%}
*{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--text-base)/1.6 var(--font);-webkit-font-smoothing:antialiased}body.modal-open{overflow-y:hidden}button,input,textarea,select{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button,summary,a,input,select,textarea{touch-action:manipulation}a,button{transition:background-color .2s,color .2s}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{letter-spacing:-.05em;text-wrap:balance;line-height:1.12}img{display:block;max-width:100%}button{background:none;border:0}fieldset{border:0;padding:0;margin:0;min-width:0}legend{padding:0}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--focus);outline-offset:5px}::selection{background:var(--ink);color:var(--paper)}.wrap{max-width:var(--content);margin-inline:auto;padding-inline:var(--gutter)}.eyebrow{font-size:var(--text-xs);line-height:1.5;letter-spacing:.02em}.soft-ink{color:var(--soft)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;top:-100px;left:var(--gutter);z-index:var(--z-modal);padding:var(--space-md);background:var(--ink);color:var(--paper)}.skip:focus{top:var(--space-md)}.reading-progress{position:fixed;inset:0 0 auto;height:2px;z-index:var(--z-modal);background:var(--ink);transform:scaleX(0);transform-origin:left}
.header{position:sticky;top:0;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);height:82px;padding-inline:var(--gutter);background:color-mix(in oklch,var(--paper) 94%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:border-color .2s}.header.scrolled{border-color:var(--line)}.wordmark{font-size:1.3rem;font-weight:550;letter-spacing:-.055em;display:flex;align-items:center;gap:var(--space-xs);line-height:1.15;max-width:50%;overflow-wrap:anywhere}.wordmark svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}.desktop-nav{display:none;align-items:center;gap:var(--space-xl);font-size:var(--text-xs)}.desktop-nav a{display:flex;align-items:center;min-height:44px}.nav-cta{font-size:var(--text-xs);display:flex;gap:var(--space-lg);align-items:center;min-height:44px;border-bottom:1px solid var(--ink);white-space:nowrap;margin-left:auto}.nav-cta span{font-size:1.2rem}.mobile-nav summary{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:10px}.mobile-nav summary span{height:1px;width:24px;background:var(--ink)}.mobile-nav[open] nav{display:flex;position:absolute;top:81px;left:0;right:0;background:var(--paper);padding:var(--space-lg) var(--gutter);border-bottom:1px solid var(--line);flex-direction:column}.mobile-nav nav a{padding-block:var(--space-sm)}
.intro{padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.intro-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);color:var(--muted)}.dot-divider{margin-inline:var(--space-sm);color:var(--soft)}.intro-note{display:none;font-size:var(--text-xs)}.intro-main{display:grid;gap:var(--space-xl);margin-top:var(--space-lg)}h1{font-size:var(--text-display);font-weight:350;line-height:1.1}h1 span{display:block}.intro-copy{max-width:330px}.intro-copy p{font-size:var(--text-sm);color:var(--muted);line-height:1.75}.round-link{display:inline-flex;align-items:center;gap:var(--space-lg);font-size:var(--text-sm);min-height:48px;white-space:nowrap}.round-link>span{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:0;font-size:1.1rem;transition:transform .35s var(--ease-out),background .2s,color .2s}.intro-copy .round-link{margin-top:var(--space-lg)}
.portfolio{scroll-margin-top:var(--space-xl)}.portfolio-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md);padding-bottom:var(--space-lg);border-bottom:1px solid var(--line)}.portfolio-heading h2{font-size:var(--text-sm);letter-spacing:0;line-height:1.5}.portfolio-heading sup{font-size:.65rem;position:relative;top:-.1em;margin-left:var(--space-xs);color:var(--muted);font-variant-numeric:tabular-nums}.portfolio-hint{font-size:var(--text-xs);color:var(--muted);display:none}.filters{display:flex;gap:var(--space-xs);flex-wrap:wrap}.filters button{font-size:var(--text-xs);padding:.35rem .75rem;min-height:44px;color:var(--muted);white-space:nowrap;border-radius:0}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.project-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl);padding-top:var(--space-lg)}.project{min-width:0}.project-open{display:block}.project-image{position:relative;aspect-ratio:4/5;background:var(--paper-2);overflow:hidden;border-radius:0}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out)}.image-plus{position:absolute;bottom:var(--space-md);right:var(--space-md);display:grid;place-items:center;width:42px;height:42px;border-radius:0;background:var(--paper);color:var(--ink);font-size:1.5rem;font-weight:300;transition:transform .35s var(--ease-out)}.image-label{position:absolute;top:var(--space-md);left:var(--space-md);padding:.3rem .6rem;font-size:var(--text-xs);background:var(--paper);color:var(--ink);border-radius:0}.project-caption{display:flex;justify-content:space-between;gap:var(--space-sm);padding-top:var(--space-md)}.project-caption h3{font-size:var(--text-sm);font-weight:450;letter-spacing:-.015em}.project-caption p{font-size:var(--text-xs);color:var(--muted);margin-top:3px}.project-caption p span{padding-inline:.25rem}.project-number{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums}.gallery-baseline{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);border-bottom:1px solid var(--line);padding-block:var(--space-xl);font-size:var(--text-xs);color:var(--muted)}.gallery-baseline a{min-height:44px;display:flex;align-items:center;gap:var(--space-md);white-space:nowrap}.portfolio-unpublished{padding-block:var(--space-2xl)}
.about{display:grid;gap:var(--space-xl);padding-block:var(--space-3xl)}.about-photo{position:relative;align-self:start;overflow:hidden;border-radius:0}.about-photo img{width:100%;height:100%;aspect-ratio:1.1;object-fit:cover}.photo-caption{position:absolute;bottom:var(--space-lg);left:var(--space-lg);background:var(--paper);color:var(--ink);padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);line-height:1.5}.about-copy h2{font-size:var(--text-heading);max-width:16ch;margin-block:var(--space-lg)}.body-copy{color:var(--muted);line-height:1.8}.body-copy p+p{margin-top:var(--space-md)}.about-copy .round-link{margin-top:var(--space-xl)}.artist-portrait{width:64px;height:64px;border-radius:0;object-fit:cover;margin-top:var(--space-lg)}
.process{background:var(--ink);color:var(--paper);padding-block:var(--space-3xl);position:relative}.process-grid{display:grid;gap:var(--space-xl)}.process-intro .eyebrow{color:var(--dark-muted)}.process-intro h2{font-size:var(--text-heading);max-width:14ch;margin-block:var(--space-lg)}.process-intro>p:not(.eyebrow){color:var(--dark-muted);font-size:var(--text-sm)}.process-orbit{display:none;width:160px;margin-top:var(--space-xl)}.process-orbit svg{width:100%;fill:none;stroke:var(--dark-muted);stroke-width:.65}.process-orbit .orbit-core{fill:var(--paper);stroke:none}.process-list{padding:0;margin:0;list-style:none}.process-list li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:var(--space-lg);padding-block:var(--space-xl);border-top:1px solid var(--dark-line)}.process-list li:last-child{padding-bottom:0}.process-list li>span{font-size:var(--text-xs);color:var(--dark-muted);padding-top:.25rem;font-variant-numeric:tabular-nums}.process-list h3{font-size:1.35rem;letter-spacing:-.035em;margin-bottom:var(--space-sm)}.process-list p{font-size:var(--text-sm);color:var(--dark-muted);line-height:1.9;max-width:40ch}
.details-section{display:grid;gap:var(--space-3xl);padding-block:var(--space-3xl)}.price h2{font-size:clamp(2.5rem,4.8vw,4rem);margin-block:var(--space-lg);font-weight:350}.price h2 span{font-size:var(--text-sm);color:var(--muted);letter-spacing:0}.price .body-copy{font-size:var(--text-sm);max-width:43ch}.price .round-link{margin-top:var(--space-lg)}.price .faq-item{margin-top:var(--space-lg)}.faq h2{font-size:1.5rem;letter-spacing:-.03em;margin-bottom:var(--space-xl)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);min-height:72px;padding-block:var(--space-lg);font-size:var(--text-sm);line-height:1.5}.faq-item summary span{font-size:1.2rem;flex-shrink:0;transition:transform .25s}.faq-item[open] summary span{transform:rotate(45deg)}.answer{font-size:var(--text-sm);line-height:1.85;color:var(--muted);padding:0 var(--space-lg) var(--space-lg) 0}.answer p+p{margin-top:var(--space-md)}
.idea-section{background:var(--paper-2);color:var(--ink);padding-block:var(--space-3xl)}.idea-grid{display:grid;gap:var(--space-xl)}.idea-intro h2{font-size:var(--text-heading);margin-block:var(--space-lg)}.idea-intro>p:not(.eyebrow){font-size:var(--text-sm);color:var(--muted);line-height:1.8}.idea-intro .booking-note{margin-top:var(--space-xl)}.booking-status{display:flex;gap:var(--space-xs);align-items:center;font-size:var(--text-xs);margin-top:var(--space-lg)}.booking-status i{width:6px;height:6px;border-radius:0;background:var(--ink)}.idea-form{min-width:0}.idea-form legend,.idea-form label{font-size:var(--text-sm)}.style-options{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-sm)}.style-options label{position:relative;cursor:pointer}.style-options input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.style-options span{display:block;min-height:44px;padding:.6rem 1rem;font-size:var(--text-xs);border:1px solid var(--line);border-radius:0;white-space:nowrap}.style-options input:checked+span{background:var(--ink);color:var(--paper);border-color:var(--ink)}.style-options input:focus-visible+span{outline:2px solid var(--focus);outline-offset:3px}.form-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md);margin-block:var(--space-lg)}.form-row label{display:grid;gap:var(--space-xs);min-width:0}select,textarea{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:0;width:100%;font-size:var(--text-sm);padding:var(--space-sm);min-height:48px}select{padding-right:var(--space-lg)}textarea{display:block;margin-top:var(--space-xs);resize:vertical;min-height:112px;line-height:1.65}textarea::placeholder{color:var(--muted)}.brief-preview{margin-top:var(--space-lg);border-left:1px solid var(--line);padding-left:var(--space-md)}.brief-preview>span{font-size:var(--text-xs);color:var(--muted);display:block;margin-bottom:var(--space-xs)}.brief-preview output{display:block;font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:anywhere;min-height:3rem}.brief-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-lg);margin-top:var(--space-lg)}.button{display:inline-flex;gap:var(--space-lg);align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);min-height:52px;font-size:var(--text-sm);border-radius:0;white-space:nowrap}.button-dark{background:var(--ink);color:var(--paper)}.text-button{min-height:44px;font-size:var(--text-sm);padding:var(--space-xs) 0;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.brief-status{font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-md);min-height:2.5em}.contact-row,.address-row{margin-top:var(--space-xl);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-lg)}.contact-row>div{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-lg)}.contact-row a,.address-row a{font-size:var(--text-sm);min-height:44px;display:inline-flex;align-items:center}.address-row p,.contact-row>span{font-size:var(--text-xs);color:var(--muted)}
.footer{padding-top:var(--space-2xl);padding-bottom:var(--space-lg)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);border-bottom:1px solid var(--line);padding-bottom:var(--space-2xl)}.footer-name{font-size:clamp(2.5rem,8vw,6.5rem);letter-spacing:-.07em;line-height:1.1;display:flex;gap:var(--space-lg);align-items:center;min-width:0;overflow-wrap:anywhere}.footer-name span{font-size:.7em}.footer-top p{font-size:var(--text-xs);color:var(--muted);display:none}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md);padding-top:var(--space-lg);font-size:var(--text-xs);color:var(--muted)}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:var(--space-lg)}.footer-bottom a{min-height:44px;display:flex;align-items:center;white-space:nowrap}
.lightbox{position:fixed;inset:0;margin:auto;width:min(1080px,calc(100% - 32px));height:fit-content;max-height:90dvh;padding:0;border:0;border-radius:0;background:var(--paper);color:var(--ink);overscroll-behavior:contain;overflow:auto}.lightbox::backdrop{background:var(--backdrop);backdrop-filter:blur(8px)}.lightbox-layout{display:grid;grid-template-columns:minmax(0,1fr)}.lightbox-image{background:var(--paper-2);color:var(--ink)}.lightbox-image img{width:100%;height:40dvh;object-fit:contain}.lightbox-copy{padding:var(--space-lg);position:relative;display:flex;flex-direction:column;gap:var(--space-lg)}.close-dialog{position:absolute;top:var(--space-xs);right:var(--space-xs);width:44px;height:44px;background:var(--paper);color:var(--ink);border-radius:0;font-size:1.6rem;z-index:var(--z-raised)}.lightbox-copy .eyebrow{padding-right:var(--space-xl);color:var(--muted)}.lightbox h2{font-size:var(--text-heading)}#dialog-description{font-size:var(--text-sm);white-space:pre-line;line-height:1.8}.concept-note{font-size:var(--text-xs);color:var(--muted)}.lightbox-nav{margin-top:auto;display:flex;align-items:center;gap:var(--space-lg);padding-top:var(--space-md)}.lightbox-nav button{border:1px solid var(--line);border-radius:0;width:44px;height:44px;font-size:1.3rem}.lightbox-nav span{font-size:var(--text-xs);font-variant-numeric:tabular-nums}
@media(min-width:40rem){.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-note{display:block}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}.project:nth-child(2){margin-top:var(--space-2xl)}.project:nth-child(3){grid-column:1/-1;max-width:65%;margin-top:var(--space-lg)}.project-grid.is-filtered .project{margin-top:0;max-width:none;grid-column:auto}.about{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center}.about-copy h2{font-size:2rem}.about-copy .body-copy{font-size:var(--text-sm)}.footer-top p{display:block}.lightbox-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.lightbox-image img{height:min(78dvh,750px)}.lightbox-copy{padding:var(--space-xl)}.lightbox-copy .eyebrow{margin-top:var(--space-xl)}}
@media(min-width:60rem){.desktop-nav{display:flex}.mobile-nav{display:none}.nav-cta{margin-left:0}.header{height:90px}.wordmark{max-width:28%}.intro{padding-top:var(--space-3xl);padding-bottom:var(--space-xl)}.intro-main{grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);align-items:end;gap:var(--space-2xl);margin-top:var(--space-xl)}.intro-copy{padding-bottom:var(--space-xs)}.portfolio-heading{margin-top:var(--space-xl);gap:var(--space-lg)}.portfolio-hint{display:inline}.project-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr) minmax(0,1fr);gap:var(--space-lg);padding-top:var(--space-xl);align-items:start}.project:nth-child(3){grid-column:auto;max-width:none;margin-top:var(--space-2xl)}.project:nth-child(2){margin-top:0}.project:first-child{margin-top:var(--space-3xl)}.project:first-child .project-image{aspect-ratio:4/5}.project:nth-child(2) .project-image{aspect-ratio:3/4}.project:nth-child(3) .project-image{aspect-ratio:4/5}.project-grid.is-filtered{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid.is-filtered .project .project-image{aspect-ratio:4/5}.gallery-baseline{padding-top:var(--space-xl)}.about{gap:var(--space-3xl);padding-block:var(--space-4xl);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.about-copy h2{font-size:var(--text-heading)}.process-grid{grid-template-columns:1fr 1.1fr;gap:var(--space-4xl)}.process-intro{position:sticky;top:7rem;align-self:start}.process-orbit{display:block}.process-list li{padding-block:var(--space-xl);grid-template-columns:48px minmax(0,1fr)}.process-list li:first-child{padding-top:0;border-top:0}.process{padding-block:var(--space-4xl)}.details-section,.idea-grid{grid-template-columns:1fr 1.1fr;gap:var(--space-4xl)}.details-section,.idea-section{padding-block:var(--space-4xl)}.price .body-copy{font-size:var(--text-base)}}
@media(hover:hover) and (pointer:fine){.desktop-nav a:hover,.footer-bottom a:hover,.gallery-baseline a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.round-link:hover>span{background:var(--ink);color:var(--paper);transform:rotate(45deg)}.project-open:hover .project-image img{transform:scale(1.045)}.project-open:hover .image-plus{transform:rotate(90deg)}.filters button:hover:not([aria-pressed=true]){background:var(--paper-2);color:var(--ink)}.button-dark:hover{background:var(--muted);color:var(--paper)}select:hover,textarea:hover{background:var(--paper-2);color:var(--ink)}.lightbox-nav button:hover{background:var(--ink);color:var(--paper)}}
@media(max-width:24rem){.nav-cta{display:none}.intro{padding-top:var(--space-xl)}.intro-top .eyebrow{font-size:.7rem}.dot-divider{margin-inline:.4rem}.gallery-baseline{font-size:.7rem}.lightbox-copy{padding:var(--space-md)}.round-link{gap:var(--space-md)}}
.lightbox::backdrop{background:var(--backdrop)}
h1,h2,h3{min-width:0;overflow-wrap:anywhere}
button:active,.button:active{filter:brightness(.88)}
button:disabled,input:disabled,textarea:disabled,select:disabled{opacity:.55;cursor:not-allowed}
.style-options input:active+span{background:var(--line);color:var(--ink)}
.style-options input:disabled+span{opacity:.55;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reading-progress{display:none}}
