/*
Theme Name: Si Fortuna Premium
Theme URI: https://edherlemann.com.br/
Author: Edherlemann
Author URI: https://edherlemann.com.br/
Description: Tema próprio da Si Fortuna Reborns, com foco em conversão, WooCommerce e compatibilidade com Elementor.
Version: 6.16.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: si-fortuna-premium
License: GPL-2.0-or-later
*/

:root {
  --sf-bg: #fffaf8;
  --sf-surface: #ffffff;
  --sf-blush: #f9ecef;
  --sf-rose: #b96f80;
  --sf-rose-dark: #844553;
  --sf-wine: #3a292e;
  --sf-text: #2f272a;
  --sf-muted: #786d70;
  --sf-line: #eadcdf;
  --sf-radius: 24px;
  --sf-shadow: 0 20px 54px rgba(83, 48, 57, .12);
  --sf-max: 1200px;
  --sf-soft: #f4dfe4;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--sf-text);
  background: var(--sf-bg);
  font-family: "Manrope", Arial, sans-serif;
  line-height: 1.65;
}
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
.sf-container { width: min(calc(100% - 32px), var(--sf-max)); margin-inline: auto; }
.sf-section { padding: 88px 0; }
.sf-section-title {
  margin: 0 0 14px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.25rem, 4.7vw, 4.6rem);
  line-height: .98;
  letter-spacing: -.035em;
}
.sf-kicker {
  color: var(--sf-rose-dark);
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: .75rem;
  font-weight: 800;
}
.sf-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 22px;
  border: 1px solid var(--sf-rose);
  border-radius: 999px;
  background: var(--sf-rose);
  color: #fff;
  font-weight: 800;
  transition: .2s ease;
}
.sf-btn:hover { transform: translateY(-2px); background: var(--sf-rose-dark); color: #fff; }
.sf-btn--outline { background: transparent; color: var(--sf-rose-dark); }
.sf-btn--outline:hover { color: #fff; }

/* Header */
.sf-topbar {
  padding: 8px 16px;
  background: var(--sf-wine);
  color: #fff;
  text-align: center;
  font-size: .82rem;
}
.sf-header {
  position: sticky; top: 0; z-index: 999;
  background: rgba(255,250,248,.94);
  border-bottom: 1px solid rgba(234,220,223,.9);
  backdrop-filter: blur(14px);
}
.sf-header-inner {
  min-height: 78px;
  display: grid;
  grid-template-columns: 180px 1fr auto;
  align-items: center;
  gap: 24px;
}
.sf-logo img { display:block; max-height: 68px; width:auto; }
.sf-menu { display:flex; justify-content:center; align-items:center; gap:26px; list-style:none; padding:0; margin:0; }
.sf-menu a { font-size:.91rem; font-weight:800; }
.sf-menu a:hover { color:var(--sf-rose); }
.sf-header-actions { display:flex; gap:12px; align-items:center; }
.sf-cart { position:relative; font-size:1.25rem; }
.sf-cart-count {
  position:absolute; top:-9px; right:-10px; width:20px; height:20px;
  display:grid; place-items:center; border-radius:50%;
  background:var(--sf-rose); color:#fff; font-size:.68rem; font-weight:900;
}
.sf-menu-toggle { display:none; border:0; background:transparent; font-size:1.4rem; }

/* Hero */
.sf-hero {
  min-height: 720px;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 20%, rgba(185,111,128,.14), transparent 34%),
    linear-gradient(135deg,#fffaf8,#f7e7eb);
}
.sf-hero-grid {
  min-height: 720px;
  display:grid; grid-template-columns: 1.03fr .97fr;
  align-items:center; gap:48px;
}
.sf-hero h1 {
  max-width: 720px;
  margin:16px 0 22px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(3.7rem,7.2vw,7.4rem);
  line-height:.84;
  letter-spacing:-.055em;
  font-weight:600;
}
.sf-hero h1 em { color:var(--sf-rose); font-weight:500; }
.sf-hero-copy > p { max-width:640px; color:var(--sf-muted); font-size:1.08rem; }
.sf-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.sf-social-proof { display:flex; flex-wrap:wrap; gap:18px; margin-top:28px; color:#61575a; font-size:.88rem; font-weight:800; }
.sf-social-proof span::before { content:"✓"; color:var(--sf-rose); margin-right:7px; }
.sf-hero-visual { min-height:620px; position:relative; display:flex; align-items:flex-end; justify-content:center; }
.sf-hero-visual::before {
  content:""; position:absolute; width:470px; height:470px; border-radius:50%;
  background:rgba(255,255,255,.72); box-shadow:var(--sf-shadow);
  bottom:50px; right:12px;
}
.sf-hero-visual img { position:relative; z-index:2; max-height:610px; object-fit:contain; filter:drop-shadow(0 22px 28px rgba(67,35,44,.15)); }
.sf-floating-badge {
  position:absolute; z-index:3; top:90px; right:0; padding:18px 20px;
  border-radius:18px; background:#fff; box-shadow:var(--sf-shadow); text-align:center;
}
.sf-floating-badge strong { display:block; font-family:"Cormorant Garamond",serif; color:var(--sf-rose-dark); font-size:2rem; line-height:1; }

/* Authority */
.sf-authority { background:var(--sf-wine); color:#fff; }
.sf-authority-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.sf-stat { padding:30px 18px; text-align:center; border-right:1px solid rgba(255,255,255,.13); }
.sf-stat:last-child { border-right:0; }
.sf-stat strong { display:block; font-family:"Cormorant Garamond",serif; color:#f1c8d1; font-size:2.25rem; line-height:1; }
.sf-stat span { color:#ddd; font-size:.84rem; }

/* Product cards */
.sf-products-header { max-width:760px; margin:0 auto 40px; text-align:center; }
.sf-products-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.sf-product-card {
  overflow:hidden; background:#fff; border:1px solid var(--sf-line); border-radius:22px;
  box-shadow:0 10px 30px rgba(77,44,52,.06); transition:.25s;
}
.sf-product-card:hover { transform:translateY(-6px); box-shadow:var(--sf-shadow); }
.sf-product-image { position:relative; aspect-ratio:4/5; overflow:hidden; background:var(--sf-blush); }
.sf-product-image img { width:100%; height:100%; object-fit:cover; transition:.35s; }
.sf-product-card:hover .sf-product-image img { transform:scale(1.035); }
.sf-product-badge { position:absolute; top:14px; left:14px; background:#fff; border-radius:999px; padding:7px 10px; font-size:.7rem; font-weight:900; }
.sf-product-body { padding:20px; }
.sf-product-body h3 { margin:0 0 7px; font-family:"Cormorant Garamond",serif; font-size:1.55rem; }
.sf-product-price { margin:12px 0; font-size:1.06rem; font-weight:900; }
.sf-product-card .sf-btn { width:100%; border-radius:12px; min-height:44px; }

/* Editorial sections */
.sf-split { display:grid; grid-template-columns:1fr 1fr; gap:58px; align-items:center; }
.sf-editorial-image { min-height:560px; border-radius:30px; overflow:hidden; box-shadow:var(--sf-shadow); }
.sf-editorial-image img { width:100%; height:100%; object-fit:cover; }
.sf-feature-list { display:grid; gap:13px; margin-top:24px; }
.sf-feature { display:flex; gap:14px; padding:16px 18px; background:#fff; border:1px solid var(--sf-line); border-radius:16px; }
.sf-feature i { color:var(--sf-rose); font-style:normal; font-size:1.2rem; }
.sf-feature b { display:block; }

/* Video */
.sf-video-section { background:var(--sf-wine); color:#fff; }
.sf-video-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:48px; align-items:center; }
.sf-video-section p { color:#ddd; }
.sf-video-wrap {
  position:relative; aspect-ratio:16/9; overflow:hidden; border-radius:28px; background:#111; box-shadow:0 25px 60px rgba(0,0,0,.26);
}
.sf-video-wrap iframe, .sf-video-wrap video { width:100%; height:100%; border:0; }

/* About */
.sf-about { background:var(--sf-blush); }
.sf-about-photo { min-height:500px; overflow:hidden; border-radius:30px; box-shadow:var(--sf-shadow); }
.sf-about-photo img { width:100%; height:100%; object-fit:cover; }
.sf-mini-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:24px; }
.sf-mini-stat { padding:17px; background:#fff; border:1px solid var(--sf-line); border-radius:15px; }
.sf-mini-stat strong { display:block; font:600 1.5rem "Cormorant Garamond",serif; color:var(--sf-rose-dark); }

/* Media & Blog */
.sf-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.sf-content-card { overflow:hidden; background:#fff; border:1px solid var(--sf-line); border-radius:20px; }
.sf-content-card img { width:100%; aspect-ratio:16/10; object-fit:cover; }
.sf-content-card-body { padding:22px; }
.sf-content-card h3 { margin:6px 0 10px; font-family:"Cormorant Garamond",serif; font-size:1.55rem; line-height:1.05; }
.sf-content-card small { color:var(--sf-rose-dark); font-weight:900; text-transform:uppercase; letter-spacing:.08em; }

/* Courses */
.sf-course-box {
  display:grid; grid-template-columns:1fr .92fr; overflow:hidden;
  border-radius:32px; background:linear-gradient(135deg,#f8e9ed,#fff);
  border:1px solid var(--sf-line); box-shadow:var(--sf-shadow);
}
.sf-course-copy { padding:52px; }
.sf-course-image img { width:100%; height:100%; min-height:430px; object-fit:cover; }

/* Instagram */
.sf-instagram-fallback { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
.sf-instagram-fallback img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:12px; }

/* Footer */
.sf-footer { background:#251d20; color:#ddd; padding:54px 0 28px; }
.sf-footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:36px; }
.sf-footer h3,.sf-footer h4 { color:#fff; }
.sf-footer a { display:block; margin:8px 0; color:#ddd; }
.sf-footer-bottom { margin-top:36px; padding-top:24px; border-top:1px solid rgba(255,255,255,.12); color:#999; font-size:.82rem; }

/* WooCommerce basics */
.woocommerce .button, .woocommerce button.button, .woocommerce a.button,
.woocommerce input.button, .woocommerce #respond input#submit {
  border-radius:999px!important; background:var(--sf-rose)!important; color:#fff!important;
}
.woocommerce div.product p.price, .woocommerce div.product span.price { color:var(--sf-rose-dark)!important; }
.woocommerce span.onsale { background:var(--sf-rose)!important; }
.sf-main { min-height:55vh; }
.sf-content-wrap { padding:55px 0; }

/* Elementor */
.elementor-page .sf-content-wrap { padding:0; }
.elementor-page .entry-content { margin:0; }
.elementor-section.elementor-section-boxed > .elementor-container,
.e-con.e-con-boxed > .e-con-inner { max-width:var(--sf-max); }

/* Mobile */
@media (max-width: 1024px) {
  .sf-header-inner { grid-template-columns:150px 1fr auto; }
  .sf-menu { gap:16px; }
  .sf-hero-grid,.sf-split,.sf-video-grid { gap:34px; }
  .sf-products-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 820px) {
  .sf-header-inner { grid-template-columns:1fr auto; }
  .sf-navigation { display:none; grid-column:1/-1; }
  .sf-navigation.is-open { display:block; }
  .sf-menu { flex-direction:column; align-items:flex-start; padding:18px 0; }
  .sf-menu-toggle { display:block; }
  .sf-header-actions .sf-btn { display:none; }
  .sf-hero,.sf-hero-grid { min-height:auto; }
  .sf-hero-grid,.sf-split,.sf-video-grid,.sf-course-box { grid-template-columns:1fr; }
  .sf-hero-copy { padding-top:56px; }
  .sf-hero-visual { min-height:500px; }
  .sf-authority-grid { grid-template-columns:repeat(2,1fr); }
  .sf-stat:nth-child(2) { border-right:0; }
  .sf-stat:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.13); }
  .sf-card-grid { grid-template-columns:1fr 1fr; }
  .sf-footer-grid { grid-template-columns:1fr 1fr; }
  .sf-instagram-fallback { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 560px) {
  .sf-container { width:min(calc(100% - 22px),var(--sf-max)); }
  .sf-section { padding:64px 0; }
  .sf-logo img { max-height:54px; }
  .sf-hero-copy { padding-top:40px; }
  .sf-hero h1 { font-size:3.45rem; }
  .sf-actions { display:grid; }
  .sf-actions .sf-btn { width:100%; }
  .sf-hero-visual { min-height:390px; }
  .sf-hero-visual::before { width:340px; height:340px; right:-12px; bottom:20px; }
  .sf-hero-visual img { max-height:410px; }
  .sf-floating-badge { top:30px; right:0; padding:12px 14px; }
  .sf-authority-grid,.sf-products-grid,.sf-card-grid,.sf-footer-grid,.sf-mini-stats { grid-template-columns:1fr; }
  .sf-stat { border-right:0; border-bottom:1px solid rgba(255,255,255,.13); }
  .sf-course-copy { padding:30px 22px; }
}

/* v2.1 refinements */
.sf-brand-statement {
  max-width: 930px; margin: 0 auto; text-align:center;
  padding: 34px 28px; border:1px solid var(--sf-line); border-radius:24px;
  background:linear-gradient(135deg,#fff,#fbf0f3); box-shadow:0 12px 34px rgba(83,48,57,.07);
}
.sf-brand-statement p { margin:0; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(1.6rem,3vw,2.65rem); line-height:1.16; color:var(--sf-rose-dark); }
.sf-art-direction { background:linear-gradient(180deg,#fffaf8,#fff); }
.sf-art-direction .sf-split { align-items:stretch; }
.sf-art-direction-copy { display:flex; flex-direction:column; justify-content:center; }
.sf-art-direction-note { margin-top:22px; padding:18px 20px; border-left:4px solid var(--sf-rose); background:#fff; border-radius:0 14px 14px 0; color:var(--sf-muted); }
.sf-art-direction-note strong { color:var(--sf-rose-dark); }


/* YouTube dinâmico */
.sf-youtube-featured {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 16/9;
  border-radius: 28px;
  background: #171214;
  box-shadow: 0 25px 60px rgba(0,0,0,.26);
}
.sf-youtube-featured img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .88;
  transition: transform .3s ease, opacity .3s ease;
}
.sf-youtube-featured:hover img { transform: scale(1.03); opacity: .72; }
.sf-play {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%,-50%);
  width: 82px; height: 82px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: rgba(255,255,255,.94);
  color: var(--sf-rose-dark);
  font-size: 2rem;
  box-shadow: 0 18px 45px rgba(0,0,0,.24);
}
.sf-youtube-title {
  position: absolute;
  left: 24px; right: 24px; bottom: 22px;
  color: #fff; font-weight: 800;
  text-shadow: 0 2px 10px rgba(0,0,0,.7);
}
.sf-video-cards {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
}
.sf-video-card {
  overflow: hidden;
  border-radius: 18px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
}
.sf-video-card img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}
.sf-video-card div { padding: 15px; }
.sf-video-card strong { display:block; color:#fff; line-height:1.3; }
.sf-video-card small { color:#d7c8cc; }

.sf-media-card-link { display:block; height:100%; }
.sf-media-card-link:hover h3 { color: var(--sf-rose-dark); }

.sf-admin-note {
  padding: 12px 15px;
  border-left: 4px solid var(--sf-rose);
  background: #fff7f9;
}

@media (max-width: 820px) {
  .sf-video-cards { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .sf-video-cards { grid-template-columns: 1fr; }
  .sf-play { width:64px;height:64px;font-size:1.45rem; }
}


/* === Header refinado v3.1 === */
.sf-header { position: sticky; top: 0; z-index: 999; }
.sf-header-inner {
  min-height: 104px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 34px;
  padding-block: 10px;
}
.sf-logo {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  align-self: center;
  line-height: 0;
}
.sf-logo .custom-logo-link,
.sf-logo > a { display:flex; align-items:center; line-height:0; }
.sf-logo img,
.sf-logo .custom-logo {
  display: block;
  width: auto;
  height: auto;
  max-width: 150px;
  max-height: 82px;
  object-fit: contain;
  margin: 0;
}
.sf-navigation { flex: 1 1 auto; min-width: 0; }
.sf-menu {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 30px;
  margin: 0;
  padding: 0;
  list-style: none;
  white-space: nowrap;
}
.sf-menu a { font-size: .93rem; font-weight: 800; }
.sf-header-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 16px;
  white-space: nowrap;
}
.sf-header-actions .sf-btn {
  min-height: 46px;
  padding-inline: 23px;
  margin: 0;
}
.sf-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--sf-line);
  border-radius: 50%;
  background: #fff;
  line-height: 1;
}
.sf-cart-count { top:-5px; right:-5px; }

@media (max-width: 980px) {
  .sf-header-inner { gap: 18px; min-height: 88px; }
  .sf-logo img, .sf-logo .custom-logo { max-width: 125px; max-height: 68px; }
  .sf-menu { gap: 18px; }
  .sf-menu a { font-size: .85rem; }
  .sf-header-actions .sf-btn { padding-inline: 18px; }
}
@media (max-width: 820px) {
  .sf-header-inner {
    display: grid;
    grid-template-columns: 46px 1fr 46px;
    gap: 10px;
    min-height: 76px;
    padding-block: 6px;
  }
  .sf-menu-toggle { display:block; grid-column:1; grid-row:1; }
  .sf-logo { grid-column:2; grid-row:1; justify-content:center; }
  .sf-logo img, .sf-logo .custom-logo { max-width: 112px; max-height: 58px; }
  .sf-header-actions { grid-column:3; grid-row:1; justify-content:flex-end; }
  .sf-header-actions .sf-btn { display:none; }
  .sf-header-actions .sf-cart { display:inline-flex; }
  .sf-navigation { grid-column:1/-1; grid-row:2; width:100%; }
  .sf-navigation.is-open { display:block; }
  .sf-menu { flex-direction:column; align-items:stretch; gap:0; padding:10px 0 16px; white-space:normal; }
  .sf-menu li { border-top:1px solid var(--sf-line); }
  .sf-menu a { display:block; padding:13px 8px; font-size:.95rem; }
}


/* v3.2 — vitrine da Home e correções mobile */
.sf-products-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.sf-product-card { border-radius: 18px; }
.sf-product-image {
  aspect-ratio: 4 / 4.7;
  border-radius: 18px 18px 0 0;
}
.sf-product-image img { object-position: center top; }
.sf-product-body { padding: 15px 16px 17px; }
.sf-product-body h3 {
  font-size: 1.32rem;
  line-height: 1.05;
  margin-bottom: 5px;
}
.sf-product-price { margin: 8px 0 12px; }
.sf-product-badge {
  top: 10px;
  left: 10px;
  padding: 5px 8px;
  font-size: .64rem;
}
.sf-product-card .sf-btn {
  min-height: 40px;
  padding: 9px 13px;
  font-size: .82rem;
}

@media (max-width: 1024px) {
  .sf-products-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
  }
  .sf-product-body { padding: 12px; }
  .sf-product-body h3 { font-size: 1.16rem; }
}
@media (max-width: 820px) {
  .sf-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
  .sf-floating-badge {
    top: auto;
    right: 10px;
    bottom: 22px;
  }
}
@media (max-width: 560px) {
  .sf-hero-visual { padding-top: 28px; }
  .sf-floating-badge {
    top: auto;
    right: 8px;
    bottom: 8px;
    padding: 10px 12px;
    max-width: 126px;
    line-height: 1.15;
  }
  .sf-floating-badge strong { font-size: 1.45rem; }
  .sf-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .sf-product-image { aspect-ratio: 4 / 5; }
  .sf-product-body { padding: 10px; }
  .sf-product-body h3 { font-size: 1.05rem; }
  .sf-product-price { font-size: .9rem; }
  .sf-product-card .sf-btn {
    min-height: 36px;
    font-size: .72rem;
    padding: 7px 8px;
  }
}


/* v3.3 — refinamento da vitrine e direção artística */
.sf-products-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}
.sf-product-card {
  overflow: hidden;
  border-radius: 18px;
}
.sf-product-image {
  aspect-ratio: 4 / 4.25;
  border-radius: 18px 18px 0 0;
}
.sf-product-image img {
  object-fit: cover;
  object-position: center 18%;
}
.sf-product-badge {
  display: none !important;
}
.sf-product-body {
  padding: 15px 16px 17px;
}
.sf-product-body h3 {
  min-height: 2.2em;
  font-size: 1.26rem;
  line-height: 1.05;
}
.sf-product-price {
  margin: 7px 0 12px;
}
.sf-product-card .sf-btn {
  min-height: 40px;
  font-size: .82rem;
}

/* Nova composição da direção artística */
.sf-art-direction {
  background: #fff;
}
.sf-art-direction .sf-split {
  grid-template-columns: 1.05fr .95fr;
  align-items: center;
  gap: 64px;
}
.sf-art-direction .sf-editorial-image {
  min-height: 610px;
  border-radius: 30px;
}
.sf-art-direction .sf-editorial-image img {
  object-fit: cover;
  object-position: center center;
}
.sf-art-direction-copy {
  max-width: 610px;
}
.sf-art-direction-copy .sf-section-title {
  margin-bottom: 22px;
}
.sf-art-direction-copy > p {
  color: var(--sf-muted);
  font-size: 1.02rem;
}
.sf-art-direction-copy > p strong {
  color: var(--sf-text);
}
.sf-art-points {
  margin: 28px 0 0;
  padding: 24px 0 0;
  border-top: 1px solid var(--sf-line);
  display: grid;
  gap: 15px;
}
.sf-art-point {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 12px;
  align-items: start;
}
.sf-art-point i {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--sf-blush);
  color: var(--sf-rose-dark);
  font-style: normal;
  font-weight: 900;
}
.sf-art-point b {
  display: block;
  margin-bottom: 2px;
}
.sf-art-direction .sf-actions {
  margin-top: 28px;
}

@media (max-width: 1024px) {
  .sf-products-grid {
    gap: 14px;
  }
  .sf-art-direction .sf-split {
    gap: 40px;
  }
  .sf-art-direction .sf-editorial-image {
    min-height: 520px;
  }
}

@media (max-width: 820px) {
  .sf-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sf-art-direction .sf-split {
    grid-template-columns: 1fr;
  }
  .sf-art-direction .sf-editorial-image {
    min-height: 460px;
    order: 1;
  }
  .sf-art-direction-copy {
    order: 2;
    max-width: none;
  }
}

@media (max-width: 560px) {
  .sf-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .sf-product-image {
    aspect-ratio: 4 / 4.45;
  }
  .sf-product-body h3 {
    min-height: 0;
    font-size: 1rem;
  }
  .sf-product-card .sf-btn {
    font-size: .7rem;
    padding-inline: 7px;
  }
  .sf-art-direction .sf-editorial-image {
    min-height: 350px;
    border-radius: 22px;
  }
}


/* v3.4 — foto inteira, textos separados e redes sociais */
.sf-art-direction .sf-editorial-image {
  min-height: 0 !important;
  aspect-ratio: 4 / 3;
  background: var(--sf-blush);
}
.sf-art-direction .sf-editorial-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.sf-art-points {
  gap: 0;
}
.sf-art-point {
  padding: 15px 0;
  border-bottom: 1px solid var(--sf-line);
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: start;
}
.sf-art-point:first-child {
  border-top: 1px solid var(--sf-line);
}
.sf-art-point i {
  margin-top: 1px;
}
.sf-art-point div {
  min-width: 0;
}
.sf-art-point b {
  display: block !important;
  margin: 0 0 4px !important;
  font-size: .98rem;
  line-height: 1.25;
}
.sf-art-point span {
  display: block !important;
  color: var(--sf-muted);
  font-size: .91rem;
  line-height: 1.5;
}

.sf-social-links {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 22px;
}
.sf-social-link {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid var(--sf-line);
  border-radius: 11px;
  color: var(--sf-rose-dark);
  background: #fff;
  transition: .2s ease;
}
.sf-social-link:hover {
  transform: translateY(-2px);
  color: #fff;
  background: var(--sf-rose);
  border-color: var(--sf-rose);
}
.sf-social-link svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

@media (max-width: 820px) {
  .sf-art-direction .sf-editorial-image {
    aspect-ratio: 16 / 11;
  }
}
@media (max-width: 560px) {
  .sf-art-direction .sf-editorial-image {
    aspect-ratio: 4 / 3;
  }
  .sf-art-point {
    grid-template-columns: 30px minmax(0,1fr);
    padding: 13px 0;
  }
}


/* v3.5 — cabeçalho mobile em uma única linha */
@media (max-width: 820px) {
  .sf-topbar {
    padding: 7px 12px;
    font-size: .76rem;
    line-height: 1.35;
  }

  .sf-header-inner {
    min-height: 72px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) 46px;
    grid-template-areas:
      "toggle logo actions"
      "nav nav nav";
    align-items: center;
    gap: 0;
    padding-block: 6px;
  }

  .sf-menu-toggle {
    grid-area: toggle;
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    padding: 0;
    margin: 0;
    font-size: 1.65rem;
    line-height: 1;
    color: var(--sf-text);
  }

  .sf-logo {
    grid-area: logo;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 0;
  }

  .sf-logo img,
  .sf-logo .custom-logo {
    display: block;
    width: auto;
    max-width: 132px;
    max-height: 56px;
    margin: 0 auto;
    object-fit: contain;
  }

  .sf-header-actions {
    grid-area: actions;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0;
  }

  .sf-header-actions .sf-btn {
    display: none !important;
  }

  .sf-cart {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid var(--sf-line);
    border-radius: 50%;
    background: #fff;
    font-size: 1.12rem;
  }

  .sf-cart-count {
    top: -5px;
    right: -4px;
  }

  .sf-navigation {
    grid-area: nav;
    width: 100%;
    margin-top: 4px;
    border-top: 1px solid var(--sf-line);
    background: var(--sf-bg);
  }

  .sf-navigation.is-open {
    display: block;
  }

  .sf-menu {
    gap: 0;
    padding: 8px 0 12px;
  }

  .sf-menu li {
    width: 100%;
  }

  .sf-menu a {
    display: block;
    width: 100%;
    padding: 11px 4px;
    border-bottom: 1px solid rgba(234,220,223,.75);
  }
}

@media (max-width: 560px) {
  .sf-header-inner {
    min-height: 68px;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
  }

  .sf-logo img,
  .sf-logo .custom-logo {
    max-width: 116px;
    max-height: 50px;
  }

  .sf-menu-toggle,
  .sf-cart {
    width: 40px;
    height: 40px;
  }
}


/* v3.6 — direção artística mais compacta e equilibrada */
.sf-art-direction{padding:58px 0!important;}
.sf-art-direction-head{max-width:980px;margin:0 auto 34px;text-align:center;}
.sf-art-direction-head .sf-section-title{max-width:900px;margin:10px auto 0;}
.sf-art-direction-body{display:grid;grid-template-columns:.95fr 1.05fr;gap:52px;align-items:center;}
.sf-art-direction .sf-editorial-image{aspect-ratio:16/10;min-height:0!important;align-self:center;}
.sf-art-direction-copy{max-width:620px;align-self:center;}
.sf-art-direction-copy>p:first-of-type{margin-top:0;}
.sf-art-direction-copy>p:last-of-type{margin-bottom:18px;}
.sf-art-points{margin-top:20px;padding-top:0;}
.sf-social-links{margin-top:18px;}
@media(max-width:1024px){.sf-art-direction{padding:48px 0!important}.sf-art-direction-body{gap:36px}}
@media(max-width:820px){.sf-art-direction-head{margin-bottom:26px}.sf-art-direction-body{grid-template-columns:1fr;gap:24px}.sf-art-direction .sf-editorial-image{aspect-ratio:16/10}.sf-art-direction-copy{max-width:none}}
@media(max-width:560px){.sf-art-direction{padding:42px 0!important}.sf-art-direction-head{text-align:left;margin-bottom:20px}.sf-art-direction-head .sf-section-title{margin-left:0;margin-right:0}.sf-art-direction .sf-editorial-image{aspect-ratio:4/3}}


/* v3.7 — correção estrutural definitiva da logo no mobile */
.sf-logo {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  line-height: 0;
}
.sf-logo .custom-logo-link,
.sf-logo .sf-logo-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}
.sf-logo .custom-logo,
.sf-logo .sf-logo-fallback img {
  display: block;
  width: auto;
  height: auto;
  object-fit: contain;
}

@media (max-width: 820px) {
  .sf-header {
    position: sticky;
    top: 0;
  }

  .sf-header-inner {
    width: min(calc(100% - 24px), var(--sf-max));
    min-height: 70px;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    grid-template-areas:
      "toggle logo actions"
      "nav nav nav" !important;
    align-items: center;
    padding: 7px 0;
  }

  .sf-menu-toggle {
    grid-area: toggle !important;
    justify-self: start;
  }

  .sf-logo {
    grid-area: logo !important;
    justify-self: center;
    width: 138px;
    height: 54px;
    overflow: visible;
  }

  .sf-logo .custom-logo-link,
  .sf-logo .sf-logo-fallback {
    width: 100%;
    height: 100%;
  }

  .sf-logo .custom-logo,
  .sf-logo .sf-logo-fallback img {
    max-width: 132px !important;
    max-height: 52px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
  }

  .sf-header-actions {
    grid-area: actions !important;
    justify-self: end;
  }

  .sf-navigation {
    grid-area: nav !important;
  }
}

@media (max-width: 560px) {
  .sf-topbar {
    padding: 6px 10px;
    font-size: .72rem;
  }

  .sf-header-inner {
    min-height: 64px;
    grid-template-columns: 42px minmax(0, 1fr) 42px !important;
  }

  .sf-logo {
    width: 122px;
    height: 48px;
  }

  .sf-logo .custom-logo,
  .sf-logo .sf-logo-fallback img {
    max-width: 116px !important;
    max-height: 46px !important;
  }

  .sf-menu-toggle,
  .sf-cart {
    width: 38px;
    height: 38px;
  }
}


/* v3.8 — seção de vídeos editorial e dinâmica */
.sf-video-section {
  padding: 72px 0;
}
.sf-video-grid {
  grid-template-columns: .72fr 1.28fr;
  gap: 56px;
}
.sf-video-copy {
  max-width: 500px;
}
.sf-video-copy .sf-section-title {
  margin-bottom: 18px;
}
.sf-video-copy p {
  max-width: 470px;
}
.sf-youtube-featured {
  min-height: 430px;
}
.sf-youtube-featured::after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  background: linear-gradient(transparent, rgba(20,10,13,.78));
  pointer-events: none;
}
.sf-youtube-title {
  z-index: 2;
  max-width: 85%;
  font-size: 1.08rem;
  line-height: 1.35;
}
.sf-youtube-date {
  position: absolute;
  z-index: 2;
  left: 24px;
  bottom: 62px;
  color: rgba(255,255,255,.78);
  font-size: .77rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.sf-play {
  z-index: 3;
}
.sf-video-cards {
  grid-template-columns: repeat(3, minmax(0,1fr));
  margin-top: 24px;
}
.sf-video-card {
  background: rgba(255,255,255,.075);
}
.sf-video-card strong {
  font-size: .88rem;
}
.sf-video-card small {
  display: block;
  margin-top: 6px;
  font-size: .72rem;
}

@media (max-width: 1024px) {
  .sf-video-grid {
    gap: 36px;
  }
  .sf-youtube-featured {
    min-height: 360px;
  }
}
@media (max-width: 820px) {
  .sf-video-section {
    padding: 58px 0;
  }
  .sf-video-grid {
    grid-template-columns: 1fr;
  }
  .sf-video-copy {
    max-width: none;
  }
  .sf-youtube-featured {
    min-height: 0;
  }
}
@media (max-width: 560px) {
  .sf-video-cards {
    grid-template-columns: 1fr;
  }
}


/* v3.9 — seção da artista mais compacta, sem corte da foto */
.sf-about {
  padding: 58px 0 !important;
}

.sf-about-head {
  max-width: 980px;
  margin: 0 auto 34px;
  text-align: center;
}

.sf-about-head .sf-section-title {
  max-width: 920px;
  margin: 10px auto 0;
}

.sf-about-body {
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: 52px;
  align-items: center;
}

.sf-about-copy {
  max-width: 630px;
}

.sf-about-copy > p:first-of-type {
  margin-top: 0;
}

.sf-about-photo {
  min-height: 0 !important;
  aspect-ratio: 16 / 11;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #f7e8ec;
  border-radius: 28px;
}

.sf-about-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center center !important;
  background: #f7e8ec;
}

.sf-mini-stats {
  margin-top: 22px;
}

@media (max-width: 1024px) {
  .sf-about {
    padding: 48px 0 !important;
  }

  .sf-about-body {
    gap: 36px;
  }
}

@media (max-width: 820px) {
  .sf-about-head {
    margin-bottom: 24px;
  }

  .sf-about-body {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .sf-about-copy {
    max-width: none;
  }

  .sf-about-photo {
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 560px) {
  .sf-about {
    padding: 42px 0 !important;
  }

  .sf-about-head {
    text-align: left;
    margin-bottom: 18px;
  }

  .sf-about-head .sf-section-title {
    margin-left: 0;
    margin-right: 0;
  }

  .sf-about-photo {
    aspect-ratio: 4 / 3;
    border-radius: 22px;
  }

  .sf-about-photo img {
    object-fit: contain !important;
  }

  .sf-mini-stats {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 10px;
  }
}


/* v4.0 — Home Na Mídia, Blog e Post individual */

/* Na mídia mais compacta na Home */
.sf-media-home {
  padding: 64px 0 !important;
}
.sf-media-home .sf-products-header {
  margin-bottom: 30px;
}
.sf-media-home .sf-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.sf-media-home .sf-content-card img {
  aspect-ratio: 16 / 8.6;
}
.sf-media-home .sf-content-card-body {
  padding: 18px;
}
.sf-media-home .sf-content-card h3 {
  font-size: 1.35rem;
  margin-bottom: 8px;
}
.sf-media-home .sf-content-card p {
  font-size: .9rem;
  margin-bottom: 0;
}

/* Blog */
.sf-blog-hero {
  padding: 58px 0 34px;
  text-align: center;
}
.sf-blog-hero p {
  max-width: 720px;
  margin: 14px auto 0;
  color: var(--sf-muted);
}
.sf-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
  padding-bottom: 70px;
}
.sf-blog-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--sf-line);
  border-radius: 18px;
  transition: .22s ease;
}
.sf-blog-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--sf-shadow);
}
.sf-blog-card-thumb {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--sf-blush);
}
.sf-blog-card-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sf-blog-card-body {
  padding: 18px;
}
.sf-blog-card-meta {
  color: var(--sf-rose-dark);
  font-size: .72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.sf-blog-card h2,
.sf-blog-card h3 {
  margin: 8px 0 10px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.48rem;
  line-height: 1.06;
}
.sf-blog-card p {
  margin: 0;
  color: var(--sf-muted);
  font-size: .9rem;
}

/* Post individual */
.sf-post-wrap {
  width: min(calc(100% - 32px), 980px);
  margin: 0 auto;
  padding: 54px 0 72px;
}
.sf-post-header {
  max-width: 820px;
  margin: 0 auto 28px;
}
.sf-post-kicker {
  color: var(--sf-rose-dark);
  font-size: .74rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.sf-post-title {
  margin: 8px 0 14px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.5rem, 5vw, 4.8rem);
  line-height: .96;
}
.sf-post-meta {
  color: var(--sf-muted);
  font-size: .86rem;
}
.sf-post-featured {
  max-width: 920px;
  margin: 0 auto 30px;
  overflow: hidden;
  border-radius: 22px;
  background: var(--sf-blush);
}
.sf-post-featured img {
  width: 100%;
  max-height: 560px;
  object-fit: contain;
  background: var(--sf-blush);
}
.sf-post-content {
  max-width: 760px;
  margin: 0 auto;
  font-size: 1.02rem;
}
.sf-post-content img,
.sf-post-content video,
.sf-post-content iframe {
  max-width: 100%;
  height: auto;
  border-radius: 16px;
}
.sf-post-content iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.sf-post-content video {
  width: 100%;
  max-height: 560px;
}
.sf-post-content p {
  margin: 0 0 1.25em;
}
.sf-related-posts {
  margin-top: 62px;
  padding-top: 42px;
  border-top: 1px solid var(--sf-line);
}
.sf-related-posts h2 {
  margin-bottom: 24px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2.25rem;
}
.sf-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
}

@media (max-width: 820px) {
  .sf-media-home .sf-card-grid,
  .sf-blog-grid,
  .sf-related-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 560px) {
  .sf-media-home {
    padding: 52px 0 !important;
  }
  .sf-media-home .sf-card-grid,
  .sf-blog-grid,
  .sf-related-grid {
    grid-template-columns: 1fr;
  }
  .sf-blog-hero {
    padding-top: 42px;
  }
  .sf-post-wrap {
    padding-top: 40px;
  }
  .sf-post-featured img {
    max-height: none;
  }
}


/* v4.1 — páginas internas do blog */
.sf-article {
  background: var(--sf-bg);
}

.sf-article-shell {
  width: min(calc(100% - 32px), 1080px);
  margin: 0 auto;
  padding: 52px 0 74px;
}

.sf-article-back {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 24px;
  color: var(--sf-rose-dark);
  font-size: .83rem;
  font-weight: 800;
}

.sf-article-header {
  max-width: 860px;
  margin: 0 auto 28px;
  text-align: center;
}

.sf-article-category {
  color: var(--sf-rose-dark);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .11em;
}

.sf-article-title {
  margin: 10px 0 16px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.7rem, 5.2vw, 5.1rem);
  font-weight: 600;
  line-height: .95;
  letter-spacing: -.035em;
}

.sf-article-subtitle {
  max-width: 720px;
  margin: 0 auto 15px;
  color: var(--sf-muted);
  font-size: 1.04rem;
}

.sf-article-meta {
  color: var(--sf-muted);
  font-size: .82rem;
}

.sf-article-featured {
  width: min(100%, 920px);
  margin: 0 auto 34px;
  overflow: hidden;
  border-radius: 24px;
  background: var(--sf-blush);
  box-shadow: 0 18px 44px rgba(63,35,42,.08);
}

.sf-article-featured img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: 560px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  background: var(--sf-blush);
}

.sf-article-content {
  max-width: 780px;
  margin: 0 auto;
  color: var(--sf-text);
  font-size: 1.04rem;
  line-height: 1.8;
}

.sf-article-content > * {
  max-width: 100%;
}

.sf-article-content p,
.sf-article-content ul,
.sf-article-content ol,
.sf-article-content blockquote {
  margin: 0 0 1.35em;
}

.sf-article-content h2,
.sf-article-content h3,
.sf-article-content h4 {
  margin-top: 1.6em;
  margin-bottom: .65em;
  font-family: "Cormorant Garamond", Georgia, serif;
  line-height: 1.05;
}

.sf-article-content h2 { font-size: 2.45rem; }
.sf-article-content h3 { font-size: 1.95rem; }

.sf-article-content img,
.sf-article-content figure img,
.sf-article-content .wp-block-image img {
  display: block;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 620px !important;
  object-fit: contain !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: 16px;
}

.sf-article-content figure,
.sf-article-content .wp-block-image,
.sf-article-content .wp-block-embed,
.sf-article-content .wp-block-video,
.sf-article-content .wp-block-media-text {
  width: 100% !important;
  max-width: 100% !important;
  margin: 28px auto !important;
}

.sf-article-content iframe,
.sf-article-content video,
.sf-article-content embed,
.sf-article-content object {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  max-height: 560px !important;
  margin: 28px auto !important;
  border: 0;
  border-radius: 18px;
  background: #111;
}

.sf-article-content .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 18px;
  background: #111;
}

