/* Réalisations — style éditorial de SaraStore (styles.css + sarastore.css) appliqué au portfolio. */
:root{--line2:rgba(255,255,255,.08);--panel-solid:#120d19;--radius:28px;--ease:cubic-bezier(.2,.8,.2,1);--ink:#f7f2e8;--muted:#a69eaa}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 22px;border-radius:999px;border:1px solid transparent;text-decoration:none;font-weight:700;font-size:14px;letter-spacing:.01em;transition:transform .3s var(--ease),box-shadow .3s,background .3s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-gold{background:linear-gradient(135deg,#fbe9a6,#d6a04c 60%,#b77a33);color:#140d05;box-shadow:0 10px 40px -10px rgba(244,214,117,.55),inset 0 1px 0 rgba(255,255,255,.6)}
.btn-gold:hover{box-shadow:0 18px 50px -12px rgba(244,214,117,.8),inset 0 1px 0 rgba(255,255,255,.6)}
.btn-glass{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.btn-glass:hover{background:rgba(255,255,255,.12)}
.btn-lg{padding:18px 28px;font-size:15px}
.btn[disabled]{opacity:.55;pointer-events:none}
.pj-cover{position:relative;aspect-ratio:4/3;overflow:hidden;background:radial-gradient(80% 80% at 50% 30%,rgba(165,99,209,.35),transparent 70%),#100c16;display:grid;place-items:center}
.pj-cover>img,.pj-cover>video{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.pj-img.contain>img{object-fit:contain;padding:6%;filter:drop-shadow(0 20px 30px rgba(0,0,0,.5))}
.pj-logo>img{width:46%;height:auto;object-fit:contain;filter:drop-shadow(0 20px 40px rgba(0,0,0,.5));transition:transform .8s var(--ease)}
.pj-phones{perspective:900px}
.pj-phone{position:absolute;top:12%;width:27%;aspect-ratio:9/19.5;border-radius:16px;overflow:hidden;border:3px solid #1b1520;box-shadow:0 30px 50px -15px rgba(0,0,0,.7);background:#000;transition:transform .8s var(--ease)}
.pj-phone img{width:100%;height:100%;object-fit:cover}
.pj-phone.p0{left:14%;transform:rotateY(18deg) rotateZ(-6deg) translateY(10%)}
.pj-phone.p1{left:36.5%;z-index:2;transform:translateY(-2%)}
.pj-phone.p2{left:59%;transform:rotateY(-18deg) rotateZ(6deg) translateY(10%)}
.pj-books .bk{position:absolute;top:10%;height:80%;width:auto;border-radius:4px;box-shadow:0 30px 50px -15px rgba(0,0,0,.8);transition:transform .8s var(--ease)}
.pj-books .b0{left:20%;transform:rotate(-7deg)}
.pj-books .b1{right:20%;transform:rotate(5deg)}
.pj-play{position:absolute;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);color:#fff;font-size:18px}
.pj-meta{display:flex;flex-direction:column;gap:6px;padding:18px 20px 20px}
.pj-meta b{font-size:19px;letter-spacing:-.02em}
.pj-k{font:10px 'DM Mono',monospace;letter-spacing:.14em;color:var(--gold);text-transform:uppercase}
.pj-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.pj-tags i{font-style:normal;font-size:11px;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.06);color:#cfc6d2}
.pv{position:fixed;inset:0;z-index:96;background:rgba(4,2,7,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow-y:auto;display:none;padding:clamp(12px,4vw,50px)}
.pv.open{display:block}
.pv-in{position:relative;max-width:1100px;margin:0 auto;border-radius:28px;border:1px solid var(--line2);background:#0d0a13;padding:clamp(22px,4vw,48px)}
.pv-close{position:sticky;top:0;float:right;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(20,15,28,.9);font-size:22px;z-index:2}
.pv h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1;letter-spacing:-.045em;margin:12px 0 14px}
.pv header p{color:#cfc6d2;max-width:720px}
.pv-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}
.pv-tags span{font-size:12px;font-weight:600;padding:7px 12px;border-radius:999px;border:1px solid var(--line);color:var(--gold)}
.pv-cta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.pv-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.pv-m{margin:0;border-radius:18px;overflow:hidden;background:#000;border:1px solid var(--line2)}
.pv-m.wide{grid-column:1/-1}
.pv-m img,.pv-m video{width:100%;height:auto;max-height:70vh;object-fit:contain;margin:auto}
.pv-m iframe{width:100%;aspect-ratio:16/9;border:0}
.pv-m figcaption{font-size:12px;color:var(--muted);padding:8px 12px}
.pj-tags{margin:0 2px 14px}
/* Page */
.rl-store .store-hero{min-height:0;padding-top:160px;padding-bottom:70px}
.rl-store .store-hero h1{font-size:clamp(3.4rem,7vw,6.4rem)}
.rl-store .hero-stats{margin-top:60px}
.rl-store .hero-object{top:150px}
.rl-store .object-card strong{font-size:30px}
.rl-store .store-tools .store-wapp{text-decoration:none}
.rl-store .filters button{border-radius:0}
.rl-store .filters button[aria-pressed="true"]{border-color:var(--gold);background:var(--gold);color:#1c1214}
.rl-grid{grid-auto-flow:dense}
.rl-card{display:flex;flex-direction:column;cursor:default}
.rl-card[hidden]{display:none}
.rl-card .art-link{display:block;padding:0;border:0;background:none;cursor:pointer;width:100%;text-align:inherit}
.rl-card .product-art{height:auto}
.rl-card .pj-cover{aspect-ratio:16/11}
.rl-card.wide .pj-cover{aspect-ratio:16/8}
.rl-card .product-info h3{font-size:24px}
.rl-card .price{font-size:20px}
.rl-card>p{flex:1}
.rl-card .order-button{margin-top:auto}
.rl-card:hover .pj-cover>img{transform:scale(1.05)}
.rl-store .how-grid{grid-template-columns:repeat(4,1fr)}
.rl-store .store-cta .ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.rl-store .store-cta .ghost{background:transparent;color:var(--gold);border:1px solid var(--line)}
.rl-store .store-footer div a{white-space:nowrap}
@media(max-width:1000px){.rl-store .how-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.rl-store .store-hero{padding-top:120px;padding-bottom:40px}.rl-store .hero-object{display:none}.rl-store .hero-stats{margin-top:40px}.rl-store .how-grid{grid-template-columns:1fr}.rl-card.wide{grid-column:span 2}}
@media(max-width:420px){.rl-card.wide{grid-column:auto}}
html[dir=rtl] .pv-close{float:left}
html[dir=rtl] .rl-card{text-align:right}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--gold);color:#000;padding:10px 14px}
.skip:focus{left:8px}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:70;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px -8px rgba(37,211,102,.7);transition:transform .3s var(--ease)}
.wa-float:hover{transform:scale(1.08)}
.wa-float svg{width:30px;height:30px}
html,body{overflow-x:clip}
.rl-store .store-tools .store-wapp{border-radius:999px;height:36px;padding:0 14px}
.rl-store .store-tools .acct-btn{height:36px}
@media(max-width:800px){
  .rl-store .back-link span,.rl-store .back-link{font-size:0}
  .rl-store .back-link svg{width:20px}
  .rl-store .store-nav{grid-template-columns:auto 1fr auto;gap:8px}
  .rl-store .store-brand{justify-self:start}
  .rl-store .store-tools .store-wapp{width:36px;padding:0;justify-content:center}
}
@media(max-width:380px){.rl-store .store-brand{display:none}.rl-store .store-nav{grid-template-columns:auto 1fr}}
.rl-store .store-aurora{max-width:100vw}.rl-store .aurora-a{right:0}.rl-store .aurora-b{left:0}
