/* Dame-Party.cz modern public UI v50 */
:root{
  --dark:#0F172A;
  --dark-2:#111827;
  --slate:#1E293B;
  --orange:#F97316;
  --amber:#F59E0B;
  --gold:#FACC15;
  --bg:#F4F6FA;
  --card:#FFFFFF;
  --text:#111827;
  --muted:#64748B;
  --line:#E5E7EB;
  --danger:#DC2626;
  --success:#16A34A;
  --shadow:0 18px 45px rgba(15,23,42,.10);
  --shadow-soft:0 10px 25px rgba(15,23,42,.07);
  --radius:24px;
  --radius-sm:16px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
main{width:100%;overflow:hidden}.public-container{width:100%;max-width:var(--max);margin:0 auto;padding:28px}.public-container.narrow{max-width:760px}.section{width:100%;max-width:var(--max);margin:0 auto;padding:62px 28px}.section.wide{max-width:var(--max)}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px max(20px,calc((100vw - var(--max))/2 + 20px));background:rgba(15,23,42,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);color:#fff;box-shadow:0 12px 35px rgba(15,23,42,.22)}
.brand{display:flex;align-items:center;gap:12px;min-width:220px}.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--orange),var(--gold));display:grid;place-items:center;color:#111827;font-weight:950;box-shadow:0 10px 25px rgba(249,115,22,.35)}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand strong{font-size:21px;letter-spacing:-.03em}.brand span{font-size:12px;color:#CBD5E1;margin-top:3px}.site-header nav{display:flex;align-items:center;gap:6px}.site-header nav a{font-size:14px;font-weight:800;color:#CBD5E1;padding:10px 12px;border-radius:999px;transition:.18s ease}.site-header nav a:hover,.site-header nav a.active{background:rgba(255,255,255,.10);color:#fff}.site-header nav a.account-link{background:#fff;color:#111827}.nav-toggle{display:none}.nav-button{display:none;color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:10px 13px;font-weight:900;cursor:pointer;background:rgba(255,255,255,.08)}
.button,.btn,button.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 18px;border:0;border-radius:14px;font:inherit;font-weight:900;line-height:1;background:linear-gradient(135deg,var(--orange),var(--amber));color:#111827;cursor:pointer;box-shadow:0 12px 24px rgba(249,115,22,.24);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.button:hover,.btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(249,115,22,.32)}.btn.secondary,.button.secondary{background:#E5E7EB;color:#111827;box-shadow:none}.button.ghost,.btn.ghost{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.28);color:#fff;box-shadow:none}.button.dark,.btn.dark{background:var(--dark);color:#fff;box-shadow:0 12px 24px rgba(15,23,42,.18)}.button.bright,.btn.bright{background:linear-gradient(135deg,var(--gold),var(--amber));color:#111827}.btn.full{width:100%}
.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 13px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:950;color:var(--gold)}.eyebrow.dark{color:#B45309}.eyebrow::before{content:"";width:28px;height:2px;border-radius:99px;background:currentColor}.muted{color:var(--muted)}.lead{font-size:clamp(17px,2vw,21px);line-height:1.65;color:#475569}.section-heading{max-width:790px;margin:0 0 26px}.section-heading h2{font-size:clamp(30px,4vw,48px);line-height:1.05;letter-spacing:-.045em;margin:0 0 12px}.section-heading p{font-size:18px;line-height:1.65;color:#475569;margin:0}.hero,.hero.small{position:relative;border-radius:var(--radius);overflow:hidden;background:radial-gradient(circle at 18% 12%,rgba(250,204,21,.22),transparent 32%),linear-gradient(135deg,var(--dark),var(--slate));color:#fff;padding:52px;margin-bottom:30px;box-shadow:var(--shadow)}.hero.small{min-height:0}.hero h1{font-size:clamp(34px,5vw,62px);line-height:1.02;letter-spacing:-.055em;margin:0 0 14px}.hero p{max-width:760px;font-size:19px;line-height:1.6;color:#E2E8F0;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.hero::after{content:"";position:absolute;right:-90px;bottom:-120px;width:330px;height:330px;border-radius:50%;background:rgba(249,115,22,.17);filter:blur(5px)}
.promo-slider{position:relative;width:100%;max-width:1920px;aspect-ratio:1920/650;height:auto;min-height:0;overflow:hidden;background:var(--dark);color:#fff;margin:0 auto 44px;box-shadow:0 20px 55px rgba(15,23,42,.16)}.public-container>.promo-slider{width:min(100vw,1920px);position:relative;left:50%;transform:translateX(-50%);max-width:1920px;border-radius:0;margin:0 0 34px}.promo-slide{position:absolute;inset:0;opacity:0;transition:opacity .5s ease}.promo-slide.active{opacity:1;z-index:2}.promo-slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:none}.promo-slide-bg.fallback{background:radial-gradient(circle at 20% 18%,rgba(250,204,21,.28),transparent 30%),radial-gradient(circle at 84% 70%,rgba(249,115,22,.30),transparent 30%),linear-gradient(135deg,#0F172A,#111827 50%,#3f2f10)}.promo-slide-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,23,42,.60),rgba(15,23,42,.34) 38%,rgba(15,23,42,.08) 72%,rgba(15,23,42,0))}.promo-slide-content{position:relative;z-index:3;max-width:590px;padding:clamp(30px,5vw,66px) 6vw;text-shadow:0 2px 14px rgba(0,0,0,.28)}.promo-slide-content h1{font-size:clamp(28px,4vw,52px);line-height:1.02;letter-spacing:-.05em;margin:0 0 12px}.promo-slide-content p{font-size:clamp(15px,1.55vw,19px);line-height:1.5;color:rgba(255,255,255,.90);margin:0 0 4px}.promo-slider-dots{position:absolute;z-index:5;left:6vw;bottom:18px;display:flex;gap:8px}.public-container>.promo-slider .promo-slider-dots{left:max(20px,6vw)}.promo-slider-dots button{width:9px;height:9px;border-radius:99px;border:0;background:rgba(255,255,255,.55);cursor:pointer;padding:0}.promo-slider-dots button.active{width:28px;background:var(--amber)}.promo-slide.image-only .promo-slide-content,.promo-slide.image-only .promo-slide-overlay{display:none}
.category-grid,.steps-grid,.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.category-card,.step-card,.trust-card,.content-card,.form-card,.summary-box,.card{background:var(--card);border:1px solid rgba(226,232,240,.95);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft)}.category-card{min-height:158px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;transition:.18s ease;position:relative;overflow:hidden}.category-card::after{content:"";position:absolute;right:-42px;top:-42px;width:110px;height:110px;border-radius:50%;background:rgba(249,115,22,.10)}.category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.category-card strong{font-size:22px;letter-spacing:-.025em}.category-card span{color:#64748B;line-height:1.5;margin-top:12px}.soft-section{max-width:none;background:linear-gradient(180deg,#EEF2F7,#F8FAFC);padding-left:max(28px,calc((100vw - var(--max))/2));padding-right:max(28px,calc((100vw - var(--max))/2))}.step-card,.trust-card{padding:22px}.step-card span,.number-badge{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:15px;background:linear-gradient(135deg,var(--dark),var(--slate));color:#fff;font-weight:950;margin-bottom:14px}.step-card strong,.trust-card strong{display:block;font-size:20px;margin-bottom:8px}.step-card p,.trust-card p{color:#64748B;line-height:1.55;margin:0}.trust-card{border-top:4px solid var(--amber)}.cta-section{text-align:center;border-radius:30px;background:radial-gradient(circle at 20% 20%,rgba(250,204,21,.22),transparent 32%),linear-gradient(135deg,var(--dark),var(--slate));color:#fff;margin-top:34px;margin-bottom:34px;padding:58px 28px}.cta-section h2{font-size:clamp(30px,4vw,50px);letter-spacing:-.045em;margin:0 0 12px}.cta-section p{color:#E2E8F0;font-size:18px;line-height:1.6}.cta-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:22px}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 30px;align-items:center}.chip{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border-radius:999px;background:#fff;border:1px solid #E2E8F0;color:#334155;font-weight:900;box-shadow:0 6px 16px rgba(15,23,42,.04);transition:.16s ease}.chip:hover{transform:translateY(-1px);border-color:#FDBA74}.chip.active{background:var(--dark);color:#fff;border-color:var(--dark)}.product-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.product-card{overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#FED7AA}.product-image,.product-photo{width:100%;height:215px;object-fit:cover;background:#E5E7EB}.product-image-placeholder,.product-photo.placeholder{min-height:215px;background:radial-gradient(circle at 20% 20%,rgba(250,204,21,.34),transparent 35%),linear-gradient(135deg,#0F172A,#1E293B);color:#fff;display:grid;place-items:center;font-weight:950;letter-spacing:.08em;text-align:center}.product-image-placeholder.large{min-height:430px;border-radius:24px;font-size:36px}.product-card-body,.product-body{padding:20px;display:flex;flex-direction:column;flex:1}.product-card h2,.product-body h2{margin:6px 0 10px;font-size:24px;line-height:1.15;letter-spacing:-.035em}.product-card p,.product-body p{line-height:1.55;color:#475569}.product-meta{display:grid;grid-template-columns:1fr;gap:6px;border-top:1px solid #EEF2F7;padding-top:13px;margin-top:auto}.product-meta strong{font-size:20px;color:#111827}.product-meta span{color:#64748B}.status-pill{display:inline-flex;align-items:center;gap:6px;width:max-content;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:950;background:#DCFCE7;color:#166534}.status-pill.warning{background:#FEF3C7;color:#92400E}.status-pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.product-card .btn{margin-top:16px;width:100%}
.detail-layout,.product-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);gap:32px;align-items:start}.detail-image,.detail-info{min-width:0}.detail-main-image{width:100%;min-height:430px;max-height:580px;object-fit:cover;border-radius:28px;background:#E5E7EB;box-shadow:var(--shadow)}.detail-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:10px;margin-top:12px}.detail-gallery img{width:100%;height:84px;object-fit:cover;border-radius:14px;border:1px solid #E5E7EB;background:#fff}.detail-info{background:#fff;border:1px solid #E2E8F0;border-radius:28px;padding:28px;box-shadow:var(--shadow-soft);position:sticky;top:92px}.detail-info h1,.product-detail h1{font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:-.055em;margin:6px 0 14px}.summary-box,.price-box{padding:20px;margin:20px 0;background:linear-gradient(180deg,#fff,#F8FAFC);border:1px solid #E2E8F0;border-radius:20px;box-shadow:var(--shadow-soft)}.summary-box p{margin:8px 0}.price-box strong{font-size:34px;letter-spacing:-.04em}.price-box span{color:#64748B}.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.detail-actions .btn:first-child{grid-column:1/-1}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.content-card{padding:24px;margin-bottom:18px}.content-card h2{margin:0 0 12px}.content-card p,.content-card li{line-height:1.68;color:#475569}.bundle-line{display:flex;gap:14px;align-items:center;border-bottom:1px solid #E5E7EB;padding:14px 0}.bundle-line:last-child{border-bottom:0}.bundle-thumb{width:76px;height:58px;object-fit:cover;border-radius:14px;border:1px solid #E5E7EB;background:#F3F4F6;flex:none}
.reservation-shell{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.reservation-form{min-width:0}.reservation-aside{position:sticky;top:92px}.form-card{padding:24px;margin:0 0 18px}.form-card h2{display:flex;align-items:center;gap:10px;margin:0 0 18px;font-size:24px;letter-spacing:-.03em}.form-card h2 .step-dot{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--dark);color:#fff;font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid .full{grid-column:1/-1}label{display:block;font-weight:850;margin-bottom:7px;color:#1F2937}input,select,textarea{width:100%;border:1px solid #CBD5E1;border-radius:14px;padding:12px 13px;font:inherit;background:#fff;color:#111827;outline:none;transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus,textarea:focus{border-color:#F59E0B;box-shadow:0 0 0 4px rgba(245,158,11,.15)}textarea{min-height:100px;resize:vertical}small{color:#64748B;display:block;margin-top:5px}.check-row{display:flex;align-items:flex-start;gap:10px;font-weight:500;line-height:1.5;margin:12px 0;color:#334155}.check-row input{width:auto;margin-top:4px}.notice{padding:15px 16px;border-radius:16px;margin:16px 0;font-weight:850}.notice.error{background:#FEE2E2;color:#991B1B;border:1px solid #FECACA}.notice.success{background:#DCFCE7;color:#166534;border:1px solid #BBF7D0}.summary-list{display:grid;gap:10px}.summary-list div{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #EEF2F7}.summary-list div:last-child{border-bottom:0;padding-bottom:0}.summary-list strong{font-size:18px}.reservation-steps{display:grid;gap:8px;margin:0 0 18px}.reservation-steps span{display:flex;align-items:center;gap:10px;color:#475569;font-weight:850}.reservation-steps i{font-style:normal;display:grid;place-items:center;width:26px;height:26px;border-radius:9px;background:#FEF3C7;color:#92400E;font-size:12px}
.public-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:18px 0}.public-cards .summary-box span{display:block;color:#64748B;font-weight:800;margin-bottom:8px}.public-cards .summary-box strong{display:block;font-size:30px}.toolbar-public{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #E5E7EB;vertical-align:top}th{color:#374151;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.faq-list{display:grid;gap:16px}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.legal-content{line-height:1.75}.legal-content h2{margin-top:28px}.legal-content ol,.legal-content ul{padding-left:24px}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:30px max(20px,calc((100vw - var(--max))/2 + 20px));background:#fff;border-top:1px solid #E5E7EB;color:#64748B;flex-wrap:wrap}.site-footer nav{display:flex;flex-wrap:wrap;gap:14px}.site-footer nav a{font-weight:850;color:#334155}.site-footer p{margin:0}
@media (max-width:1100px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid,.steps-grid,.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout,.product-detail,.reservation-shell{grid-template-columns:1fr}.detail-info,.reservation-aside{position:static}.info-grid{grid-template-columns:1fr}}
@media (max-width:860px){.site-header{align-items:center}.nav-button{display:inline-flex}.site-header nav{display:none;position:absolute;left:14px;right:14px;top:72px;flex-direction:column;align-items:stretch;gap:6px;padding:14px;border-radius:20px;background:#111827;box-shadow:0 18px 45px rgba(15,23,42,.32)}.site-header nav a{padding:13px 14px}.nav-toggle:checked~nav{display:flex}.brand{min-width:0}.brand span{display:none}.promo-slider,.public-container>.promo-slider{aspect-ratio:1920/650;margin-bottom:24px}.promo-slide-content{padding:24px 18px 46px;max-width:92%}.promo-slide-overlay{background:linear-gradient(90deg,rgba(15,23,42,.62),rgba(15,23,42,.20))}.promo-slider-dots,.public-container>.promo-slider .promo-slider-dots{left:18px;bottom:12px}.section,.public-container{padding-left:16px;padding-right:16px}.hero,.hero.small{padding:34px 20px;border-radius:22px}.form-grid{grid-template-columns:1fr}.detail-actions{grid-template-columns:1fr}.button,.btn,button.btn{width:100%;margin-top:10px}.cta-actions .btn,.cta-actions .button,.hero-actions .btn,.hero-actions .button{width:100%}.site-footer{flex-direction:column;align-items:flex-start}}
@media (max-width:680px){.product-grid,.category-grid,.steps-grid,.trust-grid{grid-template-columns:1fr}.product-image,.product-photo,.product-image-placeholder,.product-photo.placeholder{height:200px;min-height:200px}.detail-main-image,.product-image-placeholder.large{min-height:280px}.promo-slide-content h1{font-size:clamp(24px,8vw,34px)}.promo-slide-content p{font-size:14px}.section-heading h2{font-size:30px}.product-card h2,.product-body h2{font-size:22px}.price-box strong{font-size:28px}}

/* V51 layout hotfix: oprava zúžených sekcí a produktových karet */
.section,
.section.wide{
  display:block;
  width:100% !important;
}

.soft-section{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

.soft-section > .section-heading,
.soft-section > .product-grid,
.soft-section > .trust-grid,
.soft-section > .steps-grid,
.soft-section > .category-grid{
  width:100% !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.soft-section > .section-heading{
  margin-bottom:26px !important;
}

.product-grid{
  display:grid !important;
  width:100% !important;
  grid-template-columns:repeat(3,minmax(280px,1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}

.product-grid > *,
.category-grid > *,
.steps-grid > *,
.trust-grid > *{
  min-width:0 !important;
}

.product-card{
  width:100% !important;
  min-width:0 !important;
  background:#fff !important;
  border:1px solid rgba(226,232,240,.95) !important;
  border-radius:16px !important;
  box-shadow:0 10px 25px rgba(15,23,42,.07) !important;
  overflow:hidden !important;
}

.product-image,
.product-photo,
.product-image-placeholder,
.product-photo.placeholder{
  width:100% !important;
  height:215px !important;
  min-height:215px !important;
}

.product-card-body,
.product-body{
  width:100% !important;
  min-width:0 !important;
}

.trust-grid,
.steps-grid,
.category-grid{
  display:grid !important;
  width:100% !important;
}

.trust-card,
.step-card,
.category-card{
  width:100% !important;
  min-width:0 !important;
}

@media (max-width:1100px){
  .product-grid{grid-template-columns:repeat(2,minmax(260px,1fr)) !important;}
}

@media (max-width:680px){
  .product-grid{grid-template-columns:1fr !important;}
  .product-image,
  .product-photo,
  .product-image-placeholder,
  .product-photo.placeholder{
    height:200px !important;
    min-height:200px !important;
  }
}

/* v52 category image backgrounds */
.category-card.has-bg{
  background-size:cover;
  background-position:center;
  color:#fff;
  border-color:rgba(255,255,255,.18);
  box-shadow:0 18px 42px rgba(15,23,42,.18);
}
.category-card.has-bg::after{background:rgba(250,204,21,.16)}
.category-card.has-bg strong,.category-card.has-bg span{position:relative;z-index:2;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.25)}
.category-card.has-bg span{color:rgba(255,255,255,.86)}
.category-hero{background-size:cover!important;background-position:center!important}