.sf-article-content .wp-block-embed__wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

.sf-article-content .alignwide,
.sf-article-content .alignfull {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.sf-article-share {
  max-width: 780px;
  margin: 38px auto 0;
  padding-top: 24px;
  border-top: 1px solid var(--sf-line);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.sf-article-share-label {
  margin-right: 4px;
  font-size: .8rem;
  font-weight: 800;
}

.sf-share-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid var(--sf-line);
  border-radius: 999px;
  background: #fff;
  color: var(--sf-rose-dark);
  font-size: .78rem;
  font-weight: 800;
}

.sf-share-link:hover {
  background: var(--sf-rose);
  border-color: var(--sf-rose);
  color: #fff;
}

.sf-related-posts {
  max-width: 980px;
  margin: 58px auto 0;
  padding-top: 40px;
  border-top: 1px solid var(--sf-line);
}

.sf-related-heading {
  margin: 0 0 24px;
  text-align: center;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2.8rem;
  line-height: 1;
}

.sf-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
}

.sf-related-grid .sf-blog-card-thumb {
  aspect-ratio: 16 / 9;
}

.sf-related-grid .sf-blog-card h3 {
  min-height: 2.1em;
  font-size: 1.33rem;
}

@media (max-width: 820px) {
  .sf-article-shell {
    padding-top: 42px;
  }

  .sf-article-header {
    text-align: left;
  }

  .sf-article-title {
    font-size: clamp(2.55rem, 11vw, 4.2rem);
  }

  .sf-article-subtitle {
    margin-left: 0;
    margin-right: 0;
  }

  .sf-related-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 560px) {
  .sf-article-shell {
    width: min(calc(100% - 22px), 1080px);
    padding: 34px 0 56px;
  }

  .sf-article-title {
    font-size: 2.7rem;
  }

  .sf-article-featured {
    border-radius: 18px;
  }

  .sf-article-featured img {
    max-height: none !important;
  }

  .sf-article-content {
    font-size: 1rem;
    line-height: 1.72;
  }

  .sf-article-content iframe,
  .sf-article-content video,
  .sf-article-content .wp-block-embed__wrapper {
    border-radius: 14px;
  }

  .sf-related-grid {
    grid-template-columns: 1fr;
  }

  .sf-related-heading {
    text-align: left;
    font-size: 2.35rem;
  }
}


