@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--wine:#581d34;--deep:#361321;--cream:#fbf7f0;--gold:#c8a46a;--ink:#35272a;--muted:#75686a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit}.topbar{height:83px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,20px);background:#fff}.brand{text-decoration:none;color:var(--wine);display:flex;align-items:center;gap:12px;font:600 26px 'Playfair Display',serif}.brand i{font-weight:400}.brand small{display:block;letter-spacing:3px;font:600 8px 'DM Sans',sans-serif;margin-top:4px}.mark{font-size:37px;color:var(--gold)}.insta{font-size:13px;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:5px}.hero{min-height:460px;background:linear-gradient(90deg,rgba(48,24,30,.56) 0%,rgba(48,24,30,.26) 52%,rgba(48,24,30,.08) 100%),url('https://images.unsplash.com/photo-1506377247377-2a5b3b417ebb?auto=format&fit=crop&w=1800&q=85') center 53%/cover;display:flex;align-items:center}.hero-shade{width:min(1120px,90%);margin:auto;color:#fff;padding:45px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.8px;color:#e4cda8}.eyebrow.dark{color:#987147}.hero h1{font:500 clamp(39px,6vw,74px)/1.12 'Playfair Display',serif;margin:20px 0}.hero h1 em{color:#f1d9ad;font-weight:400}.hero p:not(.eyebrow){max-width:530px;line-height:1.8;font-size:15px}.hero-button,.outline-button{display:inline-block;margin-top:16px;background:var(--wine);color:white;padding:14px 24px;text-decoration:none;font-weight:700;font-size:13px}.hero-button{background:var(--gold);color:var(--deep)}.intro{text-align:center;padding:58px 20px 28px}.intro h2,.about h2{font:500 43px 'Playfair Display',serif;color:var(--wine);margin:9px 0}.intro>p:last-child,.about>p:not(.eyebrow){color:var(--muted);line-height:1.6}.events-section{max-width:1160px;margin:auto;padding:0 20px 80px}.notice{background:#f6e9d8;border-left:4px solid var(--gold);padding:13px 18px;font-size:13px;margin:12px 0 25px;line-height:1.5}.filters{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;background:white;padding:20px;box-shadow:0 8px 32px #3c19200a}.filters label{font-size:11px;letter-spacing:1px;font-weight:700;text-transform:uppercase;color:var(--wine)}select,input{display:block;width:100%;margin-top:8px;border:1px solid #e1d8d2;border-radius:0;padding:12px 10px;background:#fff;font:13px 'DM Sans',sans-serif;color:var(--ink)}.toolbar{display:flex;justify-content:space-between;align-items:center;margin:25px 0 16px;color:var(--muted);font-size:13px}.favorite-filter{display:flex;align-items:center;gap:8px}.favorite-filter input{width:auto;margin:0;accent-color:var(--wine)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:white;box-shadow:0 8px 26px #3c19200c;display:flex;flex-direction:column}.photo{height:200px;background:#ddd center/cover;position:relative}.pill{position:absolute;left:14px;top:14px;background:var(--cream);color:var(--wine);font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:9px 11px}.save{position:absolute;right:12px;top:12px;border:0;border-radius:50%;background:white;width:35px;height:35px;color:var(--wine);font-size:23px;cursor:pointer}.card-content{padding:20px;display:flex;flex-direction:column;flex:1}.date{font-size:11px;letter-spacing:1px;font-weight:700;color:#a47a46;text-transform:uppercase}.card h3{font:500 25px/1.2 'Playfair Display',serif;color:var(--wine);margin:10px 0}.venue{font-weight:700;font-size:13px}.meta{font-size:12px;color:var(--muted);line-height:1.8}.desc{font-size:13px;line-height:1.6;color:#66585a;flex:1}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.actions a{font-size:11px;font-weight:700;text-decoration:none;padding:10px 12px;border:1px solid #d9c5c9;color:var(--wine)}.actions a:first-child{background:var(--wine);color:white;border-color:var(--wine)}.empty{grid-column:1/-1;text-align:center;padding:70px 20px;background:white;color:var(--muted)}.about{text-align:center;background:#f0e7dc;padding:65px 20px}.outline-button{background:transparent;border:1px solid var(--wine);color:var(--wine)}footer{background:var(--deep);color:#eadadf;padding:30px max(5vw,20px);display:flex;justify-content:space-between;gap:20px;font-size:11px;flex-wrap:wrap}@media(max-width:850px){.filters{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.topbar{height:72px}.brand{font-size:21px}.mark{font-size:27px}.hero{min-height:410px}.hero h1{font-size:41px}.intro h2,.about h2{font-size:36px}.cards{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr;padding:14px;gap:10px}.filters select,.filters input{font-size:12px}.photo{height:225px}.toolbar{gap:12px}.insta{font-size:11px}}
.sources{font-size:13px;color:var(--muted);line-height:1.8;margin:-8px 0 20px}.sources a{color:var(--wine)}

