
/* General Structure
--------------------------------------------------------------*/
.alignfull {
  max-width: 100vw;
  margin-left: calc(-100vw / 2 + 100% / 2);
  margin-right: calc(-100vw / 2 + 100% / 2);
}

.single-post .alignfull,
.page-template-default:where(:not(.front-page)) .alignfull {
  width: auto;
  margin-left: calc(-20px - .1vw);
  margin-right: calc(-20px - .1vw);
}

.single-post .alignwide,
.page-template-default .alignwide {
  margin-left: -15px;
  margin-right: -15px;
}

.alignwide .alignfull {
  width: auto!important;
}

.alignwide .alignwide,
.alignfull .alignwide,
.alignwide .alignfull,
.alignfull .alignfull {
  margin-left: auto!important;
  margin-right: auto!important;
}

.wp-block-query .wp-block-post-featured-image.alignfull,
.wp-block-query .wp-block-post-featured-image.alignwide,
.wp-block-group:where(:not(.alignwide):not(.alignfull)) .alignfull,
.wp-block-columns:where(:not(.alignwide):not(.alignfull)) .alignfull,
[class^="wp-block-"]:where(:not(.alignwide):not(.alignfull)) .alignwide,
[class^="wp-block-"]:where(:not(.alignwide):not(.alignfull)) .alignfull {
  margin: 0;
  width: auto;
}

/* Colors
--------------------------------------------------------------*/
.has-bc-white-background-color {
  background-color: #fefefe !important;
}

.has-bc-white-color {
  color: #fefefe !important;
}

.has-bc-black-background-color {
  background-color: #010101 !important;
}

.has-bc-black-color {
  color: #010101 !important;
}

.has-primary-background-color {
  background-color: var(--cps--primary) !important;
}

.has-primary-color {
  color: var(--cps--primary) !important;
}

.has-primary-font-background-color {
  background-color: var(--cps--primary--font) !important;
}

.has-primary-font-color {
  color: var(--cps--primary--font) !important;
}

.has-secondary-background-color {
  background-color: var(--cps--secondary) !important;
}

.has-secondary-color {
  color: var(--cps--secondary) !important;
}

.has-secondary-font-background-color {
  background-color: var(--cps--secondary--font);
}

.has-secondary-font-color {
  color: var(--cps--secondary--font) !important;
}

a.has-bc-white-background-color:hover,
a.has-secondary-background-color:hover {
  background-color: var(--cps--primary) !important;
  color: var(--cps--primary--font) !important;
}

/* link
--------------------------------------------------------------*/
.entry-content .wc-block-grid a,
.entry-content .wp-block-button a,
.entry-content .wp-block-query a {
  text-decoration: none;
}

.entry-content a.wc-block-grid__product-link {
    color: #444;
}

/* Button
--------------------------------------------------------------*/
.entry-content .wp-block-buttons{
  margin-bottom: 20px;
}

.entry-content .wp-block-buttons:last-child{
  margin-bottom: 0;
}

.wp-block-button__link,
a.wp-block-button__link {
  border-radius: 0;
  text-decoration: none;
}

.is-style-outline .wp-block-button__link {
  position:relative;
  vertical-align: middle;
  display: inline-block;
  text-align: center;
  cursor: pointer;
  -webkit-transition:0.5s;
  transition:0.5s;
}

.is-style-outline .wp-block-button__link:hover {
  color: inherit;
}

.is-style-outline .wp-block-button__link:before,
.is-style-outline .wp-block-button__link:after {
  width: 100%;
  height:100%;
  z-index: 3;
  content:'';
  position: absolute;
  top:0;
  left:0;
  box-sizing: border-box;
  -webkit-transform: scale(0);
  transform: scale(0);
  transition: .5s;
  border: 1px solid;
  border-color: inherit;
}

.is-style-outline .wp-block-button__link:before {
  border-top:0;
  border-right:0;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}

.is-style-outline .wp-block-button__link:after {
  border-bottom: 0;
  border-left: 0;
  -webkit-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}

.is-style-outline .wp-block-button__link:hover::after,
.is-style-outline .wp-block-button__link:hover::before {
    -webkit-transform: scale(1);
    transform: scale(1);
}

/* Code
--------------------------------------------------------------*/

.wp-block-code {
  padding: 0.8em 1em;
  margin-left: 14px;
  margin-right: 14px;
}

/* Cover
--------------------------------------------------------------*/
.wp-block-cover-text p {
  padding: 1.5em 14px;
}

/* Embeds
--------------------------------------------------------------*/

.wp-block-embed.type-video > .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}

.wp-block-embed.type-video > .wp-block-embed__wrapper > iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Gallery
--------------------------------------------------------------*/

.wp-block-gallery:not(.components-placeholder) {
  margin: 1.5em auto;
}

/* Group
--------------------------------------------------------------*/
.wp-block-group.has-background > .wp-block-group__inner-container > :first-child {
  margin-top: 0;
}