/* v4.2 — compartilhamento Instagram/nativo */
.sf-share-link--native {
  cursor: pointer;
  font-family: inherit;
}
.sf-share-feedback {
  display: none;
  color: var(--sf-muted);
  font-size: .76rem;
  margin-left: 4px;
}
.sf-share-feedback.is-visible {
  display: inline;
}


/* v4.3 — Home: artista, cursos e Instagram */

/* Remove a faixa vazia sob a foto da artista */
.sf-about-photo {
  aspect-ratio: auto !important;
  min-height: 0 !important;
  height: auto !important;
  display: block !important;
  overflow: hidden;
  padding: 0 !important;
  background: transparent !important;
}
.sf-about-photo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  background: transparent !important;
}

/* Banner dos cursos mais editorial */
.sf-course-box {
  grid-template-columns: .9fr 1.1fr;
  min-height: 500px;
  align-items: stretch;
}
.sf-course-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 54px;
}
.sf-course-copy .sf-section-title {
  font-size: clamp(2.8rem, 4.3vw, 4.8rem);
  max-width: 620px;
}
.sf-course-copy p {
  max-width: 560px;
  color: var(--sf-muted);
}
.sf-course-image {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  background: var(--sf-blush);
}
.sf-course-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(249,236,239,.18), transparent 34%);
  pointer-events: none;
}
.sf-course-image img {
  width: 100%;
  height: 100%;
  min-height: 500px;
  object-fit: cover;
  object-position: center 24%;
  filter: none;
}

/* Instagram real */
.sf-instagram-live {
  width: 100%;
}
.sf-instagram-placeholder {
  max-width: 780px;
  margin: 0 auto;
  padding: 30px;
  border: 1px dashed var(--sf-line);
  border-radius: 20px;
  background: var(--sf-blush);
  text-align: center;
}
.sf-instagram-placeholder p {
  margin: 0 0 16px;
  color: var(--sf-muted);
}
.sf-instagram-note {
  margin-top: 12px;
  color: var(--sf-muted);
  font-size: .8rem;
}

@media (max-width: 820px) {
  .sf-course-box {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .sf-course-copy {
    padding: 38px 28px;
  }
  .sf-course-image {
    min-height: 390px;
  }
  .sf-course-image img {
    min-height: 390px;
    object-position: center 20%;
  }
}
@media (max-width: 560px) {
  .sf-course-copy {
    padding: 30px 22px;
  }
  .sf-course-copy .sf-section-title {
    font-size: 2.7rem;
  }
  .sf-course-image {
    min-height: 310px;
  }
  .sf-course-image img {
    min-height: 310px;
  }
}


/* v4.4 — Instagram sincronizado pelo WordPress */
.sf-instagram-synced {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.sf-instagram-synced a {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 1;
  border-radius: 14px;
  background: var(--sf-blush);
}
.sf-instagram-synced img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}
.sf-instagram-synced a:hover img {
  transform: scale(1.04);
}
.sf-instagram-sync-status {
  margin-top: 13px;
  text-align: center;
  color: var(--sf-muted);
  font-size: .76rem;
}
@media (max-width: 820px) {
  .sf-instagram-synced {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}
@media (max-width: 560px) {
  .sf-instagram-synced {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px;
  }
}


/* v4.5 — prévia do Instagram e conexão oficial preparada */
.sf-instagram-preview {
  position: relative;
}
.sf-instagram-preview-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 14px auto 0;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--sf-blush);
  color: var(--sf-muted);
  font-size: .72rem;
}
.sf-instagram-preview-badge::before {
  content: "●";
  color: var(--sf-rose);
  font-size: .62rem;
}
.sf-instagram-connect-card {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid var(--sf-line);
  border-radius: 16px;
  background: #fff;
}
.sf-instagram-connect-card code {
  word-break: break-all;
}
.sf-footer-credit a {
  color: #fff;
  font-weight: 700;
}
.sf-footer-credit a:hover {
  color: #f1c8d1;
}


/* v4.6 — fechamento da Home */

/* Instagram compacto e harmonioso */
.sf-instagram-section {
  padding: 58px 0 62px !important;
}
.sf-instagram-section .sf-products-header {
  margin-bottom: 26px;
}
.sf-instagram-compact {
  display: grid;
  grid-template-columns: repeat(6, minmax(0,1fr));
  gap: 9px;
  max-width: 1120px;
  margin: 0 auto;
}
.sf-instagram-compact a {
  display: block;
  overflow: hidden;
  aspect-ratio: 1;
  border-radius: 13px;
  background: var(--sf-blush);
}
.sf-instagram-compact img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}
.sf-instagram-compact a:hover img {
  transform: scale(1.035);
}
.sf-instagram-section .sf-btn {
  min-height: 44px;
}

