:root{--mp2-navy:#173873;--mp2-navy-2:#12306b;--mp2-ink:#162238;--mp2-copy:#5d6a7e;--mp2-line:#dfe5ed;--mp2-soft:#f6f8fb;--mp2-success:#1f8a45;--mp2-warning:#8b5a16;--mp2-error:#9f2630}
.mp2-bot,.mp2-bot *{box-sizing:border-box}
.mp2-bot{width:100%;margin:0;padding:0;background:#fff;color:var(--mp2-ink);font-family:Roboto,Arial,sans-serif;letter-spacing:normal}
.mp2-bot button,.mp2-bot input,.mp2-bot select,.mp2-bot textarea{font:inherit}
.mp2-bot button{cursor:pointer}
.mp2-bot button:disabled{cursor:not-allowed;opacity:.46}
.mp2-config{width:100%;background:#fff}
.mp2-section{padding:20px 0;border-top:1px solid var(--mp2-line)}
.mp2-section:first-child{border-top:0;padding-top:4px}
.mp2-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:13px}
.mp2-section h2,.mp2-section h3{margin:0;color:var(--mp2-ink);font-size:18px;line-height:1.25;font-weight:760;text-transform:none;letter-spacing:normal}
.mp2-current-value{color:var(--mp2-copy);font-size:14px;line-height:1.35;text-align:right}
.mp2-color-list{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin}
.mp2-color-choice{position:relative;flex:0 0 88px;display:grid;gap:6px;align-content:start;padding:5px;border:1px solid #d4dbe6;border-radius:10px;background:#fff;color:var(--mp2-ink);text-align:center}
.mp2-color-choice:hover,.mp2-color-choice:focus-visible{border-color:var(--mp2-navy)}
.mp2-color-choice.is-selected{border-color:var(--mp2-navy);box-shadow:0 0 0 1px var(--mp2-navy)}
.mp2-color-choice img{display:block;width:76px;height:76px;object-fit:contain;background:#fff;border-radius:7px}
.mp2-color-choice span{display:block;min-height:30px;font-size:11px;line-height:1.25;overflow-wrap:anywhere}
.mp2-color-count{position:absolute;right:3px;top:3px;display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:var(--mp2-navy);color:#fff;font-size:11px;font-weight:800}
.mp2-assortment{display:grid;gap:9px}
.mp2-size-row{display:grid;grid-template-columns:minmax(80px,1fr) minmax(118px,auto);align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid #eef1f5}
.mp2-size-row:last-child{border-bottom:0}
.mp2-size-copy{min-width:0}
.mp2-size-name{display:block;color:var(--mp2-ink);font-size:15px;font-weight:700}
.mp2-stock-note{display:block;margin-top:3px;color:var(--mp2-copy);font-size:12px;line-height:1.35}
.mp2-stock-note.is-low{color:var(--mp2-warning)}
.mp2-stock-note.is-out{color:var(--mp2-error)}
.mp2-qty-control{display:grid;grid-template-columns:36px 58px 36px;gap:5px;align-items:center}
.mp2-qty-control button,.mp2-qty-control input{height:38px;border:1px solid #cbd4e1;border-radius:8px;background:#fff;color:var(--mp2-ink);text-align:center}
.mp2-qty-control button{font-size:20px;line-height:1}
.mp2-qty-control input{width:58px;padding:4px;font-size:14px;font-weight:700}
.mp2-quantity-pills{display:flex;flex-wrap:wrap;gap:8px;margin:3px 0 13px}
.mp2-pill,.mp2-print-choice,.mp2-position-choice{min-height:42px;padding:10px 15px;border:1px solid #cfd7e3;border-radius:10px;background:#fff;color:var(--mp2-ink);font-weight:650}
.mp2-pill:hover,.mp2-pill:focus-visible,.mp2-print-choice:hover,.mp2-print-choice:focus-visible,.mp2-position-choice:hover,.mp2-position-choice:focus-visible{border-color:var(--mp2-navy)}
.mp2-pill.is-selected,.mp2-print-choice.is-selected,.mp2-position-choice.is-selected{border-color:var(--mp2-navy);box-shadow:0 0 0 1px var(--mp2-navy);color:var(--mp2-navy)}
.mp2-quantity-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding:12px 14px;border-radius:10px;background:var(--mp2-soft);font-size:14px}
.mp2-quantity-summary strong{font-size:16px}
.mp2-position-wrap{margin-bottom:16px}
.mp2-subheading{display:block;margin:0 0 9px;color:var(--mp2-copy);font-size:13px;font-weight:700}
.mp2-position-list,.mp2-print-list{display:flex;flex-wrap:wrap;gap:9px}
.mp2-print-choice{position:relative;min-width:136px;text-align:left}
.mp2-print-choice small{display:block;margin-top:4px;color:var(--mp2-copy);font-size:11px;font-weight:500}
.mp2-print-choice.is-selected small{color:#52698e}
.mp2-cheapest{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:#e8f4ec;color:#287743;font-size:10px;font-weight:800;vertical-align:middle}
.mp2-text-button{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:3px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--mp2-navy);font-size:14px;font-weight:650;text-align:left}
.mp2-methods{display:grid;gap:9px;margin-top:14px}
.mp2-methods[hidden]{display:none!important}
.mp2-method-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid #d8dee8;border-radius:11px;background:#fff}
.mp2-method-card.is-selected{border-color:var(--mp2-navy);box-shadow:0 0 0 1px var(--mp2-navy)}
.mp2-method-title{margin:0;color:var(--mp2-ink);font-size:14px;font-weight:750}
.mp2-method-meta{display:flex;flex-wrap:wrap;gap:5px 12px;margin-top:5px;color:var(--mp2-copy);font-size:12px;line-height:1.35}
.mp2-method-price{text-align:right;white-space:nowrap}
.mp2-method-price strong{display:block;color:var(--mp2-ink);font-size:15px}
.mp2-method-price button{margin-top:7px;padding:7px 11px;border:1px solid var(--mp2-navy);border-radius:8px;background:#fff;color:var(--mp2-navy);font-size:12px;font-weight:750}
.mp2-price-section{padding:22px 0;border-top:1px solid var(--mp2-line)}
.mp2-total-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.mp2-total{display:block;color:#0f1728;font-size:clamp(34px,4vw,48px);line-height:1;font-weight:820;letter-spacing:-.03em}
.mp2-price-per{margin:7px 0 0;color:var(--mp2-copy);font-size:14px}
.mp2-breakdown{margin-top:15px;padding:3px 0}
.mp2-breakdown[hidden]{display:none!important}
.mp2-price-line{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #eef1f4;color:#4f5d71;font-size:14px}
.mp2-price-line:last-child{border-bottom:0}
.mp2-price-line strong{color:var(--mp2-ink);white-space:nowrap}
.mp2-price-line.is-total{margin-top:4px;padding-top:11px;border-top:1px solid #cfd7e3;font-weight:800}
.mp2-delivery-box{display:grid;gap:10px;margin-top:18px;padding:15px 16px;border-radius:11px;background:var(--mp2-soft);color:#33445d;font-size:13px;line-height:1.45}
.mp2-delivery-box strong{display:block;color:var(--mp2-ink);font-size:14px}
.mp2-stock-summary{display:flex;align-items:center;gap:9px}
.mp2-stock-dot{width:9px;height:9px;border-radius:50%;background:var(--mp2-success);flex:0 0 9px}
.mp2-stock-dot.is-warning{background:#d28a22}
.mp2-stock-dot.is-error{background:#bd3841}
.mp2-actions{display:grid;gap:11px;margin-top:18px}
.mp2-primary,.mp2-secondary{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;padding:13px 18px;border-radius:29px;font-size:16px;font-weight:780;text-align:center}
.mp2-primary{border:1px solid var(--mp2-navy);background:var(--mp2-navy);color:#fff}
.mp2-primary:hover,.mp2-primary:focus-visible{background:#102d61}
.mp2-secondary{border:1.5px solid var(--mp2-navy);background:#fff;color:var(--mp2-navy)}
.mp2-status{min-height:21px;margin:11px 0 0;color:var(--mp2-navy);font-size:13px;line-height:1.4}
.mp2-status.is-error{color:var(--mp2-error)}
.mp2-gallery-actions-wrap,.mp2-product-info{width:100%;margin-top:20px;background:#fff;color:var(--mp2-ink);font-family:Roboto,Arial,sans-serif}
.mp2-product-info{margin-bottom:22px}
.mp2-gallery-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
.mp2-gallery-action{min-height:44px;padding:10px 17px;border:1.5px solid var(--mp2-navy);border-radius:11px;background:#fff;color:var(--mp2-navy);font-weight:760}
.mp2-gallery-action.is-primary{background:var(--mp2-navy);color:#fff}
.mp2-description{padding-top:19px;border-top:1px solid var(--mp2-line);color:#4e5d72;font-size:15px;line-height:1.65}
.mp2-description h2,.mp2-description h3{margin:0 0 12px;color:var(--mp2-ink);font-size:18px;text-transform:none;letter-spacing:normal}
.mp2-description p{margin:0 0 13px}
.mp2-technical{margin-top:20px;padding-top:18px;border-top:1px solid var(--mp2-line)}
.mp2-technical h3{margin:0 0 10px;color:var(--mp2-ink);font-size:17px}
.mp2-technical dl{margin:0}
.mp2-technical-row{display:grid;grid-template-columns:minmax(105px,145px) 1fr;gap:14px;padding:9px 0;border-bottom:1px solid #edf0f4;font-size:14px}
.mp2-technical-row dt{color:var(--mp2-ink);font-weight:720}
.mp2-technical-row dd{margin:0;color:var(--mp2-copy)}
.mp2-report-wrap{margin-top:18px;text-align:right}
.mp2-report{border:0;background:transparent;color:#68768b;font-size:12px;text-decoration:underline;text-underline-offset:3px}
.mp2-modal[hidden]{display:none!important}
.mp2-modal{position:fixed;inset:0;z-index:2147483001;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(12,24,43,.68)}
.mp2-dialog{position:relative;width:min(100%,610px);max-height:92vh;overflow:auto;padding:25px;border-radius:16px;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.28)}
.mp2-dialog h2{margin:0 38px 7px 0;color:var(--mp2-ink);font-size:24px;line-height:1.2}
.mp2-dialog-lead{margin:0 0 18px;color:var(--mp2-copy);font-size:14px;line-height:1.5}
.mp2-close{position:absolute;right:14px;top:10px;width:38px;height:38px;border:0;background:transparent;color:var(--mp2-ink);font-size:30px;line-height:1}
.mp2-modal-form{display:grid;gap:13px}
.mp2-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mp2-field{display:grid;gap:5px;color:var(--mp2-ink);font-size:13px;font-weight:700}
.mp2-field.is-wide{grid-column:1/-1}
.mp2-field input,.mp2-field select,.mp2-field textarea{width:100%;padding:11px 12px;border:1px solid #cbd4e1;border-radius:8px;background:#fff;color:#1e2a3c;font-weight:400}
.mp2-field textarea{min-height:92px;resize:vertical}
.mp2-check{display:flex;align-items:flex-start;gap:9px;color:#46566d;font-size:13px;line-height:1.4}
.mp2-check input{margin-top:2px}
.mp2-modal-summary{padding:12px 14px;border-radius:9px;background:var(--mp2-soft);color:#42526a;font-size:13px;line-height:1.45;white-space:pre-line}
.mp2-modal-status{min-height:20px;margin:4px 0 0;color:var(--mp2-navy);font-size:13px}
.mp2-modal-status.is-error{color:var(--mp2-error)}
.mp2-sample-list{display:grid;gap:9px;max-height:330px;overflow:auto;padding-right:3px}
.mp2-sample-row{display:grid;grid-template-columns:58px minmax(0,1fr);gap:11px;align-items:center;padding:9px;border:1px solid #dce2ea;border-radius:10px}
.mp2-sample-row img{width:58px;height:58px;object-fit:contain}
.mp2-sample-copy strong{display:block;font-size:14px}
.mp2-sample-options{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}
.mp2-sample-option{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid #d5dce6;border-radius:8px;color:#405067;font-size:12px}
.mp2-empty{padding:14px;border-radius:9px;background:var(--mp2-soft);color:var(--mp2-copy);font-size:13px}
.mp2-sku-injected{margin:0 0 7px;color:#68768a;font-family:Roboto,Arial,sans-serif;font-size:13px;font-weight:500;text-transform:none;letter-spacing:normal}
.mp2-hidden-source,#mp-ai-help-button{display:none!important}
@media(max-width:700px){.mp2-section{padding:17px 0}.mp2-color-choice{flex-basis:80px}.mp2-color-choice img{width:68px;height:68px}.mp2-size-row{grid-template-columns:minmax(0,1fr) auto;gap:9px}.mp2-total-row{align-items:flex-start;flex-direction:column}.mp2-method-card{grid-template-columns:1fr}.mp2-method-price{text-align:left}.mp2-form-grid{grid-template-columns:1fr}.mp2-field.is-wide{grid-column:auto}.mp2-dialog{padding:21px 17px}.mp2-gallery-actions{display:grid}.mp2-gallery-action{width:100%}.mp2-technical-row{grid-template-columns:105px 1fr}}
@media(max-width:420px){.mp2-print-list,.mp2-position-list{display:grid;grid-template-columns:1fr 1fr}.mp2-print-choice,.mp2-position-choice{min-width:0;width:100%;padding:10px 9px}.mp2-qty-control{grid-template-columns:34px 52px 34px}.mp2-qty-control input{width:52px}.mp2-primary,.mp2-secondary{min-height:51px;font-size:15px}.mp2-technical-row{grid-template-columns:1fr;gap:3px}}
.mp2-date-help{display:block;margin-top:5px;color:var(--mp2-copy);font-size:12px;font-weight:400;line-height:1.35}

/* Botti 2.0: heijastintuotteiden nykyinen toimintalogiikka säilyy, mutta erillinen harmaa bottilaatikko poistuu. */
.mp-reflector-product .mp-reflector-v2,
.mp-reflector-wizard{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
.mp-reflector-product .mp-r2-product-intro{margin-bottom:24px!important}
.mp-reflector-product .mp-r2-sample,
.mp-reflector-product .mp-r2-thread,
.mp-reflector-wizard .mp-rw-thread{background:var(--mp2-soft)!important}

/* Botti 2.0.1: kompakti tuotesivu ja oikealta avautuvat laajat valinnat. */
.mp2-bot{max-width:720px}
.mp2-config{max-width:680px}
.mp2-section{padding:16px 0}
.mp2-section-head{margin-bottom:9px}
.mp2-color-list{gap:8px;padding-bottom:5px}
.mp2-color-choice{flex-basis:72px;gap:4px;padding:4px;border-radius:8px}
.mp2-color-choice img{width:62px;height:62px;border-radius:5px}
.mp2-color-choice span{min-height:24px;font-size:10px}
.mp2-color-count{min-width:20px;height:20px;font-size:10px}
.mp2-selector-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:58px;padding:11px 13px;border:1px solid #cfd7e3;border-radius:10px;background:#fff;color:var(--mp2-ink);text-align:left}
.mp2-selector-row:hover,.mp2-selector-row:focus-visible{border-color:var(--mp2-navy);box-shadow:0 0 0 1px var(--mp2-navy)}
.mp2-selector-copy{display:grid;gap:3px;min-width:0}
.mp2-selector-copy strong{font-size:15px;line-height:1.3}
.mp2-selector-copy small{color:var(--mp2-copy);font-size:12px;line-height:1.35;font-weight:500}
.mp2-selector-chevron{flex:0 0 auto;color:var(--mp2-navy);font-size:27px;line-height:1}
.mp2-position-wrap{margin-bottom:13px}
.mp2-position-wrap .mp2-selector-row{min-height:52px}
.mp2-print-list{gap:7px}
.mp2-print-choice{min-width:112px;min-height:40px;padding:8px 11px;border-radius:9px;font-size:13px}
.mp2-print-choice small{margin-top:3px;font-size:10px}
.mp2-cheapest{margin-left:4px;padding:1px 5px;font-size:9px}
.mp2-price-section{padding-top:18px}
.mp2-total{font-size:clamp(31px,3.4vw,42px)}
.mp2-delivery-box{margin-top:15px;padding:13px 14px}
.mp2-actions{gap:9px;margin-top:15px}
.mp2-primary,.mp2-secondary{min-height:50px;padding:11px 17px;font-size:15px}
.mp2-gallery-actions{gap:8px;margin-bottom:18px}
.mp2-gallery-action{min-height:40px;padding:8px 14px;font-size:13px}

/* Tuotekuvagalleriassa näytetään vain valitun värin suuri kuva. */
body.mp2-product-active .woocommerce-product-gallery .flex-control-nav,
body.mp2-product-active .woocommerce-product-gallery .flex-control-thumbs,
body.mp2-product-active .woocommerce-product-gallery ol.flex-control-nav{display:none!important}
body.mp2-product-active .woocommerce-product-gallery .flex-viewport{height:auto!important;overflow:visible!important}
body.mp2-product-active .woocommerce-product-gallery__wrapper{width:100%!important;transform:none!important;margin:0!important}
body.mp2-product-active .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image{display:none!important;float:none!important;width:100%!important;margin:0!important}
body.mp2-product-active .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:first-child{display:block!important}
body.mp2-product-active .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:first-child a,
body.mp2-product-active .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:first-child img{display:block!important;width:100%!important;height:auto!important}

/* Oikean reunan valintaikkuna. */
.mp2-drawer[hidden]{display:none!important}
.mp2-drawer{position:fixed;inset:0;z-index:2147483002;display:flex;justify-content:flex-end;background:rgba(12,24,43,.54);font-family:Roboto,Arial,sans-serif}
.mp2-drawer-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(520px,100%);height:100%;background:#fff;color:var(--mp2-ink);box-shadow:-18px 0 50px rgba(0,0,0,.22);animation:mp2-drawer-in .2s ease-out}
.mp2-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 22px 17px;border-bottom:1px solid var(--mp2-line)}
.mp2-drawer-title{margin:0;color:var(--mp2-ink);font-size:23px;line-height:1.2;text-transform:none;letter-spacing:normal}
.mp2-drawer-lead{margin:6px 0 0;color:var(--mp2-copy);font-size:13px;line-height:1.45}
.mp2-drawer-close{flex:0 0 38px;width:38px;height:38px;padding:0;border:0;background:transparent;color:var(--mp2-ink);font-size:31px;line-height:1}
.mp2-drawer-content{min-height:0;overflow:auto;padding:18px 22px}
.mp2-drawer-footer{padding:14px 22px 20px;border-top:1px solid var(--mp2-line);background:#fff}
.mp2-drawer-footer .mp2-primary{min-height:48px}
.mp2-drawer-subheading{display:block;margin-bottom:8px;color:var(--mp2-copy);font-size:12px;font-weight:700}
.mp2-drawer-quick{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--mp2-line)}
.mp2-drawer-assortment{display:grid}
.mp2-drawer .mp2-size-row{grid-template-columns:minmax(0,1fr) 138px;gap:12px;padding:12px 0}
.mp2-drawer .mp2-qty-control{grid-template-columns:36px 56px 36px;gap:5px}
.mp2-drawer .mp2-qty-control input{width:56px}
.mp2-drawer-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:13px 14px;border-radius:9px;background:var(--mp2-soft);font-size:13px}
.mp2-drawer-summary strong{font-size:16px}
.mp2-drawer-choice{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:54px;padding:12px 14px;border:1px solid #d4dbe6;border-radius:10px;background:#fff;color:var(--mp2-ink);font-size:14px;font-weight:700;text-align:left}
.mp2-drawer-choice+.mp2-drawer-choice{margin-top:9px}
.mp2-drawer-choice:hover,.mp2-drawer-choice:focus-visible,.mp2-drawer-choice.is-selected{border-color:var(--mp2-navy);box-shadow:0 0 0 1px var(--mp2-navy);color:var(--mp2-navy)}
.mp2-drawer .mp2-methods{display:grid;gap:9px;margin:0}
body.mp2-drawer-open{overflow:hidden!important}
@keyframes mp2-drawer-in{from{transform:translateX(28px);opacity:1}to{transform:translateX(0);opacity:1}}

@media(max-width:767px){
  .mp2-bot,.mp2-config{max-width:none}
  .mp2-section{padding:14px 0}
  .mp2-color-choice{flex-basis:68px}
  .mp2-color-choice img{width:58px;height:58px}
  .mp2-selector-row{min-height:55px;padding:10px 12px}
  .mp2-print-list{display:flex;flex-wrap:wrap}
  .mp2-print-choice{min-width:0;flex:1 1 calc(50% - 7px)}
  .mp2-drawer-panel{width:100%}
  .mp2-drawer-head{padding:18px 17px 14px}
  .mp2-drawer-content{padding:15px 17px}
  .mp2-drawer-footer{padding:12px 17px 17px}
  .mp2-gallery-actions{display:flex;flex-wrap:wrap}
  .mp2-gallery-action{width:auto;flex:1 1 150px}
}
@media(max-width:420px){
  .mp2-drawer .mp2-size-row{grid-template-columns:minmax(0,1fr) 124px;gap:8px}
  .mp2-drawer .mp2-qty-control{grid-template-columns:32px 50px 32px;gap:4px}
  .mp2-drawer .mp2-qty-control button,.mp2-drawer .mp2-qty-control input{height:36px}
  .mp2-drawer .mp2-qty-control input{width:50px}
}
@media(prefers-reduced-motion:reduce){.mp2-drawer-panel{animation:none}}
.mp2-bot [hidden],.mp2-drawer[hidden]{display:none!important}
.mp2-selector-copy .mp2-quantity-summary{display:block;margin:0;padding:0;border-radius:0;background:transparent;color:var(--mp2-copy);font-size:12px;line-height:1.35;font-weight:500}
.mp2-delivery-copy,.mp2-delivery-date{display:block}
.mp2-drawer .mp2-method-price{display:grid;justify-items:end;gap:4px}
.mp2-drawer .mp2-method-price span{display:block}
.mp2-drawer .mp2-method-price button{margin-top:2px}
@media(max-width:420px){.mp2-drawer .mp2-method-card{grid-template-columns:1fr}.mp2-drawer .mp2-method-price{justify-items:start;text-align:left}}

/* Botti 2.0.2: yhtenäinen typografia, oikean reunan lomakkeet ja näkyvä ostotilausvahvistus. */
.mp2-bot,.mp2-drawer{font-family:inherit}
body.mp2-product-active h1.product_title,
body.mp2-product-active .elementor-widget-woocommerce-product-title h1,
body.mp2-product-active .elementor-widget-woocommerce-product-title h2{font-size:clamp(26px,2.15vw,34px)!important;line-height:1.18!important;font-weight:700!important;letter-spacing:-.02em!important;text-transform:none!important}
.mp2-sku-injected{margin-bottom:6px;font-size:12px;font-weight:500}
.mp2-section{padding:13px 0}
.mp2-section-head{margin-bottom:8px}
.mp2-section h2,.mp2-section h3{font-size:15px;line-height:1.35;font-weight:700}
.mp2-current-value{font-size:12px}
.mp2-color-list{gap:7px}
.mp2-color-choice{flex-basis:68px}
.mp2-color-choice img{width:58px;height:58px}
.mp2-color-choice span{min-height:22px;font-size:10px;line-height:1.2}
.mp2-selector-row{min-height:50px;padding:9px 12px;border-radius:8px}
.mp2-selector-copy strong{font-size:14px;font-weight:700}
.mp2-selector-copy small{font-size:11px}
.mp2-selector-chevron{font-size:23px}
.mp2-print-choice{min-height:38px;padding:8px 10px;font-size:12px;font-weight:650}
.mp2-text-button{margin-top:9px;font-size:12px;font-weight:650}
.mp2-price-section{padding:15px 0}
.mp2-total{font-size:clamp(29px,3vw,38px);font-weight:760}
.mp2-price-per{margin-top:5px;font-size:12px}
.mp2-price-line{padding:6px 0;font-size:12px}
.mp2-delivery-box{gap:7px;margin-top:13px;padding:12px 0;border-top:1px solid var(--mp2-line);border-bottom:1px solid var(--mp2-line);border-radius:0;background:#fff;font-size:12px}
.mp2-delivery-box strong{font-size:13px}
.mp2-actions{gap:8px;margin-top:13px}
.mp2-actions .mp2-primary,.mp2-actions .mp2-secondary{min-height:48px;padding:10px 16px;border-radius:24px!important;font-size:14px;font-weight:700;box-shadow:none!important}
.mp2-actions .mp2-primary{border:2px solid var(--mp2-navy)!important;background:var(--mp2-navy)!important;color:#fff!important}
.mp2-actions .mp2-primary:hover,.mp2-actions .mp2-primary:focus-visible{background:#0e2858!important;border-color:#0e2858!important}
.mp2-actions .mp2-secondary{border:2px solid var(--mp2-navy)!important;background:#fff!important;color:var(--mp2-navy)!important}
.mp2-actions .mp2-secondary:hover,.mp2-actions .mp2-secondary:focus-visible{background:#edf4fa!important;color:#0e2858!important}
.mp2-status{font-size:12px}

/* Näyte ja lisätieto ovat kevyitä toimintovälilehtiä, eivät pääpainikkeita. */
.mp2-gallery-actions-wrap{margin-top:9px}
.mp2-gallery-actions{display:flex!important;gap:22px;margin:0 0 18px;border-bottom:1px solid var(--mp2-line)}
.mp2-gallery-action,.mp2-gallery-action.is-primary{flex:0 0 auto!important;width:auto!important;min-height:0;padding:8px 1px 7px;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;background:transparent!important;color:var(--mp2-navy)!important;font-size:12px;font-weight:650;box-shadow:none!important}
.mp2-gallery-action:hover,.mp2-gallery-action:focus-visible{border-bottom-color:var(--mp2-navy)!important;color:#0e2858!important}
.mp2-description{padding-top:15px;font-size:14px;line-height:1.6}
.mp2-description h2,.mp2-description h3,.mp2-technical h3{font-size:15px;font-weight:700}
.mp2-technical-row{padding:7px 0;font-size:12px}

/* Määrä näkyy varmasti kaikissa selaimissa ja oikean reunan ikkunassa. */
.mp2-drawer-panel{width:min(540px,100%)}
.mp2-drawer-head{padding:19px 20px 14px}
.mp2-drawer-title{font-size:20px;font-weight:700}
.mp2-drawer-lead{font-size:12px}
.mp2-drawer-content{padding:16px 20px}
.mp2-drawer-footer{padding:12px 20px 17px}
.mp2-drawer-footer[hidden]{display:none!important}
.mp2-drawer .mp2-size-row{grid-template-columns:minmax(0,1fr) 154px;gap:12px;padding:10px 0}
.mp2-drawer .mp2-qty-control{display:grid!important;grid-template-columns:38px 66px 38px!important;gap:6px!important;width:154px!important;min-width:154px!important;align-items:center}
.mp2-drawer .mp2-qty-control button,.mp2-drawer .mp2-qty-control input{display:block!important;visibility:visible!important;opacity:1!important;height:38px!important;margin:0!important;padding:0!important;border:1px solid #bfc9d8!important;border-radius:8px!important;background:#fff!important;color:var(--mp2-ink)!important;-webkit-text-fill-color:var(--mp2-ink)!important;box-shadow:none!important}
.mp2-drawer .mp2-qty-control input{width:66px!important;min-width:66px!important;text-align:center!important;font-size:14px!important;font-weight:700!important;appearance:textfield!important;-moz-appearance:textfield!important}
.mp2-drawer .mp2-qty-control button{width:38px!important;min-width:38px!important;font-size:19px!important;line-height:1!important}
.mp2-drawer .mp2-qty-control input::-webkit-outer-spin-button,.mp2-drawer .mp2-qty-control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.mp2-drawer-summary{font-size:12px}
.mp2-drawer-summary strong{font-size:14px}

/* Tarkat painatusmenetelmät luetaan selkeänä listana. */
.mp2-drawer .mp2-method-card{grid-template-columns:1fr;gap:9px;padding:13px}
.mp2-drawer .mp2-method-title{font-size:13px}
.mp2-drawer .mp2-method-meta{font-size:11px}
.mp2-drawer .mp2-method-price{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px 12px;justify-items:start;text-align:left;white-space:normal}
.mp2-drawer .mp2-method-price strong{font-size:14px}
.mp2-drawer .mp2-method-price span{font-size:11px;color:var(--mp2-copy)}
.mp2-drawer .mp2-method-price button{grid-column:2;grid-row:1/3;align-self:center;margin:0;padding:8px 13px}

/* Lomakkeet avautuvat samaan oikean reunan ikkunaan. */
.mp2-drawer-content .mp2-modal-form{gap:11px}
.mp2-drawer-content .mp2-form-grid{gap:10px}
.mp2-drawer-content .mp2-field{font-size:12px}
.mp2-drawer-content .mp2-field input,.mp2-drawer-content .mp2-field select,.mp2-drawer-content .mp2-field textarea{padding:10px 11px;border-radius:7px}
.mp2-drawer-content .mp2-modal-summary{margin-bottom:2px;padding:11px 12px;font-size:12px}
.mp2-drawer-content .mp2-primary{min-height:48px;border:2px solid var(--mp2-navy)!important;border-radius:24px!important;background:var(--mp2-navy)!important;color:#fff!important;font-size:14px;font-weight:700;text-decoration:none!important}

/* Ostotilaukseen lisäämisen palaute näkyy heti samassa ikkunassa. */
.mp2-success-panel{display:grid;justify-items:center;gap:10px;padding:22px 4px;text-align:center}
.mp2-success-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#dcecf8;color:var(--mp2-navy);font-size:30px;font-weight:800;animation:mp2-success-pop .42s cubic-bezier(.2,.9,.28,1.35)}
.mp2-success-panel h3{margin:2px 0 0;color:var(--mp2-ink);font-size:19px;line-height:1.3;font-weight:700}
.mp2-success-panel p{max-width:390px;margin:0;color:var(--mp2-copy);font-size:13px;line-height:1.5}
.mp2-success-actions{display:grid;gap:10px;width:100%;margin-top:8px}
.mp2-success-actions .mp2-order-link{display:flex;align-items:center;justify-content:center;width:100%;text-decoration:none!important}
.mp2-success-text{justify-self:center;padding:5px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--mp2-navy);font-size:12px;font-weight:650}
@keyframes mp2-success-pop{0%{transform:scale(.55);opacity:0}72%{transform:scale(1.1);opacity:1}100%{transform:scale(1)}}

@media(max-width:767px){
  .mp2-drawer-head{padding:17px 16px 13px}
  .mp2-drawer-content{padding:14px 16px}
  .mp2-drawer .mp2-size-row{grid-template-columns:minmax(0,1fr) 144px;gap:8px}
  .mp2-drawer .mp2-qty-control{grid-template-columns:36px 60px 36px!important;width:144px!important;min-width:144px!important;gap:6px!important}
  .mp2-drawer .mp2-qty-control input{width:60px!important;min-width:60px!important}
  .mp2-drawer .mp2-qty-control button{width:36px!important;min-width:36px!important}
  .mp2-gallery-actions{gap:18px}
}
@media(max-width:390px){
  .mp2-drawer .mp2-size-row{grid-template-columns:minmax(0,1fr) 134px;gap:6px}
  .mp2-drawer .mp2-qty-control{grid-template-columns:34px 54px 34px!important;width:134px!important;min-width:134px!important;gap:6px!important}
  .mp2-drawer .mp2-qty-control input{width:54px!important;min-width:54px!important}
  .mp2-drawer .mp2-qty-control button{width:34px!important;min-width:34px!important}
  .mp2-gallery-actions{gap:14px}
}
@media(prefers-reduced-motion:reduce){.mp2-success-mark{animation:none}}

/* Botti 2.0.3: tasapainoinen sivuasettelu, rauhallinen typografia ja rajattomat valinnat. */
:root{--mp2-pale:#eef4fa;--mp2-pale-strong:#e3edf7;--mp2-line:#e1e7ef;--mp2-copy:#5b687b}

/* Keskitetty, tasapainoinen kaksipalstainen tuotesivu. */
.mp2-layout-root{display:grid!important;grid-template-columns:minmax(420px,.94fr) minmax(540px,1.06fr)!important;gap:clamp(38px,4vw,72px)!important;align-items:start!important;width:min(1440px,calc(100% - 48px))!important;max-width:1440px!important;margin-inline:auto!important}
.mp2-layout-media,.mp2-layout-config{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important}
.mp2-layout-media .woocommerce-product-gallery{width:100%!important;max-width:540px!important;margin-inline:auto!important}
.mp2-layout-config .mp2-bot,.mp2-layout-config .mp2-config{width:100%!important;max-width:none!important}

/* Yksi typografinen asteikko ja maltilliset vahvuudet. */
.mp2-bot,.mp2-drawer{font-family:inherit;font-size:14px;line-height:1.48;font-weight:400}
body.mp2-product-active h1.product_title,
body.mp2-product-active .elementor-widget-woocommerce-product-title h1,
body.mp2-product-active .elementor-widget-woocommerce-product-title h2{font-size:clamp(25px,1.9vw,31px)!important;line-height:1.2!important;font-weight:650!important;letter-spacing:-.015em!important}
.mp2-sku-injected{font-size:12px!important;line-height:1.4!important;font-weight:450!important;color:var(--mp2-copy)!important}
.mp2-section{padding:15px 0!important}
.mp2-section-head{margin-bottom:8px!important}
.mp2-section h2,.mp2-section h3{font-size:15px!important;line-height:1.35!important;font-weight:600!important;letter-spacing:0!important}
.mp2-current-value{font-size:12px!important;line-height:1.4!important;font-weight:400!important}
.mp2-selector-copy strong{font-size:14px!important;line-height:1.35!important;font-weight:600!important}
.mp2-selector-copy small,.mp2-stock-note,.mp2-price-per,.mp2-status{font-size:12px!important;line-height:1.45!important;font-weight:400!important}
.mp2-total{font-size:clamp(30px,2.6vw,37px)!important;line-height:1.05!important;font-weight:700!important;letter-spacing:-.02em!important}
.mp2-price-line{font-size:13px!important;font-weight:400!important}
.mp2-price-line strong{font-weight:600!important}
.mp2-description{font-size:14px!important;line-height:1.62!important}
.mp2-description h2,.mp2-description h3,.mp2-technical h3{font-size:15px!important;font-weight:600!important}
.mp2-technical-row{font-size:13px!important}
.mp2-technical-row dt{font-weight:600!important}

/* Osioiden sisällä ei käytetä ylimääräisiä ääriviivakortteja. */
.mp2-color-list{gap:7px!important;padding:0 0 5px!important}
.mp2-color-choice{flex-basis:74px!important;gap:4px!important;padding:5px!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;font-weight:500!important}
.mp2-color-choice:hover,.mp2-color-choice:focus-visible{background:#f5f8fb!important;box-shadow:none!important}
.mp2-color-choice.is-selected{background:var(--mp2-pale)!important;color:var(--mp2-navy)!important;box-shadow:none!important}
.mp2-color-choice:focus-visible{outline:2px solid var(--mp2-navy);outline-offset:2px}
.mp2-color-choice img{width:64px!important;height:64px!important}
.mp2-color-choice span{min-height:22px!important;font-size:10px!important;line-height:1.2!important;font-weight:500!important}
.mp2-selector-row{min-height:46px!important;padding:5px 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.mp2-selector-row:hover,.mp2-selector-row:focus-visible{border:0!important;background:transparent!important;box-shadow:none!important;color:var(--mp2-navy)!important}
.mp2-selector-row:focus-visible{outline:2px solid var(--mp2-navy);outline-offset:4px}
.mp2-selector-chevron{font-size:22px!important}
.mp2-position-wrap{margin-bottom:10px!important}
.mp2-print-list{gap:8px!important}
.mp2-print-choice{min-width:0!important;min-height:42px!important;padding:9px 12px!important;border:0!important;border-radius:8px!important;background:#f5f7fa!important;box-shadow:none!important;color:var(--mp2-ink)!important;font-size:13px!important;font-weight:550!important}
.mp2-print-choice:hover,.mp2-print-choice:focus-visible{border:0!important;background:#edf2f7!important;box-shadow:none!important}
.mp2-print-choice.is-selected{border:0!important;background:var(--mp2-pale-strong)!important;box-shadow:none!important;color:var(--mp2-navy)!important}
.mp2-print-choice:focus-visible{outline:2px solid var(--mp2-navy);outline-offset:2px}
.mp2-print-choice small{font-size:11px!important;font-weight:400!important;color:var(--mp2-copy)!important}
.mp2-cheapest{margin-left:5px!important;padding:1px 5px!important;background:#edf5ef!important;color:#35724b!important;font-size:9px!important;font-weight:650!important}
.mp2-text-button{font-size:12px!important;line-height:1.4!important;font-weight:550!important}
.mp2-empty{padding:8px 0!important;border-radius:0!important;background:transparent!important;font-size:12px!important}

/* Hinta, toimitus ja päätoiminnot muodostavat yhden rauhallisen kokonaisuuden. */
.mp2-price-section{padding:17px 0 0!important}
.mp2-total-row{align-items:flex-end!important}
.mp2-breakdown{margin-top:10px!important}
.mp2-delivery-box{gap:6px!important;margin-top:13px!important;padding:12px 0!important;border-top:1px solid var(--mp2-line)!important;border-bottom:1px solid var(--mp2-line)!important;border-radius:0!important;background:#fff!important;font-size:12px!important}
.mp2-delivery-box strong{font-size:13px!important;font-weight:600!important}
.mp2-stock-summary{font-size:12px!important}
.mp2-actions{gap:8px!important;margin-top:14px!important}
.mp2-actions .mp2-primary,.mp2-actions .mp2-secondary{min-height:48px!important;padding:11px 16px!important;border:0!important;border-radius:24px!important;background:var(--mp2-navy)!important;color:#fff!important;font-size:14px!important;font-weight:600!important;box-shadow:none!important;opacity:1}
.mp2-actions .mp2-primary:hover,.mp2-actions .mp2-primary:focus-visible,.mp2-actions .mp2-secondary:hover,.mp2-actions .mp2-secondary:focus-visible{border:0!important;background:#0e2858!important;color:#fff!important;box-shadow:none!important}
.mp2-actions .mp2-primary:disabled,.mp2-actions .mp2-secondary:disabled{background:#c3cedd!important;color:#fff!important;opacity:1!important}

/* Näyte ja lisätieto säilyvät hillittyinä tekstitoimintoina. */
.mp2-gallery-actions{gap:24px!important;margin-bottom:16px!important}
.mp2-gallery-action,.mp2-gallery-action.is-primary{padding:7px 0 6px!important;font-size:12px!important;font-weight:550!important}

/* Oikean reunan paneelissa käytetään rivejä, ei kortteja korttien sisällä. */
.mp2-drawer-panel{width:min(560px,100%)!important}
.mp2-drawer-title{font-size:22px!important;line-height:1.25!important;font-weight:650!important;letter-spacing:-.01em!important}
.mp2-drawer-lead{font-size:12px!important;font-weight:400!important}
.mp2-drawer-choice{min-height:50px!important;padding:11px 2px!important;border:0!important;border-bottom:1px solid var(--mp2-line)!important;border-radius:0!important;background:#fff!important;font-size:14px!important;font-weight:550!important;box-shadow:none!important}
.mp2-drawer-choice:hover,.mp2-drawer-choice:focus-visible,.mp2-drawer-choice.is-selected{border-color:var(--mp2-line)!important;background:#f6f9fc!important;box-shadow:none!important;color:var(--mp2-navy)!important}
.mp2-methods{gap:0!important}
.mp2-method-card,.mp2-drawer .mp2-method-card{gap:8px!important;padding:14px 4px!important;border:0!important;border-bottom:1px solid var(--mp2-line)!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.mp2-method-card.is-selected,.mp2-drawer .mp2-method-card.is-selected{border-color:var(--mp2-line)!important;background:#f5f8fc!important;box-shadow:none!important}
.mp2-method-title{font-size:13px!important;font-weight:600!important}
.mp2-method-meta{font-size:11px!important;font-weight:400!important}
.mp2-method-price strong{font-size:14px!important;font-weight:600!important}
.mp2-method-price button{border:0!important;border-radius:7px!important;background:var(--mp2-pale)!important;color:var(--mp2-navy)!important;font-size:12px!important;font-weight:600!important}
.mp2-drawer-summary{border-radius:8px!important;font-size:12px!important}
.mp2-drawer-summary strong{font-size:14px!important;font-weight:600!important}
.mp2-drawer-footer .mp2-primary,.mp2-drawer-content .mp2-primary{font-size:14px!important;font-weight:600!important}

@media(max-width:1120px){
  .mp2-layout-root{grid-template-columns:minmax(350px,.9fr) minmax(470px,1.1fr)!important;gap:32px!important;width:min(1180px,calc(100% - 32px))!important}
  .mp2-layout-media .woocommerce-product-gallery{max-width:470px!important}
}
@media(max-width:767px){
  .mp2-layout-root{display:block!important;width:100%!important;max-width:none!important;margin:0!important}
  .mp2-layout-media,.mp2-layout-config{width:100%!important}
  .mp2-layout-media .woocommerce-product-gallery{max-width:520px!important}
  .mp2-color-choice{flex-basis:68px!important}
  .mp2-color-choice img{width:58px!important;height:58px!important}
  .mp2-print-choice{flex:1 1 calc(50% - 6px)!important}
}

/* Botti 2.0.4: nollasta alkavat määrät, selkeä lajitelmayhteenveto ja viimeistelty asiointipolku. */
.mp2-selector-copy .mp2-quantity-summary{display:grid!important;gap:2px!important;max-width:100%;overflow:visible!important}
.mp2-assortment-line{display:block;max-width:100%;overflow-x:auto;white-space:nowrap;color:var(--mp2-copy);font-size:11px;line-height:1.35;scrollbar-width:none}
.mp2-assortment-line::-webkit-scrollbar{display:none}
.mp2-assortment-line strong{font-size:11px!important;font-weight:650!important;color:var(--mp2-ink)}
.mp2-total.is-starting{font-size:20px!important;line-height:1.25!important;font-weight:650!important;letter-spacing:0!important}

/* Linkkien alleviivaus on vain tekstin levyinen. */
.mp2-text-button{width:max-content!important;max-width:100%;justify-self:start!important;align-self:start!important}
.mp2-delivery-contact{width:max-content!important;justify-self:start!important}

/* Päätoiminto on tumma, ostotilaus kevyt ääriviivapainike. */
.mp2-actions .mp2-primary{border:2px solid var(--mp2-navy)!important;background:var(--mp2-navy)!important;color:#fff!important}
.mp2-actions .mp2-secondary{border:2px solid var(--mp2-navy)!important;background:#fff!important;color:var(--mp2-navy)!important}
.mp2-actions .mp2-secondary:hover,.mp2-actions .mp2-secondary:focus-visible{border-color:#0e2858!important;background:#edf4fa!important;color:#0e2858!important}
.mp2-actions .mp2-primary:disabled{border-color:var(--mp2-navy)!important;background:var(--mp2-navy)!important;color:#fff!important;opacity:.68!important}
.mp2-actions .mp2-secondary:disabled{border-color:var(--mp2-navy)!important;background:#fff!important;color:var(--mp2-navy)!important;opacity:.58!important}

/* Näyte- ja lisätietolinkkien jälkeen on vain tuotekuvauksen oma erotin. */
.mp2-gallery-actions{margin-bottom:0!important;border-bottom:0!important}
.mp2-gallery-actions-wrap{margin-bottom:0!important}
.mp2-product-info{margin-top:14px!important}
.mp2-description{border-top:1px solid var(--mp2-line)!important}

/* Merkintämenetelmän vanhan botin mukainen infoteksti. */
.mp2-method-heading{display:flex;align-items:center;gap:8px}
.mp2-method-heading .mp2-method-title{flex:0 1 auto}
.mp2-method-info-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;color:var(--mp2-navy)!important;line-height:1!important;box-shadow:none!important;text-transform:none!important}
.mp2-method-info-toggle svg{display:block;width:20px;height:20px;overflow:visible}
.mp2-method-info-toggle svg circle:first-child,.mp2-method-info-toggle svg path{fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.mp2-method-info-toggle svg .mp2-info-dot{fill:currentColor;stroke:none}
.mp2-method-info-toggle:hover,.mp2-method-info-toggle:focus-visible,.mp2-method-info-toggle[aria-expanded="true"]{background:var(--mp2-pale)!important;color:#0e2858!important}
.mp2-method-info{margin:9px 0 0;padding:10px 11px;border-radius:8px;background:var(--mp2-pale);color:#42526a;font-size:12px;line-height:1.5}
.mp2-method-info[hidden]{display:none!important}

/* Näytelista käyttää koko oikean paneelin vapaan korkeuden. */
.mp2-drawer-content.mp2-sample-content{overflow:hidden!important}
.mp2-sample-form{display:flex!important;flex-direction:column;height:100%;min-height:0;gap:12px!important}
.mp2-sample-list{flex:1 1 auto;min-height:0;max-height:none!important;overflow:auto!important;padding-right:4px}
.mp2-sample-form>.mp2-primary{flex:0 0 auto;margin-top:2px}
.mp2-sample-form>.mp2-modal-status{flex:0 0 auto}

/* Lisätietopyynnössä asiantuntija näkyy ennen lomaketta. */
.mp2-contact-card{display:grid;grid-template-columns:62px minmax(0,1fr);gap:13px;align-items:center;margin:0 0 18px;padding:13px 0;border-bottom:1px solid var(--mp2-line)}
.mp2-contact-card img{display:block;width:62px;height:62px;border-radius:50%;object-fit:cover}
.mp2-contact-copy{display:grid;gap:2px;min-width:0}
.mp2-contact-copy>strong{color:var(--mp2-ink);font-size:14px;font-weight:650}
.mp2-contact-copy>span{color:var(--mp2-copy);font-size:12px;line-height:1.4}
.mp2-contact-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:6px}
.mp2-contact-actions a{color:var(--mp2-navy);font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px}
.mp2-contact-form-title{margin:0 0 12px;color:var(--mp2-ink);font-size:14px!important;line-height:1.35;font-weight:650!important}

@media(max-width:480px){
  .mp2-assortment-line{font-size:10.5px}
  .mp2-contact-card{grid-template-columns:52px minmax(0,1fr)}
  .mp2-contact-card img{width:52px;height:52px}
}
/* Mobile: hinta alkaa vasemmasta reunasta kuten muu sisältö. */
@media(max-width:700px){
  .mp2-total-row{align-items:flex-start!important}
  .mp2-total-row>div{width:100%}
}


/* 2.0.5: saatavuuden tarkistus on selkeä ja toimintoon johtava. */
.mp2-delivery-estimate[hidden]{display:none!important}
.mp2-delivery-contact[hidden]{display:none!important}
.mp2-availability-notice{margin:0 0 14px;padding:11px 12px;border-left:3px solid #d28a22;background:#fff8ec;color:#4b3a1c;font-size:12px;line-height:1.5}


/* Botti 2.0.6: typografinen viimeistely, tasapainoinen asettelu ja aina käytettävät päätoiminnot. */
:root{
  --mp2-navy:#173873;
  --mp2-navy-hover:#102d61;
  --mp2-pale:#eef4fa;
  --mp2-ink:#162238;
  --mp2-copy:#59677b;
  --mp2-line:#dfe5ed;
}

/* Tasapainoinen, keskitetty kaksipalstainen sivu: valinnoille hieman enemmän tilaa kuin kuvalle. */
.mp2-layout-root{
  grid-template-columns:minmax(360px,.82fr) minmax(600px,1.18fr)!important;
  gap:clamp(42px,4vw,62px)!important;
  width:min(1360px,calc(100% - 48px))!important;
  max-width:1360px!important;
  justify-content:center!important;
}
.mp2-layout-media .woocommerce-product-gallery{max-width:500px!important}
.mp2-layout-config .mp2-bot,.mp2-layout-config .mp2-config{max-width:760px!important}

/* Yksi typografinen järjestelmä. */
.mp2-bot,.mp2-drawer{font-family:inherit!important;color:var(--mp2-ink);font-size:14px;line-height:1.5;font-weight:400;letter-spacing:0}
.mp2-section{padding:24px 0!important;border-top:1px solid var(--mp2-line)!important}
.mp2-section:first-child{padding-top:6px!important;border-top:0!important}
.mp2-section-head{margin:0 0 16px!important}
.mp2-section h2,.mp2-section h3{font-size:16px!important;line-height:1.35!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}
.mp2-current-value{font-size:13px!important;line-height:1.45!important;font-weight:400!important}
.mp2-selector-copy{gap:6px!important}
.mp2-selector-copy strong{font-size:16px!important;line-height:1.35!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}
.mp2-selector-copy small,.mp2-stock-note,.mp2-price-per,.mp2-status,.mp2-empty{font-size:13px!important;line-height:1.45!important;font-weight:400!important}
.mp2-empty{padding:0!important;margin:0!important;color:var(--mp2-copy)!important;background:transparent!important}
.mp2-price-section{padding:24px 0 0!important}
.mp2-total{font-size:clamp(30px,2.6vw,38px)!important;line-height:1.08!important;font-weight:700!important;letter-spacing:-.02em!important}
.mp2-total.is-starting{font-size:22px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:0!important}
.mp2-price-per{margin-top:6px!important}
.mp2-description{max-width:72ch;margin:0!important;padding-top:24px!important;font-size:15px!important;line-height:1.65!important}
.mp2-description h2,.mp2-description h3,.mp2-technical h3{margin-bottom:14px!important;font-size:16px!important;line-height:1.35!important;font-weight:600!important}
.mp2-description p{margin:0 0 14px!important}

/* Värinimet yhdelle riville, normaali kirjainkoko ja selkeä valittu tila. */
.mp2-color-list{gap:8px!important;padding:0 0 4px!important}
.mp2-color-choice{flex:0 0 96px!important;min-width:96px!important;padding:6px!important;text-transform:none!important}
.mp2-color-choice img{width:84px!important;height:76px!important;object-fit:contain!important}
.mp2-color-choice span{display:block!important;min-height:0!important;max-width:84px;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;overflow-wrap:normal!important;font-size:10.5px!important;line-height:1.35!important;font-weight:500!important;text-transform:none!important}

/* Valintarivit ovat rauhallisia eikä niissä ole turhaa korttikehystä. */
.mp2-selector-row{min-height:48px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.mp2-selector-row:hover,.mp2-selector-row:focus-visible{background:transparent!important;box-shadow:none!important;color:var(--mp2-navy)!important}
.mp2-selector-row:focus-visible{outline:2px solid var(--mp2-navy);outline-offset:5px}
.mp2-quantity-summary[hidden]{display:none!important}
.mp2-selector-copy .mp2-quantity-summary{gap:4px!important;margin:0!important;padding:0!important;background:transparent!important}
.mp2-assortment-line{font-size:12px!important;line-height:1.45!important}
.mp2-assortment-line strong{font-size:12px!important;font-weight:600!important}

/* Merkintävaihtoehtoja korkeintaan kolme, ilman raskaita ääriviivoja. */
.mp2-print-list{gap:8px!important}
.mp2-print-choice{flex:1 1 150px!important;max-width:220px;min-height:46px!important;padding:10px 12px!important;border:0!important;border-radius:8px!important;background:#f4f7fa!important;color:var(--mp2-ink)!important;font-size:14px!important;font-weight:550!important;text-transform:none!important}
.mp2-print-choice.is-selected{background:var(--mp2-pale)!important;color:var(--mp2-navy)!important;box-shadow:inset 0 0 0 1px #cbd9e8!important}
.mp2-print-choice small{margin-top:5px!important;font-size:12px!important;line-height:1.4!important;font-weight:400!important}
.mp2-text-button{width:max-content!important;max-width:100%!important;margin-top:14px!important;padding:2px 0!important;border:0!important;border-bottom:1px solid currentColor!important;background:transparent!important;color:var(--mp2-navy)!important;font-size:13px!important;line-height:1.45!important;font-weight:550!important;text-transform:none!important;letter-spacing:0!important}

/* Hinta ja toimitus pysyvät samassa järjestyksessä, ilman suurta värilaatikkoa. */
.mp2-total-row{min-height:70px;align-items:flex-end!important}
.mp2-delivery-box{gap:6px!important;margin-top:16px!important;padding:16px 0!important;border-top:1px solid var(--mp2-line)!important;border-bottom:0!important;border-radius:0!important;background:#fff!important}
.mp2-delivery-box strong{font-size:14px!important;line-height:1.4!important;font-weight:600!important}
.mp2-stock-summary{font-size:13px!important;line-height:1.45!important}
.mp2-delivery-contact{width:max-content!important;margin-top:12px!important}

/* Pääpainikkeet näyttävät aina aktiivisilta. */
.mp2-actions{gap:10px!important;margin-top:18px!important}
.mp2-actions .mp2-primary,.mp2-actions .mp2-secondary{min-height:50px!important;padding:12px 18px!important;border-radius:12px!important;font-size:14px!important;line-height:1.3!important;font-weight:650!important;letter-spacing:.035em!important;text-transform:uppercase!important;opacity:1!important;cursor:pointer!important}
.mp2-actions .mp2-primary,.mp2-actions .mp2-primary:disabled{border:2px solid var(--mp2-navy)!important;background:var(--mp2-navy)!important;color:#fff!important;opacity:1!important}
.mp2-actions .mp2-secondary,.mp2-actions .mp2-secondary:disabled{border:2px solid var(--mp2-navy)!important;background:#fff!important;color:var(--mp2-navy)!important;opacity:1!important}
.mp2-actions .mp2-primary:hover,.mp2-actions .mp2-primary:focus-visible{background:var(--mp2-navy-hover)!important;border-color:var(--mp2-navy-hover)!important}
.mp2-actions .mp2-secondary:hover,.mp2-actions .mp2-secondary:focus-visible{background:var(--mp2-pale)!important;border-color:var(--mp2-navy-hover)!important;color:var(--mp2-navy-hover)!important}
.mp2-status:empty{display:none!important}
.mp2-status{min-height:0!important;margin:10px 0 0!important;padding:9px 11px!important;border-left:3px solid #d28a22;background:#fff8e8;color:#594319!important;border-radius:0 6px 6px 0}

/* Näyte ja lisätieto ovat hillittyjä tekstilinkkejä lähellä tuotekuvausta. */
.mp2-gallery-actions-wrap{height:auto!important;min-height:0!important;margin:14px 0 0!important;padding:0!important;align-self:start!important}
.mp2-gallery-actions{display:flex!important;gap:24px!important;margin:0!important;padding:0!important;border:0!important}
.mp2-gallery-action,.mp2-gallery-action.is-primary{min-height:0!important;padding:4px 0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--mp2-navy)!important;font-size:13px!important;line-height:1.45!important;font-weight:550!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important}
.mp2-gallery-action:hover,.mp2-gallery-action:focus-visible,.mp2-gallery-action.is-primary:hover,.mp2-gallery-action.is-primary:focus-visible{text-decoration:underline;text-underline-offset:4px;background:transparent!important;color:var(--mp2-navy-hover)!important}
.mp2-product-info{height:auto!important;min-height:0!important;margin:28px 0 0!important;padding:0!important;align-self:start!important}
.mp2-report-wrap{max-width:72ch;margin:26px 0 0!important;padding-top:0!important;text-align:left!important}
.mp2-report{padding:2px 0!important;color:#7a8595!important;font-size:11px!important;line-height:1.4!important;font-weight:400!important;text-decoration:underline;text-underline-offset:3px;text-transform:none!important}

/* Oikean reunan paneelit: kiinteä otsikko ja alatunniste, vain sisältö vierittyy. */
.mp2-drawer-panel{grid-template-rows:auto minmax(0,1fr) auto!important;width:min(580px,100%)!important}
.mp2-drawer-head{padding:22px 24px 17px!important}
.mp2-drawer-content{min-height:0!important;overflow:auto!important;padding:18px 24px!important}
.mp2-drawer-footer{display:block;padding:14px 24px 20px!important;border-top:1px solid var(--mp2-line)!important;background:#fff!important}
.mp2-drawer-footer[hidden]{display:none!important}
.mp2-drawer-title{font-size:24px!important;line-height:1.25!important;font-weight:650!important}
.mp2-drawer-lead{font-size:13px!important;line-height:1.5!important}
.mp2-drawer-footer .mp2-primary{min-height:48px!important;border-radius:12px!important;text-transform:uppercase!important;letter-spacing:.035em!important}
.mp2-method-card,.mp2-drawer .mp2-method-card{padding:16px 0!important}
.mp2-method-title{font-size:14px!important;line-height:1.4!important;font-weight:600!important}
.mp2-method-meta{font-size:12px!important;line-height:1.45!important}
.mp2-method-price button{border:1px solid var(--mp2-navy)!important;border-radius:8px!important;background:#fff!important;color:var(--mp2-navy)!important}
.mp2-method-info-toggle{flex-basis:18px!important;width:18px!important;height:18px!important}
.mp2-method-info-toggle svg{width:18px!important;height:18px!important}

/* Lomakkeiden toimintopainike kuuluu paneelin kiinteään alatunnisteeseen. */
.mp2-action-submit{width:100%!important;margin:0!important}
.mp2-drawer-content .mp2-modal-form{padding-bottom:4px}
.mp2-sample-content{overflow:auto!important}
.mp2-sample-form{height:auto!important;min-height:100%!important}
.mp2-sample-list{max-height:none!important;overflow:visible!important}

/* Mobiili. */
@media(max-width:1120px){
  .mp2-layout-root{grid-template-columns:minmax(330px,.86fr) minmax(500px,1.14fr)!important;gap:32px!important;width:min(1160px,calc(100% - 32px))!important}
  .mp2-layout-media .woocommerce-product-gallery{max-width:460px!important}
}
@media(max-width:767px){
  .mp2-layout-root{display:block!important;width:100%!important;max-width:none!important;margin:0!important}
  .mp2-layout-config .mp2-bot,.mp2-layout-config .mp2-config{max-width:none!important}
  .mp2-color-choice{flex-basis:84px!important;min-width:84px!important}
  .mp2-color-choice img{width:72px!important;height:66px!important}
  .mp2-color-choice span{max-width:72px!important}
  .mp2-print-choice{flex:1 1 calc(50% - 6px)!important;max-width:none!important}
  .mp2-gallery-actions{gap:18px!important}
  .mp2-product-info{margin-top:22px!important}
  .mp2-description{max-width:none!important}
  .mp2-drawer-head{padding:18px 16px 14px!important}
  .mp2-drawer-content{padding:16px!important}
  .mp2-drawer-footer{padding:12px 16px 16px!important}
}

/* 2.0.6 viimeistely: Elementor-rakenteen vasen sisältö ja oikea konfiguraattori pysyvät omissa palstoissaan. */
@media(min-width:768px){
  .mp2-layout-root{
    box-sizing:border-box!important;
    align-items:start!important;
    grid-auto-flow:row!important;
  }
  .mp2-layout-root>.mp2-layout-media{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .mp2-layout-root>.mp2-gallery-actions-wrap{
    grid-column:1!important;
    grid-row:2!important;
    min-width:0!important;
  }
  .mp2-layout-root>.mp2-product-info{
    grid-column:1!important;
    grid-row:3!important;
    min-width:0!important;
  }
  .mp2-layout-root>.mp2-report-wrap{
    grid-column:1!important;
    grid-row:4!important;
    min-width:0!important;
  }
  .mp2-layout-root>.mp2-layout-config{
    grid-column:2!important;
    grid-row:1 / span 4!important;
    min-width:0!important;
    align-self:start!important;
  }
}
@media(max-width:767px){
  .mp2-layout-root>.mp2-layout-media,
  .mp2-layout-root>.mp2-gallery-actions-wrap,
  .mp2-layout-root>.mp2-product-info,
  .mp2-layout-root>.mp2-report-wrap,
  .mp2-layout-root>.mp2-layout-config{
    grid-column:auto!important;
    grid-row:auto!important;
  }
}

/* 2.0.6: myös mobiilissa ulkopadding sisältyy leveyteen eikä sisältö vuoda sivun yli. */
.mp2-layout-root{box-sizing:border-box!important}
.mp2-layout-root>.mp2-layout-media,
.mp2-layout-root>.mp2-gallery-actions-wrap,
.mp2-layout-root>.mp2-product-info,
.mp2-layout-root>.mp2-report-wrap,
.mp2-layout-root>.mp2-layout-config{
  box-sizing:border-box!important;
  max-width:100%!important;
}
@media(max-width:767px){
  .mp2-layout-root>.mp2-layout-media,
  .mp2-layout-root>.mp2-gallery-actions-wrap,
  .mp2-layout-root>.mp2-product-info,
  .mp2-layout-root>.mp2-report-wrap,
  .mp2-layout-root>.mp2-layout-config{
    width:100%!important;
  }
}
