/*
Theme Name: Competitor Blog Type
Theme URI: https://example.com/
Description: A clean, content-first blog child theme for Hello Elementor, sharing the Competitors gaming-brand palette (dark with a gold accent). Editor-driven homepage with featured image, intro, a chosen-category posts row and continuation content, plus a sidebar, single, archive, search, page and 404 templates. Colors, header button and homepage posts are editable from the Customizer.
Author: Digi Ads
Author URI: https://example.com/
Template: hello-elementor
Version: 1.1.0
Text Domain: competitor-blog-type
License: GNU General Public License v2 or later
Tags: blog, dark, child-theme, two-columns, custom-logo
*/

:root{
  --cb-bg:#0c1020;
  --cb-bg-2:#141a32;
  --cb-surface:#1b2240;
  --cb-border:rgba(255,255,255,.08);
  --cb-primary:#ffc629;
  --cb-primary-d:#e0a800;
  --cb-text:#eef1fb;
  --cb-muted:#9aa3c7;
  --cb-header:#0c1020;
  --cb-radius:16px;
  --cb-maxw:1200px;
  --cb-font:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --cb-page-bg:#0c1020;--cb-header-bg:#0c1020;--cb-footer-bg:#141a32;--cb-content-bg:#141a32;--cb-sidebar-bg:#141a32;
  --cb-btn-bg:#ffc629;--cb-btn-text:#1a1300;--cb-header-text:#9aa3c7;--cb-footer-text:#9aa3c7;
  --cb-header-font:var(--cb-font);--cb-header-weight:600;
  --cb-h1-font:var(--cb-font);--cb-h1-weight:800;--cb-h1-color:#eef1fb;
  --cb-h2-font:var(--cb-font);--cb-h2-weight:700;--cb-h2-color:#eef1fb;
  --cb-h3-font:var(--cb-font);--cb-h3-weight:700;--cb-h3-color:#eef1fb;
  --cb-h4-font:var(--cb-font);--cb-h4-weight:700;--cb-h4-color:#eef1fb;
  --cb-h5-font:var(--cb-font);--cb-h5-weight:700;--cb-h5-color:#eef1fb;
  --cb-h6-font:var(--cb-font);--cb-h6-weight:700;--cb-h6-color:#eef1fb;
  --cb-p-font:var(--cb-font);--cb-p-weight:400;--cb-p-color:#dfe3f3;
  --cb-sb-surface:#1b2240;--cb-sb-border:rgba(255,255,255,.08);--cb-sb-text:#eef1fb;--cb-sb-muted:#9aa3c7;--cb-sb-btn:#ffc629;--cb-sb-btn-text:#1a1300;
}

/* ---------- Base ---------- */
body.cb-body{
  margin:0;background:var(--cb-bg);color:var(--cb-text);
  font-family:var(--cb-font);line-height:1.65;-webkit-font-smoothing:antialiased;
}
.cb-body a{color:inherit;text-decoration:none;}
.cb-body img{max-width:100%;height:auto;display:block;}
.cb-container{max-width:var(--cb-maxw);margin:0 auto;padding:0 20px;}
h1,h2,h3,h4,h5,h6{font-family:var(--cb-font);color:var(--cb-text);line-height:1.25;}
.cb-screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}

/* ---------- Buttons / badges ---------- */
.cb-btn{display:inline-block;padding:11px 20px;border-radius:999px;font-weight:700;font-size:14px;cursor:pointer;border:none;transition:transform .12s ease,filter .12s ease;}
.cb-btn-primary{background:var(--cb-primary);color:#1a1300;}
.cb-btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px);}
.cb-btn-ghost{background:transparent;border:1px solid var(--cb-border);color:var(--cb-text);}
.cb-btn-ghost:hover{border-color:var(--cb-primary);color:var(--cb-primary);}
.cb-badge{display:inline-block;padding:4px 12px;border-radius:999px;background:rgba(255,198,41,.14);color:var(--cb-primary);font-size:12px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;}

