/*
Theme Name: Knights Bridge
Theme URI: https://knightsbridge.com/
Author: Vin
Author URI: https://vinagency.com
Version: 1.0.0
*/

/* 

Reset
Layout
Color
Elements
Typography
Links
Forms
Util
Components
Grid

*/

/* =Reset */

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html,
body {
min-height: 100vh;
overscroll-behavior: none;
overflow-x: clip;
}
:focus {
outline: none;
}
:focus-visible {
outline: 2px solid var(--color-border-medium);
outline-offset: 5px;
}
p:empty {
display: none;
}
img {
color: transparent;
}
@view-transition {
navigation: auto;
}

/* =Layout */

@media screen and (min-width:640px) {
  :root {
  --wp--style--root--padding-left: 30px;
  --wp--style--root--padding-right: 30px;
  }
}

/* =Color */

:root {
--color-black: #111;
--color-background: #efeee5;
--color-border: var(--wp--preset--color--gray-light);
--color-border-medium: var(--wp--preset--color--gray-medium);
--color-border-dark: var(--wp--preset--color--gray-dark);
--color-primary: var(--wp--preset--color--gold);
--color-primary-light: var(--wp--preset--color--gold-light);
--color-primary-medium: var(--wp--preset--color--gold-medium);
--color-primary-dark: var(--wp--preset--color--gold-dark);
}
:focus-visible {
outline: 2px dotted var(--color-primary-light);
outline-offset: 5px;
}

/* =Elements */

body {
scroll-behavior: smooth;
letter-spacing: .05em;
}
* {
margin:0;
padding:0;
box-sizing: border-box;
}
button {
background-color: transparent;
border: 0;
cursor: pointer;
padding: 0;
text-transform: uppercase;
font-size:16px;
letter-spacing:.05em;
}
a {
text-decoration-color: var(--wp--preset--color--gold-light);
transition: all 0.3s ease;
}
h1, h2, h3, h4, h5, h6, p {
text-wrap: pretty;
}
a:not([disabled]):hover,
p a:not([disabled]):hover {
text-decoration-color: var(--wp--preset--color--gold-dark);
transition: all 0.3s ease;
}
p a:not([disabled]):hover,
p a:not([disabled]):where(:not(.wp-element-button)):hover {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-dark);
transition: all 0.3s ease;
}
img {
max-width: 100%;
color: transparent;
}
body ul {
padding-left: 0;
}

/* =Links */

h2 a {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-light);
text-decoration-thickness: 1px;
text-underline-offset: 5px;
}
h2 a:hover,
h2 a:focus-visible {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-medium);
text-decoration-thickness: 1px;
text-underline-offset: 5px;
}
p a {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-light);
text-decoration-thickness: 1px;
text-underline-offset: .25em;
}
p a:hover,
p a:focus-visible {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-medium);
text-decoration-thickness: 1px;
text-underline-offset: .25em !important;
}
/* override wp links underline */
/* :root :where(a:where(:not(.wp-element-button))) {
text-decoration: inherit;
} */


/* =Typography */

body,
button {
letter-spacing: 0.025;
}
h2.size-2 {
font-size: 24px;
}
h3.size-2 {
font-size: 1rem;
}
h1, h2, h3 {
font-weight:normal;
}
h1 {
margin-top: 0;
margin-bottom: 1em;
}
h1.spacing-tight {
margin-bottom: .5em;
}
h2 {
margin-top: 1em;
margin-bottom: 1em;
line-height: 1.25em;
}
h2.spacing-tight {
margin-bottom: .5em;
}
h3 {
margin-top: 1em;
margin-bottom: 1em;
line-height: 1.5em;
}
h2 + h3 {
margin-top: -1em;
}
h4 {
text-align: center;
margin-bottom: 1.5rem;
}
p {
margin-bottom: 1em;
letter-spacing: .025em;
font-size: var(--wp--preset--font-size--x-medium);
}
p a:hover,
p a:focus-visible {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-medium);
text-decoration-thickness: 1px !important;
text-underline-offset: 3px;
}
@media screen and (max-width:320px) {
  :root {
  --wp--preset--font-size--medium: 1rem;
  --wp--preset--font-size--xxx-large: 2rem;
  --wp--preset--font-size--xxxx-large: 2rem;
  }
}
@media screen and (max-width:640px) {
  :root {
  /* --wp--preset--font-size--medium: 20px; */
  --wp--preset--font-size--xxx-large: 2rem;
  --wp--preset--font-size--xxxx-large: 2rem;
  }
}
@media screen and (min-width:1800px) {
  :root,
  html body {
  font-size: 24px;
  /* --wp--preset--font-size--medium: 20px; */
  }
}

