/*

[Main Stylesheet]

Project     : BloggyPress - Responsive Personal Blog HTML5 Template
Version     : 1.0
Author      : ThemeLooks
Author URI  : https://themeforest.net/user/themelooks


NOTE:
------
PLEASE DO NOT EDIT THIS CSS, YOU MAY NEED TO USE "custom.css" FILE FOR WRITING YOUR CUSTOM CSS.
WE MAY RELEASE FUTURE UPDATES SO IT WILL OVERWRITE THIS FILE. IT'S BETTER AND SAFER TO USE "custom.css".


[TABLE OF CONTENTS]

1. GENERAL STYLES
    1.1. HEADINGS
    1.2. BLOCKQUOTES
    1.3. LINKS
    1.4. NAV LINKS
    1.5. BUTTONS
    1.6. FORM CONTROLS
    1.7. ALERT

2. HELPER CLASSES
    2.1. FLOATS
    2.2. OVERFLOWS
    2.3. PADDINGS
    2.4. TEXT COLORS
    2.5. BACKGROUND COLORS
    2.6. BACKGROUND IMAGE
    2.7. BACKGROUND OVERLAY
    2.8. FONTS
    2.9. GUTTERS
    2.10. ALIGING

3. COMPONENTS
    3.1. PRELOADER
    3.2. PAGER
    3.3. OWL DOTS
    3.4. OWL NAV
    3.5. DROPDOWN MENU
    3.6. PAGE TITLE
    3.7. TEXT BLOCK
    3.8. INFO BLOCK
    3.9. CATEGORY ITEM
    3.10. POST AUTHOR
    3.11. COMMENT ITEMS
    3.12. COMMENT RESPOND
    3.13. CONTACT FORM
    3.14. CONTACT INFO BLOCK
    3.15. 404 CONTENT

4. WIDGETS
    4.1. WIDGET TITLE
    4.2. ABOUT WIDGET
    4.3. SOCIAL WIDGET
    4.4. NEWSLETTER WIDGET
    4.5. POST WIDGET
    4.6. POSTS WIDGET
    4.7. FLICKER WIDGET
    4.8. LINKS WIDGET
    4.9. AD WIDGET

5. HEADER SECTION
    5.1. HEADER TOPBAR
    5.2. HEADER NAVBAR

6. BANNER SECTION
    6.1. BANNER CONTENT

7. POST ITEM
    7.1. POST IMAGE
    7.2. POST VIDEO & AUDIO
    7.3. POST SLIDER
    7.4. POST CATEGORY
    7.5. POST TITLE
    7.6. POST EXCERPT
    7.7. POST CONTENT
    7.8. POST ACTION
    7.9. POST META
    7.10. POST FOOTER
    7.11. RELATED POSTS
    7.12. POST COMMENTS

8. MAP

9. INSTAGRAM PHOTOS
    9.1. INSTAGRAM ITEMS

10. SUBSCRIBE SECTION
    10.1. SUBSCRIBE FORM

11. FOOTER SECTION
    11.1. FOOTER TOPBAR
    11.2. FOOTER COPYRIGHT

*/

/*------------------------------------*\
    1. GENERAL STYLES
\*------------------------------------*/
body {
    color: #3e7a5b;
    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    word-wrap: break-word;
}

p:last-child { /* RESET MARGIN OF LAST P TAG */
    margin-bottom: 0;
}

ul:last-child {
    margin-bottom: 0;
}

img,
.nav > li > a > img { /* RESPONSIVE IMAGES */
    max-width: 100%;
    height: auto;
}

::-moz-selection {
    color: #fff;
    background-color: #b6737f;
}

::selection {
    color: #fff;
    background-color: #b6737f;
}

.del {
    text-decoration: line-through;
}

.table:last-child {
    margin-bottom: 0;
}

.wrapper {
    background-color: #fff;
}

/* 1.1. HEADINGS */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    color: #3e7a5b;
    font-family: "Playfair Display", serif;
}

h1, h2, h3, .h1, .h2, .h3 {
    font-weight: 700;
}

h4, h5, h6, .h4, .h5, .h6 {
    font-weight: 600;
}

.h1, .h2, .h3, .h4, .h5, .h6 {
    margin-top: 0;
    margin-bottom: 0;
}

h5, .h5 { font-size: 16px; }
h6, .h6 { font-size: 14px; }

h1, .h1 { line-height: 46px; }
h2, .h2 { line-height: 40px; }
h3, .h3 { line-height: 34px; }
h4, .h4 { line-height: 28px; }
h5, .h5 { line-height: 26px; }
h6, .h6 { line-height: 24px; }

/* 1.2. BLOCKQUOTES */
blockquote {
    position: relative;
    margin-top: 57px;
    padding: 50px 50px 54px;
    border: 1px dotted #999;
    border-image-source: url(img/blockquote-border-img.png);
    border-image-width: 1px;
    border-image-slice: 2;
    border-image-repeat: round;
    font-family: "Playfair Display", serif;
    font-size: 16px;
    line-height: 26px;
    font-style: italic;
    z-index: 0;
}

blockquote:before {
    content: "\f10d";
    display: block;
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    width: 60px;
    margin: 10px auto;
    color: #fff;
    background-color: #b6737f;
    border: 1px dotted #fff;
    border-radius: 50%;
    font-family: "FontAwesome";
    line-height: 58px;
    text-align: center;
    box-sizing: inherit;
    z-index: -1;
}

blockquote:after {
    content: " ";
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    width: 80px;
    height: 80px;
    margin: 0 auto;
    background-color: #b6737f;
    border-radius: 50%;
    z-index: -2;
}

blockquote p:before {
    content: "\f10d";
    display: inline-block;
    position: relative;
    top: -2px;
    margin-right: 5px;
    color: #999;
    font-family: "FontAwesome";
    font-size: 14px;
}

blockquote p:after {
    content: "\f10e";
    margin-left: 5px;
    color: #999;
    font-family: "FontAwesome";
    font-size: 14px;
}

/* 1.3. LINKS */
a, .btn-link {
    -webkit-transition-property: color, border-color, background-color, box-shadow;
    transition-property: color, border-color, background-color, box-shadow;
    -webkit-transition-duration: .35s;
            transition-duration: .35s;
    -webkit-transition-timing-function: ease, ease, ease-in-out, ease-in-out;
            transition-timing-function: ease, ease, ease-in-out, ease-in-out;
}

a, .btn-link,
a:link, .btn-link:link,
a:visited, .btn-link:visited,
a:hover, .btn-link:hover,
a:focus, .btn-link:focus,
a:active, .btn-link:active { /* RESET TEXT DECORATION AND OUTLINE */
    text-decoration: none;
    outline: 0;
}

a {
    color: #b6737f;
}

a:hover,
a:focus {
    color: #b6737f;
}

.btn-link {
    display: inline-block;
    color: inherit;
    font-weight: inherit;
}

.btn-link:hover,
.btn-link:focus,
.btn-link.active {
    color: #b6737f;
}

/* 1.4. NAV LINKS */
.nav li a:hover,
.nav li a:focus,
.nav li.open > a,
.nav li.open > a:hover,
.nav li.open > a:focus {
    background-color: transparent; /* RESET NAV HOVER AND FOCUS BACKGROUND COLOR */
}

.nav li a {
    color: inherit;
}

.nav li a:focus,
.nav li.active > a:focus,
.nav li.open > a:focus {
    color: inherit;
}

.nav li a:hover,
.nav li.active > a,
.nav li.active > a:hover,
.nav li.active > a:focus,
.nav li.open > a,
.nav li.open > a:hover,
.nav li.open > a:focus {
    color: #b6737f;
}

.nav > li {
    float: left;
}

.nav > li > a {
    display: inline-block;
}

