/* ============================================================
   Design Studio override
   A professional, serious, editorial restyle of the existing
   Kalium-based theme. Loaded after all other stylesheets.
   ============================================================ */

:root{
  --studio-bg: #f6f4ef;
  --studio-bg-alt: #ece8df;
  --studio-ink: #16181b;
  --studio-ink-soft: #4a4d52;
  --studio-accent: #c1440e;
  --studio-line: #d9d4c8;
  --studio-dark: #16181b;
}

/* ---------- Global base ---------- */
html, body{
  background: var(--studio-bg) !important;
  color: var(--studio-ink) !important;
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-size: 16px !important;
  -webkit-font-smoothing: antialiased;
}

.wrapper{
  background: var(--studio-bg) !important;
}

* {
  letter-spacing: normal;
}

/* ---------- Typography ---------- */
h1, h2, h3, h4, h5, h6,
.section-title h1, .section-title h2, .section-title h3,
.section-title h4, .section-title h5, .section-title h6{
  font-family: 'IBM Plex Serif', Georgia, serif !important;
  font-weight: 600 !important;
  color: var(--studio-ink) !important;
  text-transform: none !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
}

h1 small, h2 small, h3 small, h4 small, h5 small, h6 small,
.section-title h1 small, .section-title h2 small, .section-title h3 small,
.section-title h4 small, .section-title h5 small, .section-title h6 small{
  color: var(--studio-ink-soft) !important;
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-weight: 400 !important;
}

p, li, .section-title p, table{
  color: var(--studio-ink-soft) !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
}

a{
  color: var(--studio-ink) !important;
  text-decoration: none !important;
  transition: color .15s ease;
}
a:hover, a:focus{
  color: var(--studio-accent) !important;
}
.wrapper a:hover{
  color: var(--studio-accent) !important;
}
.wrapper a:after{
  background: var(--studio-accent) !important;
}

/* ---------- Buttons ---------- */
.btn, .btn.btn-primary, .btn.btn-secondary{
  border-radius: 0 !important;
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  font-size: 12px !important;
  padding: 14px 28px !important;
}
.btn.btn-primary{
  background: var(--studio-ink) !important;
  color: var(--studio-bg) !important;
  border: 1px solid var(--studio-ink) !important;
}
.btn.btn-primary:hover{
  background: var(--studio-accent) !important;
  border-color: var(--studio-accent) !important;
  color: #fff !important;
}
.btn.btn-secondary{
  background: transparent !important;
  color: var(--studio-ink) !important;
  border: 1px solid var(--studio-line) !important;
}
.btn.btn-secondary:hover{
  border-color: var(--studio-ink) !important;
  background: transparent !important;
}
.color-main{
  background: var(--studio-bg-alt) !important;
  color: var(--studio-accent) !important;
}

/* ---------- Header / navigation ---------- */
.main-header{
  background: var(--studio-bg) !important;
  border-bottom: 1px solid var(--studio-line) !important;
}
.main-header .header-logo img,
.main-header .main-logo{
  filter: invert(1) grayscale(1) contrast(1.4) !important;
}
.main-header.menu-type-standard-menu .standard-menu-container,
.main-header.menu-type-standard-menu .standard-menu-container div.menu > ul ul{
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 12.5px !important;
}
.main-header .standard-menu-container,
.main-header .standard-menu-container a,
.main-header .menu-skin-light{
  color: var(--studio-ink) !important;
}
.main-header .standard-menu-container a:hover{
  color: var(--studio-accent) !important;
}
.header-search-input .search-field span,
.header-search-input input{
  color: var(--studio-ink-soft) !important;
}

/* ---------- Hero / revolution slider fallback ---------- */
.rev_slider_wrapper, .fullwidthbanner-container, .rev_slider, .fullwidthabanner{
  background: var(--studio-dark) !important;
  min-height: 480px !important;
}
.rev_slider_wrapper img.rev-slidebg{
  opacity: 0.35 !important;
  filter: grayscale(1) contrast(1.1) !important;
}
.tp-caption, .tp-caption *{
  font-family: 'IBM Plex Serif', Georgia, serif !important;
  color: #f6f4ef !important;
  letter-spacing: -0.01em !important;
}

/* ---------- Sections ---------- */
.vc_row{
  padding-top: 64px;
  padding-bottom: 64px;
}
.section-title{
  margin-bottom: 40px !important;
}
hr{
  border-color: var(--studio-line) !important;
}

/* ---------- Blog / cards ---------- */
.blog-holder .isotope-item .box-holder .post-info{
  border-color: var(--studio-line) !important;
}
.blog-holder .box-holder .post-format .quote-holder{
  background: var(--studio-bg-alt) !important;
}
.blog-holder .box-holder .post-format .quote-holder blockquote{
  color: var(--studio-ink-soft) !important;
}
.blog-holder .box-holder .post-format .post-type{
  background: var(--studio-ink) !important;
}
.blog-holder .box-holder .post-format .post-type i,
.blog-holder .box-holder .post-format .hover-state i{
  color: var(--studio-bg) !important;
}
.blog-holder .box-holder .post-info h2 a{
  color: var(--studio-ink) !important;
}
.blog-holder .box-holder .post-info .details .category,
.blog-holder .box-holder .post-info .details .date{
  color: var(--studio-ink-soft) !important;
}
.wp-widget.widget_tag_cloud a{
  color: var(--studio-ink) !important;
  background: var(--studio-bg-alt) !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
}

/* ---------- Footer ---------- */
.main-footer, .main-footer.main-footer-inverted{
  background: var(--studio-dark) !important;
  color: var(--studio-bg) !important;
  border-top: 1px solid var(--studio-line) !important;
}
.main-footer .footer-bottom a{
  color: #c9c6bf !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  font-size: 12px !important;
}
.main-footer .footer-bottom a:hover,
.main-footer .footer-bottom a:after{
  color: var(--studio-accent) !important;
}
.main-footer .footer-bottom-content{
  padding: 32px 0 !important;
}

/* ---------- Cookie bar ---------- */
#cookie-law-info-bar{
  background: var(--studio-dark) !important;
  color: var(--studio-bg) !important;
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
}
#cookie-law-info-bar a, .cli-bar-message{
  color: var(--studio-bg) !important;
}
.cli-plugin-main-button{
  border-radius: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}
