/*
	Theme Name:   Twenty Twenty Five
	Theme URI:    https://www.womens10k.club
	Author:       hello@stefanushosea.com
	Template:     w10k
	Version:      22.11.2025
*/

/* Heads Up */
[action="/?status=sold-out"] button{
	user-select: none;
	pointer-events: none;
	filter: grayscale(1) brightness(0.5);
	-webkit-filter: grayscale(1) brightness(0.5);
}

/* Global */
html {
    text-rendering: optimizeLegibility !important;
    -webkit-font-smoothing: antialiased !important;
}
*{
	scroll-behavior: smooth;
	transition: all .5s ease;
}
body {
    letter-spacing: -.1px !important;
    cursor: url('/repository/cursor.png'), auto !important;
}
a, li, button, input, [type="submit"]{
    cursor: url('/repository/cursor-a.png'), pointer !important;
}
::selection{
	color: #ff4c9c;
	background: transparent
}
::placeholder{
	color: #fff;
	opacity: .5;
}
option{
    color: #000 !important;
}
img{
    user-drag: none; user-select: none;-moz-user-select: none;-webkit-user-drag: none;-webkit-user-select: none;-ms-user-select: none;
}
body{
    line-height: 1.75;
}
.nm-page-load-overlay{
	background: rgba(0,0,0,.85);
	backdrop-filter: blur(5px);
}
.nm-row{
    display: flex;
    align-items: center;
}
.nm-page-wrap{
    background-image: linear-gradient(transparent, rgba(255, 255, 255, .1));
}
.centered{
    text-align: center;
}

/* Separator */
.nm-login-form-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 19px 0;
}

.nm-login-form-divider::before,
.nm-login-form-divider::after {
    position: inherit;
    top: auto;
    content: "";
    flex: 1;
    height: 1px;
    background-color: transparent;
}