/* =Forms */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
textarea {
width: 100%;
padding: .5rem;
font-size: var(--wp--preset--font-size--medium);
}
.form-required {
color: var(--wp--preset--color--primary);
}
label {
text-transform: uppercase;
letter-spacing: .05em;
font-size: var(--wp--preset--font-size--small);
}


/* =Util */

.hide {
display: none;
}
.text-balance {
text-wrap: balance;
}


/* =Components */

/* Commerce7 */

/* C7 general */

p a.c7-link,
p a.c7-link:hover,
p a.c7-link:focus-visible {
text-decoration: underline;
}
.c7-btn  {
text-transform: uppercase;
font-family: var(--wp--preset--font-family--engravers-gothic);
font-size: var(--wp--preset--font-size--medium);
}

/* C7 subscribe */

.c7-subscribe .c7-form__group {
flex-direction: column;
}
.c7-subscribe .c7-form__group .c7-form__field + button {
margin: 0;
}

/* C7 collections */

.c7-product__teaser p,
.c7-product__login-message {
font-size: var(--wp--preset--font-size--medium);
line-height: 1.25em;
}

body .c7-product-collection__product-list {
margin-top: 0;
position: relative;
}
.c7-product-collection__product-list > p:first-child:last-child {
text-align: center;
position: absolute;
top: 0;
left: 0;
right: 0;
width: 100%;
}

.c7-product-collection .c7-product,
.c7-product-collection .c7-product {
margin-top: 40px;
}
.c7-product-collection .c7-product .c7-product__image,
.c7-product-collection .c7-product .c7-product__image {
margin-top: -60px;
}
h3.c7-product__title {
margin-top: 0;
}
.c7-product__add-to-cart__form__quantity input {
min-height: 51px;
display: flex;
align-items: center;
justify-content: center;
}
body .c7-product-detail .c7-product__image img {
max-height: 75vh;
}

/* C7 orders */

body .c7-order-item__details .c7-link {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-light);
text-underline-offset: 3px;
text-transform: uppercase;
font-family: var(--wp--preset--font-family--engravers-gothic);
font-size: 15px;
}
.c7-order-summary__buttons a.c7-btn {
padding-left: 0;
padding-right: 0;
text-align: center;
}
body .c7-order-item__title {
font-size: var(--wp--preset--font-size--x-medium);
}
body .c7-order-item__title a {
text-decoration: underline;
text-underline-offset: 3px;
text-decoration-color: var(--wp--preset--color--gold-light);
}
body .c7-order-item__title a:hover,
body .c7-order-item__title a:focus-visible {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-medium);
}
body .c7-user-nav__cart__count {
margin-top: -4px;
color: var(--wp--preset--color--gray-dark);
}


/* Kadence row layout */

.kt-inner-column-height-full figure {
display: block;
height: 100%;
}
.cover-images-grid figure,
.cover-images-grid a,
.cover-images-grid img {
height: 100%;
}

/* Kadence Galleries */

body .kb-splide .splide__pagination, 
body .kb-splide ul.splide__pagination.splide__pagination {
bottom: 0;
position: relative;
padding: 1rem 0;
}
body .kb-splide .splide__pagination__page:not(.is-active) {
background-color: var(--wp--preset--color--gold-light);
opacity: 1;
}
body .kb-splide .splide__pagination__page.is-active {
background-color: var(--wp--preset--color--gold-dark);
}

