
/* DermPrep Idea 9.31 — unified Pimp Me visual system */
:root{
 --pm931-forest:#0B4A3F;--pm931-dark:#083A32;--pm931-coral:#F07A62;--pm931-cream:#F7F1E7;
 --pm931-paper:#FFFDF8;--pm931-text:#173F38;--pm931-muted:#64736F;--pm931-gold:#B99A5E;
 --pm931-line:#DED6CA;--pm931-line-soft:rgba(23,63,56,.13);--pm931-shell:1120px;
 --pm931-r-sm:10px;--pm931-r-card:18px;--pm931-r-pill:999px;
 --pm931-shadow-sm:0 8px 24px rgba(15,57,49,.05);--pm931-shadow-card:0 16px 40px rgba(15,57,49,.07);
 --pm931-focus:0 0 0 3px rgba(240,122,98,.35);
}
html{background:var(--pm931-dark)}
body.pm931-page{margin:0;background:var(--pm931-paper);color:var(--pm931-text);font-family:"DM Sans",Arial,sans-serif;min-height:100svh;display:flex;flex-direction:column}
body.pm931-page *{box-sizing:border-box}
body.pm931-page main{width:100%;background:var(--pm931-paper);flex:0 0 auto}
body.pm931-page .qp-shell,body.pm931-page .pm-shell{width:min(var(--pm931-shell),calc(100% - 64px));margin-inline:auto}
body.pm931-page .dp-report-link{display:none!important}
body.pm931-page a:focus-visible,body.pm931-page button:focus-visible,body.pm931-page select:focus-visible,body.pm931-page input:focus-visible{outline:0;box-shadow:var(--pm931-focus)}

/* Breadcrumb: quiet and attached to hero */
body.pm931-page .qp-breadcrumb,body.pm931-page .pm-breadcrumb{padding-top:24px!important;padding-bottom:0!important;font-size:.77rem!important;color:var(--pm931-muted)!important}
body.pm931-page .qp-breadcrumb a,body.pm931-page .pm-breadcrumb a{color:var(--pm931-muted)!important;text-decoration:none!important}
body.pm931-page .qp-breadcrumb a:hover,body.pm931-page .pm-breadcrumb a:hover{color:var(--pm931-coral)!important}

/* Canonical landing hero grid */
body.pm931-page .qp-entry{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(330px,.78fr)!important;gap:clamp(36px,5vw,58px)!important;align-items:start!important;padding:44px 0 58px!important;min-height:0!important}
body.pm931-page .qp-intro{padding-top:10px!important;max-width:680px!important}
body.pm931-page .qp-kicker{margin:0 0 12px!important;color:var(--pm931-coral)!important;font-size:.71rem!important;font-weight:900!important;letter-spacing:.145em!important;text-transform:uppercase!important}
body.pm931-page .qp-intro h1{max-width:680px!important;margin:0 0 18px!important;font:600 clamp(3.25rem,5.2vw,5.25rem)/.94 "Playfair Display",Georgia,serif!important;letter-spacing:-.052em!important;color:var(--pm931-text)!important;text-wrap:balance}
body.pm931-page .qp-intro h1 em{color:var(--pm931-coral)!important;font-weight:500!important}
body.pm931-page .qp-lead{max-width:650px!important;margin:0!important;color:var(--pm931-muted)!important;font-size:1rem!important;line-height:1.68!important}
body.pm931-page .qp-facts{display:flex!important;flex-wrap:wrap!important;gap:0!important;margin:24px 0 0!important;padding:0!important;list-style:none!important}
body.pm931-page .qp-facts li{display:flex!important;align-items:baseline!important;gap:5px!important;padding:0 18px!important;border-left:1px solid var(--pm931-line)!important;background:none!important;border-radius:0!important;box-shadow:none!important;min-height:0!important}
body.pm931-page .qp-facts li:first-child{padding-left:0!important;border-left:0!important}
body.pm931-page .qp-facts strong{font-size:.86rem!important;color:var(--pm931-text)!important;font-weight:900!important}
body.pm931-page .qp-facts span{font-size:.78rem!important;color:var(--pm931-muted)!important}
body.pm931-page .cw-boundary{margin:18px 0 0!important;padding:0!important;border:0!important;background:none!important;color:var(--pm931-muted)!important;font-size:.79rem!important;line-height:1.55!important;max-width:610px!important}

