/* Refine proportions without changing viewport scale or content-container widths. */
body.pa-gallery-refinement{--pa-detail-size:14px;--pa-reading-size:17px;font-size:16px}
body.pa-gallery-refinement .form-control{font-size:16px;line-height:1.65;min-height:44px}
body.pa-gallery-refinement textarea.form-control{min-height:120px}
body.pa-gallery-refinement .pi-editorial-badges,body.pa-gallery-refinement .pi-product-badges{position:relative;z-index:3}
body.pa-gallery-refinement details[data-pack-popover]{position:static}
body.pa-gallery-refinement details[data-pack-popover]>summary{position:relative}
body.pa-gallery-refinement details[data-pack-popover]>summary::before{content:'';position:absolute;inset:-5px 0}
body.pa-gallery-refinement .pi-product-badges details[data-pack-popover]>summary::before{inset:-8px 0}
body.pa-gallery-refinement details[data-pack-popover]>p{position:absolute;inset-inline-start:0;inset-block-start:calc(100% + 7px);z-index:30;box-sizing:border-box;width:min(100%,300px);max-width:100%;margin:0;padding:12px 14px;border:1px solid #ddcdbc;border-radius:10px;background:#fffdf8;color:#655546;font-size:14px;line-height:1.95;box-shadow:0 10px 26px #38281b1c;text-align:right;animation:pa-pack-enter .16s ease-out}
body.pa-gallery-refinement details[data-pack-popover][open]>summary{background:#f1e9df;border-color:#cbb59e}
body.pa-gallery-refinement details[data-pack-popover]>summary:focus-visible{outline:2px solid #73917d;outline-offset:3px}
@keyframes pa-pack-enter{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
body.pa-gallery-refinement .pi-card-payment{min-height:52px}
body.pa-gallery-refinement .pi-card-payment p{font-size:14px;font-weight:500;line-height:1.8;color:#6c5c4b}
body.pa-gallery-refinement .pi-login-price{display:inline-flex;align-items:center;min-height:44px;font-size:14px;line-height:1.9;color:#675849}
body.pa-gallery-refinement .pi-shop .pi-filter-count,body.pa-gallery-refinement .pi-shop .pw-filter-note{font-size:13px;color:#74675a}
body.pa-gallery-refinement .pi-shop .pw-facet-token,body.pa-gallery-refinement .pi-shop .pw-family-filter-grid .pw-taxonomy-choice span{font-size:13px}
body.pa-gallery-refinement .pi-shop .pi-instrument-signature .pw-spec-orb small{font-size:10px;line-height:1.25}
body.pa-gallery-refinement .pi-product-badges>.pi-product-badge,body.pa-gallery-refinement .pi-product-badges>.pi-pack>summary{font-size:14px}
body.pa-gallery-refinement .pi-product-badges bdi{font-size:14px}
body.pa-gallery-refinement .pi-product-badges details[data-pack-popover]>p{font-size:16px}
body.pa-gallery-refinement .pi-purchase-summary small{font-size:15px;line-height:1.8}
body.pa-gallery-refinement .pi-order-note{font-size:16px;line-height:1.9}
@media(min-width:992px){
  body.pa-gallery-refinement .section-title h2,body.pa-gallery-refinement .about-content-wrap .about-content h2,body.pa-gallery-refinement .about-area-two .about-content h2{font-size:clamp(32px,3.5vw,45px);font-weight:600;line-height:1.5}
  body.pa-gallery-refinement .hero-slider-text h1,body.pa-gallery-refinement .banner-area .banner-text h1{font-size:clamp(48px,5.2vw,72px);font-weight:600;line-height:1.4}
  body.pa-gallery-refinement .page-title-area .page-title-content h1,body.pa-gallery-refinement .page-title-area .page-title-content h2,body.pa-gallery-refinement .user-area-style .section-title h2{font-size:36px;font-weight:600;line-height:1.5}
  body.pa-gallery-refinement .single-blog h3,body.pa-gallery-refinement .single-services h3{font-size:20px;font-weight:600;line-height:1.6}
  body.pa-gallery-refinement .section-title{margin-bottom:42px}
  body.pa-gallery-refinement .section-title>span{font-size:14px;font-weight:600;margin-bottom:14px}
  body.pa-gallery-refinement .about-content p,body.pa-gallery-refinement .section-title p,body.pa-gallery-refinement .contact-area p,body.pa-gallery-refinement .user-area-style p{font-size:17px;line-height:1.95}
  body.pa-gallery-refinement .blog-details-content .article-content p,body.pa-gallery-refinement .terms-conditions p{font-size:18px;line-height:2}
  body.pa-gallery-refinement .academy-hero h1{font-size:clamp(28px,3.6vw,40px);font-weight:600;line-height:1.5}
  body.pa-gallery-refinement .academy-page .about-content>h2,body.pa-gallery-refinement .academy-page .academy-section-title{font-size:clamp(23px,2.2vw,29px);font-weight:600}
  body.pa-gallery-refinement .academy-page .about-content p{font-size:17px}
  body.pa-gallery-refinement .default-btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:11px 26px;font-size:14px;font-weight:600;line-height:1.5}
  body.pa-gallery-refinement .ptb-100{padding-top:90px;padding-bottom:90px}
  body.pa-gallery-refinement .pt-100{padding-top:90px}body.pa-gallery-refinement .pb-100{padding-bottom:90px}
  body.pa-gallery-refinement .pi-shop .pw-catalog{grid-template-columns:clamp(280px,16vw,312px) minmax(0,1fr);gap:clamp(24px,2vw,40px)}
  body.pa-gallery-refinement .pi-shop .pw-hero h1{font-size:clamp(30px,2.7vw,42px);font-weight:600}
  body.pa-gallery-refinement .pi-shop .pw-product-media{aspect-ratio:1.12}
  body.pa-gallery-refinement .pi-shop .pi-image-link .pi-gallery-image{width:90%;height:90%}
  body.pa-gallery-refinement .pi-shop .pw-product-body{padding-block:12px}
  body.pa-gallery-refinement .pi-shop .pi-card-title{font-size:17px;font-weight:600;height:34px;min-height:34px;line-height:34px}
  body.pa-gallery-refinement .pi-shop .pi-card-title a{line-height:34px}
  body.pa-gallery-refinement .pi-shop .pi-price-number{font-size:27px;font-weight:500}
  body.pa-gallery-refinement .pi-shop .pi-price-unit{font-size:14px}
  body.pa-gallery-refinement .pi-shop .pi-editorial-badges>.pw-insight,body.pa-gallery-refinement .pi-shop .pi-editorial-badges>.pi-status-badge,body.pa-gallery-refinement .pi-shop .pi-editorial-badges>.pi-popularity-badge,body.pa-gallery-refinement .pi-shop .pi-pack>summary{font-size:13px}
  body.pa-gallery-refinement .pi-world-menu .pi-menu-category{font-size:14px}
  body.pa-gallery-refinement .pi-world-menu .pi-menu-context>header strong{font-size:17px}
  body.pa-gallery-refinement .pi-world-menu .pi-menu-tokens a,body.pa-gallery-refinement .pi-world-menu .pi-menu-paths a,body.pa-gallery-refinement .pi-world-menu .pi-menu-budgets a{font-size:13px}
  body.pa-gallery-refinement .pi-world-menu .pi-menu-context>header p,body.pa-gallery-refinement .pi-world-menu .pi-menu-service p{font-size:14px;line-height:1.8}
  body.pa-gallery-refinement .product-new-page .banner{max-height:none;overflow:hidden}
  body.pa-gallery-refinement .product-new-page .banner>img{max-height:720px;object-fit:contain;object-position:center}
  body.pa-gallery-refinement .product-overview{padding-top:88px}
  body.pa-gallery-refinement .product-overview h1{font-size:26px;font-weight:600;line-height:1.65;margin-bottom:22px!important}
  body.pa-gallery-refinement .product-overview .pr-lg-4>div.mb-4{font-size:17px;line-height:1.95}
  body.pa-gallery-refinement .product-new-page h2{font-size:34px!important;font-weight:600}
  body.pa-gallery-refinement .product-gallery-main{display:grid;place-items:center}
  body.pa-gallery-refinement .product-gallery-image{width:92%;height:92%;margin:auto}
  body.pa-gallery-refinement .product-gallery-thumb{width:64px;height:64px;padding:3px}
}
@media(max-width:991px){body.pa-gallery-refinement .default-btn{min-height:44px}body.pa-gallery-refinement .pi-card-payment p,body.pa-gallery-refinement .pi-login-price{font-size:14px}}
@media(prefers-reduced-motion:reduce){body.pa-gallery-refinement details[data-pack-popover]>p{animation:none}}

/* Keep an entire catalogue card within a comfortable viewport, without scaling text. */
body.pa-gallery-refinement .pi-shop .pi-editorial-badges details[data-pack-popover]>p{inset-inline:0;inset-block-start:calc(100% + 4px);width:auto;max-width:none}
@media(min-width:992px){
  body.pa-gallery-refinement .pi-shop .pw-shell{width:min(1760px,calc(100% - clamp(32px,5vw,112px)))}
  body.pa-gallery-refinement .pi-shop .pw-product-card{--pi-card-height:clamp(540px,calc(100svh - 120px),820px);height:var(--pi-card-height);display:flex;flex-direction:column}
  body.pa-gallery-refinement .pi-shop .pw-product-media{flex:1 1 0;min-height:150px;aspect-ratio:auto}
  body.pa-gallery-refinement .pi-shop .pi-image-link{height:100%;width:100%;aspect-ratio:auto}
  body.pa-gallery-refinement .pi-shop .pi-image-link .pi-gallery-image{width:92%;height:92%;min-height:0;object-fit:contain}
  body.pa-gallery-refinement .pi-shop .pw-product-body{flex:0 0 auto;padding:10px 16px 12px}
  body.pa-gallery-refinement .pi-shop .pi-editorial-badges{min-height:0;gap:5px}
  body.pa-gallery-refinement .pi-shop .pi-card-title{margin-bottom:6px}
  body.pa-gallery-refinement .pi-shop .pi-card-payment{margin:4px 0 2px;min-height:52px}
  body.pa-gallery-refinement .pi-shop .pi-video-preview{margin:3px 0 7px}
  body.pa-gallery-refinement .pi-shop .pi-video-heading{margin-bottom:5px;line-height:1.7}
  body.pa-gallery-refinement .pi-shop .pi-video-player{width:min(100%,calc(clamp(120px,17svh,170px)*16/9));max-width:320px}
  body.pa-gallery-refinement .pi-shop .pw-product-footer{min-height:53px;padding-top:6px}
  body.pa-gallery-refinement .pi-shop .pi-detail{width:44px;height:44px;flex:0 0 44px}
  /* Continue the shared, finer proportions while retaining readable body copy. */
  body.pa-gallery-refinement .main-nav .navbar .navbar-nav>.nav-item>a{font-size:14px;font-weight:600}
  body.pa-gallery-refinement .section-title{margin-bottom:36px}
  body.pa-gallery-refinement .ptb-100{padding-block:82px}
  body.pa-gallery-refinement .pt-100{padding-top:82px}
  body.pa-gallery-refinement .pb-100{padding-bottom:82px}
  body.pa-gallery-refinement .single-blog h3,body.pa-gallery-refinement .single-services h3{font-size:19px}
}
@media(max-width:991px) and (min-width:601px){
  body.pa-gallery-refinement .pi-shop .pw-product-card{height:clamp(540px,calc(100svh - 120px),820px);display:flex;flex-direction:column}
  body.pa-gallery-refinement .pi-shop .pw-product-media{flex:1 1 0;min-height:150px;aspect-ratio:auto}
  body.pa-gallery-refinement .pi-shop .pi-image-link{height:100%;width:100%;aspect-ratio:auto}
  body.pa-gallery-refinement .pi-shop .pi-image-link .pi-gallery-image{height:92%;width:92%;min-height:0;object-fit:contain}
  body.pa-gallery-refinement .pi-shop .pw-product-body{flex:0 0 auto;padding:10px 14px 12px}
  body.pa-gallery-refinement .pi-shop .pi-editorial-badges{min-height:0;gap:5px}
  body.pa-gallery-refinement .pi-shop .pi-video-player{width:min(100%,calc(clamp(120px,17svh,170px)*16/9));max-width:320px}
  body.pa-gallery-refinement .pi-shop .pw-product-footer{min-height:53px;padding-top:6px}
}
@media(max-width:600px){
  body.pa-gallery-refinement .pi-shop .pw-product-card{height:clamp(520px,calc(100svh - 104px),740px);display:flex;flex-direction:column}
  body.pa-gallery-refinement .pi-shop .pw-product-media{flex:1 1 0;min-height:140px;aspect-ratio:auto}
  body.pa-gallery-refinement .pi-shop .pi-image-link{height:100%;width:100%;aspect-ratio:auto}
  body.pa-gallery-refinement .pi-shop .pi-image-link .pi-gallery-image{height:92%;width:92%;min-height:0;object-fit:contain}
  body.pa-gallery-refinement .pi-shop .pw-product-body{flex:0 0 auto;padding:10px 14px 12px}
  body.pa-gallery-refinement .pi-shop .pi-card-title{height:34px;min-height:34px;line-height:34px;font-size:17px;margin-bottom:6px}
  body.pa-gallery-refinement .pi-shop .pi-card-title a{line-height:34px}
  body.pa-gallery-refinement .pi-shop .pi-editorial-badges{min-height:0;gap:5px}
  body.pa-gallery-refinement .pi-shop .pi-card-payment{min-height:52px;margin:4px 0 2px}
  body.pa-gallery-refinement .pi-shop .pi-video-preview{margin:3px 0 7px}
  body.pa-gallery-refinement .pi-shop .pi-video-heading{margin-bottom:5px}
  body.pa-gallery-refinement .pi-shop .pi-video-player{width:min(100%,calc(clamp(108px,17svh,140px)*16/9));max-width:280px}
  body.pa-gallery-refinement .pi-shop .pw-product-footer{min-height:53px;margin-top:0;padding-top:6px}
  body.pa-gallery-refinement .pi-shop .pi-price-number{font-size:27px}
  body.pa-gallery-refinement .pi-shop .pi-price-unit{font-size:14px}
  body.pa-gallery-refinement .pi-shop .pi-detail{width:44px;height:44px;flex:0 0 44px}
}
/* On unusually short windows, keep every control accessible rather than clipping it. */
@media(max-height:619px) and (min-width:601px){
  body.pa-gallery-refinement .pi-shop .pw-product-card{height:auto}
  body.pa-gallery-refinement .pi-shop .pw-product-media{height:200px;flex:none}
}
@media(max-height:619px) and (max-width:600px){
  body.pa-gallery-refinement .pi-shop .pw-product-card{height:auto}
  body.pa-gallery-refinement .pi-shop .pw-product-media{height:180px;flex:none}
}

/* Reserve a stable, near-original width for the externally rendered player. */
body.pa-gallery-refinement .pi-shop .pi-video-player{width:96%;max-width:350px;aspect-ratio:16/9;margin-inline:auto}
@media(max-width:600px) and (min-height:620px) and (max-height:699px){
  body.pa-gallery-refinement .pi-shop .pw-product-media{min-height:100px}
}

/* Let the instrument keep its natural visual prominence; the video keeps its width. */
body.pa-gallery-refinement .pi-shop .pw-product-card{height:auto;min-height:0}
body.pa-gallery-refinement .pi-shop .pw-product-media{flex:none;height:auto;min-height:0;aspect-ratio:1.08}
body.pa-gallery-refinement .pi-shop .pi-image-link{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
body.pa-gallery-refinement .pi-shop .pi-image-link .pi-gallery-image{width:96%;height:96%;min-height:0;object-fit:contain}
body.pa-gallery-refinement .pi-shop .pw-product-body{flex:1 0 auto}
body.pa-gallery-refinement .pi-shop .pw-product-footer{margin-top:auto}
@media(min-width:992px){body.pa-gallery-refinement .pi-shop .pw-product-grid{column-gap:18px}}

/* A stable single badge row, with native horizontal access when space is limited. */
body.pa-gallery-refinement .pi-shop .pi-badge-line{position:relative;z-index:3;min-width:0}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges{position:static;display:flex;flex-wrap:nowrap;align-items:center;gap:5px;height:50px;min-height:50px;box-sizing:border-box;padding:3px 0 8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#c8b7a3 transparent;overscroll-behavior-inline:contain}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges>*{flex:0 0 auto;white-space:nowrap}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges::-webkit-scrollbar{height:5px}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges::-webkit-scrollbar-thumb{background:#c8b7a3;border-radius:10px}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges:focus-visible{outline:2px solid #73917d;outline-offset:2px;border-radius:5px}
/* The containing block stays outside the scroll strip so the pack panel can escape it. */
body.pa-gallery-refinement .pi-shop .pi-editorial-badges details[data-pack-popover]>p{inset-inline:0;inset-block-start:calc(100% + 3px);width:auto;max-width:none}
/* Restore the banner's intrinsic aspect ratio: no horizontal letterboxing or crop. */
body.pa-gallery-refinement .product-new-page .banner{width:100%;max-width:none;max-height:none;padding-inline:0}
body.pa-gallery-refinement .product-new-page .banner>img{width:100%;max-width:100%;height:auto;max-height:none;object-fit:contain;display:block}
/* A small readability increase, scoped to prose rather than catalogue labels. */
body.pa-gallery-refinement .about-content p,body.pa-gallery-refinement .section-title p,body.pa-gallery-refinement .contact-area p,body.pa-gallery-refinement .user-area-style p{font-size:18px;line-height:1.95}
body.pa-gallery-refinement .academy-page .about-content p{font-size:18px;line-height:2.05}
body.pa-gallery-refinement .academy-page .academy-hero p,body.pa-gallery-refinement .academy-page .academy-pricing-note{font-size:17px;line-height:2}
body.pa-gallery-refinement .blog-details-content .article-content p,body.pa-gallery-refinement .terms-conditions p{font-size:19px;line-height:2}
@media(min-width:992px){body.pa-gallery-refinement .main-nav .navbar .navbar-nav>.nav-item>a{font-size:16px;font-weight:600}}
@media(max-width:600px){
  body.pa-gallery-refinement .about-content p,body.pa-gallery-refinement .section-title p,body.pa-gallery-refinement .contact-area p,body.pa-gallery-refinement .user-area-style p,body.pa-gallery-refinement .academy-page .about-content p{font-size:17px}
  body.pa-gallery-refinement .blog-details-content .article-content p,body.pa-gallery-refinement .terms-conditions p{font-size:18px}
}

/* Reserve two compact badge rows so three and four labels keep videos aligned. */
body.pa-gallery-refinement .pi-shop .pi-editorial-badges{display:grid;grid-template-columns:repeat(2,max-content);grid-template-rows:repeat(2,28px);grid-auto-rows:28px;align-items:start;align-content:start;justify-content:start;gap:4px 6px;height:auto;min-height:60px;padding:0;overflow:visible;overscroll-behavior-inline:auto}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges>.pw-insight,body.pa-gallery-refinement .pi-shop .pi-editorial-badges>.pi-status-badge,body.pa-gallery-refinement .pi-shop .pi-editorial-badges>.pi-popularity-badge,body.pa-gallery-refinement .pi-shop .pi-pack>summary{height:28px;min-height:28px;padding:3px 8px;gap:4px;font-size:12px;line-height:20px;justify-self:start}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges>.pi-pack{justify-self:start}
body.pa-gallery-refinement .pi-shop .pi-editorial-badges .pi-badge-icon{width:13px;height:13px;flex-basis:13px}
body.pa-gallery-refinement .pi-shop .pi-popularity-badge .pw-filter-popularity-signal{width:20px;min-width:20px;height:12px;gap:1px}

body.pa-gallery-refinement .pi-shop .pi-editorial-badges details[data-pack-popover]>p{white-space:normal}

/* Fill the first line naturally; keep a second line in reserve for wrapping. */
body.pa-gallery-refinement .pi-shop .pi-editorial-badges{display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;justify-content:flex-start;grid-template:none;gap:4px 6px;height:auto;min-height:60px}
