/*Theme Name: Spa Salon Pro
Theme URI: https://demo.com/products/demo
Author: FT themes
Author URI: https://demo.com
Description:
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: primary-theme
Tags: two-columns, right-sidebar, left-sidebar, flexible-header, custom-background, custom-colors, custom-header, custom-menu, custom-logo, featured-image-header, featured-images, footer-widgets, post-formats, sticky-post, theme-options, threaded-comments, translation-ready, blog, entertainment, news, portfolio
*/
html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust:     100%;
}
body.custom-background {
    background-color: #fff !important;
    background-repeat: no-repeat !important;
}
body {
    margin: 0;
}
@media screen and (min-width: 320px) and (max-width: 425px) {
html, body {
scroll-behavior: auto !important;
}
body {
    overscroll-behavior: contain;
}
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
    margin: 0;
}
audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}
audio:not([controls]) {
    display: none;
    height: 0;
}
[hidden],
template {
    display: none;
}
a {
    text-decoration: none;
}
a:active,
a:hover {
    outline: 0;
    text-decoration:none;
}

a {
    outline: 0 none;
    text-decoration: none;
}
abbr[title] {
    border-bottom: 1px dotted;
}
b,
strong {
    font-weight: bold;
}
dfn {
    font-style: italic;
}
mark {
    background: #ff0;
    color: #000;
}
small {
    font-size: 80%;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    top: -0.5em;
}
sub {
    bottom: -0.25em;
}
img {
    border: 0;
}
svg:not(:root) {
    overflow: hidden;
}
hr {
    box-sizing: content-box;
    height: 0;
}
pre {
    overflow: auto;
}
code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}
button {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}
button[disabled],
html input[disabled] {
    cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}
input {
    line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}
input[type="search"] {
    -webkit-appearance: textfield;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
fieldset {
    margin: 0 2px;
    padding-top: 8px;
}
legend {
    border: 0;
    padding: 0;
}
textarea {
    overflow: auto;
}
optgroup {
    font-weight: bold;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
td,
th {
    padding:0px;
}
/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
    color: #444;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    font-weight: 300;
    font-family: 'Oswald', sans-serif;
}
h1{
    font-size: 28px;
    margin-bottom: 15px;
}
h2{
    font-size: 26px;
    margin-bottom: 15px;
}
h3{
    font-size: 30px;
    margin:20px 0 15px 0;
}
h4{
    font-size: 22px;
    margin-bottom: 10px;
}
h5{
    font-size: 20px;
    margin-bottom: 10px;
}
h6{
    font-size: 18px;
    margin-bottom: 10px;
}
p {
    margin:0 0 15px;
}

dfn,
cite,
em,
i {
    font-style: italic;
}

#innerpage-box blockquote p{ margin: 0;
    font-weight: 400;
}
blockquote {
    top: 2em;
    background-color: #f2f2f2;
    position: relative;
    clear: both;
    margin: 30px 0px;
    padding: 1em 2em 1em 3em !important;
    font-size: 16px;
    color: #212121;
    font-style: italic;
    border-radius: 20px;
}
blockquote:before {
    content: "";
    position: absolute;
    top: 20px;
    clear: both;
    padding-left: 1em;
    border-left: 4px solid #fff;
    bottom: 20px;
    left: 20px;
}

q:before,
q:after {
    content: "";
}
pre {
    background: #eee;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 15px;
    max-width: 100%;
    overflow: auto;
    padding: 15px;
}
code,
kbd,
tt,
var {
    font-size: 15px;
}
abbr,
acronym {
    border-bottom: 1px dotted #666;
    cursor: help;
}
mark,
ins {
    text-decoration: none;
}
big {
    font-size: 125%;
}
select {
    border: 1px solid #EEE;
    height: 40px;
    padding: 3px 40px 3px 8px;
    background-color: transparent;
    line-height: 100%;
    outline: 0;
    background-image: url(images/arrow.png);
    background-position: right;
    background-repeat: no-repeat;
    position: relative;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
}
.clearfix{clear:both;}

/*padding*/

.pd-0{ padding: 0;}
.pd-1{ padding: 5px;}
.pl-0{padding-left:0 ;}
.pl-1{padding-left: 1em;}
.pd-4{padding: 0 2em;}

/*margin*/

.mr-0{margin-left: 0 !important;margin-right: 0 !important;}


.justify-content-center { -ms-flex-pack: center!important; -webkit-box-pack: center!important; text-align: center;justify-content: center!important;}
/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
    box-sizing: border-box;
}
*,
*:before,
*:after {    box-sizing: inherit;
}

blockquote,
q {
    quotes: "" "";
        -moz-box-shadow: -1px 0px 9px rgba(152, 152, 131, 0.2);
    -webkit-box-shadow: -1px 0px 9px rgba(152, 152, 131, 0.2);
    box-shadow: -1px 0px 9px rgba(152, 152, 131, 0.2);
}
hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin-bottom: 15px;
}
ul,
ol {
    margin: 0 0 15px 20px;
    padding: 0;
}
ul {
    list-style: disc;
}
ol {
    list-style: decimal;
}
li > ul,
li > ol {
    margin-bottom: 0;
    margin-left: 15px;
}
dt {
    font-weight: bold;
}
dd {
    margin: 0 15px 15px;
}
img {
    height: auto; /* Make sure images are scaled correctly. */
    max-width: 100%; /* Adhere to container width. */
    vertical-align: middle;
}
table {
    margin: 0 0 15px;
    width: 100%;
}
/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
.wpcf7 form .wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid #00a0d2;
    color: red;
    z-index: 1;
    position: relative;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    background: #fe5722;
    padding: 10px 20px;   
    color: #FFF;
    border: 0;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 5px;
    box-shadow: 0px 6px 10px -4px rgba(0,0,0,0.4);
        font-size: 16px;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
    opacity: 1;
}
button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
    outline: 0;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
    color: #404040;
    border: 1px solid #EEE;
    transition:all 0.3s ease-in-out;
    -moz-transition:all 0.3s ease-in-out;
    -webkit-transition:all 0.3s ease-in-out;
    vertical-align: top;
}
.widget.widget_categories select {
    border: 1px solid #EEE;
    height: 40px;
    padding: 3px 40px 3px 8px;
    line-height: 100%;
    outline: 0;
    background-image: url("images/arrow.png");
    background-position: right center;
    background-repeat: no-repeat;
    position: relative;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
    outline: 0;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"] {
    padding: 10px 8px;
    width: 100%;
}
textarea {
    padding: 8px;
    width: 100%;
}
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
    text-decoration: none;
    transition: all 0.3s ease; 
    -moz-transition: all 0.3s ease; 
    -webkit-transition: all 0.3s ease; 
}
a:focus {
    outline: 0;
}
a:hover,
a:active {
    outline: 0;
}
/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
}
.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000; /* Above WP toolbar. */
}
/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
    display: inline;
    float: left;
    margin-right: 15px;
    border-radius: 10px;
}
.alignright {
    display: inline;
    float: right;
    margin-left: 15px;
    border-radius: 10px;
}
.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
    border-radius: 10px;
}
/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {  margin: 0 0 15px;}
.widget select {   max-width: 100%;  width: 100%;}
.widget_search .search-submit { display: none;}
/*--------------------------------------------------------------
## Asides (sidebar widgets: see .primary-theme-sidebar at end of file)
--------------------------------------------------------------*/
.recentcomments a {
    display: inline !important;
    padding: 0 !important;
    margin: 0 !important;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
    word-wrap: break-word;
}
.bypostauthor {
    display: block;
}
.author-email-url{
    margin-left: -2%;
}
#comments a:hover{
    color:#2d2d2d;
}
#commentsAdd a:hover{
    color:#2d2d2d;
}
#commentsAdd input[type="submit"]{
    background: #fc226a;
    padding: 10px 20px;
    color: #FFF;
    border: 0;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    height: 50px;
    font-size: 16px;
}
#commentsAdd input[type="submit"]:hover{
    border-radius: 5px;
    opacity: 1;
}
#content .tags a {
    margin-left: 10px;
    font-size: 15px;
}

#comments .comment-author img{border-radius: 50%;}
#comments span.fn {
    position: absolute;
    top: 17px;
}
.comment-form-url,
.comment-form-author,
.comment-form-email{
    float: left;
    margin-left: 1%;
    width: 49%;
}

.comment-respond p label{margin-bottom: 5px;}

.inner_contentbox .socialMedia ul{margin-left: 0;}
.inner_contentbox .socialMedia ul li{
    display: inline-block;
    position: relative;
    margin-bottom: 0 !important;
    padding-top: 2px !important;
}
.inner_contentbox .socialMedia ul li a{background: none !important;}
.inner_contentbox .socialMedia ul li:before{display: none !important;}
.inner_contentbox .socialMedia{text-align: right;}
.inner_contentbox .socialMedia ul li a i {
    padding: 8px 10px;
}
.author-email-url input{
    width: 100%;
}
.comment-form .form-submit{
    margin-bottom: 0
}
h3#reply-title,
h3.comments-title{
    position: relative;
    padding-bottom: 15px;
    margin-bottom: 30px;
}
h3#reply-title:after,
h3.comments-title:after{
    display: none;
    content: "";
    position: absolute;
    left: 0;
    top: 100%;
    width: 30px;
    background: #fe5722;
    height: 2px;
}
.logged-in-as,
.comment-notes{
    font-size: 0.9em;
}
/*================== New ==========================*/
div#commentsAdd {
    margin-top: 1em;
    border-top: 3px solid #000;
    padding: 2em 1em 2em 2em;
    box-shadow: 0 10px 20px rgb(0 0 0 / 10%);
}
div#commentsAdd h1 span {
    font-size: 28px;
    font-weight: 600;
    letter-spacing: 1px;
}
.commentmetadata span.reply {
    position: absolute;
    top: 0px;
    right: 0;
    font-size: 12px;
    line-height: 20px;
    color: #222;
    font-weight: 500;
    background: #ccc;
    padding: 7.5px 32px;
    text-align: center;
    border-radius: 25px;
    z-index: 1;
}

.comment-author.vcard {
    width: 15%;
    position: relative;
    float: left;
}
.commentmetadata {
    width: 85%;
    float: left;
    margin-top: 1.5em;
}
.comment-metadata a{font-weight: 600; font-size: 16px;}
.comment-metadata {
    position: absolute;
    top: 0;
    margin-left: 100%;
    width: 100%;
    line-height: 1;
}
#comments .commentmetadata p{margin: 1em 0;}

