/*

 Theme Name:   Taste Carolina Theme

 Theme URI:    https://generatepress.com

 Description:  Taste Carolina theme 

 Author:       BJ Bowen

 Author URI:   https://visibull.net;

 Template:     generatepress

 Version:      0.1

*/



/*

Name of website

Colors of website
*/
body {
    background-color: var(--base)!important;
}
/* break lines balanced */
p, h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

p.eyebrow-txt {
  font-family:'Open Sans', sans-serif;
  font-weight:500;
  text-transform: uppercase;
  font-size:24px;
  line-height: 1.1;
  margin: 0;
  color:var(--tc-brown);
}



/* ===== Button Styling ==== */
/* One global button style */
.tc-btn,
.wp-block-button__link.tc-btn,
a.gb-text.tc-btn,
a.wp-element-button.tc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: 10px 20px;
  border-radius: 8px;
  border: 1px solid var(--tc-white);
  text-decoration: none;
  cursor: pointer;
  background-color: var(--tc-blue);
  color: var(--base);
  margin-top: 16px;
  font-family: var(--gp-font--poppins);
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 0.02em;
  transition: all 0.5s ease 0s;
  box-shadow: 0px 3px 5px 0px rgba(105, 72, 31, 0.25);
}
/* hover */
.tc-btn:hover,
.wp-block-button__link.tc-btn:hover,
a.gb-text.tc-btn:hover,
a.wp-element-button.tc-btn:hover, a.wp-block-button__link:not(.has-background):hover {
  background: var(--tc-brown);
  color: var(--base);
  box-shadow: 0px 6px 12px 0px rgba(105, 72, 31, 0.15);
  outline: none;
}


/* header styles */

.gb-site-header-0134fe57 {
  position: relative;
  z-index: 4;
}
/* ===== HERO STYLES ===== */

.hero.image-background {
  position: relative;
  isolation: isolate;
}
.hero.image-background img {
  object-position: 0 25%;
}



/* ===== Taste Carolina – Tabs (Shortcode) ===== */

/* Tab bar (single row) */
.tc-tabs__list{
  display:flex;
  flex-wrap:nowrap;
  gap:0;
  padding:0;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  align-items: stretch;
}

/* Tab menu item (single source of truth) */
.tc-tabs__tab{
  flex: 1 1 0;
  min-width: 0;
  position: relative;
  -moz-appearance: none;
  appearance: none;
  background: var(--base);
  background-image: none;
  border: 1px dotted var(--tc-brown);
  border-radius: 10px 10px 0 0;
  padding: 1.5rem;
  cursor: pointer;
  font: inherit;
  color: var(--tc-brown);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}
/* Firefox: make the BUTTON the hover target, not its children */
.tc-tabs__tab > *{
  pointer-events: none;
}

.tc-tabs__tab{
}
.tc-tabs__tab.is-hover:not([aria-selected="true"]), .tc-tabs__tab:not([aria-selected="true"]):hover {
  background: var(--tc-lt-blue);
  color: var(--tc-brown);
  border-color: var(--tc-brown);
}

/* Firefox: remove inner focus padding/border */
.tc-tabs__tab::-moz-focus-inner{
  border: 0;
  padding: 0;
}

/* Active tab */
.tc-tabs__tab[aria-selected="true"]{
  background: var(--tc-brown);
  color: var(--base);
  border-color: var(--tc-brown);
}

/* FIX: H3/Headline into active tab */
.tc-tabs__tab[aria-selected="true"] .tc-tabs__headline{
  color: var(--base) !important;
}

/* Focus styles (don’t disable them; define them) */
.tc-tabs__tab:focus{
  outline: none;
}

.tc-tabs__tab:focus-visible{
  outline: 2px solid var(--tc-brown);
  outline-offset: 2px;
}

/* Image area */
.tc-tabs__img{
  margin: 0 0 .75rem;
  line-height: 0;
}

.tc-tabs__thumb{
  display: block;
  width: 100%;
  height: 234px;
  object-fit: cover;
  border-radius: 0;
}

