/*

Theme Name: Frameword Lite CJK
Theme URI: https://siegalworks.com/
Author: Siegal Works
Author URI: https://siegalworks.com
Description: Based on Frameword Lite theme https://frameword.romanfink.com/ from Roman Fink
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 5.7
Version: 0.3.5
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Text Domain: frameword-litecjk
Tags: one-column, custom-colors, custom-menu, editor-style, full-site-editing, block-patterns, block-styles, blog, portfolio

*/

.entry-content {
    margin-top: 0; /* Remove margin from header to content */
}

.padding-to-center {
    padding-left: calc((100vw - var(--wp--style--global--content-size)) / 2);
}
  
@media screen and (max-width: 1280px) {
  .padding-to-center {
    padding-left: var(--wp--preset--spacing--40);
  }
}
  
.minus-top-margin {
  margin-top: -28px !important;
}

.alignfull, footer {
    margin-right: -16px;
    margin-left: -16px;
}

@media screen and (min-width: 768px) {
    .alignfull, footer {
        margin-right: -24px;
        margin-left: -24px;
    }
  }

@media screen and (max-width: 768px) {
    .single-post .wp-site-blocks > * {
            margin-block-start: 0px;
    }
}


/* --- Submenu background and colors --- */
.wp-block-navigation ul.wp-block-navigation__submenu-container {
    background: var(--wp--preset--color--background-soft) !important;
    border: none !important;
    border-radius: 10px !important;
}

.wp-block-navigation .wp-block-navigation-item {
    border-radius: 10px !important;
}

.wp-block-navigation li a:hover {
    color: var(--wp--preset--color--font-headers) !important;
}

/* --- Links border control --- */
.wp-block-site-logo a {
    border: none !important;
}

a:has(img) {
    border: none !important;
}

/* --- Stick footer to bottom --- */

.wp-site-blocks {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.wp-site-blocks > footer {
    margin-block-start: auto !important;
}




.wp-block-social-links .wp-social-link span:not(.screen-reader-text) {
    font-size: var(--wp--preset--font-size--normal);
}

/* --- Comments in single posts --- */
#reply-title {
    margin-top: 0;
}


/* --- Helpers for block stylization --- */

.border-radius-default {
    border-radius: var(--wp--preset--spacing--10);
}

.overflow-hidden {
    overflow: hidden;
}

.full-height {
    height: 100%;
}


/* Block Style: Space Between */

@media screen and (max-width: 768px) {
    .is-style-frameword-reverse .wp-block-column:first-child{
        order: 2;
    }
}


.is-style-frameword-rounded-borders {
    border-radius: 16px;
}

.is-style-frameword-rounded-borders-10 {
    border-radius: 10px;
}

.is-style-frameword-rounded-borders-20 {
    border-radius: 20px;
}

.is-style-frameword-rounded-borders-40 {
    border-radius: 40px;
}

.is-style-frameword-text-wrap-balance {
    text-wrap: balance !important;
}


/* --- Helper classes for mobile devices --- */
.mobile-show {
    display: none;
}

@media (max-width: 767px) {

    .mobile-hide {
        display: none !important
    }

    .mobile-max-height-40 {
        max-height: 40px;
    }

    .mobile-order-1 {
        order: 1;
    }

    .mobile-order-2 {
        order: 2;
    }

    .mobile-align-none {
        float: none !important;
        margin-inline-start: 0 !important;
    }

    .mobile-no-br br {
        display: none;
    }

    .mobile--no-padding-top {
        padding-top: 0 !important;
    }

    .mobile--no-padding-bottom {
        padding-bottom: 0 !important;
    }

    .mobile-gallery-column > .wp-block-image {
        width: 100% !important;
    }

    /* sw */
    .mobile-cover-min-height {
        min-height: 18em !important;
    }

    .mobile-show {
        display: inherit;
    }
}

/* --- Material buttons --- */

.wp-element-button, .wp-block-button a {
    transition: 0.2s ease;
    -webkit-transition: 0.2s ease;
    box-sizing: border-box;
}

.wp-element-button:hover, .wp-block-button:hover a {
    transform: scale(1.1);
}

