:root{--ink:#1f211d;--cream:#f5f0e6;--paper:#fffdf8;--green:#314c3b;--green2:#496554;--gold:#c89b52;--muted:#6d7069;--line:#ddd7ca;--shadow:0 20px 60px rgba(26,33,27,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:var(--paper);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1160px,calc(100% - 40px));margin:auto}.narrow{width:min(900px,100%)}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.08;margin:0 0 20px}h1{font-size:clamp(3rem,7vw,6.3rem)}h2{font-size:clamp(2.2rem,4vw,4rem)}h3{font-size:1.6rem}p{margin:0 0 22px;color:var(--muted)}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,253,248,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(221,215,202,.7)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-family:'Playfair Display';font-weight:700}.brand span:last-child{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:'Playfair Display';font-size:1.15rem}.brand small{font-size:.82rem;color:var(--muted);margin-top:4px}.main-nav{display:flex;align-items:center;gap:28px;font-size:.93rem;font-weight:600}.main-nav a:hover{color:var(--green2)}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 22px;font-weight:700;transition:.2s;border:1px solid transparent}.nav-cta,.btn.primary{background:var(--green);color:white}.btn:hover,.nav-cta:hover{transform:translateY(-2px)}.btn.ghost{border-color:rgba(255,255,255,.55);color:white}.btn.light{background:white;color:var(--green)}.btn.full{width:100%;border:0;font-size:1rem}.menu-toggle{display:none;background:none;border:0}.hero{min-height:760px;position:relative;background:linear-gradient(90deg,rgba(19,28,22,.9),rgba(19,28,22,.24)),url('/img/hero.svg') center/cover;display:flex;align-items:center;color:white}.hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,18,15,.38),transparent 50%)}.hero-content{position:relative;z-index:2;padding-bottom:80px}.hero-content p{font-size:1.15rem;color:rgba(255,255,255,.78);max-width:600px}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700;color:#e8c98c;margin-bottom:18px}.eyebrow.dark{color:var(--green2)}.hero-actions{display:flex;gap:12px}.hero-card{position:absolute;right:7vw;bottom:-46px;z-index:3;width:min(390px,86vw);padding:26px 30px;background:var(--cream);color:var(--ink);box-shadow:var(--shadow);border-radius:22px}.hero-card span,.hero-card a{display:block;font-size:.83rem;color:var(--green2)}.hero-card strong{display:block;font-family:'Playfair Display';font-size:1.35rem;margin:6px 0 12px}.section{padding:110px 0}.intro{padding-top:150px}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:80px}.align-center{align-items:center}.cards-section,.muted{background:var(--cream)}.cards{display:grid;gap:24px}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.feature-card,.service-card{background:var(--paper);padding:36px;border:1px solid var(--line);border-radius:24px;transition:.2s}.feature-card:hover,.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.feature-card .icon,.service-card>span{font-size:2rem}.feature-card a,.text-link{color:var(--green);font-weight:700}.photo-stack{position:relative;padding:0 40px 40px 0}.rounded-img,.photo-stack>img{border-radius:28px;box-shadow:var(--shadow)}.mini-photo{position:absolute;right:0;bottom:0;width:44%;border:8px solid var(--paper);border-radius:22px;overflow:hidden}.cta{background:var(--green);color:white;padding:80px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{max-width:760px;margin:0}.page-hero{min-height:520px;padding:135px 0 105px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(25,38,29,.94),rgba(25,38,29,.45)),url('/img/hero.svg') center/cover;color:white}.page-hero h1{font-size:clamp(2.8rem,6vw,5.4rem);max-width:950px}.page-hero p{color:rgba(255,255,255,.75);font-size:1.1rem;max-width:650px}.about-hero{background-image:linear-gradient(90deg,rgba(20,31,24,.93),rgba(20,31,24,.42)),url('/img/photos/vstup-hostinec.jpg');background-position:center 52%}.menu-hero{background-image:linear-gradient(90deg,rgba(20,31,24,.93),rgba(20,31,24,.42)),url('/img/photos/vycep.jpg');background-position:center 46%}.stay-hero{background-image:linear-gradient(90deg,rgba(20,31,24,.93),rgba(20,31,24,.42)),url('/img/photos/zahradka-nebe.jpg');background-position:center 48%}.services-hero{background-image:linear-gradient(90deg,rgba(20,31,24,.93),rgba(20,31,24,.42)),url('/img/photos/kulecnik.jpg');background-position:center 52%}.contact-hero{background-image:linear-gradient(90deg,rgba(20,31,24,.93),rgba(20,31,24,.42)),url('/img/photos/zahradka-kostel.jpg');background-position:center 48%}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center}.stats strong{display:block;font-family:'Playfair Display';font-size:2.2rem}.stats span{color:var(--muted)}.check-list{list-style:none;padding:0;margin:25px 0 30px}.check-list li{margin:10px 0}.check-list li:before{content:'✓';color:var(--gold);font-weight:bold;margin-right:12px}.service-card{display:flex;gap:22px}.menu-file-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.menu-file-head h2{font-size:2rem;margin-bottom:6px}.menu-pdf{width:100%;height:1000px;border:1px solid var(--line);border-radius:20px;background:#eee}.menu-image{width:100%;border-radius:20px;border:1px solid var(--line)}.empty-menu{text-align:center;padding:70px 30px;background:var(--cream);border-radius:26px}.empty-menu>span{font-size:3rem;font-family:'Playfair Display';font-weight:700}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.contact-panel{background:var(--cream);padding:40px;border-radius:24px}.contact-item{padding:14px 0;border-bottom:1px solid var(--line)}.contact-item b{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--green2)}.hours>div{display:flex;justify-content:space-between;padding:8px 0}.map-wrap{min-height:650px;border-radius:24px;overflow:hidden;position:relative;box-shadow:var(--shadow)}.map-wrap iframe{width:100%;height:100%;border:0;position:absolute}.map-link{position:absolute;left:20px;bottom:20px;background:white;padding:12px 18px;border-radius:999px;font-weight:700}.site-footer{background:#181d19;color:white;padding:75px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:60px}.footer-grid>div{display:flex;flex-direction:column;gap:10px}.footer-grid p,.footer-grid span,.footer-grid a{color:rgba(255,255,255,.65)}.footer-brand{margin-bottom:12px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding-top:22px;display:flex;justify-content:space-between;color:rgba(255,255,255,.5);font-size:.86rem}.admin-page{min-height:70vh;display:grid;place-items:center;padding:90px 20px;background:var(--cream)}.admin-card{width:min(460px,100%);padding:40px;background:white;border-radius:24px;box-shadow:var(--shadow)}.admin-card.wide{width:min(700px,100%)}.brand-mark.large{width:62px;height:62px}.admin-card label{display:block;font-weight:700;margin:24px 0}.admin-card input[type=password]{width:100%;padding:14px;border:1px solid var(--line);border-radius:12px;margin-top:8px;font:inherit}.alert{padding:12px 15px;border-radius:12px;margin:16px 0}.alert.error{background:#fff0ed;color:#9a2d20}.alert.success{background:#edf8ef;color:#276536}.admin-top{display:flex;justify-content:space-between;align-items:flex-start}.text-button{border:0;background:none;color:var(--green);font-weight:700;cursor:pointer}.dropzone{border:2px dashed var(--line);padding:35px;text-align:center;border-radius:18px;cursor:pointer}.dropzone span,.dropzone strong,.dropzone small{display:block}.dropzone input{margin-top:18px}.current-file{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.current-file a{color:var(--green);margin-left:8px}.menu-toggle span{width:25px;height:2px;background:var(--ink);display:block;margin:5px}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:25px 20px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.menu-toggle{display:block}.hero{min-height:680px}.hero-card{right:20px}.split,.contact-grid{grid-template-columns:1fr;gap:45px}.cards.three,.cards.two,.stats,.footer-grid{grid-template-columns:1fr}.cta-inner,.menu-file-head{align-items:flex-start;flex-direction:column}.map-wrap{min-height:480px}.section{padding:80px 0}}@media(max-width:560px){.container{width:min(100% - 28px,1160px)}.hero{min-height:620px}.hero-card{display:none}.hero-content{padding-bottom:0}.hero-actions{flex-direction:column;align-items:flex-start}.page-hero{padding:95px 0 75px}.section{padding:65px 0}.feature-card,.service-card,.contact-panel,.admin-card{padding:26px}.menu-pdf{height:650px}.footer-bottom{flex-direction:column;gap:8px}.hours>div{gap:15px}.hours strong{text-align:right}}

/* Skutečné fotografie hostince */
.photo-hero{background-image:linear-gradient(90deg,rgba(15,22,17,.92) 0%,rgba(15,22,17,.64) 48%,rgba(15,22,17,.28) 100%),url('/img/photos/vstup-hostinec.jpg');background-position:center 56%}
.hero-photo-collage{position:absolute;right:5vw;top:120px;width:350px;height:470px;z-index:2;pointer-events:none}.hero-photo-collage img{position:absolute;width:210px;height:150px;object-fit:cover;border:7px solid rgba(255,253,248,.96);box-shadow:0 18px 45px rgba(0,0,0,.3);border-radius:4px}.hero-photo-collage img:nth-child(1){right:15px;top:0;transform:rotate(2deg)}.hero-photo-collage img:nth-child(2){left:0;top:145px;transform:rotate(-2deg)}.hero-photo-collage img:nth-child(3){right:0;bottom:0;width:245px;height:165px;transform:rotate(1deg)}
.menu-preview .photo-stack>img{height:560px;width:100%;object-fit:cover}.menu-preview .mini-photo img{height:220px;width:100%;object-fit:cover}.gallery-section{background:#f8f4eb}.gallery-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:38px}.photo-gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:270px;gap:18px}.photo-gallery figure{margin:0;overflow:hidden;border-radius:22px;box-shadow:var(--shadow)}.photo-gallery .gallery-wide{grid-column:span 2}.photo-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.photo-gallery figure:hover img{transform:scale(1.04)}
@media(max-width:1100px){.hero-photo-collage{display:none}}
@media(max-width:900px){.gallery-heading{grid-template-columns:1fr;gap:10px}.photo-gallery{grid-template-columns:1fr 1fr}.photo-gallery .gallery-wide{grid-column:span 2}}
@media(max-width:560px){.photo-gallery{grid-template-columns:1fr;grid-auto-rows:240px}.photo-gallery .gallery-wide{grid-column:span 1}.menu-preview .photo-stack>img{height:430px}.menu-preview .mini-photo img{height:150px}}

/* ===== ADMIN LOGIN ===== */

.admin-card h1{
    font-size: clamp(2.6rem,4vw,4.2rem);
    line-height: .95;
    letter-spacing: -.03em;
    word-break: break-word;
    margin-bottom: 18px;
}

.admin-card{
    width: min(480px,100%);
}