/* 1.5. BUTTONS */
.btn {
    padding: 12px 50px;
    border-radius: 25px;
    font-family: "Playfair Display", serif;
    font-size: 14px;
    line-height: 24px;
    -webkit-transition-property: color, border-color, background-color;
            transition-property: color, border-color, background-color;
    -webkit-transition-duration: .35s;
            transition-duration: .35s;
    -webkit-transition-timing-function: ease-in-out;
            transition-timing-function: ease-in-out;
    text-transform: uppercase;
}

.btn.active,
.btn:active {
    box-shadow: none; /* RESET BUTTON BOX SHADOW */
}

.btn:focus,
.btn.focus,
.btn.active.focus,
.btn.active:focus,
.btn:active.focus,
.btn:active:focus,
.btn.focus {
    outline: 0; /* RESET BUTTON OUTLINE */
}

.btn-default,
.btn-default.disabled:hover,
.btn-default.disabled:focus,
.btn-default.disabled.focus,
.btn-default[disabled]:hover,
.btn-default[disabled]:focus,
.btn-default[disabled].focus {
    color: #b6737f;
    background-color: transparent;
    border-color: #b6737f;
}

.btn-default:hover,
.btn-default:focus,
.btn-default.focus,
.btn-default:active,
.btn-default:active:hover,
.btn-default:active:focus,
.btn-default:active.focus,
.btn-default.active,
.btn-default.active:hover,
.btn-default.active:focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default,
.open > .dropdown-toggle.btn-default:hover,
.open > .dropdown-toggle.btn-default:focus,
.open > .dropdown-toggle.btn-default.focus,
.nav > li > a.btn-default:hover,
.nav > li > a.btn-default:focus,
.nav > li.active > a.btn-default {
    color: #fff;
    background-color: #b6737f;
    border-color: #b6737f;
}