.wp-element-button:focus, .wp-block-button:focus a {
    transform: scale(1);
}

.wp-element-button:active, .wp-block-button:active a {
    transform: scale(1);
}

.wp-lightbox-container {
    transition: 0.2s ease;
    -webkit-transition: 0.2s ease;  
}

.wp-lightbox-container:hover {
    transform: scale(1.02);
}


/* --- --- */

.wp-block-navigation__responsive-container.is-menu-open {
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
}

ul.wp-block-categories-list {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--wp--preset--spacing--40);
}


/* --- Styles for pagination --- */

.wp-block-query-pagination-numbers {
    display: flex;
    gap: var(--wp--preset--spacing--30);
}

.wp-block-query-pagination-numbers > * {
  background: var(--wp--preset--color--background-soft);
  width: 32px;
  height:  32px;
  text-align: center;
  align-content: center;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  display: flex;
}

.wp-block-query-pagination-numbers > a {
  border: none;
  background: var(--wp--preset--color--background-hard);
  color: var(--wp--preset--color--primary-light);
}

.wp-block-query-pagination-numbers > a:hover {
  border: none;
  background: var(--wp--preset--color--primary-light);
  color: var(--wp--preset--color--background-hard);
}

/* SW */

/* TABS */
.selectedTab .wp-block-button__link.wp-element-button {
  background-color: var(--wp--preset--color--buttons) !important;
  color: var(--wp--preset--color--font-text-light) !important;
}

/* INTERVIEWS */
.external_link::after {
  content: '';
  background: url(/wp-content/themes/frameword-litecjk/patterns/images/external-link-svgrepo-com.svg) no-repeat;
  background-size: .8em;
  background-position: .3em .1em;
  display: inline-block;
  width: 1.3em;
  height: .8em;
}

/* BOOK REVIEWS */
.quote {
  display: block;
  height: 27px;
  background: url(/wp-content/themes/frameword-litecjk/patterns/images/quote.svg) no-repeat;
  background-size: 27px;
  background-position: 0px 3px;
  margin-top: 0px;
}

.page .press-favs:has(.wp-block-query-no-results) {
  display: none;
}

/* BOOKS */
/* BOOK DETAILS */
/* purchase link buttons */
.sw-purchase-links {
  gap: .5em;
  margin-top: var(--wp--preset--spacing--xxs);
}

.sw-purchase-links .publisher-link {
  width: 11em;
  display: block;
  text-align: center;
}

.wp-block-mfb-meta-field-block .prefix {
  font-weight: 500;
}

.book-meta .wp-block-mfb-meta-field-block.is-display-inline-block > *,
.broadcast .wp-block-mfb-meta-field-block.is-display-inline-block > *,
.press-article .wp-block-mfb-meta-field-block.is-display-inline-block > * {
  display: inline;
}

/* the source of a press/broadcast */
.broadcast .wp-block-mfb-meta-field-block .prefix,
.press-article .wp-block-mfb-meta-field-block .prefix {
  font-weight: 400;
  margin-inline-end: 0;
}

/* good for when it's a comma then suffix
.wp-block-mfb-meta-field-block.is-display-inline-block .suffix {
    margin-inline-start: 0;
}*/

.interview .external_link {
    border: none;
}

.interview .external_link:hover {
    border-bottom: 1px solid var(--wp--preset--color--links-light);
}

/* BOOKS GRID */

/* aligns the books by the bottom of the image (actually don't need this because featured image is object-fit: contains */
/*.book {
    align-self: baseline;
}*/
li.book {
    position: relative;
}

.book .wp-block-post-featured-image a {
        perspective: 600px;

}
.book .wp-block-post-featured-image a img {
	transition: transform 0.4s ease-in-out, transform-origin 0.4s ease-in-out, scale 0.4s ease-in-out;
    border-radius: 2px;
}

.book .wp-block-post-featured-image a:hover img {
    transform: rotateX(10deg) rotateY(0deg);
	transform-origin: 0% 0%;
	transition: transform 0.4s ease-in-out, filter 0.4s ease-out;
    filter: drop-shadow(0px 5px 5px rgb(0 0 0 / 60%));
}