/* Banner final para o Berçário */
.sf-closing-cta {
  padding: 34px 0 76px;
  background: #fff;
}
.sf-closing-cta-box {
  position: relative;
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  min-height: 520px;
  overflow: hidden;
  border-radius: 30px;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,255,255,.92), transparent 34%),
    linear-gradient(135deg, #f8e8ec 0%, #f3d7df 52%, #edd0d9 100%);
  box-shadow: 0 24px 64px rgba(75,43,52,.12);
}
.sf-closing-cta-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 64px;
}
.sf-closing-cta-copy .sf-kicker {
  margin-bottom: 12px;
}
.sf-closing-cta-title {
  max-width: 620px;
  margin: 0 0 20px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(3.1rem, 5vw, 5.6rem);
  font-weight: 600;
  line-height: .94;
  letter-spacing: -.035em;
}
.sf-closing-cta-copy p {
  max-width: 580px;
  margin: 0 0 26px;
  color: var(--sf-muted);
  font-size: 1.04rem;
}
.sf-closing-cta-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}
.sf-closing-cta-points li {
  position: relative;
  padding-left: 20px;
  font-size: .88rem;
  font-weight: 700;
}
.sf-closing-cta-points li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--sf-rose-dark);
}
.sf-closing-cta-image {
  position: relative;
  min-height: 520px;
}
.sf-closing-cta-image::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, #f4dce3 0%, rgba(244,220,227,.18) 26%, transparent 58%);
  pointer-events: none;
}
.sf-closing-cta-image img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  object-position: center center;
}

@media (max-width: 900px) {
  .sf-instagram-compact {
    grid-template-columns: repeat(3, minmax(0,1fr));
    max-width: 720px;
  }

  .sf-closing-cta-box {
    grid-template-columns: 1fr;
  }

  .sf-closing-cta-copy {
    padding: 46px 36px 38px;
  }

  .sf-closing-cta-image {
    min-height: 390px;
  }

  .sf-closing-cta-image img {
    min-height: 390px;
  }

  .sf-closing-cta-image::before {
    background: linear-gradient(180deg, #f1d7df 0%, rgba(241,215,223,.12) 26%, transparent 55%);
  }
}

@media (max-width: 560px) {
  .sf-instagram-section {
    padding: 46px 0 50px !important;
  }

  .sf-instagram-compact {
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 7px;
  }

  .sf-closing-cta {
    padding: 20px 0 52px;
  }

  .sf-closing-cta-box {
    border-radius: 22px;
  }

  .sf-closing-cta-copy {
    padding: 34px 22px 28px;
  }

  .sf-closing-cta-title {
    font-size: 3rem;
  }

  .sf-closing-cta-copy p {
    font-size: .98rem;
  }

  .sf-closing-cta-points {
    display: grid;
    gap: 8px;
  }

  .sf-closing-cta-image {
    min-height: 300px;
  }

  .sf-closing-cta-image img {
    min-height: 300px;
    object-position: center 30%;
  }
}


/* v4.7 — fechamento definitivo da Home */

/* Curso online */
.sf-course-box {
  min-height: 490px;
}
.sf-course-copy {
  padding: 50px;
}
.sf-course-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px 18px;
  margin: 22px 0 28px;
  padding: 0;
  list-style: none;
}
.sf-course-benefits li {
  position: relative;
  padding-left: 20px;
  color: var(--sf-text);
  font-size: .9rem;
  font-weight: 700;
}
.sf-course-benefits li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--sf-rose-dark);
}
.sf-course-image {
  position: relative;
  min-height: 490px;
}
.sf-course-image img {
  min-height: 490px;
  object-fit: cover;
  object-position: center center;
}
.sf-course-floating-card {
  position: absolute;
  right: 22px;
  bottom: 22px;
  z-index: 2;
  padding: 14px 17px;
  border-radius: 15px;
  background: rgba(255,255,255,.94);
  color: var(--sf-text);
  box-shadow: 0 16px 38px rgba(52,30,36,.16);
  backdrop-filter: blur(8px);
}
.sf-course-floating-card strong {
  display: block;
  color: var(--sf-rose-dark);
  font-size: .92rem;
}
.sf-course-floating-card span {
  display: block;
  margin-top: 2px;
  color: var(--sf-muted);
  font-size: .74rem;
}

/* Banner final com o produto, sem repetir Simone */
.sf-closing-cta-image {
  background: linear-gradient(135deg, #f4dde3, #efd1da);
}
.sf-closing-cta-image img {
  object-fit: cover;
  object-position: center 22%;
}
.sf-closing-cta-image::before {
  background: linear-gradient(90deg, #f4dce3 0%, rgba(244,220,227,.05) 30%, transparent 60%);
}

@media (max-width: 820px) {
  .sf-course-benefits {
    grid-template-columns: 1fr;
  }
  .sf-course-image,
  .sf-course-image img {
    min-height: 370px;
  }
  .sf-course-floating-card {
    right: 16px;
    bottom: 16px;
  }
}
@media (max-width: 560px) {
  .sf-course-copy {
    padding: 30px 22px;
  }
  .sf-course-image,
  .sf-course-image img {
    min-height: 300px;
  }
  .sf-course-image img {
    object-position: center center;
  }
  .sf-closing-cta-image img {
    object-position: center 18%;
  }
}


/* v4.8 — restauração do Hero e CTA final totalmente clicável */
.sf-hero-visual img {
  object-fit: contain !important;
  object-position: center bottom !important;
}

.sf-closing-cta-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.sf-closing-cta-link:hover {
  color: inherit;
}

.sf-closing-cta-link .sf-closing-cta-box {
  transition: transform .22s ease, box-shadow .22s ease;
}

.sf-closing-cta-link:hover .sf-closing-cta-box {
  transform: translateY(-3px);
  box-shadow: 0 30px 72px rgba(75,43,52,.16);
}

.sf-closing-cta-link:focus-visible {
  outline: 3px solid var(--sf-rose);
  outline-offset: 5px;
  border-radius: 30px;
}


/* =========================================================
   v5.0 — BERÇÁRIO SI FORTUNA
   Estas regras são isoladas em .sf-bercario-page.
   Não alteram a Home.
   ========================================================= */

.sf-bercario-page {
  background: var(--sf-bg);
}

/* Hero */
.sf-bercario-page .sf-bercario-hero {
  padding: 64px 0 48px;
  text-align: center;
  background:
    radial-gradient(circle at 50% 0%, rgba(249,226,232,.86), transparent 52%),
    var(--sf-bg);
}

.sf-bercario-page .sf-bercario-hero .sf-section-title {
  max-width: 930px;
  margin: 10px auto 0;
}

.sf-bercario-page .sf-bercario-intro {
  max-width: 760px;
  margin: 16px auto 0;
  color: var(--sf-muted);
  font-size: 1rem;
}

.sf-bercario-page .sf-bercario-search {
  position: relative;
  max-width: 790px;
  margin: 28px auto 0;
}

.sf-bercario-page .sf-bercario-search input {
  width: 100%;
  min-height: 60px;
  padding: 14px 62px 14px 22px;
  border: 1px solid var(--sf-line);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 14px 42px rgba(70,38,46,.08);
  color: var(--sf-text);
  font: inherit;
}

.sf-bercario-page .sf-bercario-search button {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: var(--sf-rose);
  color: #fff;
  font-size: 1.1rem;
  cursor: pointer;
}

.sf-bercario-page .sf-bercario-numbers {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 24px;
  margin-top: 18px;
  color: var(--sf-muted);
  font-size: .84rem;
}

.sf-bercario-page .sf-bercario-numbers strong {
  color: var(--sf-text);
}

/* Coleções/categorias */
.sf-bercario-page .sf-collections-section {
  padding: 54px 0 44px;
}

.sf-bercario-page .sf-collections-header {
  margin-bottom: 28px;
  text-align: center;
}

.sf-bercario-page .sf-collections-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.sf-bercario-page .sf-collection-card {
  position: relative;
  min-height: 225px;
  overflow: hidden;
  border-radius: 20px;
  background: var(--sf-blush);
  color: #fff;
}

.sf-bercario-page .sf-collection-card img {
  width: 100%;
  height: 100%;
  min-height: 225px;
  object-fit: cover;
  transition: transform .25s ease;
}

.sf-bercario-page .sf-collection-card:hover img {
  transform: scale(1.04);
}

.sf-bercario-page .sf-collection-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 24%, rgba(34,18,23,.86) 100%);
}

.sf-bercario-page .sf-collection-card-content {
  position: absolute;
  z-index: 2;
  left: 18px;
  right: 18px;
  bottom: 16px;
  text-align: left;
}

.sf-bercario-page .sf-collection-card h3 {
  margin: 0 0 5px;
  color: #fff;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.55rem;
  line-height: 1;
}

.sf-bercario-page .sf-collection-card p {
  margin: 0 0 5px;
  color: rgba(255,255,255,.84);
  font-size: .75rem;
  line-height: 1.35;
}

.sf-bercario-page .sf-collection-card span {
  color: rgba(255,255,255,.88);
  font-size: .72rem;
  font-weight: 700;
}

/* Barra de filtros */
.sf-bercario-page .sf-bercario-toolbar {
  padding: 15px 0;
  border-top: 1px solid var(--sf-line);
  border-bottom: 1px solid var(--sf-line);
  background: rgba(255,250,249,.96);
  backdrop-filter: blur(12px);
}

.sf-bercario-page .sf-bercario-toolbar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.sf-bercario-page .sf-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.sf-bercario-page .sf-filter-chip {
  min-height: 39px;
  padding: 8px 14px;
  border: 1px solid var(--sf-line);
  border-radius: 999px;
  background: #fff;
  color: var(--sf-text);
  font-size: .79rem;
  font-weight: 700;
  cursor: pointer;
}

.sf-bercario-page .sf-filter-chip.is-active {
  border-color: var(--sf-rose);
  background: var(--sf-rose);
  color: #fff;
}

.sf-bercario-page .sf-bercario-sort {
  min-height: 41px;
  padding: 8px 34px 8px 13px;
  border: 1px solid var(--sf-line);
  border-radius: 999px;
  background: #fff;
  color: var(--sf-text);
}

/* Produtos */
.sf-bercario-page .sf-products-section {
  padding: 46px 0 78px;
}

.sf-bercario-page .sf-products-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 25px;
}

.sf-bercario-page .sf-products-count {
  color: var(--sf-muted);
  font-size: .84rem;
}

.sf-bercario-page .sf-bercario-products-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}

.sf-bercario-page .sf-bercario-product {
  overflow: hidden;
  border: 1px solid var(--sf-line);
  border-radius: 18px;
  background: #fff;
  transition: transform .22s ease, box-shadow .22s ease;
}

.sf-bercario-page .sf-bercario-product:hover {
  transform: translateY(-4px);
  box-shadow: var(--sf-shadow);
}

.sf-bercario-page .sf-product-image {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 4 / 4.8;
  background: var(--sf-blush);
}

.sf-bercario-page .sf-product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 14%;
  transition: transform .25s ease;
}

.sf-bercario-page .sf-bercario-product:hover .sf-product-image img {
  transform: scale(1.025);
}