/* Headline + blurb */
.tc-tabs__headline{
  margin: 16px auto;
  width: 85%;
  font-size:20px;
  font-weight: 600;
  text-wrap:unset!important;
}

.tc-tabs__blurb{
  margin: 0 0 .65rem 0;
  opacity: .85;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 16px;
}

/* Price anchored to bottom */
.tc-tabs__tab .tab-price{
  margin-top: auto;
  padding-top: .65rem;
  font-weight: 600;
  font-size: clamp(1rem, 0.8864rem + 0.4848vw, 1.25rem);
  line-height: 1;
}

/* Right column price + CTA */
.tc-panel__price {
  margin: 1.5rem 0 0;
  font-weight: 500;
  text-align: center;
  font-family: 'Roboto Slab', sans-serif;
  font-size: clamp(1rem, 0.8864rem + 0.4848vw, 1.25rem);
  line-height: 1;
}


/* ===== Panels ===== */

/* Hide inactive panels */
.tc-tabs__panel[hidden]{
  display:none !important;
}

/* Active panel color (two selectors so it never "breaks") */
.tc-tabs__panel.is-active,
.tc-tabs__panel:not([hidden]){
  background: var(--tc-brown);
  color: var(--base);
  border-radius: 0 0 10px 10px;
}

.tc-tabs__panel.is-active :is(h1,h2,h3,h4,h5,h6,p,li,a),
.tc-tabs__panel:not([hidden]) :is(h1,h2,h3,h4,h5,h6,p,li,a){
  color: inherit;
}

/* ===== Panel layout (60/40) ===== */
.tc-panel__grid{
  display:grid;
  grid-template-columns: 5fr 2fr;
  gap:2.5em;
  align-items:start;
  padding:3.5rem 1.5rem 1.5rem;
}
/* Child theme CSS (add to your stylesheet)
   Uses your existing class names where possible, plus a small helper label.
*/

.tc-accordion .tc-acc__panel[hidden] { display: none; }

/* Optional cue text/button in the header */
.tc-accordion .tc-acc__tour-details {
  display: inline-block;
}

/* If you want the “Tour Details” cue to look like a button, style it here. */
.tc-accordion .tc-acc__tour-details {
  /* Example (adjust to match your design system):
  padding: .35rem .6rem;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: .9rem;
  */
}
.tc-accordion .tc-tabs__tab {
  padding-left: 0;
  padding-right: 0;
  border:0!important;
  width:100%;
}
.tc-acc__item .tc-tabs__tab h3.tc-tabs__headline {
  text-wrap: balance!important;
}
.tc-acc__item h6.tc-detail__title {
  font-weight: 600;
}
.tc-accordion .tab-price {
  font-size: 24px;
}
.tc-accordion .tc-btn {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
p.small-p {
  font-size:13px;
}



/* Left column */
.tc-panel__content-headline{
  font-size: clamp(1.625rem, 1.4545rem + 0.7273vw, 2rem);
  margin: 0;
  line-height: 1.5;
}

.tc-panel__headline{
  padding: 1rem 0 0 1rem; 
}

.tc-panel__content-blurb{ margin:0 0 1rem 0; }
.tc-panel__details-title{ 
  margin: 1.5rem 0 0;
  font-size: clamp(1.25rem, 1.0795rem + 0.7273vw, 1.625rem);
  font-weight: 600;
}

/* Includes box */
.tc-includes{
  border: 1px solid rgba(0,0,0,.15);
  border-radius: 10px;
  padding: 1rem;
  margin: 1rem 0 1.25rem 0;
  background: var(--base);
  color: var(--tc-brown);
}

.tc-includes__label{
  font-weight:700;
  margin-bottom:.5rem;
  color: var(--tc-blue);
}

/* Checklist */
.tc-checklist{
  list-style:none;
  margin:0;
  padding:0;
  column-count:2;
  column-gap:2rem;
}

.tc-checklist li{
  break-inside:avoid;
  position:relative;
  padding-left:1.6rem;
  margin:0 0 .5rem 0;
}

.tc-checklist li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
}


