/*
Theme Name: Best Gamdroid Modern
Theme URI: https://best.gamdroid.eu
Description: Modern, conversion-focused child theme for the Best Gamdroid free business directory. Built on Twenty Twenty-One.
Author: Holik Studios Media Group
Template: twentytwentyone
Version: 1.0.0
*/

/* ---------- design tokens ---------- */
:root{
  --bgd-primary:#2f4bff;
  --bgd-primary-dark:#1e37d6;
  --bgd-accent:#ff8a00;
  --bgd-ink:#0f172a;
  --bgd-muted:#5b6b84;
  --bgd-line:#e6eaf2;
  --bgd-bg:#f5f7fb;
  --bgd-white:#ffffff;
  --bgd-radius:16px;
  --bgd-radius-sm:10px;
  --bgd-shadow:0 14px 40px rgba(15,23,42,.10);
  --bgd-shadow-sm:0 6px 18px rgba(15,23,42,.07);
  --bgd-wrap:1240px;
}

/* override Twenty Twenty-One globals */
:root, body{
  --global--color-primary:#0f172a;
  --global--color-secondary:#2f4bff;
  --global--color-background:#ffffff;
  --global--font-primary:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --global--font-secondary:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --global--spacing-horizontal:24px;
  --global--spacing-vertical:24px;
}

