/* La Seca · web · Sarau Studio
   Direcció «Súper súper»: crema del logo, blau de la tinta i vermell de l'oval.
   Element propi: la quadrícula blava de la targeta i el tovalló de La Seca, que aquí fa de taulell de pollastres. */
:root{
  --paper:#F7EFDA;--paper-2:#EFE3C6;--kraft:#E5D4AE;--ink:#12264A;--ink-2:#2B3E66;--muted:#55607D;
  --blue:#1C4F96;--blue-2:#163F7A;--red:#C8402E;--red-ink:#B23525;
  --f-display:'Gloock','Didot',Georgia,serif;--f-text:'Schibsted Grotesk',system-ui,sans-serif;--f-label:'Barlow Condensed','Arial Narrow',sans-serif;
  --grid-c:color-mix(in srgb,var(--paper) 26%,transparent);
  --grid:linear-gradient(var(--grid-c) 1px,transparent 1px) 0 0/24px 24px,linear-gradient(90deg,var(--grid-c) 1px,transparent 1px) 0 0/24px 24px;
  --ease:cubic-bezier(.2,.8,.2,1);--wrap:1320px;--pad:20px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.55 var(--f-text);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3{font-family:var(--f-display);font-weight:400;letter-spacing:-.02em;margin:0}
.num{font-variant-numeric:lining-nums tabular-nums}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
::selection{background:var(--blue);color:var(--paper)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:99}
.skip:focus{left:8px}
.kicker{margin:0 0 16px;font:600 15px/1 var(--f-label);letter-spacing:.16em;text-transform:uppercase;color:var(--red-ink);display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:14px;height:9px;border:2px solid currentColor;border-radius:50%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}}

/* botons: ovalats, com el segell */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font:650 16px/1 var(--f-text);text-decoration:none;white-space:nowrap;transition:background-color .2s,color .2s,transform .2s var(--ease),box-shadow .2s}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn:active{transform:scale(.98)}
.btn-blau{background:var(--blue);color:var(--paper)}
.btn-blau:hover{background:var(--red)}
.btn-crema{background:var(--paper);color:var(--blue)}
.btn-crema:hover{background:var(--red);color:var(--paper)}
.btn-line{box-shadow:inset 0 0 0 1.5px var(--blue);color:var(--blue)}
.btn-line:hover{background:var(--blue);color:var(--paper)}
.ctas{display:flex;flex-wrap:wrap;gap:10px;align-items:center}

/* capçalera */
.top{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1.5px solid transparent;transition:border-color .3s}
.top.scrolled{border-bottom-color:color-mix(in srgb,var(--blue) 18%,transparent)}
.top-in{max-width:var(--wrap);margin:0 auto;display:flex;align-items:center;gap:14px;padding:8px var(--pad);min-height:68px}
.brand{display:flex;align-items:center;text-decoration:none;margin-right:auto}
.brand img{width:92px;height:auto}
.nav{display:none;gap:28px}
.nav a{font-size:15px;font-weight:550;text-decoration:none;position:relative;padding:6px 0;color:var(--blue)}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav a:hover::after,.nav a[aria-current=true]::after{transform:scaleX(1)}
.lang{display:flex;gap:2px;font:600 15px/1 var(--f-label);letter-spacing:.1em}
.lang a{min-width:38px;min-height:40px;display:grid;place-items:center;text-decoration:none;color:var(--muted);border-radius:999px}
.lang a[aria-current=true]{color:var(--paper);background:var(--blue)}
.top-cta{display:none;min-height:44px;padding:0 20px;font-size:15px}
.status{display:none;align-items:center;gap:8px;font-size:14px;color:var(--ink-2);margin:0}
.status .dot{width:8px;height:8px;border-radius:50%;background:#2F8A57;flex:none}
.status.closed .dot{background:var(--red)}
.status.open .dot{animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(47,138,87,.45)}70%{box-shadow:0 0 0 8px rgba(47,138,87,0)}100%{box-shadow:0 0 0 0 rgba(47,138,87,0)}}
.status:not([hidden]).status-hero{display:flex;margin-top:22px}
@media (min-width:700px){.top-cta{display:inline-flex}.brand img{width:104px}}
@media (min-width:1080px){.nav{display:flex}.status:not([hidden]):not(.status-hero){display:flex}.status-hero{display:none!important}}

