/*
Theme Name: License Market
Description: A lightweight WooCommerce theme for digital software stores.
Version: 2.2.0
Text Domain: license-market
*/

:root { --lm-blue: #4e78b9; --lm-black: #292929; --lm-line: #e5e5e5; --lm-muted: #777; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: #292929; background: #fff; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
.lm-wrap { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.lm-topbar { height: 40px; color: #666; border-bottom: 1px solid var(--lm-line); font-size: 11px; }
.lm-topbar .lm-wrap { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.lm-top-links { display: flex; align-items: center; height: 100%; }
.lm-top-links a { height: 100%; display: flex; align-items: center; padding: 0 15px; border-left: 1px solid var(--lm-line); font-weight: 600; }
.lm-header-main { height: 82px; }
.lm-header-main .lm-wrap { position: relative; height: 100%; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; }
.lm-benefits, .lm-actions { display: flex; align-items: center; gap: 36px; }
.lm-benefit { display: flex; align-items: center; gap: 12px; }
.lm-benefit-icon { width: 47px; height: 47px; flex: 0 0 47px; display: grid; place-items: center; border: 1px solid #dbe5f3; background: #f1f5fc; border-radius: 50%; font-size: 22px; }
.lm-benefit .lm-benefit-icon svg { display: block; width: 26px; height: 26px; color: var(--lm-blue, #4e78b9); }
.lm-benefit strong, .lm-benefit span { display: block; }
.lm-benefit .lm-benefit-icon { display: grid; place-items: center; }
.lm-benefit span { color: #777; font-size: 12px; }
.lm-brand { display: flex; align-items: center; gap: 12px; padding: 0 50px; font-size: clamp(26px, 3vw, 42px); font-weight: 900; letter-spacing: -.055em; white-space: nowrap; }
.lm-logo-placeholder { width: 54px; height: 54px; display: grid; place-items: center; color: #888; border: 1px dashed #aaa; border-radius: 50%; font-size: 9px; font-weight: 600; letter-spacing: .08em; }
.lm-actions { justify-content: flex-end; gap: 20px; font-size: 12px; font-weight: 700; }
.lm-action-icon { font-size: 24px; font-weight: 400; }
.lm-mobile-menu { display: none; }
.lm-link-button { padding: 0; color: inherit; border: 0; background: transparent; font: inherit; cursor: pointer; }
.lm-cart-count { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 4px; color: white; background: var(--lm-blue); border-radius: 50%; font-size: 10px; }
.lm-navbar { min-height: 52px; color: white; background: var(--lm-black); }
.lm-navbar .lm-wrap { position:relative; }
.lm-navbar .lm-wrap>ul { align-items:center; }
.lm-navbar .lm-shop-menu { display:flex; align-items:center; }
.lm-shop-toggle { display:inline-flex; align-items:center; justify-content:center; width:32px; height:52px; padding:0; border:0; background:transparent; color:inherit; cursor:pointer; }
.lm-shop-toggle svg { transition:transform .2s; }
.lm-shop-menu.is-expanded .lm-shop-toggle svg { transform:rotate(180deg); }
.lm-navbar .lm-shop-panel { position:absolute; top:100%; left:0; right:0; z-index:1000; max-height:75vh; overflow-y:auto; padding:28px 34px 0; background:#fff; color:#303843; border:1px solid #e6eaf0; box-shadow:0 18px 36px #18243824; border-radius:0 0 12px 12px; }
.lm-shop-panel[hidden] { display:none!important; }
.lm-shop-panel-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:22px; border-bottom:1px solid #edf0f5; }
.lm-shop-panel-heading>span { font-size:11px; font-weight:800; letter-spacing:.16em; color:#778395; }
.lm-navbar .lm-shop-panel-heading a { color:#4e78b9; }
.lm-shop-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px 32px; padding:26px 0; }
.lm-shop-column h2 { margin:0 0 12px; font-size:14px; line-height:1.4; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
.lm-navbar .lm-shop-column ul { display:grid; gap:3px; overflow:visible; }
.lm-navbar .lm-shop-column li { border:0; }
.lm-navbar .lm-shop-panel a { white-space:normal; }
.lm-navbar .lm-shop-column a { display:block; padding:6px 0; font-size:14px; line-height:1.45; font-weight:400; letter-spacing:0; color:#697583; }
.lm-navbar .lm-shop-column a:hover { color:#4e78b9; text-decoration:underline; text-underline-offset:4px; }
.lm-shop-panel-footer { display:flex; justify-content:space-between; gap:12px; padding:16px 0; border-top:1px solid #edf0f5; font-size:12px; color:#7a8593; }
.lm-shop-panel-footer a { color:#4e78b9; }
.lm-shop-toggle:focus-visible,.lm-shop-panel a:focus-visible { outline:2px solid #4e78b9; outline-offset:4px; }
.lm-navbar .lm-wrap { min-height: 52px; display: flex; align-items: center; justify-content: center; }
.lm-navbar ul { display: flex; gap: 36px; margin: 0; padding: 0; list-style: none; }
.lm-navbar a { font-size: 12px; font-weight: 700; letter-spacing: .02em; }
.lm-main { min-height: 58vh; }
.lm-page { padding: 58px 0 80px; }
.lm-page h1 { font-size: 36px; }

/* Homepage: four-image promotional carousel inspired by marketplace campaign banners. */
.lm-home-banner { padding: 0; overflow: hidden; background: transparent; }
.lm-home-banner > .lm-wrap { width: 100%; max-width: none; }
.lm-home-banner__viewport { position: relative; width: 100%; overflow: hidden; border-radius: 0; background: #3c217c; box-shadow: none; }
.lm-home-banner__slides { position: relative; height: clamp(340px, 34.75vw, 560px); min-height: 0; }
.lm-home-banner__slide { position: absolute; inset: 0; display: flex; align-items: center; overflow: hidden; isolation: isolate; padding: 52px 9%; color: #fff; animation: lm-banner-enter .35s ease both; }
.lm-home-banner__slide[hidden] { display: none; }
.lm-home-banner__slide::before { position: absolute; z-index: -2; inset: 0; background: var(--lm-banner-background); content: ""; }
.lm-home-banner__slide::after { position: absolute; z-index: -1; top: -42%; right: 18%; width: 54%; aspect-ratio: 1; border: 7vw solid rgba(255,255,255,.065); border-radius: 50%; content: ""; }
.lm-home-banner__slide--windows { --lm-banner-background: linear-gradient(118deg,#43217d 0%,#6940c8 55%,#9258e3 100%); }
.lm-home-banner__slide--office { --lm-banner-background: linear-gradient(118deg,#006e91 0%,#0c9ca9 56%,#33bcc0 100%); }
.lm-home-banner__slide--autodesk { --lm-banner-background: linear-gradient(118deg,#bf324e 0%,#e55455 52%,#f48d52 100%); }
.lm-home-banner__slide--spss { --lm-banner-background: linear-gradient(118deg,#1c4d91 0%,#2679bd 52%,#28a9c1 100%); }
.lm-home-banner__copy { position: relative; z-index: 3; width: 55%; max-width: 700px; display: flex; align-items: flex-start; flex-direction: column; }
.lm-home-banner__copy small { margin-bottom: 12px; padding: 7px 10px; color: #282135; border-radius: 4px; background: #f5dd45; font-size: 11px; font-weight: 900; letter-spacing: .14em; }
.lm-home-banner__copy strong { font-size: clamp(42px, 5vw, 68px); font-weight: 900; letter-spacing: -.055em; line-height: .98; }
.lm-home-banner__copy > span { max-width: 460px; margin-top: 16px; color: rgba(255,255,255,.82); font-size: 16px; line-height: 1.5; }
.lm-home-banner__copy > b { min-height: 48px; display: inline-flex; align-items: center; gap: 14px; margin-top: 24px; padding: 0 21px; color: #292532; border-radius: 5px; background: #fff; box-shadow: 0 8px 20px rgba(30,14,56,.17); font-size: 12px; letter-spacing: .04em; }
.lm-home-banner__copy i { font-size: 18px; font-style: normal; }
.lm-home-banner__placeholder { position: absolute; right: 8.5%; width: min(31%, 520px); aspect-ratio: 1.32; display: flex; align-items: center; justify-content: center; flex-direction: column; color: rgba(255,255,255,.9); border: 2px dashed rgba(255,255,255,.48); border-radius: 14px; background: rgba(255,255,255,.1); box-shadow: 22px 22px 0 rgba(23,12,49,.13); transform: rotate(-4deg); }
.lm-home-banner__placeholder::before { width: 58px; height: 42px; display: block; margin-bottom: 15px; border: 3px solid currentColor; border-radius: 5px; content: ""; opacity: .65; }
.lm-home-banner__placeholder em { font-size: 11px; font-style: normal; font-weight: 800; letter-spacing: .16em; opacity: .72; }
.lm-home-banner__placeholder b { margin-top: 3px; font-size: clamp(25px,3vw,42px); letter-spacing: -.04em; }
.lm-home-banner__arrow { position: absolute; z-index: 5; top: 50%; width: 42px; height: 58px; display: grid; place-items: center; padding: 0 0 5px; transform: translateY(-50%); color: #2d2737; border: 0; border-radius: 5px; background: rgba(255,255,255,.92); box-shadow: 0 5px 18px rgba(26,18,38,.18); font-size: 38px; line-height: 1; cursor: pointer; transition: background .15s, transform .15s; }
.lm-home-banner__arrow:hover { background: #fff; transform: translateY(-50%) scale(1.05); }
.lm-home-banner__arrow--prev { left: 16px; }
.lm-home-banner__arrow--next { right: 16px; }
.lm-home-banner__dots { position: absolute; z-index: 6; bottom: 17px; left: 50%; display: flex; align-items: center; gap: 8px; transform: translateX(-50%); }
.lm-home-banner__dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.45); box-shadow: 0 0 0 1px rgba(25,18,40,.12); cursor: pointer; transition: width .18s, border-radius .18s, background .18s; }
.lm-home-banner__dots button[aria-current="true"] { width: 27px; border-radius: 5px; background: #fff; }
@keyframes lm-banner-enter { from { opacity: .25; transform: translateX(1.2%); } to { opacity: 1; transform: translateX(0); } }
.home .sc-products { padding-top: clamp(34px, 4vw, 58px); }

.lm-footer { padding: 56px 0 24px; color: #bbb; background: #222; }
.lm-footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 50px; }
.lm-footer h3 { margin: 0 0 16px; color: white; font-size: 14px; }
.lm-footer ul { margin: 0; padding: 0; list-style: none; }
.lm-footer li { margin: 8px 0; }
.lm-footer-brand { color: white; font-size: 30px; font-weight: 900; }
.lm-copyright { margin-top: 42px; padding-top: 20px; border-top: 1px solid #3a3a3a; font-size: 11px; }
.woocommerce .products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 25px; }
.woocommerce .products::before, .woocommerce .products::after { display: none; }
.woocommerce ul.products li.product { float: none; width: auto; margin: 0; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button { color: white; background: var(--lm-blue); border-radius: 0; }
.woocommerce .woocommerce-breadcrumb, .lm-breadcrumb { margin-bottom: 28px; color: #999; font-size: 12px; }
.lm-breadcrumb-separator { margin: 0 8px; }
.woocommerce div.product { display: grid; grid-template-columns: minmax(320px, 1fr) minmax(340px, 1fr); gap: 58px; }
.woocommerce div.product .woocommerce-product-gallery, .woocommerce div.product .summary { float: none; width: auto; margin: 0; }
.woocommerce div.product .woocommerce-product-gallery { border: 1px solid var(--lm-line); background: #f5f7f9; }
.woocommerce div.product .summary .product_title { margin: 5px 0 12px; font-size: clamp(28px, 4vw, 42px); line-height: 1.18; }
.woocommerce div.product p.price { color: var(--lm-blue); font-size: 26px; font-weight: 700; }
.woocommerce div.product form.cart { display: flex; gap: 10px; margin: 24px 0 15px; }
.woocommerce .quantity .qty { min-height: 46px; }
.lm-delivery-points { display: grid; gap: 7px; margin: 20px 0; color: #555; }
.sc-wishlist-single { padding: 10px 0; color: #444; border: 0; background: transparent; font-size: 12px; font-weight: 700; cursor: pointer; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1; margin-top: 36px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; border-bottom: 1px solid var(--lm-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 25px 0 0; padding: 0; border: 0; background: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 14px 0; }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 900px; padding: 24px 0; }
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 240px 1fr; gap: 36px; }
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { float: none; width: auto; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; border: 1px solid var(--lm-line); list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 13px 16px; border-bottom: 1px solid var(--lm-line); }
.woocommerce form.login, .woocommerce form.register, .woocommerce form.checkout_coupon { border-color: var(--lm-line); border-radius: 0; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce .select2-container .select2-selection { min-height: 44px; padding: 9px 12px; border: 1px solid #d4d4d4; border-radius: 0; }

/* Shared WooCommerce surfaces. */
.lm-page > .lm-wrap > article > h1,
.lm-page > .lm-wrap > h1,
.woocommerce-products-header__title { margin: 0 0 34px; color: #2d2d2d; font-size: clamp(30px, 4vw, 40px); line-height: 1.15; letter-spacing: -.035em; }
.woocommerce-error,
.woocommerce-info,
.woocommerce-message { margin: 0 0 24px; padding: 16px 18px 16px 46px; color: #444; border: 0; border-left: 3px solid var(--lm-blue); background: #f4f7fb; box-shadow: 0 1px 5px rgba(28,36,46,.06); line-height: 1.55; }
.woocommerce-error { border-left-color: #d9544d; background: #fff6f5; }
.woocommerce-message::before,
.woocommerce-info::before { top: 16px; color: var(--lm-blue); }
.woocommerce-error::before { top: 16px; color: #d9544d; }
.woocommerce table.shop_table { overflow: hidden; border: 1px solid #e5e7ea; border-radius: 0; border-collapse: collapse; background: #fff; }
.woocommerce table.shop_table th { padding: 14px 16px; color: #444; background: #f5f7fa; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.woocommerce table.shop_table td { padding: 16px; border-top: 1px solid #eceef1; }
.woocommerce address { padding: 18px; border: 1px solid #e4e6e9; background: #fff; font-style: normal; line-height: 1.8; }
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button { min-height: 44px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; letter-spacing: .035em; text-transform: uppercase; transition: background .15s; }
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover { color: #fff; background: #3f68a8; }

/* My account: guest sign-in/register and signed-in dashboard. */
body.woocommerce-account { background: #f7f8fa; }
.woocommerce-account .lm-page { padding-top: 50px; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.woocommerce-account #customer_login { max-width: 980px; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 0 auto; }
.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2 { float: none; width: auto; min-width: 0; }
.woocommerce-account #customer_login h2 { margin: 0; padding: 22px 28px 18px; color: #2d2d2d; border-bottom: 2px solid var(--lm-blue); background: #fff; font-size: 23px; line-height: 1.2; }
.woocommerce-account #customer_login form.login,
.woocommerce-account #customer_login form.register { min-height: calc(100% - 65px); margin: 0; padding: 26px 28px 30px; border: 0; background: #fff; box-shadow: 0 5px 22px rgba(28,36,46,.07); }
.woocommerce-account #customer_login .form-row { float: none; width: 100%; margin: 0 0 18px; padding: 0; }
.woocommerce-account #customer_login .form-row label:not(.woocommerce-form__label-for-checkbox) { display: block; margin: 0 0 7px; color: #444; font-size: 13px; font-weight: 700; }
.woocommerce-account #customer_login input.input-text { width: 100%; min-height: 48px; padding: 10px 13px; color: #333; border: 1px solid #d4d7db; outline: 0; background: #fff; font: inherit; transition: border-color .15s, box-shadow .15s; }
.woocommerce-account #customer_login input.input-text:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.woocommerce-account #customer_login .password-input { position: relative; display: block; }
.woocommerce-account #customer_login .show-password-input { position: absolute; top: 9px; right: 8px; width: 48px; height: 30px; overflow: hidden; color: transparent; border: 0; background: #fff; font-size: 0; cursor: pointer; }
.woocommerce-account #customer_login .show-password-input::after { position: absolute; inset: 0; display: grid; place-items: center; color: #777; content: "Show"; font-size: 11px; font-weight: 700; text-indent: 0; text-transform: uppercase; }
.woocommerce-account #customer_login .show-password-input.display-password::after { content: "Hide"; }
.woocommerce-account #customer_login .form-row:has(.woocommerce-form-login__rememberme) { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.woocommerce-account #customer_login .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: #666; font-size: 13px; cursor: pointer; }
.woocommerce-account #customer_login .woocommerce-form-login__rememberme input { width: 17px; height: 17px; margin: 0; accent-color: var(--lm-blue); }
.woocommerce-account #customer_login .lost_password { margin: -3px 0 0; font-size: 13px; }
.woocommerce-account #customer_login .lost_password a { color: #555; border-bottom: 1px solid #bbb; }
.woocommerce-account #customer_login .woocommerce-privacy-policy-text,
.woocommerce-account #customer_login form.register > p:not(.form-row) { color: #747474; font-size: 13px; line-height: 1.65; }
.woocommerce-account #customer_login .woocommerce-privacy-policy-link { color: var(--lm-blue); font-weight: 700; }
.logged-in.woocommerce-account .woocommerce { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 28px; }
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation { align-self: start; background: #fff; box-shadow: 0 3px 15px rgba(28,36,46,.06); }
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul { border: 0; }
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation a { min-height: 48px; display: flex; align-items: center; padding: 0 17px; color: #555; border-bottom: 1px solid #edf0f2; font-size: 13px; font-weight: 700; }
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation a:hover { color: #fff; background: var(--lm-blue); }
.logged-in.woocommerce-account .woocommerce-MyAccount-content { min-width: 0; padding: 28px 30px; background: #fff; box-shadow: 0 3px 15px rgba(28,36,46,.06); }
.logged-in.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.logged-in.woocommerce-account .woocommerce-MyAccount-content a:not(.button) { color: var(--lm-blue); font-weight: 700; }
.woocommerce-account .woocommerce-ResetPassword { max-width: 620px; margin: 0 auto; padding: 28px 30px; background: #fff; box-shadow: 0 3px 15px rgba(28,36,46,.07); }
.woocommerce-account .woocommerce-ResetPassword .form-row { float: none; width: 100%; }
.woocommerce-account .woocommerce-ResetPassword input.input-text { width: 100%; }

/* Shop, cart, checkout and wishlist audit fixes. */
body.woocommerce-shop,
body.tax-product_cat,
body.woocommerce-cart,
body.woocommerce-checkout { background: #f7f8fa; }
.lm-shop-page { padding-top: 34px; }
.lm-shop-page > .lm-wrap { width: min(1240px, calc(100% - 48px)); }
.lm-shop-page > .lm-wrap > .woocommerce-breadcrumb { margin: 0 0 20px; }
.lm-shop-page .page-title { margin: 0 0 34px; color: #2d2d2d; font-size: clamp(34px, 4vw, 46px); font-weight: 500; letter-spacing: -.04em; line-height: 1.1; }
.lm-shop-layout { display: grid; grid-template-columns: 238px minmax(0, 1fr); align-items: start; gap: 36px; clear: both; }
.lm-shop-sidebar { min-width: 0; }
.lm-shop-sidebar details { background: transparent; }
.lm-shop-sidebar summary { min-height: 48px; display: none; align-items: center; justify-content: space-between; padding: 0 16px; color: #fff; background: var(--lm-black); font-size: 12px; font-weight: 800; letter-spacing: .045em; cursor: pointer; list-style: none; }
.lm-shop-sidebar summary::-webkit-details-marker { display: none; }
.lm-shop-sidebar summary span { font-size: 20px; font-weight: 400; transition: transform .18s; }
.lm-shop-sidebar details[open] summary span { transform: rotate(45deg); }
.lm-shop-sidebar__content { padding: 0; }
.lm-shop-filter { margin-bottom: 24px; padding: 21px 20px 22px; border: 1px solid #e3e5e8; background: #fff; box-shadow: 0 3px 13px rgba(28,36,46,.045); }
.lm-shop-filter h2 { margin: 0 0 16px; padding-bottom: 13px; color: #333; border-bottom: 2px solid var(--lm-blue); font-size: 15px; font-weight: 700; }
.lm-shop-filter ul { margin: 0; padding: 0; list-style: none; }
.lm-shop-filter li + li { border-top: 1px solid #eceef0; }
.lm-shop-filter li a { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #656565; font-size: 13px; transition: color .15s; }
.lm-shop-filter li a:hover,
.lm-shop-filter li a.is-active { color: var(--lm-blue); font-weight: 700; }
.lm-shop-filter li b { min-width: 24px; height: 24px; display: grid; place-items: center; color: #777; border-radius: 50%; background: #f0f2f5; font-size: 10px; font-weight: 600; }
.lm-price-filter > div { display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; gap: 7px; }
.lm-price-filter label span { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.lm-price-filter input { width: 100%; min-width: 0; height: 42px; padding: 0 9px; color: #444; border: 1px solid #d8dade; outline: 0; background: #fff; font: inherit; font-size: 12px; }
.lm-price-filter input:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.1); }
.lm-price-filter i { padding-bottom: 10px; color: #aaa; font-style: normal; }
.lm-price-filter button { width: 100%; min-height: 42px; margin-top: 12px; color: #fff; border: 0; background: var(--lm-blue); font-size: 11px; font-weight: 800; letter-spacing: .06em; cursor: pointer; }
.lm-price-filter button:hover { background: #3f68a8; }
.lm-shop-catalog { min-width: 0; }
.lm-shop-toolbar { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 24px; padding: 6px 0; border-top: 1px solid #e0e3e6; border-bottom: 1px solid #e0e3e6; }
.lm-shop-toolbar .woocommerce-result-count,
.lm-shop-toolbar .woocommerce-ordering { float: none; margin: 0; }
.lm-shop-toolbar .woocommerce-result-count { color: #777; font-size: 13px; }
.lm-shop-toolbar .woocommerce-ordering select { min-width: 225px; }
.lm-shop-catalog .products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin: 0; }
.lm-shop-catalog ul.products li.product { position: relative; display: flex; flex-direction: column; margin: 0; border: 1px solid #e5e7ea; box-shadow: 0 2px 11px rgba(28,36,46,.06); transition: transform .18s, box-shadow .18s; }
.lm-shop-catalog ul.products li.product:hover { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(28,36,46,.11); }
.lm-shop-catalog ul.products li.product > a:first-child { display: block; }
.lm-shop-catalog ul.products li.product img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; border-bottom: 1px solid #eef0f2; }
.lm-loop-category { display: block; min-height: 17px; margin: 0 15px 4px; color: #8a8a8a; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.lm-shop-catalog ul.products li.product .woocommerce-loop-product__title { min-height: 68px; padding-bottom: 6px; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; font-size: 14px; font-weight: 700; }
.lm-shop-catalog ul.products li.product .price { min-height: 28px; display: block; margin-top: 2px; font-size: 16px; }
.lm-loop-tools { display: grid; grid-template-columns: 1fr 40px; gap: 6px; margin: auto 15px 0; padding-top: 13px; }
.lm-loop-tools button { min-height: 38px; padding: 0 10px; color: #555; border: 1px solid #dfe1e4; background: #fff; font-size: 10px; font-weight: 800; cursor: pointer; }
.lm-loop-tools button:hover,
.lm-loop-tools button.is-saved { color: #fff; border-color: var(--lm-blue); background: var(--lm-blue); }
.lm-loop-tools button:last-child { padding: 0; font-size: 18px; }
.lm-shop-catalog ul.products li.product > .button { margin-top: 8px; }
.lm-shop-catalog ul.products li.product .onsale { top: 12px; right: 0; padding: 8px 11px; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.lm-shop-catalog .woocommerce-pagination { grid-column: 1 / -1; }
.woocommerce .woocommerce-result-count { margin: 10px 0 24px; color: #777; }
.woocommerce .woocommerce-ordering { margin: 0 0 24px; }
.woocommerce .woocommerce-ordering select { min-height: 44px; padding: 0 38px 0 13px; color: #444; border: 1px solid #d9dce0; background: #fff; }
.woocommerce ul.products li.product { overflow: hidden; padding: 0 0 18px; background: #fff; box-shadow: 0 2px 10px rgba(28,36,46,.07); }
.woocommerce ul.products li.product img { margin: 0 0 15px; background: #f4f6f8; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 61px; padding: 0 15px 8px; color: #333; font-size: 14px; line-height: 1.45; }
.woocommerce ul.products li.product .price { padding: 0 15px; color: var(--lm-blue); font-size: 15px; font-weight: 700; }
.woocommerce ul.products li.product .price del { color: #999; font-size: 12px; font-weight: 400; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { width: calc(100% - 30px); margin: 13px 15px 0; }
.woocommerce ul.products li.product .onsale { top: 10px; right: 0; min-width: 50px; min-height: 0; margin: 0; padding: 7px 10px; border-radius: 0; background: var(--lm-blue); font-size: 11px; line-height: 1; }
.woocommerce nav.woocommerce-pagination { margin-top: 35px; padding: 24px 0 8px; border-top: 1px solid var(--lm-line, #e2e7ef); text-align: center; }
.woocommerce nav.woocommerce-pagination ul.page-numbers { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 8px; width: auto; margin: 0; padding: 0; border: 0; list-style: none; background: transparent; }
.woocommerce nav.woocommerce-pagination ul.page-numbers li { display: block; flex: 0 0 auto; float: none; width: auto; margin: 0; padding: 0; border: 0; list-style: none; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { width: 44px; height: 44px; min-width: 44px; min-height: 44px; box-sizing: border-box; display: grid; place-items: center; padding: 0; border: 1px solid #dce3ed; border-radius: 6px; color: #496078; background: #fff; font-size: 14px; font-weight: 600; line-height: 1; text-decoration: none; transition: background .18s, border-color .18s, color .18s; }
.woocommerce nav.woocommerce-pagination ul li a:hover { background: #edf3fc; border-color: var(--lm-blue); color: var(--lm-blue); }
.woocommerce nav.woocommerce-pagination ul li a:focus-visible { outline: 3px solid #a6c3ee; outline-offset: 3px; }
.woocommerce nav.woocommerce-pagination ul li span.current { color: #fff; background: var(--lm-blue); border-color: var(--lm-blue); box-shadow: 0 3px 8px #345b9120; }
.woocommerce nav.woocommerce-pagination ul li span.dots { background: transparent; border-color: transparent; }
@media (prefers-reduced-motion: reduce) { .woocommerce nav.woocommerce-pagination ul li a { transition: none; } }
.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-checkout .wp-block-woocommerce-checkout { padding: 26px; background: #fff; box-shadow: 0 3px 16px rgba(28,36,46,.07); }
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input { border-color: #d4d7db !important; border-radius: 0 !important; }
.wc-block-components-button:not(.is-link) { min-height: 48px; border-radius: 0 !important; background: var(--lm-blue); font-size: 13px; font-weight: 700; text-transform: uppercase; }
.wc-block-components-button:not(.is-link):hover { background: #3f68a8; }
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before { color: var(--lm-blue); opacity: .8; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block { text-align: center; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 24px 0 0; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product { max-width: none !important; width: auto !important; padding: 0 0 17px; overflow: hidden; border: 1px solid #e6e8eb; background: #fff; box-shadow: 0 2px 10px rgba(28,36,46,.06); }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image { margin: 0 0 13px; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img { width: 100%; aspect-ratio: 1; object-fit: contain; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title { min-height: 60px; margin: 0; padding: 0 12px 8px; color: #333; font-size: 13px; font-weight: 700; line-height: 1.45; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price { padding: 0 12px; color: var(--lm-blue); font-size: 14px; font-weight: 700; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart { margin: 12px 10px 0; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a { width: 100%; min-height: 42px; display: flex; align-items: center; justify-content: center; padding: 8px; color: #fff; border-radius: 0; background: var(--lm-blue); font-size: 11px; font-weight: 700; text-transform: uppercase; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-onsale { color: #fff; border: 0; border-radius: 0; background: var(--lm-blue); font-size: 10px; text-transform: uppercase; }
.sc-wishlist > h1 { display: none; }
.sc-wishlist > p { margin: 0 0 24px; padding: 14px 16px; color: #666; border-left: 3px solid var(--lm-blue); background: #f4f7fb; }
.sc-wishlist__grid article { overflow: hidden; background: #fff; box-shadow: 0 2px 10px rgba(28,36,46,.07); }
.sc-wishlist__grid h3 { font-size: 15px; line-height: 1.45; }
.sc-quickview__content h2 { margin: 0 0 14px; color: #303030; font-size: clamp(24px, 3vw, 32px); line-height: 1.18; }
.sc-quickview__content p { color: #666; line-height: 1.7; }
.sc-quickview__content .button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; margin-top: 8px; padding: 0 20px; color: #fff; background: var(--lm-blue); font-size: 12px; font-weight: 700; letter-spacing: .04em; }
.lm-overlay { position: fixed; z-index: 90; inset: 0; visibility: hidden; opacity: 0; background: #0008; transition: .2s; }
.lm-drawer-open .lm-overlay { visibility: visible; opacity: 1; }
.lm-drawer { position: fixed; z-index: 100; top: 0; right: 0; width: min(430px, 92vw); height: 100vh; padding: 42px 38px; transform: translateX(105%); background: white; box-shadow: -16px 0 50px #0002; transition: transform .25s ease; }
.lm-drawer.is-open { transform: translateX(0); }
.lm-drawer h2 { margin: 20px 0 30px; padding-bottom: 14px; border-bottom: 2px solid var(--lm-blue); font-size: 20px; }
.lm-cart-drawer { display: flex; flex-direction: column; width: min(420px,100vw); height: 100dvh; padding: 25px; }
.lm-cart-drawer h2 { flex-shrink: 0; margin: 8px 0 0; padding: 0 36px 22px 0; border-bottom: 1px solid #e5e5e5; font-size: 19px; }
.lm-cart-drawer .widget_shopping_cart_content { display: flex; flex-direction: column; min-height: 0; flex: 1; }
.lm-cart-drawer .woocommerce-mini-cart { flex: 1; overflow-y: auto; list-style: none; padding: 0; margin: 0; }
.lm-cart-drawer .woocommerce-mini-cart-item { position: relative; min-height: 105px; padding: 22px 22px 22px 85px; border-bottom: 1px solid #eee; font-size: 14px; }
.lm-cart-drawer .woocommerce-mini-cart-item img { position: absolute; left: 0; top: 22px; width: 68px; height: 68px; object-fit: contain; }
.lm-cart-drawer .woocommerce-mini-cart-item a:not(.remove) { display: block; font-weight: 600; line-height: 1.5; }
.lm-cart-drawer .woocommerce-mini-cart-item .remove { position: absolute; right: 0; top: 20px; color: #888; font-size: 22px; }
.lm-cart-drawer .quantity { display: block; margin-top: 9px; color: #888; }
.lm-cart-drawer .quantity .amount { color: var(--lm-blue); font-weight: 700; }
.lm-cart-drawer .variation { margin: 6px 0; font-size: 12px; color: #777; }
.lm-cart-drawer .variation dt,.lm-cart-drawer .variation dd { display: inline; margin: 0 5px 0 0; }
.lm-cart-drawer .variation p { display: inline; }
.lm-cart-drawer .woocommerce-mini-cart__total { display: flex; justify-content: space-between; padding: 20px 0; margin: 0; border-top: 1px solid #ddd; font-size: 18px; }
.lm-cart-drawer .woocommerce-mini-cart__buttons { display: grid; gap: 10px; margin: 0; }
.lm-cart-drawer .woocommerce-mini-cart__buttons a { display: block; padding: 15px; text-align: center; background: #f0f0f0; color: #333; font-size: 13px; font-weight: 800; text-transform: uppercase; }
.lm-cart-drawer .woocommerce-mini-cart__buttons .checkout { background: var(--lm-blue); color: #fff; }
.lm-cart-drawer .woocommerce-mini-cart__empty-message { margin: auto; padding: 50px 0; text-align: center; color: #777; }
.lm-drawer-close { position: absolute; top: 14px; right: 18px; border: 0; background: none; font-size: 30px; cursor: pointer; }
.lm-drawer-foot { margin-top: 24px; color: #777; font-size: 12px; }
.lm-drawer-foot a { color: var(--lm-blue); font-weight: 700; }
.lm-drawer .woocommerce-form-login { margin: 0; padding: 0; border: 0; }
.lm-drawer .woocommerce-form-login .form-row { float: none; width: 100%; margin: 0 0 18px; padding: 0; }
.lm-drawer .woocommerce-form-login .form-row-first,
.lm-drawer .woocommerce-form-login .form-row-last { display: block; }
.lm-drawer .woocommerce-form-login .form-row-last { position: relative; }
.lm-drawer .woocommerce-form-login label { display: block; margin: 0 0 7px; color: #414141; font-size: 13px; font-weight: 700; }
.lm-drawer .woocommerce-form-login input.input-text { width: 100%; min-height: 46px; padding: 10px 12px; color: #333; border: 1px solid #d2d2d2; border-radius: 0; outline: 0; background: #fff; font: inherit; transition: border-color .15s, box-shadow .15s; }
.lm-drawer .woocommerce-form-login input.input-text:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-drawer .show-password-input { position: absolute; right: 9px; bottom: 8px; width: 48px; height: 30px; padding: 0; overflow: hidden; color: transparent; border: 0; background: #fff; font-size: 0; cursor: pointer; }
.lm-drawer .show-password-input::after { position: absolute; inset: 0; display: grid; place-items: center; color: #777; content: "Show"; font-size: 11px; font-weight: 700; text-indent: 0; text-transform: uppercase; }
.lm-drawer .show-password-input.display-password::after { content: "Hide"; }
.lm-drawer .woocommerce-form-login .form-row:not(.form-row-first):not(.form-row-last) { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 16px; }
.lm-drawer .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: #666; font-size: 13px; font-weight: 400; cursor: pointer; }
.lm-drawer .woocommerce-form-login__rememberme input { width: 17px; height: 17px; margin: 0; accent-color: var(--lm-blue); }
.lm-drawer .woocommerce-form-login__submit { min-width: 108px; min-height: 44px; padding: 0 18px; color: #fff; border: 0; border-radius: 0; background: var(--lm-blue); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
.lm-drawer .woocommerce-form-login__submit:hover { background: #3f68a8; }
.lm-drawer .lost_password { margin: 4px 0 0; font-size: 13px; }
.lm-drawer .lost_password a { color: #555; border-bottom: 1px solid #bbb; }
.lm-drawer .lost_password a:hover { color: var(--lm-blue); border-color: var(--lm-blue); }
.lm-drawer .lm-drawer-foot { margin: 28px 0 0; padding-top: 20px; border-top: 1px solid #e7e7e7; }
.lm-drawer[data-drawer="search"] .woocommerce-product-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: stretch; gap: 10px; margin: 0; }
.lm-drawer[data-drawer="search"] .search-field { width: 100%; min-width: 0; min-height: 48px; padding: 11px 14px; color: #333; border: 1px solid #d2d2d2; border-radius: 0; outline: 0; background: #fff; font: inherit; font-size: 14px; transition: border-color .15s, box-shadow .15s; }
.lm-drawer[data-drawer="search"] .search-field::placeholder { color: #909090; opacity: 1; }
.lm-drawer[data-drawer="search"] .search-field:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-drawer[data-drawer="search"] .woocommerce-product-search button { min-width: 104px; min-height: 48px; padding: 0 18px; color: #fff; border: 0; border-radius: 0; background: var(--lm-blue); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; transition: background .15s; }
.lm-drawer[data-drawer="search"] .woocommerce-product-search button:hover,
.lm-drawer[data-drawer="search"] .woocommerce-product-search button:focus-visible { background: #3f68a8; }
.lm-drawer[data-drawer="search"] .lm-drawer-foot { position: relative; padding-left: 28px; font-size: 13px; line-height: 1.6; }
.lm-drawer[data-drawer="search"] .lm-drawer-foot::before { position: absolute; top: 21px; left: 0; width: 18px; height: 18px; display: grid; place-items: center; color: var(--lm-blue); content: "⌕"; font-size: 18px; font-weight: 700; }
.sc-quickview { position: fixed; z-index: 120; inset: 0; display: grid; place-items: center; padding: 24px; background: #0009; }
.sc-quickview[hidden] { display: none; }
.sc-quickview__dialog { position: relative; width: min(850px, 100%); max-height: 88vh; overflow: auto; padding: 38px; background: white; }
.sc-quickview__close { position: absolute; top: 10px; right: 14px; border: 0; background: none; font-size: 30px; cursor: pointer; }
.sc-quickview__content { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 35px; }
.sc-quickview__image { aspect-ratio: 1; display: grid; place-items: center; background: #f4f6f8; }
.sc-quickview__image img { width: 100%; height: 100%; object-fit: contain; }
.sc-quickview__price { color: var(--lm-blue); font-size: 24px; font-weight: 700; }

/* Product detail: compact two-column presentation inspired by the reference store. */
body.single-product { background: #f7f7f7; }
body.single-product .lm-page { padding: 40px 0 78px; }
.lm-single-product { --lm-card-shadow: 0 1px 8px rgba(28, 36, 46, .08); }
.lm-product-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(430px, 1fr); align-items: start; gap: 30px; }
.lm-product-visual,
.lm-product-summary { min-width: 0; }
.lm-product-gallery { position: relative; width: 100%; }
.lm-product-main-image { position: relative; aspect-ratio: 1 / 1; display: grid; place-items: center; overflow: hidden; background: #fff; box-shadow: var(--lm-card-shadow); }
.lm-product-image-button { display: grid; width: 100%; height: 100%; padding: 0; place-items: center; border: 0; background: transparent; cursor: zoom-in; }
.lm-product-image-button img { width: 100%; height: 100%; object-fit: contain; }
.lm-sale-badge { position: absolute; z-index: 3; top: 13px; right: 0; min-width: 54px; padding: 8px 12px; color: #fff; background: var(--lm-blue); border-radius: 0; font-size: 13px; font-weight: 500; line-height: 1; }
.lm-product-zoom { position: absolute; z-index: 3; left: 16px; bottom: 16px; display: flex; align-items: center; gap: 7px; padding: 8px 11px; color: #555; border: 0; border-radius: 20px; background: rgba(255,255,255,.94); box-shadow: 0 2px 12px #0002; font-size: 12px; cursor: zoom-in; }
.lm-product-thumbnails { display: flex; gap: 10px; margin-top: 12px; overflow-x: auto; scrollbar-width: thin; }
.lm-product-thumb { flex: 0 0 74px; width: 74px; height: 74px; padding: 3px; border: 1px solid #ddd; background: #fff; cursor: pointer; transition: border-color .15s, opacity .15s; }
.lm-product-thumb:not(.is-active) { opacity: .65; }
.lm-product-thumb.is-active, .lm-product-thumb:hover { opacity: 1; border-color: var(--lm-blue); }
.lm-product-thumb img { width: 100%; height: 100%; object-fit: cover; }

.lm-product-summary { min-height: 100%; padding: 34px 36px 32px; background: #fff; box-shadow: var(--lm-card-shadow); }
.lm-product-summary-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 19px; }
.lm-product-summary .woocommerce-breadcrumb { flex: 1; margin: 0; color: #9a9a9a; font-size: 12px; line-height: 1.6; }
.lm-product-summary .woocommerce-breadcrumb a:hover { color: var(--lm-blue); }
.lm-product-nav { flex: none; display: flex; gap: 5px; }
.lm-product-nav a { width: 24px; height: 24px; display: grid; place-items: center; color: #777; font-size: 20px; line-height: 1; }
.lm-product-nav a[aria-label="All products"] { font-size: 16px; }
.lm-product-summary .product_title { margin: 0 0 22px; color: #303030; font-size: clamp(28px, 2.7vw, 35px); font-weight: 400; letter-spacing: -.035em; line-height: 1.13; }
.lm-best-seller { display: flex; align-items: center; gap: 8px; min-height: 30px; margin-bottom: 12px; color: #777; font-size: 13px; }
.lm-best-seller strong { position: relative; display: inline-flex; align-items: center; min-height: 28px; padding: 5px 18px 5px 10px; color: #fff; background: #d9534f; font-weight: 500; }
.lm-best-seller strong::after { position: absolute; top: 0; right: -1px; border-top: 14px solid transparent; border-right: 10px solid #fff; border-bottom: 14px solid transparent; content: ""; }
.lm-best-seller a { color: #4e78b9; }
.lm-rating-row { display: flex; align-items: center; gap: 10px; margin: 7px 0 17px; color: #777; font-size: 13px; }
.lm-stars { color: #e4b524; font-size: 18px; letter-spacing: 1px; }
.lm-product-summary p.price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; color: var(--lm-blue); font-size: 27px; font-weight: 700; }
.lm-product-summary p.price del { color: #aaa; font-size: 20px; font-weight: 400; opacity: 1; }
.lm-product-summary p.price ins { color: var(--lm-blue); text-decoration: none; }
.lm-saving { margin: 0 0 15px; color: #555; font-size: 13px; }
.lm-saving strong { color: #d64d4d; font-size: 15px; }
.lm-saving span { color: #d64d4d; }
.lm-product-summary .woocommerce-product-details__short-description { margin: 0 0 14px; color: #555; font-size: 15px; line-height: 1.65; }
.lm-product-summary .woocommerce-product-details__short-description p { margin: 0; }
.lm-delivery-points { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 18px; margin: 16px 0; color: #555; font-size: 14px; }
.lm-delivery-points span::first-letter, .lm-stock-status::first-letter { color: var(--lm-blue); }
.lm-stock-status { margin: 17px 0 8px; color: #555; font-size: 14px; }
.lm-stock-status.is-in-stock { color: #455a64; }
.lm-stock-status.is-out-of-stock { color: #b54c4c; }
.lm-product-summary form.cart { margin: 13px 0 12px; }
.lm-product-summary form.variations_form { display: block; }
.lm-product-summary table.variations { width: 100%; margin: 0 0 14px; border-collapse: collapse; }
.lm-product-summary table.variations th,
.lm-product-summary table.variations td { display: block; width: 100%; padding: 0; text-align: left; }
.lm-product-summary table.variations th { margin: 11px 0 5px; color: #454545; font-size: 13px; text-transform: uppercase; }
.lm-product-summary table.variations select { width: 100%; min-height: 44px; padding: 0 38px 0 12px; color: #444; border: 1px solid #d8d8d8; background: #fff; font-size: 14px; }
.lm-product-summary table.variations select.lm-variation-select-enhanced { position: absolute; width: 1px; height: 1px; min-height: 0; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.lm-variation-options { --lm-variation-columns: 3; display: grid; grid-template-columns: repeat(var(--lm-variation-columns), minmax(0, 1fr)); gap: 9px; margin: 2px 0 8px; }
.lm-variation-option { position: relative; min-width: 0; min-height: 50px; padding: 8px 10px; color: #454545; border: 1px solid #d9dce0; border-radius: 0; outline: 0; background: #fff; font: inherit; font-size: 14px; line-height: 1.25; cursor: pointer; transition: color .15s, border-color .15s, background .15s, box-shadow .15s; }
.lm-variation-option:hover { color: var(--lm-blue); border-color: var(--lm-blue); }
.lm-variation-option:focus-visible { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.14); }
.lm-variation-option.is-selected { color: var(--lm-blue); border: 2px solid var(--lm-blue); background: #f3f7fc; font-weight: 700; box-shadow: inset 0 0 0 1px #fff; }
.lm-variation-option.is-selected::after { position: absolute; top: -1px; right: -1px; width: 17px; height: 17px; display: grid; place-items: center; color: #fff; background: var(--lm-blue); content: "✓"; font-size: 10px; line-height: 1; }
.lm-variation-option:disabled { color: #aaa; border-color: #e7e7e7; background: #f7f7f7; text-decoration: line-through; cursor: not-allowed; opacity: .7; }
.lm-product-summary .reset_variations { display: inline-block; margin-top: 7px; color: #888; font-size: 12px; }
.lm-product-summary .woocommerce-variation-price { margin: 5px 0 11px; }
.lm-product-summary .woocommerce-variation-price .price { font-size: 22px; }
.lm-product-summary .woocommerce-variation-add-to-cart,
.lm-product-summary form.cart:not(.variations_form) { display: flex; gap: 10px; }
.lm-product-summary .lm-quantity-stepper { flex: none; display: grid; grid-template-columns: 34px 48px 34px; height: 46px; border: 1px solid #d5d5d5; background: #fff; }
.lm-product-summary .lm-qty-control { padding: 0; color: #555; border: 0; background: #fff; font-size: 18px; cursor: pointer; }
.lm-product-summary .quantity { display: contents; }
.lm-product-summary .quantity .qty { width: 48px; min-height: 44px; padding: 0; border: 0; border-right: 1px solid #e5e5e5; border-left: 1px solid #e5e5e5; border-radius: 0; text-align: center; appearance: textfield; }
.lm-product-summary .quantity .qty::-webkit-inner-spin-button { appearance: none; }
.lm-product-summary .single_add_to_cart_button.button { flex: 1; min-height: 46px; padding: 0 24px; color: #fff; background: var(--lm-blue); border-radius: 0; font-size: 13px; font-weight: 700; letter-spacing: .03em; }
.lm-product-summary .single_add_to_cart_button.button:hover { background: #3f68a8; }
.lm-product-summary .single_add_to_cart_button.disabled,
.lm-product-summary .single_add_to_cart_button:disabled { opacity: .5; cursor: not-allowed; }
.sc-wishlist-single { display: flex; align-items: center; gap: 7px; padding: 9px 0; color: #555; font-size: 12px; }
.sc-wishlist-single:hover { color: var(--lm-blue); }
.lm-product-summary .product_meta { display: none; }

.lm-product-detail { margin-top: 42px; }
.lm-product-detail .woocommerce-tabs { width: 100%; margin: 0; padding: 0; background: #fff; box-shadow: var(--lm-card-shadow); }
.lm-product-detail .woocommerce-tabs ul.tabs { display: flex; justify-content: center; gap: 34px; margin: 0; padding: 0 28px; border-bottom: 1px solid #e6e6e6; list-style: none; }
.lm-product-detail .woocommerce-tabs ul.tabs::before,
.lm-product-detail .woocommerce-tabs ul.tabs::after,
.lm-product-detail .woocommerce-tabs ul.tabs li::before,
.lm-product-detail .woocommerce-tabs ul.tabs li::after { display: none; }
.lm-product-detail .woocommerce-tabs ul.tabs li { position: relative; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; }
.lm-product-detail .woocommerce-tabs ul.tabs li a { display: block; padding: 18px 3px; color: #777; font-size: 13px; font-weight: 700; text-transform: uppercase; }
.lm-product-detail .woocommerce-tabs ul.tabs li.active a { color: #292929; }
.lm-product-detail .woocommerce-tabs ul.tabs li.active::after { display: block; position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: var(--lm-blue); content: ""; }
.lm-product-detail .woocommerce-tabs .panel { max-width: 980px; margin: 0 auto; padding: 38px 50px 48px; color: #555; font-size: 16px; line-height: 1.8; }
.lm-product-detail .woocommerce-tabs .panel h2 { margin: 0 0 18px; color: #303030; font-size: 25px; line-height: 1.3; text-transform: none; }
.lm-product-detail .woocommerce-tabs .panel h3 { color: #333; font-size: 20px; }
.lm-product-detail .woocommerce-tabs .panel li { margin-bottom: 6px; }
.lm-product-detail #reviews { color: #555; }
.lm-product-detail #reviews #comments { padding-bottom: 28px; border-bottom: 1px solid #e7e7e7; }
.lm-product-detail #reviews .woocommerce-Reviews-title { margin: 0 0 12px; color: #2f2f2f; font-size: 27px; font-weight: 600; }
.lm-product-detail #reviews .woocommerce-noreviews { margin: 0; padding: 15px 18px; border-left: 3px solid var(--lm-blue); background: #f6f8fb; font-size: 14px; }
.lm-product-detail #review_form_wrapper { margin-top: 30px; }
.lm-product-detail #review_form .comment-reply-title { display: block; margin: 0 0 8px; color: #2f2f2f; font-size: 23px; font-weight: 600; line-height: 1.35; }
.lm-product-detail #review_form .comment-form { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 22px; margin-top: 18px; }
.lm-product-detail #review_form .comment-form > p,
.lm-product-detail #review_form .comment-form-rating { margin: 0; }
.lm-product-detail #review_form .comment-notes,
.lm-product-detail #review_form .comment-form-rating,
.lm-product-detail #review_form .comment-form-comment,
.lm-product-detail #review_form .comment-form-cookies-consent,
.lm-product-detail #review_form .form-submit { grid-column: 1 / -1; }
.lm-product-detail #review_form label { display: block; margin: 0 0 7px; color: #454545; font-size: 13px; font-weight: 700; }
.lm-product-detail #review_form .comment-notes { color: #777; font-size: 13px; }
.lm-product-detail #review_form .required { color: #d65353; }
.lm-product-detail #review_form input[type="text"],
.lm-product-detail #review_form input[type="email"],
.lm-product-detail #review_form textarea,
.lm-product-detail #review_form select { width: 100%; min-height: 46px; padding: 10px 12px; color: #333; border: 1px solid #d2d2d2; border-radius: 0; outline: 0; background: #fff; font: inherit; transition: border-color .15s, box-shadow .15s; }
.lm-product-detail #review_form textarea { min-height: 164px; resize: vertical; }
.lm-product-detail #review_form input:focus,
.lm-product-detail #review_form textarea:focus,
.lm-product-detail #review_form select:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-product-detail #review_form .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 9px; padding: 2px 0; }
.lm-product-detail #review_form .comment-form-cookies-consent input { flex: none; width: 17px; height: 17px; margin: 4px 0 0; accent-color: var(--lm-blue); }
.lm-product-detail #review_form .comment-form-cookies-consent label { margin: 0; color: #666; font-weight: 400; }
.lm-product-detail #review_form .submit { min-height: 46px; padding: 0 24px; color: #fff; border: 0; border-radius: 0; background: var(--lm-blue); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
.lm-product-detail #review_form .submit:hover { background: #3f68a8; }
.lm-product-detail #review_form p.stars { margin: 7px 0 0; line-height: 1; }
.lm-product-detail #review_form p.stars span { display: inline-flex; gap: 5px; }
.lm-product-detail #review_form p.stars a { position: relative; width: 29px; height: 29px; display: inline-block; overflow: hidden; color: transparent; font-size: 0; text-indent: -9999px; }
.lm-product-detail #review_form p.stars a::before { position: absolute; inset: 0; display: grid; place-items: center; color: #c8c8c8; content: "☆"; font-size: 27px; line-height: 1; text-indent: 0; }
.lm-product-detail #review_form p.stars:hover a::before,
.lm-product-detail #review_form p.stars.selected a::before { color: #e3b321; content: "★"; }
.lm-product-detail #review_form p.stars a:hover ~ a::before,
.lm-product-detail #review_form p.stars.selected a.active ~ a::before { color: #c8c8c8; content: "☆"; }
.lm-product-detail #review_form #rating { max-width: 220px; }
.lm-product-detail .related,
.lm-product-detail .upsells { margin-top: 42px; }
.lm-product-detail section.related.products,
.lm-product-detail section.upsells.products { display: block; }
.lm-product-detail .related > h2,
.lm-product-detail .upsells > h2 { margin: 0 0 24px; text-align: center; font-size: 28px; font-weight: 500; }
.lm-product-detail .related ul.products,
.lm-product-detail .upsells ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; margin: 0; padding: 0; }
.lm-product-detail .related ul.products li.product,
.lm-product-detail .upsells ul.products li.product { position: relative; min-width: 0; padding: 0 0 18px; overflow: hidden; background: #fff; box-shadow: 0 1px 8px rgba(28,36,46,.08); list-style: none; }
.lm-product-detail .related ul.products li.product::marker,
.lm-product-detail .upsells ul.products li.product::marker { content: ""; }
.lm-product-detail .related ul.products li.product > a:first-child,
.lm-product-detail .upsells ul.products li.product > a:first-child { display: block; }
.lm-product-detail .related ul.products li.product img,
.lm-product-detail .upsells ul.products li.product img { width: 100%; aspect-ratio: 1 / 1; margin: 0 0 15px; object-fit: cover; background: #f4f5f6; }
.lm-product-detail .related ul.products li.product .onsale,
.lm-product-detail .upsells ul.products li.product .onsale { position: absolute; z-index: 2; top: 10px; right: 0; min-width: 50px; margin: 0; padding: 7px 10px; color: #fff; background: var(--lm-blue); border-radius: 0; font-size: 11px; line-height: 1; }
.lm-product-detail .related ul.products li.product .woocommerce-loop-product__title,
.lm-product-detail .upsells ul.products li.product .woocommerce-loop-product__title { min-height: 47px; margin: 0; padding: 0 15px 8px; color: #333; font-size: 14px; font-weight: 600; line-height: 1.4; }
.lm-product-detail .related ul.products li.product .price,
.lm-product-detail .upsells ul.products li.product .price { display: block; padding: 0 15px; color: var(--lm-blue); font-size: 15px; font-weight: 700; }
.lm-product-detail .related ul.products li.product .price del,
.lm-product-detail .upsells ul.products li.product .price del { color: #999; font-weight: 400; }
.lm-product-detail .related ul.products li.product .price ins,
.lm-product-detail .upsells ul.products li.product .price ins { text-decoration: none; }
.lm-product-detail .related ul.products li.product .button,
.lm-product-detail .upsells ul.products li.product .button { display: block; width: calc(100% - 30px); margin: 14px 15px 0; padding: 12px 10px; text-align: center; font-size: 11px; }
.lm-delivery-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 25px; }
.lm-delivery-cards span { display: flex; align-items: center; gap: 10px; padding: 18px; border: 1px solid #e4e4e4; }
.lm-delivery-cards b { width: 30px; height: 30px; display: grid; flex: none; place-items: center; color: #fff; background: var(--lm-blue); border-radius: 50%; }

.lm-product-lightbox[hidden] { display: none; }
.lm-product-lightbox { position: fixed; z-index: 150; inset: 0; display: grid; place-items: center; padding: 36px; background: rgba(0,0,0,.88); }
.lm-product-lightbox img { max-width: min(1100px, 94vw); max-height: 90vh; object-fit: contain; }
.lm-product-lightbox__close { position: absolute; top: 18px; right: 24px; padding: 0; color: #fff; border: 0; background: transparent; font-size: 38px; cursor: pointer; }
.lm-lightbox-open { overflow: hidden; }

@media (max-width: 900px) {
  .lm-header-main { height: auto; padding: 20px 0; }
  .lm-header-main .lm-wrap { grid-template-columns: 1fr auto; }
  .lm-benefits { display: none; }
  .lm-brand { padding: 0; }
  .woocommerce div.product { grid-template-columns: 1fr; }
  .woocommerce div.product .woocommerce-tabs { grid-column: auto; }
  .woocommerce .products { grid-template-columns: repeat(2, 1fr); }
  .lm-product-hero { grid-template-columns: 1fr; }
  .lm-product-summary { min-height: 0; }
  .lm-shop-layout { grid-template-columns: 1fr; gap: 20px; }
  .lm-shop-sidebar summary { display: flex; }
  .lm-shop-sidebar details:not([open]) > .lm-shop-sidebar__content { display: none; }
  .lm-shop-sidebar__content { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; padding-top: 18px; }
  .lm-shop-filter { margin: 0; }
  .lm-shop-catalog .products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .lm-home-banner__slide { padding-inline: 8%; }
  .lm-home-banner__placeholder { right: 7.5%; width: 34%; }
}
@media (max-width: 620px) {
  .lm-wrap { width: min(100% - 30px, 1180px); }
  .lm-topbar { display: none; }
  .lm-actions .lm-login { display: none; }
  .lm-navbar ul { gap: 20px; overflow-x: auto; }
  .lm-navbar a { white-space: nowrap; }
  .lm-footer-grid { grid-template-columns: 1fr 1fr; }
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
  .sc-quickview__content { grid-template-columns: 1fr; }
  .woocommerce .products { grid-template-columns: 1fr; }
  body.single-product .lm-page { padding-top: 18px; }
  .lm-product-hero { gap: 18px; }
  .lm-product-summary { padding: 24px 20px; }
  .lm-product-summary-top { align-items: center; }
  .lm-product-summary .product_title { font-size: 28px; }
  .lm-best-seller { align-items: flex-start; flex-direction: column; }
  .lm-delivery-points { grid-template-columns: 1fr; }
  .lm-product-detail { margin-top: 24px; }
  .lm-product-detail .woocommerce-tabs ul.tabs { justify-content: flex-start; gap: 22px; overflow-x: auto; }
  .lm-product-detail .woocommerce-tabs ul.tabs li { flex: none; }
  .lm-product-detail .woocommerce-tabs .panel { padding: 28px 20px 36px; font-size: 15px; }
  .lm-delivery-cards { grid-template-columns: 1fr; }
  .lm-product-summary .woocommerce-variation-add-to-cart,
  .lm-product-summary form.cart:not(.variations_form) { align-items: stretch; flex-wrap: wrap; }
  .lm-drawer { padding: 40px 24px; }
  .lm-drawer[data-drawer="search"] .woocommerce-product-search { grid-template-columns: 1fr; }
  .lm-drawer[data-drawer="search"] .woocommerce-product-search button { width: 100%; }
  .lm-drawer .woocommerce-form-login .form-row:not(.form-row-first):not(.form-row-last) { grid-template-columns: 1fr; }
  .lm-drawer .woocommerce-form-login__submit { width: 100%; }
  .lm-product-detail #review_form .comment-form { grid-template-columns: 1fr; }
  .lm-product-detail #review_form .comment-form > * { grid-column: 1; }
  .lm-product-detail .related ul.products,
  .lm-product-detail .upsells ul.products { grid-template-columns: 1fr 1fr; gap: 14px; }
}

/* Customer-facing Confirmation ID tool. */
body.lm-cid-page { background: #f7f8fa; }
.lm-cid-main { padding-bottom: 82px; }
.lm-cid-hero { color: #fff; background: linear-gradient(118deg, #263d5d 0%, #3f6499 58%, #4e78b9 100%); }
.lm-cid-hero .lm-wrap { padding-top: 22px; padding-bottom: 62px; }
.lm-cid-breadcrumb { display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.62); font-size: 11px; font-weight: 700; letter-spacing: .06em; }
.lm-cid-breadcrumb a:hover { color: #fff; }
.lm-cid-eyebrow { display: inline-flex; align-items: center; min-height: 28px; margin-top: 46px; padding: 0 10px; color: #2c3b51; background: #f5dd45; font-size: 10px; font-weight: 900; letter-spacing: .13em; }
.lm-cid-hero h1 { max-width: 790px; margin: 17px 0 0; font-size: clamp(42px, 5.4vw, 66px); font-weight: 800; letter-spacing: -.055em; line-height: 1.03; }
.lm-cid-hero p { max-width: 720px; margin: 18px 0 0; color: rgba(255,255,255,.8); font-size: 16px; line-height: 1.65; }
.lm-cid-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(310px, .8fr); align-items: start; gap: 28px; padding-top: 42px; }
.lm-cid-card,
.lm-cid-guide { background: #fff; border: 1px solid #e2e5e8; box-shadow: 0 4px 18px rgba(28,36,46,.06); }
.lm-cid-card { padding: 30px 32px 34px; }
.lm-cid-card__heading { display: flex; align-items: center; gap: 16px; padding-bottom: 22px; border-bottom: 1px solid #e7e9ec; }
.lm-cid-card__heading > span { width: 46px; height: 46px; display: grid; flex: none; place-items: center; color: #fff; background: var(--lm-blue); font-size: 12px; font-weight: 800; }
.lm-cid-card__heading h2 { margin: 0; color: #30343a; font-size: 23px; letter-spacing: -.02em; }
.lm-cid-card__heading p { margin: 3px 0 0; color: #85898e; font-size: 13px; }
.lm-cid-form { padding-top: 24px; }
.lm-cid-form label { display: block; margin-bottom: 8px; color: #41454a; font-size: 13px; font-weight: 800; }
.lm-cid-form textarea { width: 100%; min-height: 118px; padding: 15px 16px; resize: vertical; color: #30343a; border: 1px solid #ced3d9; border-radius: 0; outline: 0; background: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 16px; line-height: 1.65; transition: border-color .15s, box-shadow .15s; }
.lm-cid-form textarea::placeholder { color: #a5a9ae; }
.lm-cid-form textarea:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-cid-form__hint { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 8px 0 21px; color: #8b8f94; font-size: 11px; }
.lm-cid-form__hint b { color: #656a70; }
.lm-cid-form button { width: 100%; min-height: 50px; display: flex; align-items: center; justify-content: space-between; padding: 0 19px; color: #fff; border: 0; border-radius: 0; background: var(--lm-blue); font-size: 12px; font-weight: 800; letter-spacing: .055em; cursor: pointer; transition: background .15s; }
.lm-cid-form button:hover { background: #3f68a8; }
.lm-cid-form button span { font-size: 19px; font-weight: 400; }
.lm-cid-result { display: grid; grid-template-columns: 42px 1fr; gap: 15px; margin-top: 24px; padding: 19px; border-left: 3px solid; }
.lm-cid-result--success { color: #315e48; border-color: #3b966a; background: #f0faf5; }
.lm-cid-result--error { color: #7c403c; border-color: #d45b53; background: #fff5f4; }
.lm-cid-result__icon { width: 36px; height: 36px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: currentColor; font-size: 0; }
.lm-cid-result__icon::after { color: #fff; content: "!"; font-size: 17px; font-weight: 800; }
.lm-cid-result--success .lm-cid-result__icon::after { content: "✓"; }
.lm-cid-result h2 { margin: 0; color: currentColor; font-size: 18px; }
.lm-cid-result p { margin: 4px 0 0; color: #696e73; font-size: 13px; line-height: 1.55; }
.lm-cid-result output { display: block; margin-top: 14px; padding: 13px 14px; overflow-wrap: anywhere; color: #253a55; border: 1px dashed #9db2a7; background: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 17px; font-weight: 800; letter-spacing: .03em; }
.lm-cid-guide { padding: 28px; }
.lm-cid-guide__label { color: var(--lm-blue); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.lm-cid-guide ol { margin: 22px 0 0; padding: 0; list-style: none; counter-reset: lm-cid-step; }
.lm-cid-guide li { position: relative; min-height: 72px; padding: 0 0 22px 49px; counter-increment: lm-cid-step; }
.lm-cid-guide li:not(:last-child)::after { position: absolute; top: 33px; bottom: 3px; left: 16px; width: 1px; background: #dce1e6; content: ""; }
.lm-cid-guide li::before { position: absolute; top: 0; left: 0; width: 33px; height: 33px; display: grid; place-items: center; color: var(--lm-blue); border: 1px solid #cdd7e4; background: #f4f7fb; content: counter(lm-cid-step, decimal-leading-zero); font-size: 10px; font-weight: 800; }
.lm-cid-guide li b,
.lm-cid-guide li span { display: block; }
.lm-cid-guide li b { color: #3e4248; font-size: 14px; }
.lm-cid-guide li span { margin-top: 4px; color: #7b7f85; font-size: 12px; line-height: 1.55; }
.lm-cid-help { margin-top: 4px; padding: 18px; border-left: 3px solid var(--lm-blue); background: #f4f7fb; }
.lm-cid-help b,
.lm-cid-help span { display: block; }
.lm-cid-help b { color: #363a40; font-size: 14px; }
.lm-cid-help span { margin-top: 4px; color: #777c82; font-size: 12px; line-height: 1.55; }
.lm-cid-help a { display: inline-block; margin-top: 12px; color: var(--lm-blue); font-size: 10px; font-weight: 900; letter-spacing: .06em; }

@media (max-width: 900px) {
  .lm-cid-layout { grid-template-columns: 1fr; }
  .lm-cid-guide ol { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
  .lm-cid-guide li { min-height: 0; padding: 46px 0 0; }
  .lm-cid-guide li:not(:last-child)::after { display: none; }
}

@media (max-width: 620px) {
  .lm-cid-main { padding-bottom: 56px; }
  .lm-cid-hero .lm-wrap { padding-top: 16px; padding-bottom: 43px; }
  .lm-cid-eyebrow { margin-top: 34px; }
  .lm-cid-hero h1 { font-size: clamp(38px, 11vw, 48px); }
  .lm-cid-hero p { font-size: 15px; }
  .lm-cid-layout { gap: 16px; padding-top: 20px; }
  .lm-cid-card { padding: 22px 17px 24px; }
  .lm-cid-card__heading { align-items: flex-start; }
  .lm-cid-card__heading > span { width: 40px; height: 40px; }
  .lm-cid-card__heading h2 { font-size: 20px; }
  .lm-cid-form textarea { min-height: 145px; font-size: 15px; }
  .lm-cid-form__hint { align-items: flex-start; flex-direction: column; gap: 2px; }
  .lm-cid-result { grid-template-columns: 1fr; }
  .lm-cid-guide { padding: 23px 19px; }
  .lm-cid-guide ol { grid-template-columns: 1fr; gap: 0; }
  .lm-cid-guide li { min-height: 72px; padding: 0 0 22px 49px; }
  .lm-cid-guide li:not(:last-child)::after { display: block; }
}

/* Mobile storefront: compact navigation and faster two-column browsing. */
@media (max-width: 760px) {
  body { overflow-x: hidden; font-size: 15px; }
  .lm-wrap { width: calc(100% - 28px); }
  .lm-header-main { padding: 12px 0; border-bottom: 1px solid var(--lm-line); }
  .lm-header-main .lm-wrap { grid-template-columns: minmax(0, 1fr) auto; gap: 10px; }
  .lm-brand { min-width: 0; gap: 9px; padding: 0; font-size: clamp(20px, 6.4vw, 26px); letter-spacing: -.045em; }
  .lm-brand > span:last-child { overflow: hidden; text-overflow: ellipsis; }
  .lm-logo-placeholder { flex: 0 0 44px; width: 44px; height: 44px; font-size: 8px; }
  .lm-actions { gap: 3px; }
  .lm-actions .lm-action-icon,
  .lm-mobile-menu { width: 42px; height: 42px; display: inline-grid; place-items: center; padding: 0; }
  .lm-actions .lm-action-icon { position: relative; font-size: 20px; }
  .lm-actions > a.lm-action-icon { display: flex; align-items: center; justify-content: center; }
  .lm-cart-count { position: absolute; top: 0; right: 0; min-width: 18px; height: 18px; margin: 0; }
  .lm-mobile-menu { align-content: center; gap: 5px; border: 1px solid #dedede; }
  .lm-mobile-menu span { width: 19px; height: 2px; background: #333; transition: transform .2s, opacity .2s; }
  .lm-mobile-menu.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .lm-mobile-menu.is-open span:nth-child(2) { opacity: 0; }
  .lm-mobile-menu.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .lm-navbar { min-height: 0; max-height: 0; overflow: hidden; transition: max-height .24s ease; }
  .lm-navbar.is-open { max-height: 340px; }
  .lm-navbar .lm-wrap { min-height: 0; width: 100%; padding: 8px 14px 12px; }
  .lm-navbar ul { width: 100%; display: grid; gap: 0; overflow: visible; }
  .lm-navbar li { border-bottom: 1px solid rgba(255,255,255,.11); }
  .lm-navbar li:last-child { border-bottom: 0; }
  .lm-navbar a { min-height: 44px; display: flex; align-items: center; padding: 0 6px; font-size: 13px; }

  .lm-shop-page { padding-top: 24px; }
  .lm-shop-page > .lm-wrap { width: calc(100% - 24px); }
  .lm-shop-page > .lm-wrap > .woocommerce-breadcrumb { margin-bottom: 13px; font-size: 11px; }
  .lm-shop-page .page-title { margin-bottom: 22px; font-size: 32px; }
  .lm-shop-sidebar__content { grid-template-columns: 1fr; gap: 12px; }
  .lm-shop-filter { padding: 18px 16px; }
  .lm-shop-toolbar { min-height: 0; display: grid; grid-template-columns: 1fr; gap: 10px; margin-bottom: 16px; padding: 13px 0; }
  .lm-shop-toolbar .woocommerce-result-count { margin: 0; }
  .lm-shop-toolbar .woocommerce-ordering { width: 100%; }
  .lm-shop-toolbar .woocommerce-ordering select { width: 100%; min-width: 0; }
  .lm-shop-catalog .products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .lm-shop-catalog ul.products li.product { padding-bottom: 11px; }
  .lm-loop-category { margin-inline: 10px; font-size: 9px; }
  .lm-shop-catalog ul.products li.product .woocommerce-loop-product__title { min-height: 72px; padding: 0 10px 6px; -webkit-line-clamp: 4; font-size: 12px; line-height: 1.42; }
  .lm-shop-catalog ul.products li.product .price { min-height: 38px; padding: 0 10px; font-size: 14px; }
  .lm-loop-tools { grid-template-columns: 1fr 34px; gap: 5px; margin-inline: 10px; padding-top: 9px; }
  .lm-loop-tools button { min-height: 34px; padding-inline: 6px; font-size: 9px; }
  .lm-shop-catalog ul.products li.product > .button { width: calc(100% - 20px); min-height: 38px; margin: 7px 10px 0; padding: 0 7px; font-size: 9px; }
  .lm-shop-catalog ul.products li.product .onsale { top: 7px; padding: 6px 8px; font-size: 9px; }

  .lm-home-banner { padding: 0; }
  .lm-home-banner .lm-wrap { width: 100%; max-width: none; }
  .lm-home-banner__viewport { border-radius: 0; box-shadow: none; }
  .lm-home-banner__slides { min-height: 330px; aspect-ratio: auto; }
  .lm-home-banner__slide { align-items: flex-start; padding: 29px 38px 64px; }
  .lm-home-banner__slide::after { top: auto; right: -25%; bottom: -50%; width: 92%; border-width: 12vw; }
  .lm-home-banner__copy { width: 77%; max-width: 77%; }
  .lm-home-banner__copy small { margin-bottom: 10px; padding: 6px 8px; font-size: 9px; }
  .lm-home-banner__copy strong { max-width: 330px; font-size: clamp(35px, 10.4vw, 46px); line-height: 1; }
  .lm-home-banner__copy > span { max-width: 260px; margin-top: 11px; font-size: 14px; line-height: 1.4; }
  .lm-home-banner__copy > b { min-height: 42px; margin-top: 16px; padding: 0 15px; font-size: 10px; }
  .lm-home-banner__placeholder { right: -7%; bottom: 39px; width: 43%; border-width: 1px; border-radius: 8px; box-shadow: 11px 11px 0 rgba(23,12,49,.12); opacity: .72; }
  .lm-home-banner__placeholder::before { width: 35px; height: 25px; margin-bottom: 7px; border-width: 2px; }
  .lm-home-banner__placeholder em { font-size: 8px; }
  .lm-home-banner__placeholder b { font-size: 21px; }
  .lm-home-banner__arrow { top: auto; bottom: 12px; width: 34px; height: 34px; padding-bottom: 4px; transform: none; font-size: 28px; }
  .lm-home-banner__arrow:hover { transform: scale(1.04); }
  .lm-home-banner__arrow--prev { left: 14px; }
  .lm-home-banner__arrow--next { right: 14px; }
  .lm-home-banner__dots { bottom: 24px; }

  .sc-products { padding: 34px 12px 54px; }
  .sc-products__heading { margin-bottom: 22px; text-align: left; }
  .sc-products h2 { margin-bottom: 14px; font-size: clamp(28px, 8vw, 34px); }
  .sc-products__tabs { justify-content: flex-start; gap: 7px; padding-bottom: 4px; scrollbar-width: none; }
  .sc-products__tabs::-webkit-scrollbar { display: none; }
  .sc-products__tabs button { flex: none; min-height: 38px; padding: 7px 12px; white-space: nowrap; border: 1px solid #e3e6eb; background: #f6f7f9; font-size: 12px; font-weight: 700; }
  .sc-products__tabs button.is-active { color: #fff; border-color: var(--lm-blue); background: var(--lm-blue); }
  .sc-products__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .sc-product-card { box-shadow: 0 2px 10px rgba(28,36,46,.07); }
  .sc-product-card:hover { transform: none; }
  .sc-product-card__tools { right: 7px; bottom: 7px; left: 7px; justify-content: flex-end; gap: 5px; opacity: 1; transform: none; }
  .sc-product-card__tools button { min-height: 30px; padding: 6px 8px; background: rgba(41,41,41,.9); font-size: 9px; }
  .sc-product-card__tools button:last-child { min-width: 31px; }
  .sc-product-card__body { padding: 12px 11px 15px; }
  .sc-product-card__category { min-height: 17px; margin-bottom: 4px; font-size: 10px; }
  .sc-product-card h3 { min-height: 76px; margin-bottom: 8px; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 4; font-size: 14px; line-height: 1.36; }
  .sc-product-card__price { font-size: 15px; }
  .sc-product-card__price del { display: block; margin: 0; font-size: 11px; }
  .sc-products__footer { margin-top: 24px; }
  .sc-products__footer a { width: 100%; min-height: 46px; }

  .woocommerce .products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .lm-page { padding: 36px 0 58px; }
  .lm-page > .lm-wrap > article > h1,
  .lm-page > .lm-wrap > h1,
  .woocommerce-products-header__title { margin-bottom: 24px; font-size: 30px; }
  .woocommerce-error,
  .woocommerce-info,
  .woocommerce-message { padding: 14px 14px 14px 40px; font-size: 13px; }
  .woocommerce-account .lm-page { padding-top: 34px; }
  .woocommerce-account #customer_login { grid-template-columns: 1fr; gap: 18px; }
  .woocommerce-account #customer_login h2 { padding: 18px 20px 15px; font-size: 21px; }
  .woocommerce-account #customer_login form.login,
  .woocommerce-account #customer_login form.register { min-height: 0; padding: 22px 20px 24px; }
  .woocommerce-account #customer_login .form-row:has(.woocommerce-form-login__rememberme) { align-items: flex-start; flex-direction: column; }
  .logged-in.woocommerce-account .woocommerce { grid-template-columns: 1fr; gap: 18px; }
  .logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: 1fr 1fr; }
  .logged-in.woocommerce-account .woocommerce-MyAccount-navigation li:nth-child(odd) a { border-right: 1px solid #edf0f2; }
  .logged-in.woocommerce-account .woocommerce-MyAccount-content { padding: 22px 18px; }
  .woocommerce table.shop_table { display: block; overflow-x: auto; }
  .woocommerce-cart .wp-block-woocommerce-cart,
  .woocommerce-checkout .wp-block-woocommerce-checkout { padding: 16px 12px; }
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title { min-height: 74px; padding-inline: 9px; font-size: 12px; }
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price { padding-inline: 9px; }
  .sc-wishlist__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .lm-footer { padding-top: 42px; }
  .lm-footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .lm-footer-brand { font-size: 26px; }

  body.single-product .lm-page { padding: 12px 0 54px; }
  body.single-product .lm-wrap { width: calc(100% - 20px); }
  .lm-product-hero { gap: 14px; }
  .lm-product-main-image { aspect-ratio: 1 / 1; }
  .lm-product-thumbnails { gap: 8px; margin-top: 8px; }
  .lm-product-thumb { flex-basis: 62px; width: 62px; height: 62px; }
  .lm-product-summary { padding: 20px 16px 22px; }
  .lm-product-summary-top { margin-bottom: 13px; }
  .lm-product-summary .woocommerce-breadcrumb { font-size: 11px; }
  .lm-product-summary .product_title { margin-bottom: 17px; font-size: clamp(24px, 7vw, 29px); line-height: 1.16; }
  .lm-rating-row { flex-wrap: wrap; }
  .lm-product-summary .woocommerce-product-details__short-description { font-size: 14px; }
  .lm-product-detail { margin-top: 16px; }
  .lm-product-detail .woocommerce-tabs ul.tabs { padding: 0 14px; gap: 20px; scrollbar-width: none; }
  .lm-product-detail .woocommerce-tabs ul.tabs::-webkit-scrollbar { display: none; }
  .lm-product-detail .woocommerce-tabs .panel { padding: 24px 15px 30px; }
  .lm-product-detail #reviews #comments,
  .lm-product-detail #review_form_wrapper { padding: 20px 16px; }
  .lm-product-detail #reviews #comments h2 { font-size: 24px; }
  .lm-product-detail #review_form .comment-reply-title { font-size: 21px; }
  .lm-product-detail #review_form .comment-form-comment textarea { min-height: 180px; }
  .lm-product-detail .related h2,
  .lm-product-detail .upsells h2 { font-size: 25px; }
  .lm-product-detail .related ul.products,
  .lm-product-detail .upsells ul.products { gap: 10px; }
  .lm-product-detail .related ul.products li.product .woocommerce-loop-product__title,
  .lm-product-detail .upsells ul.products li.product .woocommerce-loop-product__title { min-height: 72px; padding: 0 10px 7px; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 4; font-size: 13px; }
  .lm-product-detail .related ul.products li.product .price,
  .lm-product-detail .upsells ul.products li.product .price { padding: 0 10px; font-size: 14px; }
  .lm-product-detail .related ul.products li.product .button,
  .lm-product-detail .upsells ul.products li.product .button { width: calc(100% - 20px); margin: 11px 10px 0; }
}

@media (max-width: 355px) {
  .lm-brand { font-size: 19px; }
  .lm-logo-placeholder { display: none; }
  .lm-actions .lm-action-icon,
  .lm-mobile-menu { width: 38px; }
}

/* Tutorial center: grouped support guides using the store's existing visual system. */
body.page-template-page-tutorial { background: #f7f8fa; }
.lm-tutorial-hub { padding-bottom: 84px; }
.lm-tutorial-hero { position: relative; overflow: hidden; color: #fff; background: linear-gradient(118deg, #253b59 0%, #3f659c 58%, #4e78b9 100%); }
.lm-tutorial-hero::after { position: absolute; top: -220px; right: -70px; width: 560px; height: 560px; border: 80px solid rgba(255,255,255,.045); border-radius: 50%; content: ""; }
.lm-tutorial-hero > .lm-wrap { position: relative; z-index: 1; padding-top: 22px; }
.lm-tutorial-breadcrumb { display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.64); font-size: 11px; font-weight: 700; letter-spacing: .06em; }
.lm-tutorial-breadcrumb a:hover { color: #fff; }
.lm-tutorial-hero__content { min-height: 285px; display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: center; gap: 42px; padding: 34px 0 48px; }
.lm-tutorial-eyebrow { display: inline-flex; align-items: center; min-height: 28px; margin-bottom: 16px; padding: 0 10px; color: #2c3b51; background: #f5dd45; font-size: 10px; font-weight: 900; letter-spacing: .13em; }
.lm-tutorial-hero h1 { margin: 0; font-size: clamp(44px, 6vw, 70px); font-weight: 800; letter-spacing: -.055em; line-height: 1; }
.lm-tutorial-hero__content p { max-width: 610px; margin: 18px 0 0; color: rgba(255,255,255,.78); font-size: 17px; line-height: 1.65; }
.lm-tutorial-hero__mark { position: relative; width: 260px; height: 170px; display: grid; grid-template-columns: repeat(3, 1fr); align-content: center; justify-self: end; padding: 30px; border: 2px dashed rgba(255,255,255,.36); box-shadow: 18px 18px 0 rgba(19,32,49,.13); transform: rotate(-3deg); }
.lm-tutorial-hero__mark span { color: rgba(255,255,255,.58); font-size: 12px; font-weight: 700; letter-spacing: .08em; }
.lm-tutorial-hero__mark strong { grid-column: 1 / -1; margin-top: 8px; font-size: 31px; letter-spacing: -.04em; }
.lm-tutorial-content { padding-top: 56px; }
.lm-tutorial-group { scroll-margin-top: 28px; }
.lm-tutorial-group + .lm-tutorial-group { margin-top: 74px; }
.lm-tutorial-group__heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 27px; padding-bottom: 18px; border-bottom: 1px solid #dfe2e6; }
.lm-tutorial-group__heading > div > span { color: var(--lm-blue); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.lm-tutorial-group__heading h2 { margin: 4px 0 0; color: #2d2d2d; font-size: clamp(28px, 4vw, 38px); font-weight: 600; letter-spacing: -.035em; line-height: 1.1; }
.lm-tutorial-group__heading p { max-width: 460px; margin: 0; color: #74787d; font-size: 14px; line-height: 1.6; text-align: right; }
.lm-tutorial-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.lm-tutorial-card { min-width: 0; display: flex; overflow: hidden; flex-direction: column; background: #fff; border: 1px solid #e3e5e8; box-shadow: 0 3px 14px rgba(28,36,46,.055); transition: transform .18s, box-shadow .18s; }
.lm-tutorial-card:hover { transform: translateY(-3px); box-shadow: 0 15px 30px rgba(28,36,46,.11); }
.lm-tutorial-card__image { position: relative; aspect-ratio: 16 / 10; display: grid; overflow: hidden; place-items: center; background: #eef2f7; border-bottom: 1px solid #e7e9ec; }
.lm-tutorial-card__image::after { position: absolute; inset: 0; background: linear-gradient(to top, rgba(26,35,48,.08), transparent 45%); content: ""; pointer-events: none; }
.lm-tutorial-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.lm-tutorial-card:hover .lm-tutorial-card__image img { transform: scale(1.025); }
.lm-tutorial-card__image > span { width: 72px; height: 72px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: var(--lm-blue); font-size: 32px; font-weight: 800; }
.lm-tutorial-card__body { flex: 1; display: flex; flex-direction: column; padding: 22px 22px 24px; }
.lm-tutorial-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 12px; color: #92969b; font-size: 10px; letter-spacing: .05em; }
.lm-tutorial-card__meta span { color: var(--lm-blue); font-weight: 800; }
.lm-tutorial-card h3 { margin: 0 0 11px; color: #31343a; font-size: 19px; line-height: 1.35; }
.lm-tutorial-card h3 a:hover { color: var(--lm-blue); }
.lm-tutorial-card__body > p { margin: 0 0 21px; color: #70747a; font-size: 14px; line-height: 1.65; }
.lm-tutorial-card__button { min-height: 43px; display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding: 0 15px; color: #fff; background: var(--lm-blue); font-size: 11px; font-weight: 800; letter-spacing: .05em; transition: background .15s; }
.lm-tutorial-card__button:hover { background: #3f68a8; }
.lm-tutorial-card__button span { font-size: 17px; font-weight: 400; }
.lm-tutorial-empty { margin: 0; padding: 24px; color: #777; border-left: 3px solid var(--lm-blue); background: #fff; }
.lm-navbar .current-menu-item > a,
.lm-navbar .current_page_item > a { color: #9ab9e8; }

@media (max-width: 900px) {
  .lm-tutorial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lm-tutorial-hero__content { grid-template-columns: minmax(0, 1fr) 220px; }
  .lm-tutorial-hero__mark { width: 210px; height: 145px; padding: 22px; }
}

@media (max-width: 620px) {
  .lm-tutorial-hub { padding-bottom: 58px; }
  .lm-tutorial-hero > .lm-wrap { width: calc(100% - 28px); padding-top: 16px; }
  .lm-tutorial-hero__content { min-height: 0; grid-template-columns: 1fr; gap: 24px; padding: 36px 0 48px; }
  .lm-tutorial-hero h1 { font-size: clamp(40px, 12vw, 52px); }
  .lm-tutorial-hero__content p { margin-top: 14px; font-size: 15px; }
  .lm-tutorial-hero__mark { display: none; }
  .lm-tutorial-content { padding-top: 40px; }
  .lm-tutorial-group + .lm-tutorial-group { margin-top: 52px; }
  .lm-tutorial-group__heading { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 20px; }
  .lm-tutorial-group__heading p { text-align: left; }
  .lm-tutorial-grid { grid-template-columns: 1fr; gap: 16px; }
  .lm-tutorial-card__body { padding: 19px 18px 21px; }
  .lm-tutorial-card h3 { font-size: 18px; }
}

/* Order-linked activation portal preview. */
.lm-activation-portal { padding-bottom: 78px; background: #f7f8fa; }
.lm-activation-heading { color: #fff; background: linear-gradient(118deg, #263d5d 0%, #3f6499 60%, #4e78b9 100%); }
.lm-activation-heading .lm-wrap { padding-top: 18px; padding-bottom: 36px; }
.lm-activation-heading .lm-cid-breadcrumb { margin-bottom: 25px; }
.lm-activation-heading__status { display: inline-flex; align-items: center; min-height: 27px; padding: 0 9px; color: #224936; background: #bce7ca; font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.lm-activation-heading h1 { margin: 10px 0 0; font-size: clamp(34px, 4.4vw, 50px); font-weight: 800; letter-spacing: -.045em; line-height: 1.05; }
.lm-activation-heading p { max-width: 680px; margin: 10px 0 0; color: rgba(255,255,255,.76); font-size: 15px; }
.lm-activation-shell { padding-top: 26px; }
.lm-order-summary { display: grid; grid-template-columns: 190px minmax(0, 1fr); margin-bottom: 24px; overflow: hidden; border: 1px solid #dfe3e8; background: #fff; box-shadow: 0 3px 14px rgba(28,36,46,.05); }
.lm-order-summary__title { display: flex; justify-content: center; flex-direction: column; padding: 22px 25px; color: #fff; background: #2d3540; }
.lm-order-summary__title span { font-size: 9px; font-weight: 800; letter-spacing: .13em; opacity: .67; }
.lm-order-summary__title strong { margin-top: 4px; font-size: 19px; }
.lm-order-summary dl { display: grid; grid-template-columns: minmax(0, 1.8fr) .55fr .85fr; margin: 0; }
.lm-order-summary dl > div { display: flex; justify-content: center; flex-direction: column; padding: 16px 23px; border-right: 1px solid #e7e9ec; }
.lm-order-summary dl > div:last-child { border-right: 0; }
.lm-order-summary dt { margin-bottom: 3px; color: #8b8f95; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.lm-order-summary dd { margin: 0; color: #3a3e44; font-size: 14px; font-weight: 700; }
.lm-order-summary dd strong { color: #2f8a5d; font-size: 18px; }
.lm-activation-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: start; gap: 24px; }
.lm-activation-workspace { display: grid; gap: 20px; }
.lm-license-panel,
.lm-iid-panel,
.lm-activation-aside > section { border: 1px solid #dfe3e8; background: #fff; box-shadow: 0 3px 14px rgba(28,36,46,.05); }
.lm-license-panel,
.lm-iid-panel { padding: 26px 28px 29px; }
.lm-license-panel__heading,
.lm-iid-panel__heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.lm-license-panel__heading > div > span,
.lm-iid-panel__heading > span { display: block; margin-bottom: 4px; color: var(--lm-blue); font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.lm-license-panel h2,
.lm-iid-panel h2 { margin: 0; color: #33373d; font-size: 22px; letter-spacing: -.02em; }
.lm-license-panel__available { padding: 6px 9px; color: #2f8158; background: #edf8f2; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.lm-license-key { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: stretch; gap: 8px; margin-top: 19px; }
.lm-license-key code { min-height: 52px; display: flex; align-items: center; padding: 0 15px; overflow-x: auto; color: #253a55; border: 1px dashed #aeb9c6; background: #f6f8fa; font-size: clamp(14px, 2vw, 18px); font-weight: 800; letter-spacing: .04em; white-space: nowrap; }
.lm-license-key > div { display: flex; gap: 7px; }
.lm-license-key button { min-width: 82px; padding: 0 12px; color: #53585e; border: 1px solid #d8dce1; background: #fff; font-size: 10px; font-weight: 800; cursor: pointer; }
.lm-license-key button:hover { color: #fff; border-color: var(--lm-blue); background: var(--lm-blue); }
.lm-license-panel > p { margin: 12px 0 0; color: #777c82; font-size: 12px; line-height: 1.6; }
.lm-iid-panel__heading { justify-content: flex-start; }
.lm-iid-panel__heading > span { width: 48px; height: 48px; display: grid; flex: none; place-items: center; margin: 0; color: #fff; background: var(--lm-blue); }
.lm-iid-panel__heading p { margin: 3px 0 0; color: #858a90; font-size: 12px; }
.lm-iid-tabs { display: grid; grid-template-columns: 1fr 1fr; margin-top: 23px; border-bottom: 1px solid #dfe2e6; }
.lm-iid-tabs button { min-height: 43px; padding: 0 15px; color: #777c82; border: 0; border-bottom: 2px solid transparent; background: #f5f6f8; font-size: 10px; font-weight: 900; letter-spacing: .05em; cursor: pointer; }
.lm-iid-tabs button[aria-selected="true"] { color: var(--lm-blue); border-bottom-color: var(--lm-blue); background: #fff; }
.lm-iid-form { padding-top: 22px; }
.lm-iid-form label { display: block; margin-bottom: 8px; color: #42474d; font-size: 12px; font-weight: 800; }
.lm-iid-form textarea { width: 100%; min-height: 118px; padding: 15px; resize: vertical; color: #30353b; border: 1px solid #ccd1d7; border-radius: 0; outline: 0; background: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 15px; line-height: 1.65; }
.lm-iid-form textarea:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-iid-format { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 7px; color: #93979c; font-size: 10px; }
.lm-iid-format b { color: #676c72; }
.lm-iid-file { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); }
.lm-iid-dropzone { min-height: 210px; display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 24px; color: #767b81; border: 1px dashed #abb5c1; outline: 0; background: #f7f9fb; text-align: center; cursor: pointer; transition: border-color .15s, background .15s; }
.lm-iid-dropzone:hover,
.lm-iid-dropzone:focus-visible,
.lm-iid-dropzone.is-dragging { border-color: var(--lm-blue); background: #f0f5fb; }
.lm-iid-dropzone__icon { width: 38px; height: 38px; display: grid; margin-bottom: 10px; place-items: center; color: var(--lm-blue); border: 1px solid #b9c8dc; background: #fff; font-size: 22px; }
.lm-iid-dropzone strong { color: #42474d; font-size: 14px; }
.lm-iid-dropzone > span { max-width: 430px; margin-top: 4px; font-size: 11px; }
.lm-iid-dropzone button { min-height: 35px; margin-top: 14px; padding: 0 14px; color: #fff; border: 0; background: #616a76; font-size: 9px; font-weight: 800; cursor: pointer; }
.lm-iid-dropzone img { max-width: min(100%, 420px); max-height: 230px; margin-top: 16px; object-fit: contain; border: 1px solid #dfe3e8; background: #fff; }
.lm-iid-dropzone small { margin-top: 7px; color: #59616b; }
.lm-iid-dropzone.has-image .lm-iid-dropzone__icon,
.lm-iid-dropzone.has-image > strong,
.lm-iid-dropzone.has-image > span { display: none; }
.lm-iid-submit { width: 100%; min-height: 50px; display: flex; align-items: center; justify-content: space-between; margin-top: 20px; padding: 0 19px; color: #fff; border: 0; background: var(--lm-blue); font-size: 11px; font-weight: 900; letter-spacing: .055em; cursor: pointer; }
.lm-iid-submit:hover { background: #3f68a8; }
.lm-iid-submit span { font-size: 19px; font-weight: 400; }
.lm-cid-result--info { color: #3d638d; border-color: var(--lm-blue); background: #f1f6fc; }
.lm-cid-result--info .lm-cid-result__icon::after { content: "i"; }
.lm-activation-aside { display: grid; gap: 20px; }
.lm-activation-aside > section { padding: 25px 24px; }
.lm-activation-aside > section > span { color: var(--lm-blue); font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.lm-activation-aside ol { margin: 20px 0 0; padding: 0; list-style: none; counter-reset: lm-order-progress; }
.lm-activation-aside li { position: relative; min-height: 75px; padding: 0 0 22px 46px; counter-increment: lm-order-progress; }
.lm-activation-aside li::before { position: absolute; top: 0; left: 0; width: 31px; height: 31px; display: grid; place-items: center; color: #858a90; border: 1px solid #d3d8de; background: #fff; content: counter(lm-order-progress); font-size: 10px; font-weight: 800; }
.lm-activation-aside li:not(:last-child)::after { position: absolute; top: 32px; bottom: 1px; left: 15px; width: 1px; background: #dce0e5; content: ""; }
.lm-activation-aside li.is-complete::before { color: #fff; border-color: #3d9569; background: #3d9569; content: "✓"; }
.lm-activation-aside li.is-active::before { color: #fff; border-color: var(--lm-blue); background: var(--lm-blue); }
.lm-activation-aside li b,
.lm-activation-aside li small { display: block; }
.lm-activation-aside li b { color: #42474d; font-size: 13px; }
.lm-activation-aside li small { margin-top: 3px; color: #888d93; font-size: 11px; line-height: 1.5; }
.lm-activation-support h2 { margin: 0; color: #373c42; font-size: 19px; }
.lm-activation-support p { margin: 8px 0 16px; color: #777c82; font-size: 12px; line-height: 1.6; }
.lm-activation-support a { min-height: 39px; display: flex; align-items: center; justify-content: center; color: #fff; background: #2d3540; font-size: 10px; font-weight: 900; letter-spacing: .05em; }

@media (max-width: 900px) {
  .lm-order-summary { grid-template-columns: 155px 1fr; }
  .lm-order-summary dl { grid-template-columns: 1.4fr .6fr .9fr; }
  .lm-activation-grid { grid-template-columns: 1fr; }
  .lm-activation-aside { grid-template-columns: 1.5fr 1fr; }
}

@media (max-width: 620px) {
  .lm-activation-portal { padding-bottom: 54px; }
  .lm-activation-heading .lm-wrap { padding-top: 14px; padding-bottom: 28px; }
  .lm-activation-heading .lm-cid-breadcrumb { margin-bottom: 20px; }
  .lm-activation-heading h1 { font-size: 36px; }
  .lm-activation-shell { width: calc(100% - 22px); padding-top: 14px; }
  .lm-order-summary { grid-template-columns: 1fr; }
  .lm-order-summary__title { padding: 15px 18px; }
  .lm-order-summary dl { grid-template-columns: 1fr 1fr; }
  .lm-order-summary dl > div { padding: 13px 16px; }
  .lm-order-summary dl > div:first-child { grid-column: 1 / -1; border-right: 0; border-bottom: 1px solid #e7e9ec; }
  .lm-license-panel,
  .lm-iid-panel { padding: 21px 16px 23px; }
  .lm-license-panel__heading { align-items: flex-start; }
  .lm-license-key { grid-template-columns: 1fr; }
  .lm-license-key code { min-height: 50px; font-size: 13px; }
  .lm-license-key > div { display: grid; grid-template-columns: 1fr 1fr; }
  .lm-license-key button { min-height: 40px; }
  .lm-iid-panel__heading { align-items: flex-start; }
  .lm-iid-panel__heading > span { width: 41px; height: 41px; }
  .lm-iid-panel h2 { font-size: 19px; }
  .lm-iid-tabs button { padding-inline: 7px; font-size: 9px; }
  .lm-iid-form textarea { min-height: 145px; }
  .lm-iid-format { align-items: flex-start; flex-direction: column; gap: 2px; }
  .lm-iid-dropzone { min-height: 220px; padding: 20px 14px; }
  .lm-activation-aside { grid-template-columns: 1fr; }
}

/* SPSS paid-order fulfillment portal. */
.lm-spss-portal .lm-order-summary dl { grid-template-columns: minmax(0, 1.8fr) .55fr .85fr; }
.lm-spss-license { overflow: hidden; border: 1px solid #dfe3e8; background: #fff; box-shadow: 0 3px 14px rgba(28,36,46,.05); }
.lm-spss-license__heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 23px 27px; color: #fff; background: #2d3540; }
.lm-spss-license__heading span { display: block; margin-bottom: 4px; color: #aebdce; font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.lm-spss-license__heading h2 { margin: 0; color: #fff; font-size: 20px; line-height: 1.3; }
.lm-spss-license__heading > b { flex: none; padding: 8px 11px; color: #284b78; background: #fff; font-size: 11px; letter-spacing: .08em; }
.lm-spss-license__section { padding: 25px 27px 28px; border-top: 1px solid #e5e8eb; }
.lm-spss-license__section:first-of-type { border-top: 0; }
.lm-spss-step { display: flex; align-items: center; gap: 14px; }
.lm-spss-step > span { width: 39px; height: 39px; display: grid; flex: none; place-items: center; color: #fff; background: var(--lm-blue); font-size: 10px; font-weight: 900; }
.lm-spss-step h3 { margin: 0; color: #34383e; font-size: 17px; }
.lm-spss-step p { margin: 3px 0 0; color: #858a90; font-size: 12px; line-height: 1.5; }
.lm-spss-downloads { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 18px; }
.lm-spss-downloads a { min-height: 48px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; color: #fff; background: var(--lm-blue); font-size: 10px; font-weight: 900; letter-spacing: .04em; }
.lm-spss-downloads a:nth-child(2) { background: #4c5561; }
.lm-spss-downloads a:hover { color: #fff; background: #3d67a7; }
.lm-spss-downloads a span { font-size: 18px; }
.lm-spss-downloads__empty { grid-column: 1 / -1; margin: 0; padding: 15px 17px; color: #765f26; border-left: 3px solid #d1a63c; background: #fff9e9; font-size: 12px; }
.lm-spss-activation-form { margin-top: 19px; }
.lm-spss-activation-form label { display: block; margin-bottom: 8px; color: #42474d; font-size: 12px; font-weight: 800; }
.lm-spss-activation-form > div,.lm-spss-preview-form { display: grid; grid-template-columns: minmax(0, 1fr) 205px; }
.lm-spss-activation-form input,.lm-spss-preview-form input { min-width: 0; min-height: 50px; padding: 0 15px; color: #30353b; border: 1px solid #ccd1d7; border-right: 0; border-radius: 0; outline: 0; background: #fff; font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; font-size: 15px; }
.lm-spss-activation-form input:focus { position: relative; border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-spss-lock-help { position: relative; display: block; min-width: 0; }
.lm-spss-lock-help > input { width: 100%; }
.lm-spss-lock-tooltip { position: absolute; z-index: 30; bottom: calc(100% + 12px); left: 0; width: min(580px, 74vw); padding: 14px; visibility: hidden; color: #3d4248; border: 1px solid #cfd5dd; background: #fff; box-shadow: 0 16px 38px rgba(25,35,48,.22); opacity: 0; transform: translateY(7px); pointer-events: none; transition: opacity .16s ease,transform .16s ease,visibility .16s; }
.lm-spss-lock-tooltip::after { position: absolute; bottom: -8px; left: 27px; width: 14px; height: 14px; border-right: 1px solid #cfd5dd; border-bottom: 1px solid #cfd5dd; background: #fff; content: ""; transform: rotate(45deg); }
.lm-spss-lock-tooltip b,.lm-spss-lock-tooltip small { display: block; }
.lm-spss-lock-tooltip b { margin-bottom: 9px; color: #30353b; font-size: 13px; }
.lm-spss-lock-tooltip img { width: 100%; max-height: 390px; display: block; object-fit: contain; border: 1px solid #e0e3e7; background: #edf4fd; }
.lm-spss-lock-tooltip small { margin-top: 9px; color: #6f757c; font-size: 11px; line-height: 1.5; }
.lm-spss-lock-help:hover .lm-spss-lock-tooltip,.lm-spss-lock-help:focus-within .lm-spss-lock-tooltip { visibility: visible; opacity: 1; transform: translateY(0); }
.lm-spss-activation-form button,.lm-spss-preview-form button { min-height: 50px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; color: #fff; border: 0; background: var(--lm-blue); font-size: 10px; font-weight: 900; letter-spacing: .045em; cursor: pointer; }
.lm-spss-preview-form { margin-top: 19px; opacity: .7; }
.lm-spss-admin-test { display: grid; gap: 15px; margin-top: 19px; padding: 18px; border: 1px solid #d9dee5; background: #f7f9fb; }
.lm-spss-admin-test > p { margin: 0; padding: 11px 13px; color: #765f26; border-left: 3px solid #d1a63c; background: #fff9e9; font-size: 12px; line-height: 1.55; }
.lm-spss-admin-test > p strong { display: inline-block; margin-right: 6px; color: #684c0c; font-size: 9px; letter-spacing: .08em; }
.lm-spss-admin-test__fields { display: grid; grid-template-columns: 110px minmax(0, 1fr) minmax(180px, .65fr); gap: 10px; }
.lm-spss-admin-test label { display: grid; gap: 6px; margin: 0; color: #4e5359; font-size: 10px; font-weight: 800; }
.lm-spss-admin-test input,.lm-spss-admin-test select { width: 100%; min-width: 0; min-height: 44px; padding: 0 11px; color: #30353b; border: 1px solid #ccd1d7; border-radius: 0; background: #fff; font: inherit; font-size: 13px; }
.lm-spss-admin-test > button { min-height: 48px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; color: #fff; border: 0; background: #2d3540; font-size: 10px; font-weight: 900; letter-spacing: .045em; cursor: pointer; }
.lm-spss-admin-test > button span { font-size: 18px; }
.lm-spss-copy-code { margin-top: 9px; padding: 8px 11px; color: #fff; border: 0; background: #315e48; font-size: 9px; font-weight: 900; cursor: pointer; }
.lm-spss-page-notice { margin: 0 0 20px; border-right: 1px solid #eed5d2; border-top: 1px solid #eed5d2; border-bottom: 1px solid #eed5d2; }
.lm-spss-access-error { padding: 34px; border: 1px solid #dfe3e8; background: #fff; box-shadow: 0 3px 14px rgba(28,36,46,.05); }
.lm-spss-access-error > span { color: var(--lm-blue); font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.lm-spss-access-error h2 { margin: 8px 0 0; color: #34383e; font-size: 25px; }
.lm-spss-access-error p { max-width: 680px; margin: 9px 0 19px; color: #747980; line-height: 1.65; }
.lm-spss-access-error a { min-height: 42px; display: inline-flex; align-items: center; padding: 0 17px; color: #fff; background: var(--lm-blue); font-size: 10px; font-weight: 900; }
.lm-spss-order-link .button { color: #fff !important; background: var(--lm-blue) !important; }

@media (max-width: 620px) {
  .lm-spss-license__heading { align-items: flex-start; padding: 19px 16px; }
  .lm-spss-license__heading h2 { font-size: 17px; }
  .lm-spss-license__section { padding: 21px 16px 23px; }
  .lm-spss-step { align-items: flex-start; }
  .lm-spss-downloads { grid-template-columns: 1fr; }
  .lm-spss-activation-form > div,.lm-spss-preview-form { grid-template-columns: 1fr; gap: 8px; }
  .lm-spss-activation-form input,.lm-spss-preview-form input { border-right: 1px solid #ccd1d7; }
  .lm-spss-lock-tooltip { position: fixed; top: 50%; right: 14px; bottom: auto; left: 14px; width: auto; max-height: calc(100vh - 40px); overflow-y: auto; transform: translateY(-46%); }
  .lm-spss-lock-tooltip::after { display: none; }
  .lm-spss-lock-help:hover .lm-spss-lock-tooltip,.lm-spss-lock-help:focus-within .lm-spss-lock-tooltip { transform: translateY(-50%); }
  .lm-spss-admin-test { padding: 14px; }
  .lm-spss-admin-test__fields { grid-template-columns: 1fr; }
  .lm-spss-access-error { padding: 25px 19px; }
}

/* Microsoft 365 paid-order account creator. */
.lm-m365-create-card,.lm-m365-history { padding: 27px 28px 30px; border: 1px solid #dfe3e8; background: #fff; box-shadow: 0 3px 14px rgba(28,36,46,.05); }
.lm-m365-create-card > header,.lm-m365-history > header { padding-bottom: 18px; border-bottom: 1px solid #e5e8eb; }
.lm-m365-create-card > header > span,.lm-m365-history > header > span { color: var(--lm-blue); font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.lm-m365-create-card > header h2,.lm-m365-history > header h2 { margin: 5px 0 0; color: #34383e; font-size: 22px; }
.lm-m365-create-card > header p { margin: 5px 0 0; color: #7b8086; font-size: 12px; line-height: 1.6; }
.lm-m365-preview-note { margin-top: 19px; padding: 12px 14px; color: #765f26; border-left: 3px solid #d1a63c; background: #fff9e9; font-size: 11px; font-weight: 800; }
.lm-m365-create-form { padding-top: 21px; }
.lm-m365-create-form label { display: block; margin-bottom: 8px; color: #42474d; font-size: 12px; font-weight: 800; }
.lm-m365-create-form > div { display: grid; grid-template-columns: minmax(0,1fr) 190px; }
.lm-m365-create-form input { min-width: 0; min-height: 52px; padding: 0 15px; color: #30353b; border: 1px solid #ccd1d7; border-right: 0; border-radius: 0; outline: 0; background: #fff; font-size: 15px; }
.lm-m365-create-form input:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-m365-create-form button { min-height: 52px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; color: #fff; border: 0; background: var(--lm-blue); font-size: 10px; font-weight: 900; letter-spacing: .045em; cursor: pointer; }
.lm-m365-create-form button:disabled,.lm-m365-create-form input:disabled { cursor: not-allowed; opacity: .55; }
.lm-m365-create-form > small { display: block; margin-top: 8px; color: #8a8f95; font-size: 10px; }
.lm-m365-create-card .lm-cid-result { margin-bottom: 0; }
.lm-m365-credentials { display: grid; gap: 9px; margin: 16px 0 0; }
.lm-m365-credentials > div { padding: 12px 13px; border: 1px solid #dce4df; background: #fff; }
.lm-m365-credentials dt { color: #7c8288; font-size: 9px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.lm-m365-credentials dd { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px; margin: 4px 0 0; }
.lm-m365-credentials code { overflow-wrap: anywhere; color: #253a55; font-size: 14px; font-weight: 800; }
.lm-m365-credentials button { padding: 7px 9px; color: #fff; border: 0; background: #315e48; font-size: 9px; font-weight: 900; cursor: pointer; }
.lm-m365-history__list { display: grid; gap: 8px; padding-top: 18px; }
.lm-m365-history-item { border: 1px solid #e3e6ea; background: #fafbfc; }
.lm-m365-history-item > summary,.lm-m365-history-item--failed { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 14px; }
.lm-m365-history-item > summary { list-style: none; cursor: pointer; transition: background .16s ease; }
.lm-m365-history-item > summary::-webkit-details-marker { display: none; }
.lm-m365-history-item > summary:hover,.lm-m365-history-item > summary:focus-visible { background: #f2f6fb; }
.lm-m365-history-item > summary:focus-visible { outline: 2px solid var(--lm-blue); outline-offset: -2px; }
.lm-m365-history-item__identity { display: grid; min-width: 0; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 5px 10px; }
.lm-m365-history-item__identity b { min-width: 0; overflow-wrap: anywhere; color: #3f444a; font-size: 13px; }
.lm-m365-history-item__identity small { grid-column: 2; color: #92979d; font-size: 10px; }
.lm-m365-history-item--failed > code { color: #687078; font-size: 10px; }
.lm-m365-history-item__action { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 10px; color: var(--lm-blue); font-size: 9px; font-weight: 900; letter-spacing: .055em; }
.lm-m365-history-item__chevron { width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .16s ease; }
.lm-m365-history-item[open] > summary { border-bottom: 1px solid #e3e6ea; background: #f4f7fb; }
.lm-m365-history-item[open] .lm-m365-history-item__action-label { font-size: 0; }
.lm-m365-history-item[open] .lm-m365-history-item__action-label::after { content: "HIDE DETAILS"; font-size: 9px; }
.lm-m365-history-item[open] .lm-m365-history-item__chevron { transform: rotate(225deg) translate(-2px,-2px); }
.lm-m365-history-item__details { padding: 17px 18px 19px; background: #fff; }
.lm-m365-history-item__details > p { margin: 0; color: #747b83; font-size: 11px; line-height: 1.55; }
.lm-m365-history-item__details .lm-m365-credentials { margin-top: 12px; }
.lm-m365-empty { margin: 18px 0 0; padding: 16px; color: #777d84; border-left: 3px solid var(--lm-blue); background: #f4f7fb; }
.lm-m365-order-link .button { color: #fff !important; background: var(--lm-blue) !important; }
.lm-inv-status--success { color: #28724e; background: #e9f7ef; }
.lm-inv-status--failed { color: #9b3e3a; background: #fff0ef; }

/* Microsoft 365 random-account delivery. */
.lm-random-account-list { padding: 27px 28px 30px; border: 1px solid #dfe3e8; background: #fff; box-shadow: 0 3px 14px rgba(28,36,46,.05); }
.lm-random-account-list > header { padding-bottom: 18px; border-bottom: 1px solid #e5e8eb; }
.lm-random-account-list > header > span { color: var(--lm-blue); font-size: 12px; font-weight: 900; letter-spacing: .13em; }
.lm-random-account-list > header h2 { margin: 5px 0 0; color: #34383e; font-size: 24px; }
.lm-random-account-list > header p { margin: 6px 0 0; color: #747b83; font-size: 14px; line-height: 1.6; }
.lm-random-account-download { min-height: 42px; display: inline-flex; align-items: center; gap: 22px; margin-top: 15px; padding: 0 15px; color: #fff; background: #2f5f9f; font-size: 12px; font-weight: 900; letter-spacing: .045em; }
.lm-random-account-download:hover { color: #fff; background: #264f87; }
.lm-random-account-download span { font-size: 18px; }
.lm-random-account-list__items { display: grid; gap: 14px; padding-top: 20px; }
.lm-random-account-card { overflow: hidden; border: 1px solid #dce2e9; background: #fff; }
.lm-random-account-card__heading { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 16px 18px; border-bottom: 1px solid #e3e7ec; background: #f6f8fb; }
.lm-random-account-card__heading > span { width: 48px; height: 48px; display: grid; place-items: center; color: #fff; background: var(--lm-blue); font-size: 14px; font-weight: 900; }
.lm-random-account-card__heading small { display: block; color: #7b828a; font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.lm-random-account-card__heading h3 { margin: 3px 0 0; color: #34393f; font-size: 19px; }
.lm-random-account-card__heading > b { padding: 7px 10px; color: #28724e; background: #e9f7ef; font-size: 12px; letter-spacing: .05em; }
.lm-random-account-credentials { display: grid; gap: 12px; margin: 0; padding: 18px; }
.lm-random-account-credentials > div { padding: 14px 15px; border: 1px solid #dfe4ea; background: #fbfcfd; }
.lm-random-account-credentials dt { color: #747b83; font-size: 12px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.lm-random-account-credentials dd { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px; margin: 7px 0 0; }
.lm-random-account-credentials code { min-width: 0; overflow-wrap: anywhere; color: #253a55; font-size: 16px; font-weight: 800; }
.lm-random-account-credentials dd > span { display: flex; gap: 7px; }
.lm-random-account-credentials button { min-height: 36px; padding: 0 12px; color: #fff; border: 0; background: #315e48; font-size: 12px; font-weight: 900; cursor: pointer; }
.lm-random-account-credentials [data-password-toggle] { color: #3e4c5d; border: 1px solid #cdd4dc; background: #fff; }
.lm-random-account-credentials button:hover { filter: brightness(.94); }

/* Autodesk paid-order account collection. */
.lm-autodesk-account-card,.lm-autodesk-products,.lm-autodesk-confirmation { padding: 27px 28px 30px; border: 1px solid #dfe3e8; background: #fff; box-shadow: 0 3px 14px rgba(28,36,46,.05); }
.lm-autodesk-account-card > header,.lm-autodesk-products > header { padding-bottom: 18px; border-bottom: 1px solid #e5e8eb; }
.lm-autodesk-account-card > header > span,.lm-autodesk-products > header > span { color: var(--lm-blue); font-size: 12px; font-weight: 900; letter-spacing: .13em; }
.lm-autodesk-account-card > header h2,.lm-autodesk-products > header h2 { margin: 5px 0 0; color: #34383e; font-size: 24px; }
.lm-autodesk-account-card > header p { margin: 6px 0 0; color: #747b83; font-size: 14px; line-height: 1.6; }
.lm-autodesk-choice { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding-top: 20px; }
.lm-autodesk-choice label { position: relative; display: block; cursor: pointer; }
.lm-autodesk-choice input { position: absolute; opacity: 0; pointer-events: none; }
.lm-autodesk-choice label > span { min-height: 98px; display: flex; flex-direction: column; justify-content: center; padding: 16px 18px 16px 50px; color: #454b52; border: 1px solid #d9dee5; background: #fbfcfd; transition: border-color .16s ease,background .16s ease,box-shadow .16s ease; }
.lm-autodesk-choice label > span::before { position: absolute; top: 50%; left: 18px; width: 18px; height: 18px; border: 2px solid #aeb6c0; border-radius: 50%; content: ""; transform: translateY(-50%); }
.lm-autodesk-choice label > span::after { position: absolute; top: 50%; left: 23px; width: 8px; height: 8px; border-radius: 50%; background: var(--lm-blue); content: ""; opacity: 0; transform: translateY(-50%); }
.lm-autodesk-choice b,.lm-autodesk-choice small { display: block; }
.lm-autodesk-choice b { font-size: 14px; }
.lm-autodesk-choice small { margin-top: 5px; color: #7c838b; font-size: 13px; line-height: 1.45; }
.lm-autodesk-choice input:checked + span { border-color: var(--lm-blue); background: #f3f7fd; box-shadow: inset 0 0 0 1px var(--lm-blue); }
.lm-autodesk-choice input:checked + span::before { border-color: var(--lm-blue); }
.lm-autodesk-choice input:checked + span::after { opacity: 1; }
.lm-autodesk-choice input:focus-visible + span { outline: 2px solid var(--lm-blue); outline-offset: 2px; }
.lm-autodesk-register { margin-top: 15px; padding: 19px; border-left: 4px solid #d7a31d; background: #fff9e9; }
.lm-autodesk-register[hidden],.lm-autodesk-form[hidden] { display: none !important; }
.lm-autodesk-register h3 { margin: 0; color: #3b4046; font-size: 18px; }
.lm-autodesk-register p { margin: 6px 0 14px; color: #6f747a; font-size: 14px; line-height: 1.55; }
.lm-autodesk-register a { min-height: 42px; display: inline-flex; align-items: center; gap: 20px; padding: 0 15px; color: #fff; background: #2e3540; font-size: 12px; font-weight: 900; }
.lm-autodesk-register a:hover { color: #fff; background: #1e242c; }
.lm-autodesk-form { padding-top: 20px; }
.lm-autodesk-form > label { display: block; margin-bottom: 8px; color: #42474d; font-size: 14px; font-weight: 800; }
.lm-autodesk-form > div { display: grid; grid-template-columns: minmax(0,1fr) 210px; }
.lm-autodesk-form input { min-width: 0; min-height: 54px; padding: 0 15px; color: #30353b; border: 1px solid #ccd1d7; border-right: 0; border-radius: 0; outline: 0; background: #fff; font-size: 16px; }
.lm-autodesk-form input:focus { border-color: var(--lm-blue); box-shadow: 0 0 0 3px rgba(78,120,185,.12); }
.lm-autodesk-form button { min-height: 54px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; color: #fff; border: 0; background: var(--lm-blue); font-size: 12px; font-weight: 900; cursor: pointer; }
.lm-autodesk-form button:disabled { cursor: not-allowed; opacity: .55; }
.lm-autodesk-form > small { display: block; margin-top: 8px; color: #7d848b; font-size: 13px; }
.lm-autodesk-products > div { display: grid; gap: 9px; padding-top: 18px; }
.lm-autodesk-products article { display: grid; grid-template-columns: 46px minmax(0,1.3fr) minmax(0,1fr) 90px; align-items: center; gap: 14px; padding: 14px; border: 1px solid #e2e6eb; background: #fafbfc; }
.lm-autodesk-products article > span { width: 42px; height: 42px; display: grid; place-items: center; color: #fff; background: var(--lm-blue); font-size: 13px; font-weight: 900; }
.lm-autodesk-products article small,.lm-autodesk-products article b { display: block; }
.lm-autodesk-products article small { color: #81878e; font-size: 12px; font-weight: 800; letter-spacing: .05em; }
.lm-autodesk-products article b { margin-top: 3px; color: #3f454c; font-size: 14px; }
.lm-autodesk-confirmation { display: grid; grid-template-columns: 62px minmax(0,1fr); gap: 0 18px; border-top: 4px solid #3a8a61; }
.lm-autodesk-confirmation__check { width: 62px; height: 62px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: #3a8a61; font-size: 30px; font-weight: 900; }
.lm-autodesk-confirmation > div > small { color: #2f7b55; font-size: 12px; font-weight: 900; letter-spacing: .12em; }
.lm-autodesk-confirmation h2 { margin: 5px 0 0; color: #34393f; font-size: 26px; }
.lm-autodesk-confirmation > div > p { margin: 7px 0 0; color: #6f767e; font-size: 15px; line-height: 1.6; }
.lm-autodesk-confirmation dl { grid-column: 1 / -1; display: grid; gap: 10px; margin: 22px 0 0; }
.lm-autodesk-confirmation dl > div { display: grid; grid-template-columns: 155px minmax(0,1fr); gap: 14px; padding: 13px 15px; border: 1px solid #e0e5ea; background: #fafbfc; }
.lm-autodesk-confirmation dt { color: #7b8289; font-size: 13px; font-weight: 800; }
.lm-autodesk-confirmation dd { margin: 0; overflow-wrap: anywhere; color: #343a41; font-size: 14px; font-weight: 800; }
.lm-autodesk-confirmation dd span { color: #9a6d09; }
.lm-autodesk-confirmation__notice { grid-column: 1 / -1; margin: 14px 0 0; padding: 14px 16px; color: #55606c; border-left: 3px solid var(--lm-blue); background: #f2f6fb; font-size: 14px; line-height: 1.6; }
.lm-autodesk-confirmation > a { grid-column: 1 / -1; justify-self: start; margin-top: 16px; color: var(--lm-blue); border-bottom: 1px solid currentColor; font-size: 12px; font-weight: 900; }
.lm-autodesk-order-link .button { color: #fff !important; background: var(--lm-blue) !important; }
.lm-autodesk-completed-guide { grid-column: 1 / -1; margin-top: 18px; }
.lm-autodesk-completed-guide ol { padding-left: 24px; font-size: 16px; line-height: 1.7; }
.lm-autodesk-completed-guide img { display: block; width: 100%; max-width: 520px; height: auto; border: 1px solid #dfe3e8; }
.lm-autodesk-completed-guide p { color: #747b83; font-size: 14px; }

@media (max-width: 620px) {
  .lm-m365-create-card,.lm-m365-history { padding: 22px 16px 24px; }
  .lm-m365-create-form > div { grid-template-columns: 1fr; gap: 8px; }
  .lm-m365-create-form input { border-right: 1px solid #ccd1d7; }
  .lm-m365-history-item > summary,.lm-m365-history-item--failed { align-items: flex-start; }
  .lm-m365-history-item__action-label { display: none; }
  .lm-m365-history-item--failed { flex-direction: column; }
  .lm-m365-history-item__details { padding: 15px 14px 17px; }
  .lm-m365-history-item__details .lm-m365-credentials dd { grid-template-columns: minmax(0,1fr) auto; }
  .lm-random-account-list { padding: 22px 16px 24px; }
  .lm-random-account-card__heading { grid-template-columns: 42px minmax(0,1fr); padding: 14px; }
  .lm-random-account-card__heading > span { width: 42px; height: 42px; }
  .lm-random-account-card__heading > b { grid-column: 2; justify-self: start; }
  .lm-random-account-credentials { padding: 14px; }
  .lm-random-account-credentials dd { grid-template-columns: 1fr; }
  .lm-random-account-credentials dd > button,.lm-random-account-credentials dd > span { justify-self: start; }
  .lm-autodesk-account-card,.lm-autodesk-products,.lm-autodesk-confirmation { padding: 22px 16px 24px; }
  .lm-autodesk-choice { grid-template-columns: 1fr; }
  .lm-autodesk-form > div { grid-template-columns: 1fr; gap: 8px; }
  .lm-autodesk-form input { border-right: 1px solid #ccd1d7; }
  .lm-autodesk-products article { grid-template-columns: 42px minmax(0,1fr); }
  .lm-autodesk-products article > div { grid-column: 2; }
  .lm-autodesk-confirmation { grid-template-columns: 50px minmax(0,1fr); }
  .lm-autodesk-confirmation__check { width: 50px; height: 50px; font-size: 24px; }
  .lm-autodesk-confirmation h2 { font-size: 22px; }
  .lm-autodesk-confirmation dl > div { grid-template-columns: 1fr; gap: 4px; }
}
/* Consistent legacy tutorial presentation; source instructions remain unchanged. */
.lm-unified-guide{max-width:1000px;margin:28px auto;line-height:1.8;color:#343b44}
.lm-unified-guide .lm-guide-nav{display:flex;flex-wrap:wrap;gap:12px;padding:20px 0 28px;border-bottom:1px solid #dbe2ec;margin-bottom:28px}
.lm-unified-guide .lm-guide-nav a,.lm-unified-guide a.lm-guide-button,.lm-spss-guide a.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid #ccd9ea;border-radius:8px;background:#4e78b9;color:#fff;font-size:14px;font-weight:700;line-height:1.5;text-decoration:none;overflow-wrap:anywhere;max-width:100%;text-align:center}
.lm-unified-guide .lm-guide-nav a{background:#f1f5fb;color:#345b91;flex:1 1 180px}
.lm-unified-guide a.lm-guide-button{margin:8px 8px 8px 0}
.lm-unified-guide .lm-guide-nav a:hover,.lm-unified-guide a.lm-guide-button:hover,.lm-spss-guide a.button:hover{background:#345b91;color:#fff}
.lm-unified-guide a:focus-visible{outline:3px solid #294c82;outline-offset:3px}
.lm-unified-guide h2{margin-top:38px;padding-top:18px;border-top:1px solid #dbe2ec;font-size:26px;line-height:1.4;scroll-margin-top:30px}
.lm-unified-guide img{max-width:100%;height:auto}.lm-unified-guide figure{margin:24px 0}.lm-unified-guide .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:640px){.lm-unified-guide .lm-guide-nav a{flex:1 1 100%}.lm-unified-guide h2{font-size:23px}.lm-unified-guide a.lm-guide-button{width:100%;margin-right:0}}
/* Shared SPSS tutorial layout. */
.lm-spss-guide .lm-spss-guide-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:24px 0;border-bottom:1px solid #dbe2ec}
.lm-spss-guide .lm-spss-guide-nav a{display:flex;align-items:center;justify-content:center;min-height:50px;padding:12px 10px;border:1px solid #ccd9ea;border-radius:8px;background:#f1f5fb;color:#345b91;font-size:14px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;transition:background .15s,color .15s,border-color .15s}
.lm-spss-guide .lm-spss-guide-nav a:hover{background:#4e78b9;border-color:#4e78b9;color:#fff}
.lm-spss-guide .lm-spss-guide-nav a:focus-visible{outline:3px solid #294c82;outline-offset:3px;background:#4e78b9;color:#fff}
@media(max-width:640px){.lm-spss-guide .lm-spss-guide-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px 0}.lm-spss-guide .lm-spss-guide-nav a:last-child{grid-column:1/-1}}
.lm-spss-guide{max-width:1000px;margin:30px auto;color:#343b44;line-height:1.8}.lm-spss-guide-hero{display:grid;grid-template-columns:1fr 280px;gap:35px;align-items:center;background:#edf3fb;padding:32px;border-top:4px solid #4f79b9}.lm-spss-guide-hero img{width:100%;height:auto}.lm-spss-guide-label{color:#4f79b9;font-size:12px;font-weight:800;letter-spacing:1.5px}.lm-spss-guide-nav{display:flex;flex-wrap:wrap;gap:20px;padding:20px;border-bottom:1px solid #dbe2ec}.lm-spss-guide section{padding:32px 0;border-bottom:1px solid #dbe2ec;scroll-margin-top:30px}.lm-spss-guide h2{font-size:26px;line-height:1.3}.lm-spss-guide aside{padding:18px 22px;background:#f1f5fa;border-left:3px solid #4f79b9}.lm-spss-guide figure{margin:24px 0;padding:20px;background:#f5f7fa}.lm-spss-guide figure img{display:block;max-width:100%;height:auto;margin:auto}.lm-spss-guide figcaption{font-size:13px;color:#727b87;margin-top:12px;text-align:center}.lm-spss-guide details{padding:14px 0}.lm-spss-guide summary{cursor:pointer;font-weight:700}@media(max-width:640px){.lm-spss-guide-hero{grid-template-columns:1fr;padding:20px}.lm-spss-guide-hero img{max-width:220px;margin:auto}.lm-spss-guide h2{font-size:23px}.lm-spss-guide figure{padding:8px}}
.lm-captcha-row{display:flex;align-items:center;gap:14px;margin:10px 0}.woocommerce .lm-captcha-refresh{padding:0!important;border:1px solid #dce3ed!important;background:#f1f5fc!important;border-radius:6px;overflow:hidden;cursor:pointer;flex-shrink:0}.lm-captcha-refresh img{display:block;width:200px;height:auto}.lm-captcha-row input{min-width:0!important;flex:1;width:100%!important}.lm-captcha-refresh:focus-visible{outline:3px solid #a6c3ee;outline-offset:3px}@media(max-width:520px){.lm-captcha-row{flex-wrap:wrap}.lm-captcha-row input{flex-basis:100%}}
.lm-policy{max-width:900px;margin:0 auto;color:#536176;line-height:1.85}.lm-policy-intro{padding:28px;background:#eff4fc;border-left:4px solid #4e78b9;margin-bottom:24px}.lm-policy-intro span{font-size:11px;font-weight:700;letter-spacing:.14em;color:#4e78b9}.lm-policy-intro p{font-size:20px;color:#324965;margin:10px 0}.lm-policy-intro small{font-size:12px}.lm-policy-nav{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.lm-policy-nav a{padding:9px 15px;border:1px solid #dce4f0;border-radius:6px;background:#fff;color:#466b9e;font-size:13px}.lm-policy section{padding:12px 0 24px;border-bottom:1px solid #e7ebf1;scroll-margin-top:30px}.lm-policy h2{font-size:23px;color:#304562;margin:24px 0 12px}.lm-policy li{margin:8px 0}.lm-policy-callout{padding:22px 26px;background:#f7f9fc;border:1px solid #dce4f0;border-radius:8px}.lm-policy-callout p{margin-bottom:0}.lm-policy a.lm-policy-button{display:inline-block;padding:11px 22px;background:#4e78b9;color:#fff;border-radius:6px;margin-top:16px;font-weight:600}.lm-policy-footer{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;padding:22px 0;font-size:13px}.lm-policy a:focus-visible{outline:3px solid #a6c3ee;outline-offset:3px}
@media(max-width:760px){
 .lm-navbar.is-open{max-height:85vh;overflow-y:auto}
 .lm-navbar .lm-shop-menu{display:flex;flex-wrap:wrap}
 .lm-navbar .lm-shop-menu>a{flex:1}
 .lm-shop-toggle{height:44px;width:44px}
 .lm-navbar .lm-shop-panel{position:static;flex-basis:100%;max-height:none;overflow:visible;padding:18px 16px 0;margin:0 0 12px;border-radius:8px;box-shadow:none}
 .lm-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;padding:20px 0}
 .lm-navbar .lm-shop-column a{min-height:40px;padding:8px 0;font-size:13px}
 .lm-shop-panel-heading{padding-bottom:12px}
 .lm-shop-panel-heading>span{font-size:10px}
 .lm-navbar .lm-shop-panel-heading a,.lm-navbar .lm-shop-panel-footer a{padding:0;font-size:12px;min-height:36px}
 .lm-shop-panel-footer{flex-direction:column;gap:0}
}
.lm-brand img.lm-brand-image{width:240px;height:74px;object-fit:cover;object-position:50% 47%;max-width:100%}@media(max-width:650px){.lm-brand img.lm-brand-image{width:156px;height:49px}}
.lm-invoice-top img[src*="keya1-logo"]{width:180px;height:56px;object-fit:cover;object-position:50% 47%}
.lm-brand img.lm-brand-image[src*="keya1-logo"],.lm-invoice .lm-invoice-top img[src*="keya1-logo"]{object-fit:contain;object-position:center}
.lm-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.lm-policy .lm-contact-grid section{border:1px solid #dce4f0;border-radius:10px;padding:24px;background:#fff}.lm-contact-grid a{overflow-wrap:anywhere}.lm-policy .lm-faq{margin:12px 0;border:1px solid #dce4f0;border-radius:8px;background:#fff;padding:18px 20px}.lm-faq summary{font-weight:600;color:#304562;cursor:pointer}.lm-faq p{font-size:14px;margin:16px 0 0}.lm-faq[open] summary{color:#4e78b9}.lm-faq summary:focus-visible{outline:3px solid #a6c3ee;outline-offset:4px}@media(max-width:640px){.lm-contact-grid{grid-template-columns:1fr}}