.btn-primary,
.btn-primary.disabled:hover,
.btn-primary.disabled:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled]:hover,
.btn-primary[disabled]:focus,
.btn-primary[disabled].focus {
    color: #fff;
    background-color: #b6737f;
    border-color: #b6737f;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active,
.btn-primary:active:hover,
.btn-primary:active:focus,
.btn-primary:active.focus,
.btn-primary.active,
.btn-primary.active:hover,
.btn-primary.active:focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary,
.open > .dropdown-toggle.btn-primary:hover,
.open > .dropdown-toggle.btn-primary:focus,
.open > .dropdown-toggle.btn-primary.focus,
.nav > li > a.btn-primary:hover,
.nav > li > a.btn-primary:focus,
.nav > li.active > a.btn-primary {
    color: #b6737f;
    background-color: transparent;
    border-color: #b6737f;
}

.btn-white,
.btn-white.disabled:hover,
.btn-white.disabled:focus,
.btn-white.disabled.focus,
.btn-white[disabled]:hover,
.btn-white[disabled]:focus,
.btn-white[disabled].focus {
    color: #fff;
    background-color: transparent;
    border-color: #b6737f;
}

.btn-white:hover,
.btn-white:focus,
.btn-white.focus,
.btn-white:active,
.btn-white:active:hover,
.btn-white:active:focus,
.btn-white:active.focus,
.btn-white.active,
.btn-white.active:hover,
.btn-white.active:focus,
.btn-white.active.focus,
.open > .dropdown-toggle.btn-white,
.open > .dropdown-toggle.btn-white:hover,
.open > .dropdown-toggle.btn-white:focus,
.open > .dropdown-toggle.btn-white.focus,
.nav > li > a.btn-white:hover,
.nav > li > a.btn-white:focus,
.nav > li.active > a.btn-white {
    color: #fff;
    background-color: #b6737f;
    border-color: #b6737f;
}

/* 1.6. FORM CONTROLS */
.form-group {
    margin-bottom: 20px;
}

.form-control {
    height: 40px;
    padding: 7px 15px;
    border-color: #f2f2f2;
    border-radius: 0;
    box-shadow: none;
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    -webkit-transition-duration: .25s;
    transition-duration: .25s;
    outline: 0;
}

.form-control:focus {
    border-color: #b6737f;
    box-shadow: none;
}

textarea.form-control {
    height: auto;
    min-height: 120px;
    resize: vertical;
}

select.form-control {
    cursor: pointer;
}

/* 1.7. ALERT */
.alert {
    border-radius: 0;
}

/*------------------------------------*\
    2. HELPER CLASSES
\*------------------------------------*/
/* 2.1. FLOATS */
.float--left {
    float: left;
}

.float--right {
    float: right;
}

/* 2.2. OVERFLOWS */
.ov--h {
    overflow: hidden;
}

/* 2.3. PADDINGS */
.pt--0 { padding-top: 0; }
.pt--1 { padding-top: 1px; }
.pt--2 { padding-top: 2px; }
.pt--3 { padding-top: 3px; }
.pt--4 { padding-top: 4px; }
.pt--5 { padding-top: 5px; }
.pt--6 { padding-top: 6px; }
.pt--7 { padding-top: 7px; }
.pt--8 { padding-top: 8px; }
.pt--9 { padding-top: 9px; }
.pt--10 { padding-top: 10px; }
.pt--20 { padding-top: 20px; }
.pt--30 { padding-top: 30px; }
.pt--40 { padding-top: 40px; }
.pt--50 { padding-top: 50px; }
.pt--60 { padding-top: 60px; }
.pt--70 { padding-top: 70px; }
.pt--80 { padding-top: 80px; }
.pt--90 { padding-top: 90px; }
.pt--100 { padding-top: 100px; }
.pt--160 { padding-top: 160px; }
.pt--180 { padding-top: 180px; }

.pb--0 { padding-bottom: 0; }
.pb--1 { padding-bottom: 1px; }
.pb--2 { padding-bottom: 2px; }
.pb--3 { padding-bottom: 3px; }
.pb--4 { padding-bottom: 4px; }
.pb--5 { padding-bottom: 5px; }
.pb--6 { padding-bottom: 6px; }
.pb--7 { padding-bottom: 7px; }
.pb--8 { padding-bottom: 8px; }
.pb--9 { padding-bottom: 9px; }
.pb--10 { padding-bottom: 10px; }
.pb--20 { padding-bottom: 20px; }
.pb--30 { padding-bottom: 30px; }
.pb--40 { padding-bottom: 40px; }
.pb--50 { padding-bottom: 50px; }
.pb--60 { padding-bottom: 60px; }
.pb--70 { padding-bottom: 70px; }
.pb--80 { padding-bottom: 80px; }
.pb--90 { padding-bottom: 90px; }
.pb--100 { padding-bottom: 100px; }
.pb--160 { padding-bottom: 160px; }
.pb--180 { padding-bottom: 180px; }

.p--60-30 { padding: 60px 30px; }

.p--30 { padding: 30px; }

/* 2.4. TEXT COLORS */
.text-default { color: #3e7a5b; }
.text-primary { color: #b6737f; }
.text-white { color: #fff; }

/* 2.5. BACKGROUND COLORS */
.bg-dark { background-color: #97ccc4; }
.bg-default { background-color: #fff; }
.bg-primary { background-color: #b6737f; }

/* 2.6. BACKGROUND IMAGE */
.bg--img {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* 2.7. BACKGROUND OVERLAY */
[data-overlay] {
    position: relative;
    z-index: 0;
}

[data-overlay]:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    -webkit-transition: opacity .25s ease-in-out;
    transition: opacity .25s ease-in-out;
    z-index: -1;
}

[data-overlay="0"]:before {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

[data-overlay="0.1"]:before {
    opacity: 0.1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
}

[data-overlay="0.15"]:before {
    opacity: 0.15;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=15)";
}

[data-overlay="0.2"]:before {
    opacity: 0.2;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
}

[data-overlay="0.25"]:before {
    opacity: 0.25;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";
}

[data-overlay="0.3"]:before {
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
}

[data-overlay="0.35"]:before {
    opacity: 0.35;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=35)";
}

[data-overlay="0.4"]:before {
    opacity: 0.4;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
}

[data-overlay="0.45"]:before {
    opacity: 0.45;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=45)";
}

[data-overlay="0.5"]:before {
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

[data-overlay="0.55"]:before {
    opacity: 0.55;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=55)";
}

[data-overlay="0.6"]:before {
    opacity: 0.6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

[data-overlay="0.65"]:before {
    opacity: 0.65;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)";
}

[data-overlay="0.7"]:before {
    opacity: 0.7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

[data-overlay="0.75"]:before {
    opacity: 0.75;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
}

[data-overlay="0.8"]:before {
    opacity: 0.8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
}

[data-overlay="0.85"]:before {
    opacity: 0.85;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)";
}

[data-overlay="0.9"]:before {
    opacity: 0.9;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
}

[data-overlay="0.95"]:before {
    opacity: 0.95;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=95)";
}

[data-overlay="1"]:before {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

[data-overlay-color="primary"]:before { background-color: #b6737f; }

/* 2.8. FONTS */
.ff--default { font-family: "Open Sans", sans-serif; }
.ff--primary { font-family: "Playfair Display", serif; }

.fs--12 { font-size: 12px; line-height: 22px; }
.fs--14 { font-size: 14px; line-height: 24px; }
.fs--16 { font-size: 16px; line-height: 26px; }
.fs--18 { font-size: 18px; line-height: 28px; }
.fs--20 { font-size: 20px; line-height: 30px; }
.fs--22 { font-size: 22px; line-height: 32px; }
.fs--24 { font-size: 24px; line-height: 34px; }
.fs--26 { font-size: 26px; line-height: 36px; }
.fs--28 { font-size: 28px; line-height: 38px; }
.fs--30 { font-size: 30px; line-height: 40px; }

/* 2.9. GUTTERS */
.gutter--0 {
    margin-left: 0;
    margin-right: 0;
}

.gutter--0 > [class*='col-'] {
    padding-left: 0;
    padding-right: 0;
}

.gutter--10 {
    margin-left: -5px;
    margin-right: -5px;
}

.gutter--10 > [class*='col-'] {
    padding-left: 5px;
    padding-right: 5px;
}

/* 2.10. ALIGING */
.alignleft {
    float: left;
    margin-right: 30px;
    margin-bottom: 5px;
}

.alignright {
    float: right;
    margin-left: 30px;
    margin-bottom: 5px;
}

.alignnone {
    float: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
}

/*------------------------------------*\
    3. COMPONENTS
\*------------------------------------*/
/* 3.1. PRELOADER */
#preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999999;
}

.preloader--inner {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    width: 40px;
    height: 40px;
    margin: -20px auto 0;
    -webkit-animation: preloaderRotate 2.15s infinite linear;
            animation: preloaderRotate 2.15s infinite linear;
}

.preloader--inner:before,
.preloader--inner:after {
    content: " ";
    display: inline-block;
    position: absolute;
    top: 0;
    width: 60%;
    height: 60%;
    background-color: #fff;
    border-radius: 50%;
    -webkit-animation: preloaderBounce 2.15s infinite ease-in-out;
    animation: preloaderBounce 2.15s infinite ease-in-out;
}

.preloader--inner:after {
    top: auto;
    bottom: 0;
    -webkit-animation-delay: -1.0s;
            animation-delay: -1.0s;
}

@-webkit-keyframes preloaderRotate {
    100% {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes preloaderRotate {
    100% {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

@-webkit-keyframes preloaderBounce {
    0%, 100% {
        -webkit-transform: scale(0.0);
    }
    50% {
        -webkit-transform: scale(1.0);
    }
}

@keyframes preloaderBounce {
    0%, 100% { 
        -webkit-transform: scale(0.0);
                transform: scale(0.0);
    } 50% { 
        -webkit-transform: scale(1.0);
                transform: scale(1.0);
    }
}

/* 3.2. PAGER */
.pager {
    margin-top: 4px;
    font-size: 14px;
    line-height: 24px;
    font-weight: 700;
    text-transform: uppercase;
}

.pager > li {
    float: none;
    display: inline-block;
}

.pager > li + li:before {
    content: "|";
    margin: 0 20px 0 18px;
    color: #3e7a5b;
}

.pager > li > a {
    padding: 0;
    border-width: 0;
    border-radius: 0;
}

.pager > li > a > .fa-long-arrow-left {
    margin-right: 8px;
}

.pager > li > a > .fa-long-arrow-right {
    margin-left: 8px;
}

/* 3.3. OWL DOTS */
.owl-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 60px;
    font-size: 0;
    line-height: 0;
    text-align: center;
}

.owl-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 10px;
    background-color: #fff;
    border-radius: 50%;
    vertical-align: middle;
    transform: scale(0.6);
    transition: transform .25s, backgound-color .25s;
}

.owl-dot.active {
    transform: scale(1);
    background-color: #b6737f;
}

/* 3.4. OWL NAV */
.owl-nav > div {
    position: absolute;
    top: 50%;
    left: 0;
    width: 40px;
    margin-top: -40px;
    margin-left: 30px;
    margin-right: 30px;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 50%;
    font-size: 16px;
    line-height: 36px;
    text-align: center;
    transition: border-color .25s;
    opacity: 1;
    visibility: visible;
    transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
    z-index: 1;
}

.owl-nav > div.disabled {
    opacity: 0;
    visibility: hidden;
}

.owl-nav > div:hover {
    border-color: #b6737f;
}

.owl-nav > div:before {
    content: " ";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    background-color: #b6737f;
    border-radius: 50%;
    opacity: 0.5;
    transition: opacity .25s ease-in-out;
    z-index: -1;
}

.owl-nav > div:hover:before {
    opacity: 1;
}

.owl-nav > .owl-next {
    left: auto;
    right: 0;
}

/* 3.5. DROPDOWN MENU */
.dropdown-menu {
    top: 43px;
    left: 5px;
    margin-top: 0;
    padding: 10px 0;
    border-width: 0;
    border-radius: 0;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15);
}

.dropdown:hover > .dropdown-menu {
    display: block;
}

.dropdown-menu:before {
    content: " ";
    position: absolute;
    top: -24px;
    left: 0;
    right: 0;
    height: 24px;
    z-index: -1;
}

.dropdown-menu > li > a {
    padding: 6px 20px 5px;
    background-color: transparent;
}

.dropdown-menu > li.active > a,
.dropdown-menu > li.active > a:hover,
.dropdown-menu > li.active > a:focus {
    background-color: transparent;
}

/* 3.6. PAGE TITLE */
.page--title .h3 {
    margin-bottom: 3px;
}

/* 3.7. TEXT BLOCK */
.text--block {
    font-size: 14px;
    line-height: 24px;
}

.text--block h3:first-child {
    margin-top: -7px;
    margin-bottom: 25px;
}

.text--block blockquote {
    margin-top: 25px;
    padding: 30px 30px 32px;
}

.text--block blockquote:before,
.text--block blockquote:after {
    display: none;
}

/* 3.8. INFO BLOCK */
.info--block .icon {
    max-width: 50px;
    margin: 0 auto 17px;
    font-size: 30px;
    line-height: 50px;
}

.info--block .title + .desc {
    margin-top: 9px;
}

/* 3.9. CATEGORY ITEM */
.category--item {
    position: relative;
    margin-bottom: 30px;
    z-index: 0;
}

.category--item a {
    display: block;
}

.category--item a:before {
    opacity: 0;
    z-index: 1;
}

.category--item:hover a:before {
    opacity: 0.7;
}

.category--item span {
    display: block;
    position: absolute;
    right: 20px;
    bottom: 20px;
    padding: 5px 20px;
    color: #fff;
    text-transform: uppercase;
    transition-property: right, bottom, transform;
    transition-duration: .35s;
    transition-timing-function: ease-in-out;
    z-index: 1;
}

.category--item:hover span {
    right: 50%;
    bottom: 50%;
    transform: translate(50%, 50%);
    color: #b6737f;
}

.category--item span:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #b6737f;
    border: 1px solid #fff;
    opacity: 0.8;
    transition: background-color .25s ease-in-out, opacity .25s ease-in-out;
    z-index: -1;
}

.category--item:hover span:before {
    background-color: #fff;
    opacity: 1;
}

/* 3.10. POST AUTHOR */
.pager--wrapper + .post--author {
    margin-top: 3px;
}

.post--author .img {
    max-width: 120px;
    margin-right: 30px;
}

.post--author .header {
    font-size: 14px;
    line-height: 24px;
}

.post--author .header .name {
    margin-top: -6px;
    text-transform: uppercase;
}

.post--author .header .role {
    margin-bottom: 0;
}

.post--author .header .social .nav {
    margin: 0 -10px;
    color: #ccc;
}

.post--author .header .social .nav > li > a {
    padding: 0 10px;
}

.post--author .bio {
    margin-top: 13px;
}

.post--author .action {
    margin-top: 12px;
}

.post--author .action a {
    display: inline-block;
    padding-bottom: 1px;
    border-bottom: 1px solid;
    font-size: 14px;
    line-height: 24px;
}

/* 3.11. COMMENT ITEMS */
.comment--items {
    margin: 0;
    padding: 0;
    list-style: none;
}

.comment--items > li + li {
    margin-top: 33px;
}

.comment--items .comment--items {
    padding-top: 33px;
    padding-left: 130px;
}

.comment--items .comment--items .comment--items {
    padding-left: 0;
}

.comment--img {
    max-width: 100px;
    margin-right: 30px;
}

.comment--header .name {
    margin-top: -5px;
}

.comment--header .date {
    margin-top: -1px;
    color: #999;
    font-size: 14px;
    line-height: 24px;
}

.comment--header .reply {
    position: relative;
    padding: 7px 20px;
    z-index: 0;
}

.comment--header .reply:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid #b6737f;
    border-radius: 25px;
    opacity: 0.3;
    transition: opacity .25s ease-in-out;
}

.comment--header .reply:hover:before,
.comment--header .reply:focus:before {
    opacity: 1;
}

.comment--content {
    margin-top: 8px;
}

/* 3.12. COMMENT RESPOND */
.comment--respond-title {
    max-width: 600px;
    margin: 6px auto 40px;
    padding-bottom: 13px;
    border-bottom: 1px solid #b6737f;
}

.comment--respond .form-control {
    padding-left: 30px;
    padding-right: 30px;
    background-color: #f2f2f2;
}

.comment--respond .btn {
    padding: 10px 30px;
}

/* 3.13. CONTACT FORM */
.contact--form form {
    padding: 30px 30px;
    background-color: #f2f2f2;
}

.contact--form label {
    display: block;
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 24px;
    font-weight: normal;
}

.contact--form label > span {
    display: block;
    margin-bottom: 3px;
}

.contact--form .form-control {
    padding-left: 30px;
    padding-right: 30px;
}

.contact--form .btn {
    padding: 7px 30px;
}

/* 3.14. CONTACT INFO BLOCK */
.contact--info-block {
    text-align: center;
}

.contact--info-block .icon {
    max-width: 50px;
    margin: 0 auto 19px;
    font-size: 30px;
    line-height: 50px;
}

.contact--info-block .title {
    margin-bottom: 8px;
    text-transform: uppercase;
}

.contact--info-block .content {
    font-size: 14px;
}

.contact--info-block .content p {
    margin-bottom: 0;
}

/* 3.15. 404 CONTENT */
.f0f--content .h1 {
    margin-bottom: 46px;
    font-size: 80px;
    line-height: 80px;
}

.f0f--content .h2 {
    margin-bottom: 22px;
    font-weight: normal;
}

.f0f--content p {
    margin-bottom: 0;
}

.f0f--content form {
    max-width: 520px;
    margin: 33px auto 0;
}

.f0f--content .form-control {
    text-align: center;
}

.f0f--content .btn {
    margin-top: 30px;
    padding: 7px 30px;
}

/*------------------------------------*\
    4. WIDGETS
\*------------------------------------*/
.widget {
    padding: 40px 30px 30px;
    border: 1px solid #f2f2f2;
}

.widget + .widget {
    margin-top: -1px;
}

/* 4.1. WIDGET TITLE */
.widget--title {
    max-width: 250px;
    margin: -8px auto 30px;
    padding-bottom: 13px;
    border-bottom: 1px solid #b6737f;
    text-align: center;
    text-transform: uppercase;
}

/* 4.2. ABOUT WIDGET */
.about--widget .img {
    max-width: 120px;
    margin: 0 auto 23px;
}

.about--widget .info .name {
    text-transform: uppercase;
}

.about--widget .info .role {
    color: #ccc;
    font-size: 14px;
    line-height: 24px;
}

.about--widget .social .nav {
    color: #ccc;
}

.about--widget .social .nav > li {
    float: none;
    display: inline-block;
}

.about--widget .social .nav > li > a {
    padding: 15px 13px 0;
}

.about--widget .bio {
    margin-top: 15px;
}

/* 4.3. SOCIAL WIDGET */
.social--widget .nav > li {
    float: none;
    display: inline-block;
    margin: 0 2.5px 5px;
}

.social--widget .nav > li > a {
    min-width: 40px;
    padding: 0;
    color: #b6737f;
    border: 1px solid #b6737f;
    border-radius: 50%;
    line-height: 38px;
}

.social--widget .nav > li > a:hover {
    color: #fff;
    background-color: #b6737f;
}

/* 4.4. NEWSLETTER WIDGET */
.newsletter--widget p {
    margin-bottom: 18px;
    color: #999;
}

.newsletter--widget .form-control {
    padding-left: 30px;
    padding-right: 30px;
    background-color: #f2f2f2;
    border-radius: 20px;
}

.newsletter--widget .btn {
    margin-top: 20px;
    padding: 7px 30px;
}

/* 4.5. POST WIDGET */
.post--widget .cat {
    display: inline-block;
    margin: 20px 0 10px;
    font-size: 12px;
    line-height: 22px;
    text-transform: uppercase;
}

.post--widget .cat:hover:before {
    opacity: 1;
}

.post--widget .cat a {
    display: inline-block;
    padding: 2px 15px;
    color: #fff;
}

.post--widget .title {
    margin-bottom: 4px;
}

.post--widget .meta {
    color: #999;
    font-size: 12px;
    line-height: 22px;
}

/* 4.6. POSTS WIDGET */
.posts--widget .nav > li {
    float: none;
}

.posts--widget .nav > li + li {
    margin-top: 30px;
}

.posts--widget .img {
    float: left;
    max-width: 150px;
    margin-right: 20px;
}

.posts--widget .info {
    padding-top: 15px;
    overflow: hidden;
}

.posts--widget .cat {
    display: inline-block;
    margin-bottom: 10px;
    padding: 1px 8px;
    color: #fff;
    font-size: 12px;
    line-height: 22px;
    text-transform: uppercase;
}

.posts--widget .cat:hover,
.posts--widget .cat:focus {
    color: #fff;
}

.posts--widget .cat:hover:before {
    opacity: 1;
}

.posts--widget .date {
    margin-top: 6px;
    color: #999;
    font-size: 12px;
    line-height: 22px;
}

/* 4.7. FLICKER WIDGET */
.flicker--widget a {
    display: block;
    position: relative;
    margin-bottom: 10px;
    z-index: 0;
}

.flicker--widget a:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #b6737f;
    opacity: 0;
    transition: opacity .25s ease-in-out;
    z-index: 1;
}

.flicker--widget a:hover:before {
    opacity: 0.6;
}

.flicker--widget a:after {
    content: "\f0c1";
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin-top: -13px;
    color: #fff;
    font-family: "FontAwesome";
    font-size: 16px;
    line-height: 26px;
    text-align: center;
    opacity: 0;
    transition: opacity .25s ease-in-out;
    z-index: 1;
}

.flicker--widget a:hover:after {
    opacity: 1;
}

.flicker--widget a img {
    width: 100%;
}

/* 4.8. LINKS WIDGET */
.links--widget {
    font-weight: 700;
    text-transform: uppercase;
}

.links--widget .nav > li {
    float: none;
}

.links--widget .nav > li + li {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #f2f2f2;
}

.links--widget .nav > li > a {
    display: block;
    padding: 0;
    font-size: 14px;
    line-height: 24px;
}

.links--widget .nav > li > a:before,
.links--widget .nav > li > a:after {
    content: " ";
    display: table;
}

.links--widget .nav > li > a:after {
    clear: both;
}

.links--widget .nav > li > a .text {
    float: left;
    display: block;
    padding: 7px 0;
}

.links--widget .nav > li:last-child > a .text {
    padding-bottom: 3px;
}

.links--widget .nav > li > a .count {
    float: right;
    display: block;
    position: relative;
    width: 40px;
    margin-left: 5px;
    padding: 7px 0;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    z-index: 0;
}

.links--widget .nav > li > a .count:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #b6737f;
    border-radius: 50%;
    opacity: 0.6;
    transition: opacity .25s ease-in-out;
    z-index: -1;
}

.links--widget .nav > li > a:hover .count:before {
    opacity: 1;
}

/* 4.9. AD WIDGET */
.ad--widget a {
    display: block;
}

.ad--widget img {
    width: 100%;
}

/*------------------------------------*\
    5. HEADER SECTION
\*------------------------------------*/
/* 5.1. HEADER TOPBAR */
.header--date {
    float: none;
    padding: 0;
    text-align: left;
}

.header--search-bar {
    display: inline-block;
    position: relative;
    width: 100%;
    max-width: 280px;
    padding: 5px 0;
    z-index: 0;
}

.header--search-bar:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #b6737f;
    opacity: 0.6;
    z-index: -1;
}

.header--search-bar ::-webkit-input-placeholder { color: #fff; }
.header--search-bar ::-moz-placeholder { color: #fff; }
.header--search-bar :-ms-input-placeholder { color: #fff; }
.header--search-bar :-moz-placeholder { color: #fff; }

.header--search-bar .form-control {
    padding: 0 80px;
    color: #fff;
    background-color: transparent;
    border-width: 0;
}

.header--search-bar .btn-link {
    position: absolute;
    top: 0;
    right: 0;
    padding: 13px 10px;
    border-width: 0;
    color: #fff;
}

.header--social {
    float: none;
}

.header--social > span {
    display: inline-block;
    margin-right: 15px;
    vertical-align: middle;
}

.header--social > .nav {
    display: inline-block;
    margin-right: -10px;
    vertical-align: middle;
}

.header--social > .nav > li > a {
    padding: 13px 10px;
}

/* Header Brand (Logo + Slogan in Topbar) */
.header--topbar {
    padding: 2px 0;
}

.header--topbar .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    
}

.header--brand {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: nowrap;
}

.header--brand a {
    display: inline-block;
}

.header--brand img {
    display: block;
    max-height: 44px;
}

.header--brand p {
    margin: 0;
    line-height: 1.2;
}

/* Topbar layout adjustments */
.header--topbar .header--search-bar {
    width: auto;
    padding: 0;
    flex: 0 1 280px;
    max-width: 280px;
}

.header--topbar .header--social > .nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
}


/* 5.2. HEADER NAVBAR */
.header--navbar {
    margin-bottom: 10px;
    border-radius: 0;
    border-width: 0;
    border-color: #b6737f;
}

.header--logo {
    padding: 15px 0 ;
    text-align: center;
}

.header--logo a {
    display: inline-block;
}

.header--navbar .navbar-toggle {
    margin: 0 15px 20px;
    border-color: #b6737f;
    background-color: #b6737f;
    border-radius: 0;
    transition: border-color .25s, background-color .25s ease-in-out;
}

.header--navbar .navbar-toggle.collapsed {
    border-color: #333;
    background-color: transparent;
}

.header--navbar .navbar-toggle .icon-bar {
    background-color: #fff;
}

.header--navbar .navbar-toggle.collapsed .icon-bar {
    background-color: #333;
}

.header--nav-links {
    padding: 0 0 18px;
    color: #3e7a5b;
    font-family: "Playfair Display", serif;
    font-size: 14px;
    line-height: 24px;
    font-weight: 700;
    text-transform: uppercase;
}

.header--nav-links > li {
    float: none;
    display: inline-block;
}

.header--nav-links > li > a {
    padding: 0 25px;
    border-right: 1px solid #3e7a5b;
    line-height: 16px;
}

.header--nav-links > li:last-child > a {
    border-right-width: 0;
}

.header--nav-links > .dropdown > a:hover
.header--nav-links > .dropdown > a:focus,
.header--nav-links > .dropdown.open > a,
.header--nav-links > .dropdown.open > a:hover
.header--nav-links > .dropdown.open > a:focus {
    border-color: #3e7a5b;
}

.header--nav-links > li > a > .fa {
    margin-left: 8px;
}

/*------------------------------------*\
    6. BANNER SECTION
\*------------------------------------*/
/* 6.1. BANNER CONTENT */
.banner--content {
    padding-left: 15px;
    padding-right: 15px;
}

.banner--content .tag {
    display: inline-block;
    margin-bottom: 14px;
    padding: 0 10px;
    border: 1px solid rgba(255, 255 , 255, 0.15);
    /* text-transform: uppercase; */
}

.banner--content .tag a {
    color: #fff;
}

.banner--content .desc {
    margin-top: 12px;
}

.banner--content .action {
    margin-top: 33px;
}

.banner--item.style--2 {
    height: 100%;
}

.banner--item.style--3 .banner--content .title .h2 {
    font-size: 24px;
    line-height: 26px;
}

.banner--item.style--3 .banner--content .action {
    margin-top: 20px;
}

.banner--item.style--3 .banner--content .action .btn {
    padding: 7px 30px;
}

/*------------------------------------*\
    7. POST ITEM
\*------------------------------------*/
.post--item {
    padding-bottom: 15px;
    border-style: solid;
    border-width: 0 0 1px;
    border-color: #b6737f;
}

.post--item.sticky {
    padding: 20px 20px 15px;
    border-width: 1px;
    box-shadow: 0 3px 20px rgba(0, 0, 0, 0.1);
}

.related--posts .post--item {
    padding-bottom: 0;
    border-bottom-width: 0;
}

.post--item + .post--item {
    margin-top: 60px;
}

/* 7.1. POST IMAGE */
.post--img {
    margin-bottom: 33px;
}

/* 7.2. POST VIDEO & AUDIO */
.post--video,
.post--audio {
    display: block;
    position: relative;
    height: 0;
    margin-bottom: 34px;
    padding: 0 0 56.25%;
    background-color: #f2f2f2;
    z-index: 0;
}

.post--video iframe,
.post--audio iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin-bottom: 34px;
    width: 100%;
    height: 100%;
    border-width: 0;
}

/* 7.3. POST SLIDER */
.post--slider {
    margin-bottom: 33px;
}

.post--slider .owl-nav > div {
    width: 50px;
    margin-top: -25px;
    margin-left: 40px;
    margin-right: 40px;
    line-height: 46px;
}

.post--slider .owl-dots {
    bottom: 40px;
}

/* 7.4. POST CATEGORY */
.post--meta + .post--cat {
    margin-top: 1px;
}

.post--cat a {
    display: inline-block;
    padding: 0 8px;
    color: #fff;
    font-size: 14px;
    line-height: 24px;
    text-transform: uppercase;
}

.post--cat a:hover,
.post--cat a:focus {
    color: #fff;
}

.post--cat a:hover:before {
    opacity: 1;
}

/* 7.5. POST TITLE */
.post--title {
    margin-top: 16px;
}

.post--single .post--meta + .post--title {
    margin-top: 17px;
}

.post--single .post--cat + .post--title {
    margin-top: 19px;
}

/* 7.6. POST EXCERPT */
.post--excerpt {
    margin-top: 15px;
}

/* 7.7. POST CONTENT */
.post--content {
    text-align: left;
}

.post--title + .post--content {
    margin-top: 22px;
}

.post--cat + .post--content {
    margin-top: 25px;
}

.post--content p {
    margin-bottom: 18px;
}

.post--content p:last-child {
    margin-bottom: 0;
}

/* 7.8. POST ACTION */
.post--action {
    margin-top: 36px;
}

/* 7.9. POST META */
.post--meta {
    color: #999;
    font-size: 14px;
    line-height: 24px;
}

.post--action + .post--meta {
    margin-top: 34px;
}

.post--slider + .post--meta,
.post--img + .post--meta,
.post--video + .post--meta,
.post--audio + .post--meta {
    margin-top: -10px;
}

.post--meta p {
    margin-bottom: 0;
}

.post--meta p.float--right + p.float--right {
    margin-right: 30px;
}

/* 7.10. POST FOOTER */
.post--footer {
    margin-bottom: 15px;
}

.post--cats {
    margin-top: 4px;
    font-size: 14px;
    line-height: 24px;
}

.post--cats > li > strong {
    display: inline-block;
    margin-right: 5px;
    color: #3e7a5b;
    font-weight: 600;
}

.post--cats > li > a {
    padding: 0;
}

.post--cats > li + li + li > a:before {
    content: ",";
    margin-right: 4px;
}

.post--tags {
    margin: 10px -2.5px 0;
    color: #fff;
    font-size: 13px;
    line-height: 23px;
    text-transform: uppercase;
}

.post--cats + .post--tags {
    margin-top: 13px;
}

.post--tags > li > strong {
    display: inline-block;
    margin-top: 5px;
    margin-left: 2.5px;
    margin-right: 5px;
    color: #3e7a5b;
    font-weight: 600;
    line-height: 23px;
}

.post--tags > li > a,
.post--tags > li > a:hover,
.post--tags > li > a:focus {
    margin: 5px 2.5px 0;
    padding: 0 10px;
    color: #fff;
    background-color: #b6737f;
}

ul.post--tags > li > a:hover,
ul.post--tags > li > a:focus {
    color: #fff;
}

.post--social {
    margin: -15px -5px 0;
}

.post--social > li > strong {
    display: block;
    margin-top: 10px;
    margin-left: 5px;
    margin-right: 5px;
    font-size: 14px;
    line-height: 40px;
    font-weight: 600;
}

.post--social > li > a {
    width: 40px;
    margin: 10px 5px 0;
    padding: 0;
    color: #b6737f;
    border: 1px solid #b6737f;
    border-radius: 50%;
    font-size: 14px;
    line-height: 38px;
}

.post--social > li > a:hover,
.post--social > li > a:focus {
    background-color: #b6737f;
}

ul.post--social > li > a:hover,
ul.post--social > li > a:focus {
    color: #fff;
}

/* 7.11. RELATED POSTS */
.related--posts-title {
    max-width: 600px;
    margin: 3px auto 10px;
    padding-bottom: 13px;
    border-bottom: 1px solid #b6737f;
}

.related--posts .post--item {
    padding-bottom: 0;
    border-bottom-width: 0;
}

.related--posts .post--img {
    margin-bottom: 0;
}

.related--posts .post--title {
    margin-top: 0;
}

.related--posts .post--img + .post--title,
.related--posts .post--video + .post--title,
.related--posts .post--audio + .post--title {
    margin-top: 20px;
}

/* 7.12. POST COMMENTS */
.post--comments-title {
    max-width: 600px;
    margin: 6px auto 40px;
    padding-bottom: 13px;
    border-bottom: 1px solid #b6737f;
}

/*------------------------------------*\
    8. MAP
\*------------------------------------*/
.map {
    margin-bottom: 60px;
}

/*------------------------------------*\
    9. INSTAGRAM PHOTOS
\*------------------------------------*/
/* 9.1. INSTAGRAM ITEMS */
.instagram--items {
    position: relative;
    z-index: 0;
}

.instagram--profile {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin-top: -18px;
    font-weight: 700;
    text-align: center;
    z-index: 2;
}

.instagram--profile a {
    display: inline-block;
    padding: 5px 30px;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.5);
    text-transform: uppercase;
}

.instagram--profile a:hover {
    color: #fff;
    background-color: #b6737f;
}

.instagram--profile a:focus {
    color: #fff;
}

.instagram--item {
    max-width: 240px;
}

/*------------------------------------*\
    10. SUBSCRIBE SECTION
\*------------------------------------*/
/* 10.1. SUBSCRIBE FORM */
.subscribe--form .h5 {
    display: inline-block;
    margin: 0 13px;
    vertical-align: middle;
    text-transform: uppercase;
}

.subscribe--form form {
    display: inline-block;
    margin: 0 13px;
    vertical-align: middle;
}

.subscribe--form .input-group {
    max-width: 545px;
    border: 1px solid #ccc;
    border-radius: 25px;
}

.subscribe--form .input-group .form-control {
    height: 38px;
    padding: 6px 30px;
    background-color: transparent;
    border-color: transparent;
}

.subscribe--form .input-group-btn .btn {
    margin: -1px -2px -1px 0;
    padding: 8px 40px 6px;
    border-radius: 25px;
}

/*------------------------------------*\
    11. FOOTER SECTION
\*------------------------------------*/
/* 11.1. FOOTER TOPBAR */
.footer--topbar {
    color: #fff;
    background-color: #111;
}

.back-to-top-btn {
    margin: 3px 0;
    font-size: 14px;
    line-height: 24px;
    font-weight: 700;
    text-transform: uppercase;
}

.back-to-top-btn a .fa {
    margin-left: 8px;
}

.footer--topbar .social .nav {
    margin-top: 10px;
    text-align: center;
}

.footer--topbar .back-to-top-btn + .social .nav {
    margin-top: 53px;
}

.footer--topbar .social .nav > li {
    float: none;
    display: inline-block;
}

.footer--topbar .social .nav > li > a {
    display: block;
    min-width: 40px;
    margin: 0 3px 10px;
    padding: 0;
    color: #b6737f;
    border: 1px solid #b6737f;
    border-radius: 50%;
    font-size: 14px;
    line-height: 38px;
}

.footer--topbar .social .nav > li > a:hover {
    color: #fff;
    background-color: #b6737f;
}

/* 11.2. FOOTER COPYRIGHT */
.footer--copyright {
    position: relative;
    padding: 23px 0;
    color: #acacac;
    background-color: #111;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    text-transform: uppercase;
    z-index: 0;
}

.footer--copyright:before {
    content: " ";
    display: none;
    position: absolute;
    top: -1px;
    left: 0;
    right: 0;
    border-top: 1px solid #b6737f;
    opacity: 0.5;
}

.footer--topbar + .footer--copyright:before {
    display: block;
}

/* === Fonte padrão do site: Arial (override) === */
html, body { font-family: Arial, Helvetica, sans-serif !important; }
h1, h2, h3, h4, h5, h6,
.post--title h2,
.widget--title,
.header--nav-links > li > a,
.ff--primary,
.btn,
.pager a,
.footer--section .back-to-top-btn a,
.footer--section .social a { 
  font-family: Arial, Helvetica, sans-serif !important; 
}

/* Força o corpo do artigo à esquerda, sem quebrar o resto */
.post--item.post--single { 
  text-align: left !important; /* sobrescreve .text-center */
}

/* Mantém elementos “de topo” centralizados */
.post--item.post--single .post--slider,
.post--item.post--single .post--meta,
.post--item.post--single .post--title {
  text-align: center;
}

/* Garante que o texto do artigo (parágrafos e listas) fique à esquerda */
.post--item.post--single p,
.post--item.post--single ul,
.post--item.post--single ol,
.post--item.post--single li,
.post--item.post--single blockquote {
  text-align: left;
}

.whatsapp-btn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 60px;
    height: 60px;
    background: #25D366;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    z-index: 9999;
}

