/*
Theme Name: Tsoka Maria Interior
Theme URI: https://tsokamaria.gr
Description: Tsoka Maria Interior Child Theme
Author: ks
Author URI: https://tsokamaria.gr
Template: Total
Version: 1.0
Text Domain: tsoka-maria-interior
*/

@font-face {
    font-family: 'Commissioner';
    src: url('fonts/Commissioner/Commissioner-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Commissioner';
    src: url('fonts/Commissioner/Commissioner-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Commissioner';
    src: url('fonts/Commissioner/Commissioner-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Commissioner';
    src: url('fonts/Commissioner/Commissioner-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  /* Colors */
  --color-beige: #EBEAE5;
  --color-burgundy: #603129;
  --color-black: #313132;
  --color-brown: #5c4433;
  --color-text: #2a2a2a;
  --color-bg: var(--color-beige);
  --color-selection: #6e3e36;
  --wpex-hover-link-color: #de9f9c;

  /* Fonts */
  --font-heading: 'Commissioner', sans-serif;
  --font-body: 'Commissioner', sans-serif;
  /*--font-heading2: 'Open Sans', sans-serif;*/
  /*--font-body2: 'Open Sans', sans-serif;*/

  /* Spacing / sizes */
  --space-sm: 1rem;
  --space-md: 2rem;
  --space-lg: 4rem;
  --max-width: 1900px;
  --transition: 0.3s ease;
  
  /*other*/
  --side-padding: 40px;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-body);
  color: var(--color-text);
  background: var(--color-bg);
  /*line-height: 1.6;*/
  
  --wpex-heading-color: var(--font-heading);
  --wpex-body-font-size: 14px;
}

h1, h2, h3, h4 {
  font-family: var(--font-heading);
  line-height: 1.2;
  font-weight: 500;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
  --wpex-hover-link-color: #e1b3b1;
  transition: var(--transition);
}

::selection {
    background-color: var(--color-selection);
    color: var(--color-beige);
}


::-moz-selection {
    background-color: var(--color-selection);
    color: var(--color-beige);
}


/*~~~~General~~~~*/
.wpex-responsive .container {
    padding-left: var(--side-padding);
    padding-right: var(--side-padding);
}

/*----headings----*/
.wpex-heading {
    font-size:40px;
}

.ts-subheading,
.wpex-heading.ts-subheading {
    color: var(--color-burgundy);
    font-size: 14px;
    letter-spacing: 0.5px;
}

/*theme heading*/
.tm-theme-heading,
.tm-theme-heading.wpex-heading{
    font-size: 40px;
    margin-bottom: 20px;
}

.tm-theme-heading span::before {
    content:'(';
}

.tm-theme-heading span::after {
    content:')';
}

/*right*/
.tm-heading-right {
    text-align: right;
}

/*text blocks*/
.tm-left-right {
    margin-right: 0;
    max-width: 650px;
    margin-left: auto;
    text-align: right;
}

.tm-m-text {
    font-size: 16px;
    font-weight: 100;
}

/*====sections====*/
.vc_row.tm-section-dark {
    background: var(--color-black);
    color: var(--color-beige);
    --color-text: var(--color-beige);
}


.vc_row.tm-section-red {
    background: var(--color-burgundy);
    color: var(--color-beige);
    --color-text: var(--color-beige);
}


.vc_row.tm-section-border {
    border-top: 2px solid;
    border-bottom: 2px solid;
}

/*----lightbox----*/
.fancybox-caption .fancybox-caption__title {
    display: none;
}

/*----overlay----*/
/*red*/
.vc_row.tm-section-overlay-red {
    background-color: var(--color-burgundy);
    position: relative;
    --color-text: var(--color-beige);
}

.vc_row.tm-section-overlay-red::before {
    content:'';
    display: block;
    width:100%;
    height:100%;
    position: absolute;
    left: 0;
    top: 0;
    background: var(--color-burgundy);
    opacity: 0.8;
}


.tm-section-overlay-red::selection {
    background-color: var(--color-beige);
    color: var(--color-burgundy);
}

/*black*/
.vc_row.tm-section-overlay-black {
    background-color: var(--color-black);
    position: relative;
    --color-text: var(--color-beige);
}

.vc_row.tm-section-overlay-black::before {
    content:'';
    display: block;
    width:100%;
    height:100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #000;
    opacity: 0.7;
}

.tm-section-overlay-red .ts-subheading ,
.tm-section-overlay-black .ts-subheading,
.tm-section-overlay-red .wpex-heading,
.tm-section-overlay-black .wpex-heading {
    color: var(--color-beige);
    --wpex-heading-color: var(--color-beige);
}

/*----mansory gallery----*/
.tm-mansory-gallery .wpex-masonry-grid > div img {
    object-fit:cover;
}
.tm-mansory-gallery .wpex-masonry-grid > div:nth-child(4n+1) img { 
    aspect-ratio: 3 / 2; 
}  /* landscape */

.tm-mansory-gallery .wpex-masonry-grid > div:nth-child(4n+2) img{ 
    aspect-ratio: 1 / 1; 
}  /* square */

.tm-mansory-gallery .wpex-masonry-grid > div:nth-child(4n+3) img { 
    aspect-ratio: 3 / 2; 
}  /* potrait */

.tm-mansory-gallery .wpex-masonry-grid > div:nth-child(4n+4) img { 
    aspect-ratio: 1 / 1; 
    
}

/*===HEADER===*/
#site-header-sticky-wrapper.is-sticky #site-header {
    background-color: transparent;
    box-shadow: none !important;
}

#site-header {
    text-align: center;
}

div#site-navigation-wrap nav {
    background: var(--color-beige);
    display: inline-block;
    padding: 12px 24px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
    border-radius: 100px;
}

