/*
Theme Name: SHERO Friseur
Theme URI: https://shero-friseur.de/
Author: SHERO Friseur
Description: Responsives One-Page WordPress-Theme für SHERO Friseur Bremen mit Hero, Leistungen, Handwerk und Kontakt.
Version: 1.5.0
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: shero-friseur
*/
:root{--ink:#090a0b;--panel:#111315;--panel2:#17191b;--gold:#c9a46a;--gold-light:#e2c28a;--white:#f4f1eb;--muted:#a5a5a3;--line:rgba(201,164,106,.24);--max:1240px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ink);color:var(--white);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-shell{overflow:hidden}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.eyebrow{color:var(--gold);font-size:.72rem;letter-spacing:.23em;text-transform:uppercase;font-weight:700;display:inline-flex;align-items:center;gap:12px}.eyebrow:before{content:"";width:28px;height:1px;background:var(--gold)}.section{padding:112px 0;position:relative}.section-heading{max-width:760px;margin-bottom:42px}.section-heading h2,.about-copy h2,.contact-copy h2{font-family:var(--serif);font-size:clamp(2.5rem,5vw,4.2rem);line-height:1.06;font-weight:400;letter-spacing:-.035em;margin:12px 0 16px}.section-heading p,.lead{color:var(--muted);font-size:1.02rem;max-width:670px}
.site-header{position:absolute;z-index:20;inset:0 0 auto;height:92px;border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(5,6,7,.72),transparent)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;min-width:140px}.brand img{width:156px;height:auto;max-height:58px;object-fit:contain;object-position:left center}.brand .custom-logo-link{display:block}.brand .custom-logo{width:156px;height:auto;max-height:58px;object-fit:contain}.primary-nav{margin-left:auto}.primary-nav ul,.footer-nav ul{display:flex;list-style:none;padding:0;margin:0;gap:clamp(16px,2.2vw,32px);align-items:center}.primary-nav a{font-size:.76rem;letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.83);transition:color .2s}.primary-nav a:hover,.footer-nav a:hover{color:var(--gold-light)}.header-cta{padding:11px 18px;font-size:.72rem;letter-spacing:.12em}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;color:var(--white);width:44px;height:44px;border-radius:50%;cursor:pointer}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 23px;border:1px solid var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;transition:background .25s,color .25s,border-color .25s,transform .25s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:#15120d}.button-gold:hover{background:var(--gold-light);border-color:var(--gold-light)}.button-outline{color:var(--white);background:rgba(10,11,12,.28)}.button-outline:hover{background:var(--gold);color:#15120d}.button-arrow:after{content:'↗';font-size:1rem;line-height:1}
.hero{position:relative;min-height:max(700px,100svh);display:flex;align-items:center;background:#0b0d0f;isolation:isolate}.hero-media,.hero-shade{position:absolute;inset:0;z-index:-1}.hero-media{overflow:hidden;background:radial-gradient(ellipse at 68% 44%,rgba(201,164,106,.15),transparent 31%),radial-gradient(ellipse at 22% 80%,rgba(95,105,110,.16),transparent 38%),linear-gradient(120deg,#0a0b0d,#141719 54%,#090a0b)}.hero-media:before{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(30deg,transparent 48%,rgba(201,164,106,.4) 49%,rgba(201,164,106,.4) 50%,transparent 51%),linear-gradient(150deg,transparent 48%,rgba(201,164,106,.25) 49%,rgba(201,164,106,.25) 50%,transparent 51%);background-size:92px 158px;background-position:0 0,46px 79px;mask-image:linear-gradient(90deg,transparent 12%,#000 60%,transparent)}.hero-media img,.hero-media video{position:absolute;width:100%;height:100%;inset:0;object-fit:cover}.hero-media video{z-index:1}.hero-shade{z-index:2;background:linear-gradient(90deg,rgba(5,6,7,.92),rgba(5,6,7,.62) 43%,rgba(5,6,7,.12) 100%),linear-gradient(0deg,rgba(5,6,7,.67),transparent 42%)}.hero-inner{position:relative;z-index:3;padding-top:95px;width:100%}.hero-copy{max-width:760px}.hero-kicker{color:var(--gold-light);text-transform:uppercase;letter-spacing:.24em;font-size:.72rem;font-weight:700;margin:0 0 24px;display:flex;align-items:center;gap:14px}.hero-kicker:before{content:'';width:44px;height:1px;background:var(--gold)}.hero-logo{width:min(310px,60vw);max-height:105px;object-fit:contain;object-position:left center;margin-bottom:28px}.hero h1{font:400 clamp(3rem,7vw,6.8rem)/.98 var(--serif);letter-spacing:-.045em;margin:0 0 18px}.hero h1 span{display:block;color:var(--gold-light);font-style:italic}.hero-lead{max-width:510px;color:rgba(255,255,255,.78);font-size:clamp(1rem,1.4vw,1.13rem);margin:0 0 31px}.hero-actions{display:flex;flex-wrap:wrap;gap:13px}.hero-note{margin-top:55px;color:rgba(255,255,255,.56);font-size:.69rem;letter-spacing:.17em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.hero-note:before{content:'';width:35px;height:1px;background:var(--gold)}.hero-scroll{position:absolute;right:4.5%;bottom:46px;z-index:3;writing-mode:vertical-rl;color:rgba(255,255,255,.55);font-size:.62rem;letter-spacing:.21em;text-transform:uppercase}.hero-scroll:after{content:'';height:48px;width:1px;background:var(--gold);margin-top:12px;display:inline-block}
.services{background:linear-gradient(180deg,#0a0b0d,#101214)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:435px;background:var(--panel);border:1px solid rgba(255,255,255,.08);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;transition:transform .35s,border-color .35s}.service-card:hover{transform:translateY(-5px);border-color:rgba(201,164,106,.62)}.service-photo,.service-fallback{position:absolute;inset:0}.service-photo img{width:100%;height:100%;object-fit:cover;opacity:.7;transition:transform .65s,opacity .35s}.service-card:hover .service-photo img{transform:scale(1.035);opacity:.82}.service-fallback{background:radial-gradient(ellipse at 80% 22%,rgba(201,164,106,.13),transparent 30%),linear-gradient(145deg,#252728,#111315 62%)}.service-fallback:after{content:'';position:absolute;inset:14px;border:1px solid rgba(201,164,106,.18)}.service-fallback span{position:absolute;right:32px;top:25px;font:italic 3rem var(--serif);color:rgba(201,164,106,.52)}.service-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,8,9,.97),rgba(7,8,9,.72) 42%,rgba(7,8,9,.06) 100%)}.service-content{position:relative;padding:34px;z-index:1}.service-content h3{font:400 clamp(1.65rem,2.3vw,2.2rem)/1.12 var(--serif);margin:0 0 13px}.service-content p{color:rgba(255,255,255,.68);font-size:.9rem;margin:0 0 23px}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--gold-light);font-size:.69rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.text-link:after{content:'→';font-size:1rem;transition:transform .2s}.text-link:hover:after{transform:translateX(5px)}
.gallery{background:#111315}.gallery:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 25%,rgba(201,164,106,.055),transparent 35%);pointer-events:none}.gallery-intro{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:end}.gallery-intro .section-heading{margin-bottom:36px}.gallery-intro .lead{margin:0 0 42px}.gallery-subtitle{font:400 clamp(1.3rem,2vw,1.7rem) var(--serif);color:var(--gold-light);margin:0}.gallery-grid{display:grid;grid-template-columns:1.24fr .76fr .76fr;grid-template-rows:230px 230px;gap:12px}.gallery-item{position:relative;overflow:hidden;margin:0;background:#222527;border:1px solid rgba(255,255,255,.07)}.gallery-item:first-child{grid-row:span 2}.gallery-item:nth-child(4){grid-column:2 / 4}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.gallery-item:hover img{transform:scale(1.035)}.gallery-empty{height:100%;min-height:150px;display:grid;place-items:center;text-align:center;padding:20px;background:radial-gradient(ellipse at 50% 42%,rgba(201,164,106,.12),transparent 42%),linear-gradient(140deg,#25282a,#151719)}.gallery-empty span{max-width:220px;color:rgba(255,255,255,.58);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.gallery-empty span:before{content:'✦';display:block;color:var(--gold);font-size:1.4rem;margin-bottom:12px}.gallery-bottom{margin-top:28px;display:flex;justify-content:flex-end}
.about{background:#090a0b}.about-grid{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(45px,8vw,125px);align-items:center}.about-mark{min-height:390px;display:grid;place-items:center;position:relative;border:1px solid var(--line);background:radial-gradient(ellipse at 50% 50%,rgba(201,164,106,.11),transparent 45%),#111315}.about-mark:before,.about-mark:after{content:'';position:absolute;inset:16px;border:1px solid rgba(201,164,106,.14);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.about-mark:after{inset:37px}.about-mark img{position:relative;z-index:1;width:min(70%,310px);max-height:150px;object-fit:contain}.about-copy h2{max-width:540px}.about-copy p{color:var(--muted);max-width:560px}.about-copy .button{margin-top:18px}.extra{background:#111315}.extra-inner{display:grid;grid-template-columns:.8fr 1fr;gap:65px;align-items:start}.extra-copy p{color:var(--muted)}.extra h2,.booking-inner h2{font:400 clamp(2.2rem,4.4vw,3.8rem)/1.08 var(--serif);letter-spacing:-.03em;margin:12px 0 16px}.price-note{padding:32px;border:1px solid var(--line);background:linear-gradient(140deg,rgba(201,164,106,.08),transparent 65%);color:var(--muted)}.price-note strong{display:block;color:var(--white);font:400 1.7rem var(--serif);margin-bottom:8px}.voucher{background:linear-gradient(105deg,#171616,#111315 58%,#1a1711);border-top:1px solid rgba(201,164,106,.12);border-bottom:1px solid rgba(201,164,106,.12);padding:75px 0}.voucher-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.voucher h2{font:400 clamp(2rem,4vw,3.25rem)/1.1 var(--serif);margin:0 0 10px}.voucher p{color:var(--muted);margin:0}.booking-cta{padding:78px 0;background:radial-gradient(ellipse at 78% 50%,rgba(201,164,106,.1),transparent 32%),#151719;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.booking-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.booking-inner p{margin:0;max-width:560px;color:var(--muted)}.booking-inner h2{margin-bottom:10px}
.contact{background:#090a0b}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-item{padding:23px 0;border-top:1px solid var(--line)}.contact-item h3{font-size:.68rem;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);margin:0 0 9px}.contact-item p,.contact-item a{color:rgba(255,255,255,.76);margin:0;white-space:pre-line}.map-panel{min-height:320px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(ellipse at 60% 40%,rgba(201,164,106,.13),transparent 25%),linear-gradient(140deg,#171a1c,#0d0f10);display:grid;place-items:center;text-align:center;padding:30px}.map-panel a{color:var(--gold-light);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}.map-panel span{display:block;color:rgba(255,255,255,.56);margin-bottom:17px}.map-panel p{color:rgba(255,255,255,.56);margin:10px 0 0;font-size:.84rem}.site-footer{background:#060707;border-top:1px solid rgba(255,255,255,.08);padding:28px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-brand{color:rgba(255,255,255,.48);font-size:.74rem}.footer-nav ul{gap:20px}.footer-nav a{font-size:.69rem;color:rgba(255,255,255,.55)}.footer-social{color:var(--gold-light);font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.site-main{padding-top:130px;min-height:60vh}.content-card{max-width:820px;margin:0 auto;padding-bottom:100px}.content-card h1{font:400 clamp(2.5rem,6vw,4rem) var(--serif)}.content-card p{color:var(--muted)}.post-card{padding:25px 0;border-bottom:1px solid var(--line)}.post-card h2{font:400 2rem var(--serif)}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto;width:auto;height:auto;padding:12px;background:#fff;color:#000;z-index:99999}.alignwide{max-width:var(--max);margin-inline:auto}.entry-content{padding-bottom:80px}.entry-content a{color:var(--gold-light);text-decoration:underline;text-underline-offset:3px}.entry-content h2,.entry-content h3{font-family:var(--serif);font-weight:400}.entry-content blockquote{border-left:2px solid var(--gold);padding-left:22px;color:var(--muted)}.shero-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.94);display:grid;place-items:center;padding:36px}.shero-lightbox img{max-height:88vh;max-width:92vw;width:auto;height:auto;object-fit:contain}.shero-lightbox-close{position:absolute;right:24px;top:20px;border:1px solid rgba(255,255,255,.45);background:#111;color:#fff;width:46px;height:46px;border-radius:50%;font-size:1.7rem;cursor:pointer}
@media(max-width:980px){.primary-nav ul{gap:15px}.primary-nav a{font-size:.66rem}.header-cta{display:none}.gallery-intro{grid-template-columns:1fr .8fr;gap:32px}.services-grid{gap:12px}.service-content{padding:26px}.service-card{min-height:400px}.section{padding:90px 0}}
@media(max-width:760px){.container{width:min(var(--max),calc(100% - 36px))}.site-header{height:76px}.brand img,.brand .custom-logo{width:140px}.menu-toggle{display:grid;place-items:center;position:relative;z-index:22}.primary-nav{position:absolute;top:76px;left:0;right:0;padding:0 18px;max-height:0;overflow:hidden;background:rgba(9,10,11,.98);transition:max-height .3s,border-color .3s;border-bottom:1px solid transparent}.primary-nav.is-open{max-height:420px;border-color:var(--line);padding-block:14px 22px}.primary-nav ul{display:flex;align-items:stretch;flex-direction:column;gap:0}.primary-nav a{display:block;padding:12px 2px;font-size:.75rem}.hero{min-height:780px;min-height:100svh}.hero-inner{padding-top:78px}.hero-shade{background:linear-gradient(90deg,rgba(5,6,7,.86),rgba(5,6,7,.46)),linear-gradient(0deg,rgba(5,6,7,.78),transparent 70%)}.hero h1{font-size:clamp(3.2rem,14vw,5.3rem)}.hero-lead{max-width:390px}.hero-note{margin-top:36px}.hero-scroll{display:none}.hero-actions{align-items:stretch;flex-direction:column;max-width:330px}.hero-actions .button{width:100%}.section{padding:76px 0}.section-heading{margin-bottom:30px}.services-grid{grid-template-columns:1fr}.service-card{min-height:390px}.gallery-intro{grid-template-columns:1fr;gap:0}.gallery-intro .lead{margin:0 0 28px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:240px 170px 170px}.gallery-item:first-child{grid-row:span 2}.gallery-item:nth-child(4){grid-column:1 / 3}.about-grid,.extra-inner,.contact-grid{grid-template-columns:1fr;gap:34px}.about-mark{min-height:280px}.about-copy{order:-1}.extra-inner{gap:20px}.voucher{padding:54px 0}.voucher-inner{align-items:flex-start;flex-direction:column}.contact-details{gap:12px}.map-panel{min-height:240px}.footer-inner{flex-direction:column;text-align:center}.footer-nav ul{justify-content:center;flex-wrap:wrap}.site-main{padding-top:108px}.booking-inner{align-items:flex-start;flex-direction:column;gap:24px}.booking-cta{padding:56px 0}}
@media(max-width:430px){.container{width:calc(100% - 28px)}.hero h1{font-size:3.05rem}.hero-kicker{font-size:.62rem;letter-spacing:.17em}.hero-logo{width:240px}.gallery-grid{grid-template-rows:190px 145px 145px}.contact-details{grid-template-columns:1fr}.section-heading h2,.about-copy h2,.contact-copy h2{font-size:2.6rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-media video{display:none!important}}

.footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr .8fr;gap:34px;padding:54px 0 46px;background:#060707}.site-footer{background:#060707;border-top:1px solid rgba(201,164,106,.22)}.footer-grid h2{font:400 1.2rem var(--serif);color:var(--white);margin:0 0 17px}.footer-logo img{width:148px;max-height:60px;object-fit:contain;object-position:left center}.footer-tagline{color:var(--gold-light);font:italic 1rem var(--serif);margin:17px 0 8px}.footer-intro,.footer-contact-block p,.footer-hours-block p{color:rgba(255,255,255,.57);font-size:.82rem;margin:6px 0}.footer-nav-block ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.footer-nav-block li a,.footer-contact-block a,.footer-hours-block a{color:rgba(255,255,255,.7);font-size:.79rem;transition:color .2s}.footer-nav-block a:hover,.footer-contact-block a:hover,.footer-hours-block a:hover{color:var(--gold-light)}.footer-contact-block p span{display:inline-block;min-width:54px;color:var(--gold)}.footer-contact-block .footer-business-name{color:var(--white);font-weight:600}.footer-address{white-space:pre-line}.footer-map,.footer-appointment{display:inline-block!important;margin-top:12px;color:var(--gold-light)!important;font-size:.68rem!important;letter-spacing:.09em;text-transform:uppercase}.footer-hours-pending{border-left:1px solid var(--gold);padding-left:12px}.footer-bottom{border-top:1px solid rgba(255,255,255,.09);padding:19px 0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:rgba(255,255,255,.48);font-size:.7rem}.footer-legal{display:flex;gap:18px;flex-wrap:wrap}.footer-legal a{color:rgba(255,255,255,.53)}.footer-legal a:hover{color:var(--gold-light)}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:36px 28px}}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr;gap:28px;padding:40px 0}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-legal{gap:10px 16px}}

/* Shared interior pages, accessible contact form, and responsive premium footer. */
.site-header{position:fixed;background:rgba(8,9,10,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.primary-nav .current-menu-item>a,.primary-nav .current_page_item>a{color:var(--gold-light)}.site-main .section{padding-top:68px}.site-main .section-heading h1{font:400 clamp(2.5rem,5vw,4.2rem)/1.06 var(--serif);letter-spacing:-.035em;color:var(--white);margin:12px 0 16px}.page-intro{padding:0 0 28px;color:var(--muted)}.gallery-disclaimer{margin:16px 0 0;color:rgba(255,255,255,.48);font-size:.74rem;text-align:right}.booking-page{background:#090a0b}.booking-page .content-card{padding:24px 0 80px}.booking-page h1{color:var(--white)}.booking-phone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:30px 0}.booking-phone-card{display:flex;flex-direction:column;gap:6px;padding:24px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(201,164,106,.1),rgba(17,19,21,.8));transition:border-color .2s,transform .2s}.booking-phone-card:hover{border-color:var(--gold);transform:translateY(-2px)}.booking-phone-card span,.booking-phone-card em{font-size:.68rem;letter-spacing:.14em;color:var(--gold-light);font-style:normal;text-transform:uppercase}.booking-phone-card strong{font:400 1.45rem var(--serif);color:var(--white)}.booking-note,.booking-address{color:var(--muted);font-size:.87rem}.shero-contact-form{display:grid;gap:10px;margin-top:34px;padding:26px;border:1px solid var(--line);background:#111315}.shero-contact-form h2{font:400 1.7rem var(--serif);margin:0 0 8px}.shero-contact-form label{font-size:.78rem;color:var(--gold-light)}.shero-contact-form input:not([type=hidden]):not([type=checkbox]),.shero-contact-form textarea{width:100%;padding:12px 14px;border:1px solid rgba(255,255,255,.16);background:#090a0b;color:var(--white);border-radius:0}.shero-contact-form input:focus,.shero-contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:2px}.shero-contact-form .button{justify-self:start;cursor:pointer}.form-honey{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form-privacy-note,.form-message{font-size:.8rem;color:var(--muted)}.form-error{color:#f2a6a6}.form-privacy-note a{color:var(--gold-light);text-decoration:underline}.footer-grid{grid-template-columns:1.15fr 1fr 1fr .8fr}.site-footer{padding:0}.footer-hours-pending{color:rgba(255,255,255,.58);border-left:1px solid var(--gold);padding-left:12px}.footer-legal a:focus-visible,.footer-grid a:focus-visible,.primary-nav a:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.site-main .section{padding-top:44px}.booking-phone-grid{grid-template-columns:1fr}.shero-contact-form{padding:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-legal{gap:10px 16px}}@media(max-width:520px){.footer-grid{grid-template-columns:1fr}.footer-bottom{gap:12px}.footer-legal{font-size:.66rem}.gallery-disclaimer{text-align:left}.site-main .section-heading h1{font-size:2.65rem}}

.visualization-notice{display:inline-flex;align-items:center;margin:14px 0 0;padding:6px 11px;border-left:2px solid var(--gold);background:rgba(5,6,7,.5);color:rgba(255,255,255,.72);font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}

/* Pull the hero copy inward from the viewport edge while preserving the subject in the video. */
.hero .hero-inner{width:min(var(--max),calc(100% - 48px));padding-left:clamp(0px,4vw,56px)}.hero-copy{max-width:720px}.hero h1{font-size:clamp(3rem,6vw,5.8rem)}
@media(max-width:760px){.hero .hero-inner{width:calc(100% - 36px);padding-left:0}}
@media(max-width:430px){.hero h1{font-size:3.05rem}}

/* Subtle SHERO motion: smooth anchor navigation, a calm hero entrance and scroll reveals. */
html{scroll-behavior:smooth;scroll-padding-top:92px}
.primary-nav a{position:relative}
.primary-nav a::after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left center;transition:transform .28s ease}
.primary-nav a:hover::after,.primary-nav a:focus-visible::after,.primary-nav .current-menu-item>a::after,.primary-nav .current_page_item>a::after{transform:scaleX(1)}
.primary-nav.is-open li{animation:sh-menu-in .34s both;animation-delay:calc(var(--menu-index,0)*34ms)}
@keyframes sh-menu-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes sh-hero-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
html.has-scroll-motion .hero-copy{animation:sh-hero-in .8s cubic-bezier(.2,.7,.2,1) both}
html.has-scroll-motion [data-scroll-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}
html.has-scroll-motion [data-scroll-reveal].is-visible{opacity:1;transform:translateY(0)}
@media(max-width:760px){html{scroll-padding-top:78px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}html.has-scroll-motion .hero-copy{animation:none!important}html.has-scroll-motion [data-scroll-reveal]{opacity:1!important;transform:none!important;transition:none!important;will-change:auto!important}.primary-nav.is-open li{animation:none!important}}

/* v1.4.0: brand alignment, service crops and responsive content refinements */
:root{--ink:#101010;--panel:#242424;--panel2:#1a1a1a;--gold:#C9954B;--gold-light:#E3BC7B;--white:#F5F1EB;--muted:#C2BCB2;--line:rgba(201,149,75,.28)}
@media(min-width:981px){.hero-copy{max-width:710px;margin-left:clamp(54px,10vw,150px)}}
@media(max-width:980px){.hero-copy{margin-left:clamp(0px,3vw,30px)}}
@media(max-width:760px){.hero-copy{margin-left:0}.hero-logo{width:min(260px,72vw)}.hero-note{margin-top:35px}}
.service-card-1 .service-photo img{object-position:center 48%}.service-card-2 .service-photo img{object-position:center 78%}.service-card-3 .service-photo img{object-position:24% center}
.gallery-teaser{padding:76px 0;background:linear-gradient(120deg,#17191a,#101112 64%,#1b1711);border-top:1px solid rgba(201,149,75,.14);border-bottom:1px solid rgba(201,149,75,.14)}
.gallery-teaser-inner{display:flex;align-items:center;justify-content:space-between;gap:38px}.gallery-teaser-copy{max-width:760px}.gallery-teaser-copy h2{font:400 clamp(2.1rem,4.4vw,3.7rem)/1.07 var(--serif);letter-spacing:-.03em;margin:12px 0}.gallery-teaser-copy p{max-width:720px;color:var(--muted);margin:0}.gallery-teaser-inner .button{flex:0 0 auto}
.section-heading h1{font-family:var(--serif);font-size:clamp(2.5rem,5vw,4.2rem);line-height:1.06;font-weight:400;letter-spacing:-.035em;margin:12px 0 16px}
.page-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(220px,clamp(220px,29vw,370px))}.page-gallery-grid .gallery-item:first-child{grid-row:auto}.page-gallery-grid .gallery-item:nth-child(4){grid-column:auto}.page-gallery-grid .gallery-item img{object-fit:cover}.gallery-disclaimer{margin:18px 0 0;color:var(--muted);font-size:.82rem;line-height:1.55}.page-gallery .gallery-bottom{justify-content:center;margin-top:34px}
.footer-brand-block{max-width:310px}.footer-logo{display:inline-block;width:min(190px,100%);margin-bottom:18px}.footer-logo img{width:100%;max-height:72px;object-fit:contain;object-position:left center}.footer-tagline{margin:0 0 8px;color:var(--gold-light);font-size:.88rem;font-weight:650}.footer-intro{margin:0;color:var(--muted);font-size:.85rem;max-width:280px}.footer-map,.footer-appointment{display:inline-flex;margin-top:10px;color:var(--gold-light);font-size:.78rem;font-weight:650}.footer-contact-block .footer-address{color:var(--muted);line-height:1.6}.footer-grid a:focus-visible,.site-header a:focus-visible,.menu-toggle:focus-visible,.footer-bottom a:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}
@media(max-width:900px){.gallery-teaser-inner{align-items:flex-start;flex-direction:column;gap:24px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}}
@media(max-width:760px){.page-gallery-grid{grid-template-columns:1fr;grid-template-rows:none}.page-gallery-grid .gallery-item{height:clamp(230px,66vw,390px)}.page-gallery .gallery-intro{grid-template-columns:1fr;gap:0}.page-gallery .gallery-intro .lead{margin:0 0 24px}.page-gallery .section-heading{margin-bottom:18px}.contact-grid{grid-template-columns:1fr}.footer-brand-block{max-width:none}.service-card-3 .service-photo img{object-position:20% center}}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}.footer-legal{flex-wrap:wrap;gap:10px 16px}.gallery-teaser{padding:58px 0}.booking-phone-grid{grid-template-columns:1fr}.booking-phone-card{min-height:90px}}

/* Responsive hero media: retain the haircut action as the focal point. */
.hero-media img,.hero-media video{object-position:64% 48%}
.hero-media img{z-index:0}
.hero-media video{z-index:1;opacity:0;transition:opacity .45s ease}
.hero-media video.is-playing{opacity:1}
@media(max-width:760px){
  .hero{min-height:100vh;min-height:100svh;min-height:100dvh;padding-block:88px 34px}
  .hero-inner{padding-top:0}
  .hero-media img,.hero-media video{object-position:68% 44%}
  .hero-shade{background:linear-gradient(90deg,rgba(5,6,7,.78),rgba(5,6,7,.40)),linear-gradient(0deg,rgba(5,6,7,.78),rgba(5,6,7,.10) 68%)}
}
@media(max-width:380px){
  .hero{padding-block:80px 28px}
  .hero .hero-inner{width:calc(100% - 28px)}
  .hero h1{font-size:clamp(2.7rem,13vw,3.05rem)}
  .hero-lead{margin-bottom:20px}
  .hero{padding-block:80px 18px}
  .hero-note{margin-top:12px}
}
@media(orientation:landscape) and (max-width:900px){
  .hero{min-height:100svh;min-height:100dvh;padding-block:78px 18px}
  .hero .hero-inner{padding-top:0}
  .hero-copy{display:grid;grid-template-columns:minmax(120px,.3fr) minmax(0,1fr);column-gap:20px;row-gap:5px;align-content:center;max-width:760px;margin-left:0}
  .hero-kicker{grid-column:1/-1;margin:0 0 6px;font-size:.58rem}
  .hero-logo{grid-column:1;grid-row:2/5;align-self:center;width:min(160px,24vw);max-height:70px;margin:0}
  .hero h1{grid-column:2;grid-row:2;font-size:clamp(2rem,5.4vw,2.9rem);line-height:.98;margin:0 0 2px}
  .hero-lead{grid-column:2;grid-row:3;font-size:.83rem;max-width:440px;margin:0 0 7px}
  .hero-actions{grid-column:2;grid-row:4;flex-direction:row;gap:8px;max-width:none}
  .hero-actions .button{width:auto;min-height:42px;padding:11px 14px;font-size:.62rem}
  .hero-note{grid-column:2;grid-row:5;margin-top:5px;font-size:.57rem}
}
@media(prefers-reduced-motion:reduce){.hero-media video{transition:none!important}}


/* SHERO one-page homepage refresh — editorial photography, restrained motion, accessible fallbacks. */
html{scroll-padding-top:96px}
#main-content .hero-media:before{opacity:0}
#main-content .hero-media img{object-position:68% 48%}
.home-services{position:relative;overflow:hidden;padding:112px 0 126px;background:radial-gradient(ellipse at 78% 12%,rgba(201,164,106,.07),transparent 32%),linear-gradient(180deg,#101214,#0b0d0e)}
.home-services:after{position:absolute;content:"";width:460px;height:460px;border:1px solid rgba(201,164,106,.08);border-radius:50%;right:-300px;bottom:-190px;pointer-events:none}
.home-section-heading{max-width:760px;margin:0 auto 48px;text-align:center}
.home-section-heading .eyebrow{justify-content:center}
.home-section-heading h2,.home-story-copy h2,.home-contact-intro h2{font:400 clamp(2.65rem,5.2vw,4.7rem)/1.05 var(--serif);letter-spacing:-.04em;margin:17px 0 16px}
.home-section-heading p{max-width:620px;margin:0 auto;color:var(--muted);font-size:1rem}
.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;position:relative;z-index:1}
.home-service-card{position:relative;isolation:isolate;overflow:hidden;min-height:510px;aspect-ratio: .79;background:#17191a;border:1px solid rgba(255,255,255,.1);transition:transform .45s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .4s}
.home-service-card:hover{transform:translateY(-8px);border-color:rgba(201,164,106,.6);box-shadow:0 22px 60px rgba(0,0,0,.35)}
.home-service-photo,.home-service-overlay{position:absolute;inset:0;z-index:-1}
.home-service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s}
.home-service-card:hover .home-service-photo img{transform:scale(1.045);filter:saturate(1.04)}
.home-service-overlay{background:linear-gradient(180deg,rgba(7,8,9,.18) 0%,rgba(7,8,9,.05) 34%,rgba(7,8,9,.58) 63%,rgba(7,8,9,.96) 100%);z-index:0;pointer-events:none}
.home-service-index{position:absolute;left:25px;top:23px;color:rgba(255,255,255,.82);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.home-service-index span{color:var(--gold);padding-inline:5px}
.home-service-content{position:absolute;z-index:1;inset:auto 0 0;padding:30px 28px 29px}
.home-service-content:before{content:"";display:block;width:34px;height:1px;background:var(--gold);margin-bottom:18px;transition:width .35s}
.home-service-card:hover .home-service-content:before{width:62px}
.home-service-content h3{font:400 clamp(1.7rem,2.45vw,2.4rem)/1.1 var(--serif);margin:0 0 11px;color:#fff}
.home-service-content p{font-size:.88rem;line-height:1.65;color:rgba(255,255,255,.74);margin:0 0 19px;max-width:360px}
.home-service-link{display:inline-flex;align-items:center;gap:14px;color:var(--gold-light);font-size:.65rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.home-service-link span{font-size:1.05rem;transition:transform .25s}
.home-service-link:hover span{transform:translate(3px,-3px)}
.home-story{position:relative;overflow:hidden;padding:122px 0;background:#090a0b;border-top:1px solid rgba(255,255,255,.045)}
.home-story-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.82fr);align-items:center;gap:clamp(52px,9vw,132px)}
.home-story-media{position:relative;margin:0;min-height:430px;aspect-ratio:1.48;background:#141617;border:1px solid rgba(201,164,106,.23);overflow:hidden}
.home-story-media:before{position:absolute;z-index:1;content:"";inset:12px;border:1px solid rgba(255,255,255,.14);pointer-events:none}
.home-story-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:67% center;transition:transform .85s cubic-bezier(.2,.7,.2,1)}
.home-story-media:hover img{transform:scale(1.035)}
.home-story-media figcaption{position:absolute;z-index:2;left:28px;bottom:28px;display:flex;align-items:center;gap:14px;color:#fff;font-size:.63rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.story-caption-mark{display:grid;place-items:center;width:37px;height:37px;background:var(--gold);color:#17130c;font:italic 1.4rem var(--serif)}
.home-story-copy{max-width:520px}
.home-story-copy h2{max-width:520px;margin-top:19px}
.home-story-copy>p:not(.story-signature){color:var(--muted);font-size:1rem;line-height:1.85;max-width:480px}
.story-signature{margin:28px 0 23px;color:var(--gold-light);font:italic 1.15rem var(--serif);letter-spacing:.02em}
.home-story-copy .button{margin-top:4px}
.home-contact{position:relative;overflow:hidden;padding:102px 0 110px;background:radial-gradient(ellipse at 83% 50%,rgba(201,164,106,.09),transparent 35%),linear-gradient(120deg,#121416,#0b0d0e 58%,#121211);border-top:1px solid rgba(201,164,106,.16)}
.home-contact:before{position:absolute;content:"";width:360px;height:360px;border:1px solid rgba(201,164,106,.09);border-radius:50%;left:-260px;top:-180px;pointer-events:none}
.home-contact-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(310px,.75fr);align-items:center;gap:clamp(48px,8vw,120px);position:relative}
.home-contact-intro h2{max-width:610px}
.home-contact-intro>p{color:var(--muted);max-width:510px;margin:0 0 27px;font-size:1rem}
.home-contact-card{position:relative;padding:35px 36px 33px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012));border:1px solid rgba(201,164,106,.28);box-shadow:0 24px 65px rgba(0,0,0,.2)}
.home-contact-card:after{position:absolute;content:"";height:2px;left:0;right:0;bottom:-1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.72}
.home-contact-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.contact-card-label{color:var(--gold-light);font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.contact-card-star{color:var(--gold);font-size:1.45rem;animation:shero-star-turn 18s linear infinite}
.home-contact-address{font:400 clamp(1.5rem,2.4vw,2.15rem)/1.3 var(--serif);white-space:pre-line;margin:0 0 25px}
.home-contact-hours{border-top:1px solid rgba(255,255,255,.11);padding-top:19px;margin-top:17px}
.home-contact-hours>span{color:var(--muted);font-size:.63rem;letter-spacing:.16em;text-transform:uppercase}
.home-contact-hours p{margin:7px 0 0;color:rgba(255,255,255,.84);white-space:pre-line;font-size:.91rem}
.home-map-link{display:inline-flex;gap:12px;align-items:center;margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.11);width:100%;color:var(--gold-light);font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.home-map-link span{transition:transform .2s}
.home-map-link:hover span{transform:translate(3px,-3px)}
@keyframes shero-star-turn{to{transform:rotate(360deg)}}
html.has-scroll-motion [data-scroll-reveal]{opacity:0;transform:translateY(24px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
html.has-scroll-motion [data-scroll-reveal].is-visible{opacity:1;transform:translateY(0)}
@media(max-width:980px){.home-story-grid,.home-contact-grid{gap:48px}.home-service-card{min-height:470px}.home-service-content{padding:25px 22px}.home-story-media{min-height:360px}}
@media(max-width:760px){html{scroll-padding-top:82px}.home-services{padding:78px 0 88px}.home-section-heading{text-align:left;margin:0 auto 30px}.home-section-heading .eyebrow{justify-content:flex-start}.home-section-heading h2,.home-story-copy h2,.home-contact-intro h2{font-size:clamp(2.7rem,11vw,3.7rem)}.home-section-heading p{margin:0}.home-service-grid{grid-template-columns:1fr;gap:15px}.home-service-card{min-height:470px;aspect-ratio:auto}.home-service-content{padding:27px 25px}.home-story{padding:80px 0 84px}.home-story-grid{grid-template-columns:1fr;gap:32px}.home-story-media{min-height:0;aspect-ratio:1.2}.home-story-copy{max-width:620px}.home-story-copy h2{margin-top:14px}.home-contact{padding:78px 0 84px}.home-contact-grid{grid-template-columns:1fr;gap:33px}.home-contact-card{padding:28px 25px}.home-contact-intro>p{max-width:570px}}
@media(max-width:380px){.home-service-card{min-height:440px}.home-service-content{padding:24px 20px}.home-story-media figcaption{left:20px;bottom:20px}.home-contact-card{padding:25px 21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-service-card,.home-service-photo img,.home-story-media img,.home-service-link span,.home-map-link span,.contact-card-star{transition:none!important;animation:none!important;transform:none!important}html.has-scroll-motion [data-scroll-reveal]{opacity:1;transform:none;transition:none}}