/* portada */
.hero{max-width:var(--wrap);margin:0 auto;padding:26px var(--pad) 64px;display:grid;gap:40px}
.hero h1{font-size:clamp(54px,15vw,136px);line-height:.92;letter-spacing:-.035em}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.hero h1 .ln>*{display:block}
.hero h1 em{font-style:normal;color:var(--red);font-size:.78em;line-height:1.02;letter-spacing:-.03em;margin-top:.08em}
.lead{max-width:31em;margin:24px 0 28px;font-size:18.5px;color:var(--ink-2)}
.hero-ph{position:relative;margin:0 6px 0 0;align-self:center;width:100%;max-width:480px;justify-self:end}
.targeta{position:relative;aspect-ratio:4/5;border-radius:18px;background:var(--grid),var(--blue);padding:12px;box-shadow:0 30px 50px -30px rgba(18,38,74,.6);transform:rotate(1.6deg)}
.targeta img{width:100%;height:100%;object-fit:cover;border-radius:10px}
.oval-preu{position:absolute;left:-14px;bottom:9%;width:168px;height:100px;display:grid;place-items:center;transform:rotate(-8deg);color:var(--red)}
.oval-preu svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.oval-preu ellipse{fill:var(--paper);stroke:var(--red);stroke-width:4.5;stroke-dasharray:500;stroke-dashoffset:0}
.oval-preu span{position:relative;text-align:center;line-height:1}
.oval-preu b{display:block;font:400 30px/1 var(--f-display);color:var(--blue);letter-spacing:-.02em}
.oval-preu small{display:block;margin-top:4px;font:600 14px/1 var(--f-label);letter-spacing:.14em;text-transform:uppercase;color:var(--red-ink)}
@media (max-width:560px){.hero-ph{max-width:none;margin:0 4px}.oval-preu{left:-6px;width:150px;height:90px}.oval-preu b{font-size:26px}}
@media (min-width:900px){
  .hero{grid-template-columns:1.25fr .75fr;align-items:center;gap:72px;padding-top:56px;padding-bottom:88px}
  .hero-ph{max-width:none}
  .oval-preu{left:-70px;width:190px;height:112px}
}
/* moment firma 1: el titular puja, la targeta es posa sobre el taulell i l'oval del preu es dibuixa */
.js .hero h1 .ln>*{transform:translateY(105%);transition:transform 1s var(--ease)}
.js .hero h1 .ln:nth-child(2)>*{transition-delay:.12s}
.js .targeta{opacity:0;transform:translateY(40px) rotate(-5deg);transition:opacity .7s ease .2s,transform 1.1s var(--ease) .2s}
.js .oval-preu ellipse{stroke-dashoffset:500;transition:stroke-dashoffset 1.1s var(--ease) 1s}
.js .oval-preu span{opacity:0;transition:opacity .5s ease 1.3s}
.js .hero .lead,.js .hero .ctas{opacity:0;transform:translateY(10px);transition:opacity .6s ease .5s,transform .6s var(--ease) .5s}
.ready .hero h1 .ln>*{transform:none}
.ready .targeta{opacity:1;transform:rotate(1.6deg)}
.ready .oval-preu ellipse{stroke-dashoffset:0}
.ready .oval-preu span{opacity:1}
.ready .hero .lead,.ready .hero .ctas{opacity:1;transform:none}