.nm-login-form-divider::before{
    background-image: linear-gradient(90deg,transparent,#fff);
}
.nm-login-form-divider::after{
    background-image: linear-gradient(90deg,#fff,transparent);
}

.nm-login-form-divider span {
    margin: 0 12px;
    padding: 0 12px;
    font-size: 16px;
    line-height: 1;
    color: #fff;
    text-transform: lowercase;
    background: transparent;
}

/* Page */
.nm-page-default.nm-row,
.nm-single-product-showcase{
    padding: 30px 0 60px;
}
.nm-row.page-content{
    max-width: 690px;
    margin: auto;
}
.policy{
    text-align: justify
}
.policy h1{
    text-align: center;
    margin-bottom: 1em;
}
.policy h3{
    margin-top: 1.5em;
    border-top: solid 1px;
    padding-top: 1em;
    margin-bottom: 20px;
    font-size: 20px;
}
body .wpb_text_column p{
    line-height: 1.75
}
body .wpb_text_column p+ul{
    margin-top: -10px;
}
body .wpb_text_column ul {
    padding-left: 12px;
    margin: 0;
    list-style: disc inside;
    margin-bottom: 20px;
}
body .wpb_text_column ul li {
    padding-left: 10px;
    margin-bottom: 5px;
}

/* Navigation */
.w10k-menu nav {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 1em;
    scrollbar-width: none;
    -ms-overflow-style: none;
    white-space: nowrap;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 1em 0;
}
.w10k-menu.nm-right-menu-wrap nav {
    justify-content: flex-end;
}
@media (min-width: 768px) {
    .nm-main-menu-wrap,.nm-right-menu-wrap {
        padding: 0;
    }
}
.w10k-menu nav a{
    padding: .45em 1.5em;
    background-color: #ff4c9c;
    background-position: center;
    color: #fff;
    border: solid 3.5px #ff4c9c;
    text-decoration: none;
    border-radius: 999px;
    font-size: 1.1em;
    font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.5px;
    text-shadow: 0px 2px 6px #d5002d;
    box-shadow: inset 0px 0px 20px #d5002d90;
    transition: all 0.3s cubic-bezier(.4,0,.2,1);
}
.w10k-menu nav a:nth-child(1) {
    transform: rotate(2deg);
}
.w10k-menu nav a:nth-child(2) {
    transform: rotate(-1deg);
}
.w10k-menu nav a:nth-child(3) {
    transform: rotate(1deg);
}
.w10k-menu nav a:nth-child(4) {
    transform: rotate(-1deg);
}
.w10k-menu nav a:nth-child(5) {
    transform: rotate(2deg);
}
.w10k-menu nav a:nth-child(6) {
    transform: rotate(-1deg);
}
.w10k-menu nav a:nth-child(7) {
    transform: rotate(1deg);
}

/* Individual wiggle animations for each rotation */
@keyframes nav-wiggle-1 { /* rotate(2deg) */
    0%, 100% { transform: rotate(2deg) translateX(0); }
    50% { transform: rotate(2deg) translateX(5px); }
}
@keyframes nav-wiggle-2 { /* rotate(-1deg) */
    0%, 100% { transform: rotate(-1deg) translateX(0); }
    50% { transform: rotate(-1deg) translateX(5px); }
}
@keyframes nav-wiggle-3 { /* rotate(1deg) */
    0%, 100% { transform: rotate(1deg) translateX(0); }
    50% { transform: rotate(1deg) translateX(5px); }
}

/* Individual rotate for each nav item */
.w10k-menu nav a:nth-child(1) { transform: rotate(2deg); }
.w10k-menu nav a:nth-child(2) { transform: rotate(-1deg); }
.w10k-menu nav a:nth-child(3) { transform: rotate(1deg); }
.w10k-menu nav a:nth-child(4) { transform: rotate(-1deg); }
.w10k-menu nav a:nth-child(5) { transform: rotate(2deg); }
.w10k-menu nav a:nth-child(6) { transform: rotate(-1deg); }
.w10k-menu nav a:nth-child(7) { transform: rotate(1deg); }

/* Wiggle keyframes for each rotation */
@keyframes nav-wiggle-1 { 0%,100%{transform:rotate(2deg) translateX(0);} 50%{transform:rotate(2deg) translateX(2.5px);} }
@keyframes nav-wiggle-2 { 0%,100%{transform:rotate(-1deg) translateX(0);} 50%{transform:rotate(-1deg) translateX(-2.5px);} }
@keyframes nav-wiggle-3 { 0%,100%{transform:rotate(1deg) translateX(0);} 50%{transform:rotate(1deg) translateX(2.5px);} }

/* Wiggle animation for nav items when nav is hovered, except the hovered item */
header:hover .w10k-menu nav a:nth-child(1):not(:hover) { animation: nav-wiggle-1 0.7s cubic-bezier(.4,0,.2,1) infinite; animation-delay: 0s; }
header:hover .w10k-menu nav a:nth-child(2):not(:hover) { animation: nav-wiggle-2 0.7s cubic-bezier(.4,0,.2,1) infinite; animation-delay: 0.1s; }
header:hover .w10k-menu nav a:nth-child(3):not(:hover) { animation: nav-wiggle-3 0.7s cubic-bezier(.4,0,.2,1) infinite; animation-delay: 0.2s; }
header:hover .w10k-menu nav a:nth-child(4):not(:hover) { animation: nav-wiggle-2 0.7s cubic-bezier(.4,0,.2,1) infinite; animation-delay: 0.3s; }
header:hover .w10k-menu nav a:nth-child(5):not(:hover) { animation: nav-wiggle-1 0.7s cubic-bezier(.4,0,.2,1) infinite; animation-delay: 0.4s; }
header:hover .w10k-menu nav a:nth-child(6):not(:hover) { animation: nav-wiggle-2 0.7s cubic-bezier(.4,0,.2,1) infinite; animation-delay: 0.5s; }
header:hover .w10k-menu nav a:nth-child(7):not(:hover) { animation: nav-wiggle-3 0.7s cubic-bezier(.4,0,.2,1) infinite; animation-delay: 0.6s; }

/* On hover, scale and rotate to 0deg, transition smoothly */
.w10k-menu nav a:hover {
    scale:.95;
    background-size: 300%;
    box-shadow: inset 0px 0px 20px #d5002d;
}

.w10k-menu nav a{
    background-color: #ff4c9c;
    background-image: url('resources/pink.webp');
    background-size: 250%;
    background-repeat: no-repeat;
}

/* Mobile */
.w10k-menu .w10k-icon{
    width: 25px;
    height: 25px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.w10k-icon.home{
    background-image: url('https://w10k.hcstud.io/resources/home.svg');
}
.w10k-icon.perks{
    background-image: url('https://w10k.hcstud.io/resources/orders.svg');
}
.w10k-icon.account{
    background-image: url('https://w10k.hcstud.io/resources/profile.svg');
}
.w10k-icon.signout{
    background-image: url('https://w10k.hcstud.io/resources/signout.svg');
}
.w10k-menu .mobile nav{
    gap: .5em;
    padding: .5em 0;
}
.w10k-menu .mobile nav a{
    padding: 5px;
}

/* Header */
.header-on-scroll .nm-header, .home.header-transparency.header-on-scroll .nm-header {
    background: transparent !important;
    background-image: linear-gradient(black, rgba(0, 0, 0, 0)) !important;
    backdrop-filter: blur(2.5px);
    mask: linear-gradient(black 75%, transparent);
}
.header-border-1 .nm-header{
	border-width: 0px;
}

/* Footer */
body .nm-infload-controls{
    min-height: auto;
    margin: 2em 0;
}
body .nm-infload-controls a, body .nm-infload-controls-button a{
    line-height: 35px;
    border-top: solid 0px transparent !important;
    border-bottom: solid 0px transparent !important;
}
body .nm-footer-bar-inner {
    padding: 1.5em 0;
}
.nm-footer-bar .menu > li {
    font-size: 10px;
    border-width: 0px;
}
.nm-footer-bar-copyright-text{
	font-size: 10px;
	opacity: .5;
}
@media (max-width: 991px) {
    .nm-footer-bar-right .nm-footer-bar-text {
        justify-content: flex-end;
    }
}
@media (max-width: 991px) {
    .nm-footer-bar-right .nm-footer-bar-col-inner {
        margin-top: 0;
    }
}
@media (max-width: 768px){
    footer .nm-row{
        display: grid;
    }
    footer .nm-footer-bar-col-inner,footer .nm-footer-bar-text{
        justify-content: center !important;
    }
    .nm-footer-bar-right{
        order:0
    }
    .nm-footer-bar-left{
        order:1
    }
    .nm-footer-bar-copyright-text {
        text-align: center;
        line-height: 1.5;
        margin-bottom: .5em;
        font-size: 8px;
    }
    .nm-footer-bar .menu > li{
        font-size: 9px;
    }
}
@media (max-width: 550px) {
    footer .nm-footer-bar .menu {
        display: flex;
        justify-content: center;
    }
    .break{
        display: block;
    }
}

/* Mobile */
body .nm-page-overlay{
	background: rgba(0,0,0,.75);
	backdrop-filter: blur(2.5px);
}
body.mobile-menu-open .nm-header {
    background: #000 !important;
}

/* Button */
.widget form > button, input[type=submit], .button{
    transition: all .5s ease;
    font-weight: 500;
    padding: 12px;
}
input[type=submit]:hover, .button:hover {
	opacity: 1;
    transform: scale(.99);
}
.login .button, .register .button, .lost_reset_password .button{
    padding: 12px;
}
.login .button.border, .register .button.border{
    border-width: 1.5px;
    padding: 12px;
}
body #nm-blog-pagination a, #nm-blog-pagination a:hover, body .button.border, .button.border:hover{
	transition: all .5s ease;
}
body #nm-blog-pagination a:not([disabled]):hover, body .button.border:not([disabled]):hover{
	color: #47D1D4;
}

/* Input */
body .woocommerce-form__label, body .form-row label{
    opacity: .5;
    padding: 0;
}
body .form-row:hover label, body .form-row.focused label{
    opacity: 1;
}
input[type="text"], input[type="password"], input[type="number"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="time"], input[type="month"], input[type="week"], input[type="email"], input[type="search"], input[type="tel"], input[type="url"], input.input-text, select, textarea {
    background: transparent;
    color: #fff;
    border-top-width: 0px;
    border-left-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 1px;
	border-color: #fff;
	transition: all .5s ease;
}
input[type="text"]:hover, input[type="password"]:hover, input[type="number"]:hover, input[type="date"]:hover, input[type="datetime"]:hover, input[type="datetime-local"]:hover, input[type="time"]:hover, input[type="month"]:hover, input[type="week"]:hover, input[type="email"]:hover, input[type="search"]:hover, input[type="tel"]:hover, input[type="url"]:hover, input.input-text:hover, select:hover, textarea:hover,
input[type="text"]:focus, input[type="password"]:focus, input[type="number"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="time"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input.input-text:focus, select:focus, textarea:focus{
	border-color: #47D1D4;
}
.nm-myaccount-login input.input-text, .nm-myaccount-lost-reset-password input.input-text{
	color:#fff;
	font-weight: 600;
}
.form-row.woocommerce-invalid .input-text,
.form-row.woocommerce-invalid select {
    border-color: #fc4c02;
}
.nm-validation-inline-notices .form-row.woocommerce-invalid-required-field:after {
    color: #fc4c02;
}
.checkout_coupon .coupon-error-notice {
    color: #fc4c02;
}

/* Success/Notice/Error */
.wc-block-components-notice-banner,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	font-size: 14px;
	line-height: 1.5;
	color: #000;
}
body .nm-shop-notice {
	font-size: 14px;
    padding: 0;
    margin: 0 0 2em;
}

/* Success */
.wc-block-components-notice-banner.is-success,
.woocommerce-message {
	color: #47d1d4;
}

/* Error */
.wc-block-components-notice-banner.is-error,
.woocommerce-error {
    color: #fc4c02;
}
.woocommerce-account.nm-woocommerce-account-login .nm-shop-notice{
    font-size: 14px;
}
.nm-shop-notice > i, .nm-shop-notice span i{
    font-size: 18px;
}

/* Site-wide notice */
.woocommerce-store-notice {
    color: #fff;
	background: transparent;
}

/* Password: Strength indicator */
.woocommerce-password-strength {
	background-color: #fc4c02;
}
.woocommerce-password-strength.strong {
	background-color: #47d1d4;
    color: #000;
}
.woocommerce-password-strength.good {
	background-color: #d8ff64;
    color: #000;
}

/* My Account */
body .wp_google_login {
    margin: 0 auto 2em;
}
body .wp_google_login__button{
    border-radius: 99px;
    border-width: 0px;
    transition: all .3s ease;
}
.wp_google_login__button:hover{
    transform: scale(.99);
}
#customer_login p, #customer_login .bricx-policy{
    line-height: 1.5;
}
#nm-register-wrap .recommend{
    text-align: center;
}
.woocommerce .nm-myaccount-login h1{
    display: block;
    font-size: 24px;
    line-height: 1;
    padding: 0;
    margin: 0 auto .75em;
    text-align: center;
}
.woocommerce .wp_google_login__google-icon {
    background: url('/repository/google.svg') no-repeat;
    width: 20px;
    height: 20px;
}
.nm-woocommerce-account-login .nm-page-wrap{
	background: #000;
    background-image: linear-gradient(transparent, rgba(255, 255, 255, .1));
}
.login .lost_password a{
	color: #ff4c9c
}
.woocommerce form .show-password-input, .woocommerce-page form .show-password-input{
	color: #fff;
	filter: invert(1);
}
.nm-myaccount-login, .nm-myaccount-lost-reset-password, .nm-login-form-divider span{
	color: #fff;
}
.woocommerce-form-login__rememberme input{
  vertical-align: middle;
  margin-right: .5em;
}
.google-account .woocommerce-EditAccountForm fieldset:not([class]){
    display: none;
}