#site-header.overlay-header ul li a {
    color: var(--color-text);
}

#site-header.overlay-header ul li a:hover {
    color: var(--color-burgundy);
}

#site-header .main-navigation ul {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

#site-header .main-navigation li {
    font-size: 16px;
}

#site-header .main-navigation li a::before {
    content:'(';
}

#site-header .main-navigation li a::after {
    content:')';
}

/*===HOME===*/
.tm-hero-logo-img {
    width: 60%;
    max-width: 350px;
    max-height: 100%;
    margin-left: auto;
    margin-right: auto;
}

/*arrow scroll*/
.vc_row.ts-home-scroll {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100vh;
    left:0;
}

.vc_row.ts-home-scroll>div,
.vc_row.ts-home-scroll>div>div,
.vc_row.ts-home-scroll>div>div>div {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100dvh;
    left:0;
}

.wpb_raw_code.wpb_content_element.wpb_raw_html.ts-arrow-scroll-wrapper {
    /*position: absolute;*/
    /*top: calc(100% + 10px);*/
    /*left: 50%;*/
    --ts-arrow-size: 25px;
    --ts-arrow-width: 35.36px;
}


.ts-arrow-scroll:before {
  position: absolute;
  left: 50%;
}

.ts-arrow-scroll {
  width: var(--ts-arrow-size);
  height: var(--ts-arrow-size);
  bottom: 80px;
  margin: calc(var(--ts-arrow-size) / -2) 0 0 calc(var(--ts-arrow-size) / -2);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-left: none;
  border-top: none;
  border-right: 2px #fff solid;
  border-bottom: 2px #fff solid;
  
  position: absolute;
  left: calc(50% + var(--ts-arrow-width) / 2);
}

.ts-arrow-scroll:before {
  content: '';
  width: calc(var(--ts-arrow-size) / 2);
  height: calc(var(--ts-arrow-size) / 2);
  top: 50%;
  margin: calc(var(--ts-arrow-size) / -4) 0 0 calc(var(--ts-arrow-size) / -4);
  border-left: none;
  border-top: none;
  border-right: 1px #fff solid;
  border-bottom: 1px #fff solid;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-name: ts-arrow-scroll;
}

@keyframes ts-arrow-scroll {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translate(calc(var(--ts-arrow-size) / -4), calc(var(--ts-arrow-size) / -4));
  }
}