/* Image
--------------------------------------------------------------*/

figure.wp-block-image {
    margin-bottom: 20px;
}

figure.wp-block-image:last-child {
    margin-bottom: 0;
}

.wp-block-image.alignleft,
.wp-block-image.alignright {
  width: 100%
}

.wp-block-image.alignfull img {
  width: 100vw;
}

.wp-block-image .alignleft img,
.wp-block-image .alignright img,
.wp-block-image .alignleft figcaption,
.wp-block-image .alignright figcaption {
  max-width: 100%;
  width: 100%;
}

.is-style-cps-diagonal-left img {
    clip-path: polygon(0 20%, 100% 0, 100% 80%, 0 100%);
}

.is-style-cps-diagonal-right img {
    clip-path: polygon(0 0, 100% 20%, 100% 100%, 0 80%);
}

.is-style-cps-shadow img {
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 20%);
}

/*Block Media Text
--------------------------------------------------------------*/
.wp-block-media-text {
    column-gap: 4%;
    padding: 0 4%;
}

.wp-block-media-text .wp-block-media-text__media,
.wp-block-media-text .wp-block-media-text__content {
    padding: 0;
}

/* Latest Posts
--------------------------------------------------------------*/

ul.wp-block-latest-posts.alignwide,
ul.wp-block-latest-posts.alignfull,
ul.wp-block-latest-posts.is-grid.alignwide,
ul.wp-block-latest-posts.is-grid.alignwide {
  padding: 0 14px;
}

/*--------------------------------------------------------------
# List
--------------------------------------------------------------*/

.entry-content ul,
.entry-content ol {
  margin-bottom: 20px;
}

.entry-content ul ul,
.entry-content ol ol,
.entry-content ul ol,
.entry-content ol ul {
  margin: 0 auto;
}

.entry-content ul ul li,
.entry-content ol ol li,
.entry-content ul ol li,
.entry-content ol ul li {
  margin-left: 0;
}

.entry-content .wc-block-grid ul,
.entry-content .wp-block-query ul {
  padding: 0;
  list-style: none;
}

/* More
--------------------------------------------------------------*/
.more-link {
  margin-top: 15px;
  display: table;
}

.has-text-align-center .more-link {
  margin-right: auto;
  margin-left: auto;
}

.has-text-align-right .more-link {
  margin-right: auto;
}
/* Navigation
--------------------------------------------------------------*/

.wp-block-navigation-link__label {
  font-family: inherit;
  color: #0073aa;
}

/* Pullquote
--------------------------------------------------------------*/

.wp-block-pullquote>p:first-child {
  margin-top: 0;
}

/* Quote
--------------------------------------------------------------*/
.wp-block-quote.is-large, 
.wp-block-quote.is-style-large {
  margin: 36px auto;
  padding: 0;
}

.wp-block-quote.is-large cite, 
.wp-block-quote.is-large footer, 
.wp-block-quote.is-style-large cite, 
.wp-block-quote.is-style-large footer {
  font-size: 13px;
  font-size: 0.8125rem;
}

/* Separator
--------------------------------------------------------------*/

.wp-block-separator {
  margin: 3em auto;
  padding: 0;
}

/* Site Tagline
--------------------------------------------------------------*/

.wp-block-site-tagline {
  margin-top: 0;
}

/* Site Title
--------------------------------------------------------------*/

.wp-block-site-title {
  margin-bottom: 0;
}

/* Table
--------------------------------------------------------------*/

.wp-block-table {
  overflow-x: auto;
  margin-left: 14px;
  margin-right: 14px;
  width: calc( 100% - 28px );
}

.wp-block-table table {
  border-collapse: collapse;
  width: 100%
}

.wp-block-table td, .wp-block-table th {
  padding: .5em;
}

/* Video
--------------------------------------------------------------*/
.wp-block-video video {
  max-width: 580px;
}


@media screen and (min-width: 700px) {
  .alignwide,
  .full-width-content .entry-content .alignwide {
    width: auto;
    margin-left: -50px;
    margin-right: -50px;
  }

  .landing-page.full-width-content .entry-content .alignwide {
    margin-left: -100px;
    margin-right: -100px;
  }
}

@media screen and (max-width: 699px) {
  .alignwide,
  .full-width-content .entry-content .alignwide {
    width: auto;
    margin-left: -25px;
    margin-right: -25px;
  }
}

@media screen and (min-width: 644px) {
  .wp-block-quote {
    margin: 36px auto;
  }
}

@media screen and (min-width: 608px) {
  .wp-block-table {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }
  
  .wp-block-cover-image .wp-block-cover__inner-container,
  .wp-block-cover .wp-block-cover__inner-container {
      padding-left: 3%;
      padding-right: 3%;
  }
  
  .wp-block-cover-text p {
    padding: 1.5em 0;
  }
  
  .wp-block-code {
    margin-left: auto;
    margin-right: auto;
  }
}
