/*
Theme Name: Chagible
Theme URI: https://chagible.com
Description: Exclusive for Chagible website.
Author: Markegile
Author URI: https://chagible.com
License: Exclusive for Chagible website.
License URI: https://chagible.com/terms-of-use
Version: 1.2
*/

/* Design Tokens */
:root{
  --color-text:#000;
  --color-muted:#666;
  --color-subtle:#999;
  --color-border:#eaeaea;
  --color-bg:#fff;
  --color-bg-subtle:#f6f6f6;

  --ff-sans: Arial, sans-serif;
  --ff-slab: 'Roboto Slab', Arial, sans-serif;

  --post-title-transform:none;
}
body.caps-titles{ --post-title-transform:uppercase; }

/* Global Resets and Base */
*, *::before, *::after{ box-sizing:border-box; }
html, body{
  margin:0; padding:0; height:auto; min-height:100%;
  background:var(--color-bg); color:#999;
  font-family:var(--ff-sans);
  font-size:14px; font-weight:400; line-height:1.85;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  scroll-behavior:smooth;
  text-rendering:optimizeLegibility;
}
img{ border:none; padding:0; max-width:100%; height:auto; }
a{
  color:var(--color-text);
  text-decoration:underline;
  text-underline-offset:2px;
  transition:color .25s ease, opacity .25s ease;
}
a:hover{ color:#333; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline:3px solid #3b1872; outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
}
p{ margin:6px 0; }
ul,ol{ margin:5px; padding:0; }
blockquote{
  border-left:1px solid #ccc; margin:15px; padding:0 12px; font-style:italic;
}
code, pre{ font-family:"Courier New", Courier, monospace; }

/* Titles and Headings */
h1,h2,h3,h4,h5,h6{
  color:var(--color-text);
  font-family:var(--ff-slab);
  line-height:1.25;
  margin:20px 0;
  text-transform:none;
}
h1{ font-size:36px; text-transform:none; font-weight:700; }

/* Desktop/Article Default Hierarchy */
h2{ font-size:20px; font-weight:700; }
h3{ font-size:18px; font-weight:600; }
h4{ font-size:15px; font-weight:400; line-height:1.2; }
h5{ font-size:12px; font-weight:400; line-height:1.2; }
h6{ font-size:10px; font-weight:400; line-height:1.2; }

.u-title-caps,
.u-title-caps h1,
.u-title-caps h2,
.u-title-caps .entry-title{ text-transform:none !important; letter-spacing:1px; }
.u-title-normal,
.u-title-normal h1,
.u-title-normal h2,
.u-title-normal .entry-title{ text-transform:none !important; letter-spacing:normal !important; }

#container{ width:100%; display:block; clear:both; overflow:hidden; margin:0; padding:0; }
#wrapper{
  max-width:1440px;
  margin:0 auto;
  padding:0 32px;
}

/* Header */
.site-title,
.site-description {
  display: none !important;
}

#header{ width:100%; margin:0; float:left; clear:left; position:relative; }
#headerbg{
  position:relative; z-index:0; width:100%; float:left; clear:left; margin:0;
  min-height:80vh; background:#000;
}

#headerin{
  width:100%; float:left; clear:left; background:#fff;
  padding-top:20px; padding-bottom:20px; position:relative; z-index:2;
}
.home #headerin{ background:#fff; }

#headerline{
  max-width:1450px;
  margin:0 auto;
  padding:0 32px;
}

#logo{ width:30%; float:left; margin-top:0; }

#logo a{
  color:var(--color-text);
  text-decoration:none;
}

#logo a img{
  float:left;
  margin-bottom:5px;
  width:220px;
  height:auto;
}

h1.site-title{
  font-family:var(--ff-slab);
  font-size:25px; color:var(--color-text); text-transform:none;
  line-height:100%; margin:0 0 4px; float:left; letter-spacing:2px; font-weight:600; clear:left; white-space:nowrap;
}
h2.site-description{
  font-family:var(--ff-slab);
  font-size:15px !important; text-transform:none; margin:3px 0 0 !important;
  color:var(--color-text); font-weight:400; line-height:1.25 !important; float:left; clear:left; white-space:nowrap;
}

#headerimage{
  box-sizing:content-box; position:absolute; z-index:-1; width:100%; height:100%;
  top:0; left:0; background-size:cover; background-position:center center;
}

