/* Çağdaş Al Tattoo Art — sayfa bölümleri */

/* Hero: isim videonun üzerine taşar (difference karışımı), köşelerde stencil baskı işaretleri */
.hero{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(1.5rem,4vw,3.5rem) clamp(2.5rem,5vw,4.5rem);background:var(--wall)}
.hero__grid{display:grid;gap:2.5rem;align-items:end}
.hero__title{display:grid;gap:1rem}
.hero__name{position:relative;z-index:2;display:block;width:max-content;font-size:clamp(4rem,17vw,13.5rem);font-weight:300;line-height:.86;letter-spacing:-.045em;white-space:nowrap;color:#fff;mix-blend-mode:difference;padding-bottom:.16em}
.hero__role{font-size:clamp(1.25rem,2.2vw,1.75rem);color:var(--ink)}
.hero__lead{max-width:40ch;margin-top:1.75rem;font-family:var(--font-text);font-size:clamp(1.125rem,1.45vw,1.3125rem);line-height:1.6}
.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem 1.75rem;margin-top:2rem}
.hero__media{position:relative;z-index:1}
.hero__frame{position:relative;aspect-ratio:4/5;background:#000}
.hero__video{width:100%;height:100%;object-fit:cover}
@media (min-width:900px){
  .hero__grid{grid-template-columns:minmax(0,1fr) clamp(300px,30vw,430px);gap:2.25rem;align-items:center}
  .hero__frame{aspect-ratio:9/16;max-height:calc(100vh - var(--header-h) - 8rem);max-height:calc(100svh - var(--header-h) - 8rem)}
}
.reg{position:absolute;z-index:3;width:26px;height:26px;overflow:visible;fill:none;stroke:var(--stencil);stroke-width:1.5}
.reg--tl{top:-13px;left:-13px}.reg--tr{top:-13px;right:-13px}.reg--br{right:-13px;bottom:-13px}.reg--bl{bottom:-13px;left:-13px}
.reg path{stroke-dasharray:48;stroke-dashoffset:48;animation:reg-draw .9s cubic-bezier(.2,.7,.2,1) .3s forwards}
.reg--tr path{animation-delay:.42s}.reg--br path{animation-delay:.54s}.reg--bl path{animation-delay:.66s}
@keyframes reg-draw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.reg path{animation:none;stroke-dashoffset:0}}

/* Ödül şeridi */
.awards-strip{padding-bottom:clamp(3rem,6vw,5rem)}
.awards{display:grid;gap:1.75rem;padding-top:1.75rem;border-top:1px solid var(--rule)}
@media (min-width:760px){.awards{grid-template-columns:repeat(3,1fr);gap:2rem}}
.awards__item{position:relative;display:grid;align-content:start;gap:.3rem}
.awards__item--first::before{content:"";position:absolute;top:calc(-1.75rem - 2px);left:0;width:4rem;height:3px;background:var(--stencil)}
.awards__year{font-size:clamp(2.5rem,4.5vw,3.5rem);font-weight:300;line-height:1;letter-spacing:-.03em;color:var(--ink)}
.awards__event{margin-top:.6rem;font-weight:500}
.awards__result{font-family:var(--font-text);font-size:1.0625rem;color:var(--graphite)}

/* Tanıtım (anasayfa) */
.intro{padding-block:var(--section)}
.intro__grid{display:grid;gap:2.5rem;align-items:center}
@media (min-width:900px){.intro__grid{grid-template-columns:minmax(240px,5fr) 7fr;gap:clamp(3rem,7vw,7rem)}}
.intro__portrait img{width:100%;max-width:400px;border-radius:50%;background:none}
.intro__text .section-title{margin-bottom:1.5rem}
.intro__text p{max-width:58ch;font-family:var(--font-text);font-size:1.1875rem;line-height:1.7}
.intro__text p+p{margin-top:1em}
.intro__text .intro__links{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:2rem;font-family:var(--font-ui);font-size:1rem}

