/* Jemná botanická identita odvozená přímo z loga */
.brand-mark{width:58px;height:58px;gap:1px;font-style:normal}.brand-mark b{font:italic 23px var(--font-display);font-weight:400}.brand-mark i{font:12px var(--font-display);color:var(--gold);font-style:normal}.brand-mark i:first-child{transform:rotate(-35deg)}.brand-mark i:last-child{transform:scaleX(-1) rotate(-35deg)}.brand strong{text-transform:uppercase;letter-spacing:.2em;font-family:var(--font-text);font-size:15px;font-weight:300}.hero{position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:24px;border:1px solid #d8a27f20;pointer-events:none}.hero-content{position:relative;z-index:1}.hero-monogram{width:108px;height:108px;border:1px solid #d8a27f99;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:5px;color:var(--gold);margin-bottom:30px;box-shadow:0 0 0 8px #d8889b0a,0 0 50px #d8889b18}.hero-monogram b{font:italic 44px var(--font-display);color:var(--rose);font-weight:400}.hero-monogram span{font:18px var(--font-display)}.hero-monogram span:last-child{transform:scaleX(-1)}.hero h1{letter-spacing:-.02em}.hero h1 em,.offer h2 em,.order h2 em{font-style:italic;color:var(--rose);font-weight:400}.primary{letter-spacing:.08em;text-transform:uppercase;font-size:11px}.primary span{padding-left:10px}.secondary{text-transform:uppercase;letter-spacing:.12em;font-size:10px}.signature{margin-top:35px;color:var(--gold);font:italic 17px var(--font-display);position:relative;display:inline-block;padding:0 48px}.signature:before,.signature:after{content:"";position:absolute;top:50%;width:35px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.signature:before{left:0}.signature:after{right:0;transform:scaleX(-1)}.hero-photo{transition:.35s}.hero-photo:hover{transform:translateY(-8px)}.hero-photo:after{content:"GALERIE  •  DORTY";position:absolute;display:grid;place-items:center;width:102px;height:102px;right:-22px;bottom:25px;border-radius:50%;background:var(--rose);color:var(--ink);font-size:9px;line-height:1.45;letter-spacing:.14em;padding:20px;box-shadow:0 15px 35px #05030d99}.offer h2{line-height:1.05}.offer{background-image:radial-gradient(#a8667616 1px,transparent 1px);background-size:24px 24px}.card:before{content:"❧";position:absolute;right:20px;top:18px;font:20px var(--font-display);color:#bb7a8180}.card{position:relative}.card h3{letter-spacing:.02em}.card:hover h3,.card.featured h3{color:#efb4ae}.order{position:relative;overflow:hidden}.order:before{content:"D";position:absolute;right:4vw;top:-.22em;font:italic 22vw var(--font-display);color:#ffffff05}.order>div,.order>a{position:relative}.order h2{line-height:1.08}.topbar:after{content:"";position:absolute;left:50%;bottom:-1px;width:130px;height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--rose),var(--gold),transparent)}
@media(max-width:720px){.brand-mark{width:42px;height:42px}.brand-mark i{display:none}.hero:after{inset:10px}.hero-monogram{width:84px;height:84px}.hero-monogram b{font-size:34px}.signature{margin-bottom:12px}.hero-photo:after{right:-10px}.order:before{font-size:50vw}}

/* Kontakty */
.footer-contacts{display:grid;gap:8px;font-size:13px;color:#cbbecb}
.footer-contacts a{text-decoration:none}
.footer-contacts a:hover{text-decoration:underline}
.footer-contacts span{display:block}
.footer-contacts b{color:#e7b69f;font-weight:600;margin-right:7px}
.footer-contact-item{display:flex!important;align-items:center;gap:11px;min-height:44px;color:#cbbecb}.footer-contact-icon{flex:0 0 34px;width:34px;height:34px;display:grid!important;place-items:center;border:1px solid #50394e;border-radius:50%;background:#171027;color:#e7b69f;transition:.2s}.footer-contact-icon svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.footer-contact-icon.footer-facebook svg{fill:currentColor;stroke:none}.footer-contact-icon .footer-icon-dot{fill:currentColor;stroke:none}.footer-contact-text{display:block!important}.footer-contact-item:hover .footer-contact-icon{border-color:#d8889b;background:#26182f;transform:translateY(-1px)}
.back-top{white-space:nowrap}
.hero-photo:after{display:none!important}

/* Kompaktnější náhledy: více fotografií na obrazovce, plná velikost po kliknutí */
.gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:28px}
@media(max-width:1050px){.gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px}}

/* Klidné zarovnání hlavního obrázku a karet */
.hero-photo img{object-position:50% 48%}
.cards .card:hover,.cards .card.featured{transform:none}

/* Osobní příběh */
.story{padding:clamp(76px,9vw,125px) clamp(20px,7vw,112px);background:#fff8f1;color:#211126;scroll-margin-top:88px}
.story-shell{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(45px,8vw,110px);align-items:start;padding:clamp(38px,6vw,76px);border:1px solid #e3cfc3;border-radius:28px;background:radial-gradient(circle at 4% 5%,rgba(216,136,155,.15),transparent 30%),#fffdf9;box-shadow:0 26px 70px rgba(56,25,42,.09);position:relative;overflow:hidden}
.story-shell:after{content:"❧";position:absolute;right:-24px;bottom:-55px;color:rgba(168,79,103,.07);font:190px var(--font-display);transform:rotate(-18deg);pointer-events:none}
.story-heading{position:relative;z-index:1}.story-heading .eyebrow{color:#a84f67}.story-heading h2{margin:13px 0 0;color:#211126;font-size:clamp(36px,4.5vw,58px);line-height:1.08}.story-heading h2 em{color:#b85f75;font-weight:400}.story-mark{display:grid;place-items:center;width:74px;height:74px;margin-bottom:28px;border:1px solid #d8a27f;border-radius:50%;color:#b85f75;background:#fff9f4;font:italic 34px var(--font-display);box-shadow:0 0 0 8px rgba(216,136,155,.07)}
.story-copy{position:relative;z-index:1;color:#685661;font-size:16px;line-height:1.82}.story-copy p{margin:0 0 19px}.story-copy .story-lead{color:#3d2735;font:400 clamp(21px,2.2vw,28px)/1.5 var(--font-display)}.story-signature{margin-top:30px!important;padding-top:24px;border-top:1px solid #e3cfc3;color:#8d5365;font:italic 18px var(--font-display)}.story-signature strong{display:block;margin-top:9px;color:#422333;font:italic 24px var(--font-display);font-weight:400}
@media(max-width:780px){.story{padding:58px 14px;scroll-margin-top:72px}.story-shell{grid-template-columns:1fr;gap:30px;padding:35px 24px;border-radius:22px}.story-mark{width:62px;height:62px;margin-bottom:22px}.story-heading h2{margin-bottom:0}.story-copy{font-size:15px}.story-copy .story-lead{font-size:22px}}
@media(min-width:721px) and (max-width:1100px){.topbar nav{gap:16px}.topbar nav a{font-size:12px}}

/* Přehledná nabídka šesti kategorií */
@media(min-width:1051px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Fotografie k osobnímu příběhu */
.story-gallery{grid-column:1/-1;position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:6px}
.story-gallery button{padding:0;border:1px solid #e3cfc3;border-radius:14px;overflow:hidden;background:#f6e8df;aspect-ratio:4/3;cursor:zoom-in}
.story-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.story-gallery button:hover img{transform:scale(1.025)}
@media(max-width:620px){.story-gallery{grid-template-columns:1fr}.story-gallery button{aspect-ratio:16/10}}
/* logo: dort na stojanu (11.10.2026) — stejná kresba v hlavičce, úvodu i ikonách */
.logo-dort{display:block;width:44px;height:44px}.hero-monogram .logo-dort{width:82px;height:82px}
@media(max-width:720px){.brand-mark .logo-dort{width:32px;height:32px}.hero-monogram .logo-dort{width:64px;height:64px}}
/* iPhone: rychlé dvojí ťuknutí na tlačítko (+/− kg apod.) nemá zvětšovat stránku; zoom dvěma prsty zůstává */
button,a,label,summary,select,input,textarea,[role="button"],.cuk-pick{touch-action:manipulation}
/* iPhone: písmo v políčkách pod 16 px = Safari při ťuknutí přiblíží stránku a nechá ji posouvat do strany */
@media(max-width:720px){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}}
/* iPhone: 100vh je v Safari vyšší než viditelná plocha → horní část okna (Zavřít, nadpis) zajela pod lištu; dvh = skutečně vidět */
@supports(height:1dvh){
html body .gallery-dialog{height:94dvh}
html body .coming-dialog{max-height:92dvh}
html body .cuk-letak-dialog{height:100dvh}
html body .cuk-letak-dialog img{max-height:94dvh}
html body .lightbox{width:100%;height:100dvh}
html body .lightbox img{max-height:85dvh}
@media(max-width:720px){html body .gallery-dialog,html body .coming-dialog,html body .coming-dialog.gallery-dialog,html body .cuk-letak-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh}}
}
/* iPhone (iOS 26): obsah sahá až pod stavový řádek → horní lištu i hlavičky oken odsadit o bezpečnou oblast (jinde je env() = 0, nic se nemění) */
.topbar{padding-top:env(safe-area-inset-top);height:calc(88px + env(safe-area-inset-top))}
@media(max-width:720px){.topbar{height:calc(72px + env(safe-area-inset-top))}nav{top:calc(72px + env(safe-area-inset-top))!important}}
body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
@media(max-width:720px){html body .dialog-head{padding-top:calc(22px + env(safe-area-inset-top))}}
/* okna se nesmí posouvat do strany ani o kousek; stránka taky ne (clip, ne hidden — hidden rozbíjí position:fixed) */
html body dialog{overflow-x:hidden!important}
body{overflow-x:clip}
/* zamknutí stránky pod oknem bez position:fixed — to v iOS Safari po zavření okna nechávalo horní lištu napůl pod stavovým řádkem */
html body.modal-open{position:static;top:auto;padding-right:env(safe-area-inset-right)}
html{scroll-padding-top:env(safe-area-inset-top)}
/* úvod: dort jemně „dýchá“ (pomalý puls + záře kruhu); kdo má v systému omezené animace, nevidí nic */
@keyframes dok-dort-puls{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
@keyframes dok-kruh-zar{0%,100%{box-shadow:0 0 0 8px #d8889b0a,0 0 50px #d8889b18}50%{box-shadow:0 0 0 12px #d8889b12,0 0 70px #d8889b33}}
@media(prefers-reduced-motion:no-preference){
.hero-monogram{animation:dok-kruh-zar 3.2s ease-in-out infinite}
.hero-monogram .logo-dort{animation:dok-dort-puls 3.2s ease-in-out infinite;transform-origin:50% 60%}
}
