/*
Theme Name: GP
Theme URI: https://olliewp.com
Description: A child theme for Ollie.
Author: Kalle Kemilä
Author URI: https://olliewp.com
Template:     ollie
Version: 1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         blog, portfolio, entertainment, grid-layout, one-column, two-columns, three-columns, four-columns, block-patterns, block-styles, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, rtl-language-support, style-variations, template-editing, theme-options, translation-ready, wide-blocks
Text Domain: gp-theme
*/

.logo {
    filter:blur(1px);
   } 

   ::selection {
  background: var(--wp--preset--color--primary-alt); /* WebKit/Blink Browsers */
  color:var(--wp--preset--color--main);
}
::-moz-selection {
    color:var(--wp--preset--color--main);
  background: var(--wp--preset--color--primary-alt); /* Gecko Browsers */
}

a:-webkit-any-link {
    text-decoration: none;
}
.entry-content a {
    color: var(--wp--preset--color--primary-alt);
}
.entry-content a:hover {
    filter:blur(1px);
}

.wc-block-mini-cart__button, :where(.wp-block-woocommerce-customer-account .wc-block-customer-account__link), :where(.wp-block-woocommerce-customer-account.wc-block-customer-account--has-dropdown .wc-block-customer-account__toggle) {
padding: 0;
}


body:not(.wp-admin):not(.editor-styles-wrapper) .event-list .event:hover * {
    border-color:var(--wp--preset--color--primary-alt) !important;
    filter: blur(.5px);
    cursor: pointer;
}

h1, h2{
    font-stretch: 75%;
    font-variation-settings: 'opsz' 96;
}
.wp-block-navigation-item__content:before {
    content: "[";
    display: inline-block;
    visibility:hidden;
}
.wp-block-navigation-item__content:after {
    content: "]";
    display: inline-block;
    visibility:hidden;
}
.wp-block-navigation-item__content[aria-current="page"]:before, .wp-block-navigation-item__content:hover:before, .wp-block-navigation-item__content[aria-current="page"]:after, .wp-block-navigation-item__content:hover:after {
        visibility:visible;
}

.wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container .current-menu-item > a, .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container .has-child button:hover, :root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover) {
    text-decoration: none;
}

.grain-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: unset;
  background: url('grain.gif');
  background-size: 1000px !important;
  opacity: 0.06;
  mix-blend-mode: exclusion;
  pointer-events: none;
  z-index: 999;
}

.ticket-link .value{
     height: 100%;
}
.ticket-link .value a{
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: var(--wp--preset--spacing--small);
    text-decoration: none;
}

.ticket-link .value a:hover{
    filter:blur(1px);
}

.description .value > :first-child {
    margin-block-start: 0;
}

.wc-block-mini-cart {
   margin-left:8px !important;
}

/* Headerin tyhjä alue päästää klikkaukset läpi sisältöön */
.site-header {
  pointer-events: none;
}

/* Headerin omat linkit, valikot ja painikkeet pysyvät klikattavina */
.site-header a,
.site-header button,
.site-header input,
.site-header .wp-block-navigation,
.site-header .wp-block-navigation__responsive-container {
  pointer-events: auto;
}