#respond #respond h3#reply-title{display: none;}
#comments ol li.comment:before{display: none;}
#comments ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
#comments li.comment{
    margin: 2em 0 5em;
    padding: 0;
}
#comments li.comment .children{
    display: block;
    margin: 20px 0 0 30px;
    padding: 0px;
    list-style: none;
}
article.comment-body {
    background: #fff;
    margin: 0px;
    position: relative;
}
.comment-list a{
    color: #404040;
}
.comment-list a:hover{
    color: #fe5722 !important;
}
.comment-list .comment-respond{
    margin-top: 20px;
    background: #FFF;
    padding: 20px;
}
.comment-list .vcard img {
    border-radius: 50%;
    margin-right: 10px;
}
.comment-list .vcard .fn{
    font-weight: normal;
    font-size: 16px;
}
.comment-list .edit-link{
    position: absolute;
    right: 0;
    top: 0;
}
.comment-list .edit-link a{
    font-size: 14px;
    display: inline-block;
    padding: 10px;
}
.comment-list .comment-meta {
    margin-bottom: 15px;
} 
.comment-list .comment-metadata {
    border-top: 1px solid #EEE;
    padding-top: 10px;
    font-size: 14px;
}
.comment-list .comment-metadata a {
    float: left;
}
.comment-list .comment-metadata .reply {
    float: right;
}
#cancel-comment-reply-link {
    float: right;
}
.nav-previous a,
.nav-next a{
    background: #fe5722;
    color: #FFF;
    display: inline-block;
    padding: 0 10px;
    font-size: 12px;
    line-height: 22px;
    position: relative;
}
.nav-next a{
    margin-right: 13px;
}
.nav-next a:after{
    content: "";
    position: absolute;
    border-left: 11px solid #fe5722;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    top: 0;
    right: -11px;
}
.nav-previous a{
    margin-left: 11px;
}
.nav-previous a:after{
    content: "";
    position: absolute;
    border-right: 11px solid #fe5722;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    top: 0;
    left: -11px;
}
.no-comments{
    color: #fe5722;
}
.pagination{
    text-align: center;
    display: block;
}
.pagination .page-numbers{
    display: inline-block;
    margin: 0 2px;
    background: #fe5722;
    color: #FFF !important;
    padding: 8px 12px;
    line-height: 1;
    border-radius: 2px;
}
.pagination .page-numbers.current,
.pagination .page-numbers:hover{
    background: #333;
    color: #FFF;
}
/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}
/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
    max-width: 100%;
}
/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
    margin-bottom: 15px;
    max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
    display: block;
    margin: 0 auto;
}
.wp-caption-text {
    text-align: center;
}
.wp-caption .wp-caption-text {
    margin: 0.8075em 0;
}
/*--------------------------------------------------------------
## Pagination
--------------------------------------------------------------*/
.pagingation{
    margin: 0px 0 3em 0;
    padding: 1em 0;
     clear: both; 
    text-align: center;

}
.pagingation a{
    background:rgba(0,0,0,0.7);
    color:#fff;
    padding:10px 15px;
    border-radius: 5px;
        border: 1px solid #ccc;
    background: #fff;
    margin: 0 1px 0 0;
    display: inline-block;
    line-height: 1.2em;
    text-decoration: none;
    color: #555;
    padding: 10px 14px;
    margin-right: 8px;
    transition: all 0.25s ease;
}
.pagingation a:hover{
    color:#fff;
}
.pagingation .current{
    color:#fff;
    padding:10px 15px;
    border-radius: 5px;
    color: #fff;
    margin: 0 1px 0 0;
    display: inline-block;
    line-height: 1.2em;
    text-decoration: none;
    padding: 10px 14px;
    border: 1px solid #ccc;
    margin-right: 8px;
}

.page-content #searchform input[type="submit"] {
    margin-top: 15px;
}
/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
    margin-bottom: 15px;
}
.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
}
.gallery-columns-2 .gallery-item {
    max-width: 50%;
}
.gallery-columns-3 .gallery-item {
    max-width: 13.33%;
}
.gallery-columns-4 .gallery-item {
    max-width: 25%;
}
.gallery-columns-5 .gallery-item {
    max-width: 20%;
}
.gallery-columns-6 .gallery-item {
    max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
    max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
    max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
    max-width: 11.11%;
}
.gallery-caption {
    display: block;
}
.ht-gallery-member-image {
    position: relative;
    overflow: hidden;
}
/*--------------------------------------------------------------
## General
--------------------------------------------------------------*/

#sample-heading-here:after {display: none !important;}
.section-title{ margin-bottom: 100px;margin-top: 20px; position: relative;}
.section-title h2 {
    position: relative;
    word-break: break-word;
    font-weight: 700;
    font-size: 60px;
    margin-bottom: 0px;
    display: inline-block;
}
.section-title h3{
    font-size: 24px;
    color: #9966cc;
    font-weight: 400;
    margin: 10px 0 0 0;
}

.inner-area-title {    
    font-size: 23px;
    font-weight: 500;
    word-break: break-word;
}
.section-area-text {    
    margin-bottom: 24px;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    word-break: break-word;
}
.textcenter{  text-align: center;}

