.hero{min-height:100svh;padding-top:var(--header);display:grid;align-items:stretch;position:relative;overflow:hidden}.hero__grid{display:grid;grid-template-columns:1.15fr .85fr;min-height:calc(100svh - var(--header));border-left:1px solid var(--line);border-right:1px solid var(--line)}.hero__content{padding:clamp(2rem,5vw,5.5rem);display:flex;flex-direction:column;justify-content:space-between;position:relative}.hero__content::after{content:"BLACKWORK";position:absolute;right:-1.2rem;top:42%;font:900 6rem/1 var(--display);letter-spacing:.18em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);transform:rotate(90deg);transform-origin:center;pointer-events:none}.hero__title span{display:block}.hero__title .outline{color:transparent;-webkit-text-stroke:1px var(--paper)}.hero__meta{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-top:3rem}.hero__meta p{max-width:40ch;color:var(--muted)}.hero__image{position:relative;min-height:600px;border-left:1px solid var(--line);overflow:hidden}.hero__image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.1);transition:filter .7s ease,transform 1.2s ease}.hero__image:hover img{filter:grayscale(0);transform:scale(1.025)}.hero__badge{position:absolute;left:0;bottom:0;background:var(--paper);color:var(--ink);padding:1rem 1.2rem;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.intro-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(2rem,8vw,8rem);align-items:start}.intro-copy{display:grid;gap:1.5rem}.intro-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark);margin-top:2rem}.intro-fact{padding:1.5rem 1rem 1rem 0;border-right:1px solid var(--line-dark)}.intro-fact:last-child{border-right:0;padding-left:1rem}.intro-fact strong{display:block;font:900 2.2rem/1 var(--display)}.intro-fact span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.featured-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:repeat(2,minmax(250px,420px));gap:1rem;margin-top:3rem}.featured-card{position:relative;overflow:hidden;border:1px solid var(--line);min-height:280px}.featured-card:first-child{grid-row:1/3}.featured-card img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08);transition:filter var(--transition),transform .8s ease}.featured-card:hover img{filter:grayscale(0);transform:scale(1.03)}.featured-card figcaption{position:absolute;inset:auto 0 0;padding:1rem;background:linear-gradient(transparent,rgba(0,0,0,.95));display:flex;justify-content:space-between;align-items:end;gap:1rem}.featured-card strong{font-family:var(--display);text-transform:uppercase}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin-top:3rem}.process-card{padding:clamp(1.5rem,4vw,3rem);min-height:300px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line)}.process-card:last-child{border-right:0}.process-card__number{font:900 5rem/1 var(--display);color:transparent;-webkit-text-stroke:1px var(--paper)}.booking-banner{display:grid;grid-template-columns:1.25fr .75fr;min-height:480px}.booking-banner__copy{padding:clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center;gap:2rem}.booking-banner__art{background:url('../img/portfolio/tattoo-02.webp') center/cover;filter:grayscale(1);border-left:1px solid var(--line-dark)}.store-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}.mini-product{border:1px solid var(--line);background:#0d0d0d}.mini-product img{aspect-ratio:1;object-fit:cover;filter:grayscale(1);transition:filter var(--transition)}.mini-product:hover img{filter:grayscale(0)}.mini-product__body{padding:1.2rem;display:flex;justify-content:space-between;gap:1rem}.mini-product h3{font-family:var(--display);text-transform:uppercase}.marquee{border-block:1px solid var(--line);overflow:hidden;padding:.7rem 0}.marquee__track{display:flex;width:max-content;gap:2rem;animation:marquee 22s linear infinite;font:900 1rem/1 var(--display);text-transform:uppercase;letter-spacing:.12em}.marquee__track span::after{content:"✦";margin-left:2rem}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:900px){.hero__grid{grid-template-columns:1fr}.hero__image{border-left:0;border-top:1px solid var(--line);min-height:55svh}.intro-grid{grid-template-columns:1fr}.featured-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.featured-card:first-child{grid-row:auto;grid-column:1/-1;min-height:540px}.process-grid{grid-template-columns:1fr}.process-card{border-right:0;border-bottom:1px solid var(--line);min-height:230px}.process-card:last-child{border-bottom:0}.booking-banner{grid-template-columns:1fr}.booking-banner__art{min-height:380px;border-left:0;border-top:1px solid var(--line-dark)}}@media(max-width:620px){.hero__content{padding:2rem 1rem}.hero__meta{align-items:flex-start;flex-direction:column}.intro-facts{grid-template-columns:1fr}.intro-fact,.intro-fact:last-child{border-right:0;border-bottom:1px solid var(--line-dark);padding:1rem 0}.featured-grid,.store-preview-grid{grid-template-columns:1fr}.featured-card:first-child{grid-column:auto;min-height:420px}.featured-card{min-height:380px}}
#studio{position:relative;isolation:isolate;background:url('../img/bg_estudio.png') center/cover no-repeat}
#studio::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.76)}
#studio .intro-grid{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.studio-media{display:grid;gap:clamp(1.5rem,3vw,2.5rem);min-width:0}
.studio-carousel{width:100%;min-width:0}
.studio-carousel__viewport{position:relative;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--line-dark);background:var(--ink)}
.studio-carousel__slide{position:absolute;inset:0;opacity:0;visibility:hidden}
.studio-carousel__slide.is-active{opacity:1;visibility:visible}
.studio-carousel__slide img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .65s ease}
.studio-carousel__viewport:hover .studio-carousel__slide img{filter:grayscale(0)}
.studio-carousel__viewport::after{content:"";position:absolute;inset:45% 0 0;z-index:3;pointer-events:none;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.studio-carousel__nav{position:absolute;top:50%;z-index:5;display:grid;place-items:center;width:50px;height:50px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(5,5,5,.28);color:#fff;font-size:1.15rem;cursor:pointer;backdrop-filter:blur(8px);transform:translateY(-50%);transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}
.studio-carousel__nav:hover{background:var(--paper);color:var(--ink);transform:translateY(-50%) scale(1.08)}
.studio-carousel__nav--prev{left:1rem}.studio-carousel__nav--next{right:1rem}
.studio-carousel__footer{position:absolute;right:1.25rem;bottom:1rem;left:1.25rem;z-index:4;display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:1rem;color:#fff}
.studio-carousel__label{font-size:.62rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.studio-carousel__progress{height:1px;margin-bottom:.35rem;overflow:hidden;background:rgba(255,255,255,.32);transform-origin:left}
.studio-carousel__progress span{display:block;width:100%;height:100%;background:#fff;transform:scaleX(0);transform-origin:left}
.studio-carousel__counter{display:flex;align-items:baseline;gap:.35rem;font-weight:800;line-height:1}
.studio-carousel__counter strong{font:900 2rem/1 var(--display)}
.studio-carousel__counter span{font-size:.62rem;letter-spacing:.08em;opacity:.7}
.studio-carousel__dots{position:absolute;top:1rem;right:1rem;z-index:5;display:flex;gap:.45rem;padding:.55rem .65rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(5,5,5,.25);backdrop-filter:blur(8px)}
.studio-carousel__dots button{width:.45rem;height:.45rem;padding:0;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:transparent;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}
.studio-carousel__dots button.is-active{background:#fff;transform:scale(1.25)}
@media(max-width:900px){#studio .intro-grid{grid-template-columns:1fr}.studio-carousel__viewport{aspect-ratio:16/10}}
@media(max-width:620px){.studio-carousel__viewport{aspect-ratio:4/5}.studio-carousel__nav{width:44px;height:44px}.studio-carousel__footer{grid-template-columns:1fr auto}.studio-carousel__label{grid-column:1/-1}.studio-carousel__progress{display:none}}
.featured-card{isolation:isolate;cursor:zoom-in}
.featured-card:hover img{filter:grayscale(1)}
.featured-card img[role=button]:focus-visible{outline:3px solid var(--paper);outline-offset:-6px}
.featured-card figcaption{z-index:3}
.featured-card__reveal{position:absolute;inset:0;z-index:2;pointer-events:none;background:rgba(255,255,255,.16);opacity:0}
.featured-actions{justify-content:center}
#process{position:relative;isolation:isolate;background:url('../img/bg_comofunciona.png') center/cover no-repeat}
#process::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(5,5,5,.78)}
#booking-cta{position:relative;isolation:isolate;background:url('../img/bg_agendaaberta.png') center/cover no-repeat}
#booking-cta::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.76)}
.store-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:clamp(1rem,2vw,1.5rem);perspective:1200px}
.mini-product{position:relative;overflow:hidden;transform-style:preserve-3d;will-change:transform;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}
.mini-product:nth-child(1),.mini-product:nth-child(2),.mini-product:nth-child(3){grid-column:auto;margin-top:0}
.mini-product:hover{border-color:rgba(255,255,255,.55);box-shadow:0 24px 70px rgba(0,0,0,.4)}
.mini-product>img{width:100%;will-change:transform}
.mini-product:nth-child(1)>img,.mini-product:nth-child(2)>img,.mini-product:nth-child(3)>img{aspect-ratio:1/1}
.mini-product__body{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;padding:1.25rem}
.mini-product__body>strong{font-family:var(--display);font-size:1.25rem;white-space:nowrap}
.mini-product__buy{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin:0 -1.25rem -1.25rem;padding:1rem 1.25rem;border-top:1px solid var(--line);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;transition:background var(--transition-fast),color var(--transition-fast),padding var(--transition-fast)}
.mini-product__buy span{font-size:1.05rem;transition:transform var(--transition-fast)}
.mini-product__buy:hover{padding-left:1.6rem;background:var(--paper);color:var(--ink)}
.mini-product__buy:hover span{transform:translate(3px,-3px)}
.store-actions{justify-content:center}
#store-preview{position:relative;isolation:isolate;overflow:hidden}
#store-preview::before{content:"";position:absolute;top:-6rem;right:0;z-index:-2;width:min(46vw,560px);height:min(46vw,560px);background:url('../img/rockslidestreetwear.png') top right/contain no-repeat;opacity:.55;pointer-events:none}
#store-preview::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.78) 52%,rgba(5,5,5,.28) 100%);pointer-events:none}
@media(max-width:900px){.store-preview-grid{grid-template-columns:1fr}.mini-product{width:min(100%,520px);justify-self:center}}
.featured-lightbox{position:fixed;inset:0;z-index:1800;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem)}
.featured-lightbox[hidden]{display:none}
.featured-lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.92);backdrop-filter:blur(12px)}
.featured-lightbox__panel{position:relative;z-index:1;width:min(1180px,100%);height:min(82svh,820px);overflow:hidden;border:1px solid rgba(255,255,255,.3);background:#080808}
.featured-lightbox__image{width:100%;height:100%;object-fit:contain}
.featured-lightbox__close{position:absolute;top:1rem;right:1rem;z-index:3;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(5,5,5,.45);color:#fff;font-size:1.5rem;cursor:pointer;backdrop-filter:blur(8px);transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}
.featured-lightbox__close:hover{background:#fff;color:#050505;transform:rotate(90deg)}
.featured-lightbox__caption{position:absolute;right:0;bottom:0;left:0;display:flex;justify-content:space-between;align-items:end;gap:1rem;padding:clamp(1.25rem,3vw,2rem);background:linear-gradient(transparent,rgba(0,0,0,.95));color:#fff}
.featured-lightbox__caption strong{font:900 clamp(1.8rem,4vw,4rem)/.9 var(--display);text-transform:uppercase}
.featured-lightbox__caption span{font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
@media(max-width:620px){.featured-lightbox{padding:.65rem}.featured-lightbox__panel{height:88svh}.featured-lightbox__caption{align-items:flex-start;flex-direction:column}.featured-lightbox__close{width:46px;height:46px}}