/* Checkout */
body form.woocommerce-checkout{
    padding-top: 0;
    padding-bottom: 0;
}
@media (max-width: 550px) {
    body form.woocommerce-checkout{
        margin-top: 0;
    }
}
#order_review{
	width: 100%;
}
#customer_details {
    float: none;
    width: auto;
    padding-right: 0;
}
#order_review .shop_table tfoot tr th, #order_review .shop_table tfoot tr td{
	background-color: transparent;
}
.bricx-coupon-form-wrapper button:hover{
    transform: translateX(-5px);
    background-color: #d8ff64;
    color: #000;
}
@media (max-width: 768px){
	.bricx-coupon-form-wrapper button:hover{
		transform: translateX(0px) scale(.99);
		background-color: #d8ff64;
		color: #000;
	}
}
#order_review .shop_table tbody .product-name .product-quantity,.product-quantity {
    display: none !important;
}
#order_review .shop_table tbody .nm-checkout-product-thumbnail, #order_review .shop_table tbody .product-name, #order_review .shop_table tbody .product-total {
    vertical-align: middle;
}
#order_review .shop_table tbody .nm-checkout-product-thumbnail {
    width: 75px;
}
#order_review .shop_table tbody .nm-checkout-product-thumbnail img {
    border-radius: 15px;
}
.nm-checkout-ty{
	padding-bottom: 0
}
.nm-checkout-ty-order-details-top{
	background: transparent;
	margin: 2em 0 1em
}
@media (max-width: 1080px) {
    .nm-checkout-ty-order-details-top {
        padding: 20px 0 10px;
	}
}
.woocommerce .woocommerce-thankyou-order-details li strong{
	font-weight: 600;
	font-size: 16px
}
.woocommerce-thankyou-order-details {
    display: flex;
    justify-content: space-between;
}
.woocommerce-thankyou-order-details li{
	margin: 0
}
@media (max-width: 1080px) {
    .woocommerce-thankyou-order-details {
        display: block;
    }
	.woocommerce-thankyou-order-details li{
		display: grid;
		margin-bottom:10px
	}
}
.woocommerce-customer-details{
	display: none !important
}
.woocommerce-table--event-registration th,
.woocommerce-table--event-registration td{
    width: 50%;
    padding: .5em 0;
}
.woocommerce-table--event-registration td{
	padding-left: 2em
}
.woocommerce-table--order-details tbody tr td {
    padding-top: .5em;
    padding-bottom: .5em;
}
.woocommerce-table--order-details tfoot tr:nth-last-child(2) th, .woocommerce-table--order-details tfoot tr:nth-last-child(2) td {
    padding-bottom: .5em;
}
.woocommerce-table--order-details tfoot tr:first-child th, .woocommerce-table--order-details tfoot tr:first-child td {
    padding-top: .5em;
}
.woocommerce-table--order-details tfoot tr:last-child th, .woocommerce-table--order-details tfoot tr:last-child td {
    padding-top: .75em;
    padding-bottom: .75em;
}

