:root{--ink:#173b32;--muted:#58645f;--red:#be1424;--line:#dce5e0;--mist:#f2f7f5;--rose:#fcf5f3;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--red);outline-offset:5px}a:hover{text-decoration-thickness:1px}img{display:block;width:100%;height:auto}.wrap{width:min(1320px,90%);margin-inline:auto}.topline{display:flex;justify-content:space-between;gap:20px;padding:9px 5%;background:var(--mist);font-size:12px}.topline a{text-decoration:underline;text-underline-offset:3px}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:110px}.brand{position:relative;display:block;flex-shrink:0;width:125px;height:72px;overflow:hidden}.brand img{position:absolute;max-width:none;width:151px;left:-13px;top:-40px}.header nav{display:flex;gap:30px;font-size:14px;font-weight:600}.header nav a:hover,.text-link:hover{color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--red);color:#fff;padding:15px 24px;border-radius:7px;font-size:16px;font-weight:600;line-height:1.5;transition:background .2s}.button:hover{background:#a41121}.button-small{padding:11px 20px;font-size:14px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:5%;padding-top:20px;padding-bottom:60px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:700;margin:0 0 20px;color:var(--red)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(44px,4.4vw,66px);line-height:1.08;letter-spacing:-.042em;margin:0}h1 em{color:#416e55;font-weight:400}.intro{max-width:425px;color:var(--muted);font-size:17px;margin:27px 0}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.text-link{font-size:14px;text-decoration:underline;text-underline-offset:5px}.hero-footnote{font-size:12px;letter-spacing:.12em;color:var(--muted);margin:40px 0 0}.hero-products{display:grid;grid-template-columns:1.1fr .85fr;align-items:center;gap:16px;min-height:445px}.hero-feature{background:var(--mist);border-radius:170px 170px 16px 16px;overflow:hidden;padding:42px 15px 18px;display:flex;flex-direction:column;align-items:center;min-width:0}.feature-note{font:italic 17px Georgia,serif;text-align:center;margin-bottom:15px}.hero-feature img{mix-blend-mode:multiply;aspect-ratio:1/1.15;object-fit:contain}.feature-caption{align-self:stretch;display:flex;justify-content:space-between;gap:10px;padding:15px 5px 0;font-size:14px;font-weight:600}.hero-secondary{align-self:end;margin-bottom:20px;border:1px solid var(--line);border-radius:16px;padding:12px 12px 16px;background:white;min-width:0}.hero-secondary img{aspect-ratio:1/1.65;object-fit:contain}.hero-secondary span{display:flex;gap:8px;align-items:center;font-size:14px;line-height:1.5;margin:12px 4px 0}.hero-secondary b{font-size:19px}.category-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.category-nav>p{font:italic 22px Georgia,serif;margin:0;flex-shrink:0}.category-nav nav{display:flex;gap:30px;flex-wrap:wrap}.category-nav a{font-size:14px;font-weight:600}.category-nav a:hover{text-decoration:underline;text-underline-offset:5px}.category-nav span{font-size:12px;color:#728278;margin-right:7px;font-weight:400}.section{padding-block:74px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:33px}.section-heading .eyebrow{margin-bottom:12px}h2{font-size:clamp(31px,3vw,45px);line-height:1.15;letter-spacing:-.035em;margin:0}.section-heading>p{margin:0;max-width:315px;color:var(--muted);font-size:16px}.rice-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.product{min-width:0}.product-image{overflow:hidden;background:#fff;border-radius:12px}.product-image img{object-fit:contain;aspect-ratio:1/1}.product-copy{padding-top:20px}.product-meta{font-size:12px;font-weight:600;letter-spacing:.1em;color:#626f67;margin:0 0 8px}.product h3{font-size:21px;font-weight:600;line-height:1.25;letter-spacing:-.02em;margin:0}.product-copy>p:not(.product-meta){font-size:16px;color:var(--muted);margin:12px 0 18px}.enquire{font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:14px;text-decoration:underline;text-decoration-color:#a8b9af;text-underline-offset:5px}.enquire:hover{color:var(--red)}.enquire span{font-size:19px}.rice-card{display:grid;grid-template-columns:.88fr 1fr;align-items:center;gap:24px;background:var(--mist);border-radius:14px;padding:24px}.rice-card:first-child{background:var(--rose)}.rice-card .product-image{background:transparent}.rice-card img{aspect-ratio:1/1.6;mix-blend-mode:multiply}.rice-card .product-copy{padding:0}.rice-card h3{font-size:25px}.rice-card .enquire{font-size:14px;line-height:1.7}.treat-section{background:#f7f9f8}.cookie-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.tin-card .product-image{border:1px solid #e5eae7}.tin-card .product-image img{padding:8px}.tin-card .product-copy{padding-inline:5px}.snack-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:45px;padding-top:35px;border-top:1px solid var(--line)}.snack-card{display:grid;grid-template-columns:.9fr 1fr;align-items:center;gap:23px}.snack-card .product-image img{aspect-ratio:1/1.12;object-fit:cover}.snack-card .product-copy{padding:0}.drinks-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.drink-card .product-image img{aspect-ratio:4/5;object-fit:cover}.drink-card .product-meta{font-size:12px}.drink-card .product-copy>p:not(.product-meta){min-height:48px}.essentials{display:grid;grid-template-columns:1.05fr 1fr;background:#fffae9;border-radius:16px;overflow:hidden}.oil-image img{height:100%;object-fit:cover;object-position:38% center;min-height:380px}.oil-copy{padding:42px 12%;align-self:center}.oil-copy h3{font-size:20px;margin:22px 0 10px}.oil-copy>p:not(.eyebrow){color:var(--muted);margin:0 0 24px}.oil-copy .button{font-size:14px;gap:12px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-top:75px;padding:50px;background:var(--mist);border-radius:16px}.contact>div>p:last-child{color:var(--muted);max-width:380px;margin:20px 0 0}.contact-links a{display:grid;grid-template-columns:1fr auto;padding:20px 0;border-bottom:1px solid #cddbd2;gap:5px}.contact-links a:first-child{padding-top:0}.contact-links span{font-size:12px;letter-spacing:.13em;color:#5a6d61}.contact-links strong{font-size:clamp(22px,2.3vw,32px);font-weight:400;grid-column:1;overflow-wrap:anywhere}.contact-links b{grid-column:2;grid-row:2;align-self:center;font-size:21px;font-weight:400}.contact-links a:hover strong{color:var(--red)}footer{padding:27px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}footer a{text-decoration:underline;text-underline-offset:4px}.skip{position:absolute;top:-100px;left:15px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}
@media(min-width:1600px){.hero{padding-top:40px;padding-bottom:70px}.hero-products{min-height:530px}}
@media(max-width:1100px){.header nav{gap:18px}.hero{gap:3%}.hero-products{gap:10px}.hero-footnote{font-size:12px}.category-nav{align-items:flex-start;flex-direction:column;gap:18px}.category-nav nav{justify-content:space-between;width:100%}.rice-card{padding:18px;gap:16px}.rice-card h3{font-size:22px}.cookie-grid{gap:18px}.drinks-grid{gap:18px;grid-template-columns:repeat(2,1fr)}.drink-card .product-image img{aspect-ratio:1/1.1}.drink-card .product-meta{font-size:12px}.snack-card{grid-template-columns:1fr}.snack-card .product-image img{aspect-ratio:1/1}.contact{gap:40px;padding:40px}.oil-copy{padding:35px 8%}}
@media(max-width:760px){.wrap{width:90%}.topline{font-size:12px}.topline span{max-width:48%}.header{min-height:unset;padding-block:10px 16px;flex-wrap:wrap;gap:6px}.brand{height:62px;width:106px}.brand img{width:133px;top:-35px}.header .button-small{padding:10px 16px;font-size:14px}.header nav{order:3;justify-content:space-between;width:100%;gap:12px;border-top:1px solid var(--line);padding-top:12px;font-size:14px}.hero{grid-template-columns:1fr;padding-top:26px;padding-bottom:35px;gap:25px}.hero h1{font-size:clamp(42px,9vw,64px);line-height:1.1}.intro{font-size:16px;margin:22px 0}.hero-footnote{font-size:12px;margin:25px 0 0}.hero-products{grid-template-columns:1.12fr .85fr;min-height:unset;gap:16px;max-width:540px;width:100%;margin-inline:auto}.hero-feature{padding-top:30px}.hero-feature img{aspect-ratio:1/1}.hero-secondary{margin-bottom:10px}.hero-secondary img{aspect-ratio:1/1.45}.feature-note{font-size:16px}.feature-caption{font-size:14px}.hero-secondary span{font-size:12px}.category-nav{padding:22px 0}.category-nav nav{display:grid;grid-template-columns:1fr 1fr;gap:16px}.category-nav a{font-size:14px}.section{padding-block:48px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:15px;max-width:100%}.section-heading h2{font-size:34px}.rice-grid{grid-template-columns:1fr;gap:18px}.rice-card{grid-template-columns:.85fr 1fr;padding:22px;gap:20px}.rice-card h3{font-size:23px}.rice-card .product-image img{max-height:310px}.cookie-grid{grid-template-columns:1fr;gap:34px}.tin-card{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.tin-card .product-copy{padding:0}.tin-card .product-image img{aspect-ratio:1/1.1;padding:0}.product h3{font-size:21px}.product-meta{font-size:12px}.product-copy>p:not(.product-meta){font-size:16px}.enquire{font-size:14px;gap:8px}.snack-grid{gap:20px;margin-top:30px}.snack-card{gap:16px}.snack-card h3{font-size:20px}.drinks-grid{gap:30px 18px}.drink-card .product-image img{aspect-ratio:4/5}.drink-card .product-meta{font-size:12px;letter-spacing:.04em}.drink-card .product-copy{padding-top:15px}.essentials{grid-template-columns:1fr}.oil-image img{min-height:unset;aspect-ratio:4/3}.oil-copy{padding:30px 8% 38px}.contact{grid-template-columns:1fr;margin-top:48px;padding:30px 7%;gap:30px}.contact h2{font-size:35px}.contact .eyebrow{margin-bottom:14px}.contact-links strong{font-size:25px}footer{flex-wrap:wrap;padding:24px 0}footer>span:nth-child(2){display:none}}
@media(max-width:400px){.topline>span{display:none}.topline{justify-content:center}.header nav{font-size:12px;gap:8px}.hero-actions{gap:20px}.hero-products{gap:10px}.hero-feature{padding-inline:10px}.feature-note{font-size:14px}.rice-card{grid-template-columns:.8fr 1fr;padding:18px;gap:14px}.rice-card h3{font-size:21px}.tin-card{grid-template-columns:1fr}.tin-card .product-image img{aspect-ratio:1/1}.snack-grid,.drinks-grid{grid-template-columns:1fr}.drink-card .product-meta{font-size:12px}.hero-footnote{letter-spacing:.04em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Festival lead image and light graphic accents. */
.festival-hero{position:relative;isolation:isolate;grid-template-columns:.95fr 1.05fr;gap:2%;padding-block:30px 52px}
.festival-hero:before{content:"";position:absolute;inset:4% -2% 5% 38%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse at 65% 40%,#e9f2df 0,transparent 62%),radial-gradient(ellipse at 20% 70%,#fce7e9 0,transparent 65%);pointer-events:none}
.festival-hero h1{font-size:clamp(46px,4.7vw,70px)}
.festival-hero h1 em{position:relative;display:inline-block}
.festival-hero h1 em:after{content:"";display:block;position:absolute;left:0;bottom:-9px;width:94%;height:8px;border-bottom:2px solid #93af76;border-radius:50%;transform:rotate(-2deg)}
.flavour-line{display:flex;flex-wrap:wrap;gap:10px 20px;max-width:450px;margin:32px 0 0;color:var(--muted);font-size:.875rem}
.flavour-line span{border-bottom:2px solid #efd2d6;padding-bottom:3px}.flavour-line span:nth-child(2){border-color:#b87781}.flavour-line span:nth-child(3){border-color:#a8be77}.flavour-line span:nth-child(4){border-color:#d8c974}
.festival-art{position:relative;min-width:0;padding-block:36px 22px;isolation:isolate}
.festival-posters{position:relative;height:490px;max-width:620px;margin-inline:auto}
.festival-poster{position:absolute;display:block;overflow:hidden;border:7px solid #fff;border-radius:20px;box-shadow:0 22px 40px -20px #244a354a;background:#fff;transition:box-shadow .3s,translate .3s;will-change:auto}
.festival-poster img{object-fit:cover;width:100%;height:100%}
.poster-range{width:53%;height:87%;left:23%;top:5%;z-index:3;transform:rotate(-2deg)}
.poster-range img{height:calc(100% - 45px);object-position:center 68%}
.poster-range span{height:45px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.875rem;font-weight:600}
.poster-strawberry{width:34%;height:68%;left:2%;top:16%;transform:rotate(-12deg);z-index:1}
.poster-grape{width:34%;height:69%;right:1%;top:17%;transform:rotate(10deg);z-index:2}
.fizz-graphics{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.fizz-graphics span{position:absolute;border:1px solid #b4c6a080;border-radius:50%;width:48px;height:48px;left:8%;top:2%;background:radial-gradient(circle at 30% 28%,#ffffffaa,transparent 62%)}
.fizz-graphics span:nth-child(2){width:26px;height:26px;left:83%;top:3%;border-color:#dca9b780}
.fizz-graphics span:nth-child(3){width:74px;height:74px;left:76%;top:74%}
.fizz-graphics span:nth-child(4){width:22px;height:22px;left:13%;top:82%;border-color:#dca9b780}
.fizz-graphics span:nth-child(5){width:13px;height:13px;left:92%;top:45%}
.category-nav{position:relative}.category-nav:before{content:"";position:absolute;left:0;top:-1px;width:22%;height:2px;background:linear-gradient(90deg,var(--red),#89a95c,transparent)}
.product-image{transition:box-shadow .3s}.product-image img{transition:transform .45s ease}
.button span,.enquire span{transition:transform .25s}.button:hover span,.enquire:hover span{transform:translate(2px,-2px)}
@media(hover:hover){.festival-poster:hover{translate:0 -6px;box-shadow:0 28px 45px -20px #244a3566}.product:hover .product-image{box-shadow:0 16px 30px -22px #173b3260}.product:hover .product-image img{transform:scale(1.025)}}
@media(prefers-reduced-motion:no-preference){
 .festival-art{animation:festival-enter 1.1s ease-out both}
 .hero-copy{animation:content-enter .8s ease-out both}
 .fizz-graphics span{animation:fizz-drift 4.2s ease-in-out 1}
 .fizz-graphics span:nth-child(2n){animation-delay:.2s;animation-duration:3.8s}
 .is-revealed{animation:content-enter .65s ease-out both}
}
@keyframes content-enter{from{opacity:.35;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes festival-enter{from{opacity:.35;translate:0 20px}to{opacity:1;translate:0 0}}
@keyframes fizz-drift{0%,100%{translate:0 0}50%{translate:5px -19px}}
@media(min-width:1600px){.festival-posters{height:525px}}
@media(max-width:1100px){.festival-posters{height:410px}.festival-poster{border-width:5px}.poster-range{width:55%;left:22%}.festival-hero h1{font-size:clamp(42px,5vw,60px)}}
@media(max-width:760px){.festival-hero{grid-template-columns:1fr;padding-block:24px 28px;gap:8px}.festival-hero:before{inset:42% -2% 0}.festival-hero h1{font-size:clamp(43px,10vw,64px)}.festival-hero .intro{max-width:440px;margin-top:26px}.flavour-line{margin-top:25px;gap:8px 16px;font-size:.875rem}.festival-art{padding-block:24px 8px}.festival-posters{height:390px;max-width:490px}.poster-strawberry{height:67%;top:17%}.poster-range{height:91%;top:3%}.poster-grape{height:68%;top:18%}.fizz-graphics span:nth-child(3){top:76%}.poster-range span{font-size:.875rem;padding-inline:6px}}
@media(max-width:430px){.festival-posters{height:310px}.poster-range{width:55%;left:22%}.festival-poster{border-radius:14px}.poster-range span{font-size:.875rem;height:42px;padding:4px}.poster-range img{height:calc(100% - 42px)}.flavour-line{gap:7px 12px}}
@media(prefers-reduced-motion:reduce){.festival-art,.hero-copy,.fizz-graphics span,.is-revealed{animation:none}.festival-poster,.product-image,.product-image img,.button span,.enquire span{transition:none}.festival-poster:hover{translate:none}.product:hover .product-image img{transform:none}}