/* Header CTA Boxed */
#mainmenu .sf-menu > li:last-child > a {
  background: #000 !important;
  color: #fff !important;
  border: 2px solid #000;
  padding: 10px 22px !important;
  border-radius: 4px;
  text-decoration: none !important;
  line-height: 1.2;
  margin-left: 14px;
  display: inline-flex !important;
  align-items: center;
  font-weight: 600;
  transition: all 0.2s ease;
}

#mainmenu .sf-menu > li:last-child > a:hover {
  background: #fff !important;
  color: #000 !important;
}

.mmenu > ul > li:last-child > a {
  background: transparent !important;
  color: #000 !important;
  border: 2px solid #000;
  border-radius: 4px;
  margin: 12px 15px !important;
  padding: 14px 18px !important;
  text-align: center;
  font-weight: 600;
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.mmenu > ul > li:last-child > a:hover {
  background: #000 !important;
  color: #fff !important;
}

/* Search */
#searchform{
  margin:10px 8px 0 0; float:left; width:170px; padding:0;
}
#searchform input#s{
  width:157px; height:20px; padding:2px 0 0 3px; background:none;
  border:1px solid var(--color-border); font-size:11px; color:var(--color-text);
}
#searchform input#searchsubmit{ display:none; }

.error404 form,
.search-results form,
.search-no-results form,
.blog form,
.archive form {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 30px auto;
}

.search-results .page-content,
.search-no-results .page-content {
    text-align: center;
}

.error404 input[type="search"],
.search-results input[type="search"],
.search-no-results input[type="search"],
.blog input[type="search"],
.archive input[type="search"] {
    width: 260px;
    max-width: 70%;
    box-sizing: border-box;
}

/* Main Menu (Superfish) */
#mainmenu{ width:55%; float:right; margin:0; }
.sf-menu, .sf-menu *{ margin:0; padding:0; list-style:none; }
.sf-menu{ float:right; margin-bottom:1em; }
.sf-menu > li{ float:left; position:relative; }

