/*
Theme Name: Marcus Andree Fotografen-Seite
Theme URI: https://wordpress.marcusandree.de/
Author: Marcus Andree
Author URI: https://wordpress.marcusandree.de/
Description: Persönliche Fotografen-Website von Marcus Andree mit Portfolio, Terminen, Kundenbereich, Modelkartei sowie TFP- und Kundenverträgen.
Version: 1.12
Requires at least: 6.3
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: marcus-fotografie
Tags: photography, portfolio, one-column, custom-menu, featured-images, full-width-template, translation-ready
*/

:root {
  --ink: #0b0b0b;
  --paper: #f4f0e9;
  --muted: #b8b2aa;
  --line: rgba(255,255,255,.16);
  --accent: #b88a52;
  --max: 1460px;
  --pad: clamp(20px, 4vw, 64px);
  --serif: Georgia, 'Times New Roman', serif;
  --sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--ink);color:#fff;font-family:var(--sans);font-size:16px;line-height:1.6} img{max-width:100%;height:auto;display:block} a{color:inherit;text-decoration:none} button,input,textarea{font:inherit} ::selection{background:var(--accent);color:#111}
.section-page-content p:first-child,.hero-page-content p:first-child{margin-top:0}.section-page-content p:last-child,.hero-page-content p:last-child{margin-bottom:0}.hero-page-content{max-width:590px;color:rgba(255,255,255,.78);font-size:clamp(16px,1.4vw,20px)}
.marcus-gallery-slideshow{position:relative;margin:clamp(30px,5vw,76px) 0;background:#080808;overflow:hidden}.marcus-gallery-slides{position:relative;min-height:min(76svh,900px)}.marcus-gallery-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .55s ease}.marcus-gallery-slide.is-active{opacity:1;visibility:visible}.marcus-gallery-slide img{width:100%;height:min(76svh,900px);object-fit:contain;background:#080808}.marcus-gallery-slide-prev,.marcus-gallery-slide-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:52px;height:52px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(0,0,0,.48);color:#fff;cursor:pointer;font-size:24px}.marcus-gallery-slide-prev{left:18px}.marcus-gallery-slide-next{right:18px}.marcus-gallery-slide-count{position:absolute;right:20px;bottom:16px;z-index:2;padding:6px 10px;background:rgba(0,0,0,.55);font-size:12px;letter-spacing:.1em}.marcus-gallery-slideshow.is-paused:after{content:'Pausiert';position:absolute;left:18px;bottom:16px;padding:6px 10px;background:rgba(0,0,0,.55);font-size:11px;text-transform:uppercase;letter-spacing:.1em}@media(max-width:600px){.marcus-gallery-slides{min-height:62svh}.marcus-gallery-slide img{height:62svh}.marcus-gallery-slide-prev,.marcus-gallery-slide-next{width:44px;height:44px}.marcus-gallery-slide-prev{left:8px}.marcus-gallery-slide-next{right:8px}}

.site-header{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:20px var(--pad);transition:.3s ease;background:linear-gradient(to bottom,rgba(0,0,0,.5),transparent)}
.site-header.is-scrolled{background:rgba(8,8,8,.88);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand{font-weight:800;letter-spacing:.18em;text-transform:uppercase;font-size:14px}.brand small{font-weight:400;color:var(--muted);letter-spacing:.1em;margin-left:8px}
.menu-toggle{display:none;border:1px solid var(--line);background:transparent;color:#fff;padding:9px 12px;border-radius:999px}.primary-menu{display:flex;gap:28px;list-style:none;margin:0;padding:0;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.primary-menu a{opacity:.78;transition:.2s}.primary-menu a:hover{opacity:1}

.hero{position:relative;min-height:100svh;display:grid;align-items:end;overflow:hidden;background:#151311}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:contrast(1.04) brightness(1.2)}.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.30) 52%,rgba(0,0,0,.60) 100%),linear-gradient(to top,rgba(0,0,0,.80),rgba(0,0,0,.08) 62%)}.hero--no-image::after{background:linear-gradient(135deg,#191714,#080808)}
.hero-inner{position:relative;z-index:2;width:min(var(--max),100%);margin:0 auto;padding:150px var(--pad) 72px}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#d5c6b3;margin-bottom:18px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(58px,9vw,150px);line-height:.86;letter-spacing:-.045em;max-width:1000px;margin:0}.hero h1 em{font-weight:400;color:#d0a56c}.hero-copy{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-top:40px}.hero-copy p{max-width:590px;margin:0;color:rgba(255,255,255,.76);font-size:clamp(16px,1.4vw,20px)}
.cta{display:inline-flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.28);padding:13px 18px;border-radius:999px;white-space:nowrap;transition:.25s}.cta:hover{background:#fff;color:#111}.cta .arrow{font-size:18px}

.section{padding:clamp(80px,10vw,150px) var(--pad)}.wrap{width:min(var(--max),100%);margin:0 auto}.section-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:start;margin-bottom:54px}.section-kicker{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.section-title{font-family:var(--serif);font-weight:400;font-size:clamp(42px,6vw,94px);line-height:.98;margin:0;letter-spacing:-.035em}.section-lead{max-width:760px;color:rgba(255,255,255,.68);font-size:18px;margin-top:18px}

.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.work{position:relative;overflow:hidden;background:#161616;min-height:420px}.work img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .4s}.work:hover img{transform:scale(1.035);filter:brightness(.85)}.work-overlay{position:absolute;inset:auto 0 0 0;padding:28px;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);display:flex;justify-content:space-between;gap:20px;align-items:end}.work-title{font-family:var(--serif);font-size:30px}.work-meta{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#d5cec4}.w-a{grid-column:span 7;min-height:720px}.w-b{grid-column:span 5;min-height:720px}.w-c{grid-column:span 5;min-height:620px}.w-d{grid-column:span 7;min-height:620px}.w-e{grid-column:span 12;min-height:720px}

.about{background:var(--paper);color:#171717}.about .section-kicker{color:#7b5a32}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,7vw,100px);align-items:center}.about-image{position:relative}.about-image img{width:100%;aspect-ratio:4/5;object-fit:cover}.about-note{position:absolute;right:-24px;bottom:32px;background:#111;color:#fff;padding:18px 20px;width:min(260px,70%);font-size:13px}.about-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(46px,6vw,88px);line-height:.98;margin:0 0 28px;letter-spacing:-.04em}.about-copy p{font-size:18px;color:#49443f;max-width:680px}.signature{font-family:var(--serif);font-style:italic;font-size:32px;margin-top:28px}

.services{border-top:1px solid var(--line)}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:80px 1fr 1fr;gap:28px;padding:28px 0;border-bottom:1px solid var(--line);align-items:baseline}.service-num{color:var(--accent);font-size:12px;letter-spacing:.15em}.service h3{font-family:var(--serif);font-size:clamp(30px,4vw,52px);font-weight:400;margin:0}.service p{margin:0;color:rgba(255,255,255,.62);max-width:560px}

.quote{position:relative;min-height:75vh;display:grid;place-items:center;text-align:center;overflow:hidden}.quote img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.42)}.quote::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at center,transparent,rgba(0,0,0,.65))}.quote blockquote{position:relative;z-index:1;max-width:1050px;padding:0 var(--pad);font-family:var(--serif);font-size:clamp(42px,6vw,90px);line-height:1.02;margin:0}.quote blockquote span{color:#d8b47f}

.contact{background:#0e0e0e}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.contact h2{font-family:var(--serif);font-size:clamp(56px,8vw,120px);line-height:.9;font-weight:400;margin:0}.contact-copy{color:rgba(255,255,255,.66);max-width:600px}.contact-person{display:flex;flex-direction:column;gap:5px;margin-top:24px;color:rgba(255,255,255,.68)}.contact-person strong{font-family:var(--serif);font-size:28px;font-weight:400;color:#fff}.contact-person span{font-size:14px;letter-spacing:.02em}.contact-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.contact-link{border:1px solid var(--line);border-radius:999px;padding:12px 16px}.contact-link:hover{background:#fff;color:#111}

.site-footer{padding:30px var(--pad);border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;color:rgba(255,255,255,.5);font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.site-footer-links{display:flex;flex-wrap:wrap;gap:20px}.site-footer-links a{color:inherit;text-decoration:none}.site-footer-links a:hover,.site-footer-links a:focus-visible{color:#fff;text-decoration:underline}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:none}

@media (max-width:900px){.menu-toggle{display:block}.site-nav{position:fixed;inset:72px 16px auto 16px;background:#111;border:1px solid var(--line);padding:20px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:.2s}.site-nav.is-open{opacity:1;visibility:visible;transform:none}.primary-menu{flex-direction:column;gap:14px}.hero-copy,.section-head,.about-grid,.contact-grid{grid-template-columns:1fr;display:grid}.hero-copy{align-items:start}.portfolio-grid{grid-template-columns:1fr}.w-a,.w-b,.w-c,.w-d,.w-e{grid-column:auto;min-height:560px}.service{grid-template-columns:48px 1fr}.service p{grid-column:2}.about-note{right:12px}.site-footer{flex-direction:column}.section{padding-top:90px;padding-bottom:90px}}
@media (max-width:560px){.brand small{display:none}.hero-inner{padding-bottom:40px}.hero h1{font-size:clamp(54px,18vw,90px)}.hero-copy{margin-top:28px}.w-a,.w-b,.w-c,.w-d,.w-e{min-height:440px}.service{grid-template-columns:38px 1fr}.section-title{font-size:48px}.about-copy h2{font-size:52px}.quote blockquote{font-size:44px}}
/* Mobile hero: show the people first, then the headline, instead of placing text over faces. */
@media (max-width:560px){
  .hero{display:block;min-height:100svh;background:#0a0a0a}
  .hero::after{display:none}
  .hero-media{position:relative;inset:auto;height:clamp(390px,62svh,580px);margin-top:72px;overflow:hidden}
  .hero-media img{width:100%;height:125%;max-width:none;object-fit:cover;object-position:center top;transform:translateY(-18px)}
  .hero-media::after{content:'';position:absolute;inset:auto 0 0;height:32px;background:linear-gradient(to bottom,transparent,#0a0a0a);pointer-events:none}
  .hero-inner{width:100%;padding:30px var(--pad) 52px;background:#0a0a0a}
  .hero h1{font-size:clamp(48px,15vw,76px);line-height:.94}
  .hero-copy{margin-top:22px;gap:22px}
  .hero--no-image .hero-inner{padding-top:150px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.work img{transition:none}}


/* --- Portfolio project pages & gallery lightbox (v1.3) --- */
.single-work{padding-top:150px;background:var(--ink);min-height:100vh}.project-head{padding:40px var(--pad) 52px}.project-title{font-family:var(--serif);font-weight:400;font-size:clamp(58px,9vw,138px);line-height:.88;letter-spacing:-.045em;margin:14px 0 0;max-width:1200px}.project-intro{max-width:760px;color:rgba(255,255,255,.67);font-size:clamp(17px,1.6vw,22px);margin:30px 0 0}.single-work-hero{position:relative;width:min(1800px,100%);margin:0 auto 80px;cursor:zoom-in;overflow:hidden;background:#121212}.single-work-hero img{width:100%;max-height:88vh;object-fit:contain}.lightbox-open{position:absolute;right:22px;bottom:22px;width:48px;height:48px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(0,0,0,.48);backdrop-filter:blur(9px);color:#fff;font-size:20px;cursor:pointer}.project-content{padding:0 var(--pad) 110px}.project-content>*{max-width:800px;margin-left:auto;margin-right:auto}.project-content>p,.project-content>ul,.project-content>ol{font-size:18px;color:rgba(255,255,255,.72)}.project-content>h2,.project-content>h3{font-family:var(--serif);font-weight:400}.project-content>h2{font-size:clamp(38px,5vw,70px);line-height:1}.project-content>h3{font-size:34px}.project-content>.wp-block-gallery,.project-content>.wp-block-image,.project-content>.alignwide,.project-content>.alignfull{max-width:none}.project-content .wp-block-gallery{display:grid!important;grid-template-columns:repeat(12,1fr);gap:14px!important;margin-top:70px;margin-bottom:70px}.project-content .wp-block-gallery .wp-block-image{grid-column:span 6!important;width:auto!important;margin:0!important}.project-content .wp-block-gallery .wp-block-image:nth-child(3n+1){grid-column:span 7!important}.project-content .wp-block-gallery .wp-block-image:nth-child(3n+2){grid-column:span 5!important}.project-content .wp-block-gallery .wp-block-image:nth-child(3n+3){grid-column:span 12!important}.project-content .wp-block-gallery img{width:100%;height:clamp(380px,56vw,760px)!important;object-fit:cover!important}.project-content .wp-block-gallery .wp-block-image:nth-child(3n+3) img{height:clamp(420px,60vw,880px)!important}.project-content .wp-block-image img{margin:42px auto;max-height:88vh;object-fit:contain}.nf-lightbox-source{cursor:zoom-in}.project-nav{padding:36px var(--pad) 70px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;gap:20px;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.project-nav>div:last-child{text-align:right}.project-nav a{opacity:.72}.project-nav a:hover{opacity:1}.project-back{color:var(--accent)}

body.lightbox-active{overflow:hidden}.nf-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(4,4,4,.96);display:grid;grid-template-columns:70px 1fr 70px;align-items:center;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.nf-lightbox.is-open{opacity:1;visibility:visible}.nf-lightbox-stage{margin:0;display:grid;place-items:center;max-height:100vh;padding:50px 20px}.nf-lightbox-stage img{max-width:100%;max-height:86vh;width:auto;height:auto;object-fit:contain;box-shadow:0 20px 80px rgba(0,0,0,.35)}.nf-lightbox-stage figcaption{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);max-width:min(760px,70vw);font-size:13px;color:rgba(255,255,255,.65);text-align:center}.nf-lightbox-close,.nf-lightbox-prev,.nf-lightbox-next{border:0;background:transparent;color:#fff;cursor:pointer}.nf-lightbox-close{position:absolute;top:18px;right:24px;z-index:2;font-size:42px;font-weight:200;line-height:1}.nf-lightbox-prev,.nf-lightbox-next{font-size:32px;opacity:.65;padding:20px}.nf-lightbox-prev:hover,.nf-lightbox-next:hover{opacity:1}.nf-lightbox-count{position:absolute;left:24px;bottom:20px;font-size:12px;letter-spacing:.12em;color:rgba(255,255,255,.55)}

@media(max-width:900px){.single-work{padding-top:105px}.project-head{padding-bottom:36px}.single-work-hero{margin-bottom:54px}.project-content .wp-block-gallery{grid-template-columns:1fr!important;gap:10px!important}.project-content .wp-block-gallery .wp-block-image{grid-column:auto!important}.project-content .wp-block-gallery img,.project-content .wp-block-gallery .wp-block-image:nth-child(3n+3) img{height:auto!important;max-height:none!important;aspect-ratio:auto;object-fit:contain!important}.project-nav{grid-template-columns:1fr 1fr}.project-back{grid-column:1/-1;grid-row:1;text-align:center}.nf-lightbox{grid-template-columns:50px 1fr 50px}.nf-lightbox-stage{padding:45px 0}.nf-lightbox-prev,.nf-lightbox-next{font-size:26px;padding:8px}}
@media(max-width:560px){.project-title{font-size:clamp(52px,17vw,86px)}.project-content{padding-bottom:75px}.project-content .wp-block-gallery{margin-top:45px;margin-bottom:45px}.nf-lightbox{grid-template-columns:42px 1fr 42px}.nf-lightbox-close{top:12px;right:15px}.nf-lightbox-stage figcaption{bottom:16px;max-width:64vw}.nf-lightbox-count{left:14px;bottom:14px}}


/* --- Terminanfrage & Kalender (v1.4) --- */
.booking{background:#151310;border-top:1px solid rgba(184,138,82,.2);border-bottom:1px solid var(--line)}
.booking-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(46px,7vw,110px);align-items:start}
.booking-intro{position:sticky;top:130px}.booking-intro h2{font-family:var(--serif);font-size:clamp(54px,7vw,105px);font-weight:400;line-height:.9;letter-spacing:-.045em;margin:20px 0 30px}.booking-intro>p{max-width:560px;color:rgba(255,255,255,.65);font-size:18px}.booking-note{display:grid;grid-template-columns:38px 1fr;gap:6px 14px;margin-top:42px;padding-top:26px;border-top:1px solid var(--line)}.booking-note span{color:var(--accent);font-size:11px;letter-spacing:.16em;padding-top:2px}.booking-note p{margin:0 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.65)}
.booking-card{background:#f1ede6;color:#181715;padding:clamp(24px,4vw,54px)}.booking-form{display:grid;gap:23px}.form-row{display:grid;gap:16px}.form-row.two{grid-template-columns:1fr 1fr}.booking-form label>span,.time-choice legend{display:block;margin-bottom:8px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#6f675d}.booking-form input:not([type=radio]):not([type=checkbox]),.booking-form select,.booking-form textarea{width:100%;border:0;border-bottom:1px solid rgba(20,18,16,.23);border-radius:0;background:transparent;color:#181715;padding:12px 0;outline:none;transition:border-color .2s}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#8e673b}.booking-form textarea{resize:vertical;min-height:120px}.booking-form select{appearance:auto}
.date-panel{border:1px solid rgba(20,18,16,.14);padding:22px;margin:8px 0}.date-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:20px}.date-panel-head>span{font-family:var(--serif);font-size:28px}.date-panel-head small{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:#766d63}.nf-date{font-family:var(--sans);cursor:pointer;color-scheme:light}.time-choice{border:0;padding:22px 0 0;margin:20px 0 0;border-top:1px solid rgba(20,18,16,.13);display:flex;flex-wrap:wrap;gap:9px}.time-choice legend{float:left;width:100%;margin-bottom:10px}.time-choice label{position:relative;cursor:pointer}.time-choice input{position:absolute;opacity:0;pointer-events:none}.time-choice label span{display:block!important;margin:0!important;border:1px solid rgba(20,18,16,.2);border-radius:999px;padding:9px 12px!important;color:#38332d!important;font-size:12px!important;text-transform:none!important;letter-spacing:0!important;transition:.2s}.time-choice input:checked+span{background:#181715;color:#fff!important;border-color:#181715}.time-choice input:focus-visible+span{outline:2px solid #8e673b;outline-offset:2px}
.privacy-check{display:grid!important;grid-template-columns:20px 1fr;gap:10px;align-items:start;cursor:pointer}.privacy-check input{margin-top:3px}.privacy-check span{margin:0!important;font-size:12px!important;text-transform:none!important;letter-spacing:0!important;line-height:1.5;color:#6b635a!important}.booking-submit{border:0;background:#171614;color:#fff;padding:16px 19px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:13px;text-transform:uppercase;letter-spacing:.1em;transition:.25s}.booking-submit:hover{background:#8e673b}.booking-submit span{font-size:20px}.booking-disclaimer{margin:-8px 0 0;color:#786f65;font-size:11px}.booking-message{padding:16px 18px;margin-bottom:24px;border:1px solid}.booking-message.is-success{background:#e8eee4;border-color:#b9cab0}.booking-message.is-error{background:#f4e7e4;border-color:#d8b5ae}.nf-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:900px){.booking-grid{grid-template-columns:1fr}.booking-intro{position:static}.booking-card{padding:30px}.form-row.two{grid-template-columns:1fr}.date-panel-head{align-items:flex-start;flex-direction:column;gap:2px}}
@media(max-width:560px){.booking-card{padding:22px 18px}.date-panel{padding:17px 14px}.time-choice{gap:7px}.time-choice label span{padding:8px 10px!important}.booking-intro h2{font-size:56px}}

/* v1.5 — editable weekly shooting availability */
.availability-summary{margin-top:30px;padding-top:24px;border-top:1px solid var(--line);max-width:560px}.availability-summary>strong{display:block;margin-bottom:13px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--accent)}.availability-summary>div{display:grid;grid-template-columns:1fr auto;gap:18px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:13px;color:rgba(255,255,255,.68)}.availability-summary>div span:last-child{font-variant-numeric:tabular-nums;color:rgba(255,255,255,.86)}.availability-summary small{display:block;margin-top:10px;color:rgba(255,255,255,.42);font-size:11px}
.nf-dynamic-times{display:block}.nf-time-status{font-size:12px;color:#6f675d;margin-bottom:12px;line-height:1.45}.nf-time-options{display:flex;flex-wrap:wrap;gap:9px}.nf-dynamic-times:disabled .nf-time-status{opacity:.8}.nf-dynamic-times:disabled .nf-time-options{display:none}
.nf-endtime-label{display:block;margin-top:22px}.nf-endtime-label select:disabled{opacity:.65}
@media(max-width:560px){.availability-summary>div{font-size:12px}.nf-time-options{gap:7px}}

/* Studio-Hinweis */
.studio-note{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.18)}
.studio-note__label{display:block;margin-bottom:.65rem;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7}
.studio-note p{max-width:42rem}


/* Marcus Fotografie v2.3 — immer sichtbares Hamburger-Menü */
.menu-toggle{
  display:inline-flex!important;
  width:48px;height:48px;padding:0;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  align-items:center;justify-content:center;flex-direction:column;gap:5px;
  position:relative;z-index:54;cursor:pointer;
  background:rgba(8,8,8,.18);backdrop-filter:blur(8px)
}
.menu-toggle span{display:block;width:19px;height:1.5px;background:#fff;transition:transform .25s ease,opacity .2s ease}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.brand{position:relative;z-index:54}
.header-actions{position:relative;z-index:54;display:flex;align-items:center;gap:12px}.header-customer-button{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:#b88a52;color:#0a0a0a;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;transition:.2s}.header-customer-button:hover,.header-customer-button:focus-visible{background:#fff;color:#0a0a0a}
.site-nav{
  position:fixed!important;inset:0!important;
  display:flex;align-items:center;justify-content:center;
  background:#000!important;
  backdrop-filter:none;
  padding:clamp(88px,12svh,120px) var(--pad) clamp(22px,5svh,55px)!important;
  overflow-y:auto;overscroll-behavior:contain;
  opacity:0;visibility:hidden;transform:none!important;
  transition:opacity .28s ease,visibility .28s ease!important;
  border:0!important;z-index:49
}
.site-nav.is-open{opacity:1;visibility:visible}
.site-nav .primary-menu{
  flex-direction:column;align-items:center;gap:clamp(5px,1.4svh,18px);
  text-align:center;max-width:100%;margin:auto 0
}
.site-nav .primary-menu a{
  display:block;position:relative;font-family:var(--serif);
  font-size:clamp(24px,min(4.5vw,6svh),64px);line-height:1.08;
  text-transform:none;letter-spacing:-.025em;opacity:.78
}
.site-nav .primary-menu a:hover,.site-nav .primary-menu a:focus-visible{opacity:1}
.site-nav .primary-menu a::after{
  content:"";position:absolute;left:0;right:0;bottom:-7px;height:8px;
  background:#f2c94c;
  clip-path:polygon(0 43%,5% 18%,9% 61%,14% 27%,19% 73%,23% 24%,28% 59%,33% 12%,38% 66%,44% 30%,49% 79%,54% 22%,59% 63%,65% 18%,71% 75%,77% 24%,83% 68%,89% 20%,94% 62%,100% 38%,98% 88%,92% 69%,86% 100%,80% 72%,74% 90%,68% 60%,62% 94%,56% 72%,50% 100%,44% 64%,38% 92%,32% 62%,26% 88%,20% 57%,14% 92%,8% 65%,2% 90%);
  opacity:0;transform:scaleX(.55);transform-origin:left center;transition:opacity .2s ease,transform .25s ease;
}
.site-nav .primary-menu a:hover::after,.site-nav .primary-menu a:focus-visible::after{opacity:1;transform:scaleX(1)}
body.menu-open{overflow:hidden}
body.menu-open .site-header{background:#000!important;border-bottom:0;backdrop-filter:none!important}
body.menu-open .site-nav{background:#000!important}

.marcus-custom-section{border-top:1px solid var(--line)}
.marcus-custom-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(34px,7vw,100px);align-items:start}
.marcus-custom-content .entry-content{font-size:18px;color:rgba(255,255,255,.72);max-width:760px}
.marcus-custom-content .entry-content h2,.marcus-custom-content .entry-content h3{font-family:var(--serif);font-weight:400;color:#fff}
.marcus-custom-image{margin:0 0 30px}.marcus-custom-image img{width:100%;max-height:680px;object-fit:cover}

@media(max-width:900px){
  .site-nav{inset:0!important;padding:clamp(80px,12svh,110px) 24px 28px!important}
  .marcus-custom-grid{grid-template-columns:1fr}
}
@media(max-height:650px){.site-nav{align-items:flex-start;padding-top:78px!important;padding-bottom:20px!important}.site-nav .primary-menu{gap:6px}.site-nav .primary-menu a{font-size:clamp(22px,5.5svh,36px)}}


/* Marcus Fotografie v2.4 — Galerie-Seiten */
.gallery-single{overflow:hidden}
.gallery-hero{position:relative;min-height:70svh;display:flex;align-items:flex-end;background:#0a0a0a}
.gallery-hero__media{position:absolute;inset:0}
.gallery-hero__media:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.12) 60%,rgba(0,0,0,.2))}
.gallery-hero__media img{width:100%;height:100%;object-fit:cover}
.gallery-hero__content{position:relative;z-index:2;padding-bottom:clamp(42px,8vw,100px)}
.gallery-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(52px,9vw,132px);line-height:.9;margin:.18em 0}
.gallery-hero p{max-width:650px;font-size:18px;color:rgba(255,255,255,.75)}
.gallery-hero{min-height:clamp(300px,42svh,520px)}
.gallery-hero--no-image{display:block;min-height:0;padding:135px var(--pad) 0}
.gallery-hero--no-image .gallery-hero__content{width:min(var(--max),100%);margin:0 auto;padding:0 0 22px}
.gallery-hero--no-image h1{font-size:clamp(48px,6vw,88px);margin:.08em 0}
.gallery-hero--no-image p{margin:8px 0 0}
.gallery-story.section{padding-top:12px}
.gallery-story .marcus-gallery-slideshow{margin-top:0}
.marcus-gallery-slide{overflow:hidden}
.marcus-gallery-slide .marcus-gallery-slide-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(35px) brightness(.38);transform:scale(1.12);opacity:.85;pointer-events:none}
.marcus-gallery-slide .marcus-gallery-slide-photo{position:relative;z-index:1}
.gallery-story__inner{max-width:1500px;margin:auto}
.gallery-story__inner > p,.gallery-story__inner > h2,.gallery-story__inner > h3{max-width:760px;margin-left:auto;margin-right:auto}
.gallery-story .wp-block-gallery{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(8px,1vw,16px)!important;margin:clamp(30px,5vw,76px) 0}
.gallery-story .wp-block-gallery{margin-top:0}
.gallery-story .wp-block-gallery .wp-block-image{grid-column:span 4;width:100%!important;margin:0!important}
.gallery-story .wp-block-gallery .wp-block-image:nth-child(5n+1){grid-column:span 8}
.gallery-story .wp-block-gallery .wp-block-image:nth-child(5n+4){grid-column:span 5}
.gallery-story .wp-block-gallery .wp-block-image:nth-child(5n+5){grid-column:span 7}
.gallery-story .wp-block-gallery img{width:100%!important;height:clamp(260px,36vw,620px)!important;object-fit:cover}
.gallery-story .wp-block-gallery .wp-block-image:nth-child(5n+1) img{height:clamp(360px,50vw,800px)!important}
.gallery-story figcaption{font-size:12px!important;letter-spacing:.04em;background:linear-gradient(transparent,rgba(0,0,0,.72))!important;padding:34px 14px 12px!important}
.gallery-back{padding-bottom:90px}.gallery-back a{border-bottom:1px solid currentColor}
.gallery-audio{position:fixed;right:22px;bottom:22px;z-index:60}
.gallery-audio__toggle{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(10,10,10,.74);backdrop-filter:blur(12px);color:#fff;cursor:pointer}
.gallery-audio.is-blocked .gallery-audio__toggle{border-color:var(--accent);background:#17110d;box-shadow:0 0 0 3px rgba(255,255,255,.12)}
.gallery-audio__icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid rgba(255,255,255,.25)}
.gallery-audio__toggle[aria-pressed="true"] .gallery-audio__icon{animation:marcusPulse 1.5s ease-in-out infinite}
@keyframes marcusPulse{50%{transform:scale(1.12)}}
.archive-gallery-head h1{font-family:var(--serif);font-size:clamp(64px,10vw,150px);font-weight:400;line-height:.9;margin:.15em 0}
.archive-gallery-head{padding-bottom:clamp(28px,4vw,58px)}.archive-gallery-grid-section{padding-top:clamp(28px,4vw,58px)}
.archive-gallery-head p{font-size:18px;color:rgba(255,255,255,.68)}
.archive-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,64px)}
.archive-gallery-card a{display:block;color:inherit;text-decoration:none}
.archive-gallery-card__image{aspect-ratio:4/5;overflow:hidden;background:#111}
.archive-gallery-card:nth-child(3n+1) .archive-gallery-card__image{aspect-ratio:16/10}
.archive-gallery-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.archive-gallery-card a:hover img{transform:scale(1.025)}
.archive-gallery-card__meta{padding:18px 0 12px}
.archive-gallery-card__meta span{font-size:11px;text-transform:uppercase;letter-spacing:.16em;opacity:.55}
.archive-gallery-card h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,4vw,58px);margin:.15em 0}
.archive-gallery-card p{color:rgba(255,255,255,.62);max-width:540px}

@media(max-width:800px){
  .gallery-hero{min-height:clamp(260px,36svh,420px)}
  .gallery-hero--no-image{min-height:0;padding:112px var(--pad) 0}
  .gallery-story .wp-block-gallery{grid-template-columns:1fr!important}
  .gallery-story .wp-block-gallery .wp-block-image{grid-column:1!important}
  .gallery-story .wp-block-gallery img,.gallery-story .wp-block-gallery .wp-block-image:nth-child(5n+1) img{height:auto!important;aspect-ratio:auto!important}
  .archive-gallery-grid{grid-template-columns:1fr}
  .gallery-audio{right:12px;bottom:12px;left:12px}
  .gallery-audio__toggle{width:100%;justify-content:center}
}

/* Slideshow galleries open as a screen-sized theater after a short title card. */
.gallery-single--slideshow{--gallery-top:90px;position:relative}
body.admin-bar .gallery-single--slideshow{--gallery-top:122px}
.gallery-single--slideshow .gallery-hero{position:absolute;inset:0 0 auto;z-index:5;display:flex;align-items:center;justify-content:center;width:100%;height:100svh;min-height:0;padding:var(--gallery-top) var(--pad) 30px;background:#0a0a0a;animation:marcusGalleryIntroOut .4s ease .5s forwards}
.gallery-single--slideshow .gallery-hero__media{display:none}
.gallery-single--slideshow .gallery-hero__content{width:min(var(--max),100%);margin:0 auto;padding:0}
.gallery-single--slideshow .gallery-hero h1{font-size:clamp(54px,9vw,132px);margin:.12em 0}
.gallery-single--slideshow .gallery-hero p{font-size:clamp(17px,1.5vw,21px)}
@keyframes marcusGalleryIntroOut{to{opacity:0;visibility:hidden;pointer-events:none}}
.gallery-single--slideshow .gallery-story.section{padding:0 0 70px}
.gallery-single--slideshow .gallery-story__inner{width:100%;max-width:none}
.gallery-single--slideshow .marcus-gallery-slideshow{display:flex;flex-direction:column;width:100%;height:100svh;margin:0;padding-top:var(--gallery-top);background:#080808}
.gallery-single--slideshow .marcus-gallery-slides{flex:1;min-height:0}
.gallery-single--slideshow .marcus-gallery-slide{inset:0}
.gallery-single--slideshow .marcus-gallery-slide-photo{width:100%;height:100%!important;object-fit:contain;background:#080808}
.gallery-single--slideshow .gallery-story__inner>p{margin-top:45px;padding:0 var(--pad)}
@media(max-width:600px){
  .gallery-single--slideshow{--gallery-top:78px}
  body.admin-bar .gallery-single--slideshow{--gallery-top:122px}
  .gallery-single--slideshow .gallery-hero h1{font-size:clamp(48px,15vw,76px)}
}
@media(prefers-reduced-motion:reduce){.gallery-single--slideshow .gallery-hero{animation:none;visibility:hidden}}

/* v2.36 — geschützter Kundenbereich */
.customer-login-link,.customer-menu-item>a{color:var(--accent)!important}
.customer-area{min-height:100svh;padding:clamp(115px,11vw,155px) max(24px,6vw) 70px;background:#0a0a0a;color:#fff}
.customer-area>div{max-width:1180px;margin-left:auto;margin-right:auto}.customer-head{margin-bottom:45px}.customer-head h1{font-family:var(--serif);font-weight:400;font-size:clamp(54px,8vw,110px);line-height:.95;margin:.18em 0}.customer-head p{max-width:670px;color:rgba(255,255,255,.66);font-size:18px;line-height:1.7}
.customer-choice{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.customer-choice a{display:inline-flex;padding:13px 18px;border:1px solid rgba(255,255,255,.28);border-radius:999px}.customer-choice a:first-child{background:#fff;color:#111}.customer-card{scroll-margin-top:120px}.booking-account-choice{margin-bottom:24px;padding:19px 20px;border:1px solid rgba(20,18,16,.16);background:#e5ded3}.booking-account-choice strong{display:block;margin-bottom:5px}.booking-account-choice p{margin:0 0 14px;color:#625b53;font-size:13px}.booking-account-choice a{display:inline-flex;background:#171614;color:#fff;padding:11px 15px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.customer-auth,.customer-dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:1180px;margin:auto}.customer-card{border:1px solid rgba(255,255,255,.16);background:#111;padding:clamp(25px,4vw,48px)}.customer-card h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,4vw,50px);margin:0 0 25px}.customer-card form{display:grid;gap:17px}.customer-card label{display:grid;gap:8px;color:rgba(255,255,255,.7);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.customer-card input{width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.22);background:#080808;color:#fff;padding:14px 15px;font:inherit}.customer-card input:focus{outline:1px solid var(--accent);border-color:var(--accent)}.customer-card button,.customer-primary{display:inline-flex;justify-content:center;align-items:center;border:0;background:var(--accent);color:#0a0a0a;padding:15px 20px;font-weight:700;text-decoration:none;cursor:pointer}.customer-check{grid-template-columns:22px 1fr!important;align-items:start;text-transform:none!important;letter-spacing:0!important;line-height:1.5}.customer-check input{width:18px;height:18px}.customer-actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:25px}.customer-actions a,.customer-small-link{color:rgba(255,255,255,.7)}.customer-small-link{display:inline-block;margin-top:20px}.customer-pending{display:inline-block;border:1px solid rgba(255,255,255,.2);padding:12px 15px;color:rgba(255,255,255,.6)}.customer-notice{max-width:1180px!important;margin:0 auto 20px!important;padding:15px 18px;border:1px solid}.customer-notice.is-success{background:#172418;border-color:#547456}.customer-notice.is-error{background:#2a1717;border-color:#875050}
@media(max-width:760px){.customer-auth,.customer-dashboard{grid-template-columns:1fr}.customer-area{padding-left:18px;padding-right:18px}}
.customer-auth,.customer-dashboard{align-items:stretch}
@media(max-width:560px){.header-actions{gap:7px}.header-customer-button{min-height:42px;padding:0 12px;font-size:10px}.menu-toggle{width:42px;height:42px}.customer-head{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){
  .gallery-audio__toggle[aria-pressed="true"] .gallery-audio__icon{animation:none}
}

/* v2.5: Portfolio darf beliebig viele Arbeiten anzeigen */
.portfolio-grid{overflow:visible}
.portfolio-grid .work{visibility:visible}


/* v2.6 — Behind the Bars als Swipe-Galerie */
.marcus-series-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer;position:relative}
.marcus-home-work{width:100%}.marcus-home-work .marcus-series-trigger{min-height:clamp(520px,72vw,820px);overflow:hidden}.marcus-home-work .marcus-series-trigger>img{position:absolute;inset:0}
.marcus-series-trigger img{width:100%;height:100%;object-fit:cover}
.marcus-series-lightbox{position:fixed;inset:0;z-index:9999;display:grid;grid-template-columns:minmax(52px,90px) 1fr minmax(52px,90px);align-items:center;background:rgba(4,4,4,.97);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}
.marcus-series-lightbox.is-open{opacity:1;visibility:visible}
.series-lightbox-open{overflow:hidden}
.marcus-series-stage{grid-column:2;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}
.marcus-series-stage img{display:block;max-width:100%;max-height:82vh;width:auto;height:auto;object-fit:contain}
.marcus-series-stage figcaption{display:flex;justify-content:space-between;gap:20px;width:100%;padding-top:14px;color:rgba(255,255,255,.72);font-size:13px;letter-spacing:.08em}
.marcus-series-title{text-transform:uppercase}
.marcus-series-close,.marcus-series-prev,.marcus-series-next{border:0;background:transparent;color:#fff;cursor:pointer;min-width:48px;min-height:48px;font-size:32px}
.marcus-series-close{position:absolute;right:22px;top:18px;z-index:2;font-size:40px}
.marcus-series-sound{position:absolute;left:22px;bottom:20px;z-index:3;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(0,0,0,.58);color:#fff;padding:10px 16px;cursor:pointer;font:inherit}
.marcus-series-prev{grid-column:1;grid-row:1;justify-self:center}
.marcus-series-next{grid-column:3;grid-row:1;justify-self:center}
@media(max-width:700px){
  .marcus-series-lightbox{grid-template-columns:1fr;padding:62px 12px 18px}
  .marcus-series-stage{grid-column:1}
  .marcus-series-stage img{max-height:76vh}
  .marcus-series-prev,.marcus-series-next{display:none}
  .marcus-series-close{right:10px;top:8px}
  .marcus-series-stage figcaption{padding-left:4px;padding-right:4px}
}


/* v2.9 — sanfte automatische Behind-the-Bars-Rotation */
.marcus-series-trigger img,.marcus-series-stage img{transition:opacity .28s ease}
.marcus-series-trigger img.is-changing,.marcus-series-stage img.is-changing{opacity:.12}
@media(prefers-reduced-motion:reduce){.marcus-series-trigger img,.marcus-series-stage img{transition:none}}

.mf-special-hero{position:relative;min-height:68svh;display:flex;align-items:flex-end;overflow:hidden;background:#080808}.mf-special-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}.mf-special-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9),transparent 70%)}.mf-special-hero .wrap{position:relative;z-index:2;padding-bottom:7vw}.mf-special-hero h1{font-family:var(--serif);font-size:clamp(54px,9vw,130px);font-weight:400;line-height:.92;margin:.15em 0}.mf-special-hero p{max-width:700px;font-size:20px}.mf-special-copy{max-width:1000px}.mf-special-copy>p,.mf-special-copy>h2,.mf-special-copy>blockquote{max-width:760px;margin-left:auto;margin-right:auto}.mf-special-copy p{font-size:clamp(17px,1.8vw,20px);line-height:1.85;color:rgba(255,255,255,.74)}.mf-special-copy h2{font-family:var(--serif);font-size:clamp(38px,5vw,66px);font-weight:400;line-height:1.05;margin-top:1.4em}.mf-special-copy .mf-lead,.mf-special-copy blockquote{font-family:var(--serif);font-size:clamp(27px,4vw,48px);line-height:1.3;color:#fff}.mf-special-copy blockquote{padding:55px 0;border:0}.mf-special-copy figure{margin:70px auto;max-width:900px}.mf-special-copy figure img{width:100%;height:auto}.mf-price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:55px 0}.mf-price-grid article{border:1px solid rgba(255,255,255,.15);padding:32px;display:flex;flex-direction:column;min-height:330px}.mf-price-grid h3{font-family:var(--serif);font-size:38px;font-weight:400}.mf-price-grid strong{margin-top:auto;text-transform:uppercase;letter-spacing:.12em;font-size:12px}@media(max-width:760px){.mf-price-grid{grid-template-columns:1fr}.mf-price-grid article{min-height:0}}


/* v2.16 — "Warum ich fotografiere" direkt auf der Startseite */
.mf-why-home{overflow:hidden}
.mf-why-intro{max-width:980px;margin-bottom:clamp(55px,8vw,110px)}
.mf-why-intro h2{font-family:var(--serif);font-weight:400;font-size:clamp(52px,8vw,116px);line-height:.92;margin:.16em 0 .28em}
.mf-why-lead{max-width:820px;font-family:var(--serif);font-size:clamp(24px,3.4vw,44px);line-height:1.32;color:#fff}
.mf-why-story{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(30px,6vw,90px);align-items:center;margin-bottom:clamp(70px,10vw,140px)}
.mf-why-image img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.mf-why-copy p{font-size:clamp(17px,1.7vw,20px);line-height:1.8;color:rgba(255,255,255,.72)}
.mf-why-copy blockquote{font-family:var(--serif);font-size:clamp(28px,4vw,52px);line-height:1.15;margin:1.2em 0 0;padding:0;border:0;color:#fff}
.mf-why-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.14);margin-bottom:clamp(70px,10vw,140px)}
.mf-why-points article{background:#0a0a0a;padding:clamp(28px,4vw,55px)}
.mf-why-points span{font-size:11px;letter-spacing:.14em;opacity:.45}
.mf-why-points h3{font-family:var(--serif);font-size:clamp(28px,3vw,43px);font-weight:400;line-height:1.08;margin:.55em 0}
.mf-why-points p{font-size:16px;line-height:1.75;color:rgba(255,255,255,.65)}
.mf-why-finale{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,7vw,100px);align-items:center}
.mf-why-finale img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover}
.mf-why-finale p{font-family:var(--serif);font-size:clamp(29px,4vw,55px);line-height:1.2;color:#fff;margin:0 0 35px}
@media(max-width:800px){
  .mf-why-story,.mf-why-finale{grid-template-columns:1fr}
  .mf-why-points{grid-template-columns:1fr}
  .mf-why-finale img{max-height:70svh}
}

/* v2.80 — robuste Darstellung auf allen Bildschirmbreiten */
html,body{max-width:100%;overflow-x:clip}
*,*:before,*:after{box-sizing:border-box}
main,section,article,aside,header,footer,nav,form,fieldset,.wrap,.section,.site-header__inner,.customer-card{min-width:0}
img,video,iframe,svg,canvas{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}
p,h1,h2,h3,h4,h5,h6,a,li{overflow-wrap:anywhere}
.customer-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.customer-card input[aria-invalid="true"]{border-color:#ef7777;outline:1px solid #ef7777}
.customer-notice strong{display:block;margin-top:8px}
.gallery-single--slideshow .marcus-gallery-slide img{display:block;max-width:100%;max-height:100%;width:auto!important;height:auto!important;margin:auto;object-fit:contain}
@media(max-width:900px){
  .wrap,.section,.customer-area{width:100%}
  .site-header__inner{gap:10px}
  .brand{min-width:0}
  .brand span{white-space:normal}
  .booking-card,.customer-card{width:100%}
}
@media(max-width:600px){
  :root{--pad:18px}
  .customer-form-grid{grid-template-columns:1fr}
  .customer-card{padding:24px 18px}
  .customer-area{padding-left:14px;padding-right:14px}
  .gallery-single--slideshow .marcus-gallery-slideshow{height:100dvh;padding-top:var(--gallery-top)}
  .gallery-single--slideshow .marcus-gallery-slides{height:calc(100dvh - var(--gallery-top));min-height:0}
  .gallery-single--slideshow .marcus-gallery-slide{display:flex;align-items:center;justify-content:center}
}

/* v2.81 — direkte Kopfzeilen-Zugänge */
.header-gallery-overview{position:absolute;left:50%;top:50%;z-index:54;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(10,10,10,.62);backdrop-filter:blur(12px);color:#fff;font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.header-gallery-overview:hover,.header-gallery-overview:focus-visible{background:#fff;color:#0a0a0a}
.header-model-button{background:#fff;color:#0a0a0a}
@media(max-width:900px){
  .header-gallery-overview{top:72px;min-height:38px;padding:0 14px;font-size:9px}
  .gallery-single--slideshow{--gallery-top:116px}
  body.admin-bar .gallery-single--slideshow{--gallery-top:160px}
  .header-model-button{padding-left:10px;padding-right:10px}
}
@media(max-width:520px){
  .site-header .brand{max-width:32vw;font-size:12px}
  .site-header .brand small{display:none}
  .header-actions{gap:5px}
  .header-model-button,.header-appointments-button,.header-account-button{font-size:0;width:40px;min-height:40px;padding:0}
  .header-model-button:after{content:"Models";font-size:8px;letter-spacing:.04em}
  .header-appointments-button:after{content:"Termin";font-size:8px;letter-spacing:.04em}
  .header-account-button:after{content:"Konto";font-size:8px;letter-spacing:.04em}
}

/* v2.82 — private Modelkartei */
.model-directory{min-height:100svh;padding:clamp(130px,12vw,175px) var(--pad) 90px;background:#0a0a0a;color:#fff}
.model-directory-inner{width:min(1500px,100%);margin:auto}
.model-directory-head{position:relative;margin-bottom:45px}.model-directory-head h1,.model-profile-head h1{font-family:var(--serif);font-size:clamp(58px,9vw,132px);font-weight:400;line-height:.9;margin:.18em 0}.model-directory-head p,.model-profile-head p{max-width:760px;color:rgba(255,255,255,.66);font-size:18px}
.model-new-link,.model-edit-link,.model-send-link{display:inline-flex;padding:13px 18px;background:var(--accent);color:#0a0a0a;font-weight:700;margin-top:15px}
.model-filter{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto auto;gap:12px;align-items:end;margin:0 0 34px;padding:20px;border:1px solid rgba(255,255,255,.15);background:#111}
.model-filter label{display:grid;gap:7px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.65)}.model-filter input,.model-filter select{width:100%;min-height:46px;padding:10px 12px;border:1px solid rgba(255,255,255,.24);background:#080808;color:#fff}.model-filter button,.model-filter>a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:0 17px;border:0;background:var(--accent);color:#0a0a0a;font-weight:700}.model-filter>a{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25)}
.model-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.model-card{min-width:0;border:1px solid rgba(255,255,255,.14);background:#111;overflow:hidden}.model-card>img,.model-card-placeholder{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#181818}.model-card-placeholder{display:grid;place-items:center;color:rgba(255,255,255,.42)}.model-card-copy{padding:20px}.model-card-copy h2{font-family:var(--serif);font-size:clamp(27px,2.5vw,40px);font-weight:400;margin:0}.model-card-copy p{min-height:42px;color:rgba(255,255,255,.62)}.model-card-copy a{color:var(--accent);border-bottom:1px solid currentColor}.model-empty{padding:35px;border:1px solid rgba(255,255,255,.15)}
.model-back{display:inline-flex;margin-bottom:30px;color:var(--accent)}.model-profile-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:45px}.model-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:35px}.model-photo-grid figure{margin:0;background:#111}.model-photo-grid img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover}.model-photo-grid figure a{display:block;padding:10px;color:#ffabab;font-size:12px;text-align:center}
.model-profile-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:20px}.model-data-card,.model-upload-card{border:1px solid rgba(255,255,255,.15);background:#111;padding:clamp(22px,3vw,38px)}.model-data-card h2,.model-upload-card h2{font-family:var(--serif);font-size:36px;font-weight:400;margin-top:0}.model-data-card dl{display:grid;grid-template-columns:minmax(120px,.4fr) 1fr;margin:0}.model-data-card dt,.model-data-card dd{margin:0;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}.model-data-card dt{color:rgba(255,255,255,.55)}.model-upload-column{display:grid;gap:20px}.model-upload-card{display:grid;gap:13px}.model-upload-card p{color:rgba(255,255,255,.62);margin:0}.model-upload-card input[type=file]{width:100%;padding:14px;border:1px dashed rgba(255,255,255,.32)}.model-upload-card button{min-height:48px;border:0;background:var(--accent);color:#0a0a0a;font-weight:800;cursor:pointer}.model-scan-card{border-color:rgba(184,138,82,.65)}.model-upload-card ul{padding-left:20px}.model-upload-card li{margin:8px 0}.model-directory-customer .model-card-copy p{min-height:0}
@media(max-width:1100px){.model-card-grid,.model-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.model-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.model-profile-grid{grid-template-columns:1fr}}
@media(max-width:700px){.model-directory{padding-left:16px;padding-right:16px}.model-card-grid,.model-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-filter{grid-template-columns:1fr}.model-profile-head{display:block}.model-data-card dl{grid-template-columns:1fr}.model-data-card dd{padding-top:0}.model-card-copy{padding:14px}}
@media(max-width:420px){.model-card-grid,.model-photo-grid{grid-template-columns:1fr}}

/* v2.83 — Modelportal und ausfüllbarer TFP-Vertrag auf der Website */
.model-top-actions,.tfp-admin-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.model-top-actions{justify-content:flex-start}.model-contract-link{background:#fff}.model-portal-form{max-width:1180px;margin:0 auto}.model-portal-form>p{color:rgba(255,255,255,.68)}
.model-portal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.model-portal-fields label,.tfp-model-select label{display:grid;gap:7px;color:rgba(255,255,255,.7);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.model-portal-fields input,.model-portal-fields textarea,.tfp-model-select select{width:100%;min-height:48px;padding:12px 14px;border:1px solid rgba(255,255,255,.24);background:#080808;color:#fff;font:inherit}.model-field-wide{grid-column:1/-1}.model-field-wide textarea{min-height:120px;resize:vertical}.model-choice-field{margin:28px 0;border:1px solid rgba(255,255,255,.17);padding:20px}.model-choice-field legend{padding:0 8px;font-size:18px}.model-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.model-choice-grid label,.model-admin-options label,.tfp-check,.tfp-radio-pair label{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid rgba(255,255,255,.13);background:#0b0b0b;color:#fff;text-transform:none;letter-spacing:0}.model-choice-grid input,.model-admin-options input,.tfp-check input,.tfp-radio-pair input{width:18px;height:18px;flex:0 0 auto}.model-admin-options{display:grid;gap:9px;margin:0 0 24px}.model-password-link{display:inline-flex;margin-left:18px;color:var(--accent)}
.tfp-admin-head h1{font-family:var(--serif);font-size:clamp(44px,7vw,92px);font-weight:400;line-height:.95;margin:.2em 0}.tfp-model-select{display:flex;align-items:end;gap:12px;margin:28px 0;padding:20px;border:1px solid rgba(255,255,255,.16);background:#111}.tfp-model-select label{min-width:min(420px,100%)}.tfp-model-select button,.tfp-contract-form>button{min-height:48px;padding:0 20px;border:0;background:var(--accent);color:#080808;font-weight:800;cursor:pointer}.tfp-contract-form{display:grid;gap:18px}.tfp-contract-form section{padding:clamp(20px,3vw,38px);border:1px solid rgba(255,255,255,.15);background:#111}.tfp-contract-form h2{font-family:var(--serif);font-size:clamp(30px,4vw,48px);font-weight:400;margin:0 0 20px}.tfp-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tfp-summary-grid p{padding:18px;border:1px solid rgba(255,255,255,.12);line-height:1.7}.tfp-radio-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.tfp-change-warning{margin:22px 0;padding:18px 20px;border:2px solid #e15f5f;background:#2c1010;color:#ff8d8d;font-weight:800;font-size:17px}
.contract-type-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:28px 0 42px}.contract-type-choice>a{display:block;text-decoration:none;border:1px solid rgba(255,255,255,.18);transition:border-color .2s,transform .2s}.contract-type-choice>a:hover,.contract-type-choice>a.is-active{border-color:var(--accent);transform:translateY(-2px)}.contract-type-choice h2{margin-top:0;color:#fff}.pay-readable-contract{margin-top:22px}.tfp-contract-form label>textarea{width:100%;min-height:100px;padding:12px 14px;border:1px solid rgba(255,255,255,.24);background:#080808;color:#fff;font:inherit}.tfp-contract-form label>input:not([type=checkbox]):not([type=radio]){width:100%;min-height:48px;padding:12px 14px;border:1px solid rgba(255,255,255,.24);background:#080808;color:#fff;font:inherit}
@media(max-width:720px){.contract-type-choice{grid-template-columns:1fr}.tfp-model-select{align-items:stretch;flex-direction:column}.tfp-model-select label{min-width:0;width:100%}}

/* v2.86 — beidseitige elektronische TFP-Unterschrift */
.tfp-records,.model-contract-area{max-width:1180px;margin:34px auto}.tfp-record-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:18px 0 28px}.tfp-record-list a{display:grid;gap:6px;padding:16px 18px;border:1px solid rgba(255,255,255,.17);background:#0b0b0b;color:#fff;text-decoration:none}.tfp-record-list span{color:rgba(255,255,255,.66);font-size:13px}.tfp-readable-contract{padding:clamp(20px,4vw,46px);border:1px solid rgba(255,255,255,.18);background:#111;line-height:1.68}.tfp-readable-contract h2{font-family:var(--serif);font-size:clamp(38px,6vw,68px);font-weight:400;margin:0 0 20px}.tfp-readable-contract h3{margin:30px 0 8px;color:var(--accent);letter-spacing:.06em;text-transform:uppercase}.tfp-sign-form{display:grid;gap:15px;margin:20px 0;padding:22px;border:1px solid rgba(198,151,87,.55);background:#15110c}.tfp-sign-form label{display:grid;gap:8px}.tfp-sign-form label:first-of-type{display:flex;align-items:flex-start}.tfp-sign-form input[type=text],.tfp-sign-form input:not([type]){min-height:48px;padding:11px 13px;border:1px solid rgba(255,255,255,.25);background:#080808;color:#fff}.tfp-sign-form button{min-height:50px;border:0;background:var(--accent);color:#080808;font-weight:800;cursor:pointer}.tfp-status,.tfp-lumio-locked{margin:18px 0;padding:16px 18px;border-left:4px solid var(--accent);background:#17130d}.tfp-status.completed{border-color:#47bd78;background:#0d1d14}.tfp-lumio-locked{border-color:#d79b42}.model-contract-item{margin:20px 0}.model-contract-item .tfp-readable-contract{padding:0;border:0;background:transparent}
@media(max-width:700px){.tfp-summary-grid,.tfp-radio-pair,.model-choice-grid{grid-template-columns:1fr}.tfp-model-select{align-items:stretch;flex-direction:column}.tfp-record-list{grid-template-columns:1fr}.tfp-readable-contract{padding:20px 16px}.tfp-sign-form{padding:18px 14px}}
.tfp-electronic-note{margin:18px 0;padding:16px 18px;border:1px solid rgba(198,151,87,.55);background:#18130d;line-height:1.6}.tfp-delete-link{color:#ff8d8d!important}.tfp-records form>button{min-height:46px;padding:0 18px;border:0;background:var(--accent);color:#080808;font-weight:800;cursor:pointer}
.model-gallery-field,.model-gallery-card{display:grid;gap:14px;margin:0 0 18px;padding:20px;border:1px solid rgba(198,151,87,.55);background:#15110c}.model-gallery-field h3,.model-gallery-card h3{margin:0;font-family:var(--serif);font-size:30px;font-weight:400}.model-gallery-field label{display:grid!important;gap:8px}.model-gallery-field input{width:100%;min-height:48px;padding:11px 13px;border:1px solid rgba(255,255,255,.25);background:#080808;color:#fff}.model-gallery-field span{color:rgba(255,255,255,.68);font-size:13px;line-height:1.5}
@media(max-width:780px){.model-portal-fields,.tfp-summary-grid,.tfp-radio-pair{grid-template-columns:1fr}.model-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tfp-model-select{align-items:stretch;flex-direction:column}.header-tfp-button{display:none}}
@media(max-width:480px){.model-choice-grid{grid-template-columns:1fr}}

/* v2.92 — geschützte Modelgalerie und Slideshow */
.model-private-gallery,.model-gallery-manager{max-width:1180px;margin:24px auto;padding:clamp(20px,3vw,38px);background:#101010;border:1px solid rgba(255,255,255,.16)}
.model-private-gallery__head,.model-gallery-manager__head,.model-gallery-options{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.model-private-gallery h2,.model-gallery-manager h2{font-family:var(--serif);font-size:clamp(34px,5vw,56px);font-weight:400;line-height:1;margin:.15em 0}.model-gallery-manager__head p{max-width:720px;color:rgba(255,255,255,.65);line-height:1.6}.model-gallery-count{display:grid;place-items:center;min-width:86px;min-height:86px;border:1px solid rgba(198,151,87,.55);border-radius:50%;color:var(--accent);font-weight:800}
.model-gallery-toolbar{display:flex;gap:9px}.model-gallery-toolbar button,.model-gallery-options button,.model-gallery-upload button{min-height:44px;padding:0 16px;border:0;background:var(--accent);color:#080808;font-weight:800;cursor:pointer}.model-gallery-toolbar button{border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff}
.model-slideshow-stage{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;min-height:min(68svh,760px);margin-top:22px;background:#050505}.model-slideshow-stage figure{grid-column:2;margin:0;min-width:0}.model-slideshow-stage img{display:block;width:auto;max-width:100%;height:auto;max-height:68svh;margin:auto;object-fit:contain;transition:opacity .25s ease}.model-slideshow-stage img.is-changing{opacity:.14}.model-slideshow-stage figcaption{display:flex;justify-content:space-between;gap:15px;padding:12px 2px 0;color:rgba(255,255,255,.66);font-size:12px;letter-spacing:.06em}.model-slide-arrow{min-width:48px;min-height:70px;border:0;background:transparent;color:#fff;font-size:43px;cursor:pointer}.model-slide-arrow.is-prev{grid-column:1}.model-slide-arrow.is-next{grid-column:3}.model-slideshow-thumbs{display:flex;gap:8px;margin-top:12px;padding-bottom:8px;overflow-x:auto;scrollbar-color:var(--accent) #111}.model-slideshow-thumbs button{flex:0 0 90px;padding:3px;border:1px solid transparent;background:#111;cursor:pointer}.model-slideshow-thumbs button.is-active{border-color:var(--accent)}.model-slideshow-thumbs img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.model-private-gallery:fullscreen{padding:20px;background:#050505}.model-private-gallery:fullscreen .model-slideshow-stage{min-height:calc(100vh - 170px)}.model-private-gallery:fullscreen .model-slideshow-stage img{max-height:calc(100vh - 200px)}
.model-gallery-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;margin:25px 0;padding:18px;border:1px solid rgba(255,255,255,.13);background:#090909}.model-gallery-upload label{display:grid;gap:8px}.model-gallery-upload label span{color:rgba(255,255,255,.58);font-size:12px}.model-gallery-upload input{padding:14px;border:1px dashed rgba(255,255,255,.3)}.model-gallery-upload__status{grid-column:1/-1;margin:0!important;color:var(--accent);font-weight:700}.model-gallery-upload button:disabled{opacity:.5;cursor:wait}
.model-gallery-sort__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.model-gallery-sort__grid article{border:1px solid rgba(255,255,255,.14);background:#090909}.model-gallery-sort__grid img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover}.model-gallery-sort__grid article>div{display:grid;grid-template-columns:42px 42px 1fr;gap:5px;padding:7px}.model-gallery-sort__grid button,.model-gallery-sort__grid a{display:grid;place-items:center;min-height:38px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;cursor:pointer}.model-gallery-sort__grid a{color:#ff9a9a;font-size:11px}.model-gallery-options{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14)}.model-gallery-options label{display:grid;gap:7px;color:rgba(255,255,255,.7);font-size:12px}.model-gallery-options select{min-height:44px;padding:8px 12px;border:1px solid rgba(255,255,255,.25);background:#080808;color:#fff}
@media(max-width:850px){.model-gallery-sort__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.model-slideshow-stage{grid-template-columns:44px minmax(0,1fr) 44px}}
@media(max-width:600px){.model-gallery-upload{grid-template-columns:1fr}.model-gallery-sort__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-slideshow-stage{grid-template-columns:1fr;min-height:52svh}.model-slideshow-stage figure{grid-column:1}.model-slide-arrow{display:none}.model-slideshow-stage img{max-height:52svh}.model-gallery-toolbar{width:100%}.model-gallery-toolbar button{flex:1}.model-slideshow-thumbs button{flex-basis:72px}}
.model-gallery-preview-link{display:inline-flex;margin-top:10px;padding:11px 16px;border:1px solid var(--accent);color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.04em}.model-gallery-preview-note{display:block;margin-top:10px;color:rgba(255,255,255,.55);font-size:12px}.model-preview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:22px}.model-preview-head h1{font-family:var(--serif);font-size:clamp(50px,8vw,110px);font-weight:400;line-height:.92;margin:.15em 0}.model-preview-head>div>p{max-width:760px;color:rgba(255,255,255,.66)}.model-preview-head dl{display:flex;gap:8px;margin:0}.model-preview-head dl div{min-width:105px;padding:13px;border:1px solid rgba(255,255,255,.15);background:#111}.model-preview-head dt{color:rgba(255,255,255,.52);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.model-preview-head dd{margin:5px 0 0;font-weight:700}@media(max-width:760px){.model-preview-head{display:block}.model-preview-head dl{flex-wrap:wrap}.model-preview-head dl div{flex:1}}
.model-card-media{position:relative;overflow:hidden;background:#181818}.model-card-media img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;transition:opacity .32s ease}.model-card-media img.is-changing{opacity:.12}.model-card-slideshow-badge{position:absolute;right:10px;top:10px;padding:7px 9px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:rgba(0,0,0,.7);color:#fff;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.model-contact-box{max-width:1180px;margin:30px auto}.model-contact-box h2{font-family:var(--serif);font-size:clamp(30px,4vw,48px);font-weight:400}.model-contact-recipients{display:flex;flex-wrap:wrap;gap:10px 20px;margin:20px 0;padding:18px;border:1px solid rgba(255,255,255,.14)}.model-contact-recipients>strong{width:100%}.model-contact-recipients label,.model-contact-confirm{display:flex;align-items:flex-start;gap:9px}.model-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.model-contact-fields label{display:grid;gap:7px}.model-contact-fields input,.model-contact-fields textarea{width:100%}.model-contact-fields .model-field-wide{grid-column:1/-1}@media(max-width:700px){.model-contact-fields{grid-template-columns:1fr}.model-contact-fields .model-field-wide{grid-column:auto}}
.model-inquiry-item{margin-top:22px;padding:22px;border:1px solid rgba(255,255,255,.16);background:#0b0b0b}.model-inquiry-item h3{margin-top:0}.model-inquiry-message{margin:16px 0;padding:16px;border-left:3px solid var(--accent);background:rgba(255,255,255,.035);line-height:1.65}.model-inquiry-item label{display:grid;gap:8px}.model-inquiry-item textarea{width:100%}.model-inquiry-replied{color:var(--accent)}
.model-assignment-actions{display:flex;flex-wrap:wrap;gap:10px}.model-assignment-actions button:last-child{background:#5b2525;color:#fff}
.model-directory-tools{margin-top:54px;padding-top:34px;border-top:1px solid rgba(255,255,255,.18)}.model-directory-tools>h2{margin:0 0 8px;font-family:var(--serif);font-size:clamp(34px,5vw,58px);font-weight:400}.model-directory-tools>p{margin:0 0 24px;color:rgba(255,255,255,.65)}

/* v2.84 — überprüfbarer Passwortversand für Modelkonten */
.model-access-card,.model-access-fallback{max-width:1180px;margin:20px auto 0;padding:clamp(22px,3vw,36px);border:1px solid rgba(255,255,255,.17);background:#111}.model-access-card h2{font-family:var(--serif);font-size:38px;font-weight:400;margin:0 0 14px}.model-access-card form{margin-top:18px}.model-access-card button{min-height:48px;padding:0 18px;border:0;background:var(--accent);color:#080808;font-weight:800;cursor:pointer}.is-mail-sent{color:#86d891}.is-mail-failed{color:#ff8d8d}.model-access-fallback{border-color:#d79a52}.model-access-fallback input{width:100%;padding:13px 14px;border:1px solid rgba(255,255,255,.25);background:#080808;color:#fff;font:inherit}

/* Version 1.11: Anfragezentrale, befristete Freigaben und Datensicherung */
.inquiry-filters{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.inquiry-filters a{border:1px solid rgba(197,151,90,.5);padding:10px 16px;color:#f4f0e9;text-decoration:none}.inquiry-filters a.is-active{background:#c5975a;color:#090909}.inquiry-admin-list{display:grid;gap:20px}.inquiry-admin-item{padding:24px}.inquiry-admin-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.inquiry-admin-title h2{margin:8px 0 16px}.inquiry-state{display:inline-block;border-radius:999px;padding:5px 10px;font-size:.8rem;font-weight:700}.inquiry-state.is-open{background:#fff0c2;color:#604500}.inquiry-state.is-replied{background:#d8f7df;color:#175a27}.inquiry-state.is-closed{background:#ddd;color:#333}.inquiry-admin-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}.inquiry-admin-meta p{margin:4px 0}.backup-card{margin-top:24px;padding:28px}.backup-checks{list-style:none;padding:0}.backup-checks li{margin:10px 0}.backup-checks .is-ok strong{color:#52c46b}.backup-checks .is-missing strong{color:#ff8b73}.backup-card ol{padding-left:22px}.backup-card li{margin-bottom:8px}
@media(max-width:700px){.inquiry-admin-meta{grid-template-columns:1fr}.inquiry-admin-title{align-items:flex-start}.model-top-actions{display:grid}}

/* Version 1.12: vollständig deckendes mobiles Hauptmenü */
@media(max-width:900px){
  .site-nav{background-color:#000!important;background-image:none!important;opacity:1!important;transition:none!important;isolation:isolate}
  .site-nav::before{content:"";position:absolute;inset:0;background:#000;z-index:-1;pointer-events:none}
  .site-nav:not(.is-open){visibility:hidden!important}
  .site-nav.is-open{visibility:visible!important}
  body.menu-open main,body.menu-open .site-footer{visibility:hidden}
}
