/*
 * Artistry Studio 1.6.9 · sitewide fixes (small, loaded on every page).
 * 1) Side cart drawer: the main bar (.ab-mainbar, Elementor 29f86490) used backdrop-filter, which makes it the
 *    containing block for position:fixed children, so the Elementor side cart opened inside the 80px header strip.
 *    The blur moves to a ::before layer; the drawer is now a real full-height panel, hidden until opened.
 * 1.6.9.1) Inline SVG guard + byline on two lines (see end of file).
 * 2) Artwork card byline (loop item 149, container 6f40e1b9): "Name · Medium" on one line, ellipsis if long.
 */

/* ---- 1. header blur without trapping fixed children ---- */
.ab-mainbar{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;isolation:isolate}
.ab-mainbar::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;-webkit-backdrop-filter:saturate(1.2) blur(8px);backdrop-filter:saturate(1.2) blur(8px)}

/* while the drawer is open, lift the bar above the utility strip so the overlay covers the whole page */
.ab-mainbar:has(.elementor-menu-cart--shown){z-index:100001!important}

/* ---- side cart drawer ---- */
.ab-cart .elementor-menu-cart__container{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;z-index:100000!important;background:rgba(23,20,15,.42)!important;transform:none!important;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility 0s linear .3s}
.ab-cart.elementor-menu-cart--shown .elementor-menu-cart__container{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .25s ease}
.ab-cart .elementor-menu-cart__main{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;height:100%!important;width:min(420px,100vw)!important;max-width:100vw;margin:0!important;padding:28px 28px 24px!important;background:#FAF7F1!important;color:#17140F;border-left:1px solid #E4DBCC!important;box-shadow:-24px 0 60px rgba(23,20,15,.18)!important;display:flex!important;flex-direction:column;overflow-y:auto;transform:translateX(100%)!important;opacity:1!important;visibility:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),visibility 0s linear .35s!important;font-family:Inter,system-ui,sans-serif}
.ab-cart.elementor-menu-cart--shown .elementor-menu-cart__main{transform:none!important;visibility:visible;transition:transform .35s cubic-bezier(.2,.7,.2,1)!important}
body.admin-bar .ab-cart .elementor-menu-cart__main{top:32px!important;height:calc(100% - 32px)!important}
@media (max-width:782px){body.admin-bar .ab-cart .elementor-menu-cart__main{top:46px!important;height:calc(100% - 46px)!important}}
.ab-cart .elementor-menu-cart__main::before{content:"Your cart";display:block;font:500 32px/1.1 "Cormorant Garamond",Georgia,serif;letter-spacing:-.01em;padding:0 40px 18px 0;border-bottom:1px solid #17140F;margin-bottom:6px}
.ab-cart .elementor-menu-cart__close-button{position:absolute!important;top:26px;right:22px;width:36px!important;height:36px!important;margin:0!important;border:1px solid #E4DBCC;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.ab-cart .elementor-menu-cart__close-button::before,.ab-cart .elementor-menu-cart__close-button::after{width:14px!important;height:1.5px!important;background:#17140F!important;left:50%!important;top:50%!important;margin:-.75px 0 0 -7px!important}
.ab-cart .elementor-menu-cart__close-button:hover{border-color:#9B2C1F}
.ab-cart .elementor-menu-cart__products{flex:1 1 auto;overflow-y:auto;margin:0;padding:0}
.ab-cart .elementor-menu-cart__product{display:grid!important;grid-template-columns:72px minmax(0,1fr) 28px;grid-template-areas:"img name rm" "img price rm";gap:4px 14px;padding:18px 0!important;border-bottom:1px solid #E4DBCC!important;align-items:start}
.ab-cart .elementor-menu-cart__product-image{grid-area:img;width:72px!important}
.ab-cart .elementor-menu-cart__product-image img{width:72px;height:72px;object-fit:cover;display:block;box-shadow:0 0 0 1px #E4DBCC}
.ab-cart .elementor-menu-cart__product-name{grid-area:name;padding:0!important;font:500 19px/1.2 "Cormorant Garamond",Georgia,serif}
.ab-cart .elementor-menu-cart__product-name a{color:#17140F!important;text-decoration:none}
.ab-cart .elementor-menu-cart__product-name dl.variation{margin:4px 0 0;font:400 12.5px/1.5 Inter,sans-serif;color:#5B544A}
.ab-cart .elementor-menu-cart__product-name dl.variation dt,.ab-cart .elementor-menu-cart__product-name dl.variation dd{display:inline;margin:0}
.ab-cart .elementor-menu-cart__product-price{grid-area:price;padding:0!important;font:500 14px/1.4 Inter,sans-serif;color:#5B544A}
.ab-cart .elementor-menu-cart__product-remove{grid-area:rm;position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;width:28px!important;height:28px!important;border:1px solid #E4DBCC!important;border-radius:50%;margin:0!important}
.ab-cart .elementor-menu-cart__product-remove::before,.ab-cart .elementor-menu-cart__product-remove::after{width:12px!important;height:1.5px!important;left:50%!important;top:50%!important;margin:-.75px 0 0 -6px!important;background:#17140F!important}
.ab-cart .elementor-menu-cart__product-remove>a{position:absolute!important;inset:0!important;opacity:0}
.ab-cart .elementor-menu-cart__product-remove:hover{border-color:#9B2C1F!important}
.ab-cart .elementor-menu-cart__subtotal{display:flex!important;justify-content:space-between;align-items:baseline;padding:18px 0!important;border:0!important;border-top:1px solid #17140F!important;margin-top:auto!important;font:500 14px/1.4 Inter,sans-serif!important;text-transform:none!important;letter-spacing:0!important}
.ab-cart .elementor-menu-cart__subtotal strong{font-weight:500}
.ab-cart .elementor-menu-cart__subtotal .amount{font:500 24px/1 "Cormorant Garamond",Georgia,serif}
.ab-cart .elementor-menu-cart__footer-buttons{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:0!important}
.ab-cart .elementor-menu-cart__footer-buttons .elementor-button{display:flex!important;align-items:center;justify-content:center;min-height:50px;border-radius:0!important;font:600 12.5px/1 Inter,sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important;margin:0!important}
.ab-cart .elementor-menu-cart__footer-buttons .elementor-button-text{display:inline!important;flex:0 0 auto!important;width:auto!important;font-size:12.5px!important;color:inherit!important}
.ab-cart .elementor-menu-cart__footer-buttons .elementor-button--checkout{order:-1;background:#9B2C1F!important;color:#fff!important;border:1px solid #9B2C1F!important}
.ab-cart .elementor-menu-cart__footer-buttons .elementor-button--checkout:hover{background:#7C2318!important}
.ab-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart{background:transparent!important;color:#17140F!important;border:1px solid #17140F!important}
.ab-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover{background:#17140F!important;color:#FAF7F1!important}
.ab-cart .woocommerce-mini-cart__empty-message{margin:32px 0 0;font:500 24px/1.25 "Cormorant Garamond",Georgia,serif;color:#5B544A;text-align:left}
.ab-cart .woocommerce-mini-cart__empty-message::after{content:"Browse originals and prints from Canadian artists.";display:block;margin-top:8px;font:400 14px/1.5 Inter,sans-serif}
@media (prefers-reduced-motion:reduce){.ab-cart .elementor-menu-cart__main,.ab-cart .elementor-menu-cart__container{transition:none!important}}

/* ---- 2. artwork card byline: "Name · Medium" ----
   The dot from the medium heading is hidden and redrawn after the name with a no-break space, so it can never
   start a line or sit on a line of its own; long media wrap word by word after it. */
.e-loop-item .elementor-element-6f40e1b9{display:block!important;min-width:0;max-width:100%}
.e-loop-item .elementor-element-6f40e1b9>.ab-card-by{display:inline!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
.e-loop-item .elementor-element-6f40e1b9>.ab-card-by .elementor-heading-title{display:inline!important;white-space:normal!important}
.e-loop-item .elementor-element-6f40e1b9>.elementor-element-51ef819c .elementor-heading-title::after{content:"\00a0\00b7"}
.e-loop-item .elementor-element-6f40e1b9>.elementor-element-5efd33eb .elementor-heading-title{font-size:0!important}
.e-loop-item .elementor-element-6f40e1b9>.elementor-element-5efd33eb .elementor-heading-title>span{font-size:15px}
.elementor-element-55aa0ab0 .e-loop-item .elementor-element-6f40e1b9>.elementor-element-5efd33eb .elementor-heading-title>span{font-size:13px}

/* ---- 1.6.9b drawer items: framed thumb with clear gap, serif title/price, text Remove ---- */
.ab-cart .elementor-menu-cart__product{grid-template-columns:88px minmax(0,1fr) auto!important;grid-template-areas:"img name rm" "img price price"!important;gap:6px 20px!important;padding:22px 0!important}
.ab-cart .elementor-menu-cart__product-image{width:88px!important;background:#fff;padding:6px;border:1px solid #E4DBCC}
.ab-cart .elementor-menu-cart__product-image img{width:74px!important;height:74px!important;box-shadow:none!important;background:#F1EBE0}
.ab-cart .elementor-menu-cart__product-name{font-size:21px!important}
.ab-cart .elementor-menu-cart__product-name dl.variation{font:600 10.5px/1.6 Inter,sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#7A5C24!important}
.ab-cart .elementor-menu-cart__product-price{font:500 18px/1.3 "Cormorant Garamond",Georgia,serif!important;color:#17140F!important}
.ab-cart .elementor-menu-cart__product-remove{width:auto!important;height:auto!important;border:0!important;border-radius:0!important}
.ab-cart .elementor-menu-cart__product-remove::before,.ab-cart .elementor-menu-cart__product-remove::after{display:none!important}
.ab-cart .elementor-menu-cart__product-remove>a{position:static!important;opacity:1!important;display:inline!important;font-size:0!important;text-decoration:none!important}
.ab-cart .elementor-menu-cart__product-remove>a::after{content:"Remove";font:500 10.5px/1 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5B544A;text-decoration:underline;text-decoration-color:#E4DBCC;text-underline-offset:4px}
.ab-cart .elementor-menu-cart__product-remove>a:hover::after{color:#9B2C1F}
.ab-cart .elementor-menu-cart__product-remove>a+a{display:none!important}

/* ---- 1.6.9.1 inline SVG guard: no icon can ever render unsized (zero specificity, so real rules still win) ---- */
:where(.elementor-widget-html,.elementor-shortcode,.ab-trust,.ab-shop-trust,.ab-co-trust) svg:where(:not([width]):not(.ab-smap__svg)){width:30px;height:30px;max-width:100%;flex:none}

/* ---- 1.6.9.1 artwork card byline: name, then the medium on its own line, no separator dot ---- */
.e-loop-item .elementor-element-6f40e1b9>.ab-card-by{display:block!important;width:100%!important}
.e-loop-item .elementor-element-6f40e1b9>.ab-card-by .elementor-heading-title{display:block!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap!important}
.e-loop-item .elementor-element-6f40e1b9>.elementor-element-51ef819c .elementor-heading-title::after{content:none!important}
.e-loop-item .elementor-element-6f40e1b9>.elementor-element-5efd33eb{margin-top:2px!important}
.e-loop-item .elementor-element-6f40e1b9>.elementor-element-5efd33eb .elementor-heading-title>span{font:600 10.5px/1.5 Inter,system-ui,sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#7A5C24}
.elementor-element-55aa0ab0 .e-loop-item .elementor-element-6f40e1b9>.elementor-element-5efd33eb .elementor-heading-title>span{font-size:10px!important}

/* 1.9.5: home Collection byline: name / city / medium on separate lines */
.ab-rot-info i,.ab-rot-info .ab-rot-loc{display:block}

/* 1.9.6/1.9.7: home rotator card: prices and signature vertically centred */
.ab-rot .ab-rot-label .ab-rot-prices{align-self:center!important;margin-top:0!important;padding-top:0!important}
.ab-rot .ab-rot-label .ab-rot-info>p:first-child,.ab-rot .ab-rot-label .ab-rot-prices>p:first-child{margin-top:0!important;padding-top:0!important}
.ab-rot .ab-rot-label .ab-rot-sig{align-self:center!important}

.elementor-pagination, .woocommerce-pagination, .dokan-pagination-container { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; margin: 40px 0; padding: 0; font: 600 12px/1 Inter, system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #17140F; }
.woocommerce-pagination ul.page-numbers, .dokan-pagination-container ul.dokan-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; border: 0; list-style: none; }
.woocommerce-pagination ul.page-numbers li, .dokan-pagination-container ul.dokan-pagination li { margin: 0; border: 0; float: none; }
.elementor-pagination .page-numbers, .woocommerce-pagination .page-numbers li > .page-numbers, .dokan-pagination-container .dokan-pagination li > a, .dokan-pagination-container .dokan-pagination li > span { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; margin: 0; padding: 0 12px; border: 1px solid #17140F; background: transparent; color: #17140F; font: inherit; letter-spacing: inherit; text-decoration: none; transition: background-color .2s, color .2s; }
.elementor-pagination a.page-numbers:hover, .woocommerce-pagination .page-numbers li > a:hover, .dokan-pagination-container .dokan-pagination li > a:hover { background: #17140F; color: #FAF7F1; }
.elementor-pagination .page-numbers.current, .woocommerce-pagination .page-numbers li > .current, .dokan-pagination-container .dokan-pagination li.active > a { background: #17140F; color: #FAF7F1; }
.elementor-pagination .page-numbers.dots, .woocommerce-pagination .page-numbers li > .dots { min-width: 0; padding: 0 4px; border-color: transparent; }
.elementor-pagination .prev, .elementor-pagination .next, .woocommerce-pagination .prev, .woocommerce-pagination .next { padding: 0 16px; }
.elementor-pagination span.prev, .elementor-pagination span.next { border-color: #E4DBCC; color: #BDB3A2; }
.elementor-pagination .prev::before { content: "\2190"; margin-right: 8px; letter-spacing: 0; }
.elementor-pagination .next::after { content: "\2192"; margin-left: 8px; letter-spacing: 0; }
@media (max-width: 767px) {
	.elementor-pagination, .woocommerce-pagination, .dokan-pagination-container { gap: 6px; margin: 32px 0; }
	.elementor-pagination .page-numbers, .woocommerce-pagination .page-numbers li > .page-numbers { min-width: 36px; height: 36px; padding: 0 10px; }
}
.ab-dropcap p.ab-dropcap-word:first-child::first-letter,.ab-dropcap p[data-ab-dropcap-word]:first-child::first-letter{margin-right:.12em!important}

/* 1.9.27 directory and shop cards */
.elementor-loop-container:has(>.e-loop-item .ab-card--artist){gap:48px 36px!important;row-gap:48px!important;column-gap:36px!important}
.e-loop-item .ab-card--artist{background:#F1EBE0!important;padding:20px 20px 24px!important;display:flex!important;flex-direction:column!important;height:100%;border:0!important;box-shadow:none!important;transform:none!important;transition:none!important}
.e-loop-item .ab-card--artist *,.e-loop-item .ab-card--artist:hover *{transition:none!important}
.e-loop-item .ab-card--artist:hover,.e-loop-item .ab-card--artist:hover img{transform:none!important;box-shadow:none!important;filter:none!important}
.e-loop-item .ab-card--artist .ab-view{display:none!important}
.e-loop-item .ab-card--artist>.elementor-element-4a33b49f{margin:0 0 10px!important;padding:0!important;width:100%!important;background:#E4DBCC!important;border:0!important;box-shadow:none!important}
.e-loop-item .ab-card--artist .elementor-element-f385474{margin-top:0!important}
.e-loop-item .ab-card--artist .elementor-element-42d80b4b{margin-top:7px!important;margin-bottom:16px!important}
.ab-card-art{display:block;aspect-ratio:4/5;overflow:hidden;border-radius:48% 48% 0 0/28% 28% 0 0}
.ab-card-art img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;aspect-ratio:auto!important;border:0!important;box-shadow:none!important}
.ab-card-tex{display:block;width:100%;height:100%;background:repeating-linear-gradient(135deg,#E4DBCC 0 2px,#EAE2D5 2px 9px)}
.ab-card-who{display:flex;align-items:center;gap:10px}
.ab-card-who .elementor-heading-title{margin:0}
.ab-card-av{flex:none;width:32px;height:32px;border-radius:50%;background:#E4DBCC;border:1px solid #BDB3A2;display:flex;align-items:center;justify-content:center;overflow:hidden;font:600 11px/1 Inter,system-ui,sans-serif;letter-spacing:.06em;color:#5B544A}
.ab-card-av img{width:100%;height:100%;object-fit:cover;display:block}
.e-loop-item .ab-card--art .elementor-element-659cf3c6,.e-loop-item .ab-card--art .elementor-element-67bb28a1{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important}
.e-loop-item .ab-card--art .elementor-element-6f40e1b9{display:contents!important}
.e-loop-item .ab-card--art .elementor-element-67bb28a1,.e-loop-item .ab-card--art .elementor-element-4efcfe72{--width:100%;width:100%!important;max-width:none!important}
.e-loop-item .ab-card--art .elementor-element-4acda908{order:0;width:100%!important;max-width:none!important}
.e-loop-item .ab-card--art .elementor-element-5efd33eb{order:-1;margin:0 0 8px!important}
.e-loop-item .ab-card--art .elementor-element-51ef819c{order:1;margin:6px 0 16px!important}
.e-loop-item .ab-card--art .elementor-element-4efcfe72{order:2;margin:0!important;--align-items:flex-start;align-items:flex-start!important;text-align:left!important}
.e-loop-item .ab-card--art .elementor-element-6f40e1b9>.elementor-element-5efd33eb .elementor-heading-title.ab-card-cats,.ab-card-cats{display:block!important;height:auto!important;max-height:none!important;font:600 10.5px/1.3 Inter,system-ui,sans-serif!important;letter-spacing:.18em;text-transform:uppercase;color:#7A5C24!important;white-space:normal!important}
@media (max-width:767px){
.elementor-loop-container:has(>.e-loop-item .ab-card--artist){gap:28px 16px!important;row-gap:28px!important;column-gap:16px!important}
.e-loop-item .ab-card--artist{padding:12px 12px 16px!important}
.ab-card-av{width:26px;height:26px;font-size:9.5px}
.e-loop-item .ab-card--artist .ab-card-title .elementor-heading-title{font-size:18px!important}
}
.e-loop-item .ab-card--art .ab-card-price .elementor-heading-title{white-space:nowrap}

/* 1.9.46 (#39) show the whole piece: no crop, no arch, bigger on the piece page.
   Arch stays available as an opt-in: add the class ab-arch--keep next to ab-arch. */
body .ab-pdp-stage{aspect-ratio:auto!important;min-height:min(62vh,560px);padding:6%!important;display:flex!important;align-items:center;justify-content:center}
body .ab-pdp-stage .ab-frame{width:auto!important;max-width:100%!important}
body .ab-pdp-stage .ab-frame img{width:auto!important;height:auto!important;max-width:100%!important;max-height:min(70vh,640px)!important;object-fit:contain!important}
body .elementor-element-55aa0ab0 .ab-stage{background:var(--ab-bone,#F1EBE0)}
body .elementor-element-55aa0ab0 .ab-stage .ab-frame img{object-fit:contain!important}
body .ab-stage .ab-frame img{max-height:clamp(200px,26vw,360px)}
body .ab-arch:not(.ab-arch--keep) img{border-radius:0!important;object-fit:contain!important;background:var(--ab-bone,#F1EBE0)}
@media (max-width:767px){
body .ab-pdp-stage{min-height:0;padding:4%!important}
body .ab-pdp-stage .ab-frame img{max-height:62vh!important}
body .ab-stage .ab-frame img{max-height:min(56vw,320px)}
}

/* 1.9.47 (#40) home: the rotator label stacks when its column is narrow; empty loop sections and their headings hide. */
.ab-rot{container-type:inline-size}
.ab-rot .ab-rot-info b,.ab-rot .ab-rot-info i,.ab-rot .ab-rot-info .ab-rot-loc{overflow-wrap:normal;word-break:normal}
@container (max-width:620px){
.ab-rot .ab-rot-label{grid-template-columns:minmax(0,1fr) auto!important;align-items:center}
.ab-rot .ab-rot-label .ab-rot-info{grid-column:1/-1}
.ab-rot .ab-rot-label .ab-rot-prices{grid-column:1;justify-self:start}
.ab-rot .ab-rot-label .ab-rot-sig{grid-column:2;justify-self:end}
.ab-rot .ab-rot-sig .ab-sig-text{font-size:32px}
}
@container (max-width:380px){
.ab-rot .ab-rot-label{grid-template-columns:1fr!important}
.ab-rot .ab-rot-label .ab-rot-sig{display:none}
}
body.home:not(.elementor-editor-active) .elementor-widget-loop-grid:has(> .elementor-widget-container > .e-loop-nothing-found-message){display:none!important}
body.home:not(.elementor-editor-active) .elementor-widget-heading:has(+ .elementor-widget-loop-grid > .elementor-widget-container > .e-loop-nothing-found-message){display:none!important}

/* 1.9.48 phone layout fixes */
@media (max-width:767px){
 .elementor-element-af5736c{width:100%!important;max-width:100%!important}
 .elementor-element-af5736c img{display:block;width:100%!important;height:auto!important;aspect-ratio:4/5;max-height:440px;object-fit:cover;object-position:50% 30%}
 .e-con-inner:has(> .ab-grid-editorial){display:grid!important;grid-template-columns:minmax(0,1fr)}
 html body .elementor-element-733c985a .elementor-element-7d3be98d .ab-chips,html body .ab-chips[aria-label="Popular services"]{white-space:normal;flex-wrap:wrap!important;overflow:visible!important;row-gap:10px}
}
.ab-quote__img img,.ab-cta__img img,.ab-quote__img,.ab-cta__img,.ab-frame img[loading="lazy"]{background-color:#EFE8DC}
@media (min-width:1025px) and (max-width:1200px){
 html body form.ab-hire{grid-template-columns:1fr 1fr!important}
 html body form.ab-hire .ab-hire__f{border-bottom:1px solid #E4DBCC;border-right:1px solid #E4DBCC;order:0;grid-column:auto}
 html body form.ab-hire .ab-hire__f--prov,html body form.ab-hire .ab-hire__f--dist{border-right:0}
 html body form.ab-hire .ab-hire__go{grid-column:1/-1;min-height:60px}
}
@media (min-width:901px) and (max-width:1200px){
 .elementor-element-58ad050a{--grid-columns:4}
 .elementor-element-58ad050a .elementor-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
.elementor-element-31bcbc28 a{white-space:nowrap}
body{font-size:18px;line-height:1.65}
.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-icon-list .elementor-icon-list-text,.elementor-widget-toggle .elementor-tab-content,.elementor-widget-accordion .elementor-tab-content,.woocommerce-product-details__short-description{font-size:max(18px,1em)}
.elementor-nav-menu .elementor-item,.elementor-nav-menu--dropdown .elementor-item{font-size:max(16px,1em)}
.elementor-location-header .elementor-nav-menu .elementor-item{white-space:nowrap;padding-left:clamp(8px,.9vw,14px);padding-right:clamp(8px,.9vw,14px)}
.elementor-location-footer,.elementor-location-footer p,.elementor-location-footer a,.elementor-location-footer li{font-size:max(16px,1em)}
.elementor-location-footer [style*="#8a8275"],.elementor-location-footer .elementor-icon-list-text{color:#D8D0C2}
label,legend,.elementor-field-label,.wc-block-components-checkbox__label,.woocommerce form .form-row label{font-size:max(16px,1em)}
.wc-block-components-checkbox__label,.woocommerce-form__label-for-checkbox{color:#17140F;line-height:1.5}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{width:22px;height:22px;min-width:22px;border-color:#5B544A}
input,select,textarea{font-size:max(16px,1em)}
.description,.wc-block-components-validation-error,.woocommerce-error,.woocommerce-info,.woocommerce-message,.elementor-message,.wc-block-components-notice-banner{font-size:max(16px,1em)}
.wc-block-components-validation-error>p{color:#9B2C1F}
[style*="color:#8a8275"],[style*="color: #8a8275"]{color:#5B544A!important}
.ab-legal,.ab-legal p,.ab-legal li,.ab-legal td{font-size:max(17px,1em);line-height:1.65}
/* Legal pages: keep the text off the screen edges. */
.ab-legal-page main{box-sizing:border-box;max-width:960px;margin-left:auto;margin-right:auto;padding-left:clamp(20px,5vw,48px);padding-right:clamp(20px,5vw,48px);padding-bottom:48px}
.ab-legal-page main table{width:100%}
/* Wearables and loose textiles: no View in room. */
.ab-no-room .ab-room,.ab-no-room a[href="#view-in-room"]{display:none!important}
.e-loop-item,.e-loop-item p{font-size:max(16px,1em)}
.e-loop-item .elementor-heading-title{overflow-wrap:anywhere}
@media (max-width:1300px) and (min-width:1025px){
 .elementor-location-header .elementor-nav-menu .elementor-item{font-size:15px;letter-spacing:0}
}
@media (max-width:767px){
 .elementor-location-header .e-con,.elementor-location-header .elementor-section .elementor-container{padding-top:6px;padding-bottom:6px;min-height:0}
 .elementor-location-header .elementor-widget-image img,.elementor-location-header .elementor-widget-theme-site-logo img{max-height:38px;width:auto}
 .elementor-location-header .elementor-widget-search-form,.elementor-location-header .elementor-widget-search{display:none}
}
.artistry-contact__hp,p.artistry-contact__hp[hidden]{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.artistry-contact,.artistry-contact__ok,[id^="as-contact"]{scroll-margin-top:calc(var(--ab-hd-h,80px) + 16px)}
.ab-dropcap p:first-child::first-letter{margin-right:.22em}
html body .ab-eyebrow p.elementor-heading-title,html body .ab-ft-contact p{font-size:17px!important;line-height:1.6}
html body .ab-fine p{font-size:16px!important;line-height:1.55}
html body .artistry-print-summary{font-size:15px}
.elementor-social-icon-instagram[href*="instagram.com/artistryboutique"] { display: none !important; }
.ab-hide-if-empty:not(:has(.e-loop-item)){display:none!important}
.e-loop-item .ab-card--artist{padding:0 0 24px!important;overflow:hidden}
.e-loop-item .ab-card--artist>:not(.elementor-element-4a33b49f){padding-left:20px!important;padding-right:20px!important;box-sizing:border-box}
.e-loop-item .ab-card--artist>.elementor-element-4a33b49f{margin:0 0 14px!important;width:100%!important;max-width:none!important;background:none!important}
.e-loop-item .ab-card--artist>.elementor-element-4a33b49f .ab-card-art{display:block;aspect-ratio:1/1!important;border-radius:0!important;overflow:hidden;padding:0!important;margin:0!important;background:none!important;border:0!important;box-shadow:none!important}
.e-loop-item .ab-card--artist>.elementor-element-4a33b49f .ab-card-art img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;border-radius:0!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:none!important}
.e-loop-item.ab-buy-soon{position:relative}
.e-loop-item.ab-buy-soon::after{content:"Available to buy online soon";display:block;margin:10px 0 0;font:500 16px/1.4 Inter,system-ui,sans-serif;color:#5B544A}
.ab-piece-contact{display:none;margin:20px 0 0;scroll-margin-top:calc(var(--ab-hd-h,80px) + 16px)}
.ab-piece-contact:target,.ab-piece-contact.is-open,.ab-piece-contact:focus-within{display:block}
@media (max-width:767px){.elementor-loop-container:has(>.e-loop-item .ab-card--artist){grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:100%!important;min-width:0!important}.elementor-widget-loop-grid:has(.ab-card--artist),.elementor-widget-loop-grid:has(.ab-card--artist) .elementor-widget-container{min-width:0!important;max-width:100%!important;overflow-x:clip}.e-con:has(.ab-card--artist),.e-loop-item:has(>.ab-card--artist),.e-loop-item .ab-card--artist{min-width:0!important;max-width:100%!important}}
@media (max-width:560px){.elementor-loop-container:has(>.e-loop-item .ab-card--artist){grid-template-columns:minmax(0,1fr)!important}.e-loop-item .ab-card--artist>:not(.elementor-element-4a33b49f){padding-left:16px!important;padding-right:16px!important}}
/* The Elementor header/footer template has no main, so the legal text is wrapped in PHP (legal_content). */
.ab-legal-page .ab-legal-body{box-sizing:border-box;max-width:960px;margin:0 auto;padding:clamp(24px,4vw,48px) clamp(20px,5vw,48px) 48px}
.ab-legal-page .ab-legal-body table{width:100%}
.ab-legal-page .ab-legal-body h2[id]{scroll-margin-top:120px}
/* 1.9.79: artwork photos show as shot, with no painted frame or mat. The child theme still gives
   piece cards a black, oak or white frame in turn (ab-frame--auto), a 5% mat (ab-frame--thin) and a
   black frame on the piece page; the spotlight art gets a black frame and a mat. The watermark is in
   the image file itself, so it stays. View in room keeps its frame, since that is a room mock-up. */
body .ab-frame:not(.ab-wall-art),body .elementor-loop-container>.e-loop-item .ab-frame--auto{border:0!important;border-image:none!important;padding:0!important;background:transparent!important}
body .ab-frame:not(.ab-wall-art) img{box-shadow:0 0 0 1px rgba(23,20,15,.08)}
body .ab-spotlight__art li,body .ab-spotlight__inset{border:0;padding:0;background:transparent}
/* R-77: the mobile menu panel is a fixed-height flex column with Elementor's mobile "wrap" on, so once
   its links are taller than the screen (logged in, or a short phone) the rest wraps into a second
   column off to the right, with a sideways scrollbar. One column, scrolling down only. */
body.ab-menu-open .ab-mpanel{flex-wrap:nowrap!important;overflow-x:hidden!important;overflow-y:auto}
body.ab-menu-open .ab-mpanel>*{flex-shrink:0;max-width:100%}
/* R-78: the Buy art / search results grid has a tablet setting of 2 columns and no phone setting, so
   phones got 2 columns plus a 32px gap, wider than the screen, and the right card was cut off. */
@media (max-width:767px){
	.elementor-element-622b1d4 .elementor-loop-container{grid-template-columns:minmax(0,1fr)!important}
}
/* R-73: the vendor Reviews tab shows our artist reviews; Dokan's own list there reads another source. */
.ab-store-reviews .dokan-single-store #reviews{display:none}
.ab-store-review-list{margin-top:28px}

/* Order received: a long email address breaks inside its box and gets its own row, so the strip reads in order. */
body.ab-shop-received ul.woocommerce-order-overview li{min-width:0;overflow-wrap:anywhere}
body.ab-shop-received ul.woocommerce-order-overview li.woocommerce-order-overview__email{grid-column:1/-1}

/* Instagram stays hidden in the footer until the account exists. Remove this rule at launch once it does. */
.ab-social .elementor-grid-item:has(> .elementor-social-icon-instagram),
.ab-social .elementor-social-icon-instagram{display:none!important}
/* The footer icons were centred in their column, so with one hidden the rest sat indented from the brand text.
   Line them up with the text above. */
.ab-social,.ab-social .elementor-widget-container,.ab-social .elementor-social-icons-wrapper{text-align:left!important}
/* Artist page hero at phone width: "Artist · Markham," and "Ontario" are two headings side by side and the
   second was pushed off the edge. Let them run as one line of text that wraps like words. */
@media (max-width: 767px){
.e-con:has(> .ab-eyebrow--plain){display:block!important}
.e-con:has(> .ab-eyebrow--plain)>.ab-eyebrow,.e-con:has(> .ab-eyebrow--plain)>.ab-eyebrow>.elementor-widget-container,.e-con:has(> .ab-eyebrow--plain)>.ab-eyebrow .elementor-heading-title{display:inline!important;width:auto!important;margin:0!important;padding:0!important}
.e-con:has(> .ab-eyebrow--plain)>.ab-eyebrow--plain .elementor-heading-title::before{display:none!important}
}

/* Phones: the trust strip under the hero has no icons, so its two-column rows put all the text in the 28px icon column. */
@media (max-width:767px){
.ab-trust li{display:block!important}
.ab-trust li>div{width:auto!important}
.ab-trust li b{display:block;margin-bottom:4px}
.ab-ft .ab-ft-brand{grid-column:1/-1}
.ab-ft .ab-social,.ab-ft .ab-social .elementor-widget-container{text-align:left!important}
.ab-ft .ab-social .elementor-social-icons-wrapper{display:flex!important;justify-content:flex-start!important;margin:0!important}
.ab-hire .ab-chips{justify-content:flex-start!important}
.ab-hire .ab-chips>span{flex-basis:100%;margin-bottom:2px;text-align:left}
}