.kb-gallery-item-link img {
transform: scale(1.00);
transition: all 0.3s ease;
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}
.kb-gallery-item-link:hover img,
.kb-gallery-item-link:focus-visible img {
transform: scale(1.05);
transition: all 0.3s ease;
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}


/* Kadence Gallery Lightbox */

.glightbox-container .gnext {
right: 0;
}
.glightbox-container .gprev {
left: 0;
}
.glightbox-container .gnext svg,
.glightbox-container .gprev svg {
display: none;
}
.glightbox-container .gclose svg {  
display: none;
}
.glightbox-container button.gclose::after,
.glightbox-container button.gnext::after,
.glightbox-container button.gprev::after {
font-family: 'Times New Roman', Times, serif;
color: var(--wp--preset--color--gold-dark);
font-size: 1.5rem;
}
.glightbox-container button:hover.gclose::after,
.glightbox-container button:hover.gnext::after,
.glightbox-container button:hover.gprev::after,
.glightbox-container button:focus.gclose::after,
.glightbox-container button:focus.gnext::after,
.glightbox-container button:focus.gprev::after {
color: var(--wp--preset--color--gray-dark);
}
.glightbox-container button.gclose::after {
content: "\00D7";
display: block;
font-size: 2rem
}
.glightbox-container button.gnext::after {
content: "\2192";
display: block;
}
.glightbox-container button.gprev::after {
content: "\2190";
display: block;
}
body .glightbox-kadence-dark {
background-color: #f6f4ec !important;
}
body .goverlay {
background-color: #f6f4ec !important;
}
body .glightbox-container .gclose {
top:0;
right:0;
padding-top: 10px;
padding-bottom: 10px;
}
body .glightbox-container .gclose, 
body .glightbox-container .gnext, 
body .glightbox-container .gprev {
background-color: transparent !important;
width: 50px;
text-align: center;
}
.glightbox-container .gslider {
padding: 60px;
}
body .glightbox-container .gslide-media {
box-shadow: none;
/* box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1); */
}
body .gbtn.focused {
outline-color: var(--wp--preset--color--gold-light);
}
body .gslide-image img {
max-height: calc(100vh - 80px)
}

/* categories menu */

:root :where(.wp-block-query-title span) {
font-style: normal;
}
.wp-block-categories-list {
display: flex;
flex-wrap: wrap;
gap: 20px;
justify-content: center;
}
.wp-block-categories-list li.current-cat a {
text-decoration-color: var(--wp--preset--color--gold-dark);
}
.wp-block-categories-list a {
text-transform: uppercase;
text-decoration-color: var(--wp--preset--color--gold-light);
text-underline-offset: 0.5em;
transition: all .35s ease;
}
.wp-block-categories-list a:hover,
.wp-block-categories-list a:focus-visible {
text-decoration: underline !important;
text-decoration-color: var(--wp--preset--color--gold-medium) !important;
transition: all .35s ease;
}


/* post navigation */

.wp-block-post-navigation-link {
display: flex;
flex-direction: row;
justify-content: center;
align-items: flex-start;
text-wrap: balance;
}
@media screen and (min-width: 641px) {
  .wp-block-post-navigation-link {
  max-width: 50%;
  }
}
.wp-block-post-navigation-link > span.is-arrow-arrow {
color: var(--wp--preset--color--gold);
transition: all .35s ease;
display: block;
}
.wp-block-post-navigation-link:hover span.is-arrow-arrow,
.wp-block-post-navigation-link:focus-within span.is-arrow-arrow {
color: var(--wp--preset--color--gold-dark);
transition: all .35s ease;
cursor: default;
}
.wp-block-post-navigation-link a {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-light);
text-underline-offset: 0.5em;
text-decoration-thickness: 1px;
transition: all .35s ease;
}
.wp-block-post-navigation-link a:hover,
.wp-block-post-navigation-link a:focus-visible {
text-decoration: underline !important;
text-decoration-color: var(--wp--preset--color--gold) !important;
text-underline-offset: 0.5em;
text-decoration-thickness: 1px;
transition: all .35s ease;
}
.wp-block-post-navigation-link a span:first-child {
text-transform: uppercase;
letter-spacing: .05em;
font-size: var(--wp--preset--font-size--small)
}
.wp-block-post-navigation-link .post-navigation-link__title {
line-height: 1.75em;
padding-top: .5rem;
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-medium);
text-underline-offset: 0.5em;
transition: all .35s ease;
}
.wp-block-post-navigation-link a:hover .post-navigation-link__title,
.wp-block-post-navigation-link a:focus-visible .post-navigation-link__title {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold);
text-underline-offset: 0.5em;
transition: all .35s ease;
}
.post-navigation-link-next {
text-align: right;
}


