   

/* WELCOME
   ----------------------------- */

section.welcome{
   padding: 3rem 0;
   user-select: none;
}
section.welcome figure.logo{
   width: 100%;
   max-width: 460px;
}
section.welcome .content{
   display: flex;
   flex-direction: column;
   gap: 1.6rem;
   align-items: center;
   text-align: center;
}
section.welcome figure.logo{
   display: inline-block;
}
section.welcome .subtitle{
   color: var(--gold);
   font-family: var(--font-ui);
   font-weight: 500;
   letter-spacing: .3em;
   font-size: 0.625rem;
}


/* WOOCOMMERCE ACCOUNT
   ----------------------------- */


.account-page .woocommerce{
   display: grid !important;
   grid-template-columns: 240px 1fr;
   gap: 24px;
}

.account-page .woocommerce::before,
.account-page .woocommerce::after{
   content: none !important;
   display: none !important;
}

.account-page .woocommerce-MyAccount-navigation,
.account-page .woocommerce-MyAccount-content{
   width: auto !important;
   float: none !important;

   border: 1px solid rgba(197,160,89,.14);
   border-radius: 15px;

   background: #1a0f12;

   box-shadow:
      0 0 0 1px rgba(255,255,255,.015) inset,
      0 20px 40px rgba(0,0,0,.22);
}

.account-page .woocommerce-MyAccount-navigation{
   padding: 12px;
   height: fit-content;
}

.account-page .woocommerce-MyAccount-navigation ul{
   display: flex;
   flex-direction: column;
   gap: 2px;
}

.account-page .woocommerce-MyAccount-navigation li{
   margin: 0;
}

.account-page .woocommerce-MyAccount-navigation a{
   display: flex;
   align-items: center;

   min-height: 42px;
   padding: 0 14px;

   border-radius: 8px;

   font-size: 12px;
   font-weight: 500;
   letter-spacing: .14em;
   text-transform: uppercase;

   color: rgba(232,212,168,.58);

   transition:
      background .3s ease,
      color .3s ease;
}

.account-page .woocommerce-MyAccount-navigation .is-active a,
.account-page .woocommerce-MyAccount-navigation a:hover{
   background: #2b1a15;
   color: #E8D4A8;
}

.account-page .woocommerce-MyAccount-content{
   padding: 32px;
}

.account-page .woocommerce-MyAccount-content h1,
.account-page .woocommerce-MyAccount-content h2,
.account-page .woocommerce-MyAccount-content h3{
   margin: 0 0 18px;

   color: #F5E7C7;

   font-family: var(--font-heading);
   font-size: 32px;
   font-weight: 400;
   line-height: 1;
   letter-spacing: -.03em;
   text-transform: uppercase;
}

.account-page .woocommerce-MyAccount-content p,
.account-page .woocommerce-MyAccount-content li,
.account-page .woocommerce-MyAccount-content td{
   font-size: 14px;
   line-height: 1.65;
   color: rgba(255,240,214,.72);
}

.account-page .woocommerce-MyAccount-content strong{
   color: #E8D4A8;
   font-weight: 500;
}

.account-page table{
   width: 100%;
   border-collapse: collapse;
   margin-top: 24px;
}

.account-page table th{
   padding: 14px 12px;

   border-bottom: 1px solid rgba(197,160,89,.12);

   color: rgba(245,231,199,.9);

   font-size: 11px;
   font-weight: 600;
   letter-spacing: .14em;
   text-transform: uppercase;
}

.account-page table td{
   padding: 14px 12px;

   border-bottom: 1px solid rgba(197,160,89,.08);

   font-size: 14px;
   color: rgba(255,240,214,.72);
}

.account-page .button,
.account-page button,
.account-page input[type="submit"]{
   display: inline-flex;
   align-items: center;
   justify-content: center;

   height: 44px;
   padding: 0 22px;

   border: 1px solid rgba(197,160,89,.2);
   border-radius: 999px;

   background: rgba(197,160,89,.05);

   color: #E8D4A8 !important;

   font-size: 11px;
   font-weight: 600;
   letter-spacing: .16em;
   text-transform: uppercase;

   transition:
      background .3s ease,
      border-color .3s ease,
      transform .3s ease;
}

.account-page .button:hover,
.account-page button:hover,
.account-page input[type="submit"]:hover{
   background: rgba(197,160,89,.1);
   border-color: rgba(197,160,89,.34);

   transform: translateY(-1px);
}

