/*!
Theme Name: thermaikos
Theme URI: http://underscores.me/
Author: thessgraphics.gr
Author URI: http://thessgraphics.gr
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: thermaikos
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/


:root {
    --gold:#e0be0a;
    --nightlife:#20b2aa;
    --stay:#4A90E2;
    --sand:#dda267; /*#E8BF96*/
}

#smooth-content {
  will-change: transform !important;
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* Native scroll-behavior:smooth conflicts with GSAP ScrollSmoother — disable it.
   master-travel-guider.css sets it on html, so we override to `auto`. */
html { scroll-behavior: auto !important; }

.cf_parallax_image img {
  will-change: transform;
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* --- NEW BUSINESS CARD ARCHITECTURE --- */

/* The main wrapper */
.business-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 20px 0;
}

.business-card {
    position: relative;
    display: flex;
    align-items: stretch; /* Ensures buttons and content have same height */
    background: #ffffff;
    border-radius: 12px;
    border: 1px solid #eef2f6;
    margin: 0 !important; /* Overriding your old margin: 10px 25px */
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    overflow: hidden;
}

/* --- FEATURED TIER (â‚¬249/yr) --- */
.business-card.is-featured {
    border: 1px solid rgba(224, 190, 10, 0.2);
    padding: 0;
}

.business-card.is-free .business-type {
    background: #bcbeba !important;
}


/* Logo for Featured */
.business-card .b_logo {
    display: flex;
    align-items: center;
    padding: 0;
}

.business-card .b_logo img {
    width: 95px;
    height: 95px;
    object-fit: cover;
    border-radius: 10px;
    border: 2px solid #fff;
}

/* --- FREE TIER (The Minimalist) --- */
.business-card.is-free {
    background: #fafafa;
    border: 1px solid #eef2f6;
    /* margin-left: 20px !important; */ /* Subtle indent to show priority diff */
}

/* We hide the logo container entirely for free tier */
.business-card.is-free .business-card-header {
    display: none;
}

.business-card.is-free .business-card-body {
    padding: 8px 16px 6px;
}

/* --- INNER CONTENT --- */
.business-card-body {
    /* flex: 1; */
    /* display: flex; */
    /* flex-direction: column; */
    justify-content: center;
    /* padding: 10px 15px; */
}

.business-name {
    margin: 0 !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
}

.business-name a {
    color: var(--blue-1);
    text-decoration: none;
}

/* Business Type Labels - Using your PHP type classes */
.business-type {
    display: inline-block;
    padding: 2px 10px;
    font-size: 11px !important;
    font-weight: 700;
    border-radius: 4px;
    text-transform: uppercase;
    margin-bottom: 5px !important;
}

.business-area {
    font-size: 13px;
    color: #888;
    margin: 0 !important;
}

/* --- FOOTER BUTTONS --- */

.business-card-footer a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 40px;
    padding: 0 15px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.2s;
}

/* Navigate Button */

.business-card-footer a:hover {
    background: var(--gold);
    color: #fff;
    border-color: var(--gold) !important;
}

/* --- MOBILE OPTIMIZATION --- */
@media (max-width: 768px) {
    .business-card.is-free { margin-left: 0 !important; }

    .business-card .b_logo {
        justify-content: center;
        padding-bottom: 15px;
    }

    .business-card-body {
        text-align: center;
        padding: 0 0 15px 0;
    }

    .business-card-footer {
        border-left: none;
        border-top: 1px solid #eee;
        padding: 15px 0 0 0;
        justify-content: center;
        background: transparent;
    }

    .business-card-footer a span {
        display: inline; /* Keep text on mobile for clarity */
    }
}
.bg_sand {
    background:var(--sand);
}

.text_gold {color:var(--gold);}
.text_nightlife {color:var(--nightlife);}
.text_stay {color:var(--stay);}

.max700 {max-width:700px}
.max800 {max-width:800px}
.max850 {max-width:850px}
.max900 {max-width:900px}
.mauto {margin:auto}

.pt-10 {padding-top: 10px;}

.p-tb-20 {padding-top: 20px;padding-bottom: 20px;}

.pr-10 {padding-right: 10px;}
.pr-20 {padding-right: 20px;}
.pr-30 {padding-right: 30px;}

.four_per_row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap:50px 25px;
}

.fav_ribbon {
  position: absolute !important;
  top: 10px;
  left: 10px;
  background-color: var(--gold);
  color: white !important;
  font-size: 14px;
  font-weight: bold;
  padding: 5px 10px;
  border-radius: 3px;
  z-index: 10;
}


.fav_ribbon.nightlife{background-color:var(--nightlife);}

