/* ==========================
   TYPOGRAFIE – základ + nadpisy
========================== */
:root{
  --og-text: #0f172a;      /* tmavý text */
  --og-sub:  #334155;      /* sekundární text */
  --og-line: #e6ecf5;      /* linka/okraj */
}

/* Základ textu */
html { scroll-behavior: smooth; }
body {
  color: var(--og-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu,
               Cantarell, "Helvetica Neue", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  background-color: #F5F7FB;
}
/* Odstavce a drobnosti */
p { margin: 0 0 12px; color: var(--og-sub); }
.lead { font-size: clamp(16px, 1.6vw, 18px); color: #475569; }
strong, b { color: var(--og-text); font-weight: 800; }
hr { border: 0; border-top: 1px solid var(--og-line); margin: 18px 0; }

/* Nadpisy – konzistentní mezery, decentní letter-spacing */
h1, h2, h3, h4, h5, h6 {
  margin: 0 0 10px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--og-text);
  letter-spacing: -0.2px;
}

/* Velikosti přes clamp – hezky škálují mezi mobilem a desktopem */
h1 { font-size: clamp(26px, 4.2vw, 38px); }
h2 { font-size: clamp(22px, 3.0vw, 30px); }
h3 { font-size: clamp(18px, 2.2vw, 24px); }
h4 { font-size: clamp(16px, 1.9vw, 20px); font-weight: 700; }
h5 { font-size: clamp(15px, 1.7vw, 18px); font-weight: 700; }
h6 { font-size: clamp(14px, 1.5vw, 16px); font-weight: 700; letter-spacing: 0; }

/* Větší „page title“ může mít trochu víc prostoru */
.page-title { margin: 4px 0 12px; }
.page-sub   { margin: -4px 0 14px; color: var(--og-sub); }

/* Nadpis s jemnou linkou pod (volitelně přidej .with-line na h2/h3) */
.with-line { position: relative; padding-bottom: 8px; }
.with-line::after{
  content: ""; position: absolute; left: 0; bottom: 0;
  width: 56px; height: 2px; background: #1e293b; opacity: .22;
  border-radius: 2px;
}

/* Mezery za bloky (mobil jemnější) */
section + section, .lp-section + .lp-section { margin-top: 0; }
@media (max-width: 640px){
  h1, h2, h3 { margin-bottom: 8px; }
  p { margin-bottom: 10px; }
}

/* =====================================================================================
   VZHLED – světlé, široké, vzdušné
===================================================================================== */
html, body { margin:0; padding:0; background:#F5F7FB; }
.lp-container { max-width:1280px; margin:0 auto; padding:0 24px; box-sizing:border-box; }
.lp-section { padding:56px 0; }
@media (min-width: 992px){ .lp-section { padding:72px 0; } }
.lp-section:first-of-type { padding-top:0; }

/* Nadpisy a texty */
.lp-h1 { 
  font-size: clamp(26px,4vw,38px);
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.3px;
  margin: 0 0 12px;
  color: #0F172A;
}

.lp-h2 { 
  font-size: clamp(20px,2.8vw,28px);
  line-height: 1.25;
  font-weight: 500;
  margin: 0 0 12px;
  color: #0F172A;
}

.lp-p  { 
  font-size: clamp(15px,1.6vw,17px);
  line-height: 1.65;
  color: #334155;
  margin: 0 0 10px;
}

/* Jemnější strong */
.lp-p strong {
  font-weight: 600;
  color: #0F172A;
}
/* Tlačítka */
.row-cta { display:flex; gap:12px; flex-wrap:wrap; }
.lp-btn{ display:inline-flex; align-items:center; gap:10px; padding:12px 18px; border-radius:14px; font-weight:600; text-decoration:none; background:#111827; color:#fff; border:1px solid #111827; box-shadow:0 6px 18px rgba(17,24,39,.15); transition:.12s; }
.lp-btn:hover{ transform:translateY(-1px); box-shadow:0 10px 24px rgba(17,24,39,.18); }
.lp-btn.secondary{ background:#fff; color:#111827; border-color:#E2E8F0; box-shadow:0 5px 14px rgba(2,6,23,.06); }

/* =====================================================================================
   HERO + DELIVER – stejné pozadí, PŮVODNÍ padding, stejná výška bloků
===================================================================================== */
.lp-hero,
.lp-section.deliver {
  background:
    radial-gradient(1200px 500px at 90% 10%, rgba(59,130,246,.18), transparent 60%),
    radial-gradient(900px 430px at 0% 100%, rgba(16,185,129,.16), transparent 55%),
    linear-gradient(180deg, #FFFFFF 0%, #F7FAFF 100%);
  border-bottom: 1px solid #E6ECF5;
  padding: 24px 15px; /* původní padding */
}

/* top bar v hero */
.lp-hero-topbar { margin-bottom: 10px; }

/* Grid – stejné pro obě sekce, jen jiné pořadí sloupců */
.lp-hero-grid,
.deliver .lp-hero-grid{
  display: grid;
  align-items: center;
  gap: 28px;           /* původní mezera */
  margin-top: 15px;    /* původní odsazení */
}

/* HERO: text vlevo (1.1fr) + obrázek vpravo (.9fr) */
.lp-hero-grid { grid-template-columns: 1.1fr .9fr; }

/* DELIVER: obrázek vlevo (.9fr) + text vpravo (1.1fr) */
.deliver .lp-hero-grid { grid-template-columns: .9fr 1.1fr; }

/* Textové sloupce – stejné chování v obou sekcích (stejná výška jako vizuál) */
.lp-hero-copy,
.deliver .lp-hero-copy,
.lp-hero-grid > div:not(.lp-hero-visual),
.deliver .lp-hero-grid > div:not(.lp-hero-visual){
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:300px; /* stejná výška jako vizuál */
}

/* Vizuál – stejná výška v obou sekcích */
.lp-hero-visual,
.deliver .lp-hero-visual {
  position:relative;
  height:300px;       /* pevná výška – sjednoceno */
  width:100%;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  border:1px solid #E6ECF5;
  box-shadow:0 20px 50px rgba(2,6,23,.08);
}
.lp-hero-visual img,
.deliver .lp-hero-visual img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Hero lead text – stejná typografie i v deliver */
.lp-hero .lead, .deliver .lead { color:#475569; font-size:18px; font-weight:400; margin:0 0 18px; }

/* Bullets (pill) v deliver */
.deliver-bullets{ display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 6px; }
.pill{ display:inline-block; padding:6px 10px; border-radius:999px; font-size:13px; font-weight:700; background:#F8FAFF; border:1px solid #E6ECF5; color:#0F172A; }

/* Mobilní úpravy */
@media (max-width: 768px){
  .lp-hero-grid, .deliver .lp-hero-grid { grid-template-columns: 1fr; gap:24px; }
  .lp-hero-visual, .deliver .lp-hero-visual { height:220px; }
  .lp-hero-copy,
  .deliver .lp-hero-copy,
  .lp-hero-grid > div:not(.lp-hero-visual),
  .deliver .lp-hero-grid > div:not(.lp-hero-visual){ min-height:auto; }
}

/* =====================================================================================
   PROJECT TILES
===================================================================================== */
.proj { background:#FDFEFF; }
.proj-grid { display:grid; gap:18px; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); }
.proj-card { background:#fff; border:1px solid #E6ECF5; border-radius:18px; padding:18px; display:flex; flex-direction:column; box-shadow:0 12px 28px rgba(2,6,23,.04); transition:transform .12s ease, box-shadow .12s ease; }
.proj-card:hover { transform:translateY(-2px); box-shadow:0 18px 40px rgba(2,6,23,.08); }
.proj-top { display:flex; align-items:center; gap:12px; margin-bottom:8px; }
.proj-logo { width:36px; height:36px; border-radius:10px; border:1px solid #E6ECF5; background:#fff; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.proj-logo img { width:100%; height:100%; object-fit:contain; }
.proj-title { font-weight:800; color:#0F172A; font-size:18px; }
.proj-tag { margin-left:auto; font-size:12px; padding:4px 8px; border-radius:999px; background:#F8FAFF; border:1px solid #E6ECF5; color:#0F172A; font-weight:700; }
.proj-desc { color:#475569; margin:8px 0 14px; flex:1; }
.proj-cta { display:inline-flex; align-items:center; gap:8px; font-weight:800; text-decoration:none; border:1px solid #111827; background:#111827; color:#fff; border-radius:12px; padding:10px 14px; }

/* =====================================================================================
   FOOTER + zbytek (beze změn)
===================================================================================== */
.page-footer {
  
  background:
    radial-gradient(900px 300px at 80% 0%, rgba(59,130,246,.08), transparent 70%),
    radial-gradient(600px 200px at 10% 100%, rgba(16,185,129,.08), transparent 70%),
    linear-gradient(180deg, #FFFFFF 0%, #F7FAFF 100%);
  border-top: 1px solid #E6ECF5;
  padding: 64px 0 32px;
  margin-top: 0px;
  color: #111827;
  font-size: 15px;
  box-shadow: 0 -8px 30px rgba(2,6,23,.04);
}
.page-footer .container { max-width:1280px; margin:0 auto; padding:0 24px; }
.footer-title { text-transform: uppercase; font-weight:800; font-size:15px; color:#0F172A; margin-bottom:10px; letter-spacing:.3px; }
.footer-line { width:60px; height:2px; background:#1E293B; border:none; margin:6px 0 16px; opacity:.3; }
.page-footer p { color:#334155; margin:4px 0; line-height:1.7; font-size:15px; }
.page-footer a { color:#0F172A; text-decoration:none; transition: color .15s ease, opacity .15s ease; }
.page-footer a:hover { color:#1E40AF; opacity:.85; }
.footer-copyright { margin-top:48px; border-top:1px solid #E6ECF5; padding-top:16px; font-size:14px; color:#475569; text-align:center; }
@media (max-width: 768px) {
  .page-footer { padding: 48px 0 24px; margin-top: 48px; }
  .footer-line { margin-bottom: 12px; }
}

/* =====================================================================================
   TOPLISTA – čistá, fixní výška, odkazy vpravo (beze změn)
===================================================================================== */
.toplista { padding:10px 24px; border-bottom:2px solid #054B7A; background:#FFFFFF; position:relative; z-index:5; box-sizing:border-box; }
.tl-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.tl-logo{ flex-shrink:0; width:150px; height:55px; background:url(images/ogroup_logo.png) no-repeat left center / contain; cursor:pointer; }
.tl-col-user{ display:flex; align-items:center; justify-content:flex-end; flex-wrap:nowrap; gap:12px; flex:1; }
.user-brief{ display:flex; align-items:center; justify-content:flex-end; flex-wrap:nowrap; gap:12px; font-size:15px; font-weight:600; }
.user-brief a{ color:#0F172A; text-decoration:none; font-weight:600; font-size:15px; white-space:nowrap; transition:color .15s ease; }
.user-brief a:hover{ color:#1E40AF; text-decoration:underline; }
.admin-link{ color:#E11; } .orders-link{ color:#0066CC; } .account-link{ color:#333; } .logout-link{ color:#777; } .login-link{ color:#054B7A; }
@media (max-width: 640px){
  .tl-row{ flex-wrap:wrap; row-gap:8px; }
  .tl-col-user{ flex:1 1 100%; justify-content:flex-end; flex-wrap:wrap; gap:10px 12px; }
  .user-brief{ width:100%; justify-content:flex-end; flex-wrap:wrap; gap:10px 12px; }
  .user-brief a{ font-size:14px; }
}
/* =====================================================================================
   MOBIL: vždy text nahoře, obrázek pod ním
===================================================================================== */
@media (max-width: 768px) {
  .lp-hero-grid,
  .deliver .lp-hero-grid {
    grid-template-columns: 1fr;
  }

  /* 📱 Zajistí, že se pořadí vždy přehodí – text nahoře, obrázek dole */
  .lp-hero-grid .lp-hero-visual,
  .deliver .lp-hero-grid .lp-hero-visual {
    order: 2;
  }
  .lp-hero-grid .lp-hero-copy,
  .deliver .lp-hero-grid .lp-hero-copy {
    order: 1;
  }
}


/* ============================================================================
   MOBIL: bez okrajů (full-bleed), vždy text nahoře, obrázek pod ním
============================================================================ */
@media (max-width: 768px) {
  /* 1) zrušit vnější odsazení */
  .lp-container { padding-left: 0 !important; padding-right: 0 !important; }
 
 
 
}



/* =========================================================================== OBJEDNAVKY =====================================================================*/

.vertkat{
    margin-top: 0px;
    margin-left: 1%;
  	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	padding: 10px 0% 10px 0%;
    margin-bottom: 0%;
    font-size: 14px;
    width: 99%;
}
.vertkat a{
	color: Black;
	text-decoration: none;	
}
.vertkat a:hover{
	color: Black;
	text-decoration: underline;
}
.vo_head{
    width: 98%;
    margin: 0 1% 0 1%;

}

.row_dark{
	background-color: #EBEBEB;
}
.row_light{
	background-color: white;
}
.row_green{
	background-color: #D4E9A8; 
}
.row_blue{
	background-color: #AFEEEE; 
}
.row_red{
	background-color: #FFDBDB; 	
}
.row_black{
	background-color: #B2B2B2;  	
}
.row_yellow{
  background-color: #F9FCBA;
}
.fin_data_nazev{
	text-align: left;
	font-size: 14px;
	color:	White;
	background-color: #3F3F3F;
	padding: 2px 2px 2px 2px;   
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-weight: bold;
}
.fin_data_nazev a{
	color: white;	
}
.fin_data{
	text-align: left;
	font-size: 14px;
	color:	black;
	line-height: 18px;
	padding: 2px 0px 2px 2px;   
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	border-top: solid 1px white;		
}
.fin_data a{
	color: black;
	text-decoration: underline;	
}
.fin_data a:hover{
	color: red;
	text-decoration: none;	
}
.sloucitline{
    display: none;
}
.row_selected{
    background-color: #C6FFFF;
}
.laj{
    color: blue;
    text-decoration: underline;
    cursor:pointer;
}
.js-topbar{
	margin: 0;
}
.noPading{
	padding:0;
}

.obsah{
	margin: 0;
	padding: 0;
	
}

/* ==================================================================== MODALY VYPIS OBJEDNAVEK ===========================================================*/

/* ==========================
   MODERNÍ MODAL – Ogroup
   (drop-in override pro Bootstrap)
========================== */

/* backdrop: ztmavení + jemné rozmazání */
.modal-backdrop.show {
  opacity: .45 !important;
  background: #0f172a !important;
  backdrop-filter: blur(2px);
}

/* animace přechodu */
.modal.fade .modal-dialog {
  transform: translateY(-8px);
  transition: transform .18s ease, opacity .18s ease;
  opacity: 0;
}
.modal.show .modal-dialog {
  transform: translateY(0);
  opacity: 1;
}

/* velikosti (responzivně) */
.modal-small .modal-dialog   { max-width: 520px;  width: 92%; }
.modal-medium .modal-dialog  { max-width: 780px;  width: 94%; }
@media (max-width: 640px){
  .modal-small .modal-dialog,
  .modal-medium .modal-dialog { width: 96%; margin: .75rem auto; }
}

/* karta modalu */
.modal-content{
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  box-shadow: 0 18px 50px rgba(2,6,23,.18);
  overflow: hidden;
}

/* hlavička: sticky + decentní spodní linka */
.modal-header{
  padding: 14px 18px;
  border-bottom: 1px solid #eef2f7;
  position: sticky; top: 0; z-index: 1;
  background: #ffffff;
}
.modal-title{
  font-weight: 800;
  font-size: 18px;
  color: #0f172a;
  letter-spacing: .1px;
  margin: 0;
}
.modal-header .close{
  opacity: .7; font-size: 28px; line-height: 1;
  transition: opacity .15s ease, transform .1s ease;
}
.modal-header .close:hover{ opacity: 1; transform: scale(1.06); }

/* tělo */
.modal-body{
  background: linear-gradient(180deg,#fff 0%, #f9fbff 100%);
  padding: 18px;
}

/* patička */
.modal-footer{
  border-top: 1px solid #eef2f7;
  background: #fff;
  padding: 12px 18px;
  display: flex; gap: 10px; justify-content: flex-end;
}

/* formulářové prvky uvnitř modalu */
.modal-body .form-group{ margin-bottom: 12px; }
.modal-body label{
  font-weight: 700; color: #1f2937; font-size: 14px;
}
.modal-body .form-control{
  border: 1px solid #d1d5db;
  border-radius: 10px;
  font-size: 15px;
  padding: 9px 11px;
  color: #0f172a;
  background: #fff;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.modal-body .form-control:focus{
  outline: none;
  border-color: #054b7a;
  box-shadow: 0 0 0 3px rgba(5,75,122,.18);
  background: #ffffff;
}

/* chybový stav bootstrapu */
.modal-body .form-control.is-invalid{
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239,68,68,.15);
}

/* pomocné texty */
.center{ text-align:center; }
.star{ color:#ef4444; }

/* tlačítka – sjednocení s Ogroup */
.btn{
  border-radius: 10px;
  font-weight: 600;
  padding: 9px 14px;
  box-shadow: 0 6px 16px rgba(2,6,23,.08);
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
}
.btn:active{ transform: translateY(0); }

.btn-success, .btn-primary{
  background:#054b7a; border-color:#054b7a; color:#fff;
}
.btn-success:hover, .btn-primary:hover{
  background:#063b60; border-color:#063b60;
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(5,75,122,.25);
}

.btn-secondary{
  background:#f8fafc; color:#0f172a; border:1px solid #e2e8f0;
}
.btn-secondary:hover{
  background:#eef2f7; border-color:#e2e8f0; transform: translateY(-1px);
}

/* malé utility pro radio/checkbox listy v modalu (výběr adresy apod.) */
.modal-list{
  display: grid; gap: 10px;
}
.modal-list .item{
  padding: 10px 12px; border:1px solid #e5e7eb; border-radius: 10px;
  background:#fff; display:flex; align-items:center; gap:10px;
}
.modal-list .item:hover{ border-color:#cbd5e1; background:#f9fbff; }


/* ==================================================================== MODALY VYPIS OBJEDNAVEK KONEC  ===========================================================*/
/* ==================================================================== STYL STRÁNKOVÁNÍ ========================================================================= */
/* =============================
   STYL STRÁNKOVÁNÍ – Ogroup varianta
============================= */
.text {
  display: inline-block;
  margin: 12px auto;
  text-align: center;
  font-family: Arial, sans-serif;
  font-size: 15px;
  color: #1e293b;
  padding: 6px 12px;
  /*
  background: #f8fafc;
  border-radius: 10px;
  border: 1px solid #e2e8f0;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.05);
  */
  letter-spacing: 0.4px;

  }

.text span {
  margin: 0 2px;
}

.text .paspage,
.text .actpage {
  display: inline-block;
}
/* Mírnější strong/bold */
.text strong,
.text b {
  font-weight: 600; /* místo 700 nebo 800 */
  color: #0f172a;   /* o něco tmavší, ale ne tak výrazný */
}
/* běžné stránky */
.paspage a {
  color: #1e293b;
  text-decoration: none;
  padding: 5px 10px;
  border-radius: 6px;
  transition: all 0.15s ease-in-out;
  font-weight: 500;
}
.paspage a:hover {
  background: #e2e8f0;
  color: #0f172a;
}

/* aktivní stránka */
.actpage a {
  color: #fff !important;
  background: #054b7a;               /* Ogroup hlavní modrá */
  border-radius: 6px;
  padding: 5px 10px;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(5, 75, 122, 0.25);
}

/* oddělovače (| a ... ) */
.text {
  letter-spacing: 0.4px;
}

/* šipky <<< a >>> */
.paspage a[href*="actpage="] {
  font-weight: 600;
}
.paspage a[href*="actpage="]:hover {
  background: #dbeafe;
  color: #054b7a;
}

/* deaktivované šipky (pokud nejsou odkazy) */
.text span[aria-hidden="true"] {
  opacity: 0.4;
  cursor: not-allowed;
}

/* vstup a tlačítko "Go" */
.pagerValue {
  height: 36px;
  width: 60px;
  padding: 4px 6px;
  font-size: 15px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  color: #1e293b;
  text-align: center;
  transition: all 0.15s ease-in-out;
}

.pagerValue:focus {
  border-color: #054b7a;
  outline: none;
  box-shadow: 0 0 0 3px rgba(5, 75, 122, 0.2);
}

/* Tlačítko GO – Ogroup styl */
.pagerSubmit {
  height: 36px;
  padding: 0 14px;
  margin-left: 8px;
  background: #054b7a;
  color: #fff;
  border: 1px solid #054b7a;
  border-radius: 6px;
  font-weight: 600;
  font-size: 15px;
  cursor: pointer;
  transition: all 0.15s ease-in-out;
  box-shadow: 0 3px 6px rgba(5, 75, 122, 0.25);
}

.pagerSubmit:hover {
  background: #063b60;
  border-color: #063b60;
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(5, 75, 122, 0.35);
}

.pagerSubmit:active {
  background: #042e4a;
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(5, 75, 122, 0.25);
}

/* Lepší zarovnání celého bloku vpravo */
.text input,
.text button {
  vertical-align: middle;
}

/* Mobile */
@media (max-width: 640px) {
  .text {
    font-size: 14px;
    padding: 5px 8px;
    margin: 10px auto;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    line-height: 1.8;
  }

  .paspage a,
  .actpage a {
    padding: 4px 8px;
    margin: 2px 1px;
  }

  .pagerValue {
    height: 32px;
    width: 50px;
    font-size: 14px;
  }
  .pagerSubmit {
    height: 32px;
    font-size: 14px;
    padding: 0 10px;
  }
}


/* kontakt – obrázek nahoře vycentrovaný */
.contact-hero {
  display: flex;
  justify-content: center;
  margin: 6px 0 14px;
}
.contact-hero .lp-hero-visual {
  width: min(720px, 100%);
  height: auto;
}
.contact-hero .lp-hero-visual img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* blok s provozovatelem pod obrázkem */
.contact-org {
  max-width: 820px;
  margin: 0 auto 10px;
}

/* formulář pod tím v jednom sloupci */
.lp-hero-grid.one-col {
  grid-template-columns: 1fr;
  margin-top: 6px;
}

/* ============================
   KONTAKT – vše na střed (SOFT)
============================ */
.contact-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 24px;                 /* menší mezery */
  margin: 28px auto 72px;
  font-weight: 400;          /* výchozí: normální */
}

/* Obrázek */
.contact-hero {
  max-width: 900px;
  width: 100%;
}
.contact-hero img {
  width: 100%;
  height: auto;
  border-radius: 14px;
  box-shadow: 0 4px 12px rgba(2, 6, 23, 0.06);   /* jemnější stín */
}

/* Karta s provozovatelem */
.contact-org {
  background: #f9fbfd;
  border: 1px solid #e6edf5;
  border-radius: 12px;
  box-shadow: 0 3px 10px rgba(2, 6, 23, 0.05);
  padding: 28px 34px;
  max-width: 780px;
  width: 100%;
}
.contact-org h1 {
  font-size: 26px;
  font-weight: 600;          /* bylo 700/tučné → lehčí */
  letter-spacing: -0.2px;
  margin-bottom: 6px;
  color: #0f172a;
}
.contact-org .lead {
  color: #475569;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 450;          /* lehčí než 500/600 */
}
.contact-org p {
  color: #526276;            /* o chlup světlejší */
  font-size: 15px;
  margin: 5px 0;
  font-weight: 400;
}
.contact-org a {
  color: #2563eb;
  text-decoration: none;
  font-weight: 450;          /* už ne 500 */
}
.contact-org a:hover { text-decoration: underline; }

/* Formulář */
.contact-form {
  background: #fff;
  border: 1px solid #e6edf5;
  border-radius: 12px;
  box-shadow: 0 3px 10px rgba(2, 6, 23, 0.05);
  padding: 28px 34px;
  max-width: 520px;          /* trochu užší = kompaktnější */
  width: 100%;
  text-align: left;
}
.contact-form label {
  display: block;
  font-weight: 500;          /* bylo 600 */
  margin-bottom: 4px;
  color: #1f2937;
}
.contact-form .form-control {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #d2d7df;
  border-radius: 8px;
  font-size: 15px;
  color: #0f172a;
  margin-bottom: 12px;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.contact-form .form-control:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59,130,246,0.18);
  outline: none;
}
.contact-form textarea {
  resize: vertical;
  min-height: 120px;
}
.contact-form button {
  display: block;
  width: 100%;
  background: #2563eb;
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 11px 12px;
  font-weight: 600;          /* bylo 700 */
  font-size: 15px;
  cursor: pointer;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
  box-shadow: 0 4px 10px rgba(37, 99, 235, 0.25);
}
.contact-form button:hover {
  background: #1d4ed8;
  transform: translateY(-1px);
}

/* notifikace */
.success-msg {
  background: #eaf9f0;              /* měkčí zelená */
  border: 1px solid #b8e7c8;
  padding: 14px;
  border-radius: 10px;
  color: #0f5132;
  max-width: 520px;
  text-align: center;
  font-weight: 450;
}
.contact-wrap strong { font-weight: 600; }  /* místo default 700 */
/* Mobile */
@media (max-width: 640px) {
  .contact-org, .contact-form { padding: 20px; }
  .contact-org h1 { font-size: 22px; }
}



.icon-kolonial_minus:before{
	content:"-";
    padding:5px;
}
.icon-kolonial_plus:before{
	content:"+";
    padding:5px;
}
.load_plus{
	background-color: #33B871;
	transition: 1000ms linear;
}
.load_minus{
	background-color: #F51E2F;
	transition: 1000ms linear;
}
.done{
	background-color: #FFFFFF;
}
