/* Nature composition: geometry, decorative surfaces and motion.
   All selectors are language-independent and leave commerce states intact. */
body[data-theme-layout]:not(.admin-root) {
  position: relative;
  isolation: isolate;
  --ui-radius-lg: 24px;
  --ui-radius-xl: 32px;
  --storefront-gutter: clamp(16px, 3vw, 48px);
  --storefront-section-gap: clamp(24px, 4vw, 56px);
}
body[data-theme-layout]:not(.admin-root) :is(button, a, input, select, textarea) { -webkit-tap-highlight-color: #204c3618; }

/* A lightweight botanical atmosphere sits behind the content, never over controls. */
.nature-atmosphere {
  position: absolute;
  inset: 90px 0 auto;
  height: min(1500px, 180vh);
  overflow: clip;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(ellipse at 95% 15%, #cbdcc150, transparent 42%), radial-gradient(ellipse at 0% 65%, #e4e6d950, transparent 38%);
}
.nature-atmosphere span { position: absolute; pointer-events: none; }
.nature-leaf {
  width: 54px;
  height: 100px;
  border-radius: 95% 0 95% 0;
  background: linear-gradient(135deg, #c7d6b7b0, #829e6840);
  box-shadow: inset 1px 1px 0 #ffffff80;
  rotate: var(--leaf-angle, 25deg);
}
.nature-leaf::after { content: ""; position: absolute; left: 48%; top: 12%; width: 1px; height: 76%; background: #78916245; rotate: 26deg; }
.nature-leaf-one { top: 6%; left: 1%; --leaf-angle: -35deg; }
.nature-leaf-two { top: 26%; right: 1%; --leaf-angle: 25deg; width: 80px; height: 140px; }
.nature-leaf-three { top: 69%; left: 3%; --leaf-angle: 55deg; width: 32px; height: 64px; }
.nature-leaf-four { top: 84%; right: 4%; --leaf-angle: -25deg; }
.nature-pollen { width: 14px; height: 14px; border: 1px solid #a8bc9290; border-radius: 50%; background: #eff3e680; }
.nature-pollen-one { top: 18%; right: 13%; }
.nature-pollen-two { top: 58%; left: 7%; width: 8px; height: 8px; }
body.nature-motion-enabled .nature-atmosphere span { animation: nature-drift 14s ease-in-out infinite alternate; }
body.nature-motion-enabled .nature-atmosphere span:nth-child(even) { animation-duration: 19s; animation-delay: -7s; }
@keyframes nature-drift { from { transform: translate3d(0, 0, 0) rotate(-6deg); } to { transform: translate3d(16px, -28px, 0) rotate(9deg); } }

/* The header feels like a quiet, generous frame around the shop. */
body[data-theme-layout]:not(.admin-root) .theme-u-head { min-height: 92px; }
body[data-theme-layout]:not(.admin-root) .theme-u-brand img { max-height: 64px; }
body[data-theme-layout]:not(.admin-root) :is(.theme-u-search, .theme-u-language select, .theme-u-currency select) { border-radius: 14px !important; }
body[data-theme-layout][data-theme-engine]:not(.admin-root) .theme-u-items .theme-u-search button { border-radius: 11px !important; background: #204c36 !important; }
body[data-theme-layout]:not(.admin-root) :is(.theme-u-nav-link.is-active, .theme-u-nav-link.active) { color: #204c36 !important; }
body[data-theme-layout]:not(.admin-root) .theme-u-nav-link::after { background: #709266 !important; }
body[data-theme-layout]:not(.admin-root) .header-cart-count { background: #204c36 !important; color: #fff !important; }

/* Main compositions keep the administrator's section order and sidebar choices. */
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-home__content { gap: clamp(28px, 4vw, 56px) !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .store-section[data-id^="gsb-"] { border-radius: 28px !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .store-section[data-id^="gsb-"] > .image-content-layer {
  width: 100% !important;
  inline-size: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) :is(.store-section[data-id="gsb-intro"], .store-section[data-id="gsb-services"]) { container-type: inline-size; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) :is(.gsb-hero, .gsb-services) { text-align: left; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero {
  display: grid !important;
  position: relative;
  isolation: isolate;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 64px);
  padding: clamp(28px, 5vw, 76px);
  min-height: 570px;
  background: linear-gradient(130deg, #f1f2e8 5%, #fbfcf6 60%, #e7eedc);
  overflow: hidden;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero::before {
  content: "";
  position: absolute;
  width: 48%;
  aspect-ratio: 1;
  right: -3%;
  top: 10%;
  border-radius: 48% 52% 64% 36% / 45% 38% 62% 55%;
  background: #cfdec170;
  border: 1px solid #b9cda73a;
  z-index: -1;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero::after {
  content: "";
  position: absolute;
  width: 110px;
  height: 180px;
  right: 4%;
  bottom: -70px;
  border-radius: 100% 0 100% 0;
  border: 1px solid #8aa57540;
  rotate: 25deg;
  z-index: -1;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero h1 {
  font-size: clamp(40px, 5.2vw, 72px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.055em;
  max-width: none;
  overflow-wrap: normal;
  word-break: normal;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > img { height: clamp(280px, 31vw, 450px) !important; max-height: 450px !important; border-radius: 40% 40% 28% 28%; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero p:not(.gsb-eyebrow) { font-size: 17px; line-height: 1.8; max-width: 40ch; text-align: left !important; margin-inline: 0 !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-actions { gap: 18px 28px; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-button { border-radius: 999px; padding: 16px 26px; min-height: 50px; box-shadow: 0 8px 24px #204c3614; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-services {
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: clamp(28px, 5vw, 64px);
  padding: clamp(28px, 5vw, 64px);
  background: #edf2e9;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-service-grid { gap: 16px; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-service-grid > a {
  padding: 28px;
  min-height: 180px;
  border-radius: 20px;
  background: #ffffffc4;
  border-color: #d9e2d1;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-service-grid > a:nth-child(even) { margin-top: 20px; margin-bottom: -20px; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-story {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(36px, 6vw, 84px) clamp(24px, 5vw, 64px);
  background: #204c36;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-story::after { content: ""; position: absolute; width: 360px; height: 360px; border-radius: 50%; border: 1px solid #d9e5cf1f; right: -150px; bottom: -210px; box-shadow: 0 0 0 40px #d9e5cf06, 0 0 0 80px #d9e5cf04; z-index: -1; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-story h2 { color: #fffef9 !important; max-width: 20ch; margin: 0 auto 20px; font-size: clamp(30px, 4vw, 52px) !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-story > p:not(.gsb-eyebrow) { color: #dae4d4 !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-story > :is(.gsb-eyebrow, a) { color: #c1d3af !important; }

/* Categories become a light visual index instead of another boxed panel. */
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon {
  gap: 14px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon > a { padding: 16px 18px !important; border-radius: 18px !important; border: 1px solid #dce3d7 !important; background: #ffffffb3 !important; gap: 14px; box-shadow: none !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .category-ribbon-icon { border-radius: 50% !important; background: #edf2e9 !important; width: 50px; height: 50px; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .store-section[data-id="featured-products"] { padding: 0 !important; border: 0 !important; background: transparent !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .store-section[data-id="hero-banner"] { border-radius: 28px !important; box-shadow: 0 16px 40px #204c360c !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .store-section[data-id="hero-banner"] .carousel-indicator.active { background: #204c36 !important; box-shadow: 0 0 0 2px #70926638 !important; }

/* Product photographs carry the composition; copy and actions have breathing room. */
body[data-theme-layout]:not(.admin-root) .product-body { padding: clamp(16px, 1.8vw, 24px) !important; gap: 12px; }
body[data-theme-layout]:not(.admin-root) .product-card { border-radius: 22px !important; }
body[data-theme-layout]:not(.admin-root) .product-image { border-radius: 0 !important; border-bottom: 1px solid #e4e9df !important; }
body[data-theme-layout]:not(.admin-root) .product-title { font-size: 16px !important; font-weight: 600 !important; }
body[data-theme-layout]:not(.admin-root) .product-description { font-size: 14px !important; line-height: 1.65 !important; }
body[data-theme-layout]:not(.admin-root) .product-card-btn { border-radius: 999px !important; font-weight: 600 !important; }
body[data-theme-layout]:not(.admin-root) .catalog-toolbar { padding: clamp(20px, 3vw, 36px) !important; border-radius: 24px !important; margin-bottom: 24px; }
body[data-theme-layout]:not(.admin-root) .catalog-toolbar :is(h1, h2) { font-size: clamp(32px, 3.5vw, 48px) !important; }
body[data-theme-layout]:not(.admin-root) .catalog-page-breadcrumb { margin-block: 12px 24px; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .theme-product-detail__summary { background: transparent !important; border: 0 !important; border-radius: 0 !important; padding: 8px 0 !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .detail-image-shell { border-radius: 28px !important; border: 1px solid #dce3d7 !important; box-shadow: 0 18px 48px #204c3609 !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-sale-card { padding: 16px 20px !important; border-radius: 16px !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-detail-cart-button { border-radius: 999px !important; min-height: 50px; }

/* Cart: one surface for each column, with a genuine empty state. */
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-hero {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  padding: 24px 0 32px;
  margin-bottom: 32px;
}
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-hero h1 { font-size: clamp(32px, 4vw, 50px) !important; margin-block: 8px 12px; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-stepper { order: -1; align-self: center; width: min(100%, 820px); border: 0 !important; background: transparent !important; gap: 8px; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-step { border-radius: 999px !important; min-height: 52px; box-shadow: none !important; gap: 10px; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-step::after { display: none !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-step > span { border-color: #dce3d7 !important; box-shadow: none !important; color: #617064; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-panel { padding: clamp(20px, 3vw, 32px) !important; border-radius: 24px !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-panel-head { margin-bottom: 24px; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-panel-head h2 { font-size: clamp(23px, 2.5vw, 30px) !important; font-weight: 600; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-side { border: 0 !important; background: transparent !important; box-shadow: none !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-side-panel { padding: 28px !important; border-radius: 24px !important; background: #edf2e9 !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-trust-list { border: 0 !important; background: transparent !important; box-shadow: none !important; padding: 24px 0 !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-trust-list > div > span { background: #dce7d4 !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-side-title-icon { background: #dce7d4 !important; color: #204c36 !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) :is(#sideFinalPrice, .checkout-summary-totals dd:last-child) { color: #204c36 !important; font-weight: 700; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-terms-note { background: transparent !important; border: 0 !important; border-top: 1px solid #ccd8c6 !important; border-radius: 0 !important; padding: 18px 0 0; color: #617064 !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-terms-note a { color: #204c36 !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-products:has(.empty-state) { border: 0 !important; background: transparent !important; border-radius: 0 !important; overflow: visible; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-products:has(.empty-state) .checkout-product-table-head { display: none !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-products .empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 260px;
  padding: 32px 16px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-products .empty-state p { margin: 0; font-size: 18px; color: #617064; text-align: center; }
.nature-empty-cart-icon { display: grid; place-items: center; width: 86px; height: 86px; border-radius: 48% 52% 65% 35%; background: #edf2e9; color: #709266; }
.nature-empty-cart-icon svg { width: 46px; height: 46px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.nature-empty-cart-link { display: inline-flex; align-items: center; gap: 14px; color: #204c36; font-weight: 600; text-decoration: underline; text-underline-offset: 6px; min-height: 44px; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-cart-footer { margin-top: 20px; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-primary-next { border-radius: 999px !important; min-height: 50px; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-primary-next:disabled { opacity: .48; }

/* Gentle interactions use transforms only and honour both motion controls. */
.nature-reveal-pending { opacity: 0; transform: translateY(18px); }
.nature-reveal-pending:focus-within { opacity: 1; transform: none; }
.nature-reveal-visible { animation: nature-reveal 650ms cubic-bezier(.2,.65,.3,1) both; }
@keyframes nature-reveal { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
body.nature-motion-enabled[data-theme-layout]:not(.admin-root) :is(.product-card-btn, .gsb-button, .nature-empty-cart-link) { transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
@media (hover: hover) {
  body.nature-motion-enabled[data-theme-layout]:not(.admin-root) :is(.product-card-btn, .gsb-button):hover { transform: translateY(-2px); box-shadow: 0 8px 20px #204c361f !important; }
  body.nature-motion-enabled[data-theme-layout]:not(.admin-root) .product-image img { transition: scale 600ms cubic-bezier(.2,.65,.3,1); }
  body.nature-motion-enabled[data-theme-layout]:not(.admin-root) .product-card:hover .product-image img { scale: 1.035; }
}

/* Editing surfaces inherit the same geometry; their form contracts are unchanged. */
.admin-root .banner-text-editor .gsb-hero { min-height: 440px; padding: 40px; border-radius: 28px; background: linear-gradient(130deg, #f1f2e8, #fbfcf6, #e7eedc); }
.admin-root .banner-text-editor .gsb-button { border-radius: 999px; }
.admin-root .banner-text-editor .gsb-story { background: #204c36; color: #dae4d4; border-radius: 28px; padding: 48px 28px; }
.admin-root .banner-text-editor .gsb-story :is(h2, a, .gsb-eyebrow) { color: #fffef9; }
.admin-root .animation-admin-page { --app-primary: #2c6243; --app-primary-dark: #204c36; --app-primary-soft: #edf2e9; --app-border: #dce3d7; }

@media (max-width: 980px) {
  body[data-theme-layout]:not(.admin-root) { --storefront-gutter: 20px; --storefront-section-gap: 28px; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-services { grid-template-columns: minmax(0, 1fr); }
  body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-step { padding-inline: 12px !important; font-size: 13px; }
  .nature-leaf-two { right: -28px; }
}
@media (max-width: 760px) {
  body[data-theme-layout]:not(.admin-root) { --storefront-gutter: 16px; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 32px 24px 20px; gap: 12px; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero h1 { font-size: clamp(38px, 10vw, 58px) !important; max-width: 13ch; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > img { height: 270px !important; max-height: 270px !important; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero::before { width: 85%; top: auto; bottom: -8%; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-services { padding: 28px 20px 40px; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-service-grid > a { padding: 18px; min-height: 150px; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-service-grid h3 { font-size: 20px; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon > a { padding: 12px !important; }
  body[data-theme-layout]:not(.admin-root) .product-body { padding: 14px 12px !important; }
  body[data-theme-layout]:not(.admin-root) .product-title { font-size: 14px !important; }
  body[data-theme-layout]:not(.admin-root) .product-description { font-size: 13px !important; }
  body[data-theme-layout]:not(.admin-root) .catalog-toolbar { padding: 20px 16px !important; }
  body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-hero { padding: 8px 0 24px; gap: 24px; }
  body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-stepper { gap: 5px; }
  body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-step { flex-direction: column; gap: 6px; min-height: 76px; padding: 10px 6px !important; border-radius: 16px !important; text-align: center; font-size: 12px; }
  body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-panel { padding: 20px 16px !important; }
  body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-side-panel { padding: 24px 20px !important; }
  body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-products .empty-state { min-height: 230px; }
  .nature-leaf { opacity: .5; width: 30px; height: 60px; }
  .nature-leaf-one { left: -12px; }
  .nature-leaf-four { right: -14px; }
  .admin-root .banner-text-editor .gsb-hero { min-height: 0; padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .nature-atmosphere span, .nature-reveal-visible { animation: none !important; }
  .nature-reveal-pending { opacity: 1; transform: none; }
  body.nature-motion-enabled[data-theme-layout]:not(.admin-root) :is(.product-image img, .product-card-btn, .gsb-button, .nature-empty-cart-link) { transition: none !important; transform: none !important; }
}
/* Respond to the actual content width when the admin enables one or both rails. */
@container (max-width: 860px) {
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
    padding: clamp(24px, 5cqi, 40px);
    gap: 24px;
  }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero h1 { font-size: clamp(34px, 10cqi, 60px) !important; max-width: 16ch; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > img { height: 300px !important; max-height: 300px !important; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero::before { width: 80%; top: auto; bottom: -12%; }
  body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-services { grid-template-columns: minmax(0, 1fr); }
}
@media print {
  .nature-atmosphere { display: none !important; }
  .nature-reveal-pending, .nature-reveal-visible { opacity: 1 !important; transform: none !important; animation: none !important; }
}
/* Product, account and motion refinements — presentation only. */
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .theme-product-detail__summary { display:flex; flex-direction:column; gap:18px; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .theme-product-detail__summary > * { margin-block:0 !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .theme-product-detail__summary h1 { font-family:Georgia,serif; font-size:clamp(29px,3.2vw,46px) !important; line-height:1.16 !important; font-weight:500 !important; letter-spacing:-.025em; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-short-description { font-size:16px !important; line-height:1.75; color:#617064; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .detail-image-shell { border:0 !important; background:#fff !important; box-shadow:none !important; aspect-ratio:1 !important; block-size:auto !important; padding:28px !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .detail-image-button { border:0 !important; background:transparent !important; border-radius:20px; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .detail-image { object-fit:contain !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-sale-card { background:transparent !important; padding:0 !important; border:0 !important; box-shadow:none !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-price-current { font-size:clamp(28px,3vw,38px) !important; font-weight:600 !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-meta-grid { gap:0 24px; margin-top:20px; border-top:1px solid #dce3d7; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-meta-item { border:0 !important; border-bottom:1px solid #dce3d7 !important; border-radius:0 !important; padding:14px 0 !important; background:transparent !important; box-shadow:none !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-meta-item span { color:#617064; font-size:11px; font-weight:500; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-meta-item strong { font-weight:600; color:#204c36; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .buy-box-with-variants { border:0 !important; border-radius:22px !important; background:#edf2e9 !important; padding:20px !important; margin-top:8px !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-thumb-button { border-radius:16px !important; overflow:hidden; box-shadow:none !important; outline-offset:-3px; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-thumb-button.active { border-color:#709266 !important; outline:0 !important; box-shadow:inset 0 0 0 1px #709266 !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-detail-sidebar { display:none; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-detail-shell { display:block; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-stepper { display:flex !important; gap:14px !important; }
body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-step { flex:1 1 0; min-width:0; border:1px solid #dce3d7 !important; }
body[data-theme-layout]:not(.admin-root) :is(select,summary,button,a,input,textarea):focus-visible { outline:0 !important; box-shadow:0 0 0 3px #70926666 !important; }
body[data-theme-layout]:not(.admin-root) .customer-account-options { width:280px; max-width:calc(100vw - 32px); padding:10px; border:1px solid #dce3d7; border-radius:20px; background:#fffef9; box-shadow:0 16px 40px #204c361a; }
body[data-theme-layout]:not(.admin-root) .customer-account-options a { display:flex; gap:12px; align-items:center; min-height:48px; border-radius:12px; color:#204c36; font-size:14px; }
body[data-theme-layout]:not(.admin-root) .customer-account-options a:hover { background:#edf2e9; }
.customer-account-options svg { flex:none; width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
body[data-theme-layout]:not(.admin-root) .customer-account-options form { display:block !important; border-top:1px solid #dce3d7; margin-top:8px; }
body[data-theme-layout]:not(.admin-root) .customer-account-options button { color:#617064; min-height:44px; text-decoration:none; }
body.store-page-account-profile[data-theme-layout]:not(.admin-root) .page-designer-surface { background:transparent !important; backdrop-filter:none !important; border:0 !important; box-shadow:none !important; }
body[data-theme-layout]:not(.admin-root) .nature-profile { max-width:1100px; padding:clamp(16px,3vw,40px); color:#204c36; }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-header { border:0 !important; background:#edf2e9 !important; border-radius:28px !important; padding:32px !important; }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-header h1 { font-family:Georgia,serif; font-weight:500; font-size:clamp(28px,4vw,42px); margin-bottom:10px; }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-header p { color:#617064; overflow-wrap:anywhere; }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-tabs { border:0; gap:10px; padding:16px 0; margin-top:12px; }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-tabs a { border-radius:999px; flex:1 1 auto; text-align:center; background:transparent; }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-tabs a[aria-current=page] { background:#204c36; }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-panel-stack { margin-top:0 !important; display:grid; gap:20px; }
body[data-theme-layout]:not(.admin-root) .nature-profile .neo-panel { margin:0 !important; border:1px solid #dce3d7 !important; border-radius:24px !important; padding:clamp(20px,4vw,40px) !important; box-shadow:none !important; background:#fffef9 !important; color:#204c36 !important; }
body[data-theme-layout]:not(.admin-root) .nature-profile .neo-form-grid { gap:20px 24px; }
body[data-theme-layout]:not(.admin-root) .nature-profile .neo-form-grid h3 { font-family:Georgia,serif; font-size:23px; padding-top:24px; border-top:1px solid #dce3d7; margin:12px 0 0; }
body[data-theme-layout]:not(.admin-root) .nature-profile .neo-form-grid h3:first-child { border:0; padding-top:0; }
body[data-theme-layout]:not(.admin-root) .nature-profile label { font-size:14px; color:#617064; }
body[data-theme-layout]:not(.admin-root) .nature-profile :is(input:not([type=checkbox]),select,textarea) { margin-top:8px; min-height:48px; border-radius:12px !important; }
body[data-theme-layout]:not(.admin-root) .nature-profile .order-table { display:block; overflow-x:auto; }
/* A seamless track uses the original cards only: no duplicate forms or product IDs. */
body[data-theme-layout]:not(.admin-root) .nature-product-lane { overflow-x:auto !important; scrollbar-width:thin; scroll-snap-type:x proximity; overscroll-behavior-x:contain; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane .designer-product-mosaic-track { display:flex !important; width:max-content !important; min-width:100%; gap:20px; transition:none; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane .designer-product-card { flex:0 0 clamp(230px,24vw,300px); width:clamp(230px,24vw,300px); scroll-snap-align:start; border-radius:24px !important; padding:12px !important; background:#fffef9 !important; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane .designer-product-media { height:230px !important; border-radius:18px; background:white; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane .designer-product-copy { padding:16px 4px; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane .designer-product-copy strong { font-size:16px; line-height:1.45; min-height:3em; }
body.nature-motion-enabled .custom-banner-carousel .carousel-item { transition:opacity .6s ease,transform .6s cubic-bezier(.2,.65,.3,1) !important; }
body:not(.nature-motion-enabled) .custom-banner-carousel .carousel-item { transition:none !important; }
body.nature-motion-enabled .nature-atmosphere span { animation-duration:8s; }
body.nature-motion-enabled .nature-atmosphere span:nth-child(even) { animation-duration:11s; animation-delay:-4s; }
.nature-leaf-five { top:14%; left:19%; width:28px; height:52px; --leaf-angle:45deg; opacity:.5; }
.nature-leaf-six { top:47%; right:8%; width:46px; height:85px; --leaf-angle:-65deg; }
.nature-leaf-seven { top:78%; left:15%; width:22px; height:44px; --leaf-angle:20deg; opacity:.5; }
@keyframes nature-drift { 0% { transform:translate3d(-10px,10px,0) rotate(-12deg); } 50% { transform:translate3d(28px,-20px,0) rotate(8deg); } 100% { transform:translate3d(8px,-65px,0) rotate(22deg); } }
@media(max-width:760px) {
 body.store-page-shop-details[data-theme-layout]:not(.admin-root) .theme-product-detail__layout { grid-template-columns:minmax(0,1fr) !important; gap:24px !important; }
 body.store-page-shop-details[data-theme-layout]:not(.admin-root) .detail-image-shell { max-height:380px; padding:20px !important; }
 body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-meta-grid { gap:0 18px; }
 body.store-page-shop-cart[data-theme-layout]:not(.admin-root) .checkout-stepper { gap:8px !important; }
 body[data-theme-layout]:not(.admin-root) .nature-profile .profile-header { align-items:flex-start; padding:24px !important; gap:16px; }
 body[data-theme-layout]:not(.admin-root) .nature-profile .profile-header img { width:52px; height:52px; }
 body[data-theme-layout]:not(.admin-root) .nature-profile .profile-header > div { min-width:0; }
 body[data-theme-layout]:not(.admin-root) .nature-profile .profile-tabs a { flex:1 1 100%; }
 body[data-theme-layout]:not(.admin-root) .nature-profile .neo-form-grid { grid-template-columns:minmax(0,1fr); }
 .nature-leaf-five { left:32%; }
}
@media(prefers-reduced-motion:reduce) { body.nature-motion-enabled .custom-banner-carousel .carousel-item { transition:none !important; } }
body[data-theme-layout]:not(.admin-root) .nature-product-lane-running { overflow:hidden !important; scroll-snap-type:none; }
@media print { .nature-product-lane .designer-product-mosaic-track { transform:none !important; flex-wrap:wrap; width:100% !important; } }
body[data-theme-layout]:not(.admin-root) .nature-product-lane-running .designer-product-mosaic-track { transform:var(--nature-lane-offset,none) !important; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane-paused { overflow-x:auto !important; scroll-snap-type:none; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane-paused .designer-product-mosaic-track { transform:var(--nature-lane-offset,none) !important; }
body.store-page-account-profile[data-theme-layout]:not(.admin-root) :is(.page-design-stage,.page-designer-content,.page-designer-surface) { background:transparent !important; border:0 !important; box-shadow:none !important; backdrop-filter:none !important; }
body[data-theme-layout]:not(.admin-root) .nature-profile .nature-profile-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
body[data-theme-layout]:not(.admin-root) .nature-profile .profile-header .btn-link { color:#204c36 !important; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .detail-image-button img { border:0 !important; border-radius:0 !important; box-shadow:none !important; }
@media(max-width:600px) { body[data-theme-layout]:not(.admin-root) .nature-profile .nature-profile-fields { grid-template-columns:minmax(0,1fr); } }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .buy-box-with-variants .buy-box { background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important; gap:16px; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .buy-box .product-detail-cart-button { flex:1; min-height:50px; }
body.store-page-shop-details[data-theme-layout]:not(.admin-root) .product-description-panel { padding:clamp(24px,4vw,48px) !important; border-radius:24px !important; }
body[data-theme-layout]:not(.admin-root) .nature-product-lane .designer-product-card { flex-basis:var(--nature-product-card-width,clamp(230px,24vw,300px)); width:var(--nature-product-card-width,clamp(230px,24vw,300px)); }
@media print {
 body[data-theme-layout]:not(.admin-root) :is(.nature-product-lane-running,.nature-product-lane-paused) .designer-product-mosaic-track { transform:none !important; }
 body[data-theme-layout]:not(.admin-root) .nature-product-lane { overflow:visible !important; }
}
/* Keep the introductory banner horizontal on phones. */
@media(max-width:760px) {
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero {
  grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr) !important;
  grid-template-rows:auto !important;
  align-items:center; gap:12px !important; padding:20px 16px !important; min-height:0 !important;
 }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero h1 { font-size:clamp(19px,5.3vw,34px) !important; line-height:1.14 !important; letter-spacing:-.025em; margin:8px 0 12px !important; max-width:none !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero .gsb-eyebrow { font-size:8px !important; letter-spacing:.09em !important; margin:0 0 8px !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero p:not(.gsb-eyebrow) { font-size:11px !important; line-height:1.5 !important; margin:0 !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero .gsb-actions { gap:8px; margin-top:14px !important; font-size:11px; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero .gsb-button { padding:10px 12px; min-height:40px; font-size:11px; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > img { height:auto !important; max-height:220px !important; width:100% !important; min-width:0; object-fit:contain; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero::before { width:55%; top:12%; bottom:auto; right:-8%; }
}
/* Image wrappers in imported HTML follow the same horizontal composition. */
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > .gsb-hero-copy { min-width:0; grid-column:1 !important; grid-row:1 !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > .gsb-hero-media { min-width:0; grid-column:2 !important; grid-row:1 !important; width:100% !important; align-self:center; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero .gsb-hero-media img { width:100% !important; height:clamp(280px,31vw,450px) !important; max-height:450px !important; object-fit:contain !important; }
.banner-mobile-html { display:none; }
@media(max-width:760px) {
 .banner-desktop-html { display:none; }
 .banner-mobile-html { display:block; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > .gsb-hero-media { height:auto !important; max-height:220px !important; margin:0 !important; padding:0 !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero .gsb-hero-media img { width:100% !important; height:auto !important; max-height:220px !important; object-fit:contain !important; }
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon {
 display:flex !important; justify-content:flex-start; gap:24px !important; overflow-x:auto !important; overflow-y:hidden;
 touch-action:pan-x pan-y; scroll-snap-type:none !important; scroll-behavior:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon > a {
 display:flex !important; flex-direction:column !important; align-items:center; text-align:center;
 flex:0 0 132px !important; min-width:0 !important; width:132px !important; padding:6px 0 !important;
 border:0 !important; border-radius:0 !important; background:transparent !important; gap:12px !important;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .category-ribbon-icon {
 display:grid; place-items:center; flex:none; width:104px !important; height:104px !important; overflow:hidden;
 border-radius:50% !important; background:#edf2e9 !important; padding:0 !important;
}
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .category-ribbon-icon img { width:100% !important; height:100% !important; object-fit:contain; border-radius:50%; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon > a > span:last-of-type { width:100%; display:grid; gap:5px; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon strong { font-size:14px; line-height:1.4; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon small { font-size:12px; color:#617064; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon i { display:none; }
@media(min-width:900px){
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .storefront-category-ribbon{justify-content:center!important;flex-wrap:wrap!important;overflow:visible!important}
}
@media(pointer:coarse) {
 body[data-theme-layout]:not(.admin-root) .nature-product-lane { touch-action:pan-x pan-y; scroll-snap-type:none !important; scroll-behavior:auto !important; -webkit-overflow-scrolling:touch; }
}
/* Imported intro HTML must not override the shared responsive geometry. */
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) !important; gap:clamp(16px,3cqi,40px) !important; padding:clamp(24px,4cqi,48px) !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero h1 { font-size:clamp(30px,5.5cqi,64px) !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > :is(.gsb-hero-content,.gsb-hero-copy) { width:100% !important; padding:0 !important; min-width:0; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > :is(.gsb-hero-visual,.gsb-hero-media) { position:relative !important; inset:auto !important; width:100% !important; height:clamp(280px,31vw,450px) !important; max-height:450px !important; overflow:hidden; grid-column:2 !important; grid-row:1 !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero :is(.gsb-hero-visual,.gsb-hero-media) img { position:static !important; inset:auto !important; width:100% !important; height:100% !important; max-height:100% !important; object-fit:contain !important; mask-image:none !important; -webkit-mask-image:none !important; }
body.store-page-shop-index[data-theme-layout]:not(.admin-root) .nature-html-carousel { padding:0 !important; grid-column:1/-1 !important; background:transparent !important; border:0 !important; box-shadow:none !important; overflow:hidden; }
.intro-carousel-stage { position:relative; }
.intro-html-slide { position:absolute; inset:0; opacity:0; visibility:hidden; pointer-events:none; transform:translateX(0); }
.intro-html-slide.is-active { position:relative; opacity:1; visibility:visible; pointer-events:auto; z-index:1; }
.intro-html-slide.is-leaving { visibility:visible; }
body.nature-motion-enabled .intro-html-slide { transition:opacity .65s ease,transform .65s ease; }
body.nature-motion-enabled [data-intro-carousel][data-effect=slide] .intro-html-slide { transform:translateX(8%); }
body.nature-motion-enabled [data-intro-carousel][data-effect=slide] .intro-html-slide.is-active { transform:translateX(0); }
body.nature-motion-enabled [data-intro-carousel][data-effect=slide] .intro-html-slide.is-leaving { transform:translateX(-8%); }
.intro-carousel-controls { display:flex; align-items:center; justify-content:center; gap:12px; padding:8px; }
.intro-carousel-controls > button { width:36px; height:36px; border-radius:50%; border:1px solid #dce3d7; background:#fffef9; color:#204c36; font-size:24px; line-height:1; }
.intro-carousel-dots { display:flex; align-items:center; gap:2px; flex-wrap:wrap; }
.intro-carousel-dots button { width:28px; height:32px; padding:0; border:0; background:transparent; }
.intro-carousel-dots button::after { content:''; display:block; width:7px; height:7px; border-radius:50%; background:#b9c8b5; margin:auto; }
.intro-carousel-dots button[aria-current=true]::after { width:18px; border-radius:5px; background:#204c36; }
@media(max-width:768px) {
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero { display:grid !important; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) !important; gap:10px !important; min-height:0 !important; height:auto !important; padding:18px 14px !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero h1 { font-size:clamp(16px,4.5vw,25px) !important; margin:6px 0 10px !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero > :is(.gsb-hero-visual,.gsb-hero-media) { height:clamp(120px,36vw,220px) !important; max-height:220px !important; border-radius:18px !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero .gsb-actions { gap:8px; margin-top:12px !important; }
 body.store-page-shop-index[data-theme-layout]:not(.admin-root) .gsb-hero .gsb-button { padding:9px 10px !important; min-height:36px !important; font-size:10px !important; }
}
@media(prefers-reduced-motion:reduce) { .intro-html-slide { transition:none !important; transform:none !important; } }
/* Quiet header surfaces and a search list sized for readable product names. */
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-head { gap:clamp(12px,1.4vw,24px) !important; padding-block:16px !important; min-height:80px !important; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-nav-link { padding:10px 12px !important; border-radius:999px !important; font-weight:600; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-nav-link:hover { background:#edf2e9 !important; }
body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search { position:relative; border-radius:999px !important; padding:4px !important; background:#fffefb !important; border:1px solid #dce3d7 !important; box-shadow:none !important; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-search .header-search-field { position:static; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-search input { border:0 !important; border-radius:999px !important; box-shadow:none !important; background:transparent !important; padding-inline:14px !important; }
body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search .header-search-submit { border-radius:999px !important; background:#204c36 !important; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-search .product-suggest-menu { width:min(460px,calc(100vw - 32px)); max-width:calc(100vw - 32px); left:0; right:auto; padding:8px !important; border-radius:20px !important; max-height:min(440px,55dvh); background:#fffefb !important; border-color:#dce3d7 !important; box-shadow:0 16px 40px #19372d20 !important; }
body[data-theme-layout]:not(.admin-root) .product-suggest-item { grid-template-columns:52px minmax(0,1fr); gap:3px 12px; padding:10px !important; border-radius:12px; align-items:start; }
body[data-theme-layout]:not(.admin-root) .product-suggest-item img { grid-row:1/3; width:52px; height:64px; object-fit:contain; background:#f3f5ef; border-radius:10px; }
body[data-theme-layout]:not(.admin-root) .product-suggest-copy strong { white-space:normal; overflow-wrap:anywhere; line-height:1.35; font-size:14px; }
body[data-theme-layout]:not(.admin-root) .product-suggest-copy small { white-space:normal; line-height:1.4; color:#68786b; }
body[data-theme-layout]:not(.admin-root) .product-suggest-price { grid-column:2; white-space:normal; overflow-wrap:anywhere; font-size:14px; color:#204c36; }
body[data-theme-layout]:not(.admin-root) .product-suggest-item:is(:hover,.is-active) { background:#edf2e9 !important; }
/* A consistent footer hierarchy, including administrator-authored HTML links. */
body[data-theme-engine="universal"]:not(.admin-root) .theme-universal-footer { background:linear-gradient(125deg,#eaf0e5,#f1f4eb) !important; border-top:1px solid #dce3d7; margin-top:40px; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner { gap:28px !important; padding-block:36px !important; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner h3 { font-size:18px !important; line-height:1.4; color:#204c36; margin:0 0 10px !important; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner p { margin:0 !important; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner a { display:inline-block; padding-block:7px; font-size:14px; line-height:1.5; color:#506756; text-decoration:none; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner a:hover { color:#204c36; text-decoration:underline; text-underline-offset:4px; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner.footer-directory { padding-block:20px !important; border-top:1px solid #d1dccb; }
body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-bottom { padding-block:18px; border-top:1px solid #d1dccb; flex-wrap:wrap; font-size:12px; color:#68786b; }
@media(max-width:980px) {
 body[data-theme-engine="universal"]:not(.admin-root) .theme-u-head { padding-block:10px !important; min-height:64px !important; }
 body[data-theme-engine="universal"]:not(.admin-root) .theme-u-search .product-suggest-menu { width:100%; max-width:100%; }
 body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:24px !important; padding-block:28px !important; }
 body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-brand { grid-column:1/-1; }
 body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner.footer-directory { grid-template-columns:minmax(0,1fr) !important; }
}
@media(max-width:380px) { body[data-theme-engine="universal"]:not(.admin-root) .theme-u-footer-inner { grid-template-columns:minmax(0,1fr) !important; } }
@media(max-width:899px) {
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-menu-toggle { gap:9px; padding:10px 16px !important; min-height:44px; border-radius:999px !important; border:1px solid #dce3d7 !important; background:#edf2e9 !important; color:#204c36 !important; font-size:14px; font-weight:600; box-shadow:none !important; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-menu-toggle[aria-expanded=true] { background:#204c36 !important; border-color:#204c36 !important; color:#fffef9 !important; }
 .theme-u-menu-toggle .theme-u-close-icon { display:none; }
 .theme-u-menu-toggle[aria-expanded=true] .theme-u-menu-icon { display:none; }
 .theme-u-menu-toggle[aria-expanded=true] .theme-u-close-icon { display:block; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-universal-header .theme-u-items { inset:calc(100% + 8px) 12px auto !important; width:calc(100% - 24px) !important; inline-size:calc(100% - 24px) !important; max-height:calc(100dvh - 108px) !important; max-block-size:calc(100dvh - 108px) !important; padding:16px !important; border:1px solid #dce3d7 !important; border-radius:24px !important; background:#fffef9 !important; box-shadow:0 18px 50px #19372d26 !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; grid-template-areas:none !important; gap:10px !important; overscroll-behavior:contain; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-universal-header.is-menu-open .theme-u-items { display:grid !important; }
 body.nature-motion-enabled[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-universal-header.is-menu-open .theme-u-items { animation:nature-menu-unfold .25s cubic-bezier(.2,.65,.3,1); transform-origin:top right; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items > * { grid-area:auto !important; grid-column:1/-1 !important; grid-row:auto !important; margin:0 !important; min-width:0 !important; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items > :is(.theme-u-language,.theme-u-currency) { grid-column:auto !important; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items :is(.theme-u-nav-link,.theme-u-account) { display:flex; justify-content:flex-start !important; width:100%; min-height:44px; padding:12px 14px !important; border-radius:14px !important; background:#f3f5ef !important; border:0 !important; color:#204c36 !important; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-nav-link::after { display:none; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .header-product-categories { border-radius:14px; background:#f3f5ef; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .header-product-categories > .theme-u-nav-link { flex:1 1 0 !important; width:auto !important; min-width:0; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .header-product-categories > .header-category-toggle { flex:0 0 44px; width:44px !important; min-height:44px; padding:10px !important; border-radius:14px; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .header-product-categories > .header-category-list { flex-basis:100%; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search .header-search-field { display:contents !important; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search input { grid-column:1; grid-row:1; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search .header-search-submit { grid-column:2; grid-row:1; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search .product-suggest-menu { position:static !important; grid-column:1/-1; grid-row:2; width:100%; max-height:min(320px,40dvh); margin-top:8px; box-shadow:none !important; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search:has(.product-suggest-menu.is-open) { border:0 !important; padding:5px !important; background:transparent !important; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search:has(.product-suggest-menu.is-open)::before { content:''; position:absolute; inset:0 0 auto; height:54px; border:1px solid #dce3d7; border-radius:999px; background:#fffefb; pointer-events:none; }
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search:has(.product-suggest-menu.is-open) :is(input,.header-search-submit) { position:relative !important; z-index:1; }
}
@keyframes nature-menu-unfold { from{opacity:0;transform:translateY(-10px) scale(.98);}to{opacity:1;transform:translateY(0) scale(1);} }
@media(prefers-reduced-motion:reduce) { .theme-universal-header.is-menu-open .theme-u-items { animation:none !important; } }

/* Let existing generated banners fit their full authored text. */

body.store-page-shop-index section[class*="gsbe-"]{aspect-ratio:auto!important;min-height:46cqw!important}
body.store-page-shop-index section[class*="gsbe-"] .gsbe-content{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;width:54%!important;height:auto!important;min-height:46cqw;padding:6cqw 0 4cqw!important;margin-left:var(--gsbe-content-offset,5%);display:flex!important;flex-direction:column;justify-content:center;gap:2cqw;pointer-events:auto}
body.store-page-shop-index section[class*="gsbe-"] .gsbe-content>:is(.gsbe-eyebrow,.gsbe-title,.gsbe-desc,.gsbe-benefits,.gsbe-actions){position:static!important;height:auto!important;width:100%!important;max-height:none!important;overflow:visible!important;margin:0!important;flex-shrink:0}
body.store-page-shop-index section[class*="gsbe-"] .gsbe-title :is(strong,em),body.store-page-shop-index section[class*="gsbe-"] .gsbe-eyebrow,body.store-page-shop-index section[class*="gsbe-"] .gsbe-benefits-label{white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere}
body.store-page-shop-index section[class*="gsbe-"] .gsbe-desc{display:block!important;-webkit-line-clamp:unset!important}
body.store-page-shop-index section[class*="gsbe-"] .gsbe-chips{max-height:none!important;overflow:visible!important}
body.store-page-shop-index section[class*="gsbe-"] .gsbe-actions{flex-wrap:wrap;white-space:normal!important;padding-block:.5cqw}
body.store-page-shop-index section[class*="gsbe-"] .gsbe-button,body.store-page-shop-index section[class*="gsbe-"] .gsbe-secondary{height:auto!important;max-width:100%!important;white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere;padding:1.3cqw 1.6cqw;min-height:3.7cqw}
@media(max-width:768px){body.store-page-shop-index section[class*="gsbe-"] .gsbe-content{width:56%!important;margin-left:4%;padding:5cqw 0!important;min-height:54cqw;gap:3cqw}body.store-page-shop-index section[class*="gsbe-"] .gsbe-button,body.store-page-shop-index section[class*="gsbe-"] .gsbe-secondary{padding:2cqw;min-height:7cqw}}

body.store-page-shop-index section[data-gsbe-image-side="left"]{--gsbe-content-offset:42%}

body[data-theme-engine="universal"]:not(.admin-root) .theme-u-search.is-space-hidden{display:none!important}
@media(min-width:900px){
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-items .theme-u-search{min-inline-size:var(--header-search-min-width,180px)!important}
 body[data-theme-engine="universal"][data-theme-layout]:not(.admin-root) .theme-u-search .header-search-field{min-inline-size:var(--header-input-min-width,10ch)!important}
}

/* Older generated exports cap the tablet banner at 470px. Keep its container width. */
@media(max-width:768px){
 body.store-page-shop-index section[class*="gsbe-"]{width:100%!important;max-width:100%!important}
}

@media(max-width:760px){.store-section.banner-has-mobile-override>:not(.banner-mobile-html):not(.designer-handle){display:none!important}.store-section.banner-has-mobile-override>.banner-mobile-html{display:block;width:100%}}
