/*
Theme Name: MVZ-Arzt
Theme URI: https://mvz-arzt.de
Author: MVZ-Arzt
Author URI: https://mvz-arzt.de
Description: Cinematic editorial theme for MVZ-Arzt — aufsuchende Heim-Zahnmedizin in Berlin und Brandenburg. Ships with 16 custom Elementor widgets matching the original v3.5 cinematic mockup (Questrial + Overpass typography, premium-depth-card materials, brand green #61CE70). Build pages by dragging the MVZ-Arzt widget category onto an Elementor canvas.
Version: 1.5.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mvz-arzt
Tags: custom-colors, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, elementor

This theme intentionally has minimal default styles. All visual design is
delivered through the MVZ-Arzt Elementor widgets registered in functions.php.
Build pages with Elementor: drag widgets from the "MVZ-Arzt" category.
*/

/* Reset baseline so Elementor widgets control all visuals */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Overpass', system-ui, -apple-system, sans-serif;
  color: #2C2C2C;
  background: #FFFFFF;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }

/* WP accessibility */
.screen-reader-text {
  border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%);
  height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0,0,0,0.6);
  clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #21759b;
  display: block; font-size: 0.875rem; font-weight: 700; height: auto; left: 5px; line-height: normal;
  padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000;
}

/* Alignments WP expects */
.alignleft { float: left; margin-right: 1.5em; }
.alignright { float: right; margin-left: 1.5em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignwide, .alignfull { width: 100%; }

/* WP admin bar offset */
body.admin-bar .topbar { top: 32px; }
@media screen and (max-width: 782px) { body.admin-bar .topbar { top: 46px; } }