section .darkbox{  padding:3em 0;  background: rgba(0,0,0,0.6)}
.padding0{ padding: 0;}
.ht-section-title-tagline{ margin-bottom: 3em;}
.ht-section-title{
    font-size: 33px;
    color: #323232;
    margin: 0 auto;
    font-weight: bold;
    line-height: 60px;
    word-break: break-word;
    position: relative;
}
.darkbox .ht-section-tagline{
    font-size:16px;
    width: 70%;
    margin: 0 auto 0;
    color:#fff;
}
.ht-main-title{
    position: relative;
    margin: 1em 0px 14px;
    z-index: 1;
}
.category .ht-main-title {  margin: 0 0 1.5em;}
.ht-site-title, .site-title{
    font-weight: 600;
    font-size: 32px;
    line-height: 1;
    padding: 0;
}
.ht-site-title a, .site-title a{ text-decoration: none;color: #4a4a4a;}
.ht-site-description{
    font-size: 14px;
    font-weight: normal;
    margin: 8px 0 0 0;
}
.ht-site-description a{color:#000;}
#total-breadcrumbs{
     font-size: 15px;
    margin: 0;
    color: inherit;
    display: block !important;
    text-align: center;
    padding: 0px 0 2.5em;
}
#total-breadcrumbs a{ color: #000;}
#total-breadcrumbs a:hover{ color: #fe5722;}
.taxonomy-description,
.term-description{ margin-bottom: 15px; padding: 0px 25px 25px 25px;}
.taxonomy-description p:last-child,
.term-description p:last-child{  margin-bottom: 0;}
/*======= side bar ===========*/
/*--------------------------------------------------------------
## Breadcrumb
--------------------------------------------------------------*/
.page-main-header { overflow: hidden; position: relative;}
.hederpipe{
    background: url(images/schedulepipe.png) repeat-x 0 0;
    position: relative;
    padding: 23px 0;
}
.breadcrumbbox { position: relative; padding: 0em 0em; z-index: 1;margin: 1em 0 2em;}
.breadcrumbbox span{ color:#000; margin:0 1px;font-weight: 600;}
.breadcrumbbox i {
    font-size: 20px;
    font-weight: 100;
    top: 0px;
    position: relative;
}
.breadcrumbbox .button {
    padding: 0px 0px !important;
    display: inline-block !important;
    font-size: 20px;
    font-weight: 500;
    border-radius: 50px;
    text-align: center;
    position: relative;
    z-index: 1;
}

/*===========================================
## Search & cart icon
======================================*/
.sitenav .search-icon{ position: absolute; right: 0; top: 20px; cursor: pointer; padding: 0;}
.sitenav .search-icon i{
    margin: 0;
    font-size: 16px;
    color: #fff;
    background: #ac8e50;
    padding: 13px 15px;
    border-radius: 50%;
}
.sitenav .search-bar { display: none; position: absolute; bottom: 16px; z-index: 200; right: 13%;}
.sitenav .search-bar input{display:inline-block;}
.sitenav .search-bar input[type="text"]{ 
   width:100%;
   background: rgba(33, 33, 33, 0.8);
   color:#fff;
   border:none;
}
.sitenav .search-bar input[type='submit']{ background: #000;color: #000;width: 15%;padding: 0;}
/*----------------------------------------*/
/*  Inner Page Header Area
/*----------------------------------------*/
.page-main-header .overlay1{
    position: absolute  ;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #9966cc;
    opacity: 0.5;
}
/*----------------------------------------*/
/*  01. Header Area
/*----------------------------------------*/
header .nav-menus{display: none;}
.resp_header_logo {  display: none;}
.header-transparent .resp_head_box {  padding: 12px 0 15px;}
.header-seo.header-transparent .is-fixed .main-bar p.ht-site-description { display: none;}
.resp_header_btn p {  display: none;}
.header-right .single-header-info {  text-align: right;}

header.site-header li {display: inline-block; list-style-type: none;}

/* ====== header-top ======== */

header .htop button.share-icn, header .headphone,
header button.share-icn{display: none;}
.logo { padding: 0px 5px 0 0px;}
.logobox img{ position: relative;}
header.site-header .main-dispaly.padding0 {  padding-right: 0;}
header .Hbtn a{
    margin-top: 0px;
    display: inline-block;
    position: relative;
    overflow: hidden;
    padding: 6px 30px;
    text-align: center;
    background: none;
    color: #fff;
    border: 1px solid #fff;
    font-size: 18px;
    font-weight: 500;
    z-index: 1;
    transition: all 0.4s ease 0.5s;
    border-radius: 10px;
    text-decoration: none;
}
header .Hbtn a:hover{border:1px solid transparent;}
header .Hbtn a:before,
header .Hbtn a:after {
    content: "";
    z-index: -1;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    transition: transform 0.6s;
  }
header .Hbtn a:after{
    clip-path: polygon(20% 0, 0 50%, 20% 100%, 100% 100%, 100% 0);
    left: 100%;
}
header .Hbtn a:before {
    clip-path: polygon(80% 0, 100% 50%, 80% 100%, 0 100%, 0 0);
    right: 100%;
}
header .Hbtn a:hover:before { transform: translateX(90%);}
header .Hbtn a:hover:after { transform: translateX(-90%);}


/* top-header
-------------------------------------------------------------- */

/* = Navigation hover and active menu css
-------------------------------------------------------------- */

header.site-header span.text,
.single-header-info span.theme-color {
    font-size: 14px;
    font-weight: 600;
    word-break: break-word;
}
.navigation .mainmenu{ 
    position:relative; 
    z-index:9999; 
    vertical-align:middle; 
    float: none;
}
.navigation .mainmenu li{ 
    display:inline-block; 
    position:relative; 
    line-height:normal; 
    margin: 0 8px;
}
.navigation .mainmenu li a{ 
    display:block; 
    text-align:center; 
    position:relative; 
}

/* = Navigation 2nd level css
-------------------------------------------------------------- */
.navigation .mainmenu ul.sub-menu li { 
    list-style-type: none;transition: all 0.5s;
    border-bottom: 1px solid #f1f1f1;
    transition: all 0.5s;
}
.navigation .mainmenu ul.sub-menu li:last-child { 
    border-bottom: 0px solid #f1f1f1;
}
.navigation .mainmenu li:hover ul.sub-menu{
-webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    transition: all 0.5s;
}

ul.sub-menu{
    z-index:9999;
    position:absolute;
    left:-9999px;
    border-radius: 0px;
    box-shadow: 0 0 12px rgba(0,0,0,0.2);
    left: 0;
    text-align: left;
    background: #9bb70d;
    min-width: 250px;
    z-index: 999;
    padding: 0px;
    margin-top: 0px;
    box-shadow: 0px 5px 30px rgba(0,0,0,0.13);
}
.navigation .mainmenu li ul li{
    display:block; 
    position:relative; 
    float:none; 
    line-height:18px; 
    margin-left:0; 
    margin-right:0; 
    -webkit-transform: skew(0deg); 
    -ms-transform: skew(0deg); 
    transform: skew(0deg); 
}
.navigation .mainmenu ul.sub-menu li a:hover {
    border-radius: 10px !important;
}
.navigation .mainmenu ul.sub-menu .sub-menu{border: 0;}
.navigation .mainmenu li ul li a{
    display:block; 
    padding: 5px 0px;
    position:relative;
    top:0; 
    text-align:left; 
    z-index: 1;
}
.navigation .mainmenu li:hover ul.sub-menu li {
    opacity: 1;
    visibility: visible;
}
.navigation .mainmenu ul.sub-menu li a {
    font-size: 14px;
    position: relative;
    color: #3b3fb2;
    font-weight: 600;
    margin-right: 25px;
}
.navigation .mainmenu ul.sub-menu li a:hover {
    background: #fff;
    z-index: 200;
}
.navigation .mainmenu ul.sub-menu li a {
    list-style-type: none;
    font-size: 13px;
    font-weight: 400;
    padding: 12px 8px 12px 20px;
    display: inline-block;
    width: 100%;
    margin: 0px;
}
.ht-sticky-header .header-transparent {
    position: fixed;
    left: 0;
    right: 0;
}

/* = Navigation 3rd level css
-------------------------------------------------------------- */


.header.site-header ul.sub-menu li a {
    font-size: 14px;
    font-weight: 500;
    position: relative;
}

.header.site-header ul.sub-menu li a{   
    display: block;
    vertical-align: middle;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    transition: all 0.2s ease;
    line-height: 1.4em;
    letter-spacing: .05em;
}
.mainmenu .sub-menu{border-radius: 10px;}
.sub-menu{border-radius: 0;}
ul.sub-menu, 
header.site-header ul.sub-menu {
    background-color: #000;
}
.navigation .mainmenu ul.sub-menu li.current_page_item a, 
.navigation .mainmenu ul.sub-menu li:hover a{
    transition: all 0.3s;}
.navigation .mainmenu ul.sub-menu li:hover a{padding: 12px 8px 12px 30px;transition: all 0.3s;}

.navigation .mainmenu ul.sub-menu li.current_page_item a {
    padding: 12px 8px 12px 31px;
}

.navigation .mainmenu ul.sub-menu li li{border: none;}
header.site-header ul { margin: 0;}
header.site-header .text-bx.padding0 {
    font-size: 13px;
    font-weight: 700;
}
header.site-header .list-inline.m-a0 {
   padding: 2px 0;
   float: right;
}

.navigation .mainmenu {position: relative;}
.header-icon i.fa {
    position: relative;
    top: 0px;
    font-size: 15px;
    padding-right: 9px;
    font-weight: 700;
}
.site-header{
    z-index: 99;
    position: absolute;
    width: 100%;
    background: none;
}
.site-header.header-solid {
    background-color: #ffffff;
}

.site-header ul,
.site-header ol {
    margin-bottom: 0;
}
/*without top bar*/
.extra-nav {
    float: right;
    padding: 26px 0;
    position: relative;
    z-index: 9;
}
.extra-nav .site-button-link{
    font-size:15px;
}
.extra-nav .extra-cell {
    display: inline-block;
    margin-left: 10px;
}
@media only screen and (max-width: 767px) {
    .extra-nav {
        margin-right: 15px;
    }
}

@media only screen and (max-width: 480px) {
    .extra-nav {
        margin: 0 1px 0 0;
        text-align: right;
    }
}
.new-page{
    padding: 2px 5px;
    font-size: 10px;
    background: #ff0000;
    color: #fff;
    border-radius: 4px;
    vertical-align: middle;
    margin-left: 2px;
}
.new-page.menu-new{
    font-size: 10px;
    position: absolute;
    right: 10px;
    top: 8px;
    padding: 3px 4px;
    line-height: 10px;
}

/* map page header*/

#header-part.fix-map-header .main-bar {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
}

/*---------------------------------------------------------------
15. PAGE TOP BAR (left & right content)
---------------------------------------------------------------*/
.icon-x {
    text-align: right;
}
.main-header-info {
    text-align: center;
}
.header-icon {
    display: inline-block;
    text-align: left;
}
.top-bar {
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    color: #444444;
}
.dlab-topbar-right {
    float: right;
}
.dlab-topbar-left ul,
.dlab-topbar-right ul{
    list-style:none;
    margin:0;
    padding:0;
}
.dlab-topbar-left ul li,
.dlab-topbar-right ul li{
    display:inline-block;
}
.dlab-topbar-left ul li{
    padding-right:0px;
}
.dlab-topbar-left ul li a,
.dlab-topbar-right ul li a{
    color:#444444;
}
.topbar-social li a{
    padding: 0 6px; 
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation { margin: 0 0 15px; overflow: hidden;}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous { float: left; width: 50%;}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}
.navigation .mainmenu {
    transition: padding 0.3s ease;
    -moz-transition: padding 0.3s ease;
    -webkit-transition: padding 0.3s ease;
}
.navigation .mainmenu.ht-menu { display: block !important;}
.navigation .mainmenu li { position: relative;}
.navigation .mainmenu li a {
  display: block;
  text-decoration: none;
  font-size: 15px;
  padding: 2px 0;
}
.sf-arrows .sf-with-ul { padding-right: 0em !important;}
.justify-content-end {
    -ms-flex-pack: end!important;
    justify-content: flex-end!important;
}
i.flaticon-phone-call.m-r5, 
i.ti-location-pin.m-r5 {
    margin-right: 12px;
}

/* = Navigation sticky header css
-------------------------------------------------------------- */
.top-bar-head { padding: 1em 0 0.1em 0;border-bottom: 1px solid #fff;}
.site-navigation {
    display: inline-block;
    padding: 2px 0px;
    float: right;
}
.header-transparent .sticky-header {
    padding: 14px 0;
    text-align: right;
}
.header-seo.header-transparent .is-fixed .main-bar ul {
    padding: 5px 0 10px;
    text-align: center;
}
.header-seo.header-transparent .is-fixed .main-bar ul ul.sub-menu { padding: 0px;}
.header-seo.header-transparent .is-fixed .main-bar input[type="search"] {
    top: 10px;
    position: relative;
}
.header-seo.header-transparent .is-fixed .main-bar span.sb-icon-search {  top: 8px;}
header.site-header .dlab-topbar-left {  position: relative;  top: 13px;}

/*-----------------------
## Site map Template 
-----------------------------*/

div#sitemap-box { border-top: 2px solid #f94c34;border-radius: 0;}
div#sitemap-box:before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 35px;
    border-width: 2px;
    border-style: solid;
    border-color: #f72985;
    right: 0;
    top: 16px;
    left: 0%;
    margin: 0 auto;
    border-top: none;
    border-right: none;
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(90deg);
    z-index: 1;
}
div#sitemap-box h3 {
      font-size: 20px;
    background: #2e2e2e;
    padding: 10px 10px;
    color: #ffffff;
    border-radius: 0px;
    text-align: center;
    word-break: break-word;
    box-shadow: 0px 6px 10px -4px rgba(0,0,0,0.4);
    font-weight: 500;
}
.page-template-templates main#innerpage-box div#sitemap-box h3:after {  display: none;}
main#innerpage-box div#sitemap-box ul li {list-style: none;padding-bottom: 5px;}
main#innerpage-box div#sitemap-box ul li a {position: relative;padding-left: 20px;}
main#innerpage-box div#sitemap-box ul li a:before {
    content: "\f111";
    font-family: 'Fontawesome';
    margin-right: 10px;
    color: #f72985;
    font-size: 10px;
    display: inline-block;
    transform: scale(1);
    transition: all 0.5s ease 0s;
}
main#innerpage-box div#sitemap-box ul li a:hover:before {transform: scale(1.4);}
div#sitemap-box ul { margin: 0;}
div#sitemap-box .sitemap-blogposts ul { padding: 5px 5px 5px 0;margin: 0;}
div#sitemap-box .sitemap-posts-box {margin-bottom: 15px;}
div#sitemap-box .blogpostsitemap li {list-style: none;}
div#sitemap-box .sitemap-posts-box img {width: 100%;}
div#sitemap-box h3:before {
      position: absolute;
    content: "";
    display: inline-block;
    width: 20px;
    border-width: 2px;
    border-style: solid;
    border-color: #f94c34;
    right: 0;
    top: 9px;
    left: 0%;
    margin: 0 auto;
    border-top: none;
    border-right: none;
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(90deg);
    z-index: 1;
}
div#sitemap-box ul {
    margin: 0;
    list-style: none;
    padding: 0;
    margin: 0 0 0px 20px;
}

/*************************************/
#innerpage-box {  position: relative;overflow: hidden;}