/* ---------- Header ---------- */
.cb-header{position:sticky;top:0;z-index:50;background:var(--cb-header);border-bottom:1px solid var(--cb-border);}
.cb-header-inner{display:flex;align-items:center;gap:20px;height:70px;}
.cb-logo{display:flex;align-items:center;flex:0 0 auto;line-height:0;}
.cb-logo img,.cb-logo .custom-logo{height:40px;width:auto;max-width:none;display:block;}
.cb-logo-text{font-weight:800;font-size:22px;color:var(--cb-primary);letter-spacing:.4px;line-height:1;}
.cb-nav{margin-left:auto;}
.cb-nav ul{list-style:none;display:flex;gap:6px;margin:0;padding:0;}
.cb-nav a{display:block;padding:9px 14px;border-radius:10px;font-size:14.5px;font-weight:500;color:var(--cb-muted);transition:color .15s,background .15s;}
.cb-nav a:hover,.cb-nav .current-menu-item>a{color:var(--cb-text);background:rgba(255,255,255,.05);}
.cb-search-toggle{background:transparent;border:1px solid var(--cb-border);color:var(--cb-text);width:40px;height:40px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;}
.cb-search-toggle:hover{border-color:var(--cb-primary);color:var(--cb-primary);}
.cb-cta{flex:0 0 auto;background:var(--cb-primary);color:#1a1300;font-weight:700;font-size:14px;padding:10px 16px;border-radius:999px;line-height:1;}
.cb-cta:hover{filter:brightness(1.06);}
.cb-burger{display:none;background:transparent;border:1px solid var(--cb-border);color:var(--cb-text);width:42px;height:40px;border-radius:10px;cursor:pointer;font-size:18px;}
.cb-searchbar{display:none;border-bottom:1px solid var(--cb-border);background:var(--cb-bg-2);}
.cb-searchbar.is-open{display:block;}
.cb-searchbar .cb-container{padding-top:14px;padding-bottom:14px;}

/* ---------- Search form ---------- */
.cb-searchform{display:flex;gap:10px;}
.cb-searchform input[type="search"],.cb-searchform input[type="text"]{
  flex:1;background:var(--cb-surface);border:1px solid var(--cb-border);color:var(--cb-text);
  border-radius:10px;padding:11px 14px;font-size:14px;font-family:inherit;
}
.cb-searchform input::placeholder{color:var(--cb-muted);}
.cb-searchform button{flex:0 0 auto;}

/* ---------- Layout: content + sidebar ---------- */
.cb-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;padding:40px 0 64px;}
.cb-wrap--full{display:block;}
.cb-main{min-width:0;}

/* ---------- Page head (archive / single) ---------- */
.cb-page-head{padding:34px 0 6px;}
.cb-breadcrumb{font-size:12.5px;color:var(--cb-muted);margin-bottom:12px;}
.cb-breadcrumb a:hover{color:var(--cb-primary);}
.cb-archive-title{font-size:clamp(24px,3.4vw,34px);font-weight:800;margin:0;}
.cb-archive-desc{color:var(--cb-muted);margin-top:10px;max-width:680px;}

/* ---------- Featured post ---------- */
.cb-featured{background:var(--cb-bg-2);border:1px solid var(--cb-border);border-radius:var(--cb-radius);overflow:hidden;margin-bottom:34px;}
.cb-featured-media{position:relative;aspect-ratio:16/8;background:var(--cb-surface);}
.cb-featured-media img{width:100%;height:100%;object-fit:cover;}
.cb-featured-ph{display:flex;align-items:center;justify-content:center;height:100%;color:var(--cb-primary);font-weight:800;font-size:46px;opacity:.4;}
.cb-featured-body{padding:24px 26px 28px;}
.cb-featured-title{font-size:clamp(22px,2.6vw,30px);font-weight:800;margin:12px 0 10px;line-height:1.2;}
.cb-featured-title a:hover{color:var(--cb-primary);}
.cb-featured-excerpt{color:var(--cb-muted);margin:0 0 18px;}

/* ---------- Post grid + cards ---------- */
.cb-section-title{font-size:18px;font-weight:800;margin:0 0 18px;display:flex;align-items:center;gap:10px;}
.cb-section-title::before{content:"";width:18px;height:3px;border-radius:3px;background:var(--cb-primary);display:inline-block;}
.cb-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.cb-card{background:var(--cb-bg-2);border:1px solid var(--cb-border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .14s ease,border-color .14s ease;}
.cb-card:hover{transform:translateY(-3px);border-color:rgba(255,198,41,.4);}
.cb-card-media{aspect-ratio:16/9;background:var(--cb-surface);}
.cb-card-media img{width:100%;height:100%;object-fit:cover;}
.cb-card-ph{display:flex;align-items:center;justify-content:center;height:100%;color:var(--cb-primary);font-weight:800;font-size:30px;opacity:.4;}
.cb-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:9px;flex:1;}
.cb-card-title{font-size:17px;font-weight:700;line-height:1.3;margin:0;}
.cb-card-title a:hover{color:var(--cb-primary);}
.cb-card-excerpt{color:var(--cb-muted);font-size:14px;margin:0;}
.cb-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--cb-muted);font-size:12.5px;margin-top:auto;}
.cb-meta .cb-dot{opacity:.5;}

