/* Viu Castelló · Central de naturaleza v3 · 2026-08-13 */
.home{--hub-ink:#102a22;--hub-deep:#0b211a;--hub-moss:#285b3c;--hub-leaf:#5c8354;--hub-acid:#dff37c;--hub-cream:#f3f0e7;--hub-paper:#fffdf7;--hub-orange:#ed6a3a;--hub-water:#27788b;color:var(--hub-ink)}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hub-hero{position:relative;overflow:hidden;background:var(--hub-deep);color:#fff}
.hub-hero-photo,.hub-hero-shade{position:absolute;inset:0}
.hub-hero-photo{background-size:cover;background-position:center 47%;transform:scale(1.01)}
.hub-hero-shade{background:linear-gradient(90deg,rgba(6,22,17,.83) 0%,rgba(6,22,17,.65) 47%,rgba(6,22,17,.48) 100%),linear-gradient(0deg,rgba(3,15,11,.86) 0%,rgba(3,15,11,.06) 62%)}
.hub-shell{position:relative;z-index:1;padding-top:20px;padding-bottom:26px}
.hub-topline{display:flex;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.3);font:550 .62rem var(--mono);letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.hub-main-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(500px,1.12fr);gap:clamp(40px,6vw,86px);align-items:center;padding:clamp(35px,4.5vw,64px) 0 30px}
.hub-kicker{margin:0 0 16px;font:650 .62rem var(--mono);letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.76)}
.hub-manifesto h1{max-width:650px;font:560 clamp(2.85rem,4.7vw,4.65rem)/.92 var(--display);letter-spacing:-.045em;text-wrap:balance}
.hub-intro{max-width:610px;margin:21px 0 0;color:rgba(255,255,255,.79);font-size:.97rem;line-height:1.6}
.hub-search{display:grid;grid-template-columns:auto 1fr auto;align-items:center;max-width:650px;margin-top:24px;background:#fff;color:var(--hub-ink);border:1px solid rgba(255,255,255,.65)}
.hub-search i{padding-left:16px;color:#617069}
.hub-search input{min-width:0;padding:14px 11px;border:0;outline:0;background:transparent;color:var(--hub-ink);font:500 .84rem var(--sans)}
.hub-search input::placeholder{color:#79847e}
.hub-search button{align-self:stretch;padding:0 20px;border:0;background:var(--hub-acid);color:var(--hub-ink);font:750 .76rem var(--sans);cursor:pointer}
.hub-search:focus-within{outline:3px solid rgba(223,243,124,.35);outline-offset:3px}
.hub-object-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.hub-object-nav a{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(255,255,255,.27);background:rgba(7,27,20,.28);color:rgba(255,255,255,.86);font-size:.68rem;font-weight:650;transition:.2s}
.hub-object-nav a:hover{border-color:var(--hub-acid);color:#fff;background:rgba(7,27,20,.62)}
.hub-object-nav b{display:grid;place-items:center;min-width:19px;height:19px;padding:0 4px;background:var(--hub-acid);color:var(--hub-ink);font:700 .55rem var(--mono)}
.hub-next{min-width:0;padding:18px;border:1px solid rgba(255,255,255,.28);background:rgba(7,27,20,.55);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px)}
.hub-next-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:13px}
.hub-next-head span{font:650 .57rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--hub-acid)}
.hub-next-head h2{margin-top:3px;font:600 1.5rem/1 var(--display)}
.hub-next-head>a{font-size:.67rem;font-weight:750;color:#fff}
.hub-next-grid{display:grid;grid-template-columns:1.28fr .72fr;gap:10px;height:330px}
.hub-event-card{position:relative;display:block;min-width:0;overflow:hidden;background:#16382b;color:#fff}
.hub-event-card img,.hub-event-shade{position:absolute;inset:0;width:100%;height:100%}
.hub-event-card img{object-fit:cover;transition:transform .45s ease}
.hub-event-card:hover img{transform:scale(1.035)}
.hub-event-shade{background:linear-gradient(0deg,rgba(3,16,11,.95) 0%,rgba(3,16,11,.1) 76%)}
.hub-event-copy{position:absolute;z-index:2;inset:auto 0 0;padding:17px}
.hub-event-copy p{margin:0;color:var(--hub-acid);font:650 .56rem var(--mono);letter-spacing:.06em;text-transform:uppercase}
.hub-event-copy h3{margin-top:7px;font:600 clamp(1.45rem,2.2vw,2.35rem)/.94 var(--display);letter-spacing:-.025em;text-wrap:balance}
.hub-event-card:not(.hub-event-card-main) .hub-event-copy h3{font-size:1.38rem}
.hub-event-copy span{display:flex;justify-content:space-between;gap:10px;margin-top:11px;color:rgba(255,255,255,.72);font-size:.61rem}
.hub-event-copy b{color:var(--hub-acid)}
.hub-next-empty{padding:30px;color:rgba(255,255,255,.75)}
.hub-ecosystems{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.hub-ecosystem{position:relative;display:block;height:162px;overflow:hidden;border:1px solid rgba(255,255,255,.3);color:#fff}
.hub-ecosystem>img,.hub-ecosystem-shade{position:absolute;inset:0;width:100%;height:100%}
.hub-ecosystem>img{object-fit:cover;transition:transform .45s ease,filter .45s ease}
.hub-ecosystem:hover>img{transform:scale(1.05);filter:saturate(1.15)}
.hub-ecosystem-shade{background:linear-gradient(0deg,rgba(3,17,11,.91),rgba(3,17,11,.08) 76%)}
.hub-ecosystem>div{position:absolute;z-index:2;inset:auto 16px 14px}
.hub-ecosystem small{font:650 .55rem var(--mono);letter-spacing:.08em;color:var(--hub-acid)}
.hub-ecosystem h2{margin-top:3px;font:600 clamp(1.25rem,1.8vw,1.8rem)/.95 var(--display)}
.hub-ecosystem p{margin:5px 0 0;color:rgba(255,255,255,.72);font-size:.61rem}
.hub-ecosystem>b{position:absolute;z-index:2;top:11px;right:12px;font-size:.85rem;color:var(--hub-acid)}
.hub-planner{padding:clamp(70px,8vw,118px) 0;background:var(--hub-cream)}
.hub-planner-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:clamp(42px,6vw,78px);align-items:start}
.hub-calendar{position:sticky;top:92px;padding:24px;background:var(--hub-paper);border:1px solid #c8c6bb;box-shadow:0 22px 48px -40px rgba(16,42,34,.55)}
.hub-calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:17px;border-bottom:1px solid #d4d1c6}
.hub-calendar-head p{margin:0;color:var(--hub-orange);font:650 .6rem var(--mono);letter-spacing:.1em;text-transform:uppercase}
.hub-calendar-title-row{display:flex;align-items:center;gap:7px;margin-top:3px}
.hub-calendar-head h2{margin:0;font:600 1.8rem/1 var(--display);text-transform:capitalize}
.hub-calendar-head>span{padding:6px 8px;background:var(--hub-ink);color:#fff;font:600 .55rem var(--mono);text-transform:uppercase}
.hub-calendar-nav{display:grid;place-items:center;width:27px;height:27px;border:1px solid #9da79f;color:var(--hub-ink);font:700 .75rem var(--mono);transition:.2s}
.hub-calendar-nav:hover,.hub-calendar-nav:focus-visible{border-color:var(--hub-orange);background:var(--hub-orange);color:#fff}
.hub-weekdays,.hub-month-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.hub-weekdays{padding:17px 0 8px;color:#7b827d;font:600 .54rem var(--mono);text-align:center}
.hub-day{position:relative;display:grid;place-items:center;aspect-ratio:1;color:#69736d;font:500 .67rem var(--mono);border:1px solid transparent}
.hub-day.is-today{border-color:#9da79f;color:var(--hub-ink)}
.hub-day.has-event{background:var(--hub-acid);color:var(--hub-ink);font-weight:800;transition:.2s}
.hub-day.has-event:hover{background:var(--hub-orange);color:#fff;transform:scale(1.08)}
.hub-day i{position:absolute;left:50%;bottom:4px;width:3px;height:3px;border-radius:50%;background:currentColor;transform:translateX(-50%)}
.hub-calendar-events{margin-top:17px;border-top:1px solid #d4d1c6}
.hub-offers{min-width:0}
.hub-calendar-events a{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid #d4d1c6}
.hub-calendar-events time{font:700 .57rem var(--mono);text-transform:uppercase;color:var(--hub-orange)}
.hub-calendar-events span{font-size:.7rem;font-weight:700;line-height:1.25}
.hub-calendar-events b{color:var(--hub-moss)}
.hub-calendar-events .hub-calendar-all{grid-template-columns:1fr auto;color:var(--hub-moss)}
.hub-offers-head{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:end}
.hub-offers-head>div>p{margin:0;color:var(--hub-orange);font:650 .62rem var(--mono);letter-spacing:.1em;text-transform:uppercase}
.hub-offers-head h2{max-width:680px;margin-top:7px;font:600 clamp(2.65rem,4.8vw,5rem)/.87 var(--display);letter-spacing:-.055em}
.hub-offers-head>p{margin:0 0 6px;color:#59675f;font-size:.82rem;line-height:1.6}
.hub-filters{display:flex;flex-wrap:wrap;gap:7px;margin:27px 0 20px;padding-bottom:17px;border-bottom:1px solid #bcbdb5}
.hub-filters button{display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #bcbdb5;background:transparent;color:var(--hub-ink);font:650 .67rem var(--sans);cursor:pointer;transition:.18s}
.hub-filters button:hover,.hub-filters button.is-active{border-color:var(--hub-ink);background:var(--hub-ink);color:#fff}
.hub-filters span{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;background:rgba(255,255,255,.2);font:650 .52rem var(--mono)}
.hub-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.hub-offer{min-width:0;background:var(--hub-paper);border:1px solid #c8c6bb;transition:transform .22s ease,border-color .22s ease}
.hub-offer:hover{transform:translateY(-4px);border-color:var(--hub-moss)}
.hub-offer[hidden]{display:none}
.hub-offer>a{display:flex;flex-direction:column;height:100%}
.hub-offer-image{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--hub-ink)}
.hub-offer-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.hub-offer:hover .hub-offer-image img{transform:scale(1.04)}
.hub-offer-image span{position:absolute;left:9px;top:9px;padding:5px 7px;background:var(--hub-paper);color:var(--hub-ink);font:700 .5rem var(--mono);letter-spacing:.06em;text-transform:uppercase}
.hub-offer-copy{display:flex;flex:1;flex-direction:column;padding:15px}
.hub-offer-copy>p{margin:0;color:var(--hub-orange);font:650 .54rem var(--mono);letter-spacing:.05em;text-transform:uppercase}
.hub-offer-copy h3{margin-top:7px;font:600 1.32rem/.98 var(--display);letter-spacing:-.025em}
.hub-offer-copy>div{margin-top:8px;color:#69746d;font-size:.67rem;line-height:1.48;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.hub-offer-copy>b{margin-top:auto;padding-top:15px;color:var(--hub-moss);font-size:.62rem}
.hub-photo-credits{padding-top:17px;padding-bottom:17px;color:#727b75;font-size:.62rem}
.hub-photo-credits summary{cursor:pointer;font-weight:700;color:var(--hub-ink)}
.hub-photo-credits p{line-height:1.6}.hub-photo-credits a{text-decoration:underline}
@media(max-width:1050px){.hub-main-grid{grid-template-columns:1fr;gap:30px}.hub-manifesto{max-width:850px}.hub-next-grid{height:360px}.hub-planner-grid{grid-template-columns:290px minmax(0,1fr);gap:35px}.hub-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-offers-head{grid-template-columns:1fr}.hub-offers-head>p{max-width:600px}}
@media(max-width:780px){.hub-shell{padding-left:16px;padding-right:16px}.hub-main-grid{padding-top:30px}.hub-manifesto h1{font-size:clamp(2.75rem,9.8vw,4.4rem)}.hub-ecosystems{grid-template-columns:repeat(2,1fr)}.hub-ecosystem{height:175px}.hub-planner-grid{grid-template-columns:1fr}.hub-calendar{position:relative;top:auto;max-width:430px}}
@media(max-width:560px){.hub-hero-photo{background-position:58% center}.hub-hero-shade{background:linear-gradient(90deg,rgba(6,22,17,.8),rgba(6,22,17,.53)),linear-gradient(0deg,rgba(3,15,11,.9),rgba(3,15,11,.12) 68%)}.hub-topline span:last-child{display:none}.hub-main-grid{gap:23px;padding:25px 0 22px}.hub-manifesto h1{font-size:clamp(2.55rem,11.6vw,3.55rem)}.hub-intro{margin-top:16px;font-size:.84rem}.hub-search{margin-top:18px}.hub-search input{font-size:.76rem}.hub-search button{padding:0 14px}.hub-object-nav{display:grid;grid-template-columns:1fr 1fr}.hub-object-nav a{justify-content:space-between}.hub-next{margin-right:-16px;padding:13px 0 13px 13px;border-right:0}.hub-next-head{padding-right:16px}.hub-next-grid{display:grid;grid-auto-flow:column;grid-auto-columns:78vw;grid-template-columns:none;height:270px;overflow-x:auto;padding-right:16px;scroll-snap-type:x mandatory;scrollbar-width:none}.hub-event-card{scroll-snap-align:start}.hub-event-card:not(.hub-event-card-main) .hub-event-copy h3{font-size:1.7rem}.hub-ecosystems{display:grid;grid-auto-flow:column;grid-auto-columns:72vw;grid-template-columns:none;overflow-x:auto;margin-right:-16px;padding-right:16px;scroll-snap-type:x mandatory;scrollbar-width:none}.hub-ecosystem{scroll-snap-align:start;height:190px}.hub-planner{padding:65px 0}.hub-planner-grid{padding-left:16px;padding-right:16px}.hub-calendar{padding:18px}.hub-offers-head h2{font-size:2.85rem}.hub-filters{width:100%;max-width:100%;flex-wrap:nowrap;overflow-x:auto;margin-right:0;padding-right:0;scrollbar-width:none}.hub-filters button{white-space:nowrap}.hub-offer-grid{grid-template-columns:1fr 1fr;gap:8px}.hub-offer-copy{padding:12px}.hub-offer-copy h3{font-size:1.15rem}.hub-offer-copy>div{display:none}.hub-offer-image{aspect-ratio:1/1}}
@media(max-width:370px){.hub-object-nav{grid-template-columns:1fr}.hub-offer-grid{grid-template-columns:1fr}.hub-offer-copy>div{display:-webkit-box}}
@media(prefers-reduced-motion:reduce){.hub-event-card img,.hub-ecosystem>img,.hub-offer,.hub-offer-image img{transition:none}}