.col-container { display: table; width: 100%;}
.heading.active i {box-shadow: 0px 0px 0px 2px #FFF, 0px 0px 0px 4px #0158a6;}
.test-right img { width: 100%; height: 100%;}
.heading{cursor: pointer;}
.inside-full-height{height:100%}

/* Catalogue slider Start */
article.slider{height: auto;}
.slider {width: 86%;position: relative;height: 490px;margin: auto;overflow-x: scroll;overflow-y: hidden;}
.slider::-webkit-scrollbar {display: none;}
.slider .slides { display: flex;position: absolute;left: 0;transition: 0.3s left ease-in-out;}
.slider .slide-item { margin-right: 35px;width: 334px;margin-left: 0;}
.slider .slide-item:last-child {margin-right: 0;}

.ctrl {text-align: center;margin-top: 5px;}
.ctrl-btn {font-size: 13px !important; background: none;border: none;font-weight: 600;text-align: center;cursor: pointer;outline: none;color: #9e9e9e;position: absolute;margin-top: -60.5px;height: 23px;bottom: 0;}
.ctrl-btn:hover{color:#000;background: none;}
.ctrl-btn.pro-next {right: 45%;position: absolute;border: 2px solid #bfbfbf; padding: 3px 5px 3px 5px;margin: 0;z-index: 999;height: 45px;width: 45px;}
.ctrl-btn.pro-prev {left: 46%;position: absolute;border: 2px solid #bfbfbf;padding: 0;margin: 0; z-index: 999;height: 45px;width: 45px;}
/*--------------------------------------------------------------
## Add to card
--------------------------------------------------------------*/
.total-count .count {    
    color: #f72985;
    position: absolute;
    padding: 4px;
    z-index: 300;
    top: 16px;
    right: 35px;
    font-size: 10px;
    border-radius: 20px;
    width: 20px;
    height: 20px;
    line-height: 14px;
    text-align: center;
    background: #fff;
}
.total-count img {    width: auto;height: auto;margin: 0px 0 0;}
.total-count {
    background: #f72985;
    clip-path: polygon(0 0, 70% 0, 100% 100%, 30% 100%);
    webkit-clip-path: polygon(0 0, 70% 0, 100% 100%, 30% 100%);
    padding: 18px 45px;
}
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/

.home-page {  padding: 0 0 30px 0;}
#innerpage-box{padding:2em 0em 5em;margin-top: 2em;}
#content-box h4{ margin: 20px 0 5px 0; }
#content-box ul{ padding: 0 0 20px 10px;list-style: none;font-size: 18px;margin: 0;}
#content-box ol{ font-size: 18px;}
#content-box ol ol ,
#content-box ul ul {   margin-left: 5px !important;}
#content-box ul li:before {
    font-family: 'Fontawesome';
    margin-right: 16px;
    color: #000000;
    font-size: 10px;
}
#content-box ol li:before {
    transform: scale(1);
    transition: all 0.5s ease 0s;
}
#content-box ul#recentcomments li:before, #content-box ul#recentcomments li span:before   {
    display: none;
}

#content-box ol li:hover:before { transform: scale(1.2);}
main#innerpage-box #content-box ol {  margin: 0;}
#content-box ol {counter-reset: li;list-style: none;}
#content-box ol li {
    margin-top: 1em;
    position: relative;
    padding-left: 2.5em;
    min-height: 60px;
    padding-top: 4px;
}
#content-box ol li:before {
    content: counter(li);
    counter-increment: li;
    color: #fff;
    background: #f07100;
    border-radius: 50px;
    font-size: 14px;
    width: 34px;
    height: 34px;
    line-height: 34px;
    font-weight: 600;
    text-align: center;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

.page_featured {margin: 0 4em;margin-bottom: 2em;padding: 10em 4em;}
img.ht-page-header-img{ width: 100%;box-shadow: 0px 6px 10px -4px rgba(0,0,0,0.4);}
.sticky {   display: block;}
.total-hentry { margin: 0 0 50px;}
.byline,
.updated:not(.published) { display: none;}
.page-links {clear: both;margin: 0 0 15px;}
.ht_no_sidebar #primary{width: auto;float: none;}
.ht_no_sidebar_condensed #primary{width: 76%;float: none;margin: 0 auto;}
.ht_left_sidebar #primary{float: right;}
.ht_left_sidebar #secondary{float: left;}
.ht-post-info{float: left;width: 80px;text-align: right;}
.single .ht-post-info{margin-right: 30px;margin-bottom: 20px;}
.ht-post-info .entry-date{display: block;font-size: 0.9em;margin-bottom: 20px;}
.ht-post-info .entry-date span{ display: block;}
.ht-post-info .entry-date span.ht-day{ font-size: 60px;line-height: 1.3; color: #fe5722;}
.ht-post-info a{
    display: block;
    text-decoration: none;
    line-height: 1.4;
    padding: 20px 0 0;
    border-top: 1px solid #EEE;
    font-size: 12px;
    color: #444;
    font-weight: 300;
}
.ht-post-wrapper{padding-left: 105px;}
.entry-figure{background: #f9f9f9; text-align: center; margin-bottom: 15px;}
.entry-header .entry-title{font-weight: 300;letter-spacing: 1px;margin-bottom: 10px;}
.entry-figure + .entry-header{background: #FFF;position: relative;margin-top: -65px;width: 90%;padding: 15px 0 1px;}
.entry-header .entry-title a{ text-decoration: none; color: #333;}
.entry-categories{font-size: 14px;color: #666;font-style: italic;margin-bottom: 15px;}
.entry-categories .fa{ color: #fe5722;margin-right: 8px;}
.entry-categories a{color: #666;text-decoration: none; }
.entry-readmore{margin-top: 20px;}
.entry-readmore a{
    background: #fe5722;
    padding: 0 20px;
    line-height: 40px;
    color: #FFF !important;
    border: 0;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: inline-block;
}

.entry-readmore a:hover{background: #333; color: #FFF;}
section ul{padding: 0 0 20px 0;}
.readmore a{
    background: #4d4d4d;
    padding: 15px 40px;
    color: #fff;
    border-radius: 30px;
}
.readmore a:hover{background: #000;color:#fff;}
/*--------------------------------------------------------------
## 404 Page
--------------------------------------------------------------*/
.error404 .error-404{
    display: block;
    text-align: center;
    font-size: 200px;
    color: #000000;
    line-height: 1.2;
    color: #222;
    font-size: 220px;
    letter-spacing: 10px;
    margin: 0;
    font-weight: 700;
    text-shadow: 2px 2px 0 #c9c9c9, -2px -2px 0 #c9c9c9;
}

.error404 .oops-text{text-align: center;}
.toggle-bar{display: none;}

/*-----------------------
## page scroll
-----------------------------*/
#back2Top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 25px;
    text-decoration: none;
    z-index: 99999;
    transition: all 0.2s ease 0.2s;
    -moz-transition: all 0.2s ease;
}
.widget_calendar tfoot tr td a {
    border: none;
    padding: 0px;
    padding: 6px 20px;
    -moz-transition: all 0.3s ease;
    border-radius: 5px;
    box-shadow: 0px 6px 10px -4px rgba(0,0,0,0.4);
}
main#innerpage-box #comments li.comment {
    background: transparent;
    border: 0;
    position: relative;
    overflow: hidden;
}
main#innerpage-box div#commentsAdd textarea#comment {background: transparent;}
div#respond textarea#comment { background: transparent;}
div#comments input[type="submit"] {padding: 10px 20px;border-radius: 5px;height: 50px;}
/*-----------------------
## Start search
-----------------------------*/
main#innerpage-box h2 a {color: #000;font-weight: 600; margin-bottom: 10px;}
.entry-readmore a {
    padding: 2px 20px;
    color: #FFF;
    border: 0;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 5px;
    box-shadow: 0px 6px 10px -4px rgba(0,0,0,0.4);
}

/*--------------------------------------------------------------
## Inner Page Heading
--------------------------------------------------------------*/
body.page-template-default main#innerpage-box h1,
body.page-template-default main#innerpage-box h2,
body.page-template-default main#innerpage-box h3,
body.page-template-default main#innerpage-box h4,
body.page-template-default main#innerpage-box h5,
body.page-template-default main#innerpage-box h6,

.page-template-templates main#innerpage-box h1,
.page-template-templates main#innerpage-box h2,
.page-template-templates main#innerpage-box h3,
.page-template-templates main#innerpage-box h4,
.page-template-templates main#innerpage-box h5,
.page-template-templates main#innerpage-box h6
 {word-break: break-word;margin: 20px 0;}

#innerpage-box .wp-block-image figure {
    overflow: hidden;
    position: relative;
    border-radius: 6px;
    -webkit-transition: all 300ms cubic-bezier(0.34, 1.61, 0.7, 1);
    -moz-transition: all 300ms cubic-bezier(0.34, 1.61, 0.7, 1);
    -o-transition: all 300ms cubic-bezier(0.34, 1.61, 0.7, 1);
    -ms-transition: all 300ms cubic-bezier(0.34, 1.61, 0.7, 1);
    transition: all 300ms cubic-bezier(0.34, 1.61, 0.7, 1);
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-box-shadow: 0 16px 38px -12px rgba(0,0,0,0.56), 0 4px 25px 0 rgba(0,0,0,0.12), 0 8px 10px -5px rgba(0,0,0,0.2);
    -moz-box-shadow: 0 16px 38px -12px rgba(0,0,0,0.56),0 4px 25px 0 rgba(0,0,0,0.12),0 8px 10px -5px rgba(0,0,0,0.2);
    box-shadow: 0 16px 38px -12px rgba(0,0,0,0.56), 0 4px 25px 0 rgba(0,0,0,0.12), 0 8px 10px -5px rgba(0,0,0,0.2);
}

.widget_calendar table {border-collapse: separate; width: 100%;}
.widget_calendar table thead tr th {
    font-size: 12px;
    padding: 10px;
    text-align: center;
    border: none;
    color: #fff;
}
.widget_calendar table tbody td {
    font-size: 13px;
    padding: 6px 5px;
    text-align: center;
    background-color: transparent;
    border: none;
    color: #444;
}
.widget_calendar tfoot tr td {border: none; padding: 0px;}
/*--------------------------------------------------------------
## Odometer CSS
--------------------------------------------------------------*/
.odometer.odometer-auto-theme, 
.odometer.odometer-theme-default {
    display: block;
    vertical-align: middle;
    vertical-align: auto;
    zoom: 1;
    display: inline;
    position: relative;
}
.odometer.odometer-auto-theme .odometer-digit, 
.odometer.odometer-theme-default .odometer-digit {
    display: inline-block;
    vertical-align: middle;
    vertical-align: auto;
    zoom: 1;
    display: inline;
    position: relative;
}
.odometer.odometer-auto-theme .odometer-digit .odometer-digit-spacer, 
.odometer.odometer-theme-default .odometer-digit .odometer-digit-spacer {
    display: inline-block;
    vertical-align: middle;
    vertical-align: auto;
    zoom: 1;
    display: inline;
    visibility: hidden;
}
.odometer.odometer-auto-theme .odometer-digit .odometer-digit-inner, 
.odometer.odometer-theme-default .odometer-digit .odometer-digit-inner {
    text-align: left;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}
.odometer.odometer-auto-theme .odometer-digit .odometer-ribbon, 
.odometer.odometer-theme-default .odometer-digit .odometer-ribbon { display: block;}
.odometer.odometer-auto-theme .odometer-digit .odometer-ribbon-inner, 
.odometer.odometer-theme-default .odometer-digit .odometer-ribbon-inner {
    display: block;
    -webkit-backface-visibility: hidden;
}
.odometer.odometer-auto-theme .odometer-digit .odometer-value, 
.odometer.odometer-theme-default .odometer-digit .odometer-value { display: block; -webkit-transform: translateZ(0);}
.odometer.odometer-auto-theme .odometer-digit .odometer-value.odometer-last-value, 
.odometer.odometer-theme-default .odometer-digit .odometer-value.odometer-last-value {  position: absolute;}
.odometer.odometer-auto-theme.odometer-animating-up .odometer-ribbon-inner, 
.odometer.odometer-theme-default.odometer-animating-up .odometer-ribbon-inner {
    -webkit-transition: -webkit-transform 2s;
    -moz-transition: -moz-transform 2s;
    -ms-transition: -ms-transform 2s;
    -o-transition: -o-transform 2s;
    transition: transform 2s;
}
.odometer.odometer-auto-theme.odometer-animating-up.odometer-animating .odometer-ribbon-inner, 
.odometer.odometer-theme-default.odometer-animating-up.odometer-animating .odometer-ribbon-inner {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}
.odometer.odometer-auto-theme.odometer-animating-down .odometer-ribbon-inner, 
.odometer.odometer-theme-default.odometer-animating-down .odometer-ribbon-inner {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}
.odometer.odometer-auto-theme.odometer-animating-down.odometer-animating .odometer-ribbon-inner, 
.odometer.odometer-theme-default.odometer-animating-down.odometer-animating .odometer-ribbon-inner {
    -webkit-transition: -webkit-transform 2s;
    -moz-transition: -moz-transform 2s;
    -ms-transition: -ms-transform 2s;
    -o-transition: -o-transform 2s;
    transition: transform 2s;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}

.odometer.odometer-auto-theme .odometer-value, 
.odometer.odometer-theme-default .odometer-value {  text-align: center;}


/*-------------------------------*/
/*    Carousel Fade Transition   */
/*-------------------------------*/
.carousel-indicators li{ background-color: #6963635c; border: 1px solid #6963635c;}

ul.themetext {margin: 0;padding: 0;list-style: none;}
@-webkit-keyframes blinker {
  from {opacity: 1.0;}
  to {opacity: 0.0;}
}
.blink{
    text-decoration: blink;
    -webkit-animation-name: blinker;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-iteration-count:infinite;
    -webkit-animation-timing-function:ease-in-out;
    -webkit-animation-direction: alternate;
}
.ht-site-title, .site-title { margin: 0;}

div#content li.blocks-gallery-item:before {content: none;}
div#content li.blocks-gallery-item {padding: 14px 14px 0 14px;}
div#content li.blocks-gallery-item img:hover {opacity: 0.5;}
/*--------------------------------------------------------------
# rating
--------------------------------------------------------------*/
.comment-text .star-rating { margin-top: 0; margin-right: 0; margin-bottom: 0;}

/*--------------------------------------------------------------
# rating
--------------------------------------------------------------*/
.sf-arrows .sf-with-ul:after {
    content: '\f107';
    font-family: FontAwesome;
    position: absolute;
    right: -2px;
    height: 0;
    width: 0;
    display: none;
}
.sf-arrows .sf-with-ul:before {display: none;}

/*-----------------------
## Single product
-----------------------------*/

@media screen and (min-width: 1024px) and (max-width: 1300px){
.slider_section .sub-title { padding: 1.5em 0 1.8em 0;}
.page-template-default #innerpage-box .service_inbox .title {  margin: 0;

}
}
@media only screen and (max-width: 1299px) {
header .Hbtn a { padding: 6px 10px;}
header .Hbtn a i { font-size: 10px; padding: 1px 1px; margin-right: 6px;}
.navigation .mainmenu li { margin: 0 10px;}
.navigation .mainmenu li.menu-item-has-children {margin: 0 20px 0 10px;  }
}

@media screen and (max-width: 1200px){
 .ct-btn-scroll{ bottom: 20px; }
 .new-page.menu-new{
    display:none;
}
}
@media screen and (max-width: 1199px){
.slider_section .slide-mainimg {height: 100%;}
#innerpage-box .inn-single-service-bx {padding: 0 10px;}
}

@media screen and (min-width: 1024px) and (max-width: 1200px){
#quote-carousel .carousel-control.left {  left: -42px;}
#quote-carousel .carousel-control.right {  right: -42px;}
.header-seo.header-transparent .is-fixed .main-bar input[type="search"] {   top: -5px;}
.header-seo.header-transparent .is-fixed .main-bar span.sb-icon-search {  top: -14px;}
.single-team .in-our-team ul > li > a {
    line-height: 30px;
    width: 30px;
    height: 30px;
}
.footer-area .sf-right-img {
    height: 30px;
    width: 95%;
    right: -82px;
    top: 59px;
}
.footer-area .sf-left-img {
    width: 32%;
}
.box-form .news-right-img {
    height: 28px;
    width: 16.2%;
    right: -66px;
    bottom: 24px;
}
}

@media screen and (min-width: 992px) and (max-width: 1023px){
.primary-content-area {top: 70%; width: 390px;right: 0%;
}
}

@media screen and (min-width: 320px) and (max-width: 1024px){
header.site-header span.text, .single-header-info span.theme-color{font-size: 11px;}
header.site-header .d-flex, div#navbarNavDropdown {margin: 0 0%;}
header.site-header .list-inline.m-a0{padding-left: 0px !important;}
header.site-header .text-bx.padding0{padding-left: 15px;}
header.site-header input[type="search"] {
    width: 100%;
}
}

@media screen and (max-width: 1000px){
    .toggle-bar{
     display: block;
     position: absolute;
     top: -35px;
     right: 35px;
     width: 50px;
     background: #fe5722;
     cursor: pointer;
     text-align: center;
     color: #fff;
     padding: 20px 0;
     cursor: pointer;
 }

 .toggle-bar span{
    position: absolute;
    top: 50%;
    margin-top: -2px;
    height: 4px;
    left: 8px;
    right: 8px;
    background: #FFF;
    box-shadow: 0 10px 0 0 #FFF, 0 -10px 0 0 #FFF;
}
}

@media (max-width: 1012px){
.header-transparent .sticky-header {padding: 0;
}
}

@media (min-width: 992px){
 .responsive-header-box{  display: none;}
.navbar-expand-lg .navbar-toggler {
    display: none;
}
}

@media (max-width: 992px){
.mobnone1 {
    display: none;
}
.sf-arrows .sf-with-ul:after{ right: 30px !important;}
.ht-site-title, .site-title { font-size: 23px;}
.top-bar-head .head-menu { padding-right: 0;}
 .logo { position: relative; 
    top: 0px !important;
    background: none !important;
    padding: 0;
}
.footer-area .box-form {
    border: 1em solid #D9D9D9;
    border-top: 0;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
.footer-area .sf-right-img, .box-form .news-right-img {
    display: none;
}
.box-form .news-img {
    height: 30px;
    width: 101%;
    left: -1px;
    bottom: -22px;
}
.footer-area .sf-left-img {
    height: 28px;
    width: 23%;
    left: -29px;
    top: 6px;
}

}
@media only screen and (max-width: 991px) {
.slider_section .owl-dots,
.slider_section .owl-nav {display: none;}
.slider_section .slide-mainimg { height: 100%;}
#innerpage-box .conbx { padding-left: 0em;}
.dlab-topbar-right {padding-left: 0;padding-right: 15px;}
.dlab-topbar-left{
    padding-right: 0;
}
}

@media screen and (max-width: 991px) {
header .infoinnbx{padding: 0 5px;}
.top-bar-head {padding: 1em 0;border-bottom: none;}
.home.page-template .site-header { position: relative;}
header .Hbtn a{ padding: 6px 12px;}
.page-main-header{padding: 2em 0 !important;}
.page-main-header svg{display: none;}
.ht-main-title { margin: 0px 0px 10px 0;}
.navigation .mainmenu li a::before{display: none;}
.site-navigation{background:none ;}
.site-header {position: relative;background: #000;}
.slider_section .bx-wrapper .bx-controls-direction a.bx-prev, 
.slider_section .bx-wrapper .bx-controls-direction a.bx-next{display: none;}
.slider_section .slider_content {  top: 10%;}
.blog-area .blog-posts h4 { font-size: 22px;margin: 2px 0;}
.blog-area .blog-single { padding: 20px 10px 5px 10px;}
#gallery,
#blog ,#ourclient{ padding: 1em 0 !important;}
.section-title {  margin-bottom: 25px;}
footer#footer.footer-area .widget-title { margin-bottom: 15px;}
#footer{ padding: 1em 0 1em 0em !important;}
.footer-area .newstitle h3 {font-size: 30px; margin: 0 0em 10px 0;line-height: 40px;}
#innerpage-box {  padding: 2em 0em ;}
blockquote { padding: 4em 2em !important;}
#innerpage-box .single-team { width: 50%;}
#innerpage-box .item.innertest-item{width: 50%;}
.faq_tp .faq-heading{font-size: 60px;}
.footer-area input[type="submit"] { margin-left: 0;}
header.site-header input[type='search'], 
header.site-header input[type='search']:hover { width: 100%;}
.footer-area .bottom-area { bottom: 0; position: relative;}
.s-footer { padding-bottom: 0em;}
#content-box ol li { padding-left: 3em;}

}


@media screen and (max-width: 768px){
.section-title h2{font-size: 30px;}
main#innerpage-box h6.faq-title{  padding: 10px 75px 8px 17px !important;}
.ht-footer.ht-footer1,
.ht-footer.ht-footer2,
.ht-footer.ht-footer3,
.ht-footer.ht-footer4 { width: 100% !important;}
.ht-main-navigation li{ padding-right: 00px;}
img.ht-page-header-img{ height: 275px;}
#quote-carousel .carousel-control.right { right: 0; top: 140px;}
#quote-carousel .carousel-control.left { left: -7px; top: 140px;}
#quote-carousel .carousel-control { margin-top: -50px;}
.top-bar-head {
    padding:0.1em 0 !important;
}
.footer-area input[type="submit"] {
    padding: 8px 10px;
    font-size: 15px;
}
.footer-area input[type="text"], .footer-area input[type="email"], .footer-area input[type="url"], .footer-area input[type="password"], .footer-area input[type="search"], .footer-area input[type="number"], .footer-area input[type="tel"], .footer-area input[type="range"], .footer-area input[type="date"], .footer-area input[type="month"], .footer-area input[type="week"], .footer-area input[type="time"], .footer-area input[type="datetime"], .footer-area input[type="datetime-local"], .footer-area input[type="color"], .footer-area textarea, .footer-area select {
    font-size: 12px;
}
.slider_section .owl-nav {
    top: -15%;
}
}

@media screen and (max-width: 768px){
.ht-main-navigation a{ padding: 8px 17px;}
.ht-section-title,
.ht-section-tagline{  width: auto;}
.ht-top-footer{  margin-left: 0;}
.ht-footer{ width: auto; margin: 0 0 30px; float: none;}
#primary{width: auto !important;float: none !important;margin-bottom: 30px;}
#secondary.primary-theme-sidebar {
    width: auto !important;
    float: none !important;
    margin-bottom: 24px;
    overflow: visible;
}
}

@media screen and (min-width: 320px) and (max-width: 768px){
.logobox img { padding-top: 0 !important;}
.main-dispaly.padding0 {padding-left: 20px;}
.header.site-header ul.sub-menu li a:hover{padding-left: 15px;padding-right: 15px;}
}

@media screen and (min-width: 320px) and (max-width: 768px){
header.site-header .main-dispaly.padding0 {padding-right: 20px;}
.ht-section-title:after {width: 65%;}
.sf-arrows .sf-with-ul:after{ right: 40px;}
.ti-home:before{left: 15px;top: 12px;}
.is-fixed .main-bar ul.sub-menu { margin-top: 0 ;}
}

@media screen and (max-width: 767px){
.slider_section .slide-mainimg {  height: 100%;}
.slider_section .slider_content{width: 500px;}
.slider_section .title{font-size: 34px;line-height: 42px;}
.slider_section .sub-title { font-size: 16px;padding: 1em 0 ;}
.slider_section a.btn {font-size: 16px;}
#innerpage-box .item.innertest-item { width: 100%;}
#innerpage-box .singleinner-service .service_inimg img{width: 100%;}
#innerpage-box .faq { margin-top: 1em;}
.site-header .navbar-toggler, 
.site-header .is-fixed .navbar-toggler { margin: 22px 0 22px 10px; box-shadow: none;}
.text-white .site-button.outline { padding: 8px 15px;}
#innerpage-box .ts-area-c p {margin: 0em 0px 0 0px;}
.footer-area .widget {  margin-bottom: 0em;}
.single-footer-2 { padding-left: 1em;}
.footer-area .single-footer { padding-top: 1em;}
.blog-area .blog-posts h4 { font-size: 20px; line-height: 25px;}
.ht-inquiry-member-wrap input[type="submit"] {margin: 0.5em 0 0.1em 0; padding: 8px 20px;font-size: 18px;}
.slider_section .owl-nav {
    top: auto;
    bottom: 0;
    position: relative;
    right: 0;
}
.slider_section button.owl-prev {
    position: relative;
    right: auto;
    left: 0;
    top: -30px;
    transform: rotate(0deg);
}
.slider_section button.owl-next {
    position: absolute;
    right: 100px;
    top: -30px;
    transform: rotate(0deg);
}

}

@media screen and (min-width: 320px) and (max-width: 768px){

.footer-area .bottom-area{padding: 1em 0 !important;}
.footer-area .gallery-item{max-width: 50%;}
.footer-bottom-area ul li { margin: 0 15px;}
.footer-bottom-area.text-right {text-align: center;}
.footer-text{ text-align: center; }
.header-transparent .is-fixed .main-bar h1.ht-site-title { position: relative;top: 60px;text-align: center;}
header.site-header span.text, 
.single-header-info span.theme-color {font-size: 14px;}
.bx-controls-direction { display: none;  }
header.site-header .d-flex, div#navbarNavDropdown {margin: 0 0% !important; }
div#navbarNavDropdown{  margin: 0%; }
.ht-site-description{padding-top: 0; }
.header-transparent .is-fixed .main-bar{position: static !important;}
.header-transparent .is-fixed .main-bar h1.ht-site-title,
.header-transparent .is-fixed .main-bar p.ht-site-description { display: block;}
.navigation .mainmenu li a:after{ content: none; }
.navigation .mainmenu li ul li{ box-shadow: none; padding-left: 0; }
.sf-arrows .sf-with-ul:before{ right: 40px !important; }
.header-seo.header-transparent .is-fixed .main-bar {background-color: transparent !important;padding: 0;}
div#navbarNavDropdown li.current_page_item a:after, .current_page_item > a:after{width: 0;}
.header-seo.header-transparent .is-fixed .main-bar img {position: relative; top: 80px;}
.header-seo.header-transparent .is-fixed .main-bar .resp_header_logo{display: block;
}
}
@media screen and (min-width: 476px) and (max-width: 630px){

}

@media screen and (max-width: 580px){  
.ht-team-counter-wrap{  margin-left: 0;}
.ht-counter{ width: 75%; float: none; margin: 0 auto 60px;}
.ht-portfolio{
    width: 50%;
    padding: 4px;
}
}

@media screen and (max-width: 575px){  
header .htop button.share-icn, header .headphone, header button.share-icn{display: block;}
header button.share-icn {
    width: auto;
    padding: 0 0px;
    font-size: 23px;
    box-shadow: none;
    margin: 0;
}
header button.share-icn:focus{box-shadow: none;}
header .share-btn .a {
    width: 50px;
    height: 35px;
    line-height: 35px;
    display: inline-block;
    color: #fff;
    text-align: center;
    float: left;
}
header .share-btn .a:hover{color: #000 !important;}
header .share-btn.active.top {
  transform: scale(1) translateY(-10px);
}
header .share-btn.active {
  opacity: 1;
  transition: all 0.4s ease 0s;
  visibility: visible;
  border-radius: 5px;
}
header .share-btn.top {
  margin-top: -80px;
  transform-origin: 0 0 0;
}
header .share-btn {
    opacity: 0;
    transition: all 0.4s ease 0s;
    visibility: hidden;
    position: absolute;
    top: 22px;
    left: 0;
    z-index: 99999;
    width: 140px;
}
header .Hbtn a { padding: 2px 8px;font-size: 16px;top: 8px;}
header .share-btn.headphone{top: 33px;width: auto;left: 0;}
header .share-btn li a{width: 30px;line-height: 30px;height: 30px;font-size: 17px;}
.slider_section .slider_content{width: 90%;}
.slider_section .title{font-size: 24px;line-height: 28px;}
.slider_section a.btn { padding:4px 8PX; font-size: 16px;}
/* Hamburger menu CSS removed - new script will be provided */
/* .hamburger-menus styles removed */
}

@media screen and (max-width: 520px){
.top-bar-head .head-menu {  padding-right: 0em;}
.s-footer { 
    margin-bottom: 0em;
}
.single-footer-1 {
    margin-top: 0;
}
.footer-area .sf-left-img {
    height: 28px;
    width: 100%;
    left: 0;
    top: 0px;
    transform: rotate(0deg);
    border-radius: 0 0 0 0;
}
.footer-area .box-form {
    margin-top: 0;
}
.footer-area .sf-oly {
    bottom: 0;
}
}

@media screen and (min-width: 320px) and (max-width: 475px){
.slider_section .slide-mainimg { height: 100%;}
.footer-area input[type="submit"] { position: relative; top: 0px;}
.footer-area input[type="text"], .footer-area input[type="email"], .footer-area input[type="url"], 
.footer-area input[type="password"], .footer-area input[type="search"], .footer-area input[type="number"], 
.footer-area input[type="tel"], .footer-area input[type="range"], .footer-area input[type="date"], 
.footer-area input[type="month"], .footer-area input[type="week"], .footer-area input[type="time"], 
.footer-area input[type="datetime"], .footer-area input[type="datetime-local"], 
.footer-area input[type="color"], .footer-area textarea, .footer-area select{padding: 12px 10px 12px 18px;}
.page_featured {margin: 0 2em;margin-bottom: 1em;padding: 3em 4em;}
#innerpage-box .single-team { width: 100%;margin-bottom: 2em;text-align: center;}
main#innerpage-box h1, 
body.page-template-default main#innerpage-box h1, 
.ht-main-title, #ht-contactus-wrap h1 { font-size: 26px !important;}
.faq_tp .faq-heading {  font-size: 30px;}
.faq_tp {  padding-bottom: 1em;}

}


@media screen and (min-width: 320px) and (max-width: 475px){
.faq_tp .faq-heading:before,
.faq_tp .faq-heading:after{   display: none;}
.footer-area .footerlayer-3{bottom: 10%;}
.footer-area .footerlayer-2{bottom: 40%;}
.footer-area .footerlayer-1{top: 2%;left: 35.3%;}
.footer-bottom-area ul li { margin: 0 10px;}
.footer-text, .footer-area li{font-size: 14px;}
.header-transparent .is-fixed .main-bar h1.ht-site-title{top: 35px;}
.resp_head_box{margin-bottom: 0;}
.header-seo.header-transparent .is-fixed .main-bar img { top: 55px;}
.header-seo.header-transparent .is-fixed .main-bar img { top: 50px;}
div#sb-search {margin-left: 0;}
header.site-header input[type="search"]{width: 100%;}
header.site-header span.sb-icon-search,
header.site-header input[type="submit"]{right: 0;}
.single-header-info { text-align: center; padding: 0;
}
}

@media screen and (min-width: 320px) and (max-width: 425px){
body {   position: inherit; }
.comment-form-url,
.comment-form-author,
.comment-form-email{ width: 98%;}
#innerpage-box .contform {display: block !important;}
.section-title h2{
    font-size: 26px;
    line-height: 30px;
}
}

@media screen and (min-width: 320px) and (max-width: 375px){
.slider_section .title {  font-size: 18px;  line-height: 25px;}
.slider_section .sub-title {font-size: 15px;padding: 0.4em 0;}

.ht-site-title, .site-title {font-size: 18px;}
.navicon { top: -60px !important;}
.page_featured { 
    margin-bottom: 1em; 
    padding: 2em 4em;
}
.slider_section button.owl-next {
    right: 52px;
}
}

@media screen and (min-width: 320px) and (max-width: 320px){
.header-transparent .is-fixed .main-bar h1.ht-site-title { top: 45px;}
.star-rating {padding-top: 9px;}
.toggle-bar {right: 25px !important;}
.total-count { padding: 18px 36px;}
.total-count .count { right: 24px;}
.total-count .count {right: 10px;}
.total-count { padding: 18px 20px;}
.page_featured {
    margin-bottom: 0em;
}
.slider_section button.owl-next {
    right: 0;
}
}

main#innerpage-box .tagcloud a {
    border-radius: 5px;
    box-shadow: 0px 6px 10px -4px rgba(0,0,0,0.4);
    padding: 7px;
    display: inline-block;
}
div#secondary select option{ background: transparent;}
body.home.blog .page-main-header img {display: none;}
h1.product_title.entry-title { word-break: break-word;}
.select2-container--default .select2-selection--single,div#payment,
#coupon_code{ background: transparent !important;}
#content-box li.blocks-gallery-item:before {  content: none;}
div#content-box li.blocks-gallery-item figure img {  padding: 5px;  margin-bottom: 0;}
div#content-box li.blocks-gallery-item figure img:hover,
div#sitemap-box .sitemap-posts-box img:hover{  opacity: 0.7;}
main#innerpage-box ul.children { border: 0; margin-left: 2em;}

/* ----------------------------------------------
Universal sidebar (all #secondary.primary-theme-sidebar)
Topic-neutral card widgets — matches blog / single design system
-------------------------------------------------*/
.primary-theme-sidebar {
    position: relative;
}
.primary-theme-sidebar .widget {
    background: #fff;
    border: 1px solid #e8ecf3;
    border-radius: 12px;
    padding: 18px 20px;
    margin-bottom: 20px;
    box-shadow: 0 4px 18px rgba(17, 25, 68, 0.06);
}
.primary-theme-sidebar .widget:last-child {
    margin-bottom: 0;
}
.primary-theme-sidebar .widget-title {
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef1f6;
    font-size: 17px;
    font-weight: 600;
    color: #111944;
    line-height: 1.3;
}
.primary-theme-sidebar .widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.primary-theme-sidebar .widget ul li {
    margin: 0;
    padding: 0;
    border: none;
    line-height: 1.5;
    position: relative;
}
.primary-theme-sidebar .widget ul li:before {
    display: none !important;
    content: none !important;
}
.primary-theme-sidebar .widget a {
    color: #56607f;
    text-decoration: none;
    font-size: 15px;
    font-weight: 400;
    padding: 0.35em 0;
}
.primary-theme-sidebar .widget a:hover {
    color: #111944;
}
.primary-theme-sidebar .widget_nav_menu .menu > li > a {
    display: block;
    padding: 0.45em 0;
}
.primary-theme-sidebar .widget_nav_menu .sub-menu {
    margin: 0.25rem 0 0;
    padding-left: 0.75rem;
}
.primary-theme-sidebar .widget_recent_entries ul li,
.primary-theme-sidebar .widget_archive ul li {
    padding: 0.4em 0;
    border-bottom: 1px solid #f0f2f7;
}
.primary-theme-sidebar .widget_recent_entries ul li:last-child,
.primary-theme-sidebar .widget_archive ul li:last-child {
    border-bottom: 0;
}
.primary-theme-sidebar .tagcloud {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
}
.primary-theme-sidebar .tagcloud a {
    display: inline-block;
    padding: 6px 12px;
    background: #f0f2f7;
    border-radius: 999px;
    font-size: 13px !important;
    line-height: 1.3;
    color: #56607f;
    text-decoration: none;
    margin: 0;
    border: none;
    box-shadow: none;
}
.primary-theme-sidebar .tagcloud a:hover {
    background: #111944;
    color: #fff;
}
.primary-theme-sidebar .widget_calendar table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}
.primary-theme-sidebar .widget_calendar caption {
    padding: 0 0 12px;
    font-weight: 600;
    color: #111944;
}
.primary-theme-sidebar .widget_calendar table thead th {
    padding: 8px 6px;
    font-size: 12px;
    text-align: center;
}
.primary-theme-sidebar .widget_calendar table tbody td {
    padding: 8px 6px;
    text-align: center;
    font-size: 13px;
}
.primary-theme-sidebar .widget_calendar table tfoot td {
    padding-top: 10px;
}
.primary-theme-sidebar .widget_search .search-form,
.primary-theme-sidebar form.search-form,
.primary-theme-sidebar .woocommerce-product-search {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.primary-theme-sidebar .widget_search .search-field,
.primary-theme-sidebar .search-field,
.primary-theme-sidebar .woocommerce-product-search .search-field {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #e0e5ef;
    border-radius: 10px;
    font-size: 15px;
    background: #fafbfd;
    box-sizing: border-box;
}
.primary-theme-sidebar .widget_search .search-submit,
.primary-theme-sidebar .search-submit,
.primary-theme-sidebar .woocommerce-product-search button[type="submit"] {
    padding: 10px 18px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    align-self: flex-start;
}
.primary-theme-sidebar .widget_media_image img {
    border-radius: 10px;
    display: block;
    max-width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    border: none;
}
.primary-theme-sidebar .gallery {
    margin: 0;
}
.primary-theme-sidebar .gallery-columns-3 .gallery-item {
    max-width: 33.33%;
}
.primary-theme-sidebar .gallery-item img {
    border-radius: 8px;
}
.primary-theme-sidebar .widget_rating_filter ul {
    list-style: none;
    padding: 12px;
    margin: 0;
    border: 1px solid #e8ecf3;
    border-radius: 10px;
}
.primary-theme-sidebar .widget_rating_filter ul li {
    border-bottom: none;
}
.primary-theme-sidebar .social-profile-icons ul li {
    display: inline-block;
    margin: 0 6px 6px 0;
}
.primary-theme-sidebar .social-profile-icons ul li:before {
    display: none;
}
.primary-theme-sidebar .textwidget {
    color: #56607f;
    font-size: 15px;
    line-height: 1.65;
}
.primary-theme-sidebar select,
.primary-theme-sidebar input[type="text"],
.primary-theme-sidebar input[type="email"],
.primary-theme-sidebar input[type="url"],
.primary-theme-sidebar input[type="password"],
.primary-theme-sidebar input[type="search"],
.primary-theme-sidebar input[type="number"],
.primary-theme-sidebar input[type="tel"],
.primary-theme-sidebar input[type="date"],
.primary-theme-sidebar textarea {
    width: 100%;
    max-width: 100%;
    padding: 10px 14px;
    border: 1px solid #e0e5ef;
    border-radius: 10px;
    font-size: 15px;
    background: #fafbfd;
    box-sizing: border-box;
}
.primary-theme-sidebar .widget li span.post-date {
    display: block;
    margin-top: 0.25em;
    font-size: 13px;
    color: #6f7891;
}
#innerpage-box .primary-theme-sidebar .wp-block-latest-posts__list {
    padding-left: 0;
}
.primary-theme-sidebar .wp-block-group,
.primary-theme-sidebar .wp-block-group__inner-container {
    padding: 0;
    margin: 0;
}
.primary-theme-sidebar .wp-block-heading,
.primary-theme-sidebar .wp-block-search__label {
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eef1f6;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.3;
    color: #111944;
}
.primary-theme-sidebar .wp-block-search__inside-wrapper {
    display: flex;
    gap: 10px;
}
.primary-theme-sidebar .wp-block-search__inside-wrapper .wp-block-search__input {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #e0e5ef;
    border-radius: 10px;
    background: #fafbfd;
}
.primary-theme-sidebar .wp-block-search__button,
.primary-theme-sidebar .wp-element-button {
    border: none;
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}
.primary-theme-sidebar .wp-block-latest-posts li,
.primary-theme-sidebar .wp-block-archives li,
.primary-theme-sidebar .wp-block-categories li,
.primary-theme-sidebar .wp-block-latest-comments li,
.primary-theme-sidebar #recentcomments li {
    padding: 9px 0;
    border-bottom: 1px solid #f0f2f7;
}
.primary-theme-sidebar .wp-block-latest-posts li:last-child,
.primary-theme-sidebar .wp-block-archives li:last-child,
.primary-theme-sidebar .wp-block-categories li:last-child,
.primary-theme-sidebar .wp-block-latest-comments li:last-child,
.primary-theme-sidebar #recentcomments li:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}
.primary-theme-sidebar .wp-block-latest-comments__comment-meta {
    color: #6f7891;
    line-height: 1.6;
    font-size: 14px;
}
.primary-theme-sidebar .woocommerce-mini-cart li,
.primary-theme-sidebar .product_list_widget li {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 10px;
    align-items: start;
    padding: 12px 0;
    border-bottom: 1px solid #f0f2f7;
}
.primary-theme-sidebar .woocommerce-mini-cart li:last-child,
.primary-theme-sidebar .product_list_widget li:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}
.primary-theme-sidebar .woocommerce-mini-cart li a.remove {
    grid-column: 1 / -1;
    justify-self: end;
    width: 22px;
    height: 22px;
    line-height: 20px;
    text-align: center;
    border-radius: 50%;
    border: 1px solid #d8deea;
    padding: 0;
}
.primary-theme-sidebar .woocommerce-mini-cart li img,
.primary-theme-sidebar .product_list_widget li img {
    width: 56px;
    height: 56px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid #e8ecf3;
}
.primary-theme-sidebar .woocommerce-mini-cart .quantity,
.primary-theme-sidebar .product_list_widget .amount,
.primary-theme-sidebar .product_list_widget del,
.primary-theme-sidebar .product_list_widget ins {
    font-size: 13px;
    color: #6f7891;
}
.primary-theme-sidebar .widget_shopping_cart .total {
    border-top: 1px solid #eef1f6;
    margin-top: 12px;
    padding-top: 12px;
}
.primary-theme-sidebar .woocommerce-mini-cart__buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.primary-theme-sidebar .woocommerce-mini-cart__buttons .button {
    padding: 9px 14px;
    border-radius: 9px;
    font-size: 13px;
    line-height: 1.2;
}
.primary-theme-sidebar .widget_product_categories li {
    padding: 8px 0;
}
.primary-theme-sidebar .widget_product_categories li a:before {
    content: "\f105";
    font-family: FontAwesome;
    margin-right: 8px;
    color: #6f7891;
}

@media (max-width: 480px) {
    .primary-theme-sidebar .wp-block-search__inside-wrapper {
        flex-direction: column;
    }
    .primary-theme-sidebar .wp-block-search__button {
        width: 100%;
    }
}

/* ----------------------------------------------
Blog Full Width Template - universal card design 
-------------------------------------------------*/
.page-template-blog-template .primary-blog-layout {
    padding: 45px 0 30px;
}
.page-template-blog-template .primary-blog-grid,
.page-template-blog-left-sidebar .primary-blog-grid,
.page-template-blog-right-sidebar .primary-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.page-template-blog-template .primary-blog-card,
.page-template-blog-left-sidebar .primary-blog-card,
.page-template-blog-right-sidebar .primary-blog-card {
    background: #fff;
    border: 1px solid #e8ecf3;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 10px 24px rgba(17, 25, 68, 0.08);
    display: flex;
    flex-direction: column;
    transition: transform .25s ease, box-shadow .25s ease;
}
.page-template-blog-template .primary-blog-card:hover,
.page-template-blog-left-sidebar .primary-blog-card:hover,
.page-template-blog-right-sidebar .primary-blog-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(17, 25, 68, 0.14);
}
.page-template-blog-template .primary-blog-card-thumb,
.page-template-blog-left-sidebar .primary-blog-card-thumb,
.page-template-blog-right-sidebar .primary-blog-card-thumb {
    display: block;
    position: relative;
    overflow: hidden;
}
.page-template-blog-template .primary-blog-card-thumb img,
.page-template-blog-left-sidebar .primary-blog-card-thumb img,
.page-template-blog-right-sidebar .primary-blog-card-thumb img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    transition: transform .35s ease;
}
.page-template-blog-template .primary-blog-card:hover .primary-blog-card-thumb img,
.page-template-blog-left-sidebar .primary-blog-card:hover .primary-blog-card-thumb img,
.page-template-blog-right-sidebar .primary-blog-card:hover .primary-blog-card-thumb img {
    transform: scale(1.04);
}
.page-template-blog-template .primary-blog-card-body,
.page-template-blog-left-sidebar .primary-blog-card-body,
.page-template-blog-right-sidebar .primary-blog-card-body {
    padding: 18px 20px 10px;
    flex: 1 1 auto;
}
.page-template-blog-template .primary-blog-card-title,
.page-template-blog-left-sidebar .primary-blog-card-title,
.page-template-blog-right-sidebar .primary-blog-card-title {
    margin: 0 0 10px;
    font-size: 22px;
    line-height: 1.35;
}
.page-template-blog-template .primary-blog-card-title a,
.page-template-blog-left-sidebar .primary-blog-card-title a,
.page-template-blog-right-sidebar .primary-blog-card-title a {
    color: #111944;
    text-decoration: none;
}
.page-template-blog-template .primary-blog-card-title a:hover,
.page-template-blog-left-sidebar .primary-blog-card-title a:hover,
.page-template-blog-right-sidebar .primary-blog-card-title a:hover {
    color: #9966cc;
}
.page-template-blog-template .primary-blog-card-excerpt,
.page-template-blog-left-sidebar .primary-blog-card-excerpt,
.page-template-blog-right-sidebar .primary-blog-card-excerpt {
    color: #56607f;
    font-size: 15px;
    line-height: 1.75;
}
.page-template-blog-template .primary-blog-card-btn,
.page-template-blog-left-sidebar .primary-blog-card-btn,
.page-template-blog-right-sidebar .primary-blog-card-btn {
    display: inline-block;
    margin-top: 14px;
    color: #111944;
    font-weight: 600;
    border-bottom: 2px solid #9966cc;
    text-decoration: none;
}
.page-template-blog-template .primary-blog-card-btn:hover,
.page-template-blog-left-sidebar .primary-blog-card-btn:hover,
.page-template-blog-right-sidebar .primary-blog-card-btn:hover {
    color: #9966cc;
}
.page-template-blog-template .primary-blog-card-meta,
.page-template-blog-left-sidebar .primary-blog-card-meta,
.page-template-blog-right-sidebar .primary-blog-card-meta {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    border-top: 1px solid #eef1f6;
    padding: 12px 20px 14px;
    color: #6f7891;
    font-size: 13px;
}
.page-template-blog-template .primary-blog-card-meta i,
.page-template-blog-left-sidebar .primary-blog-card-meta i,
.page-template-blog-right-sidebar .primary-blog-card-meta i {
    color: #9966cc;
    margin-right: 7px;
}
.page-template-blog-template .primary-blog-empty,
.page-template-blog-left-sidebar .primary-blog-empty,
.page-template-blog-right-sidebar .primary-blog-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 30px 20px;
    border: 1px dashed #d7dcea;
    border-radius: 10px;
    color: #56607f;
}
.page-template-blog-template .primary-blog-pagination,
.page-template-blog-left-sidebar .primary-blog-pagination,
.page-template-blog-right-sidebar .primary-blog-pagination {
    margin-top: 30px;
    text-align: center;
}
.page-template-blog-left-sidebar .primary-blog-layout {
    padding: 45px 0 30px;
}
.page-template-blog-right-sidebar .primary-blog-layout {
    padding: 45px 0 30px;
}
.page-template-blog-left-sidebar .primary-blog-grid-sidebar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.page-template-blog-right-sidebar .primary-blog-grid-sidebar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 991px) {
    .page-template-blog-template .primary-blog-grid,
    .page-template-blog-left-sidebar .primary-blog-grid,
    .page-template-blog-right-sidebar .primary-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .page-template-blog-left-sidebar .primary-blog-grid-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .page-template-blog-right-sidebar .primary-blog-grid-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .page-template-blog-template .primary-blog-layout,
    .page-template-blog-left-sidebar .primary-blog-layout,
    .page-template-blog-right-sidebar .primary-blog-layout {
        padding-top: 30px;
    }
    .page-template-blog-template .primary-blog-grid,
    .page-template-blog-left-sidebar .primary-blog-grid,
    .page-template-blog-right-sidebar .primary-blog-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .page-template-blog-template .primary-blog-card-meta,
    .page-template-blog-left-sidebar .primary-blog-card-meta,
    .page-template-blog-right-sidebar .primary-blog-card-meta {
        flex-direction: column;
        gap: 6px;
    }
}

/* ----------------------------------------------
Single post - universal layout (matches blog system)
-------------------------------------------------*/
.single .primary-single-layout {
    padding: 45px 0 40px;
}
.single .primary-single-card {
    background: #fff;
    border: 1px solid #e8ecf3;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 10px 24px rgba(17, 25, 68, 0.08);
}
.single .primary-single-media {
    margin: 0;
    line-height: 0;
    background: #f4f6fa;
}
.single .primary-single-media__img {
    width: 100%;
    height: auto;
    max-height: 420px;
    object-fit: cover;
    display: block;
}
.single .primary-single-meta {
    list-style: none;
    margin: 0;
    padding: 14px 22px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
    align-items: center;
    border-bottom: 1px solid #eef1f6;
    background: #fafbfd;
}
.single .primary-single-meta-item {
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
    color: #6f7891;
}
.single .primary-single-meta-item i {
    margin-right: 8px;
    color: #9966cc;
}
.single .primary-single-meta-item a {
    color: inherit;
    text-decoration: none;
}
.single .primary-single-meta-item a:hover {
    color: #111944;
}
.single .primary-single-content {
    padding: 26px 26px 8px;
    color: #56607f;
    font-size: 16px;
    line-height: 1.8;
}
.single .primary-single-content > *:first-child {
    margin-top: 0;
}
.single .primary-single-content h2,
.single .primary-single-content h3,
.single .primary-single-content h4 {
    color: #111944;
    margin-top: 1.4em;
    margin-bottom: 0.6em;
    line-height: 1.35;
}
.single .primary-single-content a {
    color: #111944;
    border-bottom: 1px solid rgba(244, 181, 4, 0.45);
    text-decoration: none;
}
.single .primary-single-content a:hover {
    color: #9966cc;
    border-bottom-color: #9966cc;
}
.single .primary-single-content blockquote {
    border-left: 4px solid #9966cc;
    margin: 1.5em 0;
    padding: 0.5em 0 0.5em 1.2em;
    font-style: italic;
    color: #4a5168;
}
.single .primary-single-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
    padding: 20px 26px 24px;
    border-top: 1px solid #eef1f6;
}
.single .primary-single-tags {
    flex: 1 1 220px;
    min-width: 0;
}
.single .primary-single-tags__label {
    display: block;
    font-weight: 600;
    font-size: 14px;
    color: #111944;
    margin-bottom: 10px;
}
.single .primary-single-tags__links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.single .primary-single-tags__links a {
    display: inline-block;
    padding: 6px 14px;
    background: #f0f2f7;
    border-radius: 999px;
    font-size: 13px;
    text-decoration: none;
    color: #56607f;
    transition: background 0.2s ease, color 0.2s ease;
}
.single .primary-single-tags__links a:hover {
    background: #111944;
    color: #fff;
}
.single .primary-single-share {
    flex: 0 0 auto;
    margin-left: auto;
    text-align: right;
}
.single .primary-single-share__label {
    display: block;
    font-weight: 600;
    font-size: 14px;
    color: #111944;
    margin-bottom: 10px;
    text-align: inherit;
}
.single .primary-single-share__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}
.single .primary-single-share__link {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid #e0e5ef;
    background: #fff;
    color: #111944;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.single .primary-single-share__link:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(17, 25, 68, 0.12);
}
.single .primary-single-post #comments,
.single .primary-single-post #respond {
    margin-top: 32px;
}
@media (max-width: 767px) {
    .single .primary-single-layout {
        padding-top: 30px;
    }
    .single .primary-single-content {
        padding: 20px 18px 6px;
    }
    .single .primary-single-footer {
        padding: 18px 18px 20px;
        flex-direction: column;
        align-items: stretch;
    }
    .single .primary-single-share {
        margin-left: 0;
        text-align: left;
    }
    .single .primary-single-share__list {
        justify-content: flex-start;
    }
}
/* ---------------------------------------------- */