/* ---------- Pagination ---------- */
.cb-pagination{margin-top:34px;}
.cb-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;}
.cb-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--cb-border);color:var(--cb-muted);font-weight:600;font-size:14px;}
.cb-pagination .page-numbers.current{background:var(--cb-primary);color:#1a1300;border-color:var(--cb-primary);}
.cb-pagination a.page-numbers:hover{color:var(--cb-primary);border-color:var(--cb-primary);}

/* ---------- Sidebar ---------- */
.cb-sidebar{min-width:0;}
.cb-widget{background:var(--cb-bg-2);border:1px solid var(--cb-border);border-radius:14px;padding:20px;margin-bottom:22px;}
.cb-widget-title{font-size:15px;font-weight:800;margin:0 0 14px;text-transform:uppercase;letter-spacing:.4px;}
.cb-widget ul{list-style:none;margin:0;padding:0;}
.cb-rp{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--cb-border);}
.cb-rp:first-child{border-top:none;padding-top:0;}
.cb-rp-thumb{flex:0 0 64px;width:64px;height:64px;border-radius:10px;overflow:hidden;background:var(--cb-surface);}
.cb-rp-thumb img{width:100%;height:100%;object-fit:cover;}
.cb-rp-title{font-size:13.5px;font-weight:600;line-height:1.35;margin:0 0 4px;}
.cb-rp-title a:hover{color:var(--cb-primary);}
.cb-rp-date{font-size:12px;color:var(--cb-muted);}
.cb-cats li{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--cb-border);font-size:14px;}
.cb-cats li:first-child{border-top:none;}
.cb-cats a{color:var(--cb-muted);} .cb-cats a:hover{color:var(--cb-primary);}
.cb-cats .cb-count{font-size:12px;color:var(--cb-muted);background:var(--cb-surface);border-radius:999px;padding:1px 9px;}
.cb-widget select,.cb-widget .wp-block-search__input{width:100%;background:var(--cb-surface);border:1px solid var(--cb-border);color:var(--cb-text);border-radius:10px;padding:9px 12px;font-family:inherit;}
.cb-widget a{color:var(--cb-muted);} .cb-widget a:hover{color:var(--cb-primary);}

/* ---------- Single ---------- */
.cb-single-head{max-width:820px;}
.cb-single-title{font-size:clamp(26px,4vw,40px);font-weight:800;line-height:1.18;margin:12px 0 14px;}
.cb-single-meta{display:flex;align-items:center;gap:12px;color:var(--cb-muted);font-size:14px;margin-bottom:22px;}
.cb-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;background:var(--cb-surface);flex:0 0 auto;}
.cb-single-media{border-radius:var(--cb-radius);overflow:hidden;margin:0 0 26px;background:var(--cb-surface);}
.cb-single-media img{width:100%;}
.cb-article{font-size:var(--cb-article-size,16.5px);color:#dfe3f3;}
.cb-article p{margin:0 0 1.15em;}
.cb-article h2{font-size:25px;margin:1.5em 0 .5em;}
.cb-article h3{font-size:20px;margin:1.3em 0 .5em;}
.cb-article a{color:var(--cb-primary);text-decoration:underline;text-underline-offset:3px;}
.cb-article ul,.cb-article ol{margin:0 0 1.2em;padding-left:1.3em;}
.cb-article li{margin:.3em 0;}
.cb-article img,.cb-article .wp-block-image{border-radius:12px;margin:1.2em 0;}
.cb-article blockquote{margin:1.4em 0;padding:6px 20px;border-left:3px solid var(--cb-primary);color:var(--cb-text);font-style:italic;}
.cb-article code{background:var(--cb-surface);padding:2px 6px;border-radius:6px;font-size:.92em;}
.cb-tags{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0;}
.cb-tags a{font-size:12.5px;color:var(--cb-muted);border:1px solid var(--cb-border);padding:5px 12px;border-radius:999px;}
.cb-tags a:hover{border-color:var(--cb-primary);color:var(--cb-primary);}
.cb-author{display:flex;gap:16px;align-items:flex-start;background:var(--cb-bg-2);border:1px solid var(--cb-border);border-radius:14px;padding:20px;margin:28px 0;}
.cb-author .cb-avatar{width:56px;height:56px;}
.cb-author-name{font-weight:800;margin:0 0 4px;}
.cb-author-bio{color:var(--cb-muted);font-size:14px;margin:0;}
.cb-related{margin-top:40px;}

/* ---------- Comments ---------- */
.cb-comments{margin-top:40px;}
.cb-comments .comment-list{list-style:none;margin:0;padding:0;}
.cb-comments .comment-body{background:var(--cb-bg-2);border:1px solid var(--cb-border);border-radius:12px;padding:16px 18px;margin:0 0 16px;}
.cb-comments .children{list-style:none;margin:0 0 0 26px;padding:0;}
.cb-comments .comment-author{font-weight:700;font-size:14px;}
.cb-comments .comment-metadata{font-size:12px;color:var(--cb-muted);}
.cb-comments input[type="text"],.cb-comments input[type="email"],.cb-comments input[type="url"],.cb-comments textarea{
  width:100%;background:var(--cb-surface);border:1px solid var(--cb-border);color:var(--cb-text);border-radius:10px;padding:11px 13px;font-family:inherit;margin-bottom:12px;
}

/* ---------- Page ---------- */
.cb-page{max-width:820px;margin:0 auto;}
.cb-page-title{font-size:clamp(26px,4vw,38px);font-weight:800;margin:0 0 18px;}

/* ---------- Blog Home template ---------- */
.cb-home-banner{padding-top:30px;}
.cb-home-banner img{width:100%;height:auto;display:block;border-radius:var(--cb-radius);}
.cb-banner-link{display:block;}
.cb-home-intro{background:var(--cb-bg-2);border:1px solid var(--cb-border);border-radius:var(--cb-radius);padding:clamp(22px,3vw,32px);}
.cb-home-intro .cb-page-title{margin-bottom:12px;}
.cb-home-posts{padding:26px 0;}
.cb-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;}
.cb-section-head .cb-section-title{margin:0;}
.cb-viewall-link{color:var(--cb-primary);font-weight:700;font-size:14px;white-space:nowrap;}
.cb-viewall-link:hover{filter:brightness(1.08);}
.cb-grid--3{grid-template-columns:repeat(3,1fr);}
.cb-home-rest{background:var(--cb-bg-2);border:1px solid var(--cb-border);border-radius:var(--cb-radius);padding:clamp(22px,3vw,32px);}

