/* ===== Le Seuil, second part: menu A, the photo room (C), projects, prints, the order drawer ===== */

/* ---------- menu A ---------- */
.nav-right{gap:18px}
.nav-shop{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.82;transition:opacity .25s}
.nav-shop:hover,.nav-shop.on{opacity:1}
.sel-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--brass);color:var(--soot);font-family:var(--mono);font-weight:400;font-size:10px;letter-spacing:0;line-height:1}
.sel-count[hidden]{display:none}
.langs{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line2);border-radius:999px}
.langs a{display:inline-grid;place-items:center;min-width:26px;height:24px;padding:0 6px;border-radius:999px;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;color:var(--dim);transition:color .25s,background .25s}
.langs a[lang=ar]{font-family:"IBM Plex Sans Arabic",var(--sans);font-size:13px;letter-spacing:0}
.langs a:hover{color:var(--plaster)}
.langs a.on{background:var(--plaster);color:var(--soot)}
@media (max-width:900px){.nav-right .langs{display:none}.nav-shop span{display:none}.nav-shop{opacity:1}}

/* full-screen menu: an index of the series and the projects */
.menu{justify-content:flex-start;padding:110px var(--gutter) 34px;overflow-y:auto}
.menu-cols{display:grid;grid-template-columns:1.1fr 1fr;gap:6vw;flex:1}
.menu h3{margin:0 0 22px;font-family:var(--mono);font-weight:400;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass)}
.menu-series a{display:flex;align-items:baseline;gap:20px;padding:4px 0;font-family:var(--serif);font-size:clamp(46px,8vw,96px);line-height:1.02;letter-spacing:-.015em;color:var(--plaster);transition:color .3s}
.menu-series a i{width:40px;font-family:var(--mono);font-style:normal;font-size:10px;letter-spacing:.2em;color:var(--dim)}
.menu-series a small{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--dim)}
.menu-series:hover a{color:rgba(233,225,212,.38)}.menu-series a:hover{color:var(--plaster)}
.menu-projects > a:not(.link-arrow){display:grid;grid-template-columns:78px minmax(0,1fr);gap:18px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.menu-projects img,.menu-projects a > i{width:78px;height:56px;object-fit:cover;background:#141110}
.menu-projects b{display:block;font-family:var(--serif);font-weight:400;font-size:26px;line-height:1;color:var(--plaster)}
.menu-projects small{display:block;margin-top:6px;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.menu-projects .link-arrow{margin-top:22px}
.menu .menu-foot{align-items:center;margin-top:5vh;padding-top:22px;border-top:1px solid var(--line)}
.menu .menu-foot a{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--plaster)}
.menu .menu-foot .mail-s{text-transform:none;letter-spacing:.04em}
@media (max-width:760px){.menu{padding-top:90px}.menu-cols{grid-template-columns:1fr;gap:5vh}.menu-series a{font-size:clamp(44px,14vw,70px)}}

/* ---------- three doors ---------- */
.portes-row.portes-3{grid-template-columns:repeat(3,1fr);gap:6vw;max-width:1100px;margin:0 auto}
.portes-row.portes-3 .porte:nth-child(3){transform:translateY(3vh)}
.portes-row.portes-3 .porte:nth-child(3):hover{transform:translateY(calc(3vh - 14px))}
.next-doors .portes-row.portes-others{grid-template-columns:repeat(auto-fill,minmax(min(230px,40vw),1fr))}
.next-doors .portes-row .porte:nth-child(n){transform:none}
.next-doors .portes-row .porte:hover{transform:translateY(-10px)}
.next-doors .sec-head h2 span{display:block}
@media (max-width:820px){.portes-row.portes-3{grid-template-columns:1fr 1fr}.portes-row.portes-3 .porte:nth-child(3){transform:none}}

/* ---------- series and project pages ---------- */
.serie-statement p+p{margin-top:1em}
.project-head .serie-title,.projects-head .serie-title,.prints-head .serie-title{font-size:clamp(60px,11vw,180px)}
.prints-head .serie-statement .mono{margin-top:1.2em}

/* ---------- the room (photo view C) ---------- */
.room{display:block;place-items:initial}
.room::before{content:"";position:absolute;left:0;right:0;top:0;height:84px;z-index:2;background:linear-gradient(#070606 35%,rgba(7,6,6,0));pointer-events:none}
.room-scroll{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(233,225,212,.2) transparent}
.room-count,.room-close{position:fixed;z-index:3}
.room-arrow{position:fixed;z-index:3;top:38%;transition:opacity .4s,color .25s}
.room.scrolled .room-arrow{opacity:0;pointer-events:none}
.room-fig{display:flex;justify-content:center;padding:78px var(--gutter) 0}
.room-fig img{width:auto;height:auto;max-width:min(76vw,1400px);max-height:max(42vh,calc(100vh - 390px));cursor:pointer}
.room-band{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:60px;align-items:start;margin:30px var(--gutter) 0;padding:24px 0 56px;border-top:1px solid var(--line);opacity:0;transform:translateY(10px);transition:opacity .5s .15s,transform .5s .15s}
.room.on .room-band{opacity:1;transform:none}
.room-words h2{margin:0 0 6px;font-family:var(--serif);font-weight:400;font-size:clamp(26px,2.4vw,34px);line-height:1.05;color:var(--plaster)}
.room-meta{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.room-desc{max-width:64ch;margin-top:14px}
.room-desc p{margin:0 0 14px;font-size:15px;line-height:1.7;color:#bdb4a7}
.room-desc p:first-child{font-family:var(--serif);font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:var(--soft,#cfc6b8)}
.room-desc:empty{display:none}
.room-card{position:sticky;top:96px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;padding:18px;border:1px solid var(--line2);border-radius:3px;background:rgba(18,16,14,.86);backdrop-filter:blur(8px)}
.room-card[hidden]{display:none}
.room-card .mini{padding:4px;background:#0b0a09;box-shadow:0 10px 24px rgba(0,0,0,.6),0 0 0 1px rgba(214,170,120,.1)}
.room-card .mini div{background:#efe9df;padding:8px}
.room-card .mini img{display:block;width:92px;height:68px;object-fit:cover}
.room-card .k{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}
.room-card b{display:block;margin:5px 0 3px;font-family:var(--serif);font-weight:400;font-size:24px;color:var(--plaster)}
.room-card div > span:last-child{font-size:12px;color:var(--dim)}
.room-card .go{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:var(--brass);color:var(--soot);border-radius:2px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;transition:background .25s}
.room-card .go:hover{background:#d8ac7f}
.room-more{position:fixed;left:0;right:0;bottom:0;z-index:3;height:150px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:24px;background:linear-gradient(rgba(7,6,6,0),#070606 62%);font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);opacity:0;pointer-events:none;transition:opacity .4s;cursor:pointer}
.room.on.long:not(.scrolled) .room-more{opacity:1;pointer-events:auto}
@media (max-width:820px){
  .room-fig{padding-top:64px}.room-fig img{max-width:94vw;max-height:58vh}
  .room-band{grid-template-columns:1fr;gap:26px;margin-top:22px;padding-bottom:80px}
  .room-card{position:static}
}

/* ---------- projects ---------- */
.proj-list{padding:2vh var(--gutter) 12vh}
.proj-row{display:grid;grid-template-columns:64px minmax(0,1.25fr) minmax(0,1fr);gap:4vw;align-items:center;padding:7vh 0;border-top:1px solid var(--line)}
.proj-row:last-child{border-bottom:1px solid var(--line)}
.proj-n{align-self:start;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--brass)}
.proj-pic{display:block;overflow:hidden;background:#141110}
.proj-pic img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:brightness(.74) contrast(1.05);transform:scale(1.03);transition:filter .7s,transform 1.4s var(--ease)}
.proj-row:hover .proj-pic img{filter:brightness(1) contrast(1.05);transform:scale(1)}
.proj-txt b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.4vw,90px);line-height:.92;letter-spacing:-.015em;color:var(--plaster)}
.proj-txt small{display:block;margin-top:18px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.proj-ex{display:block;margin-top:20px;max-width:46ch;font-size:15px;line-height:1.65;color:#bdb4a7}
@media (min-width:821px){.proj-row:nth-child(even){grid-template-columns:64px minmax(0,1fr) minmax(0,1.25fr)}.proj-row:nth-child(even) .proj-pic{order:3}}
@media (max-width:820px){.proj-row{grid-template-columns:1fr;gap:20px}.proj-n{display:none}}

/* ---------- prints index ---------- */
.pr-how{display:grid;grid-template-columns:repeat(3,1fr);gap:4vw;padding:6vh var(--gutter) 8vh;border-top:1px solid var(--line)}
.pr-how h3{margin:0 0 18px;font-family:var(--mono);font-weight:400;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass)}
.pr-how li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-top:1px solid var(--line);font-size:15px;color:#cfc6b8}
.pr-how li small{display:block;margin-top:4px;font-size:12.5px;color:var(--dim);line-height:1.45}
.pr-how li b{font-weight:400;color:var(--plaster);white-space:nowrap}
.pr-group{padding:6vh var(--gutter);border-top:1px solid var(--line)}
.pr-group h2{margin:0 0 4vh;font-family:var(--serif);font-weight:400;font-size:clamp(36px,4vw,60px);line-height:1}
.pr-group h2 small{display:block;margin-bottom:12px;font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:var(--brass)}
.pr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:30px 2vw}
.pr-card .pr-ph{display:block;aspect-ratio:4/5;overflow:hidden;background:#141110}
.pr-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.8) contrast(1.05);transition:filter .5s,transform 1.2s var(--ease)}
.pr-card:hover img{filter:brightness(1);transform:scale(1.03)}
.pr-card b{display:block;margin-top:12px;font-family:var(--serif);font-weight:400;font-size:19px;line-height:1.1;color:var(--plaster)}
.pr-card small{display:block;margin-top:5px;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}
.pr-closed{padding:10vh var(--gutter);color:var(--dim)}
@media (max-width:820px){.pr-how{grid-template-columns:1fr}}

/* ---------- the print page (C) ---------- */
.print-room{position:relative;height:100vh;height:100svh;min-height:660px;padding:112px var(--gutter) 0;display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:0 4vw;overflow:hidden;background:radial-gradient(60% 70% at 58% 32%,#2b221b 0%,#130f0d 55%,#090807 100%)}
.pr-light{position:absolute;left:58%;top:-14%;width:1000px;height:900px;transform:translateX(-50%);background:radial-gradient(50% 50% at 50% 50%,rgba(214,150,96,.2),transparent 65%);pointer-events:none}
.pr-back{position:absolute;top:96px;inset-inline-start:var(--gutter);z-index:2}
.pr-label{position:relative;z-index:1;grid-column:1;grid-row:1;align-self:center;padding:8vh 0 4vh}
.pr-label .kick{display:block;margin-bottom:14px;font-family:var(--mono);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass)}
.pr-label h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4vw,58px);line-height:.95;letter-spacing:-.015em}
.pr-label .meta{display:block;margin-top:10px;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.pr-desc{margin-top:18px}.pr-desc p{font-size:14px;line-height:1.6;color:#bdb4a7}.pr-desc p+p{margin-top:.8em}
.pr-line{margin-top:18px;font-size:13px;color:var(--plaster)}
.pr-stage{position:relative;z-index:1;grid-column:2;grid-row:1;display:grid;place-items:center;min-height:0}
.pr-obj{position:relative;transition:padding .6s var(--ease),background .6s,box-shadow .6s}
.pr-obj img{display:block;object-fit:cover;transition:width .6s var(--ease),height .6s var(--ease)}
.pr-mat{transition:padding .6s var(--ease),background .6s}
.pr-obj[data-look=frame]{padding:10px;background:#0b0a09;box-shadow:0 50px 90px -30px rgba(0,0,0,.95),0 0 0 1px rgba(214,170,120,.08)}
.pr-obj[data-look=frame] .pr-mat{background:#efe9df;padding:var(--mat,30px);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.pr-obj[data-look=frame]::after{content:"";position:absolute;inset:10px;background:linear-gradient(160deg,rgba(255,255,255,.06),transparent 40%);pointer-events:none}
.pr-obj[data-look=print]{box-shadow:0 40px 80px -30px rgba(0,0,0,.9)}
.pr-obj[data-look=print] .pr-mat{background:#f4f1ea;padding:calc(var(--mat,30px) * .3)}
.pr-obj[data-look=canvas]{box-shadow:9px 9px 0 rgba(0,0,0,.55),0 50px 90px -30px rgba(0,0,0,.95)}
.pr-obj[data-look=canvas] .pr-mat{padding:0}
.pr-bar{position:relative;z-index:2;grid-column:1/-1;grid-row:2;margin:2vh 0 24px;display:flex;flex-wrap:wrap;align-items:flex-end;gap:22px 30px;padding:18px 22px;border:1px solid var(--line2);border-radius:3px;background:rgba(12,10,9,.84);backdrop-filter:blur(8px)}
.pr-bar--off p{color:var(--dim);font-size:14px}
.pr-bar .g{display:flex;flex-direction:column;gap:9px}
.pr-bar .row{display:flex;flex-wrap:wrap;gap:6px}
.chip{padding:9px 12px;border:1px solid var(--line2);border-radius:999px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#cfc6b8;transition:all .2s;white-space:nowrap}
.chip:hover{border-color:var(--plaster)}
.chip.on{background:var(--plaster);color:var(--soot);border-color:var(--plaster)}
.pr-bar .price{margin-inline-start:auto;text-align:end}
.pr-bar .price small{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.pr-bar .price b{display:block;margin:6px 0 4px;font-family:var(--serif);font-weight:400;font-size:34px;line-height:1;color:var(--plaster)}
.pr-bar .price i{font-style:normal;font-size:11.5px;color:var(--brass)}
.pr-bar .acts{display:flex;gap:8px}
.pr-bar .acts .btn{min-width:150px}
.chip[data-k=fmt]{unicode-bidi:isolate}
.btn{display:flex;justify-content:center;align-items:center;padding:13px 16px;border-radius:2px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transition:background .25s,border-color .25s}
.btn.pri{background:var(--brass);color:var(--soot)}.btn.pri:hover{background:#d8ac7f}
.btn.sec{border:1px solid var(--line2);color:var(--plaster)}.btn.sec:hover{border-color:var(--plaster)}
@media (max-width:900px){
  .print-room{height:auto;min-height:100svh;grid-template-columns:1fr;grid-template-rows:auto auto auto;padding-top:132px}
  .pr-label{grid-row:2;padding:3vh 0 0}.pr-stage{grid-column:1;grid-row:1;height:52vh}.pr-bar{grid-row:3;margin-top:4vh}
  .pr-bar .price{margin-inline-start:0;text-align:start;width:100%}.pr-bar .acts{width:100%;flex-direction:column}
}

/* ---------- the order drawer ---------- */
.drawer-back{position:fixed;inset:0;z-index:185;background:rgba(5,4,4,.62);opacity:0;visibility:hidden;transition:opacity .5s,visibility .5s}
.drawer{position:fixed;top:0;bottom:0;inset-inline-end:0;z-index:190;width:min(490px,100vw);overflow-y:auto;overscroll-behavior:contain;background:#100e0c;border-inline-start:1px solid var(--line2);box-shadow:-40px 0 90px rgba(0,0,0,.6);transform:translateX(102%);transition:transform .65s var(--ease)}
[dir=rtl] .drawer{transform:translateX(-102%)}
body.drawer-open .drawer{transform:none}
body.drawer-open .drawer-back{opacity:1;visibility:visible}
body.drawer-open .cursor{display:none}
body.drawer-open.has-cursor .drawer,body.drawer-open.has-cursor .drawer *{cursor:auto}
.dr-in{display:flex;flex-direction:column;gap:16px;padding:26px 30px 44px}
.dr-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px}
.steps{display:flex;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.steps b{font-weight:400;color:var(--brass)}
.dr-close{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.dr-close:hover{color:var(--plaster)}
.drawer h2{margin-top:10px;font-family:var(--serif);font-weight:400;font-size:30px;line-height:1}
.dr-empty{color:var(--dim);font-size:15px;line-height:1.6}
.dr-lines li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:start;padding:12px 0;border-bottom:1px solid var(--line)}
.dr-thumb{display:block;padding:3px;background:#efe9df}.dr-thumb img{width:58px;height:58px;object-fit:cover}
.dr-what b{display:block;font-family:var(--serif);font-weight:400;font-size:19px;line-height:1.1}
.dr-what small{display:block;margin-top:4px;font-size:12px;line-height:1.45;color:var(--dim)}
.dr-qty{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px}
.dr-qty button{display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid var(--line2);border-radius:50%;color:var(--plaster)}
.dr-qty .dr-rm{width:auto;height:auto;border:0;margin-inline-start:8px;font-size:12px;color:var(--dim);text-decoration:underline}
.dr-price{font-size:14px;color:var(--plaster);white-space:nowrap}
.dr-form{display:flex;flex-direction:column;gap:12px}
.dr-form .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{display:flex;flex-direction:column;gap:6px}
.field > span{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.field input,.field select,.field textarea{width:100%;padding:12px 13px;background:#0b0a09;border:1px solid var(--line2);border-radius:2px;color:var(--plaster);font:15px var(--sans);transition:border-color .2s}
.field textarea{resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brass)}
.field.bad input,.field.bad select{border-color:#d0644a}
.field em{font-style:normal;font-size:12px;color:#e08a6e}
.drawer .seg{display:flex;border:1px solid var(--line2);border-radius:2px;overflow:hidden}
.drawer .seg button{flex:1;padding:11px 10px;font-size:13px;color:#cfc6b8;text-align:center}
.drawer .seg button.on{background:#181512;color:var(--plaster);box-shadow:inset 0 -2px 0 var(--brass)}
.drawer .seg button:disabled{opacity:.35;cursor:not-allowed}
.dr-warn{font-size:13px;color:#e08a6e;line-height:1.5}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.drawer .sum{display:grid;grid-template-columns:1fr auto;gap:8px 20px;margin-top:6px;font-size:13.5px;color:#cfc6b8}
.drawer .sum b{font-weight:400;color:var(--plaster);text-align:end}
.drawer .sum .tot{padding-top:12px;border-top:1px solid var(--line);font-family:var(--serif);font-size:24px;color:var(--plaster)}
.cta{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:17px 20px;background:var(--brass);color:var(--soot);border-radius:2px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;transition:background .25s}
.cta:hover{background:#d8ac7f}.cta:disabled{opacity:.6}
.cta b{font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:0;text-transform:none}
.drawer .note{font-size:12px;line-height:1.55;color:var(--dim)}
.dr-done{min-height:100%;justify-content:center;text-align:center;align-items:center}
.dr-done .dr-close{position:absolute;top:26px;inset-inline-end:30px}
.dr-arch{width:90px;height:160px;border:1px solid rgba(201,154,106,.5);border-bottom:0;border-radius:50% 50% 0 0/30% 30% 0 0;margin-bottom:10px}
.dr-done h2{font-size:56px}
.dr-done p{max-width:36ch;font-size:16px;line-height:1.6;color:#cfc6b8}
.dr-done .cta{max-width:320px;margin-top:14px}
.dr-phone a{color:var(--brass)}
.shop-note{position:fixed;left:50%;bottom:26px;z-index:195;transform:translate(-50%,20px);padding:12px 18px;border:1px solid rgba(201,154,106,.5);border-radius:999px;background:rgba(14,11,9,.94);font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--plaster);opacity:0;pointer-events:none;transition:opacity .4s,transform .4s}
.shop-note.on{opacity:1;transform:translate(-50%,0)}
@media (max-width:520px){.dr-in{padding:22px 20px 40px}.dr-form .two{grid-template-columns:1fr}}