.home1-testimonials-section--shortcode {
    background: #ffffff !important;
}
.home1-services-shortcode-wrap .home1-services-grid {
    max-width: 100%;
}

/* FAQS shortcode - theme style accordion */
.primary-faq-shortcode {
    max-width: 980px;
    margin: 0 auto;
}

.primary-faq-shortcode__title {
    margin: 0 0 20px;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.2;
    font-weight: 400;
    text-align: center;
    color: #2f2f2f;
}

.primary-faq-shortcode__list {
    display: grid;
    gap: 14px;
}

.primary-faq-shortcode__item {
    border: 1px solid #e6e6ee;
    background: #ffffff;
    border-radius: 8px;
    overflow: hidden;
}

.primary-faq-shortcode__question {
    list-style: none;
    position: relative;
    cursor: pointer;
    margin: 0;
    padding: 15px 52px 15px 18px;
    color: #2f2f2f;
    font-size: 18px;
    line-height: 1.45;
    font-weight: 600;
}

.primary-faq-shortcode__question::-webkit-details-marker {
    display: none;
}

.primary-faq-shortcode__question::after {
    content: "\f067";
    font-family: FontAwesome;
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #6f3f95;
    border: 1px solid #d4c3e2;
    background: #ffffff;
}

.primary-faq-shortcode__item[open] .primary-faq-shortcode__question::after {
    content: "\f068";
    background: #6f3f95;
    color: #ffffff;
    border-color: #6f3f95;
}