/* ---------- 404 ---------- */
.cb-404{text-align:center;padding:80px 0;}
.cb-404 h1{font-size:90px;margin:0;color:var(--cb-primary);}
.cb-404 p{color:var(--cb-muted);}
.cb-404 .cb-searchform{max-width:420px;margin:24px auto 0;}

/* ---------- Footer ---------- */
.cb-footer{background:var(--cb-bg-2);border-top:1px solid var(--cb-border);padding:34px 0;margin-top:20px;}
.cb-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.cb-footer-nav ul{list-style:none;display:flex;gap:16px;margin:0;padding:0;}
.cb-footer-nav a{color:var(--cb-muted);font-size:14px;} .cb-footer-nav a:hover{color:var(--cb-primary);}
.cb-copy{color:var(--cb-muted);font-size:13.5px;}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .cb-wrap{grid-template-columns:1fr;gap:30px;}
  .cb-sidebar{order:2;}
  .cb-grid--3{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:680px){
  .cb-grid{grid-template-columns:1fr;}
  .cb-grid--3{grid-template-columns:1fr;}
  .cb-nav{display:none;position:absolute;left:0;right:0;top:70px;background:var(--cb-header);border-bottom:1px solid var(--cb-border);margin:0;}
  .cb-nav.is-open{display:block;}
  .cb-nav ul{flex-direction:column;gap:0;padding:8px 12px;}
  .cb-nav a{padding:13px 12px;border-radius:0;}
  .cb-burger{display:inline-flex;align-items:center;justify-content:center;}
  .cb-cta{margin-left:auto;}
  .cb-header-inner{height:64px;}
  .cb-footer-inner{flex-direction:column;text-align:center;}
}

/* ============================================================
   Customizer-driven theming (backgrounds, gradients, type)
   ============================================================ */
body.cb-body{background:var(--cb-page-bg);font-family:var(--cb-p-font);font-weight:var(--cb-p-weight);}
.cb-header{background:var(--cb-header-bg);}
.cb-nav a{font-family:var(--cb-header-font);font-weight:var(--cb-header-weight);color:var(--cb-header-text);}
.cb-nav a:hover,.cb-nav .current-menu-item>a{color:var(--cb-text);}
.cb-logo-text{font-family:var(--cb-header-font);}
.cb-cta{background:var(--cb-btn-bg);color:var(--cb-btn-text);}
.cb-footer{background:var(--cb-footer-bg);}
.cb-copy,.cb-footer-nav a{color:var(--cb-footer-text);}
.cb-home-intro,.cb-home-rest,.cb-card,.cb-featured{background:var(--cb-content-bg);}
.cb-widget{background:var(--cb-sidebar-bg);}

h1{font-family:var(--cb-h1-font);font-weight:var(--cb-h1-weight);color:var(--cb-h1-color);}
h2{font-family:var(--cb-h2-font);font-weight:var(--cb-h2-weight);color:var(--cb-h2-color);}
h3{font-family:var(--cb-h3-font);font-weight:var(--cb-h3-weight);color:var(--cb-h3-color);}
h4{font-family:var(--cb-h4-font);font-weight:var(--cb-h4-weight);color:var(--cb-h4-color);}
h5{font-family:var(--cb-h5-font);font-weight:var(--cb-h5-weight);color:var(--cb-h5-color);}
h6{font-family:var(--cb-h6-font);font-weight:var(--cb-h6-weight);color:var(--cb-h6-color);}
.cb-single-title,.cb-archive-title,.cb-page-title{font-family:var(--cb-h1-font);font-weight:var(--cb-h1-weight);color:var(--cb-h1-color);}
.cb-article{color:var(--cb-p-color);font-family:var(--cb-p-font);}
.cb-article p,.cb-article li{color:var(--cb-p-color);font-family:var(--cb-p-font);font-weight:var(--cb-p-weight);}