/* Pay */
.woocommerce-order-pay .order_details{
	margin-bottom: 2em
}
.woocommerce-order-pay .order_details li{
	text-align: center
}
#pay-button{
	padding: 12px 20px;
}
#pay-button:hover{
	background-color: #ff4c9c
}

/* Midtrans */
.woocommerce #payment .payment_methods {
    border-width: 0px !important;
}

.woocommerce #payment .payment_methods > li .input-radio {
    display: none !important;
}

.woocommerce #payment .payment_methods > li{
	border-left: solid 1px;
	border-right: solid 1px;
    border-top: solid 1px;
	border-bottom: solid 1px !important;
	margin: 1em 0;
    border-radius: 10px;
	padding: 15px 15px;
	text-align: center;
}

.woocommerce #payment .payment_methods > li .payment_box,
.woocommerce #payment .payment_methods > li input:checked ~ .payment_box,
.woocommerce #payment .payment_methods > li.active input:checked ~ .payment_box{
    margin: 1em 0 .5em;
    background: transparent;
	border-width: 0;
    padding: 0;
    display: flex !important;
    align-items: center;
    justify-content: center;
	gap: 5px
}

.woocommerce #payment .payment_methods > li .payment_box div{
	width: 42px;
	height: 25px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: 5px;
}

