/* Thème premium — or & crème, motifs orientaux subtils */
html.t-premium-bistro{--or:var(--c1);--creme:var(--c2);--nuit:var(--c3,#14110d);--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.07'/%3E%3C/svg%3E");
--motif:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23c9a96e' stroke-opacity='.16' stroke-width='1'%3E%3Cpath d='M40 4l10 26 26 10-26 10-10 26-10-26L4 40l26-10z'/%3E%3Crect x='26' y='26' width='28' height='28' transform='rotate(45 40 40)'/%3E%3Ccircle cx='40' cy='40' r='6'/%3E%3C/g%3E%3C/svg%3E")}
.t-premium-bistro body{background:var(--creme) var(--grain);color:#2b241b;font-family:var(--font),system-ui,sans-serif}
.t-premium-bistro h1,.t-premium-bistro h2,.t-premium-bistro h3{font-family:var(--fontT),Georgia,serif;font-weight:600}
.t-premium-bistro .demo{background:var(--nuit);color:var(--creme);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}
.t-premium-bistro header.hero{position:relative;overflow:hidden;min-height:min(100svh,820px);display:flex;align-items:center;padding:5rem 0 6rem;background:var(--nuit);color:var(--creme)}
.t-premium-bistro header.hero::before{content:"";position:absolute;inset:-10% 0;background:var(--motif),radial-gradient(60% 50% at 50% 40%,#3a2d1a,transparent 70%);background-size:80px 80px,auto;transform:translateY(var(--py,0));opacity:.9}
.t-premium-bistro header.hero::after{content:"";position:absolute;inset:0;background:var(--grain);pointer-events:none}
.t-premium-bistro .hero .wrap{position:relative;z-index:1}
.t-premium-bistro .hero h1{font-size:clamp(3.2rem,13vw,7.5rem);line-height:.95;letter-spacing:-.01em;color:var(--creme)}
.t-premium-bistro .hero h1::after{content:"";display:block;width:90px;height:2px;margin:1.4rem auto 0;background:linear-gradient(90deg,transparent,var(--or),transparent)}
.t-premium-bistro .hero p{color:#e8dcc4;font-size:clamp(1.05rem,3vw,1.35rem);letter-spacing:.02em}
.t-premium-bistro .scroll{position:absolute;left:50%;bottom:1.6rem;transform:translateX(-50%);z-index:1;color:var(--or);text-decoration:none;width:34px;height:52px;border:1.5px solid var(--or);border-radius:20px;display:flex;justify-content:center;padding-top:6px;font-size:1rem;animation:desc 2s infinite}
@keyframes desc{50%{padding-top:16px}}
.scroll{display:none}.t-premium-bistro .scroll{display:flex}
.voir{display:none}.t-premium-bistro .voir{display:inline-block}
.t-premium-bistro .btn{border-radius:2px;letter-spacing:.06em;text-transform:uppercase;font-size:.85rem;transition:transform .25s,box-shadow .25s,background .25s}
.t-premium-bistro .btn.p{background:var(--or);border-color:var(--or);color:var(--nuit)}
.t-premium-bistro .btn.s{background:transparent;color:inherit;border-color:var(--or)}
.t-premium-bistro .btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0003}
.t-premium-bistro .hero .btn.s{color:var(--creme)}
.t-premium-bistro main{max-width:1080px}
.t-premium-bistro section{border:0;padding:4.5rem 0 3rem;position:relative}
.t-premium-bistro section+section::before{content:"";position:absolute;top:0;left:50%;width:180px;height:24px;transform:translateX(-50%);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='24'%3E%3Cg stroke='%23c9a96e' fill='none'%3E%3Cpath d='M0 12h70M110 12h70'/%3E%3Cpath d='M90 2l10 10-10 10-10-10z' fill='%23c9a96e' fill-opacity='.25'/%3E%3Ccircle cx='75' cy='12' r='2'/%3E%3Ccircle cx='105' cy='12' r='2'/%3E%3C/g%3E%3C/svg%3E")}
.t-premium-bistro h2{font-size:clamp(2rem,6vw,3rem);color:var(--nuit);text-align:center;margin-bottom:2rem}
.t-premium-bistro .lead{max-width:44rem;margin:0 auto;text-align:center;font-size:1.12rem;color:#4a3f30}
.t-premium-bistro .cartes{display:grid;gap:1.2rem}
@media(min-width:760px){.t-premium-bistro .cartes{grid-template-columns:repeat(3,1fr)}.t-premium-bistro #menu{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.t-premium-bistro #menu h2,.t-premium-bistro #menu .mv{grid-column:1/-1}}
.t-premium-bistro .carte,.t-premium-bistro .cat{background:#fffdf8;border:1px solid #e6d8bd;padding:1.6rem;box-shadow:0 1px 0 #fff inset,0 12px 30px -18px #5a43204d;transition:transform .3s,box-shadow .3s;position:relative}
.t-premium-bistro .carte::before,.t-premium-bistro .cat::before{content:"";position:absolute;inset:6px;border:1px solid #c9a96e33;pointer-events:none}
.t-premium-bistro .carte:hover,.t-premium-bistro .cat:hover{transform:translateY(-4px);box-shadow:0 22px 40px -20px #5a432066}
.t-premium-bistro .carte{text-align:center}.t-premium-bistro .ico{font-size:1.6rem;color:var(--or);margin-bottom:.4rem}
.t-premium-bistro .carte h3{font-size:1.35rem;margin-bottom:.5rem}.t-premium-bistro .carte p{color:#5a4d3b;font-size:.95rem}
.t-premium-bistro .cat h3{margin-top:0;text-align:center;color:#8a6d3b;font-size:1.25rem;text-transform:none;letter-spacing:0}
.t-premium-bistro .plat{border-bottom:1px dotted #d8c7a5}.t-premium-bistro .prix{color:#8a6d3b}
.t-premium-bistro #ambiance{background:var(--nuit) var(--motif);background-size:80px;color:var(--creme);margin:2rem calc(50% - 50vw);padding:5rem 1.2rem}
.t-premium-bistro #ambiance h2{color:var(--creme)}.t-premium-bistro #ambiance .lead{color:#e8dcc4}
.t-premium-bistro .ph{border-radius:0;box-shadow:0 14px 30px -16px #0006}.t-premium-bistro .ph img{transition:transform .6s}.t-premium-bistro .ph:hover img{transform:scale(1.05)}
.t-premium-bistro .vide{border-radius:0;color:#8a6d3b;border-color:#c9a96e}
.t-premium-bistro #infos h2{text-align:left}.t-premium-bistro td{border-color:#e6d8bd}
.t-premium-bistro #cta{text-align:center;background:linear-gradient(#fffdf8,#f3e8d3);border:1px solid #e6d8bd;margin:3rem 0;padding:3.5rem 1.2rem}
.t-premium-bistro #cta .btns{margin-top:1.6rem}
.t-premium-bistro a{color:#8a6d3b}.t-premium-bistro .pastille{color:#8a6d3b;font-family:var(--font),sans-serif}
.t-premium-bistro .barre{background:#14110df2}.t-premium-bistro .barre .btn.s{color:var(--creme)}
.t-premium-bistro footer{background:var(--nuit);color:#a99a80}.t-premium-bistro footer a{color:#c9a96e}
.t-premium-bistro .pulse{animation:pls 2.8s ease-in-out infinite}@keyframes pls{50%{box-shadow:0 0 0 7px #c9a96e33}}
.t-premium-bistro .rv{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.t-premium-bistro .rv.vu{opacity:1;transform:none}
.t-premium-bistro .cartes .rv:nth-child(2),.t-premium-bistro #menu .rv:nth-of-type(2),.t-premium-bistro .grille .rv:nth-child(2){transition-delay:.12s}
.t-premium-bistro .cartes .rv:nth-child(3),.t-premium-bistro #menu .rv:nth-of-type(3),.t-premium-bistro .grille .rv:nth-child(3){transition-delay:.24s}
.t-premium-bistro .grille .rv:nth-child(4){transition-delay:.36s}
@media(prefers-reduced-motion:reduce){.t-premium-bistro *,.t-premium-bistro *::before{animation:none!important;transition:none!important}.t-premium-bistro .rv{opacity:1;transform:none}}
.nomotion.t-premium-bistro .rv{opacity:1!important;transform:none!important}
.t-premium-bistro .grille{grid-template-columns:repeat(2,1fr);gap:1rem}
.t-premium-bistro .grille>:last-child:nth-child(odd){grid-column:1/-1;aspect-ratio:16/7}
@media(min-width:760px){.t-premium-bistro .grille[data-n="3"],.t-premium-bistro .grille[data-n="6"],.t-premium-bistro .grille[data-n="9"]{grid-template-columns:repeat(3,1fr)}
.t-premium-bistro .grille[data-n="3"]>:last-child,.t-premium-bistro .grille[data-n="9"]>:last-child{grid-column:auto;aspect-ratio:4/3}}
/* v3 : mosaïque, citation, étapes, contact */
@media(min-width:760px){.t-premium-bistro .grille[data-n="4"]{grid-template-columns:2fr 1fr 1fr;grid-auto-rows:220px}
.t-premium-bistro .grille[data-n="4"]>*{aspect-ratio:auto;height:100%}
.t-premium-bistro .grille[data-n="4"]>:first-child{grid-row:span 2}
.t-premium-bistro .grille[data-n="4"]>:nth-child(4){grid-column:2/4}
.t-premium-bistro .grille[data-n="4"]>:last-child:nth-child(odd){aspect-ratio:auto}}
.t-premium-bistro #citation{text-align:center;padding:4rem 1rem;margin:0 calc(50% - 50vw);background:linear-gradient(90deg,transparent,#c9a24a1f,transparent)}
.t-premium-bistro blockquote{font-family:var(--fontT),serif;font-size:clamp(1.6rem,4.5vw,2.6rem);font-style:italic;max-width:46rem;margin:0 auto .8rem;color:var(--nuit);line-height:1.25}
.t-premium-bistro blockquote::before,.t-premium-bistro blockquote::after{content:"❝";color:var(--or);display:block;font-size:2rem;font-style:normal}.t-premium-bistro blockquote::after{content:"❞"}
.t-premium-bistro .etapes{list-style:none;padding:0;display:grid;gap:1.2rem;counter-reset:x}
@media(min-width:760px){.t-premium-bistro .etapes{grid-template-columns:repeat(3,1fr)}}
.t-premium-bistro .etapes li{background:#fffdf8;border:1px solid #e6d8bd;padding:2rem 1.4rem 1.4rem;text-align:center;position:relative;transition:transform .3s,box-shadow .3s}
.t-premium-bistro .etapes li:hover{transform:translateY(-4px);box-shadow:0 22px 40px -20px #0004}
.t-premium-bistro .num{display:inline-flex;width:3rem;height:3rem;align-items:center;justify-content:center;border-radius:50%;background:var(--nuit);color:var(--or);font-family:var(--fontT),serif;font-size:1.4rem;margin-bottom:.6rem;box-shadow:0 0 0 4px var(--creme),0 0 0 5px var(--or)}
.t-premium-bistro #infos{background:#fffdf8;border:1px solid #e6d8bd;padding:2.4rem 1.6rem;margin:3rem 0;box-shadow:0 20px 40px -26px #0005}
.t-premium-bistro .contact a[href*="maps"]{display:inline-block;margin-top:.4rem;padding:.6rem 1rem;border:1px solid var(--or);text-decoration:none;text-transform:uppercase;font-size:.8rem;letter-spacing:.06em}
@media(min-width:760px){.t-premium-bistro .cartes:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.t-premium-bistro .cartes:has(>:nth-child(4):last-child){grid-template-columns:repeat(4,1fr)}}
/* === Identité bistro toulousain : brique, vert bouteille, crème, laiton === */
html.t-premium-bistro{--brique:var(--c1);--laiton:#b08d57;--or:#b08d57}
.t-premium-bistro body{color:#2a2420}
.t-premium-bistro header.hero.hp{background:#111 var(--hero) center/cover no-repeat}
.t-premium-bistro header.hero.hp::before{background:linear-gradient(180deg,#0d1a12cc,#0d1a1299 45%,#0d1a12ee);inset:0;transform:none}
.t-premium-bistro .hero h1{font-size:clamp(3.4rem,14vw,8.5rem);font-style:italic;letter-spacing:-.02em}
.t-premium-bistro .hero h1::after{background:var(--laiton);width:120px;height:3px}
.t-premium-bistro .btn.p{background:var(--brique);border-color:var(--brique);color:#fff}
.t-premium-bistro .btn.s{border-color:var(--laiton)}
.t-premium-bistro h2{color:var(--nuit)}
.t-premium-bistro .incs{display:grid;gap:1.4rem}@media(min-width:760px){.t-premium-bistro .incs{grid-template-columns:repeat(3,1fr)}}
.t-premium-bistro .inc{background:#fffdf8;box-shadow:0 18px 40px -24px #0007;overflow:hidden;transition:transform .35s,box-shadow .35s}
.t-premium-bistro .inc:hover{transform:translateY(-6px);box-shadow:0 30px 50px -24px #0008}
.t-premium-bistro .incp{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--creme)}.t-premium-bistro .incp img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.t-premium-bistro .inc:hover img{transform:scale(1.07)}
.t-premium-bistro .inct{padding:1.2rem 1.4rem 1.4rem;border-top:3px solid var(--brique);position:relative}
.t-premium-bistro .inct h3{font-size:1.5rem;margin-bottom:.3rem}.t-premium-bistro .inct p{color:#6a5d50;font-size:.95rem}
.t-premium-bistro .inct .prix{position:absolute;top:-1.3rem;right:1rem;background:var(--nuit);color:var(--laiton);padding:.35rem .8rem;font-family:var(--fontT),serif;font-size:1.1rem}
.t-premium-bistro #ardoise{padding-top:3rem}
.t-premium-bistro .ard{background:#26302b;color:#ece6da;padding:2.6rem 1.8rem;border:12px solid #6b4a2b;box-shadow:inset 0 0 60px #0008,0 20px 40px -20px #0009;max-width:640px;margin:0 auto;background-image:var(--grain)}
.t-premium-bistro .ard h2{color:#fff;font-style:italic;margin-bottom:1.2rem}.t-premium-bistro .ard .plat{border-color:#ffffff30;font-size:1.05rem}.t-premium-bistro .ard .prix{color:#f0d9a8}
.t-premium-bistro .ard .note{margin-top:1rem;text-align:center;font-style:italic;color:#c9c1b3;font-size:.9rem}
.t-premium-bistro #ambiance{background:var(--nuit);background-image:repeating-linear-gradient(90deg,#ffffff06 0 2px,transparent 2px 60px)}
.t-premium-bistro .resa{display:grid;gap:2rem;background:#fffdf8;border:1px solid #e4d6bf;padding:2rem 1.6rem;box-shadow:0 20px 40px -26px #0006;border-left:6px solid var(--brique)}
@media(min-width:760px){.t-premium-bistro .resa{grid-template-columns:1.1fr 1fr}}.t-premium-bistro .resa .lead{text-align:left;margin:0 0 1.2rem}.t-premium-bistro .resa .btns{justify-content:flex-start}
.t-premium-bistro .resa h3{font-size:1.3rem;color:var(--brique)}
.t-premium-bistro .aviss{display:grid;gap:1.2rem}@media(min-width:760px){.t-premium-bistro .aviss{grid-template-columns:repeat(3,1fr)}}
.t-premium-bistro .avis{margin:0;background:#fffdf8;padding:1.6rem;border:1px solid #e4d6bf;transition:transform .3s}.t-premium-bistro .avis:hover{transform:translateY(-4px)}
.t-premium-bistro .etoiles{color:var(--laiton);letter-spacing:.15em}.t-premium-bistro .avis blockquote{font-family:var(--fontT),serif;font-style:italic;font-size:1.15rem;margin:.6rem 0}
.t-premium-bistro .avis figcaption{color:#7a6c5c;font-size:.85rem}
.t-premium-bistro #avis .pastille{background:var(--brique);color:#fff;border:0;opacity:1}
.t-premium-bistro .cat h3,.t-premium-bistro .prix,.t-premium-bistro a{color:var(--brique)}
.t-premium-bistro #infos{border-left:6px solid var(--nuit)}
.t-premium-bistro .barre .btn.p{background:var(--brique)}
@media(min-width:760px){.t-premium-bistro .grille[data-n="5"]{grid-template-columns:2fr 1fr 1fr;grid-auto-rows:230px}.t-premium-bistro .grille[data-n="5"]>*{aspect-ratio:auto!important;height:100%;grid-column:auto!important}.t-premium-bistro .grille[data-n="5"]>:first-child{grid-row:span 2}}
.nav{position:sticky;top:0;z-index:7;display:flex;justify-content:space-between;align-items:center;padding:.7rem 1.2rem;background:#14261bf0;border-bottom:1px solid #b08d5766}
.nav a{color:#f5efe3;text-decoration:none;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;margin-left:1rem}.nav .logo{font-family:var(--fontT),serif;font-style:italic;font-size:1.25rem;text-transform:none;margin:0;color:#d9b77e}
.nav div{overflow-x:auto;white-space:nowrap}@media(max-width:600px){.nav{flex-direction:column;gap:.3rem;padding:.5rem}.nav a{margin:0 .45rem;font-size:.7rem}}
.credits{margin:0 auto .8rem;max-width:40rem}.credits summary{cursor:pointer;list-style:none;opacity:.8}.credits p{margin-top:.6rem;line-height:1.8;font-size:.72rem}
.t-premium-bistro footer{padding:2rem 1rem 6rem;font-size:.78rem}
.t-premium-bistro .hero .wrap{border:1px solid #b08d5788;padding:2.6rem 1.4rem;max-width:860px;background:#0d1a1255;backdrop-filter:blur(2px)}
