/* Nostradamus — page d'accueil */
.page{padding-bottom:clamp(8px,1.4vw,20px)}
.lift{text-shadow:0 1px 2px rgba(0,0,0,.35),0 2px 18px rgba(0,0,0,.45)}
.liftbtn{box-shadow:0 10px 28px -8px rgba(0,0,0,.55)}
.nav a{text-decoration:none}
.icolink{display:inline-flex;align-items:center;gap:12px;text-decoration:none}

/* Hero */
.hero{position:relative;min-height:min(880px,100svh);display:flex;flex-direction:column;overflow:hidden}
.hero > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,10,8,.78) 0%,rgba(20,10,8,.08) 30%,rgba(20,10,8,.08) 58%,rgba(20,10,8,.9) 100%)}
.hero h1{margin:0;font-family:'Archivo',sans-serif;font-weight:800;font-size:clamp(44px,11.8vw,196px);line-height:.86;letter-spacing:-0.035em;color:var(--creme)}
.gbtn{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:10px 18px 10px 20px;border-radius:12px;border:1px solid rgba(241,230,214,.5);background:rgba(20,10,8,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--creme);text-decoration:none;transition:background .25s,color .25s}
.gbtn:hover{background:var(--creme);color:var(--noir)}

/* Cartes rouges */
.redcard{position:relative;overflow:hidden;background:var(--grenat);border-radius:clamp(20px,2.4vw,36px);margin:0 clamp(8px,1.4vw,20px)}
.redcard::after{content:"";position:absolute;inset:0;background:url(/grain.png);opacity:.07;mix-blend-mode:overlay;pointer-events:none}
.redcard > .wrap{position:relative;z-index:1}

.frame{overflow:hidden;border-radius:18px;position:relative}
.crop{display:block;width:100%;height:100%;object-fit:cover}

/* Billets de la section Privatiser */
.tk{position:relative;display:flex;flex-direction:column;border-radius:18px;padding:12px 16px 16px;text-decoration:none;overflow:hidden;background-size:220% 100%;background-position:0% 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -1px 0 rgba(0,0,0,.25),0 24px 50px -24px rgba(0,0,0,.8);transition:transform .35s,background-position .9s}
.tk::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.38) 45%,transparent 58%);background-size:250% 100%;background-position:120% 0;transition:background-position 1s;pointer-events:none;mix-blend-mode:soft-light}
.tk:hover{transform:translateY(-6px) rotate(-.6deg);background-position:100% 0;color:inherit}
.tk:hover::before{background-position:-20% 0}
.tk .skinbox{height:200px}
.tk .skinname{font-size:50px}
.tk .hole{background:var(--grenat)}