.woocommerce #payment .payment_methods > li{
    filter: grayscale(1);
}

.woocommerce #payment .payment_methods > li.active,
.woocommerce #payment .payment_methods > li.active label{
    border-color: #d8ff64;
    color: #d8ff64;
    filter: grayscale(0);
}

#order_review #payment .payment_methods > li img {
    display: none;
}

#payment .amex{
	background-image: url('https://by.hosea.id/method/amex.svg');
}
#payment .visa{
	background-image: url('https://by.hosea.id/method/visa.svg');
}
#payment .mastercard{
	background-image: url('https://by.hosea.id/method/mastercard.svg');
}
#payment .jcb{
	background-image: url('https://by.hosea.id/method/jcb.svg');
}
#payment .unionpay{
	background-image: url('https://by.hosea.id/method/unionpay.svg');
}
#payment .qris{
	background-image: url('https://by.hosea.id/method/qris.svg');
}
#payment .dana{
	background-image: url('https://by.hosea.id/method/dana.svg');
}
#payment .gopay{
	background-image: url('https://by.hosea.id/method/gopay.svg');
}
#payment .ovo{
	background-image: url('https://by.hosea.id/method/ovo.svg');
}
#payment .shopee{
	background-image: url('https://by.hosea.id/method/shopeepay.svg');
}
#payment .bca{
	background-image: url('https://by.hosea.id/method/bca.svg');
}
#payment .permata{
	background-image: url('https://by.hosea.id/method/permata.svg');
}
#payment .atm{
	background-image: url('https://by.hosea.id/method/atm.svg');
}

.woocommerce-table--order-details .order-actions-button{
	padding: 7px 14px;
	font-weight: 600
}
.woocommerce-table--order-details .order-actions-button:first-child{
	margin-right: .5em
}
.woocommerce-table--order-details .order-actions-button:hover{
	background-color: #ff4c9c
}
.woocommerce-order h2:not([class]){
	font-size: 1.5em;
    margin: 1em 0 .25em;
}
table.midtrans_payment_info{
	width: 100%
}
table.midtrans_payment_info tr td{
	padding-left: 1em
}
.woocommerce-order-pay #order_review .shop_table tbody .product-name,
.woocommerce-order-pay #order_review .shop_table tbody .product-subtotal{
	font-size: 1.5em;
	font-weight: 600
}
#payment #place_order{
	padding: 14px;
    font-size: 1.1em;
	font-weight: 600
}
.woocommerce-table--order-details .product-name a{
    color: #fff;
    font-weight: 600;
}