/* el taulell de l'ast: la quadrícula, un quadre per pollastre */
.taulell{background:var(--blue);color:var(--paper);padding:56px 0}
.tl-in{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad);display:grid;gap:26px;align-items:center}
.taulell .kicker{color:var(--paper)}
.taulell h2{font-size:clamp(26px,4.4vw,40px);line-height:1.05}
.taulell h2 small{display:block;margin-top:8px;font:600 17px/1 var(--f-label);letter-spacing:.12em;text-transform:uppercase;opacity:.85;white-space:nowrap}
.tl-n{margin:16px 0 0;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.tl-n b{font:400 clamp(72px,14vw,128px)/.8 var(--f-display);letter-spacing:-.04em;color:var(--paper)}
.tl-n>span{font-size:19px;font-weight:550;max-width:12em;line-height:1.25}
.tl-de{opacity:.8;font-weight:400}
.tl-nota{margin:12px 0 0;font-size:15px;color:color-mix(in srgb,var(--paper) 82%,transparent);max-width:30em}
.tl-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(10,1fr);gap:5px;max-width:520px}
.tl-grid li{aspect-ratio:1;border:1.5px solid color-mix(in srgb,var(--paper) 70%,transparent);border-radius:3px;background:transparent;transition:background-color .4s ease,border-color .4s ease,transform .4s var(--ease)}
.tl-grid li.pres{background:var(--paper);border-color:var(--paper)}
.tl-grid li.pres::after{content:"";display:block;width:46%;height:28%;margin:36% auto 0;border:2px solid var(--red);border-radius:50%}
.js .tl-grid li{transform:scale(.4);opacity:0}
.js .taulell.in .tl-grid li{transform:none;opacity:1;transition-delay:calc(var(--k,0) * 12ms)}
.taulell .btn{justify-self:start}
@media (min-width:900px){
  .tl-in{grid-template-columns:1fr auto;column-gap:72px}
  .tl-grid{grid-column:2;grid-row:1/3;width:520px}
  .taulell .btn{grid-column:1}
}

/* banda: el rètol vermell de la botiga */
.banda{overflow:hidden;border-block:1.5px solid var(--red);padding:14px 0;background:var(--paper)}
.banda-in{display:flex;width:max-content;animation:banda 38s linear infinite}
.banda span{display:flex;align-items:center;gap:22px;padding-right:22px;font:600 22px/1 var(--f-label);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);white-space:nowrap}
.banda b{font:400 38px/1 var(--f-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--red)}
.banda i{font-style:normal;color:var(--red)}
@keyframes banda{to{transform:translateX(-50%)}}

