/* =========================================
   PLANT HEADINGS
========================================= */
.plant-title{
  margin: 0 0 .35rem 0;
  font-family: "EWOAncient", serif;
  letter-spacing: .08em;
  font-size: clamp(2.6rem, 2.8vw, 3.3rem);
  font-weight: 600;

  text-align: center;
  padding-top: 2rem;
  padding-bottom: 2rem;

  color: rgba(235, 246, 235, 0.98);

  animation: plantHaloBreath 14s ease-in-out infinite alternate;

  will-change: text-shadow;
}

@keyframes plantHaloBreath{
  /* Cool leaf glow */
  0%{
    text-shadow:
      0 0 5px rgba(180,215,180,.75),
      0 0 14px rgba(150,200,150,.45),
      0 0 28px rgba(120,180,120,.25);
  }

  /* Pale green-white */
  50%{
    text-shadow:
      0 0 7px rgba(235,240,235,.9),
      0 0 20px rgba(200,215,200,.55),
      0 0 40px rgba(170,200,170,.30);
  }

  /* Gentle warmth — kept from original mood */
  100%{
    text-shadow:
      0 0 8px rgba(255,230,190,.95),
      0 0 22px rgba(255,210,160,.55),
      0 0 46px rgba(255,190,130,.28);
  }
}

.plant-subtitle{
  margin: 0 0 1.6rem 0;
  color: rgba(210,225,210,0.82);
  line-height: 1.35;
}

/* =========================================
   PRE-ORDER SEASON BANNER
========================================= */

.season-notice{
  margin: 0 0 1.4rem;
  padding: 0.8rem 1.2rem;

  text-align: center;

  font-family: "IMFellSC", serif;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.0em;

  color: #2e2617;

  background: linear-gradient(
    to bottom,
    #e9d6a5,
    #d8c08a
  );

  border: 1px solid #bfa66c;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.35),
    0 0 8px rgba(0,0,0,0.25);
}