/* Sidebar assets auto-harmonized with the chosen Sidebar background */
.cb-widget{border-color:var(--cb-sb-border);}
.cb-widget-title,.cb-rp-title,.cb-rp-title a{color:var(--cb-sb-text);}
.cb-rp{border-top-color:var(--cb-sb-border);}
.cb-rp-thumb{background:var(--cb-sb-surface);}
.cb-rp-date{color:var(--cb-sb-muted);}
.cb-cats li{border-top-color:var(--cb-sb-border);}
.cb-cats a{color:var(--cb-sb-muted);}
.cb-count{background:var(--cb-sb-surface);color:var(--cb-sb-muted);}
.cb-sidebar .cb-searchform input[type="search"],
.cb-sidebar .cb-searchform input[type="text"],
.cb-widget select,.cb-widget .wp-block-search__input{background:var(--cb-sb-surface);border-color:var(--cb-sb-border);color:var(--cb-sb-text);}
.cb-sidebar .cb-searchform button{background:var(--cb-sb-btn);color:var(--cb-sb-btn-text);}
/* ============================================================
   CUSTOM LEFT SIDE MENU
   STEP 4
   COLOR: #151a33
   ============================================================ */

:root {
	--cblog-side-width: 232px;
	--cblog-side-color: #151a33;
	--cblog-side-border: #252b49;
	--cblog-side-text: #ffffff;
}


/* ============================================================
   MAIN SIDE MENU CONTAINER
   ============================================================ */

.cblog-custom-side-menu {
	position: fixed;

	left: 0;
	top: 0;
	bottom: 0;

	width: var(--cblog-side-width);
	height: 100vh;

	z-index: 9999;

	display: flex;
	flex-direction: column;

	box-sizing: border-box;

	background: #151a33;

	border-right: 2px solid #252b49;

	overflow: hidden;
}


/* ============================================================
   LOGO AREA
   ============================================================ */

.cblog-side-logo {
	width: 100%;
	height: 125px;
min-height: 125px;

	display: flex;
	align-items: center;
	justify-content: center;

	padding: 15px;

	box-sizing: border-box;

	background: #151a33;

	border-bottom: 1px solid #252b49;
}


.cblog-side-logo a {
	width: 100%;
	height: 100%;

	display: flex;
	align-items: center;
	justify-content: center;
}


.cblog-side-logo img {
	display: block;

	max-width: 180px;
	max-height: 100px;

	width: auto;
	height: auto;

	object-fit: contain;
}


.cblog-side-logo-text {
	color: #ffffff !important;

	font-size: 21px;
	font-weight: 800;

	line-height: 1.2;

	text-align: center;

	text-decoration: none !important;
}


/* ============================================================
   MENU ITEMS CONTAINER
   ============================================================ */

.cblog-side-items {
	width: 100%;

	flex: 1;

	overflow-y: auto;
	overflow-x: hidden;

	scrollbar-width: thin;
}


/* ============================================================
   INDIVIDUAL MENU ITEM
   ============================================================ */

.cblog-side-item {
	position: relative;

	width: 100%;
	height: 80px;
	min-height: 80px;

	flex-shrink: 0;

	display: flex;
	align-items: center;
	justify-content: flex-start;

	box-sizing: border-box;

	padding: 0 0 0 18px;

	color: #ffffff !important;

	text-decoration: none !important;

	background: transparent;

	border-bottom: 1px solid #252b49;

	overflow: hidden;

	cursor: pointer;

	transition:
		background-color 0.2s ease,
		border-color 0.2s ease;
}


/* ============================================================
   MENU TITLE
   ============================================================ */

.cblog-side-title {
	position: relative;

	z-index: 4;

	display: block;

	width: 52%;
	max-width: 52%;

	padding-right: 5px;

	box-sizing: border-box;

	color: #ffffff !important;

	font-size: 13px;
	font-weight: 600;

	line-height: 1.2;

	text-transform: uppercase;

	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.85);
}


/* ============================================================
   SMALL MENU IMAGE
   ============================================================ */

.cblog-side-image {
	position: absolute;

	right: 0;
	top: 0;
	bottom: 0;

	width: 62%;
	height: 100%;

	z-index: 1;

	overflow: hidden;

	pointer-events: none;
}


.cblog-side-image img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center;

	opacity: 0.92;

	transition:
		transform 0.25s ease,
		opacity 0.25s ease;
}


/* ============================================================
   IMAGE OVERLAY
   ============================================================ */

.cblog-side-item::after {
	content: "";

	position: absolute;

	left: 0;
	top: 0;
	right: 0;
	bottom: 0;

	z-index: 2;

	pointer-events: none;

	background:
		linear-gradient(
			90deg,
			rgba(21, 26, 51, 1) 0%,
			rgba(21, 26, 51, 0.95) 22%,
			rgba(21, 26, 51, 0.72) 42%,
			rgba(21, 26, 51, 0.28) 72%,
			rgba(21, 26, 51, 0.05) 100%
		);
}


