@font-face{font-family:Expo;src:url('/assets/bebasneue_bold-webfont.woff2') format('woff2');font-display:swap}
:root{--navy:#102441;--deep:#081a30;--blue:#1c3c5d;--gold:#ffc047;--ink:#102441;--muted:#596477;--line:#d8d9d5;--paper:#fffefa;--soft:#f2f0e9;--radius:0}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.75 Arial,Helvetica,sans-serif}button,input,select{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #bd7900;outline-offset:5px}[hidden]{display:none!important}p{margin:0 0 20px}h1,h2,h3,h4{font-family:Expo,Impact,'Arial Narrow',sans-serif;font-weight:700;line-height:.98;letter-spacing:.1px;margin:0;text-wrap:balance}h2{font-size:clamp(2.85rem,4.55vw,4.65rem)}h3{font-size:2.2rem}h4{font-size:1.6rem}em{font-style:normal}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;top:-100px;left:12px;z-index:200;background:#fff;padding:14px 20px}.skip:focus{top:12px}.eyebrow{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;line-height:1.6;color:#89600c;margin-bottom:18px}.lead{font-size:1.12rem;line-height:1.8;color:var(--muted);max-width:750px}.muted,.small{color:var(--muted)}.small{font-size:.875rem}.center{text-align:center}.center p{margin-inline:auto}.section{padding:104px 0}.section.alt{background:var(--soft)}.section.dark{position:relative;background:var(--navy);color:var(--paper);overflow:hidden}.dark .eyebrow{color:var(--gold)}.dark p,.dark .lead{color:#c7d4e2}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}.section-head h2{max-width:850px}.section-head .eyebrow{margin-bottom:16px}.section-head .button{flex-shrink:0}.section-aside{max-width:300px;font-size:.93rem;line-height:1.8;color:var(--muted);margin:0}.section-note{color:#606b79;font-size:.82rem;line-height:1.8;margin:24px 0 0}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;gap:14px;text-align:left;min-height:54px;padding:15px 23px;background:var(--gold);color:var(--navy);border:1px solid transparent;border-radius:2px;font-size:.86rem;font-weight:700;text-decoration:none;line-height:1.5;transition:background .2s,transform .2s,box-shadow .2s}.button:after{content:none}.button:hover{background:#ffd17b;transform:translateY(-2px);box-shadow:0 5px 0 #081a3012}.button.navy{color:#fff;background:var(--navy)}.button.navy:hover{background:var(--blue)}.button.outline{background:transparent;color:#fff;border-color:#ffffff70}.button.outline:hover{background:#ffffff0e;border-color:var(--gold)}.button.line{background:transparent;border-color:#14264350;color:var(--navy)}.button.line:hover{background:#fff9e9;border-color:var(--navy)}.text-link{font-size:.88rem;font-weight:bold;display:inline-flex;align-items:center;gap:22px;padding-bottom:3px;text-decoration:none;border-bottom:1px solid currentColor;margin-top:auto}.text-link:hover{gap:30px}.divider{height:1px;background:var(--line);margin:44px 0}
/* The masthead stays restrained so the festival does the talking. */
.topbar{background:var(--deep);color:#c6d0dd;font-size:.61rem;line-height:1.5;letter-spacing:2px;padding:9px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:16px}.site-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid #10244118}.header-inner{height:86px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none}.brand img{width:73px;height:55px;object-fit:contain}.brand span{font:1.5rem/.94 Expo,Impact,sans-serif;letter-spacing:.3px}.nav{display:flex;align-items:center;gap:26px}.nav>a{font-size:.82rem;font-weight:bold;text-decoration:none;padding:12px 0;position:relative}.nav>a:not(.button):after{content:'';position:absolute;height:2px;left:0;right:0;bottom:5px;background:#c89025;transform:scaleX(0);transform-origin:left;transition:transform .2s}.nav>a:hover:after,.nav>a[aria-current=page]:after{transform:scaleX(1)}.nav .button{padding:12px 21px;min-height:45px}.menu-toggle,.mobile-ticket{display:none}
/* A bold festival poster with an actual, controllable pour. */
.hero{position:relative;isolation:isolate;background:var(--deep);color:var(--paper);overflow:hidden}.hero-atmosphere{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%;z-index:-3}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,26,48,.93) 0%,rgba(8,26,48,.83) 35%,rgba(8,26,48,.38) 70%,rgba(8,26,48,.3) 100%);pointer-events:none;z-index:-2}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,26,48,.86),transparent 32%);pointer-events:none;z-index:-1}.hero-inner{display:grid;grid-template-columns:1.17fr 1fr;gap:68px;align-items:center;padding-block:68px 46px}.hero-copy{min-width:0;position:relative}.hero .eyebrow{display:flex;align-items:center;gap:12px;color:var(--gold);font-size:.7rem;letter-spacing:2px;margin:0 0 28px}.eyebrow-rule{display:block;width:26px;height:2px;background:var(--gold);flex-shrink:0}.hero h1{font-size:clamp(5.7rem,8.3vw,8.2rem);line-height:.84;letter-spacing:-1px;margin:0 0 25px;text-wrap:nowrap}.hero h1>span{display:inline-block}.hero h1 em{display:inline-block;color:var(--gold);font-size:1.33em;margin-top:14px;letter-spacing:-1.3px}.hero-tagline{font:italic clamp(1.6rem,2.25vw,2.15rem)/1.35 Georgia,serif;letter-spacing:-.6px;color:#fff6df;margin:28px 0 22px}.hero-copy>p:not(.eyebrow):not(.hero-tagline){font-size:1rem;line-height:1.8;max-width:440px;color:#c4d1df}.hero .actions{gap:12px}.hero .button{padding-inline:21px}.hero-footnote{margin-top:31px;border-top:1px solid #ffffff29;padding-top:21px;display:flex;flex-wrap:wrap;gap:3px 12px;align-items:center;max-width:465px}.hero-footnote>span{font-size:.6rem;letter-spacing:1.7px;color:#e5bf73}.hero-footnote>strong{font-size:.78rem;line-height:1.7;font-weight:400;color:#c5d2e3}.hero-footnote>a{font-size:.8rem;color:#ffe1a2;display:block;flex-basis:100%;margin-top:3px}.hero-footnote>a span{margin-left:7px}.pour-experience{position:relative;width:100%;max-width:510px;justify-self:end;min-width:0}.pour-topline{display:flex;justify-content:space-between;gap:12px;color:#bdcddd;font-size:.57rem;font-weight:bold;letter-spacing:1.7px;margin-bottom:16px}.pour-topline>span:first-child{display:flex;gap:8px;align-items:center}.pour-topline i{display:block;width:6px;height:6px;background:var(--gold);border-radius:50%;box-shadow:0 0 10px #ffc04765}.pour-scene{position:relative;isolation:isolate;aspect-ratio:.99;border:1px solid #ebc17565;border-radius:140px 140px 10px 10px;overflow:hidden;background:linear-gradient(150deg,#2347659c,#102b447d);box-shadow:0 22px 75px #0004,inset 0 0 0 7px #ffffff04}.scene-caption{position:absolute;top:13%;left:10%;right:10%;display:flex;justify-content:space-between;color:#e4c37d;font-size:.57rem;font-weight:bold;line-height:1.7;letter-spacing:1.5px;z-index:5;pointer-events:none}.scene-caption>span:last-child{text-align:right}.pour-art{position:absolute;inset:0;overflow:hidden}.hero-logo{position:absolute;z-index:1;left:50%;top:23%;transform:translateX(-50%);width:90%;height:auto;filter:drop-shadow(0 12px 15px #0004)}#beer-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.glass-shine{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(100deg,transparent 3%,#ffffff0c 4%,#ffffff04 8%,transparent 10%,transparent 82%,#ffffff04 93%,transparent);box-shadow:inset 1px 0 1px #fff3,inset -1px 0 1px #fff2}.scene-bottom{position:absolute;left:20px;right:20px;bottom:24px;z-index:4;pointer-events:none;color:#c9d8e6;font:1.4rem/1 Expo;letter-spacing:2px;text-align:center;transition:color .2s}.has-beer .scene-bottom{color:#603207}.pour-controls{margin-top:18px;display:flex;gap:8px;align-items:center}.pour-meter{flex:1;min-width:0;margin-right:7px}.pour-meter>span{display:block;color:#c2d0e1;font-size:.69rem;line-height:1.5;margin-bottom:9px}.level-track{height:3px;border-radius:4px;background:#ffffff2b;overflow:hidden}.level-track>span{height:100%;display:block;background:var(--gold);width:0}.motion-toggle,.reset-pour{background:transparent;border:1px solid #ffffff46;min-height:44px;border-radius:2px;color:#f5f3ed;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;font-size:.76rem;line-height:1.3;white-space:nowrap}.motion-toggle:hover,.reset-pour:hover{background:#ffffff13;border-color:var(--gold)}.pause-icon{font-size:.875rem;min-width:13px}.reset-pour{min-width:44px;font:1.5rem/1 Arial,sans-serif;padding:8px 11px}.pour-hint{color:#98adc2;text-align:right;font-size:.65rem;margin:9px 0 0}.hero-baseline{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff24;padding-block:21px;color:#c8d6e3;font-size:.63rem;letter-spacing:2px;gap:20px}.hero-baseline>a{color:#efd6a5;text-decoration:none;letter-spacing:.8px;min-height:24px}.hero-baseline>a>span{margin-left:14px}.event-bar{background:var(--gold)}.event-bar>.wrap{display:grid;grid-template-columns:1.15fr 1fr 1.1fr;padding-block:30px;gap:30px}.event-bar .detail+.detail{border-left:1px solid #60431450;padding-left:30px}.detail>span{display:block;font-size:.62rem;letter-spacing:1.65px;text-transform:uppercase;font-weight:bold}.detail strong{display:block;font:1.95rem/1.1 Expo,Impact,sans-serif;margin:12px 0 8px}.detail small{font-size:.73rem;line-height:1.65;display:block}
/* Photography tells a story once, with a different composition on each page. */
.festival-story-section{padding-block:112px}.festival-story{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:center}.festival-photo{position:relative;padding-bottom:25px}.festival-photo>img{width:100%;aspect-ratio:1.07;object-fit:cover;object-position:48% center;border-radius:2px}.festival-photo .photo-label{position:relative;display:block;background:var(--gold);margin:-43px 26px 0;padding:23px 26px;font:2rem/1.05 Expo,Impact,sans-serif;transform:rotate(-2deg);box-shadow:0 8px 25px #2a1d1912}.photo-label span{display:block;font:700 .59rem/1.5 Arial,sans-serif;letter-spacing:1.8px;margin-bottom:9px}.festival-story-copy h2{font-size:clamp(3.5rem,5.3vw,5.25rem);line-height:.94;margin-bottom:27px}.festival-story-copy h2 em{color:#9a630b}.festival-story-copy>p:not(.eyebrow){color:var(--muted);font-size:.98rem;line-height:1.85}.story-links{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line);margin-top:28px}.story-links a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:15px 0;text-decoration:none;font-size:.85rem;font-weight:bold;gap:15px}.story-links a:hover{color:#9a630b}.breweries-intro{padding-block:76px}.brew-preview{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0;margin-top:30px;border:1px solid var(--line);background:var(--paper)}.brew-tile{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;text-decoration:none;padding:17px 8px 20px;border-right:1px solid var(--line)}.brew-tile:last-child{border-right:0}.brew-logo{height:98px;width:100%;padding:8px;display:flex;align-items:center;justify-content:center;transition:transform .25s}.brew-logo img{width:100%;height:100%;object-fit:contain}.brew-tile:hover .brew-logo{transform:translateY(-5px)}.brew-tile>span{font:700 .67rem/1.5 Arial,sans-serif;color:#556173;margin-top:12px;max-width:140px}.experience-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px}.experience-grid article{overflow:hidden;border:1px solid var(--line)}.experience-food{background:var(--soft);display:flex;flex-direction:column;justify-content:space-between}.experience-music{background:var(--navy);color:var(--paper)}.experience-music>img{width:100%;aspect-ratio:2;object-fit:cover;object-position:center}.experience-copy{padding:38px 42px;display:flex;flex-direction:column;align-items:flex-start}.experience-copy h3{font-size:clamp(2.7rem,3.6vw,3.65rem);line-height:1;margin-bottom:23px}.experience-copy p:not(.eyebrow){font-size:.96rem;line-height:1.85;color:var(--muted);max-width:470px}.experience-copy .text-link{margin-top:8px}.experience-music .experience-copy{padding:32px 38px 36px}.experience-music .eyebrow{color:var(--gold)}.experience-music .experience-copy p:not(.eyebrow){color:#c6d4e2}.experience-music .text-link{color:#ffe1a2}.food-marks{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:center;padding:27px 32px;border-top:1px solid var(--line);background:var(--paper)}.food-marks>div{display:flex;align-items:center;justify-content:center}.food-marks img{width:100%;height:70px;object-fit:contain}.impact-layout{display:grid;grid-template-columns:1.16fr 1fr;gap:85px;align-items:center}.impact-copy h2{font-size:clamp(3.5rem,5.4vw,5.7rem);margin-bottom:27px;line-height:.96}.impact-copy h2 em{color:var(--gold)}.impact-copy>p{max-width:540px;font-size:.98rem;line-height:1.85}.impact-stats{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-block:27px;border-block:1px solid #ffffff30;margin:32px 0}.impact-stats strong{display:block;font:5rem/.95 Expo,Impact,sans-serif;color:var(--gold);margin-bottom:14px}.impact-stats span{display:block;font-size:.77rem;line-height:1.8;color:#c3cfe0;max-width:220px}.impact-copy .actions .button{padding-inline:21px;font-size:.8rem}.impact-proof{border-top:1px solid #ffffff36;padding-top:27px}.impact-proof>.eyebrow{margin-bottom:25px}.impact-proof ul{list-style:none;padding:0;margin:0}.impact-proof li{display:flex;align-items:start;gap:24px;padding:27px 0;border-top:1px solid #ffffff26}.impact-proof .impact-index{font:2.2rem/1 Expo,Impact,sans-serif;color:#b49253;padding-top:2px}.impact-proof strong{display:block;color:#fff8e8;font:1.8rem/1.1 Expo,Impact,sans-serif;margin-bottom:10px}.impact-proof li div>span{display:block;color:#bdcddd;font-size:.85rem;line-height:1.75}.impact-proof>p:last-child{font-size:.75rem;color:#a8bed5;margin:20px 0 0}.sponsor-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:40px;align-items:center;justify-content:center;padding:20px 0;border-block:1px solid var(--line)}.sponsor-strip img{width:150px;height:100px;object-fit:contain;margin:auto}.cta{background:var(--gold);padding:67px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:50px}.cta h2{font-size:clamp(3rem,4.5vw,4.5rem);max-width:870px}.cta p{font-size:.97rem;margin:15px 0 0;max-width:660px}.cta .button{flex-shrink:0}
/* Editorial openings and a consistent page rhythm. */
.page-hero{padding:48px 0 61px;background:var(--soft);border-bottom:1px solid var(--line);position:relative}.page-overline{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #10244128;padding-bottom:24px;margin-bottom:36px}.page-overline .eyebrow{margin:0}.page-overline>a{font-size:.66rem;letter-spacing:1px;text-transform:uppercase;font-weight:bold;text-decoration:none;white-space:nowrap}.page-overline>a span{margin-left:10px}.page-heading{display:grid;grid-template-columns:1.55fr 1fr;gap:65px;align-items:end}.page-heading h1{font-size:clamp(3.9rem,6.4vw,6.5rem);line-height:.94;max-width:840px;overflow-wrap:break-word}.page-heading>p{color:var(--muted);font-size:1rem;line-height:1.9;margin:0;padding-bottom:3px;max-width:590px}.subnav{display:flex;gap:12px 29px;flex-wrap:wrap;margin-top:36px;font-size:.79rem;font-weight:bold}.subnav a{color:var(--navy);text-decoration:none;padding-bottom:6px;border-bottom:2px solid #d4a03c;min-height:32px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:75px}.split h2{margin-bottom:27px}.split p{color:var(--muted)}.photo-frame{position:relative}.photo-frame img{width:100%;aspect-ratio:1.05;object-fit:cover;object-position:center 42%;border-radius:2px}.page-about .photo-frame img{aspect-ratio:.85;object-position:center}.photo-frame .photo-label{position:absolute;left:20px;right:20px;bottom:20px;display:block;background:var(--gold);padding:20px 23px;font:1.8rem/1 Expo,Impact,sans-serif;color:var(--navy);transform:rotate(-2deg)}.notice{background:#fff7e4;border-left:3px solid #b78221;color:#665638;padding:21px 25px;font-size:.94rem;line-height:1.8;margin-bottom:32px}.notice strong{color:var(--ink)}.two-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.three-grid h3{margin-bottom:19px}.three-grid p{color:var(--muted)}.info-card{padding:30px 26px;border:1px solid var(--line);background:var(--paper)}.info-card h3{font-size:2.2rem;margin-bottom:18px}.info-card p{margin-bottom:0}.info-card .eyebrow{color:#92600a;margin-bottom:24px}.text-block{max-width:780px}.text-block h2{margin-bottom:25px}.text-block h3{margin:30px 0 18px}.text-block p{color:var(--muted)}.impact-number{font:clamp(5.4rem,12vw,12rem)/1 Expo,Impact,sans-serif;color:var(--gold);margin:35px 0 26px;letter-spacing:-1px}.cause-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;margin-top:34px}.cause{border-bottom:1px solid #ffffff30;padding:22px 0;font-size:.93rem}.festival-film{aspect-ratio:16/9;background:var(--deep);max-width:1100px}.festival-film iframe{display:block;border:0;width:100%;height:100%}
/* Producers are easy to find; partner logos get room to breathe. */
.directory-intro{max-width:860px;color:var(--muted);margin-bottom:33px}.filter-bar{display:flex;justify-content:space-between;align-items:end;gap:25px;padding:28px;background:var(--soft);border:1px solid var(--line)}.search{width:min(100%,430px)}.search label{font-size:.82rem;font-weight:bold;display:block;margin-bottom:11px}.search input{width:100%;background:var(--paper);border:1px solid #a6afbc;border-radius:2px;padding:14px 17px;min-height:52px;color:var(--navy)}.filter-buttons{display:flex;gap:7px;flex-wrap:wrap}.filter-button{font-size:.8rem;line-height:1.4;padding:14px 17px;background:transparent;color:var(--navy);border:1px solid #aeb7c2;border-radius:2px;min-height:48px}.filter-button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.results-count{font-size:.8rem;color:var(--muted);margin:25px 0}.brew-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.brew-card{display:flex;gap:23px;align-items:center;min-height:142px;padding:29px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.brew-card h3{font-size:1.9rem;line-height:1.1;margin-bottom:11px}.brew-card span{font-size:.66rem;color:#657183;letter-spacing:1px;text-transform:uppercase}.producer-mark{flex:0 0 70px;height:76px}.producer-mark:empty{display:none}.producer-mark img{width:100%;height:100%;object-fit:contain}.empty{text-align:center;background:var(--soft);padding:45px;font-size:1rem}.vendor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:35px}.vendor-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--paper);border:1px solid var(--line);padding:34px 24px}.vendor-card img{height:134px;width:180px;object-fit:contain;margin-bottom:28px}.vendor-card h3{font-size:1.9rem;line-height:1.12;margin-bottom:13px}.vendor-card a{font-size:.8rem;margin-top:auto;font-weight:bold}.vendor-role{font-size:.8rem;line-height:1.7;color:var(--muted);margin:0 0 24px}.sponsor-group{margin-top:50px}.sponsor-group>h3{font-size:2.5rem;margin-bottom:26px}.sponsor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.sponsor-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px 22px;text-decoration:none;background:var(--paper);border:1px solid var(--line);font-size:.83rem;line-height:1.5;transition:border-color .2s,transform .2s}.sponsor-card:hover{border-color:#b3832c;transform:translateY(-3px)}.sponsor-card img{width:170px;height:115px;object-fit:contain;margin-bottom:24px}.sponsor-card span{margin-top:auto}
/* Clear admission choices, with expectations beside each action. */
.release-panel{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;padding:43px 46px;border:1px solid #d8c18a;border-left:7px solid var(--gold);background:#fff8e8;align-items:center}.release-panel h2{font-size:3.6rem;margin-bottom:21px}.release-panel p:not(.eyebrow){font-size:.96rem;line-height:1.85}.release-panel>div>p:last-child{margin-bottom:0}.ticket-card{position:relative;border:1px solid var(--line);border-top:5px solid var(--navy);padding:42px;background:var(--paper);display:flex;flex-direction:column;align-items:flex-start;overflow:hidden}.ticket-card:first-child{border-top-color:#d69b27}.ticket-card h3{font-size:3.3rem;margin:0 0 21px;max-width:300px}.ticket-kicker{font-size:.68rem;font-weight:bold;letter-spacing:1.5px;text-transform:uppercase;color:#657182;margin-bottom:22px;padding-right:60px}.ticket-emblem{position:absolute;right:32px;top:32px;width:78px;height:78px;border:1px solid #ba8b32;outline:1px solid #ba8b32;outline-offset:-5px;border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(12deg);font:1.1rem/.97 Expo,Impact,sans-serif;letter-spacing:.5px;text-align:center;color:#876014;background:#fff9e9}.ticket-card:nth-child(2) .ticket-emblem{border-color:#8e9aaa;outline-color:#8e9aaa;color:var(--navy);background:var(--soft)}.ticket-card>p{color:var(--muted);max-width:400px;font-size:.96rem}.ticket-card ul{list-style:none;padding:0;margin:9px 0 32px;flex-grow:1;width:100%}.ticket-card li{padding:12px 0 12px 26px;border-bottom:1px solid var(--line);position:relative;font-size:.92rem}.ticket-card li:before{content:'✓';position:absolute;left:0;color:#936210;font-size:.85rem;font-weight:bold}.ticket-bottom{width:100%;margin-top:auto;padding-top:4px}.ticket-bottom>p{font-size:.9rem;line-height:1.8;margin-bottom:24px;color:var(--muted)}.ticket-bottom strong{color:var(--ink)}.ticket-bottom .button{width:100%;justify-content:space-between}.purchase-facts>div{border-top:2px solid #c49a48;padding-top:28px}.purchase-facts h3{font-size:2.35rem;margin-bottom:21px}.purchase-facts p{font-size:.96rem;color:var(--muted);line-height:1.85}.decision-strip{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:65px;align-items:center}.decision-strip>div:first-child>h2{font-size:3.5rem;margin-bottom:22px}.decision-strip>div:first-child>p{max-width:660px;line-height:1.85;color:var(--muted)}.decision-strip>div:first-child>p:last-child{margin-bottom:0}.decision-strip>.button{justify-self:end}.inquiry-action{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.inquiry-action>.button{max-width:100%;min-height:50px}.email-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:16px;max-width:100%;min-width:0}.email-address{font-size:.81rem;line-height:1.6;overflow-wrap:anywhere;user-select:all}.copy-email{min-height:44px;padding:8px 12px;line-height:1.4;font-size:.78rem;font-weight:bold;color:var(--ink);background:transparent;border:1px solid #aab3bc;border-radius:2px}.copy-email:hover{background:#e9edf2}.copy-email:disabled{opacity:.65;cursor:wait}.copy-status{width:100%;font-size:.81rem;line-height:1.7;color:#43526a}.copy-status:empty{display:none}.action-note{font-size:.8rem;line-height:1.8;color:var(--muted);margin:14px 0 0}.action-note a{font-weight:bold}.commitment-note{border-left:3px solid #c7902b;padding:3px 0 3px 20px;margin:27px 0}.commitment-note>strong{font-size:.88rem}.commitment-note>p{font-size:.88rem;line-height:1.85;margin:7px 0 0;color:var(--muted)}
/* Arrival, practical planning, and the people who can help. */
.schedule{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:26px 0}.schedule>div{padding:22px;border:1px solid var(--line)}.schedule small{display:block;font-size:.83rem;margin-bottom:11px}.schedule strong{display:block;font:2rem/1.1 Expo,Impact,sans-serif}.rule-list{list-style:none;margin:24px 0;padding:0}.rule-list li{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:18px 0;font-size:.9rem}.rule-list span{color:var(--muted);text-align:right}.past-hours{margin-top:24px;border-bottom:1px solid var(--line);padding-bottom:18px}.past-hours>summary{cursor:pointer;font-size:.93rem;font-weight:bold;padding-block:9px}.past-hours .schedule{margin-bottom:0}.arrival-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;list-style:none;padding:0;margin:0}.arrival-steps li{border-top:1px solid #b69d6b;padding-top:25px;min-width:0}.step-number{display:block;font:5rem/.95 Expo,Impact,sans-serif;color:#aa7722;margin-bottom:23px}.arrival-steps h3{font-size:2.4rem;margin-bottom:20px}.arrival-steps p{font-size:.96rem;color:var(--muted);margin:0;line-height:1.85}.essentials{list-style:none;padding:0;margin:26px 0 0}.essentials li{padding:17px 0;border-bottom:1px solid var(--line);font-size:.96rem;color:var(--muted)}.essentials strong{color:var(--ink)}#bring{scroll-margin-top:110px}.page-visit .two-grid>div>h3{margin-bottom:23px}.page-visit .two-grid>div>p{color:var(--muted)}.hotel-list{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.hotel-list a{display:block;text-decoration:none;padding:18px 0;border-bottom:1px solid var(--line);font-size:.93rem;font-weight:bold}.hotel-list a:hover{text-decoration:underline}.hotel-list small{display:block;font-size:.75rem;color:var(--muted);margin-top:5px;font-weight:normal}.faq{max-width:1020px;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{position:relative;list-style:none;cursor:pointer;font-size:1rem;font-weight:bold;padding:27px 48px 27px 0;line-height:1.6}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:8px;top:23px;font:1.8rem/1 Arial,sans-serif;color:#926410}.faq details[open] summary:after{content:'−'}.faq details>div{padding:0 48px 27px 0;color:var(--muted);font-size:.98rem;line-height:1.85;max-width:880px}.contact-welcome{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:65px;margin-bottom:65px}.contact-welcome>img{width:100%;aspect-ratio:1.73;object-fit:cover}.contact-welcome h2{font-size:clamp(3.4rem,5vw,5rem);margin-bottom:23px}.contact-welcome p:not(.eyebrow){color:var(--muted);max-width:380px}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.contact-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--gold);padding:31px 27px}.contact-card h3{font-size:2.3rem;margin-bottom:20px}.contact-card>p{font-size:.93rem;line-height:1.85;color:var(--muted);margin-bottom:25px}.contact-card>.inquiry-action{margin-top:auto}.contact-card .button{min-height:48px;font-size:.79rem;padding:13px 16px;justify-content:space-between;width:100%}.contact-card .email-address{font-size:.75rem}.contact-card a{overflow-wrap:anywhere}.contact-card .email-tools{gap:9px}.contact-card .action-note{font-size:.76rem}
/* A final festival sign, then the useful links. */
.site-footer{background:var(--deep);color:#e3e9ef;padding:54px 0 27px}.footer-masthead{border-bottom:1px solid #ffffff2b;padding-bottom:40px;margin-bottom:44px}.footer-masthead>span{display:block;font:clamp(3.5rem,9.4vw,9.6rem)/.95 Expo,Impact,sans-serif;color:#f4f1e6;letter-spacing:-1px}.footer-masthead p{font:italic 1.23rem/1.5 Georgia,serif;color:#f1c775;margin:20px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:42px}.footer-brand img{width:92px;height:auto;margin-bottom:20px}.footer-brand p{font-size:.82rem;line-height:1.85;color:#a9bcd0;max-width:290px}.footer-grid h3{font:700 .66rem/1.5 Arial,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#f3c270;margin-bottom:24px}.footer-grid a{font-size:.82rem;text-decoration:none;display:block;margin:12px 0}.footer-grid a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff24;margin-top:32px;padding-top:25px;color:#9bb1c8;font-size:.69rem}
/* Responsive layouts preserve touch targets and the full control set. */
@media(min-width:1450px){.hero-inner{padding-block:76px 60px}.hero h1{font-size:8.6rem}.pour-experience{max-width:530px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.nav{gap:19px}.nav>a{font-size:.77rem}.brand span{font-size:1.3rem}.hero-inner{gap:40px}.hero h1{font-size:8vw}.hero .button{font-size:.78rem;padding-inline:15px}.festival-story{gap:45px}.festival-story-copy h2{font-size:5.3vw}.impact-layout{gap:45px}.page-heading{gap:40px}.filter-bar{align-items:start;flex-direction:column}.search{width:min(100%,600px)}.contact-grid{grid-template-columns:1fr 1fr}.brew-card{padding:24px;gap:17px}.brew-card h3{font-size:1.7rem}.producer-mark{flex-basis:57px}.ticket-card{padding:33px}.ticket-emblem{right:26px;width:66px;height:66px;font-size:.96rem}.ticket-card h3{max-width:245px;font-size:3rem}.release-panel{gap:40px;padding:36px}.split{gap:45px}.experience-copy{padding:33px}.experience-music .experience-copy{padding:30px}.footer-grid{gap:30px}}
@media(max-width:1050px){.header-inner{height:78px;gap:15px}.brand{margin-right:auto}.brand img{width:67px;height:51px}.brand span{font-size:1.37rem}.menu-toggle{display:block;min-height:44px;padding:9px 16px;background:transparent;border:1px solid #1024414a;font-size:.82rem;font-weight:bold;color:var(--navy)}.mobile-ticket{display:block;padding:11px 16px;min-height:44px;background:var(--gold);font-size:.8rem;font-weight:bold;text-decoration:none}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 32px 28px;box-shadow:0 20px 25px #081a3012;max-height:calc(100dvh - 80px);overflow:auto}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav>a{font-size:1rem;padding:15px 4px;border-bottom:1px solid var(--line)}.nav .button{margin-top:15px;align-self:start;min-width:170px}.nav>a:not(.button):after{display:none}.nav>a[aria-current=page]{color:#98620a}.hero-inner{padding-top:58px;gap:32px}.hero h1{font-size:8vw}.hero .eyebrow{font-size:.61rem;letter-spacing:1.5px}.hero-copy>p:not(.eyebrow):not(.hero-tagline){font-size:.92rem}.hero .actions{flex-direction:column;align-items:flex-start;gap:10px}.hero .button{min-width:225px;font-size:.81rem;justify-content:space-between}.pour-topline{font-size:.5rem;letter-spacing:1px}.pour-scene{border-radius:105px 105px 8px 8px}.scene-caption{font-size:.5rem;letter-spacing:1px}.pour-meter>span{font-size:.64rem}.motion-toggle{font-size:.68rem;padding-inline:9px}.pour-controls{gap:6px}.pour-meter{margin-right:2px}.scene-bottom{font-size:1.2rem;letter-spacing:1.3px}.event-bar>.wrap{gap:23px}.event-bar .detail+.detail{padding-left:23px}.detail strong{font-size:1.65rem}.detail small{font-size:.7rem}.brew-preview{grid-template-columns:repeat(4,minmax(0,1fr))}.brew-tile:nth-child(4){border-right:0}.brew-tile:nth-child(-n+4){border-bottom:1px solid var(--line)}.brew-logo{height:90px}.brew-tile>span{font-size:.72rem}.experience-grid{gap:24px}.food-marks{gap:14px;padding:22px}.food-marks img{height:58px}.impact-copy .actions{flex-direction:column;align-items:start}.impact-stats strong{font-size:4.3rem}.page-heading h1{font-size:6.8vw}.page-heading{grid-template-columns:1.4fr 1fr}.page-heading>p{font-size:.93rem}.vendor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sponsor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ticket-kicker{padding-right:0;max-width:190px}.ticket-emblem{top:76px;width:59px;height:59px;font-size:.87rem;right:24px}.ticket-card h3{max-width:220px;font-size:2.65rem}.ticket-card>p{padding-top:8px}.contact-welcome{gap:40px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4;display:flex;flex-wrap:wrap;gap:8px 25px}.footer-grid>div:last-child h3{flex-basis:100%;margin:0}.footer-grid>div:last-child a{margin:0}}
@media(max-width:800px){.wrap{width:calc(100% - 48px)}.section{padding:72px 0}.section-head{align-items:start;gap:24px;flex-direction:column;margin-bottom:33px}.section-aside{max-width:540px}.section-head .button{min-height:47px}.hero-inner{grid-template-columns:1fr;gap:48px;padding-block:48px 32px}.hero-copy{max-width:600px}.hero h1{font-size:clamp(5.7rem,12.5vw,7.8rem)}.hero .eyebrow{font-size:.66rem;margin-bottom:31px}.hero-copy>p:not(.eyebrow):not(.hero-tagline){max-width:520px;font-size:1rem}.hero-tagline{font-size:1.85rem}.hero .actions{flex-direction:row;align-items:stretch}.hero .button{min-width:0;padding-inline:22px}.hero-footnote{max-width:540px}.pour-experience{max-width:510px;justify-self:center}.pour-topline{font-size:.61rem;letter-spacing:1.6px}.pour-scene{border-radius:135px 135px 8px 8px}.scene-caption{font-size:.6rem;letter-spacing:1.4px}.scene-bottom{font-size:1.55rem;letter-spacing:1.6px}.motion-toggle{font-size:.78rem;padding-inline:12px}.pour-meter>span{font-size:.72rem}.pour-controls{gap:9px}.pour-hint{font-size:.7rem}.hero-baseline{padding-block:19px;font-size:.58rem;letter-spacing:1.4px}.event-bar>.wrap{grid-template-columns:1fr;gap:18px;padding-block:27px}.event-bar .detail{display:grid;grid-template-columns:180px 1fr;gap:2px 16px;align-items:center}.event-bar .detail+.detail{border-left:0;border-top:1px solid #6043143b;padding:17px 0 0}.detail>span{grid-row:1/3;font-size:.59rem}.detail strong{margin:0 0 4px;font-size:1.7rem}.detail small{font-size:.71rem}.festival-story{grid-template-columns:1fr;gap:35px}.festival-photo>img{aspect-ratio:1.6;object-position:center 46%}.festival-photo .photo-label{font-size:1.9rem;max-width:460px;margin-inline:25px}.festival-story-copy h2{font-size:clamp(3.6rem,8vw,4.9rem)}.festival-story-copy h2 br{display:none}.festival-story-copy h2 em{display:block}.festival-story-copy h2 em br:after{content:' '}.festival-story-copy>p{max-width:630px}.story-links{max-width:630px}.experience-grid{grid-template-columns:1fr 1fr;gap:22px}.experience-copy{padding:27px}.experience-copy h3{font-size:2.75rem}.experience-music .experience-copy{padding:27px}.experience-copy p:not(.eyebrow){font-size:.91rem}.experience-music>img{aspect-ratio:1.65}.food-marks{grid-template-columns:1fr 1fr;gap:20px;padding:24px}.food-marks img{height:64px}.impact-layout{grid-template-columns:1fr;gap:50px}.impact-copy h2{font-size:4.5rem}.impact-copy>p{max-width:650px}.impact-copy .actions{flex-direction:row}.impact-stats{max-width:580px}.impact-proof li{padding-block:25px}.impact-proof strong{font-size:2rem}.sponsor-strip{gap:22px}.sponsor-strip img{height:77px}.cta{padding:48px 0}.cta .wrap{align-items:start;flex-direction:column;gap:28px}.cta h2{font-size:3.5rem}.page-hero{padding:32px 0 45px}.page-overline{margin-bottom:31px;padding-bottom:22px}.page-overline>a{font-size:.58rem;letter-spacing:.7px}.page-overline .eyebrow{font-size:.6rem;letter-spacing:1.5px}.page-heading{grid-template-columns:1fr;gap:25px}.page-heading h1{font-size:clamp(3.8rem,8.7vw,5.3rem);max-width:750px}.page-heading>p{font-size:1rem;max-width:650px}.subnav{gap:13px 25px;margin-top:28px}.split{grid-template-columns:1fr;gap:42px}.split>div{min-width:0}.photo-frame img{aspect-ratio:1.4}.page-about .photo-frame{max-width:560px}.page-about .photo-frame img{aspect-ratio:1}.three-grid{grid-template-columns:1fr;gap:32px}.info-card{padding:30px}.two-grid{gap:26px}.ticket-card{padding:30px}.ticket-emblem{position:static;margin:0 0 25px;order:0;width:75px;height:75px;font-size:1.1rem}.ticket-kicker{max-width:none;margin-bottom:28px}.ticket-card h3{font-size:2.7rem;max-width:none}.ticket-card .button{font-size:.76rem;padding-inline:14px;gap:10px}.release-panel,.decision-strip{grid-template-columns:1fr;gap:30px}.release-panel{padding:34px}.release-panel h2{font-size:3.1rem}.release-panel .inquiry-action{border-top:1px solid #dbc99f;padding-top:28px}.decision-strip>.button{justify-self:start}.decision-strip>div:first-child>h2{font-size:3rem}.cause-grid{grid-template-columns:1fr 1fr}.brew-grid{grid-template-columns:1fr 1fr}.brew-card{padding:25px;min-height:135px}.arrival-steps{grid-template-columns:1fr;gap:28px}.arrival-steps li{display:grid;grid-template-columns:70px 1fr;gap:0 24px}.step-number{grid-row:1/3;font-size:4rem;margin:0}.arrival-steps h3{font-size:2.3rem;margin-bottom:15px}.page-visit .two-grid{grid-template-columns:1fr;gap:38px}.vendor-grid,.sponsor-grid{grid-template-columns:1fr 1fr}.contact-welcome{grid-template-columns:1fr;gap:30px;margin-bottom:50px}.contact-welcome h2 br{display:none}.contact-welcome h2{font-size:3.7rem}.contact-welcome p:not(.eyebrow){max-width:600px}.contact-card{padding:28px 24px}.contact-card h3{font-size:2.1rem}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-grid>div:last-child{grid-column:auto;display:block}.footer-grid>div:last-child h3{margin-bottom:24px}.footer-grid>div:last-child a{margin:12px 0}.footer-bottom{font-size:.66rem;flex-direction:column;gap:10px}.footer-masthead>span{font-size:9.5vw}.footer-masthead p{font-size:1.1rem}}
@media(max-width:550px){.wrap{width:calc(100% - 36px)}.section{padding-block:58px}h2{font-size:2.95rem}h3{font-size:2.05rem}.topbar{padding-block:8px;letter-spacing:1.1px;font-size:.53rem}.topbar .wrap>span:last-child{display:none}.header-inner{height:74px;gap:9px}.brand{gap:7px}.brand img{width:57px;height:43px}.brand span{font-size:1.16rem;letter-spacing:0}.mobile-ticket{padding:10px 11px;font-size:.72rem}.menu-toggle{font-size:.73rem;padding:9px 12px}.nav{padding:16px 18px 24px}.hero-inner{padding-top:38px;gap:38px}.hero .eyebrow{font-size:.57rem;letter-spacing:1.3px;gap:9px;margin-bottom:28px}.eyebrow-rule{width:20px}.hero h1{font-size:12.8vw;letter-spacing:-.5px}.hero h1 em{font-size:1.4em;margin-top:12px;letter-spacing:-.7px}.hero-tagline{font-size:1.58rem;margin-top:25px;margin-bottom:20px}.hero-copy>p:not(.eyebrow):not(.hero-tagline){font-size:.95rem;line-height:1.85}.hero .actions{flex-direction:column;margin-top:25px;gap:10px}.hero .button{min-height:51px;padding-inline:20px;font-size:.85rem;justify-content:space-between}.hero-footnote{margin-top:27px;padding-top:18px;gap:5px}.hero-footnote>span{flex-basis:100%;font-size:.57rem}.hero-footnote>strong{font-size:.79rem}.hero-footnote>a{font-size:.79rem}.pour-topline{font-size:.49rem;letter-spacing:1.3px}.pour-scene{border-radius:100px 100px 8px 8px}.scene-caption{font-size:.48rem;letter-spacing:1.2px;left:10%;right:10%;top:13%}.scene-bottom{font-size:1.12rem;letter-spacing:1.5px;bottom:21px}.pour-controls{gap:7px;margin-top:15px}.pour-meter>span{font-size:.59rem;max-width:145px}.motion-toggle{font-size:.69rem;gap:6px;padding:9px}.reset-pour{min-width:42px;padding:8px}.pour-hint{font-size:.62rem}.hero-baseline{font-size:.49rem;gap:10px;letter-spacing:1px;align-items:center}.hero-baseline>a{font-size:.63rem;letter-spacing:0;min-height:32px;display:flex;align-items:center}.hero-baseline>a>span{margin-left:8px}.event-bar>.wrap{gap:16px;padding-block:24px}.event-bar .detail{grid-template-columns:1fr;gap:3px}.detail>span{grid-row:auto;font-size:.57rem;margin-bottom:3px}.detail strong{font-size:1.9rem;margin:0}.detail small{font-size:.72rem}.festival-photo{padding-bottom:12px}.festival-photo>img{aspect-ratio:1.3;object-position:center}.festival-photo .photo-label{margin:-28px 14px 0;padding:19px 20px;font-size:1.6rem}.photo-label span{font-size:.5rem;margin-bottom:8px;letter-spacing:1.5px}.festival-story{gap:28px}.festival-story-copy h2{font-size:3.25rem}.festival-story-copy h2 br{display:inline}.festival-story-copy h2 em{display:block}.festival-story-copy>p:not(.eyebrow){font-size:.95rem}.story-links a{font-size:.82rem;padding-block:16px}.section-head{gap:22px;margin-bottom:30px}.eyebrow{font-size:.62rem;letter-spacing:1.6px}.section-head .button{font-size:.8rem;padding-inline:18px}.section-aside{font-size:.9rem}.brew-preview{margin-top:25px}.brew-tile{padding:12px 4px 15px}.brew-logo{height:66px;padding:5px}.brew-tile>span{font-size:.57rem;line-height:1.5;margin-top:8px}.section-note{font-size:.77rem}.experience-grid{grid-template-columns:1fr;gap:25px}.experience-copy,.experience-music .experience-copy{padding:29px 27px}.experience-copy h3{font-size:3rem}.experience-copy p:not(.eyebrow){font-size:.94rem}.food-marks{grid-template-columns:repeat(4,1fr);gap:17px;padding:22px}.food-marks img{height:55px}.experience-music>img{aspect-ratio:1.92}.impact-layout{gap:38px}.impact-copy h2{font-size:3.4rem}.impact-copy>p{font-size:.94rem}.impact-stats{gap:25px;padding-block:24px}.impact-stats strong{font-size:4.2rem}.impact-stats span{font-size:.73rem}.impact-copy .actions{flex-direction:column;align-items:stretch}.impact-copy .button{justify-content:space-between}.impact-proof li{gap:19px;padding-block:23px}.impact-proof .impact-index{font-size:1.8rem}.impact-proof strong{font-size:1.9rem}.impact-proof li div>span{font-size:.82rem}.sponsor-strip{grid-template-columns:repeat(3,1fr);gap:25px 20px;padding-block:25px}.sponsor-strip img{height:68px}.sponsor-strip a:nth-last-child(-n+2){position:relative;left:50%}.cta{padding:42px 0}.cta h2{font-size:3.1rem}.cta p{font-size:.93rem}.cta .button{width:100%;justify-content:space-between}.page-hero{padding-top:27px;padding-bottom:36px}.page-overline{gap:15px;align-items:start;margin-bottom:27px;padding-bottom:20px}.page-overline .eyebrow{font-size:.57rem;letter-spacing:1.4px;max-width:205px}.page-overline>a{font-size:.52rem;white-space:normal;text-align:right;max-width:110px;line-height:1.6}.page-overline>a span{margin-left:3px}.page-heading{gap:22px}.page-heading h1{font-size:3.8rem}.page-heading>p{font-size:.94rem;line-height:1.85}.subnav{gap:12px 22px;font-size:.74rem}.split{gap:35px}.split h2{font-size:3rem}.split p{font-size:.95rem}.photo-frame img{aspect-ratio:1.15}.page-about .photo-frame img{aspect-ratio:.85}.photo-frame .photo-label{left:13px;right:13px;bottom:16px;font-size:1.5rem;padding:16px}.notice{padding:20px;font-size:.88rem;margin-bottom:26px}.two-grid,.contact-grid{grid-template-columns:1fr;gap:24px}.ticket-card{padding:29px}.ticket-card h3{font-size:3.2rem;max-width:235px}.ticket-emblem{position:absolute;top:62px;right:23px;width:67px;height:67px;font-size:1rem}.ticket-kicker{font-size:.59rem;letter-spacing:1.2px;margin-bottom:29px}.ticket-card>p{font-size:.94rem;padding-top:0}.ticket-card li{font-size:.9rem}.ticket-card .button{font-size:.84rem;padding-inline:18px}.ticket-bottom>p{font-size:.89rem}.ticket-card:nth-child(2) h3{max-width:220px}.release-panel{padding:27px 22px;border-left-width:4px;gap:25px}.release-panel h2{font-size:2.85rem}.release-panel p:not(.eyebrow){font-size:.93rem}.release-panel .inquiry-action{padding-top:23px}.inquiry-action>.button{width:100%;justify-content:space-between;font-size:.82rem;padding-inline:17px}.decision-strip{gap:26px}.decision-strip>div:first-child>h2{font-size:2.9rem}.decision-strip>div:first-child>p{font-size:.94rem}.decision-strip>.button{width:100%;justify-content:space-between}.action-note{font-size:.77rem}.email-address{font-size:.78rem}.copy-status{font-size:.78rem}.commitment-note{padding-left:17px}.filter-bar{padding:22px 19px;gap:22px}.search input{font-size:.87rem;padding-inline:13px}.filter-buttons{gap:7px}.filter-button{font-size:.74rem;padding:12px 13px}.brew-grid{grid-template-columns:1fr}.brew-card{padding:25px;min-height:120px;gap:23px}.producer-mark{flex-basis:72px;height:73px}.brew-card h3{font-size:1.95rem}.brew-card span{font-size:.64rem}.directory-intro{font-size:.94rem}.vendor-grid,.sponsor-grid{gap:14px}.vendor-card{padding:24px 16px}.vendor-card img{width:135px;height:101px;margin-bottom:23px}.vendor-card h3{font-size:1.65rem}.vendor-role{font-size:.75rem;margin-bottom:19px}.vendor-card a{font-size:.75rem}.sponsor-card{padding:23px 16px;font-size:.77rem}.sponsor-card img{height:85px;margin-bottom:18px}.sponsor-group>h3{font-size:2.2rem}.cause-grid{grid-template-columns:1fr}.cause{padding:17px 0;font-size:.9rem}.impact-number{font-size:17vw;margin-block:29px 23px;letter-spacing:-1px}.arrival-steps li{grid-template-columns:51px 1fr;gap:0 18px}.step-number{font-size:3.3rem}.arrival-steps h3{font-size:2rem}.arrival-steps p{font-size:.92rem}.schedule{gap:12px}.schedule>div{padding:16px 13px}.schedule small{font-size:.72rem}.schedule strong{font-size:1.7rem}.rule-list li{font-size:.84rem;gap:17px}.hotel-list{gap:0 22px}.hotel-list a{font-size:.85rem}.faq summary{font-size:.95rem;padding-block:23px;padding-right:39px}.faq summary:after{right:5px;top:20px}.faq details>div{font-size:.93rem;padding-right:16px;padding-bottom:24px}.contact-welcome{gap:26px;margin-bottom:38px}.contact-welcome h2{font-size:3.3rem}.contact-welcome>img{aspect-ratio:1.73}.contact-welcome p:not(.eyebrow){font-size:.94rem}.contact-card{padding:29px 25px}.contact-card h3{font-size:2.4rem}.contact-card .button{font-size:.83rem}.contact-card .email-address{font-size:.8rem}.contact-card .action-note{font-size:.78rem}.footer-masthead{margin-bottom:33px;padding-bottom:28px}.footer-masthead>span{font-size:10.5vw;line-height:1;letter-spacing:-.4px}.footer-masthead p{font-size:1.05rem;margin-top:15px}.site-footer{padding-top:38px}.footer-grid{gap:28px 22px}.footer-brand{grid-column:1/-1}.footer-brand img{width:86px}.footer-brand p{max-width:460px}.footer-grid>div:last-child{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 24px}.footer-grid>div:last-child h3{flex-basis:100%;margin:0 0 4px}.footer-grid>div:last-child a{margin:0}.footer-grid h3{font-size:.62rem;margin-bottom:20px}.footer-grid a{font-size:.8rem}.footer-bottom{line-height:1.8}}
@media(max-width:370px){.brand span{display:none}.hero h1{font-size:12.6vw}.pour-meter>span{font-size:.55rem}.pour-controls{gap:5px}.motion-toggle{font-size:.64rem;padding-inline:8px}.scene-caption{font-size:.43rem}.hero-baseline{letter-spacing:.4px}.ticket-card{padding:26px 23px}.ticket-card h3{font-size:2.8rem;max-width:190px}.ticket-card:nth-child(2) h3{max-width:190px}.ticket-emblem{right:18px;width:57px;height:57px;font-size:.86rem}.page-heading h1{font-size:3.3rem}.vendor-grid,.sponsor-grid{grid-template-columns:1fr}}
/* People lead the page: photographs and practical introductions arrive together. */
.photo-opening{padding:42px 0 48px;overflow:hidden;background:#f7f8fa;border-bottom:1px solid #dbe1e6}
.page-opening{display:grid;grid-template-columns:1.05fr 1fr;gap:66px;align-items:center}
.photo-opening .page-overline{border:0;margin:0 0 23px;padding:0}
.photo-opening .page-overline .eyebrow{font-size:.875rem;letter-spacing:1.5px;max-width:none}
.photo-opening .page-heading{display:block}
.photo-opening .page-heading h1{font-size:clamp(3.7rem,5.35vw,5.55rem);line-height:1;letter-spacing:0;max-width:670px;margin-bottom:24px}
.photo-opening .page-heading>p{font-size:1rem;line-height:1.8;max-width:570px;margin:0}
.photo-opening .subnav{gap:12px 23px;margin-top:27px;font-size:.875rem;line-height:1.5}
.photo-opening .subnav a{padding-block:6px;min-height:38px}
.page-people{margin:0;min-width:0;position:relative;height:440px;overflow:hidden;border-radius:3px;box-shadow:0 18px 44px #10244112}
.page-people>img{display:block;width:100%;height:100%;object-fit:cover}
.page-people:after{content:'';position:absolute;inset:52% 0 0;background:linear-gradient(transparent,#06182adc);pointer-events:none}
.page-people figcaption{position:absolute;left:25px;right:25px;bottom:24px;color:#fff7e5;font:1.55rem/1.12 Expo,Impact,sans-serif;letter-spacing:.5px;z-index:1}
.photo-opening-navy{background:var(--navy);color:#fffefa;border:0}
.photo-opening-navy .eyebrow{color:var(--gold)}
.photo-opening-navy .page-heading>p{color:#d6e0ec}
.photo-opening-navy .subnav a{color:#ffe1a2;border-bottom-color:#ffbd4380}
.photo-opening-navy .page-people{box-shadow:0 18px 50px #0002}
.page-vendors .page-people{height:360px}
.page-visit .page-people{height:440px}
.page-contact .page-people{height:455px}
.page-about .page-people{height:460px;max-width:455px;justify-self:end;width:100%}
.story-text{max-width:920px;margin-inline:auto}
.story-text h2{margin-bottom:26px}
.story-text p{font-size:1rem;line-height:1.85;color:var(--muted)}
.story-text .inquiry-action{margin-top:27px}
.story-text .action-note{font-size:.875rem}
.experience-music{display:flex;align-items:center}
.experience-music .experience-copy{padding:42px}
.festival-photo>img{aspect-ratio:1.4;object-position:50% 42%}
.hero .eyebrow,.hero-footnote>strong,.hero-footnote>a,.hero .button{font-size:.875rem}
.hero-footnote>span,.pour-topline,.scene-caption,.pour-meter>span,.pour-hint,.hero-baseline{font-size:.75rem}
.hero .eyebrow{letter-spacing:1.2px}
.hero-footnote{gap:4px 12px}
.hero-footnote>span{flex-basis:100%}
.hero .button{padding-inline:20px}
.hero .actions{gap:12px}
.pour-topline{letter-spacing:1px}
.scene-caption{letter-spacing:1px;top:12%;left:12%;right:12%;line-height:1.55}
.hero-logo{top:26%;width:88%}
.pour-meter>span{font-size:.75rem;max-width:none}
.motion-toggle{font-size:.875rem;min-height:44px}
.pour-hint{color:#c0cdda}
.hero-baseline{letter-spacing:1px}
.hero-baseline>a{font-size:.875rem;min-height:32px;display:flex;align-items:center}
@media(max-width:1150px){.page-opening{gap:38px}.page-people{height:410px}.photo-opening .page-heading h1{font-size:4.45rem}.photo-opening .page-overline .eyebrow{font-size:.8rem}.hero .actions{flex-direction:column;align-items:start}.hero .button{min-width:245px;justify-content:space-between}.hero .eyebrow{font-size:.875rem}.pour-topline{font-size:.75rem}.scene-caption{font-size:.75rem;left:11%;right:11%}.pour-controls{flex-wrap:wrap}.pour-meter{flex-basis:100%;margin-bottom:4px}.pour-meter>span{margin-bottom:7px}.pour-hint{text-align:left}}
@media(max-width:800px){.photo-opening{padding:30px 0 38px}.page-opening{grid-template-columns:1fr;gap:30px}.page-people{grid-row:1;height:280px}.page-opening-copy{grid-row:2}.photo-opening .page-heading h1{font-size:clamp(3.5rem,8vw,4.6rem);max-width:650px;margin-bottom:20px}.photo-opening .page-overline{margin-bottom:16px}.photo-opening .page-overline .eyebrow{font-size:.875rem}.photo-opening .page-heading>p{font-size:1rem;max-width:650px}.photo-opening .subnav{font-size:.875rem;margin-top:23px}.page-people figcaption{left:22px;right:22px;bottom:20px;font-size:1.5rem}.page-vendors .page-people{height:280px}.page-visit .page-people{height:300px}.page-about .page-people{height:320px;max-width:none}.page-contact .page-people{height:300px}.hero-atmosphere{height:780px;object-position:57% 50%}.hero:before{background:linear-gradient(90deg,#081a30db,#081a308f)}.hero:after{background:linear-gradient(180deg,transparent 380px,#081a30 780px)}.hero .actions{flex-direction:row;align-items:stretch}.hero .button{min-width:0}.hero .eyebrow{font-size:.875rem;letter-spacing:.8px}.pour-controls{flex-wrap:nowrap}.pour-meter{flex-basis:auto;margin-bottom:0;margin-right:6px}.pour-topline,.scene-caption{font-size:.75rem}.pour-hint{text-align:right}.hero-logo{top:26%}.hero-baseline{position:relative}.hero-baseline>span{max-width:300px}.experience-music .experience-copy{padding:30px}.festival-photo>img{aspect-ratio:1.6}.story-text h2{font-size:3.5rem}}
@media(max-width:550px){.photo-opening{padding:20px 0 34px}.page-opening{gap:25px}.page-people,.page-vendors .page-people{height:224px}.page-visit .page-people{height:235px}.page-about .page-people{height:285px}.page-contact .page-people{height:285px}.page-people figcaption{left:19px;right:19px;bottom:18px;font-size:1.38rem;line-height:1.2}.photo-opening .page-heading h1{font-size:3.45rem;line-height:1.02}.photo-opening .page-overline .eyebrow{font-size:.8rem;letter-spacing:1.2px}.photo-opening .page-heading>p{font-size:1rem}.photo-opening .subnav{gap:9px 20px}.photo-opening .subnav a{min-height:40px;display:flex;align-items:center}.hero-atmosphere{height:730px;object-position:56% 50%}.hero:before{background:linear-gradient(90deg,#081a30df,#081a309e)}.hero:after{background:linear-gradient(180deg,transparent 370px,#081a30 730px)}.hero .eyebrow{font-size:.875rem;letter-spacing:.8px}.hero .actions{flex-direction:column}.hero-copy>p:not(.eyebrow):not(.hero-tagline){font-size:1rem}.hero .button{font-size:.875rem}.hero-footnote>strong,.hero-footnote>a{font-size:.875rem}.hero-footnote>span{font-size:.75rem}.pour-topline{font-size:.75rem;letter-spacing:.4px}.pour-topline>span:last-child{display:none}.scene-caption{font-size:.75rem;letter-spacing:.3px;top:13%;left:12%;right:12%}.hero-logo{top:28%;width:89%}.scene-bottom{font-size:1.2rem;letter-spacing:1.1px}.pour-controls{flex-wrap:wrap;gap:9px}.pour-meter{flex-basis:100%;margin:0 0 3px}.pour-meter>span{font-size:.75rem}.motion-toggle{font-size:.875rem;min-height:44px;padding:10px 14px}.reset-pour{min-height:44px;min-width:44px}.pour-hint{font-size:.75rem;text-align:left}.hero-baseline{font-size:.75rem;letter-spacing:.3px;align-items:start;flex-direction:column;gap:8px}.hero-baseline>a{font-size:.875rem}.hero-baseline>span{max-width:none}.festival-photo>img{aspect-ratio:1.45}.experience-music .experience-copy{padding:29px 27px}.story-text h2{font-size:3rem}.story-text .inquiry-action>.button{font-size:.875rem}.photo-opening+.section{padding-top:44px}}
/* Complete producer marks with a clear destination on every card. */
.brew-grid{gap:20px;border:0;align-items:stretch}
.brew-card{padding:0;display:block;min-width:0;min-height:0;border:1px solid var(--line);background:#fff;transition:border-color .2s,box-shadow .2s}
.brew-card:hover{border-color:#b58b35;box-shadow:0 8px 24px #1024410a}
.producer-link{display:flex;flex-direction:column;align-items:center;text-align:center;height:100%;padding:28px 26px;text-decoration:none;color:var(--navy)}
.producer-link:focus-visible{outline-offset:4px}
.producer-mark{flex:none;width:100%;max-width:220px;height:142px;margin:0 auto 25px;padding:8px;border-radius:3px;display:flex;align-items:center;justify-content:center}
.producer-mark img{width:100%;height:100%;object-fit:contain}
.producer-copy{display:flex;flex-direction:column;align-items:center;flex:1;min-width:0;max-width:100%;width:100%}
.brew-card .producer-category{font:400 .75rem/1.6 Arial,Helvetica,sans-serif;letter-spacing:1px;text-transform:uppercase;color:#657183;margin-bottom:10px}
.brew-card h3{font-size:2rem;line-height:1.12;margin:0 0 18px;overflow-wrap:anywhere;max-width:100%}
.brew-card .producer-visit{font:700 .875rem/1.5 Arial,Helvetica,sans-serif;letter-spacing:0;text-transform:none;color:var(--navy);text-decoration:underline;text-underline-offset:5px;margin-top:auto;padding-top:9px;min-height:35px}
.producer-link:hover .producer-visit{color:#946009}
.producer-status{color:#675936;font-size:.875rem;line-height:1.6;margin:0 0 13px;max-width:265px}
.directory-links-note{font-size:.875rem;color:var(--muted);margin:-12px 0 29px;line-height:1.75}
.brew-tile>span{font-size:.75rem;line-height:1.55}
@media(max-width:1150px){.producer-link{padding:25px 20px}.producer-mark{height:130px}.brew-card h3{font-size:1.85rem}}
@media(max-width:800px){.brew-grid{gap:17px}.producer-link{padding:25px 22px}.producer-mark{height:140px}.brew-card h3{font-size:2rem}.brew-tile>span{font-size:.75rem}}
@media(max-width:550px){.brew-grid{grid-template-columns:1fr;gap:15px}.producer-link{display:grid;grid-template-columns:100px minmax(0,1fr);gap:22px;text-align:left;padding:24px 21px;align-items:center}.producer-mark{width:100px;height:112px;padding:3px;margin:0}.producer-copy{align-items:flex-start}.brew-card .producer-category{font-size:.75rem;letter-spacing:.5px;margin-bottom:8px}.brew-card h3{font-size:1.95rem;margin-bottom:10px}.brew-card .producer-visit{font-size:.875rem;min-height:35px;padding-top:7px}.producer-status{font-size:.875rem;margin-bottom:7px}.directory-links-note{font-size:.875rem}.brew-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.brew-tile{padding:18px 12px}.brew-tile:nth-child(even){border-right:0}.brew-tile:nth-child(-n+6){border-bottom:1px solid var(--line)}.brew-logo{height:92px;padding:8px}.brew-tile>span{font-size:.875rem;max-width:none}}
@media(max-width:370px){.producer-link{grid-template-columns:80px minmax(0,1fr);gap:17px;padding:21px 17px}.producer-mark{width:80px;height:94px}.brew-card h3{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover,.sponsor-card:hover{transform:none}.brew-tile:hover .brew-logo{transform:none}}