/* Canonical setup/how-it-works card */
body.pm931-page .qp-setup{align-self:start!important;background:#fff!important;border:1px solid var(--pm931-line)!important;border-radius:var(--pm931-r-card)!important;padding:26px!important;box-shadow:var(--pm931-shadow-card)!important;min-height:0!important;height:auto!important}
body.pm931-page .qp-card-label{color:var(--pm931-gold)!important;font-size:.67rem!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body.pm931-page .qp-setup h2{margin:8px 0 18px!important;font:600 clamp(1.65rem,2.4vw,2.15rem)/1.08 "Playfair Display",Georgia,serif!important;letter-spacing:-.03em!important;color:var(--pm931-text)!important}
body.pm931-page .qp-setup label{display:block!important;margin:13px 0 6px!important;color:var(--pm931-text)!important;font-size:.78rem!important;font-weight:800!important}
body.pm931-page .qp-setup select,body.pm931-page .qp-setup input[type=text],body.pm931-page .qp-setup input[type=search]{width:100%!important;min-height:44px!important;border:1px solid var(--pm931-line)!important;border-radius:10px!important;background:#fff!important;color:var(--pm931-text)!important;padding:9px 12px!important;font:500 .87rem/1.3 "DM Sans",Arial,sans-serif!important}
body.pm931-page .qp-setup .qp-primary{width:100%!important;margin-top:18px!important}
body.pm931-page .qp-selection-note{margin:12px 0 0!important;color:var(--pm931-muted)!important;font-size:.76rem!important;line-height:1.5!important}

/* Buttons */
body.pm931-page .qp-primary,body.pm931-page .pm-button{min-height:44px!important;border-radius:var(--pm931-r-pill)!important;border:1px solid var(--pm931-coral)!important;background:var(--pm931-coral)!important;color:#17322d!important;font-weight:900!important;padding:10px 18px!important;text-decoration:none!important;transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important}
body.pm931-page .qp-primary:hover,body.pm931-page .pm-button:hover{background:#f58a74!important;transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(240,122,98,.16)!important}
body.pm931-page .qp-secondary,body.pm931-page .pm-button.secondary{min-height:44px!important;border-radius:var(--pm931-r-pill)!important;border:1px solid rgba(23,63,56,.34)!important;background:transparent!important;color:var(--pm931-text)!important;font-weight:800!important}
body.pm931-page .qp-text-button{color:var(--pm931-text)!important;text-underline-offset:3px!important}

/* Shared session cards */
body.pm931-page .qp-session,body.pm931-page .qp-results{margin-bottom:42px!important}
body.pm931-page .qp-question-card,body.pm931-page .qp-results{border:1px solid var(--pm931-line)!important;border-radius:var(--pm931-r-card)!important;box-shadow:var(--pm931-shadow-sm)!important;background:#fff!important}

/* Homepage */
body.pm931-page .pm-hero{grid-template-columns:minmax(0,1.08fr) minmax(330px,.78fr)!important;gap:52px!important;padding:44px 0 58px!important}
body.pm931-page .pm-hero h1{font-size:clamp(3.65rem,6vw,5.7rem)!important;line-height:.92!important;margin:10px 0 16px!important}
body.pm931-page .pm-lead{font-size:1.02rem!important;line-height:1.68!important;max-width:650px!important}
body.pm931-page .pm-hero-panel{min-height:250px!important;border-radius:var(--pm931-r-card)!important;padding:26px!important;box-shadow:var(--pm931-shadow-card)!important}
body.pm931-page .pm-band{padding:58px 0!important}
body.pm931-page .pm-section-head{margin-bottom:24px!important}
body.pm931-page .pm-section-head h2,body.pm931-page .pm-intent h2,body.pm931-page .pm-focus h2{font-size:clamp(2rem,3.6vw,3.15rem)!important;line-height:1.02!important;text-wrap:balance}
body.pm931-page .pm-grid{gap:16px!important}
body.pm931-page .pm-card{border-radius:16px!important;padding:22px!important;min-height:235px!important;box-shadow:var(--pm931-shadow-sm)!important;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important}
body.pm931-page .pm-card:hover{transform:translateY(-2px)!important;box-shadow:var(--pm931-shadow-card)!important;border-color:rgba(240,122,98,.42)!important}
body.pm931-page .pm-card-top:empty{display:none!important}
body.pm931-page .pm-status,body.pm931-page .pm-icon{display:none!important}
body.pm931-page .pm-skill{color:var(--pm931-gold)!important;font-size:.65rem!important;letter-spacing:.13em!important}
body.pm931-page .pm-intent{padding:46px 0!important}
body.pm931-page .pm-intent-grid{gap:10px!important}
body.pm931-page .pm-intent-link{border-radius:12px!important;padding:15px 16px!important}
body.pm931-page .pm-focus{padding:48px 0!important}
body.pm931-page .pm-trust{padding:32px 0!important}

/* Keep Practicing: quieter than hero */
body.pm931-page .pm930-continuation{padding:40px 0 38px!important;background:var(--pm931-paper)!important;border-bottom:1px solid var(--pm931-line)!important}
body.pm931-page .pm930-continuation-head{display:block!important;margin-bottom:18px!important}
body.pm931-page .pm930-continuation-copy{margin-top:8px!important;max-width:650px!important;font-size:.82rem!important}
body.pm931-page .pm930-continuation h2{font-size:clamp(1.7rem,2.8vw,2.35rem)!important}
body.pm931-page .pm930-skill-row{gap:0!important;margin-top:8px!important}
body.pm931-page .pm930-skill-row span{border:0!important;background:none!important;padding:0!important;border-radius:0!important;color:var(--pm931-coral)!important;font-size:.66rem!important;letter-spacing:.11em!important;font-weight:900!important}
body.pm931-page .pm930-skill-row span+span:before{content:" · ";color:var(--pm931-gold);padding:0 7px}
body.pm931-page .pm930-grid{gap:12px!important}
body.pm931-page .pm930-card{min-height:145px!important;padding:18px!important;border-radius:14px!important;box-shadow:none!important;background:#fff!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}
body.pm931-page .pm930-card:hover{transform:translateY(-2px)!important;border-color:rgba(240,122,98,.42)!important;box-shadow:var(--pm931-shadow-sm)!important}
body.pm931-page .pm930-card p{font-size:.8rem!important;line-height:1.48!important}

/* Education notice */
body.pm931-page .pm930-education{padding:30px 0!important;background:var(--pm931-dark)!important}
body.pm931-page .pm930-education p{font-size:.82rem!important;line-height:1.55!important;max-width:900px!important}

/* Browse Practice */
body.pm931-page .cat-hero{padding:42px 0 34px!important}
body.pm931-page .cat-hero h1{font-size:clamp(3.25rem,5.2vw,5.25rem)!important;margin:8px 0 14px!important;line-height:.94!important;text-wrap:balance}
body.pm931-page .cat-hero form{max-width:820px!important;margin-top:26px!important}
body.pm931-page .cat-toolbar{padding-top:28px!important;border-top:0!important}
body.pm931-page .cat-layout{grid-template-columns:220px minmax(0,1fr)!important;gap:28px!important;padding:22px 0 58px!important}
body.pm931-page .cat-filters{border-radius:14px!important;padding:18px!important;box-shadow:none!important}
body.pm931-page .cat-filters label{font-size:.82rem!important;padding:6px 0!important}
body.pm931-page .cat-grid{gap:14px!important}
body.pm931-page .cat-card{border-radius:14px!important;padding:18px!important;min-height:185px!important;box-shadow:none!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}
body.pm931-page .cat-card:hover{transform:translateY(-2px)!important;border-color:rgba(240,122,98,.42)!important;box-shadow:var(--pm931-shadow-sm)!important}
body.pm931-page .cat-card-icon{display:none!important}
body.pm931-page .cat-card h3{margin-top:0!important}
body.pm931-page .cat-band{padding:44px 0!important;margin-top:0!important}
body.pm931-page .cat-empty{border:1px dashed var(--pm931-line)!important;border-radius:14px!important;padding:28px!important;background:rgba(247,241,231,.45)!important}

/* One canonical Pimp Me footer */
.dp-global-footer{background:var(--pm931-dark);color:var(--pm931-cream);padding:34px 0 22px;margin:0;width:100%;flex:0 0 auto}
.dp-global-footer .dp-footer-inner{width:min(var(--pm931-shell),calc(100% - 64px));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:34px;align-items:start}
.dp-global-footer .dp-footer-logo{display:block;width:148px;height:auto;margin:0 0 10px;filter:none}
.dp-global-footer .dp-footer-desc{margin:0;max-width:540px;color:#dce7e3;font-size:.82rem;line-height:1.55}
.dp-global-footer .dp-footer-nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px 18px;padding-top:4px}
.dp-global-footer a,.dp-global-footer a:visited{color:var(--pm931-cream)!important;text-decoration-color:rgba(247,241,231,.4);text-underline-offset:3px}
.dp-global-footer a:hover,.dp-global-footer a:focus-visible{color:var(--pm931-coral)!important;text-decoration-color:var(--pm931-coral)!important}
.dp-global-footer .dp-footer-nav a{text-decoration:none;font-size:.78rem;font-weight:800}
.dp-global-footer .dp-footer-bottom{width:min(var(--pm931-shell),calc(100% - 64px));margin:24px auto 0;padding-top:16px;border-top:1px solid rgba(247,241,231,.17);display:flex;justify-content:space-between;gap:24px;align-items:flex-start;color:#cddbd6;font-size:.72rem;line-height:1.55}
.dp-global-footer .dp-footer-legal{max-width:760px}
.dp-global-footer .dp-footer-email{white-space:nowrap;font-weight:700}

/* No post-footer cream/white strip */
body.pm931-page>.dp-global-footer:last-of-type{margin-top:0!important}
body.pm931-page>script:last-child{display:none}

/* Source anchor offset */
body.pm931-page #sources{scroll-margin-top:96px}

/* Responsive */
@media (max-width:900px){
 body.pm931-page .qp-entry,body.pm931-page .pm-hero{grid-template-columns:1fr!important;gap:30px!important;padding:36px 0 46px!important}
 body.pm931-page .qp-intro{max-width:760px!important}
 body.pm931-page .qp-setup{max-width:760px!important;width:100%!important}
 body.pm931-page .cat-layout{grid-template-columns:1fr!important}
 body.pm931-page .cat-filters{position:static!important}
 .dp-global-footer .dp-footer-inner{grid-template-columns:1fr!important}
 .dp-global-footer .dp-footer-nav{justify-content:flex-start!important}
}
@media (max-width:640px){
 body.pm931-page .qp-shell,body.pm931-page .pm-shell,.dp-global-footer .dp-footer-inner,.dp-global-footer .dp-footer-bottom{width:min(100% - 32px,var(--pm931-shell))!important}
 body.pm931-page .qp-breadcrumb,body.pm931-page .pm-breadcrumb{padding-top:18px!important}
 body.pm931-page .qp-entry,body.pm931-page .pm-hero{padding:28px 0 38px!important;gap:24px!important}
 body.pm931-page .qp-intro h1{font-size:clamp(2.65rem,13vw,4rem)!important}
 body.pm931-page .pm-hero h1{font-size:clamp(3rem,15vw,4.4rem)!important}
 body.pm931-page .qp-facts{row-gap:8px!important}
 body.pm931-page .qp-facts li{padding:0 10px!important}
 body.pm931-page .qp-setup{padding:20px!important;border-radius:14px!important}
 body.pm931-page .pm930-continuation{padding:34px 0!important}
 body.pm931-page .pm930-grid{grid-template-columns:1fr!important}
 body.pm931-page .cat-search-row{grid-template-columns:1fr!important}
 .dp-global-footer{padding:28px 0 20px!important}
 .dp-global-footer .dp-footer-nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px 18px!important}
 .dp-global-footer .dp-footer-bottom{flex-direction:column!important;gap:8px!important;margin-top:20px!important}
 .dp-global-footer .dp-footer-email{white-space:normal!important}
}
@media (prefers-reduced-motion:reduce){body.pm931-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