/* Shop */
.home #nm-shop{
    min-height: auto !important;
    margin: auto;
    padding: 0;
    background-color: transparent;
}

body .products li.outofstock .nm-shop-loop-thumbnail > .woocommerce-LoopProduct-link:after{
    color: #fff;
    background: rgba(0, 0, 0, .75);
    backdrop-filter: blur(2.5px);
}
body .products li.outofstock .nm-shop-loop-thumbnail > .woocommerce-LoopProduct-link:after{
    padding: 4px 8px;
    font-weight: 600;
}
#nm-shop-browse-wrap{
	min-height: auto
}
.nm-shop-loop-thumbnail {
    background: transparent !important;
    border-radius: 15px;
    transition: all .5s ease;
}
#nm-shop-browse-wrap .nm-shop-loop-product-wrap:hover .nm-shop-loop-thumbnail{
    transform: scale(.98);
}
#nm-shop-browse-wrap .nm-shop-loop-product-wrap:hover .nm-shop-loop-details{
	margin-top: 7px;
}
#nm-shop-browse-wrap .nm-shop-loop-product-wrap:hover .nm-shop-loop-details .woocommerce-loop-product__title a{
	color: #47d1d4
}
.products.grid-list .woocommerce-loop-product__title a{
    color: #d8ff64;
	transition: all .5s ease
}
#nm-shop-products-overlay, #nm-shop {
    background-color: transparent;
}
.product .summary {
    padding-left: 0;
}
.product .summary .stock{
	padding: 5px 12.5px
}
@media(min-width: 1080px) {
    .perks-gallery-col-6 .woocommerce-product-gallery {
        width: 66.66%;
        padding-right: 30px;
    }
	.summary-col-6 .summary {
		padding-left: 15px
	}
/*     .summary-col-6 .summary {
        width: 33.33%;
    } */
}
.product .nm-shop-loop-details{
    font-size: 16px;
}
.product .nm-shop-loop-details h3{
    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;
    color: #d8ff64;
}
.product .summary .product_title {
    font-size: 30px;
    line-height: 1.25;
    color: #fc4c02;
}
.product .summary .button {
    font-size: 14px;
    font-weight: 600;
}
.product .summary .button:hover{
    background-color: #47d1d4;
}
body .product .summary .price .amount{
    color: #fff
}
.products .price{
    font-weight: 500;
    line-height: 1.15;
}
.product .summary .price{
    padding: 10px 0 20px;
    font-weight: 500;
}
.product .nm-shop-loop-details .price del .amount,
.product .summary .price del .amount{
    opacity: .5;
    font-size: 14px;
}
body .has-bg-color .nm-single-product-bg{
    background-color: transparent;
}
.nm-single-product{
    padding-bottom: 0;
}
.product .summary .stock {
    color: #000;
}
.product .summary .stock.in-stock {
    background: #ff4c9c;
}
.product .summary .stock.out-of-stock {
	margin-bottom: 0;
    background: #bbb;
}
.product .summary .stock.available-on-backorder {
    background: #ddd;
}
@media (max-width: 768px){
	.product .nm-shop-loop-details h3{
		font-size:18px
	}
    .product .nm-shop-loop-details,
    .product .nm-shop-loop-details .price del .amount, .product .summary .price del .amount,
    .products .price ins .amount,
    .products .price .amount{
        font-size: 14px;
    }
}
.woocommerce-product-gallery__wrapper a{
	pointer-events: none
}

