.dpcf{
  --dpcf-green:#173f35;
  --dpcf-gold:#bd9141;
  --dpcf-cream:#fbf8ef;
  --dpcf-ink:#2e3d37;
  --dpcf-line:rgba(189,145,65,.36);
  width:100%;
  max-width:860px;
  margin:2rem auto;
  color:var(--dpcf-ink);
  font-family:Georgia,"Times New Roman",serif;
}
.dpcf *{box-sizing:border-box}
.dpcf section{
  border:1px solid var(--dpcf-line);
  border-radius:22px;
  padding:clamp(24px,5vw,48px);
  background:linear-gradient(145deg,var(--dpcf-cream),#fff);
}
.dpcf [hidden]{display:none!important}
.dpcf-intro{text-align:center;padding-block:clamp(48px,8vw,78px)!important}
.dpcf-kicker{
  margin-bottom:12px;color:var(--dpcf-gold);
  font:600 11px/1.2 Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase
}
.dpcf h2{margin:0 0 12px;color:var(--dpcf-green);font-size:clamp(30px,5vw,46px);font-weight:400;line-height:1.08}
.dpcf-intro p{max-width:560px;margin:0 auto 28px;font-size:17px;line-height:1.55}
.dpcf-primary{
  display:inline-flex;align-items:center;justify-content:center;
  border:0;border-radius:999px;padding:13px 23px;
  background:var(--dpcf-green);color:#fff!important;
  font:600 14px Arial,sans-serif;text-decoration:none!important;cursor:pointer
}
.dpcf-progress{height:4px;margin-bottom:14px;overflow:hidden;border-radius:99px;background:#ebe3d1}
.dpcf-progress span{display:block;width:0;height:100%;background:var(--dpcf-gold);transition:width .3s ease}
.dpcf-step{margin-bottom:13px;color:#89765c;font:600 11px Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}
.dpcf-question{margin:0;color:var(--dpcf-green);font-size:clamp(25px,4vw,34px);font-weight:400}
.dpcf-help{margin:8px 0 22px;color:#66736e;font-size:15px;line-height:1.45}
.dpcf-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.dpcf-answer{
  min-height:88px;padding:17px 16px;text-align:left;
  border:1px solid #ddd3bd;border-radius:15px;background:rgba(255,255,255,.78);
  color:var(--dpcf-green);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease
}
.dpcf-answer:hover{transform:translateY(-2px);border-color:var(--dpcf-gold);background:#fffaf0}
.dpcf-answer strong{display:block;font:500 16px Georgia,"Times New Roman",serif}
.dpcf-answer small{display:block;margin-top:6px;color:#7c807d;font:12px/1.35 Arial,sans-serif}
.dpcf-nav{display:flex;justify-content:space-between;margin-top:22px}
.dpcf-link{border:0;background:none;padding:6px 0;color:#786445;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.dpcf-result-grid{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:30px;align-items:center}
.dpcf-product-image-wrap{
  display:flex;align-items:center;justify-content:center;
  min-height:300px;padding:18px;border-radius:18px;background:linear-gradient(150deg,#f2ecdf,#e4ece6)
}
.dpcf-product-image{display:block;width:100%;height:auto;max-height:330px;object-fit:contain}
.dpcf-match{margin-bottom:8px;color:var(--dpcf-gold);font:600 11px Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.dpcf-result-copy h2{font-size:clamp(28px,4vw,38px)}
.dpcf-product-price{margin:-2px 0 12px;color:var(--dpcf-green);font-size:18px}
.dpcf-product-summary,.dpcf-why{line-height:1.5}
.dpcf-profile-block,.dpcf-character-block,.dpcf-notes-block,.dpcf-alternatives-block{
  margin-top:30px;padding-top:23px;border-top:1px solid #dfd3b9
}
.dpcf-profile-block h3,.dpcf-character-block h3,.dpcf-notes-block h3,.dpcf-alternatives-block h3{
  margin:0 0 16px;color:var(--dpcf-green);font-size:18px;font-weight:400;letter-spacing:.09em;text-transform:uppercase
}
.dpcf-rating-row{display:grid;grid-template-columns:115px 1fr 48px;align-items:center;gap:14px;min-height:42px}
.dpcf-rating-row+.dpcf-rating-row{border-top:1px solid rgba(189,145,65,.15)}
.dpcf-rating-label{color:var(--dpcf-green);font:600 11px Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.dpcf-pods{display:flex;align-items:center;gap:8px}
.dpcf-pod{
  position:relative;display:inline-block;width:29px;aspect-ratio:71/120;
  overflow:visible;transform-origin:50% 86%
}
.dpcf-pod-ghost,.dpcf-pod-fill{
  position:absolute;inset:0;display:block;overflow:hidden
}
.dpcf-pod-ghost{
  opacity:.14;filter:grayscale(.68) sepia(.24) saturate(.55) brightness(1.18)
}
.dpcf-pod-fill{width:0;opacity:1}
.dpcf-pod-ghost img,.dpcf-pod-fill img{
  position:absolute;left:0;top:0;width:29px;height:100%;max-width:none;object-fit:contain;display:block
}
.dpcf-score{color:#84642f;font-size:13px}
.dpcf-compass-wrap{position:relative;width:min(100%,520px);height:330px;margin:auto}
.dpcf-compass{position:absolute;width:260px;height:260px;left:50%;top:50%;transform:translate(-50%,-50%)}
.dpcf-compass line{stroke:#c4a15d;stroke-width:.7}
.dpcf-compass polygon{fill:rgba(166,102,66,.27);stroke:#8d6045;stroke-width:1.5;transition:points .6s ease}
.dpcf-compass circle{fill:var(--dpcf-gold)}
.dpcf-compass-label{
  position:absolute;width:125px;text-align:center;color:var(--dpcf-green);
  font-size:11px;letter-spacing:.08em;text-transform:uppercase
}
.dpcf-compass-label img{
  display:block;width:auto;max-width:100%;height:72px;
  object-fit:contain;margin:7px auto 0
}
.dpcf-compass-label.nw{top:7px;left:8px}
.dpcf-compass-label.ne{top:7px;right:8px}
.dpcf-compass-label.sw{bottom:6px;left:8px}
.dpcf-compass-label.se{bottom:6px;right:8px}
.dpcf-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:12px}
.dpcf-note{text-align:center;padding:13px 8px}
.dpcf-note-art{height:78px;display:grid;place-items:center;margin-bottom:4px}
.dpcf-note-art img{display:block;max-width:100%;max-height:78px;object-fit:contain}
.dpcf-note-mark{height:78px;display:grid;place-items:center;color:#b58a3e;font-size:28px}
.dpcf-note strong{display:block;color:var(--dpcf-green);font-size:14px}
.dpcf-note small{display:block;margin-top:4px;color:#a37935;font:10px Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.dpcf-alternatives{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.dpcf-alt{
  display:grid;grid-template-columns:70px 1fr;gap:12px;align-items:center;
  padding:12px;border:1px solid #e2dacb;border-radius:14px;background:rgba(255,255,255,.65);
  color:inherit!important;text-decoration:none!important
}
.dpcf-alt img{width:70px;height:70px;object-fit:contain;border-radius:8px;background:#f4efe5}
.dpcf-alt strong{display:block;color:var(--dpcf-green);font-size:14px;line-height:1.25}
.dpcf-alt span{display:block;margin-top:4px;color:#7a817e;font-size:12px}
.dpcf-retake{margin-top:26px}
.dpcf-empty{padding:18px;border:1px solid #e2dacb;border-radius:14px}
@media(max-width:650px){
  .dpcf section{padding:22px 18px}
  .dpcf-answers{grid-template-columns:1fr}
  .dpcf-result-grid{grid-template-columns:1fr}
  .dpcf-product-image-wrap{min-height:0;max-width:260px}
  .dpcf-rating-row{grid-template-columns:92px 1fr 40px;gap:8px}
  .dpcf-pod{width:25px}
  .dpcf-pod-ghost img,.dpcf-pod-fill img{width:25px}
  .dpcf-compass-wrap{height:290px}
  .dpcf-compass{width:215px;height:215px}
  .dpcf-compass-label{width:92px;font-size:9px}
  .dpcf-compass-label.nw,.dpcf-compass-label.sw{left:0}
  .dpcf-compass-label.ne,.dpcf-compass-label.se{right:0}
  .dpcf-alternatives{grid-template-columns:1fr}
}

/* v1.0.2 — labels for complete small candidate pools */
.dpcf-alt-label{
  display:block;
  margin-bottom:3px;
  color:var(--dpcf-gold);
  font:600 9px Arial,sans-serif;
  letter-spacing:.10em;
  text-transform:uppercase;
}