.account-page input[type="text"],
.account-page input[type="email"],
.account-page input[type="password"],
.account-page textarea,
.account-page select{
   width: 100%;
   height: 48px;
   padding: 0 16px;

   border: 1px solid rgba(197,160,89,.1);
   border-radius: 8px;

   background: rgba(255,255,255,.02);

   color: #FFF5E2;
   font-size: 14px;
}

.account-page textarea{
   height: 140px;
   padding-top: 14px;
}

.account-page input:focus,
.account-page textarea:focus,
.account-page select:focus{
   outline: none;

   border-color: rgba(197,160,89,.35);

   box-shadow:
      0 0 0 4px rgba(197,160,89,.05);
}

@media screen and (max-width: 991px){

   .account-page .woocommerce{
      grid-template-columns: 1fr;
   }

   .account-page .woocommerce-MyAccount-content{
      padding: 24px;
   }

}




/* WOOCOMMERCE CART
   ----------------------------- */

.rk-cart{
   display: flex;
   flex-direction: column;
   gap: 28px;
}

.rk-cart-header{
   display: flex;
   flex-direction: column;
   gap: 10px;
}

.rk-cart-header .eyebrow{
   color: #C5A059;

   font-size: 10px;
   font-weight: 600;
   letter-spacing: .14em;
   text-transform: uppercase;
}

.rk-cart-header h1{
   font-family: var(--font-cinzel);
   color: #F4E2BE;

   font-size: 22px;
   font-weight: 400;
   line-height: .95;
}

.rk-cart-header p{
   max-width: 720px;

   color: rgba(255,245,226,.68);

   font-size: 14px;
   line-height: 1.6;
}

.rk-cart-panel{
   padding: 18px;

   border: 1px solid rgba(129,110,153,.14);
   border-radius: 15px;

   background: #1a0f12;

   box-shadow:
      0 0 0 1px rgba(255,255,255,.015) inset,
      0 14px 30px rgba(0,0,0,.14);
}

.rk-cart-top{
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 20px;

   padding-bottom: 16px;
   margin-bottom: 16px;

   border-bottom: 1px solid rgba(255,255,255,.04);
}

.rk-cart-top h2{
   color: rgba(255,245,226,.56);

   font-size: 12px;
   font-weight: 500;
}

.rk-cart-total{
   color: #E9D9FF;

   font-size: 14px;
   font-weight: 600;
}

.rk-cart-items{
   display: flex;
   flex-direction: column;
   gap: 10px;
}

.rk-cart-item{
   display: flex;
   align-items: center;
   gap: 14px;

   padding: 12px;

   border: 1px solid rgba(255,255,255,.04);
   border-radius: 12px;

   background: rgba(255,255,255,.02);
}

.rk-cart-image{
   flex-shrink: 0;
}

.rk-cart-image img{
   width: 54px;
   height: 54px;
   object-fit: cover;

   border-radius: 10px;
}

.rk-cart-content{
   flex: 1;
   min-width: 0;
}

.rk-cart-content h3{
   margin-bottom: 4px;

   font-size: 14px;
   font-weight: 500;
   line-height: 1.3;
}

.rk-cart-content h3 a{
   color: #FFF5E2;
}

.rk-cart-price{
   color: rgba(255,245,226,.5);

   font-size: 12px;
}

.rk-cart-remove{
   color: rgba(255,210,210,.64);

   font-size: 12px;
   white-space: nowrap;
}

.rk-cart-empty{
   padding: 28px 10px;

   text-align: center;
}

.rk-cart-empty p{
   color: rgba(255,245,226,.54);

   font-size: 14px;
}

.rk-cart-footer{
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 20px;
}

.rk-cart-back{
   color: rgba(255,245,226,.68);

   font-size: 13px;
}

.rk-cart-checkout{
   display: inline-flex;
   align-items: center;
   justify-content: center;

   height: 46px;
   padding: 0 22px;

   border-radius: 999px;

   background:
      linear-gradient(
         135deg,
         #D7BC84 0%,
         #F2E3C2 100%
      );

   color: #1B1411;

   font-family: var(--font-body);
   font-weight: 500;
   font-size: 13px;

   box-shadow:
      0 10px 24px rgba(215,188,132,.18);
}

