/* Brightwater Core block styles. Uses theme presets when present, sensible fallbacks otherwise. */
.bw-card{position:relative;background:var(--wp--preset--color--base,#fff);border:1px solid var(--wp--preset--color--line,#d4e3e0);border-radius:var(--wp--custom--radius--card,20px);overflow:hidden;transition:border-color .2s ease}
.bw-card:hover,.bw-card:focus-within{border-color:var(--wp--preset--color--accent,#13756c)}
.bw-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0 0}
.bw-chip{display:inline-block;font-size:.8125rem;font-weight:700;padding:.3em .75em;border-radius:999px;background:var(--wp--preset--color--surface,#eef5f3);color:var(--wp--preset--color--ink,#10292e)}
.bw-chip--soft{background:transparent;border:1px solid var(--wp--preset--color--line,#d4e3e0);font-weight:600}
.bw-chip:empty{display:none}

.bw-service-grid,.bw-dentist-grid{display:grid;gap:var(--wp--preset--spacing--40,1.25rem);margin:0;padding:0;list-style:none;grid-template-columns:1fr}
@media (min-width:600px){.bw-service-grid,.bw-dentist-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.bw-service-grid,.bw-dentist-grid{grid-template-columns:repeat(4,1fr)}}
.bw-service-card{display:flex;flex-direction:column}
.bw-service-card__photo{margin:0;aspect-ratio:4/3;overflow:hidden;background:var(--wp--preset--color--surface,#eef5f3)}
.bw-service-card__photo img{width:100%;height:100%;object-fit:cover;display:block}
.bw-service-card__icon{display:inline-grid;place-items:center;width:3.25rem;height:3.25rem;margin:1.5rem 1.5rem 0;border-radius:14px;background:var(--wp--preset--color--surface,#eef5f3);color:var(--wp--preset--color--accent,#13756c)}
.bw-service-card__title{font-size:1.1875rem;line-height:1.25;letter-spacing:-.01em;margin:1.25rem 1.25rem .4rem}
.bw-service-card__title a{color:inherit;text-decoration:none}
.bw-service-card__title a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.bw-service-card__title a:focus-visible{outline:none}
.bw-service-card:focus-within{outline:3px solid var(--wp--preset--color--accent,#13756c);outline-offset:2px}
.bw-service-card__desc{margin:0 1.25rem;color:var(--wp--preset--color--muted,#4f6668);font-size:.9375rem;line-height:1.55}
.bw-service-card .bw-chips{margin:auto 1.25rem 1.25rem;padding-top:1rem}

.bw-dentist-card__photo{margin:0;aspect-ratio:4/5;overflow:hidden;background:var(--wp--preset--color--surface,#eef5f3)}
.bw-dentist-card__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;display:block}
.bw-dentist-card__body{padding:1.1rem 1.25rem 1.35rem}
.bw-dentist-card__name{font-size:1.1875rem;letter-spacing:-.01em;margin:0}
.bw-dentist-card__name a{color:inherit;text-decoration:none}
.bw-dentist-card__name a::after{content:"";position:absolute;inset:0}
.bw-dentist-card__name a:focus-visible{outline:none}
.bw-dentist-card:focus-within{outline:3px solid var(--wp--preset--color--accent,#13756c);outline-offset:2px}
.bw-dentist-card__position{margin:.2rem 0 0;color:var(--wp--preset--color--accent,#13756c);font-weight:700;font-size:.9375rem}
.bw-dentist-card .bw-chips{margin-top:.75rem}

.bw-details{display:grid;gap:0;margin:1.5rem 0;border:1px solid var(--wp--preset--color--line,#d4e3e0);border-radius:var(--wp--custom--radius--card,20px);overflow:hidden}
.bw-details__row{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1.25rem;background:var(--wp--preset--color--base,#fff)}
.bw-details__row+.bw-details__row{border-top:1px solid var(--wp--preset--color--line,#dce7ee)}
.bw-details dt{color:var(--wp--preset--color--muted,#4e6274)}
.bw-details dd{margin:0;font-weight:700;text-align:right}

.bw-form__grid{display:grid;gap:1.25rem}
@media (min-width:600px){.bw-form__grid{grid-template-columns:1fr 1fr}.bw-form__field--wide,.bw-form__actions{grid-column:1/-1}}
.bw-form__field{display:flex;flex-direction:column;gap:.4rem;margin:0;min-width:0}
.bw-form__field label{font-size:.875rem;font-weight:600}
.bw-form__req{color:var(--wp--preset--color--accent,#1f6f7e)}
.bw-form input,.bw-form select,.bw-form textarea{box-sizing:border-box;font:inherit;width:100%;padding:.8rem 1rem;border:1px solid var(--wp--preset--color--line,#c9d8e2);border-radius:12px;background:var(--wp--preset--color--base,#fff);color:inherit}
.bw-form input:focus-visible,.bw-form select:focus-visible,.bw-form textarea:focus-visible{outline:3px solid var(--wp--preset--color--accent,#7cc2b4);outline-offset:1px;border-color:var(--wp--preset--color--accent,#1f6f7e)}
.bw-form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin:0}
.bw-form__submit{cursor:pointer;border:0}
.bw-form__hint{font-size:.8125rem;color:var(--wp--preset--color--muted,#4e6274)}
.bw-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.bw-form__notice{padding:1rem 1.25rem;border-radius:12px;margin:0 0 1.5rem}
.bw-form__notice--ok{background:var(--wp--preset--color--surface,#eef5f3)}
.bw-form__notice--error{background:#fdecec;color:#8a1c1c}
.bw-editor-empty{padding:1rem;border:1px dashed currentColor;opacity:.7}