.sf-bercario-page .sf-product-badges {
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.sf-bercario-page .sf-product-badge {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(255,255,255,.94);
  color: var(--sf-rose-dark);
  font-size: .62rem;
  font-weight: 800;
}

.sf-bercario-page .sf-product-content {
  padding: 15px;
}

.sf-bercario-page .sf-product-name {
  margin: 0 0 7px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.38rem;
  line-height: 1.05;
}

.sf-bercario-page .sf-product-price {
  margin-bottom: 13px;
  color: var(--sf-rose-dark);
  font-weight: 800;
}

.sf-bercario-page .sf-product-price del {
  opacity: .55;
  font-size: .82em;
}

.sf-bercario-page .sf-product-content .sf-btn {
  width: 100%;
  min-height: 41px;
  padding: 9px 12px;
  font-size: .78rem;
}

.sf-bercario-page .sf-bercario-empty {
  padding: 38px;
  border: 1px dashed var(--sf-line);
  border-radius: 18px;
  text-align: center;
  color: var(--sf-muted);
}

@media (max-width: 1080px) {
  .sf-bercario-page .sf-collections-grid,
  .sf-bercario-page .sf-bercario-products-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}

@media (max-width: 820px) {
  .sf-bercario-page .sf-collections-grid,
  .sf-bercario-page .sf-bercario-products-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .sf-bercario-page .sf-bercario-toolbar-inner {
    align-items: stretch;
    flex-direction: column;
  }

  .sf-bercario-page .sf-bercario-sort {
    width: 100%;
  }
}

@media (max-width: 560px) {
  .sf-bercario-page .sf-bercario-hero {
    padding: 44px 0 34px;
  }

  .sf-bercario-page .sf-bercario-search input {
    min-height: 54px;
    font-size: .9rem;
  }

  .sf-bercario-page .sf-collections-section {
    padding-top: 42px;
  }

  .sf-bercario-page .sf-collections-grid {
    gap: 10px;
  }

  .sf-bercario-page .sf-collection-card,
  .sf-bercario-page .sf-collection-card img {
    min-height: 175px;
  }

  .sf-bercario-page .sf-collection-card-content {
    left: 13px;
    right: 13px;
    bottom: 12px;
  }

  .sf-bercario-page .sf-collection-card h3 {
    font-size: 1.28rem;
  }

  .sf-bercario-page .sf-filter-chips {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: none;
  }

  .sf-bercario-page .sf-filter-chip {
    flex: 0 0 auto;
  }

  .sf-bercario-page .sf-bercario-products-grid {
    gap: 10px;
  }

  .sf-bercario-page .sf-product-content {
    padding: 11px;
  }

  .sf-bercario-page .sf-product-name {
    font-size: 1.08rem;
  }

  .sf-bercario-page .sf-product-price {
    font-size: .88rem;
  }

  .sf-bercario-page .sf-products-section-head {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* v5.3 — nova hierarquia do Berçário */
.sf-bercario-page .sf-bercario-hero {
  padding-bottom: 30px;
}

.sf-bercario-page .sf-bercario-toolbar {
  margin-top: 0;
}

.sf-bercario-page .sf-products-section {
  padding-top: 38px;
}

.sf-bercario-page .sf-collections-section {
  padding-top: 24px;
  padding-bottom: 74px;
  border-top: 1px solid var(--sf-line);
  background: #fff;
}

.sf-bercario-page .sf-collections-header {
  max-width: 820px;
  margin: 0 auto 28px;
}

.sf-bercario-page .sf-collections-header .sf-section-title {
  font-size: clamp(2.5rem, 4vw, 4.25rem);
}

.sf-bercario-page .sf-collections-footer-text {
  max-width: 720px;
  margin: 12px auto 0;
  color: var(--sf-muted);
}

@media (max-width: 560px) {
  .sf-bercario-page .sf-bercario-hero {
    padding-bottom: 24px;
  }

  .sf-bercario-page .sf-products-section {
    padding-top: 30px;
  }

  .sf-bercario-page .sf-collections-section {
    padding-top: 42px;
    padding-bottom: 54px;
  }
}

/* v5.4 — preço Pix suave no Berçário */
.sf-bercario-page .sf-product-price-block{display:grid;gap:5px;margin:0 0 13px}
.sf-bercario-page .sf-product-price-main{color:var(--sf-text);font-size:.98rem;font-weight:800;line-height:1.2}
.sf-bercario-page .sf-product-price-main del{margin-right:5px;color:var(--sf-muted);font-size:.8em;font-weight:500;opacity:.75}
.sf-bercario-page .sf-product-price-main ins{color:var(--sf-rose-dark);text-decoration:none}
.sf-bercario-page .sf-product-pix{display:flex;align-items:center;flex-wrap:wrap;gap:5px;color:#4d6958;font-size:.72rem;line-height:1.25}
.sf-bercario-page .sf-product-pix-icon{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#edf7f0;color:#35734c;font-size:.62rem;font-weight:900}
.sf-bercario-page .sf-product-pix strong{color:#315f43;font-size:.78rem}
@media(max-width:560px){
.sf-bercario-page .sf-product-price-main{font-size:.86rem}
.sf-bercario-page .sf-product-pix{font-size:.66rem}
.sf-bercario-page .sf-product-pix strong{font-size:.72rem}
}

/* v5.6 — limpeza de contadores do Berçário */
.sf-bercario-page .sf-bercario-numbers,
.sf-bercario-page .sf-products-count {
  display: none !important;
}

/* v5.7 — paginação progressiva do Berçário */
.sf-bercario-page .sf-product-is-hidden {
  display: none !important;
}

.sf-bercario-page .sf-load-more-wrap {
  display: flex;
  justify-content: center;
  margin-top: 34px;
}

.sf-bercario-page .sf-load-more-button {
  min-width: 320px;
  min-height: 58px;
  padding: 14px 28px;
  border: 0;
  border-radius: 999px;
  background: var(--sf-rose);
  color: #fff;
  font: inherit;
  font-size: 1rem;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 16px 34px rgba(181,106,126,.18);
  transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.sf-bercario-page .sf-load-more-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 42px rgba(181,106,126,.24);
}

.sf-bercario-page .sf-load-more-button[hidden] {
  display: none;
}

@media (max-width: 560px) {
  .sf-bercario-page .sf-load-more-button {
    width: 100%;
    min-width: 0;
  }
}


/* =========================================================
   v5.8 — PÁGINA PREMIUM DE PRODUTO
   ========================================================= */
.sf-product-page {
  background: var(--sf-bg);
}

.sf-product-page .sf-product-shell {
  padding: 42px 0 76px;
}

.sf-product-page .sf-product-breadcrumb {
  margin-bottom: 22px;
  color: var(--sf-muted);
  font-size: .78rem;
}

.sf-product-page .sf-product-breadcrumb a {
  color: inherit;
}

.sf-product-page .sf-product-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(380px, .88fr);
  gap: 48px;
  align-items: start;
}

.sf-product-page .sf-product-media {
  position: sticky;
  top: 22px;
}

.sf-product-page .sf-product-stage {
  position: relative;
  overflow: hidden;
  min-height: 640px;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(65,37,45,.08);
}

.sf-product-page .sf-product-stage-item {
  display: none;
  width: 100%;
  height: 100%;
  min-height: 640px;
}

.sf-product-page .sf-product-stage-item.is-active {
  display: grid;
  place-items: center;
}

.sf-product-page .sf-product-stage img {
  width: 100%;
  height: 100%;
  min-height: 640px;
  object-fit: contain;
  background: #fff;
}

.sf-product-page .sf-product-video-frame,
.sf-product-page .sf-product-video-frame iframe,
.sf-product-page .sf-product-video-frame video,
.sf-product-page .sf-product-video-frame .wp-video {
  width: 100% !important;
  max-width: 100% !important;
}

.sf-product-page .sf-product-video-frame {
  display: grid;
  place-items: center;
  min-height: 640px;
  padding: 18px;
  background: #1f171a;
}

.sf-product-page .sf-product-video-frame iframe,
.sf-product-page .sf-product-video-frame video {
  max-height: 600px;
  aspect-ratio: 9 / 16;
  border: 0;
  border-radius: 18px;
  background: #000;
}

.sf-product-page .sf-product-thumbs {
  display: grid;
  grid-template-columns: repeat(6, minmax(0,1fr));
  gap: 9px;
  margin-top: 12px;
}

.sf-product-page .sf-product-thumb {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 13px;
  background: #fff;
  cursor: pointer;
}

.sf-product-page .sf-product-thumb.is-active {
  border-color: var(--sf-rose);
}

.sf-product-page .sf-product-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sf-product-page .sf-product-thumb-video {
  display: grid;
  place-items: center;
  height: 100%;
  background: var(--sf-dark);
  color: #fff;
  font-size: 1.4rem;
}

.sf-product-page .sf-product-summary {
  padding: 14px 0;
}

.sf-product-page .sf-product-kicker {
  margin-bottom: 10px;
  color: var(--sf-rose-dark);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.sf-product-page .sf-product-title {
  margin: 0 0 16px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(3rem, 4.6vw, 5.6rem);
  line-height: .92;
}

.sf-product-page .sf-product-short {
  margin-bottom: 20px;
  color: var(--sf-muted);
  font-size: .96rem;
  line-height: 1.65;
}

.sf-product-page .sf-product-price-panel {
  display: grid;
  gap: 9px;
  padding: 22px;
  border: 1px solid var(--sf-line);
  border-radius: 20px;
  background: #fff;
}

.sf-product-page .sf-product-price {
  color: var(--sf-text);
  font-size: 1.65rem;
  font-weight: 800;
}

.sf-product-page .sf-product-price del {
  margin-right: 8px;
  color: var(--sf-muted);
  font-size: .7em;
  font-weight: 500;
}

.sf-product-page .sf-product-price ins {
  color: var(--sf-rose-dark);
  text-decoration: none;
}

.sf-product-page .sf-product-pix-price {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #315f43;
}

.sf-product-page .sf-product-pix-price strong {
  font-size: 1.12rem;
}

.sf-product-page .sf-installment-highlight {
  color: var(--sf-muted);
  font-size: .83rem;
}

.sf-product-page .sf-installment-toggle {
  width: fit-content;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sf-rose-dark);
  font: inherit;
  font-size: .78rem;
  font-weight: 800;
  text-decoration: underline;
  cursor: pointer;
}

.sf-product-page .sf-installment-table {
  display: none;
  max-height: 290px;
  overflow: auto;
  margin-top: 10px;
  border-top: 1px solid var(--sf-line);
}

.sf-product-page .sf-installment-table.is-open {
  display: block;
}

.sf-product-page .sf-installment-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--sf-line);
  font-size: .76rem;
}

.sf-product-page .sf-installment-row span:last-child {
  text-align: right;
  color: var(--sf-muted);
}

.sf-product-page .sf-product-buy {
  margin-top: 18px;
}

.sf-product-page .sf-product-buy form.cart {
  display: grid;
  grid-template-columns: 84px 1fr;
  gap: 10px;
  margin: 0;
}

.sf-product-page .sf-product-buy .quantity input {
  width: 100%;
  height: 54px;
  border: 1px solid var(--sf-line);
  border-radius: 999px;
  text-align: center;
}

.sf-product-page .sf-product-buy .single_add_to_cart_button {
  min-height: 54px;
  border: 0;
  border-radius: 999px;
  background: var(--sf-rose);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}

.sf-product-page .sf-product-trust {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 8px;
  margin-top: 16px;
}

.sf-product-page .sf-product-trust div {
  padding: 12px 9px;
  border-radius: 14px;
  background: #fff;
  color: var(--sf-muted);
  font-size: .72rem;
  text-align: center;
}

.sf-product-page .sf-product-description-section {
  padding: 70px 0;
  background: #fff;
}

.sf-product-page .sf-product-description-grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: 64px;
  align-items: start;
}

.sf-product-page .sf-product-description-content {
  color: var(--sf-text);
  line-height: 1.75;
}

.sf-product-page .sf-product-description-content p:first-child {
  margin-top: 0;
}

.sf-product-page .sf-related-products {
  padding: 66px 0 80px;
}

.sf-product-page .sf-related-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 18px;
  margin-top: 26px;
}

.sf-product-page .sf-related-card {
  overflow: hidden;
  border: 1px solid var(--sf-line);
  border-radius: 18px;
  background: #fff;
}

.sf-product-page .sf-related-card img {
  width: 100%;
  aspect-ratio: 4/4.7;
  object-fit: cover;
}

.sf-product-page .sf-related-card-content {
  padding: 14px;
}

.sf-product-page .sf-related-card h3 {
  margin: 0 0 7px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.35rem;
}

@media (max-width: 980px) {
  .sf-product-page .sf-product-main-grid {
    grid-template-columns: 1fr;
  }

  .sf-product-page .sf-product-media {
    position: static;
  }

  .sf-product-page .sf-product-description-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

@media (max-width: 680px) {
  .sf-product-page .sf-product-shell {
    padding-top: 22px;
  }

  .sf-product-page .sf-product-main-grid {
    gap: 25px;
  }

  .sf-product-page .sf-product-stage,
  .sf-product-page .sf-product-stage-item,
  .sf-product-page .sf-product-stage img,
  .sf-product-page .sf-product-video-frame {
    min-height: 430px;
  }

  .sf-product-page .sf-product-thumbs {
    grid-template-columns: repeat(5,minmax(0,1fr));
  }

  .sf-product-page .sf-product-title {
    font-size: 3.25rem;
  }

  .sf-product-page .sf-product-buy form.cart {
    grid-template-columns: 70px 1fr;
  }

  .sf-product-page .sf-product-trust {
    grid-template-columns: 1fr;
  }

  .sf-product-page .sf-related-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
  }
}


/* v5.9 — vídeo legado e parcelamento oficial PagBank */
.sf-product-page .sf-installment-highlight,
.sf-product-page .sf-installment-toggle,
.sf-product-page .sf-installment-table {
  display: none !important;
}

.sf-product-page .sf-product-summary > h2,
.sf-product-page .sf-product-summary > h3,
.sf-product-page .sf-product-buy + h2,
.sf-product-page .sf-product-buy + h3 {
  margin: 24px 0 12px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.65rem;
  line-height: 1.05;
}

.sf-product-page .sf-product-summary table {
  width: 100%;
  margin: 12px 0 18px;
  overflow: hidden;
  border: 1px solid var(--sf-line);
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 16px;
  background: #fff;
  font-size: .76rem;
}

.sf-product-page .sf-product-summary table td,
.sf-product-page .sf-product-summary table th {
  padding: 11px 13px;
  border-right: 1px solid var(--sf-line);
  border-bottom: 1px solid var(--sf-line);
  vertical-align: top;
}

.sf-product-page .sf-product-summary table tr:last-child td {
  border-bottom: 0;
}

.sf-product-page .sf-product-summary table td:last-child,
.sf-product-page .sf-product-summary table th:last-child {
  border-right: 0;
}

.sf-product-page .sf-product-short:empty {
  display: none;
}

.sf-product-page .sf-product-video-frame .mejs-container,
.sf-product-page .sf-product-video-frame .wp-video {
  width: 100% !important;
  height: auto !important;
}

@media (max-width: 680px) {
  .sf-product-page .sf-product-summary table {
    font-size: .7rem;
  }

  .sf-product-page .sf-product-summary table td,
  .sf-product-page .sf-product-summary table th {
    padding: 9px 8px;
  }
}


/* =========================================================
   v6.0 — produto: vídeo, descrição e parcelamento
   ========================================================= */
.sf-product-page .sf-product-thumb-video {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #2b2024;
}
.sf-product-page .sf-product-thumb-video img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .72;
}
.sf-product-page .sf-product-thumb-video::after {
  content: "▶";
  position: absolute;
  inset: 50% auto auto 50%;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  transform: translate(-50%,-50%);
  background: rgba(255,255,255,.94);
  color: var(--sf-rose-dark);
  font-size: .85rem;
  box-shadow: 0 5px 18px rgba(0,0,0,.18);
}
.sf-product-page .sf-product-installment-simple {
  display: flex;
  align-items: baseline;
  gap: 5px;
  margin-top: 2px;
  color: var(--sf-muted);
  font-size: .86rem;
}
.sf-product-page .sf-product-installment-simple strong {
  color: var(--sf-text);
}
.sf-product-page .sf-product-description-section {
  background: linear-gradient(180deg,#fff 0%,#fffaf8 100%);
}
.sf-product-page .sf-product-description-grid {
  grid-template-columns: minmax(250px,.62fr) minmax(0,1.38fr);
  gap: 72px;
}
.sf-product-page .sf-product-description-content {
  padding: 34px 40px;
  border: 1px solid var(--sf-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(65,37,45,.05);
  font-size: .98rem;
  line-height: 1.75;
}
.sf-product-page .sf-description-intro {
  margin: 0 0 22px;
  color: var(--sf-text);
  font-size: 1.08rem;
}
.sf-product-page .sf-description-block + .sf-description-block {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--sf-line);
}
.sf-product-page .sf-description-block h3 {
  margin: 0 0 12px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.75rem;
  line-height: 1.05;
  color: var(--sf-text);
}
.sf-product-page .sf-description-block p { margin: 0 0 10px; }
.sf-product-page .sf-description-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.sf-product-page .sf-description-list li {
  position: relative;
  padding-left: 22px;
}
.sf-product-page .sf-description-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--sf-rose-dark);
  font-weight: 800;
}
@media(max-width:980px){
  .sf-product-page .sf-product-description-grid{grid-template-columns:1fr;gap:22px}
}
@media(max-width:680px){
  .sf-product-page .sf-product-description-content{padding:24px 20px;border-radius:18px}
}

