/* ==========================================================================
   Aopy · Configurator prețuri · CSS
   Secțiunea „Module și prețuri” (Home, Module, Prețuri). O singură versiune pentru toate paginile.
   Cardurile modulelor sunt containere native (.aopy-pr-mod + .aopy-pr-k-fm/fd/cr/es/tr):
   textele, culorile și spațiile se editează în Elementor.
   Întrebările, intervalele și prețurile sunt în widgetul HTML al secțiunii (.aopy-pr-cfg), pe fiecare pagină.
   Varianta cu Feed Suite (Feed Manager + Feed Design într-un container comun .aopy-pr-pair, pagina Prețuri):
   pe containerul secțiunii se adaugă și clasa aopy-pr--suite.
   Se încarcă doar pe Home, /module/ și Prețuri (regulă WPCode).
   ========================================================================== */

.aopy-pr{--aopy-pr-ink:#130528;--aopy-pr-mut:#5A5270;--aopy-pr-soft:#A99FC0;--aopy-pr-line:#EFEAF7;--aopy-pr-bd:#E6E0F0;--aopy-pr-p:#5B08BB;--aopy-pr-p2:#8D53DE;--aopy-pr-tint:#F4F0FB;--aopy-pr-snap:cubic-bezier(.23,1,.32,1)}
.aopy-pr .aopy-pr-mod.e-con{position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .25s,background-color .25s,box-shadow .3s,transform .35s var(--aopy-pr-snap)}
.aopy-pr .aopy-pr-mod .aopy-pr-check{position:absolute;top:22px;right:22px;width:22px;height:22px;border-radius:50%;border:2px solid #D4CCE4;background:#fff;transition:border-color .25s,background-color .25s,box-shadow .25s,transform .35s var(--aopy-pr-snap);pointer-events:none}
.aopy-pr .aopy-pr-mod.is-on{border-color:var(--aopy-pr-p)!important;background-color:#FAF7FF!important;box-shadow:0 12px 30px -12px rgba(91,8,187,.28)}
.aopy-pr .aopy-pr-mod.is-on .aopy-pr-check{border-color:var(--aopy-pr-p);background:var(--aopy-pr-p);box-shadow:inset 0 0 0 4px #fff;transform:scale(1.08)}
.aopy-pr .aopy-pr-mod:focus-visible{outline:2px solid var(--aopy-pr-p2);outline-offset:3px}
@media (hover:hover) and (pointer:fine){
  .aopy-pr .aopy-pr-mod.e-con:hover{transform:translateY(-3px);box-shadow:0 14px 34px -14px rgba(44,4,90,.22)}
  .aopy-pr .aopy-pr-mod:not(.is-on):hover{border-color:#C9B3F0!important}
}

.aopy-pr .aopy-pr-cfg{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:16px;align-items:start;font-family:var(--aopy-ff-body);color:var(--aopy-pr-ink)}
.aopy-pr .aopy-pr-cfg *{box-sizing:border-box}
.aopy-pr .aopy-pr-cfg p{margin:0}
.aopy-pr .aopy-pr-cfg button{text-transform:none;letter-spacing:normal;min-height:0;line-height:1.3;box-sizing:border-box}
.aopy-pr .aopy-pr-config,.aopy-pr .aopy-pr-total{background:#fff;border:1px solid var(--aopy-pr-bd);border-radius:24px;padding:30px 32px}
.aopy-pr .aopy-pr-config-title,.aopy-pr .aopy-pr-total-title{font-family:var(--aopy-ff-head);font-weight:700;font-size:20px;line-height:1.3;color:var(--aopy-pr-ink)}
.aopy-pr .aopy-pr-empty{margin-top:14px;font-size:15px;line-height:1.5;color:#7A7191}
.aopy-pr .aopy-pr-config.has-mods .aopy-pr-empty{display:none}

/* varianta Feed Suite: rândul de carduri are lățimi egale pe desktop (Feed Suite ține două carduri) */
.aopy-pr--suite .aopy-pr-mods > .e-con,.aopy-pr--suite .aopy-pr-pair > .aopy-pr-mod.e-con{min-width:0;--width:auto;width:auto}
@media (min-width:1025px){
  .aopy-pr--suite .aopy-pr-mods > .aopy-pr-mod.e-con,.aopy-pr--suite .aopy-pr-pair > .aopy-pr-mod.e-con{flex:1 1 0}
  .aopy-pr--suite .aopy-pr-mods > .aopy-pr-pair.e-con{flex:2.1 1 0}
}
@media (max-width:1024px){ .aopy-pr--suite .aopy-pr-mods > .e-con,.aopy-pr--suite .aopy-pr-pair > .aopy-pr-mod.e-con{width:100%;--width:100%} }
/* Feed Suite: Feed Manager + Feed Design legate vizual */
.aopy-pr .aopy-pr-pair.e-con{position:relative;transition:border-color .3s,background-color .3s,box-shadow .3s}
.aopy-pr .aopy-pr-pair-tag.e-con{position:absolute;top:0;left:50%;flex-wrap:nowrap;transform:translate(-50%,-50%);z-index:3;width:auto;--width:auto;white-space:nowrap;transition:background-color .3s,border-color .3s,box-shadow .3s}
.aopy-pr .aopy-pr-pair-tag .elementor-heading-title{transition:color .3s}
.aopy-pr .aopy-pr-pair.is-hot{border-color:var(--aopy-pr-p)!important;border-style:solid!important;background-color:#FBF8FF!important;box-shadow:0 18px 40px -22px rgba(91,8,187,.45)}
.aopy-pr .aopy-pr-pair.is-hot .aopy-pr-pair-tag{background-color:var(--aopy-pr-p)!important;border-color:var(--aopy-pr-p)!important;box-shadow:0 8px 20px -8px rgba(91,8,187,.6)}
.aopy-pr .aopy-pr-pair.is-hot .aopy-pr-pair-tag .elementor-heading-title{color:#fff!important}
.aopy-pr .aopy-pr-pair.is-hot .aopy-pr-off .elementor-heading-title{background:#fff;color:var(--aopy-pr-p)!important}
.aopy-pr .aopy-pr-off .elementor-heading-title{display:inline-block;padding:3px 9px;border-radius:999px;background:var(--aopy-pr-p);transition:background-color .3s,color .3s}
.aopy-pr .aopy-pr-pair.is-hot:not(.is-both) .aopy-pr-pair-tag{animation:aopy-pr-pulse 2.4s ease-out infinite}
@keyframes aopy-pr-pulse{0%{box-shadow:0 0 0 0 rgba(91,8,187,.45)}70%,100%{box-shadow:0 0 0 10px rgba(91,8,187,0)}}

/* întrebări */
.aopy-pr .aopy-pr-q{display:none;position:relative;padding:22px 0;border-top:1px solid var(--aopy-pr-line)}
.aopy-pr .aopy-pr-q.is-first{margin-top:18px}
.aopy-pr .aopy-pr-q.is-on{display:block;animation:aopy-pr-in .45s var(--aopy-pr-snap) both}
.aopy-pr .aopy-pr-q.is-last{padding-bottom:0}
.aopy-pr .aopy-pr-q-mod{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-family:var(--aopy-ff-body);font-size:12px;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:var(--aopy-pr-p)}
.aopy-pr .aopy-pr-badge{font-style:normal;padding:3px 9px;border-radius:999px;background:var(--aopy-pr-p);color:#fff;letter-spacing:.04em}
.aopy-pr .aopy-pr-q-t{margin-top:8px!important;font-family:var(--aopy-ff-head);font-weight:500;font-size:17px;line-height:1.35;color:var(--aopy-pr-ink)}
.aopy-pr .aopy-pr-q[data-q="tr"] .aopy-pr-q-t{margin-top:0!important}
.aopy-pr .aopy-pr-q-note{margin-top:6px!important;font-size:14px;line-height:1.5;color:#7A7191;max-width:46ch}
.aopy-pr .aopy-pr-q[data-q="tr"]{display:none;grid-template-columns:minmax(0,1fr) auto;gap:4px 18px;align-items:center}
.aopy-pr .aopy-pr-q[data-q="tr"].is-on{display:grid}
.aopy-pr .aopy-pr-q[data-q="tr"] .aopy-pr-q-price{grid-column:2;grid-row:1/span 2}
.aopy-pr .aopy-pr-q-ctl{display:flex;align-items:center;gap:18px;margin-top:14px}
.aopy-pr .aopy-pr-q-price{flex:none;min-width:96px;text-align:right;white-space:nowrap}
.aopy-pr .aopy-pr-q-price strong{display:block;font-family:var(--aopy-ff-head);font-weight:600;font-size:24px;line-height:1.15;color:var(--aopy-pr-ink)}
.aopy-pr .aopy-pr-q-price strong.is-quote{font-size:17px;color:var(--aopy-pr-p)}
.aopy-pr .aopy-pr-q-price span{display:block;margin-top:2px;font-family:var(--aopy-ff-body);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--aopy-pr-soft)}
.aopy-pr .aopy-pr-hint{display:none;margin-top:14px;padding:10px 16px;border:1px dashed #CDB8F2;border-radius:999px;background:#FAF7FF;color:var(--aopy-pr-p);font:500 14px/1.4 var(--aopy-ff-body);text-align:left;cursor:pointer;transition:background-color .25s,border-color .25s}
.aopy-pr .aopy-pr-hint.is-on{display:inline-block}
/* sugestia cu insignă (data-suite-badge pe întrebare, pagina Prețuri) */
.aopy-pr [data-suite-badge] .aopy-pr-hint{padding:8px 18px 8px 8px;border-style:solid}
.aopy-pr [data-suite-badge] .aopy-pr-hint.is-on{display:inline-flex;align-items:center;gap:10px}
.aopy-pr .aopy-pr-hint-b{flex:none;font-style:normal;padding:5px 10px;border-radius:999px;background:var(--aopy-pr-p);color:#fff;font:600 12px/1 var(--aopy-ff-body);letter-spacing:.06em}
.aopy-pr .aopy-pr-hint:hover{background:var(--aopy-pr-tint);border-color:var(--aopy-pr-p2)}

/* lista de opțiuni: se deschide sub buton și arată toate variantele, fără scroll intern */
.aopy-pr .aopy-pr-dd{position:relative;flex:1;min-width:0}
.aopy-pr .aopy-pr-dd-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:13px 20px;border:1px solid #E0D8EE;border-radius:999px;background:#FAF8FE;color:var(--aopy-pr-ink);font:400 15px/1.3 var(--aopy-ff-body);text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.aopy-pr .aopy-pr-dd-btn:hover,.aopy-pr .aopy-pr-dd.is-open .aopy-pr-dd-btn{border-color:var(--aopy-pr-p);box-shadow:0 0 0 4px rgba(141,83,222,.1)}
.aopy-pr .aopy-pr-dd-btn:focus-visible{outline:2px solid var(--aopy-pr-p2);outline-offset:2px}
.aopy-pr .aopy-pr-dd-cur{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aopy-pr .aopy-pr-dd-arrow{flex:none;width:8px;height:8px;margin-top:-4px;border-right:2px solid var(--aopy-pr-soft);border-bottom:2px solid var(--aopy-pr-soft);transform:rotate(45deg);transition:transform .3s var(--aopy-pr-snap)}
.aopy-pr .aopy-pr-dd.is-open .aopy-pr-dd-arrow{transform:translateY(4px) rotate(-135deg)}
.aopy-pr .aopy-pr-o{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:60;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px;margin:0;padding:10px;list-style:none;background:#fff;border:1px solid var(--aopy-pr-bd);border-radius:22px;box-shadow:0 24px 50px -18px rgba(44,4,90,.3);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .3s var(--aopy-pr-snap),visibility .2s}
.aopy-pr .aopy-pr-dd.is-open .aopy-pr-o{opacity:1;visibility:visible;transform:none}
.aopy-pr .aopy-pr-q.is-open{z-index:60}
.aopy-pr .aopy-pr-o li{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:10px 14px;border-radius:999px;font-size:14px;line-height:1.3;color:var(--aopy-pr-ink);cursor:pointer;transition:background-color .15s,color .15s}
.aopy-pr .aopy-pr-o li:hover,.aopy-pr .aopy-pr-o li:focus-visible{background:var(--aopy-pr-tint);outline:none}
.aopy-pr .aopy-pr-o li.is-sel{background:var(--aopy-pr-p);color:#fff}
.aopy-pr .aopy-pr-o-p{flex:none;font-size:12px;color:var(--aopy-pr-soft)}
.aopy-pr .aopy-pr-o li.is-sel .aopy-pr-o-p{color:rgba(255,255,255,.75)}

/* total */
.aopy-pr .aopy-pr-total-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.aopy-pr .aopy-pr-total-head span,.aopy-pr .aopy-pr-details-title{font-family:var(--aopy-ff-body);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--aopy-pr-soft)}
.aopy-pr .aopy-pr-cycle{display:inline-flex;margin:20px 0 8px;padding:4px;border-radius:999px;background:#F0EBF9}
.aopy-pr .aopy-pr-cyc{margin:0;padding:8px 16px;border:0;border-radius:999px;background:transparent;color:#7A7191;font:500 14px/1.2 var(--aopy-ff-body);cursor:pointer;transition:background-color .25s,color .25s}
.aopy-pr .aopy-pr-cyc em{font-style:normal;font-size:12px;opacity:.8}
.aopy-pr .aopy-pr-cyc.is-active{background:var(--aopy-pr-p);color:#fff}
.aopy-pr .aopy-pr-sum-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0;border-top:1px solid var(--aopy-pr-line)}
.aopy-pr .aopy-pr-sum-row:first-child{border-top:0}
.aopy-pr .aopy-pr-sum-row span{font-size:15px;color:var(--aopy-pr-mut)}
.aopy-pr .aopy-pr-sum-row strong{font-family:var(--aopy-ff-head);font-weight:700;font-size:36px;line-height:1;color:var(--aopy-pr-ink);white-space:nowrap}
.aopy-pr .aopy-pr-monthly{color:var(--aopy-pr-p)!important}
.aopy-pr .aopy-pr-bump{animation:aopy-pr-bump .4s var(--aopy-pr-snap)}
.aopy-pr .aopy-pr-details{padding-top:20px;border-top:1px solid var(--aopy-pr-line)}
.aopy-pr .aopy-pr-details-title{margin-bottom:12px!important}
.aopy-pr .aopy-pr-line{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px;font-size:14px;line-height:1.4;color:var(--aopy-pr-mut);animation:aopy-pr-in .3s ease both}
.aopy-pr .aopy-pr-line span:last-child{flex:none;white-space:nowrap}
.aopy-pr .aopy-pr-line.is-disc{color:var(--aopy-pr-p);font-weight:500}
.aopy-pr .aopy-pr-noline{font-size:14px;color:var(--aopy-pr-soft)}
.aopy-pr .aopy-pr-quote-note{margin-top:12px!important;font-size:13px;line-height:1.5;color:var(--aopy-pr-p)}
.aopy-pr .aopy-pr-vat{margin-top:16px!important;font-size:13px;line-height:1.5;color:#9A90B3}
.aopy-pr .aopy-pr-cta{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:22px;padding:15px 24px;border-radius:999px;background:var(--aopy-pr-p);color:#fff!important;font:600 16px/1.2 var(--aopy-ff-body);text-decoration:none;box-shadow:0 12px 26px -12px rgba(91,8,187,.6);transition:background-color .25s,transform .3s var(--aopy-pr-snap),box-shadow .3s}
.aopy-pr .aopy-pr-cta svg{width:18px;height:18px;transition:transform .3s var(--aopy-pr-snap)}
@media (hover:hover) and (pointer:fine){
  .aopy-pr .aopy-pr-cta:hover{background:#4A0699;transform:translateY(-2px)}
  .aopy-pr .aopy-pr-cta:hover svg{transform:translateX(3px)}
}
@keyframes aopy-pr-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes aopy-pr-bump{0%{transform:scale(1)}40%{transform:scale(1.06)}100%{transform:scale(1)}}

@media (max-width:1024px){
  .aopy-pr .aopy-pr-cfg{grid-template-columns:1fr}
}
@media (max-width:767px){
  .aopy-pr .aopy-pr-config,.aopy-pr .aopy-pr-total{padding:22px 18px;border-radius:20px}
  .aopy-pr .aopy-pr-q-ctl{flex-direction:column;align-items:stretch;gap:12px}
  .aopy-pr .aopy-pr-q-price{text-align:left;display:flex;align-items:baseline;gap:10px}
  .aopy-pr .aopy-pr-q-price span{margin:0}
  .aopy-pr .aopy-pr-o{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px;gap:4px}
  .aopy-pr .aopy-pr-o li{padding:10px 12px;font-size:13px}
  .aopy-pr .aopy-pr-o-p{display:none}
  .aopy-pr .aopy-pr-sum-row strong{font-size:30px}
  .aopy-pr .aopy-pr-hint{border-radius:18px}
  .aopy-pr [data-suite-badge] .aopy-pr-hint{align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  .aopy-pr .aopy-pr-q.is-on,.aopy-pr .aopy-pr-line,.aopy-pr .aopy-pr-bump{animation:none}
  .aopy-pr .aopy-pr-mod.e-con,.aopy-pr .aopy-pr-o{transition:none}
  .aopy-pr .aopy-pr-pair-tag{animation:none!important}
}


/* --------------------------------------------------------------------------
   Varianta cu un singur modul (aopy-pr--solo, landing Feed Manager): cardul
   modulului rămâne în pagină (de acolo se citește numele), dar e ascuns.
   -------------------------------------------------------------------------- */
.aopy-pr--solo .aopy-pr-mods{display:none!important}


/* --------------------------------------------------------------------------
   Varianta doar cu plată unică (aopy-pr--oneoff, landing Creative Studio):
   ascunde comutatorul Lunar / Anual și rândul lunar din total.
   -------------------------------------------------------------------------- */
.aopy-pr--oneoff .aopy-pr-cycle,.aopy-pr--oneoff .aopy-pr-sum-row:has(.aopy-pr-monthly){display:none!important}


/* --------------------------------------------------------------------------
   Varianta fără prețuri publicate (aopy-pr--quote, landing TrueData): modulul
   are doar întrebarea „la cerere”, deci ascundem comutatorul Lunar / Anual și
   totalurile; rămân detaliile, nota și butonul.
   -------------------------------------------------------------------------- */
.aopy-pr--quote .aopy-pr-cycle,.aopy-pr--quote .aopy-pr-sum{display:none!important}


/* --------------------------------------------------------------------------
   Telefon: rândul „la cerere” (data-q="tr") pune textul și prețul unul sub altul.
   -------------------------------------------------------------------------- */
@media (max-width:767px){
  .aopy-pr .aopy-pr-q[data-q="tr"].is-on{grid-template-columns:minmax(0,1fr)}
  .aopy-pr .aopy-pr-q[data-q="tr"] .aopy-pr-q-price{grid-column:1;grid-row:auto;margin-top:6px}
  .aopy-pr .aopy-pr-q[data-q="tr"] .aopy-pr-q-note{max-width:none}
}
