/* Rationelle Arztpraxis – theme-level styles on top of the plugin design system (rap.css). */

.wp-site-blocks{min-height:100dvh;display:flex;flex-direction:column}
.wp-site-blocks>.site-view{flex:1}
.wp-site-blocks>.app{flex:1}
:where(.wp-site-blocks) :focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.skip-link.screen-reader-text:focus{background:var(--surface);color:var(--ink);border-radius:8px;box-shadow:var(--shadow-2)}

/* front page: content below the home pattern (optional) */
.front-page .wp-block-post-content.pub-wrap:empty,.home .wp-block-post-content.pub-wrap:empty{display:none}

/* block styles */
.is-style-rap-lead{font-size:1.08rem;color:var(--ink);max-width:62ch}
p.is-style-rap-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--red-ink)}
p.is-style-rap-eyebrow::before{content:"";width:8px;height:8px;background:var(--red)}
.wp-block-group.is-style-rap-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(18px,3vw,28px);display:grid;gap:12px}
.wp-block-group.is-style-rap-callout{display:grid;gap:8px;padding:16px 18px 16px 20px;border-radius:var(--r-md);background:var(--info-tint);border-left:3px solid var(--info);color:var(--ink)}
.wp-block-group.is-style-rap-callout>*{margin:0}
.wp-block-details.is-style-rap-faq{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}
.wp-block-details.is-style-rap-faq summary{padding:18px 20px;cursor:pointer;font-family:var(--font-display);font-size:1.2rem}
.wp-block-details.is-style-rap-faq>:not(summary){padding:0 20px 14px;margin:0}

/* core buttons in content → design-system buttons */
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:10px}
.wp-block-button__link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;background:var(--red);color:var(--on-red);font-weight:600;font-size:.9rem;text-decoration:none;transition:background .2s,transform .2s var(--ease)}
.wp-block-button__link:hover{background:var(--red-deep);color:var(--on-red)}
.wp-block-button.is-style-rap-ghost .wp-block-button__link,.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}

/* archive & search (core query loop) */
.rap-query .news{display:grid;gap:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.rap-query .news>li{margin:0}
.rap-query .news-item{display:grid;gap:4px;padding:18px 0;border-bottom:1px solid var(--line)}
.rap-query .news-item .wp-block-post-date{font-size:.78rem;color:var(--ink-3)}
.rap-query .news-item .wp-block-post-title{font-family:var(--font-display);font-weight:450;font-size:1.25rem;line-height:1.25}
.rap-query .news-item .wp-block-post-title a:hover{color:var(--red-ink)}
.rap-query .wp-block-post-excerpt__excerpt{color:var(--ink-2);font-size:.9rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rap-query .wp-block-post-excerpt__more-text{display:none}
.rap-pagination{display:flex;gap:12px;align-items:center;margin-top:24px;font-size:.9rem}
.rap-pagination .page-numbers{padding:6px 10px;border-radius:8px}
.rap-pagination .page-numbers.current{background:var(--red);color:var(--on-red)}
.pub-head .wp-block-query-title{margin:0}
.pub-head .eyebrow{margin:0}

/* single article on the public site */
.article-wrap{padding-top:clamp(20px,3vw,36px)}
.article-wrap .pub-cta{margin-top:clamp(40px,6vw,72px)}

/* editor canvas */
.editor-styles-wrapper{background:var(--paper);color:var(--ink);font-family:var(--font-ui)}
.editor-styles-wrapper .wp-block-post-content{max-width:none}
