/*
Theme Name: Host247 Child (Divi 5)
Theme URI: https://www.host247.pl
Description: Child theme Divi 5 dla Host247.pl — marka, fonty (Sora + Plus Jakarta Sans), responsywne style uzupełniające layouty z modułów Divi.
Author: WOH GROUP LTD / Host247.pl
Author URI: https://www.host247.pl
Template: Divi
Version: 1.0.0
Text Domain: host247-child
*/

/* ── Tokeny marki ─────────────────────────────────────────────── */
:root{
  --h247-brand:#10a2dd;
  --h247-brand-strong:#0b82b4;
  --h247-brand-soft:#eaf7fd;
  --h247-ink:#0d1b2a;
  --h247-muted:#5b6b7d;
  --h247-line:#e4ecf3;
}

/* ── Typografia (uzupełnia ustawienia modułów Divi) ───────────── */
body,
.et_pb_text, .et_pb_blurb_description, p, li, .et_pb_button{
  font-family:'Plus Jakarta Sans', -apple-system, "Segoe UI", Roboto, sans-serif;
}
h1,h2,h3,h4,h5,h6,
.et_pb_module_header,
.et_pb_promo_title,
.et_pb_pricing_heading h2,
.et_pb_pricing-title{
  font-family:'Sora', sans-serif !important;
  letter-spacing:-.02em;
}
body{ color:var(--h247-ink); }

/* ── Przyciski w stylu marki (pill) ───────────────────────────── */
.et_pb_button{
  border-radius:999px !important;
  font-weight:600 !important;
  font-family:'Sora', sans-serif !important;
  letter-spacing:0 !important;
  transition:transform .15s ease, box-shadow .2s ease, background-color .2s ease !important;
}
.et_pb_button:hover{ transform:translateY(-2px); }
/* domyślny brandowy przycisk, jeśli moduł nie ustawił własnych kolorów */
.host247-btn-primary.et_pb_button{
  background-color:var(--h247-brand) !important;
  color:#fff !important;
  border:0 !important;
  padding:.85em 1.7em !important;
  box-shadow:0 14px 30px -12px rgba(16,162,221,.6);
}
.host247-btn-primary.et_pb_button:hover{ background-color:var(--h247-brand-strong) !important; }
.host247-btn-ghost.et_pb_button{
  background:transparent !important;
  color:var(--h247-ink) !important;
  border:1px solid var(--h247-line) !important;
  padding:.85em 1.7em !important;
}

/* ── Karty cen Divi w stylu Host247 ───────────────────────────── */
.et_pb_pricing_table{
  border-radius:18px !important;
  border:1px solid var(--h247-line) !important;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease;
}
.et_pb_pricing_table:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 50px -28px rgba(13,27,42,.30);
}
.et_pb_pricing_heading{ background:var(--h247-brand-soft) !important; }
.et_pb_pricing_table .et_pb_et_price{ color:var(--h247-brand-strong) !important; font-family:'Sora',sans-serif; }
.et_pb_best_value{ background:var(--h247-brand) !important; }
.et_pb_pricing_table_button.et_pb_button{
  background-color:var(--h247-brand) !important; color:#fff !important; border:0 !important;
}

/* ── Blurby (funkcje) ─────────────────────────────────────────── */
.et_pb_blurb{ }
.et_pb_blurb .et_pb_main_blurb_image .et-pb-icon{ color:var(--h247-brand) !important; }
.host247-feature .et_pb_blurb_content{
  background:#fff; border:1px solid var(--h247-line); border-radius:16px; padding:26px;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  height:100%;
}
.host247-feature .et_pb_blurb_content:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px -22px rgba(13,27,42,.2);
  border-color:color-mix(in srgb, var(--h247-brand) 35%, var(--h247-line));
}

