/*
Theme Name: BAYZZ NERÉ
Version: 2.0.1
Author: BAYZZ
Description: Beauty-Portfolio und servergestützter Salonkalender.
Requires PHP: 8.1
*/
@font-face{font-family:Manrope;src:url('assets/Manrope.woff2');font-display:swap}@font-face{font-family:NereSerif;src:url('assets/CormorantGaramond.ttf');font-display:swap}:root{--paper:#f0ece8;--ink:#392f36;--plum:#694a60;--muted:#8a7a83;--line:#d7ccd1;--serif:NereSerif,Georgia,serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:13px/1.6 Manrope,Arial,sans-serif}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit;color:inherit;background:none;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--plum);outline-offset:5px}img{display:block;width:100%}h1,h2,h3,p{margin:0}button:disabled{opacity:.5;cursor:wait}.pilot-strip{height:29px;background:#e4dce1;display:flex;gap:20px;align-items:center;padding:0 4vw;font:8px monospace;letter-spacing:.07em}.pilot-strip a{margin-left:auto;text-decoration:underline}.pilot-strip span{opacity:.7}header{height:100px;display:flex;justify-content:space-between;align-items:center;padding:0 4vw;border-bottom:1px solid var(--line)}.brand{font:42px/.9 var(--serif);letter-spacing:-.05em}.brand span{display:block;font:8px Manrope;letter-spacing:.1em;margin-top:12px}nav{display:flex;gap:35px;align-items:center}nav button{font-size:12px}nav button:hover{color:var(--plum)}nav sup{font:8px monospace;margin-left:6px}.header-book{border:1px solid var(--line);padding:11px 20px;border-radius:40px}.intro{display:flex;align-items:end;justify-content:space-between;gap:25px;padding:30px 4vw 25px}.intro>p{font:9px/1.6 monospace;letter-spacing:.1em}.intro h1{font:400 clamp(32px,3.5vw,55px)/1.1 var(--serif);letter-spacing:-.04em}.intro h1 em{font-weight:400;color:var(--plum)}.intro>span{font-size:9px;text-align:right}.album-rail{display:flex;align-items:start;gap:3.5vw;overflow-x:auto;scrollbar-width:none;padding:0 4vw 20px;scroll-snap-type:x mandatory}.album-rail::-webkit-scrollbar{display:none}.album-cover{flex:0 0 37vw;text-align:left;padding:0;scroll-snap-align:center;position:relative;animation:arrive 1s both}.album-cover:nth-child(2n){flex-basis:27vw;margin-top:45px}.album-cover:nth-child(3n){flex-basis:32vw;margin-top:15px}.cover-image{overflow:hidden;background:#ded3d8;position:relative}.cover-image img{height:clamp(300px,49svh,620px);object-fit:cover;transition:transform 1.1s,filter .5s}.album-cover:nth-child(2n) img{height:clamp(270px,43svh,540px)}.album-cover:hover img{transform:scale(1.035);filter:brightness(.96)}.cover-open{position:absolute;right:18px;bottom:18px;background:var(--paper);border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:22px;transition:.3s}.album-cover:hover .cover-open{background:var(--plum);color:white}.cover-caption{display:flex;justify-content:space-between;align-items:center;padding:14px 0}.cover-caption strong{font:400 35px var(--serif);letter-spacing:-.03em}.cover-caption small{font:9px monospace;letter-spacing:.08em}.collection-footer{display:flex;gap:30px;align-items:center;padding:12px 4vw 35px}.collection-footer>span{font:8px monospace;max-width:220px;opacity:.65}.collection-footer>div{margin-left:auto;display:flex;gap:10px}.collection-footer button,.photo-controls button{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;font-size:20px}.collection-footer>p{font:22px/1.05 var(--serif);margin-left:30px}.collection-footer em{color:var(--plum)}.persistent-book{position:fixed;right:25px;bottom:25px;z-index:10000;background:var(--plum);color:#fff;border:1px solid #fff7;padding:15px 22px;border-radius:50px;box-shadow:0 5px 25px #392f3622;font-size:12px;display:flex;gap:30px;align-items:center;transition:transform .25s}.persistent-book:hover{transform:translateY(-3px)}.persistent-book span{font-size:20px;line-height:1}.dialog-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line);font:10px monospace;gap:20px}.dialog-top button{padding:10px 0}.mini-brand{font:28px var(--serif)}dialog{margin:0;border:0;width:100vw;max-width:none;height:100svh;max-height:none;padding:25px 5vw 110px;background:var(--paper);color:var(--ink);overflow:auto}dialog::backdrop{background:#392f3677;backdrop-filter:blur(12px)}dialog[open]{animation:arrive .5s both}dialog .persistent-book{position:fixed}.album-intro{display:flex;justify-content:space-between;gap:40px;align-items:end;padding:50px 0 40px}.eyebrow{font:9px monospace;letter-spacing:.12em;margin-bottom:20px}.album-intro h1,.team-heading h1{font:400 clamp(48px,7vw,100px)/1.02 var(--serif);letter-spacing:-.045em}.album-intro>div:last-child{max-width:320px}.album-intro p{font-size:12px}.text-button{border-bottom:1px solid var(--plum);padding:10px 0;margin-top:15px}.album-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.album-photo{padding:0;text-align:left;align-self:start}.album-photo:nth-child(2n){margin-top:85px}.album-photo img{height:auto;aspect-ratio:4/5;object-fit:cover}.album-photo span{display:flex;justify-content:space-between;padding:13px 0;font:10px monospace}.photo-note{font:9px monospace;margin-top:45px;opacity:.6}.photo-dialog{background:#30252d;color:var(--paper);padding-bottom:100px}.photo-dialog .dialog-top{border-color:#78616f}.photo-dialog>img{height:calc(100svh - 210px);object-fit:contain;margin:20px auto}.photo-controls{display:flex;gap:30px;justify-content:center;align-items:center}.photo-controls span{font:10px monospace}.team-heading{padding:55px 0}.team-heading p:last-child{max-width:420px;margin-top:22px;font-size:12px}.team-heading em{color:var(--plum);font-weight:400}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3vw}.team-card img{aspect-ratio:4/5;object-fit:cover}.team-card:nth-child(2){margin-top:55px}.team-card h2{font:38px var(--serif);margin-top:17px}.team-card .role{font:9px monospace;letter-spacing:.1em;text-transform:uppercase;margin:5px 0 15px}.team-card p{font-size:12px}.team-services{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.team-services span{border:1px solid var(--line);padding:4px 8px;font-size:9px;border-radius:20px}.team-card button{border-bottom:1px solid var(--plum);padding:9px 0}.price-group{margin:30px 0 45px}.price-group h2{font:35px var(--serif);border-bottom:1px solid var(--line);padding-bottom:15px}.price-row{display:grid;grid-template-columns:1fr 140px 80px 140px;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.price-row button{border:1px solid var(--line);padding:8px 12px;border-radius:30px}.price-row small{font-size:10px;color:var(--muted)}.booking-dialog{width:680px;max-width:calc(100vw - 24px);height:auto;max-height:calc(100svh - 30px);margin:auto;border-radius:6px;padding:25px 35px 45px}.booking-dialog h1{font:42px/1.05 var(--serif);letter-spacing:-.025em;margin:28px 0 18px}.booking-pilot{font-size:10px;padding:12px;background:#e4dce1;margin:18px 0}.booking-step{font:9px monospace;letter-spacing:.1em;color:var(--muted);margin-top:25px}.booking-choices{display:grid;gap:8px}.choice{border:1px solid var(--line);padding:15px;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:20px}.choice.active{border-color:var(--plum);background:#e7dde3}.choice strong{font-size:12px}.choice small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.booking-dialog label{display:block;font-size:11px;margin:20px 0 6px}.booking-dialog input:not([type=checkbox]),.booking-dialog select{font:14px Manrope;width:100%;padding:13px 10px;background:#f9f6f3;border:1px solid var(--line);color:var(--ink);border-radius:0}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.slots button{padding:11px 4px;border:1px solid var(--line)}.slots button.active{color:white;background:var(--plum);border-color:var(--plum)}.book-actions{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.primary{background:var(--plum);color:white;padding:13px 20px;border-radius:30px}.secondary{border-bottom:1px solid var(--line);padding:10px 0}.booking-error{font-size:12px;color:#9c3c4c;margin-top:15px;min-height:20px}.booking-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#e7dde3;padding:20px;margin:20px 0;font-size:12px}.booking-summary dt{color:var(--muted);font-size:10px}.booking-summary dd{margin:0}.booking-dialog .consent{display:flex;align-items:start;gap:10px;line-height:1.7}.consent a{text-decoration:underline}.booking-dialog .consent input{margin-top:4px}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-status{padding:18px;background:#e7dde3;font-size:12px;margin:18px 0}.loader{padding:25px 0;color:var(--muted)}footer{border-top:1px solid var(--line);display:flex;gap:25px;align-items:center;padding:20px 4vw 110px;font:9px monospace}footer span{margin-left:auto}.toast{position:fixed;bottom:90px;right:25px;max-width:320px;background:var(--ink);color:var(--paper);padding:15px 20px;z-index:10001;display:none}.toast.show{display:block}body:has(dialog[open]){overflow:hidden}body:has(#booking[open])>.persistent-book,body:has(#manage-dialog[open])>.persistent-book{display:none}@keyframes arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(max-width:800px){.pilot-strip{font-size:6px;padding:0 5vw}.pilot-strip span{display:none}header{height:90px;padding:0 5vw}.brand{font-size:36px}.brand span{font-size:7px}nav{gap:18px}nav button{font-size:10px}.header-book{display:none}.intro{padding:30px 5vw;align-items:center}.intro h1{font-size:36px;max-width:230px}.intro>p{display:none}.intro>span{font-size:8px;max-width:90px}.album-rail{gap:5vw;padding:0 5vw 20px}.album-cover,.album-cover:nth-child(2n),.album-cover:nth-child(3n){flex-basis:78vw;margin-top:0}.cover-image img,.album-cover:nth-child(2n) img{height:53svh;min-height:350px}.cover-caption strong{font-size:32px}.collection-footer{padding:5px 5vw 35px;gap:15px}.collection-footer>span{max-width:180px;font-size:7px}.collection-footer>p{display:none}.collection-footer>div{margin-left:auto}.persistent-book{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:14px 20px;gap:25px}.album-intro{display:block;padding:35px 0}.album-intro h1{font-size:60px;margin-bottom:25px}.album-grid{gap:25px}.album-photo:nth-child(2n){margin-top:50px}.album-photo span{font-size:8px}.team-heading{padding:40px 0}.team-heading h1{font-size:52px}.team-grid{grid-template-columns:1fr;gap:55px}.team-card:nth-child(2){margin-top:0}.team-card img{max-height:70svh;object-position:top}.team-card h2{font-size:40px}.price-row{grid-template-columns:1fr 65px;gap:8px;padding:20px 0}.price-row small{grid-column:1;grid-row:2}.price-row button{grid-column:2;grid-row:2;font-size:10px}.booking-dialog{padding:20px 22px 30px}.booking-dialog h1{font-size:36px}.slots{grid-template-columns:repeat(3,1fr)}footer{flex-wrap:wrap;gap:15px;font-size:8px}footer span{margin-left:0}.booking-summary{padding:15px}.photo-dialog>img{height:65svh}dialog{padding-left:6vw;padding-right:6vw}.dialog-top{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.legal-page{max-width:800px;margin:auto;padding:50px 25px 130px}.legal-page h1{font:44px/1.1 var(--serif);margin-bottom:40px}.legal-page h2{font-size:18px;margin:30px 0 15px}.legal-page p{margin:15px 0;line-height:1.9}.legal-page a{text-decoration:underline}.studio-detail{width:100%;height:200px;object-fit:cover;margin-bottom:30px}