/* Sendero del Vino header identity. */
.brand{gap:12px}
.brand-symbol{display:flex;align-items:center;justify-content:center;flex-shrink:0}
.brand-copy{display:flex;flex-direction:column}
.brand-copy strong{font:600 30px/1.08 'Playfair Display',serif;letter-spacing:-.45px}
.brand-copy em{font-weight:500;color:#84582f}
.brand-copy small{font:700 9px/1.35 'DM Sans',sans-serif;letter-spacing:2px;margin-top:6px;text-transform:uppercase}
.hero .eyebrow{color:#e4cda8}
@media(max-width:600px){
  .brand{gap:8px}
  .brand-symbol svg{width:40px;height:40px}
  .brand-copy strong{font-size:clamp(18px,5.5vw,24px)}
  .brand-copy small{font-size:8px;letter-spacing:1.2px}
  .topbar{padding:0 15px;gap:10px}
  .insta{white-space:nowrap}
}

/* Brighter, welcoming wine-country hero with readable copy. */
.hero{background-color:#b48a57}.hero h1{text-shadow:0 2px 16px rgba(29,12,20,.30)}.hero-shade>p{text-shadow:0 1px 8px rgba(29,12,20,.45)}

/* Custom Golden Hour Vineyard Discoveries hero uploaded by site owner. */
.hero{background-image:linear-gradient(90deg,rgba(28,15,18,.12),rgba(28,15,18,0) 70%),url('./Golden%20Hour%20Vineyard%20Discoveries.png');background-position:center center;background-size:cover}
@media(max-width:600px){.hero{background-position:60% center;background-image:linear-gradient(90deg,rgba(28,15,18,.38),rgba(28,15,18,.08)),url('./Golden%20Hour%20Vineyard%20Discoveries.png')}}

/* Banner image includes its own typography: do not print the HTML copy twice. */
.hero{position:relative;width:min(84%,1100px);margin-inline:auto;min-height:0;aspect-ratio:2096/704;background-image:url('./Golden%20Hour%20Vineyard%20Discoveries.png');background-size:100% 100%;background-position:center}
.hero-shade{width:100%;height:100%;padding:0;position:absolute;inset:0}
.hero-shade .eyebrow,.hero-shade h1,.hero-shade p:not(.eyebrow){display:none}
.hero-shade .hero-button{position:absolute;left:6.2%;top:73%;width:17%;height:12%;margin:0;padding:0;opacity:0}
.hero-shade .hero-button:focus-visible{opacity:1;outline:3px solid #c8a46a}
@media(max-width:600px){.hero{width:100%}}

.day-plan{margin-top:16px;border-top:1px solid #eadfe0;padding-top:12px;font-size:13px;line-height:1.5}
.day-plan summary{color:var(--wine);font-weight:700;cursor:pointer}
.day-plan ol{margin:12px 0 0;padding-inline-start:22px}
.day-plan li+li{margin-top:10px}
.day-plan a{color:var(--wine);text-underline-offset:2px}
.day-plan small{display:block;margin-top:12px;color:var(--muted)}

.calendar-modes{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.calendar-modes button{cursor:pointer;border:1px solid var(--wine);background:white;color:var(--wine);padding:9px 14px;border-radius:4px;font:700 13px 'DM Sans',sans-serif}
.calendar-modes button[aria-pressed="true"]{background:var(--wine);color:white}