/* Orders */
.empty-orders p{
    margin-bottom: 1.5em;
}
.empty-orders .button{
    padding: 12px 22px;
}
.shop_table a:not(.button){
    color: #d8ff64;
    font-weight: 600;
}
.shop_table a:not(.button):hover{
    color: #fc4c02;
}
.order-received-icon {
    margin: 0 auto 1em !important;
}
.icon-notice.order-received{
	text-align: center;
}
@media (max-width: 768px){
    .account-orders-table .woocommerce-orders-table__cell-order-actions{
        display: none;
    }
    .icon-notice{
        text-align: center;
    }
}
.empty-content{
    display: grid;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 1em;
}
.icon-notice .w10k-icon,.empty-orders-icon,.empty-content-icon{
    margin: auto;
    width: 75px;
    height: 75px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.empty-orders-icon{
    background-image: url(https://w10k.hcstud.io/resources/characters/5.png);
    background-color: #47d1d4;
}
.empty-content-icon{
    background-image: url(https://w10k.hcstud.io/resources/characters/8.png);
    background-color: #fc4c02;
}
.order-received-icon{
    background-image: url(https://w10k.hcstud.io/resources/characters/2.png);
    background-color: #47d1d4;
}
.empty-content h3{
    color: #ff4c9c;
}
.order-received h3{
	color: #d8ff64
}
body .icon-notice h3{
    font-size: 20px;
}
.centered .button{
    padding: 10px 20px;
}
.nm-order-info{
    background: rgba(255, 255, 255, .1);
    padding: 15px;
    margin: 0 0 3em;
    text-align: center;
}
.woocommerce-OrderUpdates.commentlist li .comment-text, .nm-order-view .commentlist li .comment-text{
    background: rgba(255, 255, 255, .15);
    border-radius: 0 15px 15px 15px;
    padding: 1em;
    border-width: 0px;
}
.woocommerce-OrderUpdates.commentlist li .comment-text .meta, .nm-order-view .commentlist li .comment-text .meta{
    color: #47d1d4;
}
.woocommerce-OrderUpdates.commentlist li .comment-text .description, .nm-order-view .commentlist li .comment-text .description{
    color: #d8ff64;
    font-size: 14px;
}
body .order-again{
	display: none
}

/* Greetings */
.bricx-greetings h1,
.nm-myaccount-login h1{
    display: inline-block;
    text-decoration: none;

    /* Make text transparent so gradient shows */
    color: transparent;

    /* Apply gradient like a texture */
    background: linear-gradient(
        90deg,
        #fc4c02,
        #ff4d9e,
        #ffcc00,
        #d8ff64,
        #47d1d4,
        #d8ff64,
        #ffcc00,
        #ff4d9e,
        #fc4c02
    );

    background-size: 1000% 100%;

    /* Clip gradient to text */
    -webkit-background-clip: text;
            background-clip: text;

    /* Smooth scroll animation */
    animation: textGradient 65s linear infinite;
}

@keyframes textGradient {
    0%   { background-position: 0% 0; }
    100% { background-position: -900% 0; }
}

/* Perks */
@media (max-width:768px){
    .page-title{
        display: none;
    }
    .subheading{
        margin-top: 0 !important;
        text-align: center;
    }
}

/* Perks - Gallery */
.w10k-gallery{
    display: flex;
    flex-direction: column;
}
.w10k-gallery button{
    align-self: center;
}
.page-title+.subheading{
    margin-top: -1em;
}
.page-title, .subheading{
    line-height: 1.5;
}
.subheading a{
    padding-left: .5em;
}
.subheading img{
    max-width: 60px;
}
.gallery-search-wrapper {
    margin-bottom: 2em;
    width: 100%;
}

#gallery-search-input {
    width: 100%;
    padding: 10px 20px;
    font-size: 13px;
    border-radius: 999px;
    border: 2px solid rgba(255,255,255,.25);
    color: #fff;
    outline: none;
    transition: all 0.3s ease;
}

#gallery-search-input::placeholder {
    color: rgba(255,255,255,.5);
}

#gallery-search-input:focus {
    border-color: #fc4c02;
    background: rgba(255,255,255,.075);
}

.no-results-msg {
    text-align: center;
    color: rgba(255,255,255,.5);
    padding: 1em;
    width: 100%;
    display: none;
}
#gallery .perks-gallery {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 2em;
}
@media (max-width:1080px){
    #gallery .perks-gallery{
        grid-template-columns: repeat(4, 1fr);
        gap: 1em;
    }
}
@media (max-width:768px){
    #gallery .perks-gallery{
        grid-template-columns: repeat(3, 1fr);
    }
}
#gallery .perks-gallery > div {
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    color: rgba(255,255,255,.75);
    transition: all 0.1s ease-in-out;
    min-width: 0;
}
#gallery .perks-gallery img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}
#gallery .perks-gallery > div:hover{
    color:#fff;
}
#gallery .perks-gallery > div:hover img{
    filter: brightness(1.1);
    transform: scale(1.015);
}
#gallery .perks-gallery p{
    font-size: .75rem;
    line-height: 1.25;
    margin: .5em 0 0;
}
#gallery .perks-gallery p+p{
    margin:0
}
#gallery .perks-gallery .title{
    font-weight: 700;
}
#gallery .perks-gallery .date{
    font-size: .65rem;
}
.perks-gallery+button{
    margin-top: 2em;
}
#gallery button{
    background:transparent;
    border: solid 2px #fff;
    color: #fff;
    padding: .6em 1.5em .5em;
    border-radius: 999px;
    font-family: inherit;
    font-weight: 600;
    font-size: .85rem;
    letter-spacing: -.05px;
    transition: all 0.3s ease-in-out;
}
#gallery button:hover{
    background-color: #fff;
    color: #000;
    letter-spacing: -.5px;
}
#load-more-gallery{
    margin-top: 2em
}