.whatsapp-btn i {
    font-size: 32px;
    color: white;
    line-height: 1;
}


.whatsapp-btn a {
    color: white;
    font-size: 30px;
    text-decoration: none;
}

/* Fornecedores com ícones */
.fornecedores-icons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.fornecedor-item {
    width: 40%;
    text-align: center;
    background: #fff;
    padding: 12px 5px;
    border-radius: 10px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

.fornecedor-item i {
    font-size: 32px;
    color: #1b2d6e;
    margin-bottom: 6px;
}

.fornecedor-item span {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    display: block;
    line-height: 1.2;
}

.fornecedores-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    /* grid-template-columns: repeat(8, 1fr);  */
    /* 8 itens na mesma linha */
    gap: 15px;
    justify-items: center;
    align-items: center;
    margin-top: 20px;
}

.fornecedor-box {
    background: #ffffff;
    padding: 12px 6px; /* menor */
    border-radius: 10px;
    width: 100%; /* reduzido para caber 8 por linha */
    text-align: center;
    box-shadow: 0 3px 10px rgba(0,0,0,0.06);
    transition: 0.25s;
}

.fornecedor-box:hover {
    transform: translateY(-4px);
    box-shadow: 0 4px 14px rgba(0,0,0,0.10);
}

.fornecedor-box i {
    font-size: 26px; /* menor */
    color: #0d2a69;
    margin-bottom: 6px;
    display: block;
}

