/* D BLOK / ProductEntry 1.0 — product access, separate from LeadForm.
   Consumes the existing shared theme and design-system tokens. */
.ds-product-entry{
  display:grid;gap:var(--ds-space-action-stack,24px);width:100%;max-width:480px;
  margin:0;padding:32px;border:var(--ds-rule);background:var(--surface-page,#fff);
  color:var(--ink-primary);font-synthesis:none;box-sizing:border-box;
}
.ds-product-entry--inline{max-width:none;padding:24px 0;border:0;border-top:var(--ds-rule)}
.ds-product-entry__heading{display:grid;gap:16px}
.ds-product-entry__heading h2{margin:0;font:400 36px/1.15 var(--font-display,'Cormorant Garamond',Georgia,serif);letter-spacing:-.02em}
.ds-product-entry__heading p{margin:0;color:var(--ink-muted);font:500 var(--ds-type-body-small,16px)/1.5 var(--font-ui,'Alegreya Sans',Arial,sans-serif)}
.ds-product-entry__fields{display:grid;gap:24px}
.ds-product-entry__field{display:grid;gap:8px;margin:0;font:500 17px/1.35 var(--font-ui,'Alegreya Sans',Arial,sans-serif)}
.ds-product-entry__field input{box-sizing:border-box;width:100%;min-width:0;min-height:52px;border:1px solid var(--line-neutral);border-radius:0;padding:12px 16px;background:var(--surface-page,#fff);color:var(--ink-primary);font:500 18px/1.4 var(--font-ui,'Alegreya Sans',Arial,sans-serif);font-synthesis:none}
.ds-product-entry__field input::placeholder{color:var(--ink-muted);opacity:1}
.ds-product-entry__field input:hover:not(:disabled){border-color:var(--ds-action-edge)}
.ds-product-entry__field input[aria-invalid=true]{border-color:var(--error,#a32636);outline:1px solid var(--error,#a32636);outline-offset:0}
.ds-product-entry__field input:disabled{background:#f3f3f0;color:var(--ink-muted);cursor:wait}
.ds-product-entry__field-error{font:500 var(--ds-type-meta,14px)/1.5 var(--font-ui,'Alegreya Sans',Arial,sans-serif);color:var(--error,#a32636)}
.ds-product-entry__feedback{margin:0;padding:16px;border-left:3px solid var(--error,#a32636);color:var(--error,#a32636);font:500 var(--ds-type-body-small,16px)/1.5 var(--font-ui,'Alegreya Sans',Arial,sans-serif);overflow-wrap:anywhere}
.ds-product-entry[data-state=link-sent] .ds-product-entry__feedback{border-color:var(--ds-action-edge);color:var(--ink-primary)}
.ds-product-entry__submit{width:100%;min-height:52px;border:1px solid var(--ds-action-edge);border-radius:0;background:var(--ds-action-surface);color:var(--ds-action-ink);padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font:500 var(--ds-type-action,16px)/1.2 var(--font-ui,'Alegreya Sans',Arial,sans-serif);font-synthesis:none;transition:background-color .15s,border-color .15s}
.ds-product-entry__submit:hover:not(:disabled){background:var(--ds-action-hover);border-color:var(--ds-action-edge-hover)}
.ds-product-entry__submit:active:not(:disabled){border-color:var(--ds-action-edge-hover)}
.ds-product-entry__submit:disabled{background:#eaeae5;border-color:var(--line-neutral);color:var(--ink-muted);cursor:not-allowed}
.ds-product-entry[aria-busy=true] .ds-product-entry__submit:disabled{cursor:wait}
.ds-product-entry__note{margin:0;color:var(--ink-muted);font:500 var(--ds-type-meta,14px)/1.5 var(--font-ui,'Alegreya Sans',Arial,sans-serif)}
.ds-product-entry input:focus-visible,.ds-product-entry button:focus-visible,.ds-product-entry__feedback:focus-visible{outline:3px solid var(--ds-action-edge);outline-offset:3px}
@media(max-width:480px){.ds-product-entry{padding:24px;gap:24px;max-width:none}.ds-product-entry--inline{padding:24px 0}.ds-product-entry__heading h2{font-size:32px;line-height:1.15}}
@media(max-width:340px){.ds-product-entry{padding:16px}.ds-product-entry--inline{padding:24px 0}.ds-product-entry__submit{padding-inline:16px}.ds-product-entry__heading h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.ds-product-entry__submit{transition:none}}
