/* Component styles that theme.json cannot express. Colours always come from presets. */

.eyebrow{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--wp--preset--color--muted)}
.is-inverse .eyebrow,.is-inverse .has-muted-color{color:var(--wp--preset--color--inverse-muted)!important}
.lead{font-size:var(--wp--preset--font-size--large);color:var(--wp--preset--color--muted);max-width:60ch}

/* Header */
.hcp-header{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--wp--preset--color--line)}
.admin-bar .hcp-header{top:32px}
@media (max-width:782px){.admin-bar .hcp-header{top:0;position:relative}}
.hcp-header .wp-block-navigation-item__content{padding:.5rem .9rem;border-radius:999px}
.hcp-header .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content{background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base)}
.hcp-strip{font-size:.82rem}
.hcp-logo-placeholder{width:36px;height:36px;border:1.5px dashed currentColor;border-radius:4px;display:inline-grid;place-items:center;font:700 .55rem var(--wp--preset--font-family--display);letter-spacing:.06em}

/* Buttons */
.wp-block-button.is-style-outline > .wp-block-button__link{background:transparent;color:var(--wp--preset--color--contrast);border:1.5px solid var(--wp--preset--color--contrast)}
.wp-block-button.is-style-outline > .wp-block-button__link:hover{background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base)}
.hcp-btn-sm .wp-block-button__link{padding:.45rem .9rem;font-size:.85rem}

/* Service columns with a black top rule */
.hcp-services{border-top:2px solid var(--wp--preset--color--contrast)}
@media (min-width:782px){.hcp-services > .wp-block-column + .wp-block-column{border-left:1px solid var(--wp--preset--color--line);padding-left:var(--wp--preset--spacing--40)}}

/* Section rule above lists */
.hcp-rule{border-bottom:2px solid var(--wp--preset--color--contrast);padding-bottom:.6rem}

/* Cards */
.hcp-card{border:1px solid var(--wp--preset--color--line);border-radius:6px}
.hcp-meta{font-size:.82rem;color:var(--wp--preset--color--muted);font-variant-numeric:tabular-nums}
.hcp-dl{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;font-size:.92rem;margin:0}
.hcp-dl dt{color:var(--wp--preset--color--muted)}
.hcp-dl dd{margin:0;font-variant-numeric:tabular-nums}

/* Video thumbnails: 16:9 with a play mark */
.hcp-video-thumb{position:relative}
.hcp-video-thumb img{aspect-ratio:16/9;object-fit:cover;width:100%;border-radius:6px}
.hcp-video-thumb::after{content:"";position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:var(--wp--preset--color--accent);
  -webkit-mask:radial-gradient(circle,#000 70%,transparent 71%);mask:radial-gradient(circle,#000 70%,transparent 71%);pointer-events:none}
.hcp-video-thumb::before{content:"";position:absolute;left:50%;top:50%;z-index:1;margin:-9px 0 0 -5px;border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent var(--wp--preset--color--base);pointer-events:none}

/* Placeholder image blocks (remove once real images are in place) */
.hcp-placeholder{background:repeating-linear-gradient(135deg,var(--wp--preset--color--line) 0 1px,transparent 1px 14px),var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--line);border-radius:6px;display:grid;place-items:center;color:var(--wp--preset--color--muted);font-size:.88rem}

/* Notices */
.hcp-notice{border-left:3px solid var(--wp--preset--color--contrast);padding:.25rem 0 .25rem .9rem;color:var(--wp--preset--color--muted);font-size:.92rem}

/* DocCheck button slot on the gate */
.hcp-login-slot{border:1.5px dashed var(--wp--preset--color--accent);background:var(--wp--preset--color--accent-soft);border-radius:6px}

/* Gate layout: stack on phones */
@media (max-width:781px){.hcp-gate > .wp-block-column{flex-basis:100%!important}}

/* Forms from common form plugins inherit the look */
.hcp-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),.hcp-form select,.hcp-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--wp--preset--color--line);border-radius:4px;padding:.6rem .75rem;font:inherit;background:var(--wp--preset--color--base);color:var(--wp--preset--color--contrast)}
.hcp-form input:focus,.hcp-form select:focus,.hcp-form textarea:focus{outline:2px solid var(--wp--preset--color--accent);border-color:var(--wp--preset--color--accent)}
.hcp-form [type=submit],.hcp-form button{background:var(--wp--preset--color--accent);color:var(--wp--preset--color--base);border:0;border-radius:999px;padding:.75rem 1.4rem;font-weight:600;cursor:pointer}
.hcp-form [type=submit]:hover,.hcp-form button:hover{background:var(--wp--preset--color--accent-hover)}

/* Placeholder ratios */
.hcp-ratio-4-3{aspect-ratio:4/3}
.hcp-ratio-5-4{aspect-ratio:5/4}
.hcp-ratio-1-1{aspect-ratio:1/1}
.hcp-placeholder{width:100%;max-width:100%}
