/* Shopping and product information, shared by complete standalone HTML pages. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.unit-price{font-size:13px;margin:0 0 20px;line-height:1.5;color:var(--ink,#204f47)}
.flavor-notes{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 16px}.flavor-notes span{font-size:11px;border:1px solid #204f4738;border-radius:30px;padding:6px 12px;text-transform:uppercase;letter-spacing:.07em}
.quick-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 24px;border-block:1px solid #204f4733;padding:18px 0}.quick-facts div{display:flex;flex-direction:column-reverse;gap:4px}.quick-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em}.quick-facts dd{margin:0;font-size:24px;font-weight:800;line-height:1.25}
.nutrition-jump{display:block;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px;margin:16px 0}.nutrition-panel{padding:20px 0}.nutrition-panel h3{font-size:27px;line-height:1.2;margin:0 0 8px}.nutrition-panel .nutrition-serving{font-size:13px;margin:0 0 14px}.nutrition-calories{display:flex;align-items:center;justify-content:space-between;border-block:4px solid currentColor;padding:8px 0}.nutrition-calories strong{font-size:34px}.nutrition-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.nutrition-table tr{border-bottom:1px solid #204f4730}.nutrition-table th,.nutrition-table td{padding:9px 0}.nutrition-table th{font-weight:500}.nutrition-table td,.nutrition-table thead th:last-child{text-align:right}.nutrition-table thead{font-size:11px}.nutrition-panel h4{margin:25px 0 8px;font-size:16px}.nutrition-panel .ingredient-list{font-size:13px;line-height:1.8}.nutrition-panel .nutrition-note{font-size:11px;line-height:1.6;margin-top:18px}#nutrition{scroll-margin-top:100px}
.shop-tools{flex-wrap:wrap;gap:12px}.shop-tools #flavor-filter{border:1px solid #204f4740;border-radius:30px;padding:13px 18px;background:var(--cream,#fffdf7);color:inherit;font:inherit;font-size:13px;min-width:170px}.shop-tools .filters{flex:1 1 100%}
#bag-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(490px,100%);max-width:100%;height:100dvh;max-height:100dvh;border:0;padding:0;background:var(--cream,#fffdf7);color:#204f47;box-shadow:-10px 0 60px #173e3720;overflow:hidden}#bag-drawer[open]{display:flex;flex-direction:column;animation:bag-slide .28s ease-out}#bag-drawer::backdrop{background:#123a345c;backdrop-filter:blur(3px)}body.bag-open{overflow:hidden}.drawer-heading{display:flex;justify-content:space-between;align-items:center;padding:25px 26px 22px;background:#dcefe7;border-bottom:1px solid #204f471f}.drawer-heading .eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.13em}.drawer-heading h2{font-size:34px;line-height:1.2;margin:5px 0 0}.drawer-heading h2 span{display:block;font-size:12px;font-weight:500;margin-top:8px}.drawer-close{border:1px solid #204f4750;color:inherit;background:transparent;border-radius:50%;width:42px;height:42px;font-size:26px;cursor:pointer}.drawer-content{overflow-y:auto;overscroll-behavior:contain;flex:1;padding:0 24px}.drawer-item{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;padding:24px 0;border-bottom:1px solid #204f4726}.drawer-item>img{width:88px;height:110px;object-fit:contain;background:#eaf3e8;border-radius:10px}.drawer-item-copy>a{font-weight:800;font-size:16px;text-decoration:none}.drawer-item-copy>p{font-size:11px;line-height:1.5;margin:7px 0 12px}.drawer-item-copy>b{display:block;margin-top:12px;font-size:14px}.drawer-quantity-row{display:flex;gap:16px;align-items:center}.drawer-quantity-row .quantity{height:34px;max-width:115px}.drawer-quantity-row .quantity button{width:32px;min-width:28px;height:32px;padding:0}.drawer-quantity-row .quantity input{width:40px;height:32px;padding:0;background:transparent}.drawer-quantity-row .remove{font-size:11px;margin:0}.drawer-footer{padding:22px 26px max(20px,env(safe-area-inset-bottom));border-top:1px solid #204f4726;background:#fffdf7}.drawer-subtotal{display:flex;justify-content:space-between;font-size:20px}.drawer-footer p{font-size:11px;margin:10px 0 18px}.drawer-footer .button{width:100%;justify-content:center}.drawer-continue{display:block;border:0;background:none;color:inherit;text-decoration:underline;text-underline-offset:4px;font:inherit;font-size:12px;margin:16px auto 0;cursor:pointer}.drawer-empty{text-align:center;padding:65px 8px}.drawer-empty>span{display:block;font-size:56px}.drawer-empty h3{font-size:25px;margin:15px 0}.drawer-empty p{font-size:14px;line-height:1.6;margin-bottom:25px}.just-added{background:#173e37!important;color:white!important}.mobile-purchase{display:none}
.service-section{background:#f4f6ed}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1200px;margin:30px auto 65px}.service-card{display:block;border:1px solid #204f4725;padding:30px;border-radius:18px;text-decoration:none;background:#fffdf7;color:inherit;transition:transform .25s,border-color .25s}.service-card:hover{transform:translateY(-4px);border-color:#287c70}.service-card>span{font-size:10px;letter-spacing:.08em;text-transform:uppercase}.service-card h3{font-size:28px;line-height:1.15;margin:22px 0 14px}.service-card p{font-size:14px;line-height:1.7;margin:0 0 24px}.service-card b{font-size:12px}.home-faq{max-width:780px;margin:auto}.home-faq>h3{font-size:30px;margin:0 0 20px}.home-faq details{border-top:1px solid #204f472b;padding:18px 0}.home-faq summary{cursor:pointer;font-size:15px;font-weight:700}.home-faq p{font-size:14px;line-height:1.75;margin-top:14px}.home-faq>a{display:inline-block;font-size:12px;margin-top:20px}.reveal-once{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.reveal-once.is-visible{opacity:1;transform:none}.hero.motion-paused .hero-product,.hero.motion-paused .fruit{animation-play-state:paused!important}@keyframes bag-slide{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(max-width:900px){.service-grid{gap:12px}.service-card{padding:22px}.service-card h3{font-size:24px}}
@media(max-width:700px){.service-grid{grid-template-columns:1fr;margin-bottom:40px}.service-card{padding:25px}.service-card h3{font-size:27px;margin-top:16px}.home-faq>h3{font-size:27px}.shop-tools #search{width:100%;flex:1 1 100%}.shop-tools #sort,.shop-tools #flavor-filter{flex:1 1 calc(50% - 12px);min-width:0;width:auto;font-size:12px}.quick-facts dd{font-size:23px}.mobile-purchase:not([hidden]){position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:#fffdf7f5;backdrop-filter:blur(10px);border-top:1px solid #204f4733;box-shadow:0 -4px 20px #204f4710}.mobile-purchase>div{min-width:0}.mobile-purchase strong{display:block;font-size:12px;line-height:1.3}.mobile-purchase span{display:block;font-size:10px;margin-top:4px}.mobile-purchase .button{padding:13px 19px;white-space:nowrap;min-width:110px;font-size:12px}.drawer-heading{padding:20px}.drawer-content{padding:0 20px}.drawer-footer{padding:18px 20px max(18px,env(safe-area-inset-bottom))}.drawer-heading h2{font-size:30px}body[data-product-id] footer{padding-bottom:95px}.nutrition-table{font-size:13px}.nutrition-table thead th:last-child{max-width:130px}.product-information{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.reveal-once{opacity:1;transform:none;transition:none}#bag-drawer[open]{animation:none}.service-card{transition:none}}

/* Footer Instagram */
.footer-socials{display:flex;align-items:center;gap:12px;margin-top:20px}
.footer-instagram{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #204f4745;border-radius:50%;color:#204f47;background:transparent;text-decoration:none;cursor:pointer}
.footer-instagram svg{display:block;width:22px;height:22px;flex:none}

/* Confirmed contact details */
.footer-contact{margin-top:22px;font-size:12px;line-height:1.8}
.footer-contact .footer-contact-title{font-size:12px;font-weight:700;margin:0 0 9px;color:inherit}
.footer-contact address,.contact-details-card address{font-style:normal;line-height:1.8}
.footer-contact strong{font-size:12px;font-weight:600}
.contact-email{display:block;margin-top:8px}
.footer-contact a,.contact-details-card a,.wholesale-email a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.footer-brand{min-width:0}
.contact-details-card{background:#edf5ee;border:1px solid #204f4726;border-radius:16px;padding:24px;margin:24px 0}
.contact-details-card h3{font-size:21px;margin:0 0 16px}
.contact-details-card address{font-size:14px}
.contact-details-card p{font-size:14px;margin:16px 0 0}
.wholesale-email{font-size:14px;line-height:1.7;margin:0 0 22px}

/* Compact footer: balanced columns with a dedicated contact block. */
.site-footer{padding:38px 5.5% 20px;min-height:0}
.site-footer .footer-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.05fr .75fr 1fr 1.3fr;gap:28px;align-items:start}
.site-footer .footer-grid>div{display:block;min-width:0}
.site-footer .footer-brand{grid-column:auto}
.site-footer .footer-home{display:inline-block;line-height:0}
.site-footer .footer-logo{display:block;width:138px;height:auto;margin:0}
.site-footer .footer-brand>p{font-size:13px;line-height:1.6;max-width:225px;margin:13px 0 8px}
.site-footer .footer-meta{display:block;font-size:10px;line-height:1.6;color:#486257}
.site-footer .footer-socials{margin-top:14px}
.site-footer .footer-title{font-size:13px;line-height:1.4;font-weight:700;margin:0 0 13px;letter-spacing:0;text-transform:none}
.site-footer .footer-links{font-size:13px;line-height:1.5;gap:8px}
.site-footer .footer-links a{width:fit-content;max-width:100%}
.site-footer .footer-contact{margin:0;font-size:12px;line-height:1.75}
.site-footer .footer-contact address{font-size:12px;line-height:1.75}
.site-footer .footer-contact strong{font-size:12px;display:inline-block;margin-bottom:4px}
.site-footer .contact-email{font-size:12px;line-height:1.6;margin:10px 0 0}
.site-footer .footer-bottom{max-width:1280px;margin:26px auto 0;padding-top:16px;gap:12px 24px;align-items:center;flex-wrap:wrap;font-size:10px;line-height:1.5}
@media(max-width:1000px){
.site-footer .footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:'brand contact' 'explore service';gap:26px 40px}
.site-footer .footer-brand{grid-area:brand}.site-footer .footer-explore{grid-area:explore}.site-footer .footer-service{grid-area:service}.site-footer .footer-contact{grid-area:contact}
.site-footer .footer-brand>p{max-width:260px}
}
@media(max-width:600px){
.site-footer{padding:28px 22px 18px}
.site-footer .footer-grid{grid-template-areas:'brand brand' 'explore service' 'contact contact';gap:24px 18px}
.site-footer .footer-grid>.footer-brand{display:grid;grid-template-columns:minmax(0,1fr) 44px;column-gap:18px}
.site-footer .footer-home{grid-column:1;grid-row:1;justify-self:start}
.site-footer .footer-logo{width:122px}
.site-footer .footer-brand>p{grid-column:1/-1;max-width:none;margin:10px 0 5px;font-size:12px}
.site-footer .footer-meta{grid-column:1/-1}
.site-footer .footer-socials{grid-column:2;grid-row:1;margin:0;align-self:center}
.site-footer .footer-title{font-size:13px;margin-bottom:10px}
.site-footer .footer-links{font-size:12px;gap:8px;line-height:1.6}
.site-footer .footer-contact{border-top:1px solid #d0dccd;padding-top:18px}
.site-footer .footer-contact address{font-size:12px;line-height:1.6}
.site-footer .footer-contact strong{margin-bottom:2px}
.site-footer .contact-email{margin-top:7px}
.site-footer .footer-bottom{margin-top:20px;padding-top:14px;align-items:flex-start;flex-direction:row;gap:6px 16px;font-size:9px}
.site-footer .footer-bottom>span:first-child{flex-basis:100%}
body[data-product-id] .site-footer{padding-bottom:18px}
}