.sf-menu a{
  display:block;
  position:relative;
  padding:7px 20px;
  white-space:nowrap;
  text-decoration:none;
  font-size:12px;
  color:var(--color-text);
  font-family:var(--ff-slab);
  font-weight:600;
  letter-spacing:1px;
}
.sf-menu li:hover > ul, .sf-menu li.sfHover > ul{ display:block; }
.sf-menu ul{
  position:absolute; display:none; top:100%; left:0; z-index:99;
  min-width:12em; box-shadow:2px 2px 6px rgba(0,0,0,.2); background:#fff;
}
.sf-menu ul ul{ top:0; left:100%; }
.sf-menu ul li a{
  color:var(--color-text); font-size:13px; text-transform:none; line-height:175%;
  padding:7px 15px;
}
.sf-menu a:hover, .sf-menu li.current-menu-item a{ color:#656565; }

.sf-menu a,
.mmenu ul li a {
  text-transform: none !important;
  font-size: 17px !important;
  letter-spacing: 0.3px;
  font-family: var(--ff-slab) !important;
}

/* CTA Button Flip */
a.dbutton{ perspective:1000px; }
a.dbutton span{
  position:relative; display:inline-block; padding:0 54px; line-height:44px; background:#000;
  transition:transform .3s; transform-origin:50% 0; transform-style:preserve-3d;
  font-size:13px; font-weight:700; letter-spacing:.5px; color:#fff; text-transform:none;
}
.mask a.dbutton span, .box a.dbutton span, #topwidget a.dbutton span{ background:#fff; color:#000; }
a.dbutton span::before{
  position:absolute; top:100%; left:0; width:100%; height:100%; background:#fff;
  content:attr(data-hover); transition:background .3s; transform:rotateX(-90deg); transform-origin:50% 0;
}
.mask a.dbutton span::before, .box a.dbutton span::before, #topwidget a.dbutton span::before{ background:#000; }
a.dbutton:hover span, a.dbutton:focus span{ transform:rotateX(90deg) translateY(-22px); }
a.dbutton:hover span::before, a.dbutton:focus span::before{ background:#000; }
.mask a.dbutton:hover span::before,
.mask a.dbutton:focus span::before,
.box a.dbutton:hover span::before,
.box a.dbutton:focus span::before,
#topwidget a.dbutton:hover span::before,
#topwidget a.dbutton:focus span::before{ background:#fff; }

/* Front Widgets */
.frontwidget{
  max-width:900px; margin:0 auto; text-align:center; padding:0 25px;
  content-visibility:auto; contain-intrinsic-size:800px;
}
.frontwidget .widget{ width:100%; margin:80px 0 20px; float:left; clear:left; opacity:1; }
.frontwidget h2.widget-title{
  font-weight:300; font-size:30px; margin:0 0 30px; text-transform:none;
}
.frontwidget ul{ margin:0; padding:0; width:100%; float:left; clear:left; }
.frontwidget ul li{ list-style:none; width:100%; padding:5px 0; margin-top:2px; }
.frontwidget ul li a{ text-decoration:underline; border-radius:3px; padding:0; color:var(--color-text); }
.frontwidget ul li a:hover, .frontwidget a:hover{ text-decoration:none; }

/* Content Areas */
#contentwrapper{
  width:100%; float:left; clear:left; margin:60px 0 60px; padding:0; position:relative; opacity:1;
}
#searchresult, #content{ width:60%; float:left; margin-top:20px; padding:0; }
#contentfull{ width:100%; float:left; clear:left; margin:0; padding:0; }

.bg-img{
  box-sizing:content-box; position:absolute; top:0; left:0; width:100%; height:100%;
  background-size:cover; background-position:center center; z-index:0; opacity:.4;
}

.search-results #searchresult{ text-align:left; }
.search-results .type-product,
.search-results .type-page,
.search-results .type-portfolio{
  width:100%; float:left; clear:left; background:none; margin-bottom:40px;
}
.search-results .pagination{ display:block !important; }

.post{ width:100%; float:left; clear:left; margin:0 0 60px; padding:0; }
.singular .post{ margin-bottom:0; }
.entry p{ margin:8px 0; }
.post li{ margin-left:15px; }

.entry,
.entry p,
.entry li,
.entry table,
.entry pre,
.entry dl,
.entry dd,
.entry dt,
.entry blockquote,
.post,
.page,
.entry-content,
.wp-block-post-content,
.content-area,
.single-post .entry-content,
.page .entry-content{
  font-family:var(--ff-slab) !important;
  color: #000 !important;
}

.postcat{
  width:100%;
  float:left;
  margin:0 0 10px;
}

.postcat a{
  font-size:12px;
  font-weight:400;
  text-transform:none;
  text-decoration:none;
  color:#666;
}

.postcat a:hover{
  color:#333;
}

.postcat span{
  font-size:12px;
  font-weight:400;
  text-transform:none;
  text-decoration:none;
  border-radius:15px;
  color:#999;
  margin-right:10px;
}

a.more-link{
  color:var(--color-text); font-weight:600; text-decoration:none; font-size:12px;
  text-transform:none; letter-spacing:1px; display:block; border-bottom:1px solid var(--color-border);
  margin-top:30px; height:12px; width:80%;
}
a.more-link span{
  background:#fff; padding:10px 15px; border-radius:3px; border:1px solid var(--color-border);
  transition:all .3s; margin-left:10px;
}
a.more-link span:hover{ background:var(--color-border); }

.pagination{
  width:100%;
  height:50px;
  margin-top:40px;

  display:flex;
  justify-content:center;
  align-items:center;
  grid-column:1 / -1;
  float:none;
  clear:both;
}

.pagination h2{ display:none; }
.pagination span, .pagination a{
  transition:all .3s ease; margin-right:15px; text-decoration:none; font-family: var(--ff-slab);
  font-size:18px; font-weight:600; text-transform:none; color:var(--color-text);
}
.pagination a:hover, .pagination .current{ color:#999; }

.navigation h1{ display:none; }
.post-navigation{
  width:100%; float:left; clear:none; margin-top:30px;
  border-top:1px solid #f6f6f6; border-bottom:1px solid #f6f6f6;
  padding:40px 0;
}
.post-navigation a{
  text-decoration:none; color:#000; text-transform:none; letter-spacing:1px; font-weight:600;
}
.post-navigation a:hover{ color:#999; }
.post-navigation .nav-previous{ width:40%; float:left; position:relative; padding-left:60px; }
.post-navigation .nav-next{ width:40%; float:right; text-align:right; position:relative; padding-right:60px; }
.post-navigation span.meta-nav{ width:100%; display:block; line-height:32px; }
.post-navigation .nav-previous a:before{
  content:'\f431'; display:inline-block; -webkit-font-smoothing:antialiased; font:normal 64px/1 'Genericons';
  color:var(--color-border); transform:rotate(90deg); position:absolute; left:0; top:50%; margin-top:-32px;
}
.post-navigation .nav-next a:after{
  content:'\f432'; display:inline-block; -webkit-font-smoothing:antialiased; font:normal 64px/1 'Genericons';
  color:var(--color-border); transform:rotate(90deg); position:absolute; right:0; top:50%; margin-top:-32px;
}

p.singletags{ line-height:30px; margin-top:40px; }
p.singletags a{
  text-decoration:none; color:var(--color-text); font-size:14px; margin-left:15px; margin-bottom:3px; transition:all .3s ease;
}
p.singletags a:hover{ color:#999; }
p.singletags:before{
  content:'\f302'; display:inline-block; -webkit-font-smoothing:antialiased; font:normal 16px/1 'Genericons';
  vertical-align:middle; color:var(--color-text); text-align:center;
}

/* Content and Page Titles */
h1.page-title,
h1.entry-title{
  font-family:var(--ff-slab);
  font-size:30px; color:var(--color-text); margin:0 0 20px;
  line-height:110%; font-weight:300; letter-spacing:1px; text-align:center;
  text-transform:var(--post-title-transform) !important;
}
.single-product h1.entry-title,
.single-portfolio h1.entry-title,
.single-post h1.entry-title,
h2.entry-title{
  font-family:var(--ff-slab);
  font-size:30px; color:var(--color-text); margin:10px 0 0;
  line-height:110%; letter-spacing:1px; text-align:left; font-weight:500;
  text-transform:var(--post-title-transform) !important;
}
h2.entry-title a{
  text-decoration:none; color:var(--color-text); font-size:22px; line-height:110%;
  text-transform:var(--post-title-transform) !important;
}

/* Archive Descriptions */
.term-description, .archive .taxonomy-description{
  max-width:900px; margin:0 auto; text-align:center;
}

/* Right Sidebar */
#rightbar{ width:250px; float:right; margin-top:30px; }
#rightbar .widget{ width:100%; margin-bottom:30px; float:left; clear:left; font-size:13px; }
#rightbar h2.widget-title{
  font-size:13px; color:var(--color-text); margin:0 0 10px; text-transform:none; letter-spacing:1px; font-weight:500;
}
#rightbar ul{ margin:0; padding:0; width:100%; float:left; clear:left; }
#rightbar ul li{ list-style:none; width:100%; padding:5px 0; margin-top:2px; }
#rightbar ul li a{ text-decoration:underline; border-radius:3px; padding:0; color:var(--color-text); }
#rightbar ul li a:hover{ text-decoration:none; }
#rightbar a{ text-decoration:underline; }
#rightbar a:hover{ text-decoration:none; }
#rightbar #searchform{ width:100%; margin:10px 0 0; }
#rightbar #searchform input#s{ width:96%; border:1px solid var(--color-border); color:var(--color-text); }
#rightbar select{ max-width:100%; }

/* Author Widgets */
.widget_author_grid ul{ list-style:none; margin:0 0 25px !important; }
.widget_author_grid ul li{
  width:auto !important; padding:0 !important; margin:0 !important; float:none !important;
  display:inline-block !important; position:relative !important;
}
.widget_author_grid .avatar{ border:1px solid var(--color-border); padding:2px; margin-right:5px; }
.widget_authors ul li strong{
  font-weight:600; text-transform:none; width:100%; float:left; clear:left;
}
.widget_authors ul li strong:hover{ text-decoration:underline; }
.widget_authors .avatar{ border:1px solid var(--color-border); padding:2px; margin:20px auto 0 !important; float:none; }


/* Footer */
#footer{
  width:100%;
  display:block;
  background:#000;
  float:none;
  clear:both;
  overflow:hidden;
  margin:0;
  padding:0;
  font-family:var(--ff-slab) !important;
}

/* WordPress Core Content and Media Styling */
embed, iframe, object, video{ max-width:100%; }
.entry-content .twitter-tweet-rendered{ max-width:100% !important; }

.alignleft{ float:left; margin-right:10px; margin-top:10px; }
.alignright{ float:right; margin-left:10px; margin-top:10px; }
.aligncenter{ display:block; margin-left:auto; margin-right:auto; }

.wp-caption{
  max-width:100%; padding:4px; text-align:center; border:none; background:var(--color-border);
}
.wp-caption .wp-caption-text, .gallery-caption, .entry-caption{ font-size:12px; }
img.wp-smiley, .rsswidget img{
  border:0; border-radius:0; box-shadow:none; margin:0; padding:0;
}
.gallery{ margin:0 auto; }
.gallery .gallery-item{ float:left; margin:0; padding:0; }
.gallery-columns-2 .gallery-item{ width:30%; }
.gallery-columns-4 .gallery-item{ width:25%; }
.gallery img{
  padding:5px; background:var(--color-border); border:none !important; transition:all .3s ease;
}
.gallery img:hover{ background:#d8d8d8; }
.gallery-columns-2 .attachment-medium,
.gallery-columns-4 .attachment-thumbnail{ max-width:100%; height:auto; }
.gallery .gallery-caption{ color:var(--color-text); font-size:12px; margin:0 0 12px; }
.gallery dl, .gallery dt{ margin:0; padding:0; }
.gallery br+br{ display:none; }
.size-auto, .size-full, .size-large, .size-medium, .size-thumbnail{ max-width:100%; height:auto; }

.entry pre{
  border:1px solid var(--color-border); color:var(--color-text);
  font-size:12px; line-height:1.714285714; margin:24px 0; overflow:auto; padding:24px;
}
.entry table{
  border:1px solid var(--color-border); color:var(--color-text);
  font-size:12px; line-height:2; margin:0 0 24px; width:100%;
}
.entry table caption{ font-size:16px; margin:24px 0; }
.entry td{ border-top:1px solid var(--color-border); padding:6px 10px 6px 0; }
.entry dl{ margin:0 1.714285714rem; }
.entry dt{ font-weight:bold; line-height:1.714285714; }
.entry dd{ line-height:1.714285714; margin-bottom:1.714285714rem; }

#archivelist{ float:left; margin-right:0; }
#archivelist ul{ height:auto; margin-bottom:30px; }
#archivelist ul li{ list-style:none; line-height:35px; }
#archivelist ul li a{ color:var(--color-muted); text-transform:none; }
#archivelist ul li a:hover{ text-decoration:none; }

.sticky{}
.bypostauthor{}
.mmenu{ display:none; }

/* Full-Width Center Archives */

.page h1.page-title,
.page h1.entry-title,
.archive h1.page-title,
.archive .page-title,
.home.blog h1.page-title{ text-align:center !important; float:none !important; width:100%; }
.category .page-header,
.taxonomy .page-header,
.archive.category .page-header,
.archive .archive-header{ display:block !important; }
.category .page-header > *,
.taxonomy .page-header > *,
.archive .archive-header > *{ float:none !important; }
.category .page-header .page-title,
.category .page-header h1,
.category .archive-title,
.category h1.page-title,
.taxonomy .page-header .page-title,
.taxonomy .page-header h1,
.archive .archive-header .page-title,
.archive .archive-header h1,
.archive .archive-title{
  text-align:center !important; width:100% !important; margin-left:auto !important; margin-right:auto !important; display:block !important;
}
.archive #contentwrapper > h1:first-child,
.archive #content > h1:first-child,
.archive .content-area > h1:first-child,
.archive .site-main > h1:first-child{
  text-align:center !important; width:100% !important; margin-left:auto !important; margin-right:auto !important; display:block !important;
}

.archive #contentwrapper,
.blog #contentwrapper,
.search #contentwrapper {
  display: block;
}

.archive #content,
.blog #content,
.search #content {
  width: 100%;
  float: none;
}

.archive #rightbar,
.blog #rightbar,
.search #rightbar {
  display: none;
}