.plane-ltr {
    width:600px;
}

.sightseeing .business_logo {
    max-width:205px;
    padding-right:15px;
}

.search-results .fav_ribbon {
  background-color: var(--green-12);
      top: 10px;
    left: -10px;
}
.search-results .ribbon-village {
  background-color: var(--blue-1);
}
.search-results .ribbon-local-exp {
  background-color: var(--gold);
}

.text-light {
    color:#fff;
}

.opacity50 {opacity:0.5}

body .simple_font,
body .simple_font h2,
body .categories h3 {
    font-family: var(--font_primary);
}

body.single article .the_content a {
    color:var(--blue-1);
    text-decoration:underline;
}
body.single article .the_content p { margin:10px auto 15px auto; }
body.single article .the_content h2 { margin:45px auto 10px auto; font-family:"Google Sans",sans-serif}
body.single article .the_content h3 { margin:45px auto 10px auto; font-family:"Google Sans",sans-serif}
body.single article .the_content h4 { margin:45px auto 10px auto; font-family:"Google Sans",sans-serif}
body.single article .the_content ul{margin-bottom:25px}
body.single article .the_content li {
    margin-bottom:7px;
    list-style:inside;
}
body.single article .the_content ol li {list-style:auto;}
body.single article li li {list-style:inside !important;}

body.single article .the_content ol li {margin-top:20px;margin-bottom:20px;}

body.single article .the_content h1,
body.single article .the_content h2,
body.single article .the_content h3,
body.single article .the_content h4,
body.single article .the_content h5,
body.single article .the_content h6,
body.single article .the_content p,
body.single article .the_content li,
body.single article .the_content ul,
body.single article .the_content table {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
/*    color:var(--black-2);*/
}

body.single article .the_content li{display:block}


.the_content p,
.the_content li {
    font-size:20px;
}

.the_content em {font-size:14px;}

body.single article .the_content div.the_content_img {
    margin-left: auto;
    margin-right: auto;
    text-align:center;
    padding:10px 0 30px 0;
}
body.single article .the_content img {
    max-width: 700px;
    width:100%;
}


/*Singles background white*/
/*body.single.light .body-tg {background:#fff;}
body.single.light .body-tg .the_content h1,
body.single.light .body-tg .the_content h2,
body.single.light .body-tg .the_content h3,
body.single.light .body-tg .the_content h4,
body.single.light .body-tg .the_content h5,
body.single.light .body-tg .the_content h6 {
    color:var(--black-2);
    font-weight:700;
}*/




/*
body.single main {background:#fff;}

.single-local-experience article {background:#fff}*/

.text-transform-none {
    text-transform:none;
}

.bg_blue {
    background-color: var(--blue-1);
}
.bg_light_blue {
	background-color: var(--blue-2);
}

.bg_nightlife {
    background:var(--nightlife);
}

.bg_gold {
    background:var(--gold);
}

.bg_stay {
    background:var(--stay);
}

.tg-blog__area-title,
.tg-blog__area-title a {
	text-transform:none;
	font-family: var(--font_primary);	
}
.tg-blog__area-title a span{
	text-transform:none;
	font-weight:700;	
}

.light p {
	    color: var(--gray);
}

.text-black {color:var(--black-2)}
.text-gray {color:var(--black-12)}



.tg-view__area .video__full video {
    height:initial !important;
}

/* Beach video section — natural height, no 100vh */
.home_video_section.tg-view__area {
    position: relative;
    padding: 100px 0;
    display: block;
}
@media (min-width: 1000px) {
    .home_video_section.tg-view__area { padding: 100px 0; }
}
.home_video_section.tg-view__area .container {
    position: relative;
    z-index: 2;
}
.home_video_section.tg-view__area .tg-view__area-content-wrap {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    max-width: 100%;
    width: 100%;
}
.home_video_section.tg-view__area .tg-view__area-wrap {
    flex-wrap: wrap;
    gap: 30px;
}
.home_video_section.tg-view__area .cf_text {
    max-width: 600px;
}
.home_video_section.tg-view__area .video__full {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}
.home_video_section.tg-view__area .tg-view__area-view-image,
.home_video_section.tg-view__area .video__full {
    height: 100%;
}
.home_video_section.tg-view__area .video__full video {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}


.tg-blog__area-item {position:relative}

.very-big-btn.tg-blog__area-btn-wrap.big-btn {
    flex-basis:390px;   
}

.villages_ad h2 {
    font-size:24px;
}

.villages_ad .tg-blog__area-content {
    padding:15px;
}

.village_meta_tags {
    display:flex;
    justify-content:center;
    color:var(--black-12);
}

