/* Scope all styles to the shortcode, to avoid conflict with Divi/WooCommerce. */
.pmcf-app,.pmcf-app *{box-sizing:border-box}
.pmcf-app{--pmcf-ink:#322A3A;--pmcf-muted:#6D6474;--pmcf-accent:#775799;--pmcf-gold:#B89A63;--pmcf-surface:#FFFFFF;--pmcf-faint:#F6F0F8;color:var(--pmcf-ink);font-family:inherit;max-width:960px;margin:28px auto;border:1px solid #E7DDE9;border-radius:22px;background:#FCFAF7;box-shadow:0 12px 45px rgba(79,52,83,.07);overflow:hidden}
.pmcf-app button,.pmcf-app a{transition:background .16s,border-color .16s,transform .16s,box-shadow .16s}
.pmcf-app button:focus-visible,.pmcf-app a:focus-visible{outline:3px solid #AE83D1;outline-offset:3px}
.pmcf-app h2,.pmcf-app h3,.pmcf-app p{color:inherit;margin:0;padding:0}
.pmcf-app h2{font-size:clamp(28px,5vw,44px);line-height:1.2;font-family:Georgia,'Times New Roman',serif;font-weight:500}
.pmcf-app h3{font-size:27px;font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.25}
.pmcf-brand{font-size:13px;letter-spacing:.19em;color:#755A83;font-weight:700;margin-bottom:26px}
.pmcf-hero{padding:clamp(30px,6vw,75px) clamp(20px,6vw,72px);text-align:center;background:radial-gradient(ellipse at 25% 15%,#F3E6FA 0%,transparent 44%),radial-gradient(ellipse at 95% 80%,#F7E9DA 0%,transparent 43%),#FCFAF7}
.pmcf-crystal-glyph{margin:0 auto 20px;font-size:100px;line-height:1;color:#B498D1;text-shadow:0 3px 22px #D2BFE2}
.pmcf-overline{font-size:11px;letter-spacing:.2em;font-weight:800;color:#8F719C;margin-bottom:12px}
.pmcf-hero-sub{font-size:19px!important;font-family:Georgia,serif;margin:13px 0!important;color:#71597A!important}
.pmcf-hero>p:not(.pmcf-hero-sub){max-width:550px;line-height:1.7;margin:18px auto 20px;color:var(--pmcf-muted)}
.pmcf-stats{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;color:#736678;font-size:13px;margin:22px auto 27px}
.pmcf-stats span:not(:last-child){border-right:1px solid #D7CCD9;padding-right:18px}
.pmcf-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:14px 22px;border-radius:12px;font-weight:700!important;font-size:15px!important;line-height:1.25!important;text-decoration:none!important;cursor:pointer;border:1px solid transparent;min-height:48px}
.pmcf-main{background:#795A97!important;color:#FFF!important;border:1px solid #795A97!important}
.pmcf-main:hover{background:#62447F!important;transform:translateY(-1px)}
.pmcf-secondary{background:#FFF!important;color:#74578C!important;border:1px solid #D8C9E0!important}
.pmcf-secondary:hover{background:#F5EDF9!important}
.pmcf-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.pmcf-sublink{display:block;margin:20px auto 0;font-size:13px;color:#695675!important;text-decoration:underline!important}
.pmcf-loading,.pmcf-empty{padding:55px 25px;text-align:center}.pmcf-empty h2{margin-bottom:15px}.pmcf-empty p{margin-bottom:18px}
.pmcf-quiz{padding:clamp(22px,5vw,54px)}
.pmcf-progress-meta{display:flex;justify-content:space-between;gap:10px;font-size:11px;font-weight:800;letter-spacing:.08em;color:#715E7B;margin-bottom:10px}
.pmcf-track{height:9px;border-radius:40px;background:#EDE5EF;overflow:hidden}
.pmcf-track>span{display:block;background:linear-gradient(90deg,#D5B578,#A582C5);height:100%;border-radius:inherit;transition:width .25s}
.pmcf-question-heading{margin:32px 0 22px}.pmcf-question-heading p{font-size:15px;color:var(--pmcf-muted);margin-top:9px}
.pmcf-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pmcf-option{padding:22px;text-align:left;background:#FFF;border:1.5px solid #E3DDE7;border-radius:15px;cursor:pointer;display:flex;flex-direction:column;min-height:139px;box-shadow:0 3px 12px rgba(58,31,71,.025);color:var(--pmcf-ink);font-family:inherit}
.pmcf-option:hover{border-color:#AC8BC5;background:#FEFCFF}
.pmcf-option.pmcf-selected{background:#F6ECFA;border-color:#9775B7;box-shadow:0 0 0 1px #9775B7}
.pmcf-option-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;min-height:20px}
.pmcf-mark{color:#BA9ECF;font-size:21px;line-height:1}
.pmcf-swatch{width:23px;height:23px;display:block;border-radius:50%;border:1px solid #0002}
.pmcf-check{color:#9A7BAC;font-size:20px;font-weight:700}
.pmcf-selected .pmcf-check{color:#795A97}
.pmcf-option-name{font-size:16px;font-weight:750;line-height:1.3;color:#322A3A}
.pmcf-option-desc{font-size:12px;line-height:1.55;color:#6D6474;margin-top:6px}
.pmcf-nav{display:flex;justify-content:space-between;gap:13px;margin-top:28px}.pmcf-nav>.pmcf-main{min-width:175px}
.pmcf-results{padding:clamp(20px,4vw,42px)}
.pmcf-results-head{text-align:center;margin:12px auto 27px}.pmcf-results-head p{color:var(--pmcf-muted);margin:10px auto 0}
.pmcf-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.pmcf-result{background:#FFF;border:1px solid #E7DCE9;border-radius:16px;overflow:hidden;box-shadow:0 7px 25px #4D2E500C;display:flex;flex-direction:column}
.pmcf-result-image{aspect-ratio:4/3;background:#F2EBF4;overflow:hidden}.pmcf-result-image img{width:100%;height:100%;object-fit:contain;display:block}.pmcf-placeholder{display:flex;justify-content:center;align-items:center;height:100%;font-size:72px;color:#fff}
.pmcf-result-body{padding:20px;display:flex;flex-direction:column;flex:1;gap:12px}
.pmcf-result-tag{font-size:10px;letter-spacing:.075em;color:#865F9D;font-weight:800}
.pmcf-result-body>p{font-size:13px;line-height:1.6;color:#706674}.pmcf-result-body>.pmcf-intent{font-size:14px;font-weight:700;color:#5E5065}
.pmcf-why{background:#F7F1F8;padding:14px;border-radius:11px}.pmcf-why strong{font-size:13px}.pmcf-why ul{list-style:none!important;padding:0!important;margin:10px 0 0!important}.pmcf-why li{font-size:12px;line-height:1.55;margin:6px 0!important;color:#625769}
.pmcf-shoplinks{display:grid;gap:8px;margin-top:auto}.pmcf-shoplink{display:flex;justify-content:center;text-align:center;align-items:center;border:1px solid #D6C7DE;border-radius:9px;padding:10px 7px;color:#75538F!important;font-size:12px;font-weight:700;text-decoration:none!important;line-height:1.3}
.pmcf-shop-primary{background:#795A97;border-color:#795A97;color:white!important}.pmcf-shoplink:hover{background:#EFE4F3;color:#563E69!important}.pmcf-shop-primary:hover{background:#674781;color:#fff!important}
.pmcf-finish{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:28px auto}.pmcf-disclaimer{font-size:12px!important;line-height:1.6;text-align:center;color:#776D7A!important}
@media(max-width:720px){.pmcf-results-grid{grid-template-columns:1fr}.pmcf-result{display:grid;grid-template-columns:135px minmax(0,1fr)}.pmcf-result-image{aspect-ratio:auto;min-height:100%;}.pmcf-result-body{padding:15px}.pmcf-result-body h3{font-size:23px}.pmcf-hero{padding-top:38px}}
@media(max-width:525px){.pmcf-app{border-radius:14px;margin:18px auto}.pmcf-options{gap:9px}.pmcf-option{padding:14px 12px;min-height:145px}.pmcf-option-name{font-size:14px}.pmcf-option-desc{font-size:12px}.pmcf-nav .pmcf-btn{font-size:13px!important;padding:11px 13px}.pmcf-results{padding:14px}.pmcf-result{grid-template-columns:1fr}.pmcf-result-image{height:200px}.pmcf-result-body{padding:17px}.pmcf-hero-sub{font-size:17px!important}.pmcf-stats{gap:9px;font-size:11px}.pmcf-stats span:not(:last-child){padding-right:9px}}
@media(prefers-reduced-motion:reduce){.pmcf-app *{scroll-behavior:auto!important;transition:none!important}}
