/* Branded loader */
.site-loader{position:fixed;inset:0;z-index:9999;background:radial-gradient(circle at 50% 45%,#2b2118,#120f0c 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .6s,visibility .6s}.site-loader.done{opacity:0;visibility:hidden}.loader-track{position:relative;width:min(360px,72vw);height:56px;border-bottom:1px solid rgba(201,148,78,.35);overflow:hidden}.loader-track:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:linear-gradient(90deg,transparent,#d09a51,transparent);transform:translateX(-100%);animation:cutLine 1.35s ease-in-out forwards}.loader-scissors{position:absolute;left:-42px;bottom:1px;color:#d09a51;font-size:38px;line-height:1;filter:drop-shadow(0 4px 10px rgba(208,154,81,.35));animation:scissorCut 1.35s cubic-bezier(.5,0,.3,1) forwards}.loader-word{font:500 18px var(--serif);color:#eee5d9;letter-spacing:8px;margin-top:22px;opacity:0;animation:loaderWord .7s .65s forwards}@keyframes scissorCut{0%{left:-42px;transform:rotate(-7deg)}45%{transform:rotate(8deg)}100%{left:calc(100% - 30px);transform:rotate(-4deg)}}@keyframes cutLine{to{transform:translateX(0)}}@keyframes loaderWord{to{opacity:1;letter-spacing:5px}}
/* Buttons and CTAs */
.button,.phone-box{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,background .25s}.button:after,.phone-box:after{content:'';position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 37%,rgba(255,255,255,.32) 50%,transparent 63%);transform:translateX(-70%);transition:transform .65s}.button:hover:after,.phone-box:hover:after{transform:translateX(70%)}.button:hover,.phone-box:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(93,55,20,.24)}.animated-cta{position:relative;overflow:hidden}.animated-cta:before{content:'';position:absolute;width:340px;height:340px;border:1px solid rgba(188,137,72,.11);border-radius:50%;right:8%;top:50%;transform:translateY(-50%);animation:ctaPulse 4s ease-in-out infinite}.animated-cta:after{content:'HAIR-DEI';position:absolute;right:-20px;bottom:-45px;font:600 120px var(--serif);color:rgba(255,255,255,.025);letter-spacing:8px}@keyframes ctaPulse{50%{transform:translateY(-50%) scale(1.12);opacity:.45}}
/* Footer icons */
.social-links a{width:44px;height:44px}.social-links .icon{width:20px;height:20px;stroke-width:1.6}.details{display:flex;flex-direction:column;gap:9px}.details>a{display:flex;align-items:center;gap:12px;font-size:11px;transition:color .2s}.details>a:hover{color:#d29c52}.details .icon{width:17px;height:17px;color:#c18a42}.footer-grid nav a{transition:color .2s,transform .2s}.footer-grid nav a:hover{color:#d29c52;transform:translateX(4px)}
/* Homepage depth */
.experience{background:#17130f;color:#ede6dd}.experience .section-heading h2{font-size:42px;text-transform:none}.experience .section-heading .eyebrow{margin-bottom:6px}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#4a3a2b;border:1px solid #4a3a2b;border-radius:12px;overflow:hidden}.steps-grid article{position:relative;background:#211a14;padding:45px 38px;min-height:270px;transition:background .3s}.steps-grid article:hover{background:#292017}.steps-grid article>span{font:500 15px var(--serif);color:#bf8944}.steps-grid h3{font:500 30px var(--serif);margin:45px 0 10px}.steps-grid p{font-size:12px;color:#bdb4aa;line-height:1.75}.salon-info{padding:85px 0;background:linear-gradient(115deg,#f7f2ea,#e9dfd1)}.salon-info-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;max-width:1050px}.salon-info h2{font:600 48px/1.05 var(--serif);margin:10px 0 22px;max-width:600px}.salon-info-grid>div:first-child>p:not(.eyebrow){max-width:600px;color:#6b6258}.text-link{display:inline-flex;gap:12px;margin-top:17px;color:#9e672a;font-weight:600;font-size:12px}.text-link span{transition:transform .2s}.text-link:hover span{transform:translateX(6px)}.hours-card{background:#211a14;color:#e9e1d8;padding:42px;border-radius:12px;box-shadow:0 22px 55px rgba(45,29,14,.17)}.hours-card h3{font:500 29px var(--serif);margin:8px 0}.hours-card p{font-size:12px;color:#bbb1a6}.hours-card>a{display:inline-flex;align-items:center;gap:10px;color:#d29a4d;margin-top:12px;font-weight:600}.hours-card .icon{width:19px}.home-work-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}.home-work-grid a{position:relative;height:390px;overflow:hidden;border-radius:8px}.home-work-grid img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.home-work-grid a:hover img{transform:scale(1.06)}.home-work-grid a:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(15,11,8,.9))}.home-work-grid span{position:absolute;z-index:1;left:25px;bottom:21px;color:#fff;font:500 24px var(--serif)}.faq{background:#f8f4ee}.faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;max-width:1050px}.faq h2{font:600 47px/1.05 var(--serif);margin:8px 0}.faq details{border-bottom:1px solid #cfc2b1;padding:20px 0}.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font:600 20px var(--serif)}.faq summary::-webkit-details-marker{display:none}.faq summary span{font:400 28px var(--sans);color:#b27a35;transition:transform .25s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:12px;color:#6c6258;max-width:620px;margin:12px 0 0}
/* Portfolio */
.portfolio{padding:80px 0 100px;background:#eee7dd}.portfolio-head{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:42px}.portfolio-head h2{font:600 45px/1.05 var(--serif);margin:8px 0}.portfolio-head>p{font-size:12px;color:#6c6258}.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:150px;gap:12px}.portfolio-item{position:relative;grid-column:span 4;grid-row:span 2;padding:0;border:0;border-radius:9px;overflow:hidden;cursor:pointer;background:#201a14;text-align:left}.portfolio-item.item-1,.portfolio-item.item-6{grid-row:span 3}.portfolio-item.item-4{grid-column:span 8}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s,filter .4s}.portfolio-item:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(12,9,7,.94));transition:opacity .3s}.portfolio-item:hover img{transform:scale(1.055);filter:saturate(1.08)}.portfolio-item>span{position:absolute;z-index:1;left:23px;right:23px;bottom:21px;color:white;display:flex;flex-direction:column}.portfolio-item small{text-transform:uppercase;color:#d19a50;letter-spacing:1.4px;font-size:9px}.portfolio-item strong{font:500 22px var(--serif);margin-top:3px}.lightbox{position:fixed;inset:0;z-index:10000;background:rgba(9,7,5,.94);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:65px;opacity:0;visibility:hidden;transition:.3s}.lightbox.open{opacity:1;visibility:visible}.lightbox img{max-width:min(1000px,88vw);max-height:78vh;object-fit:contain;border-radius:6px;box-shadow:0 25px 80px #000}.lightbox p{color:#eee3d7;font:500 22px var(--serif);margin:14px}.lightbox button{position:absolute;right:32px;top:22px;color:white;background:none;border:0;font-size:45px;cursor:pointer}
@media(max-width:900px){.steps-grid{grid-template-columns:1fr}.steps-grid article{min-height:0}.steps-grid h3{margin-top:25px}.salon-info-grid,.faq-grid,.portfolio-head{grid-template-columns:1fr;gap:25px}.home-work-grid{grid-template-columns:1fr 1fr}.home-work-grid a:first-child{grid-column:1/3}.portfolio-item,.portfolio-item.item-4{grid-column:span 6}.footer-grid .details{border-bottom:0}.nav nav.open a:nth-child(5){transition-delay:.24s}}
@media(max-width:560px){.loader-track{width:76vw}.experience .section-heading h2,.salon-info h2,.faq h2{font-size:37px}.steps-grid article{padding:32px 26px}.salon-info{padding:58px 0}.hours-card{padding:30px 25px}.home-work-grid{grid-template-columns:1fr}.home-work-grid a,.home-work-grid a:first-child{grid-column:auto;height:300px}.faq-grid{gap:10px}.portfolio{padding:55px 0}.portfolio-head h2{font-size:37px}.portfolio-grid{display:grid;grid-template-columns:1fr;grid-auto-rows:330px}.portfolio-item,.portfolio-item.item-1,.portfolio-item.item-4,.portfolio-item.item-6{grid-column:auto;grid-row:auto}.lightbox{padding:55px 15px}.animated-cta:after{font-size:70px}}
.footer-availability{display:flex;align-items:flex-start;gap:12px;margin-top:12px;padding:14px 15px;background:rgba(188,137,69,.07);border:1px solid rgba(188,137,69,.18);border-radius:7px}.availability-dot{width:8px;height:8px;flex:none;margin-top:6px;border-radius:50%;background:#c38c45;box-shadow:0 0 0 5px rgba(195,140,69,.1);animation:availabilityPulse 2.2s ease-in-out infinite}.footer-availability div{display:flex;flex-direction:column}.footer-availability small{color:#c5904c;text-transform:uppercase;letter-spacing:1px;font-size:8px}.footer-availability strong{color:#d8d0c6;font-size:10px;font-weight:500;margin-top:2px}.details .footer-booking-link{justify-content:space-between;margin-top:2px;padding:10px 2px;color:#d09a50;border-bottom:1px solid rgba(192,139,69,.25);text-transform:uppercase;letter-spacing:1px;font-size:9px}.footer-booking-link b{font-size:17px;transition:transform .2s}.footer-booking-link:hover b{transform:translateX(5px)}@keyframes availabilityPulse{50%{box-shadow:0 0 0 8px rgba(195,140,69,0);opacity:.75}}

/* A referenciafotók teljes képkockája látszódjon minden képernyőméreten. */
.portfolio-item img{object-fit:contain;object-position:center;background:#201a14}

.gallery-zoom-icon{position:absolute;z-index:3;left:50%;top:46%;width:54px;height:54px;border:1px solid rgba(255,255,255,.72);border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(20,15,11,.62);backdrop-filter:blur(7px);opacity:0;transform:translate(-50%,-42%) scale(.78);transition:opacity .25s,transform .25s,background .25s;pointer-events:none}.gallery-zoom-icon .icon{width:24px;height:24px}.portfolio-item:hover .gallery-zoom-icon,.portfolio-item:focus-visible .gallery-zoom-icon{opacity:1;transform:translate(-50%,-50%) scale(1);background:rgba(177,120,54,.82)}.portfolio-item{cursor:zoom-in}.lightbox button{z-index:2;width:48px;height:48px;border:1px solid rgba(255,255,255,.3);border-radius:50%;display:grid;place-items:center;background:rgba(22,17,13,.7);font-size:34px;line-height:1;transition:background .2s,transform .2s}.lightbox button:hover{background:#b57d3c;transform:rotate(90deg)}

.home-slider{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:14px}.home-slider .home-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0}.home-slider .home-work-grid a,.home-slider .home-work-grid a:first-child{grid-column:auto;height:390px;background:#201a14}.home-slider .home-work-grid img{object-fit:contain;object-position:center;background:#201a14}.home-slider-arrow{width:46px;height:46px;border:1px solid rgba(126,87,43,.42);border-radius:50%;display:grid;place-items:center;background:#f7f2ea;color:#9e672a;font-size:22px;cursor:pointer;transition:background .2s,color .2s,transform .2s,box-shadow .2s}.home-slider-arrow:hover,.home-slider-arrow:focus-visible{background:#b98543;color:#fff;transform:scale(1.06);box-shadow:0 10px 25px rgba(93,55,20,.18)}.home-work-grid.slide-left{animation:homeSlideLeft .38s ease}.home-work-grid.slide-right{animation:homeSlideRight .38s ease}@keyframes homeSlideLeft{from{opacity:.55;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}@keyframes homeSlideRight{from{opacity:.55;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}

@media(max-width:700px){.home-slider{grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}.home-slider-arrow{width:40px;height:40px}.home-slider .home-work-grid{grid-template-columns:1fr}.home-slider .home-work-grid a,.home-slider .home-work-grid a:first-child{display:none;grid-column:auto;height:360px}.home-slider .home-work-grid a:nth-child(2){display:block}}

.lightbox .lightbox-close{right:32px;top:22px}.lightbox .lightbox-nav{top:50%;margin:0;transform:translateY(-50%);font-size:25px}.lightbox .lightbox-prev{left:24px;right:auto}.lightbox .lightbox-next{left:auto;right:24px}.lightbox .lightbox-nav:hover{transform:translateY(-50%) scale(1.08)}.lightbox .lightbox-close:hover{transform:rotate(90deg)}

@media(max-width:560px){.lightbox .lightbox-close{right:12px;top:12px}.lightbox .lightbox-nav{width:42px;height:42px}.lightbox .lightbox-prev{left:8px}.lightbox .lightbox-next{right:8px}.lightbox img{max-width:82vw}}

.hero{background-image:linear-gradient(90deg,rgba(18,14,11,.97),rgba(18,14,11,.7)),url('../img/hero-hd.webp');background-position:center 42%}

@supports(content-visibility:auto){.services,.about,.experience,.salon-info,.home-gallery,.faq,.portfolio,.service-intro,.signature-services,.price-section,.service-standard,.service-choice,.contact-page{content-visibility:auto;contain-intrinsic-size:auto 800px}}
