/*
 * Elemente reutilizabile pentru paginile de continut. Se folosesc doar prin clase, fara CSS in pagina.
 *
 * .sh-section-head   titlu de sectiune cu text sub el
 * .sh-grid-2         doua coloane egale (--start, --center)
 * .sh-extras         grila de carduri .sh-extra (--wide pentru carduri cu text lung)
 * .sh-extras--price  carduri cu pretul ca titlu
 * .sh-steps          pasi numerotati automat, pe <ol>
 * .sh-check-list     lista cu bife (--plain fara linia de sus)
 * .sh-hero-checks    bife scurte, pe un rand
 * .sh-note           mesaj evidentiat, cu bifa
 * .sh-highlight      panou colorat cu o cifra mare (.sh-highlight-num)
 * .sh-faq-acc        intrebari frecvente in acordeon, cu schema FAQ automata
 * .sh-actions        rand de butoane
 * .sh-section--soft  banda pe fundal gri
 */
.sh-faq-acc{display:flex;flex-direction:column;gap:10px}
.sh-faq-acc details{border:1px solid var(--sh-border);border-radius:var(--sh-radius-md);background:var(--sh-bg)}
.sh-faq-acc details[open]{border-color:var(--sh-primary-bright);box-shadow:var(--sh-shadow-card)}
.sh-faq-acc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;cursor:pointer;list-style:none}
.sh-faq-acc summary::-webkit-details-marker{display:none}
.sh-faq-acc summary::after{content:"";flex:none;width:8px;height:8px;margin-top:-3px;border-right:2px solid var(--sh-primary);border-bottom:2px solid var(--sh-primary);transform:rotate(45deg)}
.sh-faq-acc details[open] summary::after{margin-top:3px;transform:rotate(-135deg)}
.sh-faq-acc h3{margin:0;font-size:15px;font-weight:600;color:var(--sh-ink)}
.sh-faq-acc p{margin:0;padding:0 20px 18px;font-size:14px;line-height:1.65;color:var(--sh-ink-3)}
.sh-legacy .sh-section-head>*,.sh-legacy .sh-extra h3,.sh-legacy .sh-extra p{margin:0}
.sh-legacy .sh-hero-checks,.sh-legacy .sh-check-list{padding-left:0;margin:0;list-style:none}
.sh-legacy .sh-btn-outline,.sh-legacy .sh-btn-outline:hover{color:var(--sh-ink)}
.sh-actions{display:flex;flex-wrap:wrap;gap:12px}
.sh-steps,.sh-legacy .sh-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;padding:0;margin:0;list-style:none;counter-reset:sh-step}
.sh-steps--2,.sh-legacy .sh-steps--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.sh-steps li{position:relative;padding:22px 22px 22px 68px;background:var(--sh-bg-soft);border-radius:var(--sh-radius-md);counter-increment:sh-step}
.sh-steps li::before{content:counter(sh-step);position:absolute;top:20px;left:22px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-weight:700;color:var(--sh-on-dark);background:var(--sh-primary)}
.sh-legacy .sh-steps h3{margin:0 0 6px;font-size:15px}
.sh-legacy .sh-steps p{margin:0;font-size:14px;line-height:1.55;color:var(--sh-ink-3)}
.sh-extras--price .sh-extra h3{font-size:24px;color:var(--sh-accent-text)}
.sh-extra .sh-check-list li{gap:10px;padding:7px 0;font-size:14px;line-height:1.55}
.sh-extras--wide{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.sh-extras .sh-extra{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--sh-border-tint);background:linear-gradient(145deg,var(--sh-white) 0%,var(--sh-primary-tint-6) 100%);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.sh-extras .sh-extra::before{content:"";position:absolute;z-index:-1;top:-45%;right:-20%;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--sh-primary-tint-18) 0%,transparent 70%);animation:sh-extra-drift 14s ease-in-out infinite alternate}
.sh-extras .sh-extra:nth-child(even)::before{animation-delay:-7s}
.sh-extras .sh-extra:hover{transform:translateY(-3px);border-color:var(--sh-primary-tint-45);box-shadow:var(--sh-shadow-card)}
@keyframes sh-extra-drift{to{transform:translate(-35%,30%) scale(1.15)}}
@media (prefers-reduced-motion:reduce){
.sh-extras .sh-extra{transition:none}
.sh-extras .sh-extra::before{animation:none}
.sh-extras .sh-extra:hover{transform:none}
}
.sh-note{display:flex;gap:12px;padding:16px 20px;border-radius:var(--sh-radius-md);font-size:15px;font-weight:600;color:var(--sh-ink);background:var(--sh-primary-tint-10)}
.sh-note::before{content:"✓";color:var(--sh-primary-bright)}
.sh-legacy .sh-note{margin:0}
.sh-highlight{padding:32px;border-radius:var(--sh-radius-lg);color:var(--sh-on-dark);background:var(--sh-gradient-cta);box-shadow:var(--sh-shadow-card)}
.sh-highlight-num{display:block;margin-bottom:12px;font-size:44px;font-weight:800;line-height:1.1;letter-spacing:-.02em}
.sh-legacy .sh-highlight p{margin:0;font-size:15px;line-height:1.65;color:inherit}
.sh-highlight a{color:inherit;text-decoration:underline}