.primary-faq-shortcode__answer {
    padding: 0 18px 16px;
    color: #666666;
    line-height: 1.8;
    font-size: 15px;
}

.primary-faq-shortcode__answer p {
    margin: 0;
}

.primary-faq-shortcode__empty {
    margin: 0;
    color: #666666;
}

@media (max-width: 767px) {
    .primary-faq-shortcode__question {
        font-size: 17px;
        padding: 14px 46px 14px 14px;
    }

    .primary-faq-shortcode__question::after {
        right: 14px;
    }

    .primary-faq-shortcode__answer {
        padding: 0 14px 14px;
    }
}

/* GALLERY shortcode - theme style grid */
.primary-gallery-shortcode {
    --primary-gallery-cols: 3;
}

.primary-gallery-shortcode__title {
    margin: 0 0 18px;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.2;
    font-weight: 400;
    text-align: center;
    color: #2f2f2f;
}

.primary-gallery-shortcode__grid {
    display: grid;
    grid-template-columns: repeat(var(--primary-gallery-cols), minmax(0, 1fr));
    gap: 18px;
}

.primary-gallery-shortcode__item {
    position: relative;
}

.primary-gallery-shortcode__link {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 8px;
    text-decoration: none;
    background: #f3f3f3;
}

.primary-gallery-shortcode__img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.primary-gallery-shortcode__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(16, 18, 24, 0.45);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.primary-gallery-shortcode__icon {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.8);
}

