/*
Theme Name: Divi Child
Theme URI: http://www.elegantthemes.com/gallery/divi/
Template: Divi5
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Version: 5.0.0-public-beta.9.1.1778582696
Updated: 2026-05-12 12:44:56
*/

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700;800;900&family=Inter:wght@300;400;500;600&display=swap');

:root {
  --bg-deep:   #0d1323;
  --bg-card:   rgba(22, 30, 50, 0.85);
  --bg-card-solid: #141e32;
  --border:    rgba(255,255,255,0.10);
  --border-hover: rgba(255,255,255,0.25);
  --text-main:  #f1f5f9;
  --text-muted: #94a3b8;
  --text-faint: #4b5563;
  --blue:       #00B0F0;
  --blue-glow:  rgba(0,176,240,0.30);
  --blue-dark:  #0077b6;
  --gold:       #D4A843;
  --gold-glow:  rgba(212,168,67,0.30);
  --radius-sm: 8px; --radius-md: 14px; --radius-lg: 22px; --radius-xl: 32px;
  --space-1: 0.25rem; --space-2: 0.5rem; --space-3: 0.75rem; --space-4: 1rem; --space-6: 1.5rem;
  --space-8: 2rem; --space-10: 2.5rem; --space-12: 3rem; --space-16: 4rem; --space-20: 5rem;
  --text-xs:   clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm:   clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
  --text-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --text-lg:   clamp(1.125rem, 1rem + 0.75vw, 1.5rem);
  --text-xl:   clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);
  --text-2xl:  clamp(2rem, 1.2rem + 2.5vw, 3.5rem);
  --text-3xl:  clamp(2.5rem, 1rem + 4vw, 5rem);
  --text-hero: clamp(3rem, 0.5rem + 7vw, 8rem);
  --font-display: 'Outfit', sans-serif !important;
  --font-body:    'Inter', sans-serif !important;
  --transition: 200ms cubic-bezier(0.16, 1, 0.3, 1);
  --shadow-card: 0 4px 24px rgba(0,0,0,0.35);
  --shadow-blue: 0 12px 40px var(--blue-glow);
  --shadow-gold: 0 12px 40px var(--gold-glow);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; -webkit-font-smoothing: antialiased; }

/* === OPRAVA DIVI POZADÍ A BAREV === */


body { 
  font-family: var(--font-body); 
  font-size: var(--text-base); 
  line-height: 1.7; 
  min-height: 100dvh; 
  position: relative; 
  overflow-x: hidden; 
}

img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; background: none; border: none; font: inherit; color: inherit; }
ul { list-style: none; padding: 0; }
h1,h2,h3,h4,h5 { font-family: var(--font-display); line-height: 1.15; text-wrap: balance; }

/* Komponenty společné pro celý web */
.site-wrap { position: relative; z-index: 1; }
.container { max-width: 1300px; margin-inline: auto; padding-inline: clamp(var(--space-4), 5%, var(--space-12)); }
.section { padding: clamp(var(--space-12),8vw,var(--space-20)) 0; }
.section-label { font-size: var(--text-xs); font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--text-faint); margin-bottom: var(--space-3); }
.section-title { font-size: var(--text-2xl); font-weight: 800; letter-spacing: -1px; margin-bottom: var(--space-4); color: #fff; }
.section-desc { font-size: var(--text-base); color: var(--text-muted); max-width: 580px; margin-bottom: var(--space-10); }
.section-header-center { text-align: center; }
.section-header-center .section-desc { margin-inline: auto; }

/* Tlačítka */
.btn { display: inline-block; font-size: var(--text-sm); font-weight: 600; padding: 14px 30px; border-radius: var(--radius-md); transition: all var(--transition); text-align: center; }
.btn-primary { background: var(--blue); color: #fff; border: 1px solid transparent; }
.btn-primary:hover { box-shadow: var(--shadow-blue); transform: translateY(-2px); }
.btn-gold { background: var(--gold); color: #000; border: 1px solid transparent; }
.btn-gold:hover { box-shadow: var(--shadow-gold); transform: translateY(-2px); }
.btn-outline { background: transparent; color: var(--text-main); border: 1px solid var(--border-hover); }
.btn-outline:hover { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.4); }
.btn-sm { padding: 10px 22px; font-size: var(--text-xs); }

/* Karty */
.card { background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: var(--space-8); transition: border-color var(--transition), box-shadow var(--transition); }
.card:hover { border-color: var(--border-hover); }
.card-blue { box-shadow: var(--shadow-blue); border-top: 2px solid var(--blue); }
.card-gold { box-shadow: var(--shadow-gold); border-top: 2px solid var(--gold); } /* PŘIDÁNA ZLATÁ KARTA */
.card-title { font-size: var(--text-xl); margin-bottom: var(--space-4); color: #fff; font-weight: 800 !important; }
.bento { display: grid; grid-template-columns: repeat(12,1fr); gap: 24px; }
.col-7  { grid-column: span 7; }
.col-6  { grid-column: span 6; } /* PŘIDÁN SLOUPEC 6 (pro Rozsah nástroje) */
.col-5  { grid-column: span 5; }
@media (max-width: 1024px) { .col-7,.col-6,.col-5 { grid-column: span 12; } }

/* Globální orbs na pozadí */
.bg-orbs { position: fixed; inset: 0; pointer-events: none; z-index: 0; overflow: hidden; }
.orb { position: absolute; border-radius: 50%; filter: blur(120px); opacity: 0.45; }
.orb-blue { top: -15%; left: -10%; width: 55vw; height: 55vw; background: var(--blue-glow); animation: float 12s ease-in-out infinite alternate; }
.orb-gold { bottom: -10%; right: -10%; width: 60vw; height: 60vw; background: var(--gold-glow); animation: float 15s ease-in-out infinite alternate-reverse; }
@keyframes float { to { transform: translateY(60px) scale(1.08); } }
@media (prefers-reduced-motion: reduce) { .orb { animation: none; } }

/* Scroll Reveal */
.reveal { opacity: 1; }
@supports (animation-timeline: scroll()) {
  .reveal { opacity: 0; animation: fade-in linear both; animation-timeline: view(); animation-range: entry 0% entry 60%; }
}
@keyframes fade-in { to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .reveal { opacity: 1 !important; animation: none !important; } }

/* === GLOBÁLNÍ HERO SEKCE PRO PODSTRÁNKY === */
.page-hero { 
  padding: clamp(var(--space-12),8vw,var(--space-20)) 0 var(--space-12); 
}
.page-hero-inner { 
  max-width: 700px; 
}
.page-hero h1 { 
  font-size: var(--text-2xl); 
  font-weight: 900; 
  letter-spacing: -1.5px; 
  margin-bottom: var(--space-4); 
  color: #fff; /* Výchozí barva */
}

/* Zlatá varianta nadpisu */
.page-hero.gold h1 {
  color: var(--gold);
}

/* Modrý štítek (výchozí) */
.hero-eyebrow { 
  display: inline-block; 
  font-size: var(--text-xs); 
  font-weight: 700; 
  letter-spacing: 2px; 
  text-transform: uppercase; 
  color: var(--blue); 
  background: rgba(0,176,240,0.10); 
  border: 1px solid rgba(0,176,240,0.25); 
  border-radius: var(--radius-xl); 
  padding: 6px 18px; 
  margin-bottom: var(--space-6); 
}

/* Zlatý štítek */
.hero-eyebrow.gold {
  color: var(--gold); 
  background: rgba(212,168,67,0.10); 
  border-color: rgba(212,168,67,0.25); 
}