@media screen and (max-width: 767px){

   .rk-cart-top,
   .rk-cart-footer,
   .rk-cart-item{
      flex-direction: column;
      align-items: flex-start;
   }

}


/* WOOCOMMERCE CHECKOUT
   ----------------------------- */

.woocommerce-checkout h3{
   font-family: var(--font-cinzel);
   font-size: 1.5rem;
   color: var(--gold);
}
.woocommerce-checkout .woocommerce{
   display: grid;
   grid-template-columns: 1fr;
   gap: 32px;
   align-items: start;
   padding: 0;
}

.woocommerce-checkout .col2-set{
   width: 100%;
   margin: 0;
}

.woocommerce-checkout .col2-set::before,
.woocommerce-checkout .col2-set::after{
   content: none !important;
   display: none !important;
}

.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2{
   width: 100% !important;
   float: none !important;
}

.woocommerce-checkout .col-2{
   display: none;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review{
   position: sticky;
   top: 24px;
}



@media screen and (max-width: 991px){

   .woocommerce-checkout .woocommerce{
      grid-template-columns: 1fr;
   }

   .woocommerce-checkout #order_review_heading,
   .woocommerce-checkout #order_review{
      position: relative;
      top: auto;
   }

}



/* LOGIN
   ----------------------------- */

.auth-page{
   position: relative;

   padding: 3rem 0 6rem;

   overflow: hidden;
}

.auth-page .c-wrap{
   display: flex;
   justify-content: center;
}

.auth-wrap{
   width: 100%;
   max-width: 39.375rem;
}

.auth-logo{
   display: flex;
   justify-content: center;

   margin-bottom: 1.75rem;
}

.auth-logo img{
   width: 13.75rem;
   height: auto;
}

.auth-intro{
   margin-bottom: 1.25rem;
}

.auth-intro .eyebrow{
   display: inline-block;

   margin-bottom: .55rem;

   color: #C5A059;

   font-size: 0.625rem;
   font-weight: 500;
   letter-spacing: .18em;
   text-transform: uppercase;
}

.auth-intro h1{
   font-family: var(--font-cinzel);
   margin-bottom: .7rem;

   color: #E8D4A8;

   font-size: 2.21rem;
   font-weight: 400;
   line-height: .92;
}

.auth-intro p{
   color: #b5a896;

   font-size: .8125rem;
   line-height: 1.55;
}

.auth-panel{
   padding: 1.6rem;

   border: 1px solid rgba(197,160,89,.12);
   border-radius: .9rem;

   background: #1a0f12;

   box-shadow:
      0 0 0 1px rgba(255,255,255,.015) inset,
      0 1rem 2rem rgba(0,0,0,.12);
}

.auth-error{
   margin-bottom: .85rem;
   padding: .75rem .85rem;

   border: 1px solid rgba(255,120,120,.12);
   border-radius: .7rem;

   background: rgba(255,120,120,.05);

   color: #FFD3D3;

   font-size: .75rem;
   line-height: 1.45;
}

.auth-form .fields{
   display: flex;
   flex-direction: column;
   gap: .85rem;
}

.auth-form .field{
   display: flex;
   flex-direction: column;
   gap: .45rem;
}

.auth-form .field label{
   color: #C5A059cc;

   font-size: 0.625rem;
   font-weight: 600;
   letter-spacing: .16em;
   text-transform: uppercase;
}

.auth-form .field input{
   width: 100%;
   height: 2.5rem;
   padding: 0 .9rem;

   border: 1px solid rgba(197,160,89,.1);
   border-radius: .65rem;

   background: rgba(0,0,0,.2);

   color: #FFF5E2;

   font-size: .8125rem;

   transition:
      border-color .3s ease,
      background .3s ease,
      box-shadow .3s ease;
}

.auth-form .field input::placeholder{
   color: rgba(255,245,226,.24);
}

.auth-form .field input:focus{
   outline: none;

   border-color: rgba(197,160,89,.28);

   background: rgba(0,0,0,.28);

   box-shadow:
      0 0 0 .2rem rgba(197,160,89,.04);
}

.auth-form .actions{
   margin-top: 1rem;
}

