/* Play Studio 1.1.0: mobiili, valikot, ostotili ja lomakkeiden palaute. */
#tr-play-stage .tr-play-toast:not(.tr-farewell) .tr-solar{color:#fff}
/* Lajittelun yksi yhtenäinen pinta. Alkuperäinen select säilyy lomakkeen arvona. */
#wrapper .shop-page-title form.woocommerce-ordering{position:relative;display:block!important;min-width:0;max-width:100%;width:auto;margin:0!important;padding:0!important;border:0!important;outline:0!important;border-radius:999px!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
#wrapper .shop-page-title form.woocommerce-ordering::before,#wrapper .shop-page-title form.woocommerce-ordering::after{content:none!important;display:none!important}
#wrapper .shop-page-title form.woocommerce-ordering select.orderby{margin:0!important;max-width:100%;min-width:0;height:54px!important;min-height:54px;border:1px solid #466a6640!important;border-radius:999px!important;background-color:#fff!important;box-shadow:none!important;padding:0 42px 0 20px!important;font-size:14px!important;line-height:1.4!important;text-transform:none!important;font-weight:600!important;letter-spacing:0!important}
#wrapper form.woocommerce-ordering.tr-sort-ready select.orderby{position:absolute!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none;clip-path:inset(50%);border:0!important}
#wrapper .tr-sort-button{display:flex!important;align-items:center;gap:12px;min-height:54px;width:100%;max-width:100%;margin:0!important;padding:12px 18px!important;border:1px solid #466a6640!important;border-radius:999px!important;background:#fff!important;box-shadow:0 3px 14px #183a2b09!important;color:#203c33!important;text-align:left;text-transform:none!important;font:600 14px/1.4 Montserrat,Arial,sans-serif;letter-spacing:0!important;white-space:normal;cursor:pointer;transition:border-color 180ms,box-shadow 180ms}
#wrapper .tr-sort-button:hover,#wrapper .tr-sort-button[aria-expanded=true]{border-color:#466a66!important;box-shadow:0 0 0 4px #466a6610!important}
.tr-sort-button>.tr-solar{width:21px;height:21px;color:#466a66}.tr-sort-button>.tr-sort-value{flex:1;min-width:0}.tr-sort-button>.tr-sort-caption{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#466a66}.tr-sort-button>.tr-sort-chevron{width:16px;height:16px;margin-left:auto;transition:transform 180ms}.tr-sort-button[aria-expanded=true]>.tr-sort-chevron{transform:rotate(180deg)}
.tr-sort-list{position:absolute;inset:calc(100% + 8px) 0 auto auto;z-index:1002;min-width:min(280px,calc(100vw - 32px));width:100%;max-width:calc(100vw - 32px);max-height:min(360px,55dvh);overflow:auto;padding:7px!important;margin:0!important;list-style:none!important;border:1px solid #466a6630;border-radius:22px;background:#fff;box-shadow:0 14px 38px #183a2b22;overscroll-behavior:contain;animation:tr-menu-in 180ms ease-out both}
.tr-sort-list[hidden]{display:none!important}.tr-sort-list>[role=option]{display:flex;align-items:center;gap:10px;margin:0!important;padding:12px 13px;min-height:46px;border-radius:15px;font:600 14px/1.4 Montserrat,Arial,sans-serif;color:#203c33;cursor:pointer;outline-offset:-3px}.tr-sort-list>[role=option]:hover,.tr-sort-list>[role=option]:focus{background:#f0f5f2}.tr-sort-list>[aria-selected=true]{background:#e7f0eb;color:#234e40}.tr-sort-list>[aria-disabled=true]{opacity:.45;cursor:not-allowed}.tr-sort-list .tr-solar{margin-left:auto;width:18px;height:18px}
/* Piilota vain katalogin murupolku. */
body.woocommerce-shop .shop-page-title :is(.woocommerce-breadcrumb,.breadcrumbs),body.post-type-archive-product .shop-page-title :is(.woocommerce-breadcrumb,.breadcrumbs),body.tax-product_cat .shop-page-title :is(.woocommerce-breadcrumb,.breadcrumbs),body.tax-product_tag .shop-page-title :is(.woocommerce-breadcrumb,.breadcrumbs){display:none!important}
/* Kuponki: kenttä ja toiminto eivät saa puristaa toisiaan. */
#wrapper .woocommerce-cart-form .coupon,#wrapper .cart-container .coupon{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center;gap:12px!important;width:100%!important;max-width:100%!important;padding:20px!important;border:1px solid #466a6626!important;border-radius:24px!important;background:#f7f6f4!important;box-sizing:border-box}
#wrapper .woocommerce-cart-form .coupon>:is(label,.coupon-label,h3),#wrapper .cart-container .coupon>:is(label,.coupon-label,h3){grid-column:1/-1;margin:0 0 4px!important;font-size:15px!important;line-height:1.4;text-transform:none!important}
#wrapper :is(.woocommerce-cart-form,.cart-container) .coupon input#coupon_code,#wrapper .woocommerce-coupon-visible input#coupon_code{display:block!important;float:none!important;flex:none!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;height:54px!important;padding:0 18px 0 48px!important;border:1px solid #466a6633!important;background-color:#fff!important;border-radius:999px!important;font-size:16px!important;box-sizing:border-box}
#wrapper :is(.woocommerce-cart-form,.cart-container) .coupon button[name=apply_coupon],#wrapper .woocommerce-coupon-visible button[name=apply_coupon]{display:inline-flex!important;align-items:center;justify-content:center;gap:9px;float:none!important;width:auto;max-width:100%;min-height:54px;height:auto!important;margin:0!important;padding:14px 22px!important;font-size:14px!important;line-height:1.4!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important;border-radius:999px!important;background:#466a66!important;color:#fff!important;white-space:normal!important}
#wrapper button[name=apply_coupon]>.tr-solar{margin:0!important;width:20px;height:20px;flex-shrink:0}
#wrapper form.checkout_coupon{border-radius:24px!important;border:1px solid #466a6630!important;padding:20px!important;background:#f7f6f4}
#wrapper form.checkout_coupon .form-row{max-width:100%;min-width:0}#wrapper form.checkout_coupon input#coupon_code{width:100%;height:54px;border-radius:999px;font-size:16px;background-color:#fff}
/* Valikoiden ja ostoskorin pyöristykset. */
#header .nav-dropdown,#header .nav-dropdown:not(.dark),.select2-container .select2-dropdown,.select2-container .select2-results,.aws-search-result,.autocomplete-suggestions{border-radius:22px!important;border-color:#466a6630;box-shadow:0 16px 40px #183a2b1a}
#header .nav-dropdown>li:first-child>a{border-top-left-radius:14px;border-top-right-radius:14px}#header .nav-dropdown>li:last-child>a{border-bottom-left-radius:14px;border-bottom-right-radius:14px}
.select2-container .select2-results{overflow:hidden;box-shadow:none}.select2-results__option{padding:11px 14px!important;min-height:42px;font-size:14px!important;line-height:1.4}.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected]{background:#466a66!important;color:white}.select2-container--default .select2-selection--single{min-height:50px;border:1px solid #466a6635!important;border-radius:18px!important;background:white}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:48px;padding-left:15px}.select2-container--default .select2-selection--single .select2-selection__arrow{top:12px;right:10px}.select2-container--open .select2-dropdown{overflow:hidden;margin-top:7px;border:1px solid #466a6630}
#cart-popup{border-radius:28px!important;background:#fff;overflow:hidden;max-width:100vw}#cart-popup .cart-popup-inner{border-radius:inherit;background:#fff}li.cart-item>ul.nav-dropdown{border-radius:24px!important;overflow:auto;max-height:calc(100dvh - 100px)}
.mfp-content:has(#cart-popup){border-radius:28px!important;margin:12px!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;overscroll-behavior:contain;background:#fff!important;scrollbar-width:thin}
.mfp-content:has(#main-menu){border-radius:26px!important;max-width:calc(100vw - 16px)!important;overflow-x:hidden;overscroll-behavior:contain}
#header i.tr-solar[data-icon-label]:not([data-icon-label="0"])::after{content:attr(data-icon-label)!important;display:block!important;font-size:10px;width:auto;min-width:17px;height:17px;line-height:17px;right:-7px;top:-7px;color:white;background:#466a66;border:2px solid white;box-sizing:content-box}
/* Ostotili: sivuvalikko, sisältökortit ja lomakkeet. */
body.woocommerce-account #main{background:#fafaf8}
body.woocommerce-account .my-account-header{background:transparent;border:0;padding:28px 0 8px}
body.woocommerce-account .my-account-header h1{font-family:Faktum,Montserrat,sans-serif;font-size:clamp(30px,4vw,48px);letter-spacing:-.035em;line-height:1.1;text-transform:none}
body.woocommerce-account .my-account-header small{display:block;margin-top:8px;font:600 12px/1.4 Montserrat,sans-serif;letter-spacing:.04em;color:#466a66;text-transform:none}
body.woocommerce-account .my-account .col-border{border-right:0;padding-right:24px}
body.woocommerce-account .account-user{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding:18px;border:1px solid #466a6620;border-radius:23px;background:white}
body.woocommerce-account .account-user .image{margin:0;flex-shrink:0}body.woocommerce-account .account-user img{border-radius:50%;width:48px;height:48px}body.woocommerce-account .account-user .user-name{font-size:15px;line-height:1.5;font-weight:700;color:#233e34;overflow-wrap:anywhere}body.woocommerce-account .account-user .user-id{display:none}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;flex-direction:column;gap:6px;margin:0!important;padding:8px!important;border:1px solid #466a6620;border-radius:25px;background:white}
body.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0!important;border:0!important;list-style:none}
body.woocommerce-account .woocommerce-MyAccount-navigation li>a{display:flex;gap:11px;align-items:center;min-height:48px;padding:12px 15px!important;border:0!important;border-radius:18px;color:#355047!important;font:600 14px/1.4 Montserrat,sans-serif;text-transform:none;letter-spacing:0;transition:background 160ms,color 160ms}
body.woocommerce-account .woocommerce-MyAccount-navigation li>a::before{display:none!important}body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active>a{background:#e7f0eb;color:#234e40!important}body.woocommerce-account .woocommerce-MyAccount-navigation li>a:hover{background:#f1f5f2}
body.woocommerce-account .woocommerce-MyAccount-content{min-width:0;padding:clamp(20px,3vw,34px);border:1px solid #466a6624;border-radius:28px;background:white;box-shadow:0 4px 22px #183a2b05;font-size:15px;line-height:1.7}
body.woocommerce-account .woocommerce-MyAccount-content :is(h2,h3){font-family:Faktum,Montserrat,sans-serif;letter-spacing:-.025em;color:#233e34;text-transform:none}
body.woocommerce-account :is(.woocommerce-MyAccount-content,.account-container) :is(input.input-text,textarea,select){min-height:50px;border:1px solid #466a6635;border-radius:17px;background:#fff;box-shadow:none;font-size:16px}
body.woocommerce-account .woocommerce-MyAccount-content textarea{padding:14px;min-height:120px}
body.woocommerce-account .woocommerce-MyAccount-content :is(.button,button),body.woocommerce-account .account-container :is(.button,button){border-radius:999px!important;text-transform:none;letter-spacing:0;min-height:46px}
body.woocommerce-account .account-container{max-width:1000px;margin-inline:auto;padding:clamp(20px,4vw,40px);border:1px solid #466a6624;border-radius:28px;background:white}
body.woocommerce-account .woocommerce-address-fields,body.woocommerce-account .woocommerce-Address{padding:18px;border:1px solid #466a6624;border-radius:20px;background:#fafbf9}
body.woocommerce-account .woocommerce-orders-table{width:100%;font-size:14px}body.woocommerce-account .woocommerce-orders-table th{color:#466a66;font-size:12px;letter-spacing:.03em}body.woocommerce-account .woocommerce-orders-table td{padding-block:16px}
.tr-account-table-wrap{max-width:100%;overflow:auto;overscroll-behavior:contain}
/* Huomio kenttään: sivu vierii kentän kohdalle vasta lähetysvirheen jälkeen. */
#wrapper :is(form.checkout,.woocommerce-cart-form,.woocommerce-EditAccountForm,.woocommerce-form-login,.woocommerce-form-register) :is(input,select,textarea,.select2-selection){scroll-margin-block:130px 120px}
#wrapper .tr-field-attention :is(input.input-text,textarea,select,.select2-selection){border-color:#ad4b25!important;box-shadow:0 0 0 4px #ad4b2512!important}
.tr-field-hint{display:block;margin:7px 0 0;font:500 13px/1.45 Montserrat,sans-serif;color:#9b3d21}
.tr-field-land{animation:tr-field-land 650ms ease-out both}
/* Hinta ja leka muodostavat saman paikallisen koordinaatiston. */
.tr-coupon-scene{padding:28px 24px 32px}.tr-coupon-scene small{font-size:14px;letter-spacing:0;text-transform:none}.tr-coupon-price{position:relative;display:inline-block;margin:18px 30px 0}.tr-coupon-scene .tr-before{position:relative;margin:0;font-size:clamp(32px,7vw,44px);line-height:1.3;text-decoration:none;opacity:1;color:#56665d}.tr-coupon-scene .tr-before.tr-struck{text-decoration:line-through;text-decoration-color:#e07f40;opacity:.55}.tr-coupon-price>.tr-hammer{position:absolute;left:calc(100% - 17px);top:-29px;width:64px;height:64px;transform-origin:16.7% 83.3%;color:#e07f40;animation:none}.tr-coupon-scene .tr-roll{margin-top:5px}.tr-coupon-scene .tr-saving{display:none}
@keyframes tr-menu-in{from{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:none}}
@keyframes tr-field-land{0%,100%{outline-color:transparent}35%{outline-color:#ad4b2555}}
@media(max-width:849px){
#header .mobile-nav>li>a:has(>.icon-search),#header .mobile-nav>li>a:has(>.icon-menu),#header .mobile-nav>li>a.header-cart-link{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:48px;padding:8px!important;line-height:1!important}
#header .mobile-nav i:is(.icon-search,.icon-menu,.icon-shopping-cart){display:inline-flex!important;align-items:center;justify-content:center;width:30px!important;height:30px!important;font-size:27px!important;line-height:1!important;color:inherit}
#header .mobile-nav i.tr-solar:is(.icon-search,.icon-menu,.icon-shopping-cart)>svg{display:block;width:30px!important;height:30px!important}
#header .mobile-nav>li{margin-inline:2px!important}#header .mobile-nav .cart-icon{width:30px;height:30px}
#wrapper .shop-page-title form.woocommerce-ordering{width:100%!important;max-width:100%!important}#wrapper .tr-sort-button{font-size:13px;gap:9px;padding:13px 15px!important}.tr-sort-button>.tr-sort-caption{display:none}.tr-sort-list{min-width:0;width:100%;left:0;right:auto}
#wrapper .woocommerce-cart-form .coupon,#wrapper .cart-container .coupon{grid-template-columns:minmax(0,1fr)!important;gap:11px!important;padding:18px!important}
#wrapper :is(.woocommerce-cart-form,.cart-container) .coupon input#coupon_code,#wrapper :is(.woocommerce-cart-form,.cart-container) .coupon button[name=apply_coupon]{grid-column:1;width:100%!important;min-width:0!important;max-width:100%!important}
#wrapper .woocommerce-coupon-visible input#coupon_code,#wrapper .woocommerce-coupon-visible button[name=apply_coupon]{width:100%!important;min-width:0!important;max-width:100%!important;margin:8px 0!important}
#wrapper form.checkout_coupon .form-row{float:none;width:100%;margin:0 0 12px}
body.woocommerce-account .my-account .col-border{padding-right:15px;border:0;margin-bottom:18px}body.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}body.woocommerce-account .woocommerce-MyAccount-navigation li>a{height:100%;font-size:13px;padding:12px 10px!important;gap:8px;overflow-wrap:anywhere}body.woocommerce-account .woocommerce-MyAccount-content{padding:22px 18px;border-radius:24px}body.woocommerce-account .my-account{padding-top:10px}
}
@media(prefers-reduced-motion:reduce){.tr-sort-list,.tr-field-land{animation:none!important}#wrapper .tr-sort-button,.tr-sort-chevron,body.woocommerce-account .woocommerce-MyAccount-navigation li>a{transition:none!important}.tr-coupon-price>.tr-hammer{display:none}}
#cart-popup .cart-sidebar-content{display:block!important}
body.woocommerce-account .woocommerce-MyAccount-content .dashboard-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 0!important;padding:0!important;list-style:none}
body.woocommerce-account .woocommerce-MyAccount-content .dashboard-links>li{width:auto!important;float:none!important;min-width:0;margin:0!important;padding:0!important;list-style:none}
body.woocommerce-account .woocommerce-MyAccount-content .dashboard-links>li>a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;min-height:120px;height:100%;padding:20px;border:1px solid #466a6628;border-radius:22px;background:#fafbf9;color:#2b4d42;font:600 14px/1.4 Montserrat,sans-serif;box-shadow:none;transition:background 180ms,border-color 180ms}
body.woocommerce-account .woocommerce-MyAccount-content .dashboard-links>li>a:hover{background:#eaf1ec;border-color:#466a6670}
body.woocommerce-account .dashboard-links .tr-solar{width:28px;height:28px}
@media(max-width:849px){body.woocommerce-account .woocommerce-MyAccount-content .dashboard-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body.woocommerce-account .woocommerce-MyAccount-content .dashboard-links>li>a{padding:16px;min-height:105px;font-size:13px}}
@media(prefers-reduced-motion:reduce){body.woocommerce-account .woocommerce-MyAccount-content .dashboard-links>li>a{transition:none}}
body.woocommerce-account .woocommerce-MyAccount-navigation li>a{flex-wrap:nowrap}
.tr-account-label{min-width:0;flex:1;overflow-wrap:anywhere}
body.woocommerce-account .dashboard-links>li.woocommerce-MyAccount-navigation-link--dashboard{display:none}
body.woocommerce-account .woocommerce-MyAccount-content{animation:tr-arrive 240ms ease-out both}
@media(prefers-reduced-motion:reduce){body.woocommerce-account .woocommerce-MyAccount-content{animation:none}}
/* Pidä lajittelun valikko tuotelistan päällä. */
#wrapper .shop-page-title:has(.tr-sort-ready){position:relative;z-index:20;overflow:visible}
#wrapper .shop-page-title:has(.tr-sort-ready) .page-title-inner{overflow:visible}
#cart-popup .cart-popup-title .heading-font{font-family:Faktum,Montserrat,sans-serif;font-size:25px;line-height:1.2;font-weight:700;letter-spacing:-.025em;text-transform:none;color:#233e34}
#cart-popup .cart-popup-title .is-divider{display:none}
#cart-popup .ux-quantity{display:inline-flex!important;align-items:stretch;border:1px solid #466a6630!important;border-radius:999px!important;overflow:hidden;background:#fff}
#cart-popup .ux-quantity input.ux-quantity__button{display:block!important;min-width:34px!important;width:34px!important;min-height:42px!important;height:42px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:#f4f7f4!important;color:#2b4d42!important;font:600 19px/42px Montserrat,Arial,sans-serif!important;text-shadow:none!important;box-shadow:none!important}
#cart-popup .ux-quantity input.qty{min-width:40px!important;width:40px!important;height:42px!important;margin:0!important;padding:0!important;border:0!important;border-inline:1px solid #466a661a!important;border-radius:0!important;color:#2b4d42!important;background:#fff!important;font-size:15px!important;appearance:textfield}
#cart-popup .ux-quantity input.qty::-webkit-inner-spin-button,#cart-popup .ux-quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