.primary-gallery-shortcode__caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 12px 14px;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 500;
    background: linear-gradient(to top, rgba(16, 18, 24, 0.75), rgba(16, 18, 24, 0));
    text-align: left;
}

.primary-gallery-shortcode__link:hover .primary-gallery-shortcode__img {
    transform: scale(1.06);
}

.primary-gallery-shortcode__link:hover .primary-gallery-shortcode__overlay {
    opacity: 1;
}

.primary-gallery-shortcode__empty {
    margin: 0;
    color: #666666;
}

@media (max-width: 991px) {
    .primary-gallery-shortcode__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .primary-gallery-shortcode__grid {
        grid-template-columns: 1fr;
    }

    .primary-gallery-shortcode__caption {
        font-size: 14px;
    }
}

/* Contact template redesign aligned with provided reference */
.primary-contact-ref-wrap {
    margin: 3rem 0;
}

.primary-contact-ref-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 34px;
    align-items: stretch;
}

.primary-contact-ref-form-box {
    background: #ffffff;
    border: 1px solid #e8e8ee;
    border-radius: 8px;
    padding: 24px;
    min-height: 100%;
}

.primary-contact-ref-form-box .conformbx {
    margin-bottom: 14px;
}

.primary-contact-ref-form-box .maintle {
    font-size: 42px;
    line-height: 1.1;
    margin: 0 0 8px;
    font-weight: 700;
}