html{scroll-behavior:smooth;}
body{
  font-family:var(--global--font-primary);
  color:var(--bgd-ink);
  background:var(--bgd-white);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,h5,h6,.entry-title{
  font-family:var(--global--font-primary);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.15;
  color:var(--bgd-ink);
}
h1.entry-title, .page-title{font-weight:900;}
a{color:var(--bgd-primary);text-decoration:none;}
a:hover,a:focus{color:var(--bgd-primary-dark);text-decoration:underline;text-underline-offset:3px;}
img{max-width:100%;height:auto;}
.wp-block-group,.entry-content>*{max-width:100%;}

/* ---------- header ---------- */
.site-header{
  background:var(--bgd-white);
  border-bottom:1px solid var(--bgd-line);
  position:sticky;top:0;z-index:50;
  box-shadow:0 2px 12px rgba(15,23,42,.04);
  padding-top:10px;padding-bottom:10px;
}
.site-header .site-branding{gap:10px;}
.site-title{font-size:1.35rem !important;font-weight:900 !important;letter-spacing:-.03em;}
.site-title a{color:var(--bgd-ink);text-decoration:none;}
.site-description{color:var(--bgd-muted);font-size:.85rem;}
.main-navigation a{
  font-weight:600;color:var(--bgd-ink);text-decoration:none;
  padding:8px 12px;border-radius:999px;
}
.main-navigation a:hover{background:var(--bgd-bg);color:var(--bgd-primary);}
.bgd-cta a, .main-navigation .bgd-cta a{
  background:var(--bgd-primary) !important;color:#fff !important;
  font-weight:700;padding:10px 18px !important;border-radius:999px;
  box-shadow:var(--bgd-shadow-sm);
}
.bgd-cta a:hover{background:var(--bgd-primary-dark) !important;color:#fff !important;}

/* ---------- buttons (global) ---------- */
.wp-block-button__link, .wp-block-button .wp-block-button__link,
button, input[type="submit"], .wpbdp-button, .wpbdp-submit-listing-link{
  border-radius:999px;
  font-weight:700;
}
.wp-block-button__link{
  background:var(--bgd-primary);color:#fff;padding:14px 26px;
  box-shadow:var(--bgd-shadow-sm);transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.wp-block-button__link:hover{background:var(--bgd-primary-dark);color:#fff;transform:translateY(-2px);box-shadow:var(--bgd-shadow);}
.wp-block-button.is-style-outline .wp-block-button__link{border:2px solid var(--bgd-primary);color:var(--bgd-primary);background:transparent;}

/* ---------- containers / wide layout ---------- */
.bgd-container{max-width:var(--bgd-wrap);margin:0 auto;padding:0 24px;}
.bgd .site-main,
.bgd .content-area,
.bgd #primary{max-width:100% !important;width:100%;}

/* full-width hero on home, but inner content stays at the same 1240 grid as header/footer */
body.home .entry-content{max-width:100% !important;width:100%;padding-left:0;padding-right:0;}
body[class*="wpbdp-view-"] .entry-content,
body.tax-wpbdp_category .entry-content,
body.single-wpbdp_listing .entry-content{max-width:1240px !important;margin-left:auto;margin-right:auto;}
body.home .entry-content > *,
body[class*="wpbdp-view-"] .entry-content > *,
body.tax-wpbdp_category .entry-content > *,
body.single-wpbdp_listing .entry-content > *{max-width:100% !important;}

/* category intro = full-bleed band like the home hero */
.bgd-cat-intro{width:100vw !important;max-width:100vw !important;margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;box-sizing:border-box;}

/* keep listing lists at a comfortable width */
.wpbdp-listings-list, .wpbdp-listing-list, .wpbdp-listing-excerpts, .wpbdp-listings{max-width:1000px;margin-left:auto;margin-right:auto;}

/* keep the plugin search box and forms at a sensible width */
.wpbdp-main-box, .wpbdp-search-form, #wpbdp-search-form{max-width:1000px;margin-left:auto;margin-right:auto;}
.wpbdp-submit-listing-page, #wpbdp-submit-listing, .wpbdp-listing-form, .wpbdp-page form.bdp-form{max-width:900px;margin-left:auto;margin-right:auto;}

/* regular content pages: comfortable centered column */
.bgd .entry-content > *{max-width:1100px;margin-left:auto;margin-right:auto;}

/* long form articles readable */
body.single-post .entry-content{max-width:780px !important;margin-left:auto;margin-right:auto;}
body.single-post .entry-content > *{max-width:100%;}

/* ---------- HERO ---------- */
.bgd-hero{
  position:relative;
  background:linear-gradient(135deg,#1e2a63 0%, #2f4bff 45%, #6d8bff 100%);
  color:#fff;
  padding:64px 20px 76px;
  margin:0 0 8px;
  overflow:hidden;
}
.bgd-hero:after{
  content:"";position:absolute;inset:auto -10% -60% auto;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.35), transparent 60%);
  filter:blur(10px);pointer-events:none;
}
.bgd-hero__inner{max-width:900px;margin:0 auto;text-align:center;position:relative;z-index:2;}
.bgd-hero__eyebrow{
  display:inline-block;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;
  background:rgba(255,255,255,.16);padding:7px 14px;border-radius:999px;margin-bottom:18px;
}
.bgd-hero__title{font-size:clamp(2rem,5vw,3.4rem);font-weight:900;color:#fff;margin:0 0 14px;letter-spacing:-.03em;}
.bgd-hero__sub{font-size:clamp(1rem,2.2vw,1.25rem);color:rgba(255,255,255,.9);max-width:640px;margin:0 auto 30px;}
.bgd-search{
  display:flex;gap:10px;background:#fff;border-radius:999px;padding:8px;max-width:680px;margin:0 auto 26px;
  box-shadow:var(--bgd-shadow);
}
.bgd-search input[type="text"]{
  flex:1;border:0;outline:0;padding:14px 20px;font-size:1rem;border-radius:999px;color:var(--bgd-ink);background:transparent;min-width:0;
}
.bgd-search button{
  border:0;background:var(--bgd-primary);color:#fff;font-weight:700;padding:14px 28px;border-radius:999px;cursor:pointer;
}
.bgd-search button:hover{background:var(--bgd-primary-dark);}
.bgd-hero__cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.bgd-btn{
  display:inline-block;font-weight:700;padding:14px 26px;border-radius:999px;text-decoration:none !important;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.bgd-btn--primary{background:var(--bgd-accent);color:#1b1300 !important;box-shadow:var(--bgd-shadow);}
.bgd-btn--primary:hover{transform:translateY(-2px);background:#ff9f2e;}
.bgd-btn--ghost{background:rgba(255,255,255,.14);color:#fff !important;border:1.5px solid rgba(255,255,255,.55);}
.bgd-btn--ghost:hover{background:rgba(255,255,255,.24);}

/* ---------- trust strip ---------- */
.bgd-strip{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;padding:22px 20px;color:var(--bgd-muted);font-weight:600;font-size:.95rem;}
.bgd-strip span{display:inline-flex;align-items:center;gap:8px;}

/* ---------- directory tuning ---------- */
.wpbdp-main-box, .wpbdp-search-form, #wpbdp-search-form{
  background:var(--bgd-bg) !important;border:1px solid var(--bgd-line) !important;border-radius:var(--bgd-radius) !important;padding:20px !important;
}
.wpbdp-listing, .wpbdp-listings-list .wpbdp-listing, .listing-item, .wpbdp-listing-excerpt{
  background:#fff !important;border:1px solid var(--bgd-line) !important;border-radius:var(--bgd-radius) !important;
  box-shadow:var(--bgd-shadow-sm);padding:22px !important;transition:transform .15s ease, box-shadow .15s ease;
}
.wpbdp-listing:hover,.listing-item:hover{transform:translateY(-3px);box-shadow:var(--bgd-shadow);}
.wpbdp-listing-title, .listing-title{font-weight:800 !important;font-size:1.15rem;} 
.wpbdp-listing-title a{color:var(--bgd-ink);}
.wpbdp-listing-title a:hover{color:var(--bgd-primary);}
.wpbdp-dir-search-form input[type="text"], .wpbdp-search-form input[type="text"],
input[type="text"],input[type="email"],input[type="url"],input[type="tel"],input[type="number"],textarea,select{
  border:1px solid var(--bgd-line) !important;border-radius:var(--bgd-radius-sm) !important;
  padding:12px 14px !important;background:#fff;font-size:1rem;width:100%;max-width:100%;
}
input[type="text"]:focus,textarea:focus,select:focus{border-color:var(--bgd-primary) !important;box-shadow:0 0 0 4px rgba(47,75,255,.12);outline:0;}
.categories, .wpbdp-categories{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0;}
.categories li, .wpbdp-categories li{margin:0;}
.categories a, .wpbdp-categories a, .wpbdp-category-link{
  display:inline-block;background:var(--bgd-bg);border:1px solid var(--bgd-line);color:var(--bgd-ink) !important;
  padding:9px 16px;border-radius:999px;font-weight:600;text-decoration:none !important;
}
.categories a:hover, .wpbdp-categories a:hover{background:var(--bgd-primary);color:#fff !important;border-color:var(--bgd-primary);}
.wpbdp-button, input[type="submit"], button.wpbdp-button{
  background:var(--bgd-primary) !important;color:#fff !important;border:0 !important;padding:13px 24px !important;cursor:pointer;
}
.wpbdp-button:hover{background:var(--bgd-primary-dark) !important;}

/* ---------- sections / cards ---------- */
.bgd-section{padding:56px 20px;}
.bgd-section--alt{background:var(--bgd-bg);}
.bgd-section__head{text-align:center;max-width:720px;margin:0 auto 34px;}
.bgd-section__head h2{font-size:clamp(1.6rem,3.4vw,2.3rem);margin:0 0 10px;}
.bgd-section__head p{color:var(--bgd-muted);font-size:1.05rem;margin:0;}
.bgd-grid{display:grid;gap:24px;max-width:var(--bgd-wrap);margin:0 auto;}
.bgd-grid--3{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));}
.bgd-grid--4{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));}
@media (min-width:1200px){ .bgd-grid--3{grid-template-columns:repeat(3,1fr);} }
.bgd-card{background:#fff;border:1px solid var(--bgd-line);border-radius:var(--bgd-radius);overflow:hidden;box-shadow:var(--bgd-shadow-sm);transition:transform .15s ease,box-shadow .15s ease;display:flex;flex-direction:column;}
.bgd-card:hover{transform:translateY(-4px);box-shadow:var(--bgd-shadow);}
.bgd-card__img{aspect-ratio:16/9;background:linear-gradient(135deg,#e8edff,#f6f8fc);display:block;width:100%;object-fit:cover;}
.bgd-card__body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1;}
.bgd-card__tag{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--bgd-primary);}
.bgd-card h3{margin:0;font-size:1.2rem;}
.bgd-card p{color:var(--bgd-muted);margin:0;font-size:.97rem;}
.bgd-card .bgd-btn{align-self:flex-start;margin-top:auto;}

/* ---------- category tiles ---------- */
.bgd-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px;max-width:var(--bgd-wrap);margin:0 auto;}
@media (min-width:1100px){ .bgd-cats{grid-template-columns:repeat(4,1fr);} }
@media (min-width:1320px){ .bgd-cats{grid-template-columns:repeat(5,1fr);} }
@media (min-width:1560px){ .bgd-cats{grid-template-columns:repeat(6,1fr);} }
@media (max-width:900px){ .bgd-cats{grid-template-columns:repeat(3,1fr);} }
@media (max-width:620px){ .bgd-cats{grid-template-columns:repeat(2,1fr);} }
.bgd-cat{
  display:flex;flex-direction:column;gap:6px;align-items:flex-start;
  background:#fff;border:1px solid var(--bgd-line);border-radius:var(--bgd-radius);
  padding:20px;box-shadow:var(--bgd-shadow-sm);text-decoration:none !important;color:var(--bgd-ink);
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.bgd-cat:hover{transform:translateY(-4px);box-shadow:var(--bgd-shadow);border-color:var(--bgd-primary);}
.bgd-cat__icon{
  width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  font-size:1.45rem;line-height:1;margin-bottom:6px;
  background:linear-gradient(135deg,#eef2ff,#e0e7ff);
}
.bgd-cat__name{font-weight:700;font-size:1rem;color:var(--bgd-ink);}
.bgd-cat__count{color:var(--bgd-muted);font-size:.8rem;font-weight:600;}
/* hide plugin's plain category list on the front page (replaced by tiles) */
body.home .wpbdp-categories{display:none !important;}

/* guide/blog list */
.bgd-posts .bgd-card__img{aspect-ratio:16/10;}
.bgd-meta{color:var(--bgd-muted);font-size:.82rem;}

/* ---------- article / post typography ---------- */
.entry-content{font-size:1.12rem;line-height:1.75;color:#23304a;}
.entry-content h2{font-size:1.7rem;margin-top:2.2rem;}
.entry-content h3{font-size:1.28rem;margin-top:1.6rem;}
.entry-content p{margin:0 0 1.15rem;}
.entry-content ul,.entry-content ol{padding-left:1.3rem;}
.entry-content li{margin-bottom:.5rem;}
.entry-content blockquote{border-left:4px solid var(--bgd-primary);background:var(--bgd-bg);padding:16px 22px;border-radius:0 var(--bgd-radius-sm) var(--bgd-radius-sm) 0;font-style:italic;}

/* ---------- footer ---------- */
.site-footer{background:#0b1220;color:#c7d2e3;border:0;margin-top:0;}
.site-footer a{color:#e5ecf7;text-decoration:none;}
.site-footer a:hover{color:#fff;text-decoration:underline;}
.site-footer .site-info{color:#93a2ba;font-size:.9rem;}

/* ---------- footer (contrast fix) ---------- */
.site-footer{background:#0b1220 !important;border-top:1px solid #16203a;}
.site-footer, .site-footer .site-info, .site-footer .site-name, .site-footer .powered-by{color:#c7d2e3 !important;}
.site-footer .site-name{color:#ffffff !important;font-weight:800;font-size:1.05rem;}
.site-footer a, .site-footer .powered-by a{color:#ffffff !important;text-decoration:none;}
.site-footer a:hover{color:#9db4ff !important;text-decoration:underline;}

/* ---------- category intro (fills thin category pages) ---------- */
.bgd-cat-intro{background:linear-gradient(135deg,#1e2a63 0%, #2f4bff 100%);color:#fff;padding:46px 24px 42px;}
.bgd-cat-intro__inner{max-width:900px;margin:0 auto;text-align:center;}
.bgd-cat-intro .bgd-hero__eyebrow{background:rgba(255,255,255,.16);color:#fff;}
.bgd-cat-intro__title{color:#fff;font-size:clamp(1.7rem,3.6vw,2.5rem);margin:8px 0 12px;font-weight:900;}
.bgd-cat-intro__desc{color:rgba(255,255,255,.92);font-size:1.08rem;line-height:1.65;max-width:730px;margin:0 auto 14px;}
.bgd-cat-intro__meta{color:rgba(255,255,255,.78);font-size:.9rem;font-weight:600;margin:0 0 20px;}

/* ---------- misc ---------- */
.screen-reader-text{position:absolute !important;}
::selection{background:var(--bgd-primary);color:#fff;}

@media (max-width:700px){
  .bgd-hero{padding:46px 16px 58px;}
  .bgd-search{flex-direction:column;border-radius:20px;padding:12px;}
  .bgd-search button{width:100%;}
  .site-title{font-size:1.15rem !important;}
}