/* seccions */
.sec-h{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.sec-h h2{font-size:clamp(40px,8vw,84px);line-height:1;max-width:12em}
.sec-h>p:last-child{max-width:34em;color:var(--ink-2);margin:18px 0 0}

/* com el fem · moment firma 2: el rellotge de l'ast avança amb el scroll */
.ast{padding:96px 0 104px}
.origen{font:600 17px/1.2 var(--f-label)!important;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)!important}
.ast-grid{max-width:var(--wrap);margin:44px auto 0;padding:0 var(--pad);display:grid;gap:40px}
.ast-ph{margin:0;aspect-ratio:4/5;overflow:hidden;border-radius:18px;background:var(--kraft)}
.ast-ph img{width:100%;height:100%;object-fit:cover}
.rellotge{position:sticky;top:76px;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 0;background:var(--paper);font:400 22px/1 var(--f-display);color:var(--blue)}
.rellotge i{flex:1;height:12px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--blue);overflow:hidden;background:linear-gradient(90deg,transparent calc(100%/6 - 1.5px),color-mix(in srgb,var(--blue) 35%,transparent) 0 calc(100%/6)) 0 0/calc(100%) 100%}
.rellotge b{display:block;height:100%;width:100%;background:var(--red);transform-origin:left;transform:scaleX(var(--p,0));border-radius:999px}
.ritual{list-style:none;margin:8px 0 0;padding:0}
.ritual li{padding:26px 0;border-top:1.5px solid color-mix(in srgb,var(--blue) 22%,transparent);display:grid;grid-template-columns:auto 1fr;column-gap:20px}
.ritual .q{grid-row:span 2;min-width:96px;font:600 15px/1.3 var(--f-label);letter-spacing:.12em;text-transform:uppercase;color:var(--red-ink);padding-top:9px}
.ritual h3{font-size:clamp(34px,5vw,48px);line-height:1;color:var(--blue)}
.ritual p{margin:8px 0 0;color:var(--ink-2);max-width:30em}
.cita{margin:30px 0 0;padding:26px 28px;border-radius:50%/40%;border:2px solid var(--red);text-align:center;max-width:460px}
.cita p{margin:0;font:400 clamp(24px,3.4vw,32px)/1.15 var(--f-display);color:var(--ink)}
.cita cite{display:block;margin-top:10px;font:600 14px/1.2 var(--f-label);letter-spacing:.12em;text-transform:uppercase;font-style:normal;color:var(--red-ink)}
@media (min-width:900px){
  .ast-grid{grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
  .ast-ph{position:sticky;top:96px}
  .ritual .q{min-width:130px}
}

/* reserva sense trucar */
.reserva{background:var(--ink);color:var(--paper);padding:104px 0}
.reserva .in{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.reserva .kicker{color:#F08A78}
.reserva h2{font-size:clamp(38px,7.2vw,84px);line-height:1.02;max-width:15em}
.reserva h2 em{display:block;font-style:normal;color:#F08A78}
.rs-grid{display:grid;gap:40px;margin:48px 0 0}
.rs-txt{margin:0 0 30px;max-width:30em;color:color-mix(in srgb,var(--paper) 84%,transparent)}
.passos{list-style:none;margin:0;padding:0}
.passos li{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:16px;padding:14px 0;border-top:1.5px solid color-mix(in srgb,var(--paper) 18%,transparent);font-size:18px}
.passos li:last-child{border-bottom:1.5px solid color-mix(in srgb,var(--paper) 18%,transparent)}
.passos .n{width:52px;height:34px;display:grid;place-items:center;border:2px solid #F08A78;border-radius:50%;color:var(--paper);font:400 22px/1 var(--f-display)}
.tel-big{display:inline-flex;flex-direction:column;text-decoration:none;margin-left:10px;padding:4px 0}
.tel-big small{font:600 14px/1 var(--f-label);letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--paper) 70%,transparent)}
.tel-big span{font:400 30px/1.1 var(--f-display);color:var(--paper)}
.tel-big:hover span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
@media (min-width:900px){.rs-grid{grid-template-columns:1fr 1fr;gap:72px;align-items:start}}

/* la carta: com una carta impresa, amb la foto de cada apartat */
.carta{padding:104px 0}
.carta-grid{max-width:var(--wrap);margin:44px auto 0;padding:0 var(--pad);display:grid;gap:40px}
.carta-foto{display:none}
.cg{padding:28px 0 8px;border-top:1.5px solid var(--blue)}
.cg-ph{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;margin-bottom:22px;background:var(--kraft);border-radius:14px}
.cg header{display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center;margin-bottom:12px}
.cg .n{grid-row:span 2;width:62px;height:40px;display:grid;place-items:center;border:2px solid var(--red);border-radius:50%;color:var(--red);font:400 22px/1 var(--f-display);transition:transform .7s var(--ease),opacity .5s}
.cg h3{font-size:clamp(32px,6vw,46px);line-height:1;color:var(--blue)}
.cg header p{margin:4px 0 0;font-size:15.5px;color:var(--muted)}
.cg ul{list-style:none;margin:0;padding:0}
.cg li a{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:4px 10px;padding:14px 0;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--blue) 14%,transparent);transition:padding .25s var(--ease)}
.cg li:last-child a{border-bottom:0}
.cg .nm{font-weight:600;font-size:17px}
.cg .dots{border-bottom:1.5px dotted color-mix(in srgb,var(--blue) 45%,transparent);transform:translateY(-4px);min-width:12px}
.cg .pr{font:400 21px/1 var(--f-display);color:var(--blue);white-space:nowrap}
.cg .pr small{font:500 13px/1 var(--f-text);color:var(--muted)}
.cg .ds{grid-column:1/-1;font-size:15px;color:var(--muted);line-height:1.45;max-width:36em}
.cg li a:hover{padding-left:8px}
.cg li a:hover .nm{color:var(--red-ink)}
.carta-cta{margin-top:36px;width:100%}
.js .cg .n{transform:rotate(-30deg) scale(.6);opacity:0}
.js .cg.in .n{transform:none;opacity:1}
@media (min-width:1000px){
  .carta-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:80px;align-items:start}
  .carta-foto{display:block;position:sticky;top:96px}
  .frame{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--grid),var(--blue);border-radius:18px;padding:12px}
  .frame img{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);border-radius:10px;object-fit:cover;opacity:0;transform:scale(1.05);transition:opacity .6s ease,transform 1.2s var(--ease)}
  .frame img.on{opacity:1;transform:none}
  .frame-n{position:absolute;right:26px;bottom:26px;width:96px;height:60px;display:grid;place-items:center;background:var(--paper);border:3px solid var(--red);border-radius:50%;color:var(--red);font:400 30px/1 var(--f-display)}
  .cg-ph{display:none}
  .carta-cta{width:auto}
}

