/* Poster-inspired brand: warm paper, olive letterpress, hearts and botanical cuts.
   Geometry: double rules and square frames. Motion: interaction feedback only. */
@font-face{font-family:'Bree Serif';src:url('assets/bree-serif.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#f3e7cc;--paper-deep:#eaddbd;--ink:#48502b;--olive:#48502b;--body:#3e422e;--line:#b1ad8b;--serif:'Bree Serif',Georgia,serif;--sans:'Trebuchet MS',Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:12px;position:relative;border:5px double var(--olive);background:var(--paper);color:var(--body);font:18px/1.75 var(--sans)}body:before{content:'';position:absolute;inset:5px;border:1px dashed #8a8b65;pointer-events:none}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--ink);outline-offset:5px}button{cursor:pointer}img{display:block;max-width:100%}.wrap{max-width:1240px;margin-inline:auto;padding-inline:44px}.section{padding-block:80px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);color:var(--ink);font-weight:400}h2{font-size:clamp(34px,3.4vw,47px);line-height:1.2;letter-spacing:0}h3{font-size:26px;line-height:1.3}p{max-width:65ch}.skip{position:absolute;top:-100px;left:20px;background:var(--ink);color:var(--paper);padding:10px;z-index:3}.skip:focus{top:10px}
.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:3px double var(--line);gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);white-space:nowrap}.brand img{width:76px;height:76px;object-fit:contain}.brand>span{font:25px/1.2 var(--serif)}.brand small{display:block;font:16px/1.4 var(--sans);letter-spacing:2px;margin-top:5px}.header nav{display:flex;align-items:center;gap:23px;font-size:16px}.header nav a{text-decoration:none}.header nav a:hover{text-decoration:underline}.nav-contact{border:3px double var(--ink);padding:9px 16px;white-space:nowrap}.nav-contact span{margin-left:8px}.menu-toggle{display:none;background:none;border:1px solid var(--olive);padding:7px 12px;font-size:17px}
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding-top:45px;padding-bottom:38px}.hero-copy{position:relative}.ornament{display:flex;align-items:center;justify-content:center;gap:18px;width:290px;max-width:100%;height:94px;margin-bottom:19px}.ornament img{width:95px;height:85px;object-fit:contain;transform:rotate(50deg)}.ornament img:last-child{transform:scaleX(-1) rotate(50deg)}.ornament span{font:30px/1 Georgia,serif;color:var(--olive)}.hero-copy>.ornament{margin-left:28px}.eyebrow{font:16px/1.5 var(--serif);letter-spacing:1px;color:var(--olive)}h1{font-size:clamp(54px,5.5vw,76px);line-height:1.08;letter-spacing:0;margin-top:20px;text-transform:uppercase}h1 em{font-style:normal;font-weight:400;line-height:1.15}h1 em:after{content:' ♥';font:28px Georgia,serif;vertical-align:middle}.hero-description{max-width:410px;margin-top:24px;line-height:1.8;font-size:19px}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:28px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:12px 21px;background:var(--ink);border:3px double var(--paper);outline:1px solid var(--ink);color:var(--paper);text-decoration:none;font-size:17px;white-space:nowrap;transition:background .18s,transform .18s}.button:hover{background:#353d20}.button:active{transform:translateY(1px)}.text-link{display:inline-block;font-size:17px;text-decoration:none;border-bottom:1px solid var(--olive);padding-block:5px}.text-link span{margin-left:6px}.text-link:hover{color:#252d16}.photo{overflow:hidden;background:var(--paper-deep);position:relative}.photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.18)}.hero-photo{height:auto;border:4px double var(--olive);padding:9px;border-radius:0;background:transparent;overflow:visible}.hero-photo img{display:block;width:100%;height:auto;object-fit:contain;transform:none}.hero-figure{width:100%;max-width:452px;justify-self:end}.hero-figure figcaption{font:18px/1.5 var(--serif);text-align:center;margin-top:17px;color:var(--olive)}.hero-figure figcaption:after{content:' ♥';font-family:Georgia,serif}.motto{display:flex;gap:23px;align-items:center;padding-top:17px;padding-bottom:10px}.motto p{font:24px/1.5 var(--serif);color:var(--olive);text-align:center}.motto p span{font:19px Georgia,serif;padding-inline:7px}.motto-line{height:1px;flex:1;border-top:3px dotted var(--olive)}
.offer{display:grid;grid-template-columns:1fr 1.12fr;gap:78px}.offer-intro h2{margin:17px 0 22px;text-transform:uppercase}.offer-intro>p:not(.eyebrow){font-size:18px}.offer-intro .handwritten{font:20px/1.65 var(--serif);color:var(--olive);margin-top:23px}.offer-list article{display:flex;gap:23px;padding:25px 0;border-top:2px dotted var(--line)}.offer-list article:last-child{border-bottom:2px dotted var(--line)}.offer-list p{font-size:18px;margin-top:9px}.offer-symbol{font:26px/1.4 Georgia,serif;color:var(--olive)}
.craft{background:var(--paper-deep);border-block:4px double var(--olive);padding-block:60px}.craft-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.craft-mark{position:relative}.craft-mark>img{width:100%;height:auto}.craft-mark>.ornament{margin:0 auto 8px}.craft-copy h2{text-transform:uppercase}.craft-copy>p{font-size:18px;margin-top:22px}.craft-detail{border-top:2px dotted var(--olive);margin-top:27px;padding-top:24px}.craft-detail h3{font-size:26px}.craft-detail p{font-size:18px;margin-top:12px}.craft-copy>.text-link{margin-top:23px}
.gallery>.ornament{margin:0 auto 19px}.gallery>h2,.gallery>.section-description{text-align:center;margin-inline:auto}.gallery>h2{text-transform:uppercase}.section-description{margin-top:16px;font-size:18px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:35px}.gallery-grid .photo{aspect-ratio:4/5;width:100%;display:block;padding:0;border:1px solid var(--olive);outline:1px solid var(--line);outline-offset:5px}.gallery-grid figcaption{font:20px/1.5 var(--serif);color:var(--olive);margin-top:20px}.gallery-grid figcaption:before{content:'♥ ';font:17px Georgia,serif}.gallery-note{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:30px;padding-top:24px;border-top:2px dotted var(--line)}.gallery-note p{font-size:16px;max-width:500px}.gallery-note a{max-width:300px}.gallery-open:after{content:'Zvětšit ↗';position:absolute;right:12px;bottom:12px;padding:5px 12px;background:var(--paper);color:var(--ink);font-size:16px;opacity:0;transition:opacity .18s}.gallery-open:hover:after,.gallery-open:focus-visible:after{opacity:1}
.visit{border-top:4px double var(--olive);padding-top:46px;padding-bottom:65px}.visit-heading{text-align:center}.visit-heading>p{margin-inline:auto}.visit-heading>.ornament{margin-inline:auto}.visit-heading h2{margin:13px 0 18px;text-transform:uppercase}.visit-heading>p:last-child{font-size:18px}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:45px;margin-top:42px;padding-top:35px;border-top:3px double var(--olive)}.contact-grid h3{font-size:26px;margin-bottom:19px}.contact-grid address{font-style:normal;font-size:18px;line-height:1.9}.contact-grid .button{margin-top:22px}.hours{margin:0;font-size:18px}.hours>div{display:flex;justify-content:space-between;gap:15px;margin-bottom:12px;flex-wrap:wrap}.hours dd{margin:0;white-space:nowrap}.contact-note{font-size:16px;margin-top:21px}.contact-link{font:31px/1.5 var(--serif);color:var(--ink);text-decoration:none;white-space:nowrap}.contact-mail{display:block;font-size:18px;margin-top:8px;overflow-wrap:anywhere}.socials{display:flex;gap:22px;margin-top:23px;font-size:17px;flex-wrap:wrap}.footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:28px;font-size:16px;border-top:3px double var(--line)}.footer>div{display:flex;gap:20px;flex-wrap:wrap}.footer a{white-space:nowrap}.footer span{padding-inline:5px}.footer>p{max-width:500px}.store-map{margin-top:40px;border:4px double var(--olive);padding:5px;background:var(--paper-deep)}.store-map iframe{display:block;width:100%;height:360px;border:0}
.lightbox{padding:65px 22px 20px;width:min(90vw,490px);max-height:94dvh;border:4px double var(--olive);background:var(--paper);color:var(--ink)}.lightbox::backdrop{background:rgb(32 39 21 / 85%)}.lightbox-close{position:absolute;right:18px;top:12px;border:0;border-bottom:1px solid var(--ink);background:none;padding:4px 8px;font-size:18px;min-height:38px}.lightbox-photo{height:min(64dvh,580px);width:100%}.lightbox-status{font-size:16px;margin-top:13px;text-align:center}.image-failed img{visibility:hidden}.image-failed:after{content:'Fotografii se nepodařilo načíst.';position:absolute;inset:0;display:grid;place-items:center;padding:20px;text-align:center;font-size:18px}.legal{max-width:850px;padding-block:65px;min-height:70vh}.legal h1{font-size:46px;letter-spacing:0;margin:0 0 25px}.legal h2{font-size:30px;letter-spacing:0;margin-top:30px}.legal p{margin-top:18px}
@media(max-width:1199px){.wrap{padding-inline:30px}.header nav{gap:15px}.brand>span{font-size:22px}.brand img{width:62px;height:68px}.hero{gap:38px}.hero-actions{gap:18px}.offer{gap:48px}.craft-grid{gap:45px}.contact-grid{gap:28px}.footer{align-items:flex-start;flex-direction:column;gap:13px}}
@media(max-width:1023px){.header{min-height:100px;flex-wrap:wrap;position:relative}.header nav{width:100%;gap:0;flex-direction:column;align-items:stretch;padding-bottom:18px;background:var(--paper);position:relative}.header:has(nav.is-open){padding-top:12px;row-gap:12px;z-index:2}.header nav a{padding:13px 10px;font-size:18px;border-bottom:1px solid var(--line)}.header nav .nav-contact{border:0;border-bottom:1px solid var(--line)}.js .header nav:not(.is-open){display:none}body:not(.js) .header{height:auto;padding-block:14px}.menu-toggle:not([hidden]){display:block}.hero{grid-template-columns:1fr 1fr;gap:28px}h1{font-size:54px}.hero-description{font-size:18px}.hero-copy>.ornament{margin-left:0}.hero-actions{gap:17px}.offer{gap:35px}.offer-list h3{font-size:24px}.contact-grid{grid-template-columns:1fr 1fr;gap:35px}.contact-grid>div:last-child{grid-column:1/-1}.craft-grid{gap:35px}.craft-copy h2{font-size:35px}}
@media(max-width:767px){html{scroll-padding-top:20px}body{margin:6px;border-width:4px;font-size:18px}body:before{inset:4px}.wrap{padding-inline:23px}.section{padding-block:55px}.header{min-height:100px;gap:10px}.brand{gap:8px}.brand img{width:55px;height:64px}.brand>span{font-size:21px}.brand small{font-size:16px;letter-spacing:1px}.menu-toggle{font-size:16px;padding:7px 9px}.hero{grid-template-columns:1fr;gap:33px;padding-top:24px;padding-bottom:28px}.hero-copy{max-width:500px}.hero-copy>.ornament{margin:0 auto 14px}.ornament{height:80px}.ornament img{height:73px}.eyebrow{font-size:16px;letter-spacing:.5px}h1{font-size:clamp(44px,10vw,64px);margin-top:17px;line-height:1.13}h1 em:after{font-size:23px}.hero-description{margin-top:19px;font-size:18px;max-width:410px}.hero-actions{margin-top:23px;gap:17px}.hero-figure{margin:0;max-width:452px;width:100%;justify-self:center}.hero-photo{height:auto;aspect-ratio:auto;border-radius:0;padding:7px}.hero-photo img{width:100%;height:auto;object-fit:contain;transform:none}.hero-figure figcaption{font-size:18px;margin-top:16px}.motto{gap:10px;padding-top:12px}.motto p{font-size:21px;max-width:280px}.motto p span{padding-inline:2px;font-size:15px}.offer{grid-template-columns:1fr;gap:28px}.offer-intro h2 br{display:none}.offer-intro h2{max-width:400px}.offer-list article{padding-block:22px;gap:17px}.offer-list h3{font-size:25px}.craft-grid{grid-template-columns:1fr;gap:30px}.craft-mark{max-width:290px;justify-self:center}.craft-copy h2{font-size:34px}.craft-copy h2 br{display:none}.gallery-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.gallery-grid figure{width:100%;max-width:450px;justify-self:center}.gallery-grid .photo{aspect-ratio:1/1.08}.gallery-note{flex-direction:column;align-items:flex-start;gap:15px}.gallery-note p{font-size:16px}.visit-heading{text-align:center}.visit-heading>p{margin-inline:auto}.visit-heading h2{font-size:34px}.contact-grid{grid-template-columns:1fr;gap:30px;margin-top:30px;padding-top:30px}.contact-grid>div:last-child{grid-column:auto}.contact-grid>div+div{border-top:2px dotted var(--line);padding-top:25px}.hours{max-width:350px}.contact-grid h3{margin-bottom:14px}.contact-note{max-width:350px}.footer{padding-block:24px;font-size:16px;gap:17px}.footer>div{gap:15px}.footer p{max-width:370px}.legal h1{font-size:36px}.lightbox{padding-inline:15px}.store-map{margin-top:30px}.store-map iframe{height:300px}}
@media(max-width:374px){.wrap{padding-inline:17px}.brand>span{font-size:18px}.brand img{width:43px}.header{gap:5px}.menu-toggle{font-size:16px;padding:6px}.hero-copy>.ornament{width:245px}.button{padding-inline:16px}h1{font-size:43px}.ornament{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
