/* FLORAVIA V9 FINAL — production polish layer.
   This file intentionally changes presentation only; cart/payment/order code is untouched. */
:root{
  --fl-final-green:#173f31;
  --fl-final-green-2:#285d49;
  --fl-final-rose:#c64366;
  --fl-final-blush:#fbf2f4;
  --fl-final-line:#eadfe2;
  --fl-final-text:#27322d;
}

html{scroll-behavior:smooth}
body{overflow-wrap:anywhere}

/* Consistent, visible keyboard focus without changing mouse/touch visuals. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:3px solid rgba(198,67,102,.38)!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 2px #fff!important;
}

/* Final homepage spacing and card rhythm. */
.floravia-home .floravia-shell{padding-bottom:8px}
.floravia-home .floravia-section-head{align-items:flex-end}
.floravia-home .floravia-section-head>div{max-width:760px}
.floravia-home .floravia-section-head p{max-width:690px}
.floravia-home .eyebrow{letter-spacing:.14em}
.floravia-home img{max-width:100%}

.floravia-v8-product-card,.floravia-editor-card,.floravia-signature-card,.floravia-occasion-card,
.floravia-last-mile-card,.floravia-quick-gift-card{
  -webkit-tap-highlight-color:transparent;
}

.floravia-v8-product-card{position:relative}
.floravia-v8-product-card:focus-within{
  border-color:rgba(198,67,102,.38);
  box-shadow:0 14px 34px rgba(23,63,49,.11);
}
.floravia-v8-product-photo img{background:#fff9fa}
.floravia-v8-product-title{word-break:normal;overflow-wrap:break-word}
.floravia-v8-product-meta{min-height:22px}
.floravia-v8-product-cta{min-height:38px}

/* Give image rows stable layout to reduce content shift. */
.floravia-cat .pic,.floravia-editor-photo,.floravia-signature-card>img,.floravia-v8-mood-mini>img,
.floravia-v8-mood-main>img,.floravia-promo,.floravia-v8-product-photo{background-color:#fbf6f7}

/* Soft final state for current category link. */
.floravia-categories a[aria-current="page"]{
  color:var(--fl-final-green)!important;
  font-weight:800;
}
.floravia-categories a[aria-current="page"] .pic{
  box-shadow:0 0 0 3px #fff,0 0 0 5px rgba(198,67,102,.25),0 10px 25px rgba(23,63,49,.08);
}

/* Checkout and form presentation stays visual-only. */
input,select,textarea{max-width:100%}
.form-control:focus,input:focus,select:focus,textarea:focus{border-color:rgba(198,67,102,.45)}

/* Images that fail receive a clean neutral surface; JS swaps only Floravia-owned assets. */
.floravia-img-fallback{object-fit:contain!important;padding:16px;background:#fff8f9!important}

@media(max-width:991px){
  .floravia-home .floravia-section-head{align-items:flex-start}
  .floravia-home .floravia-section-head>a{margin-top:8px}
}

@media(max-width:767px){
  html{scroll-padding-top:68px}
  .floravia-home .floravia-shell{padding-left:12px;padding-right:12px}
  .floravia-home .floravia-section-head h2{line-height:1.08}
  .floravia-v8-product-cta{min-height:42px;font-size:10px}
  .floravia-v8-product-photo{min-height:210px}
  .floravia-cat{min-width:82px}
  .floravia-cat .pic{width:68px;height:68px}
}

@media(max-width:430px){
  .floravia-home .floravia-section-head h2{font-size:25px}
  .floravia-v8-product-card{min-width:80vw}
  .floravia-v8-product-photo{min-height:225px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{scroll-behavior:auto!important}
}
