:root{--cream:#f5f0e6;--ink:#24513b;--gold:#b69a60;--line:#d0d9ca;--sage:#e8eee5;--terracotta:#a65738}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{height:98px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;gap:25px;background:var(--cream)}.brand{display:flex;align-items:center;gap:9px;line-height:1;font:28px Georgia,serif;letter-spacing:3px}.brand small{display:block;font:8px Arial,sans-serif;text-align:center;margin-top:6px;letter-spacing:3px}.crown{font-size:38px;color:var(--gold)}nav{display:flex;gap:27px;font-size:12px}nav a:hover{color:#a47b41}.button{background:var(--ink);color:white;display:inline-flex;justify-content:space-between;align-items:center;gap:32px;padding:15px 23px;font-size:12px;border:1px solid transparent;cursor:pointer;transition:background .2s}.button:hover{background:#3f5b4a}.nav-cta{padding:12px 19px}.button span{font-size:20px}.menu{display:none}.hero{height:660px;min-height:580px;position:relative;color:white;margin:0 18px;overflow:hidden;background:#30483b}.hero>img,.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shade{background:linear-gradient(90deg,rgba(10,30,23,.83),rgba(10,30,23,.23)),linear-gradient(0deg,rgba(10,30,23,.5),transparent 30%)}.hero-copy{position:relative;padding:86px 7%}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;margin:0 0 26px;color:#8a744f}.eyebrow.light{color:#e1d6bd}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-1.6px;margin:0 0 24px}h1{font-size:clamp(52px,5.9vw,88px)}h2{font-size:clamp(35px,3.5vw,52px)}em{font-weight:400}h1 em{color:#e9d6af}.hero-copy>p:not(.eyebrow){color:#eceee7;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.cream{background:var(--cream);color:var(--ink)}.cream:hover{background:#ded8c9}.text-link{font-size:12px;border-bottom:1px solid #a4aa9c;padding-bottom:4px}.hero-bottom{position:absolute;bottom:27px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.7px}.hero-bottom a{font-size:24px}.welcome-strip{display:flex;align-items:center;justify-content:center;gap:35px;border-bottom:1px solid var(--line);padding:20px;font:18px Georgia,serif}.welcome-strip p{margin:0;color:#88734f}.star{color:var(--gold);font-size:30px}.section{max-width:1280px;margin:auto;padding:95px 65px}.story{display:grid;grid-template-columns:1.1fr 1fr;gap:75px}.story-text{padding-top:30px;color:#5c655c}.story-text p:first-child{margin-top:0}.underlink{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #9b9f8b;padding:10px 0;font-size:12px;color:var(--ink)}.stay{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;padding-top:10px}.stay-image{position:relative;min-height:520px;overflow:hidden}.stay-image img,.event-image img{width:100%;height:100%;object-fit:cover;position:absolute}.image-label{position:absolute;bottom:25px;left:25px;background:var(--cream);font-size:9px;letter-spacing:2px;padding:13px 20px}.stay-copy{padding:20px 0}.stay-copy>p:not(.eyebrow){color:#667064}.amenities{display:grid;grid-template-columns:1fr 1fr;margin:25px 0;border-top:1px solid var(--line)}.amenities div{padding:17px 0;border-bottom:1px solid var(--line)}.amenities b{display:block;font:24px Georgia,serif}.amenities span{font-size:11px;color:#6e766a}.subtle{font-size:11px;line-height:1.7;color:#6b7266}.dining{background:var(--ink);color:var(--cream);padding-bottom:32px}.dining-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;padding-top:75px;padding-bottom:45px}.dining-heading>div:last-child{padding-top:38px;color:#c8cfc3}.pale{color:var(--cream)}.dining-photo{height:360px;position:relative;max-width:1150px;margin:auto;overflow:hidden;background:#344e40}.dining-photo img{width:100%;height:100%;object-fit:cover;filter:brightness(.6)}.dining-photo>div{position:absolute;bottom:35px;left:45px;font:36px/1.2 Georgia,serif}.dining-footer{display:flex;justify-content:center;align-items:center;gap:36px;padding:26px 20px 0;font-size:12px}.dining-footer i{color:#baaa85}.events{display:grid;grid-template-columns:1.2fr 1fr;gap:75px}.events>div>p:not(.eyebrow){color:#647061}.event-list{margin:30px 0 16px}.event-list details{border-top:1px solid var(--line);padding:16px 0}.event-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:16px}summary::-webkit-details-marker{display:none}summary span{font-size:10px;color:#a58b61}summary b{margin-left:auto;font-size:20px;font-weight:400}details p{font-size:12px;color:#6b7266;padding-left:30px}details[open] summary b{transform:rotate(45deg)}.event-image{position:relative;margin-top:10px;min-height:480px;overflow:hidden;background:#bcc2ae}.event-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#16291ed9)}.event-image>span{position:absolute;z-index:1;bottom:35px;left:30px;color:white;font:33px/1.25 Georgia,serif}.booking{background:#e9eadf;max-width:none;display:grid;grid-template-columns:1fr 1.25fr;gap:90px;padding-left:max(65px,calc((100vw - 1150px)/2));padding-right:max(65px,calc((100vw - 1150px)/2))}.booking>div>a{display:block;font-size:13px}.booking .phone{font:25px Georgia,serif;margin:26px 0 10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:11px;margin-bottom:18px}input,select,textarea{display:block;width:100%;margin-top:7px;padding:12px 10px;border:1px solid #c5cbbd;background:#f6f5ee;color:var(--ink);border-radius:0;font-size:13px}textarea{resize:vertical}.booking .button{width:100%}#form-status{font-size:12px}.contact{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px;padding-top:70px;padding-bottom:70px}.contact h2{font-size:35px}.contact h3{font-size:12px;margin:8px 0 20px}.contact p,.contact a{font-size:12px}.contact>div:last-child>a{display:block;margin-bottom:7px}footer{border-top:1px solid var(--line);margin:0 4.5%;padding:30px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}footer>span,footer>a:last-child{font-size:10px;color:#6b7468}footer .brand{font-size:22px}footer .crown{font-size:30px}@media(min-width:1600px){.hero{height:740px}.hero-copy{padding-top:115px}}@media(max-width:1000px){nav{gap:14px}.nav-cta{display:none}.section{padding:65px 35px}.story,.stay,.events,.booking{gap:35px}.dining-heading{gap:35px}.hero-copy{padding-top:95px}.hero-bottom span:last-child{display:none}.stay-image{min-height:480px}.contact{gap:20px}.contact h2{font-size:30px}}@media(max-width:700px){header{height:80px;padding:0 22px}.brand{font-size:24px}.menu{display:block;background:none;border:0;color:var(--ink);font-size:24px}nav{display:none;position:absolute;top:80px;left:0;right:0;z-index:10;background:var(--cream);padding:20px 25px;box-shadow:0 8px 15px #0002}nav.open{display:flex;flex-direction:column;gap:18px}.hero{margin:0 10px;height:610px;min-height:0}.hero-copy{padding:75px 24px}.hero h1{font-size:54px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-bottom{left:24px;right:24px;bottom:20px}.hero-bottom span{font-size:7px;letter-spacing:1px}.welcome-strip{gap:12px;padding:22px 12px;font-size:13px}.welcome-strip .star{display:none}.section{padding:55px 24px}.story,.stay,.dining-heading,.events,.booking,.contact{grid-template-columns:1fr;gap:25px}.story-text{padding-top:0}.stay{padding-top:0}.stay-image{min-height:310px}.stay-copy{padding-top:5px}h2{font-size:39px}.dining-heading{padding-bottom:30px}.dining-heading>div:last-child{padding-top:0}.dining-photo{height:300px;margin:0 14px}.dining-photo>div{font-size:29px;left:23px;bottom:25px}.dining-footer{gap:13px;flex-wrap:wrap;font-size:10px}.dining-footer i{display:none}.event-image{min-height:350px}.booking{gap:35px}.form-row{gap:12px}.contact{gap:30px}.contact-title h2{font-size:36px}.contact h3{margin-bottom:10px}footer{flex-wrap:wrap;padding:25px 0}footer>span{width:45%}footer>span:nth-child(2){text-align:right}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero:before{content:'R';position:absolute;right:8%;top:-80px;font:750px Georgia,serif;color:#bbac7c12;line-height:1.1;pointer-events:none}.stay-image,.event-image{background-color:#c1c8b4;background-image:radial-gradient(ellipse at 50% 120%,#647962 0 43%,transparent 43.3%),linear-gradient(90deg,transparent 15%,#ffffff18 15% 16%,transparent 16% 84%,#ffffff18 84% 85%,transparent 85%)}.photo-fallback{position:absolute;top:32px;left:30px;right:30px;font:italic 22px Georgia,serif;color:#304b39;z-index:0}.dining-photo .photo-fallback{top:28px;left:45px;font:11px Arial,sans-serif;letter-spacing:2px;color:#d4d9ca}.hero .photo-fallback{display:none}.stay-image img,.event-image img,.dining-photo img{z-index:1}.image-label,.dining-photo>div:not(.photo-fallback){z-index:2}

.breakfast-hours{border-bottom:1px solid var(--line);padding:0 0 18px;margin:0 0 20px}.breakfast-hours h3{font:24px Georgia,serif;margin:0 0 10px}.breakfast-hours p{font-size:13px;margin:0;color:#5c655c}.breakfast-hours strong{font-weight:600}
.gallery{padding-top:30px}.gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px}.gallery-heading>p{color:#647061;font-size:13px}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.gallery-card{height:285px;border:0;padding:0;position:relative;overflow:hidden;background:#d7dccd;cursor:pointer;color:var(--ink);text-align:left}.gallery-card:nth-child(2n){background:#bbc7b6}.gallery-card img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;transition:transform .3s;z-index:1}.gallery-card:hover img{transform:scale(1.04)}.gallery-placeholder{position:absolute;inset:0;display:grid;place-items:center;font:40px Georgia,serif;letter-spacing:7px;color:#56705b55}.gallery-caption{position:absolute;bottom:0;left:0;right:0;z-index:2;display:flex;justify-content:space-between;padding:16px 20px;background:#f6f3eced;font-size:12px}.gallery-unavailable{position:absolute;top:20px;left:20px;right:20px;font-size:11px;color:#42583f}.gallery-card .photo-fallback{display:none}#photo-viewer{border:1px solid #627564;background:#f6f3ec;color:var(--ink);padding:22px;width:min(1000px,94vw);max-height:92vh}#photo-viewer::backdrop{background:#0b1e17e8}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}.viewer-top h2{font-size:24px;letter-spacing:0;margin:0}.viewer-top button{font-size:32px;background:none;border:0;color:inherit;cursor:pointer}.viewer-stage{height:min(60vh,600px);position:relative;display:grid;place-items:center;margin:18px 0;background:#e3e7db}.viewer-stage img{max-width:100%;max-height:100%;object-fit:contain}.viewer-stage p{position:absolute;padding:25px;text-align:center;font-size:14px}.viewer-bottom button{border:1px solid #a9b3a0;background:none;padding:10px 16px;color:inherit;cursor:pointer}.viewer-bottom button:hover{background:#e3e7db}#photo-count{font-size:12px;white-space:nowrap}.viewer-stage .photo-fallback{display:none}@media(max-width:1100px){nav{gap:16px}}@media(max-width:700px){.gallery-heading{display:block}.gallery-grid{gap:12px}.gallery-card{height:200px}.gallery-placeholder{font-size:23px;letter-spacing:3px}.gallery-caption{padding:12px;font-size:10px}.gallery-unavailable{font-size:10px;left:12px;top:12px}.viewer-top h2{font-size:20px}#photo-viewer{padding:14px}.viewer-bottom button{font-size:11px;padding:10px}.viewer-stage{height:45vh}}@media(prefers-reduced-motion:reduce){.gallery-card img{transition:none}}
.menu-restaurant-link{margin-top:10px}.menu-format{color:#d6dece}.menu-main{max-width:1150px;margin:auto;padding:65px 40px 30px}.menu-intro{text-align:center;margin-bottom:45px}.menu-intro h1{font-size:64px}.menu-intro h1 em{color:var(--ink)}.menu-intro>p:last-child{color:#6b7467}.menu-document{border:1px solid var(--line);background:#fffdf8}.menu-document-header{padding:25px 30px;display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line)}.menu-document-header h2{font-size:30px;margin:0;display:inline-block;vertical-align:middle;letter-spacing:-.5px}.pdf-badge{font-size:10px;letter-spacing:1px;border:1px solid #ad9064;color:#897044;padding:7px;margin-right:15px}.menu-document-header p{font-size:12px;color:#687160;margin:8px 0 0}#menu-actions{display:flex;align-items:center;gap:25px}[hidden]{display:none!important}.menu-empty{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:45px 25px;text-align:center;background:radial-gradient(ellipse at center,#e9eddf66,transparent 70%)}.menu-symbol{font-size:50px;color:var(--gold);line-height:1}.menu-empty h3{font:30px Georgia,serif;margin:20px 0 8px}.menu-empty p{max-width:460px;color:#677161;font-size:14px}.menu-empty a{margin-top:10px}#menu-pdf{width:100%;height:80vh;min-height:500px;border:0}#menu-mobile-help{padding:0 25px 15px}.menu-note{display:flex;justify-content:space-between;gap:20px;padding:25px 0;font-size:12px;color:#677161}.menu-note span{font:17px Georgia,serif}@media(min-width:1001px){header nav{gap:18px;font-size:11px}}@media(max-width:1180px){header .nav-cta{display:none}}@media(max-width:700px){.menu-page header>.underlink{font-size:10px}.menu-main{padding:40px 18px 20px}.menu-intro h1{font-size:49px}.menu-intro>p:last-child{font-size:13px}.menu-document-header{padding:20px;align-items:flex-start;flex-direction:column}.menu-document-header h2{font-size:27px}.menu-empty{padding:35px 20px;min-height:320px}.menu-empty h3{font-size:26px}.menu-note{flex-direction:column;gap:12px}#menu-actions{flex-wrap:wrap;gap:15px}#menu-pdf{min-height:440px}}
/* Approved shared identity: Penzión ROYAL / Zemiansky pivovar. */
header{height:152px}.brand{flex-shrink:0;letter-spacing:normal}.brand-logo{display:block;width:200px;height:auto;mix-blend-mode:multiply}footer .brand-logo{width:165px}html{scroll-padding-top:155px}@media(max-width:1000px){header .brand-logo{width:175px}header{height:132px}}@media(max-width:700px){header{height:110px}header .brand-logo{width:145px}nav{top:110px}footer .brand-logo{width:145px}html{scroll-padding-top:115px}.menu-page header>.underlink{max-width:145px;text-align:right}}
.brewery{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;border-bottom:1px solid var(--line)}.brewery-mark{background:#eeeadf;padding:25px}.brewery-mark img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.brewery-status{display:inline-block;border:1px solid #b39a6c;color:#8d754e;font-size:9px;letter-spacing:2px;padding:6px 12px;margin-bottom:22px}.brewery-copy>p:not(.eyebrow){color:#647061}.brewery-copy .button{margin-top:15px}.brewery-nav{font-weight:700}@media(min-width:701px) and (max-width:1000px){header .menu{display:block;background:none;border:0;color:var(--ink);font-size:26px}header nav{display:none;position:absolute;top:132px;left:0;right:0;z-index:10;background:var(--cream);padding:25px 35px;box-shadow:0 8px 15px #0002}header nav.open{display:flex;flex-direction:column;gap:18px;font-size:14px}.brewery{gap:35px}}@media(max-width:700px){.brewery{grid-template-columns:1fr;gap:30px}.brewery-mark{max-width:420px;margin:auto;padding:15px}.brewery-copy .eyebrow{font-size:9px}}

/* Local trips */
.excursions{border-top:1px solid var(--line)}.trips-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:55px;margin-bottom:30px}.trips-heading>p{color:#647061;font-size:14px}.trips-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.trip-card{padding:32px;background:#eeeadf;border-top:2px solid var(--gold);display:flex;flex-direction:column}.trip-category{font-size:10px;letter-spacing:1.3px;margin:0 0 23px;color:#75613f}.trip-category span{font:24px Georgia,serif;margin-right:14px;color:#8a744f}.trip-card h3{font:30px/1.2 Georgia,serif;margin:0 0 14px}.trip-card>p:not(.trip-category){font-size:14px;color:#5c655c;margin:0 0 22px}.trip-card .underlink{margin-top:auto;align-self:flex-start}.trips-note{font-size:12px;color:#647061;margin:24px 0 0;max-width:790px}@media(min-width:1001px){header nav{gap:13px}header .nav-cta{display:none}}@media(min-width:1400px){header .nav-cta{display:inline-flex}}@media(max-width:700px){.trips-heading{grid-template-columns:1fr;gap:0}.trips-grid{grid-template-columns:1fr;gap:16px}.trip-card{padding:25px}.trip-card h3{font-size:28px}}

/* Original owner photographs */
.hero>img{object-position:center 45%}.stay-image img{object-position:center}.event-image img{object-position:center}.gallery-group{border-top:1px solid var(--line)}.gallery-group:last-child{border-bottom:1px solid var(--line)}.gallery-group>summary{padding:24px 0;gap:18px}.gallery-group>summary h3{font:26px Georgia,serif;margin:0}.gallery-group>summary>span{margin-left:auto;font-size:11px;color:#647061}.gallery-group>summary b{margin-left:0}.gallery-group .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:25px}.gallery-group .gallery-card{height:270px}.gallery-caption{gap:12px;line-height:1.4}.gallery-group .gallery-card img{object-position:center}.gallery-group .gallery-card:has(img[alt="Výber teplých jedál"]) img{object-position:center 40%}@media(max-width:900px){.gallery-group .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.gallery-group>summary h3{font-size:22px}.gallery-group>summary{gap:10px}.gallery-group>summary>span{font-size:10px;white-space:nowrap}.gallery-group .gallery-grid{grid-template-columns:1fr}.gallery-group .gallery-card{height:300px}.gallery-caption{font-size:12px}.hero>img{object-position:55% center}}

/* Warm natural palette across the complete Royal website. */
header{background:#fffdf8;border-top:5px solid var(--ink);border-bottom:1px solid var(--gold)}
nav a{padding:6px 0;border-bottom:2px solid transparent}nav a:hover{color:var(--terracotta);border-bottom-color:var(--gold)}
.button{background:var(--ink);box-shadow:0 4px 12px #183b2b14}.button:hover{background:#183b2b}.button.cream{background:#ead5a6;color:#183b2b}.button.cream:hover{background:#f4e3be}
.eyebrow{color:#8b5038}.eyebrow.light{color:#ead5a6}.welcome-strip{background:#dce7d5;border-bottom-color:#a8b9a0}.welcome-strip p{color:#536343}.welcome-strip .star{color:#866b32}
.stay{background:var(--sage);padding-top:55px;border-top:3px solid #a8b9a0}.image-label{background:#f4e3be}
.dining{background:linear-gradient(125deg,#183b2b,#306046)}.dining-footer i{color:#ead5a6}
.brewery{background:#efe4ce;border-top:3px solid var(--gold)}.brewery-mark{background:#faf6ed;border:1px solid #d8c9aa}.brewery-status{background:#f9f2e4;color:#755324;border-color:#b69a60}
.events{background:#f6e9df;border-top:3px solid #b87555}.event-list summary span{color:#984f33}
.gallery{padding-top:65px;background:#edf2e9}.gallery-group>summary{padding-left:14px;padding-right:14px}.gallery-group[open]>summary{background:#dce7d5;margin-bottom:18px}.gallery-caption{background:#f8f5edf2;color:#24513b}
.excursions{background:#faf7ef}.trip-card{background:#e4ecdf;border-top-color:#72916c}.trip-card:nth-child(3n+2){background:#f1e3d7;border-top-color:#b87555}.trip-card:nth-child(3n){background:#f1e8d3;border-top-color:#b69a60}
.booking{background:linear-gradient(120deg,#dce7d5,#edf1e5);border-top:3px solid #72916c}input,select,textarea{background:#fffdf8;border-color:#a9bba1}input:focus,select:focus,textarea:focus{outline:2px solid #72916c;outline-offset:2px}
.contact{background:#eee5d3}footer{border-top:2px solid var(--gold)}
.menu-document{box-shadow:0 10px 35px #24513b0d}.menu-document-header{background:#e4ecdf}.pdf-badge{color:#825f2b;border-color:#b69a60;background:#fffaf0}.menu-empty{background:linear-gradient(135deg,#f8f3e8,#e8eee5)}
@media(max-width:1000px){header nav{background:#fffdf8}}
@media(max-width:700px){.stay{padding-top:40px}.gallery{padding-top:45px}}

.room-video{display:flex;align-items:center;justify-content:center;gap:clamp(2rem,8vw,8rem);padding:2rem 6vw 5rem;background:#e8eee5}.room-video h3{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:400;margin:0 0 1rem}.room-video video{display:block;width:min(100%,320px);height:auto;max-height:70vh;background:#172c23;border-radius:4px}.room-video p{max-width:30rem}@media(max-width:600px){.room-video{flex-direction:column;align-items:center;padding:2rem 1.25rem 3rem}.room-video>div{width:100%}}
