@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
:root{--green:#164b35;--ink:#173b2c;--paper:#fffdf5;--lime:#dbed81;--line:#c9d5c6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 5%;border-bottom:1px solid var(--line)}.brand{font-family:'Playfair Display',serif;font-weight:600;font-size:28px;line-height:1.1;text-decoration:none;white-space:nowrap}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:.17em;margin-top:10px}nav{display:flex;align-items:center;gap:32px}nav a{text-decoration:none;font-size:14px;font-weight:600}.nav-contact{border:1px solid var(--green);padding:10px 20px;border-radius:4px}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;padding:52px 5% 0;gap:50px;background:var(--green);color:var(--paper)}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:700;margin:0 0 22px;line-height:1.7}.hero-copy{align-self:center;padding:25px 0 45px}h1,h2{font-family:'Playfair Display',serif;font-weight:500;line-height:1.07;letter-spacing:-.035em;margin:0}h1{font-size:clamp(48px,5.5vw,82px)}.intro{font-size:18px;max-width:460px;margin:26px 0 30px;color:#e4eee5}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:13px 23px;background:var(--lime);color:var(--ink);border-radius:4px;text-decoration:none;font-size:15px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#edf7b5;transform:translateY(-2px)}.small-note{font-size:13px;color:#d2e4d6;margin:16px 0 0}.hero-image{margin:0;position:relative;min-height:500px;background:#e3d49f;border-radius:150px 150px 0 0;overflow:hidden}.hero-image img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}.hero-image figcaption{position:absolute;bottom:0;width:100%;display:flex;justify-content:space-between;gap:14px;background:linear-gradient(transparent,rgba(0,0,0,.65));padding:60px 24px 22px;font-size:13px}.hero-image figcaption span:first-child{font-weight:700;letter-spacing:.1em;font-size:11px}.hero-bottom{grid-column:1/-1;border-top:1px solid #ffffff40;padding:20px 0;display:flex;justify-content:space-between;font-size:13px;color:#e0eade;letter-spacing:.03em}.experience{padding:90px 5%;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}h2{font-size:clamp(35px,3.5vw,52px)}.experience-body>p{font-size:20px;margin:0 0 30px;max-width:600px}.occasions>div{display:grid;grid-template-columns:36px 1fr;column-gap:15px;border-top:1px solid var(--line);padding:21px 0}.number{grid-row:1/3;font-size:13px;padding-top:4px;color:#65816e}h3{font-size:19px;margin:0;font-weight:600}.occasions p{margin:3px 0 0;font-size:15px;color:#4d6655}.story{background:#e8efd9;padding:75px 5%;display:grid;grid-template-columns:1fr 1fr;gap:80px}.story p:not(.eyebrow){font-size:17px;margin:0 0 20px;max-width:530px}.text-link{text-underline-offset:6px;font-size:15px;font-weight:600}.enquire{padding:90px 5%;display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}.enquire>div>p:not(.eyebrow){max-width:530px;margin:26px 0 0;color:#4d6655}.contact-card{border:1px solid var(--line);padding:38px;display:flex;align-items:flex-start;flex-direction:column;background:#fff}.contact-label{font-size:12px;font-weight:700;letter-spacing:.15em;margin:0 0 16px}.phone{font-size:clamp(22px,2.4vw,32px);text-decoration:none;font-weight:500;white-space:nowrap;margin-bottom:22px}.contact-card .button{width:100%}.email{margin-top:20px;font-size:16px;text-underline-offset:5px;overflow-wrap:anywhere}.contact-card p:last-child{font-size:13px;color:#607565;margin:20px 0 0}footer{background:var(--green);color:var(--paper);padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a:last-child{font-size:13px}footer .brand{font-size:24px}a:focus-visible{outline:3px solid #c18a27;outline-offset:5px}section{scroll-margin-top:20px}@media(max-width:850px){nav{gap:16px}.hero{gap:30px;padding-top:35px}.hero-image{min-height:430px}.experience,.story,.enquire{gap:35px}.contact-card{padding:25px}}@media(max-width:650px){header{padding:20px 6%;align-items:flex-start}.brand{font-size:23px}nav>a:not(.nav-contact){display:none}.nav-contact{font-size:12px;padding:8px 12px}.hero{grid-template-columns:1fr;padding:30px 6% 0;gap:0}.hero-copy{padding:12px 0 35px}h1{font-size:54px}.intro{font-size:17px}.hero-image{min-height:410px;border-radius:120px 120px 0 0}.hero-bottom{gap:20px;font-size:12px}.experience,.story,.enquire{grid-template-columns:1fr;padding:55px 6%;gap:30px}.experience-body>p{font-size:18px}.eyebrow{font-size:11px;margin-bottom:16px}.contact-card{padding:28px}footer{align-items:flex-start;flex-direction:column;padding:30px 6%;gap:12px}footer p{margin:8px 0 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.story{grid-template-columns:.8fr 1.2fr;align-items:center}.story-photo{margin:0;max-width:400px;width:100%;justify-self:center}.story-photo img{display:block;width:100%;height:auto;border-radius:100px 100px 4px 4px}.story-copy{display:grid;gap:28px}.story-copy h2{font-size:clamp(35px,3.3vw,50px)}@media(max-width:650px){.story{grid-template-columns:1fr}.story-photo{max-width:320px}.story-copy{gap:24px}}
.ingredients{padding:0 5% 75px}.ingredient-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:32px}.ingredient-heading>p{max-width:360px;margin:0;color:#4d6655;font-size:17px}.ingredients figure{margin:0}.ingredients img{display:block;width:100%;max-height:580px;object-fit:cover;border-radius:8px}.ingredients figcaption{font-size:14px;color:#607565;margin-top:15px}@media(max-width:650px){.ingredients{padding:0 6% 55px}.ingredient-heading{flex-direction:column;align-items:start;gap:20px}.ingredients img{max-height:none;object-fit:contain}.ingredients figcaption{font-size:13px}}
.brand span{font-size:12px;letter-spacing:.1em;font-weight:500;margin-top:7px}
.hero{grid-template-columns:.9fr 1.1fr}.hero-image{min-height:0;border-radius:55px 55px 0 0;align-self:center;aspect-ratio:3/2}.hero-image img{object-fit:contain}.ingredients img{height:460px;max-height:none;object-fit:contain;background:#e8efd9}.ingredients figure{max-width:850px;margin:0 auto}@media(max-width:650px){.hero{grid-template-columns:1fr}.hero-image{min-height:0;border-radius:35px 35px 0 0}.ingredients img{height:390px}}

.experience .section-heading h2{font-size:clamp(32px,3.1vw,46px);line-height:1.15}.ingredient-heading>p{max-width:460px}.menu{padding:60px 5%;text-align:center;background:var(--green);color:var(--paper)}.menu h2{font-size:clamp(32px,3vw,44px)}.menu p{font-size:clamp(17px,2vw,22px);margin:20px auto 0;max-width:700px}.menu strong{font-weight:600}@media(max-width:650px){header{flex-wrap:wrap;gap:18px}nav{width:100%;flex-wrap:wrap;justify-content:space-between;gap:12px}nav>a:not(.nav-contact){display:inline-block;font-size:14px}.nav-contact{font-size:14px}.menu{padding:45px 6%}}

header{position:sticky;top:0;z-index:100;background:#e6e8e6;box-shadow:0 2px 12px #173b2c12;padding-top:16px;padding-bottom:16px}.header-brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-logo{display:block;width:42px;height:56px;object-fit:contain;flex-shrink:0;border-radius:4px}.header-brand .brand-name{display:block;font-family:"Playfair Display",serif;font-size:28px;font-weight:600;line-height:1.1;letter-spacing:normal;margin:0}.header-brand .brand-tagline{font-family:"DM Sans",sans-serif;font-size:12px;font-weight:500;letter-spacing:.1em;margin-top:7px;line-height:1.1}html{scroll-padding-top:110px}@media(max-width:650px){header{padding:12px 6%;gap:12px}.brand-logo{width:36px;height:48px}.header-brand .brand-name{font-size:23px}html{scroll-padding-top:165px}}
header{position:sticky;top:0;z-index:100;background:var(--paper);box-shadow:0 2px 10px #173b2c0a}.header-phone{font-size:16px;font-weight:700;white-space:nowrap}html{scroll-padding-top:120px}@media(max-width:850px){nav{gap:18px}nav>a:not(.header-phone):not(.nav-contact){display:none}}@media(max-width:650px){header{align-items:center;gap:14px;flex-wrap:wrap;padding:15px 6%}nav{gap:10px;flex-wrap:wrap}nav>.header-phone{display:inline-block;font-size:15px}nav>.nav-contact{display:none}.brand{font-size:23px}.brand span{font-size:12px}html{scroll-padding-top:145px}}