/* posts block */

.wp-block-post h2 a {
line-height: 1.5em;
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold-light);
text-decoration-thickness: 1px;
text-underline-offset: 5px;
}
.wp-block-post h2 a:hover,
.wp-block-post h2 a:focus-visible {
text-decoration: underline;
text-decoration-color: var(--wp--preset--color--gold);
text-decoration-thickness: 1px;
}
.post.type-post > figure {
padding-bottom: 0 !important;
}


/* post featured image */

.wp-block-post-featured-image a {
display: block;
aspect-ratio: 1 / 1;
overflow: hidden;
}
.wp-block-post-featured-image img {
display: block;
transform: scale(1.00);
transition: all 0.3s ease;
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}
.wp-block-post-featured-image a:hover img,
.wp-block-post-featured-image a:focus-visible img {
transform: scale(1.05);
transition: all 0.3s ease;
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}



/* search */

.wp-block-search__label {
position: absolute;
top: -10000px;
left: -10000px;
}

/* contact form 7 */

body .wpcf7 form.sent .wpcf7-response-output {
border-color: var(--color-primary-dark);
}

/* image block captions */

:root :where(.wp-element-caption, 
.wp-block-audio figcaption, 
.wp-block-embed figcaption, 
.wp-block-gallery figcaption, 
.wp-block-image figcaption, 
.wp-block-table figcaption, 
.wp-block-video figcaption) {
font-size: 1rem !important;
}

/* buttons */

.wp-block-button__link {
text-transform: uppercase;
font-family: var(--wp--preset--font-family--engravers-gothic);
text-transform: uppercase;
font-size: 1rem;
letter-spacing: .1em;
padding: 1rem 1.5rem;
}
.wp-block-button__link:hover,
.wp-block-button__link:focus-visible {
background-color: var(--color-primary-dark);
}

a.button,
div.button,
button,
input[type="submit"] {
text-transform: uppercase;
/* color: var(--wp--preset--color--black); */
background: transparent none;
border: 2px solid var(--color-primary-medium);
color: var(--color-primary-dark);
padding: 1rem 1.5rem;
font-family: var(--wp--preset--font-family--engravers-gothic);
text-transform: uppercase;
text-decoration: none;
font-size: 1rem;
letter-spacing: .1em;
cursor: pointer;
/* padding-top: calc(0.6rem - 1px);
padding-bottom: calc(0.6rem - 1px);
padding-left: calc(1rem - 1px);
padding-right: calc(1rem - 1px); */
transition: all 0.3s ease;
}
a.button:hover,
a.button:focus-visible,
a:hover div.button:hover,
a:focus-visible div.button,
button:hover,
input[type="submit"]:hover,
button:focus-visible,
input[type="submit"]:focus-visible,
.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus-visible {
/* color: var(--color-white); */
background-color: var(--color-primary-light);
border-color: var(--color-primary-light);
transition: all 0.3s ease;
}

/* button,
input[type="submit"] {
background-color: var(--color-background);
border: 2px solid var(--color-primary-dark);
border-radius: 0;
padding: 1rem 1.5rem;
font-size: var(--wp--preset--font-size--medium);
text-transform: uppercase;
letter-spacing: .1em;
cursor: pointer;
transition: all .3s ease;
} */
/* button:hover,
input[type="submit"]:hover,
button:focus-visible,
input[type="submit"]:focus-visible,
.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus-visible {
border-color: var(--color-primary-dark);
background-color: var(--color-primary-dark);
transition: all .3s ease;
} */
    