/* Detail sections */
.tc-detail{
  padding: 1rem 0;
  border-top: 1px solid var(--base);
}

.tc-detail:first-child{
  border-top: 0;
}

.tc-detail__title {
  margin: 0 0 .5rem 0;
  font-size: 18px;
  font-weight: 600;
  font-style: italic;
}

.tc-detail__body{ margin:0; }

/* Right column card */
.tc-panel__card{
  overflow:hidden;
  text-align: center;
}

.tc-panel__image-wrap{
  position:relative;
  border-radius:12px;
  overflow:hidden;
}

.tc-panel__image{
  display:block;
  width:100%;
  height:auto;
}

@media (max-width: 1024px){

  .gb-element-5b43301e {
    margin-top: -20rem;
    position: relative;
    z-index: 99;
  }


}




@media (max-width: 900px){
  .tc-panel__grid{ grid-template-columns: 1fr; }
}
@media (max-width: 820px){
  .gb-media-35462bf0 {
    width: 150px;
  }
  .gb-element-5b43301e {
    margin-top: -20rem;
  }

}

@media (max-width: 768px){
  .tc-checklist{ column-count:1; }
}



@media (max-width: 440px) {

/* site header */
  .gb-site-header-0134fe57 {
    background-color: transparent;
    z-index: 10;
    border-bottom: opx;
    padding: 0;
  }
/*navigation */
.gb-navigation-5b1fef24 {
  align-items: center;
  background-color: transparent;
  display: flex;
  margin-left: auto;
  margin-right: auto;
  max-width: 100vw;
  width:100vw;
  padding-bottom: 1rem;
  padding-top: 1rem;
}
/* logo */
 .gb-media-35462bf0 {
    margin-top: -100px;
  }
/*homepage hero image */
.gb-element-27b03b39 {
  margin-top: -79px;
  overflow:hidden;
}
/* homepage words on hero */
  .gb-element-a084ed50 {
    margin-top: -150px;
  }

  /* hamburger menu */
   .gb-element-ba58119a {
    z-index: 3;
  }
  .gb-element-080aff39 {
    z-index: 0;
  }
  .gb-navigation-5b1fef24 {
    padding-right: 32px;
    position: fixed;
    width: 100%;
    z-index: 20;
  }
  img.gb-media-0fbcf190 {
    object-position: -350px -35px;
    transform: scale(1.5);
    overflow: hidden;
  }
  .gb-element-1fe9b9ae {
    overflow: hidden;
  }
  .gb-element-1fe9b9ae {
    padding-top: 50px;
    margin-top: -50px;
  }

  .gb-element-c3a8a7c8 {
    padding-top: 36px;
  }
  .section--m.hero {
    padding:0;
    margin-top:-5px;
    margin-bottom: 300px;

  }
  .gb-element-5b43301e {
      margin-top: 0rem;
    }

  /* Mobile: animate the toggle upward as the user scrolls */
  .gb-navigation-5b1fef24 {
    --tc-toggle-shift: 0px; /* JS updates this */
  }

  /* Apply to both the normal toggle + the cloned toggle inside the overlay */
  .gb-navigation-5b1fef24 .gb-menu-toggle-2c3ea446 {
    transform: translateY(calc(-1 * var(--tc-toggle-shift)));
    will-change: transform;
  }

  /* change hamburger menu upon scroll */
  /* After scroll: reverse colors (applies to normal + clone toggle) */
  .gb-navigation-5b1fef24.tc-toggle-scrolled .gb-menu-toggle-2c3ea446 {
    background-color: var(--tc-brown);
    color: var(--base);
  }

  .all-food-tours-template-default .section--m.hero, .private-tour-template-default .section--m.hero, .public-tour-template-default .section--m.hero, .page-id-1776 .section--m.gb-element-6656c51f {
    padding: 0;
    margin-top: -5px;
    margin-bottom: 0px;
  }
  .mobile-bold {
    font-weight: 600;
  }




}
