:root{--gold:#c9a55e;--cream:#f3eee4;--black:#090908}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:#15130f;font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}header{height:82px;padding:0 5vw;position:absolute;z-index:5;width:100%;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid #ffffff25}.logo,.footer-logo{font-size:26px;font-weight:600}.logo span,.footer-logo span{color:var(--gold)}nav{display:flex;align-items:center;gap:34px;text-transform:uppercase;font-size:11px;letter-spacing:.1em}nav .outline{border:1px solid #c9a55e88;border-radius:30px;padding:12px 20px}.hero{height:800px;position:relative;overflow:hidden;background:radial-gradient(circle at 78% 30%,#493d24 0,transparent 32%),linear-gradient(130deg,#050505,#17150e 60%,#080807);color:#fff;display:flex;align-items:center}.hero:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#c9a55e0b 25%)}.hero-inner{position:relative;z-index:2;width:90%;max-width:1240px;margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.25em;font-size:10px;font-weight:600;color:var(--gold)}h1,h2,h3{font-family:"Cormorant Garamond",serif;font-weight:400}h1{font-size:clamp(62px,8vw,116px);line-height:.82;letter-spacing:-.04em;margin:24px 0}h1 em{color:#e3cb97}.hero-inner>p:not(.eyebrow){max-width:540px;color:#ffffffa8;line-height:1.8}.actions{display:flex;align-items:center;gap:28px;margin-top:34px}.gold{display:inline-block;background:linear-gradient(135deg,#dfc485,#ae843c);color:#111;padding:15px 22px;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:600}.sixty{position:absolute;right:4vw;bottom:-120px;font:400 430px/1 "Cormorant Garamond";color:#ffffff08}.girls,.coop{padding:110px 5vw}.heading{max-width:1240px;margin:auto;display:flex;justify-content:space-between;align-items:end}.heading h2,.price h2,.coop h2{font-size:68px;line-height:1;margin:12px 0}.heading>p{max-width:420px;color:#777068;line-height:1.8;font-size:13px}.dark{color:#8a6a2d}.grid{max-width:1240px;margin:50px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid #dfd7c7;cursor:pointer;transition:.25s}.card:hover{transform:translateY(-6px);box-shadow:0 20px 50px #00000018}.photo{height:410px;position:relative;background:linear-gradient(150deg,var(--tone),#090908);display:grid;place-items:center;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover}.photo>b,.gallery>b{font:400 220px "Cormorant Garamond";color:#dabb7624}.photo small{position:absolute;top:15px;left:15px;color:#ffffff70}.card-body{padding:22px}.card h3{font-size:36px;margin:0}.card h3 span{font:400 10px Manrope;text-transform:uppercase;color:#999}.week{display:flex;gap:5px;margin:17px 0}.week i{font-style:normal;flex:1;text-align:center;border:1px solid #e3ddd2;padding:9px 3px;font-size:9px;color:#aaa}.week .on{background:#efe5cf;border-color:#d5be89;color:#76591f}.card button{width:100%;border:0;border-top:1px solid #eee8de;background:none;text-align:left;padding:15px 0 0;text-transform:uppercase;font-size:9px;letter-spacing:.1em}.price{padding:100px 5vw;background:radial-gradient(circle at 85% 50%,#332a18,transparent 42%),#080807;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:7vw}.price>div:first-child{max-width:440px;justify-self:end}.price>div>p:not(.eyebrow){color:#ffffff8a}.price-items{display:grid;grid-template-columns:1fr 1fr;border:1px solid #c9a55e44}.price article{padding:42px;display:flex;flex-direction:column;border-right:1px solid #c9a55e44}.price article:last-child{border:0}.price b{font:400 90px "Cormorant Garamond";color:#e1ca95}.price article span{font-size:9px;text-transform:uppercase;letter-spacing:.2em;color:#ffffff66;margin:5px 0 45px}.coop{max-width:1240px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}.age{font:400 210px "Cormorant Garamond";color:#d9c79f;border-right:1px solid #ddd3c2}.coop>div:last-child>p:not(.eyebrow){color:#736b61;line-height:1.8;margin-bottom:30px}footer{background:#050504;color:#fff;padding:65px 5vw 25px}.contacts{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:45px 0;border-top:1px solid #ffffff1c;padding-top:38px}.contacts small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:8px;margin-bottom:10px}.contacts a,.contacts span{color:#ffffffbc;font-size:12px}footer>p{border-top:1px solid #ffffff1c;padding-top:20px;color:#ffffff55;font-size:9px}.modal{position:fixed;z-index:10;inset:0;background:#000000dc;display:grid;place-items:center;padding:4vw}.hidden{display:none}.dialog{position:relative;background:var(--cream);width:min(1050px,100%);max-height:92vh;overflow:auto;display:grid;grid-template-columns:42% 58%}.close{position:absolute;right:15px;top:15px;z-index:2;border:0;background:var(--gold);width:38px;height:38px;font-size:24px}.gallery{min-height:650px;background:#17150f;display:grid;place-items:center}.gallery img{width:100%;height:100%;object-fit:cover}.detail{padding:60px}.detail h2{font-size:70px;margin:10px 0}.detail>p:not(.eyebrow){line-height:1.8;color:#686057}.detail h4{text-transform:uppercase;letter-spacing:.12em;font-size:9px;margin-top:28px}.tags{display:flex;gap:6px}.tags span{border:1px solid #cdbb90;padding:8px 10px;font-size:9px}
.login-page{min-height:100vh;background:radial-gradient(circle at 70% 20%,#3b321e,transparent 35%),#070706;display:grid;place-items:center}.login-card{width:min(420px,90vw);background:#f4f0e7;padding:45px}.login-card h1{font-size:48px;margin:10px 0}.login-card label{font-size:10px;text-transform:uppercase}.login-card input{width:100%;padding:14px;border:1px solid #d3c6aa;margin:10px 0 18px}.login-card button{width:100%;border:0}.error{color:#9a2e2e;font-size:11px}.admin-shell{min-height:100vh;display:grid;grid-template-columns:220px 1fr;background:#f2efe8}.side{background:#080807;color:#fff;padding:32px 25px}.side nav{display:block;margin-top:45px}.side nav button,.side nav a{display:block;width:100%;border:0;background:none;color:#ffffffa0;text-align:left;padding:13px;margin-bottom:5px;font-size:11px}.side nav button.active{background:#ae843c;color:#111}.admin-main{padding:45px 5vw}.admin-head{display:flex;justify-content:space-between;align-items:center}.admin-head h1{font-size:55px;margin:4px 0}.status{font-size:10px;color:#7d612b;margin-right:14px}.admin-grid{display:grid;grid-template-columns:280px 1fr;gap:20px}.girl-list,.panel{background:#fff;border:1px solid #ddd5c6;padding:12px}.girl-list button{display:flex;width:100%;align-items:center;gap:12px;border:0;background:none;padding:12px;text-align:left}.girl-list button.active{background:#eee5d3}.avatar{width:38px;height:38px;border-radius:50%;background:#29251b;color:#e0c78e;display:grid;place-items:center;font-family:"Cormorant Garamond";font-size:20px}.girl-list button div{flex:1}.girl-list small{display:block;color:#999;font-size:8px}.panel-title{display:flex;align-items:center;gap:12px;border-bottom:1px solid #eee7dc;padding-bottom:16px}.panel-title h2{font-size:32px;margin:0}.days button{width:100%;display:grid;grid-template-columns:1fr 100px 25px;align-items:center;border:0;border-bottom:1px solid #eee8df;background:none;padding:17px;text-align:left}.days button.on{background:#f4eddd}.form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding-top:20px}.form label{font-size:9px;text-transform:uppercase}.form .wide{grid-column:1/-1}.form input,.form textarea{width:100%;padding:11px;border:1px solid #d8cfbd;margin-top:7px}.upload{display:block;border:1px dashed #ae843c;text-align:center;padding:38px;margin-top:20px}.upload input{display:none}.images{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:15px}.images img{width:100%;aspect-ratio:3/4;object-fit:cover}.images figure{margin:0;background:#111}.images figcaption{display:flex;justify-content:space-between;color:#fff;padding:8px;font-size:8px}.images button{border:0;background:none;color:#d9b86d}
@media(max-width:800px){nav{display:none}.hero{height:700px}.grid{grid-template-columns:1fr 1fr}.heading,.price{display:block}.price>div:first-child{margin-bottom:30px}.coop{grid-template-columns:1fr}.age{display:none}.dialog{grid-template-columns:1fr}.gallery{min-height:300px}.admin-shell{grid-template-columns:1fr}.side{padding:20px}.side nav{display:flex;margin:15px 0 0;overflow:auto}.admin-main{padding:25px 15px}.admin-grid{grid-template-columns:1fr}.girl-list{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:520px){h1{font-size:58px}.grid{grid-template-columns:1fr}.girls,.coop{padding:75px 18px}.heading h2,.price h2,.coop h2{font-size:50px}.price{padding:70px 18px}.contacts{grid-template-columns:1fr 1fr}.price-items{grid-template-columns:1fr 1fr}.price article{padding:20px}.price b{font-size:62px}.detail{padding:38px 22px}.detail h2{font-size:52px}.images{grid-template-columns:1fr 1fr}}
.admin-actions{display:flex;align-items:center;gap:10px}.admin-actions button{border:0;cursor:pointer}.secondary{padding:14px 18px;border:1px solid #b99958!important;background:#fff;color:#5f471d;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.toggle{display:flex;align-items:center;gap:10px;background:#f5f0e5;padding:14px}.form .toggle input{width:auto;margin:0}.danger-zone{display:flex;align-items:center;gap:12px;border-top:1px solid #eadfd1;padding-top:18px}.danger{border:1px solid #a43d35;background:#fff;color:#8e2b25;padding:10px 14px}.danger-zone small,.upload span,.empty{color:#8e877d;font-size:9px}.upload span{display:block;margin-top:8px}.status.error{color:#a12d28}.empty{padding:18px}.gold{border:0;cursor:pointer}
@media(max-width:800px){.admin-head{align-items:flex-start;gap:15px}.admin-head h1{font-size:38px}.admin-actions{flex-wrap:wrap;justify-content:flex-end}.status{width:100%;text-align:right}}
/* Administrace musí přebít veřejné styly pro header a nadpisy. */
.admin-main{min-width:0;padding:38px clamp(24px,3vw,58px)}
.admin-head{position:static;inset:auto;z-index:auto;width:auto;height:auto;min-height:92px;padding:0 0 24px;margin:0;color:#15130f;border:0;display:flex;align-items:flex-end;gap:24px}
.admin-head>div:first-child{min-width:0;flex:1}
.admin-head .eyebrow{margin:0 0 8px}
.admin-head h1{font-size:clamp(38px,3vw,54px);line-height:1;letter-spacing:-.025em;margin:0;white-space:normal}
.admin-actions{flex:0 0 auto;justify-content:flex-end;padding-bottom:3px}
.admin-actions .secondary,.admin-actions .gold{white-space:nowrap}
.admin-grid{grid-template-columns:minmax(240px,280px) minmax(0,1fr);align-items:start}
.girl-list,.panel{min-width:0}
@media(max-width:1050px){.admin-head{align-items:flex-start;flex-direction:column}.admin-actions{width:100%;justify-content:flex-start}.admin-grid{grid-template-columns:230px minmax(0,1fr)}.form{grid-template-columns:1fr}}
@media(max-width:800px){.admin-main{padding:24px 15px}.admin-head{min-height:0}.admin-head h1{font-size:36px}.admin-actions{justify-content:flex-start}.admin-grid{grid-template-columns:1fr}.status{width:100%;text-align:left}}
.gallery{display:flex;flex-direction:column;min-width:0;overflow:hidden}.gallery-stage{position:relative;flex:1;min-height:0;width:100%;display:grid;place-items:center;overflow:hidden;background:#17150f}.gallery-stage>img{width:100%;height:100%;object-fit:cover}.gallery-prev,.gallery-next{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:58px;border:0;background:#080807b8;color:#fff;font:40px/1 serif;cursor:pointer}.gallery-prev{left:12px}.gallery-next{right:12px}.gallery-count{position:absolute;right:14px;bottom:14px;background:#080807c9;color:#fff;padding:8px 11px;font-size:10px;letter-spacing:.08em}.gallery-thumbs{flex:0 0 92px;display:flex;gap:6px;padding:8px;background:#090908;overflow-x:auto}.gallery-thumbs button{flex:0 0 70px;padding:0;border:2px solid transparent;background:none;cursor:pointer;opacity:.55}.gallery-thumbs button.active{border-color:var(--gold);opacity:1}.gallery-thumbs img{display:block;width:100%;height:72px;object-fit:cover}.gallery-prev:hover,.gallery-next:hover{background:#b58e46}
@media(max-width:800px){.gallery{min-height:420px}.gallery-stage{min-height:330px}.gallery-thumbs{flex-basis:82px}.gallery-thumbs img{height:62px}}
/* Pevný rám galerie: rozměr fotografie nesmí měnit modal ani ovládání. */
.dialog{height:min(820px,92vh);max-height:none;overflow:hidden;grid-template-columns:minmax(0,42%) minmax(0,58%)}
.dialog>.gallery{height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 92px}
.gallery-stage{width:100%;height:100%;min-height:0;position:relative;overflow:hidden;background:#080807}
.gallery-stage>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center}
.gallery-prev,.gallery-next{z-index:3;top:50%;transform:translateY(-50%);margin:0}
.gallery-prev:focus,.gallery-next:focus{outline:2px solid var(--gold);outline-offset:2px}
.gallery-count{z-index:3}
.gallery-thumbs{height:92px;min-height:92px;padding:8px;overflow-x:auto;overflow-y:hidden}
.gallery-thumbs button{height:76px}.gallery-thumbs img{height:72px}
.dialog>.detail{height:100%;overflow-y:auto}
@media(max-width:800px){.dialog{display:block;height:92vh;overflow-y:auto}.dialog>.gallery{height:55vh;min-height:420px;grid-template-rows:minmax(0,1fr) 82px}.gallery-thumbs{height:82px;min-height:82px}.gallery-thumbs button{height:66px}.gallery-thumbs img{height:62px}.dialog>.detail{height:auto;overflow:visible}}