.fornecedor-box span {
    font-size: 11px; /* bem compacto */
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1.15;
    color: #333;
}

/* Padroniza todas as imagens dentro do conteúdo do artigo */
.artigo .post--single img,
.artigo .post--item img {
    display: block;
    margin: 0 auto 30px; /* centraliza e dá espaçamento inferior */
    max-width: 100%;     /* garante que não ultrapassem o texto */
    width: 100%;         /* ocupa exatamente a largura do conteúdo textual */
    border-radius: 10px; /* opcional: mantém o estilo do restante do site */
}

.artigo .post--meta { text-align: left; }

.artigo .post--meta .float--right .nav > li {
  float: left;          /* deixa ícones em linha */
}

/* SOMENTE Aviso Legal */
.aviso-legal h2{
  color: #3e7a5b !important;
  font-size: 16px;
  margin: 0 0 10px;
}

.aviso-legal p{
  font-size: 12px;
  line-height: 1.1;
  margin: 0 0 6px;
}

/* SOMENTE Aviso Legal */
.sobre h2{
    color: #3e7a5b !important;
    font-size: 16px;
    margin: 0 0 10px;
  }
  
  .sobre p{
    font-size: 12px;
    line-height: 1.1;
    margin: 0 0 6px;
  }

/* Logo do topo (dentro do título) alinhado à esquerda */
.artigo .post--title h2 > a {
  float: left;
  margin-right: 10px;
}

