/* The footer is a distinct part of the shared page, with its own separators. */
body.pn-site.pn-theme-system .pn-site-frame > .pn-footer {
 background:color-mix(in srgb,var(--pnt-surface) 96%,var(--pnt-accent))!important;
 border-top:1px solid var(--pnt-border)!important;
 box-shadow:0 -4px 16px rgb(24 32 48 / 4%);
}
body.pn-site.pn-theme-system .pn-site-frame > .pn-footer::before {
 content:"";display:block;height:3px;
 background:linear-gradient(90deg,var(--pnt-accent),var(--pnt-secondary));
}
body.pn-site.pn-theme-system .pn-site-frame .pn-footer-base {
 border-top:1px solid var(--pnt-border);
 background:color-mix(in srgb,var(--pnt-surface) 94%,var(--pnt-accent));
 box-shadow:none;
}

/* Two outer checkout cards share the theme's shadow; inner panels stay flat. */
body.woocommerce-checkout.pn-site.pn-theme-system .pn-site-frame #pn-main .pn-content:has(form.checkout),
body.pn-site.pn-theme-system .pn-site-frame form.checkout :is(
 #customer_details,#payment,.pn-checkout-panel,
 .pn-checkout-products,.pn-checkout-product,
 .pn-checkout-coupon,.pn-billing-account,.payment_box
) {
 border:0!important;border-radius:0!important;box-shadow:none!important;
 background:transparent!important;
}
body.pn-site.pn-theme-system .pn-site-frame form.checkout :is(.pn-checkout-details,.pn-checkout-summary) {
 border:0!important;border-radius:var(--pnt-radius)!important;
 box-shadow:var(--pn-surface-shadow)!important;
 background:var(--pnt-surface)!important;
}
/* Flush photos need a stage height because the shared image fill is absolute. */
body.pn-site.pn-theme-system .pn-site-frame form.checkout .pn-checkout-photo {height:64px;}
@media(max-width:440px) {
 body.pn-site.pn-theme-system .pn-site-frame form.checkout .pn-checkout-photo {height:54px;}
}