/* ============================================================
   HOVER
   ============================================================ */

.cblog-side-item:hover {
	background-color: #1c2340 !important;

	border-bottom-color: #343c60;
}


.cblog-side-item:hover .cblog-side-image img {
	transform: scale(1.06);

	opacity: 1;
}


/* ============================================================
   MAIN WEBSITE — DESKTOP
   ============================================================ */

.cb-header {
	margin-left: var(--cblog-side-width);

	width: calc(100% - var(--cblog-side-width));
}


#cb-content {
	margin-left: var(--cblog-side-width);
}


.cb-footer {
	margin-left: var(--cblog-side-width);
}


/* ============================================================
   MOBILE SIDE MENU
   ============================================================ */

@media (max-width: 900px) {

	/* Side menu starts hidden on mobile */

	.cblog-custom-side-menu {
		width: 270px;
		max-width: 82vw;

		top: 0;
		left: 0;
		bottom: 0;

		transform: translateX(-100%);

		transition: transform 0.25s ease;

		box-shadow: 8px 0 30px rgba(0, 0, 0, 0.40);
	}


	/* Side menu opens */

	.cblog-custom-side-menu.is-open {
		transform: translateX(0);
	}


	/* Dark area behind the menu */

	.cblog-custom-side-menu::before {
		content: "";

		position: fixed;

		top: 0;
		left: 270px;
		right: 0;
		bottom: 0;

		background: rgba(0, 0, 0, 0.45);

		opacity: 0;
		visibility: hidden;

		pointer-events: none;

		transition:
			opacity 0.25s ease,
			visibility 0.25s ease;
	}


	/* Show dark area when menu is open */

	.cblog-custom-side-menu.is-open::before {
		opacity: 1;
		visibility: visible;
	}


	/* Website stays full width on mobile */

	.cb-header {
		margin-left: 0;
		width: 100%;
	}


	#cb-content {
		margin-left: 0;
	}


	.cb-footer {
		margin-left: 0;
	}

}


/* ============================================================
   SIDEBAR SCROLLBAR
   ============================================================ */

.cblog-side-items::-webkit-scrollbar {
	width: 5px;
}


.cblog-side-items::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.25);

	border-radius: 10px;
}


.cblog-side-items::-webkit-scrollbar-track {
	background: transparent;
}
/* ============================================================
   STEP 7 — MOBILE SIDE MENU SIZING
   ============================================================ */

@media (max-width: 600px) {

	.cblog-custom-side-menu {
		width: 280px;
		max-width: 85vw;
	}

	.cblog-side-logo {
		height: 110px;
		min-height: 110px;
	}

	.cblog-side-logo img {
		max-width: 165px;
		max-height: 85px;
	}

	.cblog-side-item {
		height: 76px;
		min-height: 76px;
	}

	.cblog-side-title {
		width: 52%;
		max-width: 52%;

		font-size: 12px;
	}

	.cblog-side-image {
		width: 64%;
	}

}
/* ============================================================
   STEP 11 — SIDEBAR POLISH
   ============================================================ */

/* Smooth hover effect */
.cblog-side-item {
	transition:
		transform 0.22s ease,
		border-color 0.22s ease,
		filter 0.22s ease;
}


/* Slight lift when hovering */
.cblog-side-item:hover {
	transform: translateX(3px);

	filter: brightness(1.08);
}


/* Image zoom */
.cblog-side-item:hover .cblog-side-image img {
	transform: scale(1.07);

	opacity: 1;
}


/* Keep title above everything */
.cblog-side-item .cblog-side-title {
	transition:
		transform 0.22s ease,
		text-shadow 0.22s ease;
}


/* Title moves slightly */
.cblog-side-item:hover .cblog-side-title {
	transform: translateX(3px);

	text-shadow:
		0 2px 7px rgba(0, 0, 0, 0.95);
}
/* ============================================================
   STEP 11B — MOBILE
   ============================================================ */

@media (max-width: 900px) {

	.cblog-side-item:hover {
		transform: none !important;
		filter: none !important;
	}

	.cblog-side-item:hover .cblog-side-title {
		transform: none !important;
	}

	.cblog-side-item:hover .cblog-side-image img {
		transform: none !important;
	}

}
/* ============================================================
   STEP 2 — SIDE SLICK SLIDER CONTAINER
   ============================================================ */

.cblog-side-slider {
	position: fixed;

	left: calc(var(--cblog-side-width) + 20px);

	top: 50%;

	transform: translateY(-50%);

	width: calc(100vw - var(--cblog-side-width) - 40px);

	max-width: 900px;

	height: 180px;

	z-index: 9990;

	box-sizing: border-box;

	overflow: hidden;

	padding: 0 10px;
}


/* Slider track */

.cblog-side-slider-track {
	display: flex;

	width: 100%;
	height: 100%;

	gap: 12px;

	overflow: hidden;
}


