/**
 * Theme Name: Rey Child
 * Theme URI: http://reytheme.com/
 * Description: This is a child theme of Rey.
 * Author: Marius H.
 * Author URI: https://twitter.com/mariushoria
 * Template: rey
 * Version: 1.0.49
 * License: General Public License
 * License URI: http://www.gnu.org/licenses/gpl.html
 * Text Domain: rey-child
 */

/* ===== MEISTERPAGAR TOOTE LEHT — Põhi CSS ===== */
.meister-product-page{background:#f8f3ee;font-family:'Plus Jakarta Sans',sans-serif}
.meister-container{max-width:1200px;margin:0 auto;padding:0 32px}

/* Hero */
.meister-hero{position:relative;width:100%;max-width:1715px;margin:0 auto;height:360px;overflow:hidden;background:#0d1e26}
.meister-hero-img{position:absolute;left:58%;right:0;top:0;width:42%;height:100%;object-fit:cover;object-position:center bottom}
.meister-hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(13,30,38,1) 0%,rgba(13,30,38,1) 50%,rgba(13,30,38,.92) 58%,rgba(13,30,38,.62) 65%,rgba(13,30,38,.20) 72%,rgba(13,30,38,0) 78%);pointer-events:none}
.meister-hero-breadcrumb{position:absolute;top:24px;left:32px;background:rgba(248,243,238,.15);backdrop-filter:blur(8px);padding:6px 16px;border-radius:999px;color:rgba(255,255,255,.85);font-size:13px;font-family:'Plus Jakarta Sans',sans-serif}
.meister-hero-breadcrumb a{color:rgba(255,255,255,.7);text-decoration:none}
.meister-hero-content{position:absolute;top:50%;transform:translateY(-50%);left:48px;max-width:700px}
.meister-badge{display:inline-block;background:#2f6379;color:#faf5f0;padding:4px 14px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:2px;font-family:'Plus Jakarta Sans',sans-serif;margin-bottom:16px;text-transform:uppercase}
.meister-hero-title{font-family:'Noto Serif',serif;font-size:clamp(28px,4vw,52px);font-weight:700;color:#faf5f0;margin:0 0 12px;line-height:1.15}
.meister-hero-sub{font-family:'Playfair Display',serif;font-style:italic;font-size:18px;color:rgba(255,255,255,.8);margin:0 0 16px}
.meister-hero-instructor{display:flex;align-items:center;gap:12px}
.meister-line{width:32px;height:1px;background:#e2c28b}
.meister-hero-instructor span{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:2px}
/* Vitals */
.meister-vitals{background:#f2ece4;padding:14px 0}
.meister-vitals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.meister-vital{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}
.meister-vital .material-symbols-outlined{color:#8a7040;font-size:22px}
.meister-vital strong{font-family:'Noto Serif',serif;font-size:16px;font-weight:600;color:#1a1208}
.meister-vital-label{font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#5a4e3e}
/* Main */
.meister-main{background:#f8f3ee;padding:64px 0}
.meister-two-col{display:grid;grid-template-columns:1fr 380px;gap:64px;align-items:start}
.meister-description{font-size:16px;line-height:1.85;color:#3a2e20;margin-bottom:32px}
.meister-gallery{display:grid;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:24px}
.meister-gallery-item{overflow:hidden;border-radius:8px;aspect-ratio:1}
.meister-gallery-item img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%);transition:filter .35s,transform .4s ease;cursor:pointer}
.meister-gallery-item:hover img{filter:grayscale(0%);transform:scale(1.05)}
/* Booking card */
.meister-right{position:sticky;top:100px}
.meister-booking-card{background:#2f6379;border-radius:12px;padding:32px;color:#fff}
.meister-price-wrap .price,.meister-price-wrap .amount{font-family:'Noto Serif',serif!important;font-size:36px!important;font-weight:700!important;color:#f0c060!important}
.meister-price-wrap ins,.meister-price-wrap .woocommerce-Price-amount{text-decoration:none!important}
.meister-price-note{font-size:13px;color:rgba(255,255,255,.65);margin:8px 0 0;font-family:'Plus Jakarta Sans',sans-serif}
.meister-card-date{border-top:1px solid rgba(255,255,255,.1);padding-top:16px;margin:16px 0;display:flex;align-items:flex-start;gap:12px}
.meister-card-date .material-symbols-outlined{color:#f0c060;font-size:20px;margin-top:2px}
.meister-card-date strong{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:14px}
.meister-card-date span{font-size:12px;opacity:.65;font-family:'Plus Jakarta Sans',sans-serif}
.meister-stock-ok{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:13px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:500}
.meister-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;flex-shrink:0}
.meister-stock-full{display:inline-block;background:#b70d65;color:#fff;padding:4px 14px;border-radius:999px;font-size:12px;font-weight:700;font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:1px;margin-bottom:16px}
.meister-cart-wrap .single_add_to_cart_button,.meister-cart-wrap .button{background:#8a7040!important;color:#fff!important;border:none!important;border-radius:4px!important;padding:15px 20px!important;font-family:'Plus Jakarta Sans',sans-serif!important;font-size:12px!important;font-weight:700!important;letter-spacing:2px!important;text-transform:uppercase!important;width:100%!important;cursor:pointer!important;transition:background .2s!important;margin-top:0!important}
.meister-cart-wrap .single_add_to_cart_button:hover{background:#735c00!important}
.meister-cart-wrap form.cart{display:block!important;margin:0!important}
.meister-trust{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;opacity:.45;font-size:11px;font-family:'Plus Jakarta Sans',sans-serif;text-transform:uppercase;letter-spacing:1px}
.meister-trust .material-symbols-outlined{font-size:14px}
.meister-cart-wrap .quantity{display:flex!important}
/* Instructor */
.meister-instructor{background:#0d1e26;padding:0}
.meister-instructor-inner{display:grid;grid-template-columns:360px 1fr;min-height:440px;padding:0}
.meister-instructor-photo{overflow:hidden}
.meister-instructor-photo img{width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:0;display:block}
.meister-instructor-info{padding:48px 56px;display:flex;flex-direction:column;justify-content:center}
.meister-instructor-label{font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#8a7040;margin:0 0 8px}
.meister-instructor-name{font-family:'Noto Serif',serif;font-size:32px;font-weight:700;color:#fff;margin:0 0 20px}
.meister-instructor-bio{font-size:15px;line-height:1.8;color:rgba(255,255,255,0.8)}
/* Directions */
.meister-directions{background:#f8f3ee;padding:56px 0;border-top:1px solid #e0d9d0}
.meister-directions-title{font-family:'Noto Serif',serif;font-size:24px;font-weight:700;color:#2f6379;margin:0 0 32px}
.meister-directions-body{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.meister-directions-intro{font-size:15px;color:#5a4e3e;margin:0 0 16px;line-height:1.6}
.meister-directions-buttons{display:flex;gap:10px;margin:0 0 20px}
.meister-dir-btn{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:10px 12px;border-radius:6px;text-decoration:none;font-weight:600;font-size:13px;letter-spacing:.3px;border:1.5px solid #2f6379;color:#2f6379;background:#fff;transition:background .18s,color .18s;white-space:nowrap}
.meister-dir-btn:hover{background:#2f6379;color:#fff}
.meister-dir-btn .material-symbols-outlined{font-size:17px}
.meister-directions-text{font-size:14px;line-height:1.7;color:#5a4e3e;margin:0 0 12px}
.meister-directions-peatus{color:#2f6379;font-weight:600;text-decoration:none}
.meister-directions-peatus:hover{text-decoration:underline}
.meister-directions-subtitle{display:flex;align-items:center;gap:8px;font-family:'Noto Serif',serif;font-size:16px;font-weight:700;color:#2f6379;margin:0 0 16px}
.meister-directions-subtitle .material-symbols-outlined{color:#8a7040;font-size:20px}
.meister-directions-arrival{border-left:3px solid #e0d9d0;padding-left:32px}
@media(max-width:768px){.meister-directions-body{grid-template-columns:1fr}.meister-directions-arrival{border-left:none;padding-left:0;border-top:2px solid #e0d9d0;padding-top:24px}}
/* Reviews */
.meister-reviews{background:#f2ece4;padding:64px 0}
.meister-section-title{font-family:'Noto Serif',serif;font-size:30px;text-align:center;color:#1a1208;margin:0 0 48px}
.meister-section-title-left{font-family:'Noto Serif',serif;font-size:28px;color:#1a1208;margin:0 0 32px}
/* Related */
.meister-related{background:#f8f3ee;padding:64px 0 80px}
.meister-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.meister-related-card{text-decoration:none;color:inherit}
.meister-related-body{background:#f2ece4;border-radius:0 0 12px 12px;padding:20px}
.meister-related-img{aspect-ratio:3/2;overflow:hidden;border-radius:12px 12px 0 0}
.meister-related-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.meister-related-card:hover .meister-related-img img{transform:scale(1.04)}
.meister-related-cat{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#2f6379;font-family:'Plus Jakarta Sans',sans-serif}
.meister-related-title{font-family:'Noto Serif',serif;font-size:17px;color:#1a1208;margin:8px 0 12px;line-height:1.4}
.meister-related-footer{display:flex;justify-content:space-between;align-items:center}
.meister-related-price .price,.meister-related-price .amount{font-family:'Noto Serif',serif;font-weight:700;color:#8a7040;font-size:15px}
.meister-related-link{font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:700;color:#2f6379;letter-spacing:1px}
/* Mobile */
@media(max-width:900px){
  .meister-two-col{grid-template-columns:1fr!important}
  .meister-right{position:static}
  .meister-vitals-grid{grid-template-columns:1fr!important;gap:0!important;align-items:start!important}
  .meister-related-grid{grid-template-columns:1fr!important}
  .meister-gallery{grid-template-columns:repeat(2,1fr)!important}
  .meister-hero{height:260px!important}
  .meister-vital{flex-direction:row!important;align-items:center!important;text-align:left!important;gap:8px!important;padding:4px 0!important}
  .meister-vital strong{font-size:13px!important}
  .meister-vital-label{display:none!important}
  .meister-vital .material-symbols-outlined{font-size:16px!important}
  .meister-hero-content{left:24px!important;bottom:32px!important}
  .meister-instructor-inner{grid-template-columns:1fr!important}
  .meister-instructor-photo{max-height:320px}
  .meister-instructor-info{padding:32px 24px}
  .meister-instructor-name{font-size:24px}
}

/* ===== OLEMASOLEVAD ÜLEKATTEID ===== */
.single-product .woocommerce-product-details__short-description{display:none;}
.meister-nav-links{display:flex;flex-direction:column;gap:8px;margin-top:12px;}
.meister-nav-link{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid #e8e0d5;border-radius:6px;text-decoration:none!important;color:#2c2c2c!important;font-weight:500;transition:all 0.2s;}
.meister-nav-link:hover{background:#fdf8f3;border-color:#a07840;}
.meister-nav-icon{font-size:18px;flex-shrink:0;}.meister-nav-name{flex:1;font-size:14px;}.meister-nav-arrow{color:#a07840;font-size:18px;font-weight:300;}
.meister-clean-info{border-left:3px solid #a07840!important;padding-left:16px;}
.single-product .rey-wishlistBtn-wrapper{display:none!important;}
.single-product.product.outofstock .rey-wishlistBtn-wrapper{display:flex!important;}
.single-product .modena-widget,.single-product .modena-product-widget{display:none!important;}
@keyframes btn-shimmer{0%{background-position:-200% center;}100%{background-position:200% center;}}
.single-product .single_add_to_cart_button{--btn-bg-color:#171818!important;--accent-color:#171818!important;background-color:#171818!important;color:#ffffff!important;border-color:#171818!important;height:56px!important;padding:0 32px!important;letter-spacing:.12em!important;font-size:.72rem!important;position:relative!important;overflow:hidden!important;background:linear-gradient(90deg,#171818 40%,#3a3028 50%,#171818 60%)!important;background-size:200% auto!important;transition:background-position .5s ease,box-shadow .3s ease!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.single-product .single_add_to_cart_button:hover{background-position:right center!important;box-shadow:0 6px 24px rgba(23,24,24,.18)!important;animation:btn-shimmer 1.5s linear infinite!important;--btn-bg-color:transparent!important;--accent-color:transparent!important;background-color:transparent!important;border-color:#171818!important;}
.single-product .single_add_to_cart_button .btn-label{transition:transform .3s ease;}
.single-product .single_add_to_cart_button:hover .btn-label{transform:translateX(-12px);}
.single-product .single_add_to_cart_button .btn-arrow{position:absolute;right:25%;opacity:0;transform:translateX(-10px);transition:all .3s ease;font-size:1.2em;line-height:1;}
.single-product .single_add_to_cart_button:hover .btn-arrow{opacity:1;transform:translateX(4px);}
.single-product .single_add_to_cart_button::after{content:none!important;display:none!important;}
@keyframes btn-light-sweep{0%{left:-80%;}100%{left:130%;}}
.single-product .single_add_to_cart_button::before{content:'';position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.12) 50%,transparent 100%);transform:skewX(-20deg);pointer-events:none;}
.single-product .single_add_to_cart_button:hover::before{animation:btn-light-sweep .65s ease-out forwards;}
.single-product .__thumbs-arr{display:none!important;}
.single-product .__thumbs-wrapper{width:100%!important;max-width:100%!important;}
.single-product .__thumbs-track{display:flex!important;gap:6px!important;width:100%!important;}
.single-product .__thumbItem{flex:1 1 0!important;min-width:0!important;aspect-ratio:4/3!important;height:auto!important;padding:0!important;border:2px solid transparent!important;transition:border-color .25s ease,opacity .25s ease!important;overflow:hidden!important;border-radius:2px!important;}
.single-product .__thumbItem img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;filter:grayscale(70%)!important;transition:filter .3s ease!important;}
.single-product .__thumbItem.--active img,.single-product .__thumbItem:hover img{filter:grayscale(0%)!important;}
.single-product .__thumbItem.--active{border-color:#a07840!important;}
.single-product .__thumbItem:hover{border-color:rgba(200,169,110,.5)!important;}
.single-product .summary .price{font-size:1.6em!important;font-weight:600!important;margin-bottom:24px!important;}
.single-product .cart{margin-top:16px!important;}
.single-product .rey-wcPanels .rey-wcPanel-inner{box-shadow:0 4px 24px rgba(0,0,0,.08)!important;border-radius:4px!important;}
.single-product .rey-wcPanels{flex-wrap:nowrap!important;}
.single-product .rey-wcPanels .rey-wcPanel--information{flex:0 0 758px!important;max-width:758px!important;}
@media(max-width:768px){.single-product .rey-wcPanels{flex-direction:column!important;flex-wrap:wrap!important;}.single-product .rey-wcPanels .rey-wcPanel--information{flex:0 0 auto!important;max-width:100%!important;width:100%!important;}}
.rey-quickviewBtn{background:rgba(0,0,0,.55)!important;color:#fff!important;border-color:rgba(255,255,255,.5)!important;backdrop-filter:blur(2px)!important;}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link,.related.products ul.products li.product .woocommerce-LoopProduct-link,.woocommerce ul.products li.product a>img{aspect-ratio:1/1!important;object-fit:cover!important;width:100%!important;display:block!important;}
.woocommerce ul.products li.product .rey-thumbImg{aspect-ratio:1/1!important;object-fit:cover!important;width:100%!important;}
.meister-ornament-divider{display:flex;align-items:center;justify-content:center;gap:24px;margin:0 0 40px;opacity:.45;}
.meister-ornament-divider .meister-ornament-line{height:1px;background:#b0a898;flex:1;max-width:500px;}
.meister-ornament-divider svg{color:#8a7e72;flex-shrink:0;}
.material-symbols-outlined{font-family:'Material Symbols Outlined'!important;font-weight:normal!important;font-style:normal!important;font-feature-settings:'liga'!important;-webkit-font-feature-settings:'liga'!important;-webkit-font-smoothing:antialiased!important;text-rendering:optimizeLegibility!important;}
.meister-price-note{font-size:13.5px!important;line-height:1.55!important;margin-bottom:16px!important;}
.meister-card-date{flex-direction:row!important;align-items:center!important;justify-content:center!important;text-align:left!important;gap:14px!important;padding:18px 0!important;margin:14px 0!important;border-top:1px solid rgba(255,255,255,.15)!important;border-bottom:1px solid rgba(255,255,255,.15)!important;}
.meister-card-date .material-symbols-outlined{font-size:40px!important;opacity:.85!important;flex-shrink:0!important;line-height:1!important;display:block!important;}
.meister-card-date>div{display:flex!important;flex-direction:column!important;gap:2px!important;}
.meister-card-date strong{font-size:22px!important;font-weight:700!important;line-height:1.2!important;display:block!important;margin:0!important;}
.meister-card-date span{font-size:15px!important;opacity:.85!important;display:block!important;}
.meister-stock-full{font-size:16px!important;padding:15px 20px!important;letter-spacing:.07em!important;}
.meister-trust{opacity:1!important;font-size:13px!important;font-weight:600!important;color:rgba(255,255,255,.95)!important;margin-top:10px!important;}
.meister-modena{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px;padding:12px 16px;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:10px!important;font-size:15px;color:rgba(255,255,255,.9);}
.meister-modena-logo{height:32px!important;width:auto!important;flex-shrink:0!important;display:block!important;}
.meister-modena-fallback{display:none!important;}
.meister-modena-label{font-size:15px!important;font-weight:800!important;color:#fff!important;line-height:1.3!important;display:block!important;}
.rey-siteHeader .elementor-section.elementor-top-section{padding-top:12px!important;padding-bottom:12px!important;}

/* ===== SITE-WIDE FONDID — Noto Serif + Plus Jakarta Sans ===== */
body, p, span, a, li, td, th, blockquote,
input, textarea, select, button, label,
.woocommerce-breadcrumb, .widget,
.rey-siteHeader, .rey-siteHeader a,
.rey-siteFooter, .rey-siteFooter a {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}
p, li, td, th, blockquote, .meister-description {
  font-weight: 400 !important;
}

h1, h2, h3, h4, h5, h6,
.entry-title, .page-title, .product_title,
.woocommerce-loop-product__title,
.rey-siteHeader .logo-title {
  font-family: 'Noto Serif', serif !important;
}
/* Reviews section improvements */
.meister-reviews .comment-respond h3,
.meister-reviews #reviews h2,
.meister-reviews .woocommerce-Reviews-title {
    display: none !important;
}
.meister-reviews .woocommerce-noreviews {
    text-align: center;
    font-size: 15px;
    color: #8b7355;
    font-style: italic;
    margin: 0 0 24px;
}
.meister-reviews #review_form_wrapper {
    max-width: 600px;
    margin: 0 auto;
}
.meister-reviews .comment-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
    background: #fff;
    padding: 32px;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.meister-reviews .comment-form label {
    font-size: 14px;
    font-weight: 600;
    color: #2c2017;
}
.meister-reviews .comment-form input[type="text"],
.meister-reviews .comment-form textarea {
    width: 100%;
    padding: 12px 16px;
    border: 1.5px solid #e0d9d0;
    border-radius: 8px;
    font-size: 14px;
    font-family: inherit;
    transition: border-color .2s;
}
.meister-reviews .comment-form input:focus,
.meister-reviews .comment-form textarea:focus {
    border-color: #c8a96e;
    outline: none;
}
.meister-reviews .comment-form .form-submit input[type="submit"] {
    background: #c8a96e;
    color: #fff;
    border: none;
    padding: 14px 32px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    cursor: pointer;
    transition: background .2s;
    align-self: center;
}
.meister-reviews .comment-form .form-submit input[type="submit"]:hover {
    background: #a07840;
}
.meister-reviews .stars a { color: #c8a96e; }
.meister-reviews .star-rating { color: #c8a96e; }
@media(max-width:600px) {
    .meister-reviews .comment-form { padding: 24px 20px; }
    .meister-reviews { padding: 48px 0; }
}


/* ============ KOOLITUSE KAARDID (konsolideeritud 2026-04-13) ============ */
.mp-koolitused-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    align-items: stretch !important;
}
@media(max-width:1024px) { .mp-koolitused-grid { grid-template-columns: repeat(3, 1fr) !important; } }
@media(max-width:768px) { .mp-koolitused-grid { grid-template-columns: repeat(4, 1fr) !important; gap: 16px !important; padding: 0 12px; } }
@media(max-width:500px) { .mp-koolitused-grid { grid-template-columns: 1fr !important; padding: 0 12px; } }

.mp-koolitus-card,
a.mp-koolitus-card {
    background: #fff;
    border-radius: 12px;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.07);
    display: flex;
    flex-direction: column;
    transition: transform .3s ease, box-shadow .3s ease;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}
.mp-koolitus-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 32px rgba(0,0,0,.12);
}
a.mp-koolitus-card:hover { text-decoration: none; color: inherit; }

.mp-koolitus-img-wrap {
    flex: 0 0 auto !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    overflow: hidden !important;
    border-radius: 12px 12px 0 0;
}
.mp-koolitus-img-wrap img,
.mp-koolitus-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block;
    transition: transform .5s ease;
}
.mp-koolitus-card:hover .mp-koolitus-img-wrap img,
.mp-koolitus-card:hover .mp-koolitus-img {
    transform: scale(1.04);
}

.mp-sold-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(0,0,0,0.65);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 4px 10px;
    border-radius: 4px;
    text-transform: uppercase;
}
.mp-sold-out .mp-koolitus-img-wrap img { filter: grayscale(40%); }

.mp-koolitus-body {
    padding: 16px 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden !important;
    min-height: 0 !important;
}
.mp-koolitus-date {
    display: inline-block;
    background: rgba(160,120,64,0.12);
    color: #7a5c2a;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.5px;
    padding: 5px 12px;
    border-radius: 4px;
    margin-bottom: 12px;
    text-transform: uppercase;
    border: 1px solid rgba(160,120,64,0.30);
}
.mp-koolitus-title {
    font-family: 'Noto Serif', serif;
    font-size: 16px;
    font-weight: 400;
    color: #1a1a1a;
    margin: 0 0 6px;
    line-height: 1.4;
}
.mp-koolitus-excerpt {
    font-size: 13px;
    line-height: 1.55;
    color: #6b6157;
    margin: 6px 0 0;
    flex-grow: 1;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.mp-koolitus-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    flex-shrink: 0;
    padding-top: 10px;
}
.mp-koolitus-price,
.mp-koolitus-price .woocommerce-Price-amount {
    font-size: 16px;
    font-weight: 700;
    color: #2f6379;
}
.mp-koolitus-price .woocommerce-Price-amount + .woocommerce-Price-amount::before {
    content: " – ";
}
.mp-koolitus-btn {
    display: inline-block;
    background: #a07840;
    color: #fff !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 8px 16px;
    border-radius: 4px;
    border: none;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: background .2s ease, transform .15s ease;
    white-space: nowrap;
}
.mp-koolitus-btn:hover {
    background: #8a6530;
    transform: translateY(-1px);
}
.mp-koolitus-btn.mp-koolitus-btn--full,
.mp-koolitus-btn.mp-koolitus-btn-full {
    background: #888 !important;
    cursor: not-allowed;
    opacity: 0.85;
}
.mp-koolitus-btn.mp-koolitus-btn--full:hover,
.mp-koolitus-btn.mp-koolitus-btn-full:hover {
    background: #777 !important;
    transform: none;
}

/* Kaartide mobiilne kohandus */
@media(max-width:768px) {
    .mp-koolitus-body { padding: 8px !important; }
    .mp-koolitus-title { font-size: 13px !important; line-height: 1.3 !important; overflow-wrap: break-word; hyphens: auto; }
    .mp-koolitus-date { font-size: 11px !important; padding: 3px 8px; }
    .mp-koolitus-price { font-size: 13px !important; }
    .mp-koolitus-footer { flex-direction: column; align-items: flex-start; gap: 6px; }
    .mp-koolitus-footer .mp-koolitus-btn { font-size: 11px !important; padding: 6px 12px !important; }
}
@media(max-width:480px) {
    .mp-koolitused-grid { gap: 8px !important; }
    .mp-koolitus-title { font-size: 12px !important; }
    .mp-koolitus-date { font-size: 10px !important; }
}

/* Mobile hero heading fix - pikad eestikeelsed sõnad */
@media(max-width:600px) {
    .elementor-heading-title.elementor-size-default,
    .elementor-heading-title.elementor-size-large,
    .e-con .elementor-heading-title {
        font-size: clamp(1.5rem, 7vw, 2.2rem) !important;
        word-break: keep-all;
        overflow-wrap: break-word;
    }
}

/* Koolituste kaartide mobiili paigutus */
@media(max-width:768px) {
    .page-id-2914 .e-con.e-con-boxed,
    .page-id-2914 .mp-veebi-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .page-id-2914 .e-con-inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .mp-koolitused-grid {
        gap: 16px !important;
    }
}

/* Mobiili menüü: aktiivne leht + tap-feedback */
.rey-mainMenu-mobile li > a {
    transition: background 0.15s ease, padding-left 0.15s ease !important;
    border-radius: 6px !important;
    padding: 4px 8px !important;
    margin: -4px -8px !important;
    display: inline-block !important;
}
.rey-mainMenu-mobile li > a:active {
    background: rgba(160, 120, 64, 0.15) !important;
    color: #a07840 !important;
}
.rey-mainMenu-mobile .current-menu-item > a,
.rey-mainMenu-mobile .current_page_item > a {
    border-left: 3px solid #a07840 !important;
    padding-left: 10px !important;
    margin-left: -8px !important;
    color: #a07840 !important;
    font-weight: 600 !important;
}

/* Sticky header offset — kompenseerib 69px kõrguse headeri */

/* Sticky header offset */
body.wp-theme-rey .rey-siteWrapper {
    padding-top: 69px !important;
}
@media (max-width: 768px) {
    body.wp-theme-rey .rey-siteWrapper {
        padding-top: 61px !important;
    }
}

/* ===================================================
   TOOTE LEHT — BOOKING CARD REDESIGN 2026-04-05
   =================================================== */

/* Booking card — hele toon */
.meister-booking-card { background: #f2ece4 !important; color: #1a1208 !important; border: 1px solid #e0d9d0 !important; box-shadow: 0 4px 24px rgba(26,18,8,0.08) !important; }

/* Hind — keskel, suurem */
.meister-price-wrap { text-align: center !important; padding: 16px 0 4px !important; border-top: 1px solid #e0d9d0 !important; margin-top: 8px !important; }
.meister-price-wrap .price,
.meister-price-wrap .amount,
.meister-price-wrap .woocommerce-Price-amount { color: #1a1208 !important; font-size: 44px !important; }

/* KM tekst hinna all */
.meister-price-vat { text-align: center; font-size: 11px; color: #8a7a6a; margin: 0; padding-bottom: 20px; font-family: 'Plus Jakarta Sans', sans-serif; text-transform: uppercase; letter-spacing: 0.05em; border-bottom: 1px solid #e0d9d0; }

/* Stock OK */
.meister-stock-ok { margin-top: 20px !important; color: #3a2e20 !important; }

/* Nupp hover — teal */
.meister-cart-wrap .single_add_to_cart_button.button:hover { background: #2f6379 !important; border-color: #2f6379 !important; color: #fff !important; }
.meister-cart-wrap .btn-arrow { color: #fff !important; margin-left: 6px; }

/* Peida vana "sisaldab" tekst */
.meister-price-note { display: none !important; }

/* Turvaline makse */
.meister-trust { color: #5a4e3e !important; opacity: 1 !important; padding-bottom: 16px !important; border-bottom: 1px solid #e0d9d0 !important; margin-bottom: 4px !important; }
.meister-trust .material-symbols-outlined { color: #8a7040 !important; }

/* Kuupäev */
.meister-card-date,
.meister-card-date strong,
.meister-card-date span:not(.material-symbols-outlined) { color: #1a1208 !important; }
.meister-card-date .material-symbols-outlined { color: #8a7040 !important; }

/* Modena */
.meister-modena-label { color: #5a4e3e !important; }
.meister-modena-fallback { color: #1a1208 !important; }

/* Koolituse hind sisaldab */
.meister-includes { margin-top: 12px; padding: 24px; background: #fff; border: 1px solid #e0d9d0; border-radius: 12px; }
.meister-includes-title { font-family: 'Noto Serif', serif; font-size: 14px; font-weight: 700; color: #1a1208; margin: 0 0 16px; text-transform: uppercase; letter-spacing: 0.05em; }
.meister-includes-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.meister-includes-list li { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: #3a2e20; line-height: 1.4; font-family: 'Plus Jakarta Sans', sans-serif; }
.meister-includes-list li .material-symbols-outlined { color: #8a7040; font-size: 20px; flex-shrink: 0; margin-top: 1px; }

/* Jaga sõbrale */
.meister-share { margin-top: 4px; padding: 16px 4px; display: flex; align-items: center; justify-content: space-between; }
.meister-share-label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: #5a4e3e; font-family: 'Plus Jakarta Sans', sans-serif; }
.meister-share-btns { display: flex; gap: 8px; }
.meister-share-btn { width: 38px; height: 38px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #e8e0d5; color: #3a2e20; border: none; cursor: pointer; text-decoration: none; transition: background 0.2s, color 0.2s; }
.meister-share-btn:hover { background: #8a7040; color: #fff; }
.meister-share-copy.copied { background: #4ade80; color: #fff; }

/* Filter hover — vt Customizer, koolitused leht sektsioon */

/* Globaalsed tekstilingid — kuldne (2026-04-05) */
.elementor-widget-container p a,
.elementor-widget-container li a,
.elementor-widget-container td a,
.entry-content p a,
.entry-content li a,
.wp-block-post-content p a,
.wp-block-post-content li a,
.meister-koolitaja-bio a {
    color: #735c00;
    text-decoration: none;
}
.elementor-widget-container p a:hover,
.elementor-widget-container li a:hover,
.elementor-widget-container td a:hover,
.entry-content p a:hover,
.entry-content li a:hover,
.wp-block-post-content p a:hover,
.wp-block-post-content li a:hover,
.meister-koolitaja-bio a:hover {
    text-decoration: underline;
}

/* Nav menüü lingid — EI muuda (override eelmisele reeglile) */
.elementor-nav-menu a,
.elementor-nav-menu a:hover,
nav.rey-header-nav a,
nav.rey-header-nav a:hover,
.menu-item a,
.menu-item a:hover {
    color: inherit;
    text-decoration: none !important;
}

/* Elementori text-editor widget lingid — kuldne (täiendus 2026-04-05) */
.elementor-widget-text-editor p a {
    color: #735c00;
    text-decoration: none;
}
.elementor-widget-text-editor p a:hover {
    text-decoration: underline;
}

/* Header nav: fix wrap ~1280px (2026-04-06) */
ul.rey-mainMenu--desktop {
    gap: 10px !important;
}
ul.rey-mainMenu--desktop > li > a {
    white-space: nowrap;
}

ul.rey-mainMenu--desktop > li > a {
    font-size: 13px;
}

/* Nav logo-overlap fix ~1280px (2026-04-06) */
@media (max-width: 1400px) {
    nav.rey-mainNavigation--desktop {
        padding-left: 30px;
    }
}

/* Trust strip: 3 statistikat horisontaalselt mobiilis (2026-04-06) */
@media (max-width: 768px) {
    .mp-trust-strip > .e-con-inner {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: 4px !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
    .mp-trust-strip > .e-con-inner > .e-con {
        flex: 1 !important;
        width: auto !important;
        min-width: 0 !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: center !important;
        padding: 4px 4px !important;
    }
    .mp-trust-strip .elementor-heading-title {
        font-size: 13px !important;
        line-height: 1.2 !important;
        text-align: center !important;
    }
    .mp-trust-strip .elementor-widget-text-editor p {
        font-size: 0.65rem !important;
        line-height: 1.3 !important;
        text-align: center !important;
    }
}

/* === Avalehe featured image peidetud (v1.0.37) === */
/* Pilt jääb HTML-i SEO jaoks (OG image, Yoast), kuid ei kuvata visuaalselt */
.page-id-1807 .rey-postThumbnail {
    display: none;
}

/* === FB link trust stripis — ilma visuaalse muutuseta (v1.0.38) === */
.mp-fb-link a,
.mp-fb-link a:hover,
.mp-fb-link a:visited,
.mp-fb-link a:focus {
    color: inherit !important;
    text-decoration: none !important;
}

/* === Blogi jagamise nupud — brändi stiil (v1.0.39) === */
.rey-postSocialShare li a {
    background-color: #a07840 !important;
    transition: background-color 0.2s ease !important;
    border-radius: 4px !important;
}
.rey-postSocialShare li a:hover {
    background-color: #2f6379 !important;
    opacity: 1 !important;
}
/* Eemalda platformi-spetsiifilised inline värvid */
.rey-postSocialShare.--colored li a {
    background-color: #a07840 !important;
}
.rey-postSocialShare.--colored li a:hover {
    background-color: #2f6379 !important;
}
@media(max-width:900px){
  .meister-vitals{padding:8px 0!important}
  .meister-badge{font-size:7px!important;padding:2px 8px!important;letter-spacing:1px!important;margin-bottom:10px!important}
  .meister-hero-breadcrumb{font-size:9px!important;max-width:65%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;padding:3px 8px!important}
  .meister-price-wrap .price,.meister-price-wrap .amount,.meister-price-wrap .woocommerce-Price-amount{font-size:26px!important}
}

/* CookieYes modal scroll fix (iOS) */
.cky-modal { overflow: hidden !important; }
.cky-preference-content-holder,
.cky-preference-body-wrapper { overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; overscroll-behavior: contain !important; }
body.cky-modal-open { overflow: hidden !important; position: fixed !important; width: 100% !important; }
/* Peida CookieYes revisit nupp */
.cky-revisit-btn, #cky-btn-revisit, .cky-btn-revisit-wrapper { display: none !important; }

/* ===== /KOOLITUSED HERO ===== */
.elementor-1917 .elementor-element-b30bff1:not(.elementor-motion-effects-element-type-background),
.elementor-1917 .elementor-element-b30bff1 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
@media (max-width: 768px) {
    .elementor-1917 .elementor-element-b30bff1 {
        --padding-left: 24px !important;
        --padding-right: 24px !important;
        --padding-top: 40px !important;
        --padding-bottom: 40px !important;
    }
}
/* Toote kirjelduse lõiguvahed */
.meister-description br {
    display: block;
    margin-bottom: 0.75em;
}

/* Avalehe koolituste sektsiooni bottom padding vähendamine */
.elementor-1807 .elementor-element-21501b0 { padding-bottom: 10px !important; }
.elementor-element-21501b0 > .e-con-inner { padding-bottom: 20px !important; }

/* Meie koolitajad pealkirja sektsiooni padding vähendamine */
.elementor-element-99aaa2f > .e-con-inner { padding-top: 30px !important; padding-bottom: 30px !important; }

/* Koolituste CTA - tekst ja nupp kõrvuti */
.elementor-element-5c5f9e1 { flex-direction: row !important; align-items: center !important; justify-content: center !important; gap: 24px !important; flex-wrap: wrap !important; }
.elementor-element-5c5f9e1 > .e-con-inner { flex-direction: row !important; align-items: center !important; justify-content: center !important; gap: 24px !important; flex-wrap: wrap !important; }
.elementor-element-b8bb375 { width: auto !important; flex: none !important; }

/* Otsingutulemused - grid 2 veergu */
.search-results .rey-postList {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 32px !important;
}
@media (max-width: 767px) {
    .search-results .rey-postList {
        grid-template-columns: 1fr !important;
    }
}

/* Otsingutulemused - kaardistiil */
.search-results .rey-postList .rey-postItem {
    background: #fff;
    border: 1px solid #e8e0d5;
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.search-results .rey-postList .rey-postItem .woocommerce-LoopProduct-link {
    flex: 1;
}

/* Otsingutulemused - peida blog meta */
.search-results .rey-postList .rey-postItem .rey-postMeta,
.search-results .rey-postList .rey-postItem .more-link,
.search-results .rey-postList .rey-postItem .rey-moreLink {
    display: none !important;
}
.search-results .rey-postList .rey-postItem .rey-postDuration,
.search-results .rey-postList .rey-postItem .rey-postContent-more,
.search-results .rey-postList .rey-postItem .rey-postAuthor,
.search-results .rey-postList .rey-postItem time,
.search-results .rey-postList .rey-postItem .edit-link {
    display: none !important;
}
.search-results .rey-postList .rey-postItem .rey-postInfo,
.search-results .rey-postList .rey-postItem .rey-postCategories {
    display: none !important;
}
.search-results .rey-postList .rey-postItem .rey-postContent p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 14px;
}
.search-results .rey-postList .rey-postItem .rey-postTitle { display: block !important; font-size: 15px !important; margin-bottom: 8px; }

/* Otsingutulemused - pilt taislaius */
.search-results .rey-postList .rey-postItem .rey-postMedia {
    margin: 0;
    width: 100%;
}
.search-results .rey-postList .rey-postItem .rey-postThumbnail-inner {
    display: block;
    width: 100%;
    overflow: hidden;
}
.search-results .rey-postList .rey-postItem .rey-postMedia img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}
.search-results .rey-postList .rey-postItem .rey-postHeader {
    padding: 14px 16px 0;
}
.search-results .rey-postList .rey-postItem .rey-postContent {
    padding: 0 16px 8px;
}
.mp-search-price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 16px 14px;
    margin-top: auto;
}
.mp-search-price-amount {
    font-weight: 700;
    font-size: 16px;
    color: #2c1a0e;
}
.mp-search-price-amount .woocommerce-Price-amount {
    font-weight: 700;
    font-size: 16px;
    color: #2c1a0e;
}
.mp-search-btn {
    background: #8B5E2E;
    color: #fff !important;
    padding: 7px 14px;
    border-radius: 4px;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.02em;
}
.mp-search-btn:hover {
    background: #6d4922;
}
@media (max-width: 767px) {
    .search-results .rey-postList .rey-postItem .rey-postMedia img {
        height: 160px;
    }
}

/* Fix: figure default margin override */
.search-results .rey-postList .rey-postItem figure.rey-postMedia {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    display: block !important;
}
.search-results .rey-postList .rey-postItem .rey-postThumbnail-inner {
    display: block !important;
    width: 100% !important;
}
.search-results .rey-postList .rey-postItem .rey-postMedia img {
    width: 100% !important;
    height: 200px !important;
    object-fit: cover !important;
    display: block !important;
    max-width: none !important;
}

/* Fix: eemalda rey-postItem padding et pilt saaks taislaius */
.search-results .rey-postList .rey-postItem {
    padding: 0 !important;
}
.search-results .rey-postList .rey-postItem .rey-postHeader {
    padding: 14px 20px 0 !important;
}
.search-results .rey-postList .rey-postItem .rey-postContent {
    padding: 4px 20px 14px !important;
}
.mp-search-price {
    padding: 10px 20px 14px !important;
}