.archive-search {
  display: flex;
  justify-content: center;
  margin: 15px 0 35px;
}

.archive-search .search-form {
  display: flex;
  gap: 8px;
  width: 100%;
  max-width: 520px;
}

.archive-search .search-field {
  flex: 1;
  padding: 10px 12px;
  font-size: 16px;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  background: var(--color-bg);
  color: var(--color-text);
}

.archive-search .search-submit {
  padding: 10px 16px;
  border: 1px solid var(--color-border);
  background: var(--color-bg);
  border-radius: 6px;
  font-family: var(--ff-slab);
  cursor: pointer;
  font-weight: 500;
  text-transform: none;
  transition: background 0.3s ease, color 0.3s ease;
}

.archive-search .search-submit:hover {
  background: var(--color-bg-subtle);
  color: var(--color-text);
}

.search .archive-search {
  display: flex;
  justify-content: center;
  margin: 15px 0 35px;
}

/* Blog Grid Settings */
@media screen and (min-width: 768px) {

  body.blog #content,
  body.archive #content {
    float: none !important;
    width: auto !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 32px;
    padding-right: 32px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px;
  }

  body.blog .post,
  body.archive .post {
    float: none !important;
    width: 100%;
    margin: 0;
  }

  body.blog .post img,
  body.archive .post img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
  }
}

