/* Products-only UX polish: 61.8 / 38.2 proportional hierarchy.
   The ratio is used at spacious breakpoints; compact screens favour readable stacking. */
.pro-collection,.marketplace{--product-space-1:8px;--product-space-2:13px;--product-space-3:21px;--product-space-4:34px;--product-space-5:55px}
.pro-collection{padding-block:clamp(55px,6.5vw,100px) clamp(55px,6vw,89px)}
.pro-heading{grid-template-columns:minmax(0,1.618fr) minmax(280px,1fr);align-items:end;gap:clamp(21px,4vw,55px);margin-bottom:34px;padding-bottom:34px}
.pro-heading h2{font-size:clamp(51px,5.4vw,91px);line-height:1.01;max-width:13ch;text-wrap:balance}
.pro-heading-note{max-width:440px}
.pro-heading-note p+p{margin-top:13px}
.pro-cards{grid-template-columns:minmax(0,1fr);gap:21px}
.pro-card,.pro-card:last-child{grid-column:auto;grid-template-columns:minmax(0,1.618fr) minmax(0,1fr);border-radius:16px;box-shadow:0 9px 30px rgba(31,36,32,.045);transition:box-shadow .25s ease,border-color .25s ease}
.pro-card:hover{border-color:#b8afa4;box-shadow:0 19px 45px rgba(31,36,32,.1)}
.pro-card:nth-child(even) .pro-card-window{order:2}
.pro-card:nth-child(even) .pro-card-content{order:1}
.pro-card-window,.pro-card:last-child .pro-card-window{height:100%;min-height:385px}
.pro-card-content,.pro-card:last-child .pro-card-content{padding:clamp(25px,3vw,45px);min-height:385px;gap:17px}
.pro-card-content>p:not(.pro-commercial-note){font-size:clamp(13px,1.1vw,15px);line-height:1.7}
.pro-card-foot{align-items:center;flex-wrap:wrap;gap:16px}
.pro-link,.pro-preview-hit,.pro-bottom a{transition:color .2s ease,background-color .2s ease,transform .2s ease}
.pro-link{min-height:44px;display:inline-flex;align-items:center}
.pro-link:hover,.pro-bottom a:hover{color:var(--text-accent-on-light)}
.pro-bottom{gap:34px}
.pro-bottom>div{flex:1.618}
.pro-bottom>a{flex:1;white-space:normal}
.marketplace .mp-bound{width:min(1390px,calc(100% - 64px))}
.mp-intro .mp-bound{padding-top:34px;padding-bottom:34px}
.mp-intro-inner{grid-template-columns:minmax(0,1.618fr) minmax(0,1fr);gap:clamp(21px,3vw,55px);min-height:295px}
.mp-intro-copy h1{font-size:clamp(45px,5vw,78px);line-height:1.03;text-wrap:balance;color:var(--text-on-light)}
.mp-intro-copy p{max-width:59ch;line-height:1.75}
.mp-hero-preview{max-width:100%;justify-self:center}
.mp-search-wrap{max-width:100%;min-height:60px;border-radius:13px}
.mp-search-button,.mp-type-tab,.mp-filters-open,#mp-sort,.mp-chip,.mp-empty button{min-height:44px}
.mp-library{padding-block:55px 89px}
.mp-category-row{display:grid;grid-template-columns:minmax(0,1.618fr) minmax(0,1fr);align-items:end;gap:34px}
.mp-category-row p{max-width:38ch;text-align:left;font-size:13px;line-height:1.6}
.mp-type-tabs{gap:8px;padding-bottom:17px;margin-bottom:25px}
.mp-workspace{grid-template-columns:minmax(225px, .382fr) minmax(0,1fr);gap:21px}
.mp-sidebar{border-radius:14px;top:16px}
.mp-option{min-height:33px;font-size:12px}
.mp-option input{width:17px;height:17px}
.mp-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
.mp-card{border-radius:15px}
.mp-card-link{height:100%;display:flex;flex-direction:column}
.mp-card-visual{aspect-ratio:1.618}
.mp-card-body{flex:1;min-height:188px;padding:21px;gap:9px}
.mp-card-title{font-size:21px;line-height:1.18;color:var(--text-on-light)}
.mp-card-desc{font-size:13px;line-height:1.6}
.mp-visual-overlay{opacity:1;transform:none}
.mp-card:focus-within{border-color:#c27c53}
.mp-after .mp-bound{display:grid;grid-template-columns:minmax(0,1.618fr) minmax(0,1fr);align-items:end;gap:34px}
.mp-after-links{min-width:0}
@media(min-width:1600px){.mp-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){
 .pro-heading{grid-template-columns:minmax(0,1.618fr) minmax(0,1fr)}
 .pro-card,.pro-card:last-child{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
 .pro-card-window,.pro-card:last-child .pro-card-window{min-height:335px}
 .pro-card-content,.pro-card:last-child .pro-card-content{min-height:335px}
 .mp-workspace{grid-template-columns:220px minmax(0,1fr);gap:17px}
 .mp-results{gap:13px}
}
@media(max-width:850px){
 .pro-heading{grid-template-columns:1fr;gap:21px}
 .pro-heading-note{max-width:70ch}
 .pro-card,.pro-card:last-child{grid-template-columns:1fr}
 .pro-card:nth-child(even) .pro-card-window,.pro-card:nth-child(even) .pro-card-content{order:initial}
 .pro-card-window,.pro-card:last-child .pro-card-window{height:340px;min-height:0}
 .pro-card-content,.pro-card:last-child .pro-card-content{min-height:0;padding:26px}
 .marketplace .mp-bound{width:calc(100% - 42px)}
 .mp-intro-inner{grid-template-columns:minmax(0,1.618fr) minmax(0,1fr);gap:13px;min-height:235px}
 .mp-workspace{display:block}
 .mp-category-row{grid-template-columns:1fr;gap:13px}
 .mp-category-row p{max-width:68ch}
 .mp-after .mp-bound{grid-template-columns:1fr;gap:21px}
 .mp-after-links{width:100%}
 .mp-results{gap:17px}
}
@media(max-width:650px){
 .pro-bound,.marketplace .mp-bound{width:calc(100% - 34px)}
 .pro-heading{padding-bottom:26px;margin-bottom:21px}
 .pro-heading h2{font-size:clamp(42px,11vw,61px);line-height:1.03}
 .pro-heading-note p{font-size:14px}
 .pro-cards{gap:17px}
 .pro-card,.pro-card:last-child{border-radius:13px}
 .pro-card-window,.pro-card:last-child .pro-card-window{height:265px}
 .pro-card-content,.pro-card:last-child .pro-card-content{padding:21px;gap:13px}
 .pro-card h3{font-size:clamp(36px,10vw,46px)}
 .pro-card-foot{align-items:center}
 .pro-link{min-height:44px}
 .pro-bottom{margin-top:25px}
 .mp-intro .mp-bound{padding-block:26px 34px}
 .mp-intro-inner{display:block;min-height:0}
 .mp-intro-copy h1{font-size:clamp(40px,10vw,58px);margin:17px 0}
 .mp-intro-copy p{font-size:14px;line-height:1.65}
 .mp-hero-preview{display:none}
 .mp-search-wrap{min-height:56px}
 .mp-search-button{min-height:44px}
 .mp-library{padding-block:34px 55px}
 .mp-type-tabs{margin-inline:-17px;padding-inline:17px;scroll-padding-inline:17px}
 .mp-type-tab{min-height:44px}
 .mp-filters-open{min-height:44px}
 .mp-results{grid-template-columns:1fr;gap:17px}
 .mp-card-visual{aspect-ratio:1.618}
 .mp-card-body{min-height:0;padding:21px}
 .mp-card-title{font-size:22px}
 .mp-card-desc{font-size:13px}
 .mp-results-toolbar{align-items:center}
 #mp-sort{min-height:44px}
 .mp-after{padding-block:55px}
}
@media(max-width:360px){
 .pro-card-foot{align-items:stretch;flex-direction:column}
 .pro-link{justify-content:flex-start}
 .mp-results-toolbar{align-items:flex-start;flex-direction:column}
 .mp-sort-label{width:100%;justify-content:space-between}
 #mp-sort{flex:1;max-width:70%}
}
@media(hover:none){.pro-card:hover,.mp-card:hover{transform:none}.mp-visual-overlay{opacity:1}}
@media(prefers-reduced-motion:reduce){.pro-card,.pro-link,.pro-preview-hit,.pro-bottom a{transition:none!important}}


/* Products discovery v2: progressive filters rather than a permanently crowded sidebar. */
.mp-intro-cta{
 display:inline-flex;align-items:center;justify-content:center;gap:12px;
 min-height:49px;margin-top:22px;padding:12px 19px;border:1px solid #262e2b;
 border-radius:10px;background:#262e2b;color:#fff!important;text-decoration:none;
 font-size:13px;font-weight:750;letter-spacing:-.015em;
 transition:background .18s ease,transform .18s ease;
}
.mp-intro-cta .ui-icon{width:16px;height:16px}
.mp-intro-cta:hover{background:#ac582d;transform:translateY(-2px);border-color:#ac582d}
.mp-discovery-controls{
 display:grid;grid-template-columns:minmax(0,1fr) 173px;gap:13px;
 align-items:stretch;margin-bottom:19px;
}
.mp-discovery-controls .mp-search-wrap{width:100%;min-height:57px;margin:0;box-shadow:0 6px 23px rgba(24,35,27,.045)}
.mp-discovery-controls #mp-search{font-size:14px}
.mp-discovery-controls #mp-search::placeholder{color:#6d756e;opacity:1}
.mp-discovery-controls .mp-search-button{min-height:42px;font-size:12px}
.mp-discovery-controls .mp-filters-open{
 display:inline-flex;align-items:center;justify-content:center;gap:11px;
 width:100%;min-height:57px;padding:12px 15px;border:1px solid #2c3530;
 border-radius:12px;background:#2c3530;color:#fff;font-size:13px;font-weight:750;
 letter-spacing:-.01em;white-space:nowrap;
 box-shadow:0 4px 17px rgba(26,38,31,.09);
 transition:background .18s ease,transform .18s ease;
}
.mp-discovery-controls .mp-filters-open:hover{background:#414a42;transform:translateY(-1px)}
.mp-discovery-controls .mp-filters-open svg{width:19px;height:19px;flex:0 0 19px}
.mp-discovery-controls #mp-mobile-filter-count{
 width:23px;height:23px;min-width:23px;border-radius:30px;
 background:#d6743d;color:#211d1a;font-size:12px;font-weight:850;
 display:inline-grid;place-items:center;
}
.mp-discovery-controls #mp-mobile-filter-count[hidden]{display:none!important}
.mp-type-tabs{gap:10px;padding-bottom:19px;margin-bottom:25px}
.mp-type-tab{border-radius:11px;font-size:13px;letter-spacing:-.01em;min-height:47px}
.mp-type-tab span{font-size:11px}
.mp-type-tab[aria-pressed=true]{box-shadow:0 6px 17px rgba(29,35,30,.1)}
.mp-workspace{display:block}
.mp-results-toolbar{min-height:45px;margin-bottom:16px}
.mp-results-toolbar p{font-size:13px;line-height:1.5}
.mp-results-toolbar strong{font-size:15px;font-weight:850;color:var(--text-on-light)}
.mp-sort-label{font-size:12px;font-weight:650}
#mp-sort{font-size:12px;border-radius:10px;min-height:46px;padding:10px 12px}
.mp-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.mp-card{border-radius:15px;box-shadow:0 5px 19px rgba(22,36,23,.055)}
.mp-card-body{gap:10px;min-height:200px}
.mp-card-meta{font-size:11px;line-height:1.4}
.mp-card-title{font-size:22px}
.mp-card-desc{font-size:13px;line-height:1.65;display:block;overflow:visible;min-height:0}
.mp-card-tag{font-size:10px;padding:7px 9px;border-radius:7px}
.mp-active-filters{margin:0 0 13px;gap:10px}
.mp-chip{border-radius:9px;min-height:40px;font-size:12px;padding:9px 13px}
.mp-reset-all{font-size:12px;min-height:40px;padding:8px}
.mp-empty{padding:55px 20px}
.mp-library-end{font-size:12px}

/* A single native dialog on both desktop and mobile: no nested scrollbars. */
.mp-filter-dialog{
 position:fixed;inset:0 0 0 auto;display:none;flex-direction:column;
 width:min(455px,100vw);height:100dvh;max-width:none;max-height:100dvh;
 padding:0;margin:0;border:0;border-radius:22px 0 0 22px;
 overflow:hidden;color:#252d29;background:#f8f8f5;
 box-shadow:-22px 0 70px rgba(13,24,19,.22);
}
.mp-filter-dialog[open]{display:flex}
.mp-filter-dialog::backdrop{background:rgba(17,27,23,.55);backdrop-filter:blur(5px)}
.mp-dialog-head{
 display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:15px;
 background:#fff;padding:28px 29px 24px;border-bottom:1px solid #e2e6de;
}
.mp-dialog-kicker{display:block;color:#ac582d;font-size:10px;font-weight:800;letter-spacing:.16em;margin-bottom:8px}
.mp-dialog-head h3{font:400 clamp(27px,3vw,36px)/1.05 var(--serif);letter-spacing:-.045em;color:#252d29;margin:0 0 7px}
.mp-dialog-head p{font-size:12px;line-height:1.55;color:#5d665e;margin:0;max-width:32ch}
.mp-dialog-head #mp-close-filters{
 display:grid;place-items:center;flex:0 0 44px;
 width:44px;height:44px;padding:0;border:1px solid #e0e4de;
 border-radius:11px;color:#29332d;background:#f7f8f6;font-size:27px;line-height:1;
}
.mp-dialog-head #mp-close-filters:hover{background:#eef0eb}
.mp-dialog-body{
 flex:1 1 auto;min-height:0;overscroll-behavior:contain;
 overflow-y:auto;scrollbar-gutter:stable;
}
.mp-dialog-body .mp-sidebar{
 width:100%;position:static;max-height:none;overflow:visible;
 padding:23px 27px 28px;border:0;border-radius:0;background:transparent;box-shadow:none;
}
.mp-filter-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:19px}
.mp-filter-top h4{font-size:13px;font-weight:800;letter-spacing:-.01em;color:#28332c;margin:0}
.mp-clear{font-size:12px;min-height:40px;padding:8px 10px;border-radius:8px}
.mp-clear:hover{background:#fff1e7;text-decoration:none}
.mp-facet{border-top:1px solid #e3e8df;padding:0}
.mp-facet summary{
 display:flex;align-items:center;gap:12px;padding:19px 1px;
 min-height:76px;font-size:14px;line-height:1.35;
}
.mp-facet-heading{min-width:0;display:flex;flex:1;flex-direction:column;gap:3px}
.mp-facet-heading strong{font-size:14px;font-weight:800;letter-spacing:-.012em;color:#263029}
.mp-facet-heading small{font-size:11px;font-weight:450;line-height:1.35;color:#536053}
.mp-facet .mp-chevron{width:18px;height:18px;color:#a65a35}
.mp-facet-selected{
 display:grid;place-items:center;min-width:23px;height:23px;
 border-radius:50px;background:#a85731;color:#fff;font-size:11px;font-weight:800;
}
.mp-facet-selected[hidden]{display:none!important}
.mp-facet[open]>summary{padding-bottom:13px}
.mp-options{display:grid;grid-template-columns:1fr;gap:6px;max-height:none;overflow:visible;padding:2px 0 21px}
.mp-option{
 display:flex;align-items:center;gap:13px;min-height:47px;
 padding:10px 12px;border:1px solid transparent;border-radius:10px;
 color:#3c4940;font-size:13px;line-height:1.35;
 transition:border-color .16s ease,background .16s ease;
}
.mp-option:hover{background:#fff;border-color:#e4e9e0;color:#26332b}
.mp-option:has(input:checked){border-color:#e4bca1;background:#fff5ed;color:#482919}
.mp-option input{
 appearance:none;-webkit-appearance:none;display:grid;place-content:center;
 width:20px;height:20px;flex:0 0 20px;margin:0;
 border:1.5px solid #adb8ad;border-radius:6px;background:#fff;
 cursor:pointer;transition:background .15s ease,border .15s ease;
}
.mp-option input:checked{background:#a85731;border-color:#a85731}
.mp-option input:checked::after{
 content:"";display:block;width:10px;height:6px;margin-top:-3px;
 border-left:2px solid white;border-bottom:2px solid white;transform:rotate(-45deg);
}
.mp-option input:focus-visible{outline:3px solid #cb7440;outline-offset:3px}
.mp-option-name{flex:1;min-width:0;font-weight:650;overflow-wrap:anywhere}
.mp-option-count{
 min-width:27px;padding:3px 6px;border-radius:7px;background:#edf0ea;
 text-align:center;font-size:11px;font-weight:800;color:#556457;
}
.mp-option:has(input:checked) .mp-option-count{background:#f7dfce;color:#73401f}
.mp-option-extra[hidden]{display:none!important}
.mp-more{
 display:flex;align-items:center;justify-content:space-between;gap:12px;
 width:100%;min-height:44px;padding:8px 13px;
 margin-top:5px;border:1px dashed #d4dbd0;border-radius:10px;
 background:#fff;color:#a6532e;font-weight:750;font-size:12px;
}
.mp-more:hover{border-color:#bf916f;background:#fff9f4}
.mp-more span{font-size:18px;line-height:1}
.mp-filter-bottom{
 border-top:1px solid #e4e8df;padding:20px 2px 5px!important;
 color:#6c766b;font-size:12px;line-height:1.6;
}
.mp-dialog-foot{
 display:block;flex:0 0 auto;padding:16px 27px max(18px, env(safe-area-inset-bottom));
 background:#fff;border-top:1px solid #e0e5de;
 box-shadow:0 -10px 22px rgba(23,37,29,.035);
}
#mp-apply-filters{
 display:flex;align-items:center;justify-content:center;gap:7px;
 width:100%;min-height:53px;border:0;border-radius:11px;
 background:#28342e;color:white;font-weight:800;font-size:14px;
}
#mp-apply-filters:hover{background:#9f4e2b}
#mp-apply-filters .ui-icon{width:17px;height:17px;margin-left:4px}
@media(min-width:1500px){.mp-results{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1190px){.mp-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media(max-width:850px){
 .mp-workspace{display:block}
 .mp-filter-dialog{inset:auto 0 0 0;width:100vw;height:min(90dvh,900px);max-height:95dvh;border-radius:22px 22px 0 0;margin:0}
 .mp-dialog-head{padding:22px 23px 20px}
 .mp-dialog-body .mp-sidebar{padding:17px 23px 24px}
 .mp-dialog-foot{padding-inline:23px}
 .mp-discovery-controls{grid-template-columns:minmax(0,1fr) 160px}
}
@media(max-width:650px){
 .mp-category-row{gap:8px}
 .mp-category-row h2{font-size:clamp(32px,8vw,42px)}
 .mp-category-row p{font-size:13px}
 .mp-discovery-controls{grid-template-columns:1fr;gap:10px}
 .mp-discovery-controls .mp-search-wrap{min-height:55px}
 .mp-discovery-controls #mp-search{font-size:14px}
 .mp-discovery-controls .mp-search-button{padding-inline:14px;min-width:44px}
 .mp-discovery-controls .mp-filters-open{justify-content:center;min-height:49px}
 .mp-type-tabs{margin-bottom:18px}
 .mp-type-tab{font-size:12px;padding-inline:13px}
 .mp-results{grid-template-columns:1fr;gap:17px}
 .mp-card-body{min-height:0;padding:21px}
 .mp-card-desc{font-size:14px}
 .mp-results-toolbar{align-items:stretch}
 .mp-dialog-head{padding:21px 19px 18px}
 .mp-dialog-head h3{font-size:32px}
 .mp-dialog-body .mp-sidebar{padding:15px 18px 20px}
 .mp-dialog-foot{padding:13px 18px max(15px,env(safe-area-inset-bottom))}
 .mp-filter-dialog{height:min(93dvh,940px)}
}
@media(max-width:380px){
 .mp-discovery-controls .mp-search-button{font-size:0}
 .mp-discovery-controls .mp-search-button .ui-icon{width:18px;height:18px}
 .mp-dialog-head h3{font-size:29px}
 .mp-dialog-head #mp-close-filters{flex-basis:42px;width:42px;height:42px}
 .mp-results-toolbar{flex-direction:column;align-items:stretch}
 .mp-sort-label{justify-content:space-between}
}
@media(prefers-reduced-motion:reduce){
 .mp-intro-cta,.mp-discovery-controls .mp-filters-open,.mp-option,.mp-option input{transition:none!important;transform:none!important}
}
