/* Epicurus — warm colour, tactile depth and restrained motion. */
:root{--surface:#fcf8f1;--surface-soft:#eee6d9;--shadow-rgb:67,43,28;--food:#9c5139;--food-top:#b96b4d;--food-edge:#733921;--wine-button:#773746;--wine-top:#9a5361;--wine-edge:#50232f;--drinks:#286761;--drinks-top:#3c8980;--drinks-edge:#164a46;--gold:#916421;--gold-top:#b78b45;--gold-edge:#644414;--sage:#596546;--sage-top:#7c8967;--sage-edge:#3b482d;--plum:#6d4d76;--plum-top:#926b99;--plum-edge:#4a3151;--slate:#4d5f64;--slate-top:#708389;--slate-edge:#334448;--ui-shadow:0 4px 0 var(--button-edge),0 9px 18px rgba(var(--shadow-rgb),.13)}
[data-theme="dark"]{--surface:#2b332c;--surface-soft:#333e34;--shadow-rgb:0,0,0}
body{background-image:radial-gradient(ellipse at 2% 10%,#c9ab7830,transparent 36%),radial-gradient(ellipse at 97% 30%,#9a53610e,transparent 35%);background-attachment:fixed}
.header{position:sticky;top:0;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(18px);box-shadow:0 5px 22px rgba(var(--shadow-rgb),.06);border-bottom-color:color-mix(in srgb,var(--line) 70%,transparent)}
/* Shared raised-control treatment. Each purpose has its own colour. */
.button,.nav-contact,.page-intro .back-link,.department,.ask-chef,.chef-launcher,.section-nav a,.circle-link{--button:var(--wine-button);--button-top:var(--wine-top);--button-edge:var(--wine-edge);position:relative;isolation:isolate;border:1px solid #ffffff26!important;border-top-color:#ffffff70!important;border-radius:12px;background:linear-gradient(155deg,var(--button-top),var(--button) 65%)!important;color:#fff8ed!important;box-shadow:var(--ui-shadow);text-shadow:0 1px 1px #0002;text-decoration:none!important;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,filter .22s;transform:translateY(0)}
.button,.page-intro .back-link{font-weight:600}.button{font-size:13px;padding:17px 23px}.button span,.text-link span,.nav-contact span{transition:transform .25s}.button:hover span,.nav-contact:hover span,.text-link:hover span{transform:translate(2px,-2px)}
.button:hover,.nav-contact:hover,.page-intro .back-link:hover,.department:hover,.ask-chef:hover,.chef-launcher:hover,.section-nav a:hover,.circle-link:hover{transform:translateY(-3px);filter:brightness(1.05);box-shadow:0 7px 0 var(--button-edge),0 14px 24px rgba(var(--shadow-rgb),.17)}
.button:active,.nav-contact:active,.page-intro .back-link:active,.department:active,.ask-chef:active,.chef-launcher:active,.section-nav a:active,.circle-link:active{transform:translateY(3px);box-shadow:0 1px 0 var(--button-edge),0 3px 6px rgba(var(--shadow-rgb),.14)}
.button{--button:var(--food);--button-top:var(--food-top);--button-edge:var(--food-edge)}
.nav-contact{--button:var(--gold);--button-top:var(--gold-top);--button-edge:var(--gold-edge)}
.page-intro .back-link{--button:var(--slate);--button-top:var(--slate-top);--button-edge:var(--slate-edge);min-height:54px;margin-bottom:38px}
.ask-chef,.chef-launcher,#detail-chef{--button:var(--plum);--button-top:var(--plum-top);--button-edge:var(--plum-edge)}
.ask-chef{font-size:11px;padding:10px 13px;margin:18px 0 3px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.chef-launcher{border-radius:40px;padding:16px 23px;box-shadow:0 5px 0 var(--plum-edge),0 12px 30px #0003}
.department[data-department="menjar"]{--button:var(--food);--button-top:var(--food-top);--button-edge:var(--food-edge)}
.department[data-department="vins"]{--button:var(--wine-button);--button-top:var(--wine-top);--button-edge:var(--wine-edge)}
.department[data-department="begudes"]{--button:var(--drinks);--button-top:var(--drinks-top);--button-edge:var(--drinks-edge)}
.department{font-weight:600;opacity:.78;padding:15px 28px;min-width:120px}.department.active{opacity:1;outline:2px solid var(--button);outline-offset:5px}.menu-departments{gap:20px;padding:8px 0 32px;margin-bottom:20px}
.section-nav a:first-child{--button:var(--sage);--button-top:var(--sage-top);--button-edge:var(--sage-edge)}.section-nav a:last-child{--button:var(--slate);--button-top:var(--slate-top);--button-edge:var(--slate-edge)}.section-nav a{padding:12px 18px!important;min-height:46px}.section-nav span{color:inherit}.section-nav{gap:20px;padding-top:30px;padding-bottom:8px}
.circle-link{--button:var(--gold);--button-top:var(--gold-top);--button-edge:var(--gold-edge);border-radius:50%}
/* Navigation uses subtle colour-coded tiles. */
.header #nav>a:not(.nav-contact){border:1px solid color-mix(in srgb,var(--nav-accent) 25%,var(--line));border-top-color:#fff7;border-radius:9px;padding:9px 11px;color:var(--nav-accent);background:color-mix(in srgb,var(--nav-accent) 8%,var(--surface));box-shadow:0 3px 0 color-mix(in srgb,var(--nav-accent) 30%,var(--line)),0 5px 10px rgba(var(--shadow-rgb),.05);text-decoration:none;transition:transform .2s,box-shadow .2s}
.header #nav>a[href="carta.html"]{--nav-accent:var(--food)}.header #nav>a[href="esdeveniments.html"]{--nav-accent:var(--wine-button)}.header #nav>a[href="galeria.html"]{--nav-accent:var(--gold)}.header #nav>a[href="nosaltres.html"]{--nav-accent:var(--sage)}
.header #nav>a:not(.nav-contact)::after{display:none}.header #nav>a:hover{transform:translateY(-2px)}.header #nav>a[aria-current="page"]{outline:2px solid var(--nav-accent);outline-offset:3px}.header #nav{gap:13px;font-size:12px}.header .nav-contact{padding:12px 15px}
[data-theme="dark"] .header #nav>a:not(.nav-contact){color:color-mix(in srgb,var(--nav-accent) 42%,#fff7de)}
.language-picker select,#theme-toggle,.menu-toggle,.close,#chef-close,.filter,#project-info{background:linear-gradient(145deg,var(--surface),var(--surface-soft));border:1px solid var(--line);border-top-color:color-mix(in srgb,var(--surface) 80%,white);border-radius:9px;box-shadow:0 3px 0 var(--line),0 7px 15px rgba(var(--shadow-rgb),.05);transition:transform .2s,box-shadow .2s;color:var(--ink)}
.language-picker select{padding-top:12px;padding-bottom:12px}#theme-toggle{padding:10px;min-height:42px}.menu-toggle{padding:10px 12px;min-height:43px}.filter{padding:9px 14px;margin:6px 0 13px}.filters{gap:12px}.filter.active{color:var(--ink);background:var(--surface);border-color:var(--olive);box-shadow:0 3px 0 var(--olive),0 7px 15px rgba(var(--shadow-rgb),.06)}
#theme-toggle:hover,.menu-toggle:hover,.filter:hover,.close:hover,#chef-close:hover{transform:translateY(-2px)}.close,#chef-close{min-width:40px;min-height:40px;display:grid;place-items:center;padding:2px!important;font-size:27px!important}.chef-header #chef-close{font-size:27px}#project-info{padding:7px 10px;font-size:10px;color:var(--ink);text-align:center}.footer-bottom{align-items:center}
.actions>.text-link{padding:14px 19px;min-height:50px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 4px 0 var(--line),0 8px 16px rgba(var(--shadow-rgb),.07);font-size:12px;color:var(--sage);transition:transform .2s}.actions>.text-link:hover{transform:translateY(-3px)}
/* Depth on cards and photo frames; the original images stay intact. */
.hero-photo .photo-button,.space-grid .photo-button,.story .photo-button,.gallery-grid .photo-button{border-radius:17px;border:1px solid color-mix(in srgb,var(--line) 60%,transparent);box-shadow:0 6px 0 color-mix(in srgb,var(--line) 80%,var(--paper)),0 20px 45px rgba(var(--shadow-rgb),.14);overflow:hidden;background:var(--surface);transition:transform .35s,box-shadow .35s}
.hero-photo{position:relative}.hero-photo::before{content:'';position:absolute;inset:25px -12px -8px 20px;background:color-mix(in srgb,var(--gold) 13%,var(--paper));border-radius:19px;z-index:-1;transform:rotate(2deg)}.hero-photo figcaption{margin-top:22px}.hero-foot{padding-bottom:6px}.hero h1{letter-spacing:-.05em}.hero h1 em{color:var(--wine)}
.directory-grid>a{--card-accent:var(--food);border:1px solid color-mix(in srgb,var(--card-accent) 22%,var(--line));border-top:4px solid var(--card-accent);border-radius:18px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--card-accent) 9%,var(--surface)));box-shadow:0 7px 0 color-mix(in srgb,var(--card-accent) 18%,var(--line)),0 17px 35px rgba(var(--shadow-rgb),.08);padding:33px 27px 65px;min-height:270px;overflow:hidden;transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(var(--lift,0px));transition:transform .25s,box-shadow .25s;transform-style:preserve-3d}
.directory-grid>a:nth-child(2){--card-accent:var(--wine-button)}.directory-grid>a:nth-child(3){--card-accent:var(--gold)}.directory-grid>a::after{content:'';position:absolute;width:160px;height:160px;right:-70px;top:-70px;border:1px solid color-mix(in srgb,var(--card-accent) 20%,transparent);border-radius:50%;pointer-events:none}.directory-grid .eyebrow{color:var(--card-accent)}.directory-arrow{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--card-accent);color:#fff8ed;box-shadow:0 3px 0 color-mix(in srgb,var(--card-accent) 65%,black);bottom:22px;right:26px}.directory-grid>a:hover{--lift:-5px;box-shadow:0 11px 0 color-mix(in srgb,var(--card-accent) 18%,var(--line)),0 25px 45px rgba(var(--shadow-rgb),.12)}
.product-card{padding:15px;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:0 5px 0 var(--line),0 12px 26px rgba(var(--shadow-rgb),.07);display:flex;flex-direction:column;align-items:flex-start;transition:transform .25s,box-shadow .25s;transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(var(--lift,0px))}.product-card:hover{--lift:-4px;box-shadow:0 8px 0 var(--line),0 20px 32px rgba(var(--shadow-rgb),.11)}.product-card .product{flex:1}.product-card .product-image{border-radius:10px}.product:hover img{opacity:1}.product-card .product-info{padding-top:20px}.product-card .product h3{font-size:26px}.product-card .product .arrow{display:grid;place-items:center;border:1px solid var(--line);width:31px;height:31px;flex:0 0 31px;border-radius:50%;background:var(--paper);font-size:18px}.product-card .ask-chef{margin-top:20px;white-space:normal}.product-desc{font-size:13px}.menu-note{line-height:1.8}.gallery-grid figcaption{padding-top:20px}.event-empty{border-radius:17px;background:var(--surface);border:1px solid var(--line);box-shadow:0 6px 0 var(--line),0 15px 35px rgba(var(--shadow-rgb),.07)}.archive .event{padding-left:20px;padding-right:20px}.event{border-radius:12px;transition:background .25s}.event:hover{background:color-mix(in srgb,var(--surface) 45%,transparent)}.event-number{color:var(--wine)}
.page-intro{position:relative}.page-intro::after{content:'';position:absolute;right:0;top:45px;width:95px;height:95px;border-radius:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 12%,var(--surface)),var(--surface));border:1px solid var(--line);box-shadow:0 7px 0 var(--line),0 16px 36px rgba(var(--shadow-rgb),.08);transform:rotate(12deg);pointer-events:none;z-index:-1}.visit-details{padding:30px;border-radius:18px;border:1px solid var(--line);background:var(--surface);box-shadow:0 7px 0 var(--line),0 18px 40px rgba(var(--shadow-rgb),.06)}
.chef-panel{border-radius:22px 0 0 22px}.chef-status{background:var(--surface-soft);border-radius:20px}.chef-selected{padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:0 4px 0 var(--line)}dialog{border-radius:19px;border:1px solid var(--line);box-shadow:0 30px 100px #0005}dialog[open]{animation:dialog-arrive .25s ease-out}.chef-panel:not([hidden]){animation:drawer-arrive .3s cubic-bezier(.2,.8,.2,1)}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes drawer-arrive{from{opacity:0;transform:translateX(25px)}to{opacity:1;transform:translateX(0)}}
[data-theme="dark"] .directory-grid .eyebrow{color:color-mix(in srgb,var(--card-accent) 45%,#fff8e5)}
@media(hover:hover) and (pointer:fine){.photo-button:hover{transform:translateY(-4px);box-shadow:0 9px 0 var(--line),0 25px 50px rgba(var(--shadow-rgb),.17)}}
@media(max-width:1200px){.header #nav{gap:10px;font-size:11px}.header #nav>a:not(.nav-contact){padding:9px}.header .nav-contact{padding:11px}.header{gap:15px}}
@media(max-width:1000px){.header #nav{gap:14px;padding-bottom:33px}.header #nav>a:not(.nav-contact){padding:13px 16px;font-size:14px}.header .nav-contact{padding:13px!important}.menu-toggle{border:1px solid var(--line)}.chef-open .header #nav{display:none}.chef-open .header #nav.open{display:flex}}
@media(max-width:700px){body{background-attachment:scroll}.header{gap:10px}.preferences{gap:9px}.language-picker select{max-width:96px;padding:10px 19px 10px 8px}.menu-toggle{font-size:11px;padding:9px 10px;gap:8px}.menu-toggle span{font-size:16px}#theme-toggle{padding:9px;min-width:34px}.brand img{width:57px;height:57px}.hero{padding-top:38px}.hero h1{font-size:clamp(43px,10.6vw,68px)}.actions{gap:20px 15px}.actions .button,.actions>.text-link{font-size:12px;padding:14px 17px}.hero-photo::before{inset:20px -8px -5px 13px}.hero-photo .photo-button,.space-grid .photo-button,.gallery-grid .photo-button{border-radius:13px}.menu-departments{gap:15px;padding-bottom:28px}.department{min-width:0;padding:13px 10px;font-size:13px}.filters{gap:10px}.filter{font-size:11px;padding:8px 11px}.product-card{padding:10px;border-radius:13px}.products{gap:25px 16px}.product-card .product h3{font-size:21px}.product-card .product-info{gap:8px;padding-top:15px}.product-card .product .arrow{display:none}.product-card .product-desc{font-size:11px}.product-card .ask-chef{font-size:10px;padding:9px;min-height:42px}.directory-grid>a{min-height:230px;padding:28px 24px 66px}.directory-grid{gap:28px}.directory-grid h3{font-size:34px}.directory-grid p{font-size:13px}.page-intro::after{width:55px;height:55px;top:35px;border-radius:16px}.section-nav{gap:16px}.section-nav a{padding:11px 13px!important;font-size:12px}.section-nav span{margin-left:11px}.visit-details{padding:23px}.chef-panel{border-radius:20px 20px 0 0}.chef-launcher{padding:14px 19px}.chef-selected{padding:12px}.chef-selected img{width:65px}.footer-bottom #project-info{width:auto}.close{right:14px;top:11px}.event-empty{padding:25px}.space-grid figcaption{line-height:1.8}.phone{font-size:32px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.directory-grid>a,.product-card{transform:none!important}.button:hover,.nav-contact:hover,.page-intro .back-link:hover,.department:hover,.ask-chef:hover,.chef-launcher:hover,.section-nav a:hover,.circle-link:hover,.photo-button:hover,.header #nav>a:hover{transform:none!important}}
:root{--food-top:#aa5e43;--drinks-top:#347b73;--gold-top:#976c2f}.department{opacity:1}.page-intro::after{display:none}
/* High-contrast booking action on the homepage. */
.actions .reserve-cta{--button:var(--wine-button);--button-top:var(--wine-top);--button-edge:var(--wine-edge);color:#fff!important;font-weight:700;font-size:14px;min-height:54px;padding:16px 23px}
@media(max-width:700px){.actions .reserve-cta{font-size:13px;padding:15px 20px}}
