/*
Theme Name: Travis Theme
Theme URI: 
Author: Travis Web Developer
Author URI: 
Description: Customized theme for Sue.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 1.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: travistheme
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

*{padding:0!important;margin:0!important;}
:root {
  --color-default-text: #505050;
  --color-primary: #8FAF9D;
  --color-secondary: #F2EDE4;
  --color-accent: #C77B5C;

  --color-background: #FAF8F3;
  --color-surface: #FFFFFF;

  --color-text-primary: #2F3A34;
  --color-text-muted: #6E7F75;

  --color-border: #E4E1D8;
  --color-hover: #7A9C8A;
  --color-button-text: #FFFFFF;
}
body {font-family: "Lato", sans-serif;color:var(--color-default-text);}
h1, h2, h3 {font-family: "Cormorant Garamond", serif;}
a{text-decoration:none;}
img{display:block;max-width:100%;height:auot;margin:auto;}
.logobar{display:block;width:100%;height:100%;text-align:center;margin:30px 0 30px 0!important;box-sizing: border-box;}
.ttflex{display:flex;width: 100%;align-items: center;justify-content: center;box-sizing: border-box;}
.ttflexrev{display:flex;width: 100%;align-items: center;justify-content: center;box-sizing: border-box;align-items: stretch}
.ttflex20{flex: 0 0 20%;}
.ttflex25{flex: 0 0 25%;}
.ttflex33{flex: 0 0 33.3333333%;}
.ttflex50{flex: 0 0 50%;}
.ttflex60{flex: 0 0 60%;}
.logobarbutton {
  padding: 10px 30px!important;
  border: 1px solid var(--color-text-primary);
  background-color: transparent;
  color: var(--color-text-primary);
  cursor: pointer;
  border-radius:10px;
  box-sizing: border-box;

  transition: 
    background-color 0.4s ease,
    color 0.4s ease,
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.logobarbutton:hover {
  background-color: var(--color-primary);
  color: var(--color-button-text);
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
}
.pributton {
    display:inline-block;
    padding: 10px 30px!important;
    cursor: pointer;
    border-radius:10px;
    box-sizing: border-box;
    background:var(--color-primary);
    margin:20px 0!important;
    
}
.heroslider{position:relative;display:block;width:100%;height:auto}
.slidercon {
    position: relative;
    width: 100%;
    height: 500px;
    overflow: hidden;
}

.sliderconslides {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.sliderconslides.active {
    opacity: 1;
}

.sliderdots {
    position: absolute;
    bottom: 15px;
    width: 100%;
    text-align: center;
}

.sliderdots .dot {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 5px;
    background-color: rgba(255,255,255,0.5);
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s;
}

.sliderdots .dot.active {
    background-color: var(--color-primary);
}

.sliderplaypause {
    position: absolute;
    top: 15px;
    right: 15px;
    background: rgba(0,0,0,0.4);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    cursor: pointer;
    font-size: 18px;
}

.slidertxtbg{
    position:absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--color-secondary);
    opacity:0.6;
}
.slidertxt {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;  /* horizontal center */
    align-items: center;      /* vertical center */
    text-align: center;       /* for multiline text */
    pointer-events: none;     /* optional, lets clicks pass through */
}
.slidertxt h1{
    color:var(--color-primary);
    font-weight:900;
    background:#fff;
    padding:30px;
}
.biocon{
    position:relative;
    display:block;
    width:100%;
    height:auto;
    padding:100px 200px!important;
}
.phicon {
    position: relative;
    display: block;
    width: 100%;
    padding: 100px 200px !important;
    background: var(--color-primary);
    overflow: visible; /* allow shapes to bleed outside */
}
/* Bottom curve bleeding into the section below */
.phicon::after {
    content: "";
    position: absolute;
    bottom: -50px; /* pull it down to bleed */
    left: 0;
    width: 100%;
    height: 50px;
    background: var(--color-primary);
    clip-path: polygon(0 0, 100% 50%, 100% 0, 0 0);
    z-index: -1;
}
.phicontxt{
    display:block;
    width: 100%;
    height:auto;
    text-align:center;
}
.bioimg{
    display:block;
    width:100%;
    height:700px;
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
}
.biotxt p, .phicontxt p{margin-bottom:30px!important;}
.sercon{
    display:block;
    width:100%;
    height:auto;
    padding:100px 20px!important;
}
.serconite{
    display:block;
    width:100%;
    height:auto;
    padding:20px!important;
    box-sizing:border-box;
}
.serconiteinn{
    display:block;
    width:100%;
    height:auto;
    background:var(--color-secondary);
    border-radius:10px;
    padding:10px!important;
}
.seconiteimg, .seconitetxt{
    display:block;
    width:100%;
    height:auto;
}
.footcon{
    display:block;
    width:100%;
    height:auto;
    padding:20px 20px!important;
    background:var(--color-primary);
}
.footitmrgt{
    text-align:right;
}
.footitmctr{
    text-align:center;
}
#bio-con-con{
    position: relative;
    display:block;
}
#bio-txt{
    position: absolute;
    top: 0;
    left: 0;
}



@media (max-width: 480px) {
    .ttflex{flex-direction:column;}
    .ttflexrev{flex-direction:column-reverse;}
    .ttflex20, .ttflex60, .ttflex25{flex: 0 0 100%;padding:10px!important;box-sizing: border-box;}
    .ttflex33{flex: 0 0 100%;}
    .ttflex50{flex: 0 0 100%;}
    .ttflex60 h1{font-size:1.5em;}
    .biocon{padding:0!important;}
    .phicon{padding:0 15px!important;}
    .sercon{padding:0 15px!important;}
}
@media (min-width: 481px) and (max-width: 768px) {
}
@media (min-width: 769px) and (max-width: 1024px) {
}
@media (min-width: 1025px) and (max-width: 1366px) {
}