:where(.wc-block-product-gallery-dialog) {
    background-color: var(--wp--preset--color--main, #000);
    z-index: 1000;
}
:where(.wc-block-product-gallery-dialog__close-button) {
    fill: var(--wp--preset--color--base, #000);
}

  .event-list, .main-content {
        margin-top:-200px !important;
    }

    .tuotekortti:hover {
        filter:blur(.5px)
    }

:where(.wc-block-product-gallery-large-image) :where(.wc-block-product-gallery-large-image__wrapper) {
    aspect-ratio:unset;

}
:where(.wc-block-product-gallery-large-image) .wc-block-components-product-image.wc-block-components-product-image.wc-block-components-product-image--aspect-ratio-auto img, :where(.wc-block-product-gallery-large-image) .wc-block-components-product-image.wc-block-components-product-image.wc-block-components-product-image--aspect-ratio-auto video {
    object-fit: cover !important;
}
.add_to_cart_button.disabled {
    background: var(--wp--preset--color--secondary);
    color:var(--wp--preset--color--main);
    opacity:1;
}
.add_to_cart_button {
    background: var(--wp--preset--color--base);
    color:var(--wp--preset--color--primary);
}

.add_to_cart_button:hover {
    filter: blur(.5px);
}

:where(.wc-block-add-to-cart-with-options__quantity-selector) {
    border: 0;
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button, .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled, .woocommerce .quantity .qty, .wc-block-product-gallery-thumbnails__thumbnail img, :where(.wc-block-next-previous-buttons__button), .editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img, table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img, .wc-block-components-order-summary .wc-block-components-order-summary-item__image>img {
    border-radius: 0px !important;
}
.wc-block-next-previous-buttons button {
    background: #ffffff75 !important;
}
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover {
    background: var(--wp--preset--color--secondary) !important;
}
.wc-block-product-filter-chips__item {
    border-radius: 0px;
    text-transform: uppercase;
}
:where(.wp-block-woocommerce-product-filter-chips) {
    font-size: var(--wp--preset--font-size--small);
}
.woocommerce .wc-block-components-product-price bdi {
    font-weight: unset !important;
}
.wc-block-mini-cart__footer {
    background: unset !important;
}
h2.wc-block-mini-cart__title, .wc-block-components-title.wc-block-components-title {
    text-transform: uppercase;
}

.wc-block-checkout__terms, .wc-blocks-components-select .wc-blocks-components-select__select {
    background:unset !important;
}
:root :where(.wp-element-button, .wp-block-button__link) {
    border-radius: 0px;
    border: 1px solid var(--wp--preset--color--base);
}
.wc-block-components-form .wc-block-components-text-input input[type=email], .wc-block-components-form .wc-block-components-text-input input[type=number], .wc-block-components-form .wc-block-components-text-input input[type=password], .wc-block-components-form .wc-block-components-text-input input[type=tel], .wc-block-components-form .wc-block-components-text-input input[type=text], .wc-block-components-form .wc-block-components-text-input input[type=url], .wc-block-components-text-input input[type=email], .wc-block-components-text-input input[type=number], .wc-block-components-text-input input[type=password], .wc-block-components-text-input input[type=tel], .wc-block-components-text-input input[type=text], .wc-block-components-text-input input[type=url], .wc-blocks-components-select .wc-blocks-components-select__select, .wc-block-checkout__add-note .wc-block-components-textarea {
    border-radius: 5px !important;
}
.stripes {
    background: repeating-linear-gradient(
        45deg,
        var(--wp--preset--color--secondary),
        var(--wp--preset--color--secondary) 1px,
        transparent 2px,
        transparent 17px
    );
    height: 100%;
}

.wp-block-table table {
    background: unset;
    border-radius: 0;
    border: unset;
    font-size: unset;
}
.size-chart__content .wp-block-table th, .size-chart__content .wp-block-table tfoot {
    background-color: unset;}
.size-chart__content table tr:last-of-type td {
    border-bottom: 0;
}
.size-chart__content table tr:first-of-type{
    text-transform: uppercase;
}
.size-chart__content table tr:hover {
    background-color: rgba(255, 255, 255, 0.1);
}
.size-chart__content .wp-block-table {
    margin-bottom: 0;
}
.size-chart__content { overflow-x: auto; }
.size-chart table { min-width: 480px; }

.skull:hover {
  animation: tilt-n-move-shaking 0.08s infinite;
}

@keyframes tilt-n-move-shaking {
  0% { transform: translate(0, 0) rotate(0deg) scale(1.5); }
  25% { transform: translate(1px, 2px) rotate(5deg) scale(1.5); }
  50% { transform: translate(0, 0) rotate(0deg) scale(1.5); }
  75% { transform: translate(-1px, 1px) rotate(-2deg) scale(1.5); }
  100% { transform: translate(0, 0) rotate(0deg) scale(1.5); }
}

.single-product .wc-block-product-filter-chips__item.is-out-of-stock {
    position: relative;
    opacity: .4;
    cursor: not-allowed;
}

.wc-block-product-filter-chips__item {
    border: 1px solid currentColor;
}

.single-product .wc-block-product-filter-chips__item.is-out-of-stock::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(to top right, transparent calc(50% - 1px), currentColor calc(50% - 1px), currentColor calc(50% + 1px), transparent calc(50% + 1px)),
        linear-gradient(to top left,  transparent calc(50% - 1px), currentColor calc(50% - 1px), currentColor calc(50% + 1px), transparent calc(50% + 1px));
}

/* Tuotegallerian lightbox – core-lightboxin tyyliin.
   Animaatiot hoitaa assets/js/gallery-lightbox.js. */
body .wc-block-product-gallery-dialog {
	background: rgba(14, 14, 14, .92); /* ei !important, jotta JS voi animoida */
	backdrop-filter: blur(6px);
	padding: 0 !important;
	border: 0;
	width: 100vw; height: 100vh;
	max-width: none; max-height: none;
	cursor: zoom-out;
}

.wc-block-product-gallery-dialog__header {
	position: fixed !important; top: 0; right: 0; left: auto;
	background: none !important; padding: 16px; z-index: 2;
}
.wc-block-product-gallery-dialog__close-button {
	width: 44px; height: 44px; border-radius: 50%;
	background: rgba(255, 255, 255, .08) !important;
	color: #fff; transition: background .2s;
	cursor: pointer;
}
.wc-block-product-gallery-dialog__close-button:hover { background: rgba(255, 255, 255, .18) !important; }
.wc-block-product-gallery-dialog__close-button svg { fill: currentColor; }

.wc-block-product-gallery-dialog__content {
	display: block !important; height: 100vh;
	overflow-y: auto; scrollbar-width: none;
	scroll-snap-type: y mandatory;
	padding: 0 !important; gap: 0 !important;
	background: none !important;
}
.wc-block-product-gallery-dialog__content img {
	display: block; margin: 6vh auto !important;
	width: auto !important; height: auto !important;
	max-width: min(92vw, 1400px) !important; max-height: 88vh !important;
	object-fit: contain; scroll-snap-align: center;
	border-radius: 4px; box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
	transform-origin: center;
}

.wc-block-product-gallery-dialog__close-button svg {
	margin-top:6px;
}

.wc-block-woocommerce-product-gallery-large-image__image--full-screen-on-click { cursor: zoom-in; }

.wca-blocks #woo-carrier-agents-container .woo-carrier-agent:hover, .wca-blocks #woo-carrier-agents-container .woo-carrier-agent.active  {
background: var(--wp--preset--color--border-dark) !important;
}
#woo-carrier-agents .woo-carrier-agent, #woo-carrier-agents-container {
border-color: var(--wp--preset--color--border-dark) !important;
}
#woo-carrier-agents .woo-carrier-agent .woo-carrier-agent-info .woo-carrier-agent-address {
color: var(--wp--preset--color--border-light) !important;
}
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
box-shadow: inset 0 0 0 2px var(--wp--preset--color--border-dark) !important;
background: var(--wp--preset--color--border-dark) !important;

}
.wc-block-components-radio-control--highlight-checked:after {
border-color: color-mix(in srgb, var(--wp--preset--color--border-dark) 100%, var(--wp--preset--color--border-dark) 40%) !important;
}


@media (max-width: 768px) {
    .event-list, .main-content {
        margin-top:-200px !important;
    }
        .grain-overlay {
        background-size: 1000px !important;
}
.wc-block-mini-cart {
   margin-left:0 !important;
}
.size-chart__content table tr:first-of-type{
    font-size: var(--wp--preset--font-size--x-small);
}

}




 