/* Bölüm başlığı + eserler */
.section-head{display:grid;gap:1rem;margin-bottom:clamp(2rem,4vw,3.25rem)}
@media (min-width:900px){.section-head{grid-template-columns:1fr 1fr;align-items:end;gap:3rem}}
.section-more{margin-top:clamp(2rem,4vw,3rem)}
.works{padding-bottom:var(--section)}
.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1rem}
@media (min-width:900px){.works-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem 1.5rem}}
.works-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}
.work__link{display:block;background:var(--wall-2);cursor:zoom-in}
.work__link img{width:100%}
.work__caption{display:grid;gap:.15rem;margin-top:.75rem}
.work__title{font-family:var(--font-text);font-size:1.0625rem;font-style:italic;color:var(--ink)}
.work__meta{font-size:.875rem;color:var(--graphite)}
.work__note{max-width:46ch;margin-top:.45rem;font-family:var(--font-text);font-size:.98rem;line-height:1.6}

/* Portfolyo galerisi (doğal oranlarla sütunlar) */
.portfolio{padding-bottom:var(--section)}
.gallery{columns:2;column-gap:1rem}
@media (min-width:900px){.gallery{columns:3;column-gap:1.5rem}}
@media (min-width:1280px){.gallery{columns:4}}
.gallery__item{margin-bottom:2.25rem;break-inside:avoid}
.gallery .work__link img{max-height:620px;object-fit:cover}
.closing{display:grid;justify-items:start;gap:1.25rem;margin-top:var(--section);padding-top:2.5rem;border-top:1px solid var(--rule)}