.primary-contact-ref-form-box .confmtxt {
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
}

.primary-contact-ref-form-box .ctform p {
    margin: 0 0 12px;
}

.primary-contact-ref-form-box .ctform label {
    display: block;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 500;
    color: #515563;
    margin-bottom: 6px;
}

.primary-contact-ref-form-box .ctform input[type="text"],
.primary-contact-ref-form-box .ctform input[type="email"],
.primary-contact-ref-form-box .ctform input[type="url"],
.primary-contact-ref-form-box .ctform input[type="tel"],
.primary-contact-ref-form-box .ctform input[type="number"],
.primary-contact-ref-form-box .ctform select,
.primary-contact-ref-form-box .ctform textarea {
    width: 100%;
    border: 1px solid #cfd2df;
    border-radius: 6px;
    min-height: 44px;
    padding: 10px 12px;
    font-size: 13px;
    background: #ffffff;
    box-shadow: none;
}

.primary-contact-ref-form-box .ctform textarea {
    min-height: 110px;
    resize: vertical;
}

.primary-contact-ref-form-box .ctform input[type="checkbox"] {
    margin-right: 8px;
}

.primary-contact-ref-form-box .ctform input[type="submit"],
.primary-contact-ref-form-box .ctform button,
.primary-contact-ref-form-box .ctform .wpcf7-submit {
    width: 100%;
    min-height: 42px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    border: none;
    background: #7652b4;
    color: #ffffff;
    cursor: pointer;
    transition: background-color .25s ease;
}

.primary-contact-ref-form-box .ctform input[type="submit"]:hover,
.primary-contact-ref-form-box .ctform button:hover,
.primary-contact-ref-form-box .ctform .wpcf7-submit:hover {
    background: #63449a;
}

.primary-contact-ref-image-wrap {
    border-radius: 8px;
    overflow: hidden;
    min-height: 100%;
    background: #cfc8e8;
}

.primary-contact-ref-image {
    width: 100%;
    height: 100%;
    min-height: 560px;
    object-fit: cover;
    display: block;
}

.primary-contact-ref-image-fallback {
    min-height: 560px;
    background: linear-gradient(135deg, #b5a6dd 0%, #c8c0e9 100%);
}

@media (max-width: 991px) {
    .primary-contact-ref-grid {
        grid-template-columns: 1fr;
    }

    .primary-contact-ref-image {
        min-height: 360px;
    }

    .primary-contact-ref-image-fallback {
        min-height: 360px;
    }
}