/* Cocktails : paquet de cartes */
.colhead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:40px;margin-bottom:22px}
.deck{position:relative;width:min(300px,62vw);height:calc(min(300px,62vw) * 1.5 + 150px);margin-right:66px}
.dcard{position:absolute;inset:0 auto auto 0;width:100%;display:flex;flex-direction:column;border-radius:22px;padding:12px 12px 22px;background:#561424;box-shadow:inset 0 0 0 1px rgba(255,240,220,.06),inset 0 0 50px rgba(0,0,0,.35),0 30px 60px -30px rgba(0,0,0,.9);transform-origin:50% 100%;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .35s}
.dcard::after{content:"";position:absolute;inset:0;border-radius:inherit;background:url(/papier.jpg) center/cover;mix-blend-mode:soft-light;opacity:.7;pointer-events:none}
.dcard .pic{aspect-ratio:2/3;overflow:hidden;border-radius:12px;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.dcard .pic img{display:block;width:100%;height:100%;object-fit:cover}
.dcard p{position:relative;z-index:1;text-align:center}
.round{width:52px;height:52px;flex:0 0 52px;border-radius:50%;border:1px solid rgba(241,230,214,.5);background:transparent;color:var(--creme);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s}
.round:hover{background:var(--creme);color:var(--noir)}

/* Vins : constellations */
.wtab{min-height:40px;padding:0 16px;border-radius:999px;border:1px solid rgba(241,230,214,.3);background:transparent;color:var(--creme);font-family:'Archivo',sans-serif;font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}
.wtab:hover{border-color:var(--creme)}
.wtab[aria-selected="true"]{background:var(--creme);color:var(--noir);border-color:var(--creme)}
.wmap{position:relative;aspect-ratio:1/1}
.wmap svg.lines{position:absolute;inset:0;width:100%;height:100%}
.axl{position:absolute;z-index:2;padding:4px 10px;border-radius:999px;background:var(--noir);color:var(--gris);font-family:'Archivo',sans-serif;font-weight:500;font-size:10px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.star{position:absolute;z-index:3;width:40px;height:40px;margin:-20px 0 0 -20px;padding:0;border:0;background:transparent;color:var(--creme);cursor:pointer;display:flex;align-items:center;justify-content:center}
.star svg{width:14px;height:14px;fill:currentColor;transition:transform .2s}
.star:hover svg{transform:scale(1.35)}
.star[aria-pressed="true"]{color:var(--cuivre)}
.star[aria-pressed="true"] svg{transform:scale(1.7)}
.wlabel{position:absolute;top:50%;left:30px;transform:translateY(-50%);white-space:nowrap;font-family:'Archivo',sans-serif;font-weight:500;font-size:12px;letter-spacing:.02em;color:#CDB4A2;pointer-events:none;transition:color .2s}
.wlabel.lft{left:auto;right:30px}
.star[aria-pressed="true"] .wlabel{color:var(--cuivre);font-weight:600}
.star:hover .wlabel{color:var(--creme)}

/* Événements */
.legend{display:inline-flex;align-items:center;gap:8px}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.dayhead{display:flex;align-items:baseline;justify-content:space-between;gap:6px;padding:0 4px 10px}
.ev{display:flex;flex-direction:column;gap:10px;width:100%;text-align:left;padding:12px;border-radius:14px;border:1px solid rgba(241,230,214,.18);background:rgba(20,10,8,.32);color:var(--creme);cursor:pointer;font:inherit;transition:background .2s,color .2s,border-color .2s}
.ev:hover{border-color:rgba(241,230,214,.6)}
.ev[aria-pressed="true"]{background:var(--creme);color:var(--noir);border-color:var(--creme)}
.evico{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:rgba(241,230,214,.1)}
.ev[aria-pressed="true"] .evico{background:var(--grenat);color:var(--creme)}
.tag{display:inline-flex;align-self:flex-start;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;font-family:'Archivo',sans-serif;font-weight:600;font-size:11px;letter-spacing:.06em}
.tag-free{background:rgba(194,122,69,.22);color:var(--cuivre-clair)}
.tag-paid{background:var(--creme);color:var(--grenat)}
.ev[aria-pressed="true"] .tag-free{background:var(--cuivre);color:var(--noir)}
.ev[aria-pressed="true"] .tag-paid{background:var(--grenat);color:var(--creme)}
.closedday{display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-height:120px;padding:12px;border-radius:14px;border:1px dashed rgba(241,230,214,.25);text-decoration:none}
.evpanel{margin-top:24px;padding:clamp(20px,2.4vw,32px);border-radius:20px;background:var(--noir);display:flex;flex-wrap:wrap;gap:24px 48px;align-items:center}
.likebtn{display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:0 24px;border-radius:999px;border:1px solid rgba(241,230,214,.5);background:transparent;color:var(--creme);cursor:pointer;font-family:'Archivo',sans-serif;font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;transition:background .2s,color .2s}
.likebtn:hover{border-color:var(--creme)}
.likebtn[aria-pressed="true"]{background:var(--cuivre);border-color:var(--cuivre);color:var(--noir)}
.likebtn[aria-pressed="true"] .heart{fill:currentColor}
.organiser{margin-top:24px;padding:clamp(28px,4vw,56px);border-radius:clamp(18px,2vw,28px);background:var(--creme);color:var(--noir);display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-end}
.chip{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(67,9,27,.35);font-family:'Archivo',sans-serif;font-weight:500;font-size:13px;color:var(--grenat)}

@media (max-width:860px){.cal{grid-template-columns:1fr}.dayhead{padding-bottom:6px}}
@media (max-width:520px){.deck{margin-right:40px}.round{width:44px;height:44px;flex-basis:44px}}
#bar{overflow-x:clip}
@media (max-width:520px){.deck{width:56vw;height:calc(56vw * 1.5 + 150px)}}