/* Playlist */
#playlist .playlists {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1em;
    min-width: 0;
    width: 100%;
}
@media (max-width: 1080px){
    #playlist .playlists {
        grid-template-columns: repeat(3, 1fr);
    }
}    
@media (max-width: 768px){
    #playlist .playlists {
        grid-template-columns: repeat(2, 1fr);
    }
}
#playlist .playlists a {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 0;
}
#playlist .playlists img {
    border-radius: 12px;
    width: 100%;
    height: auto;
    display: block;
    max-width: 100%;
    box-shadow: 0px 10px 20px rgba(0,0,0,0);
}
#playlist .playlists a:hover img{
    transform: perspective(500px) rotateX(10deg);
    transform-style: preserve-3d;
    box-shadow: 0px 10px 20px #000;
    filter:brightness(1.1)
}
#playlist p{
    margin-bottom: 2em;
}
#playlist iframe{
    margin-bottom: 1em;
}

/* Results */
.races.tab {
  width: 100%;
  box-sizing: border-box;
}

.races.tab .years {
  display: flex;
  gap: 12px;
  padding: 0 0 1.5em;
  list-style: none;
  align-items: center;
}

.races.tab .years li.active{
    position: relative;
    background: rgba(0,0,0,.25);
    color: #fff;
    z-index: 1;
}

.wp_google_login__button{
    position: relative;
    z-index: 1;
}

/* SMOOTHEST POSSIBLE BORDER ANIMATION */
.races.tab .years li.active::after,
.wp_google_login__button::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 99px;
    padding: 2px;

    /* Create the mask so only the border ring shows */
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    /* The moving strip */
    background: linear-gradient(
        90deg,
        #fc4c02,
        #ff4d9e,
        #ffcc00,
        #d8ff64,
        #47d1d4,
        #d8ff64,
        #ffcc00,
        #ff4d9e,
        #fc4c02
    );

    /* Make the strip VERY wide for ultra-smooth scroll */
    background-size: 1000% 100%;

    animation: stripSlide 50s linear infinite;
    pointer-events: none;
}

@keyframes stripSlide {
    0%   { background-position: 0% 0; }
    100% { background-position: -900% 0; }
}

.races.tab .years li {
    padding: .75em 1.75em .85em;
    flex: 1;
    text-align: center;
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.25;
    cursor: pointer;
    white-space: nowrap;
    border-radius: 99px;
    background: rgba(255,255,255,0);
    color: rgba(255,255,255,.5);
    user-select: none;
    transition: all .5s ease;
}

.races.tab .years li span{
    display: block;
    font-size: .65em;
    font-weight: 600;
}

.races.tab .years li:hover{
    background: rgba(255,255,255,.075);
    color: rgba(255,255,255,.75);
}

.races.tab .year {
  list-style: none;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  min-height: 200px;
}

/* each content panel */
.races.tab .year li {
  box-sizing: border-box;
  overflow: hidden;
  max-height: 0;               /* collapsed */
  opacity: 0;
  padding: 0 0;                /* animate padding so spacing appears smoothly */
  transition: max-height .36s cubic-bezier(.2,.9,.2,1),
              opacity .28s ease,
              padding .2s ease;
}

.races.tab .year li.active {
  max-height: 80vh;          /* must accommodate iframe max height + some breathing room */
  opacity: 1;
}

.races.tab .year li + li {
  margin-top: 0; /* handled by padding on active */
}
.races.tab iframe {
  width: 100%;
  height: 100vh;
  max-height: 100vh;
  border: none;
  display: block;
}

@media (max-width: 768px) {
  .races.tab .years {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }

  .races.tab .years li {
    flex: auto;
  }
}