/* ============================================================
   THREE IMAGE CONTAINERS
   ============================================================ */

.cblog-side-slide {
	position: relative;

	flex: 0 0 calc((100% - 24px) / 3);

	height: 100%;

	box-sizing: border-box;

	overflow: hidden;

	background: #151a33;

	border: 1px solid #252b49;

	border-radius: 12px;
}


/* Image */

.cblog-side-slide img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;

	object-position: center;
}


/* Empty image placeholder */

.cblog-side-slide.is-empty {
	display: flex;

	align-items: center;

	justify-content: center;

	background: #151a33;
}


/* Placeholder text */

.cblog-side-slide.is-empty::before {
	content: "IMAGE";

	color: rgba(255,255,255,0.35);

	font-size: 13px;

	font-weight: 700;

	letter-spacing: 1px;
}


/* ============================================================
   SLIDE BUTTON
   ============================================================ */

.cblog-side-slide-button {
	position: absolute;

	left: 50%;

	bottom: 12px;

	transform: translateX(-50%);

	display: inline-flex;

	align-items: center;

	justify-content: center;

	min-width: 90px;

	height: 32px;

	padding: 0 14px;

	box-sizing: border-box;

	border-radius: 20px;

	background: #fe0272;

	color: #ffffff !important;

	font-size: 11px;

	font-weight: 700;

	text-decoration: none !important;

	white-space: nowrap;

	z-index: 5;
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 900px) {

	.cblog-side-slider {
		display: none;
	}

}
/* ============================================================
   STEP 6 — SIDE SLIDER ANIMATION
   ============================================================ */

.cblog-side-slider-track {
	display: flex;

	width: max-content;
	height: 100%;

	gap: 12px;

	transition: transform 0.6s ease;

	will-change: transform;
}


.cblog-side-slide {
	flex: 0 0 calc(
		((100vw - var(--cblog-side-width) - 40px - 44px) / 3)
	);

	max-width: calc(
		((100vw - var(--cblog-side-width) - 40px - 44px) / 3)
	);
}


/* Keep the slider itself hidden if disabled */

.cblog-side-slider {
	overflow: hidden;
}


/* ============================================================
   STEP 6 — MOBILE
   ============================================================ */

@media (max-width: 900px) {

	.cblog-side-slider {
		display: none !important;
	}

}
/* ============================================================
   STEP 8 — FIXED SIDE SLIDER BELOW ACTUAL HEADER
   ============================================================ */

.cblog-side-slider {
	position: fixed;

	top: var(--cblog-header-height, 80px);

	left: calc(var(--cblog-side-width) + 15px);

	right: 15px;

	height: 180px;

	box-sizing: border-box;

	overflow: hidden;

	z-index: 900;
}


/* ============================================================
   SLIDER TRACK
   ============================================================ */

.cblog-side-slider-track {
	display: flex;

	width: max-content;
	height: 100%;

	gap: 12px;

	transition: transform 0.6s ease;

	will-change: transform;
}


/* ============================================================
   THREE VISIBLE SLIDES
   ============================================================ */

.cblog-side-slide {
	flex: 0 0 calc(
		(
			100vw -
			var(--cblog-side-width) -
			42px
		) / 3
	);

	height: 100%;

	box-sizing: border-box;

	overflow: hidden;

	position: relative;
}


/* ============================================================
   SLIDER IMAGE
   ============================================================ */

.cblog-side-slide img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 900px) {

	.cblog-side-slider {
		display: none !important;
	}

}
/* ============================================================
   HOMEPAGE SLICK SLIDER
   ============================================================ */

.cblog-home-slick-slider {
	width: 100%;
	max-width: 100%;
	margin: 0 0 28px 0;
	padding: 0;
	overflow: hidden;
	box-sizing: border-box;
}

.cblog-home-slick-track {
	display: flex;
	flex-wrap: nowrap;
	gap: 12px;
	width: max-content;
	transform: translate3d(0, 0, 0);
	transition: transform 0.6s ease;
	will-change: transform;
}

.cblog-home-slick-slide {
	flex: 0 0 calc((100vw - 24px) / 3);
	max-width: calc((100vw - 24px) / 3);
	overflow: hidden;
	border-radius: 8px;
	box-sizing: border-box;
}

.cblog-home-slick-slide img {
	display: block;
	width: 100%;
	height: 150px;
	object-fit: cover;
	border-radius: 8px;
}

.cblog-home-slick-slide a {
	display: block;
	width: 100%;
	text-decoration: none;
}

/* Desktop - follow the actual content width */
.cb-main .cblog-home-slick-slider {
	width: 100%;
}