/* garante que o h2 “abra espaço” pro float */
.artigo .post--title h2::after {
  content: "";
  display: block;
  clear: both;
}

/* Tags do post: remover caixa alta e reduzir tamanho */
.artigo .post--tags a {
    text-transform: none;   /* remove CAIXA ALTA */
    font-size: 12px;        /* reduz tamanho */
    letter-spacing: 0;     /* remove espaçamento entre letras */
}

/* COMPARTILHE: centralizar o ícone dentro do círculo (sem achatar) */
.artigo .post--social > li a{
  display: inline-block !important;
  width: 34px;               /* ajuste fino: 32–38 se quiser */
  height: 34px;
  line-height: 34px;         /* chave: centraliza verticalmente */
  text-align: center;        /* centraliza horizontalmente */
  padding: 0 !important;
}

.artigo .post--social > li a i{
  line-height: 34px;         /* garante que o i acompanhe */
  display: inline-block;
  vertical-align: middle;
}

.banner--section .banner--content .title,
.banner--section .banner--content .title h2,
.banner--section .banner--content .title h2 a {
  color: #fff !important;
}


/* 1) Igualar altura dos cards (somente no grid de posts) */
@media (min-width: 768px) {
  .section .row[data-trigger="fitrow"] {
    display: flex;
    flex-wrap: wrap;
  }

  .section .row[data-trigger="fitrow"] > [class*="col-"] {
    display: flex;
  }

  .section .row[data-trigger="fitrow"] .post--item {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
  }

  /* Mantém o botão sempre “colado” embaixo */
  .section .row[data-trigger="fitrow"] .post--action {
    margin-top: auto;
  }
}

