.entry-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.entry-grid > a { position: relative; display: flex; flex-direction: column; gap: 12px; padding: 26px 24px 50px; border: 1px solid #dce2d2; border-radius: 14px; background: #f6f5ed; color: #303d26; text-decoration: none; box-shadow: 0 4px 12px #00000008; }
.entry-grid > a:hover { border-color: #639631; background: #edf2e6; }
.entry-grid strong { font-family: Calistoga, Georgia, serif; font-size: 24px; line-height: 1.3; font-weight: 400; }
.entry-grid span { font-size: 16px; line-height: 1.55; }
.entry-grid .entry-kicker { color: #52663f; font-size: 13px; font-weight: 700; }
.entry-grid .entry-arrow { position: absolute; bottom: 16px; right: 24px; font-size: 24px; }
.site-actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; margin-top: 22px; }
.site-button { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 12px 20px; border: 1px solid #486b2d; border-radius: 8px; background: #486b2d; color: white; font: 600 16px/1.4 system-ui,sans-serif; text-decoration: none; }
.site-button:hover { background: #354f22; color: white; }
.site-button--secondary { background: transparent; color: #3b5727; }
.site-text-link, .contact-privacy-link { text-decoration: underline; text-underline-offset: 3px; }
.site-text-link { color: #486b2d; }
.site-button:focus-visible, .entry-grid a:focus-visible, .site-text-link:focus-visible { outline: 3px solid #86a964; outline-offset: 4px; }
.shop-info, .service-box { padding: 28px; border-radius: 14px; background: #f5f5ed; border: 1px solid #dce2d2; }
.shop-info h2 { font-size: 28px; color: #486338; margin-bottom: 20px; }
.shop-info h3 { font-weight: 700; margin-bottom: 8px; }
.shop-info__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.shop-info p, .service-box p { line-height: 1.7; margin-top: 12px; }
.section-intro { margin: 18px 0; line-height: 1.7; }
.product-detail { border-top: 1px solid #dce2d2; border-bottom: 1px solid #dce2d2; padding: 22px 0; }
.product-detail summary { cursor: pointer; font-weight: 700; color: #486338; }
.product-detail[open] > div { margin-top: 24px; }
.contact-status { margin-top: 18px; line-height: 1.6; font-family: system-ui,sans-serif; font-size: 17px; }
#submit-button:disabled { opacity: .6; cursor: wait; }
.skip-link { position: fixed; z-index: 11000; top: 8px; left: 8px; padding: 12px 18px; background: white; color: #283e19; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
@media (max-width: 700px) { .entry-grid, .shop-info__grid { grid-template-columns: 1fr; } .shop-info, .service-box { padding: 22px; } .site-actions { align-items: stretch; } .site-actions .site-button { width: 100%; } }