/* Basın */
.press-teaser{padding-block:var(--section);border-top:1px solid var(--rule)}
.press-teaser__grid{display:grid;gap:3.5rem}
@media (min-width:900px){.press-teaser__grid{grid-template-columns:1fr 1fr;gap:3rem}}
.press-page{padding-bottom:var(--section)}
.press-group{padding-top:clamp(2.5rem,5vw,4rem)}
.press-group>.section-title{margin-bottom:1rem}
.press-item{display:grid;gap:1.5rem;padding-block:2.5rem;border-top:1px solid var(--rule)}
@media (min-width:900px){.press-item{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:start;gap:3rem}}
.press-item.press-item--text,.press-item.press-item--compact{grid-template-columns:1fr}
.press-item--compact{gap:1.25rem;padding:0;border:0}
.press-item__media{display:grid;gap:.5rem}
.press-item__video{width:100%;background:#000;object-fit:cover}
.press-item__media--split{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.press-item__media--split .press-item__video{grid-row:1/3;aspect-ratio:9/16}
.press-item__media--split .press-item__photo{position:relative}
.press-item__media--split .press-item__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.press-item__media--portrait .press-item__video{width:min(100%,46vh)}
.press-item__photo{display:block;overflow:hidden;background:var(--wall-2);cursor:zoom-in}
.press-item__date{margin-bottom:.4rem;font-size:.9375rem;color:var(--graphite)}
.press-item__title{font-size:clamp(1.5rem,2.4vw,2rem);letter-spacing:-.015em}
.press-item__award{margin-top:.45rem;font-weight:500;color:var(--stencil)}
.press-item__text{max-width:54ch;margin-top:1rem;font-family:var(--font-text);font-size:1.125rem;line-height:1.65}

/* SSS */
.faq{padding-block:var(--section);border-top:1px solid var(--rule)}
.faq__grid{display:grid;gap:2rem}
@media (min-width:900px){.faq__grid{grid-template-columns:5fr 7fr;gap:4rem}.faq__grid>.section-title{position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}}
.faq__item{border-bottom:1px solid var(--rule)}
.faq__item:first-child{border-top:1px solid var(--rule)}
.faq__item summary{display:flex;justify-content:space-between;gap:1.5rem;padding:1.35rem 0;list-style:none;font-size:1.1875rem;color:var(--ink);cursor:pointer}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"";flex:none;width:14px;height:14px;margin-top:.4em;background:linear-gradient(var(--ink),var(--ink)) center/100% 1.5px no-repeat,linear-gradient(var(--ink),var(--ink)) center/1.5px 100% no-repeat;transition:transform .2s}
.faq__item[open] summary::after{transform:rotate(45deg)}
.faq__answer{max-width:60ch;padding-bottom:1.5rem;font-family:var(--font-text);font-size:1.125rem;line-height:1.7}
.faq__answer a{text-decoration-color:var(--stencil);text-underline-offset:.2em}

/* Randevu çağrısı (arka planda tembel yüklenen video) */
.cta-band{position:relative;isolation:isolate;overflow:hidden;background:var(--night);color:var(--night-text)}
.cta-band__video{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;opacity:.3;filter:grayscale(1)}
.cta-band__inner{display:grid;justify-items:start;gap:1.5rem;padding-block:clamp(5rem,12vw,9rem)}
.cta-band h2{max-width:16ch;font-size:clamp(2.25rem,5.5vw,4.5rem);font-weight:300;letter-spacing:-.03em;color:#fff}
.cta-band p{max-width:46ch;font-family:var(--font-text);font-size:1.1875rem}

/* Alt sayfa başlığı */
.page-head{display:grid;gap:1.25rem;padding-block:clamp(2.5rem,7vw,5.5rem) clamp(2rem,4vw,3rem)}

/* Hakkımda */
.about{padding-bottom:var(--section)}
.about__grid{display:grid;gap:3rem}
@media (min-width:960px){.about__grid{grid-template-columns:minmax(260px,4fr) 8fr;gap:clamp(3rem,6vw,6rem)}.about__aside{position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}}
.about__aside img{width:100%;max-width:320px;border-radius:50%;background:none}
.facts{margin:2rem 0 1.5rem;border-top:1px solid var(--rule)}
.facts__row{display:grid;grid-template-columns:minmax(7.5rem,40%) 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--rule);font-size:.9375rem}
.facts dt{color:var(--graphite)}
.facts dd{color:var(--ink)}
.award-list{margin:1.25rem 0 1.75rem;border-top:1px solid var(--rule)}
.award-list li{display:grid;grid-template-columns:4.5rem 1fr;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--rule);font-family:var(--font-ui);font-size:1rem;line-height:1.5}
.award-list__year{font-weight:500;color:var(--ink)}
.pull-quote{max-width:34ch;margin:2.5rem 0;padding-left:1.5rem;border-left:2px solid var(--stencil);font-size:clamp(1.4rem,2.4vw,1.8rem);font-style:italic;line-height:1.4;color:var(--ink)}
.about__cta{margin-top:2.5rem}

