@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--green:#193b30;--ink:#233d33;--cream:#f8f5ec;--pale:#edeedf;--gold:#a57b4b;--line:#d4d8c9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 'DM Sans',sans-serif}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a,button{transition:background .15s,color .15s}a:hover{color:#836039}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:absolute;left:12px;top:-90px;z-index:9;background:white;padding:8px}.skip:focus{top:4px}header{max-width:1440px;margin:auto;padding:22px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:23px;font-weight:600;letter-spacing:3px;line-height:1.2}.brand small{display:block;font-size:9px;letter-spacing:2.6px;margin-top:7px}.brand img{width:35px}nav{display:flex;gap:30px;align-items:center}nav a{text-decoration:none;font-size:14px}nav a[aria-current]{border-bottom:1px solid var(--gold)}nav a:last-child{border:1px solid var(--green);padding:9px 18px}.menu{display:none}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:670px}.hero-copy{padding:80px 6% 60px 11%}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.5px;margin:0 0 22px;text-transform:uppercase}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.04;margin:0 0 25px}h1{font-size:clamp(56px,6.2vw,92px);letter-spacing:-2.4px}h1 em,h2 em{font-weight:400;color:#7d7353}h2{font-size:clamp(39px,4.1vw,61px);letter-spacing:-1px}h3{font-size:31px;line-height:1.1;margin:15px 0}.lead{font-size:18px;line-height:1.75;max-width:510px}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin:30px 0}.button{display:inline-block;background:var(--green);color:#fff;padding:13px 23px;border:1px solid var(--green);text-decoration:none;font-size:13px;font-weight:600}.button:hover{background:#315444;color:white}.text-link{font-size:13px;font-weight:600;background:transparent;border:0;border-bottom:1px solid #98a28a;padding:0 0 3px;text-decoration:none}.hero-note{font-size:11px;margin-top:44px;color:#657064}.hero-image{margin:0;position:relative;min-height:600px;background:#6d6045}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute}.hero-image figcaption{position:absolute;bottom:0;right:0;left:0;padding:40px 30px 20px;background:linear-gradient(transparent,#17231ab3);color:white;font-family:Georgia,serif;font-style:italic;font-size:15px}.ribbon{display:flex;justify-content:space-around;gap:20px;background:var(--green);color:#f3f1df;padding:18px 5%;font-size:10px;letter-spacing:1.8px}.section{max-width:1440px;margin:auto;padding:94px 8%}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px}.large{font-family:'Libre Caslon Display',Georgia,serif;font-size:31px;line-height:1.4;margin-top:12px}.two-col p:first-child{margin-top:0}p{margin:0 0 20px}.intro h2{margin-bottom:48px}.pale{background:var(--pale)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:45px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.three-col article{border-top:1px solid #aeb7a5;padding-top:24px}.number{font-size:10px;letter-spacing:1.6px;font-weight:600}.three-col p{font-size:14px}.dates-feature{display:grid;grid-template-columns:1fr 1fr;gap:90px}.date-row{border-top:1px solid var(--line);display:flex;align-items:center;gap:26px;padding:20px 0;text-decoration:none}.date-day{font-family:Georgia,serif;font-size:47px;line-height:1}.date-row small{display:block;font-size:11px;color:#6c7568;margin-top:3px}.date-row strong{font-weight:500}.date-row .arrow{margin-left:auto;font-size:23px}.date-list>p{font-size:13px}.closing{background:var(--green);color:var(--cream);text-align:center;padding:85px 20px}.closing h2{font-size:clamp(43px,5vw,70px);margin-bottom:30px}.closing p:last-child{font-size:11px;margin:17px 0 0}.light{background:var(--cream);color:var(--green);border-color:var(--cream)}footer{padding:65px 8% 24px;max-width:1440px;margin:auto}.foot-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding-bottom:45px}.footer-name{font:35px 'Libre Caslon Display',Georgia,serif;text-decoration:none}.foot-top p{font-size:12px;margin-top:10px}.foot-top>div:not(:first-child) a{display:block;font-size:12px;text-decoration:none;margin-bottom:10px}.legal{border-top:1px solid var(--line);padding-top:25px;display:flex;gap:22px;align-items:center}.legal p{font-size:10px;margin:0}.legal p:last-child{margin-left:auto}.legal img{object-fit:contain;height:75px}.page-hero{max-width:1440px;margin:auto;padding:85px 8%;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(50px,5.7vw,78px)}.page-hero .lead{max-width:650px}.measure{max-width:650px}.timeline{margin-top:40px;max-width:900px}.timeline article{display:flex;gap:38px;padding:26px 0;border-top:1px solid var(--line)}.timeline article>span{font-size:12px;color:#7d7353;padding-top:15px}.timeline h3{margin:6px 0 12px}.faq{margin-top:40px;max-width:850px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:18px}details p{margin:15px 0 0;max-width:720px}.muted{font-size:12px;color:#687163}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.contact-line{display:block;text-decoration:none;font-family:Georgia,serif;font-size:24px;padding:20px 0;border-bottom:1px solid var(--line);margin-bottom:15px}.contact-line small{font:13px 'DM Sans',sans-serif;display:block;margin-top:6px}form{padding:35px;background:var(--pale)}label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}input,select,textarea{display:block;width:100%;min-width:0;padding:11px;border:1px solid #aeb6a2;background:var(--cream);color:var(--ink);margin-bottom:22px;border-radius:0}textarea{resize:vertical}form .actions{gap:18px;margin-bottom:10px}.prose{max-width:1000px}.prose h2{font-size:34px;margin-top:45px}.prose h2:first-child{margin-top:0}
@media(min-width:1600px){.hero{min-height:750px}.hero-copy{padding-top:110px}}@media(max-width:900px){header{padding:20px 5%}nav{gap:17px}.hero-copy{padding:55px 9%}.hero{min-height:570px}.hero-image{min-height:570px}.section{padding:65px 6%}.two-col,.dates-feature,.contact-grid{gap:35px}.three-col{gap:25px}.hero .actions{gap:17px}.ribbon{font-size:8px;letter-spacing:1px}.legal p:last-child{display:none}}@media(max-width:650px){header{flex-wrap:wrap}.menu{display:block;background:none;border:1px solid var(--line);padding:6px 10px;color:var(--green);font-size:12px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:12px 0}nav a:last-child{text-align:center;margin-top:8px}.hero{display:flex;flex-direction:column}.hero-copy{padding:45px 6% 35px}h1{font-size:65px}.hero-note{margin-top:28px}.hero-image{min-height:340px;max-height:400px}.ribbon{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:12px;padding:16px 4%}.section{padding:55px 6%}.two-col,.three-col,.dates-feature,.contact-grid{grid-template-columns:1fr;gap:28px}.intro h2{margin-bottom:28px}.large{font-size:27px}.section-head{display:block}.section-head>a{display:inline-block;margin-top:5px}.three-col article{padding-top:20px}.page-hero{padding:50px 6%}.page-hero h1{font-size:51px;letter-spacing:-1px}.foot-top{grid-template-columns:1fr 1fr}.foot-top>div:first-child{grid-column:1/-1}.legal{align-items:start;gap:15px}.legal p{font-size:9px}.legal img{width:55px;height:60px}.closing{padding:60px 6%}.contact-grid{gap:35px}form{padding:23px}.timeline article{gap:22px}.lead{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Portugal and imagery expansion */
.image-stories .measure-short{max-width:310px;font-size:14px}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:38px}.image-pair figure{margin:0;min-width:0}.image-pair img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.image-pair figcaption{padding:22px 0 0}.image-pair figcaption .eyebrow{font-size:9px}.image-pair figcaption p{font-size:14px;max-width:470px}.image-note{font-size:11px;color:#687163;margin-top:26px;margin-bottom:0}.portugal-feature{max-width:1440px;margin:auto;background:var(--pale);display:grid;grid-template-columns:1.05fr 1fr}.portugal-feature figure{margin:0;position:relative;min-height:650px}.portugal-feature figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:43% center}.portugal-feature figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#102017c9);color:#fff;padding:50px 22px 18px;font-size:11px}.portugal-copy{padding:70px 12%}.portugal-copy h2{font-size:58px}.portugal-copy .large{font-size:29px}.plan-status{border-left:2px solid var(--gold);padding:7px 0 7px 15px;font-size:12px;color:#65705f;margin:25px 0}.festival-panorama{max-width:1440px;margin:0 auto}.festival-panorama img{display:block;width:100%;height:auto;max-height:680px;object-fit:cover}.festival-panorama figcaption{font-size:11px;color:#687163;padding:12px 8%}.retreat-photo{padding-top:50px;padding-bottom:0}.retreat-photo figure{margin:0}.retreat-photo img{display:block;width:100%;height:400px;object-fit:cover;object-position:center 48%}.retreat-photo figcaption{font-size:11px;margin-top:12px;color:#687163}.portugal-detail{align-items:center}.portugal-detail figcaption{font-size:11px;color:#687163;padding-top:10px}.portugal-detail h2{font-size:54px}@media(max-width:1000px){nav{gap:18px}.portugal-copy{padding:50px 8%}.portugal-copy h2{font-size:47px}.portugal-feature figure{min-height:650px}}@media(max-width:760px){.brand{font-size:20px;letter-spacing:2px}nav{gap:13px}nav a{font-size:12px}nav a:last-child{padding:8px 11px}.portugal-feature{grid-template-columns:1fr}.portugal-feature figure{min-height:400px;max-height:500px}.portugal-feature figure img{object-position:center}.portugal-copy{padding:48px 6%}.image-pair{gap:24px}}@media(max-width:650px){.image-pair{grid-template-columns:1fr;gap:35px}.image-stories .section-head{margin-bottom:30px}.image-stories .measure-short{max-width:none;margin:20px 0 0}.image-pair figcaption{padding-top:18px}.portugal-copy h2,.portugal-detail h2{font-size:46px}.portugal-heading h1{font-size:57px}.festival-panorama img{height:340px;object-fit:cover;object-position:center}.festival-panorama figcaption{padding:12px 6%}.retreat-photo img{height:260px}.portugal-feature figure{min-height:370px}nav{gap:0}nav a{font-size:14px}}

/* Original circular Hayseed mark */
.brand img{width:68px;height:68px;object-fit:contain;border-radius:50%;flex-shrink:0}.brand{font-size:22px;letter-spacing:2.3px}.brand small{font-size:9px}.footer-name{display:flex;gap:15px;align-items:center}.footer-name img{width:62px;height:62px;object-fit:contain;border-radius:50%}header{padding-top:16px;padding-bottom:16px}@media(max-width:950px){nav{gap:17px}.brand img{width:58px;height:58px}.brand{font-size:20px;letter-spacing:2px}.brand small{letter-spacing:2px;font-size:8px}header{gap:18px}}@media(min-width:651px) and (max-width:800px){header{padding-left:4%;padding-right:4%;gap:12px}nav{gap:12px}nav a{font-size:11px}nav a:last-child{padding:8px}.brand{font-size:18px}.brand img{width:48px;height:48px}.brand small{letter-spacing:1.2px;font-size:7px}}@media(max-width:650px){.brand img{width:58px;height:58px}.brand{font-size:20px}.brand small{font-size:8px;letter-spacing:2px}nav a{font-size:14px}.footer-name{font-size:31px}}