@font-face {
  font-family: "IMFellSC";
  src: url("../fonts/IMFellEnglishSC-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* =========================================
   ORDER NOTE
========================================= */

.order-note{
  margin: 0 0 1.5rem;
  padding: 0.9rem 1.1rem;
  border: 1px solid rgba(166,188,126,0.35);
  background: rgba(10,16,40,0.28);
  box-shadow: inset 0 0 0 1px rgba(166,188,126,0.14);
  font-family: "IMFellSC", serif;
  font-size: 1.5rem;
  line-height: 1.45;
  color: #e6efb8;
}

.order-note strong{
  font-family: "IMFellSC", serif;
  font-weight: normal;
  letter-spacing: 0.04em;
  color: #edf3bf;
}

.order-note a{
  color: #b9e0b9;
  text-decoration: none;
  border-bottom: 1px solid rgba(185,224,185,0.45);
  transition: color .25s ease, border-color .25s ease;
}

.order-note a:hover,
.order-note a:focus{
  color: #e7ffe7;
  border-bottom-color: rgba(231,255,231,0.9);
}


/* =========================================
   PLANT CARDS — SCOPED STYLES ONLY
   (prevents index glass styles from bleeding in)
========================================= */

/* =========================================
   PLANT GRID
========================================= */

/* Component boundary reset: stop index-glass effects from leaking into product cards */
body[data-page="plant-catalog"] .plant-cards,
body[data-page="plant-catalog"] .plant-cards *{
  mix-blend-mode: normal;
  filter: none;
}

/* Grid layout */
body[data-page="plant-catalog"] .plant-cards{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
  text-align: left;
  align-items: stretch;
}

@media (max-width: 900px){
  body[data-page="plant-catalog"] .plant-cards{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 420px){
  body[data-page="plant-catalog"] .plant-cards{
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
}

/* =========================================
   PRODUCT CARD SYSTEM (small cards)
========================================= */

body[data-page="plant-catalog"] .plant-card-link{
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

/* Card base */
body[data-page="plant-catalog"] .plant-card{
  position: relative;
  border-radius: 14px;
  overflow: visible;

  height: 100%;
  padding: 1rem 1rem 1rem;

  display: flex;
  flex-direction: column;
  min-height: 0;

  background: linear-gradient(
    180deg,
    rgba(205, 225, 205, 0.88),
    rgba(170, 195, 170, 0.82)
  );

  border: 1px solid rgba(247, 250, 247, 0.55);

  box-shadow:
    0 12px 30px rgba(0,0,0,0.55),
    inset 0 0 0 1px rgba(255,255,255,0.04);

  transition:
    transform .55s cubic-bezier(.22,.61,.36,1),
    box-shadow .55s cubic-bezier(.22,.61,.36,1),
    border-color .35s ease;
}

/* Tiny top “museum line” */
body[data-page="plant-catalog"] .plant-card::before{
  content:"";
  position:absolute;
  top:0;
  left:18%;
  width:64%;
  height:1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(170,210,170,.30),
    transparent
  );
  pointer-events:none;
  opacity: .7;
}

/* Hover glow shadow */
body[data-page="plant-catalog"] .plant-card::after{
  content:"";
  position:absolute;

  left: 12%;
  right: 12%;
  bottom: -18px;
  height: 38px;

  background: radial-gradient(
    ellipse at center,
    rgba(170,210,170,.55) 0%,
    rgba(170,210,170,.28) 40%,
    transparent 75%
  );

  filter: blur(10px);
  opacity: 0;
  transition: opacity .45s ease;

  pointer-events:none;
}

body[data-page="plant-catalog"] .plant-card-link:hover .plant-card::after{
  opacity: 1;
}

/* Hover lift (premium, not zoom) */
body[data-page="plant-catalog"] .plant-card-link:hover .plant-card{
  transform: none;
  border-color: rgba(255,255,255,.55);

  box-shadow:
    0 28px 60px rgba(0,0,0,.45),
    0 6px 18px rgba(170,210,170,.35),
    inset 0 0 0 1px rgba(255,255,255,.18);
}

/* --- Make the white glow appear even when hovering buttons/select inside the card --- */

body[data-page="plant-catalog"] .plant-card::before,
body[data-page="plant-catalog"] .plant-card::after{
  pointer-events: none;
}

body[data-page="plant-catalog"] .plant-card::after{
  opacity: 0;
}

body[data-page="plant-catalog"] .plant-card:hover::after{
  opacity: 1;
}

body[data-page="plant-catalog"] .plant-card:has(:hover)::after{
  opacity: 1;
}

/* Image (base) */
body[data-page="plant-catalog"] .plant-card-image{
  display:block;
  width:100%;
  height:220px;
  object-fit:cover;

  margin: 0;
  margin-left: auto;
  margin-right: auto;
  transform-origin:center;
  border:1px solid rgba(140,185,140,.55);
  border-radius:10px;

  filter: saturate(.92) contrast(1.05) brightness(.95);

  box-shadow: inset 0 -3px 8px rgba(0,0,0,.16);

  transition:
    transform .8s cubic-bezier(.22,.61,.36,1),
    filter .6s ease,
    box-shadow .8s cubic-bezier(.22,.61,.36,1);

  backface-visibility:hidden;
}

/* Hover ONLY on the image/link */
body[data-page="plant-catalog"] .plant-card-image-link:hover .plant-card-image{
  transform: scale(1.035);

  filter: saturate(1) contrast(1.08) brightness(1.04);

  box-shadow:
    0 14px 26px rgba(0,0,0,.18),
    inset 0 -3px 8px rgba(0,0,0,.14);
}

/* Content */
body[data-page="plant-catalog"] .plant-card-content{
  padding: 1.5rem 1rem 1rem;
  text-align: center;

  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

/* Product name: big green-black (but smart wrapping) */
body[data-page="plant-catalog"] .plant-card-name{
  font-family: "EWOAncient", serif;
  min-height: calc(1.05em * 1);
  font-size: 1.75rem;

  letter-spacing: clamp(0.03em, 0.7vw, 0.07em);
  text-wrap: balance;
  overflow-wrap: anywhere;

  margin-top: 0;
  margin-bottom: 0;

  padding-inline: .35rem;
  text-align: center;

  color: rgba(12, 28, 18, .95);
  text-shadow:
    0 1px 0 rgba(0,0,0,0.55),
    0 8px 20px rgba(0,0,0,0.42),
    0 0 12px rgba(170,210,170,0.18);
}

/* Price */
body[data-page="plant-catalog"] .plant-card-content .plant-price{
  min-height: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-family: "EWOAncient", serif;
  letter-spacing: .05em;
  font-size: 1.15rem;
  font-weight: 600;
  margin: 0 0 .55rem 0;

  text-align: center;
  color: #234d23;
  text-shadow:
    0 1px 0px rgba(0,0,0,0.55),
    0 1px 0px rgba(0,0,0,0.42),
    0 1px 0px rgba(170,210,170,0.18);
}

/* Divider inside plant cards */
.plant-card .product-divider {
  border: none;
  height: 3px;
  width: 75%;
  margin: 1rem auto;
  background: linear-gradient(
    to right,
    rgba(196,167,90,0),
    rgba(196,167,90,0.95) 25%,
    rgba(196,167,90,0.95) 75%,
    rgba(196,167,90,0)
  );
  border-radius: 2px;
}

.price-number{
  font-family: "EWOAncient", serif;
  font-weight: 600;

  margin-top: 1rem;
  margin-bottom: 1rem;
  font-size: 1.2rem;

  color: rgb(43, 120, 68);

  text-shadow:
    0 0 6px  rgba(255, 255, 255, 0.75),
    0 0 16px rgba(235, 255, 235, 0.6),
    0 0 34px rgba(200, 235, 200, 0.4);

  letter-spacing: .09em;
}

/* Description: forest ink for crisp contrast */
body[data-page="plant-catalog"] .plant-card-content p{
  font-family: "Vollkorn", Georgia, serif;
  font-weight: 400;
  margin: 0 0 .45rem 0;
  color: rgba(14, 28, 20, 0.92);
  font-size: 1.2rem;
  line-height: 1.45;
}

/* Reserve consistent “slots” so description/shipping land consistently */
body[data-page="plant-catalog"] .plant-desc{
  min-height: calc(1.05em * 4.2);
  margin: 0;
}

/* Keep last paragraph tidy */
body[data-page="plant-catalog"] .plant-card-content p:last-child{
  margin-bottom: 0;
}

/* Accessible keyboard focus */
body[data-page="plant-catalog"] .plant-card-link:focus-visible{
  outline: 2px solid rgba(170,210,170,0.45);
  outline-offset: 6px;
  border-radius: 16px;
}

/* Head / features / text blocks */
body[data-page="plant-catalog"] .plant-card-head{
  margin-top: 0;
  display: flex;
  flex-direction: column;
  flex: 0 0 auto;
}

body[data-page="plant-catalog"] .plant-card-features{
  margin-top: 0;
  margin-bottom: 0;
  min-height: 0;
}

body[data-page="plant-catalog"] .plant-card-text{
  margin-top: 0;
  margin-bottom: 0;
  min-height: 0;
}

/* Actions: pinned to the bottom consistently */
body[data-page="plant-catalog"] .plant-card-actions{
  margin-top: auto;
  display:flex;
  flex-direction:column;
  gap:.6rem;
}

/* =========================================
   PLANT GLASS (page-specific polish)
========================================= */
body[data-page="plant-catalog"] .plant-glass{
  border: 1px solid rgba(170,210,170,.18);
  box-shadow:
    0 0 24px rgba(170,210,170,.12),
    0 20px 60px rgba(0,0,0,.65);
}

/* Small screens */
@media (max-width: 420px){
  body[data-page="plant-catalog"] .plant-glass{
    padding: 1.25rem;
    border-radius: 16px;
  }

  body[data-page="plant-catalog"] .plant-cards{
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  body[data-page="plant-catalog"] .plant-card-image{
    height: 200px;
  }
}

/* =========================================
   PAYPAL FORM LABEL + DROPDOWN
========================================= */
body[data-page="plant-catalog"] .plant-order-label{
  display: grid;
  gap: .45rem;

  margin-top: .85rem;

  font-family: "Vollkorn", Georgia, serif;
  font-size: 1rem;

  color: rgba(16, 28, 20, 0.88);
}

/* Dropdown: green glass that still reads on light card */
body[data-page="plant-catalog"] .plant-qty-select{
  width: 100%;
  padding: .85rem 1rem;
  padding-right: 1rem;
  font-family:"Vollkorn", serif;
  font-size:1rem;
  margin-top: 0;
  margin-bottom: 1rem;
  cursor:pointer;

  border-radius: 14px;

  border: 1px solid rgba(36, 66, 38, 0.34);

  background: linear-gradient(
    180deg,
    rgba(18, 38, 20, 0.10),
    rgba(18, 38, 20, 0.05)
  );

  color: rgba(10, 20, 12, 0.94);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.60),
    0 12px 26px rgba(0,0,0,0.16);

  transition:
    transform .22s ease,
    border-color .25s ease,
    box-shadow .25s ease,
    background .25s ease;
}

body[data-page="plant-catalog"] .plant-qty-select:hover{
  border-color: rgba(170, 210, 170, 0.95);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.65),
    0 0 0 3px rgba(170,210,170,0.25),
    0 10px 26px rgba(0,0,0,0.18);
}

body[data-page="plant-catalog"] .plant-qty-select:focus{
  outline: none;
  border-color: rgba(170, 210, 170, 0.90);
  background: linear-gradient(
    180deg,
    rgba(18, 38, 20, 0.14),
    rgba(18, 38, 20, 0.08)
  );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.65),
    0 0 0 4px rgba(170,210,170,0.26),
    0 16px 30px rgba(0,0,0,0.18);
}

.paypal-form-wrapper{
  padding: 0 1.25rem 1rem;
}

body[data-page="plant-catalog"] .plant-paypal-wrapper{
  margin-top: 1rem;
}

/* =========================================
   ADD TO CART BUTTON (primary action)
========================================= */
body[data-page="plant-catalog"] .plant-add-to-cart,
body[data-page^="product-"] .purchase-slab .plant-add-to-cart{
  width: 12.5rem;
  margin-top: auto;
  margin-left: auto;
  margin-right: auto;

  padding: .98rem 1.05rem;

  border-radius: 16px;

  font-family: "EWOAncient", serif;
  letter-spacing: .10em;
  font-size: 1.1rem;

  color: rgba(235, 255, 200, 0.96);

  background: linear-gradient(
    180deg,
    rgba(10, 46, 20, 0.96),
    rgba(6, 28, 12, 0.98)
  );

  border: 1px solid rgba(190, 220, 120, 0.34);

  box-shadow:
    0 18px 40px rgba(0,0,0,0.30),
    0 8px 22px rgba(170,210,170,0.16),
    inset 0 1px 0 rgba(255,255,255,0.06);

  cursor: pointer;

  transition:
    transform .26s cubic-bezier(.22,.61,.36,1),
    box-shadow .34s ease,
    border-color .34s ease,
    filter .34s ease;
}

body[data-page="plant-catalog"] .plant-add-to-cart:hover{
  transform: translateY(-3px);
  border-color: rgba(220, 240, 150, 0.60);

  box-shadow:
    0 28px 64px rgba(0,0,0,0.38),
    0 10px 28px rgba(170,210,170,0.22),
    inset 0 1px 0 rgba(255,255,255,0.10);

  filter: brightness(1.03);
}

body[data-page="plant-catalog"] .plant-add-to-cart:active{
  transform: translateY(-1px);
}

/* =========================================
   SHIPPING NOTE
========================================= */
body[data-page="plant-catalog"] .plant-card-content .plant-ship-note{
  color: rgba(92, 78, 28, 0.86);
  font-family: "Vollkorn", Georgia, serif;
  font-size: 1.1rem;
  line-height: 1.35;

  min-height: calc(1.05em * 4.2);

  margin-top: 0;
  margin-bottom: 1rem;
}

/* Style highlighted amount */
body[data-page="plant-catalog"] .plant-card-content .plant-ship-note strong{
  color: rgba(198, 190, 96, 0.95);
  font-weight: 600;
  letter-spacing: .03em;
  text-shadow:
    0 1px 0 rgba(255,255,255,.35),
    0 4px 10px rgba(0,0,0,.18);
}

/* =========================================
   MORE DETAILS BUTTON (secondary)
========================================= */
body[data-page="plant-catalog"] .plant-card-details-btn{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12.5rem;

  margin-top: 0;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;

  padding: .62rem .95rem;

  border-radius: 14px;
  text-decoration: none;

  font-family: "EWOAncient", serif;
  letter-spacing: .08em;
  font-size: .95rem;

  color: rgba(12, 24, 14, 0.92);

  background: linear-gradient(
    180deg,
    rgba(170, 210, 170, 0.26),
    rgba(170, 210, 170, 0.14)
  );

  border: 1px solid rgba(36, 66, 38, 0.24);

  box-shadow:
    0 12px 26px rgba(0,0,0,0.14),
    inset 0 1px 0 rgba(255,255,255,0.55);

  transition:
    transform .22s ease,
    box-shadow .32s ease,
    border-color .32s ease,
    background .32s ease;
}

body[data-page="plant-catalog"] .plant-card-details-btn:hover{
  transform: translateY(-2px);
  border-color: rgba(120, 170, 120, 0.46);

  background: linear-gradient(
    180deg,
    rgba(170, 210, 170, 0.34),
    rgba(170, 210, 170, 0.18)
  );

  box-shadow:
    0 18px 40px rgba(0,0,0,0.16),
    0 10px 22px rgba(170,210,170,0.18),
    inset 0 1px 0 rgba(255,255,255,0.62);
}

.plant-divider{
  width: 72%;
  height: 1px;
  margin: .65rem auto .9rem auto;
  border: none;

  background: linear-gradient(
    90deg,
    rgba(212,175,55,0) 0%,
    rgba(212,175,55,.55) 20%,
    rgba(236,205,120,.85) 50%,
    rgba(212,175,55,.55) 80%,
    rgba(212,175,55,0) 100%
  );

  filter: blur(.2px);
}

/* =========================================
   ACCESSIBLE FOCUS (keyboard)
========================================= */
body[data-page="plant-catalog"] .plant-card-details-btn:focus-visible,
body[data-page="plant-catalog"] .plant-add-to-cart:focus-visible,
body[data-page="plant-catalog"] .plant-qty-select:focus-visible{
  outline: 2px solid rgba(170,210,170,0.55);
  outline-offset: 4px;
  border-radius: 16px;
}