.auth-form button{
   cursor: pointer;
   width: 100%;
   height: 2.58rem;

   border: none;
   border-radius: 999px;

   background:
      linear-gradient(
         135deg,
         #D7BC84 0%,
         #F2E3C2 100%
      );

   color: #1B1411;

   font-size: .8125rem;
   font-weight: 600;

   box-shadow:
      0 .6rem 1.4rem rgba(215,188,132,.14);

   transition:
      transform .3s ease,
      box-shadow .3s ease;
}

.auth-form button:hover{
   transform: translateY(-1px);

   box-shadow:
      0 .8rem 1.6rem rgba(215,188,132,.18);
}

.auth-demo{
   margin-top: 2.2rem;
}

.auth-demo-header{
   margin-bottom: .9rem;

   text-align: center;
}

.auth-demo-header .eyebrow{
   display: inline-block;

   margin-bottom: .45rem;

   color: #C5A059cc;

   font-size: 0.625rem;
   font-weight: 600;
   letter-spacing: .18em;
   text-transform: uppercase;
}

.auth-demo-header p{
   color: 13.125px;

   font-size: .75rem;
}

.auth-demo-items{
   display: flex;
   flex-direction: column;
   gap: .7rem;
}

.auth-demo-item{
   display: flex;
   align-items: center;
   gap: .9rem;

   padding: .95rem 1rem;

   border: 1px solid rgba(197,160,89,.1);
   border-radius: .9rem;

   background: #1a0f12;

   transition:
      border-color .3s ease,
      transform .3s ease;
}

.auth-demo-item:hover{
   transform: translateY(-1px);

   border-color: rgba(197,160,89,.2);
}

.auth-demo-icon{
   display: flex;
   align-items: center;
   justify-content: center;

   width: 2rem;
   height: 2rem;

   border-radius: 999px;

   background: rgba(197,160,89,.08);

   color: #F4E2BE;

   font-size: .75rem;
   font-weight: 600;

   flex-shrink: 0;
}

.auth-demo-content{
   display: flex;
   flex-direction: column;
   gap: .15rem;
}

.auth-demo-content h3{
   color: #FFF5E2;

   font-size: .9rem;
   font-weight: 500;
}

.auth-demo-content .email{
   color: rgba(255,245,226,.42);

   font-size: .7rem;
}

.auth-demo-content .status{
   color: rgba(255,245,226,.58);

   font-size: .72rem;
}

.auth-links{
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 1rem;

   margin-top: 1rem;
}

.auth-links a{
   color: rgba(255,245,226,.56);

   font-size: .75rem;

   transition: color .3s ease;
}

.auth-links a:hover{
   color: #F4E2BE;
}

.is-interim-login{
   padding: 2rem;
   background: #000;
}

.is-interim-login .auth-logo,
.is-interim-login .auth-links,
.is-interim-login .auth-demo{
   display: none;
}

@media screen and (max-width: 767px){

   .auth-page{
      padding: 4rem 0;
   }

   .auth-intro h1{
      font-size: 2rem;
   }

   .auth-links{
      flex-direction: column;
      align-items: flex-start;
   }

}




/* WOOCOMMERCE ORDER REVIEW
   ----------------------------- */

#order_review_heading{
   margin-top: 3rem;
}

.woocommerce-checkout-review-order-table{
   width: 100%;

   border: 1px solid rgba(129,110,153,.16);
   border-radius: 15px;

   border-collapse: separate;
   border-spacing: 0;

   overflow: hidden;

   background: rgba(129,110,153,.08);

   backdrop-filter: blur(14px);

   box-shadow:
      0 0 0 1px rgba(255,255,255,.015) inset,
      0 24px 50px rgba(0,0,0,.16);
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
   padding: 16px 20px;
   border: none;
}

.woocommerce-checkout-review-order-table thead{
   display: none;
}

.woocommerce-checkout-review-order-table tbody td{
   padding-top: 18px;
   padding-bottom: 18px;

   font-size: 14px;
   color: rgba(255,245,226,.74);
}

.woocommerce-checkout-review-order-table .product-name{
   color: #FFF5E2;
   font-weight: 500;
}

.woocommerce-checkout-review-order-table .product-total{
   text-align: right;

   color: #D9C8F0;
   font-weight: 600;
   white-space: nowrap;
}

.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout-review-order-table tfoot td{
   padding-top: 10px;
   padding-bottom: 10px;

   font-size: 13px;

   background: rgba(255,255,255,.015);
}

.woocommerce-checkout-review-order-table tfoot th{
   color: rgba(255,245,226,.5);
   font-weight: 500;
}