/* v6.1 — refinamentos da página de produto */
.sf-product-page .sf-product-thumb-video{position:relative;display:grid;place-items:center;width:100%;height:100%;overflow:hidden;background:linear-gradient(145deg,#3b2b31,#181014);color:#fff}
.sf-product-page .sf-product-thumb-video img{width:100%;height:100%;object-fit:cover;opacity:.5}
.sf-product-page .sf-product-thumb-video::before{content:"▶";position:absolute;z-index:2;display:grid;place-items:center;width:38px;height:38px;padding-left:3px;border-radius:50%;background:rgba(255,255,255,.96);color:var(--sf-rose-dark);font-size:.9rem;box-shadow:0 8px 22px rgba(0,0,0,.24)}
.sf-product-page .sf-product-thumb-video::after{content:"Vídeo";position:absolute;z-index:2;right:5px;bottom:5px;left:5px;padding:4px 3px;border-radius:999px;background:rgba(0,0,0,.58);color:#fff;font-size:.56rem;font-weight:800;line-height:1;letter-spacing:.04em;text-align:center;text-transform:uppercase}
.sf-product-page .sf-product-description-section{padding:64px 0 72px;background:linear-gradient(180deg,#fff 0%,#fffaf9 100%)}
.sf-product-page .sf-product-description-grid{grid-template-columns:minmax(250px,.68fr) minmax(0,1.32fr);gap:72px}
.sf-product-page .sf-product-description-content{max-width:820px;padding:34px 38px;border:1px solid rgba(181,106,126,.18);border-radius:24px;background:rgba(255,255,255,.82);box-shadow:0 18px 50px rgba(65,37,45,.05);color:#34262b;font-size:1rem;line-height:1.78}
.sf-product-page .sf-product-description-content p{margin:0 0 1.05em}
.sf-product-page .sf-product-description-content p:last-child{margin-bottom:0}
.sf-product-page .sf-product-description-content h2,.sf-product-page .sf-product-description-content h3,.sf-product-page .sf-product-description-content h4{margin:1.4em 0 .55em;font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;line-height:1.02;color:var(--sf-text)}
.sf-product-page .sf-product-description-content h2{font-size:2rem}.sf-product-page .sf-product-description-content h3{font-size:1.65rem}.sf-product-page .sf-product-description-content h4{font-size:1.35rem}
.sf-product-page .sf-product-description-content ul,.sf-product-page .sf-product-description-content ol{margin:.75em 0 1.2em;padding-left:0;list-style:none}
.sf-product-page .sf-product-description-content li{position:relative;margin:0 0 .5em;padding-left:1.45em}
.sf-product-page .sf-product-description-content li::before{content:"✓";position:absolute;left:0;color:var(--sf-rose-dark);font-weight:900}
.sf-product-page .stock.in-stock{display:none!important}
.sf-product-page .sf-product-buy{margin-top:20px}
.sf-product-page .sf-product-buy form.cart{grid-template-columns:1fr}
.sf-product-page .sf-product-buy .quantity{display:none!important}
.sf-product-page .sf-product-buy .single_add_to_cart_button{width:100%;min-height:58px;padding:14px 28px;font-size:1rem;box-shadow:0 14px 34px rgba(181,106,126,.22)}
.sf-product-page .sf-back-nursery-wrap{display:flex;justify-content:center;margin:38px auto 76px}
.sf-product-page .sf-back-nursery-button{display:inline-flex;align-items:center;justify-content:center;min-width:340px;min-height:58px;padding:14px 30px;border-radius:999px;background:var(--sf-rose);color:#fff!important;font-weight:800;text-decoration:none;box-shadow:0 16px 34px rgba(181,106,126,.2)}
@media(max-width:680px){.sf-product-page .sf-product-description-grid{gap:22px}.sf-product-page .sf-product-description-content{padding:24px 21px;border-radius:20px;font-size:.94rem}.sf-product-page .sf-back-nursery-button{width:100%;min-width:0}}


/* =========================================================
   v6.2 — descrição fiel ao cadastro + chamada para vídeo
   ========================================================= */

.sf-product-page .sf-product-video-cta {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  gap: 13px;
  align-items: center;
  width: 100%;
  margin-top: 16px;
  padding: 15px 17px;
  border: 1px solid rgba(181,106,126,.24);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(253,239,243,.92));
  color: var(--sf-text);
  text-align: left;
  cursor: pointer;
  box-shadow: 0 12px 30px rgba(65,37,45,.06);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.sf-product-page .sf-product-video-cta:hover {
  transform: translateY(-2px);
  border-color: var(--sf-rose);
  box-shadow: 0 17px 38px rgba(65,37,45,.1);
}

.sf-product-page .sf-product-video-cta-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  padding-left: 3px;
  border-radius: 50%;
  background: var(--sf-dark);
  color: #fff;
  font-size: 1rem;
  box-shadow: 0 9px 24px rgba(35,23,28,.2);
}

.sf-product-page .sf-product-video-cta-copy {
  display: grid;
  gap: 3px;
}

.sf-product-page .sf-product-video-cta-copy strong {
  color: var(--sf-text);
  font-size: .9rem;
}

.sf-product-page .sf-product-video-cta-copy span {
  color: var(--sf-muted);
  font-size: .72rem;
  line-height: 1.35;
}

.sf-product-page .sf-product-video-cta-action {
  color: var(--sf-rose-dark);
  font-size: .73rem;
  font-weight: 800;
  white-space: nowrap;
}

/* Mantém integralmente a formatação feita no editor */
.sf-product-page .sf-product-description-content {
  font-size: 1rem;
  line-height: 1.78;
}

.sf-product-page .sf-product-description-content > :first-child {
  margin-top: 0;
}

.sf-product-page .sf-product-description-content > :last-child {
  margin-bottom: 0;
}

.sf-product-page .sf-product-description-content p {
  margin: 0 0 1.15em;
}

.sf-product-page .sf-product-description-content p:empty {
  display: none;
}

.sf-product-page .sf-product-description-content strong {
  color: var(--sf-text);
  font-weight: 800;
}

.sf-product-page .sf-product-description-content h2,
.sf-product-page .sf-product-description-content h3,
.sf-product-page .sf-product-description-content h4 {
  margin: 1.55em 0 .55em;
  font-family: "Cormorant Garamond", Georgia, serif;
  color: var(--sf-text);
  font-weight: 600;
  line-height: 1.02;
}

.sf-product-page .sf-product-description-content h2 {
  font-size: 2.1rem;
}

.sf-product-page .sf-product-description-content h3 {
  font-size: 1.7rem;
}

.sf-product-page .sf-product-description-content h4 {
  font-size: 1.4rem;
}

.sf-product-page .sf-product-description-content ul,
.sf-product-page .sf-product-description-content ol {
  display: grid;
  gap: 8px;
  margin: .8em 0 1.35em;
  padding-left: 0;
  list-style: none;
}

.sf-product-page .sf-product-description-content li {
  position: relative;
  margin: 0;
  padding: 10px 12px 10px 36px;
  border-radius: 12px;
  background: rgba(250,239,242,.65);
}

.sf-product-page .sf-product-description-content li::before {
  content: "✓";
  position: absolute;
  top: 10px;
  left: 13px;
  color: var(--sf-rose-dark);
  font-weight: 900;
}

.sf-product-page .sf-product-description-content blockquote {
  margin: 1.3em 0;
  padding: 18px 20px;
  border-left: 3px solid var(--sf-rose);
  border-radius: 0 14px 14px 0;
  background: rgba(250,239,242,.55);
}

.sf-product-page .sf-product-description-content a {
  color: var(--sf-rose-dark);
  text-decoration: underline;
}

.sf-product-page .sf-product-video-badge {
  position: absolute;
  z-index: 4;
  top: 18px;
  right: 18px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(30,20,24,.82);
  color: #fff;
  font-size: .7rem;
  font-weight: 800;
  backdrop-filter: blur(8px);
}

@media (max-width: 680px) {
  .sf-product-page .sf-product-video-cta {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .sf-product-page .sf-product-video-cta-icon {
    width: 42px;
    height: 42px;
  }

  .sf-product-page .sf-product-video-cta-action {
    grid-column: 2;
  }

  .sf-product-page .sf-product-video-badge {
    top: 12px;
    right: 12px;
  }
}


/* =========================================================
   v6.3 — CTA repetido e fluxo mobile da página de produto
   ========================================================= */

.sf-product-page .sf-product-bottom-buy {
  margin-top: 34px;
  padding: 24px;
  border: 1px solid rgba(181,106,126,.22);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(253,239,243,.9));
  box-shadow: 0 16px 38px rgba(65,37,45,.07);
}

.sf-product-page .sf-product-bottom-buy-title {
  margin: 0 0 8px;
  font-family: "Cormorant Garamond", Georgia, serif;
  color: var(--sf-text);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}

.sf-product-page .sf-product-bottom-buy-copy {
  margin: 0 0 18px;
  color: var(--sf-muted);
  font-size: .88rem;
  line-height: 1.55;
}

.sf-product-page .sf-product-bottom-price {
  display: grid;
  gap: 7px;
  margin-bottom: 18px;
}

.sf-product-page .sf-product-bottom-price-main {
  color: var(--sf-text);
  font-size: 1.35rem;
  font-weight: 800;
}

.sf-product-page .sf-product-bottom-pix {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #315f43;
  font-size: .84rem;
}

.sf-product-page .sf-product-bottom-pix strong {
  font-size: 1rem;
}

.sf-product-page .sf-product-bottom-installment {
  color: var(--sf-muted);
  font-size: .8rem;
}

.sf-product-page .sf-product-bottom-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 58px;
  padding: 14px 24px;
  border: 0;
  border-radius: 999px;
  background: var(--sf-rose);
  color: #fff;
  font: inherit;
  font-size: 1rem;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 15px 34px rgba(181,106,126,.22);
  transition: transform .2s ease, box-shadow .2s ease;
}

.sf-product-page .sf-product-bottom-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 42px rgba(181,106,126,.29);
}

.sf-product-page .sf-product-bottom-trust {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 8px;
  margin-top: 14px;
}

.sf-product-page .sf-product-bottom-trust span {
  padding: 10px 8px;
  border-radius: 12px;
  background: rgba(255,255,255,.72);
  color: var(--sf-muted);
  font-size: .68rem;
  text-align: center;
}

@media (max-width: 680px) {
  .sf-product-page .sf-product-main-grid {
    display: flex;
    flex-direction: column;
  }

  .sf-product-page .sf-product-media {
    order: 1;
  }

  .sf-product-page .sf-product-summary {
    order: 2;
    padding-top: 0;
  }

  .sf-product-page .sf-product-breadcrumb {
    margin-bottom: 14px;
    font-size: .7rem;
  }

  .sf-product-page .sf-product-stage,
  .sf-product-page .sf-product-stage-item,
  .sf-product-page .sf-product-stage img,
  .sf-product-page .sf-product-video-frame {
    min-height: 390px;
  }

  .sf-product-page .sf-product-title {
    margin-bottom: 12px;
    font-size: clamp(2.7rem, 13vw, 3.75rem);
    line-height: .94;
  }

  .sf-product-page .sf-product-short {
    margin-bottom: 16px;
    font-size: .9rem;
  }

  .sf-product-page .sf-product-price-panel {
    padding: 20px;
    border-radius: 18px;
  }

  .sf-product-page .sf-product-video-cta {
    margin-top: 13px;
  }

  .sf-product-page .sf-product-description-section {
    padding: 44px 0 48px;
  }

  .sf-product-page .sf-product-description-grid {
    display: block;
  }

  .sf-product-page .sf-product-description-grid > header {
    margin-bottom: 22px;
    text-align: left;
  }

  .sf-product-page .sf-product-description-grid > header .sf-section-title {
    max-width: 330px;
    margin-bottom: 0;
    font-size: clamp(2.7rem, 12vw, 3.9rem);
    line-height: .92;
  }

  .sf-product-page .sf-product-description-content {
    width: 100%;
    max-width: none;
    padding: 24px 20px;
    border-radius: 18px;
    font-size: .94rem;
    line-height: 1.72;
  }

  .sf-product-page .sf-product-bottom-buy {
    margin-top: 24px;
    padding: 22px 18px;
    border-radius: 18px;
  }

  .sf-product-page .sf-product-bottom-buy-title {
    font-size: 1.75rem;
  }

  .sf-product-page .sf-product-bottom-trust {
    grid-template-columns: 1fr;
  }

  .sf-product-page .sf-related-products {
    padding-top: 48px;
  }

  .sf-product-page .sf-back-nursery-wrap {
    margin-top: 26px;
    margin-bottom: 52px;
  }
}


/* =========================================================
   v6.4 — descrição inteligente automática
   ========================================================= */
.sf-product-page .sf-smart-description{display:grid;gap:18px}
.sf-product-page .sf-smart-intro{display:grid;gap:10px}
.sf-product-page .sf-smart-intro p{margin:0}
.sf-product-page .sf-smart-section{display:grid;gap:10px;padding-top:4px}
.sf-product-page .sf-smart-section-title{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.65rem;font-weight:600;line-height:1.05;color:var(--sf-text)}
.sf-product-page .sf-smart-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.sf-product-page .sf-smart-list li{position:relative;margin:0;padding:11px 12px 11px 38px;border:1px solid rgba(181,106,126,.14);border-radius:13px;background:rgba(250,239,242,.48)}
.sf-product-page .sf-smart-list li::before{content:"✓";position:absolute;left:14px;top:10px;color:var(--sf-rose-dark);font-weight:900}
.sf-product-page .sf-smart-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sf-product-page .sf-smart-detail{padding:14px;border:1px solid rgba(181,106,126,.15);border-radius:14px;background:#fff}
.sf-product-page .sf-smart-detail strong{display:block;margin-bottom:4px;color:var(--sf-text);font-size:.82rem}
.sf-product-page .sf-smart-detail span{display:block;color:var(--sf-muted);font-size:.82rem;line-height:1.5}
.sf-product-page .sf-smart-paragraph{margin:0!important}
@media(max-width:680px){.sf-product-page .sf-smart-detail-grid{grid-template-columns:1fr}.sf-product-page .sf-smart-section-title{font-size:1.45rem}}


/* =========================================================
   v6.5 — parcelamento PagBank recolhível no mobile
   ========================================================= */

.sf-product-page .sf-pagbank-mobile-toggle {
  display: none;
}

@media (max-width: 680px) {
  .sf-product-page .sf-pagbank-mobile-wrap {
    margin-top: 18px;
    border: 1px solid rgba(181,106,126,.22);
    border-radius: 18px;
    background: rgba(255,255,255,.92);
    overflow: hidden;
  }

  .sf-product-page .sf-pagbank-mobile-wrap > h2,
  .sf-product-page .sf-pagbank-mobile-wrap > h3 {
    display: none !important;
  }

  .sf-product-page .sf-pagbank-mobile-toggle {
    display: grid;
    grid-template-columns: 42px minmax(0,1fr) auto;
    gap: 11px;
    align-items: center;
    width: 100%;
    padding: 14px 15px;
    border: 0;
    background: linear-gradient(135deg,#fff,#fdf1f4);
    color: var(--sf-text);
    text-align: left;
    cursor: pointer;
  }

  .sf-product-page .sf-pagbank-mobile-toggle-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--sf-dark);
    color: #fff;
    font-size: 1rem;
  }

  .sf-product-page .sf-pagbank-mobile-toggle-copy {
    display: grid;
    gap: 2px;
  }

  .sf-product-page .sf-pagbank-mobile-toggle-copy strong {
    font-size: .86rem;
  }

  .sf-product-page .sf-pagbank-mobile-toggle-copy span {
    color: var(--sf-muted);
    font-size: .7rem;
  }

  .sf-product-page .sf-pagbank-mobile-toggle-arrow {
    color: var(--sf-rose-dark);
    font-size: 1rem;
    transition: transform .2s ease;
  }

  .sf-product-page .sf-pagbank-mobile-toggle[aria-expanded="true"]
  .sf-pagbank-mobile-toggle-arrow {
    transform: rotate(180deg);
  }

  .sf-product-page .sf-pagbank-mobile-content {
    display: none;
    padding: 0 12px 13px;
  }

  .sf-product-page .sf-pagbank-mobile-content.is-open {
    display: block;
  }

  .sf-product-page .sf-pagbank-mobile-content table {
    margin: 0;
    border-radius: 13px;
    font-size: .66rem;
  }

  .sf-product-page .sf-pagbank-mobile-content table td,
  .sf-product-page .sf-pagbank-mobile-content table th {
    padding: 9px 7px;
  }
}


/* =========================================================
   v6.6 — rodapé completo + categorias premium
   ========================================================= */

.sf-footer--complete {
  padding: 58px 0 24px;
}

.sf-footer-brand-row {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 42px;
  align-items: end;
  padding-bottom: 32px;
  border-bottom: 1px solid rgba(255,255,255,.11);
}

.sf-footer-brand p {
  max-width: 520px;
  color: #cfc7ca;
}

.sf-footer-cnpj {
  font-size: .82rem;
}

.sf-footer-service {
  text-align: right;
}

.sf-footer-service strong {
  display: block;
  margin: 4px 0 7px;
  color: #fff;
  font-size: .95rem;
}

.sf-footer-service p {
  margin: 0;
  color: #a99fa3;
  font-size: .76rem;
}

.sf-footer-eyebrow,
.sf-footer-commerce-label {
  color: #d8a1b1;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.sf-footer-links-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 34px;
  padding: 34px 0;
}

.sf-footer-column h4 {
  margin: 0 0 14px;
}

.sf-footer-column a {
  margin: 7px 0;
  color: #d7d0d2;
  font-size: .83rem;
  line-height: 1.35;
}

.sf-footer-column a:hover {
  color: #fff;
}

.sf-footer-commerce {
  display: grid;
  grid-template-columns: 1.4fr .6fr;
  gap: 20px;
  padding: 22px 0;
  border-top: 1px solid rgba(255,255,255,.11);
  border-bottom: 1px solid rgba(255,255,255,.11);
}

.sf-footer-commerce-block small {
  display: block;
  margin-top: 9px;
  color: #8f8589;
  font-size: .68rem;
}

.sf-payment-marks {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 10px;
}

.sf-pay-mark,
.sf-shipping-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 29px;
  padding: 5px 10px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 7px;
  background: rgba(255,255,255,.045);
  color: #f1ecee;
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .02em;
}

.sf-pay-brand {
  font-size: .62rem;
  letter-spacing: .04em;
}

.sf-pay-barcode {
  letter-spacing: 0;
}

.sf-footer-shipping {
  text-align: right;
}

.sf-shipping-mark {
  margin-top: 10px;
  gap: 7px;
}

.sf-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 22px;
  padding-top: 0;
  border-top: 0;
}

/* Categorias de produto */
.sf-category-hero {
  padding: 66px 0 42px;
  background:
    radial-gradient(circle at 82% 15%, rgba(202,119,143,.14), transparent 24%),
    linear-gradient(180deg,#fff8fa,#fff);
  text-align: center;
}

.sf-category-hero .sf-section-title {
  max-width: 820px;
  margin: 10px auto 14px;
}

.sf-category-back {
  display: inline-block;
  margin-bottom: 22px;
  color: var(--sf-muted);
  font-size: .75rem;
}

.sf-category-intro {
  max-width: 720px;
  margin: 0 auto;
  color: var(--sf-muted);
  line-height: 1.65;
}

.sf-category-toolbar .sf-filter-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.sf-category-return {
  display: flex;
  justify-content: center;
  margin-top: 42px;
}

@media (max-width: 900px) {
  .sf-footer-brand-row {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .sf-footer-service {
    text-align: left;
  }

  .sf-footer-links-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .sf-footer-commerce {
    grid-template-columns: 1fr;
  }

  .sf-footer-shipping {
    text-align: left;
  }
}

@media (max-width: 560px) {
  .sf-footer--complete {
    padding-top: 42px;
  }

  .sf-footer-links-grid {
    grid-template-columns: 1fr 1fr;
    gap: 26px 18px;
  }

  .sf-footer-column h4 {
    font-size: .85rem;
  }

  .sf-footer-column a {
    font-size: .74rem;
  }

  .sf-footer-commerce {
    padding: 19px 0;
  }

  .sf-payment-marks {
    gap: 5px;
  }

  .sf-pay-mark {
    min-height: 27px;
    padding: 4px 7px;
    font-size: .57rem;
  }

  .sf-footer-bottom {
    flex-direction: column;
    gap: 7px;
    font-size: .7rem;
  }

  .sf-category-hero {
    padding: 44px 0 30px;
  }

  .sf-category-hero .sf-section-title {
    font-size: clamp(2.8rem, 13vw, 4rem);
  }
}


/* =========================================================
   v6.7 — URL histórica Pronta Entrega + rodapé compacto
   ========================================================= */

.sf-footer--compact {
  padding-top: 46px;
}

.sf-footer--compact .sf-footer-brand-row {
  padding-bottom: 25px;
}

.sf-footer-links-grid--compact {
  grid-template-columns: .8fr 1.15fr 1.25fr;
  gap: 58px;
  padding: 27px 0 25px;
}

.sf-footer--compact .sf-footer-column a {
  margin: 6px 0;
}

.sf-footer-inline-commerce {
  margin-top: 18px;
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.10);
}

.sf-footer-inline-commerce small {
  display: block;
  margin-top: 7px;
  color: #8f8589;
  font-size: .65rem;
}

.sf-footer-inline-commerce .sf-payment-marks {
  margin-top: 8px;
}

.sf-footer-inline-shipping {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 11px;
}

.sf-footer-inline-shipping .sf-shipping-mark {
  margin-top: 0;
}

.sf-footer--compact .sf-footer-bottom {
  margin-top: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.10);
}

/* A antiga faixa isolada de pagamentos não é usada nesta versão. */
.sf-footer--compact + .sf-footer-commerce,
.sf-footer--compact .sf-footer-commerce {
  display: none;
}

@media (max-width: 780px) {
  .sf-footer-links-grid--compact {
    grid-template-columns: 1fr 1fr;
    gap: 28px 22px;
  }

  .sf-footer-column--service {
    grid-column: 1 / -1;
  }
}

@media (max-width: 520px) {
  .sf-footer-links-grid--compact {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .sf-footer-column--service {
    grid-column: auto;
  }

  .sf-footer-inline-commerce {
    margin-top: 15px;
  }
}


/* =========================================================
   v6.8 — confiança, carrinho premium e checkout premium
   ========================================================= */

/* Rodapé: confiança institucional */
.sf-footer-trust {
  display: grid;
  grid-template-columns: 26px minmax(0,1fr);
  gap: 10px;
  max-width: 620px;
  margin-top: 14px;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.sf-footer-trust-icon {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(216,161,177,.14);
  color: #e3a7b8;
  font-size: .75rem;
  font-weight: 900;
}

.sf-footer-trust p {
  margin: 0 !important;
  color: #cfc7ca !important;
  font-size: .72rem;
  line-height: 1.55;
}

.sf-footer-trust strong {
  color: #fff;
}

.sf-footer-mobile-bercario {
  display: none;
}

/* =========================================================
   CARRINHO
   ========================================================= */

.woocommerce-cart .sf-content-wrap {
  max-width: 1220px;
  padding-top: 48px;
  padding-bottom: 72px;
}

.woocommerce-cart .sf-content-wrap > article > h1,
.woocommerce-cart .entry-title {
  margin: 0 0 26px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.7rem, 5vw, 4.5rem);
  font-weight: 600;
  line-height: .95;
}

.woocommerce-cart .woocommerce {
  display: grid;
  grid-template-columns: minmax(0,1.5fr) minmax(330px,.75fr);
  gap: 30px;
  align-items: start;
}

.woocommerce-cart .woocommerce-notices-wrapper,
.woocommerce-cart .woocommerce .woocommerce-message,
.woocommerce-cart .woocommerce .woocommerce-error,
.woocommerce-cart .woocommerce .woocommerce-info,
.woocommerce-cart .woocommerce .sf-cart-help {
  grid-column: 1 / -1;
}

.woocommerce-cart form.woocommerce-cart-form {
  margin: 0;
  padding: 18px;
  border: 1px solid rgba(181,106,126,.18);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(65,37,45,.06);
}

.woocommerce-cart table.shop_table {
  margin: 0;
  border: 0 !important;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
}

.woocommerce-cart table.shop_table th {
  padding: 12px 10px 14px;
  border-bottom: 1px solid rgba(181,106,126,.18);
  color: var(--sf-muted);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.woocommerce-cart table.shop_table td {
  padding: 16px 10px;
  border-bottom: 1px solid rgba(181,106,126,.12);
  vertical-align: middle;
}

.woocommerce-cart table.shop_table .product-thumbnail img {
  width: 72px;
  border-radius: 14px;
}

.woocommerce-cart table.shop_table .product-name a {
  color: var(--sf-text);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.23rem;
  font-weight: 600;
  line-height: 1.1;
}

.woocommerce-cart .product-remove a {
  display: grid !important;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #fff3f5;
  color: #a84e66 !important;
  font-size: 1rem !important;
  text-decoration: none;
}

.woocommerce-cart .quantity .qty {
  width: 60px;
  min-height: 38px;
  border: 1px solid rgba(181,106,126,.28);
  border-radius: 9px;
  text-align: center;
}

.woocommerce-cart .actions .button,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .woocommerce-message .button {
  border-radius: 999px !important;
}

.woocommerce-cart .cart-collaterals {
  position: sticky;
  top: 96px;
  width: 100%;
}

.woocommerce-cart .cart_totals {
  float: none !important;
  width: 100% !important;
  padding: 23px;
  border: 1px solid rgba(181,106,126,.20);
  border-radius: 22px;
  background:
    linear-gradient(145deg,#fff,#fff8fa);
  box-shadow: 0 18px 46px rgba(65,37,45,.07);
}

.woocommerce-cart .cart_totals h2 {
  margin: 0 0 18px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2rem;
  line-height: 1;
}

.woocommerce-cart .cart_totals table td,
.woocommerce-cart .cart_totals table th {
  padding: 13px 6px;
}

.woocommerce-cart .order-total {
  font-size: 1.05rem;
}

.woocommerce-cart .wc-proceed-to-checkout {
  padding: 15px 0 0;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  width: 100%;
  margin: 0;
  padding: 17px 22px !important;
  background: var(--sf-rose) !important;
  font-size: .96rem !important;
  font-weight: 800 !important;
}

.sf-cart-help {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 8px;
  padding: 25px 28px;
  border-radius: 22px;
  background: var(--sf-dark);
  color: #fff;
}

.sf-cart-help .sf-kicker {
  color: #e0a7b7;
}

.sf-cart-help h3 {
  margin: 4px 0 6px;
  color: #fff;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2rem;
  line-height: 1;
}

.sf-cart-help p {
  max-width: 680px;
  margin: 0;
  color: #cfc5c8;
  font-size: .82rem;
}

.sf-cart-help-button {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 50px;
  padding: 12px 21px;
  border-radius: 999px;
  background: #25d366;
  color: #fff !important;
  font-size: .82rem;
  font-weight: 800;
  text-decoration: none;
}

/* =========================================================
   CHECKOUT
   ========================================================= */

.woocommerce-checkout .sf-content-wrap {
  max-width: 1240px;
  padding-top: 42px;
  padding-bottom: 70px;
}

.woocommerce-checkout .sf-content-wrap > article > h1,
.woocommerce-checkout .entry-title {
  display: none;
}

.sf-checkout-intro {
  max-width: 760px;
  margin: 0 0 30px;
}

.sf-checkout-intro h1 {
  margin: 7px 0 10px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.8rem, 5vw, 4.6rem);
  font-weight: 600;
  line-height: .94;
}

.sf-checkout-intro p {
  margin: 0;
  color: var(--sf-muted);
}

.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(390px,.85fr);
  gap: 30px;
  align-items: start;
}

.woocommerce-checkout #customer_details {
  grid-column: 1;
  display: block;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
  float: none;
  width: 100%;
}

.woocommerce-checkout #customer_details .col-2 {
  margin-top: 20px;
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout .sf-checkout-shipping-moved {
  padding: 25px;
  border: 1px solid rgba(181,106,126,.18);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(65,37,45,.05);
}

.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3,
.woocommerce-checkout #order_review_heading {
  margin: 0 0 20px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2rem;
  line-height: 1;
}

.woocommerce-checkout .form-row {
  margin-bottom: 14px;
}

.woocommerce-checkout .form-row label {
  margin-bottom: 6px;
  color: var(--sf-text);
  font-size: .72rem;
  font-weight: 700;
}

.woocommerce-checkout .input-text,
.woocommerce-checkout select,
.woocommerce-checkout .select2-selection {
  min-height: 46px !important;
  border: 1px solid #ded6d9 !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
}

.woocommerce-checkout .input-text {
  padding: 10px 12px !important;
}

.woocommerce-checkout .select2-selection__rendered {
  line-height: 44px !important;
}

.woocommerce-checkout .select2-selection__arrow {
  height: 44px !important;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
  grid-column: 2;
}

.woocommerce-checkout #order_review_heading {
  margin: 0;
  padding: 25px 25px 0;
  border: 1px solid rgba(181,106,126,.18);
  border-bottom: 0;
  border-radius: 22px 22px 0 0;
  background: #fff;
}

