/*
Theme Name: Yakobs Child
Theme URI: https://yakobs-fugenbetrieb.de/
Description: Child-Theme fuer die Yakobs-Testkopie. Liefert Designtokens, globale Bausteine, barrierefreie Navigation und die Kontaktbedienung. Inhalte bleiben in echten Elementor-Feldern bearbeitbar.
Author: Yakobs Remake, Rolle A
Template: ruffer
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: yakobs-child
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/*
Diese Datei enthaelt absichtlich keine Gestaltungsregeln.
WordPress liest hier nur den Theme-Kopf.
Die eigentlichen Stile liegen in assets/css und werden in inc/assets.php
in dieser Reihenfolge geladen:

  1. Elternstil ruffer/style.css
  2. tokens.css       Designtokens als CSS-Variablen, erzeugt aus A/design-tokens.json
  3. base.css         Grundschrift, Ueberschriften, Fokus, Hilfsklassen
  4. layout.css       Raster, Abschnittsbreiten, Elementor-Container-Anpassung
  5. components.css   Knoepfe, Karten, Schritte, Fragenliste, Formular, Medien
  6. patterns.css     Inhaltsmuster: Kontaktkacheln, Linklisten, Bildpaare, Rechtstexte
  7. chrome.css       Kopf, Navigation, Fuss, Kontaktknopf, Preloader-Abbau

tokens.css nicht von Hand aendern. Neu erzeugen mit:
  node A/scripts/build-tokens-css.mjs
*/

/* Social-Ergaenzung 2026-10-10. Redaktion: Elementor Startseite/Footer, Menue in inc/nav.php. */
/* Sociallinks im bestehenden mobilen Kontaktbereich. Nach den Theme-Stilen laden. */
body.yk .yk-nav__social {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid var(--yl-line, #e7e2dc);
  list-style: none;
}

body.yk .yk-nav__social > li {
  margin: 0;
  padding: 0;
  min-width: 0;
}

body.yk .yk-nav__social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 54px;
  padding: 12px 10px;
  border: 1px solid var(--yl-line, #e7e2dc);
  border-radius: 8px;
  background: var(--yl-white, #fff);
  color: var(--yl-ink, #1b1b26);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}

body.yk .yk-nav__social-icon {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  background: currentColor;
  -webkit-mask: var(--yk-social-icon) center / contain no-repeat;
  mask: var(--yk-social-icon) center / contain no-repeat;
}

body.yk .yk-nav__social-link--instagram {
  --yk-social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='1' fill='black' stroke='none'/%3E%3C/svg%3E");
}

body.yk .yk-nav__social-link--tiktok {
  --yk-social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 3h3c.2 2.3 1.4 3.7 4 4v3a8 8 0 0 1-4-1.3V16a5.5 5.5 0 1 1-5.5-5.5v3a2.5 2.5 0 1 0 2.5 2.5V3Z'/%3E%3C/svg%3E");
}


body.yk .yk-nav__social-link:focus-visible {
  outline: 2px solid var(--yl-brand, #6d202b);
  outline-offset: 3px;
}

@media (hover: hover) {
  body.yk .yk-nav__social-link:hover {
    border-color: var(--yl-brand, #6d202b);
    color: var(--yl-brand, #6d202b);
    background: var(--yl-smoke, #f7f5f1);
  }
}

@media (max-width: 359px) {
  body.yk .yk-nav__social {
    grid-template-columns: 1fr;
  }
}

/* Revision 2: native compact profile header; only a real connected feed renders posts. */
body.yk .yk-instagram.e-con {
  --yk-instagram-ink: #310001;
  --yk-instagram-paper: #f6f3ed;
  display: block;
  width: 100%;
  max-width: none;
  padding: clamp(28px, 3.4vw, 46px) var(--yl-gutter, 20px);
  background: var(--yk-instagram-paper);
  scroll-margin-top: 112px;
}
body.yk .yk-instagram .yk-instagram__inner {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  max-width: var(--yl-container, 1290px);
  min-width: 0;
  margin-inline: auto;
  padding: 0;
}
body.yk .yk-instagram .yk-instagram__header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 20px 32px;
  width: 100%;
  padding: 0;
}
body.yk .yk-instagram .yk-instagram__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 1 auto;
  gap: 8px;
  width: auto;
  min-width: 0;
  padding: 0;
}
body.yk .yk-instagram .elementor-widget { margin: 0; min-width: 0; }
body.yk .yk-instagram .yk-instagram__title .elementor-heading-title {
  margin: 0;
  color: var(--yk-instagram-ink);
  font-family: var(--yl-font-title, 'Manrope', sans-serif);
  font-size: clamp(25px, 2.5vw, 32px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.02em;
}
body.yk .yk-instagram .yk-instagram__text p {
  margin: 0;
  color: #514a46;
  font-family: var(--yl-font-body, 'Roboto', sans-serif);
  font-size: 16px;
  line-height: 1.65;
}
body.yk .yk-instagram .yk-instagram__cta { flex: 0 0 auto; width: auto; }
body.yk .yk-instagram .yk-instagram__cta a.elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 13px 20px;
  border: 1px solid var(--yk-instagram-ink);
  border-radius: 4px;
  background: #fff;
  color: var(--yk-instagram-ink);
  font-family: var(--yl-font-body, 'Roboto', sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}
body.yk .yk-instagram .yk-instagram__cta a.elementor-button:hover {
  background: var(--yk-instagram-ink);
  color: #fff;
}
/* No icon or inherited theme arrow in this profile button. */
body.yk .yk-instagram .yk-instagram__cta .elementor-button-icon,
body.yk .yk-instagram .yk-instagram__cta a.elementor-button::before,
body.yk .yk-instagram .yk-instagram__cta a.elementor-button::after,
body.yk .yk-instagram .yk-instagram__cta .elementor-button-content-wrapper::before,
body.yk .yk-instagram .yk-instagram__cta .elementor-button-content-wrapper::after,
body.yk .yk-instagram .yk-instagram__cta .elementor-button-text::before,
body.yk .yk-instagram .yk-instagram__cta .elementor-button-text::after {
  display: none;
  content: none;
}
body.yk .yk-instagram a:focus-visible { outline: 2px solid var(--yk-instagram-ink); outline-offset: 4px; }
body.yk .yk-instagram .yk-instagram__feed { width: 100%; margin-top: 24px; }
body.yk .yk-instagram .yk-instagram__feed--pending { display: none; }
@media (max-width: 767px) {
  body.yk .yk-instagram.e-con { padding-block: 28px; scroll-margin-top: 88px; }
  body.yk .yk-instagram .yk-instagram__header { flex-direction: column; align-items: flex-start; gap: 18px; }
  body.yk .yk-instagram .yk-instagram__copy { width: 100%; }
  body.yk .yk-instagram .yk-instagram__text p { font-size: 15px; }
}

/* Native Footer: labelled profile links; WhatsApp retains its round button. */
body.yk .yl-social p { flex-wrap: wrap; }
body.yk .yl-social a.yl-social--instagram,body.yk .yl-social a.yl-social--tiktok { display:inline-flex; width:auto; gap:8px; padding:0 14px; border-radius:24px; color:#fff; font-size:14px; font-weight:600; text-decoration:none; }
body.yk .yl-social a.yl-social--instagram::before { -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='1' fill='black' stroke='none'/%3E%3C/svg%3E"); mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='1' fill='black' stroke='none'/%3E%3C/svg%3E"); }
body.yk .yl-social a:focus-visible {outline:2px solid #fff;outline-offset:4px;}
