/*
Theme Name: SILBERWEISS 2025
Theme URI:
Author: SILBERWEISS
Author URI:
Description: A modern default Block Theme from 2025
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: silberweiss-2025
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/* ===== Basic / Reset (Frontend) ===== */
html {
  scroll-behavior: smooth;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  overflow-x: clip;

  scrollbar-gutter: stable;
  scrollbar-color: var(--wp--preset--color--contrast) var(--wp--preset--color--base);
  scrollbar-width: .5rem;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

@media (prefers-reduced-motion: no-preference) {
  html { interpolate-size: allow-keywords; }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  max-width: 100%;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Media defaults */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

/* Forms */
input, button, textarea, select {
  font: inherit;
}

/* Typography */
p, a, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
  hyphens: auto;
  hyphenate-limit-chars: 15 6 4;
}

p { text-wrap: pretty; }
h3, h4, h5, h6 { text-wrap: balance; }

/* Links */
a {
  transition: all 0.3s ease;
}

/* Gutenberg issue workaround */
.more-link {
  display: block;
}

/* ===== Gold Line Animation ===== */
.gold-line-animate{
  position: relative;

  --gold: #C9A24A;
  --line: 5px;

  --top-start: 30%;
  --top-end: 100%;
  --right-max: 80%;

  --draw-top: 0;
  --draw-right: 0;

  padding-top: clamp(12px, 2vw, 20px);
  padding-right: clamp(12px, 2vw, 20px);
}

.gold-line-animate::before{
  content: "";
  position: absolute;
  top: 0;
  left: var(--top-start);
  width: calc(var(--top-end) - var(--top-start));
  height: var(--line);
  background: var(--gold);

  transform: scaleX(var(--draw-top, 0));
  transform-origin: left center;

  pointer-events: none;
  z-index: 5;
}

.gold-line-animate::after{
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: var(--line);
  height: var(--right-max);
  background: var(--gold);

  transform: scaleY(var(--draw-right, 0));
  transform-origin: center top;

  pointer-events: none;
  z-index: 5;
}

/* NUR für Scroll-Elemente: horizontal ausblenden => 100% senkrecht */
.gold-line-animate.gold-line-scroll::before{
  display: none;
}

.gold-line-animate.gold-line-scroll{
  --right-max: 100%;
}

/* ===== Responsive ===== */
@media screen and (max-width: 1380px) {
  .hero-content {
    margin-bottom: 0% !important;
  }

  /* (dein vorher verschachtelter Block war ungültig – so ist es korrekt) */
  :root :where(.wp-block-button .wp-block-button__link) {
    padding: 0.75em 1.5em !important;
  }

  .animated-text {
    display: none !important;
  }
}

.animated-text div {
  max-width: fit-content !important;
}

/* letztes Item: Wert nicht festlegen (zurück auf default/stylesheet) */
:root :where(.wp-block-accordion-item):last-child {
  border-bottom: solid 2px var(--wp--preset--color--accent-1);
}

.wp-block-accordion-heading button:hover span {
  text-decoration: none !important;
  font-weight: 600 !important;
}

html, body {
  overflow-x: clip !important;
}

.ff-message-success {
  border: solid 1px var(--wp--preset--color--accent-1) !important;
  margin-bottom: 8rem !important;
}