:root{--ink:#191917;--paper:#f2eee7;--cream:#e7dfd1;--red:#bd4b35;--sage:#9ba77d;--muted:#77746d;--line:#cbc4b8;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.skip-link{position:absolute;top:-50px;left:1rem;background:var(--ink);color:white;padding:.7rem;z-index:10}.skip-link:focus{top:1rem}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:5}.wordmark{font:700 22px var(--sans);letter-spacing:.17em}.wordmark span{color:var(--red);font-size:17px;margin-left:3px}.site-header nav{display:flex;gap:2rem;font-size:12px}.site-header nav a:hover,.footer-links a:hover{color:var(--red)}.button{display:inline-flex;gap:2.2rem;align-items:center;background:var(--red);color:#fff;padding:16px 20px;font-size:12px;font-weight:700;letter-spacing:.04em;border:0;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#9f3c2a;transform:translateY(-2px)}.button-small{padding:12px 15px;gap:1rem;font-size:11px}.menu-toggle{display:none}.hero{min-height:650px;height:calc(100vh - 82px);max-height:850px;position:relative;padding:10vh 10vw 75px;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden}.hero-copy{position:relative;z-index:1;margin-top:-2vh}.eyebrow{font-size:9px;font-weight:700;letter-spacing:.2em;color:var(--muted);margin:0 0 22px}.dot{width:7px;height:7px;border-radius:50%;background:var(--red);display:inline-block;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:600;line-height:.98;letter-spacing:-.04em}h1{font-size:clamp(68px,8vw,116px);margin:0 0 25px}h1 em,h2 em,blockquote em{font-weight:600;color:var(--red)}.hero-intro{max-width:390px;color:#555149;font-size:14px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:32px}.text-link{font-size:11px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:5px}.text-link span{margin-left:11px}.hero-note{display:flex;align-items:center;gap:14px;margin-top:66px;font-size:10px;font-weight:700;line-height:1.4;letter-spacing:.04em}.hero-note small{color:var(--muted);font-weight:400}.spark{font-size:29px;color:var(--red)}.note-rule{height:30px;border-left:1px solid var(--line);margin:0 6px}.hero-art{height:min(70vh,610px);min-height:430px;aspect-ratio:.85;max-width:510px;margin-left:auto;position:relative;background:#d8cec0;overflow:hidden}.hero-art:before{content:"";position:absolute;inset:6%;border:1px solid rgba(25,25,23,.3)}.art-ring{position:absolute;border:1px solid rgba(25,25,23,.35);border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%)}.ring-one{width:73%;aspect-ratio:1}.ring-two{width:88%;aspect-ratio:1;border-style:dashed}.art-sun{position:absolute;width:44%;aspect-ratio:1;border-radius:50%;background:#bd4b35;left:44%;top:28%;opacity:.9}.flower{position:absolute;border-radius:50%;width:170px;height:170px;left:35%;top:33%;z-index:2}.flower i{position:absolute;width:39%;height:58%;left:31%;top:-7%;border:2px solid #242521;background:#d88a61;border-radius:50% 50% 43% 43%;transform-origin:50% 93%;box-shadow:inset 0 -6px 0 rgba(25,25,23,.1)}.flower i:nth-child(2){transform:rotate(72deg)}.flower i:nth-child(3){transform:rotate(144deg)}.flower i:nth-child(4){transform:rotate(216deg)}.flower i:nth-child(5){transform:rotate(288deg)}.flower b{position:absolute;width:25%;height:25%;border:2px solid #242521;border-radius:50%;background:#d8b557;left:37%;top:38%;z-index:2}.flower-small{width:82px;height:82px;left:18%;top:65%;transform:rotate(25deg);scale:.85}.flower-small i{background:#d8b557}.leaf{position:absolute;width:150px;height:64px;border:2px solid #242521;border-radius:100% 0 100% 0;background:#86916e;z-index:1}.leaf:after{content:"";position:absolute;width:85%;border-top:1px solid #242521;left:5%;top:53%;transform:rotate(-19deg)}.leaf-a{left:47%;top:61%;transform:rotate(32deg)}.leaf-b{left:25%;top:27%;transform:rotate(202deg) scale(.8)}.leaf-c{left:55%;top:20%;transform:rotate(-25deg) scale(.7)}.art-caption,.art-stamp{position:absolute;z-index:3;font-size:8px;letter-spacing:.13em;line-height:1.6}.art-caption{bottom:10%;left:10%}.art-caption span{color:#68645a}.art-stamp{right:10%;top:9%;border:1px solid;padding:9px;text-align:center;font-weight:700}.hero-bottom{position:absolute;bottom:26px;left:10vw;right:10vw;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:var(--muted)}.section-pad{padding:115px 12vw}.intro{text-align:center;background:var(--ink);color:var(--paper);padding-top:120px;padding-bottom:125px}.intro .eyebrow{color:#b1aa9c}.intro h2,.portfolio h2,.styles h2,.cities h2,.about h2,.process h2,.faq h2,.journal h2,.form-intro h2{font-size:clamp(42px,5.3vw,74px);margin-bottom:28px}.intro-text{max-width:500px;margin:0 auto 25px;color:#c7c0b4;font-size:13px;line-height:1.9}.intro .text-link{display:inline-block;border-color:#c7c0b4}.portfolio{padding-bottom:130px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end}.section-heading h2{margin:0}.desktop-link{margin-bottom:10px}.filters{display:flex;gap:10px;margin:45px 0 25px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;color:var(--muted);padding:9px 14px;border-radius:30px;font-size:10px;cursor:pointer}.filter.active,.filter:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.work-card{min-width:0}.work-card p{font-size:11px;font-weight:700;margin:12px 0}.work-card p span{display:block;font-size:8px;color:var(--muted);font-weight:500;letter-spacing:.12em;margin-top:4px}.work-art{height:290px;position:relative;display:grid;place-items:center;overflow:hidden}.art-rose{background:#d6a493}.art-rose:before,.art-rose:after{content:"";position:absolute;border:1px solid #292923;border-radius:50%;width:180px;height:180px}.art-rose:after{width:240px;height:240px;border-style:dashed}.ornament{font-size:105px;color:#8a352e;text-shadow:2px 2px #27251f,-2px -2px #27251f;z-index:1}.art-eye{background:#b8b89c}.eye-shape{font-size:120px;color:#bd4b35;text-shadow:3px 2px var(--ink);transform:rotate(-18deg)}.art-snake{background:#d5bf79}.snake-shape{font:180px var(--serif);color:#405546;transform:rotate(35deg)}.art-bloom{background:#d5d0c6}.bloom-shape{font-size:145px;color:#687756;text-shadow:2px 2px #302f29}.art-label{position:absolute;bottom:12px;left:12px;font-size:8px;letter-spacing:.15em}.image-note{font-size:9px;color:var(--muted);margin-top:18px}.styles{background:#e5dfd4}.section-aside{max-width:250px;font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 6px}.style-list{margin-top:50px;border-top:1px solid var(--line)}.style-row{display:grid;grid-template-columns:45px 1.15fr 1fr 25px;gap:18px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line);transition:padding .2s}.style-row:hover{padding-left:12px}.style-index{font-size:9px;color:var(--muted)}.style-name{font:600 clamp(17px,2vw,25px) var(--serif)}.featured .style-name{color:var(--red)}.style-desc{font-size:10px;color:var(--muted)}.style-arrow{font-size:18px}.cities{background:var(--ink);color:var(--paper)}.city-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px}.city-top .eyebrow{color:#aaa395}.city-top h2{margin:0}.city-top>p{font-size:12px;color:#bbb4a8;max-width:260px;line-height:1.8;margin:0 0 8px}.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.city-card{height:245px;padding:19px;display:flex;flex-direction:column;position:relative;overflow:hidden;justify-content:flex-end;transition:transform .2s}.city-card:hover{transform:translateY(-5px)}.city-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,20,19,.8),transparent 75%)}.city-card>*{position:relative}.city-card span,.city-card small{font-size:8px;letter-spacing:.12em}.city-card strong{font:600 25px var(--serif);margin:5px 0}.city-card small{color:#ddd6ca}.city-card i{position:absolute;right:18px;bottom:22px;font-style:normal}.city-valencia{background:linear-gradient(145deg,#d9875c,#727548 55%,#30372b)}.city-barcelona{background:linear-gradient(145deg,#b26d55,#c0a071 48%,#52413c)}.city-amsterdam{background:linear-gradient(145deg,#81918b,#495c59 55%,#2e393a)}.city-copenhagen{background:linear-gradient(145deg,#a1a58c,#64716e 55%,#364143)}.about{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center}.about-image{position:relative}.portrait-placeholder{aspect-ratio:.88;background:#d8cec0;display:grid;place-content:center;text-align:center;position:relative;overflow:hidden}.portrait-placeholder:before,.portrait-placeholder:after{content:"";position:absolute;border:1px solid rgba(25,25,23,.35);width:70%;aspect-ratio:1;left:15%;top:15%;border-radius:50%}.portrait-placeholder:after{width:95%;left:2%;top:3%;border-style:dashed}.portrait-placeholder span{font:700 38px var(--serif);letter-spacing:.12em;z-index:1}.portrait-placeholder small{font-size:8px;letter-spacing:.2em;z-index:1}.portrait-placeholder b{color:var(--red);font-size:75px;font-weight:400;z-index:1}.about-image>.image-note{position:absolute;bottom:-29px}.about-copy h2{margin-bottom:25px}.about-copy>p:not(.eyebrow){max-width:420px;font-size:12px;line-height:1.9;color:#5e5a53}.button-outline{background:transparent;color:var(--ink);border:1px solid var(--ink);margin-top:18px}.button-outline:hover{color:#fff}.process{background:#e5dfd4}.process h2{margin-bottom:55px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps>div{border-top:1px solid var(--line);padding-top:16px}.steps span{font-size:9px;color:var(--red)}.steps h3{font:600 22px var(--serif);margin:27px 0 9px}.steps p{font-size:11px;color:var(--muted);line-height:1.8;max-width:240px}.quote{background:#c2c9b1;text-align:center;padding-top:80px;padding-bottom:80px}.quote>span{font:90px var(--serif);color:var(--red);line-height:.8}.quote blockquote{font:600 clamp(24px,3.5vw,44px)/1.25 var(--serif);margin:0}.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:10%}.faq h2{margin-bottom:22px}.faq-note{color:var(--muted);font-size:11px}.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;font:600 16px var(--serif);display:flex;justify-content:space-between;gap:12px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";font:20px var(--sans);color:var(--red)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{max-width:500px;color:var(--muted);font-size:11px;line-height:1.8;margin:14px 0 0}.journal{background:#e5dfd4}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:43px}.journal-card{padding:25px 23px;background:var(--paper);min-height:230px;display:flex;flex-direction:column;align-items:flex-start}.journal-card>span{font-size:8px;letter-spacing:.14em;color:var(--red)}.journal-card h3{font:600 21px/1.2 var(--serif);margin:25px 0 10px}.journal-card p{font-size:10px;color:var(--muted);line-height:1.7}.journal-card b{margin-top:auto;font-size:9px}.quote-form{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.form-intro .eyebrow{color:#aaa395}.form-intro h2{margin-bottom:23px}.form-intro>p:not(.eyebrow){font-size:12px;color:#bbb4a8;max-width:300px;line-height:1.8}.form-aside{display:flex;align-items:center;gap:13px;margin-top:53px;color:var(--red)}.form-aside span{font-size:32px}.form-aside p{font-size:10px;color:var(--paper);line-height:1.5}.form-aside small{color:#aaa395}.quote-form form{min-width:0}.form-step{display:grid;grid-template-columns:28px 1fr;gap:13px;padding:19px 0;border-bottom:1px solid #494842}.step-number{font-size:9px;color:#c87560;padding-top:3px}.form-step label{display:block;font-size:12px;font-weight:600}.form-step label small{display:block;color:#9c988e;font-size:9px;font-weight:400;margin:3px 0 11px}.form-step input,.form-step textarea,.form-step select{width:100%;border:0;border-bottom:1px solid #69675e;background:transparent;color:var(--paper);padding:10px 0;outline:none;font-size:11px;border-radius:0}.form-step input:focus,.form-step textarea:focus,.form-step select:focus{border-color:#d18570}.form-step textarea{resize:vertical;min-height:55px}.form-step input::placeholder,.form-step textarea::placeholder{color:#77756d}.form-step select option{background:var(--ink)}.upload{display:flex!important;align-items:center;gap:12px;border:1px dashed #69675e;padding:12px;margin-top:12px;cursor:pointer}.upload>span:first-child{font-size:23px;color:#c87560}.upload small{margin:2px 0 0!important}.upload input{display:none}.file-list{font-size:9px;color:#bbb4a8}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-row{grid-template-columns:1fr 1fr}.consent{display:flex;gap:9px;font-size:9px;color:#aaa395;align-items:flex-start;margin:20px 0}.consent input{margin:2px 0 0;accent-color:var(--red)}.consent a{text-decoration:underline;color:var(--paper)}.submit-button{width:100%;justify-content:space-between}.form-notice{font-size:9px;line-height:1.6;color:#aaa395;margin:13px 0 0}.site-footer{background:#111110;color:var(--paper);padding:43px 8vw 25px;display:grid;grid-template-columns:1fr 1fr 2fr;gap:25px;align-items:start}.site-footer>p{font-size:10px;color:#aaa395}.footer-links{display:flex;gap:20px;justify-content:flex-end;font-size:9px}.site-footer>small{grid-column:1/-1;border-top:1px solid #383732;padding-top:17px;font-size:8px;color:#817e76}
@media(max-width:900px){.site-header{padding:0 5vw}.site-header nav{gap:1.2rem}.hero{padding-left:7vw;padding-right:7vw}.hero-bottom{left:7vw;right:7vw}.section-pad{padding:90px 8vw}.gallery{grid-template-columns:repeat(2,1fr);gap:25px 15px}.work-art{height:320px}.city-grid{grid-template-columns:repeat(2,1fr)}.city-card{height:210px}.about{gap:7%}.quote-form{gap:6%}}
@media(max-width:650px){.site-header{height:68px;padding:0 6vw}.menu-toggle{display:block;background:none;border:0;font-size:11px;margin-left:auto;margin-right:18px}.site-header nav{display:none;position:absolute;top:67px;left:0;right:0;background:var(--paper);padding:20px 6vw;border-bottom:1px solid var(--line);flex-direction:column;gap:17px}.site-header nav.open{display:flex}.header-cta{font-size:0;padding:12px}.header-cta span{font-size:15px}.hero{height:auto;min-height:0;padding:78px 7vw 76px;display:flex;flex-direction:column;align-items:stretch}.hero-copy{margin:0}.eyebrow{font-size:8px;margin-bottom:18px}h1{font-size:76px}.hero-intro{font-size:12px;max-width:330px}.hero-actions{gap:18px;margin-top:25px}.button{padding:14px 15px;gap:1.2rem;font-size:10px}.text-link{font-size:10px}.hero-note{margin-top:33px}.hero-art{width:83%;min-height:0;height:auto;aspect-ratio:.87;margin:43px auto 0}.hero-bottom{left:7vw;right:7vw;bottom:20px;font-size:6px}.hero-bottom span:last-child{display:none}.section-pad{padding:75px 7vw}.intro{padding-top:83px;padding-bottom:88px}.intro h2,.portfolio h2,.styles h2,.cities h2,.about h2,.process h2,.faq h2,.journal h2,.form-intro h2{font-size:46px}.intro-text{font-size:12px}.section-heading{align-items:flex-start}.desktop-link{display:none}.filters{margin:29px 0 20px;gap:7px}.filter{padding:8px 11px;font-size:9px}.gallery{gap:20px 10px}.work-art{height:auto;aspect-ratio:.8}.ornament{font-size:78px}.eye-shape{font-size:88px}.snake-shape{font-size:130px}.bloom-shape{font-size:110px}.work-card p{font-size:10px}.style-row{grid-template-columns:27px 1fr 20px;gap:8px;padding:19px 0}.style-name{font-size:18px}.style-desc{grid-column:2;grid-row:2}.style-arrow{grid-column:3;grid-row:1/3}.section-aside{max-width:145px;font-size:10px}.city-top{display:block}.city-top>p{margin-top:20px;font-size:11px}.city-grid{gap:9px}.city-card{height:180px;padding:14px}.city-card strong{font-size:21px}.city-card span,.city-card small{font-size:7px}.about{grid-template-columns:1fr;gap:52px}.about-image{width:78%;margin:0 auto}.about-copy>p:not(.eyebrow){font-size:11px}.process h2{margin-bottom:40px}.steps{grid-template-columns:1fr;gap:23px}.steps>div{display:grid;grid-template-columns:32px 1fr;column-gap:10px}.steps span{grid-row:1/3}.steps h3{margin:0 0 5px;font-size:19px}.steps p{grid-column:2;margin:0}.quote{padding-top:60px;padding-bottom:62px}.faq{grid-template-columns:1fr;gap:35px}.faq-list summary{font-size:14px}.journal-grid{grid-template-columns:1fr;gap:10px;margin-top:30px}.journal-card{min-height:190px}.journal-card h3{margin-top:16px}.quote-form{grid-template-columns:1fr;gap:42px}.form-aside{margin-top:25px}.form-row{gap:12px}.contact-row{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr 1fr;padding:35px 7vw 22px;gap:15px}.site-footer>p{grid-column:2;grid-row:1}.footer-links{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap;gap:16px}.site-footer>small{margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media(min-width:901px){.city-grid{grid-template-columns:repeat(5,1fr)}}
.city-brussels{background:linear-gradient(145deg,#bc8a62,#81724f 52%,#3c3b31)}
.work-art img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.work-card:hover .work-art img{transform:scale(1.035)}
.bio-english{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.bio-english .eyebrow{margin-bottom:14px}.about-copy .bio-english>p:not(.eyebrow){font-size:11px;color:#716c64}
img.portrait-placeholder{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:.88;background:#d8cec0}
.policy h1{font-size:clamp(55px,8vw,90px);margin-bottom:25px}.policy h2{font:600 24px var(--serif);letter-spacing:0;margin:38px 0 10px}.policy p:not(.eyebrow){max-width:760px;font-size:13px;line-height:1.85;color:#514e48}.policy-alert{background:#e5dfd4;padding:17px 20px;border-left:3px solid var(--red)}.policy-date{margin-top:40px;font-size:10px!important;color:var(--muted)!important}

/* Original artwork and an editorial selection of the three tattoo styles. */
.hero-art-original{min-height:0;width:100%;height:auto;max-height:none;aspect-ratio:auto;background:transparent;align-self:center}
.hero-art-original:before{display:none}
.hero-art-original img{display:block;width:100%;height:100%;object-fit:contain}
.about{align-items:start}
.about-editorial{width:100%;display:flex;flex-direction:column;gap:36px;padding-top:12px}
.editorial-photo{margin:0;position:relative;width:86%}
.editorial-photo img{display:block;width:100%;height:auto;object-fit:cover}
.editorial-photo figcaption{display:flex;gap:16px;align-items:baseline;border-top:1px solid var(--line);padding-top:10px;margin-top:12px;font-size:14px;letter-spacing:.04em}
.editorial-photo figcaption span{color:var(--red);font-size:12px}
.editorial-micro{width:76%;align-self:flex-end}
.editorial-fine{width:70%;margin-left:5%}
@media(max-width:650px){
  .hero-art-original{width:100%;max-width:520px;aspect-ratio:auto;margin-top:38px}
  .about-editorial{gap:26px;max-width:440px;padding-top:0}
  .editorial-photo{width:76%}
  .editorial-micro{width:68%;margin-top:-5px}
  .editorial-fine{width:62%;margin-left:3%;margin-top:-5px}
}

.work-views{font-size:13px;border-top:1px solid var(--line);padding-top:10px}.work-views summary{cursor:pointer;color:var(--red)}.work-views>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.work-views img{display:block;width:100%;height:auto}.work-video video{width:100%;height:100%;object-fit:contain;background:var(--ink)}.work-card[hidden]{display:none!important}.work-art:focus-visible{outline:2px solid var(--red);outline-offset:4px}


/* Portfolio hub + standalone galleries */
.portfolio-hub-intro{max-width:570px;margin:34px 0 28px;color:var(--muted);font-size:12px;line-height:1.8}
.portfolio-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.portfolio-category{position:relative;min-height:520px;overflow:hidden;background:var(--ink);color:#fff;display:flex;align-items:flex-end;padding:26px;isolation:isolate}
.portfolio-category>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .55s ease}
.portfolio-category-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08) 20%,rgba(0,0,0,.78) 100%);z-index:-1}
.portfolio-category:hover>img{transform:scale(1.035)}
.portfolio-category-index{position:absolute;top:20px;left:22px;font-size:9px;letter-spacing:.18em}
.portfolio-category small{font-size:8px;letter-spacing:.17em;color:#e3ddd2}
.portfolio-category h3{font:600 clamp(28px,3vw,43px)/1 var(--serif);letter-spacing:-.035em;margin:8px 0 9px}
.portfolio-category p{font-size:10px;color:#ddd6ca;margin:0 0 18px}
.portfolio-category b{font-size:9px;letter-spacing:.06em}
.portfolio-page{background:var(--paper)}
.subpage-header{position:sticky;top:0}
.portfolio-page-hero{padding-top:90px;padding-bottom:65px;border-bottom:1px solid var(--line)}
.portfolio-page-hero .portfolio-back{display:inline-block;font-size:10px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:4px;margin-bottom:55px}
.portfolio-page-hero h1{font-size:clamp(64px,9vw,128px);margin-bottom:24px}
.portfolio-page-hero>p:last-child{max-width:610px;color:var(--muted);font-size:13px;line-height:1.85}
.portfolio-page-grid{padding-top:55px;columns:3 280px;column-gap:14px}
.gallery-piece{break-inside:avoid;margin:0 0 14px;background:#ddd5c8;overflow:hidden}
.gallery-open{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;text-align:inherit}
.gallery-piece img,.gallery-piece video{display:block;width:100%;height:auto}
.gallery-piece img{transition:transform .35s ease}
.gallery-piece:hover img{transform:scale(1.012)}
.gallery-piece figcaption{font-size:9px;color:var(--muted);padding:10px 12px;background:var(--paper)}
.gallery-piece-video{background:var(--ink)}
.gallery-piece-video video{max-height:720px;object-fit:contain}
.portfolio-page-cta{background:var(--ink);color:var(--paper);text-align:center}
.portfolio-page-cta .eyebrow{color:#aaa395}.portfolio-page-cta h2{font-size:clamp(44px,6vw,78px);margin-bottom:30px}
.gallery-lightbox{width:min(92vw,1200px);max-width:none;border:0;padding:0;background:transparent;overflow:visible}
.gallery-lightbox::backdrop{background:rgba(10,10,10,.88)}
.gallery-lightbox img{display:block;max-width:92vw;max-height:88vh;margin:auto;object-fit:contain}
.gallery-close{position:fixed;right:24px;top:18px;width:44px;height:44px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font-size:28px;line-height:1;cursor:pointer}
@media(max-width:900px){.portfolio-categories{grid-template-columns:1fr 1fr}.portfolio-category:first-child{grid-column:1/-1}.portfolio-category{min-height:440px}.portfolio-page-grid{columns:2 240px}}
@media(max-width:650px){.portfolio-hub h2{font-size:46px}.portfolio-categories{grid-template-columns:1fr}.portfolio-category:first-child{grid-column:auto}.portfolio-category{min-height:440px}.subpage-header nav{display:flex;position:static;background:transparent;padding:0;border:0;flex-direction:row;gap:14px}.subpage-header nav a:last-child{display:none}.portfolio-page-hero{padding-top:70px;padding-bottom:48px}.portfolio-page-hero .portfolio-back{margin-bottom:40px}.portfolio-page-hero h1{font-size:61px}.portfolio-page-grid{columns:2 145px;column-gap:8px;padding-top:35px}.gallery-piece{margin-bottom:8px}.gallery-close{right:12px;top:12px}}
