@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@400;500;600&display=swap');

/* Catalogue & fiches produit plein écran */
.product-card__image{z-index:2!important}.product-card__copy{z-index:3!important}
.hero__eyebrow{margin-bottom:20px}.brand-manifesto{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end;padding:95px max(9vw,38px);border-bottom:1px solid var(--line);background:#10100f}.brand-manifesto h2{margin:0}.brand-manifesto>p{max-width:410px;margin:0 0 8px;color:#b9b3aa;font-size:15px;line-height:1.7}.collection-intro{max-width:440px;margin:-7px 0 31px;color:#a9a39a;font-size:13px;line-height:1.65}.proof-line{display:flex;justify-content:space-around;gap:20px;padding:27px 38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#121211}.proof-line span{font-size:9px;letter-spacing:1.7px;color:#d4cec5}.journal>p:not(.eyebrow){max-width:410px;color:#b9b3aa;font-size:14px;line-height:1.7;margin:0 0 29px}@media(max-width:760px){.brand-manifesto{grid-template-columns:1fr;padding:64px 30px;gap:22px}.brand-manifesto>p{font-size:13px}.proof-line{display:grid;grid-template-columns:1fr;text-align:center;padding:24px 17px;gap:13px}.collection-intro{margin:0 0 25px}.journal>p:not(.eyebrow){font-size:13px}}
.product-card__image--front,.product-card__image--back{transition:opacity .42s ease,transform .6s ease}.product-card__image--back{opacity:0}.product-card:hover .product-card__image--front,.product-card:focus-within .product-card__image--front{opacity:0;transform:scale(1.035)}.product-card:hover .product-card__image--back,.product-card:focus-within .product-card__image--back{opacity:1;transform:scale(1.02)}
.product-card__image--front,.product-card__image--back{object-fit:contain!important;object-position:center!important;transform:scale(.88)!important}.product-card:hover .product-card__image--front,.product-card:focus-within .product-card__image--front{transform:scale(.92)!important}.product-card:hover .product-card__image--back,.product-card:focus-within .product-card__image--back{transform:scale(.92)!important}
.product-card{min-height:650px!important;background:#141413!important}.product-card::before{display:none!important}.product-card__image{inset:0 0 auto!important;width:100%!important;height:64%!important;bottom:auto!important;background:#242421!important}.product-card__copy{position:absolute!important;z-index:4!important;left:0;right:0;bottom:0;min-height:36%;padding:24px!important;background:#111110!important;justify-content:flex-end}.product-card__copy::before{content:'';position:absolute;left:0;right:0;top:-36px;height:37px;background:linear-gradient(180deg,transparent,#111110)}.product-card__copy>*{position:relative;z-index:1}@media(max-width:760px){.product-card{min-height:610px!important}.product-card__image{height:60%!important}.product-card__copy{min-height:40%}}
.product-page__gallery{display:block!important}.product-page__main-image{position:relative;margin:0;height:min(72vh,760px);background:#262622;overflow:hidden}.product-page__main-image img{display:block;width:100%;height:100%;object-fit:contain;background:#262622;filter:brightness(1.18) contrast(1.08)}.product-page__main-image figcaption{position:absolute;left:16px;bottom:16px;background:rgba(8,8,8,.8);padding:8px 10px;font-size:9px;letter-spacing:1.35px}.product-page__thumbs{display:flex;gap:9px;overflow-x:auto;padding:12px 0 2px}.product-page__thumb{flex:0 0 82px;width:82px;height:96px;padding:0;border:1px solid transparent;background:#272724;cursor:pointer;overflow:hidden}.product-page__thumb img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(1.07)}.product-page__thumb.is-selected{border-color:var(--bone)}.product-page__thumb:focus-visible{outline:1px solid var(--bone);outline-offset:3px}@media(max-width:520px){.product-page__main-image{height:58vh}.product-page__thumb{flex-basis:64px;width:64px;height:76px}}
.product-page__main-image{isolation:isolate;background:#0d0d0c}.product-page__main-image::before{content:'';position:absolute;inset:-25px;background-image:linear-gradient(rgba(8,8,8,.3),rgba(8,8,8,.3)),var(--product-main-image);background-position:center;background-size:cover;filter:blur(22px) brightness(.56);z-index:-1}.product-page__main-image img{position:relative;z-index:1;background:transparent!important}.product-page__main-image figcaption{z-index:2}
.product-card{cursor:pointer}.product-card:focus-visible{outline:1px solid var(--bone);outline-offset:4px}.product-card::before{background:linear-gradient(180deg,rgba(9,9,9,.02) 12%,rgba(9,9,9,.12) 54%,rgba(9,9,9,.9) 100%)!important}.product-card__image{object-fit:cover!important;object-position:center!important;background:#252522!important;filter:grayscale(.04) brightness(1.18) contrast(1.1)!important}.product-card__details{position:relative;z-index:3;color:var(--bone);text-decoration:none}.product-card__buy{position:relative;z-index:3}.product-page__main{padding:118px 38px 90px;min-height:100vh}.product-page__crumb{display:flex;gap:11px;margin:0 0 24px;font-size:9px;letter-spacing:1.4px;color:#aaa59d}.product-page__crumb a{color:var(--bone);text-decoration:none}.product-page__layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:48px;align-items:start}.product-page__gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}.product-page__photo{position:relative;aspect-ratio:1/1.17;margin:0;overflow:hidden;background:#242421}.product-page__photo:first-child{grid-column:1/-1;aspect-ratio:1.15/1}.product-page__photo img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(1.1) contrast(1.07)}.product-page__photo--1 img,.product-page__photo--2 img,.product-page__photo--3 img{object-fit:contain;background:#252522;filter:brightness(1.28) contrast(1.1)}.product-page__photo figcaption{position:absolute;left:15px;bottom:13px;font-size:9px;letter-spacing:1.4px;background:rgba(8,8,8,.72);padding:6px 8px}.product-page__info{position:sticky;top:108px;padding:18px 0 30px}.product-page__info h1,.product-page__missing h1{font:500 clamp(46px,4.6vw,76px)/.84 var(--serif);margin:0 0 20px}.product-page__price{font:500 27px var(--serif);margin:0 0 30px}.product-page__description{font-size:14px;line-height:1.65;color:#bcb6ad;margin:0 0 31px}.product-page__info dl{margin:0;border-top:1px solid var(--line)}.product-page__info dl div{padding:15px 0;border-bottom:1px solid var(--line)}.product-page__info dt{font-size:9px;letter-spacing:1.4px;color:#aaa59d;margin:0 0 7px}.product-page__info dd{font-size:12px;line-height:1.55;margin:0;color:#d4cec5}.product-page__fit{width:100%;margin:20px 0 12px}.product-page__purchase{display:grid;grid-template-columns:1fr 1.35fr;gap:8px;margin-top:10px}.product-page__purchase label{display:none}.product-page__purchase select{border:1px solid rgba(232,225,214,.5);background:#151514;color:var(--bone);font:10px var(--sans);letter-spacing:1.1px;padding:13px 11px}.product-page__purchase .solid-button{padding:14px 11px;white-space:nowrap}.product-page__note{font-size:10px;line-height:1.5;color:#8f8a82;margin:18px 0 0}.product-page__missing{min-height:72vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
@media(max-width:900px){.product-page__layout{grid-template-columns:1fr;gap:22px}.product-page__info{position:static}.product-page__main{padding:95px 17px 58px}.product-page__photo:first-child{aspect-ratio:1/1.1}}
@media(max-width:520px){.product-page__gallery{gap:7px}.product-page__purchase{grid-template-columns:1fr}.product-page__info h1{font-size:49px}.product-card__image{filter:grayscale(.05) brightness(1.28) contrast(1.1)!important}}
:root{--black:#0b0b0b;--coal:#20201f;--bone:#e8e1d6;--chrome:#928f89;--taupe:#332d28;--line:rgba(232,225,214,.18);--sans:Inter,Arial,sans-serif;--serif:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}body{margin:0;background:var(--black);color:var(--bone);font-family:var(--sans);font-size:13px}.topbar{height:74px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 38px;border-bottom:1px solid var(--line);position:absolute;z-index:3;width:100%;background:rgba(11,11,11,.76);backdrop-filter:blur(8px)}.topbar nav{display:flex;gap:30px}.topbar a,footer a{color:inherit;text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:2px}.wordmark{font:500 29px/1 var(--serif)!important;letter-spacing:7px!important}.bag-button,.menu-toggle,.text-button{border:0;background:transparent;color:inherit;text-transform:uppercase;letter-spacing:1.5px;font:10px var(--sans);cursor:pointer;justify-self:end}.menu-toggle{display:none}.hero{height:min(820px,90vh);background:linear-gradient(90deg,rgba(5,5,5,.5),rgba(5,5,5,.05),rgba(5,5,5,.55)),url('assets/campaign.png') center 24%/cover;display:grid;place-items:center;text-align:center;position:relative}.hero-copy{margin-top:56px}.eyebrow{font-size:10px;letter-spacing:2.3px;margin:0 0 16px;color:#c9c4bc;text-transform:uppercase}.hero h1,.journal h2{font:500 clamp(58px,8vw,130px)/.78 var(--serif);letter-spacing:2px;margin:0 0 42px}.outline-button,.solid-button{display:inline-block;text-decoration:none;color:var(--bone);border:1px solid rgba(232,225,214,.7);padding:15px 27px;background:transparent;font:10px var(--sans);letter-spacing:1.8px;cursor:pointer}.solid-button{background:var(--bone);color:var(--black);border-color:var(--bone)}.worlds{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.worlds article{padding:65px max(7vw,38px);min-height:330px}.worlds article+article{border-left:1px solid var(--line)}h2{font:500 clamp(33px,4.3vw,65px)/.82 var(--serif);letter-spacing:1px;margin:0 0 22px}.worlds p:not(.eyebrow),.sigil-section p:not(.eyebrow){max-width:270px;line-height:1.75;color:#b6b0a7}.worlds a{font-size:10px;color:var(--bone);letter-spacing:1.8px;text-decoration:none;border-bottom:1px solid var(--chrome);padding-bottom:5px}.sigil-section{display:grid;grid-template-columns:1fr 1fr;min-height:510px;background:var(--coal)}.sigil-section>div{padding:100px max(7vw,38px)}.sigil-section img{width:100%;height:100%;object-fit:cover;filter:grayscale(.35) contrast(1.05)}.shop{padding:110px 38px}.section-header{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:28px}.section-header h2{margin:0}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.product-card{background:#181817;min-height:370px;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;position:relative;overflow:hidden}.product-card::before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,#343330,#111);opacity:.9}.product-card:nth-child(2)::before{background:linear-gradient(145deg,#252726,#0a0a0a)}.product-card:nth-child(3)::before{background:linear-gradient(145deg,#37342f,#111)}.product-card>*{position:relative}.product-card p{font-size:10px;letter-spacing:1.6px;margin:0 0 10px}.product-card h3{font:500 32px/1 var(--serif);margin:0 0 15px}.product-card footer{padding:0;border:0;display:flex;justify-content:space-between;font-size:11px}.product-card button{margin-top:16px;align-self:flex-start}.journal{background:linear-gradient(rgba(11,11,11,.5),rgba(11,11,11,.84)),url('assets/sigil.png') center/cover;min-height:560px;padding:140px 9vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}footer{display:flex;gap:24px;justify-content:space-between;padding:23px 38px;border-top:1px solid var(--line);font-size:9px;letter-spacing:1.4px;color:#a8a39b}.bag-drawer{position:fixed;z-index:10;right:0;top:0;width:min(400px,100%);height:100vh;background:#151514;border-left:1px solid var(--line);padding:28px;transform:translateX(100%);transition:.3s;display:flex;flex-direction:column}.bag-drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px}.drawer-head button,.dialog-close{background:transparent;color:var(--bone);border:0;font:32px var(--serif);cursor:pointer}.bag-items{flex:1;padding:25px 0;color:#aaa59e}.bag-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.drawer-footer{border-top:1px solid var(--line);padding-top:20px;display:grid;grid-template-columns:1fr auto;gap:20px}.drawer-footer button{grid-column:1/-1}.admin-body{display:flex;min-height:100vh;background:#111110}.sidebar{position:fixed;width:255px;inset:0 auto 0 0;padding:32px 24px;border-right:1px solid var(--line);background:#0b0b0b;display:flex;flex-direction:column}.sidebar .eyebrow{margin-top:44px}.sidebar nav{display:grid;gap:4px}.sidebar nav button{background:transparent;color:#a6a198;border:0;text-align:left;padding:12px;cursor:pointer;font:12px var(--sans)}.sidebar nav button.active{background:#242422;color:var(--bone)}.sidebar-bottom{margin-top:auto;color:#9e998f;font-size:11px;line-height:2}.sidebar-bottom a{color:var(--bone)}.status-dot{display:inline-block;width:7px;height:7px;background:#8e9789;border-radius:50%;margin-right:6px}.admin-main{width:calc(100% - 255px);margin-left:255px;padding:44px max(4vw,40px)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:42px}.admin-header h1{font:500 52px/.8 var(--serif);margin:0}.user-button{border:1px solid var(--line);background:transparent;color:var(--bone);padding:11px 14px}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.metric-grid article,.admin-card{background:#1b1b1a;border:1px solid #2e2d2b;padding:28px}.metric-grid span{font-size:10px;letter-spacing:1.6px;color:#aaa59d}.metric-grid strong{font:500 58px/.95 var(--serif);display:block;margin:18px 0 8px}.metric-grid small{color:#88837b}.admin-card{margin-top:15px}.card-title,.split-head{display:flex;justify-content:space-between;align-items:flex-start}.admin-card h2{font-size:36px}.checklist{padding:0;list-style:none;margin:26px 0 0}.checklist li{border-top:1px solid var(--line);padding:17px 0;color:#aaa59d}.checklist li.done{color:var(--bone)}.checklist li.done::before{content:'✓';margin-right:12px;color:#b9bcb4}.panel{display:none}.panel.active{display:block}.split-head{margin-bottom:25px}.split-head p{color:#aaa59d}.admin-products{display:grid;gap:10px}.admin-product{display:grid;grid-template-columns:1.2fr .8fr .6fr .6fr;align-items:center;background:#1b1b1a;border:1px solid #2e2d2b;padding:20px;gap:15px}.admin-product strong{font:500 25px var(--serif)}.admin-product span{color:#aaa59d;font-size:11px}.stock-input{width:75px;background:#111;border:1px solid #4a4844;color:var(--bone);padding:9px}.empty-state{min-height:340px;display:flex;flex-direction:column;justify-content:center}.empty-state p:not(.eyebrow),.form-note{color:#9c978e;max-width:500px;line-height:1.7}label{display:grid;gap:8px;text-transform:uppercase;letter-spacing:1.4px;font-size:10px;margin:20px 0;color:#c8c2b8}input,textarea{background:#101010;border:1px solid #45423d;color:var(--bone);font:14px var(--sans);padding:13px;resize:vertical}.shipping-list{display:grid;grid-template-columns:1fr auto;gap:0;border-top:1px solid var(--line);margin-top:32px}.shipping-list span,.shipping-list strong{padding:16px 0;border-bottom:1px solid var(--line)}.shipping-list strong{font-size:11px;color:#aaa59d}dialog{background:#1b1b1a;color:var(--bone);border:1px solid #48453f;width:min(450px,calc(100% - 30px));padding:32px;position:relative}.dialog-close{position:absolute;right:18px;top:12px}dialog::backdrop{background:rgba(0,0,0,.75)}form h2{font-size:40px}.dialog-close+ .eyebrow{margin-top:16px}
@media(max-width:760px){.topbar{padding:0 17px;height:62px}.topbar nav{display:none}.menu-toggle{display:block;justify-self:start}.wordmark{font-size:23px!important;letter-spacing:5px!important}.hero{height:720px;background-position:51% center}.hero h1{font-size:61px}.worlds,.sigil-section{grid-template-columns:1fr}.worlds article{min-height:260px;padding:55px 30px}.worlds article+article{border-left:0;border-top:1px solid var(--line)}.sigil-section>div{padding:75px 30px}.sigil-section img{height:360px}.shop{padding:72px 17px}.product-grid{grid-template-columns:1fr}.product-card{min-height:290px}.section-header h2{font-size:38px}footer{padding:20px 17px;flex-wrap:wrap}.sidebar{position:static;width:100%;min-height:auto;padding:22px}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{white-space:nowrap}.sidebar .eyebrow,.sidebar-bottom{display:none}.admin-body{display:block}.admin-main{width:100%;margin:0;padding:30px 17px}.metric-grid{grid-template-columns:1fr}.admin-product{grid-template-columns:1fr 1fr}.admin-header h1{font-size:44px}.split-head{gap:18px}.split-head .solid-button{white-space:nowrap;padding:13px}.admin-products{gap:8px}}

/* Nocturne 01 product visuals and pre-launch access */
.product-card{min-height:480px;padding:24px}.product-card::before{background:linear-gradient(180deg,rgba(9,9,9,.05) 32%,rgba(9,9,9,.94) 100%);opacity:1;z-index:1}.product-card__image{position:absolute!important;inset:0;background:var(--product-image) center/cover;filter:grayscale(.2) contrast(1.06);transform:scale(1.01);transition:transform .5s ease}.product-card:hover .product-card__image{transform:scale(1.05)}.product-card__copy{position:relative;z-index:2}.product-card .outline-button{margin-top:16px;align-self:flex-start}.early-access{padding:112px max(9vw,38px);background:var(--bone);color:var(--black)}.early-access .eyebrow,.early-access p{color:#5a5550}.early-access p:not(.eyebrow){max-width:420px;line-height:1.7;margin:0 0 26px}.early-access .solid-button{background:var(--black);border-color:var(--black);color:var(--bone)}
.product-card{min-height:480px;padding:24px}.product-card::before{background:linear-gradient(180deg,rgba(9,9,9,.05) 32%,rgba(9,9,9,.94) 100%);opacity:1;z-index:1}.product-card__image{position:absolute!important;inset:0;background:var(--product-image) center/cover;filter:grayscale(.2) contrast(1.06);transform:scale(1.01);transition:transform .5s ease}.product-card:hover .product-card__image{transform:scale(1.05)}.product-card__copy{position:relative;z-index:2}.product-card .outline-button{margin-top:16px;align-self:flex-start}.early-access{padding:112px max(9vw,38px);background:var(--bone);color:var(--black)}.early-access .eyebrow,.early-access p{color:#5a5550}.early-access p:not(.eyebrow){max-width:420px;line-height:1.7;margin:0 0 26px}.early-access .solid-button{background:var(--black);border-color:var(--black);color:var(--bone)}

/* Approved clean set campaign + JORETO concierge */
.hero{background:linear-gradient(90deg,rgba(5,5,5,.83),rgba(5,5,5,.18) 62%,rgba(5,5,5,.52)),url('assets/nocturne-clean-set-front-back.png') center/cover}.hero-copy{margin-left:clamp(25px,8vw,130px);justify-self:start;text-align:left}.concierge-launcher{position:fixed;right:28px;bottom:28px;z-index:20;display:flex;align-items:center;gap:10px;border:1px solid rgba(232,225,214,.5);background:#11110fe8;color:var(--bone);padding:8px 16px 8px 9px;font:10px var(--sans);letter-spacing:1.6px;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.35)}.concierge-launcher img{width:24px;height:35px;object-fit:contain}.concierge-panel{position:fixed;right:28px;bottom:28px;z-index:30;width:min(390px,calc(100vw - 30px));height:540px;background:#121211;color:var(--bone);border:1px solid rgba(232,225,214,.25);box-shadow:0 20px 70px rgba(0,0,0,.58);display:flex;flex-direction:column;transform:translateY(20px);opacity:0;pointer-events:none;transition:.25s}.concierge-panel.open{transform:translateY(0);opacity:1;pointer-events:auto}.concierge-header{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid var(--line)}.concierge-header>div{display:flex;align-items:center;gap:10px}.concierge-header img{height:40px;width:27px}.concierge-header span{display:grid;gap:3px}.concierge-header strong{font:500 18px/1 var(--serif);letter-spacing:4px}.concierge-header small{font:8px var(--sans);letter-spacing:1.7px;color:#aaa59d}.concierge-header button{border:0;background:transparent;color:var(--bone);font:28px var(--serif);cursor:pointer}.concierge-messages{flex:1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px}.chat-message{max-width:82%;padding:11px 12px;font-size:12px;line-height:1.5}.chat-message.assistant{background:#242421;color:#ddd7ce;align-self:flex-start}.chat-message.customer{background:var(--bone);color:#131311;align-self:flex-end}.concierge-prompts{display:flex;gap:7px;flex-wrap:wrap;padding:0 18px 13px}.concierge-prompts button{border:1px solid #4d4b46;background:transparent;color:#cfc9c0;padding:8px 9px;font:8px var(--sans);letter-spacing:1px;cursor:pointer}.concierge-form{display:flex;border-top:1px solid var(--line);padding:10px}.concierge-form input{flex:1;border:0;background:transparent;padding:12px 8px}.concierge-form button{border:0;background:transparent;color:var(--bone);font:23px var(--serif);cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.hero{background-position:60% center}.hero-copy{margin-left:28px}.concierge-launcher{right:16px;bottom:16px}.concierge-panel{right:15px;bottom:15px;height:min(590px,calc(100vh - 30px))}}
.hero{background:linear-gradient(90deg,rgba(5,5,5,.83),rgba(5,5,5,.18) 62%,rgba(5,5,5,.52)),url('assets/nocturne-clean-set-front-back.png') center/cover}.hero-copy{margin-left:clamp(25px,8vw,130px);justify-self:start;text-align:left}.concierge-launcher{position:fixed;right:28px;bottom:28px;z-index:20;display:flex;align-items:center;gap:10px;border:1px solid rgba(232,225,214,.5);background:#11110fe8;color:var(--bone);padding:8px 16px 8px 9px;font:10px var(--sans);letter-spacing:1.6px;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.35)}.concierge-launcher img{width:24px;height:35px;object-fit:contain}.concierge-panel{position:fixed;right:28px;bottom:28px;z-index:30;width:min(390px,calc(100vw - 30px));height:540px;background:#121211;color:var(--bone);border:1px solid rgba(232,225,214,.25);box-shadow:0 20px 70px rgba(0,0,0,.58);display:flex;flex-direction:column;transform:translateY(20px);opacity:0;pointer-events:none;transition:.25s}.concierge-panel.open{transform:translateY(0);opacity:1;pointer-events:auto}.concierge-header{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid var(--line)}.concierge-header>div{display:flex;align-items:center;gap:10px}.concierge-header img{height:40px;width:27px}.concierge-header span{display:grid;gap:3px}.concierge-header strong{font:500 18px/1 var(--serif);letter-spacing:4px}.concierge-header small{font:8px var(--sans);letter-spacing:1.7px;color:#aaa59d}.concierge-header button{border:0;background:transparent;color:var(--bone);font:28px var(--serif);cursor:pointer}.concierge-messages{flex:1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px}.chat-message{max-width:82%;padding:11px 12px;font-size:12px;line-height:1.5}.chat-message.assistant{background:#242421;color:#ddd7ce;align-self:flex-start}.chat-message.customer{background:var(--bone);color:#131311;align-self:flex-end}.concierge-prompts{display:flex;gap:7px;flex-wrap:wrap;padding:0 18px 13px}.concierge-prompts button{border:1px solid #4d4b46;background:transparent;color:#cfc9c0;padding:8px 9px;font:8px var(--sans);letter-spacing:1px;cursor:pointer}.concierge-form{display:flex;border-top:1px solid var(--line);padding:10px}.concierge-form input{flex:1;border:0;background:transparent;padding:12px 8px}.concierge-form button{border:0;background:transparent;color:var(--bone);font:23px var(--serif);cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.hero{background-position:60% center}.hero-copy{margin-left:28px}.concierge-launcher{right:16px;bottom:16px}.concierge-panel{right:15px;bottom:15px;height:min(590px,calc(100vh - 30px))}}

/* Boutique conversion: photos réelles, tailles, panier. */
.product-card{min-height:540px;padding:0;background:#171716;position:relative;overflow:hidden}.product-card__image{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;background:none!important}.product-card__copy{width:100%;padding:23px;background:linear-gradient(180deg,transparent 0%,rgba(10,10,10,.96) 42%);min-height:230px;display:flex;flex-direction:column;justify-content:flex-end}.product-card h3{font-size:29px;max-width:330px}.product-card__meta{display:flex;justify-content:space-between;gap:12px;align-items:end;margin:0 0 16px;color:#c9c3bb;font-size:10px;letter-spacing:1.1px}.product-card__meta strong{font-size:13px;color:var(--bone);white-space:nowrap}.product-card__buy{display:grid;grid-template-columns:1fr 1.2fr;gap:8px}.product-card__buy select{appearance:none;border:1px solid rgba(232,225,214,.5);background:#151514;color:var(--bone);font:10px var(--sans);letter-spacing:1.2px;padding:13px 11px}.product-card__buy button{border:1px solid var(--bone);background:var(--bone);color:#0b0b0b;font:10px var(--sans);letter-spacing:1.5px;cursor:pointer}.product-card__buy button:hover{background:#fff}.product-card__future{font-size:9px;letter-spacing:1.3px;color:#c9c3bb;border:1px solid rgba(232,225,214,.45);padding:12px 10px;align-self:flex-start}.product-card--future .product-card__image{object-position:45% center}.bag-line{align-items:flex-start;gap:12px}.bag-line span{display:grid;gap:5px;font-size:10px;letter-spacing:1px}.bag-line small{color:#9c978e}.bag-line>div{display:flex;gap:10px;align-items:center}.bag-remove{border:0;background:transparent;color:#b7b0a6;font:23px var(--serif);cursor:pointer}.drawer-footer small{grid-column:1/-1;color:#9c978e;line-height:1.5}.topbar{position:fixed}.shop{padding-top:130px}.hero{background:linear-gradient(90deg,rgba(5,5,5,.83),rgba(5,5,5,.18) 62%,rgba(5,5,5,.52)),url('assets/black-diamond-final-campaign-v3.png?v=approved-1') center/cover}@media(max-width:760px){.product-card{min-height:520px}.product-card__copy{min-height:245px}.product-card h3{font-size:26px}.product-card__meta{align-items:flex-start;flex-direction:column}.shop{padding-top:76px}}
/* Catalogue : montrer la silhouette complète avant l'ouverture de la fiche.
   Les visuels techniques sont verticaux : `cover` les recadrait au niveau du buste. */
.product-card {
  --catalogue-media-height: clamp(540px, 42vw, 720px);
  display: block !important;
  min-height: 0 !important;
  overflow: hidden;
  background: #10100f;
}

.product-card__image,
.product-card__image--front,
.product-card__image--back {
  position: absolute !important;
  inset: 0 0 auto !important;
  width: 100% !important;
  height: var(--catalogue-media-height) !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: scale(1) !important;
  background: #10100f !important;
}

.product-card__copy {
  position: relative !important;
  z-index: 4 !important;
  min-height: 222px;
  margin-top: var(--catalogue-media-height) !important;
  padding: 24px 30px 26px !important;
  background: #151514 !important;
}

.product-card:hover .product-card__image--front,
.product-card:focus-within .product-card__image--front {
  opacity: 0;
  transform: scale(1) !important;
}

.product-card:hover .product-card__image--back,
.product-card:focus-within .product-card__image--back {
  opacity: 1;
  transform: scale(1) !important;
}

@media (max-width: 720px) {
  .product-card {
    --catalogue-media-height: min(600px, 150vw);
  }

  .product-card__image,
  .product-card__image--front,
  .product-card__image--back {
    height: var(--catalogue-media-height) !important;
  }

  .product-card__copy {
    margin-top: var(--catalogue-media-height) !important;
  }
}

/* Les packshots sont en format vertical. Sur un grand écran, quatre cartes
   plus étroites respectent leur ratio naturel et évitent tout cadre vide. */
@media (min-width: 1450px) {
  .product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .product-card {
    --catalogue-media-height: 720px;
  }
}

/* Carte produit : le visuel est la carte. Aucun faux fond autour du packshot.
   Les vêtements verticaux gardent leur ratio 1:2 ; le tee et la sneaker
   disposent de leur ratio naturel. */
.product-grid {
  align-items: start;
}

.product-card {
  --catalogue-media-ratio: 1 / 2;
  display: block !important;
  align-self: start;
  background: #151514 !important;
}

.product-card__media {
  position: relative;
  width: 100%;
  aspect-ratio: var(--catalogue-media-ratio);
  overflow: hidden;
  background: #121211;
}

.product-card__media .product-card__image,
.product-card__media .product-card__image--front,
.product-card__media .product-card__image--back {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block;
  object-fit: cover !important;
  object-position: center !important;
  background: transparent !important;
  transform: scale(1) !important;
}

.product-card__copy {
  position: relative !important;
  min-height: 222px;
  margin-top: 0 !important;
  padding: 24px 30px 26px !important;
  background: #151514 !important;
}

.product-card:hover .product-card__image--front,
.product-card:focus-within .product-card__image--front {
  opacity: 0;
  transform: scale(1.015) !important;
}

.product-card:hover .product-card__image--back,
.product-card:focus-within .product-card__image--back {
  opacity: 1;
  transform: scale(1.015) !important;
}

.product-card--jt-fs01 { --catalogue-media-ratio: 4 / 3; }

@media (max-width: 720px) {
  .product-card__copy {
    padding: 23px 24px 26px !important;
  }
}

/* Fiche produit : le format de chaque photo pilote son propre cadre.
   Aucun panneau latéral artificiel : une vue carrée, verticale ou portée
   remplit toujours sa zone sans être coupée. */
.product-page__layout {
  grid-template-columns: minmax(0, 680px) minmax(360px, 1fr) !important;
  gap: clamp(38px, 5vw, 88px) !important;
}

.product-page__gallery {
  display: block !important;
  width: 100%;
  min-width: 0;
}

.product-page__main-image {
  width: 100%;
  height: auto !important;
  aspect-ratio: var(--product-image-ratio, 1 / 1);
  margin: 0 !important;
  overflow: hidden;
  background: #151514 !important;
}

.product-page__main-image img {
  width: 100% !important;
  height: 100% !important;
  display: block;
  object-fit: cover !important;
  object-position: center !important;
  background: transparent !important;
}

@media (max-width: 900px) {
  .product-page__layout {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

/* Pages de confiance : même langage visuel que la boutique. */
.site-footer {
  align-items: center;
  flex-wrap: wrap;
}

.site-footer nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px 22px;
}

.legal-main {
  width: min(940px, calc(100% - 56px));
  min-height: calc(100vh - 138px);
  margin: 0 auto;
  padding: 148px 0 88px;
}

.legal-main > h1 {
  max-width: 720px;
  margin: 0 0 23px;
  font: 500 clamp(52px, 7vw, 92px) / .86 var(--serif);
  letter-spacing: .5px;
}

.legal-lead {
  max-width: 620px;
  margin: 0 0 35px;
  color: #bcb6ad;
  font-size: 15px;
  line-height: 1.72;
}

.legal-alert {
  display: grid;
  grid-template-columns: minmax(150px, .55fr) 1.45fr;
  gap: 24px;
  margin: 0 0 44px;
  padding: 20px 22px;
  border: 1px solid rgba(232, 225, 214, .3);
  background: #171716;
  color: #b7b1a8;
  font-size: 11px;
  line-height: 1.55;
}

.legal-alert strong {
  color: var(--bone);
  font-size: 9px;
  letter-spacing: 1.45px;
}

.legal-section {
  padding: 31px 0 34px;
  border-top: 1px solid var(--line);
}

.legal-section h2 {
  margin: 0 0 18px;
  font-size: clamp(32px, 3.5vw, 48px);
}

.legal-section p,
.legal-section dd {
  max-width: 740px;
  margin: 0 0 14px;
  color: #bcb6ad;
  font-size: 13px;
  line-height: 1.72;
}

.legal-section a:not(.outline-button) {
  color: var(--bone);
  text-underline-offset: 3px;
}

.legal-section dl {
  margin: 0;
  border-top: 1px solid rgba(232, 225, 214, .12);
}

.legal-section dl div {
  display: grid;
  grid-template-columns: minmax(180px, .62fr) 1.38fr;
  gap: 24px;
  padding: 15px 0;
  border-bottom: 1px solid rgba(232, 225, 214, .12);
}

.legal-section dt {
  color: #d8d2c9;
  font-size: 9px;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}

.legal-section dd {
  margin: 0;
}

.product-page__reassurance {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 17px;
  margin-top: 19px;
  color: #aaa49b;
  font-size: 9px;
  letter-spacing: 1.18px;
}

.product-page__reassurance a {
  color: var(--bone);
  text-decoration: none;
  border-bottom: 1px solid rgba(232, 225, 214, .46);
  padding-bottom: 3px;
}

@media (max-width: 720px) {
  .site-footer {
    align-items: flex-start;
  }

  .site-footer nav {
    width: 100%;
    justify-content: flex-start;
    order: 3;
  }

  .legal-main {
    width: min(100% - 34px, 940px);
    padding: 112px 0 62px;
  }

  .legal-lead {
    font-size: 13px;
  }

  .legal-alert,
  .legal-section dl div {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .legal-alert {
    padding: 17px;
  }
}

/* Fiches produit : lancement JORETO */
.product-card__details{align-self:flex-start;border:0;border-bottom:1px solid rgba(232,225,214,.65);background:transparent;color:var(--bone);padding:0 0 4px;margin:0 0 15px;font:9px var(--sans);letter-spacing:1.5px;cursor:pointer}.product-details{max-width:1020px;width:calc(100% - 36px);padding:0;background:#121211;color:var(--bone);border:1px solid rgba(232,225,214,.28);overflow:hidden}.product-details .dialog-close{z-index:2;color:var(--bone);right:17px;top:10px}.product-details #productDetailsContent{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(330px,.94fr);min-height:610px}.product-details img{width:100%;height:100%;min-height:610px;object-fit:cover;background:#191918}.product-details__copy{padding:62px 45px 38px;display:flex;flex-direction:column;justify-content:center}.product-details h2{font-size:52px;line-height:.88;margin-bottom:18px}.product-details__price{font:500 27px var(--serif);margin:0 0 27px}.product-details__price small{display:block;margin-top:8px;font:9px var(--sans);letter-spacing:1.5px;color:#aaa59d}.product-details__copy>p:not(.eyebrow):not(.product-details__price):not(.product-details__note){line-height:1.65;color:#cac4ba;margin:0 0 28px}.product-details dl{margin:0;border-top:1px solid var(--line)}.product-details dl div{padding:14px 0;border-bottom:1px solid var(--line)}.product-details dt{font-size:9px;letter-spacing:1.5px;color:#cfc8bf;margin-bottom:7px}.product-details dd{margin:0;color:#9f9a91;font-size:11px;line-height:1.55}.product-details__note{margin:22px 0 0;color:#8d8880;font-size:10px;line-height:1.55}.admin-size-stock{display:block;margin-top:8px;color:#bdb6ac!important;letter-spacing:.6px}@media(max-width:760px){.product-details #productDetailsContent{grid-template-columns:1fr}.product-details img{min-height:410px;height:410px}.product-details__copy{padding:43px 24px 30px}.product-details h2{font-size:42px}}

/* Galerie : 3 vues produit + porté face + porté dos. */
.product-details{max-width:1280px;max-height:calc(100vh - 34px)}.product-details #productDetailsContent{grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);min-height:0;max-height:calc(100vh - 34px)}.product-details__gallery{display:grid;grid-template-columns:1fr 1fr;gap:1px;overflow:auto;align-content:start;background:#080808}.product-details__gallery figure{position:relative;margin:0;min-height:260px;background:#181817}.product-details__gallery figure:last-child{grid-column:1/-1}.product-details__gallery img{display:block;width:100%;height:310px;min-height:0;object-fit:cover;background:#191918}.product-details__gallery figure:last-child img{height:430px;object-position:center 22%}.product-details__gallery figcaption{position:absolute;left:0;bottom:0;padding:8px 10px;background:rgba(10,10,10,.84);font-size:8px;letter-spacing:1.4px;color:var(--bone)}.product-details__copy{overflow:auto}@media(max-width:760px){.product-details{max-height:calc(100vh - 20px)}.product-details #productDetailsContent{grid-template-columns:1fr;max-height:calc(100vh - 20px)}.product-details__gallery{max-height:54vh}.product-details__gallery figure{min-height:190px}.product-details__gallery img{height:230px}.product-details__gallery figure:last-child img{height:300px}.product-details__copy{padding:35px 24px 28px}}

/* JORETO FIT : parcours avatar et recommandation de taille. */
.product-details__fit{margin-top:25px;align-self:flex-start}.fit-dialog{width:min(1040px,calc(100% - 34px));padding:0;background:#111110;color:var(--bone);border:1px solid rgba(232,225,214,.28);overflow:hidden}.fit-dialog .dialog-close{z-index:3;right:18px;top:11px}.fit-head{height:82px;border-bottom:1px solid var(--line);padding:0 68px 0 30px;display:flex;align-items:center;justify-content:space-between}.fit-head>div:first-child{display:flex;align-items:center;gap:10px}.fit-head img{width:26px;height:38px}.fit-head span{display:grid;gap:3px}.fit-head strong{font:500 17px/1 var(--serif);letter-spacing:3px}.fit-head small{font-size:8px;letter-spacing:1.4px;color:#a9a39a}.fit-progress-wrap{display:flex;gap:8px}.fit-progress{width:25px;height:25px;border:1px solid #514f4a;border-radius:50%;display:grid;place-items:center;color:#8f8a82;font-size:9px}.fit-progress.is-active{border-color:var(--bone);background:var(--bone);color:#111}.fit-stage{display:grid;grid-template-columns:1fr 1fr;min-height:570px}.fit-form{padding:76px max(5vw,48px);display:flex;flex-direction:column;justify-content:center}.fit-form h2,.fit-result h2{font-size:57px;margin-bottom:20px}.fit-form>p{max-width:370px;color:#aaa49b;line-height:1.65;margin:0 0 27px}.fit-form label{margin:10px 0 15px}.fit-form label strong{justify-self:end;margin-top:-20px;color:var(--bone);font-size:12px}.fit-form input[type=range]{width:100%;accent-color:var(--bone);padding:0}.fit-form .solid-button{margin-top:22px;align-self:flex-start}.fit-avatar-stage{position:relative;background:radial-gradient(circle at 50% 42%,#31302e 0%,#181817 42%,#0c0c0c 76%);display:grid;place-items:center;overflow:hidden}.fit-avatar-stage::after{content:'';position:absolute;width:84%;height:1px;background:rgba(232,225,214,.14);bottom:16%;left:8%}.fit-avatar-stage small{position:absolute;bottom:9%;font-size:9px;letter-spacing:1.6px;color:#bbb5ac}.fit-avatar{position:relative;width:175px;height:404px;z-index:1;transform-origin:bottom;transition:.25s ease}.fit-avatar__head{position:absolute;left:59px;top:8px;width:57px;height:66px;border-radius:47% 47% 43% 43%;background:linear-gradient(130deg,#746257,#bc9780)}.fit-avatar__neck{position:absolute;left:72px;top:65px;width:30px;height:31px;background:#a7826c}.fit-avatar__torso{position:absolute;top:87px;left:33px;width:109px;height:142px;border-radius:34px 34px 15px 15px;background:linear-gradient(145deg,#292927,#101010);border:1px solid #3f3e3a;display:grid;place-items:center}.fit-avatar__torso img{width:27px;height:48px;opacity:.72}.fit-avatar__arm{position:absolute;top:96px;width:29px;height:147px;border-radius:20px;background:#9a7865}.fit-avatar__arm--left{left:18px;transform:rotate(5deg)}.fit-avatar__arm--right{right:18px;transform:rotate(-5deg)}.fit-avatar__leg{position:absolute;top:220px;width:47px;height:178px;border-radius:10px 10px 20px 20px;background:#242422}.fit-avatar__leg--left{left:42px}.fit-avatar__leg--right{right:42px}.fit-avatar--fine{transform:scaleX(.84)}.fit-avatar--athletique .fit-avatar__torso{left:24px;width:127px}.fit-avatar--athletique .fit-avatar__arm--left{left:9px}.fit-avatar--athletique .fit-avatar__arm--right{right:9px}.fit-avatar--large{transform:scaleX(1.18)}.fit-avatar--tee .fit-avatar__torso{background:linear-gradient(145deg,#353532,#111)}.fit-avatar--bottom .fit-avatar__torso{height:105px}.fit-avatar--bottom .fit-avatar__leg{top:190px;height:208px;width:57px}.fit-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.fit-option{border:1px solid #494741;background:#171716;color:#b6b0a7;padding:13px;text-align:left;display:grid;gap:5px;cursor:pointer}.fit-option strong{font-size:10px;letter-spacing:1px}.fit-option span{font-size:9px;line-height:1.4}.fit-option.is-selected{border-color:var(--bone);background:#282724;color:var(--bone)}.fit-back{align-self:flex-start;margin-top:20px;border:0;border-bottom:1px solid #8f8a82;background:transparent;padding:0 0 4px;color:#cac4ba;font:9px var(--sans);letter-spacing:1.3px;cursor:pointer}.fit-result{display:grid;grid-template-columns:1fr 1fr;min-height:570px}.fit-result__visual{position:relative;background:#181817}.fit-result__visual img{width:100%;height:100%;object-fit:cover}.fit-result__visual span{position:absolute;left:17px;bottom:17px;background:#111111d9;padding:9px 11px;font-size:8px;letter-spacing:1.4px}.fit-result__copy{padding:74px max(5vw,48px);display:flex;flex-direction:column;justify-content:center}.fit-result__copy>p:not(.eyebrow):not(.fit-privacy){color:#aaa49b;line-height:1.65}.fit-size{margin:12px 0 22px;padding:16px;border:1px solid rgba(232,225,214,.42);display:flex;align-items:center;justify-content:space-between}.fit-size span{font-size:9px;letter-spacing:1.3px}.fit-size strong{font:500 46px/1 var(--serif)}.fit-privacy{font-size:10px;line-height:1.5;color:#8f8a82!important;margin:0 0 18px}.fit-result__copy .solid-button{align-self:flex-start}@media(max-width:760px){.fit-dialog{width:calc(100% - 20px);max-height:calc(100vh - 20px);overflow:auto}.fit-head{padding:0 55px 0 17px;height:66px}.fit-head small{display:none}.fit-stage,.fit-result{grid-template-columns:1fr}.fit-form,.fit-result__copy{padding:46px 25px}.fit-form h2,.fit-result h2{font-size:45px}.fit-avatar-stage{min-height:410px;order:-1}.fit-result__visual{min-height:420px}.fit-options{grid-template-columns:1fr}.fit-progress-wrap{gap:5px}.fit-progress{width:22px;height:22px}}