/* Bloc oferta personalizata (.occ-section) */
/* ===== CUSTOM CONFIG CTA — STANDALONE SECTION ===== */
.occ-section{
  --occ-red: var(--sh-accent);
  --occ-red-dark: var(--sh-accent-dark);
  --occ-red-darker: var(--sh-accent-dark);

  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, var(--occ-red) 0%, var(--occ-red-dark) 100%);
  border-radius: 20px;
  padding: 36px 40px;
  color: #ffffff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  box-shadow: 0 16px 40px color-mix(in srgb,var(--sh-accent) 28%,transparent);
  box-sizing: border-box;
}
.occ-section *, .occ-section *::before, .occ-section *::after{ box-sizing: border-box; }

/* decorative background circles */
.occ-section::before{
  content: "";
  position: absolute;
  top: -80px;
  right: -80px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: rgba(255,255,255,0.08);
  pointer-events: none;
}
.occ-section::after{
  content: "";
  position: absolute;
  bottom: -100px;
  left: -60px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  pointer-events: none;
}

.occ-inner{
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px;
  align-items: center;
}

.occ-title{
  font-size: 26px;
  font-weight: 800;
  margin: 0 0 18px;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.occ-text{
  font-size: 15.5px;
  line-height: 1.65;
  margin: 0 0 8px;
  color: rgba(255,255,255,0.92);
}
.occ-text:last-of-type{
  margin-bottom: 0;
}

.occ-btn{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: transparent;
  color: #ffffff;
  text-decoration: none;
  font-weight: 700;
  font-size: 15.5px;
  padding: 14px 30px;
  border: 2px solid #ffffff;
  border-radius: 999px;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}
.occ-btn svg{
  width: 18px;
  height: 18px;
  stroke: currentColor;
  transition: transform .18s ease;
}
.occ-btn:hover{
  background: #ffffff;
  color: var(--occ-red-darker);
  transform: translateY(-2px);
}
.occ-btn:hover svg{
  transform: translateX(3px);
}

@media (max-width: 800px){
  .occ-inner{ grid-template-columns: minmax(0, 1fr); gap: 18px; }
}
@media (max-width: 600px){
  .occ-section{ padding: 30px 22px; border-radius: 16px; }
  .occ-title{ font-size: 21px; }
  .occ-text{ font-size: 14.5px; }
  .occ-btn{ width: 100%; justify-content: center; padding: 14px 20px; }
}
.occ-section .occ-title{color:#fff}

/* Video 16:9 incadrat, de pus in jurul unui iframe */
.sh-video-embed{position:relative;padding-top:56.25%}
.sh-video-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:var(--sh-radius-lg)}