/* el súper súper */
.super{max-width:var(--wrap);margin:0 auto;padding:96px var(--pad) 104px;display:grid;gap:48px;border-top:1.5px solid color-mix(in srgb,var(--blue) 18%,transparent)}
.super h2{font-size:clamp(44px,8vw,92px);line-height:.98}
.super h2 em{display:block;font-style:normal;color:var(--red)}
.sp-txt{max-width:32em;color:var(--ink-2);margin:22px 0 30px}
.prestatge{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.prestatge li{position:relative;padding:14px 14px 12px;background:#FFFBF0;border:1.5px solid var(--blue);border-radius:6px;box-shadow:3px 3px 0 var(--blue)}
.prestatge li::before{content:"";position:absolute;right:10px;top:10px;width:16px;height:10px;border:1.5px solid var(--red);border-radius:50%}
.prestatge b{display:block;font:400 21px/1.05 var(--f-display);color:var(--blue);padding-right:22px}
.prestatge span{display:block;margin-top:6px;font:600 14px/1.2 var(--f-label);letter-spacing:.1em;text-transform:uppercase;color:var(--red-ink)}
.doll{display:flex;align-items:center;gap:16px;margin-top:22px;padding:16px 18px;border:1.5px dashed var(--red);border-radius:12px}
.doll svg{width:26px;height:42px;flex:none;fill:none;stroke:var(--red);stroke-width:2.4;stroke-linejoin:round}
.doll p{margin:0}
.doll b{display:block;font:400 22px/1.1 var(--f-display);color:var(--blue)}
.doll span{color:var(--ink-2);font-size:15.5px}
.sp-b{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}
.sp-b .ph{margin:0;position:relative;overflow:hidden;border-radius:14px;background:var(--kraft)}
.sp-b img{width:100%;height:100%;object-fit:cover}
.ph-1{grid-row:span 2;aspect-ratio:auto}
.ph-2{aspect-ratio:1}
.ph-3{aspect-ratio:4/5}
.ph-3 figcaption{position:absolute;left:10px;right:10px;bottom:10px;background:var(--paper);color:var(--blue);font:600 14px/1.25 var(--f-label);letter-spacing:.08em;text-transform:uppercase;padding:8px 10px;border-radius:8px}
@media (min-width:600px){.prestatge{grid-template-columns:repeat(4,1fr)}}
@media (min-width:1000px){.super{grid-template-columns:1.1fr .9fr;gap:72px}.prestatge{grid-template-columns:repeat(2,1fr)}}


/* la casa */
.casa{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad) 104px;display:grid;gap:40px}
.casa-ph{margin:0;aspect-ratio:4/5;overflow:hidden;border-radius:999px 999px 18px 18px;background:var(--kraft)}
.casa-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.casa h2{font-size:clamp(38px,6vw,68px);line-height:1;margin-bottom:24px;color:var(--blue)}
.casa-txt>p:not(.kicker){color:var(--ink-2);max-width:32em;margin:0 0 14px}
.cita-2{margin:28px 0 0}
.xifres{display:grid;grid-template-columns:repeat(3,1fr);margin:34px 0 0;border-top:1.5px solid var(--blue)}
.xifres div{padding:16px 12px 0 0}
.xifres div+div{padding-left:14px;border-left:1.5px solid color-mix(in srgb,var(--blue) 18%,transparent)}
.xifres dt{font:400 clamp(32px,4.6vw,50px)/1 var(--f-display);letter-spacing:-.03em;color:var(--red)}
.xifres dd{margin:6px 0 0;font-size:14px;color:var(--muted);line-height:1.3}
@media (min-width:900px){.casa{grid-template-columns:.8fr 1.2fr;gap:88px;align-items:center}}

/* on som */
.onsom{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad) 120px;display:grid;gap:44px}
.onsom h2{font-size:clamp(34px,5.4vw,60px);line-height:1.04}
.onsom .adr{font:400 26px/1.25 var(--f-display);color:var(--blue);margin:22px 0 8px}
.onsom .note{color:var(--muted);margin:0 0 26px;font-size:15.5px}
.onsom h3{font:600 15px/1 var(--f-label);letter-spacing:.16em;text-transform:uppercase;color:var(--red-ink);margin-bottom:12px}
.horari{list-style:none;margin:0;padding:0;border-top:1.5px solid var(--blue)}
.horari li{display:flex;justify-content:space-between;gap:12px;padding:13px 12px;border-bottom:1px solid color-mix(in srgb,var(--blue) 14%,transparent);font-size:16.5px}
.horari li span:first-child{font-weight:600}
.horari li span.num{font-variant-numeric:lining-nums;white-space:nowrap;letter-spacing:-.01em}
.horari li.off{color:var(--muted)}
.horari li.off span:first-child{font-weight:400}
.horari li.avui{background:var(--blue);color:var(--paper);border-radius:8px}
@media (min-width:900px){.onsom{grid-template-columns:1.1fr .9fr;gap:80px;align-items:start}}