.book-ribbon::before {
  content: 'NEW';
  display: block;
  position: absolute;
  left: -0.5em;
  top: 0.5em;
  transform: rotate(-30deg);
  background-color: var(--wp--preset--color--accent);
  color: var(--wp--preset--color--contrast-light);
  padding: .25em 1em;
  z-index: 2;
  border-radius: 30px;
  font-weight: 700;
  line-height: 1.25;
}


.book-coming-soon::before {
  content: 'Coming Soon';
  left: -1em;
}

/* fluent forms */
/* make opt out checkbox label smaller */
.ff-el-form-check-label {
  font-size: var(--wp--preset--font-size--tiny);
}

.fluentform .ff-el-form-control::placeholder {
  color: var(--wp--preset--color--header-font);
}

.ff-default .ff-el-form-control {
  border-color: var(--wp--preset--color--border-inputs);
}

.ff-default .ff-btn-submit {
  font-weight: 600;
}

.ff-default .ff-btn-submit:hover {
  transform: scale(1.02);
  opacity: inherit;
}


/* general */
/* sans font (for the arrow) */
.sans {
    font-family: sans-serif;
}

/* hidden element (need a button on the page to get styles but using js buttons) */
.hide-always {
    display: none !important;
}

/* don't want to round corners of image */
.not-rounded, .not-rounded img,
.wp-block-post-featured-image img {
    border-radius: 0px;
}

.external_link_button {
    border: 2px solid;
    background-color: transparent;
}

.has-background-soft-background-color a,
.has-accent-background-color a {
	border-color: var(--wp--preset--color--contrast-dark);
}

.has-background a:where(:not(.wp-element-button)):hover {
	border: none;
}
/* footer */
.sw-footer-copyright {
    color: var(--wp--preset--color--contrast-medium);
    font-size: var(--wp--preset--font-size--tiny);
}

.sw-footer-copyright a {
    color: var(--wp--preset--color--links-light);
    border-bottom: none;
}

.sw-footer-copyright a:hover {
    border-bottom: 1px solid;
}

/* animations */       
/* @keyframes duration | easing-function | delay |
iteration-count | direction | fill-mode | play-state | name */
    
.fade-in-up-ease {
    animation: fade-in-bottom 0.5s ease-in 0s 1 normal forwards;
}
@keyframes fade-in-bottom {
            
    0% {
        transform:translateY(50px);
        opacity:0;
    }
    100% {
        transform:translateY(0);
        opacity:1;
    }
}

.fade-in-left-ease {
    animation: fade-in-left 0.5s ease-in 0s 1 normal backwards;
}
    
@keyframes fade-in-left {
            
    0% {
        transform:translateX(-50px);
        opacity:0;
    }
    100% {
        transform:translateX(0);
        opacity:1;
    }
}
    
.slide-in-r {
    opacity: 0;
    animation: slide-in-right 1s linear 0s 1 normal forwards;
}
@media (max-width: 980px) {
    .slide-in-r {
        animation-duration: 0.5s;
    }
}

@keyframes slide-in-right {     
    0% {
        transform:translateX(100%);
        opacity:0;
    }
    100% {
        transform:translateX(0);
        opacity:1;
    }
}

/** CJK **/

 :root {
	--primary-color-dark: #0B1026;
	--primary-color-medium: #161B36;
	--primary-color-light: #242B4B;
	--secondary-color-light: #35475F;
	--secondary-color-medium: #102849;
	--secondary-color-dark: #061D37;
	--gray-color-medium: #DDDDDD;
	--gray-color-light: #F1F1F1;
	--white-color-off: #FAFAFA;
  }

/* do not show the audio controls on home page, but there are others on fun with perception */
.ambience-audio.wp-block-audio {
	display: none;
}

.ambienceCtrls {
  position: fixed;
  top: 140px;
  left: -0.3em;
}

.ambienceCtrls .wp-block-button {
  width: 4em;
}

.ambienceCtrls .wp-block-button a {
	padding-left: 0px;
	padding-right: 0px;
}