/* ── Nagłówek (Theme Builder) ─────────────────────────────────── */
.host247-topbar .et_pb_row{ display:flex; align-items:center; }
.host247-header .et_pb_row{ display:flex; align-items:center; flex-wrap:nowrap; }
.host247-header .et_pb_column{ margin-bottom:0 !important; display:flex; align-items:center; }
.host247-headcta{ justify-content:flex-end; gap:10px; }
.host247-headcta .et_pb_button{ margin:0 0 0 10px !important; }
.host247-topbar{ background:var(--h247-ink); }
.host247-topbar, .host247-topbar a, .host247-topbar .et_pb_text_inner{ color:#cfe0ee !important; font-size:13px; }
.host247-header{ background:#fff; box-shadow:0 1px 0 rgba(13,27,42,.06); }
.host247-header .et_pb_menu .et-menu a{ font-family:'Sora',sans-serif; font-weight:500; color:var(--h247-ink); }
.host247-header .et_pb_menu .et-menu a:hover{ color:var(--h247-brand); }

/* ── Stopka (Theme Builder) ───────────────────────────────────── */
.host247-footer{ background:var(--h247-ink); }
.host247-footer, .host247-footer .et_pb_text_inner, .host247-footer h4, .host247-footer a{ color:#a9bccd; }
.host247-footer h4{ color:#fff !important; font-family:'Sora',sans-serif; font-size:13px; letter-spacing:.1em; text-transform:uppercase; }
.host247-footer a:hover{ color:#fff; }

/* ── Sekcje ───────────────────────────────────────────────────── */
.host247-soft{ background:var(--h247-brand-soft); }
.host247-hero{ background:
  radial-gradient(1000px 480px at 80% -10%, var(--h247-brand-soft) 0%, transparent 60%),
  linear-gradient(180deg,#fff 0%, var(--h247-brand-soft) 100%); }

/* ═══════════════ WIERNOŚĆ MAKIETY — strona główna ═══════════════ */
/* Sekcje: rytm odstępów jak w makiecie */
.et_pb_section{ padding:80px 0; }
.host247-hero{ padding-top:70px !important; }

/* Hero: typografia i lede */
.host247-hero h1{ font-family:'Sora',sans-serif !important; font-weight:800 !important; color:var(--h247-ink) !important; letter-spacing:-.03em; }
.host247-hero .et_pb_text p{ color:var(--h247-muted); }
.host247-hero .et_pb_image .et_pb_image_wrap{ border-radius:24px; overflow:hidden; box-shadow:0 30px 60px -22px rgba(13,27,42,.30); }

/* Nagłówki sekcji wyśrodkowane */
.et_pb_text h2{ font-family:'Sora',sans-serif !important; font-weight:800 !important; letter-spacing:-.025em; color:var(--h247-ink); }

/* ── KARTY CEN — wygląd jak makieta ──────────────────────────── */
.et_pb_pricing_tables{ display:flex; flex-wrap:wrap; gap:18px; justify-content:center; }
.et_pb_pricing_tables .et_pb_pricing_table{
  background:#fff !important; flex:0 0 calc(50% - 9px); max-width:calc(50% - 9px); margin:0 !important;
  display:flex; flex-direction:column; padding-bottom:8px;
}
@media (max-width:767px){
  .et_pb_pricing_tables .et_pb_pricing_table{ flex:0 0 100%; max-width:100%; }
}
.et_pb_pricing_heading{
  background:#fff !important; border-bottom:1px solid var(--h247-line); padding:24px 24px 8px !important; text-align:left;
}
.et_pb_pricing_heading .et_pb_pricing_title,
.et_pb_pricing_heading h2,
.et_pb_pricing_heading h3{ font-family:'Sora',sans-serif !important; font-weight:700 !important; font-size:20px !important; color:var(--h247-ink) !important; }
.et_pb_pricing_content_top{ background:#fff !important; border:0 !important; padding:18px 24px 6px !important; text-align:left; }
.et_pb_pricing_content_top .et_pb_et_price{ font-family:'Sora',sans-serif !important; font-weight:800 !important; font-size:40px !important; color:var(--h247-ink) !important; }
.et_pb_pricing_content_top .et_pb_dollar_sign,
.et_pb_pricing_content_top .et_pb_frequency{ color:var(--h247-muted) !important; font-size:15px !important; }
.et_pb_pricing_content{ padding:8px 24px 18px !important; text-align:left; }
.et_pb_pricing_content li{ border:0 !important; padding:7px 0 !important; color:var(--h247-ink); position:relative; padding-left:26px !important; list-style:none; }
.et_pb_pricing_content li:before{
  content:""; position:absolute; left:0; top:11px; width:16px; height:16px;
  background:var(--h247-brand);
  -webkit-mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
  mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
.et_pb_pricing_table_button{ margin:auto 24px 18px !important; display:block !important; border-radius:999px !important; }
/* wyróżniony pakiet */
.et_pb_pricing_table_featured{ outline:2px solid var(--h247-brand); outline-offset:-2px; box-shadow:0 30px 60px -22px rgba(16,162,221,.45) !important; }
.et_pb_pricing_table_featured .et_pb_best_value{ background:var(--h247-brand) !important; color:#fff !important; font-family:'Sora',sans-serif; font-weight:700; border-radius:999px; display:inline-block; padding:5px 12px; margin:14px 24px 0; }

/* ── KAFELKI FUNKCJI (Blurb) — ikona w „chipie" ──────────────── */
.host247-feature .et_pb_main_blurb_image{ margin-bottom:16px; }
.host247-feature .et_pb_main_blurb_image .et-pb-icon{
  width:54px !important; height:54px !important; line-height:54px !important; font-size:24px !important;
  background:var(--h247-brand-soft); border-radius:14px; color:var(--h247-brand-strong) !important;
}
.host247-feature .et_pb_module_header{ font-size:18px !important; }
.host247-feature .et_pb_blurb_description{ color:var(--h247-muted); font-size:14.5px; }

/* ── RESPONSYWNOŚĆ (uzupełnienie ustawień modułów) ────────────── */
@media (max-width:980px){
  .host247-topbar{ display:none !important; }
  .host247-hero .et_pb_column{ width:100% !important; }
}
@media (max-width:767px){
  h1, .et_pb_module_header{ font-size:30px !important; line-height:1.15 !important; }
  .et_pb_button{ width:100%; text-align:center; }
  .et_pb_pricing_table{ margin-bottom:16px; }
  .et_pb_section{ padding:42px 0 !important; }
}