.related_villages .tg-blog__area-content {
    padding-left:0;
    padding-top: 10px;    
}

.related_villages .tg-blog__area-title {
    font-size:22px;
}

.pill_cat {
    background-color: var(--gold);
    font-size: 50px;
    display: inline;
    padding: 7px 15px 5px 15px;
    border-radius: 7px;
    color: var(--blue-1);
}

.wine_lovers{
    position:relative;
}

.wine_lovers:after {
    content:'';
    background:url(../thermaikos/assets/imgs/thermaikos/cheers.svg) no-repeat;
    right: -87px;
    top: -45px;
    width:75px;
    height:75px;
    position:absolute;
}

.tg-guide__area-item {
    padding-top:40px !important
}

.transparent_btn {
    padding: 15px;
    border-radius:100px;
    border: 1.5px solid var(--white);
    font-size: 14px;
    font-weight: 500;
    color: var(--white) !important;    
}


.stay-about__sec-title-wrapper{margin-bottom: 40px;}
.stay-about__area .cf_image {position:relative;margin-top: 80px;}
.stay-about__curved-line {
    position: absolute;
    inset-inline-start: 52%;
    top: -82px;
    right:80px;
    z-index: 2;
}

.stay-about__service-list {
    display: flex;
    justify-content: center;
    margin-bottom: 95px;
}
.stay-about__btn {
    margin-top: 35px;
    margin-bottom: 50px;
}
.stay-counter__box li:not(:last-child) {
    padding-bottom: 15px;
    border-bottom: 1px solid #ffffff6e;
    margin-bottom: 25px;
}

.stay-counter__title {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.16;
    margin-bottom: 35px;
    margin-top: 50px;
}

.stay-about__area .wc-btn-default {
    padding: 20px 20px;
    margin-top:40px;
}

.highlighted_stay {
    background-color: var(--stay);
    display: inline-block;
    margin:25px 0 15px;
    padding:10px 15px 10px 15px;
    border-radius: 7px;
}

.tg-blog__area-items article ul.icon-thess span {margin-right:7px;font-size:26px;}
.tg-blog__area-items article ul {gap:0;}
.tg-blog__area-items article ul li {margin-right:20px;}
.tg-blog__area-items article ul li:nth-child(3),
.tg-blog__area-items article ul li:after{display:none;}


