/* Portfolio specification selector. Override these variables in the theme as needed. */
.pf-work-specs {
    --pf-spec-ink: #5d5d5d;
    --pf-spec-accent: #7d7932;
    --pf-spec-border: #ded8c9;
    --pf-spec-selected: #f7f5ea;
    position: relative;
    color: var(--pf-spec-ink);
    background: #fff;
    padding: 40px 0 0 0;
}
.pf-work-specs__inner { }
.pf-work-specs__eyebrow { margin: 0 0 8px; color: var(--pf-spec-accent); font-size: 12px; letter-spacing: .18em; }
.pf-work-specs__title { margin: 0 0 12px; font-size: 20px; font-weight: 500; }
.pf-work-specs__intro { margin: 0 0 24px; line-height: 1.8; }
.pf-work-specs__options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding: 0; margin: 0; border: 0; }
.pf-work-specs__option { position: relative; display: flex; cursor: pointer; min-width: 0; }
.pf-work-specs__option:only-of-type { grid-column: 1 / -1; }
.pf-work-specs__radio { position: absolute; top: 23px; right: 20px; width: 18px; height: 18px; margin: 0; accent-color: var(--pf-spec-accent); z-index: 1; }
.pf-work-specs__card { display: flex; flex-direction: column; width: 100%; border: 1px solid var(--pf-spec-border); border-radius: 8px; padding: 20px 24px 24px; transition: background .2s, border-color .2s; }
.pf-work-specs__option:hover .pf-work-specs__card { border-color: var(--pf-spec-accent); }
.pf-work-specs__radio:checked + .pf-work-specs__card { border-color: var(--pf-spec-accent); background: var(--pf-spec-selected); box-shadow: inset 0 0 0 1px var(--pf-spec-accent); }
.pf-work-specs__radio:focus-visible + .pf-work-specs__card { outline: 3px solid var(--pf-spec-accent); outline-offset: 3px; }
.pf-work-specs__number { font-size: 12px; margin-bottom: 24px; padding-right: 26px; }
.pf-work-specs__label { font-size: 12px; margin-bottom: 6px; }
.pf-work-specs__size { font-size: 18px; line-height: 1.6; overflow-wrap: anywhere; }
.pf-work-specs__material { align-self: flex-start; padding: 4px 10px; background: #f2f0e9; border-radius: 4px; font-size: 13px; margin: 12px 0 24px; }
.pf-work-specs__price { color: var(--pf-spec-accent); font-size: 23px; line-height: 1.5; }
.pf-work-specs__shipping { font-size: 12px; margin-top: 4px; }
.pf-work-specs__note { margin: 20px 0 24px; font-size: 13px; line-height: 1.8; }
.pf-work-specs__actions { text-align: right; }
.pf-work-specs__submit { display: inline-flex; align-items: center; justify-content: center; gap: 24px; padding: 14px 28px; border: 1px solid var(--pf-spec-accent); border-radius: 4px; background: var(--pf-spec-accent); color: #fff; font: inherit; cursor: pointer; min-height: 48px; }
.pf-work-specs__submit:hover { filter: brightness(.9); }
.pf-work-specs__submit:focus-visible { outline: 3px solid var(--pf-spec-accent); outline-offset: 4px; }
@media (max-width: 600px) {
    .pf-work-specs__options { grid-template-columns: 1fr; }
    .pf-work-specs__submit { width: 100%; }
    .pf-work-specs__card { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) { .pf-work-specs__card { transition: none; } }
