/*
Theme Name: Lookie Studio
Author: Lookie Fashion
Description: Editable fashion storefront for Elementor and WooCommerce.
Version: 1.7.1
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: lookie-studio
*/
@font-face { font-family: 'Lookie Open Sans'; src: url('assets/fonts/open-sans-Regular.woff') format('woff'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Lookie Open Sans'; src: url('assets/fonts/open-sans-Semibold.woff') format('woff'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Lookie Open Sans'; src: url('assets/fonts/open-sans-Bold.woff') format('woff'); font-weight: 700; font-display: swap; }
:root { --lk-font: 'Lookie Open Sans', system-ui, sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; color: #111; background: white; font: 16px/1.5 var(--lk-font); }
a { color: inherit; }
button, input, select { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 2px solid var(--lk-blue); outline-offset: 3px; }
.lk-skip { position: fixed; top: -200px; left: 16px; z-index: 999; background: white; padding: 8px; }
.lk-skip:focus { top: 12px; }
.lk-header { position: relative; z-index: 5; width: 100%; padding: 0 3.8%; min-height: clamp(62px,6.1vw,85px); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid #eee; background: #fff; color: #111; }
.lk-header a,.lk-section a,.lk-footer a { text-decoration: none; }
.lk-brand { font-weight: 650; font-size: 30px; letter-spacing: -.065em; justify-self: start; }
.lk-brand img { display: block; width: auto; height: 34px; }
.lk-header nav,.lk-links,.lk-footer nav { display: flex; align-items: center; gap: clamp(14px,3vw,45px); }
.lk-links { list-style: none; padding: 0; margin: 0; }
.lk-header nav { font-size: 14px; font-weight: 550; }
.lk-header nav a:hover,.lk-footer a:hover { text-decoration: underline; }
.lk-tools { justify-self: end; display: flex; }
.lk-header button:not(dialog button),.lk-tools a,.lk-heart,.lk-close { border: 0; color: inherit; background: transparent; }
.lk-tools a,.lk-tools button,.lk-mobile { width: 36px; height: 42px; display: inline-grid; place-items: center; padding: 0; }
.lk-header .lk-mobile { display: none; }
.lk-header dialog { position: fixed; margin: auto; padding: 28px; width: min(420px,92vw); max-height: 75vh; border: 1px solid #ddd; background: white; color: #111; }
.lk-header dialog::backdrop { background: #0006; }
.lk-header dialog h2 { margin: 0 0 18px; font-size: 22px; }
.lk-close { float: right; font-size: 22px; }
.lk-header dialog form { display: flex; }
.lk-header dialog input { min-width: 0; flex: 1; }
.lk-saved-list a { text-decoration: underline; }
.lk-saved-list p { display: flex; justify-content: space-between; gap: 12px; }
.lk-page { width: min(1200px,94%); margin: 32px auto; }
.elementor-page .lk-page, .lk-page:has(.lk-hero) { width: 100%; max-width: none; margin: 0; }
.lk-section { color: #111; margin-inline: auto; font-family: var(--lk-font); }
.lk-section h2 { font: 600 clamp(21px,2.2vw,34px)/1.15 var(--lk-font); letter-spacing: -.04em; color: inherit; text-align: center; margin: 0 0 clamp(20px,2.7vw,42px); }
.lk-tiles { display: grid; }
.lk-tile { min-width: 0; position: relative; display: block; color: inherit; }
.lk-tile[hidden] { display: none !important; }
.lk-tile img { display: block; width: 100%; height: 100%; object-fit: cover; }
.lk-label,.lk-tile small { white-space: pre-line; }
.lk-hero { position: relative; width: min(82%,1420px); }
.lk-hero .lk-tile { aspect-ratio: 958/464; background: #322b27; }
.lk-hero .lk-label { position: absolute; top: 50%; transform: translateY(-50%); left: 3.2%; color: white; font-size: clamp(24px,3.2vw,60px); letter-spacing: -.065em; line-height: .99; }
.lk-categories { width: min(82%,1420px); padding: clamp(22px,2.5vw,44px) 0; }
.lk-categories .lk-tiles { display: flex; justify-content: space-evenly; gap: 1%; }
.lk-categories .lk-tile { flex: 1; text-align: center; display: flex; flex-direction: column-reverse; justify-content: flex-end; }
.lk-categories img { aspect-ratio: 172/143; object-fit: contain; height: auto; }
.lk-categories .lk-label { font-size: clamp(10px,1.15vw,17px); font-weight: 500; margin-bottom: 6px; }
.lk-editorial { width: min(80%,1380px); }
.lk-editorial .lk-tiles { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2px; }
.lk-editorial .lk-tile { aspect-ratio: 314/413; background: #aaa; }
.lk-editorial .lk-label,.lk-editorial small { position: absolute; top: 53%; transform: translateY(-50%); color: white; line-height: .98; }
.lk-editorial .lk-label { left: 4%; font-size: clamp(16px,2.05vw,38px); letter-spacing: -.055em; }
.lk-editorial small { right: 4%; max-width: 35%; text-align: right; font-size: clamp(8px,.9vw,15px); }
.lk-trending { width: min(79%,1360px); padding: 32px 0; }
.lk-tabs { display: flex; gap: 1rem; overflow-x: auto; white-space: nowrap; border-bottom: 1px solid #ddd; margin-bottom: 7px; }
.lk-tabs a { padding: 5px 0; font-size: 11px; text-transform: uppercase; }
.lk-tabs a[aria-current] { border-bottom: 2px solid; }
.lk-products .woocommerce ul.products { display: grid; grid-template-columns: repeat(var(--lk-cols),minmax(0,1fr)); gap: 18px 4px; margin: 0; padding: 0; }
.lk-products .woocommerce ul.products::before,.lk-products .woocommerce ul.products::after { display: none; }
.lk-products .woocommerce ul.products li.product { margin: 0; width: auto; float: none; list-style: none; position: relative; }
.lk-products .woocommerce ul.products li.product a img { width: 100%; aspect-ratio: 3/5; object-fit: cover; margin: 0; }
.lk-products .woocommerce ul.products li.product .woocommerce-loop-product__title { text-align: left; font: 400 13px/1.3 var(--lk-font); letter-spacing: 0; margin: 0; padding: 6px 0 3px; }
.lk-products .woocommerce .product .price { color: #141414; font-size: 12px; font-weight: 600; }
.lk-products .woocommerce a.button { font: 500 11px var(--lk-font); padding: 6px 0; background: transparent; color: #151515; text-decoration: underline; margin: 0; }
.lk-heart { position: absolute; right: 4px; top: 4px; z-index: 2; background: #ffffffd9; border-radius: 50%; width: 32px; height: 32px; display: grid; place-items: center; }
.lk-heart svg { width: 15px; }
.lk-heart[aria-pressed=true] svg { fill: currentColor; }
.lk-footer { border-top: 1px solid #eee; padding: 24px 5%; display: flex; gap: 24px; justify-content: space-between; align-items: center; flex-wrap: wrap; }
body.woocommerce #primary,body.woocommerce main.site-main { width: min(1280px,94%); margin: 30px auto; }
@media(max-width:800px) {
 .lk-header { grid-template-columns: auto 1fr auto; padding: 0 3%; }
 .lk-header .lk-mobile { display: grid; }
 .lk-header nav { display: none; position: absolute; top: 100%; left: 0; right: 0; padding: 18px; background: white; border-bottom: 1px solid #ddd; }
 .lk-header nav.is-open,.lk-header .lk-links { display: flex; flex-direction: column; align-items: start; }
 .lk-tools button,.lk-tools a { width: 34px; }
 .lk-hero,.lk-editorial,.lk-trending,.lk-categories { width: 94%; }
 .lk-products .woocommerce ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media(max-width:560px) {
 .lk-hero { width: 100%; }
 .lk-hero .lk-tile { aspect-ratio: 1.65; }
 .lk-hero .lk-label { font-size: clamp(18px,5vw,29px); }
 .lk-categories .lk-tiles,.lk-editorial .lk-tiles { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
 .lk-categories .lk-tile { flex: 0 0 23%; scroll-snap-align: start; }
 .lk-categories .lk-tiles { justify-content: flex-start; }
 .lk-editorial .lk-tile { flex: 0 0 65%; scroll-snap-align: start; }
 .lk-editorial .lk-label { font-size: 23px; }
 .lk-products .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
/* Collection and product templates use the native WooCommerce loop and forms. */
body.woocommerce:has(.lk-catalog-toolbar) #primary,body.woocommerce:has(.lk-catalog-toolbar) main.site-main { width:min(1500px,94%); margin:25px auto 50px; }
body.woocommerce:has(.lk-catalog-toolbar) #primary main.site-main { width:100%; }
body:has(.lk-catalog-toolbar) .woocommerce-breadcrumb { display:none; }
.lk-catalog-title,.lk-catalog-actions,.lk-facetbar { display:flex; align-items:center; }
.lk-catalog-title { justify-content:space-between; padding:8px 10px; border-bottom:1px solid #ddd; }
.lk-catalog-title h1 { margin:0; text-transform:uppercase; font-size:clamp(24px,2vw,38px); letter-spacing:-.045em; }
.lk-catalog-actions { gap:15px; position:relative; }
.lk-catalog-actions button,.lk-catalog-actions summary,.lk-facetbar button,.lk-facetbar a { border:0; background:white; color:#151515; text-transform:uppercase; cursor:pointer; font:500 12px var(--lk-font); text-decoration:none; padding:8px; }
.lk-sort { position:absolute; right:0; top:100%; z-index:4; padding:12px; background:white; border:1px solid #ddd; }
.lk-sort select { padding:8px; }
.lk-sort form.woocommerce-ordering { margin:0; float:none; }
.lk-facetbar { gap:10px; overflow-x:auto; padding:4px 0; border-bottom:1px solid #ddd; margin-bottom:8px; }
.lk-facetbar [aria-current] { border-bottom:2px solid; }
.lk-filters { width:min(420px,94vw); max-height:90vh; padding:24px; border:1px solid #ddd; }
.lk-filters::backdrop { background:#0005; }
.lk-filters label { display:grid; grid-template-columns:1fr 2fr; align-items:center; margin-bottom:12px; }
.lk-filters select { padding:8px; }
body.woocommerce:has(.lk-catalog-toolbar) ul.products { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:30px 4px; list-style:none; padding:0; margin:0; }
body.woocommerce:has(.lk-catalog-toolbar) ul.products::before,body.woocommerce:has(.lk-catalog-toolbar) ul.products::after { display:none; }
body.woocommerce:has(.lk-catalog-toolbar) ul.products li.product { position:relative; float:none; margin:0; width:auto; min-width:0; }
body.woocommerce:has(.lk-catalog-toolbar) ul.products li.product a img { width:100%; aspect-ratio: 296/480; object-fit:cover; background:#f2f2f2; margin:0; }
body.woocommerce:has(.lk-catalog-toolbar) ul.products li.product .woocommerce-loop-product__title { font:400 13px/1.35 var(--lk-font); padding:5px 7px; margin:0; }
body.woocommerce:has(.lk-catalog-toolbar) ul.products li.product .price { color:#111; font-size:13px; padding:0 7px; font-weight:600; }
.lk-card-action { position:absolute; right:0; bottom:0; }
.lk-card-action a.button { font-size:0; margin:0; background:white; padding:4px 10px; }
.lk-card-action a.button::before { content:'+'; font-size:20px; font-weight:400; }
body.single-product main.site-main, body.single-product #primary { width:min(1300px,94%); margin:30px auto; }
body.single-product .product .summary .product_title { letter-spacing:-.045em; line-height:1.12; }
body.single-product .product .summary .price { color:#111; }
body.single-product .product button.single_add_to_cart_button { background:#111; border-radius:0; padding:15px 24px; }
@media(max-width:950px) { body.woocommerce:has(.lk-catalog-toolbar) ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { body.woocommerce:has(.lk-catalog-toolbar) ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); } .lk-facetbar { gap:3px; } .lk-catalog-actions { gap:0; } }
.lk-swatches { display:flex; gap:3px; align-items:center; margin:4px 8px; min-height:8px; }
.lk-swatches i { width:8px; height:8px; border:1px solid #0001; }
.lk-swatches small { font-size:9px; }
/* Product purchase panel */
body.single-product #primary { width:min(1392px,92%); margin:32px auto 64px; }
body.single-product #primary main.site-main { width:100%; margin:0; }
.single-product div.product .summary { padding:clamp(6px,2.2vw,36px); }
.single-product div.product .summary h1.product_title { font:600 clamp(30px,3vw,50px)/1.08 var(--lk-font); letter-spacing:-.055em; margin:0 0 .35em; }
.single-product div.product .summary p.price { font-size:1.35rem; font-weight:600; }
.single-product .woocommerce-product-details__short-description { color:#454545; line-height:1.6; margin:18px 0 26px; }
.single-product div.product .woocommerce-product-gallery img { background:#f4f3f1; }
.lk-fixed-colors { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:14px 0 8px; }
.lk-fixed-colors strong,.single-product div.product form.cart table.variations label { font:600 14px var(--lk-font); }
.lk-guide { margin:8px 0 12px; }
.lk-guide summary { cursor:pointer; list-style:none; text-align:right; text-transform:uppercase; font-size:12px; text-decoration:underline; text-underline-offset:3px; }
.lk-guide summary::-webkit-details-marker { display:none; }
.lk-guide div { margin:12px 0; padding:14px; background:#f7f6f3; font-size:.88rem; }
.lk-guide table { border-collapse:collapse; width:100%; }
.lk-guide th,.lk-guide td { padding:8px; text-align:left; border-bottom:1px solid #ddd; }
.single-product div.product form.cart .variations { display:block; margin:0 0 20px; }
.single-product div.product form.cart .variations tr,.single-product div.product form.cart .variations tbody,.single-product div.product form.cart .variations th,.single-product div.product form.cart .variations td { display:block; text-align:left; padding:0; background:transparent; }
.single-product div.product form.cart .variations th { padding:8px 0; }
.lk-choices { display:flex; flex-wrap:wrap; }
.lk-chip { border:1px solid #c7c5c1; background:#fff; color:#181818; display:inline-flex; align-items:center; justify-content:center; gap:7px; min-width:45px; min-height:42px; font:500 14px var(--lk-font); padding:8px 15px; border-radius:0; }
.lk-choices .lk-chip+.lk-chip { margin-left:-1px; }
.lk-chip[aria-pressed=true] { background:#141414; color:white; border-color:#141414; z-index:1; }
.lk-chip:disabled { color:#777; background:#f4f3f1; text-decoration:line-through; cursor:not-allowed; }
.lk-painted::before { content:''; border:1px solid #9998; width:15px; height:15px; border-radius:50%; background:var(--lk-swatch); }
.variations select[hidden] { display:none !important; }
.single-product div.product .summary form.cart:not(.grouped_form) > .quantity,.single-product div.product .summary .woocommerce-variation-add-to-cart > .quantity { display:none; }
.single-product div.product .summary form.cart .single_add_to_cart_button,.single-product div.product .summary form.cart .lk-buy { float:none; vertical-align:top; width:calc(50% - 5px); margin:5px 0; padding:15px 8px; min-height:48px; font:600 14px var(--lk-font); border:1px solid #161616; border-radius:0; background:#fff; color:#161616; }
.single-product div.product .summary form.cart .lk-buy { margin-left:5px; color:white; background:#161616; }
.single-product .lk-buy:disabled { opacity:.45; cursor:not-allowed; }
.single-product .product_meta { border-top:1px solid #eee; margin-top:24px; padding-top:16px; font-size:12px; color:#666; }
.single-product .product_meta span { margin-right:10px; }
.lk-footer { background:#f6f5f2; display:grid; grid-template-columns:1.3fr 1fr 1.3fr 1fr; align-items:start; gap:24px; padding:45px 6%; font-size:14px; }
.lk-footer>strong { letter-spacing:-.055em; font-size:28px; }
.lk-footer nav,.lk-footer .lk-links,.lk-footcol { display:flex; flex-direction:column; gap:8px; align-items:flex-start; }
.lk-footcol strong { margin-bottom:6px; }
.lk-policy-page .lk-page { max-width:760px; padding:24px 12px 50px; line-height:1.7; }
.lk-policy-page .lk-page h1,.woocommerce-account h1,.woocommerce-checkout h1 { letter-spacing:-.055em; }
.lk-policy-page h2 { margin:26px 0 8px; font-size:1.25rem; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style:none; padding:0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; padding:10px 14px; text-decoration:none; border-bottom:1px solid #ddd; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background:#f4f3ef; font-weight:600; }
.woocommerce-account .woocommerce form.login,.woocommerce-account .woocommerce form.register { border:1px solid #e5e3de; border-radius:0; padding:24px; }
.woocommerce-account .input-text,.woocommerce-checkout .input-text { padding:10px; border:1px solid #c8c8c8; border-radius:2px; }
@media(max-width:700px) { .lk-footer { grid-template-columns:1fr 1fr; padding:28px 5%; gap:22px 12px; } .single-product div.product .summary { padding:12px 0; } }

.lk-categories .lk-tiles { justify-content:flex-start; overflow-x:auto; scrollbar-width:none; overscroll-behavior-x:contain; scroll-snap-type:none; user-select:none; }
.lk-categories .lk-tiles::-webkit-scrollbar { display:none; }
.lk-categories .lk-tile { flex:0 0 19.2%; }
.lk-categories .lk-tiles img { -webkit-user-drag:none; }
.lk-categories .lk-tiles.is-dragging,.lk-categories .lk-tiles.is-dragging * { cursor:grabbing; }
@media(max-width:560px) { .lk-categories .lk-tile { flex-basis:max(23%,90px); } }
.single-product div.product .summary form.cart:not(.grouped_form) .quantity,
.single-product div.product .summary form.cart:not(.grouped_form) input.qty { display:none !important; }
.single-product .summary form.cart .lk-purchase-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; align-items:stretch; clear:both; }
.single-product div.product .summary form.cart .lk-purchase-row > button { margin:0; width:100%; }

.lk-catalog-title { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:8px; margin-bottom:8px; }
.lk-catalog-title h1 { grid-column:2; text-align:center; text-transform:none; }
.lk-catalog-actions { grid-column:3; justify-self:end; }
.lk-price-range { border:0; padding:0; margin:8px 0 18px; }
.lk-price-range legend { font-weight:600; margin-bottom:8px; }
.lk-price-range input { min-width:0; width:100%; padding:8px; }
@media(max-width:700px) {
 .lk-catalog-title { grid-template-columns:1fr; }
 .lk-catalog-title h1,.lk-catalog-actions { grid-column:1; }
 .lk-catalog-actions { justify-self:end; }
}

:root { --lk-blue:#0b59a6; --lk-orange:#ec7823; --wc-primary:var(--lk-blue); --wc-primary-text:#fff; --wc-highlight:var(--lk-blue); }
.lk-hero .lk-tiles { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
.lk-hero .lk-tiles::-webkit-scrollbar { display:none; }
.lk-hero .lk-tile { flex:0 0 100%; scroll-snap-align:start; user-select:none; }
.lk-hero .lk-tiles:has(.lk-tile:nth-child(2)) { cursor:grab; }
.lk-hero .lk-tiles.is-dragging { scroll-snap-type:none; }
.lk-hero .lk-tiles.is-dragging * { cursor:grabbing; }
body .woocommerce span.onsale,body.woocommerce span.onsale,body .woocommerce ul.products li.product .onsale,body.woocommerce ul.products li.product .onsale { position:absolute; inset:9px auto auto 9px; margin:0; min-width:0; min-height:0; padding:4px 8px; background:white; color:var(--lk-blue); border-left:3px solid var(--lk-orange); border-radius:0; font:700 10px/1.25 var(--lk-font); letter-spacing:.07em; text-transform:uppercase; z-index:2; pointer-events:none; }
.lk-header nav a:hover,.lk-footer a:hover,.lk-tabs a[aria-current],.woocommerce div.product .stock { color:var(--lk-blue); }
.lk-tabs a[aria-current] { border-bottom-color:var(--lk-orange); }
.lk-chip[aria-pressed=true],.single-product div.product .summary form.cart .lk-buy,.woocommerce a.button.alt,.woocommerce button.button.alt { background:var(--lk-blue); border-color:var(--lk-blue); color:white; }
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info { border-top-color:var(--lk-blue); }
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before,.woocommerce .star-rating { color:var(--lk-blue); }

/* Storefront branding applies to both Elementor and WordPress logo images. */
.lk-header .lk-brand { display: block; min-width: 0; max-width: 100%; }
.lk-header .lk-brand img {
  display: block;
  width: 142px;
  max-width: 100%;
  height: auto;
  max-height: 38px;
  object-fit: contain;
  object-position: left center;
}
.lk-section h2, .lk-footer strong { font-weight: 700; }
.lk-header nav, .lk-tabs a { font-weight: 600; }
.lk-section.lk-categories .lk-label {
  font: 700 clamp(15px, 1.12vw, 18px)/1.35 var(--lk-font);
  letter-spacing: -.02em;
  margin-bottom: 10px;
  overflow-wrap: anywhere;
}
.lk-products .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.woocommerce:has(.lk-catalog-toolbar) ul.products li.product .woocommerce-loop-product__title {
  font-weight: 600;
  font-size: 14px;
  overflow-wrap: anywhere;
}
@media (max-width: 800px) {
  .lk-header { grid-template-columns: auto minmax(0,1fr) auto; column-gap: 4px; }
  .lk-header .lk-brand img { width: 108px; max-height: 30px; }
  .lk-tools button,.lk-tools a,.lk-header .lk-mobile { width: clamp(34px,9vw,44px); height: 44px; }
  .lk-header nav.is-open { max-height: 70vh; overflow: auto; }
  .lk-header nav a,.lk-tabs a { display: inline-flex; align-items: center; min-height: 44px; }
  .lk-filters :is(input,select), .lk-header dialog input { max-width: 100%; font-size: 16px; }
  .lk-guide div, .woocommerce-account .woocommerce-MyAccount-content { overflow-x: auto; }
}
@media (max-width: 600px) {
  .lk-categories .lk-tile { flex: 0 0 clamp(120px,34vw,168px); }
  .lk-categories .lk-tiles { gap: 10px; }
  .lk-hero .lk-tile { aspect-ratio: 958/464; }
  .lk-footer { grid-template-columns: repeat(2,minmax(0,1fr)); overflow-wrap: anywhere; }
  .lk-footer a { display: inline-flex; align-items: center; min-height: 36px; }
  .woocommerce div.product div.summary,.woocommerce div.product div.images { width: 100%; float: none; }
  .woocommerce form .form-row-first,.woocommerce form .form-row-last { width: 100%; float: none; }
  :is(.woocommerce,.wc-block-cart,.wc-block-checkout) :is(input,textarea,select) { max-width: 100%; font-size: 16px; }
  .woocommerce-cart .woocommerce-cart-form .coupon { display: flex; flex-wrap: wrap; gap: 8px; }
  .woocommerce-cart .woocommerce-cart-form .coupon > * { flex: 1 1 8rem; min-width: 0; }
  .lk-page :is(.wp-block-table,.woocommerce-order-details) { overflow-x: auto; }
  .lk-page,.lk-footer,.single-product .summary { overflow-wrap: break-word; }
}

@media(min-width:951px) {
  .lk-trending {width:min(94%,1560px);}
  body.woocommerce:has(.lk-catalog-toolbar) ul.products {grid-template-columns:repeat(4,minmax(0,1fr));}
}

/* Custom Print service */
.lk-print-banner, .lk-print-studio {
  display: grid;
  align-items: center;
  box-sizing: border-box;
  gap: clamp(18px, 3vw, 52px);
  padding: clamp(24px, 4vw, 64px);
  background: #f6f3eb;
  color: #142c40;
}
.lk-print-banner { width: min(94%,1560px); margin: 40px auto; grid-template-columns: 1fr .9fr 1.35fr; }
.lk-print-studio { margin: 24px auto 50px; grid-template-columns: 1.15fr 1fr; }
.lk-print-banner h2, .lk-print-studio h2 {
  margin: 0; font-size: clamp(34px, 4vw, 68px); line-height: 1.04;
  color: #105ba1; letter-spacing: -.05em; text-wrap: balance;
}
.lk-print-studio img, .lk-print-banner img { display: block; width: 100%; height: auto; max-height: 440px; object-fit: contain; }
.lk-print-intro p, .lk-print-details p { font-size: clamp(16px, 1.2vw, 19px); line-height: 1.55; max-width: 48ch; margin: 14px 0; }
.lk-print-details strong, .lk-print-intro strong { font-size: clamp(18px,1.5vw,24px); }
.lk-print-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }
.lk-print-actions a {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px;
  box-sizing: border-box; padding: 10px 15px; border: 1px solid #105ba1; background: #105ba1;
  color: white; font-weight: 700; text-decoration: none;
}
.lk-print-actions .lk-print-whatsapp { background: transparent; color: #105ba1; }
.lk-print-actions a:hover, .lk-print-actions a:focus-visible { background: #093e70; color: white; }
.lk-print-more { color: #105ba1; text-underline-offset: 3px; }
@media(max-width:750px) {
  .lk-print-banner { grid-template-columns: minmax(0,1fr) minmax(0,.7fr); gap: 16px; }
  .lk-print-details { grid-column: 1 / -1; }
  .lk-print-studio { grid-template-columns: minmax(0,1fr); }
  .lk-print-studio img { width: min(100%,320px); margin: auto; }
}

/* Customer-facing shopping tools */
:root {
  --lk-ink: #182b3b;
  --lk-brand: #105ba1;
  --lk-line: #dce2e6;
  --lk-surface: #f6f8fa;
}
.lk-header dialog, dialog.lk-filters {
  box-sizing: border-box; width: min(480px,calc(100% - 28px)); max-height: 85vh;
  padding: clamp(20px,4vw,32px); border: 1px solid var(--lk-line);
  border-radius: 12px; color: var(--lk-ink); box-shadow: 0 18px 68px #0b263332;
}
.lk-header dialog::backdrop, dialog.lk-filters::backdrop { background: rgb(18 31 44 / 48%); }
.lk-header dialog h2, .lk-filters h2 { font-size: 26px; letter-spacing: -.045em; margin: 4px 0 22px; }
dialog .lk-close { width: 44px; height: 44px; border-radius: 50%; margin: -5px -6px 0 0; cursor: pointer; }
dialog .lk-close:hover { background: var(--lk-surface); }
.lk-saved-list { border-block: 1px solid var(--lk-line); padding-block: 15px; line-height: 1.6; }
.lk-saved-item { display: flex; gap: 12px; align-items: center; justify-content: space-between; }
.lk-saved-item + .lk-saved-item { margin-top: 14px; border-top: 1px solid var(--lk-line); padding-top: 14px; }
.lk-saved-item a { display: flex; align-items: center; gap: 14px; min-width: 0; overflow-wrap: anywhere; font-weight: 650; text-decoration: none; color: var(--lk-ink); }
.lk-saved-cover { flex: 0 0 58px; position: relative; display: grid; place-items: center; height: 70px; background: var(--lk-surface); color: var(--lk-brand); border-radius: 5px; overflow: hidden; font-size: 22px; }
.lk-saved-cover img { position: absolute; inset: 0; height: 100%; width: 100%; object-fit: cover; }
.lk-saved-item button, .lk-header .lk-browse { min-height: 44px; font: inherit; cursor: pointer; }
.lk-saved-item button { border: 0; background: transparent; color: #485865; text-decoration: underline; text-underline-offset: 4px; font-size: 13px; }
.lk-header .lk-browse { display: flex; justify-content: space-between; align-items: center; margin-top: 10px; color: var(--lk-brand); font-weight: 650; }
.lk-header dialog form { gap: 8px; }
.lk-header dialog input[type=search], .lk-filters :is(input:not([type=hidden]),select) { min-width: 0; border: 1px solid #abb9c3; padding: 10px; border-radius: 5px; font: inherit; }
.lk-header dialog form button, .lk-filters .button { background: var(--lk-brand); color: white; font: inherit; font-weight: 650; border: 0; padding: 10px 18px; min-height: 44px; border-radius: 5px; cursor: pointer; }
.lk-guide div, .lk-filters fieldset { background: var(--lk-surface); border: 1px solid var(--lk-line); border-radius: 8px; padding: 16px; }
.lk-filters fieldset { margin: 0 0 16px; min-width: 0; }
.lk-guide summary { font-weight: 650; color: var(--lk-brand); }

/* WooCommerce account, bag and checkout */
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout) .lk-page { color: var(--lk-ink); margin-block: clamp(24px,4vw,60px); }
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout,.lk-policy-page) .lk-page > h1 { font-size: clamp(30px,3.5vw,49px); line-height: 1.1; margin: 0 0 28px; letter-spacing: -.055em; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 6px; border-radius: 9px; background: var(--lk-surface); }
.woocommerce-account .woocommerce-MyAccount-navigation a { padding: 13px 16px; border: 0; border-radius: 5px; font-weight: 550; color: #344856; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: white; color: var(--lk-brand); box-shadow: inset 3px 0 var(--lk-brand),0 1px 4px #142c4012; }
.woocommerce-account .woocommerce-MyAccount-navigation a:hover { color: var(--lk-brand); }
.woocommerce-account .woocommerce-MyAccount-content, .woocommerce-account .woocommerce form:is(.login,.register,.lost_reset_password) { box-sizing: border-box; border: 1px solid var(--lk-line); border-radius: 10px; padding: clamp(18px,3vw,36px); background: white; }
.woocommerce-account .woocommerce form.lost_reset_password { max-width: 640px; }
.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-account .woocommerce-MyAccount-content fieldset { margin: 22px 0; min-width: 0; border: 0; border-top: 1px solid var(--lk-line); padding: 12px 0 0; }
.woocommerce-account .woocommerce-MyAccount-content legend { padding: 0 12px 0 0; font-weight: 700; }
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout) .woocommerce .form-row label { font-weight: 600; font-size: 14px; margin-bottom: 4px; }
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout) .woocommerce :is(input.input-text,textarea.input-text,.form-row select) { border: 1px solid #aebbc5; border-radius: 5px; min-height: 44px; padding: 9px 12px; color: var(--lk-ink); background: white; font: inherit; }
.woocommerce-account .woocommerce .password-input input.input-text { padding-inline-end: 44px; }
.woocommerce-account .woocommerce form em,.lk-account-note { font-size: 14px; line-height: 1.6; color: #51616c; }
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout) .woocommerce :is(button.button,a.button,input.button), :is(.wc-block-cart__submit,.wc-block-checkout__actions) .wc-block-components-button { background: var(--lk-brand); color: white; border-radius: 5px; padding: 12px 18px; min-height: 44px; font-weight: 650; }
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout) .woocommerce table.shop_table { border-color: var(--lk-line); border-radius: 8px; }
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout) .woocommerce table.shop_table th { background: var(--lk-surface); }
:is(.woocommerce-account,.woocommerce-cart,.woocommerce-checkout) .woocommerce :is(.woocommerce-info,.woocommerce-message) { background: var(--lk-surface); border-top-color: var(--lk-brand); color: var(--lk-ink); }
:is(.lk-header dialog,.lk-filters,.woocommerce-account .lk-page,.woocommerce-cart .lk-page,.woocommerce-checkout .lk-page) :focus-visible { outline: 2px solid var(--lk-brand); outline-offset: 2px; }
@media(min-width:769px) {
  .woocommerce-account .woocommerce-MyAccount-navigation { width: 23%; }
  .woocommerce-account .woocommerce-MyAccount-content { width: 74%; }
}
@media(max-width:768px) {
  .woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { width: 100%; float: none; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; overflow-x: auto; gap: 4px; margin-bottom: 16px; }
  .woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
  .woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { box-shadow: inset 0 -2px var(--lk-brand); }
  .woocommerce-account .woocommerce-EditAccountForm :is(.form-row-first,.form-row-last) { width: 100%; float: none; }
}

.lk-trending-more { display: flex; justify-content: center; margin-top: 28px; }
.lk-trending-more a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 28px; border: 1px solid currentColor; color: #105da4; font: inherit; font-weight: 600; text-decoration: none; }
.lk-trending-more a:hover { background: #105da4; color: white; }
.lk-trending-more a:focus-visible { outline: 2px solid #105da4; outline-offset: 4px; }