.ambienceCtrls .wp-block-button.selectedTab a {
  border: 2px solid;
}

#home-logo-bg {
	background-image: url('/wp-content/uploads/2021/10/cjk-ink-white-clear.png');
	background-size: 300px 300px;
	background-repeat: no-repeat;
	display: block;
	padding-top: 80px;
	height: 300px;
	width: 300px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 300px;
	transition-property: background-size, background-position;
  transition-duration: 3s, 2s;
}

#home-logo-bg:hover{
	background-size: 1200px 1200px;
	background-position: -550px -340px;
	
}

body {
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat;
}

body.default {
  background-image: radial-gradient(at 75% 60%, var(--gray-color-medium), var(--primary-color-light), var(--primary-color-dark));
}

body.light {
	background-image: url("/wp-content/uploads/2021/10/cjk-fractal-flower.png");
	background-attachment: fixed;
}

body.dark {
	background-image: url("/wp-content/uploads/2021/10/cjk-fractal-nautilus.png");
	background-attachment: fixed;
}

body.bright {
	background-image: url("/wp-content/uploads/2021/10/cjk-fractal-rose.png");
	background-attachment: fixed;
}

body.white {
	background-image: none;
}

body.light h1.nobg-heading,
body.light h2.nobg-heading {
  color: var(--wp--preset--color--primary-dark);
}

#cjkToTop {
    position: fixed;
    right: 1em;
    bottom: 0;
}

#cjkToTop a {
  padding-left: 0.25em;
  padding-right: 0.25em;
  padding-top: 1em;
  background-image: url(/wp-content/themes/frameword-litecjk/patterns/images/up-arrow.svg);
  background-size: 30px;
  background-position: center;
  font-size: var(--wp--preset--font-size--medium);
  background-repeat: no-repeat;
  display: block;
  width: 1em;
  height: 1em;
}
/********* 
 * NAV BAR
 ****/
a.navbar-brand {
	background-image: url('/wp-content/uploads/2021/10/cjk-ink-white-clear.png');
	background-size: 85px 85px;
	background-repeat: no-repeat;
	background-position: 0px -10px;
	display: block;
	padding-top: 0px;
	height: 80px;
	width: 80px;
	border-radius: 80px;
	transition-property: background-size, background-position;
    transition-duration: 1.5s, 1s;
    border: none; /* theme defaults to border-bottom for links */
}

a.navbar-brand:hover{
	background-size: 420px 420px;
	background-position: -206px -135px;
	
}

.front-page-nav {
  padding: var(--wp--preset--spacing--xs);
}

@media only screen and (max-width: 1299px) {
	.ambienceCtrls {
        left: -0.5em;
    }

    .ambienceCtrls .wp-block-buttons, .ambienceCtrls {
        row-gap: 1.2em;
    }
    .ambienceCtrls .wp-block-button {
        transform: rotate(-45deg);
    }
}

@media only screen and (max-width: 1199px) {
	.ambienceCtrls {
        top: 2em;
        left: -1em;
    }

    .ambienceCtrls .wp-block-buttons, .ambienceCtrls {
        row-gap: 2.2em;
    }
    .ambienceCtrls .wp-block-button {
        transform: rotate(-60deg);
    }
}

@media only screen and (max-width: 999px) {

    .ambienceCtrls .wp-block-buttons, .ambienceCtrls {
        row-gap: 2.5em;
    }
    .ambienceCtrls .wp-block-button {
        transform: rotate(-75deg);
    }
}

@media only screen and (max-width: 1024px) {
}

@media only screen and (max-width: 768px) {
  h1#blogtitle {
		font-size: 1.0rem;
	}

	h2#blogtagline {
		font-size: 0.7em;
	}
}

@media only screen and (max-width: 480px) {
}

@media only screen and (max-height: 600px) {
	.ambienceCtrls {
        top: 0.25em;
		left: -0.2em;
    }

    .ambienceCtrls .wp-block-buttons, .ambienceCtrls {
        row-gap: 0.25em;
    }
    .ambienceCtrls .wp-block-button {
        transform: rotate(0deg);
    }
}