.woocommerce-checkout-review-order-table tfoot td{
   text-align: right;

   color: #FFF5E2;
   font-weight: 500;
}

.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td{
   padding-top: 18px;

   background: rgba(129,110,153,.14);

   font-size: 15px;
}

.woocommerce-checkout-review-order-table .order-total td strong{
   color: #E9D9FF;
   font-weight: 600;
}


/* WOOCOMMERCE FORM
   ----------------------------- */

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .form-row .select2-container .select2-selection{

   padding: 12px 16px;

   border: 1px solid rgba(197,160,89,.14);
   border-radius: 8px;

   background: rgba(255,255,255,.025);

   color: #FFF5E2;

   font-size: 14px;
   font-family: var(--font-ui);
   font-weight: 400;
   line-height: 1.4;

   box-shadow:
      0 0 0 1px rgba(255,255,255,.015) inset;

   transition:
      border-color .3s ease,
      background .3s ease,
      box-shadow .3s ease;

}

.woocommerce form .form-row textarea{
   min-height: 140px;
   resize: vertical;
}

.woocommerce form .form-row input.input-text::placeholder,
.woocommerce form .form-row textarea::placeholder{
   color: rgba(255,245,226,.34);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{

   outline: none;

   border-color: rgba(197,160,89,.4);

   background: rgba(255,255,255,.04);

   box-shadow:
      0 0 0 4px rgba(197,160,89,.05);

}


/* WOOCOMMERCE BUTTONS
   ----------------------------- */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button,
.woocommerce .added_to_cart,
.woocommerce-account .addresses .title .edit,
.woocommerce-account .woocommerce-Address-title .edit{

   display: inline-flex;
   align-items: center;
   justify-content: center;

   padding: 10px 18px;

   border: 1px solid rgba(197,160,89,.85);
   border-radius: 999px;

   background: linear-gradient(
      135deg,
      #C5A059 0%,
      #E8D4A8 55%,
      #FFF5E2 100%
   );

   color: var(--dark-grey) !important;

   font-size: 14px;
   font-family: var(--font-body);
   font-weight: 500;
   line-height: 1;

   box-shadow: 0 4px 22px -8px rgba(197,160,89,0.65);
   text-transform: none;

   letter-spacing: 0;

   transition:
      transform 0s ease,
      box-shadow .3s ease,
      background .3s ease;

}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .button:hover,
.woocommerce .added_to_cart:hover,
.woocommerce-account .addresses .title .edit:hover,
.woocommerce-account .woocommerce-Address-title .edit:hover{

   background: linear-gradient(
      135deg,
      #D6B36B 0%,
      #F3E2BA 55%,
      #FFFFFF 100%
   );

   transform: scale(1.03);

   box-shadow: 0 8px 32px -6px rgba(232,212,168,0.5);

   color: var(--dark-grey);

}


/* WOOCOMMERCE MESSAGES
   ----------------------------- */

.woocommerce-message,
.woocommerce-error,
.woocommerce-info,
.wc-block-components-notice-banner {

   position: relative;

   margin-bottom: 1rem;
   padding: 1rem 1.4rem;

   border: 1px solid rgba(197,160,89,.25);
   border-radius: 15px;

   background:
      linear-gradient(
         135deg,
         rgba(197,160,89,.08) 0%,
         rgba(255,245,226,.03) 100%
      );

   backdrop-filter: blur(1rem);

   box-shadow:
      0 1rem 3rem -1.5rem rgba(0,0,0,.45),
      0 0 3rem -2rem rgba(197,160,89,.35);

   color: #FFF5E2;

   font-size: 0.9rem;
   line-height: 1.5;

}

.woocommerce-message a,
.woocommerce-error a,
.woocommerce-info a {

   color: #E8D4A8;
   text-decoration: underline;

}

.woocommerce-error {

   border-color: rgba(140,40,55,.6);

   background:
      linear-gradient(
         135deg,
         rgba(140,40,55,.18) 0%,
         rgba(255,245,226,.03) 100%
      );

}

.woocommerce-message::before,
.woocommerce-error::before,
.woocommerce-info::before {

   display: none;

}



/* WOOCOMMERCE PAGES
   ----------------------------- */

section.shop-page,
section.account-page,
section.checkout-page,
section.cart-page{
   padding: 4rem 0;
}

