@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Syne:wght@600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;600;800&family=Manrope:wght@500;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');


/* bundled: styles.css */
:root{--ink:#181323;--pink:#ff3692;--purple:#7e46ff;--lime:#dfff49;--blue:#62d5ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',sans-serif}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}header{background:#fffefef2;backdrop-filter:blur(16px);position:sticky;top:0;z-index:10;border-bottom:1px solid #eeeeef}.navwrap{max-width:1160px;margin:auto;padding:13px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:Syne,sans-serif;font-weight:800;display:flex;align-items:center;gap:9px;font-size:20px;letter-spacing:-.06em;white-space:nowrap}.brand-mark{width:42px;height:42px;background:var(--lime);border:3px solid var(--ink);border-radius:13px;display:grid;place-items:center;transform:rotate(-9deg)}nav{display:flex;gap:5px;flex-wrap:wrap}nav a{padding:11px 13px;border-radius:15px;font-weight:800;font-size:14px}nav a.active,nav a:hover{background:var(--ink);color:#fff}.wrap{max-width:1160px;padding:0 22px;margin:auto}.hero{margin-top:26px;padding:clamp(30px,6vw,70px);min-height:440px;border-radius:34px;position:relative;overflow:hidden;display:flex;align-items:center}.hero:before{content:'✳';position:absolute;right:-20px;top:-130px;font-size:430px;line-height:1;opacity:.15;transform:rotate(22deg)}.hero>div{position:relative;z-index:1;max-width:770px}.hero.home{background:linear-gradient(115deg,#fff7cf,#fff0f7 60%,#e9dbff)}.hero.program{background:linear-gradient(110deg,#e1ff5b,#c0fbb6)}.hero.moments{background:linear-gradient(110deg,#ff71ad,#ffa9c9 56%,#ffd85e)}.hero.history{background:linear-gradient(110deg,#b3a0ff,#e1d5ff 70%,#b5edff)}.hero.bookhero{background:linear-gradient(110deg,#71ddff,#d3f4ff 55%,#b6ffbf)}.eyebrow{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:19px}.hero h1{font:800 clamp(49px,9vw,104px)/.92 Syne,sans-serif;letter-spacing:-.08em;margin:0 0 23px}.hero p{max-width:600px;font-size:19px;line-height:1.55}.tag{display:inline-block;padding:8px 15px;border-radius:50px;background:#fff;border:1px solid #eae4e8;font-size:13px;font-weight:800}.btn{border:0;display:inline-block;border-radius:14px;background:var(--ink);color:#fff;font-weight:800;padding:15px 22px}.btn.white{background:white;color:var(--ink)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.section{padding:55px 0}.section h2{font:800 clamp(32px,5vw,54px)/1 Syne,sans-serif;letter-spacing:-.06em;margin:0 0 20px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{padding:26px;min-height:220px;background:#fff;border:1px solid #e9e7ed;border-radius:28px;box-shadow:0 20px 45px #3021470b}.card h3{font:800 25px Syne,sans-serif;letter-spacing:-.05em;margin:14px 0 8px}.card p{color:#666173;line-height:1.6}.card .symbol{font-size:42px}.card.color1{background:#fff0f7}.card.color2{background:#f2edff}.card.color3{background:#efffd1}.card.color4{background:#e0f7ff}.festival{background:linear-gradient(135deg,#261b42,#7e46ff 56%,#ff3692);color:white;padding:38px;border-radius:30px}.festival h2{color:#fff}.festival p{color:#f7e9ff}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.filter{border:0;background:#f1f0f5;border-radius:50px;padding:11px 18px;font-weight:800}.filter.active{background:var(--ink);color:white}.event{display:flex;gap:16px;align-items:center;border:1px solid #e9e7ed;background:#fff;border-radius:21px;padding:20px;margin:10px 0}.event time{min-width:85px;font:800 23px Syne,sans-serif}.event strong{font-size:18px}.event small{display:block;color:#77727f;margin-top:6px}.fav{margin-left:auto;border:0;border-radius:13px;background:#f7f4f8;padding:11px;font-size:20px}.fav.selected{background:#ffe2ef;color:#e91c80}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.photo{min-height:275px;padding:28px;border-radius:30px;position:relative;overflow:hidden}.photo:after{content:'✷';font-size:220px;position:absolute;right:-15px;bottom:-65px;opacity:.19}.photo h3{font:800 36px/1 Syne,sans-serif;letter-spacing:-.06em;max-width:340px}.photo p{max-width:310px}.photo:nth-child(1){background:#ffc7e0}.photo:nth-child(2){background:#dfff72}.photo:nth-child(3){background:#b6a2ff}.photo:nth-child(4){background:#8deaff}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.step{border-left:7px solid var(--pink);padding:25px;background:#f9f7fd;border-radius:20px}.step:nth-child(2){border-color:var(--purple)}.step:nth-child(3){border-color:#8ac61d}.step strong{font:800 40px Syne,sans-serif}.step p{line-height:1.6}.book-layout{display:grid;grid-template-columns:1fr 1fr;gap:25px}.cover-box{border-radius:30px;background:#eeeaff;display:grid;place-items:center;padding:45px}.cover{background:linear-gradient(140deg,#ff3692,#7049ef 65%,#dfff49);color:white;box-shadow:18px 20px 0 #362d58;width:260px;min-height:350px;transform:rotate(-5deg);border-radius:12px;padding:25px;display:flex;flex-direction:column;justify-content:space-between}.cover h2{color:#fff;font-size:45px}.price{font:800 48px Syne,sans-serif}.notice{background:#fff4c6;padding:17px;border-radius:15px;margin-top:18px;font-weight:600}.reader{padding:30px;background:#fff8e8;border-radius:25px;min-height:210px}footer{border-top:1px solid #eee;margin-top:60px;padding:25px;text-align:center;color:#777;font-size:13px}.mobile-nav{display:none}@media(max-width:840px){nav{display:none}.mobile-nav{display:flex;position:fixed;z-index:20;bottom:0;background:#fff;left:0;right:0;justify-content:space-around;box-shadow:0 -5px 25px #0001;padding:9px 0 max(9px,env(safe-area-inset-bottom))}.mobile-nav a{font-size:11px;font-weight:800;text-align:center;padding:7px}.mobile-nav span{display:block;font-size:20px}.grid,.steps{grid-template-columns:1fr 1fr}.book-layout{grid-template-columns:1fr}footer{padding-bottom:90px}}@media(max-width:540px){.grid,.steps,.photo-grid{grid-template-columns:1fr}.hero{min-height:370px}.hero p{font-size:17px}.actions{flex-direction:column}.btn{text-align:center}.cover{transform:none}.event{gap:9px;padding:13px}.event time{min-width:65px;font-size:17px}.event strong{font-size:14px}.wrap{padding:0 15px}}

/* bundled: modern.css */
body{background:#fff;color:#191919;font-family:'DM Sans',sans-serif}.hero{min-height:300px;border-radius:14px;padding:clamp(30px,5vw,55px)}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(33px,4.6vw,55px);line-height:1.15;letter-spacing:-.045em}.hero.home{background:#caff36}.hero.program{background:#245fff;color:white}.hero.moments{background:#ff563f;color:white}.hero.history{background:#181818;color:white}.hero.bookhero{background:#eee}.hero p{max-width:610px;font-size:17px}.hero.program p,.hero.moments p,.hero.history p{color:#fff}.eyebrow{font-weight:800}.section h2,.card h3,.gallery-card strong,.step h3{font-family:Manrope,sans-serif;letter-spacing:-.04em}.section h2{font-size:clamp(28px,3.7vw,40px)}.card,.gallery-card,.step,.focus-card{border-radius:14px}.poster{background:linear-gradient(135deg,#181818,#245fff 60%,#ff563f)}.gallery-card{background:#fff!important;border-top:7px solid #ff563f}.gallery-card:nth-child(2){border-color:#245fff}.gallery-card:nth-child(3){border-color:#171717}.gallery-card:nth-child(4){border-color:#cbff2d}.gallery-card .shape{opacity:.24}.book{background:linear-gradient(140deg,#245fff,#171717);transform:none}.cta-band{background:#171717}.btn,.pill,.event,.book-price{border-radius:10px}.festival{background:#171717}@media(max-width:720px){.hero h1{font-size:34px}.hero{min-height:270px}.hero p{font-size:15px}}

/* bundled: content.css */
.empty-state{background:#f5f7f2;padding:24px;border-radius:12px;color:#626a5d;font-weight:650}.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.story-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e9ece7;border-radius:14px;overflow:hidden}.story-card img{width:100%;height:220px;object-fit:cover}.story-card>div{padding:23px}.story-card small{font-size:12px;font-weight:800;letter-spacing:.08em;color:#245fff}.story-card h3{font:800 23px/1.22 Manrope,sans-serif;letter-spacing:-.04em;margin:10px 0}.story-card p{line-height:1.6;white-space:pre-line;color:#545b54}.photo-grid .gallery-photo{padding:0;min-height:250px;display:flex;flex-direction:column;justify-content:end;background:#191919;color:white}.gallery-photo:after{display:none}.gallery-photo>img{width:100%;height:260px;object-fit:cover}.gallery-photo-caption{padding:16px;background:#171717}.gallery-photo-caption h3{font-size:21px;color:white;margin:0 0 6px}.gallery-photo-caption p{color:#e4e4e4;font-size:14px;margin:0;white-space:pre-line}.hero.hero-has-photo{background-image:linear-gradient(90deg,rgba(17,17,17,.82),rgba(17,17,17,.33)),var(--hero-image)!important;background-size:cover;background-position:center;color:white}.hero.hero-has-photo p{color:#fff}.hero.hero-has-photo .eyebrow{color:#cefc39}@media(max-width:640px){.story-grid{grid-template-columns:1fr}}

.brand-logo{width:48px;height:48px;object-fit:cover;border-radius:50%;border:1px solid #c3cbdc;box-shadow:0 1px 8px #0001;flex-shrink:0}
#compra-link[aria-disabled="true"]{pointer-events:none;opacity:.65;cursor:not-allowed}
.photo-grid .gallery-photo>img{cursor:zoom-in}
.gallery-lightbox{position:fixed;inset:0;z-index:9999;border:0;background:#0e1524ee;color:white;padding:20px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px}
.gallery-lightbox img{max-height:79vh;max-width:95vw;object-fit:contain}.gallery-lightbox button{position:absolute;top:17px;right:20px;border:1px solid white;background:#14254f;color:white;padding:10px 18px;border-radius:10px;cursor:pointer}

/* Programa organitzat per dies. Compatible amb dates de qualsevol any del Sheets. */
.programme-intro{max-width:720px;color:#565c6b;line-height:1.65;font-size:16px;margin:0 0 25px}
.day-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 27px}
.day-tab{border:1.5px solid #d7deee;background:#f6f8fd;color:#172653;min-width:148px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:15px 19px;border-radius:13px;transition:background .17s,border-color .17s,transform .17s;line-height:1.25;text-align:left}
.day-tab:hover{border-color:#245fff;transform:translateY(-2px)}
.day-tab.active{background:#172653;border-color:#172653;color:#fff;box-shadow:0 7px 18px #17265324}
.day-tab:focus-visible,.filter:focus-visible,.fav:focus-visible{outline:3px solid #245fff;outline-offset:3px}
.day-tab-title{font-size:15px;font-weight:800}
.day-tab-extra{font-size:12px;opacity:.75;font-weight:600}
.programme-filter-label{font-size:13px;text-transform:uppercase;letter-spacing:.11em;margin:0;color:#505c70}
.programme-section .filters{margin:13px 0 32px}
.programme-day{margin:0 0 29px;border:1px solid #dfe4ed;background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 6px 20px #17265309}
.programme-day-head{display:flex;align-items:center;gap:19px;background:#eef2fb;padding:18px 23px;border-bottom:1px solid #dee6f4;color:#172653}
.programme-day-number{font:800 clamp(46px,5vw,66px)/1 Manrope,sans-serif;letter-spacing:-.07em;min-width:75px;text-align:center}
.programme-day-identity{min-width:0;flex:1}
.programme-day-weekday{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:#245fff}
.programme-day-head h3{font:800 clamp(19px,2.5vw,25px)/1.2 Manrope,sans-serif;margin:4px 0 0;letter-spacing:-.045em}
.programme-day-count{border-radius:50px;background:white;padding:7px 13px;font-size:12px;font-weight:800;white-space:nowrap}
.programme-day-events{padding:8px 16px 13px}
.programme-day .event{border:0;border-radius:0;border-bottom:1px solid #edf0f3;box-shadow:none;margin:0;padding:16px 9px;align-items:start;gap:17px}
.programme-day .event:last-child{border-bottom:0}
.programme-day .event time{background:#f1f5ff;color:#245fff;border-radius:9px;min-width:100px;min-height:44px;text-align:center;display:flex;align-items:center;justify-content:center;padding:8px;font:800 16px/1.3 Manrope,sans-serif}
.programme-day .event-detail{flex:1;min-width:0}
.programme-day .event strong{font-size:17px;color:#172653;line-height:1.42;display:block}
.programme-day .event small{font-size:13px;line-height:1.6;color:#667086;margin:7px 0 8px;white-space:pre-line}
.event-category{font-size:11px;display:inline-flex;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:#245fff;background:#ecf1ff;border-radius:5px;padding:4px 7px}
.programme-day .fav{margin-left:2px;flex-shrink:0;background:#f2f4f8;color:#172653}
.programme-day .fav.selected{background:#ffedef;color:#e23b55}
@media(max-width:640px){.day-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.day-tab{min-width:0;padding:12px 13px}.day-tab-title{font-size:14px}.programme-day-head{gap:12px;padding:16px 13px}.programme-day-number{min-width:53px;font-size:50px}.programme-day-count{padding:5px 7px;font-size:10px}.programme-day-events{padding:5px 10px 8px}.programme-day .event{gap:9px;padding:13px 4px}.programme-day .event time{min-width:73px;max-width:90px;font-size:12px;padding:5px}.programme-day .event strong{font-size:15px}.programme-day .event small{font-size:12px}.programme-day .fav{font-size:21px;padding:7px}.programme-day-head h3{font-size:18px}}
@media(max-width:370px){.programme-day-count{display:none}}


/* bundled: branding.css */
/* Identitat corporativa · Emblema original de la Penya El Descontrol */
:root{--ink:#0d2258;--navy:#0d2258;--navy-deep:#08163d;--royal:#1c3c83;--ice:#eef3fb;--pale:#f7f9fe;--line:#dce4f1;--muted:#566784;--white:#fff;--pink:#1c3c83;--purple:#17326f;--lime:#e8effb;--blue:#2c4d96}
html{scroll-behavior:smooth}
body{color:var(--ink);background:#fff}
header{background:rgba(255,255,255,.95);border-bottom:1px solid var(--line)}
.navwrap{max-width:1160px}
.brand{color:var(--navy);font:800 19px/1.08 Manrope,'DM Sans',sans-serif;letter-spacing:-.045em}
.brand-logo{width:53px;height:53px;object-fit:contain;background:var(--navy);border:1px solid #d6e1f1;box-shadow:0 5px 16px #10285918}
nav a{color:var(--navy);border-radius:8px;transition:.18s}
nav a.active,nav a:hover{background:var(--navy);color:#fff}
.hero{border-radius:24px;min-height:310px;margin-top:27px;padding:clamp(30px,6vw,66px)}
.hero::before{display:none}
.hero h1{font:800 clamp(36px,5vw,66px)/1.07 Manrope,'DM Sans',sans-serif;letter-spacing:-.055em}
.hero p{font-size:clamp(16px,1.7vw,19px);line-height:1.65}
.eyebrow{font-size:12px;letter-spacing:.14em}
.hero.home,.hero.program,.hero.moments,.hero.history{background:linear-gradient(118deg,#0a1d4b,#142f6a);color:#fff}
.hero.home{min-height:405px;padding-right:40%}
.hero.home::after,.hero.history::after{content:'';position:absolute;width:min(39%,365px);aspect-ratio:1;background:url('/logo-el-descontrol.png') center/contain no-repeat;right:3.5%;top:50%;transform:translateY(-50%);filter:drop-shadow(0 16px 25px #0002)}
.hero.home>div{max-width:100%}
.hero.home h1{color:#fff}
.hero.home p,.hero.program p,.hero.moments p,.hero.history p{color:#e3ebff}
.hero.program{background:linear-gradient(118deg,#112d6d,#254b9a)}
.hero.moments{background:linear-gradient(118deg,#172c5b,#294f95)}
.hero.history{background:linear-gradient(118deg,#0a1d4b,#173873);padding-right:31%}
.hero.history::after{width:min(28%,230px);opacity:.85}
.hero.bookhero{background:#ecf2fb;color:var(--navy)}
.hero.bookhero p{color:#3d527a}
.btn,.pill{background:var(--navy);border-radius:9px;color:#fff;font-weight:800;transition:transform .16s,background .16s}
.btn:hover{background:#20458e;transform:translateY(-2px)}
.hero.home .btn{background:#fff;color:var(--navy)}
.hero.home .btn.white{background:#244a92;color:#fff}
.hero.home .btn:hover{background:#e9effb}
.hero.home .btn.white:hover{background:#315cac}
.section{padding:46px 0}
.section h2{font:800 clamp(28px,3.7vw,42px)/1.17 Manrope,'DM Sans',sans-serif;letter-spacing:-.045em;color:var(--navy)}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 38px #081e4510;transition:transform .18s,box-shadow .18s}
a.card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #0d22581f}
.card h3{color:var(--navy);font-family:Manrope,'DM Sans',sans-serif}
.card p{color:#485873}
.card.color1,.card.color2,.card.color3,.card.color4{background:#f1f5fc}
.card.color2{background:#eaf0fa}.card.color3{background:#f8fafd}
.grid a.card{border-top:4px solid #1c3c83}
.grid a.card:nth-child(2){border-top-color:#6482b8}.grid a.card:nth-child(3){border-top-color:#0d2258}
.festival,.cta-band{background:linear-gradient(115deg,#0d2258,#1c3c83);color:#fff;border-radius:19px}
.festival p{color:#e4edff}
.festival h2{color:white}
.festival .btn.white{background:#fff;color:var(--navy)}
.event,.step,.gallery-card{border-radius:14px;border-color:var(--line)}
.filters .filter{background:#edf2fa;color:var(--navy);border:1px solid #dce5f2}
.filters .filter.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.filter:hover{background:#dae5f7}
.day-tab.active{background:var(--navy);border-color:var(--navy)}
.day-tab:hover{border-color:var(--royal)}
.programme-day-head{background:#eaf1fa;color:var(--navy)}
.programme-day .event time{color:var(--royal);background:#eff3fb}
.programme-day .event strong{color:var(--navy)}
.programme-day-weekday,.event-category,.story-card small{color:var(--royal)}
.event-category{background:#e7eefa}
.story-card{border-color:var(--line);background:#fff}
.story-card p{color:#526079}
.photo-grid .gallery-photo{background:var(--navy)}
.photo-grid .gallery-photo-caption{background:var(--navy)}
.cover-box{background:#e9effa}
.cover{background:linear-gradient(135deg,#0d2258,#2c4d96);box-shadow:14px 16px 0 #bdcce4;border-radius:9px}
.price{color:var(--navy);font-family:Manrope,sans-serif}
#book-price[hidden]{display:none!important}
.notice{background:#edf2fa;color:#425879;font-size:13px;border-radius:10px}
.reader{background:#f0f4fc;border-radius:17px}
footer{color:#72809a;border-color:var(--line)}
/* La penya: història i majorals d'honor */
.majorals-story-heading{max-width:795px;margin:0 0 28px}
.majorals-story-heading h2{margin:7px 0 16px}
.majorals-story-heading p{color:#566784;line-height:1.75;font-size:17px}
.majorals-cards{gap:18px}
.majorals-cards .story-card{border-radius:17px;border-top:5px solid var(--royal)}
.majorals-cards .story-card>div{padding:28px}
.majorals-cards .story-card small{font-size:15px;font-weight:800}
.majorals-cards .story-card h3{font-size:25px;letter-spacing:-.04em}
.majorals-cards .story-card p{font-size:15px;line-height:1.75}
.honor-section{padding-top:8px}
.honor-panel{position:relative;overflow:hidden;background:linear-gradient(120deg,#10265c,#1d3e7d);border-radius:20px;color:#fff;padding:clamp(28px,6vw,56px)}
.honor-panel::after{content:'✦';position:absolute;color:#fff;opacity:.08;right:-25px;bottom:-130px;font-size:360px;pointer-events:none}
.honor-panel h2{color:#fff;font-size:clamp(29px,4vw,44px);max-width:660px;margin:13px 0}
.honor-panel p{max-width:660px;color:#e7efff;font-size:18px;line-height:1.8;position:relative;z-index:1}
.honor-eyebrow{font:800 12px DM Sans,sans-serif;letter-spacing:.15em;color:#bfcff2}
.honor-stamp{font-size:12px;letter-spacing:.15em;margin-top:26px;font-weight:800;color:#becff1;position:relative;z-index:1}
.honor-stamp span{color:white}
/* Participació per correu al llibre */
.contribute-panel{display:grid;grid-template-columns:1.25fr .85fr;gap:35px;align-items:center;border-radius:20px;padding:clamp(24px,5vw,48px);background:var(--navy);color:white}
.contribute-panel h2{color:#fff;font-size:clamp(26px,3.6vw,39px);margin:10px 0 16px}
.contribute-content>p{max-width:630px;line-height:1.75;font-size:17px;color:#e4eaf7}
.contribute-panel .eyebrow{color:#cad8f5;margin:0}
.contribute-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.contribute-tags span{border:1px solid #5b6e99;border-radius:7px;padding:9px 11px;font-size:12px;font-weight:800;background:#1b356c}
.contribute-action{background:#fff;color:var(--navy);padding:27px;border-radius:14px;min-width:0;display:flex;flex-direction:column;gap:16px}
.contact-caption{font-size:11px;letter-spacing:.11em;font-weight:800;color:#5b6e8d}
.contribute-email{font-weight:800;overflow-wrap:anywhere;font-size:clamp(16px,1.7vw,20px);text-decoration:underline;text-underline-offset:4px}
.contribute-action .btn{align-self:flex-start;text-align:center}
.contribute-action small{font-size:12px;line-height:1.5;color:#697791}
.book-layout{align-items:stretch}
.book-layout .card{min-height:0}
#compra .card>p{line-height:1.7}
#compra .card .btn[aria-disabled="true"]{background:#5d7093}
:focus-visible{outline:3px solid #3c62ab;outline-offset:3px}
@media(max-width:840px){.mobile-nav{background:#fff;border-top:1px solid #dce5f2;box-shadow:0 -8px 26px #0d225815}.mobile-nav a{color:var(--navy);max-width:20%;line-height:1.15}.mobile-nav a.active{color:#214688;font-weight:900}.mobile-nav a span{margin-bottom:2px}.contribute-panel{grid-template-columns:1fr}.contribute-action{max-width:100%}}
@media(max-width:690px){.hero.home,.hero.history{padding:31px 23px;display:flex;flex-direction:column;align-items:flex-start;min-height:unset;gap:16px}.hero.home>div,.hero.history>div{max-width:100%}.hero.home::after,.hero.history::after{position:relative;top:auto;right:auto;transform:none;width:180px;height:180px;max-width:70%;margin:2px auto 0;align-self:center}.hero.history::after{width:130px;height:130px}.hero{border-radius:16px;min-height:unset;padding:32px 23px}.hero h1{font-size:clamp(34px,9vw,44px)}.hero p{font-size:16px}.hero.home .actions{width:100%}.hero.home .actions .btn{width:100%}.contribute-panel{padding:24px;gap:23px}.contribute-action{padding:20px}.majorals-cards{grid-template-columns:1fr}.section{padding:36px 0}}
@media(prefers-reduced-motion:reduce){a.card,.btn,.day-tab{transition:none;transform:none!important}}


/* bundled: festival2026.css */
/* El Descontrol · edició especial de Sant Rafel 2026 · marí i blanc */
:root{--f-navy:#0d2258;--f-deep:#091837;--f-blue:#244a91;--f-ink:#122650;--f-pale:#f3f7fd;--f-line:#dde6f2;--f-muted:#60718e}
body{background:#fff;color:var(--f-ink)}
header{position:sticky;top:0;z-index:30;background:#fffffff5;border-bottom:1px solid var(--f-line)}
.navwrap{max-width:1190px;padding:10px 22px}
.brand{font:900 17px/1.1 'DM Sans',sans-serif;letter-spacing:-.045em;display:flex;gap:10px;align-items:center}
.brand small{display:block;font:800 9px/1.4 'DM Sans',sans-serif;letter-spacing:.14em;color:#6c7d97;margin-top:5px}
.brand-logo{width:46px;height:46px;border-radius:100%;border:0;box-shadow:none;object-fit:contain}
nav{gap:0}nav a{border-radius:8px;padding:10px 11px;font-size:12px;letter-spacing:-.01em;font-weight:800;white-space:nowrap}nav a.active,nav a:hover{background:var(--f-navy);color:#fff}
.wrap{max-width:1190px} .festival-main{min-height:calc(100vh - 200px)}
.festival-footer{background:#081836;color:#e9eff9;border:0;margin-top:50px;text-align:left}
.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;max-width:1145px;margin:auto}
.footer-inner strong{font-size:15px}.footer-inner small{color:#abbcdc;display:block;margin-top:6px}.footer-inner>div:last-child{display:flex;gap:18px;flex-wrap:wrap}.footer-inner a{font-size:12px;font-weight:750;color:#c2d0eb}.footer-inner a:hover{color:#fff;text-decoration:underline}
.festival-main h1,.festival-main h2,.festival-main h3{font-family:'DM Sans',sans-serif;letter-spacing:-.052em}.festival-main h1{font-weight:850}.festival-main h2{font-size:clamp(28px,3.6vw,43px);line-height:1.1;color:var(--f-navy);margin:10px 0 18px}.festival-main h3{font-size:21px;margin:10px 0 12px;letter-spacing:-.04em}.festival-main p{line-height:1.7}.f-kicker{font-size:11px;letter-spacing:.18em;font-weight:900;color:#e2ecff;text-transform:uppercase}.f-kicker.navy{color:#48649b}.f-inline{font-weight:900;letter-spacing:-.01em}.f-button{display:inline-flex;align-items:center;gap:12px;background:var(--f-navy);border:1px solid var(--f-navy);color:#fff;padding:14px 19px;font-weight:850;border-radius:8px;transition:transform .15s,background .15s;font-size:13px;line-height:1.2}.f-button:hover{background:#214384;transform:translateY(-2px)}.f-button.light{background:#fff;border-color:#fff;color:var(--f-navy)}.f-button.light:hover{background:#edf4ff}.f-button.subtle{background:#ffffff12;border-color:#ffffff65;color:#fff}.f-button.outline{background:transparent;color:var(--f-navy)}.f-button.outline:hover{background:#e7eefb}.f-button[aria-disabled="true"]{cursor:not-allowed;opacity:.57;pointer-events:none}
.fh-hero{background:linear-gradient(132deg,#081835,#0e2a66 65%,#1c4285);color:#fff;margin-top:22px;border-radius:22px;overflow:hidden;min-height:420px;padding:clamp(30px,5.5vw,65px);position:relative;display:flex;align-items:center;gap:18px}.fh-copy{position:relative;z-index:2;max-width:650px;flex:1.5}.fh-hero h1{font-size:clamp(43px,5.5vw,75px);margin:14px 0 23px;line-height:1.04;max-width:720px}.fh-hero p{font-size:clamp(15px,1.5vw,18px);color:#e3eeff;max-width:610px;line-height:1.75}.fh-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}.fh-image{flex:.75;min-width:200px;position:relative;z-index:1;display:flex;justify-content:center}.fh-image img{width:min(100%,335px);height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 20px 35px #0005)}.fh-footline{position:absolute;bottom:22px;left:65px;color:#b5c8e6;font-size:10px;font-weight:900;letter-spacing:.19em}
.f-section{padding:53px 0}.f-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:25px}.f-heading>div:first-child{max-width:700px}.f-heading p{color:var(--f-muted);font-size:16px;margin:0}.f-timer{border:1px solid var(--f-line);border-radius:14px;min-width:150px;padding:14px 22px;background:#f7f9fe;display:flex;align-items:center;flex-direction:column}.f-timer strong{font-size:47px;line-height:1.05;color:var(--f-navy)}.f-timer span{font-size:11px;color:#7184a3;font-weight:800;white-space:nowrap}
.f-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.f-feature{background:#f4f7fd;border:1px solid var(--f-line);border-radius:17px;display:flex;flex-direction:column;padding:26px;min-height:285px;box-shadow:0 10px 27px #0d225805;transition:transform .18s,box-shadow .18s}.f-feature:hover{transform:translateY(-5px);box-shadow:0 14px 35px #0d22581f}.f-feature h3{color:var(--f-navy);margin-top:auto}.f-feature p{color:#5e708c;font-size:14px;margin-top:0;line-height:1.6}.f-feature .f-mini{color:#5973a4;font-size:10px;font-weight:900;letter-spacing:.13em}.f-feature .f-inline{color:var(--f-navy);font-size:12px;margin-top:auto}.f-feature-icon{font-size:75px;line-height:1.5;color:#2a4e98}.f-feature.navy-card{background:var(--f-navy);color:#fff}.f-feature.navy-card .f-mini,.f-feature.navy-card p,.f-feature.navy-card .f-inline{color:#dae5fc}.f-feature.navy-card h3{color:#fff}.f-feature-illustration{font-size:73px;font-weight:900;letter-spacing:-.09em;line-height:1.5}.f-feature-illustration span{font-size:29px;vertical-align:middle;letter-spacing:0}
.f-history-panel{background:var(--f-pale);border:1px solid var(--f-line);padding:42px;border-radius:17px;margin:15px 0 30px}.f-history-panel>p{font-size:17px;max-width:880px;color:#4c5b79;line-height:1.75}.f-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:35px}.f-facts>div{background:#fff;border:1px solid var(--f-line);border-radius:11px;padding:18px}.f-facts strong,.f-facts span{display:block}.f-facts strong{font-weight:900;font-size:22px;color:var(--f-navy)}.f-facts span{font-size:12px;margin-top:6px;color:#6a7a94}.f-callout{background:linear-gradient(115deg,#091b43,#1b3b7b);color:#fff;border-radius:20px;padding:36px 44px;display:flex;gap:25px;align-items:center;justify-content:space-between}.f-callout>div{max-width:710px}.f-callout h2{color:#fff}.f-callout p{color:#e5eeff;max-width:670px;font-size:16px}.f-callout img{width:min(28%,190px);border-radius:100%}
.f-pagehero{display:flex;align-items:center;justify-content:space-between;min-height:300px;padding:clamp(27px,5vw,56px);border-radius:20px;margin-top:24px;background:linear-gradient(124deg,#091a43,#214a95);color:white;position:relative;overflow:hidden}.f-pagehero>div{max-width:730px;position:relative;z-index:2}.f-pagehero h1{font-size:clamp(40px,5.4vw,68px);margin:14px 0 16px;line-height:1.04}.f-pagehero p{color:#e3edff;font-size:17px;max-width:620px}.f-hero-pills{display:flex;gap:7px;margin-top:19px;flex-wrap:wrap}.f-hero-pills span{font-weight:850;letter-spacing:.08em;background:#ffffff1e;border:1px solid #ffffff50;border-radius:7px;font-size:11px;padding:9px 11px}.f-big-mark{font-size:105px;letter-spacing:-.11em;color:#fff;opacity:.12;font-weight:900;align-self:center;margin:0 6% 0 3%;white-space:nowrap}.f-big-mark span{display:block;font-size:46px;text-align:right;line-height:.7}.f-status{display:inline-flex;font-size:12px;font-weight:850;color:#2b4c82;background:#e8eef8;border:1px solid #dce6f5;border-radius:7px;padding:10px 13px;max-width:240px;text-align:center}.f-status.light-status{background:#ffffff20;color:#fff;border-color:#ffffff5a;margin-top:15px}.f-note{background:#edf3fc;border-left:3px solid #244a91;border-radius:7px;padding:15px 19px;color:#435d86;font-size:14px;margin:15px 0 26px}
.f-day-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.f-daytab{border:1px solid var(--f-line);color:var(--f-navy);background:#fff;border-radius:11px;padding:13px 20px;min-width:138px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;font-weight:850}.f-daytab small{font-size:11px;color:#697d9d;font-weight:750}.f-daytab.active{background:var(--f-navy);color:#fff;border-color:var(--f-navy)}.f-daytab.active small{color:#d7e4fa}.f-filterrow{display:flex;flex-wrap:wrap;gap:7px;margin:26px 0}.f-chip{border:1px solid #dce6f3;background:#f4f7fc;color:#344e7a;padding:9px 14px;border-radius:40px;font-size:12px;font-weight:800}.f-chip.active{color:#fff;background:var(--f-blue);border-color:var(--f-blue)}.f-daygroup{margin:30px 0;border:1px solid var(--f-line);border-radius:15px;overflow:hidden;background:#fff}.f-daygroup>h3{background:#eaf1fa;color:var(--f-navy);padding:17px 21px;margin:0!important;font-size:21px}.f-event{display:grid;grid-template-columns:95px 1fr 48px;align-items:start;gap:15px;padding:21px;border-top:1px solid var(--f-line)}.f-event time{font-size:20px;font-weight:900;color:var(--f-blue);font-variant-numeric:tabular-nums}.f-event h4{font-size:17px;letter-spacing:-.025em;margin:0 0 7px;color:var(--f-navy)}.f-event p{margin:0;color:#62708b;font-size:13px;line-height:1.6}.f-event .f-category{display:inline-flex;margin-top:12px;background:#edf3fc;color:#345487;padding:5px 9px;border-radius:7px;font-size:10px;font-weight:850}.f-heart{width:39px;height:39px;border:0;border-radius:10px;background:#edf3fc;color:var(--f-blue);font-size:23px}.f-heart.active{background:#e0e9fa;color:#06265f}.f-empty{padding:30px 25px;border:1px dashed #c2d1e8;background:#f8faff;border-radius:14px;line-height:1.6;color:#576d91}.f-empty strong{display:block;color:#142f61;font-size:19px;margin-bottom:7px}.f-crosslinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 45px}.f-crosslinks a{padding:19px 21px;display:flex;align-items:center;gap:15px;border:1px solid var(--f-line);background:#f7faff;border-radius:12px;color:var(--f-navy)}.f-crosslinks a span{font-size:27px}.f-crosslinks a strong{font-size:15px}.f-crosslinks a i{font-style:normal;margin-left:auto}
.contest-hero{background:linear-gradient(115deg,#101d42,#244785)}.contest-mark{font-size:210px}.f-con-modes{display:grid;grid-template-columns:1fr 1fr;gap:17px}.f-con-mode{background:#f5f8fd;border:1px solid var(--f-line);border-radius:15px;padding:24px}.f-con-mode h3{color:var(--f-navy)}.f-con-mode p{font-size:14px;color:#65748f}.f-con-icon{font-size:47px;color:#295299}.f-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.f-info-grid article{border:1px solid var(--f-line);border-radius:13px;padding:18px}.f-info-grid span{display:block;font-size:11px;font-weight:900;letter-spacing:.12em;color:#6b7e9e}.f-info-grid strong{font-size:16px;display:block;color:var(--f-navy);margin-top:8px}.f-softpanel{background:#edf3fc;border:1px solid var(--f-line);padding:33px;border-radius:15px}.f-softpanel p{color:#5c718f;max-width:780px}.f-con-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.f-accordion{border-top:1px solid #cfdaeb;margin-top:25px;padding:17px 0 0}.f-accordion summary{font-weight:850;color:var(--f-navy);cursor:pointer}.f-accordion summary span{float:right}.f-accordion p{line-height:1.7}
.bar-hero{background:linear-gradient(120deg,#09204f,#204f97)}.bar-mark{font-size:195px}.f-bar-categories{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0}.f-bar-cat{background:#edf3fb;border:1px solid #dce7f4;padding:11px 15px;border-radius:7px;color:#3c5481;font-size:13px;font-weight:800}.f-bar-cat.active{background:var(--f-navy);color:#fff}.f-bar-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.f-baritem{padding:20px 22px;border-radius:12px;border:1px solid var(--f-line);background:#fff;display:grid;grid-template-columns:1fr auto;column-gap:15px;align-items:center}.f-baritem h3{color:var(--f-navy);font-size:16px;margin:0 0 7px}.f-baritem p{margin:0;font-size:13px;color:#65748f}.f-baritem .f-price{font-size:19px;font-weight:900;color:var(--f-navy);white-space:nowrap}.f-bar-group{grid-column:1/-1;margin-top:10px;color:var(--f-navy);font-size:19px;border-bottom:1px solid var(--f-line);padding-bottom:10px}.f-bar-empty{grid-column:1/-1}
/* Shared for previous majorals/book pages */
.hero h1{font-size:clamp(35px,5vw,61px)}
@media(max-width:1040px){nav a{padding:10px 8px;font-size:11px}.brand{font-size:15px}.navwrap{padding-left:15px;padding-right:15px}}
@media(max-width:840px){nav{display:none}.mobile-nav{display:flex;justify-content:space-between;padding:7px 6px max(7px,env(safe-area-inset-bottom));background:#fff;box-shadow:0 -7px 25px #10244812;border-top:1px solid var(--f-line)}.mobile-nav a{font-size:10px;color:var(--f-navy);max-width:20%;width:20%;text-align:center;padding:6px 1px}.mobile-nav a span{font-size:21px;margin-bottom:2px}.mobile-nav a.active{color:#21509d}footer{padding-bottom:100px}}
@media(max-width:760px){.fh-hero{padding:33px 26px;flex-direction:column;align-items:flex-start;min-height:unset;gap:15px}.fh-copy{max-width:100%}.fh-hero h1{font-size:46px}.fh-image{align-self:center;min-width:unset}.fh-image img{width:175px}.fh-footline{position:static;font-size:9px;margin-top:3px}.f-feature-grid{grid-template-columns:1fr}.f-feature{min-height:205px}.f-feature-illustration{font-size:56px}.f-feature-icon{font-size:48px}.f-facts{grid-template-columns:1fr}.f-callout{padding:27px;flex-direction:column;align-items:flex-start}.f-callout img{width:130px;align-self:center}.f-heading{align-items:flex-start}.f-timer{min-width:115px;padding:9px}.f-timer strong{font-size:34px}.f-heading h2{font-size:31px}.f-pagehero{padding:33px 26px}.f-big-mark{display:none}.f-bar-list{grid-template-columns:1fr}.f-info-grid{grid-template-columns:1fr}.f-con-modes{grid-template-columns:1fr}}
@media(max-width:530px){.wrap{padding:0 16px}.fh-hero,.f-pagehero{margin-top:15px;border-radius:13px}.fh-hero h1{font-size:40px}.fh-actions{flex-direction:column;width:100%}.fh-actions .f-button{justify-content:center}.f-heading{flex-direction:column}.f-timer{flex-direction:row;gap:14px}.f-heading h2{font-size:29px}.f-section{padding:32px 0}.f-history-panel{padding:24px 20px}.f-day-tabs{display:grid;grid-template-columns:1fr 1fr}.f-daytab{min-width:0;padding:12px}.f-daygroup h3{font-size:17px}.f-event{grid-template-columns:63px 1fr 30px;gap:9px;padding:14px 10px}.f-event time{font-size:15px}.f-event h4{font-size:14px}.f-event p{font-size:12px}.f-heart{width:32px;height:32px;font-size:19px}.f-crosslinks{grid-template-columns:1fr}.f-pagehero h1{font-size:40px}.f-pagehero p{font-size:15px}.f-softpanel{padding:22px}.footer-inner{flex-direction:column;align-items:flex-start;gap:15px}.festival-footer{padding-left:22px}.footer-inner>div:last-child{gap:11px}}
@media(prefers-reduced-motion:reduce){.f-feature,.f-button{transition:none;transform:none!important}}

/* --- Carta fotogràfica + joc fester (octubre 2026) --- */
[hidden]{display:none!important}
.mobile-nav a{width:16.6667%;max-width:16.6667%}
.f-menu-photo{border:1px solid #c9d8eb;background:#eef3fc;border-radius:19px;padding:clamp(12px,2.2vw,23px);box-shadow:0 14px 35px #0d22580c}
.f-menu-image-button{position:relative;display:block;width:100%;border:0;padding:0;background:#fff;border-radius:12px;overflow:hidden;cursor:zoom-in;box-shadow:0 8px 28px #0d225812}
.f-menu-image-button img{width:100%;height:auto;max-height:950px;object-fit:contain;display:block;margin:auto}
.f-menu-zoom{position:absolute;right:15px;bottom:15px;color:#fff;background:#0d2258e8;border-radius:8px;padding:12px 16px;font-size:13px;font-weight:800}
.f-menu-photo-footer{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;color:#536584;font-size:13px;padding:7px 3px 0}
.f-menu-photo-footer a{color:#0d2258;text-decoration:underline;font-weight:800}
.f-menu-wait{text-align:center;display:grid;justify-items:center;gap:11px;border:2px dashed #b6cbea;border-radius:17px;background:#f5f8fd;padding:clamp(27px,5vw,65px) 18px;color:#203966}
.f-menu-wait-icon{height:100px;width:80px;border:5px solid #b3c8e4;border-radius:13px;background:#fff;display:grid;place-items:center;font-size:51px;color:#577eb8;transform:rotate(-5deg)}
.f-menu-wait strong{font-size:23px}.f-menu-wait p{max-width:475px;line-height:1.5;margin:0;color:#637793}
.f-menu-dialog{border:0;border-radius:17px;padding:0;max-width:98vw;max-height:96vh;overflow:auto;background:#e6edf8;box-shadow:0 18px 70px #020b2299}
.f-menu-dialog::backdrop{background:#06132bdc}
.f-menu-dialog-inner{padding:12px;min-width:min(700px,90vw);text-align:center}
.f-menu-dialog-actions{display:flex;justify-content:space-between;align-items:center;padding:5px 6px 13px;color:#0c2454;font-size:14px}
.f-menu-dialog-actions button{background:#0d2258;border:0;border-radius:7px;color:#fff;font-weight:800;padding:11px 18px}
.f-menu-dialog img{max-width:none;width:auto;max-height:none;height:auto;display:block;max-width:1100px;min-width:min(95vw,700px);margin:0 auto}
.f-menu-dialog a{text-decoration:underline;color:#193e78;font-weight:850}
.f-game-banner{border-radius:20px;overflow:hidden;background:linear-gradient(120deg,#071838,#143574 75%,#2756a0);color:white;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:clamp(29px,5vw,51px);position:relative}
.f-game-banner .f-kicker{color:#ccdfff}.f-game-banner h2{color:white;margin:14px 0;font-size:clamp(34px,4vw,53px)}.f-game-banner p{max-width:620px;color:#d8e6ff;line-height:1.7;font-size:16px}.f-game-banner p strong{color:white}
.f-game-banner .f-button{margin-top:14px}.f-game-illustration{display:grid;place-items:center;gap:0;flex:1;font-weight:900;white-space:nowrap;transform:rotate(-17deg)}.f-game-illustration span:first-child{font-size:45px;color:#f8d982;justify-self:start}.f-game-illustration span:last-child{font-size:45px;color:#f8d982;justify-self:end}.f-serpent-shape{font-size:30px;color:#e3ecff;letter-spacing:-.17em;border-radius:50px;padding:16px;background:#ffffff17}
@media(max-width:840px){.mobile-nav a{width:16.6667%;max-width:16.6667%;font-size:9px;padding:6px 1px}.mobile-nav a span{font-size:19px}}
@media(max-width:700px){.f-game-illustration{display:none}.f-game-banner{padding:28px}.f-menu-zoom{bottom:10px;right:10px;padding:9px 12px;font-size:12px}.f-menu-dialog img{min-width:min(95vw,500px)}}


/* Memòria històrica integrada */
.f-memory-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.9fr);gap:26px;align-items:center;margin-top:8px}
.f-memory-copy>p{font-size:17px;color:#4c5b79;line-height:1.8;margin:0 0 14px;max-width:unset}
.f-memory-extra{font-size:15px!important;color:#5b6985!important}
.f-memory-visual{position:relative;min-height:500px;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#eef2f7,#dde5ef);border:1px solid var(--f-line);box-shadow:0 18px 40px #10234a14;margin:0}
.f-memory-photo{position:absolute;inset:18px;background:linear-gradient(180deg,rgba(247,249,252,.12),rgba(234,239,246,.3)),url('/memoria-sant-rafel-historica.webp') center 24%/cover no-repeat;filter:grayscale(1) contrast(1.02) brightness(1.04);mask-image:radial-gradient(circle at center, rgba(0,0,0,1) 58%, rgba(0,0,0,.78) 74%, rgba(0,0,0,.18) 92%, rgba(0,0,0,0) 100%);-webkit-mask-image:radial-gradient(circle at center, rgba(0,0,0,1) 58%, rgba(0,0,0,.78) 74%, rgba(0,0,0,.18) 92%, rgba(0,0,0,0) 100%)}
.f-memory-visual:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at center, rgba(255,255,255,0) 46%, rgba(235,240,246,.15) 62%, rgba(235,240,246,.7) 84%, rgba(235,240,246,.96) 100%),linear-gradient(180deg,rgba(255,255,255,0) 32%,rgba(234,239,246,.42) 67%,rgba(234,239,246,.94) 100%)}
.f-memory-visual figcaption{position:absolute;left:18px;right:18px;bottom:16px;z-index:3;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.8);backdrop-filter:blur(8px);font-size:13px;line-height:1.5;color:#38506d;font-weight:700}
@media(max-width:760px){.f-memory-layout{grid-template-columns:1fr}.f-memory-visual{min-height:430px}}
@media(max-width:530px){.f-memory-copy>p{font-size:15px}.f-memory-extra{font-size:14px!important}.f-memory-visual{min-height:380px;border-radius:18px}.f-memory-visual figcaption{font-size:12px;padding:12px 14px}}


/* bundled: fester-games.css */
/* Jocs festers — Penya El Descontrol */
.games-zone{--gz-navy:#0d2258;--gz-gold:#f3c75b;padding-bottom:60px}
.gz-hero{margin:24px 0 23px;border-radius:20px;background:radial-gradient(ellipse at 90% 15%,#315b99 0%,#0d2258 64%);color:#fff;padding:clamp(26px,4vw,49px);min-height:290px;display:grid;grid-template-columns:1.8fr .55fr;align-items:center;gap:25px;overflow:hidden}
.gz-kicker{color:#f5d078;font-size:10px;letter-spacing:.18em;font-weight:900;text-transform:uppercase}
.gz-hero h1{font-size:clamp(43px,6.5vw,75px);letter-spacing:-.064em;font-weight:900;line-height:.99;margin:14px 0 19px;color:white}
.gz-hero h1 span{color:#f5d078}.gz-hero p{font-size:16px;color:#e1e9fb;line-height:1.7;max-width:650px;margin:0}.gz-hero>img{width:100%;max-width:240px;filter:drop-shadow(0 12px 25px #0004);justify-self:center}
.gz-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.gz-badges span{border:1px solid #ffffff50;border-radius:99px;padding:8px 11px;color:#fff;font-size:11px;font-weight:750;background:#ffffff15}
.gz-choices{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gz-game{border-radius:18px;padding:28px 30px;min-height:360px;display:flex;flex-direction:column;overflow:hidden;position:relative;isolation:isolate;transition:transform .16s,box-shadow .16s;border:1px solid #dee6f3}.gz-game:hover,.gz-game:focus-visible{transform:translateY(-3px);box-shadow:0 20px 38px #102d5940}.gz-cassalla{background:#ecf2fb;color:#0d2258}.gz-paella{background:#102958;color:#fff;border-color:#102958}.gz-game-top{display:flex;justify-content:space-between;gap:15px;align-items:center;letter-spacing:.13em;font-weight:900;font-size:10px}.gz-arrow{font-size:25px;letter-spacing:0}.gz-emoji{position:absolute;font-size:160px;right:18px;top:53px;transform:rotate(-15deg);opacity:.17;pointer-events:none;z-index:-1}.gz-paella .gz-emoji{opacity:.32}.gz-game h2{font-size:clamp(34px,4.3vw,51px);line-height:1.02;letter-spacing:-.06em;color:inherit;margin:60px 0 16px}.gz-game p{font-size:14px;line-height:1.65;max-width:430px;margin:0 0 24px}.gz-cassalla p{color:#52688a}.gz-paella p{color:#d8e5f9}.gz-play{margin-top:auto;display:inline-flex;align-items:center;gap:12px;font-weight:900;border-radius:8px;background:#0d2258;color:white;padding:12px 17px;align-self:flex-start;font-size:13px}.gz-paella .gz-play{background:#ffcf67;color:#0d2258}.gz-note{font-size:12px;color:#677b97;margin:18px 0}
@media(max-width:750px){.gz-hero{grid-template-columns:1fr;margin-top:13px;padding:26px 22px}.gz-hero>img{display:none}.gz-choices{grid-template-columns:1fr}.gz-game{min-height:300px;padding:24px}.gz-game h2{margin:46px 0 14px}.gz-emoji{font-size:125px}}
@media(prefers-reduced-motion:reduce){.gz-game{transition:none}.gz-game:hover{transform:none}}

/* Tres propostes, amb la tercera a tot l'ample en ordinador */
.gz-puja{grid-column:1/-1;min-height:275px;background:linear-gradient(115deg,#173f83,#081a3c);color:white;border-color:#173e76}
.gz-puja p{color:#dde9fc;max-width:580px}.gz-puja .gz-emoji{opacity:.3;top:20px;right:45px}.gz-puja h2{margin:30px 0 12px}
.gz-puja .gz-play{background:#f4cb72;color:#112858}.gz-puja .gz-game-top{color:#fff}
@media(max-width:750px){.gz-puja{grid-column:auto;min-height:310px}.gz-puja h2{margin:45px 0 15px}}

.gz-putxero .gz-putxero-icons{display:flex;align-items:center;gap:2px;opacity:.42;top:47px;right:18px;transform:rotate(-10deg)}.gz-putxero .gz-putxero-icons img{width:89px;height:89px;object-fit:contain;filter:drop-shadow(0 4px 5px #152e4933)}.gz-putxero .gz-putxero-icons span{font-size:34px;font-weight:900;color:#122f56}
@media(max-width:750px){.gz-putxero .gz-putxero-icons img{width:75px;height:75px}}

.gz-puja .gz-puja-illustration{right:18px;top:18px;width:210px;height:170px;background:url('/capelleta-sant-rafel-joc.webp') center/contain no-repeat;opacity:.22;filter:blur(.35px) drop-shadow(0 10px 20px rgba(0,0,0,.18));transform:rotate(-7deg)}
@media(max-width:750px){.gz-puja .gz-puja-illustration{width:170px;height:135px;right:12px;top:18px}}


/* bundled: casalla.css */
/* No bolques la cassalla! — joc original per a la Penya El Descontrol */
.cas-page{padding-bottom:42px;--cas-navy:#0d2258;--cas-mid:#22477e;--cas-gold:#f8cb65;--cas-cream:#fff9ea}
.cas-hero{position:relative;display:grid;grid-template-columns:1.6fr .75fr;gap:22px;align-items:center;margin:22px 0 25px;border-radius:21px;background:radial-gradient(ellipse at 100% 0%,#274e90 0%,#0d2258 66%);color:white;padding:clamp(25px,4.5vw,49px);overflow:hidden;isolation:isolate}
.cas-hero:before{content:"";position:absolute;inset:0;opacity:.14;background-image:radial-gradient(circle at 19% 17%,#fff 1px,transparent 1.6px),radial-gradient(circle at 71% 48%,#fff 1px,transparent 1.6px);background-size:48px 48px,79px 79px;z-index:-1}
.cas-kicker{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--cas-gold)}
.cas-hero h1{color:#fff;letter-spacing:-.059em;font-weight:900;font-family:Manrope,'DM Sans',sans-serif;font-size:clamp(38px,6vw,77px);line-height:1.04;margin:15px 0 18px}
.cas-hero h1 span{color:var(--cas-gold)}
.cas-hero p{color:#e3eafa;line-height:1.65;max-width:610px;font-size:16px;margin:0}
.cas-hero-join{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:23px}
.cas-hero-tag{font-size:11px;font-weight:800;letter-spacing:.025em;color:#fff;border:1px solid #ffffff40;border-radius:99px;padding:8px 12px;background:#ffffff12}
.cas-hero-art{display:grid;justify-items:center;gap:14px;text-align:center}
.cas-hero-art img{width:min(190px,75%);aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 6px 20px #030b1f7d)}
.cas-hero-art b{font-size:12px;color:#e1ecff;letter-spacing:.08em;text-transform:uppercase}
.cas-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.83fr);gap:18px;align-items:start}
.cas-main-card,.cas-instructions{background:#fff;border:1px solid #e3e9f4;border-radius:18px;box-shadow:0 15px 45px #0c23400c;overflow:hidden}
.cas-card-head{padding:21px 23px 13px;display:flex;justify-content:space-between;gap:8px;align-items:center}
.cas-card-head h2,.cas-instructions h2{margin:5px 0 0;color:#102552;font-size:clamp(18px,2.3vw,23px);letter-spacing:-.025em}
.cas-chip{color:#102c5c;font-size:10px;font-weight:900;background:#ffedb6;border:1px solid #f4d67e;padding:8px 10px;border-radius:100px;white-space:nowrap}
.cas-scores{padding:0 23px 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.cas-scores>div{padding:12px 14px;background:#f1f5fc;border:1px solid #e2eaf7;border-radius:10px;display:flex;flex-direction:column;gap:6px;min-width:0}
.cas-scores span{font-size:10px;color:#5a6d88;font-weight:900;letter-spacing:.07em}
.cas-scores strong{font-size:clamp(23px,3vw,32px);color:#132e65;font-weight:900;letter-spacing:-.06em;line-height:1.1;font-variant-numeric:tabular-nums}
.cas-board-shell{margin:0 18px;position:relative;overflow:hidden;background:#0b1a38;border-radius:14px;border:4px solid #132d5b;touch-action:pan-y}
#cas-canvas{display:block;width:100%;height:auto;aspect-ratio:960/575;outline:none}
.cas-over{position:absolute;inset:0;display:grid;place-items:center;z-index:2;padding:16px;background:#061330af;backdrop-filter:blur(4px)}
.cas-over[hidden]{display:none}
.cas-dialog{background:#fffef9;padding:clamp(18px,3vw,28px);border-radius:16px;max-width:400px;width:100%;text-align:center;box-shadow:0 15px 40px #0003}
.cas-dialog-symbol{display:block;font-size:37px;margin-bottom:9px}
.cas-dialog h3{color:#0d2258;font-weight:900;letter-spacing:-.03em;font-size:clamp(22px,3vw,30px);margin:5px 0}
.cas-dialog p{color:#46536c;font-size:14px;line-height:1.55;margin:10px 0 16px}
.cas-action{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:43px;border:0;background:#0d2258;color:white;font-size:13px;font-weight:900;border-radius:9px;padding:11px 16px;transition:transform .15s,background .15s}
.cas-action:hover{transform:translateY(-1px);background:#224b91}
.cas-action.outline{color:#0d2258;background:white;border:1px solid #bdcce4}
.cas-action.outline:hover{background:#edf3fd}
.cas-action.plain{background:transparent;color:#264377}
.cas-toolbar{padding:15px 19px 0;display:flex;flex-wrap:wrap;gap:8px}
.cas-toolbar .cas-action{flex:1;white-space:nowrap}
.cas-barline{padding:13px 20px 6px;display:flex;gap:10px;align-items:center}
.cas-barline span{color:#556b91;white-space:nowrap;font-weight:800;font-size:11px}
.cas-next-track{background:#e6ebf5;height:8px;border-radius:8px;overflow:hidden;flex:1}
.cas-next-fill{display:block;background:linear-gradient(90deg,#e5ac47,#f5d786);width:0%;height:100%;border-radius:8px;transition:width .18s}
.cas-pad{display:grid;grid-template-columns:1fr 1fr;gap:13px;max-width:360px;margin:12px auto 2px;padding:0 18px}
.cas-pad button{background:#e7edf7;border:1px solid #c7d5ee;color:#0d2258;border-radius:13px;min-height:60px;font-size:24px;font-weight:900;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
.cas-pad button:active,.cas-pad button.is-holding{background:#0d2258;color:#fff}
.cas-hint{padding:10px 20px 18px;margin:0;font-size:12px;color:#687b99;text-align:center;line-height:1.5}
.cas-instructions{padding:25px 24px}
.cas-instructions p{color:#60718d;font-size:14px;line-height:1.72}
.cas-rules{padding-left:20px;color:#30415e;font-size:14px;line-height:1.75;margin:17px 0 23px}
.cas-rules li{padding-bottom:12px}.cas-rules strong{color:#102552}
.cas-tip{background:#eef3fc;border-left:4px solid #e7be65;padding:15px 16px;border-radius:5px;color:#263c64;display:grid;gap:5px;font-size:13px;line-height:1.55;margin:16px 0}
.cas-tip b{font-size:12px;color:#0d2258}
.cas-side-end{display:block;padding:18px 0 0;border-top:1px solid #e6ecf5;margin-top:21px;font-size:12px;color:#5e7294;line-height:1.6}
.cas-side-end a{color:#0d2258;text-decoration:underline;font-weight:800}
.cas-footer-note{font-size:12px;color:#68809f;margin-top:10px}
.cas-ranknote{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#8c691e;font-weight:800;margin:0 0 10px}
@media(max-width:860px){.cas-hero{grid-template-columns:1fr}.cas-hero-art{display:none}.cas-grid{grid-template-columns:1fr}.cas-instructions{order:2}}
@media(max-width:560px){.cas-hero{padding:24px 20px;border-radius:14px;margin-top:13px}.cas-main-card{border-radius:14px}.cas-card-head{padding:16px 14px 12px}.cas-scores{padding:0 12px 12px;gap:5px}.cas-scores>div{padding:9px 8px}.cas-scores span{font-size:8px;letter-spacing:.02em}.cas-board-shell{margin:0 6px;border-width:2px;border-radius:9px}.cas-over{padding:10px}.cas-dialog{padding:16px 14px;max-width:100%}.cas-dialog h3{font-size:22px}.cas-dialog p{font-size:13px;line-height:1.55}.cas-toolbar{padding:12px 9px 0;gap:6px}.cas-toolbar .cas-action{padding:8px 7px;min-height:42px;font-size:11px}.cas-barline{padding:10px 12px 5px}.cas-pad{padding:0 10px;gap:10px}.cas-pad button{min-height:66px}.cas-instructions{padding:20px}.cas-hint{font-size:11px}}
@media(prefers-reduced-motion:reduce){.cas-action{transition:none}}


/* bundled: paella.css */
/* La Paella Festera — minijoc HTML/CSS/Canvas, sense llibreries externes */
.pa-page{--pa-navy:#102957;--pa-gold:#f4c75f;padding-bottom:48px}
.pa-hero{background:radial-gradient(ellipse at 90% 20%,#3165a3,#0d2258 63%);border-radius:19px;margin:23px 0;min-height:240px;color:#fff;display:grid;grid-template-columns:1fr 175px;align-items:center;gap:16px;padding:clamp(24px,4vw,42px);overflow:hidden}
.pa-hero h1{color:#fff;font-size:clamp(39px,6vw,68px);line-height:1.02;letter-spacing:-.06em;margin:12px 0 15px}.pa-hero h1 em{font-style:normal;color:#ffcf69}.pa-hero p{color:#dce7fb;line-height:1.6;font-size:15px;max-width:700px;margin:0}.pa-hero-art{font-size:125px;filter:drop-shadow(0 12px 20px #0006);transform:rotate(-12deg);text-align:center}
.pa-grid{display:grid;grid-template-columns:minmax(0,1.63fr) minmax(250px,.75fr);align-items:start;gap:19px}
.pa-play,.pa-aside{border:1px solid #e0e8f3;border-radius:18px;background:white;box-shadow:0 15px 45px #09214809;overflow:hidden}
.pa-play{padding:22px}.pa-play-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}
.pa-overline{color:#526d9a;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.pa-play h2{font-size:23px;line-height:1.16;letter-spacing:-.035em;color:#0d2258;margin:4px 0 0}.pa-back{color:#254d90;font-size:12px;font-weight:800;white-space:nowrap}
.pa-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 13px}.pa-stats>div{border:1px solid #e1e9f7;border-radius:10px;padding:11px 10px;background:#eff4fb;display:flex;flex-direction:column;gap:3px;min-width:0}.pa-stats small{font-size:9px;letter-spacing:.07em;font-weight:900;color:#617492}.pa-stats strong{color:#0d2258;font-size:clamp(21px,3vw,29px);line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.035em}
.pa-board{position:relative;background:#112957;overflow:hidden;border-radius:13px;border:4px solid #102856;line-height:0;max-width:100%}
.pa-board canvas{display:block;width:100%;height:auto;aspect-ratio:780/450}
.pa-overlay{position:absolute;inset:0;display:grid;place-items:center;z-index:2;background:#081b41bd;backdrop-filter:blur(3px);padding:13px;line-height:1.45}.pa-overlay[hidden]{display:none}
.pa-dialog{line-height:1.45;text-align:center;max-width:340px;width:100%;padding:24px 21px;background:#fffefa;border-radius:15px;box-shadow:0 15px 30px #0003}.pa-dialog-icon{font-size:44px;line-height:1.2}.pa-dialog h3{color:#0d2258;font-size:27px;line-height:1.15;letter-spacing:-.045em;margin:10px 0}.pa-dialog p{font-size:13px;color:#60718d;line-height:1.65;margin:0 0 17px}
.pa-primary,.pa-cool,.pa-neutral{min-height:44px;border:1px solid #102957;border-radius:10px;background:#102957;color:#fff;font-size:13px;font-weight:900;padding:11px 16px;cursor:pointer;transition:transform .13s,background .13s}.pa-primary:hover,.pa-cool:hover{background:#2454a0}.pa-primary:active,.pa-cool:active{transform:scale(.98)}.pa-cool:disabled{opacity:.5;cursor:not-allowed}.pa-neutral{color:#102957;background:#eff4fb;border-color:#d9e3f4}.pa-neutral:hover{background:#dceafa}
.pa-heat-row{display:flex;gap:9px;align-items:center;margin:15px 0 17px}.pa-heat-row>span{color:#253c60;white-space:nowrap;font-size:12px;font-weight:900}.pa-heat-row>strong{width:38px;flex:0 0 38px;text-align:right;color:#203962;font-size:12px;font-variant-numeric:tabular-nums}.pa-heat-track{height:12px;flex:1;border-radius:12px;background:#e7ecf5;overflow:hidden}.pa-heat-track i{display:block;width:24%;height:100%;background:linear-gradient(90deg,#f1cc61,#f0923c,#dd3f46);border-radius:12px;transition:width .14s ease}
.pa-quiz{margin-top:7px}.pa-quiz-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;color:#506b92;font-weight:900;letter-spacing:.055em;margin-bottom:10px}.pa-quiz-head span:last-child{color:#8192af;letter-spacing:0}
.pa-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pa-options>p{grid-column:1/-1;text-align:center;color:#607492;font-size:13px}.pa-option{display:flex;align-items:center;text-align:left;gap:10px;min-height:68px;border:1px solid #d7e2f4;border-radius:12px;background:#f4f7fc;color:#173560;padding:10px 12px;font-size:13px;font-weight:850;cursor:pointer;touch-action:manipulation;transition:background .13s,border-color .13s}.pa-option:hover:not(:disabled){background:#e1ecfc;border-color:#94b1da}.pa-option:focus-visible{outline:3px solid #5285ca;outline-offset:2px}.pa-option:disabled{cursor:default}.pa-option.good{border-color:#44955a;background:#e3f5e4}.pa-option.bad{border-color:#d85b5a;background:#fff0ee}.pa-option .pa-opt-icon{font-size:29px;line-height:1.1;flex:0 0 36px;text-align:center}.pa-option .pa-opt-number{margin-left:auto;color:#7b93b4;font-size:10px}.pa-option[disabled]:not(.good):not(.bad){opacity:.66}
.pa-control{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 4px}.pa-control>button{flex:1 1 auto}.pa-live{font-size:12px;min-height:22px;color:#526c94;line-height:1.5;margin:11px 0 0}
.pa-aside{padding:25px 23px}.pa-aside h2{color:#102957;font-size:clamp(21px,2.5vw,27px);letter-spacing:-.037em;line-height:1.2;margin:8px 0 20px}.pa-aside ol{padding-left:22px;color:#445979;font-size:13px;line-height:1.7;margin:0}.pa-aside li{margin-bottom:15px}.pa-aside b{color:#0d2258}.pa-info-box{display:grid;gap:5px;background:#f1f5fd;padding:15px;border-radius:9px;margin:15px 0;border-left:4px solid #e6be63}.pa-info-box b{font-size:12px}.pa-info-box p{font-size:12px;color:#5b6f90;line-height:1.5;margin:0 0 9px}.pa-info-box.soft{border-left-color:#90a8cc}.pa-related{display:block;border-top:1px solid #e8edf6;color:#193d82;padding:12px 0;font-size:12px;font-weight:800;line-height:1.5}
@media(max-width:940px){.pa-grid{grid-template-columns:1fr}.pa-aside{display:block}.pa-hero{grid-template-columns:1fr 100px}.pa-hero-art{font-size:98px}}
@media(max-width:660px){.pa-hero{grid-template-columns:1fr;min-height:auto;padding:26px 20px;margin-top:13px}.pa-hero-art{display:none}.pa-play{padding:12px}.pa-play h2{font-size:20px}.pa-stats>div{padding:9px 6px}.pa-stats small{font-size:8px}.pa-stats strong{font-size:23px}.pa-options{gap:7px}.pa-option{min-height:65px;padding:8px;font-size:12px;gap:7px}.pa-option .pa-opt-icon{font-size:24px;flex:0 0 29px}.pa-option .pa-opt-number{display:none}.pa-quiz-head{font-size:9px}.pa-aside{padding:19px}.pa-control>button{font-size:12px;padding:10px 9px}.pa-back{font-size:10px}}
@media(prefers-reduced-motion:reduce){.pa-primary,.pa-cool,.pa-option,.pa-heat-track i{transition:none}}


/* bundled: puja.css */
/* La Pujà de Sant Rafel — Penya El Descontrol */
.pu-page{color:#142b55;padding-bottom:34px}.pu-page *{box-sizing:border-box}.pu-hero{background:linear-gradient(115deg,#081938 0%,#123575 66%,#2e5c9d);border-radius:22px;min-height:270px;margin:24px 0 22px;padding:clamp(25px,4vw,45px);color:#fff;display:flex;align-items:center;gap:25px;overflow:hidden;position:relative}.pu-hero>div:first-child{flex:1;position:relative;z-index:1}.pu-hero h1{font-size:clamp(43px,5.8vw,70px);font-weight:950;line-height:1;letter-spacing:-.068em;margin:11px 0 17px;color:#fff}.pu-hero h1 em{color:#f7cd70;font-style:normal}.pu-hero p{max-width:620px;color:#e0eafa;line-height:1.65;font-size:15px;margin:0}.pu-hero-art{font-size:115px;min-width:190px;text-align:center;line-height:1.1;filter:drop-shadow(0 13px 20px #0002)}.pu-hill{font-size:78px;display:inline-block;transform:rotate(-17deg);color:#f4cd73;vertical-align:top}.pu-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.74fr);gap:20px;align-items:start}.pu-card,.pu-aside{background:#fff;border:1px solid #dce6f3;border-radius:17px;box-shadow:0 8px 33px #0c22570a}.pu-card{padding:20px}.pu-card-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.pu-kicker{font-size:10px;color:#496ca6;letter-spacing:.15em;font-weight:900;text-transform:uppercase}.pu-card-top h2{font-size:clamp(21px,3vw,29px);margin:5px 0 0;color:#10295d;line-height:1.1}.pu-back{font-size:12px;font-weight:800;white-space:nowrap;color:#2a5191}.pu-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:16px}.pu-stat-grid div{border-radius:11px;background:#edf3fb;padding:11px 13px;min-width:0}.pu-stat-grid small{font-size:9px;font-weight:850;letter-spacing:.12em;color:#607897;display:block;margin-bottom:6px}.pu-stat-grid strong{font-size:clamp(15px,2.7vw,21px);font-weight:950;color:#0d2258;white-space:nowrap;font-variant-numeric:tabular-nums}.pu-stat-grid strong#pu-lives{font-size:18px;letter-spacing:.035em}.pu-progressrow{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#1b396a;font-size:12px;font-weight:850;margin-bottom:7px}.pu-progress{height:9px;overflow:hidden;background:#e7effa;border-radius:30px;margin-bottom:14px;border:1px solid #d8e5f6}.pu-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#3663a5,#f6c76e);transition:width .25s}.pu-stage{border-radius:15px;overflow:hidden;background:#0b214f;position:relative;box-shadow:0 12px 25px #081c4040}.pu-stage canvas{display:block;width:100%;height:auto;aspect-ratio:960/520;touch-action:none;outline-offset:3px}.pu-stage canvas:focus-visible{outline:3px solid #efc66d}.pu-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#061637ba;backdrop-filter:blur(4px);z-index:2;padding:15px}.pu-overlay[hidden]{display:none}.pu-dialog{padding:24px 22px 22px;background:#fff;color:#122956;border-radius:17px;max-width:430px;width:100%;text-align:center;box-shadow:0 25px 60px #06173555}.pu-dialog-art{font-size:48px;margin-bottom:4px}.pu-dialog h3{font-size:clamp(23px,3.7vw,29px);color:#0d2258;margin:6px 0 9px;line-height:1.13}.pu-dialog p{line-height:1.5;margin:0 0 18px;color:#5d6d85;font-size:14px}.pu-btn{border:0;cursor:pointer;border-radius:9px;padding:12px 17px;font-size:13px;font-weight:880;line-height:1.2}.pu-btn.primary{background:#0d2258;color:#fff}.pu-btn.primary:hover{background:#244e92}.pu-btn.secondary{background:#173a7c;color:#fff}.pu-btn.subtle{background:#ebf1fa;color:#163666}.pu-btn:focus-visible,.pu-control:focus-visible{outline:3px solid #e5ae3c;outline-offset:2px}.pu-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.pu-control{background:#112c62;color:#fff;border:0;border-radius:12px;padding:10px 8px;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation;display:grid;gap:2px;place-items:center;min-height:72px}.pu-control:active{background:#3c67ae;transform:scale(.98)}.pu-control span{font-size:28px;font-weight:900;line-height:1}.pu-control small{font-size:9px;letter-spacing:.12em;font-weight:900}.pu-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.pu-actions .pu-btn{flex:1;min-width:120px}.pu-status{padding:12px 14px;background:#f2f6fc;border-radius:9px;font-size:13px;color:#476287;margin:14px 0 0;min-height:45px;line-height:1.4}.pu-aside{padding:24px}.pu-aside h2{color:#102a5a;font-size:clamp(25px,2.7vw,32px);line-height:1.11;margin:12px 0}.pu-aside>p{color:#536780;font-size:13px;line-height:1.7}.pu-aside ol{padding-left:21px;margin:20px 0}.pu-aside li{padding:0 0 13px 5px;color:#516783;font-size:13px;line-height:1.65}.pu-aside li strong{color:#173362}.pu-info{border-radius:11px;background:#edf3fb;padding:16px 17px;margin:15px 0}.pu-info.soft{background:#f5f8fd}.pu-info strong{display:block;color:#153363;font-size:11px;letter-spacing:.06em;margin:5px 0}.pu-info p{color:#64758e;font-size:12px;line-height:1.55;margin:4px 0 11px}.pu-info p:last-child{margin-bottom:0}.pu-streets{display:flex;flex-wrap:wrap;gap:6px;margin:13px 0}.pu-streets span{font-size:10px;border:1px solid #d8e4f5;border-radius:99px;padding:6px 8px;color:#31568a;background:#fff}.pu-related{display:grid;gap:9px}.pu-related a{border:1px solid #d9e5f5;border-radius:9px;background:#f5f8ff;color:#1b437e;padding:12px 14px;font-size:13px;font-weight:850}.pu-related a:hover{background:#e9f0fc}.pu-disclaimer{font-size:11px;color:#718198;margin:20px 0 0;line-height:1.55}
@media(max-width:1010px){.pu-layout{grid-template-columns:minmax(0,1fr) 290px}.pu-aside{padding:19px}}
@media(max-width:870px){.pu-layout{grid-template-columns:1fr}.pu-hero-art{font-size:80px;min-width:100px}}
@media(max-width:550px){.pu-hero{margin-top:14px;padding:28px 23px;min-height:245px;border-radius:15px}.pu-hero-art{display:none}.pu-hero h1{font-size:44px}.pu-hero p{font-size:13px}.pu-card{padding:12px;border-radius:13px}.pu-card-top h2{font-size:21px}.pu-back{font-size:11px}.pu-stat-grid{gap:5px}.pu-stat-grid div{padding:9px 6px;text-align:center;border-radius:8px}.pu-stat-grid small{font-size:8px;letter-spacing:0}.pu-stat-grid strong{font-size:15px}.pu-stat-grid strong#pu-lives{font-size:12px}.pu-stage canvas{aspect-ratio:auto;height:340px}.pu-controls{gap:7px;margin-top:10px}.pu-control{min-height:67px}.pu-control span{font-size:25px}.pu-control small{font-size:9px}.pu-actions .pu-btn{min-width:0;font-size:11px;padding:11px 8px}.pu-dialog{padding:16px 14px;max-width:330px}.pu-dialog-art{font-size:35px}.pu-dialog h3{font-size:22px}.pu-dialog p{font-size:12px;line-height:1.45}.pu-aside{padding:20px}.pu-disclaimer{padding:0 5px}}
@media(prefers-reduced-motion:reduce){.pu-progress i{transition:none}.pu-control:active{transform:none}}


/* bundled: premium2026.css */
/* EL DESCONTROL · Visual identity 2026 · navy / chalk / champagne gold */

:root{--brand-ink:#0b1e42;--brand-blue:#23498d;--brand-sky:#bed7f5;--brand-gold:#e3b979;--brand-warm:#f6f7f9;--brand-paper:#ffffff;--brand-line:#dfe7f0}
html{scroll-behavior:smooth}
body{font-family:Manrope,'DM Sans',system-ui,-apple-system,sans-serif;background:#fafbfd;color:#182944;line-height:1.55;-webkit-font-smoothing:antialiased}
body button,body input,body select{font-family:inherit}
header{background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid #e2e8f2;box-shadow:0 7px 32px rgba(13,35,77,.025)}
.navwrap{max-width:1240px!important;padding:13px 26px!important}
.brand{gap:11px;font:800 16px/1.1 Manrope,sans-serif!important;letter-spacing:-.04em!important;color:#0d2452}
.brand small{letter-spacing:.14em;font-size:9px;opacity:.8}
.brand-logo{width:47px;height:47px;border:none;box-shadow:0 5px 14px rgba(14,30,69,.11)}
nav a{font-family:Manrope,sans-serif;font-size:12px!important;letter-spacing:-.01em;padding:10px 12px!important;font-weight:750}
nav a.active{background:#0c2454!important;color:white}
nav a:hover:not(.active){background:#eaf0fb;color:#0c2454}
.wrap{max-width:1240px!important;padding-left:26px;padding-right:26px}
h1,h2,h3,h4{font-family:Manrope,'DM Sans',sans-serif!important;letter-spacing:-.045em}
.festival-footer{background:#091b3c;margin-top:66px}.footer-inner{max-width:1190px}
.f-section{padding:54px 0}.f-section h2{letter-spacing:-.05em}
.f-feature,.f-history-panel,.f-softpanel,.f-pagehero,.f-callout,.f-game-banner,.f-menu-photo,.f-menu-wait{border-radius:21px}
.f-feature{box-shadow:0 8px 34px rgba(10,32,76,.035);background:#fff}
.f-feature.navy-card{background:linear-gradient(143deg,#132d61,#0b1e42)}
.f-feature:hover{box-shadow:0 17px 39px rgba(10,32,76,.11)}
.f-history-panel{background:#f1f5fa;border-color:#e2eaf4}
.f-timer{background:#fff;border-color:#e1e8f1}
.f-button{border-radius:11px;padding:14px 21px;font-weight:800}
.f-kicker{font-family:Manrope,sans-serif;font-size:10px;letter-spacing:.175em}
.f-kicker.navy{color:#4466a0}
/* Feature hero: graphic, thoughtful typography + supplied Saint Raphael image */
.fh-hero.premium-home-hero{min-height:548px;padding:0;display:grid;grid-template-columns:minmax(0,1.28fr) minmax(0,.87fr);gap:0;align-items:stretch;border-radius:26px;background:linear-gradient(135deg,#091835 0%,#102b5b 67%,#1b4280 100%);isolation:isolate;box-shadow:0 22px 55px rgba(7,25,59,.12);overflow:hidden}
.fh-hero.premium-home-hero::before{content:'';position:absolute;inset:0;opacity:.26;pointer-events:none;background-image:radial-gradient(rgba(230,238,255,.23) .7px, transparent .7px);background-size:19px 19px;mask-image:linear-gradient(90deg,transparent,#000)}
.premium-home-hero .fh-copy{padding:clamp(32px,5.4vw,75px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:none;min-width:0;flex:unset;z-index:3}
.hero-date-chip{color:#dbe6f5;font-size:10px;font-weight:800;letter-spacing:.15em;line-height:1.5;margin-bottom:31px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.chip-dot{height:7px;width:7px;background:#e6bc7c;border-radius:50%;box-shadow:0 0 0 5px #e6bc7c23;flex:none}
.chip-separator{color:#9bb6d9}
.premium-home-hero .f-kicker{color:#f0ca92;font-size:10px;font-weight:800}
.premium-home-hero h1{font-size:clamp(47px,5.1vw,72px);line-height:1.075;letter-spacing:-.062em;font-weight:800;margin:16px 0 18px;max-width:790px;color:#fff}
.premium-title-highlight{color:#f4d5a5}
.premium-home-hero p{font-family:Manrope,sans-serif;font-size:clamp(15px,1.3vw,17px);font-weight:500;color:#d8e5f6;line-height:1.8;max-width:490px;margin:0}
.premium-home-hero .fh-actions{margin-top:33px;gap:12px}
.premium-home-hero .fh-actions .f-button{font-size:12px;min-height:48px}
.premium-home-hero .f-button.light{background:#fff;color:#102b60}.premium-home-hero .f-button.subtle{color:#e8f0fa;border-color:#8298be77}
.premium-hero-bottom{font-size:10px;letter-spacing:.16em;line-height:1.7;font-weight:700;color:#afc4e1;margin-top:37px;max-width:420px}
.tiny-spark{color:#ebc78f;font-size:17px;margin-right:6px}
.premium-saint-visual{position:relative;display:grid;place-items:end center;overflow:hidden;min-width:0;align-self:stretch;padding-top:40px;background:radial-gradient(ellipse at 50% 60%,#31599d66 0%,transparent 68%);z-index:1}
.premium-saint-visual .saint-orbit{position:absolute;width:min(92%,440px);height:auto;aspect-ratio:1;border:1px solid rgba(245,214,159,.32);border-radius:50%;top:46%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 22px rgba(204,222,246,.035),0 0 0 46px rgba(204,222,246,.025)}
.saint-sunburst{position:absolute;inset:20% 12% 4%;background:radial-gradient(ellipse,#e8bf7c22,transparent 70%);pointer-events:none}
.premium-saint-visual .saint-cutout{position:relative;z-index:2;aspect-ratio:auto!important;object-fit:contain;object-position:center bottom;height:98%;width:100%;max-width:490px;max-height:570px;filter:drop-shadow(0 20px 29px rgba(3,12,29,.45));}
.saint-mark{position:absolute;z-index:3;bottom:24px;right:25px;font-size:11px;line-height:1.38;font-weight:900;letter-spacing:.22em;color:#f5debb;text-align:right;text-shadow:0 1px 12px #07172d}
.saint-mark em{display:block;font-style:normal;color:#cbd9ed;letter-spacing:.19em;margin-top:6px}
/* Photo story from user-provided procession image */
.premium-tradition{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.82fr);align-items:stretch;overflow:hidden;margin-top:25px;border:1px solid #dfe6f1;border-radius:23px;background:white;box-shadow:0 10px 34px rgba(15,36,81,.035)}
.tradition-photo-wrap{position:relative;min-height:314px;overflow:hidden;background:#183864}
.tradition-photo-wrap img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 55%;filter:saturate(.89) contrast(1.05)}
.tradition-photo-wrap::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#07163299)}
.photo-bottom-label{position:absolute;bottom:18px;left:23px;z-index:1;color:white;font-size:10px;letter-spacing:.15em;font-weight:800}
.tradition-content{padding:clamp(26px,3.8vw,49px);display:flex;flex-direction:column;justify-content:center}
.tradition-content h2{font-size:clamp(25px,3vw,38px);margin:10px 0 10px;color:#112c5d;line-height:1.15}
.tradition-content h2 em{font-style:normal;color:#32619e}
.tradition-content p{margin:0;color:#5b6e89;line-height:1.85;font-size:14px}
.tradition-link{align-self:flex-start;margin-top:24px;color:#153d7b;font-weight:800;font-size:13px;border-bottom:1px solid #7391ba;padding-bottom:6px}
.tradition-link span{margin-left:6px;color:#bb935a}
/* Image features in program and games */
.saint-page-figure{position:absolute;right:6%;bottom:-30px;top:4%;width:32%;display:grid;place-items:end center;pointer-events:none;opacity:.9}
.saint-page-figure::before{content:'';position:absolute;top:9%;width:85%;aspect-ratio:1;border:1px solid #e4c58a44;border-radius:50%}
.saint-page-figure img{max-height:100%;max-width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 24px #06152b88)}
.f-pagehero:has(.saint-page-figure)>div:first-child{max-width:70%}
.pu-hero{background:linear-gradient(110deg,#071934 0%,#133873 75%,#285a9e);border-radius:23px;min-height:352px;isolation:isolate;padding:clamp(32px,5vw,55px);box-shadow:0 13px 33px #0b245311}
.pu-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 85% 55%,#bad4f622,transparent 48%);z-index:0}
.pu-hero>div:first-child{max-width:650px}.pu-hero h1{font-size:clamp(47px,5.4vw,67px);font-weight:800;line-height:1.06}.pu-hero h1 em{color:#e8c28c}
.pu-hero p{max-width:535px;font-size:14px;color:#e5edf9}
.pu-hero-photo{margin:0;align-self:stretch;width:38%;min-width:260px;max-width:445px;position:relative;z-index:1;border-radius:18px;overflow:hidden;box-shadow:0 14px 35px #07142a88;transform:rotate(1.5deg);background:#234978}
.pu-hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:57% center;filter:saturate(.9) contrast(1.06)}
.pu-hero-photo::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff52;border-radius:inherit}
.pu-aside-photo{margin:0 0 25px;border:1px solid #e0e7f0;background:#f2f5fa;border-radius:13px;overflow:hidden}
.pu-aside-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center}
.pu-aside-photo figcaption{font-size:11px;color:#62728b;padding:11px 13px;line-height:1.5}
.gz-puja{background:linear-gradient(95deg,#0f3267,#092249)}
.gz-puja::after{content:'';position:absolute;z-index:-1;right:0;top:0;bottom:0;width:46%;background-image:linear-gradient(90deg,#0a2659,#0a265900 70%),radial-gradient(circle at 70% 45%, #426da177, transparent 75%);background-size:cover;background-position:center;opacity:.62;mask-image:linear-gradient(to left,#000 65%,transparent)}
.gz-puja .gz-emoji{opacity:0}
.gz-puja p{max-width:550px}
.gz-puja .gz-play{background:#f8d8a7}
.gz-hero,.f-pagehero,.hero.history,.hero.moments{box-shadow:0 14px 40px rgba(10,36,78,.09);border-radius:23px}
.f-pagehero,.hero.history,.hero.moments,.hero.program{background:linear-gradient(125deg,#0b214b,#153a79)}
.f-daytab.active,.f-chip.active{background:#0d2d63}
.pu-card,.pu-aside,.f-daygroup{border-color:#e1e8f1;box-shadow:0 7px 27px rgba(10,34,70,.04)}
/* Subtle modern gestures, still accessible and readable */
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid #daaa5f!important;outline-offset:3px}
::selection{background:#d8e7fb;color:#132c59}
@media(max-width:950px){.premium-home-hero h1{font-size:clamp(38px,5.2vw,58px)}.premium-home-hero .fh-copy{padding:34px}.premium-home-hero .fh-actions{align-items:flex-start}.pu-hero-photo{min-width:215px;width:33%}}
@media(max-width:760px){
 .navwrap{padding:10px 16px!important}.wrap{padding-left:16px;padding-right:16px}
 .fh-hero.premium-home-hero{grid-template-columns:1fr;min-height:unset;border-radius:18px;gap:0}
 .premium-home-hero .fh-copy{padding:29px 25px 8px;min-width:0}
 .hero-date-chip{font-size:9px;letter-spacing:.075em;margin-bottom:22px;gap:8px}
 .premium-home-hero h1{font-size:clamp(38px,10vw,54px);margin:13px 0 16px}
 .premium-home-hero p{font-size:14px;max-width:450px;line-height:1.7}
 .premium-home-hero .fh-actions{display:flex;flex-direction:row;flex-wrap:wrap;margin-top:25px}
 .premium-home-hero .fh-actions .f-button{min-height:42px;width:auto;white-space:nowrap;justify-content:center;padding:12px 13px;font-size:11px}
 .premium-hero-bottom{margin-top:20px;font-size:9px;max-width:340px}
 .premium-saint-visual{height:320px;min-height:0;align-self:stretch;padding-top:0;background:radial-gradient(ellipse at 50% 65%,#406caa44,transparent 65%)}
 .premium-saint-visual .saint-orbit{width:265px;top:50%}
 .premium-saint-visual .saint-cutout{height:330px;width:100%;max-width:none;object-fit:contain;object-position:center bottom}
 .saint-mark{font-size:9px;right:18px;bottom:16px}
 .premium-tradition{grid-template-columns:1fr;margin-top:15px;border-radius:17px}
 .tradition-photo-wrap{min-height:240px}
 .tradition-content{padding:25px}
 .pu-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:25px 23px;border-radius:17px}
 .pu-hero>div:first-child{max-width:none}
 .pu-hero-photo{align-self:stretch;width:100%;max-width:none;min-width:0;height:215px;margin-top:7px;transform:none;border-radius:11px}
 .pu-hero h1{font-size:clamp(39px,9vw,52px)}
 .saint-page-figure{opacity:.28;width:40%;right:-3%;top:15%;bottom:0}
 .f-pagehero:has(.saint-page-figure)>div:first-child{max-width:100%}
 .gz-puja::after{width:80%;opacity:.34;mask-image:linear-gradient(to left,#000 15%,transparent)}
}
@media(max-width:530px){
 .premium-home-hero .fh-copy{padding:24px 21px 6px}
 .premium-home-hero h1{font-size:clamp(37px,9.5vw,49px)}
 .premium-home-hero .fh-actions{gap:8px}
 .premium-home-hero .fh-actions .f-button{font-size:11px;padding:11px 12px}
 .premium-saint-visual{height:285px}
 .premium-saint-visual .saint-cutout{height:305px}
 .f-section{padding:34px 0}
 .tradition-photo-wrap{min-height:205px}
 .tradition-content h2{font-size:27px}
 .pu-hero-photo{height:170px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Accés discret per a la gestió privada de Majorals */
.festival-footer .majors-private-link{display:inline-flex;gap:6px;align-items:center;padding:6px 9px;border:1px solid rgba(200,216,239,.28);border-radius:8px;font-size:.86rem;white-space:nowrap}
.festival-footer .majors-private-link:hover,.festival-footer .majors-private-link:focus-visible{border-color:currentColor;background:rgba(255,255,255,.09)}


/* bundled: update2026.css */
/* El Descontrol 2027 · Rifa + 4 jocs + navegació mòbil més còmoda */
body{font-family:Manrope,'DM Sans',system-ui,sans-serif}
.mobile-nav{display:none;z-index:1000}
@media(max-width:840px){
 .mobile-nav{display:flex!important;position:fixed;bottom:0;left:0;right:0;align-items:stretch;justify-content:space-around;gap:2px;padding:8px 8px max(10px,env(safe-area-inset-bottom))!important;min-height:78px;background:#fffffffa;border-top:1px solid #d8e3f2;box-shadow:0 -8px 30px #122d5814}
 .mobile-nav a{max-width:none!important;width:20%!important;min-height:59px;min-width:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;font-size:12px!important;line-height:1.2;font-weight:800;color:#334968!important;border-radius:13px;padding:6px 2px!important;text-decoration:none}
 .mobile-nav a span:first-child{font-size:25px!important;line-height:1.08;margin:0}
 .mobile-nav a .bottom-label{font-size:11px!important;letter-spacing:-.025em;white-space:nowrap}
 .mobile-nav a.active{color:#fff!important;background:#102e67}
 .mobile-nav a.active span{color:#fff!important}
 body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
 footer{padding-bottom:25px!important}
}
@media(max-width:360px){.mobile-nav{padding-left:4px!important;padding-right:4px!important}.mobile-nav a .bottom-label{font-size:10.5px!important}}
.tradition-graphic{min-height:320px;background:radial-gradient(circle at 50% 45%,#28579f,#0d2d65 72%,#07172f);display:grid;place-items:center;position:relative;overflow:hidden}
.tradition-graphic::before{content:'';position:absolute;inset:18px;border:1px solid #f1d5a955;border-radius:180px 180px 8px 8px}
.tradition-graphic::after{content:'';position:absolute;inset:0;background-image:radial-gradient(#ebd3a92a 1px,transparent 1px);background-size:21px 21px;opacity:.44}
.tradition-stamp{display:flex;flex-direction:column;align-items:center;gap:7px;isolation:isolate;color:#fff;letter-spacing:.17em;text-align:center;transform:rotate(-4deg)}
.tradition-stamp span{font-size:14px;color:#d3b482;font-weight:900}.tradition-stamp b{font-size:clamp(38px,5vw,64px);letter-spacing:-.06em;line-height:1.2}.tradition-stamp em{font:800 17px Manrope,sans-serif;color:#f1d1a2;font-style:normal}.tradition-stamp i{font-size:40px;font-style:normal;color:#edc78e}
.f-feature-raffle{background:#fff9ef!important;border:1px solid #e4d9c9!important}.f-feature-raffle .f-feature-icon{font-size:54px}.f-feature-raffle h3{color:#182f58}
.gz-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.gz-putxero{background:linear-gradient(125deg,#e9f0fa,#dce9f8)}.gz-putxero h2{color:#0c3168}
.gz-puja::after{background-image:radial-gradient(circle at 78% 40%,#4f7cb55b,transparent 65%)!important;opacity:1!important;mask-image:none!important}
.pu-hero-symbol{position:relative;flex:0 0 29%;min-height:275px;max-width:320px;align-self:stretch;display:flex;justify-content:center;align-items:flex-end;background:radial-gradient(ellipse at center,#2e539455,transparent 70%);overflow:hidden}
.pu-hero-symbol::before{content:'';position:absolute;inset:19px;border:1px solid #edd09b6e;border-radius:50%}
.pu-hero-symbol img{position:relative;display:block;width:auto;max-width:90%;height:92%;max-height:310px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 13px 20px #041128ab)}
.pu-hero-symbol-spark{position:absolute;top:11px;right:10px;color:#edc88e;font-size:31px;z-index:2}
.pu-hero-symbol-label{position:absolute;right:4px;bottom:15px;font-size:10px;font-weight:900;letter-spacing:.15em;color:#f2daae;text-align:right;text-shadow:0 1px 4px #06152a;z-index:2}
.rifa-page{padding-top:24px;padding-bottom:45px}.rifa-hero{display:grid;grid-template-columns:1fr minmax(250px,330px);gap:28px;align-items:center;position:relative;overflow:hidden;border-radius:23px;padding:clamp(30px,5.5vw,64px);min-height:340px;background:radial-gradient(circle at 90% 10%,#3765a4,#112e63 60%,#091b3d);color:#fff}.rifa-hero h1{color:#fff;font-weight:900;letter-spacing:-.058em;font-size:clamp(42px,5.5vw,70px);line-height:1.08;margin:18px 0}.rifa-hero h1 em{font-style:normal;color:#f2cf96}.rifa-hero p{max-width:620px;font-size:15px;color:#d9e5f6;line-height:1.8;margin-bottom:28px}.rifa-browse{display:inline-flex;background:#f5e0ba;color:#122c5c;padding:12px 20px;border-radius:9px;font-size:13px;font-weight:850;text-decoration:none}.rifa-ticket{background:#fffaf0;color:#18315b;display:flex;flex-direction:column;align-items:center;gap:12px;padding:29px 15px;border:3px solid #edc98a;border-radius:14px;transform:rotate(3deg);box-shadow:0 18px 44px #0003;min-height:235px;justify-content:center;position:relative}.rifa-ticket::before,.rifa-ticket::after{content:'';position:absolute;top:49%;width:21px;height:21px;border-radius:50%;background:#19457e}.rifa-ticket::before{left:-13px}.rifa-ticket::after{right:-13px}.rifa-ticket>span{font-size:10px;font-weight:950;letter-spacing:.13em;text-align:center}.rifa-ticket strong{font-size:80px;line-height:1;letter-spacing:-.08em}.rifa-ticket small{font-size:12px;font-weight:800}.rifa-ticket-cut{width:100%;text-align:center;border-top:2px dashed #d5b980;border-bottom:2px dashed #d5b980;padding:9px;color:#b28a4b;letter-spacing:.5em}.rifa-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 55px}.rifa-facts article{padding:24px;border:1px solid #dce5f0;background:#fff;border-radius:16px}.rifa-fact-icon{font-size:32px;margin-bottom:16px}.rifa-facts article>span{color:#4b6894;font-weight:900;font-size:10px;letter-spacing:.12em}.rifa-facts h2{font-size:19px;letter-spacing:-.03em;color:#162c59;margin:9px 0 9px}.rifa-facts p{font-size:13px;color:#6a7890;line-height:1.6;margin:0}.rifa-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:22px}.rifa-heading h2{font-size:clamp(28px,4vw,42px);color:#112b5c;margin:7px 0}.rifa-updated{font-size:9px;color:#6c7e98;font-weight:900;letter-spacing:.11em}.rifa-lots-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.rifa-empty{grid-column:1/-1;text-align:center;border:1px dashed #c1d2e6;border-radius:17px;background:#f8fbfe;padding:45px 22px}.rifa-empty>span{font-size:62px}.rifa-empty h3{color:#102a58;font-size:22px;margin:12px 0}.rifa-empty p{color:#526783;font-size:14px;line-height:1.7;max-width:540px;margin:auto}.rifa-lot{background:#fff;border:1px solid #dde6f2;border-radius:15px;overflow:hidden;box-shadow:0 8px 27px #0b21420a}.rifa-lot img{display:block;width:100%;height:215px;object-fit:cover}.rifa-lot-copy{padding:23px}.rifa-lot h3{color:#0d2b63;font-size:20px;margin:0 0 12px}.rifa-lot p{font-size:13px;line-height:1.7;color:#5c6d84}.rifa-sponsor{display:inline-block;margin-top:9px;font-weight:800;color:#214986;font-size:12px}.rifa-thanks{margin-top:55px;background:#102f62;color:#fff;border-radius:19px;padding:clamp(28px,4.5vw,55px);display:flex;align-items:center;justify-content:space-between;gap:28px}.rifa-thanks .f-kicker{color:#edcb8f}.rifa-thanks h2{font-size:clamp(31px,4.5vw,46px);line-height:1.2;color:#fff;letter-spacing:-.055em;margin:13px 0}.rifa-thanks h2 em{font-style:normal;color:#edcb8f}.rifa-thanks p{color:#d4e1f3;max-width:685px;font-size:14px;line-height:1.85}.rifa-thanks-mark{flex:0 0 240px;aspect-ratio:1;border:1px solid #eccc8a7c;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;transform:rotate(-9deg)}.rifa-thanks-mark span{color:#edc27e;font-size:34px}.rifa-thanks-mark b{color:white;font-size:24px;letter-spacing:.065em}.rifa-disclaimer{margin-top:21px;font-size:12px;color:#687995;line-height:1.7}
@media(max-width:840px){.gz-choices{grid-template-columns:1fr 1fr}.pu-hero-symbol{max-width:none;min-height:250px;width:100%;align-self:center}.rifa-facts{grid-template-columns:1fr 1fr}.rifa-hero{grid-template-columns:minmax(0,1fr) 245px}}
@media(max-width:660px){.gz-choices{grid-template-columns:1fr}.pu-hero-symbol{height:270px;min-height:0;width:100%;flex:auto}.pu-hero-symbol img{height:95%}.rifa-page{padding-top:15px}.rifa-hero{grid-template-columns:1fr;gap:23px;padding:29px 23px}.rifa-hero h1{font-size:44px}.rifa-hero p{font-size:14px}.rifa-ticket{min-height:180px;max-width:280px;justify-self:center;width:100%;transform:rotate(-2deg)}.rifa-ticket strong{font-size:64px}.rifa-facts{grid-template-columns:1fr;gap:10px;margin:15px 0 36px}.rifa-facts article{padding:18px}.rifa-heading{display:block}.rifa-updated{display:block;margin-top:13px}.rifa-lots-grid{grid-template-columns:1fr}.rifa-thanks{margin-top:32px;padding:28px 22px}.rifa-thanks-mark{display:none}}

/* Evita que els panells ocults dels minijocs continuen visibles */
[hidden]{display:none!important}

/* Controls tàctils amplis, menú llegible i rifa */
@media(max-width:800px){.mobile-nav{min-height:82px!important;padding:8px 7px max(12px,env(safe-area-inset-bottom))!important}.mobile-nav a{min-height:62px!important;font-size:13px!important}.mobile-nav a span:first-child{font-size:25px!important}.mobile-nav a .bottom-label{font-size:12px!important;white-space:nowrap}.wrap{padding-bottom:95px}}
.gz-putxero{background:linear-gradient(140deg,#fff8e8,#f5e8cf)!important;color:#172e56!important}.gz-putxero .gz-game-top,.gz-putxero p{color:#36527e!important}.gz-putxero .gz-play{color:#11346a!important}
@media(max-width:360px){.mobile-nav a .bottom-label{font-size:11px!important}}

/* Rifa ticket visual refresh */
.rifa-hero{grid-template-columns:1fr minmax(270px,360px)}
.rifa-ticket{background:linear-gradient(145deg,#fffefb,#fff7ea 42%,#fff1d0);color:#18315b;display:flex;flex-direction:column;gap:14px;padding:22px 18px 18px;border:3px solid #edc98a;border-radius:22px;transform:rotate(3deg);box-shadow:0 22px 50px #0004;min-height:260px;justify-content:center;position:relative;isolation:isolate;overflow:visible;align-items:stretch}
.rifa-ticket::before,.rifa-ticket::after{content:'';position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:#19457e;border:3px solid #8bb0e0;z-index:2}
.rifa-ticket::before{left:-14px}.rifa-ticket::after{right:-14px}
.rifa-ticket-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.rifa-ticket-type{font-size:10px;font-weight:950;letter-spacing:.14em;text-align:left}
.rifa-ticket-pill{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:#16386d;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em;box-shadow:inset 0 0 0 1px #85a8d6}
.rifa-ticket-main{display:flex;align-items:center;justify-content:space-between;gap:14px}
.rifa-ticket-value-wrap{display:flex;flex-direction:column;gap:2px;min-width:0}
.rifa-ticket strong{font-size:80px;line-height:1;letter-spacing:-.08em;color:#102b58;text-shadow:0 2px 0 #fff}
.rifa-ticket small{font-size:11px;font-weight:900;letter-spacing:.08em;color:#6a5a2f}
.rifa-ticket-city{font-size:10px;font-weight:850;letter-spacing:.11em;color:#38517c}
.rifa-ticket-badge{flex:0 0 92px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fffef2,#f9d68f 55%,#e0b563);display:flex;flex-direction:column;align-items:center;justify-content:center;border:3px solid #f8ebc7;box-shadow:inset 0 0 0 2px #d39f40,0 8px 20px #00000020;color:#7c4c09;text-align:center;transform:rotate(7deg)}
.rifa-ticket-badge span{font-size:25px;line-height:1}.rifa-ticket-badge b{font-size:11px;line-height:1.1;letter-spacing:.09em}
.rifa-ticket-cut{width:100%;text-align:center;border-top:2px dashed #d5b980;border-bottom:2px dashed #d5b980;padding:8px 0;color:#b28a4b;letter-spacing:.22em;font-size:13px}
.rifa-ticket-bottom{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
.rifa-serial-label{display:block;font-size:9px;font-weight:900;letter-spacing:.14em;color:#7e6a3f;margin-bottom:4px}
.rifa-serial{display:inline-block;font-size:15px;color:#0f2a5b;letter-spacing:.06em}
.rifa-ticket-stub{padding:10px 12px;border-radius:14px;background:#17396d;color:#f4f8ff;text-align:center;box-shadow:inset 0 0 0 1px #84a4d0}
.rifa-ticket-stub span{display:block;font-size:9px;font-weight:900;letter-spacing:.14em;opacity:.82;margin-bottom:4px}
.rifa-ticket-stub b{font-size:11px;line-height:1.25;letter-spacing:.04em}
@media(max-width:840px){.rifa-hero{grid-template-columns:minmax(0,1fr) 285px}}
@media(max-width:660px){.rifa-ticket{min-height:210px;max-width:310px;justify-self:center;width:100%;transform:rotate(-2deg)}.rifa-ticket-main{align-items:flex-start}.rifa-ticket strong{font-size:64px}.rifa-ticket-badge{flex-basis:78px}.rifa-ticket-bottom{grid-template-columns:1fr}.rifa-ticket-stub{width:100%}}

/* Correcció de contrast: botó del tres en ratlla, fons i text clarament diferenciats. */
.gz-putxero .gz-play{background:#173968!important;color:#ffffff!important;text-shadow:none!important;border:1px solid #173968;box-shadow:0 4px 12px #0b245c24}.gz-putxero .gz-play span{color:#ffffff!important;background:transparent!important;border:0!important;box-shadow:none!important}
.gz-putxero:hover .gz-play,.gz-putxero:focus-visible .gz-play{background:#0a254b!important;color:#fff!important}

/* Instagram oficial al peu: discret però visible, accessible en mòbil i ordinador. */
.festival-footer .footer-social{max-width:1190px;margin:20px auto 0;padding:18px 0 0;border-top:1px solid rgba(210,223,244,.18);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;text-align:left}
.festival-footer .footer-social-label{font-size:10px;font-weight:800;letter-spacing:.17em;color:#a3b8dc}
.festival-footer .footer-instagram{display:inline-flex;align-items:center;gap:11px;border:1px solid rgba(232,216,245,.35);border-radius:999px;padding:10px 14px 10px 12px;color:#fff;background:linear-gradient(110deg,rgba(145,77,187,.22),rgba(215,66,115,.23) 68%,rgba(238,172,82,.16));text-decoration:none;font-size:14px;font-weight:800;min-height:46px;box-shadow:0 6px 20px #050e261c;transition:transform .16s ease,border-color .16s ease,background .16s ease}
.festival-footer .footer-instagram:hover,.festival-footer .footer-instagram:focus-visible{transform:translateY(-2px);border-color:#f0ccda;background:linear-gradient(115deg,rgba(145,77,187,.42),rgba(215,66,115,.32) 68%,rgba(238,172,82,.28));color:#fff;outline-offset:4px}
.festival-footer .footer-instagram-arrow{font-size:17px;opacity:.8;margin-left:3px}
@media(max-width:660px){.festival-footer .footer-social{margin-top:19px;padding-top:18px;align-items:flex-start;flex-direction:column;gap:11px}.festival-footer .footer-instagram{min-height:48px}}
@media(prefers-reduced-motion:reduce){.festival-footer .footer-instagram{transition:none}.festival-footer .footer-instagram:hover{transform:none}}


/* bundled: reserves.css */
/* El Descontrol · reserves i navegació renovada */
.res-page{padding-top:26px;padding-bottom:70px;font-family:Manrope,system-ui,-apple-system,'Segoe UI',sans-serif;color:#152b50}
.res-hero{background:linear-gradient(112deg,#0a214c,#163e78 71%,#24578c);border-radius:24px;padding:clamp(30px,5vw,60px);display:grid;grid-template-columns:1.6fr .6fr;gap:22px;color:white;align-items:center;position:relative;overflow:hidden}
.res-hero::before{content:'';position:absolute;top:-140px;right:-90px;width:420px;height:420px;border:1px solid #ffffff21;border-radius:50%;box-shadow:0 0 0 56px #ffffff09,0 0 0 112px #ffffff07}
.res-hero .res-eyebrow{color:#e8c88f;letter-spacing:.16em;font-weight:900;font-size:11px}
.res-hero h1{color:white;font-size:clamp(38px,5.3vw,69px);line-height:1.06;letter-spacing:-.06em;margin:18px 0}
.res-hero h1 span{color:#ebd1a1}.res-hero p{color:#dae6f7;font-size:15px;line-height:1.8;max-width:570px}
.res-hero-icon{font-size:clamp(78px,14vw,175px);text-align:center;transform:rotate(-12deg);filter:drop-shadow(0 15px 18px #0003);z-index:1}
.res-steps{margin:21px 0 33px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.res-steps>div{display:flex;gap:12px;align-items:center;background:#fff;padding:18px;border:1px solid #dae4f1;border-radius:13px;font-size:13px;font-weight:750;color:#344d77}.res-steps b{display:grid;place-items:center;background:#e8eff9;color:#133a78;border-radius:50%;width:32px;height:32px;flex:none}
.res-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(265px,.75fr);gap:22px;align-items:start}.res-panel,.res-aside-panel{background:white;border:1px solid #dce5f1;border-radius:20px;box-shadow:0 8px 38px #142f5510;padding:clamp(22px,3.2vw,36px)}.res-panel h2,.res-aside-panel h2{font-size:25px;color:#102c5c;letter-spacing:-.04em;margin:0 0 11px}.res-panel p,.res-aside-panel p{font-size:13px;line-height:1.8;color:#5c6d85}.res-eyebrow{font-size:11px;font-weight:950;letter-spacing:.12em;color:#3464aa}
.res-field{display:flex;flex-direction:column;gap:8px;min-width:0}.res-field>label,.res-qty-label{font-size:13px;font-weight:800;color:#183359}.res-field input,.res-field textarea{border:1.5px solid #c7d5e8;background:#fbfdff;color:#183359;border-radius:11px;padding:13px 15px;width:100%;font:600 15px Manrope,system-ui,sans-serif;min-height:49px;box-sizing:border-box}.res-field textarea{min-height:95px;resize:vertical;line-height:1.5}.res-field input:focus,.res-field textarea:focus{outline:3px solid #326bc52e;border-color:#326bc5}.res-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.res-field-full{grid-column:1/-1}
.res-meal{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #e7edf5}.res-meal strong{display:block;font-size:14px;color:#183359}.res-meal span{font-size:12px;color:#61748f}.res-stepper{display:flex;align-items:center;gap:11px}.res-stepper button{border:1px solid #c7d5e8;border-radius:10px;background:#f3f7fe;color:#14386b;min-width:46px;min-height:46px;font:900 25px Manrope,sans-serif;cursor:pointer}.res-stepper button:hover{background:#dfeafb}.res-stepper output{display:grid;place-items:center;min-width:31px;font-weight:900;font-size:20px;font-variant-numeric:tabular-nums}.res-summary{background:#eef4fd;display:flex;justify-content:space-between;align-items:center;padding:16px 19px;border-radius:12px;margin-top:20px;font-weight:850;color:#123362}.res-summary strong{font-size:29px}
.res-privacy{display:flex;align-items:flex-start;gap:12px;background:#f8fbff;border:1px solid #e3ebf4;padding:14px;border-radius:12px;margin:18px 0 11px;font-size:12px;line-height:1.7;color:#536a88}.res-privacy input{height:18px;width:18px;flex:none;margin:2px 0 0}.res-submit{border:none;border-radius:12px;padding:16px 25px;background:#173f83;color:white;font:900 15px Manrope,sans-serif;cursor:pointer;width:100%;min-height:53px}.res-submit:hover{background:#0c2b5d}.res-submit:disabled{opacity:.45;cursor:not-allowed}.res-plainbtn{cursor:pointer;border:1px solid #b9c8de;background:white;color:#163968;padding:12px 18px;border-radius:10px;font:800 13px Manrope,sans-serif}.res-plainbtn:disabled{opacity:.5}.res-message{margin:15px 0 0;border-radius:11px;background:#e9f5f0;color:#135642;padding:15px;font-size:13px;font-weight:750;line-height:1.6}.res-error{background:#fff0ee;color:#a22a2a}.res-message[hidden]{display:none!important}.res-resume{background:#f7fafc;border:1px solid #d7e2ef;border-radius:16px;padding:21px;margin-bottom:20px}.res-resume h3{font-size:18px;color:#112b55;margin:0 0 8px}.res-resume p{font-size:12px}.res-mini-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.res-aside-panel{margin-bottom:15px}.res-aside-panel ul{padding-left:18px;color:#506886;font-size:13px;line-height:2}.res-data-note{padding:15px;background:#eef5ff;border-radius:12px;color:#375f95;font-size:12px;line-height:1.65;margin:20px 0}.res-code{font-size:14px;font-weight:900;overflow-wrap:anywhere;background:#f0f5ff;color:#123568;border:1px dashed #9ab0d0;padding:13px;border-radius:9px}.res-disabled{text-align:center;margin:20px 0;padding:25px;background:#fcf4e8;border:1px solid #f2d5aa;color:#82551d;border-radius:13px}.res-disabled b{display:block;margin-bottom:7px}.res-hide{display:none!important}.res-home-cta{margin-top:28px;margin-bottom:38px!important;background:linear-gradient(115deg,#0b2859,#234d87);color:white;border-radius:22px;padding:30px 38px;display:flex;justify-content:space-between;align-items:center;gap:20px}.res-home-cta span,.res-after-games>span{font-size:10px;font-weight:950;letter-spacing:.12em;color:#e6bf84}.res-home-cta h2{font-size:clamp(26px,3vw,36px);line-height:1.15;color:white;margin:13px 0}.res-home-cta p{color:#dae6f3;font-size:13px}.res-home-cta a,.res-after-games a{display:inline-flex;text-decoration:none;border-radius:11px;background:#fff;color:#143263;padding:17px 22px;font-size:13px;font-weight:900;white-space:nowrap}.res-after-games{margin:30px 0;background:linear-gradient(100deg,#12366d,#24518d);border-radius:18px;padding:30px;color:white}.res-after-games h2{color:white;font-size:28px;margin:12px 0}.res-after-games p{color:#dce7f8;font-size:13px;margin-bottom:19px}
/* Els cinc accessos ràpids mantenen dimensions tàctils adequades */
@media(max-width:800px){.mobile-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px!important;min-height:83px!important;padding:8px 5px max(11px,env(safe-area-inset-bottom))!important}.mobile-nav a{min-width:0!important;min-height:62px!important;display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:2px!important;padding:7px 2px!important;font-size:12px!important}.mobile-nav a span:first-child{font-size:24px!important;line-height:1.1}.mobile-nav a .bottom-label{font-size:11px!important;white-space:nowrap;letter-spacing:-.04em}.res-layout{grid-template-columns:1fr}.res-aside{display:grid;grid-template-columns:1fr 1fr;gap:12px}.res-aside-panel{margin-bottom:0}.res-home-cta{flex-direction:column;align-items:flex-start;padding:24px}.res-steps{gap:7px}.res-steps>div{flex-direction:column;text-align:center;padding:10px;font-size:10px}}
@media(max-width:560px){.res-hero{grid-template-columns:1fr;padding:27px}.res-hero-icon{display:none}.res-fields{grid-template-columns:1fr;gap:15px}.res-aside{grid-template-columns:1fr}.res-meal strong{font-size:12px}.res-meal span{font-size:11px}.res-stepper{gap:6px}.res-stepper button{min-width:42px;min-height:45px}.res-panel,.res-aside-panel{padding:22px}.res-steps>div b{width:28px;height:28px}.res-hero h1{font-size:43px}.res-home-cta{margin-top:20px}}
/* Panell privat exportable */
.admin-area{padding:24px 0 60px}.admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.admin-stat{background:#fff;border:1px solid #dce6f1;padding:20px;border-radius:14px}.admin-stat strong{font-size:28px;display:block;color:#15366d}.admin-stat small{color:#577193;font-weight:800}.admin-table-wrap{overflow:auto;border:1px solid #dbe5f2;border-radius:13px;background:#fff}.admin-table{border-collapse:collapse;width:100%;min-width:880px;font-size:12px}.admin-table td,.admin-table th{padding:13px;border-bottom:1px solid #e1e8f1;text-align:left;vertical-align:middle}.admin-table th{background:#edf3fc;font-weight:900;color:#15356a}.admin-table button{border:1px solid #bbcbe1;background:#fff;border-radius:8px;padding:8px 12px;font-weight:850;cursor:pointer}.admin-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.admin-edit{margin:18px 0;padding:19px;background:#edf3fc;border-radius:16px}.admin-edit[hidden]{display:none!important}.admin-edit .res-fields{margin:10px 0}.admin-edit h3{margin:0 0 9px;color:#142f60}.admin-table-wrap td:nth-child(7){max-width:220px;word-break:break-word}@media(max-width:600px){.admin-grid{grid-template-columns:repeat(2,1fr)}.admin-stat{padding:12px}}

/* Discreet entry point to the protected Majoral dashboard */
.festival-footer .majors-private-link{display:inline-flex;gap:6px;align-items:center;padding:6px 9px;border:1px solid rgba(200,216,239,.28);border-radius:8px;font-size:.86rem;white-space:nowrap}
.festival-footer .majors-private-link:hover,.festival-footer .majors-private-link:focus-visible{border-color:currentColor;background:rgba(255,255,255,.09)}


/* bundled: puja-update.css */
/* 2026-10 Puja revisada: pendent realista com a dificultat de joc, controls tàctils accessibles */
.pu-hill-row{margin:13px 0 0;background:#edf3fc;border:1px solid #ccdaef;padding:12px 14px 14px;border-radius:13px;display:grid;grid-template-columns:1fr 1fr;gap:9px 15px}.pu-hill-row>div:not(.pu-force-track){display:flex;flex-direction:column;gap:3px}.pu-hill-row strong{font-size:10px;font-weight:900;letter-spacing:.09em;color:#486d99}.pu-hill-row span{font-size:14px;font-weight:900;color:#10376f}.pu-force-track{grid-column:1/-1;background:#cbd8ea;height:11px;border-radius:22px;overflow:hidden}.pu-force-track i{display:block;width:100%;height:100%;border-radius:22px;background:linear-gradient(90deg,#d96b45,#f7cb67,#3f9d83);transition:width .15s}.pu-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pu-control{min-height:82px}.pu-control small{font-size:10px;letter-spacing:.045em}.pu-control.pu-push{background:#d9a45e;color:#1c2c44}.pu-control.pu-push:active{background:#f2ca85}.pu-status{font-weight:650}
@media(max-width:700px){.pu-stage canvas{height:auto!important;aspect-ratio:960/520!important}.pu-layout{gap:14px}.pu-controls{position:sticky;bottom:calc(87px + env(safe-area-inset-bottom));z-index:20;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:9px 5px 7px;margin:10px -5px 0;border-radius:13px;background:#edf3fcf5;border:1px solid #d1e0f0;box-shadow:0 7px 20px #10285333;backdrop-filter:blur(10px)}.pu-control{min-width:0;min-height:79px;padding:9px 2px}.pu-control span{font-size:28px}.pu-control small{font-size:11px;letter-spacing:0}.pu-hill-row{padding:10px 12px}.pu-stat-grid strong{font-size:14px}.pu-overlay .pu-dialog{padding:12px;max-width:270px}.pu-overlay .pu-dialog-art{font-size:24px}.pu-overlay .pu-dialog h3{font-size:19px}.pu-overlay .pu-dialog p{font-size:12px;margin-bottom:10px}.pu-overlay .pu-btn{min-height:44px}.pu-card{padding:11px}.pu-card-top{margin-bottom:8px}.pu-status{margin-top:12px}}
@media(max-width:370px){.pu-controls{gap:4px}.pu-control{min-height:70px}.pu-control span{font-size:23px}.pu-control small{font-size:10px}}

/* Inici i fi de La Pujà: diàleg sempre complet, també en mòbil apaisat */
.pu-overlay{position:fixed;inset:0;z-index:10000;overflow-y:auto;overscroll-behavior:contain;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom));background:#061637da;backdrop-filter:blur(9px)}
.pu-overlay .pu-dialog{max-width:470px;max-height:calc(100dvh - 36px);overflow-y:auto;padding:clamp(18px,4vh,30px) clamp(17px,4vw,31px);border:2px solid #e9cea3;box-shadow:0 35px 95px #0007}
.pu-overlay .pu-dialog-art{height:90px;display:grid;place-items:center;margin:0 0 10px}
.pu-overlay .pu-dialog-art img{width:auto;max-width:100%;max-height:86px;object-fit:contain}
.pu-overlay .pu-dialog h3{font-size:clamp(25px,3vw,31px);line-height:1.15;margin:6px 0 13px}
.pu-overlay .pu-dialog p{font-size:clamp(13px,1.5vw,15px);line-height:1.62;margin:0 0 22px}
.pu-overlay .pu-dialog .pu-btn{font-size:15px;min-height:48px;padding:12px 18px}
@media(max-width:700px){.pu-overlay .pu-dialog{max-width:410px;padding:22px 19px}.pu-overlay .pu-dialog-art{height:73px}.pu-overlay .pu-dialog-art img{max-height:70px}.pu-overlay .pu-dialog h3{font-size:25px}.pu-overlay .pu-dialog p{font-size:14px;line-height:1.5;margin-bottom:20px}}
@media(max-height:490px){.pu-overlay{place-items:start center}.pu-overlay .pu-dialog-art{height:45px}.pu-overlay .pu-dialog-art img{max-height:45px}}


/* bundled: tres-en-ratlla.css */
/* Fideus contra pilotes - independent game, touch first */
.tt-page{--tt-navy:#102c61;--tt-ink:#172744;--tt-gold:#ffd27d;--tt-soft:#f3f7fc;padding-bottom:68px}
.tt-page *{box-sizing:border-box}.tt-page button{font-family:inherit;cursor:pointer;touch-action:manipulation}
.tt-page button:focus-visible,.tt-page a:focus-visible{outline:4px solid #f4bf5e;outline-offset:4px}
.tt-hero{display:grid;grid-template-columns:minmax(0,1fr) 215px;align-items:center;gap:22px;position:relative;overflow:hidden;padding:clamp(25px,5vw,54px);margin:23px 0 27px;color:#fff;background:radial-gradient(circle at 82% 30%,#43699d 0,#17396b 42%,#0a1d43 100%);border-radius:24px}
.tt-hero:after{content:"";position:absolute;right:-80px;bottom:-120px;width:330px;height:330px;border:1px solid #ffffff30;border-radius:50%;pointer-events:none}
.tt-hero-copy{position:relative;z-index:1}.tt-eyebrow,.tt-kicker{font-size:11px;letter-spacing:.15em;font-weight:850}.tt-eyebrow{color:#ffdb8e}.tt-kicker{color:#55739c}
.tt-hero h1{color:#fff;margin:12px 0;font-size:clamp(40px,5.2vw,67px);letter-spacing:-.055em;line-height:1.04;font-weight:950}.tt-hero h1 span{color:#ffd27d}
.tt-hero p{font-size:clamp(15px,1.65vw,19px);line-height:1.6;max-width:640px;color:#edf3ff;margin:0 0 18px}
.tt-hero-tags{display:flex;flex-wrap:wrap;gap:8px}.tt-hero-tags span{border:1px solid #ffffff36;background:#ffffff16;padding:8px 11px;border-radius:30px;font-weight:750;font-size:12px}
.tt-showcase{display:flex;align-items:center;justify-content:center;gap:2px;transform:rotate(-7deg)}.tt-showcase img{width:104px;height:104px;filter:drop-shadow(0 12px 9px #05112588)}.tt-showcase span{font-size:24px;font-weight:950;color:#ffd58e;text-shadow:0 2px 9px #061835}
.tt-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.77fr);align-items:start;gap:22px}.tt-game,.tt-rules{border:1px solid #dfe7f2;box-shadow:0 17px 45px #112e5910;background:#fff;border-radius:22px;padding:clamp(18px,2.8vw,32px)}
.tt-game-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.tt-game-top h2,.tt-rules h2{font-size:clamp(24px,3vw,32px);letter-spacing:-.045em;color:var(--tt-navy);line-height:1.2;margin:5px 0 14px}
.tt-round{background:#e9f0f9;color:#183966;border-radius:12px;padding:10px 15px;font-size:12px;font-weight:850;white-space:nowrap}
.tt-modes{border:0;padding:0;margin:0 0 17px;min-width:0}.tt-modes legend{padding:0;margin:0 0 9px;color:#3f5271;font-weight:800;font-size:13px}.tt-mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.tt-mode-buttons button{min-height:49px;border:1.5px solid #d8e2f2;border-radius:12px;padding:8px;background:#f7f9fe;color:#183b6d;font-size:13px;font-weight:800}
.tt-mode-buttons button.is-active{background:#112e63;color:white;border-color:#112e63;box-shadow:0 3px 14px #102f6033}
.tt-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) 13px minmax(0,1fr);gap:5px;align-items:stretch;overflow:hidden}.tt-player{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:13px;border:2px solid #e5eaf0;background:#f7fafd;min-width:0;transition:border-color .2s,background .2s}
.tt-player.is-turn{border-color:#d59b36;background:#fff8e7;box-shadow:inset 0 0 0 1px #f8e9c7}.tt-player.tt-ball.is-turn{border-color:#6d9c5c;background:#f2faed}
.tt-player-icon{flex-shrink:0;background:#fff;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;box-shadow:0 3px 7px #142a5216}.tt-player img{width:39px;height:39px;object-fit:contain}.tt-player>div:nth-child(2){min-width:0;flex:1}.tt-player small{display:block;color:#536e8e;font-weight:850;letter-spacing:.05em;font-size:9px}.tt-player strong{display:block;font-size:clamp(14px,2vw,17px);color:#173763;line-height:1.45}.tt-player b{color:#172f59;font-size:24px;font-variant-numeric:tabular-nums}.tt-score-middle{display:grid;place-items:center;color:#7b8ba4;font-size:18px;font-weight:900}
.tt-turn{margin:18px 0 13px;border-radius:12px;background:#eff4fb;padding:12px 15px;color:#17345e;font-size:14px;min-height:49px;display:flex;gap:9px;align-items:center;justify-content:center;text-align:center}.tt-turn-dot{width:9px;height:9px;background:#edb34b;border-radius:50%;flex-shrink:0}.tt-turn.waiting .tt-turn-dot{background:#67a65c}
.tt-board{width:min(100%,420px);aspect-ratio:1;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:clamp(7px,1.5vw,12px);padding:clamp(8px,1.6vw,13px);background:#e7edf6;border-radius:22px;box-shadow:inset 0 3px 9px #11284a1a}
.tt-cell{position:relative;overflow:hidden;border:2px solid #e3e8f0!important;background:#fff;min-width:0;min-height:0;border-radius:15px;box-shadow:0 3px 0 #cbd6e7;display:grid;place-items:center;transition:transform .14s,background .14s,box-shadow .14s}.tt-cell:not(:disabled):hover{background:#fffbef;transform:translateY(-2px)}.tt-cell:active{transform:scale(.96)}.tt-cell:disabled{cursor:default;opacity:1}.tt-cell img{width:84%;height:84%;object-fit:contain;animation:tt-pop .24s cubic-bezier(.22,1.7,.4,1)}.tt-cell.is-winning{background:#fff3cf!important;border-color:#e0ad4c!important;box-shadow:0 0 0 2px #ffcf6d,0 3px 0 #d7a64b;animation:tt-winner .7s ease-in-out 2}.tt-cell.is-winning img{filter:drop-shadow(0 2px 2px #e5a53255)}
@keyframes tt-pop{from{transform:scale(.2) rotate(-15deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes tt-winner{50%{transform:scale(1.04)}}
.tt-result{margin:17px auto 0;max-width:440px;text-align:center;background:#fff5db;color:#593814;border:1px solid #edd7a7;border-radius:17px;padding:17px}.tt-result[hidden]{display:none!important}.tt-result strong{display:block;font-size:20px}.tt-result p{margin:6px 0 13px;font-size:13px;color:#6a543a}.tt-next{background:#123568;color:white;border:0;border-radius:11px;min-height:48px;padding:11px 19px;font-weight:850;font-size:14px;box-shadow:0 4px 0 #061d3f}
.tt-actions{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;padding-top:20px}.tt-actions button,.tt-actions a{padding:10px 13px;min-height:43px;border:1px solid #d5e0ed;background:#f4f7fc;color:#173e73;border-radius:10px;font-weight:800;font-size:12px;text-decoration:none;text-align:center}.tt-actions button:hover,.tt-actions a:hover{background:#e7eef8}
.tt-rules{background:#f8fbff}.tt-rules>p{line-height:1.6;color:#405574;font-size:15px;margin:0 0 18px}.tt-rules strong{color:#1b3763}.tt-rule{display:flex;align-items:flex-start;gap:13px;border-top:1px solid #e1e8f4;padding:17px 0}.tt-rule>span{display:grid;place-items:center;background:#e5eff9;color:#25517f;width:35px;height:35px;flex-shrink:0;border-radius:10px;font-size:13px;font-weight:850}.tt-rule strong{font-size:14px}.tt-rule p{margin:5px 0 0;color:#556982;line-height:1.45;font-size:13px}.tt-tip{margin-top:9px;padding:16px;background:#eef5e6;border-radius:14px;font-size:13px;line-height:1.6;color:#375d2b}
@media(max-width:880px){.tt-layout{grid-template-columns:minmax(0,1fr)}.tt-rules{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.tt-rules .tt-kicker,.tt-rules h2,.tt-rules>p,.tt-tip{grid-column:1/-1}.tt-rule{padding:12px 0}}
@media(max-width:600px){.tt-page{width:100%;padding-left:13px!important;padding-right:13px!important}.tt-hero{grid-template-columns:1fr 89px;gap:5px;padding:21px 15px;margin:12px 0 15px;border-radius:17px}.tt-hero h1{font-size:clamp(35px,9vw,46px);margin:6px 0}.tt-hero p{font-size:13px;line-height:1.48;margin-bottom:10px}.tt-eyebrow{font-size:9px}.tt-hero-tags span{font-size:10px;padding:6px 8px}.tt-showcase{flex-direction:column;gap:0}.tt-showcase img{width:64px;height:64px}.tt-showcase span{font-size:14px;margin:-5px 0}.tt-game,.tt-rules{padding:15px;border-radius:17px}.tt-game-top h2{font-size:25px}.tt-round{padding:8px 10px}.tt-board{width:min(100%,380px);border-radius:18px;gap:7px;padding:8px}.tt-cell{border-radius:11px}.tt-player-icon{width:38px;height:38px}.tt-player img{width:35px;height:35px}.tt-player{gap:5px;padding:7px 6px}.tt-player strong{font-size:14px}.tt-player b{font-size:20px}.tt-mode-buttons button{font-size:12px;min-height:50px}.tt-rules{display:block}.tt-actions{padding-bottom:10px}}
@media(prefers-reduced-motion:reduce){.tt-page *, .tt-page *:before,.tt-page *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* bundled: rifa-illustrada.css */
/* La rifa 2026 — original artwork supplied by the majorals, presented as a hero illustration. */
.rifa-page .rifa-hero{display:flex;flex-direction:column;align-items:stretch;gap:14px;max-width:100%;padding:clamp(23px,4vw,43px) clamp(18px,5vw,60px) clamp(22px,3vw,42px);background:radial-gradient(ellipse at 54% 72%,#3b6092 0%,#173568 47%,#0a1c3d 100%);overflow:hidden;isolation:isolate}
.rifa-hero>div:first-child{position:relative;z-index:2;max-width:900px}
.rifa-hero>div:first-child h1{font-size:clamp(40px,5vw,66px);margin:8px 0 10px}
.rifa-hero>div:first-child p{max-width:780px;margin-bottom:15px}
.rf-stage-editorial{width:100%;max-width:1060px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;isolation:isolate}
.rf-halo{position:absolute;inset:4% 4% 16%;border-radius:50%;background:radial-gradient(ellipse at center,#dfccaa42 0%,#a4b5d417 38%,transparent 72%);filter:blur(18px);z-index:-1;pointer-events:none}
.rf-ticket-link{display:block;width:100%;max-width:100%;border-radius:10px;transform:rotate(-1.2deg);filter:drop-shadow(0 27px 21px rgba(0,5,25,.49));transition:transform .35s ease,filter .35s ease;outline-offset:5px;cursor:zoom-in}
.rf-ticket-link:hover,.rf-ticket-link:focus-visible{transform:rotate(0deg) translateY(-5px);filter:drop-shadow(0 30px 24px rgba(0,5,25,.53))}
.rf-ticket-graphic{width:100%;height:auto;display:block;object-fit:contain}
.rf-ticket-foot{margin-top:-8px;display:flex;gap:14px;align-items:center;justify-content:center;font-size:11px;font-weight:850;color:#f5deae;letter-spacing:.14em;text-transform:uppercase;position:relative;z-index:2}
.rf-ticket-foot span:first-child,.rf-ticket-foot span:last-child{font-size:15px;color:#f1c07b}
.rf-ticket-note{font-size:11px!important;color:#c7d4e7!important;margin:5px 0 0!important;line-height:1.45!important;text-align:center}
.rf-ticket-note span{font-weight:850;color:#f4dbb2}
.rf-price-sr{position:absolute;clip:rect(0 0 0 0);width:1px;height:1px;overflow:hidden;white-space:nowrap}
@media(max-width:660px){.rifa-page .rifa-hero{padding:24px 13px 24px;gap:15px}.rifa-hero>div:first-child{padding:0 8px}.rifa-hero>div:first-child h1{font-size:clamp(39px,9.8vw,54px)}.rf-stage-editorial{width:100%}.rf-ticket-link{transform:none}.rf-ticket-link:hover,.rf-ticket-link:focus-visible{transform:translateY(-2px)}.rf-ticket-foot{font-size:10px;letter-spacing:.06em;margin-top:2px;gap:9px}.rf-ticket-note{max-width:310px;font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.rf-ticket-link{transition:none}}


/* bundled: fotomaton.css */
/* El Descontrol — Fotomaton digital */
.foto-page{padding-top:24px;padding-bottom:34px;color:#14274b}.foto-intro{display:grid;grid-template-columns:1.5fr .6fr;align-items:center;gap:24px;border-radius:28px;background:radial-gradient(circle at 87% 15%,#355b91 0%,#132f63 42%,#081d3e 100%);padding:clamp(30px,5vw,60px);color:#fff;min-height:280px;overflow:hidden;position:relative}.foto-kicker{display:inline-block;color:#e4ca98;font-size:11px;font-weight:900;letter-spacing:.17em}.foto-intro h1{color:white;letter-spacing:-.055em;line-height:1.03;font-size:clamp(41px,5.7vw,70px);margin:16px 0}.foto-intro h1 em{color:#edd1a0;font-style:normal}.foto-intro p{color:#dce7f8;font-size:15px;line-height:1.7;max-width:630px;margin:0 0 20px}.foto-features{display:flex;gap:9px;flex-wrap:wrap}.foto-features span{border:1px solid #7a91b8;border-radius:30px;padding:8px 12px;font-size:11px;font-weight:800}.foto-intro-spark{width:210px;height:210px;border:1px solid #d4bc8b80;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:50%;justify-self:center;transform:rotate(-12deg);text-align:center}.foto-intro-spark span{font-size:74px;line-height:1;color:#dfbb7d}.foto-intro-spark b{font-size:16px;letter-spacing:.08em}.foto-intro-spark small{color:#e1c48b;letter-spacing:.15em;font-weight:900}.foto-workshop{display:grid;grid-template-columns:minmax(290px,0.88fr) minmax(0,1.12fr);gap:22px;align-items:start;margin-top:24px}.foto-controls,.foto-preview-column{border:1px solid #dae2ec;background:#fff;border-radius:22px;box-shadow:0 15px 43px #102b5110}.foto-controls{padding:clamp(18px,2.8vw,31px)}.foto-control-heading{padding-bottom:16px;border-bottom:1px solid #e4ebf3}.foto-control-heading>span,.foto-preview-top span{color:#7083a0;font-size:10px;letter-spacing:.16em;font-weight:950}.foto-control-heading h2{font-size:clamp(27px,3vw,36px);letter-spacing:-.055em;margin:6px 0;color:#112c59}.foto-control-heading p{margin:0;color:#6b7891;font-size:13px}.foto-step{display:flex;gap:15px;padding:24px 0;border-bottom:1px solid #e6edf4}.foto-step:last-child{border:0;padding-bottom:0}.foto-step-num{width:33px;height:33px;border-radius:50%;background:#f2e6ce;color:#7b5d2c;display:grid;place-items:center;flex:0 0 33px;font-weight:950;font-size:12px}.foto-step-content{flex:1;min-width:0}.foto-step h3{font-size:18px;letter-spacing:-.03em;margin:3px 0 14px;color:#132f60}.foto-upload{display:flex;align-items:center;gap:13px;border:2px dashed #adc3dd;border-radius:15px;padding:15px;background:#f5f9fe;cursor:pointer;color:#174074;transition:.2s}.foto-upload:hover,.foto-upload:focus-within{border-color:#1a4c93;background:#eaf2ff}.foto-upload-icon{display:grid;place-items:center;flex:0 0 45px;height:45px;border-radius:12px;background:#e5eefc;font-size:27px;font-weight:900}.foto-upload b{display:block;font-size:13px}.foto-upload small{display:block;margin-top:4px;font-size:10px;color:#5c7192}.foto-hidden{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.foto-hidden:focus-visible+.foto-change{outline:3px solid #d29e4a}.foto-change{border:0;background:transparent;padding:10px 1px;color:#9b3d36;font-size:12px;font-weight:800;margin-top:3px}.foto-frames{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.foto-frame{display:flex;flex-direction:column;gap:5px;align-items:center;min-height:122px;border:2px solid #e0e7f0;border-radius:12px;background:#fff;padding:9px 5px;color:#19375f;cursor:pointer;font-family:inherit}.foto-frame b{font-size:11px;line-height:1.15;text-align:center}.foto-frame small{color:#6c7a91;font-size:10px;text-align:center}.foto-frame.selected{border-color:#123e78;background:#eef4fb;box-shadow:0 0 0 2px #c0d2e8}.foto-swatch{display:block;width:47px;height:56px;border-radius:4px;box-shadow:inset 0 0 0 5px currentColor;position:relative}.foto-swatch:after{content:'✦';position:absolute;inset:0;display:grid;place-items:center;font-size:20px}.foto-swatch.classic{color:#dbb478;background:#122c5a}.foto-swatch.heritage{color:#a98855;background:#f2ead7}.foto-swatch.party{color:#f2ba62;background:linear-gradient(140deg,#421b7f,#bd2f80)}.foto-label{display:block;font-size:12px;font-weight:900;color:#28476f;margin:19px 0 9px}.foto-label small{font-weight:500;color:#8291a6}.foto-formats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.foto-formats button{border:1px solid #d4e0ee;color:#1b4379;border-radius:10px;background:#f7fafd;min-height:44px;padding:8px 6px;font-size:12px;font-weight:850}.foto-formats button.selected{border-color:#164579;background:#193c70;color:#fff}.foto-input{width:100%;border:1px solid #cbd8e8;border-radius:11px;background:white;color:#0b2a50;padding:13px;font-size:14px;min-height:45px}.foto-help{font-size:12px;color:#637793;line-height:1.7;margin:0 0 16px}.foto-zoom-label{display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:#214678;margin-bottom:8px}.foto-step input[type=range]{accent-color:#174778;width:100%;height:26px;cursor:pointer}.foto-step input[type=range]:disabled{opacity:.4}.foto-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.foto-actions button{font-family:inherit;font-size:12px;font-weight:900;min-height:53px;padding:10px;border:0;border-radius:12px;cursor:pointer}.foto-download{background:#15396e;color:#fff}.foto-share{background:#f0e4ca;color:#16315e}.foto-actions button:disabled{opacity:.55;cursor:not-allowed}.foto-status{font-size:11px;line-height:1.55;min-height:20px;color:#526b8d;margin:10px 0 0}.foto-preview-column{padding:clamp(16px,2.5vw,29px)}.foto-preview-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.foto-preview-top h2{color:#142d58;font-size:20px;letter-spacing:-.035em;margin:6px 0}.foto-preview-top .foto-preview-live{color:#206e5c;font-size:10px;white-space:nowrap}.foto-preview-wrap{display:flex;align-items:center;justify-content:center;min-height:360px;border-radius:17px;background:radial-gradient(circle at 25% 20%,#294a75,#11274a 69%);padding:22px;overflow:hidden}.foto-preview-wrap canvas{display:block;max-width:100%;width:auto;height:auto;max-height:680px;aspect-ratio:4/5;border-radius:7px;box-shadow:0 14px 42px #0005;touch-action:none;cursor:grab;user-select:none}.foto-preview-wrap canvas:active{cursor:grabbing}.foto-privacy{display:flex;gap:10px;align-items:flex-start;color:#62758f;font-size:11px;line-height:1.65;margin-top:16px}.foto-finale{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:28px 34px;border-radius:18px;background:#f2f5f9}.foto-finale span{font-size:10px;letter-spacing:.16em;font-weight:950;color:#866a3d}.foto-finale h2{font-size:26px;letter-spacing:-.04em;margin:6px 0;color:#142f5c}.foto-finale p{font-size:13px;color:#6a7a93;margin:0}.foto-finale>a{background:#173b70;color:white;padding:14px 18px;border-radius:12px;font-weight:850;white-space:nowrap;font-size:12px}.foto-home-promo{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:20px;background:linear-gradient(125deg,#143a75,#0b234f);border-radius:24px;overflow:hidden;margin-block:30px;padding:33px 45px;color:white}.foto-home-promo .f-kicker{color:#edd29b}.foto-home-promo h2{color:white;font-size:clamp(28px,4vw,46px);letter-spacing:-.06em;line-height:1.1;margin:12px 0}.foto-home-promo h2 em{font-style:normal;color:#ecd2a0}.foto-home-promo p{font-size:14px;color:#d8e6f5;line-height:1.7;max-width:580px}.foto-home-link{display:inline-flex;align-items:center;gap:20px;background:#edcf95;border-radius:11px;color:#143564;font-size:13px;font-weight:900;padding:13px 19px;margin-top:10px}.foto-home-art{display:grid;place-items:center;min-height:235px}.foto-home-card{background:#e1c58c;padding:12px 12px 18px;width:165px;transform:rotate(9deg);box-shadow:12px 16px 0 #ffffff1f,0 14px 35px #0005;text-align:center;color:#113461}.foto-home-inner{background:linear-gradient(140deg,#38558a,#122753);height:169px;display:grid;place-content:center;color:#f3d9aa;line-height:1.65;font-size:23px;font-weight:950}.foto-home-card b{display:block;margin-top:13px;font-size:12px;letter-spacing:.07em}.foto-home-card small{font-size:9px;letter-spacing:.1em;font-weight:900}
@media(max-width:930px){.foto-workshop{grid-template-columns:minmax(0,1fr)}.foto-preview-wrap canvas{max-height:620px}}
@media(max-width:660px){.foto-intro{grid-template-columns:1fr;padding:28px 24px;min-height:auto}.foto-intro h1{font-size:41px}.foto-intro-spark{display:none}.foto-page{padding-top:14px}.foto-frames{gap:6px}.foto-frame{min-height:107px}.foto-preview-top{align-items:flex-start}.foto-preview-top h2{font-size:17px}.foto-preview-wrap{min-height:300px;padding:14px}.foto-preview-wrap canvas{max-height:510px}.foto-finale{display:block;padding:22px}.foto-finale>a{display:inline-flex;margin-top:17px}.foto-home-promo{grid-template-columns:1fr;padding:28px 23px}.foto-home-art{display:none}}
@media(prefers-reduced-motion:reduce){.foto-upload{transition:none}}

/* Fotomató Festes del Santíssim i Sant Rafel 2026 */
.foto-frames{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.foto-frame{min-height:128px}.foto-frame b{font-size:13px}.foto-swatch.classic{background:#f7ecd5;color:#9a7a42}.foto-swatch.modern{background:linear-gradient(145deg,#fefefe,#d9e8e8);color:#145d68}.foto-swatch.party{background:linear-gradient(135deg,#7621a8,#fa5c75,#ffc550);color:#fff}.foto-swatch.rafael{background:linear-gradient(145deg,#dfd7c2,#a9c6a0);color:#6c4b27}.foto-swatch.rafael:after{content:'🎩';font-size:25px}
.foto-camera-choices{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px;align-items:center}.foto-camera-open{display:flex;align-items:center;justify-content:center;border:0;background:#163f76;color:#fff;font-size:13px;font-weight:900;padding:14px 12px;border-radius:12px;min-height:48px;cursor:pointer}.foto-camera-alternative{font-size:11px;display:inline-flex;align-items:center;text-align:center;justify-content:center;background:#e9f1f8;color:#183d66;border-radius:12px;padding:10px;min-height:48px;cursor:pointer;font-weight:800}
.foto-sant-panel{margin-top:18px;padding:16px;border:1px solid #d6c4a2;background:#fffaf0;border-radius:14px}.foto-sant-panel[hidden]{display:none}.foto-sant-panel>b{display:block;color:#3c442d;font-size:14px}.foto-sant-panel p{font-size:11px;line-height:1.6;color:#556477}.foto-face-detect{background:#29563b;color:white;border:0;border-radius:9px;padding:10px 13px;font-weight:850;cursor:pointer;min-height:42px}.foto-face-detect:disabled{opacity:.45}.foto-sant-sliders{display:grid;gap:4px}.foto-sant-sliders label{font-size:11px;color:#254368;font-weight:900;margin-top:8px}.foto-sant-sliders input{width:100%;accent-color:#326c5c}
.foto-camera-modal{position:fixed;inset:0;z-index:9999;background:#07152bd9;padding:16px;display:grid;place-items:center}.foto-camera-modal[hidden]{display:none}.foto-camera-dialog{background:#fff;width:min(100%,520px);padding:14px;border-radius:18px;box-shadow:0 14px 55px #0005}.foto-camera-head{display:flex;align-items:center;justify-content:space-between;color:#143662;margin-bottom:12px}.foto-camera-head button{border:0;background:#f0f4f9;color:#18365e;border-radius:50%;height:40px;width:40px;font-size:20px;cursor:pointer}.foto-camera-dialog video{display:block;width:100%;max-height:min(60vh,520px);aspect-ratio:3/4;object-fit:cover;background:#0c172b;border-radius:12px;transform:scaleX(-1)}.foto-camera-toolbar{display:flex;gap:10px;margin-top:12px}.foto-camera-toolbar button{flex:1;min-height:46px;font-weight:850;font-size:13px;cursor:pointer;border-radius:10px;border:1px solid #dce5ef;background:#f3f6fa;color:#173c6a}.foto-camera-toolbar .foto-camera-shutter{background:#174078;color:white;border-color:#174078}.foto-camera-dialog>p{font-size:11px;line-height:1.6;color:#5b6981}
@media(max-width:440px){.foto-camera-choices{grid-template-columns:1fr}.foto-frames{gap:7px}.foto-frame{min-height:118px}.foto-camera-modal{padding:6px}.foto-camera-dialog{padding:10px}}

/* Disseny estudi il·lustració — tres opcions amb miniatures reals del marc */
.foto-frames{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.foto-frame{min-height:138px;padding:10px 6px 9px;gap:8px;border-radius:16px;background:#fff}
.foto-frame b{font-size:13px;line-height:1.2}
.foto-frame small{font-size:10px;line-height:1.3}
.foto-swatch{height:70px;width:54px;border-radius:5px;box-shadow:0 5px 13px #172a4830;display:block;position:relative;overflow:hidden}
.foto-swatch:after{content:'';position:absolute;inset:19px 7px 11px;border:2px solid currentColor;background:linear-gradient(145deg,#a8b49a,#ecd7b4)}
.foto-swatch.classic{color:#a98753;background:repeating-linear-gradient(135deg,#f5ebd9 0,#f5ebd9 3px,#e6d4b5 4px)}
.foto-swatch.classic:before{content:'✦';position:absolute;font-size:18px;top:0;left:20px;color:#876036;z-index:1}
.foto-swatch.modern{color:#d3f4e9;background:linear-gradient(150deg,#16263f 0 68%,#a9e6d6 69%)}
.foto-swatch.modern:after{background:linear-gradient(130deg,#446e7f,#bdc4bc);border-width:4px;border-color:#fff}
.foto-swatch.party{color:#ffb8d2;background:radial-gradient(circle at 80% 30%,#ffbd72,#7a207c 53%,#1e2351)}
.foto-swatch.party:after{background:#b1489b;border:3px solid #fbd989}
.foto-swatch.party:before{content:'✺';position:absolute;z-index:1;top:-2px;right:2px;color:#ffe5a4;font-size:17px}
@media(max-width:410px){.foto-frames{gap:6px}.foto-frame{min-height:130px;padding:9px 3px}.foto-frame small{font-size:9px}.foto-frame b{font-size:12px}.foto-swatch{height:60px;width:46px}}


/* Ajust final fotomató */
.foto-frame small{display:none!important}
.foto-frame{justify-content:flex-start;min-height:118px!important}
.foto-frame b{font-size:12px!important}
.foto-swatch.classic{background:linear-gradient(180deg,#f7f1e8,#e4d8c8)!important;color:#9a8668!important;box-shadow:inset 0 0 0 5px currentColor,0 6px 14px rgba(0,0,0,.08)!important}
.foto-swatch.modern{background:linear-gradient(180deg,#fffefc,#ece5db)!important;color:#b8aa96!important;box-shadow:inset 0 -14px 0 0 rgba(184,170,150,.35), inset 0 0 0 5px currentColor,0 6px 14px rgba(0,0,0,.08)!important}
.foto-swatch.modern:after{content:'◌';font-size:20px;color:#8b8174}
.foto-swatch.party{box-shadow:inset 0 0 0 5px currentColor,0 8px 20px rgba(83,20,119,.18)!important}

.foto-swatch.classic{background:linear-gradient(180deg,#f7f1e8,#e6dccd)!important;color:#9f8a6c!important;box-shadow:inset 0 0 0 5px currentColor,0 8px 18px rgba(0,0,0,.08)!important}
.foto-swatch.classic:after{content:'✦';color:#836f55;font-size:18px}
.foto-swatch.modern{background:linear-gradient(180deg,#fffefc,#efe8df)!important;color:#d2c2ae!important;box-shadow:inset 0 -16px 0 rgba(210,194,174,.38), inset 0 0 0 5px currentColor,0 8px 18px rgba(0,0,0,.08)!important}
.foto-swatch.modern:after{content:'✎';color:#7d7366;font-size:18px}
.foto-preview-wrap canvas{box-shadow:0 16px 44px rgba(0,0,0,.30)}


/* bundled: mobile-nav.css */
/* Navigation redesign mobile - 4 main items + full accessible menu */
.des-drawer[hidden]{display:none!important}.des-drawer{display:none}
@media(max-width:840px){
 .mobile-nav.des-mobile{box-sizing:border-box;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;justify-content:stretch;gap:2px;min-height:84px;padding:6px 7px max(10px,env(safe-area-inset-bottom))!important;background:#fff;box-shadow:0 -4px 28px #071e4533;border-top:1px solid #dce6f2}
 .mobile-nav.des-mobile a,.mobile-nav.des-mobile button{box-sizing:border-box;min-width:0;width:auto!important;max-width:none!important;border:0!important;border-radius:11px;min-height:65px;padding:7px 2px!important;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;color:#193e71!important;background:transparent;font:850 12px Manrope,system-ui,sans-serif;text-decoration:none;cursor:pointer;touch-action:manipulation}
 .mobile-nav.des-mobile a svg,.mobile-nav.des-mobile button svg{display:block;flex-shrink:0;width:27px;height:27px}.mobile-nav.des-mobile .bottom-label{font-size:12px!important;font-weight:850;letter-spacing:-.035em;line-height:1.05;white-space:nowrap}
 .mobile-nav.des-mobile a.active{background:#0d2b60;color:#fff!important}.mobile-nav.des-mobile a.active svg,.mobile-nav.des-mobile a.active span{color:#fff!important}
 .mobile-nav.des-mobile button[aria-expanded="true"]{background:#e7eef8!important;color:#102c62!important}
 body{padding-bottom:calc(97px + env(safe-area-inset-bottom))!important}
 .des-menu-open{overflow:hidden}
 .des-drawer{position:fixed;inset:0;z-index:9999;display:block}.des-drawer-shade{position:absolute;inset:0;background:#061a3cbb}.des-drawer-content{position:absolute;bottom:0;left:0;right:0;max-height:min(88vh,800px);overflow:auto;padding:23px 22px calc(33px + env(safe-area-inset-bottom));background:#fafcff;border-radius:24px 24px 0 0;box-shadow:0 -20px 70px #05132966}.des-drawer-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.des-drawer-top small{color:#54719c;letter-spacing:.12em;font-weight:900;font-size:10px}.des-drawer-top h2{font-size:27px;color:#0d2b5b;line-height:1.2;margin:3px 0}.des-drawer-top button{background:#e7eef8;border:0;border-radius:12px;color:#15366a;width:47px;height:47px;font-size:22px;cursor:pointer}.des-drawer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.des-drawer-links a{min-height:62px;border-radius:12px;border:1px solid #dce6f2;background:#fff;color:#15386b;text-decoration:none;padding:11px 13px;display:flex;align-items:center;gap:10px;font:850 13px Manrope,system-ui}.des-drawer-links a svg{width:20px;height:20px;flex:0 0 20px}.des-drawer-links .des-majors{grid-column:1/-1;background:#eaf0f8;border-color:#cfddec}.des-drawer-links a:focus-visible,.mobile-nav.des-mobile button:focus-visible{outline:3px solid #dba947;outline-offset:2px}
}
@media(max-width:370px){.mobile-nav.des-mobile{padding-inline:3px!important}.mobile-nav.des-mobile .bottom-label{font-size:10.5px!important}.mobile-nav.des-mobile a svg,.mobile-nav.des-mobile button svg{width:24px;height:24px}.des-drawer-links{gap:6px}.des-drawer-links a{font-size:11.5px;padding:8px}}


/* Un únic destacat a la portada: el programa. La resta de seccions continuen al menú. */
.festival-main .f-feature-grid{grid-template-columns:minmax(0,1fr)}
.festival-main .f-feature-grid .f-feature{min-height:225px}
@media(max-width:760px){.festival-main .f-feature-grid{grid-template-columns:1fr}}

/* 28-10-2026: Correccions finals de portada i jocs */
.gz-game.gz-puja{isolation:isolate}
.gz-game.gz-puja .gz-puja-cover-img{position:absolute;right:3%;bottom:2%;top:auto;width:min(38%,350px);height:94%;object-fit:contain;object-position:center bottom;z-index:0;opacity:.23;filter:drop-shadow(0 9px 20px rgba(0,0,0,.35));pointer-events:none}
.gz-game.gz-puja>*:not(.gz-puja-cover-img){position:relative;z-index:1}
.pu-page .pu-layout{grid-template-columns:minmax(0,1fr)!important;gap:18px}
.pu-page .pu-card{width:100%;max-width:100%;padding:clamp(12px,2.4vw,24px)}
.pu-page .pu-stage{width:100%;max-width:100%}
.pu-page .pu-stage canvas{width:100%;height:auto!important;aspect-ratio:960/520!important;image-rendering:auto}
.pu-page .pu-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;align-items:start}
.pu-page .pu-aside>h2,.pu-page .pu-aside>p,.pu-page .pu-aside>.pu-kicker,.pu-page .pu-aside>ol{grid-column:1/-1}
.pu-page .pu-aside>ol{columns:2;column-gap:30px}
.pu-page .pu-aside>ol li{break-inside:avoid}
#pu-stage:fullscreen{background:#071a3a;display:flex;align-items:center;justify-content:center;border-radius:0}
#pu-stage:fullscreen canvas{width:min(100%,calc(100dvh * 960 / 520))!important;max-height:100dvh;aspect-ratio:960/520!important;height:auto!important}
@media(max-width:760px){.gz-game.gz-puja .gz-puja-cover-img{width:49%;right:-3%;opacity:.20}.pu-page .pu-aside{grid-template-columns:1fr}.pu-page .pu-aside>ol{columns:1}.pu-page .pu-stage canvas{height:auto!important}}

/* Tauler mòbil: retall lateral del paisatge, mantenint els tres carrils amb proporcions reals. */
@media(max-width:700px){
 .pu-page .pu-stage{overflow:hidden}
 .pu-page .pu-stage canvas{position:relative;left:50%;transform:translateX(-50%);width:185%!important;max-width:none!important;height:auto!important;aspect-ratio:960/520!important;}
 #pu-stage:fullscreen canvas{left:auto!important;transform:none!important;width:min(100%,calc(100dvh * 960 / 520))!important;}
}
