/* Dieťa do dlaní 1.4 — editorial hero, editorial slider, gentle photographic backgrounds */
:root{--ddd-ease:cubic-bezier(.22,.83,.3,1)}
/* Editorial hero: two-thirds allocated to photography on wide screens */
.hero{padding-top:38px;padding-bottom:88px;background:radial-gradient(ellipse at 77% 10%,#fde8f0 0%,transparent 38%),radial-gradient(ellipse at 80% 99%,#e2f6fa 0%,transparent 48%),#fffdfd}
.hero .hero-grid{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:18px;min-height:545px;align-items:center}
.hero .hero-copy{position:relative;z-index:3;max-width:420px;padding:25px 0 30px}
.hero .hero-copy h1{font-size:clamp(38px,4.4vw,59px);letter-spacing:-.07em;line-height:1.075;max-width:440px;hyphens:none}
.hero .hero-copy .actions{margin-top:32px;gap:11px}
.hero .hero-copy .btn{font-size:12.5px;padding:14px 15px;min-height:48px}
.hero .hero-art{min-height:560px;width:100%;padding:0;max-width:none;perspective:1000px;contain:layout style}
.hero .hero-photo{inset:25px 11px 37px 18%;transform:rotate(1.5deg);border:7px solid white;border-radius:34px;animation:ddd-hero-drift 10s ease-in-out infinite alternate;box-shadow:0 30px 80px rgba(19,64,87,.18)}
.hero .photo2{left:1%;bottom:6px;width:41%;height:39%;transform:rotate(-4deg);border:6px solid white;border-radius:25px;z-index:3;box-shadow:0 16px 42px #1d637d29}
.hero .hero-photo-third{position:absolute;left:0;top:5%;width:35%;height:32%;z-index:4;overflow:hidden;border:6px solid white;border-radius:26px;transform:rotate(-7deg);box-shadow:0 16px 43px #1e516125;isolation:isolate}
.hero .hero-slider .hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.35s ease,transform 7s ease;will-change:auto}
.hero .hero-slider .hero-slide.is-active{opacity:1;transform:scale(1);z-index:1}
.hero .hero-photo:after{background:linear-gradient(0deg,rgba(6,42,55,.13),transparent 44%);pointer-events:none}
.hero .float-label{right:3px;top:-1px;max-width:184px;padding:12px 14px;border-radius:16px;z-index:5;font-size:11.4px}
.hero .hero-bubble{right:3px;bottom:12px;border-radius:16px;padding:12px 15px;z-index:5}
.hero .hero-bubble strong{font-size:13px}
.hero .hero-slider-controls{bottom:24px;right:30%;z-index:7;backdrop-filter:blur(10px);padding:10px 13px}
.hero .hero-dots{left:24px;top:5px;opacity:.6}
@keyframes ddd-hero-drift{from{transform:translateY(0) rotate(1.5deg)}to{transform:translateY(-7px) rotate(.5deg)}}
/* Interaction, controls and full-bleed soft photograph behind the carousel */
.facts-section{margin-top:-25px;padding-bottom:20px;z-index:5}
.facts-panel{position:relative;overflow:hidden;isolation:isolate;padding:34px 34px 27px;border-radius:30px;background:linear-gradient(145deg,#fff 10%,#f9fcff 90%);box-shadow:0 24px 60px #174a6112}
.ddd-facts-bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:.075;filter:grayscale(25%) saturate(.7);pointer-events:none}
.facts-panel:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(255,255,255,.88),rgba(255,252,253,.65) 58%,rgba(234,249,251,.91));pointer-events:none}
.facts-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:23px}
.facts-heading h2{font-size:clamp(29px,3.1vw,42px)}
.facts-heading .eyebrow{font-size:10px;margin-bottom:7px}
.facts-intro{max-width:570px;color:#728798;font-size:13.5px;line-height:1.6;margin-top:11px}
.ddd-carousel-controls{display:flex;align-items:center;gap:8px;flex:none}
.ddd-carousel-controls button{display:inline-grid;place-items:center;appearance:none;border:1px solid #e4eaf0;background:#fff;color:#30657c;border-radius:100px;height:43px;width:43px;box-shadow:0 6px 20px #25495d0c;transition:transform .25s var(--ddd-ease),background .25s,border-color .25s}
.ddd-carousel-controls button:hover:not(:disabled){transform:translateY(-2px);background:#fff2f6;color:var(--pink);border-color:#f3b8ce}
.ddd-carousel-controls button:disabled{opacity:.38;cursor:default}
.ddd-carousel-controls .ddd-carousel-arrow .icon{width:18px;height:18px}
#ddd-facts-prev .icon{transform:rotate(180deg)}
.ddd-carousel-controls .ddd-carousel-pause{width:auto;padding:0 14px;display:inline-flex;gap:8px;font-size:11px;font-weight:800}
.ddd-pause-sign{font-size:15px;line-height:1}
.ddd-about-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;padding:9px 6px 24px;margin:-9px -6px -24px;touch-action:pan-x pan-y}
.ddd-about-viewport::-webkit-scrollbar{display:none}
.facts-grid.ddd-about-grid{display:flex;flex-wrap:nowrap;gap:15px;align-items:stretch}
.facts-grid.ddd-about-grid .ddd-fact{flex:0 0 calc((100% - 30px)/3);max-width:calc((100% - 30px)/3);scroll-snap-align:start}
.fact-card.ddd-fact{min-height:224px;justify-content:space-between;padding:24px 23px;overflow:hidden;background:linear-gradient(145deg,#fff0f5,#fff 80%);box-shadow:0 10px 25px #23495c0a;border:1px solid #e5edf2;border-radius:25px;transform:none!important;isolation:isolate;transition:box-shadow .28s var(--ddd-ease),border-color .28s,background-color .28s}
.fact-card.ddd-fact:nth-child(3n+2){background:linear-gradient(145deg,#eaf8fd,#fff 78%)}
.fact-card.ddd-fact:nth-child(3n){background:linear-gradient(145deg,#eaf9f4,#fff 78%)}
.ddd-fact-photo{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:.1;filter:saturate(.75);transition:opacity .5s,transform .7s var(--ddd-ease)}
.fact-card.ddd-fact::after{content:"";inset:0;position:absolute;z-index:-1;background:linear-gradient(135deg,rgba(255,255,255,.84),rgba(255,255,255,.72));pointer-events:none}
.fact-card.ddd-fact:hover,.fact-card.ddd-fact:focus-visible{transform:none!important;border-color:#f4b1ca;box-shadow:0 16px 40px #1e496118;z-index:2}
.fact-card.ddd-fact:hover .ddd-fact-photo{opacity:.24;transform:scale(1.06)}
.fact-top{margin-bottom:21px}
.fact-top .fact-icon{width:57px;height:57px;min-width:57px;border-radius:19px}
.fact-top .fact-icon .icon{height:26px;width:26px}
.ddd-fact .fact-text b{font-size:18px;letter-spacing:-.035em;line-height:1.27}
.ddd-fact .fact-text small{font-size:13px;line-height:1.57;margin-top:8px}
.ddd-fact .fact-hover-note{font-size:12px}
.ddd-carousel-bottom{display:flex;align-items:center;gap:17px;margin-top:22px}
.ddd-carousel-counter{font-size:13px;font-weight:900;color:#265368;font-variant-numeric:tabular-nums;white-space:nowrap}
.ddd-carousel-progress{height:5px;flex:1;background:#edf0f4;border-radius:20px;overflow:hidden;max-width:205px}
.ddd-carousel-progress span{display:block;width:50%;height:100%;background:linear-gradient(90deg,var(--pink),var(--sky));border-radius:20px;transition:width .4s}
.ddd-facts-hint{margin-left:auto;font-size:11px;color:#7a91a0;text-align:right}
.facts-footer{padding-top:20px}
/* The older 1.3 grid uses display:contents on mobile; this version restores the layout within a horizontal slider. */
@media(max-width:1100px){
 .hero .hero-grid{gap:14px}
 .hero .hero-copy h1{font-size:clamp(37px,4.5vw,53px)}
}
@media(max-width:980px){
 .hero .hero-grid{grid-template-columns:1fr;gap:0}
 .hero .hero-copy{max-width:700px;padding:15px 0 20px}
 .hero .hero-copy h1{max-width:680px;font-size:clamp(42px,6vw,61px)}
 .hero .hero-art{min-height:490px;max-width:680px}
 .facts-grid.ddd-about-grid .ddd-fact{flex-basis:calc((100% - 15px)/2);max-width:calc((100% - 15px)/2)}
}
@media(max-width:640px){
 .hero{padding-top:22px;padding-bottom:66px}
 .hero .hero-grid{gap:0}
 .hero .hero-copy{max-width:none;padding:13px 0 11px}
 .hero .hero-copy h1{font-size:clamp(34px,10vw,49px);letter-spacing:-.065em;line-height:1.09}
 .hero .hero-copy .actions{margin-top:21px;gap:7px}
 .hero .hero-copy .btn{font-size:11.4px;min-height:44px;padding:12px 11px}
 .hero .hero-art{min-height:365px;margin-top:0;width:100%}
 .hero .hero-photo{inset:21px 2px 40px 16%;border-width:5px;border-radius:22px;transform:rotate(1deg)}
 .hero .photo2{width:44%;height:37%;bottom:11px;left:0;border-width:5px;border-radius:18px}
 .hero .hero-photo-third{left:0;top:6%;width:37%;height:33%;border-width:5px;border-radius:19px}
 .hero .float-label{right:0;top:0;max-width:152px;padding:8px 10px;font-size:9px}
 .hero .float-label span{width:29px;height:29px}
 .hero .hero-bubble{bottom:8px;right:0;padding:9px 10px}
 .hero .hero-bubble strong{font-size:11px}
 .hero .hero-slider-controls{right:17%;bottom:32px;padding:7px 10px;gap:6px}
 .hero .hero-slide-dot{height:8px;width:8px}
 .hero .hero-slide-dot.is-active{width:24px}
 .facts-section{margin-top:-16px;padding-bottom:14px}
 .facts-panel{padding:23px 17px 22px;border-radius:25px}
 .facts-heading{align-items:stretch;flex-direction:column;gap:14px;margin-bottom:17px}
 .facts-heading h2{font-size:32px}
 .facts-intro{font-size:12px;line-height:1.55;margin-top:7px}
 .ddd-carousel-controls{align-self:flex-start}
 .ddd-carousel-controls button{height:37px;width:37px}
 .ddd-carousel-controls .ddd-carousel-pause{padding:0 12px}
 .facts-grid.ddd-about-grid{gap:12px}
 .facts-grid.ddd-about-grid .ddd-fact{flex:0 0 100%;max-width:100%}
 .fact-card.ddd-fact{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;min-height:225px;padding:20px;border-radius:21px;gap:0}
 .fact-top{display:flex;align-items:start;justify-content:space-between;margin-bottom:20px}
 .fact-top .fact-icon{width:55px;min-width:55px;height:55px;border-radius:17px}
 .fact-opening{width:34px;height:34px;background:#fff;border:1px solid #e3edf1}
 .ddd-fact .fact-text{display:block;width:100%}
 .ddd-fact .fact-text b{font-size:18px}
 .ddd-fact .fact-text small{font-size:12.5px;margin-top:7px}
 .ddd-carousel-bottom{gap:11px;flex-wrap:wrap;margin-top:18px}
 .ddd-facts-hint{width:100%;margin-left:0;text-align:left;font-size:10.4px}
 .facts-footer{justify-content:flex-start}
}
@media(max-width:380px){.hero .hero-art{min-height:310px}.hero .float-label{display:none}.hero .hero-copy .actions{flex-direction:column;align-items:stretch}.hero .hero-copy .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.hero .hero-photo{animation:none!important}.ddd-fact-photo,.fact-card.ddd-fact,.ddd-about-viewport{transition:none!important;scroll-behavior:auto!important}}
body.calm-mode .hero .hero-photo{animation:none!important}
body.calm-mode .ddd-about-viewport{scroll-behavior:auto!important}
/* v1.4 mobile regression fixes: prevent stretched carousel controls from earlier top placement */
@media(max-width:640px){
 .hero .hero-slider-controls{top:auto;bottom:29px;left:auto;right:19%;width:auto;height:auto;min-height:0;display:flex;align-items:center;flex-direction:row}
 .fact-card.ddd-fact{min-height:198px;justify-content:flex-start}
 .fact-top{margin-bottom:23px}
}