.cb-main .cblog-home-slick-slide {
	flex-basis: calc((100% - 24px) / 3);
	max-width: calc((100% - 24px) / 3);
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 900px) {

	.cb-main .cblog-home-slick-slide {
		flex-basis: calc((100% - 12px) / 2);
		max-width: calc((100% - 12px) / 2);
	}

	.cblog-home-slick-slide img {
		height: 140px;
	}
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

	.cb-main .cblog-home-slick-track {
		gap: 10px;
	}

	.cb-main .cblog-home-slick-slide {
		flex-basis: 100%;
		max-width: 100%;
	}

	.cblog-home-slick-slide img {
		height: 180px;
	}
}
/* ============================================================
   HOMEPAGE SLICK SLIDER
   ============================================================ */

.cblog-home-slick-slider {
	width: 100%;
	overflow: hidden;
	margin: 0 0 30px 0;
	padding: 0;
	box-sizing: border-box;
	position: relative;
}

.cblog-home-slick-track {
	display: flex;
	gap: 15px;
	width: max-content;
	transition: transform 0.6s ease;
	will-change: transform;
}

.cblog-home-slick-slide {
	flex: 0 0 calc((100vw - 30px) / 3);
	max-width: calc((100vw - 30px) / 3);
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
}

.cblog-home-slick-slide img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 7;
	object-fit: cover;
	border-radius: 10px;
}

/* CLICKABLE IMAGE */

.cblog-home-slick-slide a {
	display: block;
	width: 100%;
	text-decoration: none;
}

/* TABLET */

@media (max-width: 900px) {

	.cblog-home-slick-slide {
		flex: 0 0 calc((100vw - 15px) / 2);
		max-width: calc((100vw - 15px) / 2);
	}

}

/* MOBILE */

@media (max-width: 600px) {

	.cblog-home-slick-slider {
		margin-bottom: 25px;
	}

	.cblog-home-slick-track {
		gap: 10px;
	}

	.cblog-home-slick-slide {
		flex: 0 0 100%;
		max-width: 100%;
	}

	.cblog-home-slick-slide img {
		aspect-ratio: 16 / 8;
		border-radius: 8px;
	}

}
/* ============================================================
   AUTHOR PROFILE
   ============================================================ */

.cb-author-profile{
	display:flex;
	align-items:center;
	gap:30px;
	background:var(--cb-bg-2);
	border:1px solid var(--cb-border);
	border-radius:16px;
	padding:30px;
	margin:30px 0 40px;
}

.cb-author-avatar-large{
	width:150px;
	height:150px;
	flex:0 0 150px;
	border-radius:50%;
	overflow:hidden;
	border:3px solid var(--cb-primary);
	background:var(--cb-surface);
}

.cb-author-avatar-large img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.cb-author-information{
	flex:1;
	min-width:0;
}

.cb-author-label{
	display:inline-block;
	color:var(--cb-primary);
	font-size:11px;
	font-weight:800;
	letter-spacing:1.5px;
	margin-bottom:6px;
}

.cb-author-title{
	margin:0;
	font-size:36px;
	font-weight:800;
}

.cb-author-job{
	color:var(--cb-primary);
	font-weight:600;
	margin-top:5px;
}

.cb-author-description{
	color:var(--cb-muted);
	font-size:15px;
	line-height:1.7;
	margin-top:12px;
}

.cb-author-description p{
	margin:0;
}

.cb-author-info-list{
	display:flex;
	flex-wrap:wrap;
	gap:10px 18px;
	margin-top:15px;
	color:var(--cb-muted);
	font-size:13px;
}

.cb-author-info-list span{
	display:flex;
	align-items:center;
	gap:5px;
}

.cb-author-info-list strong{
	color:var(--cb-primary);
}

.cb-author-info-list a{
	color:var(--cb-muted);
}

.cb-author-info-list a:hover{
	color:var(--cb-primary);
}

.cb-author-social{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:17px;
}

.cb-author-social a{
	display:inline-block;
	padding:7px 13px;
	border:1px solid var(--cb-border);
	border-radius:999px;
	color:var(--cb-muted);
	font-size:12px;
	font-weight:600;
	text-decoration:none;
	transition:.2s ease;
}

.cb-author-social a:hover{
	color:var(--cb-primary);
	border-color:var(--cb-primary);
	transform:translateY(-2px);
}

.cb-author-posts{
	margin-bottom:40px;
}

.cb-author-empty{
	background:var(--cb-bg-2);
	border:1px solid var(--cb-border);
	border-radius:14px;
	padding:25px;
	color:var(--cb-muted);
	text-align:center;
}


/* CLICKABLE AUTHOR */

.cb-author-link{
	color:inherit;
	text-decoration:none;
	transition:color .2s ease;
}

.cb-author-link:hover{
	color:var(--cb-primary);
	text-decoration:none;
}


/* MOBILE */

@media (max-width:700px){

	.cb-author-profile{
		flex-direction:column;
		text-align:center;
		padding:25px 18px;
	}

	.cb-author-avatar-large{
		width:120px;
		height:120px;
		flex-basis:120px;
	}

	.cb-author-title{
		font-size:29px;
	}

	.cb-author-info-list,
	.cb-author-social{
		justify-content:center;
	}

}