/*Local experiences*/
.act-local-post .tg-blog__area-content ul li {
    color:var(--white-3);
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.act-local-post .icon-thess span {
    font-size:22px;
    margin-right:4px
}

.act-local-post .tg-blog__area-content {
    padding-left:18px;
    padding-right: 18px;
    padding-top: 22px;
}

.local_rec {
    background-color: var(--gold);
    display: inline;
    padding: 15px 15px 5px 15px;
    border-radius: 7px;
    color: #fff;
}

.desc_local_nightlife,
.desc_local_food {   
    border-left: 8px solid var(--gold);
    padding: 0 0 0 9px;
    margin-bottom: 25px;
    max-width: 800px;
}

.desc_local_nightlife {   
    border-left: 8px solid var(--nightlife);
}

.practical-details {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

th,
td {
  padding: 10px;
  text-align: left;
  border: 1px solid #7ca1b1;
  color:var(--black-12);
}

tr td:first-child,th {
  background-color: #bfbfbf;
  font-weight: bold;
  color: #fff;
}

.the_content a,table a:hover {
  text-decoration: underline;
}
.practical-details .info-note {
  font-size: 0.9em;
  color: #555;
  margin-top: 10px;
  font-style: italic;
}

body.single ul li,
body.archive ul li {color:var(--black-12) !important}
.single .act-local-post span {font-size:28px;}

.single .act-local-post li {
    display: flex;
    align-items: center;    
}

/*body.archive .tg-blog__area-content {
    padding-left:0;
    padding-right: 0;
}
body.archive .tg-blog__area-content h2 {
    margin-bottom: 10px;
}
*/


.main-archive header {display:flex;flex-flow:column}
.main-archive header h1{order:1}


/*Blog posts*/

.archive-description p {
    font-size:24px;
}

.light.single .body-tg p,
.light.single .body-tg li {
    color:var(--black-2);
}

.related-posts .tg-inb__area-item h2 {
    font-size:22px;
}

.related-posts .tg-blog__area-content {
    padding-left:0;
    padding-right: 0;
    padding-top: 10px;
}
.related-posts .tg-blog__area-content ul{
    margin-bottom:5px;
}

/*.tg-inb__area-item:hover h2 {
    color:var(--primary)
}*/

.blog__details-info ul li:last-child .th_date {
    cursor: inherit;
}
.blog__details-info .th_date:hover {
    color: var(--primary);
}
.blog__details-info .th_date {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    color: var(--black-2);
    display: block;
    transition: all 0.3s;
}
.blog-feed img {
    height:560px;
}

.navigation.posts-navigation {
    padding-top: 60px;
}

.th_nav_btn {
    border: 1.5px solid var(--black-2);
}

.light .tg-blog__area-meta li a {
    color:var(--blue-1);
}

.light .tg-blog__area-meta li a:hover {
    color:var(--blue-1);
}

.light .body-tg .tg-place__area-content p {
    color:#fff;
}

.container.related-posts .tg-inplace__area-items,
.container.related-posts .tg-blog__area-items {
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

body.search .tg-blog__area-content {
    padding: 15px 0px;
    margin:0;
}

body.search .img_anim_reveal img,
.container.related-posts .img_anim_reveal img {max-height:350px}

.navigation.posts-navigation .nav-links{
    display: flex;
    justify-content: space-around;    
}

input::placeholder{background:transparent;color:var(--gray-6);}
input::-webkit-input-placeholder{background:transparent;color:var(--gray-6);}
input::-moz-placeholder{background:transparent;color:var(--gray-6);}
input:-ms-input-placeholder{background:transparent;color:var(--gray-6);}
input:-moz-placeholder{background:transparent;color:var(--gray-6);}

form[role=search] label {
    min-width:100%;
}
form[role=search] input[type=search] {
    max-width:600px;
}
.search-submit{
    border-radius: 30px;
    padding: 14px 40px;
    border: none;
    color:#fff;
    box-shadow:none;
    text-transform: uppercase;
    margin-top:15px;
    background-color:var(--blue-1);
}

.single .blog__details-top img {
    max-width: 100%;
    object-position: inherit;
    max-height: 670px;
    object-fit: cover;
    width:100%;
}

.fontsizeinitial {font-size:initial}

.bg_blue.tg-counter__area h2,.bg_blue.tg-counter__area h3 {
    color:#fff;
}
.bg_light_blue.tg-counter__area h2,.bg_light_blue.tg-counter__area h3 {
    color:var(--blue-1);
}

.wave_separator {
    display:flex;
    position:relative;
    top:-3px;
}

.wave_separator.top {top:3px}

.single .cf_parallax_image img {
    object-position: center center;
    object-fit: cover;
    max-height: 700px;    
    width:100%;
}

.tg-inpd__area-content.the_content {padding-left:25px;padding-right:25px}

.tg-footer__area-thumb h2{mix-blend-mode: color-burn;}


.act_like_a_local {
    display: inline-block;
    color: var(--gold);
    padding: 5px 14px;
    margin: 20px 0 15px 0;
    border-radius: 3px;
    font-weight: 700; 
}

.info-search__area-btn svg path{fill:#fff;}

:root[lang="el"] .wc-btn-underline {font-size: 15px;}
[lang="el"] .tg-sec-title {line-height:1.25;}
[lang="el"] .pill_style_local  {padding-bottom:15px;}

:root[lang="en-US"] .the_content h1,
:root[lang="en-US"] .the_content h2,
:root[lang="en-US"] .the_content h3,
:root[lang="en-US"] .the_content h4,
:root[lang="en-US"] .the_content h5,
:root[lang="en-US"] .the_content h6 {
    font-family: 'Noto Serif';
}


img:not(.wave_separator):not(.tg-footer__area-thumb img) {
    filter: contrast(1.1);
}



/*MAP*/
.filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
    margin-bottom: 2em;
    /* background: #f4f4f4; */
    padding: 1em;
    border-radius: 8px;
    margin: 0;
}

.filter-bar label {
    font-weight: bold;
}

.filter-bar select, .filter-bar input {
    padding: 0.5em;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.container.list-with-map {
    display: flex;
    gap: 20px;
    margin-top: 20px;
}

.map-container {
    flex: 0 0 45%;
    height: 600px;
    background: #f0f0f0;
    margin-bottom: 2em;
}

.business_list {
    flex: 0 0 55%;
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0 15px;
    background:#fff;
    border-radius:5px
}

.business-list {
    display: grid;
/*    gap: 1.5em;*/
padding-: 15px;
}

.business-card-header {padding-left:5px}

.business-card {
    border-left: 4px solid #FF9800;
    display: flex;
    align-items: center;    
    border-radius: 8px;
    background: #fff;
    text-align: center;
    margin: 10px 25px;
    border: 1px solid #d6d6d6;
}

.b_logo img  {
    max-width: 100%;
    border-radius: 100px;
    margin-bottom: 0;
    border:2px solid #c9c9c9;
    max-width: 90px;
    padding:0;   
}

.b_logo img  {
    max-width: 100%;
    border-radius: 100px;
    margin-bottom: 0;
    border:2px solid #c9c9c9;
    max-width: 90px;
    padding:0;   
    transition:0.4s ease-in-out;
}
.business-name a:hover {color:var(--gold);}

.business-card-body {
    text-align:left;
    width: 100%;
    padding: 5px 0 10px 15px;
    font-family: "Google Sans", sans-serif !important;
}
.business-card-footer {
    width: 170px;
    flex-flow: column;
    display: flex;
    height: 100%;
}

.business-card-footer a {
    height: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    background: #ebf1fa;
    border-radius: 0 5px 0 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 10px;
    font-size:15px;
}

.business-card-footer a:nth-of-type(2) {
    border-top: 1px solid #d6d6d6;
    border-radius: 0 0 5px 0
}

.business-card-footer a img {width:16px}


.business-card-footer a span{padding-left:4px;    font-size: 14px;}


.business-card-footer a:hover {
    background:var(--blue-1);
    color:#fff
}
.business-card-footer a:hover img {
    filter: invert(1);
}



.business-card h3 {
    margin:0;
    margin-bottom:0.2em;
    font-size:18px
}

.business-card p {
    font-size: 14px;
    color: #666;
}

.business-card .icons {
    margin-top: 0.5em;
    display: flex;
    justify-content: center;
    gap: 0.5em;
}


.type-restaurant {border-left:4px solid #E63946;}
.type-fast_food {border-left:4px solid #FF6F00;}
.type-cocktail_bar {border-left:4px solid #9C27B0;}
.type-beer_bar {border-left:4px solid #F4A261;}
.type-accommodation {border-left:4px solid var(--stay);}
.type-cafe {border-left:4px solid #6D4C41;}
.type-bakery {border-left:4px solid #FFEB3B;}
.type-shop {border-left:4px solid #2196F3;}
.type-fitness_welness {border-left:4px solid #4CAF50;}
.type-transport_taxi {border-left:4px solid #FFC107;}
.type-local_market {border-left:4px solid #8BC34A;}
.type-pet_services {border-left:4px solid #214474;}

.business-type {display:inline-block;padding:2px 8px;color:#fff !important;border-radius:100px;font-size:12px !important;}
 .type-restaurant .business-type{background:#E63946;}
.type-fast_food .business-type{background:#FF6F00;}
.type-cocktail_bar .business-type{background:#9C27B0;}
.type-accommodation .business-type{background:var(--stay);}
.type-beer_bar .business-type{background:#F4A261;}
.type-cafe .business-type{background:#6D4C41;}
.type-bakery .business-type{background:#FFEB3B;}
.type-shop .business-type{background:#2196F3;}
.type-fitness_welness .business-type{background:#4CAF50;}
.type-transport_taxi .business-type{background:#FFC107;}
.type-local_market .business-type{background:#8BC34A;} 
.type-pet_services .business-type{background:#214474;} 
.business-card .icons{display:flex;text-align:left;justify-content: flex-start;}
.business-card .icons span {
    font-size:28px;
    padding:9px;
    border-radius:100px;
    color:var(--blue-1);
    background:var(--blue-2);
}
.th-nothing {display:none}



.home_video_section a.wc-btn-default {
    border-color: rgba(255,255,255,0.6);
}



.header__inner {
    width:100%;
    min-width:100%;
    gap:0;
}
.header__nav,.header__nav nav {
    width:100%;
    max-width:950px
}
.main-menu>ul {
    display: flex;
    justify-content: space-around;
}
.main-menu li a {
    padding-left:10px;
    padding-right:10px;
}




.page-template-default  #primary header h1 {
    text-align:center;
    padding-top:100px;
}

.page-template-default  #primary .entry-content {
    margin:auto;
    max-width:1000px;
    padding:20px;
}

.page-template-default  #primary .entry-content * {
    font-family: var(--font_primary);
}

.wpforms-container,
.wpforms-field-container {
    max-width:700px;
    margin:auto;
}
.wpforms-container button,
.wpforms-container button:focus,
.wpforms-container button:hover{
    background:var(--blue-1) !important;
    border-radius:100px !important;
    min-width:160px;
}


.form_ctas,.form_ctas:hover {
    background:var(--blue-1) !important;
    color:#fff;
    padding:7px 10px !important;
    border-radius:100px !important;
}

#close_offcanvas {
    position: absolute;
    top: 30px;
    right: 30px;    
}

.offcanvas-3__inner {
    grid-template-columns: initial
}
.offcanvas-3__menu {
    overflow-y: initial;
}

.tg-textslider__area {background:var(--blue-1);}
.text__slider .title {color:var(--blue-2);}


footer .tg-intro__area-social svg path {fill:var(--blue-1)}



    .cta_b * {font-family:"Google Sans",sans-serif;}
    .cta_b {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 20px;
        border-radius: 6px;
        box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
        max-width: 1200px;
        margin: 10px auto 0 auto ;
    }

    .cta_b aside:first-child {
        flex: 0 0 80%;
        text-align: left;
    }

    .cta_b aside:last-child {
        flex: 0 0 20%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    .cta_b h4 {
        margin-bottom: 10px;
    }


    .cta_b a {
        background-color: var(--blue-1);
        color: #fff;
        padding: 10px 20px;
        border-radius: 3px;
        font-size: 1rem;
        transition: background-color 0.3s ease-in-out;
    }

    .cta_b a:hover,
    .cta_b .btn-hover-divide::after {
        background-color: var(--blue-1);
    }

    @media screen and (max-width: 768px) {
        .cta_b {
            flex-direction: column;
            text-align: center;
            width:95%;
            margin-top:10px
        }

        .cta_b aside {
            flex: 0 0 100%;
            margin-bottom: 15px;
            text-align:center !important;
        }

        .cta_b aside:last-child {
            margin-bottom: 0;
        }

        .cta_b h4 {
            font-size: 1.2rem;
        }

        .cta_b p {
            font-size: 0.9rem;
        }

        .cta_b a {
            font-size: 0.9rem;
            padding: 8px 16px;
        }
    }


    .cta_b.single-feed {
        margin-top:35px;
        padding:15px 14px 20px 14px;
        max-width:700px;
        display:block;
    }
    .cta_b.single-feed a {
        color:#fff;
        text-decoration:none !important;
        background:#dca975;
    }
    .cta_b.single-feed a:hover,
    .cta_b.single-feed .btn-hover-divide::after {
        background:var(--gold);
    }    
    .cta_b.single-feed * {
        color:#fff !important;
    }
    .cta_b.single-feed p {
        font-size:18px;
        line-height:24px;
        margin-top: 0!important;
    }    
    .cta_b.single-feed h4 {
        margin-top:0 !important;
    }    





/*MEDIA Queries*/

@media (min-width:1200px) {
.open-offcanvas {display:none}
}


@media (min-width:992px) {
body.single article .the_content img {
    max-height: 600px;
    object-fit: cover;
    padding-top:10px;
    padding-bottom: 10px;    
    margin: auto;
    display: flex;
}
}

@media (max-width:1400px) {
body.archive .tg-blog__area-sec-wrap h1{
    padding-top:100px;
}
}



@media (max-width:1200px) {

.page-template-businesses  .tg-sec-title {padding-top:40px;}
.map-container,
.business_list {flex:0 0 100%}

.container.list-with-map {flex-flow:column}

.map-container {
    min-height:500px;
}

.four_per_row {
    grid-template-columns: repeat(2, 1fr);
}

.tg-place__area-item {max-height: initial;}

.tg-place__area-content {
    bottom: 55px;
}

.single .tg-sec-title-wrapper>h1, 
main .container.pt-140.pb-140 .page-header {
    padding-top:80px;
}

section .tg-blog__area-content li:last-child{display:none;}

.act-local-post .tg-blog__area-content {
    padding-left:0;
    padding-right:0;
}


.tg-blog__area-items .tg-blog__area-meta li:nth-child(2)::after {
    display: none; 
}



}

@media (max-width:991px) {
.single .blog__details-top img {
    max-height:max-content;
}

.container.related-posts .tg-blog__area-items {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.tg-inab__about .img_anim_reveal img {max-height: 100%;width: 100%;}
.tg-inab__about .tg-inab__about-thumb-2 {max-width:100%;width: 100%;}


}

.tg-blog__area-items.act-local-3col {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}
@media (max-width: 991px) {
    .tg-blog__area-items.act-local-3col { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .tg-blog__area-items.act-local-3col { grid-template-columns: 1fr; }
}

@media (max-width:768px){

footer .tg-intro__area-social svg path {fill:var(--white)}
.business-card-footer a span{display:none;}
    .business-card-footer {width:80px;}
    .business-card-footer a {width:100%;margin:0;padding:0;display: flex;justify-content: center;}
.business-card {margin:10px 15px;}
.business-card-body {padding:15px 15px;}
.filter-bar {justify-content:center}

.container,.container-sm {max-width:100%}
.home section .line {display:none;}
.home .very-big-btn.tg-blog__area-btn-wrap.big-btn {text-align:center;}
.tg-header__navicon{margin-right:0}
.stay-about__curved-line {inset-inline-start: 0%;}
.pill_cat.wine_lovers {font-size:30px;}
.cta_block {padding-top:0}
.tg-header__search {display:none}    
.hero_th .tg-intro__area-name-wrap{display:block}
.hero_th .tg-intro__area-title-wrap .shape-1{top:-20px}
.hero_th .tg-intro__area-circle-wrap{margin:0}
.hero_th .btn-wrapper,.hero_th .tg-intro__area-latest-place{margin-top:20px}
.hero_th .tg-intro__area-latest-place{margin-left:10px}
.hero_th .tg-intro__area-arrow-text-wrap,.hero_th .tg-intro__area-arrow-wrap,.hero_th .tg-intro__area-disc-wrap{width:100%;max-width:100%;margin:0}
.home_video_section.tg-view__area .video__full video{filter:brightness(.65)}
.home_video_section.tg-view__area-wrap{gap:20px}
.local-flavors .tg-blog__area-items,.local-nightlife .tg-blog__area-items{margin-bottom:0}
.fav_ribbon.wellness { background-color: #4caf78; }
.home .tg-blog__area-line-wrap.pt-60{padding-top:0}
.home .tg-blog__area-line-wrap.pt-60{padding-top:0}
.local-flavors .cf_text,.local-nightlife .cf_text{padding-top:7px}
.four_per_row{display:flex;flex-flow:column;align-items:center}
.tg-blog__area-content{padding:15px}
.tg-blog__area-meta{margin-bottom:15px}
.tg-place__area-item{max-width:100%}
.tg-blog__area-item img{max-height:310px}
main .container.pt-140.pb-140 .page-header{padding-top:60px}
.tg-footer__area-shape-1{position:relative}
.tg-footer__area-thumb img{display:initial;position:absolute}
.tg-footer__area-content-wrap h2{opacity:0 !important}
.tg-footer__area-shape-1{opacity:0}
.tg-footer__area-thumb img{bottom:0;filter:brightness(.7)}
.copyright-text p{color:#fff!important}
.tg-sec-title-wrapper  h2{font-size:28px}
.tg-intro__area-title{display:flex;}
.tg-intro__area-title-wrap .shape-1{top:0}


.tg-footer__area-footer-bottom {
    flex-flow:column
}


.tg-sec-title-2 {font-size:50px}

.single .cf_parallax_image img {
    max-height: fit-content;
    object-fit: contain;
}
.container.related-posts .tg-inplace__area-items,
.container.related-posts .tg-blog__area-items {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
}
.container.related-posts .tg-blog__area-items {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
}

body.archive .tg-blog__area-sec-wrap h1 {padding-top:60px;}

.tg-textslider__area.pt-60.pb-40 {
    padding-top :30px;
    padding-bottom: 25px;
}

}

@media (max-width:450px){
    .tg-intro__area-title {font-size:40px}
    .tg-header__navicon{gap:15px}
    .tg-sec-title-2 {font-size:40px}
    .tg-sec-title-wrapper  h2{font-size:24px}
    .wine_lovers:after {top:-87px;left:0;}
    .home_video_section .tg-view__area-content-wrap {padding-right:20px;}

}


.single-post .tg-blog__area-meta.icon-thess span {margin-right:4px;font-size: 30px;}
.single-post .tg-blog__area-meta.icon-thess li {display:flex;align-items:center}
.footer_contact{text-decoration:underline}




.frm_description p{
    font-size:20px !important;
    color: var(--black-12) !important;
    text-align:center !important;
    margin:auto;
    max-width:800px;
}


.frm_style_formidable-style.with_frm_style .frm_compact .frm_dropzone.dz-clickable .dz-message, .frm_style_formidable-style.with_frm_style input[type=submit], .frm_style_formidable-style.with_frm_style .frm_submit input[type=button], .frm_style_formidable-style.with_frm_style .frm_submit button, .frm_form_submit_style, .frm_style_formidable-style.with_frm_style .frm-edit-page-btn {
    border-radius:100px !important;
    font-size:16px !important;
    font-weight:700 !important;
    min-width:170px;
    padding-top:12px !important;
    padding-bottom:12px !important;
    background:var(--blue-1) !important;
    border:none! important
}

.frm_fields_container {
    max-width:600px;
    margin:Auto;
}

.with_frm_style input[type=text],
.with_frm_style input[type=email],
.with_frm_style input[type=tel]{
    height:45px;
    border-radius:3px !important;
}

.with_frm_style .frm_primary_label {font-weight:700}


.with_frm_style .frm_message, .frm_success_style {
    max-width:780px;
    margin:auto;
}
.form_btns {
    padding:20px 0;
    margin:auto;
    display:flex;
    justify-content:center;
    
}
.form_btns a {
    margin:0 5px;
}
.frm_message h3 {font-size:20px;}




body.single figure {
    margin: auto;
    text-align: center;
}

/* Things to Do + Act Like a Local homepage card content: no side padding */
.act-local-all .tg-blog__area-content,
.tg-blog__area.bg_light_blue .tg-blog__area-content {
    padding-left: 0;
    padding-right: 0;
}

/* FAQ accordion */
.tsg-faq { margin: 60px auto 10px; max-width: 850px; padding: 0 20px; }
.tsg-faq__title { font-size: 26px; margin-bottom: 22px; }
.tsg-faq__list { display: flex; flex-direction: column; gap: 10px; }
.tsg-faq__item { background: #f7f7f5; border: 1px solid #e6e6e0; border-radius: 6px; padding: 14px 18px; }
.tsg-faq__item[open] { background: #fff; }
.tsg-faq__q { cursor: pointer; font-weight: 600; font-size: 16px; line-height: 1.4; list-style: none; }
.tsg-faq__q::-webkit-details-marker { display: none; }
.tsg-faq__q::after { content: '＋'; float: right; transition: transform .2s; color: #888; }
.tsg-faq__item[open] .tsg-faq__q::after { content: '−'; }
.tsg-faq__a { padding-top: 10px; color: #444; line-height: 1.6; font-size: 16px; }

/* 3-per-row grid for tg-inplace (blog-feed / related posts in post.php) */
.tg-inplace__area-items {
    grid-template-columns: repeat(3, 1fr);
}
@media only screen and (max-width: 991px) {
    .tg-inplace__area-items {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media only screen and (max-width: 767px) {
    .tg-inplace__area-items {
        grid-template-columns: 1fr;
    }
}

/* Items inside tg-inplace must fill their column (no 300px cap) */
.tg-inplace__area-items .tg-place__area-item {
    max-width: 100%;
    width: 100%;
}

/* Show img_anim_reveal immediately (no GSAP reveal animation in static build) */
.img_anim_reveal { visibility: visible !important; }

/* Uniform image height for tg-place cards (blog-feed / act-like-a-local related posts)
   The inner .cf_image and <a> are inline/block with no height, so img height:100% collapses.
   Fix: make the thumb a positioned container and stretch inner elements with absolute inset. */
.tg-inplace__area-items .tg-place__area-thumb,
.tg-place__area-item.blog-feed .tg-place__area-thumb {
    position: relative;
    height: 250px;
    overflow: hidden;
}
.tg-inplace__area-items .tg-place__area-thumb .cf_image,
.tg-inplace__area-items .tg-place__area-thumb a,
.tg-place__area-item.blog-feed .tg-place__area-thumb .cf_image,
.tg-place__area-item.blog-feed .tg-place__area-thumb a {
    display: block;
    position: absolute;
    inset: 0;
}
.tg-inplace__area-items .tg-place__area-thumb img,
.tg-place__area-item.blog-feed .tg-place__area-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Archive + homepage tg-blog__area-item card image height fix.
   Master CSS sets .tg-blog__area-content { margin: -115px auto } (overlap design).
   Without GSAP setting explicit img heights, the thumb collapses to ~0.
   Fix: give thumb explicit height and stretch inner elements absolutely. */
.tg-blog__area-items .tg-blog__area-thumb,
.four_per_row .tg-blog__area-thumb {
    position: relative;
    height: 300px;
    overflow: hidden;
}
.tg-blog__area-items .tg-blog__area-thumb .cf_image,
.tg-blog__area-items .tg-blog__area-thumb a,
.four_per_row .tg-blog__area-thumb .cf_image,
.four_per_row .tg-blog__area-thumb a {
    display: block;
    position: absolute;
    inset: 0;
}
.tg-blog__area-items .tg-blog__area-thumb img,
.four_per_row .tg-blog__area-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: none !important;
}

.tg-inb__area-item .tg-blog__area-thumb { height: 380px; }

/* Related post card images in village/attraction singles — taller override */
.container.related-posts .tg-blog__area-thumb {
    position: relative;
    height: 350px;
    overflow: hidden;
}
.container.related-posts .tg-blog__area-thumb .cf_image,
.container.related-posts .tg-blog__area-thumb a {
    display: block;
    position: absolute;
    inset: 0;
}
.container.related-posts .tg-blog__area-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: none !important;
}

/* Content images: centered, responsive */
body.single article .the_content img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 700px;
    width: 100%;
    height: auto;
    border-radius: 4px;
}