/* 2) (Opcional) Padronizar a altura da mídia (imagem igual ao vídeo 16:9) */
.section .row[data-trigger="fitrow"] .post--img {
  position: relative;
  height: 0;
  padding-bottom: 56.25%; /* 16:9 */
  overflow: hidden;
}

.section .row[data-trigger="fitrow"] .post--img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}



/* --- Artigos em quadros (grid) - compactos (foto + título) --- */
.category-carousel .post--grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 18px;
}
.category-carousel .post--grid .item{
  height: 100%;
  padding-bottom: 0 !important;
}

.category-carousel .post--grid .post--item{
  padding: 14px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 10px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.category-carousel .post--grid .post--title{
  margin-top: 10px;
}

/* Mantém todos os quadros com a mesma altura (título limitado a 2 linhas) */
.category-carousel .post--grid .post--title .h4 a{
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 5.2em;
}

.category-carousel .post--grid .post--title .h4{
  margin: 10px 0 0;
  font-size: 15px;
  line-height: 1.3;
}

/* Deixa as miniaturas consistentes */
.category-carousel .post--img{
  position: relative;
  height: 0;
  padding-bottom: 70%;
  overflow: hidden;
  border-radius: 10px;
}
.category-carousel .post--img img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Preloader: não travar a tela por muito tempo */
#preloader {
    transition: opacity .25s ease, visibility .25s ease;
  }
  #preloader.preloader--hide {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  