/* Search Grid */

body.search #searchresult {
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 0 32px !important;

  float: none !important;
  clear: both !important;

  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 48px !important;
}

body.search #searchresult article {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}

body.search #searchresult img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  display: block !important;
}

/* Search Mobile Fix */

@media screen and (max-width: 767px) {

  body.search #searchresult {
    display: block !important;
    width: 100% !important;
    padding: 0 20px !important;
  }

  body.search #searchresult article {
    width: 100% !important;
    margin-bottom: 40px !important;
  }

  body.search #searchresult img {
    height: auto !important;
  }

}

body.search #searchresult .pagination {
  grid-column: 1 / -1;
  display: flex !important;
  justify-content: center !important;
  align-items: center;
  width: 100%;
  margin-top: 30px;
}

/* Gutenberg: Neutralize Forced Uppercase */
.wp-block-heading.has-text-transform-uppercase,
.wp-block-heading.is-style-uppercase,
.has-uppercase-text-transform{ text-transform:none !important; }

/* Responsive */

@media screen and (max-width:1057px){
  #footerwidgets .widget{ width:40%; margin-right:5%; }
}

@media screen and (max-width:768px){
  html{ -webkit-text-size-adjust:none; }

  #header #mainmenu{ display:none; }
  #logo{ width:50%; margin-bottom:10px; }

  .mmenu{
    display:block; font-family:var(--ff-slab); font-size:14px; font-weight:100;
    width:100%; float:left; clear:left; position:relative; z-index:10;
  }
  .mmenu ul{ list-style:none; padding:0; text-align:left; margin:0 0 10px; position:relative; }
  .mmenu ul li{ float:left; position:relative; }
  .mmenu ul li span.arrow{
    display:block; position:absolute; top:32px; color:var(--color-text); width:20px; left:50%;
    margin-left:-10px; text-align:center; font-size:7px; z-index:5; cursor:pointer;
  }
  .mmenu ul li a{
    display:block; color:var(--color-text); padding:15px 20px; border-bottom:1px solid #ccc; text-decoration:none;
    font-weight:600; letter-spacing:1px; font-size:11px; text-transform:none;
    font-family:var(--ff-slab);
  }
  .mmenu ul li ul{
    list-style:none; padding:0; display:none; position:absolute; left:0; width:160px; margin-bottom:0;
  }
  .mmenu ul li ul li{ width:160px; }
  .mmenu ul li ul li a{ background:#eaeaea; border-bottom:1px solid #ccc; padding:15px; }
  .mmenu ul li ul li a:hover{ color:#656565; }
  .mmenu ul li.current-menu-item a,
  .mmenu ul li:hover a{ color:#656565; }
  .mmenu ul li:hover ul{ display:block; }

/* Burger Icon */
  #headerline{
    position:relative;
    padding-right:56px;
  }

  .mmenu{ position:static; }

  .mmenu .nav-bars{
    display:block !important;
    position:absolute !important;
    top:18px !important;
    right:25px !important;
    left:auto !important;
    width:32px;
    height:32px;
    color:var(--color-text);
    font-size:24px;
    cursor:pointer;
    z-index:1000;
  }

  .mmenu .nav-bars::before{
    content:'\f419'; display:inline-block; -webkit-font-smoothing:antialiased;
    font:normal 22px/32px 'Genericons'; color:var(--color-text); transition:all .3s ease;
  }
  .opened .nav-bars::before{ content:'\f406'; }

  .mmenu.mobile ul{ display:none; }
  .mmenu.mobile ul li{ width:100%; float:none; }
  .mmenu.mobile ul li span.arrow{ display:block; top:6px; font-size:16px; right:2px; left:auto; padding:10px; }
  .mmenu.mobile ul li span.arrow:hover{ color:#aaa; }
  .mmenu.mobile ul li span.arrow.arrow-rotate{ transform:rotate(180deg); }
  .mmenu.mobile ul li a{ padding:15px 0 15px 25px; }
  .mmenu.mobile ul li ul{ position:static; width:100%; }
  .mmenu.mobile ul li ul li{ width:100%; }

  #content{ width:100%; }
  #rightbar{ width:100%; float:left; clear:left; }

/* Mobile Article Heading Scale */
  .entry-content h2,
  .wp-block-post-content h2,
  .post-content h2,
  .content-area h2{
    font-size:20px !important; line-height:1.2 !important; margin:16px 0 12px !important;
    letter-spacing:0 !important; word-break:normal; overflow-wrap:anywhere; hyphens:auto;
    text-transform:none !important;
  }
  .entry-content h3,
  .wp-block-post-content h3,
  .post-content h3,
  .content-area h3{
    font-size:18px !important; line-height:1.2 !important; margin:14px 0 10px !important; text-transform:none !important;
  }
  .entry-content h4,
  .wp-block-post-content h4,
  .post-content h4,
  .content-area h4{
    font-size:15px !important; line-height:1.2 !important; margin:12px 0 8px !important; text-transform:none !important;
  }
  .entry-content h5,
  .wp-block-post-content h5,
  .post-content h5,
  .content-area h5{
    font-size:12px !important; line-height:1.2 !important; margin:10px 0 6px !important; text-transform:none !important;
  }
  .entry-content h6,
  .wp-block-post-content h6,
  .post-content h6,
  .content-area h6{
    font-size:10px !important; line-height:1.2 !important; margin:8px 0 4px !important; text-transform:none !important;
  }

  .category .page-header .page-title,
  .taxonomy .page-header .page-title,
  .category .page-title,
  .taxonomy .page-title{ text-align:center !important; }
}

@media screen and (max-width:620px){
  #footerwidgets .widget{ width:95%; margin-left:5%; margin-right:0; }
}

/* Search/Archive Safety */
.blog #content .post{ padding-bottom:30px; }
.attachment-blanche-blogthumb{ opacity:1; }

/* Neutralize Unintended Uppercase in Content */
.entry-content h2,
.wp-block-post-content h2,
.post-content h2,
.content-area h2,
.entry-content h3,
.wp-block-post-content h3,
.post-content h3,
.content-area h3{
  letter-spacing:normal !important; text-transform:none !important;
}

.entry h2.entry-title {
  margin-bottom: 18px !important;
}

.entry h2.entry-title a {
  display: block;
}

.post-thumbnail,
.entry .wp-post-image {
  margin-top: 18px !important;
  display: block;
}

/* Elementor Image Carousel */
.elementor-widget-image-carousel img {
  width: 200px !important;
  height: 200px !important;
  object-fit: contain !important;
}
.elementor-widget-image-carousel .swiper-slide {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Footer Columns Grid */
.footer-columns{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:48px;
  max-width:1100px;
  width:100%;
  margin:0 auto;
  padding:70px 32px;
  text-align:left;
}

/* Mobile only */
@media (max-width: 640px){
  .footer-columns{
    grid-template-columns:1fr;
    gap:30px;
    padding:50px 24px;
  }
}

/* Footer text white */
#footer,
#footer h3,
#footer p,
#footer a,
#footer span,
#footer li{
  color: #fff !important;
}

#footer a:hover{
  color: #ccc !important;
  text-decoration: underline;
}

/* Footer Columns Grid */
.footer-columns{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 48px;
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding: 70px 32px;
  text-align: left;
}

@media (max-width: 640px){
  .footer-columns{
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 50px 24px;
  }
}

/* Column titles */
.footer-columns h3{
  font-size: 22px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: normal;
  margin: 0 0 18px;
}

/* Column links */
.footer-columns p{
  margin: 6px 0;
  line-height: 1.8;
}

.footer-columns p a{
  text-decoration: none;
  font-size: 13px;
}

/* Copyright bar */
#copyinfo{
  border-top: 1px solid rgba(255,255,255,0.1);
  text-align: center;
  padding: 18px 32px;
  width: 100%;
  display: block;
  box-sizing: border-box;
}

#copyinfo p{
  margin: 0 auto;
  color: #fff !important;
  text-align: center;
  width: 100%;
}