/*quote*/
.vc_row.wpb_row.vc_inner.vc_row-fluid.tm-quote-container {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.wpb_text_column.wpb_content_element.tm-quote-text {
    font-style: italic;
    font-size: 64px;
    font-weight: 100;'
    line-height: 1;
    margin-bottom: 20px;
}


.wpb_text_column.wpb_content_element.tm-quote-text *{
    line-height: 1;
}

.wpb_text_column.wpb_content_element.tm-quote-author {
    font-style: italic;
    font-size: 22px;
    font-weight: 100;
    text-align: right;
}

/*services*/
.tm-services-section>div>div>div {
    --item-gap:12px;
    counter-reset: item-counter;
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.tm-services-section .tm-service-item-row>div>div {
    display: flex;
    align-items: flex-start;
    justify-content: start;
    gap: var(--item-gap);
}

.tm-services-section .tm-service-item-row>div>div>div {
    border-left: 1px solid;
    padding-left: var(--item-gap);
}

.tm-services-section .tm-service-item-row>div>div::before {
    counter-increment: item-counter;
    content: counter(item-counter, decimal-leading-zero) '.';
    font-weight: 600;
    font-size: 36px;
    line-height: 1;
    width: 52px;
    display: block;
}

.wpex-heading.tm-service-title,
.tm-service-title {
    font-size: 20px;
    font-weight: 600;
}

.tm-service-list ul {
    list-style: none;
    margin: 0;
    margin-top: 20px;
}

.tm-service-list li::before {
    content:'(';
}

.tm-service-list li::after {
    content:')';
}

/*----contact----*/
.tm-contact-section>div>div>div {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
}

.wpex-heading.tm-contact-title {
    font-size: 28px;
}

.tm-contact-text {
    font-size: 20px;
}

/*====FOOTER====*/
#footer {
    padding: 0;
    height: 0;
}

#footer-bottom {
    background: var(--color-black);
}

/*----footer bottom----*/
#copyright {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    row-gap: 4px;
    column-gap: 24px;
    width: 100%;
}

.footer-bottom-menu {
    display: flex;
    flex-wrap: wrap;
    column-gap: 8px;
    font-size: 10px;
    justify-content: center;
    align-items: center;
}

/*----MOBILE MENU----*/
div#mobile-menu {
    padding-left: var(--side-padding);
    padding-right: var(--side-padding);
}
#sidr-main {
    background: var(--color-burgundy);
    color: var(--color-beige);
}

.sidr-class-dropdown-menu>li {
    font-size: 18px;
}

.sidr-class-dropdown-menu>li:first-child,
.sidr-class-dropdown-menu>li {
    border: none;
}

.sidr-class-dropdown-menu>li a>span::before {
    content:'(';
}

.sidr-class-dropdown-menu>li a>span::after {
    content:')';
}

/*----scroll to top----*/
#site-scroll-top {
    --wpex-on-accent: var(--color-beige);
    --wpex-accent: var(--color-selection);
    border: 1px solid transparent;
    color: var(--color-burgundy);
    margin-right: 20px;
    margin-bottom: 20px;
}

#site-scroll-top.wpex-hover-bg-accent:hover {
    border-color: var(--wpex-on-accent);
    --wpex-text-4: var(--color-burgundy);
}

@media (max-width: 768px) {
    /*----headings----*/
    .tm-heading-right {
        text-align: left;
    }
    
    /*----text----*/
    .tm-left-right {
        text-align: left;
        margin-left: 0;
        max-width: unset;
    }
}

@media (max-width: 600px) {
    :root {
      --side-padding: 20px;
    }

    .wpb_text_column.wpb_content_element.tm-quote-text {
        font-size: 48px;
        text-align: center;
    }
    
    .wpb_text_column.wpb_content_element.tm-quote-author {
        font-size: 14px;
        text-align: center;
    }
    
    /*====HOME====*/
    /*arrow scroll*/
    /*.ts-arrow-scroll {*/
    /*  bottom: 40px;*/
    /*}*/
    
    /*----footer bottom----*/
    #copyright {
        justify-content: center;
    }
  
}

@media (max-width: 400px) {
    /*----headings----*/
    .wpex-heading {
        font-size: 34px;
    }

    .tm-theme-heading,
    .tm-theme-heading.wpex-heading{
        font-size: 34px;
    }
}

/*wcag*/
.skip-to-content.wpex-absolute {
    color: #000 !important;
    background: #fff !important;
    opacity: 0 !important;
}