/* peu */
.foot{background:var(--grid),var(--blue);color:var(--paper);padding:72px 0 calc(110px + env(safe-area-inset-bottom))}
.foot .in{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.foot-logo{width:min(100%,560px);height:auto}
.lema{font:400 24px/1.3 var(--f-display);margin:26px 0 40px;max-width:24em}
.foot-row{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;padding-top:22px;border-top:1.5px solid color-mix(in srgb,var(--paper) 30%,transparent);font-size:14px;color:color-mix(in srgb,var(--paper) 82%,transparent)}
.foot-row button,.foot-row a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:3px;color:var(--paper)}
.foot-row .credit{margin-left:auto}
@media (min-width:900px){.foot{padding-bottom:56px}}

/* barra mòbil */
.mbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:40;display:flex;gap:8px;padding:8px;background:var(--grid),var(--blue);border-radius:999px;box-shadow:0 12px 30px rgba(18,38,74,.3);transform:translateY(140%);transition:transform .45s var(--ease)}
.mbar.on{transform:none}
.mbar .btn{flex:1;min-height:50px;background:var(--paper);color:var(--blue)}
.mbar-tel{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--paper) 55%,transparent);color:var(--paper)}
.mbar-tel svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
@media (min-width:900px){.mbar{display:none}}

/* finestres */
.modal{border:0;padding:0;background:transparent;max-width:min(520px,92vw)}
.modal::backdrop{background:rgba(18,38,74,.55)}
.modal-in{background:var(--paper);padding:28px;border-radius:16px}
.modal-in h2{font-size:32px;margin-bottom:12px;color:var(--blue)}
.modal-in p{color:var(--ink-2);margin:0 0 20px}

/* aparicions suaus */
.js .rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .8s var(--ease);transition-delay:calc(var(--i,0) * 80ms)}
.js .rv.in{opacity:1;transform:none}
