/* The two reference compositions inherit the active theme's radius, color and spacing. */
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel{grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:var(--v-height,760px);min-height:0}
body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic) :is(.pn-hero,.pn-promo){min-height:0!important;height:100%;border-radius:var(--pnt-radius)!important}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-image{object-fit:cover!important;object-position:right center!important}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy{width:44%;height:100%;padding:38px 30px;background:var(--pnt-surface)!important;border-radius:0 140px 140px 0;display:block}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy h1{font-size:clamp(42px,4.8vw,68px);font-weight:850;line-height:1.02;max-width:8ch;margin:26px 0 24px;letter-spacing:-1.8px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-title-accent{color:inherit}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy h1:after{content:'';display:block;width:65%;height:7px;background:color-mix(in srgb,var(--pnt-secondary) 30%,transparent);border-radius:100%;transform:rotate(-3deg);margin:8px 0 0 auto}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy p{font-size:16px;line-height:1.45;margin-bottom:24px}
body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic) .pn-button{background:var(--pnt-accent);color:#fff;border-radius:var(--pnt-radius);padding:13px 19px;font-size:15px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-trust{margin-top:34px;gap:8px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-trust>span{flex-direction:row;gap:7px;align-items:center;font-size:10px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-trust>span+span{border-left:1px solid var(--pnt-border);padding-left:8px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-trust .pn-icon{flex:0 0 25px;width:25px;height:25px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-promos{height:100%;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));margin:0!important;gap:var(--v-gap)!important}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product{background:#fff3e5;border:1px solid var(--pnt-border);container-type:size;container-name:pn-vitrine-card}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product.pn-promo-2{background:#f0e7fc}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product.pn-promo-3{background:#f4eee3}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product-cover{position:absolute;inset:0;z-index:1}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product>div{pointer-events:none;background:transparent!important;border-radius:0!important;display:block;min-width:0;max-width:none}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product a,body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product button{pointer-events:auto}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product h2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product h2 a{color:var(--pnt-text);text-decoration:none}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-vitrine-photo img{object-fit:contain!important;object-position:center!important}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-wide .pn-vitrine-photo{inset:0 0 0 auto!important;width:44%!important;height:100%!important;background:transparent;mask-image:linear-gradient(90deg,transparent,#000 10%)}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-wide>div{width:62%!important;height:100%!important;padding:22px 18px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-wide .pn-reference-tag{display:inline-block;background:color-mix(in srgb,var(--pnt-secondary) 12%,var(--pnt-surface));color:var(--pnt-text);padding:4px 8px;border-radius:var(--pnt-radius);font-size:11px;max-width:90%}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-wide h2{font-size:clamp(23px,2vw,30px);line-height:1.08;margin:12px 0}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-reference-description{font-size:13px;line-height:1.4;margin:0 0 12px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-price{font-size:28px;font-weight:800;line-height:1.15;color:var(--pnt-accent);margin:12px 0}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-price del{font-size:.6em;font-weight:400;opacity:.65}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-price ins{background:transparent;text-decoration:none}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-action .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;background:var(--pnt-accent);color:#fff;border:0;border-radius:var(--pnt-radius);padding:10px 13px;font-size:12px;line-height:1.3;text-decoration:none;white-space:normal}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-action .button:before{content:'';width:17px;height:17px;flex:0 0 17px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M3 3h2l3 13h11l3-10H6M9 20h.01M18 20h.01'/%3E%3C/svg%3E") center/contain no-repeat}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .added_to_cart{display:block;font-size:11px;margin-top:3px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product :is(a,button):focus-visible{outline:3px solid var(--pnt-secondary);outline-offset:2px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-family{position:absolute;top:24px;left:24px;right:24px;z-index:3;display:flex;align-items:center;gap:10px;width:fit-content;max-width:calc(100% - 48px);padding:9px 14px;border-radius:var(--pnt-radius);background:color-mix(in srgb,var(--pnt-surface) 94%,transparent);font-size:12px;font-weight:700;line-height:1.3}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-family .pn-icon{width:20px;height:20px;flex:0 0 20px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-portrait-copy{position:absolute;inset:auto 0 0;z-index:2;width:100%;height:44%;padding:34px 24px 24px;background:linear-gradient(0deg,var(--pnt-surface) 0%,color-mix(in srgb,var(--pnt-surface) 95%,transparent) 70%,transparent);overflow:visible}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-portrait-copy h2{font-size:clamp(32px,3vw,48px);font-weight:850;line-height:1.08;letter-spacing:-1px;margin:0 0 14px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-portrait-copy p{font-size:14px;line-height:1.45;margin:0 0 16px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-intro-copy{width:100%;height:100%;padding:20px 16px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefits{grid-column:4;grid-row:1;position:relative;min-width:0;height:100%;padding:10px 0}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefits>.pn-vitrine-copy-inner{height:100%;overflow:visible}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit{display:flex;align-items:center;gap:10px;padding:12px 0;min-width:0}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit+.pn-reference-benefit{border-top:1px solid var(--pnt-border)}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit>.pn-icon{width:42px;height:42px;flex:0 0 42px;padding:9px;background:#fff0d2;border-radius:50%;color:#55391d}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit:nth-child(2)>.pn-icon{background:#e2efdd;color:#264827}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit:nth-child(3)>.pn-icon{background:#ffe4d8;color:#823018}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit strong{display:block;font-size:13px;line-height:1.3}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit p{font-size:11px;line-height:1.4;margin:5px 0 0;color:var(--pnt-muted)}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-badge{position:absolute;top:12px;left:12px;z-index:3;background:var(--pnt-accent);color:#fff;border-radius:var(--pnt-radius);padding:5px 8px;font-size:10px;line-height:1.3;max-width:calc(100% - 60px)}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-review-title{display:block;font-size:9px;line-height:1.4;letter-spacing:.5px;margin-bottom:8px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-review-author{display:flex;align-items:center;gap:8px;min-width:0}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-review-author img{width:36px;height:36px;border-radius:50%;flex:0 0 36px}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-review-author strong{font-size:12px;display:block;line-height:1.4;overflow-wrap:anywhere}
body.pn-site.pn-theme-system .pn-site-frame .pn-reference-review-author small{font-size:10px;display:block;line-height:1.4}
@container pn-vitrine-hero (max-height:500px){body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy{padding:18px 20px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy h1{font-size:33px;margin:16px 0;max-width:10ch}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy p{font-size:12px;margin-bottom:12px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-trust{margin-top:18px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-button{font-size:12px;padding:8px 12px}}
@container pn-vitrine-card (max-height:300px){body.pn-site.pn-theme-system .pn-site-frame .pn-reference-wide>div{padding:12px 14px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-wide h2{font-size:20px;margin:8px 0}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-reference-description{display:none}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-price{font-size:19px;margin:7px 0}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-action .button{font-size:11px;padding:7px 9px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-product .pn-showcase-rating{font-size:10px}}
@media(min-width:781px){body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic).pn-vitrine-sized{height:var(--v-height);min-height:0}body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic).pn-vitrine-sized .pn-vitrine-copy-inner{transform:scale(var(--pn-copy-scale,1))!important;transform-origin:top left;margin-top:var(--pn-copy-offset,0px)!important}}
@media(max-width:1100px) and (min-width:781px){body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy{padding:28px 20px;width:46%}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy h1{font-size:46px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-portrait-copy{padding:24px 18px 18px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit{gap:6px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit>.pn-icon{width:30px;height:30px;flex-basis:30px;padding:6px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit strong{font-size:11px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-benefit p{font-size:10px}}
@media(max-width:780px){
 body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic),body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic).pn-vitrine-sized{height:auto;min-height:0;grid-template-columns:1fr;grid-template-rows:auto auto}
 body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic) .pn-hero{height:680px;min-height:680px!important}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy{width:52%;height:100%;padding:32px 20px!important;border-radius:0 100px 100px 0}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy h1{font-size:40px;max-width:8ch;margin:22px 0}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy p{font-size:14px}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-trust{grid-template-columns:1fr;margin-top:24px;gap:12px}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-trust>span+span{border:0;padding:0}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-promos{height:auto;grid-template-rows:repeat(2,320px)}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-reference-wide>div{padding:22px 18px!important}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-intro-copy{height:auto;padding:20px 12px}
 body.pn-site.pn-theme-system .pn-site-frame .pn-reference-portrait-copy{height:44%;padding:32px 24px 24px}
}
@media(max-width:520px){body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy{width:56%}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-copy h1{font-size:37px}body.pn-site.pn-theme-system .pn-site-frame .pn-reference-panel .pn-hero-image{object-position:65% center!important}}

/* Media and copy bounds override only the old rules for these two compositions. */
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine:is(.pn-reference-panel,.pn-reference-mosaic) .pn-hero-image{inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;border-radius:inherit!important}

body.pn-site.pn-theme-system .pn-site-frame :is(.pn-reference-panel,.pn-reference-mosaic) .pn-button{background:var(--pnt-accent)!important;color:#fff!important}
body.pn-site.pn-theme-system .pn-site-frame .pn-vitrine :is(.pn-reference-wide,.pn-reference-tile) .pn-vitrine-photo img{object-fit:cover!important;border-radius:inherit!important}