.woocommerce-checkout #order_review {
  position: sticky;
  top: 92px;
  padding: 5px 25px 25px;
  border: 1px solid rgba(181,106,126,.18);
  border-top: 0;
  border-radius: 0 0 22px 22px;
  background:
    linear-gradient(145deg,#fff,#fff8fa);
  box-shadow: 0 18px 46px rgba(65,37,45,.07);
}

.woocommerce-checkout-review-order-table {
  border: 0 !important;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  padding: 12px 7px !important;
}

.woocommerce-checkout #payment {
  margin-top: 18px;
  border-radius: 18px !important;
  background: #f7f2f4 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
  padding: 18px !important;
  border-bottom-color: rgba(181,106,126,.18) !important;
}

.woocommerce-checkout #payment div.form-row {
  padding: 18px !important;
}

.woocommerce-checkout #place_order {
  width: 100%;
  min-height: 56px;
  border-radius: 999px !important;
  background: var(--sf-rose) !important;
  font-size: .95rem !important;
  font-weight: 800 !important;
}

/* Endereço alternativo movido para o final */
.woocommerce-checkout .sf-checkout-shipping-moved {
  grid-column: 1 / -1;
  margin-top: 2px;
  padding: 0;
  overflow: hidden;
}

.woocommerce-checkout .sf-checkout-shipping-moved .woocommerce-shipping-fields {
  margin: 0;
}

.woocommerce-checkout .sf-checkout-shipping-moved h3 {
  margin: 0 !important;
}

.woocommerce-checkout .sf-checkout-shipping-moved #ship-to-different-address {
  padding: 17px 20px;
  background: #fff8fa;
  font-family: inherit;
  font-size: .86rem;
}

.woocommerce-checkout .sf-checkout-shipping-moved #ship-to-different-address label {
  display: flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
}

.woocommerce-checkout .sf-checkout-shipping-moved .shipping_address {
  padding: 20px 22px 8px;
  border-top: 1px solid rgba(181,106,126,.15);
}

.sf-checkout-trust-note {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 17px;
  margin-top: 25px;
  padding: 16px 20px;
  border-radius: 16px;
  background: #fff7f9;
  color: var(--sf-muted);
  font-size: .72rem;
}

.sf-checkout-trust-note strong {
  color: var(--sf-text);
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 820px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr;
  }

  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout #order_review {
    position: static;
  }

  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review {
    grid-column: 1;
  }

  .woocommerce-checkout .sf-checkout-shipping-moved {
    grid-column: 1;
  }
}

@media (max-width: 560px) {
  .sf-footer-trust {
    margin-top: 12px;
  }

  .sf-footer-mobile-bercario {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 6px 0 19px;
    padding: 15px 17px;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 14px;
    background: linear-gradient(135deg,rgba(255,255,255,.08),rgba(216,161,177,.08));
    color: #fff !important;
    text-decoration: none;
  }

  .sf-footer-mobile-bercario small {
    display: block;
    margin-bottom: 2px;
    color: #a99fa3;
    font-size: .58rem;
    letter-spacing: .08em;
    text-transform: uppercase;
  }

  .sf-footer-mobile-bercario strong {
    display: block;
    font-size: .82rem;
  }

  .sf-footer-mobile-bercario-arrow {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #fff;
    color: var(--sf-dark);
    font-size: 1rem;
  }

  .woocommerce-cart .sf-content-wrap,
  .woocommerce-checkout .sf-content-wrap {
    padding-top: 28px;
    padding-bottom: 48px;
  }

  .woocommerce-cart form.woocommerce-cart-form {
    padding: 10px;
    border-radius: 17px;
  }

  .woocommerce-cart table.shop_table thead {
    display: none;
  }

  .woocommerce-cart table.shop_table tr.cart_item {
    display: grid;
    grid-template-columns: 32px 72px minmax(0,1fr);
    gap: 4px 9px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(181,106,126,.14);
  }

  .woocommerce-cart table.shop_table td {
    padding: 4px !important;
    border: 0 !important;
  }

  .woocommerce-cart .product-remove {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .woocommerce-cart .product-thumbnail {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  .woocommerce-cart .product-name {
    grid-column: 3;
  }

  .woocommerce-cart .product-price,
  .woocommerce-cart .product-quantity,
  .woocommerce-cart .product-subtotal {
    grid-column: 3;
    font-size: .78rem;
  }

  .woocommerce-cart .cart_totals {
    padding: 18px;
    border-radius: 18px;
  }

  .sf-cart-help {
    flex-direction: column;
    align-items: stretch;
    padding: 21px;
    border-radius: 18px;
  }

  .sf-cart-help-button {
    justify-content: center;
    width: 100%;
  }

  .sf-checkout-intro {
    margin-bottom: 22px;
  }

  .woocommerce-checkout .woocommerce-billing-fields,
  .woocommerce-checkout .woocommerce-additional-fields {
    padding: 19px;
    border-radius: 18px;
  }

  .woocommerce-checkout #order_review_heading {
    padding: 20px 19px 0;
    border-radius: 18px 18px 0 0;
  }

  .woocommerce-checkout #order_review {
    padding: 4px 19px 20px;
    border-radius: 0 0 18px 18px;
  }

  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    float: none !important;
    width: 100% !important;
  }
}