/* Randevu formu */
.booking{padding-bottom:var(--section)}
.booking__grid{display:grid;gap:2.5rem}
@media (min-width:1000px){.booking__grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr);column-gap:clamp(3rem,6vw,6rem)}.booking__head{grid-column:1/-1}.booking__aside{position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}}
.booking-form__progress{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem}
.booking-form__progress span{height:3px;background:var(--rule)}
.booking-form__progress span.is-done{background:var(--stencil)}
.booking-form__step-label{margin-bottom:1.5rem;font-size:.9375rem;color:var(--graphite)}
.booking-form__step{min-width:0;margin:0;padding:0;border:0}
.booking-form__legend{margin-bottom:1.75rem;padding:0;font-size:clamp(1.6rem,3vw,2.25rem);font-weight:300;letter-spacing:-.02em;color:var(--ink)}
.booking-form__nav{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}
.field--files{margin-bottom:1.75rem}
.file-pick{position:relative;display:inline-flex;align-items:center;justify-self:start;padding:.75rem 1.4rem;border:1px dashed rgba(0,0,0,.45);border-radius:999px;font-weight:500;cursor:pointer}
.file-pick:hover{border-color:var(--ink)}
.file-pick input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}
.file-pick:focus-within{outline:2px solid var(--stencil);outline-offset:3px}
.file-previews{display:flex;flex-wrap:wrap;gap:1rem}
.file-previews:empty{display:none}
.file-previews li{display:grid;gap:.35rem;width:104px}
.file-previews img{width:104px;height:104px;object-fit:cover}
.file-previews button{justify-self:start;padding:0;background:none;border:0;font-size:.8125rem;color:var(--graphite);text-decoration:underline;cursor:pointer}
.form-note{max-width:58ch;margin-top:1.75rem;font-family:var(--font-text);font-size:1rem;color:var(--graphite)}
.form-note a{color:var(--ink);text-decoration-color:var(--stencil)}
.form-status{min-height:1.5em;margin-top:1.25rem;font-weight:500;color:var(--ink)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.booking-success{padding:clamp(1.75rem,4vw,2.75rem);background:var(--paper);border:1px solid var(--rule)}
.booking-success h2{margin-bottom:1rem;font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:300}
.booking-success p{max-width:48ch;font-family:var(--font-text);font-size:1.1875rem;line-height:1.6}
.booking__aside{padding-top:1.5rem;border-top:1px solid var(--rule)}
.booking__aside h2{margin-bottom:1.25rem;font-size:1.375rem}
.contact-list{display:grid;gap:.9rem}
.contact-list a{display:inline-flex;align-items:center;gap:.75rem;font-size:1.0625rem;text-decoration:none}
.contact-list a:hover span{text-decoration:underline;text-decoration-color:var(--stencil);text-underline-offset:.25em}
.booking__place{margin-top:1.5rem;color:var(--graphite)}

/* Yasal sayfalar */
.legal{padding-bottom:var(--section)}
.legal .prose h2{margin:2.25rem 0 .75rem;font-size:1.375rem;font-weight:500;letter-spacing:0}
.legal .prose a{text-decoration-color:var(--stencil)}
.legal .prose .legal__meta{font-size:1rem;color:var(--graphite)}

/* 404 */
.notfound{padding-block:clamp(4rem,12vw,9rem)}
.notfound__code{font-size:clamp(6rem,22vw,15rem);font-weight:300;line-height:.8;letter-spacing:-.05em;color:var(--ink)}
.notfound .page-title{margin-top:1.5rem}
.notfound__text{max-width:42ch;margin-top:1.25rem;font-family:var(--font-text);font-size:1.25rem}
.notfound__links{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2rem}

/* Lightbox */
.lightbox{width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(0,0,0,.94);color:var(--night-text)}
.lightbox::backdrop{background:rgba(0,0,0,.9)}
.lightbox[open]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
.lightbox__figure{grid-column:2;grid-row:1;display:grid;justify-items:center;gap:1rem;min-width:0;padding:4rem .5rem 2rem}
.lightbox__figure img{width:auto;max-width:100%;max-height:calc(100dvh - 13rem);object-fit:contain;background:none}
.lightbox__caption{display:grid;gap:.25rem;max-width:60ch;text-align:center}
.lightbox__title{font-family:var(--font-text);font-size:1.125rem;font-style:italic;color:#fff}
.lightbox__meta{font-size:.875rem;color:var(--night-muted)}
.lightbox__note{margin-top:.35rem;font-family:var(--font-text);font-size:1rem}
.lightbox__note:empty{display:none}
.lightbox__btn{display:grid;place-items:center;width:3.25rem;height:3.25rem;padding:0;background:none;border:0;color:#fff;cursor:pointer}
.lightbox__btn .icon{width:1.6rem;height:1.6rem}
.lightbox__close{position:absolute;top:1rem;right:1rem}
.lightbox__prev{grid-column:1;grid-row:1}
.lightbox__next{grid-column:3;grid-row:1}