/* Banner (Promoções) x Categorias: alinhamento fixo */
@media (min-width: 992px) {
    .banner--section > .container > .row{
      display: flex;
      align-items: stretch;
    }
  
    .banner--section > .container > .row > [class*="col-"]{
      display: flex;
      flex-direction: column;
    }
  
    /* Slider ocupar 100% da altura */
    .banner--slider,
    .banner--slider .owl-stage-outer,
    .banner--slider .owl-stage,
    .banner--slider .owl-item{
      height: 100%;
    }
    .banner--slider .banner--item{
      height: 100%;
      min-height: 420px; /* ajuste fino se precisar */
    }
  
    /* Grid de categorias preencher a altura inteira da coluna */
    .banner--section .col-md-6[data-mh="banner02"] > .row{
      display: flex;
      flex-wrap: wrap;
      height: 100%;
    }
    .banner--section .col-md-6[data-mh="banner02"] > .row > [class*="col-"]{
      display: flex;
    }
    .banner--section .category--item{
      flex: 1;
      width: 100%;
    }
    .banner--section .category--item a,
    .banner--section .category--item img{
      height: 100%;
    }
    .banner--section .category--item img{
      object-fit: cover;
    }
  }
  
  /* Tag PROMOÇÕES “fixa” no topo, centralizada (como na sua referência) */
  .banner--item.style--2 .banner--content{
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .banner--item.style--2 .banner--content .tag{
    position: absolute;
    top: 24px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
  }


/* Category grid cards: 3 per row (padronizado sem cortar palavra) */
.category-grid .post--item{margin-bottom:30px;}
.category-grid .post--img img{width:100%;height:180px;object-fit:cover;border-radius:6px;}

/* Título: 2 linhas, sem cortar palavra */
.category-grid .post--title h2{
  font-size:16px;
  line-height:1.35;
  margin:12px 0 6px;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:calc(1.35em * 2);
}

/* Descrição: 3 linhas, sem “vazar” texto (para cards) */
.category-grid .post--excerpt p{
  font-size:14px;
  line-height:1.5;
  margin:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}

/* ===== Quem Somos: texto normal (mesmo tamanho do "Onde Reservar") ===== */
.category-grid .col-sm-12 .post--excerpt p{
  font-size: inherit;          /* usa o tamanho padrão do tema (igual ao "Onde Reservar") */
  line-height: inherit;        /* usa a altura de linha padrão */
  display: block;              /* remove layout de clamp */
  -webkit-line-clamp: unset;   /* remove clamp */
  overflow: visible;           /* mostra o texto todo */
  margin: 0 0 12px;            /* espaçamento padrão de parágrafo */
}

/* ===== TOPO: logo + slogan (slogan embaixo) ===== */
.header--topbar .header--brand{
    display: flex !important;
    flex-direction: column !important;   /* slogan abaixo */
    align-items: center !important;
    gap: 6px !important;
  }
  
  /* Aumenta a logo em 50% (44px -> 66px) */
  .header--topbar .header--brand img{
    max-height: 100px !important;
    height: auto !important;
    width: auto !important;
  }
  
  /* Slogan abaixo com espaçamento */
  .header--topbar .header--brand p{
    margin: 0 !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }
  
/* ===== TOPO: logo + slogan (mesma linha) ===== */
.header--topbar .header--brand{
  flex-direction: row !important;   /* antes estava column */
  align-items: center !important;
  gap: 12px !important;
}

/* mantém o slogan alinhado na linha */
.header--topbar .header--brand p{
  margin: 0 !important;
  text-align: left !important;
  display: inline-block !important;
}

/* =========================================================
   Header "Nos Siga" - same circular identity as footer icons
   ========================================================= */
   .header--topbar .header--social > .nav > li {
    float: none;
    display: inline-block;
}

.header--topbar .header--social > .nav > li > a {
    display: block;
    min-width: 40px;
    height: 40px;
    margin: 0 3px;
    padding: 0;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 50%;
    font-size: 14px;
    line-height: 38px;
    text-align: center;
}

.header--topbar .header--social > .nav > li > a:hover,
.header--topbar .header--social > .nav > li > a:focus {
    color: #fff;
    background-color: #fff;
}

.header--topbar .header--social > span {
    margin-right: 10px;
}

/* Topbar mais “na ponta” */
.header--topbar .container{
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  
  /* Logo/brand mais à esquerda */
  .header--topbar .header--date.header--brand{
    justify-content: flex-start !important;
    text-align: left !important;
  }
  
  /* Social mais à direita */
  .header--topbar .header--social{
    margin-left: auto !important;
    text-align: right !important;
  }
  
  /* Lupa alinhada no meio do input */
  .header--topbar .header--search-bar{
    padding: 0 !important;
  }
  
  .header--topbar .header--search-bar .btn-link{
    top: 50% !important;
    transform: translateY(-50%) !important;
    padding: 0 18px !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
  }

/* CENTRALIZAR a barra de busca no meio do topbar (desktop) */
@media (min-width: 992px){
    .header--topbar .container{
      position: relative;
    }
  
    .header--topbar .header--search-bar{
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      margin: 0;
      padding: 0;
      z-index: 2;
    }
  }

/* =========================
   MOBILE: logo esquerda, busca no meio, social embaixo
   ========================= */
   @media (max-width: 991.98px){

    /* Topbar vira um flex “quebrável” */
    .header--topbar .container{
      display: flex !important;
      flex-wrap: wrap !important;
      align-items: center !important;
      justify-content: space-between !important;
      gap: 10px !important;
    }
  
    /* BRAND (logo) à esquerda */
    .header--topbar .header--date.header--brand{
      order: 1;
      flex: 0 0 auto !important;
      justify-content: flex-start !important;
      text-align: left !important;
    }
  
    /* Logo MENOR no mobile (hoje está max-height: 100px) */
    .header--topbar .header--brand img{
      max-height: 44px !important;
      width: auto !important;
      height: auto !important;
    }
  
    /* Se o slogan estiver atrapalhando a mesma linha, esconda no mobile */
    .header--topbar .header--brand p{
      display: none !important;
    }
  
    /* BUSCA no meio (cresce e ocupa o espaço restante) */
    .header--topbar .header--search-bar{
      order: 2;
      flex: 1 1 auto !important;
      max-width: none !important;
      width: auto !important;
      min-width: 0 !important;
      padding: 0 !important;
    }
  
    /* Ajuste do input pra não “estourar” */
    .header--topbar .header--search-bar .form-control{
      height: 40px !important;
      padding: 0 44px 0 12px !important; /* ícone à direita */
    }
  
    /* Botão da lupa centralizado */
    .header--topbar .header--search-bar .btn-link{
      top: 50% !important;
      transform: translateY(-50%) !important;
      right: 10px !important;
      padding: 0 !important;
      width: 40px !important;
      height: 40px !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
    }
  
    /* SOCIAL embaixo (linha inteira) */
    .header--topbar .header--social{
      order: 3;
      flex: 0 0 100% !important;
      margin-left: 0 !important;
      text-align: center !important;
    }
  
    .header--topbar .header--social > span{
      display: block !important;
      margin: 0 0 6px !important;
    }
  
    .header--topbar .header--social > .nav{
      margin: 0 !important;
    }
  
    /* =========================
       MENU TRACEJADO (hamburger)
       ========================= */
  
    /* Opção A: só esconde o botão */
    .header--navbar .navbar-toggle{
      display: none !important;
    }
  
    /* Opção B: se você NÃO usa esse menu mesmo, esconda a barra toda */
    /* .header--navbar{ display:none !important; } */
  }
/* ===== MOBILE: garantir que redes sociais apareçam e fiquem visíveis ===== */
@media (max-width: 991.98px){

    /* força o bloco a aparecer mesmo que o tema esconda */
    .header--topbar .header--social{
      display: block !important;
      visibility: visible !important;
      opacity: 1 !important;
    }
  
    /* deixa o "Nos siga" e os ícones centralizados embaixo */
    .header--topbar .header--social > span{
      display: block !important;
      margin: 6px 0 6px !important;
      text-align: center !important;
    }
  
    .header--topbar .header--social > .nav{
      display: flex !important;
      justify-content: center !important;
      flex-wrap: wrap !important;
      gap: 8px !important;
      margin: 0 !important;
    }
  
    .header--topbar .header--social > .nav > li{
      float: none !important;
      display: inline-block !important;
    }
  
    /* COR VISÍVEL (antes era branco no fundo claro) */
    .header--topbar .header--social > .nav > li > a{
      color: #fff !important;
      border-color: #fff !important;
      background: transparent !important;
    }
  
    .header--topbar .header--social > .nav > li > a i{
      color: inherit !important;
    }
  }
    