@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/font-0.woff2) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/font-1.woff2) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/font-2.woff2) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/font-3.woff2) format('truetype');
}
@font-face {
  font-family: 'Readex Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/font-4.woff2) format('truetype');
}
@font-face {
  font-family: 'Readex Pro';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/font-5.woff2) format('truetype');
}
@font-face {
  font-family: 'Readex Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/font-6.woff2) format('truetype');
}
@font-face {
  font-family: 'Readex Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/font-7.woff2) format('truetype');
}

:root{--navy:#1c355d;--ink:#203654;--muted:#708097;--lilac:#eee7fa;--sky:#e7f4fc;--yellow:#ffdc68;--line:#dce3ec;--cream:#faf8f4;--font:'Readex Pro','DM Sans',sans-serif;color:var(--ink);background:white;font-family:var(--font);font-synthesis:none;font-weight:400;line-height:1.7}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:3px solid #5288ba}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.45}h1{font-size:40px}h2{font-size:26px}h3{font-size:17px}svg{flex-shrink:0;vertical-align:middle}input,select,textarea{min-width:0;border:1px solid var(--line);border-radius:9px;padding:11px 13px;background:white;color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:2px solid #e1eafa}select{max-width:100%;cursor:pointer}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--navy);flex-shrink:0}fieldset{border:0;border-bottom:1px solid var(--line);padding:20px 0 24px;margin:0}legend{float:inline-start;width:100%;font-weight:600;font-size:16px;margin-bottom:15px}fieldset>*:not(legend){clear:both}details{border-top:1px solid var(--line);padding:17px 0}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;font-weight:500}summary::-webkit-details-marker{display:none}details p{margin-top:14px;font-size:14px;color:var(--muted)}.wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}.btn{min-height:48px;padding:11px 25px;border-radius:50px;display:inline-flex;justify-content:center;align-items:center;gap:13px;background:var(--navy);color:white;font-weight:500;font-size:15px;transition:background .18s,transform .18s;border:1px solid transparent}.btn:hover{background:#2e4d77;transform:translateY(-1px)}.btn.yellow{background:var(--yellow);color:var(--navy)}.btn.yellow:hover{background:#f5ce4f}.btn.outline{border-color:var(--line);background:white;color:var(--navy)}.btn.outline:hover{border-color:var(--navy);background:#f8fafc}.btn.full{width:100%}.icon{padding:9px;min-width:44px;min-height:44px;display:inline-flex;justify-content:center;align-items:center;border-radius:50%}.icon:hover{background:#f0f3f8}.text-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:15px;font-weight:500;padding:8px 0;text-underline-offset:6px}.text-link:hover{text-decoration:underline}.small{font-size:13px}.tiny{font-size:12px}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:500;margin-bottom:14px}.money{white-space:nowrap;display:inline-flex;align-items:baseline;gap:5px}.money b{font-size:25px;line-height:1.3;font-weight:700}.money>span{font-size:14px}.skip{position:fixed;top:-60px;left:20px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.topbar{height:34px;background:var(--navy);color:white;display:flex;justify-content:center;align-items:center;font-size:11px;position:relative}.topbar>span{display:flex;gap:10px;align-items:center}.topbar>button{position:absolute;inset-inline-end:5%;color:white;font-size:11px}.header-inner{width:min(1240px,calc(100% - 64px));margin:auto;height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{width:112px;flex-shrink:0}.brand img{width:100%;height:72px;object-fit:contain}.header-inner nav{display:flex;gap:38px;font-size:14px}.header-inner nav button{padding:10px 0}.header-inner nav button:hover{box-shadow:0 2px var(--navy)}.header-tools{display:flex;align-items:center;gap:23px}.search{display:flex;align-items:center;border:1px solid #d8daeb;border-radius:30px;background:#faf9fc;gap:10px;padding:0 13px;direction:ltr;width:230px;height:37px}.search input{border:0;background:transparent;padding:6px 0;outline:none;width:100%;font-size:11px;direction:rtl}.cart-icon{position:relative;padding:8px}.cart-icon>span{position:absolute;bottom:0;right:0;border-radius:50%;background:var(--yellow);font-size:11px;width:20px;height:20px;display:grid;place-items:center}.mobile-menu{display:none}.menu-panel{padding:12px 24px;background:var(--sky);display:flex;flex-wrap:wrap;gap:12px}.hero{height:min(52vw,650px);position:relative;background:var(--lilac);overflow:hidden}.hero-art{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero-copy{position:absolute;inset-inline-start:7%;top:18%;width:41%;text-align:center}.hero-copy h1{font-size:clamp(32px,4.6vw,66px);line-height:1.38;font-weight:700;margin-bottom:18px;color:#142e57}.hero-copy>p:not(.eyebrow){font-size:24px;margin-bottom:25px}.hero-copy .money b{font-size:32px}.hero-copy .money>span{font-size:22px}.hero-copy .btn{font-size:19px;padding:13px 35px;min-height:56px}.hero-note{display:block;font-size:14px;margin-top:40px}.age-section{background:var(--sky);text-align:center;padding:22px 20px 17px}.age-section h2{font-size:23px;margin-bottom:17px}.ages{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.ages button,.filter-sizes button{border:1px solid #adc5dd;border-radius:30px;padding:10px 24px;background:#f6fbff;font-size:13px;font-weight:500}.ages button:hover,.filter-sizes button[aria-pressed=true]{background:var(--yellow);border-color:var(--yellow)}.age-section>.text-link{font-size:10px;margin-top:8px;color:#667b96}.categories{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.category-tile{position:relative;padding:0;text-align:left;overflow:hidden;aspect-ratio:1.63}.category-tile>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.category-tile:hover>img{transform:scale(1.025)}.category-tile>span{position:absolute;left:8%;top:31%;display:flex;flex-direction:column;gap:20px}.category-tile strong{font-size:39px;font-weight:600}.category-tile>span>span{display:flex;gap:12px;align-items:center;font-size:16px}.section-title{text-align:center;margin-bottom:30px}.section-title h2{display:flex;align-items:center;justify-content:center;gap:24px}.section-title h2:before,.section-title h2:after{content:'';height:1px;background:#8fa2be;width:48px}.section-title p{font-size:13px;color:var(--muted);margin-top:5px}.featured{padding:46px 0 30px;text-align:center}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 21px}.home-grid{gap:24px}.product-card{text-align:center;min-width:0}.product-photo{display:block;background:var(--cream);aspect-ratio:1;position:relative;overflow:hidden}.product-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product-photo:hover img{transform:scale(1.035)}.stock-badge{position:absolute;inset-inline-start:10px;top:10px;padding:4px 11px;border-radius:3px;background:rgba(255,255,255,.93);font-size:11px}.product-name{font-size:15px;display:block;font-weight:500;margin:13px 0 3px}.product-name:hover{text-decoration:underline}.card-colors{display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:5px;min-height:21px}.card-colors>span:not(.color-caption){width:10px;height:10px;border-radius:50%;border:1px solid #00000010}.color-caption{font-size:10px;color:var(--muted);margin-inline-start:5px}.product-card .money b{font-size:23px}.card-btn{display:flex;width:80%;margin:11px auto 0;min-height:40px;padding:8px 13px;font-size:12px}.featured>.text-link{margin-top:26px}.pack-banner{background:var(--lilac);padding:26px 0 32px}.pack-banner .section-title{margin-bottom:20px}.pack-promos{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.pack-promos button{border:1px solid #ddd5ef;background:#ffffffd9;border-radius:16px;padding:16px;display:flex;align-items:center;justify-content:center;gap:20px;position:relative}.pack-promos button:hover{border-color:var(--navy)}.pack-promos svg{width:39px;height:39px;stroke-width:1px}.pack-promos button>span{display:flex;flex-direction:column;align-items:center;font-weight:500}.pack-promos small{font-size:11px;font-weight:400}.pack-promos button>small{position:absolute;top:-10px;background:var(--yellow);padding:1px 9px;border-radius:10px;font-size:9px}.trust{display:grid;grid-template-columns:repeat(3,1fr);padding-block:26px;gap:25px}.trust>div,.trust>button{display:flex;justify-content:center;align-items:center;gap:18px;text-align:start}.trust>div+div,.trust>button{border-inline-start:1px solid #a8b7cd}.trust svg{width:42px;height:42px;stroke-width:1px}.trust span{display:flex;flex-direction:column}.trust strong{font-size:13px;font-weight:500}.trust small{font-size:11px;margin-top:4px}.fabric{height:295px;position:relative;background:#f3e7d7;overflow:hidden}.fabric>img{width:100%;height:100%;object-fit:cover}.fabric>div{position:absolute;left:7%;top:30%;text-align:center;max-width:30%}.fabric h2{font-size:30px;line-height:1.5}.fabric>div p{font-size:17px;margin-top:8px}.fabric-note{position:absolute;right:5%;top:40%;font-size:14px;line-height:2.1;text-align:center;width:17%}footer{background:var(--navy);color:white;padding:37px 0 17px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;direction:ltr}.footer-brand{font-family:Georgia,serif;letter-spacing:2px;font-size:22px}.footer-brand small{font:10px 'DM Sans',sans-serif;display:block;letter-spacing:.2px;margin-top:3px}.footer-links{display:flex;gap:24px;font-size:10px;direction:rtl}.footer-links button{font-size:inherit;padding:0}.footer-links a:hover,.footer-links button:hover{color:var(--yellow)}.socials{display:flex;gap:18px}.socials svg{width:22px;height:22px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff22;margin-top:30px;padding-top:13px;font-size:9px;color:#bccade}.shop-heading{background:var(--lilac);padding:42px 0;text-align:center}.shop-heading h1{font-size:35px;margin-bottom:9px}.shop-heading p:not(.eyebrow){color:#65748b;font-size:14px}.shop-offer{display:inline-block;background:#fff6ce;border-radius:30px;padding:7px 22px;margin-top:20px;font-size:12px}.shop-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:40px;padding-top:30px;padding-bottom:50px}.filter-title{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--line)}.filter-title h2{font-size:18px;display:flex;align-items:center;gap:9px}.filter-sizes{display:grid;grid-template-columns:1fr 1fr;gap:9px}.filter-sizes button{padding:7px 4px;border-radius:7px;font-size:11px}.check-row{display:flex;align-items:center;gap:9px;font-size:13px;margin:8px 0;cursor:pointer}.stock-check{margin-top:22px}.color-options{display:grid;grid-template-columns:1fr 1fr;gap:13px 8px;padding-top:16px}.color-option{display:flex;align-items:center;gap:10px;font-size:11px;text-align:start;padding:0}.swatch{width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid #00000010}.color-option[aria-pressed=true] .swatch{outline:2px solid var(--navy);outline-offset:3px}.color-option[aria-pressed=true]{font-weight:600}.result-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px;font-size:12px;min-height:48px}.sort{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.sort select{font-size:11px;padding:9px}.filter-chips{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 22px}.filter-chips button{display:flex;align-items:center;gap:9px;background:#f0f4f9;border-radius:30px;padding:6px 11px;font-size:11px}.filter-chips svg{width:12px}.dot{width:12px;height:12px;border-radius:50%}.mobile-filter{display:none}.empty{padding:80px 20px;text-align:center;min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.empty h2{font-size:23px}.empty p{color:var(--muted);font-size:14px}.breadcrumb{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;padding:26px 0}.breadcrumb>a:hover{color:var(--navy)}.product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:55px;direction:ltr;align-items:start}.product-detail>*{direction:rtl}[dir=ltr] .product-detail>*{direction:ltr}.gallery{position:sticky;top:20px}.main-product{width:100%;aspect-ratio:1;object-fit:contain;background:#f6f4f0}.thumbnails{display:flex;gap:12px;justify-content:center;margin-top:16px}.thumbnails button{width:74px;padding:3px;border:1px solid var(--line);border-radius:8px}.thumbnails button[aria-pressed=true]{border:2px solid var(--navy)}.thumbnails img{aspect-ratio:1;object-fit:cover;border-radius:5px}.photo-caption{font-size:12px;color:var(--muted);display:flex;gap:9px;justify-content:center;margin-top:20px}.product-info h1{font-size:30px;line-height:1.55;margin-bottom:10px}.product-info>.muted{font-size:13px;line-height:1.9}.price-row{display:flex;align-items:center;gap:25px;margin:20px 0 8px}.price-row .money b{font-size:35px}.availability{font-size:11px;color:#397556;background:#edf7f0;border-radius:25px;padding:4px 12px}.product-info>.tiny{display:flex;align-items:center;gap:10px;color:var(--muted)}.detail-colors{display:flex;flex-wrap:wrap;align-items:center;gap:13px;font-size:11px;margin:20px 0;padding-bottom:20px;border-bottom:1px solid var(--line)}.detail-colors>span{display:flex;gap:5px;align-items:center}.detail-colors i{width:16px;height:16px;border-radius:50%;border:1px solid #ddd}.bundle-heading h2{font-size:21px}.bundle-heading>span{font-size:11px;color:var(--muted)}.bundle-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0 18px}.bundle-options button{border:1px solid var(--line);border-radius:12px;position:relative;display:flex;flex-direction:column;align-items:center;padding:16px 6px 12px;gap:6px;background:white}.bundle-options button[aria-pressed=true]{border:2px solid var(--navy);background:#f1ecfa;padding:15px 5px 11px}.bundle-options strong{font-size:12px}.bundle-options .money b{font-size:22px}.bundle-options .money>span{font-size:10px}.best-tag{position:absolute;top:-12px;white-space:nowrap;border-radius:20px;padding:2px 9px;background:var(--yellow);font-size:9px}.bundle-item{border:1px solid var(--line);padding:13px;border-radius:11px;margin:10px 0;background:#fff}.bundle-item-heading{display:flex;align-items:center;gap:10px;font-size:12px;margin-bottom:12px}.bundle-item-heading>.muted{font-size:9px;margin-inline-start:auto}.number{display:grid;place-items:center;background:var(--sky);width:24px;height:24px;border-radius:50%;font-size:11px}.bundle-controls{display:grid;grid-template-columns:47px minmax(0,1fr) 115px;gap:11px;align-items:end}.bundle-controls img{height:58px;width:47px;object-fit:cover;border-radius:5px}.bundle-controls label{font-size:10px;display:flex;flex-direction:column;gap:5px}.bundle-controls select{font-size:11px;padding:8px 4px;border-radius:6px;height:35px}.bundle-controls select:disabled{opacity:1;background:#f7f8fa;color:var(--ink)}.buy-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 12px}.buy-bar>div{display:flex;flex-direction:column}.buy-bar small{font-size:10px;color:var(--muted)}.buy-bar .money b{font-size:28px}.buy-bar .btn{min-width:50%}.secure-note{font-size:11px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:9px;margin:14px 0 22px}.error{padding:12px;border-radius:7px;background:#fff1ef;color:#a84235;font-size:12px}.related{padding:60px 0}.cart-page,.checkout-page{padding-top:45px;padding-bottom:70px;min-height:65vh}.cart-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:50px;align-items:start}.cart-row{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:20px 0}.cart-row>img{width:110px;height:125px;object-fit:cover;border-radius:8px}.cart-row>div{flex:1;display:flex;flex-direction:column;gap:6px}.cart-row label{font-size:12px}.cart-row select{font-size:11px;padding:5px 10px;margin-inline-start:10px}.cart-row .money b{font-size:18px}.cart-row .money>span{font-size:11px}.cart-layout>.text-link{margin-top:20px}.order-summary{background:#f8f5fc;border:1px solid #e4dfee;border-radius:18px;padding:28px;position:sticky;top:25px}.order-summary h2{font-size:22px;margin-bottom:25px}.order-summary>div:not(.mini-items){display:flex;justify-content:space-between;align-items:center;margin:14px 0;font-size:13px}.order-summary .money b{font-size:19px}.order-summary .money>span{font-size:11px}.savings{color:#42775d}.summary-total{padding-top:18px;border-top:1px solid #cfd5df;display:flex;justify-content:space-between;align-items:center;margin-top:20px}.summary-total .money b{font-size:27px}.order-summary>.btn{margin-top:13px}.order-summary .secure-note{margin-bottom:0}.checkout-form{padding:5px 0}.checkout-form h2{margin-bottom:22px;font-size:23px}.checkout-form>label{display:flex;flex-direction:column;gap:8px;margin-bottom:19px;font-size:13px}.checkout-form input,.checkout-form textarea{padding:14px;border-radius:9px;font-size:13px}.checkout-form textarea{min-height:105px;resize:vertical}.demo-notice{background:#fff8dd;padding:12px 18px;border-radius:9px;margin-bottom:30px;font-size:12px;text-align:center}.mini-items{padding:16px 0;border-top:1px solid var(--line)}.mini-items>div{display:flex;align-items:center;gap:13px;font-size:11px;margin:12px 0}.mini-items img{width:46px;height:50px;object-fit:cover;border-radius:5px}.mini-items small{display:block;color:var(--muted);margin-top:3px}.confirmation{text-align:center;padding:70px 20px;max-width:680px}.confirmation>svg{color:#538f6f}.confirmation>h1{font-size:32px;margin-bottom:15px}.confirmation>p{font-size:14px;margin-bottom:24px}.confirmation-card{background:#f6f3fa;padding:25px;border-radius:17px;margin:30px 0}.confirmation-card h2{font-size:20px;margin-bottom:20px}.confirmation-card>p{display:flex;justify-content:space-between;font-size:13px;padding:12px 0}.help-page{max-width:760px;padding:50px 0 70px}.help-page>h2{font-size:25px;margin:30px 0 10px}.help-page>.btn{margin-top:25px}table{width:100%;border-collapse:collapse;margin:25px 0;font-size:13px}th,td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:start}th{background:var(--sky);font-weight:500}.size-tip{background:#fff8dc;padding:15px;border-radius:9px;font-size:13px;margin:20px 0}.modal-backdrop,.sheet-backdrop{position:fixed;inset:0;z-index:50;background:#14243870;display:flex;justify-content:center;align-items:center;padding:20px;backdrop-filter:blur(3px)}.modal{max-width:540px;width:100%;max-height:90dvh;overflow:auto;background:white;padding:35px;border-radius:20px;position:relative;box-shadow:0 20px 70px #17264025}.modal>svg{margin-bottom:20px}.modal h2{font-size:25px;margin-bottom:10px}.modal>.muted{font-size:13px}.close{position:absolute;inset-inline-end:12px;top:12px}.filter-sheet{background:white;width:450px;max-width:100%;height:100%;max-height:850px;border-radius:16px;display:flex;flex-direction:column;overflow:hidden}.sheet-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 24px}.sheet-head h2{font-size:20px}.sheet-body{overflow:auto;padding:0 24px 25px;flex:1}.sheet-foot{display:flex;gap:20px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:17px 24px}.sheet-foot .btn{flex:1}.unavailable{padding:20px;background:#f7f5fa;border-radius:12px;margin-bottom:25px}.unavailable p{margin-bottom:20px;font-size:14px}[dir=ltr] .hero-copy{right:5%;left:auto}[dir=ltr] .hero-copy h1{font-size:clamp(30px,4vw,57px)}[dir=ltr] .search input{direction:ltr}[dir=ltr] .footer-links{direction:ltr}
@media(min-width:1600px){.hero{height:700px}.hero-copy{top:20%}}
@media(max-width:1000px){.wrap{width:calc(100% - 40px)}.header-inner{width:calc(100% - 40px);gap:15px}.header-inner nav{gap:20px}.search{width:180px}.hero-copy{top:13%}.hero-copy>p:not(.eyebrow){font-size:19px}.hero-copy .btn{font-size:15px;padding:10px 24px;min-height:48px}.hero-note{margin-top:20px;font-size:11px}.category-tile strong{font-size:29px}.category-tile>span>span{font-size:13px}.category-tile>span{gap:12px}.shop-layout{grid-template-columns:195px minmax(0,1fr);gap:25px}.shop-results .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-detail{gap:30px}.bundle-controls{grid-template-columns:36px minmax(0,1fr) 85px;gap:8px}.bundle-controls img{width:36px;height:48px}.cart-layout{gap:25px}.fabric h2{font-size:24px}.footer-links{gap:15px}.trust{gap:10px}.trust svg{width:32px;height:32px}.trust>div,.trust>button{gap:11px}.trust strong{font-size:11px}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}.topbar{font-size:9px;height:30px}.topbar>span{gap:6px}.topbar>span svg{width:15px}.topbar>button{inset-inline-end:12px;font-size:10px}.header-inner{height:77px;width:calc(100% - 32px);gap:10px}.brand{width:90px}.brand img{height:59px}.header-inner nav{display:none}.header-tools{gap:9px}.search{width:135px;height:34px;padding:0 9px;gap:7px}.search svg{width:17px}.search input{font-size:9px}.cart-icon{padding:7px}.cart-icon svg{width:23px}.mobile-menu{display:flex;min-width:33px;padding:4px}.hero{height:650px;display:flex;flex-direction:column}.hero-art{height:100%;object-fit:cover;object-position:27% center;top:0;opacity:1}.hero-copy{top:22px;left:16px;right:16px;inset-inline-start:16px;width:auto;padding:5px 10px;text-align:center;background:#eee7fad9;border-radius:14px}.hero-copy h1{font-size:33px;line-height:1.4;margin-bottom:6px}.hero-copy h1 br{display:none}.hero-copy .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:7px}.hero-copy>p:not(.eyebrow){font-size:15px;margin-bottom:14px}.hero-copy .money b{font-size:24px}.hero-copy .money>span{font-size:14px}.hero-copy .btn{font-size:14px;min-height:42px;padding:8px 24px}.hero-note{display:none}.age-section{padding:22px 16px 15px}.age-section h2{font-size:21px}.ages{gap:8px;flex-wrap:nowrap;justify-content:flex-start;overflow:auto;scrollbar-width:none;padding:3px}.ages button{padding:9px 14px;white-space:nowrap;flex-shrink:0;font-size:11px}.categories{gap:10px;margin-top:16px}.category-tile{aspect-ratio:.82}.category-tile>img{object-position:64% center}.category-tile>span{left:0;top:auto;bottom:0;right:0;background:#ffffffe6;padding:9px 12px;gap:0;align-items:center}.category-tile strong{font-size:21px}.category-tile>span>span{font-size:10px;gap:5px}.category-tile svg{width:14px}.section-title{margin-bottom:22px}.section-title h2{font-size:22px;gap:11px}.section-title h2:before,.section-title h2:after{width:21px}.section-title p{font-size:11px}.featured{padding-top:32px}.product-grid{gap:27px 13px;grid-template-columns:repeat(2,minmax(0,1fr))}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 13px}.home-grid .product-card:last-child{display:none}.product-name{font-size:12px;margin-top:10px;line-height:1.65}.color-caption{font-size:8px}.card-colors>span:not(.color-caption){width:8px;height:8px}.product-card .money b{font-size:21px}.product-card .money>span{font-size:11px}.card-btn{width:100%;font-size:11px;padding:8px;min-height:38px;gap:9px}.card-btn svg{width:15px}.featured>.text-link{font-size:12px;margin-top:22px}.pack-banner{padding:25px 0}.pack-promos{gap:8px;grid-template-columns:1fr}.pack-promos button{border-radius:11px;padding:12px 20px;justify-content:flex-start;gap:20px}.pack-promos button>span{flex-direction:row;flex:1;justify-content:space-between;gap:10px;font-size:13px}.pack-promos svg{width:29px;height:29px}.pack-promos .money b{font-size:23px}.pack-promos button>small{top:0;right:7px;font-size:8px}.pack-promos button>span>small{font-size:10px}.trust{grid-template-columns:1fr;padding-block:23px;gap:19px}.trust>div,.trust>button{justify-content:flex-start;padding-inline:25px;gap:18px}.trust>div+div,.trust>button{border-inline-start:0}.trust strong{font-size:13px}.trust small{font-size:11px}.trust svg{width:34px;height:34px}.fabric{height:280px}.fabric>img{object-position:64% center}.fabric>div{left:16px;top:18px;max-width:65%;text-align:start}.fabric h2{font-size:23px}.fabric>div p{font-size:13px;margin-top:3px}.fabric-note{display:none}.footer-main{flex-direction:column;align-items:center;gap:27px}.footer-links{flex-wrap:wrap;justify-content:center;gap:15px 20px;font-size:10px}.footer-brand{text-align:center;font-size:24px}.footer-bottom{font-size:8px}.shop-heading{padding:28px 0}.shop-heading .eyebrow{font-size:9px;margin-bottom:10px}.shop-heading h1{font-size:25px}.shop-heading p:not(.eyebrow){font-size:12px}.shop-offer{font-size:10px;padding:6px 12px;margin-top:16px}.shop-layout{display:block;padding-top:16px;padding-bottom:25px}.desktop-filters{display:none}.mobile-filter{display:flex;font-size:11px;min-height:40px;padding:8px 14px;gap:7px}.mobile-filter svg{width:18px}.result-toolbar{gap:7px;flex-wrap:wrap;margin-bottom:17px}.result-toolbar>p{font-size:11px;margin-inline-end:auto}.sort{font-size:0;gap:0}.sort select{font-size:10px;padding:9px 5px}.filter-chips{margin-top:0;gap:6px}.filter-chips button{font-size:10px;padding:5px 9px}.sheet-backdrop{padding:0;align-items:stretch}.filter-sheet{max-height:100%;width:100%;border-radius:0}.sheet-head{padding:14px 21px}.sheet-body{padding:0 24px 22px}.sheet-foot{padding:16px 20px max(16px,env(safe-area-inset-bottom))}.sheet-body fieldset{padding-top:23px}.sheet-body legend{font-size:17px}.sheet-body .check-row{font-size:15px;min-height:36px}.sheet-body .filter-sizes{grid-template-columns:repeat(3,1fr);gap:12px}.sheet-body .filter-sizes button{font-size:12px;padding:10px 5px}.sheet-body .color-options{grid-template-columns:repeat(3,1fr);gap:21px 13px}.sheet-body .color-option{font-size:12px;min-height:38px;gap:9px}.sheet-body .swatch{width:30px;height:30px}.breadcrumb{font-size:9px;padding:18px 0;gap:8px;flex-wrap:wrap}.product-detail{display:flex;flex-direction:column;gap:26px}.gallery{position:static;width:100%}.main-product{max-height:460px}.thumbnails{margin-top:12px}.thumbnails button{width:58px}.photo-caption{margin-top:10px;font-size:10px}.product-info{width:100%}.product-info h1{font-size:27px}.product-info>.eyebrow{margin-bottom:8px}.price-row{margin-top:14px}.bundle-controls{grid-template-columns:44px minmax(0,1fr) 97px;gap:9px}.bundle-controls img{height:54px;width:44px}.bundle-controls select{height:39px;font-size:11px}.bundle-item-heading>.muted{font-size:8px}.buy-bar .btn{font-size:14px}.buy-bar{background:white;padding:12px 0;position:sticky;bottom:0;z-index:5;border-top:1px solid var(--line)}.related{padding:40px 0}.cart-page,.checkout-page{padding-top:30px;padding-bottom:40px}.cart-layout{grid-template-columns:1fr;gap:25px}.order-summary{position:static;padding:23px}.cart-row{gap:13px}.cart-row>img{width:80px;height:97px}.cart-row h3{font-size:13px}.cart-row .icon{min-width:36px;padding:5px}.demo-notice{font-size:10px}.confirmation{padding:45px 0}.confirmation>h1{font-size:26px}.confirmation>p{font-size:12px}.confirmation-card{padding:20px}.confirmation-card>p{font-size:11px;gap:10px}.modal{padding:30px 22px 22px;max-height:92dvh}.modal h2{font-size:22px}.modal>.muted{font-size:12px}.modal table{font-size:12px;margin:18px 0}.help-page{padding-block:30px}.help-page>.muted{font-size:13px}[dir=ltr] .hero-copy{top:20px;left:16px;right:16px}[dir=ltr] .hero-copy h1{font-size:30px}[dir=ltr] .bundle-options strong{font-size:11px}[dir=ltr] .category-tile>span>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(min-width:701px){.hero{height:auto;aspect-ratio:1.92}.hero-copy{top:17%}}
@media(max-width:700px){.hero{height:645px}.hero-art{top:225px;height:420px;object-position:left bottom}.hero-copy{background:transparent;padding:0;top:22px}.hero-copy h1{font-size:31px}}
.shop-heading{padding:22px 0}.shop-heading .eyebrow{margin-bottom:6px;font-size:9px}.shop-heading h1{font-size:29px;margin-bottom:5px}.shop-heading p:not(.eyebrow){font-size:12px}.shop-offer{margin-top:10px;padding:4px 17px;font-size:10px}.desktop-filters{background:var(--sky);padding:18px;border-radius:14px}.desktop-filters fieldset{padding:15px 0 19px}.desktop-filters legend{font-size:14px;margin-bottom:10px}.desktop-filters .filter-sizes{gap:7px}.desktop-filters .color-options{gap:15px 8px}.shop-layout{grid-template-columns:260px minmax(0,1fr);gap:25px}.filter-chips button{background:#fff1bf}.shop-results .product-photo{border-radius:7px}.show-more{display:flex;margin:30px auto 0}.shop-heading h1{font-weight:700}@media(max-width:1000px) and (min-width:701px){.shop-layout{grid-template-columns:220px minmax(0,1fr)}}@media(max-width:700px){.shop-layout{display:block}.shop-heading h1{font-size:24px}}
@media(min-width:701px) and (max-width:1000px){.header-inner{height:60px}.brand img{height:50px}.brand{width:95px}.topbar{height:30px}.age-section{padding:12px 20px}.age-section h2{font-size:20px;margin-bottom:8px}.age-section>.text-link{display:none}.ages button{padding:8px 20px}.categories{margin-top:8px;gap:12px}.featured{padding-top:26px;padding-bottom:20px}.featured .section-title{margin-bottom:20px}.section-title h2{font-size:23px}.featured>.text-link{margin-top:14px}.pack-banner{padding:16px 0}.pack-banner .section-title{margin-bottom:12px}.pack-promos{gap:16px}.pack-promos button{padding:9px 12px;gap:10px}.pack-promos button>span{font-size:13px}.pack-promos .money b{font-size:23px}.pack-promos svg{width:29px;height:29px}.fabric{height:24vw}.fabric h2{font-size:25px}.fabric>div p{font-size:14px}.fabric-note{font-size:11px}footer{padding-top:25px}.footer-bottom{margin-top:22px}}
@media(min-width:701px){.hero-copy h1{font-size:clamp(40px,5.2vw,70px)}}
@media(max-width:700px){.sheet-head{background:var(--lilac)}.sheet-body fieldset{padding:17px 0 20px}.sheet-body legend{float:none;background:var(--sky);border-radius:8px;padding:6px 10px;margin-bottom:14px;font-size:15px}.sheet-body fieldset:first-child{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sheet-body fieldset:first-child legend{grid-column:1/-1;margin-bottom:0}.sheet-body fieldset:first-child .check-row{border:1px solid var(--line);border-radius:9px;min-height:44px;justify-content:center;font-size:12px;margin:0;gap:5px}.sheet-body fieldset:first-child .check-row:has(input:checked){background:#fff2bf;border-color:var(--yellow)}.sheet-body .color-options{gap:15px 12px;padding-top:12px}.sheet-body .color-option{flex-direction:column;gap:4px;font-size:12px}.sheet-body .swatch{width:36px;height:36px}.sheet-body .filter-sizes{gap:8px}}
@media(max-width:700px){.hero-copy h1 br{display:initial}.hero-art{object-position:10% bottom}}


/* ===== Ajustements WordPress / refonte ===== */
.prf-body{margin:0}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:#fff;padding:10px 14px;z-index:99999;border-radius:8px}
.menu-panel[hidden],.filter-sheet[hidden],.prf-modal[hidden],[data-prf-item][hidden],[data-prf-error][hidden]{display:none!important}
.badge-out{position:absolute;inset-inline-start:10px;top:10px;background:#203654;color:#fff;font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px}
.product-photo{position:relative;display:block}
.card-sizes{display:flex;gap:4px;flex-wrap:wrap;margin:6px 0}
.card-sizes span{font-size:11px;font-weight:700;color:#708097;border:1px solid #dce3ec;border-radius:6px;padding:2px 6px}
.card-sizes span.off{opacity:.35;text-decoration:line-through}
.card-colors{display:flex;gap:8px;flex-wrap:wrap;font-size:11.5px;color:#708097;margin:4px 0}
.card-colors span{display:inline-flex;align-items:center;gap:4px}
.card-colors i{width:11px;height:11px;border-radius:50%;border:1px solid #0001;display:inline-block}
.card-price{display:flex;align-items:baseline;gap:8px}
.card-price s{color:#708097;font-size:13px}
.price-row s{color:#708097;font-size:15px;margin-inline-start:6px}
.availability.out{color:#c95d5d}
.filter-colors a{display:flex;align-items:center;gap:7px;text-decoration:none;color:inherit;padding:4px 2px}
.filter-colors i{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #0002;color:#fff;font-size:12px;font-weight:700}
.filter-colors a.light i{color:#203555}
.filter-colors a[aria-pressed=true] span{font-weight:800;color:#1c355d}
.filter-cats a,.filter-sizes a,.filter-stock{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:inherit}
.filter-chips a{text-decoration:none;color:inherit}
.filter-chips a.reset{display:inline-flex;align-items:center;gap:5px}
.prf-pagination{display:flex;gap:8px;justify-content:center;margin:28px 0}
.prf-pagination a{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #dce3ec;border-radius:10px;text-decoration:none;color:#203654;font-weight:700}
.prf-pagination a[aria-current=page]{background:#1c355d;color:#fff;border-color:#1c355d}
.empty-state{text-align:center;padding:60px 20px}
.prf-modal{position:fixed;inset:0;background:#10203acc;z-index:9990;display:flex;align-items:center;justify-content:center;padding:18px}
.prf-modal-box{background:#fff;border-radius:20px;padding:26px;max-width:560px;width:100%;max-height:86vh;overflow:auto;position:relative}
.prf-modal-close{position:absolute;inset-inline-end:14px;top:12px;background:none;border:0;font-size:20px;cursor:pointer}
.prf-modal table{width:100%;border-collapse:collapse;margin:14px 0}
.prf-modal th,.prf-modal td{padding:9px 8px;text-align:center;border-bottom:1px solid #dce3ec}
.prf-modal th{background:#e7f4fc;font-weight:800}
.mobile-filter-btn .dot{width:8px;height:8px;border-radius:50%;background:#ffdc68;display:inline-block;margin-inline-start:6px}
.filter-sheet{position:fixed;inset:0;background:#fff;z-index:9985;display:flex;flex-direction:column}
.sheet-head,.sheet-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #dce3ec}
.sheet-foot{border-bottom:0;border-top:1px solid #dce3ec}
.sheet-body{flex:1;overflow:auto;padding:16px}
@media(min-width:701px){.mobile-filter-btn{display:none}.filter-sheet{display:none!important}}
@media(max-width:700px){.desktop-filters{display:none}}
body.admin-bar .prf-bar{bottom:0}

/* Version française : le thème charge sa feuille RTL, on rétablit le sens de
   lecture pour les pages de la refonte affichées en français. */
html[dir="ltr"] body.prf-body,
html[dir="ltr"] body.prf-body .wrap,
html[dir="ltr"] body.prf-body main{direction:ltr;text-align:start}
html[dir="ltr"] body.prf-body .breadcrumb{flex-direction:row}

/* Pastilles couleur des cartes : le libellé doit rester lisible à côté du rond. */
.card-colors>span:not(.color-caption){width:auto;height:auto;border:0;border-radius:0;display:inline-flex;align-items:center;gap:4px}
.card-colors>span>i{width:11px;height:11px;border-radius:50%;border:1px solid #0000001a;display:inline-block;flex:0 0 auto}

/* PALADINO Bao World : vitrine de marque sur l'accueil (non commandable). */
.bao-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.bao-card{display:flex;flex-direction:column;gap:2px;text-align:center;min-width:0}
.bao-card img{
  width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:center;
  border-radius:14px;background:#f2f3f5;transition:transform .4s
}
.bao-card:hover img{transform:scale(1.02)}
.bao-card strong{font-weight:600;font-size:16px;margin-top:13px;color:var(--navy,#1c355d)}
.bao-card span{font-size:12px;color:var(--muted,#708097)}
@media(max-width:700px){
  .bao-showcase{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  .bao-card img{border-radius:10px}
  .bao-card strong{font-size:12px;margin-top:8px}
  .bao-card span{font-size:9.5px}
}

/* Bandeau qualité : la broderie PALADINO occupe la droite du visuel,
   la note flottante viendrait dessus. */
.fabric-note{display:none}
.fabric>img{object-position:center}

/* ============================================================
   Achat rapide, panier latéral, formulaire de commande, description
   Palette existante uniquement : navy, lilac, sky, yellow, cream, line.
   ============================================================ */

body.prf-locked{overflow:hidden}

/* ---------- Achat rapide sur la carte produit ---------- */
.product-card .quick-buy{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;
  margin-top:10px;padding:10px 12px;border-radius:11px;border:1.5px solid var(--navy);
  background:white;color:var(--navy);font-size:14px;font-weight:600;transition:background .15s,color .15s}
.product-card .quick-buy:hover{background:var(--navy);color:white}
@media (hover:none){.product-card .quick-buy{background:var(--lilac);border-color:transparent}}

/* ---------- Sélecteur d'article ---------- */
.prf-item{border:1px solid var(--line);border-radius:14px;padding:13px 14px;background:white;margin-bottom:10px}
.prf-item.has-error{border-color:#c0442f;background:#fdf6f5}
.prf-item-head{display:flex;align-items:center;gap:9px;margin-bottom:11px}
.prf-item-num{width:23px;height:23px;border-radius:50%;background:var(--yellow);color:var(--navy);
  font-size:12px;font-weight:700;display:grid;place-items:center;flex-shrink:0}
.prf-item-head strong{font-size:14px;color:var(--navy)}
.prf-item-remove{margin-inline-start:auto;width:26px;height:26px;border-radius:50%;background:var(--cream);
  color:var(--muted);font-size:13px;line-height:1}
.prf-item-remove:hover{background:#f2e3e1;color:#c0442f}
.prf-item-body{display:flex;gap:12px;align-items:flex-start}
.prf-item-thumb{width:72px;height:72px;border-radius:11px;object-fit:cover;background:var(--cream);flex-shrink:0}
.prf-item-fields{flex:1;display:flex;flex-direction:column;gap:11px;min-width:0}

.prf-field{display:flex;flex-direction:column;gap:5px}
.prf-field>span{font-size:12.5px;font-weight:600;color:var(--muted)}
.prf-field.has-error>span{color:#c0442f}
.prf-field.has-error input,.prf-field.has-error select{border-color:#c0442f}

.prf-sizes{display:flex;flex-wrap:wrap;gap:7px}
.prf-size{min-width:56px;padding:9px 12px;border-radius:10px;border:1.5px solid var(--line);
  background:white;font-size:14px;font-weight:600;color:var(--ink);transition:.15s}
.prf-size:hover:not(:disabled){border-color:var(--navy)}
.prf-size[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:white}
.prf-size:disabled{opacity:.38;text-decoration:line-through;background:var(--cream)}

/* ---------- Formulaire de commande ---------- */
.prf-form{margin-top:18px;border:1.5px solid var(--line);border-radius:16px;background:var(--cream);
  padding:16px;display:flex;flex-direction:column;gap:14px}
.prf-form-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;
  padding-bottom:12px;border-bottom:1px dashed var(--line)}
.prf-form-head strong{font-size:16px;color:var(--navy)}
.prf-form-head span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}
.prf-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.prf-form-grid .wide{grid-column:1/-1}
.prf-form input{width:100%;background:white}
.prf-err{display:block;font-size:12.5px;font-style:normal;color:#c0442f;margin-top:2px}
.prf-err.form{background:#fdf0ee;border-radius:9px;padding:9px 11px}

.prf-summary{display:flex;flex-direction:column;gap:7px;background:white;border-radius:12px;padding:13px 14px}
.prf-summary>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14px}
.prf-summary>div span{color:var(--muted)}
.prf-summary>div b{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.prf-summary .discount b{color:#2f7a5b}
.prf-summary .grand{border-top:1px dashed var(--line);padding-top:9px;margin-top:2px}
.prf-summary .grand span{color:var(--navy);font-weight:600}
.prf-summary .grand b{font-size:20px;color:var(--navy)}

.prf-submit{position:relative}
.prf-submit.is-busy{opacity:.65;pointer-events:none}
.prf-cod{display:flex;align-items:center;justify-content:center;gap:7px;font-size:12.5px;color:var(--muted);text-align:center}

/* ---------- Confirmation ---------- */
.prf-success{background:white;border:1.5px solid #cfe6d9;border-radius:16px;padding:22px 18px;text-align:center;
  display:flex;flex-direction:column;gap:11px;align-items:center}
.prf-success-mark{width:46px;height:46px;border-radius:50%;background:#e6f3ec;color:#2f7a5b;
  font-size:24px;display:grid;place-items:center}
.prf-success h3{font-size:19px;color:var(--navy)}
.prf-order-no{font-size:14px;color:var(--muted)}
.prf-order-no b{color:var(--navy);font-size:16px}
.prf-success-items{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:6px}
.prf-success-items li{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;
  background:var(--cream);border-radius:9px;padding:8px 11px;text-align:start}
.prf-success-total{display:flex;justify-content:space-between;width:100%;font-size:15px;
  border-top:1px dashed var(--line);padding-top:11px}
.prf-success-total b{color:var(--navy);font-size:19px}
.prf-success-note{font-size:12.5px;color:var(--muted)}

/* ---------- Fenêtre d'achat rapide ---------- */
.prf-quick{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px}
.prf-quick-backdrop{position:absolute;inset:0;background:rgba(28,53,93,.42)}
.prf-quick-panel{position:relative;background:white;border-radius:20px;width:min(560px,100%);
  max-height:92vh;overflow:auto;padding:22px;box-shadow:0 24px 60px rgba(28,53,93,.24)}
.prf-quick-close{position:absolute;inset-inline-end:14px;top:14px;width:34px;height:34px;border-radius:50%;
  background:var(--cream);color:var(--muted);font-size:15px}
.prf-quick-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px;padding-inline-end:34px}
.prf-quick-head img{width:110px;height:110px;border-radius:14px;object-fit:cover;background:var(--cream)}
.prf-quick-head h3{font-size:16px;line-height:1.5;color:var(--navy);margin-bottom:6px}
.prf-loading{text-align:center;color:var(--muted);padding:36px 0;font-size:22px}
.bundle-options.quick{margin-bottom:14px}

/* ---------- Panier latéral ---------- */
.prf-drawer{position:fixed;inset:0;z-index:9100}
.prf-drawer-backdrop{position:absolute;inset:0;background:rgba(28,53,93,.42)}
.prf-drawer-panel{position:absolute;inset-block:0;inset-inline-end:0;width:min(420px,100%);background:white;
  display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(28,53,93,.18)}
html[dir="ltr"] .prf-drawer-panel{box-shadow:12px 0 40px rgba(28,53,93,.18)}
.prf-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:16px 18px;border-bottom:1px solid var(--line)}
.prf-drawer-head strong{font-size:16px;color:var(--navy)}
.prf-drawer-head .icon{width:32px;height:32px;border-radius:50%;background:var(--cream);color:var(--muted)}
.prf-drawer-body{flex:1;overflow:auto;padding:14px 18px;display:flex;flex-direction:column;gap:11px}
.prf-drawer-foot{border-top:1px solid var(--line);padding:14px 18px;display:flex;flex-direction:column;gap:10px;background:var(--cream)}
.prf-drawer-foot .prf-summary{background:white}
.prf-drawer-empty{text-align:center;padding:40px 10px;display:flex;flex-direction:column;gap:14px;align-items:center;color:var(--muted)}

.prf-line{display:flex;gap:11px;align-items:flex-start;border:1px solid var(--line);border-radius:13px;padding:10px}
.prf-line.is-busy{opacity:.55;pointer-events:none}
.prf-line img{width:72px;height:72px;border-radius:10px;object-fit:cover;background:var(--cream);flex-shrink:0}
.prf-line-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.prf-line-info a{font-size:13.5px;font-weight:600;color:var(--navy);line-height:1.45}
.prf-line-size{font-size:12.5px;color:var(--muted)}
.prf-line-price{font-size:14px;font-weight:600;color:var(--navy);white-space:nowrap;font-variant-numeric:tabular-nums}
.prf-qty{display:flex;align-items:center;gap:6px;margin-top:3px}
.prf-qty button{width:28px;height:28px;border-radius:8px;border:1px solid var(--line);background:white;
  font-size:15px;line-height:1;color:var(--navy)}
.prf-qty b{min-width:22px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}
.prf-line-remove{width:auto!important;border:0!important;background:none!important;
  font-size:12.5px!important;color:var(--muted)!important;text-decoration:underline;margin-inline-start:4px}
.prf-line-remove:hover{color:#c0442f!important}

.prf-suggest{border-top:1px dashed var(--line);padding-top:13px;margin-top:4px}
.prf-suggest>strong{display:block;font-size:13.5px;color:var(--navy);margin-bottom:9px}
.prf-suggest-row{display:flex;gap:9px;overflow-x:auto;padding-bottom:4px}
.prf-suggest-row button{width:96px;flex-shrink:0;text-align:center;display:flex;flex-direction:column;gap:5px;align-items:center}
.prf-suggest-row img{width:56px;height:56px;border-radius:10px;object-fit:cover;background:var(--cream)}
.prf-suggest-row span{font-size:11.5px;line-height:1.4;color:var(--muted);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ---------- Checkout ---------- */
.checkout-page{padding-block:22px 60px}
.checkout-layout{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start;margin-top:16px}
.checkout-recap{display:flex;flex-direction:column;gap:11px}
.checkout-recap h1{font-size:28px}
.prf-line.static .prf-line-info a{pointer-events:auto}
.checkout-form .prf-form{margin-top:0}

/* ---------- Description en blocs ---------- */
.prf-desc{margin-top:44px;display:flex;flex-direction:column;gap:26px}
.prf-desc-intro{color:var(--muted);font-size:15px}
.prf-desc-intro p{margin-bottom:8px}
.prf-desc-block{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:26px;align-items:center;
  background:var(--cream);border-radius:20px;padding:20px;overflow:hidden}
.prf-desc-block.reverse{direction:inherit}
.prf-desc-block.reverse .prf-desc-photo{order:2}
.prf-desc-photo img{width:100%;height:100%;max-height:340px;object-fit:cover;border-radius:15px;background:white}
.prf-desc-text{display:flex;flex-direction:column;gap:9px;min-width:0}
.prf-desc-num{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--navy);
  background:var(--yellow);border-radius:999px;padding:3px 11px;align-self:flex-start}
.prf-desc-text h3{font-size:19px;color:var(--navy)}
.prf-desc-body{font-size:14.5px;color:var(--ink)}
.prf-desc-body p{margin-bottom:8px}
.prf-desc-body ul{margin:0 0 8px;padding-inline-start:20px;display:flex;flex-direction:column;gap:5px}
.prf-desc-body table{width:100%;border-collapse:collapse;font-size:13.5px;background:white;border-radius:11px;overflow:hidden}
.prf-desc-body th,.prf-desc-body td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:start}
.prf-desc-body th{background:var(--sky);font-weight:600;color:var(--navy)}
.prf-desc-body tr:last-child td{border-bottom:0}

@media (max-width:860px){
  .checkout-layout{grid-template-columns:1fr}
  .prf-desc-block{grid-template-columns:1fr;gap:16px;padding:16px}
  .prf-desc-block.reverse .prf-desc-photo{order:0}
  .prf-desc-photo img{max-height:260px}
}
@media (max-width:560px){
  .prf-form-grid{grid-template-columns:1fr}
  .prf-quick{padding:0;align-items:flex-end}
  .prf-quick-panel{width:100%;max-height:94vh;border-radius:22px 22px 0 0;padding:18px 16px 26px}
  .prf-item-body{gap:10px}
  .prf-item-thumb{width:58px;height:58px}
  .prf-size{min-width:52px;padding:10px}
  .prf-drawer-panel{width:100%}
}

/* Le bouton WhatsApp flottant du thème ne doit jamais couvrir la confirmation. */
@media (max-width:720px){
  .prf-form{margin-bottom:78px}
  .checkout-form .prf-form{margin-bottom:78px}
}

/* Les conteneurs à display imposé doivent rester masqués tant qu'ils sont fermés. */
.prf-quick[hidden],.prf-drawer[hidden],.prf-item-wrap[hidden],.prf-modal[hidden]{display:none!important}
.prf-summary>div[hidden]{display:none!important}

/* ============================================================
   Pied de page — reconstruit
   L'ancienne feuille visait un balisage disparu (.footer-main,
   .footer-brand, .footer-links) : plus aucune de ces règles ne
   s'appliquait, et les titres héritaient du bleu marine de h1-h3,
   d'où des intitulés invisibles sur fond bleu. Tout est repris ici
   sous le préfixe .prf-foot, isolé de ces règles mortes.
   ============================================================ */

footer.prf-foot{background:var(--navy);color:#fff;padding:0;margin-top:56px}

.prf-foot-inner{
  max-width:1200px;margin-inline:auto;padding:52px 24px 44px;
  display:grid;grid-template-columns:minmax(240px,1.5fr) 1fr 1fr minmax(200px,1.2fr);
  gap:40px 36px;align-items:start
}

/* ---- Colonne marque ---- */
.prf-foot-brand{display:flex;flex-direction:column;gap:16px}
.prf-foot-logo{
  display:inline-flex;align-items:center;justify-content:center;
  width:fit-content;background:var(--cream);border-radius:16px;padding:14px 20px
}
/* largeur pilotée, hauteur libre : le rapport d'origine est conservé */
.prf-foot-logo img{width:132px;height:auto;display:block}
.prf-foot-brand p{font-size:15px;line-height:1.75;color:#cdd8e8;max-width:34ch}

.prf-foot-social{display:flex;gap:10px}
.prf-foot-social a{
  width:40px;height:40px;border-radius:50%;display:grid;place-items:center;
  background:#ffffff14;color:#fff;transition:background .15s,color .15s
}
.prf-foot-social a:hover{background:var(--yellow);color:var(--navy)}
.prf-foot-social svg{width:22px;height:22px}

/* ---- Colonnes de liens ---- */
.prf-foot-col{min-width:0}
.prf-foot-col summary{list-style:none;display:block}
.prf-foot-col summary::-webkit-details-marker{display:none}
.prf-foot-col summary::marker{content:''}

.prf-foot h3{
  color:#fff;font-size:16px;font-weight:600;letter-spacing:.01em;
  margin:0 0 16px;padding:0
}
.prf-foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.prf-foot-col li{margin:0}
.prf-foot-col a,.prf-foot-col button{
  display:inline-block;font-size:15px;line-height:1.5;color:#c8d4e6;
  text-align:start;padding:2px 0;background:none;border:0;font-family:inherit;
  transition:color .15s
}
.prf-foot-col a:hover,.prf-foot-col button:hover{color:var(--yellow)}
.prf-foot-col a:focus-visible,.prf-foot-col button:focus-visible{outline:2px solid var(--yellow);outline-offset:3px;border-radius:4px}

/* ---- Colonne contact ---- */
.prf-foot-contact p{font-size:15px;line-height:1.7;color:#cdd8e8;margin-bottom:16px;max-width:32ch}
.prf-foot-wa{
  display:inline-flex;align-items:center;gap:9px;
  background:#25d366;color:#08331a;font-weight:600;font-size:15px;
  padding:12px 18px;border-radius:12px;min-height:46px;
  transition:filter .15s
}
.prf-foot-wa:hover{filter:brightness(1.08)}
.prf-foot-wa span{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.prf-foot-cod{
  display:flex;align-items:center;gap:8px;margin-top:14px;
  font-size:13.5px;color:#a9b8cf
}

/* ---- Barre légale ---- */
.prf-foot-legal{border-top:1px solid #ffffff1f;margin-top:8px}
.prf-foot-legal-inner{
  max-width:1200px;margin-inline:auto;padding:18px 24px;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;
  font-size:13.5px;color:#a9b8cf
}
.prf-foot-legal ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0}
.prf-foot-legal a{color:#c8d4e6}
.prf-foot-legal a:hover{color:var(--yellow)}

/* ---- Tablette ---- */
@media (max-width:1000px){
  .prf-foot-inner{grid-template-columns:1fr 1fr;gap:36px 32px;padding:44px 22px 36px}
  .prf-foot-brand{grid-column:1/-1}
  .prf-foot-brand p{max-width:52ch}
}

/* ---- Mobile : rubriques repliables ---- */
@media (max-width:640px){
  .prf-foot-inner{
    grid-template-columns:1fr;gap:0;padding:36px 20px 24px
  }
  .prf-foot-brand{gap:14px;padding-bottom:26px}
  .prf-foot-brand p{max-width:none;font-size:15px}
  .prf-foot-logo img{width:116px}

  .prf-foot-col{border-top:1px solid #ffffff1f}
  .prf-foot-col summary{
    cursor:pointer;padding:16px 2px;display:flex;align-items:center;justify-content:space-between;
    min-height:52px
  }
  .prf-foot-col summary h3{margin:0}
  .prf-foot-col summary::after{
    content:'';width:9px;height:9px;flex:none;margin-inline-start:12px;
    border-inline-end:2px solid #9fb0c9;border-block-end:2px solid #9fb0c9;
    transform:rotate(45deg);transform-origin:60% 60%;transition:transform .2s
  }
  .prf-foot-col[open] summary::after{transform:rotate(-135deg)}
  .prf-foot-col ul{padding:0 2px 18px;gap:14px}
  .prf-foot-col a,.prf-foot-col button{padding:6px 0;min-height:32px}

  .prf-foot-contact{padding:20px 2px 6px}
  .prf-foot-contact h3{margin-bottom:10px}
  .prf-foot-wa{width:100%;justify-content:center;min-height:50px;font-size:16px}

  .prf-foot-legal-inner{padding:16px 20px 22px;flex-direction:column;align-items:flex-start;gap:8px}
  /* le bouton WhatsApp flottant du thème ne doit rien recouvrir */
  footer.prf-foot{padding-bottom:76px}
}

/* ---- Correctifs de conflit ----
   1. La feuille du prototype stylait tous les <details> (bordure haute +
      padding vertical) : les rubriques du pied de page en héritaient et
      affichaient un trait au-dessus des titres.
   2. « .prf-foot-col a » (0,1,1) l'emportait sur « .prf-foot-wa » (0,1,0),
      le bouton WhatsApp perdait donc son fond vert. On qualifie la règle. */
details.prf-foot-col{border-top:0;padding:0}

.prf-foot .prf-foot-col a.prf-foot-wa{
  display:inline-flex;align-items:center;gap:9px;
  background:#25d366;color:#08331a;font-weight:600;font-size:15px;
  padding:12px 18px;border-radius:12px;min-height:46px
}
.prf-foot .prf-foot-col a.prf-foot-wa:hover{color:#08331a;filter:brightness(1.08)}

/* Le bouton WhatsApp flottant occupe le coin bas gauche de l'écran :
   on éloigne les mentions légales de ce coin plutôt que d'ajouter du vide. */
@media (min-width:641px){
  .prf-foot-legal-inner{padding-left:104px}
}
@media (max-width:640px){
  details.prf-foot-col{border-top:1px solid #ffffff1f}
  .prf-foot .prf-foot-col a.prf-foot-wa{width:100%;justify-content:center;min-height:50px;font-size:16px}
}

/* Chevron d'accordéon : bordures physiques, sinon en RTL « inline-end »
   passe à gauche et la flèche pointe de travers au lieu de pointer vers le bas. */
@media (max-width:640px){
  .prf-foot-col summary::after{
    border-inline-end:0;border-block-end:0;
    border-right:2px solid #9fb0c9;border-bottom:2px solid #9fb0c9
  }
}

/* ============================================================
   Produits, âges, packs et badges — reconstruits
   Cause des défauts constatés : la feuille du prototype stylait
   « .ages button » et « .pack-promos button » alors que les gabarits
   rendaient des <a>. Aucune de ces règles ne s'appliquait, d'où les
   liens nus et les prix collés aux icônes. Les blocs .card-sizes,
   .card-colors et .card-price étaient en plus redéfinis plus bas
   sans justify-content, ce qui décentrait tout le contenu des cartes.
   ============================================================ */

:root{
  --prf-navy:#20385B;
  --prf-yellow:#FFD54A;
  --prf-yellow-soft:#FFF3C4;
  --prf-line:#CBD7E6;
}

/* ---------- Boutons de tranches d'âge ---------- */
.age-section .ages{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:2px}
.age-chip{
  display:inline-flex;align-items:baseline;gap:5px;
  border:1.5px solid var(--prf-line);border-radius:999px;
  background:#fff;color:var(--prf-navy);
  padding:11px 20px;min-height:44px;font-size:15px;font-weight:500;
  transition:background .15s,border-color .15s,font-weight .15s
}
.age-chip small{font-size:12.5px;color:#6c7d96}
.age-chip bdi{font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
@media (hover:hover){
  .age-chip:hover{background:var(--prf-yellow-soft);border-color:var(--prf-yellow)}
}
.age-chip:active{background:var(--prf-yellow-soft)}
.age-chip[aria-pressed="true"]{
  background:var(--prf-yellow);border-color:var(--prf-yellow);font-weight:700
}
.age-chip[aria-pressed="true"] small{color:var(--prf-navy)}
.age-chip:focus-visible{outline:3px solid var(--prf-navy);outline-offset:2px}

/* ---------- Cartes produit ---------- */
.product-grid .product-card{
  display:flex;flex-direction:column;text-align:center;
  background:#fff;border:1px solid #e6ecf4;border-radius:16px;overflow:hidden
}
.product-card .product-photo{position:relative;display:block;background:var(--cream)}
.product-card .product-photo img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block}

.product-card .product-card-body{
  display:flex;flex-direction:column;align-items:center;gap:9px;
  padding:14px 13px 15px;flex:1
}
.product-card h3{
  font-size:14.5px;line-height:1.5;font-weight:600;color:var(--prf-navy);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-height:calc(2 * 1.5 * 14.5px)
}
.product-card .card-colors{
  display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;
  font-size:12px;color:#6c7d96;margin:0;min-height:18px
}
.product-card .card-sizes{
  display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0
}
.card-size{
  min-width:44px;min-height:34px;padding:6px 9px;
  border:1.5px solid var(--prf-line);border-radius:9px;background:#fff;
  font-size:12.5px;font-weight:600;color:var(--prf-navy);
  font-variant-numeric:tabular-nums;transition:background .15s,border-color .15s
}
@media (hover:hover){ .card-size:hover:not(:disabled){background:var(--prf-yellow-soft);border-color:var(--prf-yellow)} }
.card-size:active:not(:disabled){background:var(--prf-yellow-soft)}
.card-size[aria-pressed="true"]{background:var(--prf-yellow);border-color:var(--prf-yellow);color:var(--prf-navy)}
.card-size:disabled{opacity:.4;background:#f4f7fb;text-decoration:line-through;cursor:not-allowed}
.card-size:focus-visible{outline:3px solid var(--prf-navy);outline-offset:2px}

.product-card .card-price{
  display:flex;align-items:center;justify-content:center;gap:9px;margin-top:auto;padding-top:4px
}
.price-chip{
  background:var(--prf-yellow-soft);border-radius:10px;padding:5px 12px;
  display:inline-flex;align-items:baseline;gap:4px
}
.product-card .price-chip .money b{font-size:21px;font-weight:700;color:var(--prf-navy)}
.product-card .price-chip .money>span{font-size:11.5px;color:var(--prf-navy);opacity:.75}
.product-card .card-price s{color:#8b98ab;font-size:13px;font-weight:500}

.product-card .quick-buy{
  width:100%;margin-top:11px;min-height:46px;
  display:flex;align-items:center;justify-content:center;gap:8px;
  border:1.5px solid var(--prf-navy);border-radius:11px;
  background:var(--prf-navy);color:#fff;font-size:14.5px;font-weight:600;
  transition:background .15s,color .15s,border-color .15s
}
.product-card .quick-buy svg{width:18px;height:18px}
@media (hover:hover){
  .product-card .quick-buy:hover{background:var(--prf-yellow);border-color:var(--prf-yellow);color:var(--prf-navy)}
}
.product-card .quick-buy:active{background:var(--prf-yellow);border-color:var(--prf-yellow);color:var(--prf-navy)}
.product-card .quick-buy:focus-visible{outline:3px solid var(--prf-navy);outline-offset:3px}

/* ---------- Badges ---------- */
.prf-badge{
  position:absolute;inset-inline-start:10px;top:10px;z-index:2;
  font-size:11.5px;font-weight:700;line-height:1;
  padding:6px 11px;border-radius:999px;white-space:nowrap;
  box-shadow:0 1px 3px rgba(32,56,91,.14)
}
.prf-badge.new{background:#EFE9FB;color:var(--prf-navy)}
.prf-badge.best{background:var(--prf-yellow);color:var(--prf-navy)}
.prf-badge.pick{background:var(--prf-navy);color:#fff}
.prf-badge.offer{background:#FFE1D6;color:#8c3a1c}

/* ---------- Cartes de packs ---------- */
.pack-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.pack-card{
  position:relative;background:#fff;border:1.5px solid #e2dcf1;border-radius:18px;
  padding:22px 18px 18px;display:flex;flex-direction:column;align-items:center;gap:9px;
  transition:border-color .15s,box-shadow .15s
}
.pack-card.featured{border-color:var(--prf-yellow);box-shadow:0 4px 16px rgba(32,56,91,.08)}
.pack-flag{
  position:absolute;top:-11px;inset-inline-start:50%;transform:translateX(50%);
  background:var(--prf-yellow);color:var(--prf-navy);
  font-size:11px;font-weight:700;padding:4px 12px;border-radius:999px;white-space:nowrap
}
html[dir="ltr"] .pack-flag{transform:translateX(-50%)}
.pack-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--sky)}
.pack-icon svg{width:26px;height:26px;stroke-width:1px;color:var(--prf-navy)}
.pack-count{font-size:15px;font-weight:600;color:var(--prf-navy)}
.pack-price{background:var(--prf-yellow-soft);border-radius:11px;padding:7px 16px}
.pack-price .money b{font-size:26px;font-weight:700;color:var(--prf-navy)}
.pack-price .money>span{font-size:12px;color:var(--prf-navy);opacity:.75}
.pack-saving{font-size:13px;color:#4b6484;min-height:19px}
.pack-choose{
  margin-top:6px;width:100%;min-height:44px;
  display:flex;align-items:center;justify-content:center;
  border:1.5px solid var(--prf-navy);border-radius:11px;
  background:var(--prf-navy);color:#fff;font-size:14.5px;font-weight:600;
  transition:background .15s,color .15s,border-color .15s
}
@media (hover:hover){
  .pack-choose:hover{background:var(--prf-yellow);border-color:var(--prf-yellow);color:var(--prf-navy)}
}
.pack-choose:active{background:var(--prf-yellow);border-color:var(--prf-yellow);color:var(--prf-navy)}
.pack-choose:focus-visible{outline:3px solid var(--prf-navy);outline-offset:3px}

/* ---------- Icônes de réassurance : ramenées à une taille normale ---------- */
.trust svg{width:26px;height:26px;stroke-width:1px;color:var(--prf-navy)}
.trust>div,.trust>button{gap:12px;align-items:center}
.trust strong{font-size:14px;font-weight:600;color:var(--prf-navy)}
.trust small{font-size:12.5px;color:#6c7d96;margin-top:3px}

@media (max-width:860px){
  .pack-cards{grid-template-columns:1fr;gap:14px}
  .pack-card{flex-direction:row;flex-wrap:wrap;align-items:center;text-align:start;padding:16px;gap:10px 14px}
  .pack-card .pack-icon{flex:0 0 auto}
  .pack-card .pack-count{flex:1;min-width:110px}
  .pack-card .pack-price{margin-inline-start:auto}
  .pack-card .pack-saving{flex-basis:100%}
  .pack-flag{inset-inline-start:auto;inset-inline-end:14px;transform:none}
  html[dir="ltr"] .pack-flag{transform:none}
  .trust svg{width:24px;height:24px}
}
@media (max-width:560px){
  .age-section .ages{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;
    scrollbar-width:none;padding-inline:2px;scroll-snap-type:x proximity}
  .age-section .ages::-webkit-scrollbar{display:none}
  .age-chip{flex:0 0 auto;padding:10px 16px;font-size:14px;scroll-snap-align:center}
  .product-card h3{font-size:13.5px;min-height:calc(2 * 1.5 * 13.5px)}
  .card-size{min-width:40px;min-height:32px;padding:5px 7px;font-size:11.5px}
  .product-card .price-chip .money b{font-size:19px}
  .product-card .quick-buy{font-size:13.5px;min-height:44px}
  .pack-price .money b{font-size:23px}
}

/* ---------- Sélecteur de pack sur la fiche produit ----------
   Même langage visuel que les cartes de l'accueil : la carte choisie
   prend une bordure jaune et une coche, sans changer de dimensions. */
.bundle-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.bundle-options button{
  position:relative;background:#fff;border:2px solid var(--prf-line);border-radius:14px;
  padding:16px 12px 14px;display:flex;flex-direction:column;align-items:center;gap:6px;
  transition:border-color .15s,background .15s
}
@media (hover:hover){ .bundle-options button:hover{border-color:var(--prf-yellow);background:var(--prf-yellow-soft)} }
.bundle-options button[aria-pressed="true"]{border-color:var(--prf-yellow);background:var(--prf-yellow-soft)}
.bundle-options button[aria-pressed="true"]::after{
  content:'';position:absolute;top:8px;inset-inline-end:8px;width:18px;height:18px;border-radius:50%;
  background:var(--prf-yellow) no-repeat center/10px 8px;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.2 3.2L11 1.4' fill='none' stroke='%2320385B' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
}
.bundle-options button strong{font-size:14px;font-weight:600;color:var(--prf-navy)}
.bundle-options button .money{background:var(--prf-yellow-soft);border-radius:9px;padding:4px 11px}
.bundle-options button .money b{font-size:20px;font-weight:700;color:var(--prf-navy)}
.bundle-options button .money>span{font-size:11px;color:var(--prf-navy);opacity:.75}
.bundle-options button[aria-pressed="true"] .money{background:#fff}
.bundle-options .best-tag{
  position:absolute;top:-10px;inset-inline-start:50%;transform:translateX(50%);
  background:var(--prf-yellow);color:var(--prf-navy);font-size:10.5px;font-weight:700;
  padding:3px 10px;border-radius:999px;white-space:nowrap
}
html[dir="ltr"] .bundle-options .best-tag{transform:translateX(-50%)}
.bundle-options button:focus-visible{outline:3px solid var(--prf-navy);outline-offset:3px}
@media (max-width:560px){
  .bundle-options{gap:8px}
  .bundle-options button{padding:14px 6px 12px}
  .bundle-options button strong{font-size:12.5px}
  .bundle-options button .money b{font-size:17px}
  .bundle-options button .money{padding:3px 8px}
}

/* ============================================================
   Mode « composer mon pack » et collections
   ============================================================ */

/* ---------- En-tête de la boutique ---------- */
.shop-heading.pack-mode{background:var(--lilac)}
.shop-heading .pack-instruction{font-size:16px;color:var(--prf-navy);margin-top:6px}
.shop-heading .pack-price-line{
  display:inline-block;margin-top:10px;background:var(--prf-yellow-soft);
  border-radius:11px;padding:6px 14px;font-size:14.5px;font-weight:600;color:var(--prf-navy)
}
.shop-heading .coll-desc{font-size:15px;color:#4b6484;margin-top:5px}
.shop-heading .coll-context{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:center;align-items:center;margin-top:12px}
.coll-chip{
  display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--prf-yellow);
  border-radius:999px;padding:6px 14px;font-size:13.5px;font-weight:600;color:var(--prf-navy)
}
.coll-chip svg{width:15px;height:15px}
.coll-exit{font-size:13.5px;color:#4b6484;text-decoration:underline;text-underline-offset:3px}
.coll-exit:hover{color:var(--prf-navy)}

.product-card .quick-buy.pack-add{background:#fff;color:var(--prf-navy)}
@media (hover:hover){
  .product-card .quick-buy.pack-add:hover{background:var(--prf-yellow);border-color:var(--prf-yellow);color:var(--prf-navy)}
}
.product-card .quick-buy.pack-add:active{background:var(--prf-yellow);border-color:var(--prf-yellow)}

/* ---------- Panneau de composition ---------- */
.prf-pack{
  position:fixed;inset-block:0;inset-inline-end:0;width:340px;z-index:8000;
  background:#fff;border-inline-start:1px solid var(--prf-line);
  box-shadow:-8px 0 28px rgba(32,56,91,.10);
  display:flex;flex-direction:column
}
html[dir="ltr"] .prf-pack{box-shadow:8px 0 28px rgba(32,56,91,.10)}
.prf-pack[hidden]{display:none!important}
.prf-pack-inner{display:flex;flex-direction:column;height:100%;padding-top:var(--prf-pack-top,0)}
.prf-pack-head{
  display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--prf-line)
}
.prf-pack-head strong{font-size:15.5px;color:var(--prf-navy)}
.prf-pack-progress{
  margin-inline-start:auto;background:var(--prf-yellow-soft);color:var(--prf-navy);
  border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:700;white-space:nowrap
}
.prf-pack-close{display:none}

.prf-pack-slots{flex:1;overflow:auto;padding:14px 18px;display:flex;flex-direction:column;gap:10px}
.prf-slot{
  display:flex;align-items:center;gap:11px;border:1.5px solid var(--prf-line);
  border-radius:13px;padding:10px;min-height:78px
}
.prf-slot.empty{border-style:dashed;background:#f8fafd;justify-content:flex-start;gap:12px}
.prf-slot-num{
  width:28px;height:28px;border-radius:50%;background:#fff;border:1.5px solid var(--prf-line);
  display:grid;place-items:center;font-size:13px;font-weight:700;color:#8b98ab;flex:none
}
.prf-slot-hint{font-size:13.5px;color:#8b98ab}
.prf-slot img{width:56px;height:56px;border-radius:10px;object-fit:cover;background:var(--cream);flex:none}
.prf-slot-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.prf-slot-info b{font-size:13px;font-weight:600;color:var(--prf-navy);line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prf-slot-info span{font-size:12px;color:#6c7d96}
.prf-slot-actions{display:flex;flex-direction:column;gap:4px;flex:none}
.prf-slot-actions button{font-size:12px;color:#6c7d96;text-decoration:underline;text-underline-offset:2px;padding:2px 0}
.prf-slot-actions button:hover{color:var(--prf-navy)}

.prf-pack-foot{border-top:1px solid var(--prf-line);padding:14px 18px;display:flex;flex-direction:column;gap:10px;background:var(--cream)}
.prf-pack-foot .prf-summary{background:#fff}
.prf-pack-foot .btn:disabled{opacity:.5;cursor:not-allowed}
.prf-pack-clear{font-size:12.5px;color:#8b98ab;text-decoration:underline;text-underline-offset:3px}
.prf-pack-clear:hover{color:#c0442f}

/* Le panneau devient une vraie colonne : la page entière se décale,
   en-tête et bandeaux compris, plutôt que de passer dessous. */
@media (min-width:1101px){
  body.prf-has-pack{padding-inline-end:340px}
  /* le bouton WhatsApp flottant occupe le bas du côté du panneau */
  body.prf-has-pack .prf-pack-foot{padding-bottom:74px}
  .prf-pack-bar{display:none}
}
@media (max-width:1100px){
  .prf-pack{
    inset-block:auto 0;inset-inline:0;width:auto;max-height:78vh;
    border-radius:20px 20px 0 0;border:1px solid var(--prf-line);
    transform:translateY(102%);transition:transform .22s ease
  }
  .prf-pack.is-open{transform:none}
  .prf-pack-close{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--cream);color:#6c7d96}
  .prf-pack-bar{
    position:fixed;inset-inline:0;bottom:0;z-index:7900;padding:10px 14px;
    background:var(--prf-navy);box-shadow:0 -4px 18px rgba(32,56,91,.18)
  }
  .prf-pack-bar[hidden]{display:none!important}
  .prf-pack-bar button{
    width:100%;min-height:48px;display:flex;align-items:center;gap:12px;
    color:#fff;font-size:14.5px;font-weight:600
  }
  .prf-pack-bar-count{background:#ffffff22;border-radius:999px;padding:4px 11px;font-size:13px}
  .prf-pack-bar-total{font-variant-numeric:tabular-nums}
  .prf-pack-bar-open{margin-inline-start:auto;color:var(--prf-yellow);text-decoration:underline;text-underline-offset:3px}
  .prf-pack-bar.is-complete{background:var(--prf-yellow)}
  .prf-pack-bar.is-complete button{color:var(--prf-navy)}
  .prf-pack-bar.is-complete .prf-pack-bar-count{background:#20385b1a}
  .prf-pack-bar.is-complete .prf-pack-bar-open{color:var(--prf-navy)}
  /* La barre de pack remplace le décalage : on libère la place en bas. */
  body.prf-has-pack{padding-bottom:74px}
}

/* ---------- Choix de la taille pour le pack ---------- */
.prf-pack-sizes{margin:16px 0 12px}
.prf-pack-sizes>span{display:block;font-size:12.5px;font-weight:600;color:#6c7d96;margin-bottom:7px}
.prf-quick-title{font-size:17px;color:var(--prf-navy);margin-bottom:12px}
.prf-pack-recap{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.prf-pack-recap .prf-line{padding:8px}
.prf-pack-back{
  display:inline-block;margin-bottom:14px;font-size:13.5px;color:#4b6484;
  text-decoration:underline;text-underline-offset:3px
}
.prf-pack-back:hover{color:var(--prf-navy)}

/* ============================================================
   Visuels des offres packs
   La zone photo a la même hauteur sur les trois cartes et un ratio
   fixe : la place est réservée avant le chargement, donc rien ne
   saute. object-fit:contain garantit qu'aucun visage ni pied n'est
   coupé et qu'aucune image n'est déformée.
   ==========================================================*/
.pack-card .pack-shot{
  width:100%;aspect-ratio:5/4;background:#fff;
  border:1px solid #eceff5;border-radius:14px;
  display:block;overflow:hidden
}
.pack-card .pack-shot img{
  width:100%;height:100%;object-fit:contain;object-position:center;
  background:#fff;display:block
}
.pack-note{
  margin-top:16px;text-align:center;font-size:13.5px;color:#4b6484
}

@media(max-width:700px){
  /* Sur mobile la carte redevient une colonne : la photo garde sa
     place en haut, à pleine largeur, au lieu d'être compressée. */
  .pack-cards .pack-card{flex-direction:column;align-items:center;text-align:center}
  .pack-cards .pack-card .pack-shot{max-width:280px}
  .pack-cards .pack-card .pack-count{flex:0 0 auto;min-width:0}
  .pack-cards .pack-card .pack-price{margin-inline-start:0}
  .pack-cards .pack-card .pack-saving{flex-basis:auto}
  .pack-note{margin-top:12px;font-size:12.5px}
}

/* ============================================================
   Boutique : barre de résultats, filtres, couleurs compactes
   Les états actifs passent en jaune. Les règles visent les
   éléments réellement rendus (des liens), sans !important.
   ==========================================================*/

/* ---- Résultats et tri, au-dessus de la grille ---- */
.shop-toolbar{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--line)
}
.shop-toolbar .shop-count{
  font-size:14.5px;font-weight:600;color:var(--navy);margin-inline-end:auto
}
.shop-toolbar .shop-sort{display:flex;align-items:center;gap:9px;margin:0}
.shop-toolbar .shop-sort label{font-size:13px;color:var(--muted)}
.shop-toolbar .shop-sort select{padding:8px 11px;font-size:13.5px;border-radius:9px}

/* ---- Raccourcis de collections ---- */
.coll-shortcuts{display:flex;flex-wrap:wrap;gap:7px}
.coll-shortcuts a{
  display:inline-flex;align-items:center;gap:6px;
  border:1px solid #c6d5e6;border-radius:30px;padding:7px 12px;
  background:#fff;font-size:12.5px;font-weight:500;color:var(--ink);text-decoration:none
}
.coll-shortcuts a b{
  font-size:11px;font-weight:600;color:var(--muted);
  background:#eef3f9;border-radius:20px;padding:1px 6px
}
.coll-shortcuts a:hover{border-color:var(--navy)}
.coll-shortcuts a[aria-pressed="true"]{
  background:var(--yellow);border-color:var(--yellow);color:var(--navy);font-weight:700
}
.coll-shortcuts a[aria-pressed="true"] b{background:#ffffffa6;color:var(--navy)}

/* ---- Catégorie, taille, disponibilité : mêmes boutons, actif en jaune ---- */
.filter-cats{display:flex;flex-wrap:wrap;gap:7px}
.filter-cats a,
.filter-sizes a,
.filter-stock{
  border:1px solid #c6d5e6;border-radius:30px;padding:9px 14px;
  background:#fff;font-size:12.5px;font-weight:500;min-height:38px
}
.filter-sizes a{padding:9px 6px;font-variant-numeric:tabular-nums}
.filter-stock{width:100%;padding:10px 14px}
.filter-cats a:hover,
.filter-sizes a:hover,
.filter-stock:hover{border-color:var(--navy)}
.filter-cats a[aria-pressed="true"],
.filter-sizes a[aria-pressed="true"],
.filter-stock[aria-pressed="true"]{
  background:var(--yellow);border-color:var(--yellow);color:var(--navy);font-weight:700
}

/* ---- Couleurs : grille compacte de pastilles, plus de liste verticale ---- */
.desktop-filters .filter-colors,
.sheet-body .filter-colors{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px
}
.desktop-filters .filter-colors a,
.sheet-body .filter-colors a{
  gap:7px;padding:6px 8px;border:1px solid transparent;border-radius:9px;
  font-size:12px;min-height:36px
}
.desktop-filters .filter-colors a:hover,
.sheet-body .filter-colors a:hover{background:#fff;border-color:#c6d5e6}
.desktop-filters .filter-colors i,
.sheet-body .filter-colors i{width:19px;height:19px;font-size:11px}
.desktop-filters .filter-colors span,
.sheet-body .filter-colors span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.desktop-filters .filter-colors a[aria-pressed="true"],
.sheet-body .filter-colors a[aria-pressed="true"]{
  background:var(--yellow);border-color:var(--yellow)
}

/* ---- Prix : rubrique repliable ---- */
.filter-price{border-top:1px solid var(--line);border-bottom:0;padding:14px 0}
.filter-price summary{font-size:14px;font-weight:600;color:var(--navy)}
.filter-price .chev{
  width:8px;height:8px;border-right:2px solid var(--navy);border-bottom:2px solid var(--navy);
  transform:rotate(45deg);margin-bottom:3px;transition:transform .15s
}
.filter-price[open] .chev{transform:rotate(-135deg);margin-bottom:-2px}
.filter-price .price-row{display:flex;gap:8px;margin-top:12px}
.filter-price .price-row label{flex:1;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}
.filter-price .price-row input{padding:8px 10px;font-size:13px}
.filter-price .price-apply{
  margin-top:10px;width:100%;min-height:38px;border-radius:9px;
  border:1px solid var(--navy);background:var(--navy);color:#fff;font-size:13px;font-weight:600
}
.filter-price .price-apply:hover{background:var(--yellow);border-color:var(--yellow);color:var(--navy)}

/* ---- Filtres actifs : visibles et supprimables ---- */
.filter-chips a{
  display:inline-flex;align-items:center;gap:6px;
  background:#fff4c9;border:1px solid var(--yellow);border-radius:30px;
  padding:6px 12px;font-size:12px;font-weight:600;color:var(--navy)
}
.filter-chips a:hover{background:var(--yellow)}
.filter-chips a.reset{background:#f0f4f9;border-color:var(--line);color:#4b6484;font-weight:500}

/* ---- Panneau mobile : la première rubrique n'est plus la catégorie ---- */
@media(max-width:700px){
  .sheet-body fieldset:first-child{display:block}
  .sheet-body fieldset:first-child legend{margin-bottom:12px}
  .sheet-body .filter-colors{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .sheet-body .filter-colors a{flex-direction:row;font-size:13px;min-height:42px}
  .sheet-body .filter-cats a,.sheet-body .filter-sizes a{font-size:13.5px;min-height:44px}
  .shop-toolbar{gap:10px}
  .shop-toolbar .shop-count{font-size:13.5px;order:3;flex-basis:100%;margin-inline-end:0}
}

/* ============================================================
   Sortie de la composition d'un pack
   Le client qui change d'avis doit pouvoir fermer le panneau :
   une croix visible sur ordinateur comme sur mobile, et une
   confirmation à l'intérieur du panneau dès qu'un ensemble
   a déjà été choisi — jamais une boîte du navigateur.
   ==========================================================*/
.prf-pack-head .prf-pack-close{
  display:grid;place-items:center;width:30px;height:30px;border-radius:50%;
  background:var(--cream);color:#6c7d96;font-size:14px;flex-shrink:0
}
.prf-pack-head .prf-pack-close:hover{background:var(--prf-yellow);color:var(--prf-navy)}
.prf-pack-head .prf-pack-collapse{display:none}
.prf-pack-head .prf-pack-progress{margin-inline-start:auto;font-size:12.5px;color:#6c7d96}

.prf-pack-leave{
  display:block;width:100%;margin-top:6px;padding:8px;
  font-size:12.5px;color:#6c7d96;text-decoration:underline;text-underline-offset:3px
}
.prf-pack-leave:hover{color:var(--prf-navy)}

.prf-pack-confirm{
  position:absolute;inset:var(--prf-pack-top,0) 0 0 0;background:#fff;
  padding:26px 22px;display:flex;flex-direction:column;justify-content:center;
  gap:10px;z-index:3;text-align:center
}
.prf-pack-confirm[hidden]{display:none!important}
.prf-pack-confirm strong{font-size:15px;color:var(--prf-navy)}
.prf-pack-confirm p{font-size:13px;color:#5b6e88;line-height:1.6}
.prf-pack-confirm-row{display:flex;gap:9px;margin-top:4px}
.prf-pack-confirm-row .btn{flex:1;min-height:44px;font-size:13.5px;padding:10px 12px}
.prf-pack{position:fixed}
.prf-pack .prf-pack-inner{position:relative}

@media(max-width:700px){
  /* Sur mobile : « ▾ » réduit la feuille, « ✕ » quitte la composition. */
  .prf-pack-head .prf-pack-collapse{
    display:grid;place-items:center;width:30px;height:30px;border-radius:50%;
    background:var(--cream);color:#6c7d96;font-size:15px;flex-shrink:0
  }
  .prf-pack-bar{display:flex;align-items:center;gap:8px}
  .prf-pack-bar>button:first-child{flex:1}
  .prf-pack-bar .prf-pack-bar-exit{
    flex:0 0 auto;width:38px;height:38px;min-height:0;border-radius:50%;
    display:grid;place-items:center;background:#ffffff2e;color:#fff;font-size:14px
  }
  .prf-pack-bar.is-complete .prf-pack-bar-exit{background:#20385b1a;color:var(--prf-navy)}
  .prf-pack-bar>button:first-child{flex:1;width:auto}
}

/* ===== Rayon homme : la grille des rayons passe à trois vignettes =====
   La vignette homme est une photo produit, pas un fond pastel : un voile
   clair du côté du texte garde le libellé lisible. */
.categories.cats-3{grid-template-columns:repeat(3,1fr)}
.categories .cat-photo>img{object-position:center 16%}
.categories .cat-photo::before{content:"";position:absolute;inset:0;pointer-events:none;
background:linear-gradient(90deg,#fffffff5 0%,#ffffffdb 32%,#ffffff00 64%)}
.categories .cat-photo>span{z-index:1}
@media(max-width:700px){
.categories.cats-3{grid-template-columns:1fr 1fr}
.categories.cats-3>.category-tile:last-child{grid-column:1/-1;aspect-ratio:1.7}
.categories .cat-photo>img{object-position:center 14%}
.categories .cat-photo::before{background:linear-gradient(0deg,#ffffffe6 0%,#ffffff00 46%)}
}

/* ===== Page « composez votre pack » ===== */
.pack-hero{background:var(--lilac);padding:40px 0 34px;text-align:center}
.pack-hero .eyebrow{margin:0 0 6px;letter-spacing:.14em;font-size:12px;font-weight:600;color:var(--muted)}
.pack-hero h1{margin:0 0 8px;font-size:clamp(28px,4vw,44px);font-weight:600;line-height:1.2}
.pack-hero-sub{margin:0 auto 22px;max-width:60ch;color:var(--muted)}
.pack-tiers{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.pack-tier{position:relative;flex:1 1 200px;max-width:250px;background:#fff;border:2px solid transparent;
border-radius:18px;padding:18px 14px 14px;display:flex;flex-direction:column;align-items:center;gap:4px;
text-decoration:none;color:inherit;box-shadow:0 2px 10px #1c355d12;transition:transform .15s,border-color .15s}
.pack-tier:hover{transform:translateY(-2px)}
.pack-tier[aria-pressed=true]{border-color:var(--navy);box-shadow:0 6px 18px #1c355d24}
.pack-tier strong{font-size:16px;font-weight:600}
.pack-tier .money b{font-size:28px;font-weight:700}
.pack-tier small{color:var(--muted);font-size:12.5px}
.pack-tier[aria-pressed=true] small{color:#2f7a5b;font-weight:600}
.pack-tier-flag{position:absolute;top:-11px;inset-inline-start:50%;transform:translateX(-50%);
background:var(--yellow);color:var(--ink);font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap}
.pack-hero-note{margin:20px 0 0;display:flex;gap:10px;justify-content:center;align-items:center;
flex-wrap:wrap;font-size:13.5px;color:var(--muted)}
.pack-hero-note svg{vertical-align:-4px;margin-inline-end:4px}

.pack-steps{background:var(--cream);border-block:1px solid var(--line)}
.pack-steps .wrap{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;padding:16px 0}
.pack-step{display:flex;align-items:center;gap:9px;font-size:14px}
.pack-step span{flex:0 0 26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;
display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
.pack-step p{margin:0}

@media(max-width:700px){
.pack-hero{padding:26px 0 22px}
.pack-tiers{gap:9px}
.pack-tier{flex:1 1 100%;max-width:none;flex-direction:row;flex-wrap:wrap;
justify-content:space-between;align-items:center;text-align:start;padding:12px 14px;gap:6px 10px}
.pack-tier strong{flex:1 1 auto;font-size:15px}
.pack-tier .money b{font-size:22px}
.pack-tier small{flex:1 1 100%;min-width:0;order:3}
.pack-tier-flag{inset-inline-start:auto;inset-inline-end:12px;transform:none}
.pack-steps .wrap{flex-direction:column;gap:9px;padding:13px 0}
}

/* Pack : agrandir la sélection (plus d'un enfant) */
.pack-tier-more{border:2px dashed var(--line);background:#fffffff0;justify-content:center}
.pack-tier-more strong{font-size:14px;font-weight:600}
.pack-tier-plus{font-size:30px;line-height:1;font-weight:700;color:var(--navy)}
.pack-tier-more small{color:var(--muted)}
.prf-pack-more{width:100%;margin-bottom:9px;display:flex;align-items:center;justify-content:center;gap:7px;
background:#fff;border:1.5px dashed var(--navy);color:var(--navy);border-radius:12px;padding:10px 12px;
font:600 13.5px/1.2 inherit;cursor:pointer}
.prf-pack-more:hover{background:var(--sky)}
.prf-pack-more[hidden]{display:none!important}

/* Filet de sécurité mobile : aucun élément ne doit élargir la page.
   Un débordement horizontal décale tout le gabarit en RTL et coupe les
   panneaux fixes, qui se calent alors sur la largeur du document. */
@media(max-width:700px){
html,body{max-width:100%;overflow-x:hidden}
.pack-tier strong,.pack-step p{min-width:0;overflow-wrap:anywhere}
}

/* ---------- Galerie de choix d'un modèle ----------
   Le client compose son pack en regardant des photos, pas en lisant des
   noms de modèles qu'il n'a aucune raison de connaître. */
.prf-picker{position:fixed;inset:0;z-index:9200}
.prf-picker[hidden]{display:none!important}
.prf-picker-backdrop{position:absolute;inset:0;background:rgba(28,53,93,.45)}
.prf-picker-panel{position:absolute;inset-inline:0;bottom:0;top:auto;background:#fff;
border-radius:22px 22px 0 0;max-height:86vh;display:flex;flex-direction:column;
box-shadow:0 -12px 40px rgba(28,53,93,.22)}
.prf-picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;
padding:15px 18px;border-bottom:1px solid var(--line)}
.prf-picker-head strong{font-size:16px;color:var(--navy)}
.prf-picker-close{width:32px;height:32px;border-radius:50%;background:var(--cream);color:var(--muted);
display:flex;align-items:center;justify-content:center;font-size:15px}
.prf-picker-search{padding:12px 18px 4px}
.prf-picker-search input{width:100%}
.prf-picker-grid{flex:1;overflow:auto;padding:12px 18px 22px;display:grid;gap:12px;
grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.prf-picker-card{display:flex;flex-direction:column;gap:6px;text-align:start;padding:8px;
border:1.5px solid var(--line);border-radius:15px;background:#fff}
.prf-picker-card img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:11px;background:var(--cream)}
.prf-picker-card:hover{border-color:var(--navy)}
.prf-picker-card.is-on{border-color:var(--navy);background:var(--sky)}
.prf-picker-name{font-size:12.5px;font-weight:600;line-height:1.35;color:var(--ink);
display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prf-picker-sizes{font-size:11px;color:var(--muted)}
.prf-picker-none{padding:30px 6px;text-align:center;color:var(--muted)}
@media(min-width:760px){
.prf-picker{display:flex;align-items:center;justify-content:center;padding:22px}
.prf-picker-panel{position:relative;inset:auto;width:min(720px,92vw);border-radius:22px;max-height:82vh}
.prf-picker-grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr))}
}
.prf-model-field select{display:none}
.prf-model-btn{display:flex;align-items:center;gap:9px;width:100%;text-align:start;
border:1px solid var(--line);border-radius:9px;background:#fff;padding:7px 11px;min-height:46px}
.prf-model-btn img{width:34px;height:34px;border-radius:7px;object-fit:cover;background:var(--cream);flex:0 0 34px}
.prf-model-btn span{flex:1;min-width:0;font-size:13px;line-height:1.35;overflow:hidden;
display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.prf-model-btn i{font-style:normal;color:var(--muted);flex:0 0 auto}
.prf-model-btn.is-empty span{color:var(--muted)}
.prf-model-btn:hover{border-color:var(--navy)}
.prf-model-btn.is-empty img{display:none}
.prf-model-btn.is-empty{padding-inline-start:13px}

/* Le thème injecte son propre tunnel de commande, invisible, dans chaque page.
   Ses feuilles de style ne sont plus chargées : cette règle garantit que ce
   squelette reste hors de vue au lieu de réapparaître en vrac. */
.opsim-checkout-popup-wrapper,#opsim-checkout-popup,.opsim-modular-checkout-wrapper,
#sticky-checkout-bar,.sticky-checkout-bar,.pswp,#photoswipe-fullscreen-dialog{display:none!important}

/* Secours de marque : si le fichier du logo manque, on écrit le nom plutôt que
   de laisser une image cassée. Voir inc/visuals.php. */
.brand-text{display:flex;align-items:center;justify-content:center;height:72px;font-family:Georgia,serif;letter-spacing:3px;font-size:20px;font-weight:600;color:var(--navy);white-space:nowrap}
.prf-foot-logo .brand-text{height:auto;padding:6px 0;font-size:27px;color:#fff}
@media(max-width:700px){.brand-text{height:59px;font-size:17px;letter-spacing:2px}}
