/* JB Boutique Phase 3: premium discovery without third-party libraries. */
.jbb-p3-kicker{display:block;font:800 10px/1.5 Arial,sans-serif;letter-spacing:.17em;color:#ac4f61;text-transform:uppercase}
.jbb-p3-page{background:#faf8f5;color:#2b2623;overflow:clip}
.jbb-p3-page *{box-sizing:border-box}
.jbb-p3-page h1,.jbb-p3-page h2,.jbb-p3-page h3,.jbb-p3-complementary h2{
 font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.05em
}
.jbb-p3-page h1 em,.jbb-p3-page h2 em,.jbb-p3-complementary h2 em{color:#a44756;font-style:italic}
.jbb-p3-page-hero{background:#f2ece5;border-bottom:1px solid #e9e0d7}
.jbb-p3-page-hero h1{font-size:clamp(51px,5.8vw,82px);line-height:1.07;margin:16px 0 16px}
.jbb-p3-page-hero p{font-size:14px;color:#6c6158;line-height:1.8;max-width:600px}
.jbb-p3-dark-link,.jbb-p3-light-link{
 display:inline-flex;align-items:center;justify-content:space-between;gap:35px;
 padding:15px 20px;background:#2e2522;color:#fff!important;
 font-size:11px;font-weight:800;letter-spacing:.055em;text-decoration:none
}
.jbb-p3-dark-link:hover{background:#a3485a}
.jbb-p3-looks-hero{display:grid;grid-template-columns:1.03fr .97fr;gap:45px;min-height:450px;align-items:center;padding-block:46px}
.jbb-p3-looks-hero>div{padding-block:22px}
.jbb-p3-looks-hero p{margin-bottom:25px}
.jbb-p3-looks-hero>figure{margin:0 auto;max-width:460px;max-height:490px;width:100%;display:flex;flex-direction:column;justify-content:center;background:#fff;padding:9px;box-shadow:0 15px 39px #30201a16}
.jbb-p3-looks-hero>figure img{display:block;width:100%;height:auto;max-height:443px;object-fit:contain!important}
.jbb-p3-looks-hero figcaption{text-align:center;font:800 9px/1.35 Arial,sans-serif;letter-spacing:.14em;color:#766a62;padding:10px 6px 4px}
.jbb-p3-looks-section{padding-block:78px 88px}
.jbb-p3-title-row{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:30px}
.jbb-p3-title-row h2{font-size:clamp(39px,4.5vw,60px);margin:9px 0 0}
.jbb-p3-title-row>p{max-width:370px;font-size:13px;line-height:1.7;color:#736860;margin:0}
.jbb-p3-look-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.jbb-p3-look{background:#fff;border:1px solid #eae1d8;box-shadow:0 9px 25px #2b1c1410;min-width:0}
.jbb-p3-look>header{padding:25px 25px 16px}
.jbb-p3-look h3{font-size:clamp(28px,3vw,38px);line-height:1.14;margin:9px 0}
.jbb-p3-look>header p{margin:0;font-size:12px;line-height:1.75;color:#72675f;min-height:41px}
.jbb-p3-look-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0 17px 18px}
.jbb-p3-look-piece{position:relative;min-width:0;background:#f9f6f2}
.jbb-p3-look-piece .jbb-p3-look-picture{display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;background:#f1ece6;padding:6px}
.jbb-p3-look-piece .jbb-p3-look-picture img{display:block;width:100%;height:100%;object-fit:contain!important}
.jbb-p3-look-piece>div{padding:11px 10px 13px}
.jbb-p3-look-name{display:block;color:#332b27!important;font-size:11px;line-height:1.45;font-weight:750;min-height:44px}
.jbb-p3-look-price{display:block;font-size:11px;font-weight:800;color:#a2495a;margin-top:8px}
.jbb-p3-piece-cta{display:inline-block;font-size:10px;font-weight:800;color:#6c5952!important;text-decoration:underline;text-underline-offset:3px;margin-top:9px}
.jbb-p3-look>footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 24px;background:#f5f0ea;border-top:1px solid #eae2db}
.jbb-p3-look>footer span{font-size:10px;color:#72665d;font-weight:700}
.jbb-p3-look>footer a{font-size:10px;font-weight:800;color:#a34253!important}
.jbb-p3-looks-finish{background:#312724;color:#fff;text-align:center;padding:63px 0}
.jbb-p3-looks-finish .jbb-p3-kicker{color:#e5bda9}
.jbb-p3-looks-finish h2{font-size:clamp(39px,4.8vw,63px);margin:11px 0}
.jbb-p3-looks-finish h2 em{color:#dfbba4}
.jbb-p3-looks-finish p{font-size:13px;line-height:1.75;color:#e4d9d1;max-width:600px;margin:0 auto 24px}
.jbb-p3-light-link{background:#f7f2ed;color:#2b2421!important}
.jbb-p3-simple-link{display:inline-flex;margin:15px 12px;font-size:11px;font-weight:800;color:#fff!important;border-bottom:1px solid #fff8}
.jbb-p3-heart{
 position:absolute;top:10px;right:10px;z-index:16;display:inline-flex;align-items:center;justify-content:center;
 width:37px;height:37px;border-radius:50%;border:1px solid #e6dcd1;background:#fffefa;
 color:#46352f;cursor:pointer;box-shadow:0 3px 14px #30201817;transition:transform .17s,background .17s,color .17s;
 padding:0!important;min-height:0;max-width:none
}
.jbb-p3-heart:hover{transform:scale(1.07);color:#ab4355;border-color:#b55869}
.jbb-p3-heart.is-saved,.jbb-p3-heart[aria-pressed="true"]{color:#fff!important;background:#a74455;border-color:#a74455}
.jbb-p3-heart.is-saved svg,.jbb-p3-heart[aria-pressed="true"] svg{fill:currentColor}
.jbb-p3-heart:focus-visible{outline:3px solid #ac6371;outline-offset:3px}
.jbb-p3-look-piece .jbb-p3-heart{width:30px;height:30px;top:5px;right:5px}
.jbb-p3-look-piece .jbb-p3-heart svg{width:15px;height:15px}
.jbal-product-card,.jbw-product-card,.jbb-home-product-card,
.woocommerce ul.products li.product{position:relative}
.jbb-p3-product-actions{display:flex;align-items:center;gap:12px;margin:8px 0 13px}
.jbb-p3-product-actions .jbb-p3-heart{position:static;width:35px;height:35px;flex:none}
.jbb-p3-saved-link{font-size:11px!important;color:#855061!important;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.jbb-p3-saved-hero>.jbal-wrap{padding-block:70px 75px}
.jbb-p3-saved-section{padding-block:55px 95px;min-height:440px}
.jbb-p3-saved-switch{display:flex;align-items:center;gap:10px;margin-bottom:36px;border-bottom:1px solid #e3d8ce}
.jbb-p3-saved-switch button{appearance:none;border:none;background:transparent;color:#786961;cursor:pointer;font-weight:750;font-size:12px;padding:14px 19px 16px;border-bottom:2px solid transparent;letter-spacing:.035em}
.jbb-p3-saved-switch button[aria-selected="true"]{border-color:#a34254;color:#332724}
.jbb-p3-saved-switch span{display:inline-grid;place-items:center;margin-left:7px;font-size:10px;background:#eee7df;color:#574941;border-radius:10px;min-width:23px;height:23px}
.jbb-p3-saved-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px}
.jbb-p3-saved-head h2{font-size:clamp(30px,3.5vw,47px);margin:0}
.jbb-p3-clear{border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;font-weight:750;color:#a34a5d;font-size:11px;cursor:pointer}
.jbb-p3-saved-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;min-height:0}
.jbb-p3-saved-card{min-width:0;position:relative;background:#fff;border:1px solid #eee5dc}
.jbb-p3-saved-image{display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;padding:8px;background:#f3eee8}
.jbb-p3-saved-image img{display:block;width:100%;height:100%;object-fit:contain!important}
.jbb-p3-saved-info{display:flex;flex-direction:column;gap:8px;padding:13px 14px 17px}
.jbb-p3-saved-info>a{font-weight:750;font-size:12px;color:#322723;line-height:1.45}
.jbb-p3-saved-price{font-size:12px;font-weight:800;color:#a34857}
.jbb-p3-instock{font-size:10px;color:#586956}
.jbb-p3-outstock{font-size:10px;color:#9c6b53}
.jbb-p3-empty{text-align:center;padding:55px 25px;border:1px dashed #d9cfc5;color:#72675e}
.jbb-p3-empty[hidden],.jbb-p3-saved-section [hidden]{display:none!important}
.jbb-p3-empty a{display:inline-block;margin-top:11px;font-weight:800;font-size:11px;color:#9e4452!important;text-decoration:underline}
.jbb-p3-loading{grid-column:1/-1;margin:20px 0;color:#777;font-size:12px}
.jbb-p3-search-form{position:relative}
.jbb-p3-search-results{position:absolute;z-index:300;top:100%;left:0;right:0;max-height:430px;overflow-y:auto;background:#fff;border:1px solid #e6ddd4;box-shadow:0 16px 43px #29191425;text-align:left;min-width:260px;border-radius:5px;padding:9px}
.jbb-p3-search-results[hidden]{display:none!important}
.jbb-p3-search-title{font:800 9px/1.35 Arial,sans-serif;letter-spacing:.095em;color:#a45061;margin:4px 5px 12px}
.jbb-p3-search-empty{font-size:12px;color:#776d66;padding:10px}
.jbb-p3-search-hit{display:flex;align-items:center;gap:12px;text-decoration:none;padding:8px!important;border-radius:4px;color:#332921!important}
.jbb-p3-search-hit:hover{background:#faf5f0}
.jbb-p3-search-hit img{display:block;width:54px;height:66px;object-fit:contain;background:#f4efe9;flex:none}
.jbb-p3-search-hit span{min-width:0;display:flex;flex-direction:column;gap:6px}
.jbb-p3-search-hit strong{font-size:11px;line-height:1.45;color:#352924}
.jbb-p3-search-hit small{font-size:10px;color:#98616c}
.jbb-p3-complementary{padding:55px 0 65px;border-top:1px solid #e9e2d8}
.jbb-p3-complementary>header{margin-bottom:24px}
.jbb-p3-complementary h2{font-size:clamp(32px,4vw,50px);margin:7px 0 12px}
.jbb-p3-complementary>header p{font-size:12px;line-height:1.7;color:#72685e;max-width:580px}
.jbb-p3-rec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.jbb-p3-rec-card{position:relative;background:#fff;border:1px solid #ebe3db;min-width:0}
.jbb-p3-rec-card>a{display:flex;flex-direction:column;color:#342924!important;text-decoration:none}
.jbb-p3-rec-card img{width:100%;aspect-ratio:3/4;object-fit:contain!important;background:#f5f0eb;padding:8px;box-sizing:border-box}
.jbb-p3-rec-card strong{display:block;padding:12px 11px 5px;font-size:11px;line-height:1.5;min-height:46px}
.jbb-p3-rec-card>a>span{font-size:12px;font-weight:800;color:#a34554;padding:3px 11px 15px}
.jbb-p3-underlink{display:inline-block;margin-top:20px;font-size:11px;font-weight:800;color:#a04758!important;text-decoration:underline;text-underline-offset:3px}
.jbb-p3-fit-guide{border:1px solid #e7ded5;border-radius:4px;margin:16px 0 22px;padding:0;background:#faf7f4}
.jbb-p3-fit-guide summary{padding:14px 16px;cursor:pointer;font-weight:800;font-size:12px;color:#42342f;display:flex;justify-content:space-between;align-items:center;list-style:none}
.jbb-p3-fit-guide summary::-webkit-details-marker{display:none}
.jbb-p3-fit-guide summary span{color:#a04b5b;font-size:18px}
.jbb-p3-fit-guide[open] summary{border-bottom:1px solid #e9e0d7}
.jbb-p3-fit-guide>div{padding:11px 16px 16px}
.jbb-p3-fit-guide p{font-size:11px;line-height:1.65;color:#76665b;margin:9px 0}
.jbb-p3-fit-guide p strong{color:#44352d}
.jbb-p3-fit-guide a{color:#974254!important;text-decoration:underline}
.jbb-p3-size-list{display:flex;flex-wrap:wrap;gap:6px}
.jbb-p3-size-list span{padding:5px 7px;border:1px solid #e4d8cc;border-radius:4px;background:#fff;color:#59473d;font-size:10px}
.jbb-p3-fit-guide .jbb-p3-availability{color:#526553;font-weight:750;border-top:1px dashed #e3d8ce;padding-top:9px}
.jbal-shop-fields .jbb-p3-filter-label{display:block;margin-top:7px;font-size:11px;font-weight:750;color:#4c3e35}
.jbal-shop-fields .jbb-p3-filter-label select{display:block;width:100%;margin-top:7px}
.jbal-shop-fields .jbb-p3-stock-checkbox{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:750;padding:12px 0}
.jbal-shop-fields .jbb-p3-stock-checkbox input{width:17px;height:17px;flex:none}
.jbb-p3-filter-hint{font-size:10px;color:#7c7068;line-height:1.6;margin:2px 0 8px}
.jbb-p3-home-link{display:inline-flex;align-items:center;gap:17px;background:#2c2421;color:#fff!important;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.065em;padding:15px 19px}
.jbb-p3-home-feature{background:#f1e9e2;padding:45px 0;border-top:1px solid #e6dcd2}
.jbb-p3-home-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.jbb-p3-home-inner h2{font:400 clamp(30px,3.8vw,49px)/1.15 Georgia,serif;letter-spacing:-.05em;margin:9px 0}
.jbb-p3-home-inner h2 em{font-style:italic;color:#a34c5d}
.jbb-p3-home-inner p{font-size:12px;color:#6b5a51;max-width:610px;line-height:1.75;margin:0}
@media(max-width:1050px){
 .jbb-p3-look-grid{gap:15px}.jbb-p3-look>header{padding:19px 18px 14px}
 .jbb-p3-look-items{padding:0 10px 14px;gap:6px}
 .jbb-p3-look-piece>div{padding:9px 7px 12px}
 .jbb-p3-saved-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .jbb-p3-rec-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:790px){
 .jbb-p3-looks-hero{grid-template-columns:1fr;gap:20px;padding-block:38px}
 .jbb-p3-looks-hero>figure{width:min(100%,365px)}
 .jbb-p3-look-grid{grid-template-columns:1fr}
 .jbb-p3-look-items{gap:12px;padding:0 17px 18px}
 .jbb-p3-look-piece>div{padding:12px}
 .jbb-p3-title-row{flex-direction:column;align-items:start;gap:11px}
 .jbb-p3-title-row>p{max-width:100%}
 .jbb-p3-home-inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
 .jbb-p3-page-hero h1{font-size:clamp(43px,9vw,58px)}
 .jbb-p3-looks-hero{padding-block:32px}
 .jbb-p3-looks-section{padding-block:52px 60px}
 .jbb-p3-title-row h2{font-size:37px}
 .jbb-p3-look h3{font-size:30px}
 .jbb-p3-look-items{gap:7px;padding:0 9px 13px}
 .jbb-p3-look-piece>div{padding:9px}
 .jbb-p3-look-name{font-size:10px;min-height:46px}
 .jbb-p3-look-price{font-size:10px}
 .jbb-p3-piece-cta{font-size:9px}
 .jbb-p3-look>footer{padding:13px 14px;flex-wrap:wrap}
 .jbb-p3-looks-finish{padding:45px 0}
 .jbb-p3-saved-hero>.jbal-wrap{padding-block:46px}
 .jbb-p3-saved-section{padding-block:36px 60px}
 .jbb-p3-saved-grid,.jbb-p3-rec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .jbb-p3-saved-info{padding:11px 9px}
 .jbb-p3-saved-switch button{padding:12px 9px;font-size:11px}
 .jbb-p3-saved-head h2{font-size:30px}
 .jbb-p3-complementary{padding-block:39px}
 .jbb-p3-complementary h2{font-size:35px}
 .jbb-p3-home-feature{padding:32px 0}
 .jbb-p3-heart{width:34px;height:34px}
 .jbb-p3-search-results{min-width:0;max-height:350px}
}
@media(max-width:370px){
 .jbb-p3-look-items{grid-template-columns:repeat(2,minmax(0,1fr))}
 .jbb-p3-look-piece:last-child:nth-child(odd){grid-column:span 2}
 .jbb-p3-look-piece:last-child:nth-child(odd) .jbb-p3-look-picture{max-height:245px}
}
@media(prefers-reduced-motion:reduce){
 .jbb-p3-heart,.jbb-p3-look-piece,.jbb-p3-rec-card{transition:none!important;animation:none!important}
}

/* Women's Boutique collection refinements — native attribute selectors. */
.jbw-boutique .jbw-p3-filterbar{
 display:flex;align-items:end;gap:12px;flex-wrap:wrap;
 padding:12px 0 19px;margin:-9px 0 24px;border-bottom:1px solid #e8ded4
}
.jbw-boutique .jbw-p3-filterbar>label:not(.jbw-p3-check){
 display:flex;flex-direction:column;gap:6px;flex:1 1 155px;max-width:240px;
 font-size:11px;font-weight:800;color:#5e4e46
}
.jbw-boutique .jbw-p3-filterbar select{
 width:100%;min-height:40px;padding:8px 10px;
 background:#fff;border:1px solid #ddd2c8;border-radius:4px;
 color:#382d28;font:600 11px/1.35 Arial,sans-serif
}
.jbw-boutique .jbw-p3-check{
 display:flex;align-items:center;gap:8px;min-height:40px;
 font-size:11px;font-weight:750;color:#584b42
}
.jbw-boutique .jbw-p3-check input{width:17px;height:17px}
.jbw-boutique .jbw-p3-filterbar .jbw-sort-submit{padding:12px 15px}
.jbw-boutique .jbw-p3-clear{
 display:inline-flex;align-items:center;min-height:40px;
 font-size:11px;font-weight:800;color:#9d4051;text-decoration:underline
}
@media(max-width:540px){
 .jbw-boutique .jbw-p3-filterbar{gap:9px}
 .jbw-boutique .jbw-p3-filterbar>label:not(.jbw-p3-check){flex:1 1 calc(50% - 6px);max-width:none}
 .jbw-boutique .jbw-p3-check{flex:1 1 100%;min-height:28px}
 .jbw-boutique .jbw-p3-filterbar .jbw-sort-submit{flex:1}
}
