/* CAFFÉ TRIESTE v0.8.3 — Figma fidelity: Blog set 648×533, CTA variants and native Woo Featured badge. */

/* Blog cards: image fills whole card, content over a dark bottom gradient.
   Figma Blog set 127:8850 / 131:11922, with 35px horizontal and 34px bottom inset. */
.ct-blog-section .ct-blog-rail>.ct-blog-card{
  flex:0 0 648px;position:relative;width:648px;height:533px;min-height:533px;
  border-radius:16px;isolation:isolate;overflow:hidden;display:block;
  background:#4c4341;color:#fff;scroll-snap-align:start;
}
.ct-blog-section .ct-blog-card__image{
  position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block;
  border-radius:inherit;overflow:hidden;background:#4c4341;
}
.ct-blog-section .ct-blog-card__image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;}
.ct-blog-section .ct-blog-card::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.03) 17%,rgba(0,0,0,.22) 44%,rgba(0,0,0,.91) 100%);
}
.ct-blog-section .ct-blog-card__body{
  position:absolute;z-index:2;left:35px;right:35px;bottom:34px;
  padding:0;display:flex;flex-direction:column;align-items:flex-start;gap:0;
  min-width:0;background:transparent;color:#fff;
}
.ct-blog-section .ct-blog-card__category{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:35px;padding:8px 10px;margin:0 0 8px;border-radius:20px;
  font:400 14px/1.2 Archivo,Arial,sans-serif;background:#fff;color:#4c4341;
}
.ct-blog-section .ct-blog-card__body h3{
  margin:0 0 18px;padding:0;font:600 42px/1.1 Archivo,Arial,sans-serif;
  letter-spacing:0;max-width:100%;color:#fff;
}
.ct-blog-section .ct-blog-card__body h3 a,
.ct-blog-section .ct-blog-card__body h3 a:hover,
.ct-blog-section .ct-blog-card__body h3 a:focus-visible{color:#fff;text-decoration:none}
.ct-blog-section .ct-blog-card__body h3 a:focus-visible{text-decoration:underline;outline:2px solid #fff;outline-offset:3px}
.ct-blog-section .ct-blog-card__meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px;
  color:#fff;font:400 14px/1.4 Archivo,Arial,sans-serif;
}
.ct-blog-section .ct-blog-card__body .ct-special-cta{
  min-height:63px;flex:none;max-width:100%;
}
.ct-blog-section .ct-blog-card__body .ct-special-cta__label{min-height:63px}
.ct-blog-section .ct-blog-card__body .ct-special-cta:hover .ct-special-cta__label{background:transparent}
/* Correct native WooCommerce single-product CTA: Figma default is red label,
   attached black circle; on hover the label becomes black and the icon circle red. */
.ct-pdp-hero__cart form.cart button.single_add_to_cart_button{
  background-color:#d13239!important;color:#fff!important;
  transition:background-color 1.25s cubic-bezier(.2,.8,.2,1)!important;
}
.ct-pdp-hero__cart form.cart button.single_add_to_cart_button::after{
  background-color:#191919!important;
  transition:background-color 1.25s cubic-bezier(.2,.8,.2,1),
             width 1.25s cubic-bezier(.2,.8,.2,1),
             height 1.25s cubic-bezier(.2,.8,.2,1),
             margin 1.25s cubic-bezier(.2,.8,.2,1)!important;
}
.ct-pdp-hero__cart form.cart button.single_add_to_cart_button:hover,
.ct-pdp-hero__cart form.cart button.single_add_to_cart_button:focus-visible{
  background-color:#191919!important;color:#fff!important;
}
.ct-pdp-hero__cart form.cart button.single_add_to_cart_button:hover::after,
.ct-pdp-hero__cart form.cart button.single_add_to_cart_button:focus-visible::after{
  background-color:#d13239!important;
  flex-basis:48px!important;width:48px!important;height:48px!important;
  margin:7.5px 7.5px 7.5px 22.5px!important;
}
/* Keep desktop/mob responsive and avoid shrinking the editorial cards into columns. */
@media(max-width:767px){
 .ct-blog-section .ct-blog-rail>.ct-blog-card{
    width:min(86vw,360px);flex-basis:min(86vw,360px);height:390px;min-height:390px;
 }
 .ct-blog-section .ct-blog-card__body{left:20px;right:20px;bottom:20px}
 .ct-blog-section .ct-blog-card__body h3{font-size:clamp(25px,7.1vw,31px);line-height:1.12;margin-bottom:12px}
 .ct-blog-section .ct-blog-card__category{font-size:12px;min-height:29px;margin-bottom:10px}
 .ct-blog-section .ct-blog-card__meta{font-size:11px;gap:6px;margin-bottom:14px}
 .ct-blog-section .ct-blog-card__body .ct-special-cta,
 .ct-blog-section .ct-blog-card__body .ct-special-cta__label{min-height:48px}
 .ct-blog-section .ct-blog-card__body .ct-special-cta__disk{width:48px;height:48px}
 .ct-pdp-hero__cart form.cart button.single_add_to_cart_button:hover::after,
 .ct-pdp-hero__cart form.cart button.single_add_to_cart_button:focus-visible::after{
    width:42px!important;height:42px!important;flex-basis:42px!important;margin:7px 7px 7px 15px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .ct-pdp-hero__cart form.cart button.single_add_to_cart_button,
 .ct-pdp-hero__cart form.cart button.single_add_to_cart_button::after{transition:none!important}
}