/* =========================================================
   v6.9 — carrinho refinado + checkout corrigido
   ========================================================= */

/* ---------------------------------------------------------
   PIX NO CARRINHO
   --------------------------------------------------------- */

/*
 * A mensagem do desconto Pix é movida via JS para logo após
 * a tabela de produtos. Aqui ela recebe o visual do tema.
 */
.woocommerce-cart .sf-cart-pix-notice {
  margin: 16px 0 0;
  padding: 14px 17px;
  border: 1px solid rgba(181,106,126,.18);
  border-left: 4px solid var(--sf-rose);
  border-radius: 14px;
  background: linear-gradient(135deg,#fff,#fff8fa);
  color: var(--sf-muted);
  font-size: .8rem;
  line-height: 1.5;
  box-shadow: 0 10px 25px rgba(65,37,45,.04);
}

.woocommerce-cart .sf-cart-pix-notice strong {
  color: var(--sf-text);
}

.woocommerce-cart .sf-cart-pix-notice::before {
  content: "◆";
  display: inline-block;
  margin-right: 8px;
  color: #2f7b55;
  font-size: .72rem;
}

/* Evita que a mensagem técnica antiga apareça no card de totais. */
.woocommerce-cart .cart_totals > .woocommerce-info,
.woocommerce-cart .cart_totals > .wc-block-components-notice-banner {
  display: none !important;
}

/* ---------------------------------------------------------
   BANNER DE ATENDIMENTO
   --------------------------------------------------------- */

.sf-cart-help {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 90% 20%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(135deg,#33252b,#24191e);
  box-shadow: 0 18px 42px rgba(33,20,26,.13);
}

.sf-cart-help::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: inherit;
}

.sf-cart-help-copy {
  position: relative;
  z-index: 1;
}

.sf-cart-help .sf-kicker {
  color: #e5afbd !important;
}

.sf-cart-help h3 {
  color: #fff !important;
}

.sf-cart-help p {
  color: #d8cfd2 !important;
}

.sf-cart-help-button {
  position: relative;
  z-index: 1;
  box-shadow: 0 12px 28px rgba(37,211,102,.22);
}

/* ---------------------------------------------------------
   CHECKOUT — ESTRUTURA CORRIGIDA
   --------------------------------------------------------- */

.woocommerce-checkout form.checkout {
  display: grid !important;
  grid-template-columns: minmax(0,1.12fr) minmax(390px,.88fr) !important;
  grid-template-areas:
    "customer ordertitle"
    "customer order"
    "shipping shipping";
  gap: 28px 30px !important;
  align-items: start !important;
}

.woocommerce-checkout #customer_details {
  grid-area: customer !important;
  width: 100% !important;
  margin: 0 !important;
}

.woocommerce-checkout #order_review_heading {
  grid-area: ordertitle !important;
  width: 100% !important;
  margin: 0 !important;
}

.woocommerce-checkout #order_review {
  grid-area: order !important;
  width: 100% !important;
  margin: 0 !important;
}

.woocommerce-checkout .sf-checkout-shipping-moved {
  grid-area: shipping !important;
  width: 100% !important;
}

/*
 * Alguns plugins/WooCommerce deixam floats e larguras nativas
 * que quebram a grade. Neutralizamos tudo aqui.
 */
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2,
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading {
  float: none !important;
  clear: none !important;
  max-width: none !important;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
  width: 100% !important;
}

.woocommerce-checkout #customer_details .col-2 {
  margin-top: 18px !important;
}

/* Card do resumo */
.woocommerce-checkout #order_review_heading {
  padding: 22px 24px 12px !important;
  border: 1px solid rgba(181,106,126,.18) !important;
  border-bottom: 0 !important;
  border-radius: 20px 20px 0 0 !important;
  background: #fff !important;
  box-sizing: border-box;
}

.woocommerce-checkout #order_review {
  position: sticky !important;
  top: 92px !important;
  padding: 0 24px 24px !important;
  border: 1px solid rgba(181,106,126,.18) !important;
  border-top: 0 !important;
  border-radius: 0 0 20px 20px !important;
  background: linear-gradient(145deg,#fff,#fff8fa) !important;
  box-sizing: border-box;
  box-shadow: 0 18px 46px rgba(65,37,45,.07);
}

/* Remove margens excessivas criadas por plugins de pagamento */
.woocommerce-checkout #payment {
  margin-top: 14px !important;
}

.woocommerce-checkout #payment .payment_box {
  font-size: .76rem;
  line-height: 1.5;
}

.woocommerce-checkout #payment img {
  max-height: 34px;
  width: auto;
}

/* Campos visualmente mais equilibrados no desktop */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 14px;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_address_1_field,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_address_2_field,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_company_field {
  grid-column: 1 / -1;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row {
  float: none !important;
  width: 100% !important;
  margin-right: 0 !important;
}

/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */
@media (max-width: 900px) {
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "customer"
      "ordertitle"
      "order"
      "shipping" !important;
  }

  .woocommerce-checkout #order_review {
    position: static !important;
  }
}

@media (max-width: 560px) {
  .woocommerce-cart .sf-cart-pix-notice {
    margin-top: 12px;
    padding: 12px 13px;
    border-radius: 12px;
    font-size: .73rem;
  }

  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_address_1_field,
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_address_2_field,
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_company_field {
    grid-column: 1;
  }

  .woocommerce-checkout #order_review_heading {
    padding: 18px 17px 10px !important;
    border-radius: 17px 17px 0 0 !important;
  }

  .woocommerce-checkout #order_review {
    padding: 0 17px 18px !important;
    border-radius: 0 0 17px 17px !important;
  }
}




/* =========================================================
   v6.11 — segurança: nunca ocultar estrutura do produto
   ========================================================= */

/*
 * A rotina agressiva da v6.10 foi removida.
 * Esta regra garante que páginas cacheadas que ainda tragam
 * a classe antiga não escondam produto, preço, galeria ou CTA.
 */
.sf-product-page.sf-hide-external-pix,
.sf-product-page .sf-product-summary.sf-hide-external-pix,
.sf-product-page .sf-product-price-panel.sf-hide-external-pix,
.sf-product-page .sf-product-media.sf-hide-external-pix,
.sf-product-page .sf-product-stage.sf-hide-external-pix,
.sf-product-page .sf-product-buy.sf-hide-external-pix,
.sf-product-page .sf-product-description-section.sf-hide-external-pix,
.sf-bercario-product.sf-hide-external-pix,
.sf-product-content.sf-hide-external-pix {
  display: revert !important;
}


/* =========================================================
   v6.12 — checkout Pix + pedido recebido
   ========================================================= */

/* Aviso do PagBank no checkout: mais integrado ao tema */
.woocommerce-checkout #payment .payment_method_pagbank_pix .payment_box,
.woocommerce-checkout #payment [class*="pix"] .payment_box {
  margin-top: 12px !important;
  padding: 15px 16px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg,#fff,#f7f1f4) !important;
  color: var(--sf-muted) !important;
  font-size: .78rem !important;
  line-height: 1.55 !important;
}

.woocommerce-checkout #payment .payment_box::before {
  border-bottom-color: #f7f1f4 !important;
}

/* ---------------------------------------------------------
   Pedido recebido / Pix
   --------------------------------------------------------- */

.sf-order-received-premium .sf-content-wrap {
  max-width: 980px;
  padding-top: 48px;
  padding-bottom: 72px;
}

.sf-order-received-premium .woocommerce {
  max-width: 920px;
  margin: 0 auto;
}

.sf-order-received-intro {
  max-width: 760px;
  margin: 0 0 26px;
}

.sf-order-received-intro h1 {
  margin: 7px 0 10px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.8rem,5vw,4.5rem);
  font-weight: 600;
  line-height: .95;
}

.sf-order-received-intro p {
  margin: 0;
  color: var(--sf-muted);
  line-height: 1.6;
}

.sf-order-received-premium .woocommerce-order {
  padding: 26px;
  border: 1px solid rgba(181,106,126,.18);
  border-radius: 24px;
  background:
    radial-gradient(circle at 90% 5%,rgba(181,106,126,.08),transparent 23%),
    #fff;
  box-shadow: 0 18px 46px rgba(65,37,45,.06);
}

.sf-order-received-premium .woocommerce-notice--success,
.sf-order-received-premium .woocommerce-thankyou-order-received {
  margin: 0 0 20px;
  padding: 15px 17px;
  border: 1px solid rgba(47,123,85,.18);
  border-radius: 14px;
  background: #f1fbf5;
  color: #2f6948;
  font-weight: 700;
}

/* Resumo do pedido */
.sf-order-received-premium ul.woocommerce-order-overview {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.sf-order-received-premium ul.woocommerce-order-overview li {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 12px 13px !important;
  border: 1px solid rgba(181,106,126,.14) !important;
  border-radius: 12px;
  background: #fff9fb;
  color: var(--sf-muted);
  font-size: .68rem;
}

.sf-order-received-premium ul.woocommerce-order-overview li strong {
  display: block;
  margin-top: 5px;
  color: var(--sf-text);
  font-size: .83rem;
}

/* Captura visualmente os blocos usuais de instrução Pix do gateway */
.sf-order-received-premium .woocommerce-order > p,
.sf-order-received-premium .woocommerce-order > div:not(.woocommerce-order-details):not(.woocommerce-customer-details),
.sf-order-received-premium [class*="pix"],
.sf-order-received-premium [id*="pix"] {
  box-sizing: border-box;
}

.sf-order-received-premium [class*="pix"]:not(body):not(html),
.sf-order-received-premium [id*="pix"] {
  max-width: 720px;
}

/* QR Code */
.sf-order-received-premium img[src*="qr"],
.sf-order-received-premium img[alt*="QR"],
.sf-order-received-premium img[alt*="Qr"],
.sf-order-received-premium canvas {
  display: block;
  max-width: 240px !important;
  height: auto !important;
  margin: 18px auto;
  padding: 12px;
  border: 1px solid rgba(181,106,126,.18);
  border-radius: 16px;
  background: #fff;
}

/* Campos / códigos copia e cola */
.sf-order-received-premium input[readonly],
.sf-order-received-premium textarea[readonly],
.sf-order-received-premium code {
  width: 100%;
  max-width: 100%;
  padding: 12px 13px;
  border: 1px solid rgba(181,106,126,.20);
  border-radius: 10px;
  background: #fff8fa;
  color: var(--sf-text);
  font-size: .72rem;
  line-height: 1.45;
  word-break: break-all;
}

/* Botões produzidos pelo gateway */
.sf-order-received-premium button,
.sf-order-received-premium .button {
  border-radius: 999px !important;
}

/* Tabelas */
.sf-order-received-premium .woocommerce-order-details,
.sf-order-received-premium .woocommerce-customer-details {
  margin-top: 26px;
}

.sf-order-received-premium .woocommerce-order-details__title,
.sf-order-received-premium .woocommerce-column__title {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2rem;
  line-height: 1;
}

.sf-order-received-premium table.shop_table {
  border-color: rgba(181,106,126,.16) !important;
  border-radius: 14px;
  overflow: hidden;
}

/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */
@media (max-width: 680px) {
  .sf-order-received-premium .sf-content-wrap {
    padding-top: 30px;
    padding-bottom: 48px;
  }

  .sf-order-received-premium .woocommerce-order {
    padding: 18px;
    border-radius: 18px;
  }

  .sf-order-received-premium ul.woocommerce-order-overview {
    grid-template-columns: 1fr 1fr;
  }

  .sf-order-received-premium img[src*="qr"],
  .sf-order-received-premium img[alt*="QR"],
  .sf-order-received-premium img[alt*="Qr"],
  .sf-order-received-premium canvas {
    max-width: 210px !important;
  }
}


/* =========================================================
   v6.14 — Pedido recebido renderizado sem login
   ========================================================= */

.sf-direct-order-received .sf-content-wrap {
  max-width: 980px;
  margin: 0 auto;
  padding-top: 48px;
  padding-bottom: 72px;
}

.sf-direct-order-received .woocommerce-order {
  padding: 26px;
  border: 1px solid rgba(181,106,126,.18);
  border-radius: 24px;
  background:
    radial-gradient(circle at 90% 5%,rgba(181,106,126,.08),transparent 23%),
    #fff;
  box-shadow: 0 18px 46px rgba(65,37,45,.06);
}

.sf-direct-order-received .woocommerce-thankyou-order-received,
.sf-direct-order-received .woocommerce-notice--success {
  margin: 0 0 20px;
  padding: 15px 17px;
  border: 1px solid rgba(47,123,85,.18);
  border-radius: 14px;
  background: #f1fbf5;
  color: #2f6948;
  font-weight: 700;
}

.sf-direct-order-received ul.woocommerce-order-overview {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.sf-direct-order-received ul.woocommerce-order-overview li {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 12px 13px !important;
  border: 1px solid rgba(181,106,126,.14) !important;
  border-radius: 12px;
  background: #fff9fb;
}

.sf-direct-order-received img[src*="qr"],
.sf-direct-order-received img[alt*="QR"],
.sf-direct-order-received img[alt*="Qr"],
.sf-direct-order-received canvas {
  display: block;
  max-width: 240px !important;
  height: auto !important;
  margin: 18px auto;
  padding: 12px;
  border: 1px solid rgba(181,106,126,.18);
  border-radius: 16px;
  background: #fff;
}

.sf-direct-order-received input[readonly],
.sf-direct-order-received textarea[readonly],
.sf-direct-order-received code {
  width: 100%;
  max-width: 100%;
  padding: 12px 13px;
  border: 1px solid rgba(181,106,126,.20);
  border-radius: 10px;
  background: #fff8fa;
  word-break: break-all;
}

@media (max-width: 680px) {
  .sf-direct-order-received .sf-content-wrap {
    padding-top: 30px;
    padding-bottom: 48px;
  }

  .sf-direct-order-received .woocommerce-order {
    padding: 18px;
    border-radius: 18px;
  }

  .sf-direct-order-received ul.woocommerce-order-overview {
    grid-template-columns: 1fr 1fr;
  }
}
\n\n/* v6.16 — validação do checkout */\n.woocommerce-checkout .woocommerce-error,\n.woocommerce-checkout .woocommerce-NoticeGroup-checkout {\n  scroll-margin-top: 110px;\n}\n.woocommerce-checkout .woocommerce-invalid .input-text,\n.woocommerce-checkout .woocommerce-invalid select,\n.woocommerce-checkout .woocommerce-invalid .select2-selection {\n  border-color: #b94f67 !important;\n  box-shadow: 0 0 0 2px rgba(185,79,103,.10) !important;\n}\n