/* The reference panel keeps its photos and layout; copy gains 2px and contrast. */
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel {
 --pn-showcase-ink:#211b16;
 --pn-showcase-price:#633015;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy {background:#fffdf8!important;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy h1 {
 font-size:clamp(34px,calc(11cqh + 2px),56px);
}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy p {font-size:16px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy .pn-eyebrow {font-size:12px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy .pn-eyebrow .pn-icon {width:16px;height:16px;flex-basis:16px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy .pn-button {font-size:16px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy .pn-button .pn-icon {width:22px;height:22px;flex-basis:22px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy .pn-hero-trust>span {font-size:12px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy .pn-hero-trust .pn-icon {width:24px;height:24px;flex-basis:24px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-tag {font-size:13px;background:#f5e8dc;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-product h2 {font-size:clamp(19px,calc(7cqh + 2px),28px);}
/* Clamp the focusable link itself so keyboard focus cannot scroll its hidden title. */
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-product h2 {display:block;overflow:visible;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-product h2>a {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-width:100%;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-rating,
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-rating .star-rating {font-size:12px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-price {font-size:clamp(21px,calc(8cqh + 2px),30px);}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-description {font-size:15px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-action .button {font-size:13px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-action .button::before {width:19px;height:19px;flex-basis:19px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel :is(
 .pn-hero-copy h1,.pn-hero-copy h1 span,.pn-hero-copy p,.pn-eyebrow,
 .pn-hero-trust>span,.pn-hero-trust strong,.pn-reference-tag,
 .pn-reference-product h2,.pn-reference-product h2 a,.pn-reference-description,
 .pn-showcase-rating,.pn-showcase-rating>span:not(.star-rating)
) {color:var(--pn-showcase-ink)!important;font-weight:500!important;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel :is(.pn-showcase-price,.pn-showcase-price *) {color:var(--pn-showcase-price)!important;font-weight:600!important;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel :is(.pn-button,.pn-showcase-action .button) {font-weight:600!important;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-product .pn-vitrine-photo::after {content:none;}
/* Five 16px stars retain WooCommerce's percentage width for the real rating. */
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-rating .star-rating {width:80px;height:16px;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-rating .star-rating::before,
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-showcase-rating .star-rating>span::before {
 width:80px;height:16px;mask-size:16px 16px;
}
@media(max-width:520px) {
 /* Keep the enlarged copy over its light surface on narrow phones. */
 body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero-copy {width:min(100%,240px)!important;}
}

/* Fill both sides of the showcase with no inner spacing. */
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel :is(.pn-hero,.pn-reference-product) {
 padding:0!important;overflow:hidden;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero .pn-hero-image.pn-hero-image,
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-product .pn-vitrine-photo.pn-vitrine-photo img {
 inset:0!important;width:100%!important;height:100%!important;
 margin:0!important;padding:0!important;border:0!important;
 object-position:center!important;transform:none!important;scale:1!important;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-hero .pn-hero-image {object-fit:cover!important;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-product .pn-vitrine-photo.pn-vitrine-photo {
 inset:0 0 0 auto!important;width:var(--pn-vitrine-media-width,70%)!important;
 border-radius:0!important;
 mask-image:linear-gradient(90deg,transparent,#000 var(--pn-vitrine-media-fade,22%))!important;
 -webkit-mask-image:linear-gradient(90deg,transparent,#000 var(--pn-vitrine-media-fade,22%))!important;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel .pn-reference-product .pn-vitrine-photo.pn-vitrine-photo img {
 object-fit:var(--pn-vitrine-photo-fit,cover)!important;border-radius:0!important;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel :is(.pn-hero,.pn-reference-product) {transition:transform .24s ease;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel :is(.pn-hero-image,.pn-vitrine-photo img) {transition:transform .28s ease;transform-origin:center;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel.pn-vitrine-interactive :is(.pn-hero,.pn-reference-product):is(:hover,:focus-within) {transform:translateY(var(--pn-vitrine-hover-shift,-3px));}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel.pn-vitrine-interactive :is(.pn-hero,.pn-reference-product):is(:hover,:focus-within) :is(.pn-hero-image,.pn-vitrine-photo img) {transform:scale(var(--pn-vitrine-hover-scale,1.03))!important;}

/* Change copy color for mouse hover and keyboard focus, without altering links. */
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel.pn-vitrine-interactive :is(.pn-hero,.pn-reference-product):is(:hover,:focus-within) {
 --pn-showcase-ink:var(--pnt-accent);
 --pn-showcase-price:var(--pnt-accent);
}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel :is(
 h1,h1 span,h2,h2 a,p,.pn-eyebrow,.pn-reference-tag,.pn-reference-description,
 .pn-hero-trust>span,.pn-hero-trust strong,.pn-showcase-rating,
 .pn-showcase-rating>span:not(.star-rating),.pn-showcase-price,.pn-showcase-price *,
 .pn-button,.pn-showcase-action .button
) {transition:color .18s ease;}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel.pn-vitrine-interactive :is(.pn-hero,.pn-reference-product):is(:hover,:focus-within) :is(.pn-button,.pn-showcase-action .button) {color:#fff0d4!important;}
@media(prefers-reduced-motion:reduce) {
 body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel * {transition:none!important;}
 body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel.pn-vitrine-interactive :is(.pn-hero,.pn-reference-product):is(:hover,:focus-within),
 body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine.pn-reference-panel.pn-vitrine-interactive :is(.pn-hero,.pn-reference-product):is(:hover,:focus-within) :is(.pn-hero-image,.pn-vitrine-photo img) {transform:none!important;}
}

/* One common card around the cart items and one around its summary. */
body.woocommerce-cart.pn-site.pn-theme-system .pn-site-frame #pn-main .pn-content:has(.pn-cart-layout) {border:0!important;box-shadow:none!important;background:transparent!important;}
body.pn-site.pn-theme-system .pn-site-frame #pn-main .pn-cart-layout>.woocommerce-cart-form,
body.pn-site.pn-theme-system .pn-site-frame #pn-main .pn-cart-layout .cart_totals {
 border:0!important;border-radius:var(--pnt-radius)!important;
 background:var(--pnt-surface)!important;box-shadow:var(--pn-surface-shadow)!important;
}
body.pn-site.pn-theme-system .pn-site-frame #pn-main .pn-cart-layout table.cart {border:0!important;box-shadow:none!important;border-radius:inherit!important;overflow:hidden;}
/* Compact catalog headings keep native descriptions and an accessible page title. */
body.pn-site.pn-theme-system #pn-main.pn-catalog .pn-woo-content>.woocommerce-products-header{
 background:none!important;border:0!important;box-shadow:none!important;
 padding:0!important;margin:0!important;border-radius:0!important;min-height:0;
}
body.pn-site #pn-main.pn-catalog .woocommerce-products-header::after{content:none;display:none}
body.pn-site #pn-main.pn-catalog .woocommerce-products-header h1{
 position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;
 overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;
}
body.pn-site #pn-main.pn-catalog .woocommerce-products-header :is(.term-description,.page-description){margin:0 0 16px}
body.pn-site #pn-main.pn-catalog .woocommerce-products-header :is(.term-description,.page-description)>:first-child{margin-top:0}
body.pn-site.tax-product_cat[class*="pn-card-model-"] #pn-main ul.products {
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.pn-single-post .pn-blog-primary > article {min-width:0}
.pn-single-post .pn-blog-primary > article > .wp-post-image {width:100%;height:auto;max-height:360px;object-fit:cover;border-radius:16px}
.pn-single-post .pn-blog-primary h1 {font-size:clamp(26px,2.5vw,40px);line-height:1.2;margin:8px 0 24px}
.pn-single-post .pn-content {padding:24px 12px;line-height:1.8;display:flow-root}
.pn-site:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) #pn-main.pn-page .pn-content {padding-inline:12px;display:flow-root}
.pn-site #pn-main :is(.pn-comments,.comment-body) {padding:12px;box-sizing:border-box}
.pn-site #pn-main .pn-comments textarea {display:block;width:100%;max-width:100%;min-height:180px;padding:12px}
.pn-site #pn-main .pn-comments :is(input,textarea,button) {font:inherit}
.pn-site #pn-main .pn-comments .comment-form label {display:block;margin-bottom:7px}
.pn-single-post .pn-post-nav {padding-inline:12px}
.pn-blog-post-categories h2 {font-size:19px;margin:0 0 14px}
.pn-blog-post-categories ul {list-style:none;padding:0;margin:0}
.pn-blog-post-categories li {padding:6px 0}
.pn-blog-post-categories .children {padding-inline-start:16px}
.pn-blog-page-heading {align-items:center;gap:20px}
.pn-blog-page-heading .pn-eyebrow {margin:0 0 6px}
.pn-blog-page-heading h1 {margin:0}
.pn-archive-description {max-width:70ch;color:var(--pn-muted)}
.pn-shopoli-brand img {width:260px;max-width:100%;height:auto}
@media(max-width:1024px) {
 body.pn-site.tax-product_cat[class*="pn-card-model-"] #pn-main ul.products {grid-template-columns:repeat(3,minmax(0,1fr))!important}
 body.pn-site.pn-theme-system .pn-single-post .pn-blog-layout {grid-template-columns:minmax(0,1fr)}
 body.pn-site.pn-theme-system .pn-single-post .pn-blog-sidebar {order:0;position:static}
}
@media(max-width:680px) {
 body.pn-site.tax-product_cat[class*="pn-card-model-"] #pn-main ul.products {grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .pn-blog-page-heading {align-items:flex-start;flex-direction:column;gap:12px}
}
/* One search field with an inset submit button; native search forms stay intact. */
body.pn-site.pn-theme-system .pn-site-frame .pn-search {
 background:transparent!important;box-shadow:none!important;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-search form {
 display:block;position:relative;height:52px;padding:0;
 border:1px solid var(--pn-field-border)!important;border-radius:12px!important;
 background:#fff;box-shadow:0 2px 8px rgb(24 32 48 / 6%);overflow:visible;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-search form input[type=search] {
 display:block;width:100%;height:100%;margin:0;
 padding:0 94px 0 14px!important;padding-inline:14px 94px!important;
 border:0!important;border-radius:12px!important;background:transparent!important;
 box-shadow:none!important;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-search form button {
 position:absolute;inset-block:4px;inset-inline-end:4px;
 width:auto;min-width:76px;max-width:42%;height:auto;min-height:0;
 padding:0 16px;margin:0;border:0!important;border-radius:8px!important;
 box-shadow:none!important;transform:none!important;
}
body.pn-site.pn-theme-system .pn-site-frame .pn-search form:focus-within {
 border-color:var(--pn-accent)!important;outline:2px solid color-mix(in srgb,var(--pn-accent) 25%,transparent);outline-offset:2px;
}
/* Twelve native posts fill three desktop rows; narrower screens keep readable cards. */
body.pn-site.pn-theme-system #pn-main.pn-blog-archive .pn-blog-primary > .pn-post-grid,
body.pn-site.pn-theme-system #pn-main .pn-home-blog .pn-blog-primary > .pn-post-grid {
 grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;
}
@media(max-width:1100px) {
 body.pn-site.pn-theme-system #pn-main.pn-blog-archive .pn-blog-primary > .pn-post-grid,
 body.pn-site.pn-theme-system #pn-main .pn-home-blog .pn-blog-primary > .pn-post-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px) {
 body.pn-site.pn-theme-system #pn-main.pn-blog-archive .pn-blog-primary > .pn-post-grid,
 body.pn-site.pn-theme-system #pn-main .pn-home-blog .pn-blog-primary > .pn-post-grid {grid-template-columns:minmax(0,1fr)}
}

/* Native WordPress category trees retain the shared category menu presentation. */
.pn-site .pn-blog-category-menu ul.children{list-style:none;margin:0;padding:0 0 0 14px;}
.pn-site .pn-blog-category-menu .current-cat>a{color:var(--pn-accent);background:color-mix(in srgb,var(--pn-accent) 7%,var(--pnt-surface));}
