/*
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); }

/* ── Blog: profesjonalne karty (moduł Divi Blog) ──────────────── */
.host247-blog .et_pb_ajax_pagination_container{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:980px){.host247-blog .et_pb_ajax_pagination_container{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.host247-blog .et_pb_ajax_pagination_container{grid-template-columns:1fr}}
.host247-blog .et_pb_post{background:#fff;border:1px solid var(--h247-line);border-radius:18px;overflow:hidden;margin:0!important;padding:0!important;display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease, border-color .2s;border-bottom:1px solid var(--h247-line)!important}
.host247-blog .et_pb_post:hover{transform:translateY(-5px);box-shadow:0 26px 54px -30px rgba(13,27,42,.34);border-color:rgba(16,162,221,.35)}
.host247-blog .et_pb_image_container,.host247-blog .entry-featured-image-url{margin:0!important;display:block;overflow:hidden}
.host247-blog .entry-featured-image-url img,.host247-blog .et_pb_image_container img{width:100%;height:210px;object-fit:cover;display:block;transition:transform .4s ease}
.host247-blog .et_pb_post:hover .entry-featured-image-url img{transform:scale(1.05)}
.host247-blog .et_pb_post .post-meta{padding:18px 22px 0;font-size:12.5px;color:var(--h247-muted);font-family:var(--h247-fb)}
.host247-blog .et_pb_post .post-meta a{color:var(--h247-brand-strong);font-weight:600}
.host247-blog .et_pb_post h2.entry-title,.host247-blog .et_pb_post .entry-title{font-family:var(--h247-fh)!important;font-weight:700;font-size:19px;line-height:1.3;padding:10px 22px 0;margin:0}
.host247-blog .et_pb_post h2.entry-title a{color:var(--h247-ink)}
.host247-blog .et_pb_post h2.entry-title a:hover{color:var(--h247-brand)}
.host247-blog .et_pb_post .post-content{padding:10px 22px 0;color:var(--h247-muted);font-size:14.5px;flex:1}
.host247-blog .et_pb_post .post-content .more-link{display:inline-block;margin:14px 0 22px;font-family:var(--h247-fh);font-weight:600;font-size:14px;color:#fff;background:var(--h247-brand);padding:9px 18px;border-radius:999px;text-decoration:none}
.host247-blog .et_pb_post .post-content .more-link:hover{background:var(--h247-brand-strong)}
.host247-blog .pagination{margin-top:30px}
.host247-blog .pagination a,.host247-blog .pagination span{font-family:var(--h247-fh)}

/* ── Blog: wyróżniony wpis (fullwidth) ────────────────────────── */
.host247-blog-feat .et_pb_post{background:#fff;border:1px solid var(--h247-line);border-radius:20px;overflow:hidden;padding:0!important;box-shadow:0 20px 50px -30px rgba(13,27,42,.28)}
.host247-blog-feat .et_pb_post .entry-featured-image-url img{width:100%;max-height:380px;object-fit:cover;border-radius:0}
.host247-blog-feat .et_pb_post .post-meta{padding:22px 30px 0;color:var(--h247-muted);font-size:13px}
.host247-blog-feat .et_pb_post .post-meta a{color:var(--h247-brand-strong);font-weight:600}
.host247-blog-feat .et_pb_post .entry-title{font-family:var(--h247-fh)!important;font-weight:800;font-size:28px;padding:10px 30px 0;line-height:1.2}
.host247-blog-feat .et_pb_post .entry-title a{color:var(--h247-ink)}
.host247-blog-feat .et_pb_post .entry-title a:hover{color:var(--h247-brand)}
.host247-blog-feat .et_pb_post .post-content{padding:12px 30px 8px;color:var(--h247-muted);font-size:15.5px;max-width:72ch}
.host247-blog-feat .et_pb_post .more-link{display:inline-block;margin:6px 30px 26px;font-family:var(--h247-fh);font-weight:600;font-size:14px;color:#fff;background:var(--h247-brand);padding:11px 22px;border-radius:999px;text-decoration:none}
.host247-blog-feat .et_pb_post .more-link:hover{background:var(--h247-brand-strong)}

/* ── Pasek udostępniania (wpis) ───────────────────────────────── */
.h247share{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:var(--h247-fh)}
.h247share .lab{font-weight:700;font-size:14px;color:var(--h247-ink)}
.h247share a,.h247share button{width:42px;height:42px;border-radius:12px;border:1px solid var(--h247-line);background:#fff;display:grid;place-items:center;color:var(--h247-ink);cursor:pointer;transition:.15s;text-decoration:none}
.h247share a:hover,.h247share button:hover{background:var(--h247-brand);border-color:var(--h247-brand);color:#fff}
.h247share svg{width:18px;height:18px}

/* ── Szablon wpisu PREMIUM (Theme Builder: Post Body) ──────────── */
#h247-progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:99999;background:linear-gradient(90deg,var(--h247-brand),#46e0c0);transition:width .08s linear}
.host247-posthero{background:radial-gradient(900px 420px at 80% -20%, color-mix(in srgb,var(--h247-brand) 16%, transparent) 0%, transparent 60%), linear-gradient(180deg,#ffffff,#eaf7fd)!important}
.host247-cats .et_pb_title_meta_container{margin:0;display:flex;justify-content:center;gap:8px}
.host247-cats a{display:inline-block;background:var(--h247-brand-soft);color:var(--h247-brand-strong);font-family:var(--h247-fh)!important;font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:999px;text-decoration:none;border:1px solid rgba(16,162,221,.3)}
.host247-cats a:hover{background:var(--h247-brand);color:#fff}
.host247-byline .et_pb_title_meta_container{color:var(--h247-muted);font-size:14.5px;font-family:var(--h247-fb)}
.host247-byline .et_pb_title_meta_container a{color:var(--h247-ink);font-weight:700}
.host247-byline .h247-rt{color:var(--h247-brand-strong);font-weight:600}
.host247-cover .et_pb_image_wrap,.host247-cover{box-shadow:0 30px 60px -32px rgba(13,27,42,.42)}
.host247-article .et_pb_post_content{color:#2b3947}
.host247-article .et_pb_post_content>p:first-of-type::first-letter{font-family:var(--h247-fh);font-weight:800;font-size:62px;line-height:.78;float:left;margin:8px 14px 0 0;color:var(--h247-brand)}
.host247-article .et_pb_post_content h2{font-family:var(--h247-fh)!important;font-weight:800;font-size:29px;margin:38px 0 12px;letter-spacing:-.02em;color:var(--h247-ink)}
.host247-article .et_pb_post_content h3{font-family:var(--h247-fh)!important;font-weight:700;font-size:21px;margin:28px 0 10px;color:var(--h247-brand-strong)}
.host247-article .et_pb_post_content p{margin:17px 0}
.host247-article .et_pb_post_content img{border-radius:16px}
.host247-article .et_pb_post_content blockquote{border:0;position:relative;background:linear-gradient(135deg,#0d1b2a,#0b6f9c);color:#fff;border-radius:18px;padding:30px 32px 30px 64px;margin:30px 0;font-family:var(--h247-fh);font-weight:600;font-size:20px;line-height:1.5}
.host247-article .et_pb_post_content blockquote:before{content:"\201C";position:absolute;left:22px;top:14px;font-family:Georgia,serif;font-size:60px;line-height:1;color:rgba(255,255,255,.5)}
.host247-article .et_pb_post_content blockquote p{margin:0;color:#fff}
.host247-article .et_pb_post_content ul,.host247-article .et_pb_post_content ol{margin:16px 0;padding-left:8px;list-style:none}
.host247-article .et_pb_post_content ul li{position:relative;padding-left:30px;margin:10px 0}
.host247-article .et_pb_post_content ul li:before{content:"";position:absolute;left:0;top:9px;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")}
.host247-article .et_pb_post_content ol{counter-reset:h247c;padding-left:8px}
.host247-article .et_pb_post_content ol li{counter-increment:h247c;position:relative;padding-left:34px;margin:10px 0}
.host247-article .et_pb_post_content ol li:before{content:counter(h247c);position:absolute;left:0;top:1px;width:24px;height:24px;background:var(--h247-brand-soft);color:var(--h247-brand-strong);border-radius:50%;font-family:var(--h247-fh);font-weight:700;font-size:12px;display:grid;place-items:center}
.host247-article .et_pb_post_content a{color:var(--h247-brand-strong);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.host247-article .et_pb_post_content figure{margin:24px 0}
/* powiązane wpisy — czyste karty BEZ meta (miniatura + tytuł) */
.host247-related .et_pb_ajax_pagination_container{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.host247-related .et_pb_ajax_pagination_container{grid-template-columns:1fr}}
.host247-related .et_pb_post{background:#fff;border:1px solid var(--h247-line);border-radius:18px;overflow:hidden;margin:0!important;padding:0!important;transition:transform .2s, box-shadow .2s, border-color .2s}
.host247-related .et_pb_post:hover{transform:translateY(-5px);box-shadow:0 26px 54px -30px rgba(13,27,42,.34);border-color:rgba(16,162,221,.35)}
.host247-related .et_pb_post .post-meta,.host247-related .et_pb_post .post-content{display:none!important}
.host247-related .et_pb_post .entry-featured-image-url img{width:100%;height:180px;object-fit:cover;display:block;transition:transform .4s}
.host247-related .et_pb_post:hover .entry-featured-image-url img{transform:scale(1.06)}
.host247-related .et_pb_post .entry-title{font-family:var(--h247-fh)!important;font-weight:700;font-size:17px;line-height:1.35;padding:16px 20px 20px;margin:0}
.host247-related .et_pb_post .entry-title a{color:var(--h247-ink);text-decoration:none}
.host247-related .et_pb_post .entry-title 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; }
}
