/*
Theme Name: IVANOV.LAW
Theme URI: https://wordpress.ivanov.law
Author: IVANOV.LAW
Author URI: https://wordpress.ivanov.law
Description: Professionelles WordPress-Theme für Anwaltskanzleien und juristische Dienstleistungen – optimiert für Mandantengewinnung, Rechtsgebiete, Anwaltsprofile und moderne Online-Rechtsberatung.
Version: 4.0.0
Tested up to: 6.8
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ivanov-law
Tags: lawyer, law-firm, legal, attorney, business, e-commerce, custom-logo, custom-menu, featured-images, translation-ready, block-styles, wide-blocks
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# CSS Variables (Design Tokens)
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
    ## Posts and pages
	## Post Formats
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
#Custom CSS
	## Wpform Lite Customization
#Pricing
--------------------------------------------------------------*/

/*--------------------------------------------------------------
/*--------------------------------------------------------------
# CSS Variables (Design Tokens) - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/

:root {
    /* ============================================
       PREMIUM FARBPALETTE - Boutique Law Firm
       ============================================ */

    /* === Premium Gold (Hauptakzent) === */
    --color-primary: #c2b697;           /* Premium Gold - Hauptfarbe */
    --color-primary-light: #d4c7a8;     /* Helles Gold - Hover States */
    --color-primary-dark: #a89872;      /* Dunkles Gold - Active States */
    --color-primary-darker: #8f7d5d;    /* Sehr dunkles Gold - Borders */

    /* ALTE WERTE (für Rückwärtskompatibilität) */
    --color-accent: #c2b697;            /* Alias für primary */
    --color-accent-light: #d4c7a8;      /* Alias für primary-light */
    --color-accent-dark: #a89872;       /* Alias für primary-dark */

    /* === Premium Navy & Charcoal (Dunkle Eleganz) === */
    --color-navy: #1a1a2e;              /* Dunkelblau/Navy - Headlines */
    --color-charcoal: #2c2c3e;          /* Anthrazit - Body Text */
    --color-slate: #3a3a4a;             /* Schiefer - Secondary Text */
    --color-midnight: #0f0f1a;          /* Mitternacht - Footer/Dunkel */

    /* === Neutrale Premium-Töne === */
    --color-cream: #f8f6f3;             /* Creme - Backgrounds */
    --color-pearl: #fafaf8;             /* Perlweiß - Alt Backgrounds */
    --color-sand: #e8e6e3;              /* Sand - Borders */
    --color-stone: #d1cfc8;             /* Stein - Dividers */

    /* === Graustufen (für Kompatibilität mit bestehendem Code) === */
    --color-gray-50: #fafaf8;           /* Pearl */
    --color-gray-100: #f8f6f3;          /* Cream */
    --color-gray-200: #e8e6e3;          /* Sand */
    --color-gray-300: #d1cfc8;          /* Stone */
    --color-gray-600: #4b5563;          /* Medium Gray */
    --color-gray-700: #3a3a4a;          /* Slate */
    --color-gray-800: #2c2c3e;          /* Charcoal */
    --color-gray-900: #1a1a2e;          /* Navy */

    /* === Akzentfarben für CTAs (Optional) === */
    --color-burgundy: #8b2635;          /* Burgundy - Emergency CTA */
    --color-burgundy-light: #a13345;    /* Helles Burgundy */


    /* ============================================
       PREMIUM TYPOGRAFIE
       ============================================ */

    /* === Font Families === */
    --font-primary: 'Georgia', serif;                           /* Wird durch Customizer überschrieben */
    --font-secondary: 'Source Sans Pro', sans-serif;            /* Wird durch Customizer überschrieben */
    --font-serif-display: 'Playfair Display', Georgia, serif;   /* Premium Serif für Headlines */
    --font-serif-body: 'Crimson Text', Georgia, serif;          /* Premium Serif für Body */
    --font-sans-modern: 'Inter', 'Source Sans Pro', sans-serif; /* Modern Sans */

    /* === Font Weights === */
    --weight-light: 300;
    --weight-normal: 400;
    --weight-medium: 500;
    --weight-semibold: 600;
    --weight-bold: 700;
    --weight-extrabold: 800;

    /* === Typografie-Skala (Major Third - 1.250) === */
    --text-xs: 0.64rem;      /* 10.24px */
    --text-sm: 0.8rem;       /* 12.8px */
    --text-base: 1rem;       /* 16px - Standard */
    --text-md: 1.125rem;     /* 18px */
    --text-lg: 1.25rem;      /* 20px */
    --text-xl: 1.563rem;     /* 25px */
    --text-2xl: 1.953rem;    /* 31.25px */
    --text-3xl: 2.441rem;    /* 39px */
    --text-4xl: 3.052rem;    /* 48.83px */
    --text-5xl: 3.815rem;    /* 61.04px */
    --text-6xl: 4.768rem;    /* 76.29px */

    /* === Line Heights === */
    --leading-none: 1;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --leading-loose: 1.75;

    /* === Letter Spacing === */
    --tracking-tighter: -0.05em;
    --tracking-tight: -0.025em;
    --tracking-normal: 0;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;


    /* ============================================
       PREMIUM SPACING (8px Grid System)
       ============================================ */

    --space-0: 0;
    --space-1: 0.25rem;   /* 4px */
    --space-2: 0.5rem;    /* 8px */
    --space-3: 0.75rem;   /* 12px */
    --space-4: 1rem;      /* 16px */
    --space-5: 1.25rem;   /* 20px */
    --space-6: 1.5rem;    /* 24px */
    --space-8: 2rem;      /* 32px */
    --space-10: 2.5rem;   /* 40px */
    --space-12: 3rem;     /* 48px */
    --space-16: 4rem;     /* 64px */
    --space-20: 5rem;     /* 80px */
    --space-24: 6rem;     /* 96px */
    --space-32: 8rem;     /* 128px */
    --space-40: 10rem;    /* 160px */
    --space-48: 12rem;    /* 192px */

    /* ALTE WERTE (für Rückwärtskompatibilität) */
    --spacing-xs: 0.5rem;   /* 8px - alias für space-2 */
    --spacing-sm: 1rem;     /* 16px - alias für space-4 */
    --spacing-md: 1.5rem;   /* 24px - alias für space-6 */
    --spacing-lg: 2rem;     /* 32px - alias für space-8 */
    --spacing-xl: 3rem;     /* 48px - alias für space-12 */
    --spacing-2xl: 4rem;    /* 64px - alias für space-16 */


    /* ============================================
       PREMIUM SCHATTEN (Tiefe & Eleganz)
       ============================================ */

    /* === Standard-Schatten === */
    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.04);
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.03);
    --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.04);
    --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 12px 24px rgba(0, 0, 0, 0.12), 0 6px 12px rgba(0, 0, 0, 0.06);
    --shadow-2xl: 0 20px 40px rgba(0, 0, 0, 0.15), 0 10px 20px rgba(0, 0, 0, 0.08);
    --shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.06);

    /* === Premium Gold Schatten === */
    --shadow-gold: 0 4px 16px rgba(194, 182, 151, 0.25);
    --shadow-gold-sm: 0 2px 8px rgba(194, 182, 151, 0.2);
    --shadow-gold-lg: 0 8px 24px rgba(194, 182, 151, 0.35);
    --shadow-gold-xl: 0 12px 32px rgba(194, 182, 151, 0.4);

    /* === Glow Effects === */
    --glow-gold: 0 0 20px rgba(194, 182, 151, 0.3);
    --glow-gold-strong: 0 0 30px rgba(194, 182, 151, 0.5);


    /* ============================================
       BORDER RADIUS (Weiche Eleganz)
       ============================================ */

    --radius-none: 0;
    --radius-sm: 0.125rem;    /* 2px */
    --radius-base: 0.25rem;   /* 4px */
    --radius-md: 0.5rem;      /* 8px */
    --radius-lg: 0.75rem;     /* 12px */
    --radius-xl: 1rem;        /* 16px */
    --radius-2xl: 1.5rem;     /* 24px */
    --radius-3xl: 2rem;       /* 32px */
    --radius-full: 9999px;    /* Vollständig rund */


    /* ============================================
       TRANSITIONS (Smooth & Professional)
       ============================================ */

    /* === Easing Functions === */
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);

    /* === Durations === */
    --duration-instant: 50ms;
    --duration-fast: 150ms;
    --duration-base: 250ms;
    --duration-smooth: 350ms;
    --duration-slow: 500ms;
    --duration-slower: 700ms;

    /* === Combined Transitions === */
    --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-smooth: 350ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 500ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-bounce: 600ms cubic-bezier(0.68, -0.55, 0.265, 1.55);


    /* ============================================
       Z-INDEX SKALA (Hierarchie)
       ============================================ */

    --z-base: 0;
    --z-dropdown: 1000;
    --z-sticky: 1020;
    --z-fixed: 1030;
    --z-modal-backdrop: 1040;
    --z-modal: 1050;
    --z-popover: 1060;
    --z-tooltip: 1070;
    --z-notification: 1080;
    --z-absolute-top: 9999;


    /* ============================================
       BREAKPOINTS (Responsive Design)
       ============================================ */

    --breakpoint-xs: 360px;
    --breakpoint-sm: 480px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 1024px;
    --breakpoint-xl: 1280px;
    --breakpoint-2xl: 1536px;


    /* ============================================
       PREMIUM EXTRAS
       ============================================ */

    /* === Opacity === */
    --opacity-disabled: 0.5;
    --opacity-hover: 0.8;
    --opacity-overlay: 0.6;

    /* === Blur === */
    --blur-sm: 4px;
    --blur-md: 8px;
    --blur-lg: 16px;
    --blur-xl: 24px;

    /* === Container Max Width === */
    --container-sm: 640px;
    --container-md: 768px;
    --container-lg: 1024px;
    --container-xl: 1280px;
    --container-2xl: 1536px;
}

/*--------------------------------------------------------------
# ENDE CSS VARIABLES - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
# Normalize
--------------------------------------------------------------*/
html {
    font-family: sans-serif;
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

a {
    background: transparent;
    color: #aaa;
}

a:hover,
a:active,
a:focus {
    outline: 0;
    background: transparent;
    text-decoration: none;
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: bold;
}

dfn {
    font-style: italic
}

mark,
ins {
    color: #3a3a3a;
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

img {
    border: 0;
    max-width: 100%;
    height: auto;
}

svg:not(:root) {
    overflow: hidden
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}

pre {
    overflow: auto;
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
    font-size: 16px;
    font-size: 1.5rem;
    line-height: 1.5;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

select {
    background: #ffffff;
    border: 1px solid #cccccc;
    max-width: 100%;
    padding: 8px 15px;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal;
    max-width: 100%;
    padding: 7px;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: bold
}

table {
    margin: 0 0 1.5em;
    width: 100%;
    table-layout: fixed;
}

td,
th {
    border: 1px solid #ddd;
    padding: 10px;
}

.row .row {
    margin: 0;
}

html,
body {
    overflow-x: hidden;
}

/*--------------------------------------------------------------
/*--------------------------------------------------------------
# Typography - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/

/* ============================================
   BASE TYPOGRAPHY
   ============================================ */

body {
    font-size: var(--text-base);      /* 16px - aus Variables */
    font-weight: var(--weight-normal);
    color: var(--color-charcoal);     /* Premium Charcoal statt #666 */
    line-height: var(--leading-loose); /* 1.75 statt 24px - mehr Breathing Room */
    font-family: var(--font-secondary); /* Source Sans Pro - wird durch Customizer überschrieben */
    letter-spacing: var(--tracking-normal);

    /* Premium Text Rendering */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-feature-settings: "kern" 1;
}


/* ============================================
   ÜBERSCHRIFTEN
   ============================================ */

h1,
h1 a,
h2,
h2 a,
h3,
h3 a,
h4,
h4 a,
h5,
h5 a,
h6,
h6 a,
.main-navigation a,
.slider-content .banner-title,
.site-title,
.site-title a {
    color: var(--color-navy); /* Premium Navy statt #3a3a3a */
    font-weight: var(--weight-bold);
    line-height: var(--leading-tight); /* 1.25 für Headlines */
    letter-spacing: var(--tracking-tight); /* -0.025em für Eleganz */
    margin-top: 0;
    transition: color var(--transition-base);
}

/* Heading Hover States */
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
    color: var(--color-primary); /* Gold on Hover */
}

/* === H1 - Hero Headlines === */
h1 {
    font-size: clamp(var(--text-3xl), 5vw, var(--text-5xl)); /* Responsive 39px → 61px */
    font-weight: var(--weight-extrabold);
    line-height: var(--leading-none); /* 1 für große Headlines */
    letter-spacing: var(--tracking-tighter); /* -0.05em */
    margin-bottom: var(--space-8);
}

/* === H2 - Section Headlines === */
h2 {
    font-size: clamp(var(--text-2xl), 4vw, var(--text-4xl)); /* Responsive 31px → 49px */
    font-weight: var(--weight-bold);
    line-height: var(--leading-tight);
    margin-bottom: var(--space-6);
}

/* === H3 - Subsection Headlines === */
h3 {
    font-size: clamp(var(--text-xl), 3vw, var(--text-3xl)); /* Responsive 25px → 39px */
    font-weight: var(--weight-semibold);
    font-family: 'Playfair Display', serif; /* Bleibt für H3 */
    margin-bottom: var(--space-5);
}

/* === H4 - Card Headlines === */
h4 {
    font-size: clamp(var(--text-lg), 2.5vw, var(--text-2xl)); /* Responsive 20px → 31px */
    font-weight: var(--weight-semibold);
    margin-bottom: var(--space-4);
}

/* === H5 - Small Headlines === */
h5 {
    font-size: var(--text-xl); /* 25px */
    font-weight: var(--weight-medium);
    margin-bottom: var(--space-3);
}

/* === H6 - Overline Text === */
h6 {
    font-size: var(--text-sm); /* 12.8px */
    font-weight: var(--weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-widest); /* 0.1em - sehr breit für Uppercase */
    color: var(--color-primary); /* Gold für Overlines */
    margin-bottom: var(--space-2);
}


/* ============================================
   PARAGRAPHS & TEXT
   ============================================ */

p {
    margin-bottom: var(--space-6); /* 24px statt 1.5em */
    line-height: var(--leading-loose); /* 1.75 */
    color: var(--color-charcoal);
}

/* Lead Paragraph - Einleitungstext */
.lead,
p.lead,
.entry-content > p:first-of-type {
    font-size: var(--text-md); /* 18px */
    font-weight: var(--weight-normal);
    line-height: var(--leading-relaxed); /* 1.625 */
    color: var(--color-slate);
    margin-bottom: var(--space-8);
    letter-spacing: var(--tracking-wide); /* 0.025em */
}

/* Small Text */
small,
.small-text {
    font-size: var(--text-sm);
    line-height: var(--leading-normal);
}

/* Emphasis */
strong,
b {
    font-weight: var(--weight-bold);
    color: var(--color-navy);
}

em,
i {
    font-style: italic;
}

/* Mark/Highlight */
mark {
    background: linear-gradient(135deg,
        rgba(194, 182, 151, 0.2) 0%,
        rgba(194, 182, 151, 0.3) 100%);
    color: var(--color-navy);
    padding: 0.125em 0.25em;
    border-radius: var(--radius-sm);
}

/* Empty Paragraphs */
p:empty {
    display: none;
}


/* ============================================
   LINKS
   ============================================ */

a {
    color: var(--color-primary); /* Premium Gold */
    text-decoration: none;
    transition: all var(--transition-base);
    position: relative;
}

a:hover {
    color: var(--color-primary-dark);
}

a:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
    border-radius: var(--radius-sm);
}

  /* Premium Content Link Underline Effect */
  .entry-content a:not(.btn):not(.button),
  .page-content a:not(.btn):not(.button),
  .widget a:not(.btn):not(.button) {
      color: var(--color-navy);
      font-weight: var(--weight-medium);
      background-image: linear-gradient(
          to right,
          var(--color-primary) 0%,
          var(--color-primary) 100%
      );
      background-size: 0 2px;
      background-position: 0 100%;
      background-repeat: no-repeat;
      transition: background-size var(--transition-smooth);
  }

  /* Footer Override - WEISS auf dunklem Hintergrund */
  .site-footer .widget a:not(.btn):not(.button),
  .footer-sidebar .widget a:not(.btn):not(.button) {
      color: #ffffff;
      background-image: none;
  }

  .entry-content a:not(.btn):not(.button):hover,
  .page-content a:not(.btn):not(.button):hover,
  .widget a:not(.btn):not(.button):hover {
      background-size: 100% 2px;
      color: var(--color-primary-dark);
  }

  /* Footer Hover - Premium Gold */
  .site-footer .widget a:not(.btn):not(.button):hover,
  .footer-sidebar .widget a:not(.btn):not(.button):hover {
      color: var(--color-primary);
      background-size: 0;
  }


/* ============================================
   LISTEN - PREMIUM STYLING
   ============================================ */

ul,
ol {
    margin: 0 0 var(--space-6) var(--space-8); /* 24px bottom, 32px left */
    padding: 0;
    line-height: var(--leading-relaxed);
}

ul {
    list-style: none; /* Custom Bullets */
}

ul li {
    position: relative;
    padding-left: var(--space-6);
    margin-bottom: var(--space-3);
}

/* Premium Gold Bullets */
ul li::before {
    content: '▸';
    position: absolute;
    left: 0;
    color: var(--color-primary);
    font-weight: var(--weight-bold);
    font-size: var(--text-lg);
    line-height: 1;
    top: 0.125em;
}

ol {
    list-style: decimal;
    list-style-position: outside;
}

ol li {
    padding-left: var(--space-4);
    margin-bottom: var(--space-3);
}

ol li::marker {
    color: var(--color-primary);
    font-weight: var(--weight-bold);
}

/* Nested Lists */
ul ul,
ol ol,
ul ol,
ol ul {
    margin-top: var(--space-2);
    margin-bottom: var(--space-2);
}

/* Definition Lists */
dt {
    font-weight: var(--weight-bold);
    color: var(--color-navy);
    margin-bottom: var(--space-2);
}

dd {
    margin: 0 0 var(--space-4) var(--space-6);
    color: var(--color-slate);
}


/* ============================================
   BLOCKQUOTES - PREMIUM LUXUS
   ============================================ */

blockquote {
    position: relative;
    margin: var(--space-12) 0;
    padding: var(--space-8) var(--space-12);
    background: linear-gradient(
        135deg,
        var(--color-cream) 0%,
        var(--color-pearl) 100%
    );
    border-left: 4px solid var(--color-primary);
    border-radius: var(--radius-lg);
    font-family: var(--font-serif-body, Georgia, serif);
    font-size: var(--text-md);
    font-style: italic;
    line-height: var(--leading-relaxed);
    color: var(--color-slate);
    box-shadow: var(--shadow-md);
    quotes: """ """ "'" "'";
}

/* Giant Opening Quote */
blockquote::before {
    content: '"';
    position: absolute;
    top: var(--space-2);
    left: var(--space-6);
    font-size: var(--text-6xl); /* 76.29px */
    font-family: var(--font-serif-display, Georgia, serif);
    color: var(--color-primary);
    opacity: 0.2;
    line-height: 1;
    font-style: normal;
}

blockquote p {
    margin-bottom: var(--space-4);
    position: relative;
    z-index: 1;
}

blockquote p:last-child {
    margin-bottom: 0;
}

/* Blockquote Citation */
blockquote cite,
blockquote footer {
    display: block;
    margin-top: var(--space-4);
    font-size: var(--text-sm);
    font-style: normal;
    font-weight: var(--weight-semibold);
    color: var(--color-navy);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
}

blockquote cite::before,
blockquote footer::before {
    content: '— ';
    color: var(--color-primary);
}

/* Remove default quote styling */
blockquote:before,
blockquote:after,
q:before,
q:after {
    /* Overridden by custom styling above */
}

blockquote,
q {
    quotes: """ """ "'" "'";
}


/* ============================================
   ADDRESS & CONTACT INFO
   ============================================ */

address {
    margin: 0 0 var(--space-6);
    font-style: normal;
    line-height: var(--leading-relaxed);
    color: var(--color-slate);
}


/* ============================================
   ENTRY META (Post Meta Icons)
   ============================================ */

.entry-meta,
.post-meta {
    font-size: var(--text-sm);
    color: var(--color-slate);
    line-height: var(--leading-normal);
}

.entry-meta i.fa,
.entry-footer i.fa {
    margin-right: var(--space-2);
    font-size: var(--text-sm);
    color: var(--color-primary); /* Gold Icons */
    transition: color var(--transition-base);
}

.entry-meta a:hover i.fa,
.entry-footer a:hover i.fa {
    color: var(--color-primary-dark);
}


/* ============================================
   SELECTION STYLING
   ============================================ */

::selection {
    background: var(--color-primary);
    color: white;
    text-shadow: none;
}

::-moz-selection {
    background: var(--color-primary);
    color: white;
    text-shadow: none;
}


/* ============================================
   RESPONSIVE TYPOGRAPHY
   ============================================ */

@media (max-width: 768px) {
    body {
        font-size: 0.9375rem; /* 15px auf Mobile */
        line-height: var(--leading-relaxed); /* 1.625 */
    }

    h1 {
        margin-bottom: var(--space-6);
    }

    h2 {
        margin-bottom: var(--space-5);
    }

    blockquote {
        padding: var(--space-6) var(--space-8);
        margin: var(--space-8) 0;
    }

    blockquote::before {
        font-size: var(--text-4xl);
        left: var(--space-4);
    }

    ul,
    ol {
        margin-left: var(--space-6);
    }
}


/* ============================================
   PRINT STYLES
   ============================================ */

@media print {
    body {
        color: #000;
        background: #fff;
    }

    a {
        text-decoration: underline;
    }

    blockquote {
        page-break-inside: avoid;
        border-left: 4px solid #000;
        background: transparent;
        box-shadow: none;
    }

    h1, h2, h3, h4, h5, h6 {
        page-break-after: avoid;
        page-break-inside: avoid;
    }
}

/*--------------------------------------------------------------
# ENDE TYPOGRAPHY - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Navigation - PREMIUM LUXUS VERSION (Boutique Law Firm)
--------------------------------------------------------------*/

/* ============================================
   NAVBAR BASE - PREMIUM CONTAINER
   ============================================ */

.navbar {
    background: #ffffff;
    margin: 0;
    border-radius: 0;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.06);
    transition: all var(--transition-smooth);
    position: relative;
}

.navbar.at-navbar .container {
    display: flex;
    flex-direction: column;
    position: relative;
}


/* ============================================
   NAVBAR HEADER - ZENTRIERT (LOGO + TITLE)
   ============================================ */

.navbar-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 30px 0 25px 0;
    border-bottom: 1px solid var(--color-sand);
    position: relative;
}

/* Mobile Toggle Button - Rechts Oben (Desktop versteckt) */
.navbar-header .navbar-toggle {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    display: none; /* Versteckt auf Desktop */
    background-color: var(--color-charcoal);
    color: #ffffff;
    font-size: 22px;
    border-radius: var(--radius-base);
    outline: none;
    transition: all var(--transition-base);
    padding: 2px 10px;
    border: none;
}

.navbar-header .navbar-toggle .icon-bar {
    background-color: #ffffff;
}

.navbar-header .navbar-toggle:hover {
    background-color: var(--color-primary);
}


/* ============================================
   LOGO - PREMIUM ZENTRIERT
   ============================================ */

.custom-logo-link {
    margin-bottom: 12px;
    display: block;
    max-width: 100%;
}

.custom-logo-link img {
    max-height: 75px;
    width: auto;
    display: block;
    margin: 0 auto;
    transition: transform var(--transition-base);
}

.custom-logo-link:hover img {
    transform: scale(1.05);
}


/* ============================================
   SITE TITLE & TAGLINE - PREMIUM
   ============================================ */

.navbar-header .site-title {
    margin: 0;
    padding: 0;
    font-size: 28px;
    font-weight: var(--weight-semibold);
    letter-spacing: 1px;
    line-height: var(--leading-tight);
}

.navbar-header .site-title a {
    color: var(--color-navy) !important;
    text-decoration: none !important;
    transition: color var(--transition-base);
}

.navbar-header .site-title a:hover {
    color: var(--color-primary) !important;
}

/* Tagline */
.navbar-header .site-description {
    margin: 8px 0 0 0;
    padding: 0;
    font-size: 12px;
    font-weight: var(--weight-normal);
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--color-slate);
}


/* ============================================
   SPRACHBUTTONS - RECHTS OBEN (DESKTOP)
   Wichtig: Menu-IDs 2511 und 2512
   ============================================ */

/* Sprachbuttons aus dem normalen Flow nehmen und absolut positionieren */
.main-navigation .navbar-nav #menu-item-2511,
.main-navigation .navbar-nav #menu-item-2512 {
    position: absolute !important;
    top: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.main-navigation .navbar-nav #menu-item-2511 {
    right: 45px !important;
}

.main-navigation .navbar-nav #menu-item-2512 {
    right: 10px !important;
}

/* Sprachbutton Styling - Flag Images */
#menu-item-2511 a,
#menu-item-2512 a,
#menu-item-2511 a:hover,
#menu-item-2511 a:focus,
#menu-item-2511 a:active,
#menu-item-2512 a:hover,
#menu-item-2512 a:focus,
#menu-item-2512 a:active {
    width: 30px !important;
    height: 22px !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    border-radius: 2px !important;
    overflow: hidden !important;
    text-indent: -9999px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    opacity: 0.7 !important;
    transition: all var(--transition-base) !important;
    animation: none !important;
    transform: none !important;
    display: block !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: auto !important;
}

#menu-item-2511 a:hover,
#menu-item-2512 a:hover {
    opacity: 1 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15) !important;
}

/* Flag Images - Deutsch & Bulgarisch */
#menu-item-2511 a,
#menu-item-2511 a:hover,
#menu-item-2511 a:focus,
#menu-item-2511 a:active {
    background-image: url('https://wordpress.ivanov.law/wp-content/uploads/2024/10/Deutsch-e1730621646562.png') !important;
}

#menu-item-2512 a,
#menu-item-2512 a:hover,
#menu-item-2512 a:focus,
#menu-item-2512 a:active {
    background-image: url('https://wordpress.ivanov.law/wp-content/uploads/2024/10/Bulgarisch-e1730621658116.png') !important;
}

/* Sprachbuttons haben keine Hover-Linie */
#menu-item-2511 a::after,
#menu-item-2512 a::after {
    display: none !important;
}


/* ============================================
   NAVIGATION CONTAINER - ZENTRIERT
   ============================================ */

.at-beside-navbar-header {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 18px 0;
    gap: 40px;
}

.main-navigation {
    flex: 0 1 auto;
    z-index: 99;
}

.main-navigation ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.main-navigation .navbar-nav {
    display: flex;
    gap: 40px;
    list-style: none;
    margin: 0;
    padding: 0;
    align-items: center;
}

.main-navigation li {
    display: inline-block;
    position: relative;
}


/* ============================================
   NAVIGATION LINKS - PREMIUM STYLING
   ============================================ */

.main-navigation .navbar-nav > li > a {
    font-size: 14px;
    font-weight: var(--weight-medium);
    letter-spacing: 0.8px;
    color: var(--color-charcoal) !important;
    text-transform: uppercase;
    transition: color var(--transition-base);
    padding: 10px 0;
    position: relative;
    text-decoration: none !important;
    display: block;
}

.main-navigation .navbar-nav > li > a:hover {
    color: var(--color-primary) !important;
}

/* Premium Hover-Linie (Gold Underline) */
.main-navigation .navbar-nav > li > a::after {
    content: '';
    position: absolute;
    bottom: 5px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background: var(--color-primary);
    transition: width var(--transition-base);
}

.main-navigation .navbar-nav > li > a:hover::after {
    width: 80%;
}

/* Focus State (Accessibility) */
.nav > li > a:focus {
    background-color: transparent;
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}


/* ============================================
   DROPDOWN SUBMENÜ - PREMIUM
   ============================================ */

/* Submenu Indicator */
.navbar-nav > li.menu-item-has-children > a::after,
.navbar-nav > li.menu-item-has-children ul > li.menu-item-has-children > a::after {
    content: "\f107";
    font-family: FontAwesome;
    font-size: 14px;
    margin-left: 7px;
}

.navbar-nav > li.menu-item-has-children ul > li.menu-item-has-children > a::after,
.navbar-nav > li.menu-item-has-children > a:hover::after,
.navbar-nav > li.menu-item-has-children > a:focus::after {
    color: inherit;
}

/* Submenu Container - Flexible Breite (Best Practice) */
  .main-navigation ul ul {
      float: left;
      position: absolute;
      left: -999em;
      z-index: 99999;
      background: #fff;
      text-align: left;
      box-shadow: var(--shadow-lg);
      border: 1px solid var(--color-sand);
      border-radius: var(--radius-md);
      overflow: visible;  /* Wichtig für Sub-Sub-Menüs */

      /* Flexible Breite - Best Practice */
      min-width: 240px;      /* Minimum für kurze Namen */
      width: max-content;    /* Passt sich an längsten Eintrag an */
      max-width: 340px;      /* Maximum für sehr lange Namen */
  }

  .main-navigation ul ul ul {
      top: 0;
  }

  .main-navigation ul ul a {
      font-size: 14px;
      padding: 12px 18px;
      width: 100%;           /* Füllt Container aus */
      display: block;
      white-space: nowrap;   /* Einzeilig halten */
      overflow: hidden;           /* Bei extremen Fällen */
      text-overflow: ellipsis;    /* ... für zu lange Namen */
      color: var(--color-charcoal) !important;
      transition: all var(--transition-base);
  }

.main-navigation ul ul a:hover {
    background: var(--color-cream);
    color: var(--color-primary) !important;
    transform: translateX(4px);
}

/* Show Submenu on Hover */
.main-navigation li:hover > a {
    background: transparent;
}

.main-navigation ul li:hover > ul {
    left: auto;
}

.main-navigation ul ul li:hover > ul {
    left: 100%;
}

/* Show Submenu on Focus (Accessibility) */
.main-navigation li:focus-within > a {
    background: transparent;
}

.main-navigation ul li:focus-within > ul {
    left: auto;
}

.main-navigation ul ul li:focus-within > ul {
    left: 100%;
}


/* ============================================
   STICKY NAVIGATION - PREMIUM
   ============================================ */

.at-sticky {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: var(--z-sticky);
    border-bottom: 1px solid var(--color-sand);
    animation: navigationFlipIn 0.5s;
    margin-top: 0 !important;
    background: #fff;
    box-shadow: var(--shadow-lg);
}

@keyframes navigationFlipIn {
    from {
        top: -100px;
        opacity: 0;
    }
    to {
        top: 0;
        opacity: 1;
    }
}

/* Sticky Shrink Effect */
@media (min-width: 1025px) {
    .navbar.at-navbar.lawyer-zone-sticky.shrink .custom-logo-link img {
        max-height: 55px;
        transition: max-height var(--transition-base);
    }

    .navbar.at-navbar.lawyer-zone-sticky.shrink .navbar-header {
        padding: 20px 0 18px 0;
        transition: padding var(--transition-base);
    }
}


/* ============================================
   SEARCH & CART ICONS
   ============================================ */

/* Search Wrap */
.navbar .search-wrap {
    float: right;
    position: relative;
}

.navbar .search-wrap .search-icon {
    cursor: pointer;
    color: var(--color-slate);
    font-size: 21px;
    transition: color var(--transition-base);
}

.navbar .search-wrap .search-icon:hover,
.navbar .search-wrap .search-icon:focus {
    color: var(--color-primary);
}

.navbar .search-wrap .search-icon i {
    line-height: 30px;
    padding-bottom: 15px;
    padding-top: 11px;
}

/* Search Block */
.navbar .search-wrap .search-block {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    width: 300px;
    right: 0;
    top: 50%;
    background-color: #fff;
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-lg);
    padding: 15px;
    margin: 0;
    transition: all var(--transition-smooth);
}

.navbar .search-wrap .search-block.active {
    opacity: 1;
    visibility: visible;
    top: 100%;
    z-index: 99;
}

/* Cart Wrap */
.navbar .cart-wrap {
    float: right;
    position: relative;
}

.navbar .cart-wrap .acme-cart-views {
    font-size: 21px;
    padding: 2px 4px;
}

.navbar .cart-wrap .widget li {
    border: none;
}

.navbar .cart-wrap .acme-cart-views a {
    color: var(--color-slate);
    position: relative;
    padding-right: 25px;
    transition: color var(--transition-base);
}

.navbar .cart-wrap .acme-cart-views a:hover {
    color: var(--color-primary);
}

.navbar .cart-wrap .acme-cart-views a i {
    padding-top: 30px;
    padding-right: 20px;
}

.navbar .cart-wrap .acme-cart-views a span {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    border-radius: 100%;
    font-size: 12px;
    left: 18px;
    padding: 1px 8px;
    position: absolute;
    top: -8px;
    color: #fff;
    width: 25px;
    height: 25px;
    text-align: center;
    line-height: 24px;
}

/* Mini Cart Dropdown */
.cart-wrap .woocommerce-mini-cart__buttons.buttons .button {
    padding: 8px 18px;
    height: auto;
}

.navbar .cart-wrap .widget_shopping_cart {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    right: 0;
    top: 50%;
    min-width: 260px;
    box-shadow: var(--shadow-lg);
    background-color: #fff;
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-lg);
    padding: 15px;
    transition: all var(--transition-smooth);
    z-index: 99;
}

.navbar .cart-wrap:hover .widget_shopping_cart,
.navbar .cart-wrap:focus-within .widget_shopping_cart {
    opacity: 1;
    visibility: visible;
    top: 100%;
    z-index: 99;
}

.navbar .cart-wrap .widget_shopping_cart ul {
    margin: 0;
}

.navbar .cart-wrap .widget_shopping_cart ul li {
    text-align: center;
}


/* ============================================
   POST NAVIGATION (Prev/Next)
   ============================================ */

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
    margin: 28px 0;
    overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
    float: left;
    width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}

.post-navigation a,
.posts-navigation a {
    border: 1px solid var(--color-primary);
    padding: 10px 20px;
    background: #fff;
    color: var(--color-navy);
    display: block;
    border-radius: var(--radius-full);
    transition: all var(--transition-base);
    text-decoration: none;
}

.post-navigation a:hover,
.posts-navigation a:hover {
    background: var(--color-primary);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold);
}


/* ============================================
   RESPONSIVE MOBILE & TABLET
   ============================================ */

/* Responsive Toggle */
.responsive-only {
    display: none;
}

.desktop-only {
    display: block;
}

@media (max-width: 1023px) {
    .responsive-only {
        display: block;
        margin-right: 20px;
    }

    .desktop-only {
        display: none;
    }
}


/* ============================================
   TABLET/MOBILE - PREMIUM RESPONSIVE
   ============================================ */

@media (max-width: 1024px) {

    /* ===== NAVBAR HEADER - MOBILE ===== */
    .navbar-header {
        padding: 20px 0 15px 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        position: relative;
        border-bottom: none;
    }

    /* Logo */
    .custom-logo-link {
        order: 1;
        margin-bottom: 10px;
    }

    .custom-logo-link img {
        max-height: 55px;
    }

    /* Title */
    .navbar-header .site-title {
        order: 2;
        font-size: 20px;
        margin-bottom: 3px;
    }

    /* Tagline mit Linie darunter */
    .navbar-header .site-description {
        order: 3;
        font-size: 10px;
        margin-bottom: 15px;
        padding-bottom: 15px;
        border-bottom: 1px solid var(--color-sand);
        width: 100%;
    }

    /* ===== PREMIUM HAMBURGER BUTTON ===== */
    .navbar-header .navbar-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        order: 4;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%) !important;
        border: none !important;
        border-radius: var(--radius-full) !important;
        padding: 10px 20px !important;
        width: auto !important;
        height: auto !important;
        min-width: 120px !important;
        transition: all var(--transition-base) !important;
        z-index: 1000 !important;
        margin: 15px auto 0 auto !important;
        box-shadow:
            0 3px 10px rgba(194, 182, 151, 0.35),
            0 0 0 0 rgba(194, 182, 151, 0.5) !important;
        animation: gentle-pulse 3s infinite !important;
    }

    @keyframes gentle-pulse {
        0%, 100% {
            box-shadow:
                0 3px 10px rgba(194, 182, 151, 0.35),
                0 0 0 0 rgba(194, 182, 151, 0.5);
        }
        50% {
            box-shadow:
                0 4px 15px rgba(194, 182, 151, 0.5),
                0 0 0 4px rgba(194, 182, 151, 0);
        }
    }

    .navbar-header .navbar-toggle:hover {
        background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%) !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 5px 20px rgba(194, 182, 151, 0.6) !important;
    }

    .navbar-header .navbar-toggle .fa {
        color: #ffffff !important;
        font-size: 18px !important;
        line-height: 1 !important;
    }

    .navbar-header .navbar-toggle:hover .fa {
        color: #ffffff !important;
    }


    /* ===== SPRACHBUTTONS HORIZONTAL IM MOBILE-MENÜ ===== */

    /* Sprachbuttons zurück in den normalen Flow - aber horizontal */
    .main-navigation .navbar-nav #menu-item-2511,
    .main-navigation .navbar-nav #menu-item-2512 {
        position: static !important;
        top: auto !important;
        right: auto !important;
        order: -1 !important; /* An den Anfang */
        display: inline-block !important; /* Horizontal nebeneinander */
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
        border-bottom: none !important;
        flex: 0 0 auto !important;
    }

    /* Navigation - Hauptcontainer */
    .at-beside-navbar-header {
        flex-direction: column;
        gap: 0;
        padding: 0;
        width: 100% !important;
        float: none !important;
    }

    .main-navigation {
        float: none;
        background: #fff;
        box-shadow: 0 0.15em 0.35em 0 rgba(0, 0, 0, 0.133);
    }

    .main-navigation .navbar-nav {
        flex-direction: row !important; /* Horizontal für die erste Zeile */
        flex-wrap: wrap !important; /* Umbruch nach Sprachbuttons */
        gap: 0;
        padding: 0;
        background: #ffffff;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        float: none !important;
    }

    /* Sprachbuttons-Container - Erste Zeile, zentriert */
    .main-navigation .navbar-nav #menu-item-2511,
    .main-navigation .navbar-nav #menu-item-2512 {
        background: var(--color-cream) !important;
        padding: 15px 10px !important;
    }

    /* Wrapper für beide - komplette Breite für die Zeile */
    .main-navigation .navbar-nav #menu-item-2511 {
        border-bottom: 2px solid var(--color-primary) !important;
        padding-right: 5px !important;
    }

    .main-navigation .navbar-nav #menu-item-2512 {
        border-bottom: 2px solid var(--color-primary) !important;
        padding-left: 5px !important;
    }

    /* Nach Sprachbuttons - Umbruch */
    .main-navigation .navbar-nav #menu-item-2512::after {
        content: '';
        flex-basis: 100%;
        width: 100%;
        height: 0;
    }

    /* Flag-Größen Mobile */
    #menu-item-2512 a,
    #menu-item-2511 a {
        width: 40px !important;
        height: 30px !important;
        opacity: 0.8 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
    }

    #menu-item-2511 a:hover,
    #menu-item-2512 a:hover {
        opacity: 1 !important;
        transform: scale(1.1) !important;
    }

    /* ===== NORMALE MENÜPUNKTE - VERTICAL ===== */
    .main-navigation .navbar-nav > li:not(#menu-item-2511):not(#menu-item-2512) {
        width: 100% !important;
        text-align: center;
        border-bottom: 1px solid var(--color-sand);
        order: 1 !important;
        flex: 0 0 100% !important; /* Volle Breite */
        display: block;
        float: none;
    }

    .main-navigation .navbar-nav > li > a {
        display: block;
        padding: 15px 20px !important;
        font-size: 14px;
        text-align: center;
    }

    .main-navigation .navbar-nav > li > a::after {
        display: none;
    }

    /* Submenus Mobile */
    .main-navigation ul ul {
        display: block;
        float: none;
        position: static;
        text-align: left;
        box-shadow: none;
        border: medium none;
        padding-left: 25px;
    }

    .main-navigation ul ul li a {
        display: block;
        width: auto;
    }

    .main-navigation ul ul a:hover,
    .main-navigation ul ul a:focus {
        background: rgba(0, 0, 0, 0);
    }

    /* Container Margins */
    .navbar .container > .navbar-collapse,
    .navbar .container > .navbar-header {
        margin: 0;
    }

    .navbar {
        margin-bottom: 0;
    }

    /* Post Navigation Mobile */
    .comment-navigation .nav-previous,
    .posts-navigation .nav-previous,
    .post-navigation .nav-previous,
    .comment-navigation .nav-next,
    .posts-navigation .nav-next,
    .post-navigation .nav-next {
        width: 100%;
        margin-bottom: 10px;
    }
}


/* ============================================
   TABLET PORTRAIT
   ============================================ */

@media (max-width: 768px) {
    .navbar-header {
        padding: 18px 0 12px 0;
    }

    .custom-logo-link {
        margin-bottom: 8px;
    }

    .custom-logo-link img {
        max-height: 48px;
    }

    .navbar-header .site-title {
        font-size: 18px;
    }

    .navbar-header .site-description {
        font-size: 9px;
        letter-spacing: 1.1px;
        margin-bottom: 12px;
        padding-bottom: 12px;
    }

    .navbar-header .navbar-toggle {
        min-width: 110px !important;
        padding: 9px 18px !important;
    }

    #menu-item-2511 a,
    #menu-item-2512 a {
        width: 36px !important;
        height: 27px !important;
    }
}


/* ============================================
   SMARTPHONE PORTRAIT
   ============================================ */

@media (max-width: 480px) {
    .navbar-header {
        padding: 15px 0 10px 0;
    }

    .custom-logo-link {
        margin-bottom: 6px;
    }

    .custom-logo-link img {
        max-height: 42px;
    }

    .navbar-header .site-title {
        font-size: 16px;
        letter-spacing: 0.5px;
    }

    .navbar-header .site-description {
        font-size: 8px;
        letter-spacing: 0.9px;
        margin-top: 2px;
        margin-bottom: 10px;
        padding-bottom: 10px;
    }

    .navbar-header .navbar-toggle {
        min-width: 100px !important;
        padding: 8px 16px !important;
    }

    .navbar-header .navbar-toggle .fa {
        font-size: 16px !important;
    }

    #menu-item-2511 a,
    #menu-item-2512 a {
        width: 34px !important;
        height: 25px !important;
    }

    /* Mobile Menü Items */
    .main-navigation .navbar-nav > li > a {
        padding: 12px 15px !important;
        font-size: 13px;
    }
}


/* ============================================
   EXTRA KLEINE SMARTPHONES
   ============================================ */

@media (max-width: 360px) {
    .navbar-header {
        padding: 12px 0 8px 0;
    }

    .custom-logo-link img {
        max-height: 38px;
    }

    .navbar-header .site-title {
        font-size: 15px;
    }

    .navbar-header .site-description {
        font-size: 7px;
        letter-spacing: 0.8px;
        padding-bottom: 8px;
    }

    .navbar-header .navbar-toggle {
        min-width: 90px !important;
        padding: 7px 14px !important;
    }

    #menu-item-2511 a,
    #menu-item-2512 a {
        width: 32px !important;
        height: 24px !important;
    }
}


/* ============================================
   TRANSPARENT HEADER (für Header-Overlays)
   ============================================ */

.header-transparent .navbar {
    background: transparent;
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    top: 0;
    z-index: 101;
}

.admin-bar.header-transparent.header-enable-top .navbar {
    top: 80px;
}

.header-transparent.header-enable-top .navbar {
    top: 50px;
}

.admin-bar.header-transparent.header-enable-top .navbar.at-sticky {
    top: 32px;
}

.header-transparent.header-enable-top .navbar.at-sticky {
    top: 0px;
}

@media (min-width: 768px) {
    .admin-bar .at-sticky {
        top: 32px;
    }
}

.header-transparent .main-navigation ul li a,
.header-transparent .site-title a,
.header-transparent .site-title a:after,
.header-transparent .site-description {
    color: #fff;
}

.header-transparent .at-sticky .main-navigation ul li a,
.header-transparent .at-sticky .site-title a,
.header-transparent .at-sticky .site-title a:after,
.header-transparent .at-sticky .site-description {
    color: var(--color-charcoal);
}

.header-transparent .navbar.at-sticky {
    background: #fff;
    position: fixed;
}

.header-transparent .main-navigation ul li ul li a {
    color: var(--color-charcoal);
}

.admin-bar.header-transparent .navbar {
    top: 32px;
}

.at-front-no-feature.header-transparent .navbar {
    position: static;
}

.at-front-no-feature.header-transparent .at-sticky {
    position: fixed;
}

.at-front-no-feature.header-transparent .main-navigation a {
    color: var(--color-charcoal);
}

/* Mobile Transparent Header */
@media only screen and (max-width: 767px) {
    .header-transparent.header-enable-top .navbar {
        top: 80px;
    }

    .admin-bar.header-transparent.header-enable-top .navbar {
        top: 120px;
    }

    .admin-bar.header-transparent .navbar {
        top: 40px;
    }

    .admin-bar .at-sticky {
        top: 0;
    }

    .admin-bar.header-transparent.header-enable-top .navbar.at-sticky,
    .admin-bar.header-transparent .navbar.at-sticky {
        top: 0;
    }

    .header-transparent .navbar.at-sticky .custom-logo-link img {
        width: 110px;
    }

    .header-transparent .navbar.at-sticky .navbar-toggle {
        margin-top: 0;
        margin-bottom: 10px;
    }

    .header-transparent .at-sticky .site-title a,
    .header-transparent .at-sticky .site-description,
    .header-transparent .main-navigation ul li a {
        color: var(--color-charcoal);
    }
}


/* ============================================
   PREMIUM EXTRAS
   ============================================ */

/* Smooth Scrolling */
html {
    scroll-behavior: smooth;
}

/* Text Selection */
::selection {
    background: var(--color-primary);
    color: white;
}

::-moz-selection {
    background: var(--color-primary);
    color: white;
}

/* Font Smoothing */
* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/*--------------------------------------------------------------
# ENDE NAVIGATION - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
}

.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;
    display: block;
    font-size: 14px;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear {
    clear: both;
}

.clearfix:after,
.clearfix:before {
    display: table;
    content: ""
}

.clearfix:after {
    clear: both
}

.clearfix {
    *zoom: 1
}

* {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

/*--------------------------------------------------------------
/*--------------------------------------------------------------
# Widgets - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/

/* ============================================
   WIDGET CONTAINER - PREMIUM CARDS
   ============================================ */

.widget {
    background: white;
    border-radius: var(--radius-xl);
    padding: var(--space-8);
    margin-bottom: var(--space-8);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--color-sand);
    transition: all var(--transition-smooth);
    position: relative;
    overflow: hidden;
}

/* Widget Hover Effect */
.widget:hover {
    box-shadow: var(--shadow-lg);
    border-color: var(--color-primary);
    transform: translateY(-2px);
}

/* Widget Inner Content Spacing */
.widget > *:last-child {
    margin-bottom: 0;
}


/* ============================================
   WIDGET TITLE - PREMIUM STYLING
   ============================================ */

.widget-title,
.widgettitle,
.widget .widget-title {
    font-family: var(--font-serif-display, Georgia, serif);
    font-size: var(--text-xl);
    font-weight: var(--weight-bold);
    color: var(--color-navy);
    margin-top: 0;
    margin-bottom: var(--space-6);
    padding-bottom: var(--space-4);
    border-bottom: 2px solid var(--color-primary);
    position: relative;
    letter-spacing: var(--tracking-tight);
    line-height: var(--leading-tight);
}

/* Premium Gold Accent Line */
.widget-title::after,
.widgettitle::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 60px;
    height: 2px;
    background: var(--color-primary-dark);
    transition: width var(--transition-smooth);
}

.widget:hover .widget-title::after,
.widget:hover .widgettitle::after {
    width: 100px;
}

/* Subtitle Styling */
.at-subtitle {
    text-align: center;
    margin-bottom: var(--space-12);
    font-size: var(--text-md);
    color: var(--color-slate);
    font-style: italic;
}


/* ============================================
   WIDGET LISTS - PREMIUM STYLING
   ============================================ */

.widget ul,
.widget ol {
    list-style: none;
    margin: 0;
    padding: 0;
}

.widget ul li,
.widget ol li {
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-sand);
    transition: all var(--transition-base);
    position: relative;
}

.widget ul li:last-child,
.widget ol li:last-child {
    border-bottom: none;
}

.widget ul li:hover,
.widget ol li:hover {
    padding-left: var(--space-2);
    background: var(--color-cream);
    border-radius: var(--radius-sm);
}

 /* Premium List Links */
  .widget ul li a,
  .widget ol li a {
      color: var(--color-charcoal);
      display: flex;
      align-items: center;
      gap: var(--space-3);
      font-weight: var(--weight-medium);
      transition: all var(--transition-base);
      text-decoration: none;
  }

  /* Footer Override - WEISS */
  .site-footer .widget ul li a,
  .site-footer .widget ol li a,
  .footer-sidebar .widget ul li a,
  .footer-sidebar .widget ol li a {
      color: #ffffff;
  }

  /* Gold Arrow Icon */
  .widget ul li a::before {
      content: '›';
      color: var(--color-primary);
      font-size: var(--text-xl);
      font-weight: var(--weight-bold);
      transition: transform var(--transition-base);
      line-height: 1;
  }

  /* Footer - kein Arrow */
  .site-footer .widget ul li a::before,
  .footer-sidebar .widget ul li a::before {
      display: none;
  }

  .widget ul li a:hover {
      color: var(--color-primary-dark);
  }

  /* Footer Hover - Gold */
  .site-footer .widget ul li a:hover,
  .footer-sidebar .widget ul li a:hover {
      color: var(--color-primary);
  }

  .widget ul li a:hover::before {
      transform: translateX(4px);
  }

/* Post Count / Category Count */
.widget ul li .count,
.widget ul li span.count {
    margin-left: auto;
    font-size: var(--text-xs);
    font-weight: var(--weight-semibold);
    color: white;
    background: var(--color-primary);
    padding: var(--space-1) var(--space-3);
    border-radius: var(--radius-full);
    min-width: 24px;
    text-align: center;
}


/* ============================================
   SEARCH WIDGET - PREMIUM
   ============================================ */

.widget_search {
    position: relative;
    width: 100%;
}

.widget_search .search-form {
    position: relative;
    display: flex;
    gap: var(--space-2);
}

.widget_search .search-field {
    flex: 1;
    width: 100%;
    padding: var(--space-4) var(--space-12) var(--space-4) var(--space-4);
    border: 2px solid var(--color-sand);
    border-radius: var(--radius-full);
    font-size: var(--text-sm);
    color: var(--color-charcoal);
    background: var(--color-pearl);
    transition: all var(--transition-base);
}

.widget_search .search-field:focus {
    outline: none;
    border-color: var(--color-primary);
    background: white;
    box-shadow: 0 0 0 4px rgba(194, 182, 151, 0.1);
}

.widget_search .search-field::placeholder {
    color: var(--color-slate);
    opacity: 0.6;
}

/* Premium Search Submit Button */
.widget_search .search-submit {
    position: absolute;
    right: var(--space-2);
    top: 50%;
    transform: translateY(-50%);
    display: flex !important; /* Override hiding */
    align-items: center;
    justify-content: center;
    padding: var(--space-3) var(--space-5);
    background: var(--color-primary);
    color: white;
    border: none;
    border-radius: var(--radius-full);
    font-size: var(--text-sm);
    font-weight: var(--weight-semibold);
    cursor: pointer;
    transition: all var(--transition-base);
    box-shadow: var(--shadow-gold-sm);
}

.widget_search .search-submit:hover {
    background: var(--color-primary-dark);
    transform: translateY(-50%) scale(1.05);
    box-shadow: var(--shadow-gold);
}

.widget_search .search-submit:active {
    transform: translateY(-50%) scale(0.98);
}


/* ============================================
   CALENDAR WIDGET - PREMIUM
   ============================================ */

.calendar_wrap {
    overflow-x: auto;
}

.calendar_wrap #wp-calendar {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background: var(--color-pearl);
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

/* Calendar Caption (Month/Year) */
.calendar_wrap #wp-calendar caption {
    font-size: var(--text-base);
    font-weight: var(--weight-bold);
    padding: var(--space-4) 0;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    color: white;
    background: var(--color-primary);
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
}

/* Calendar Table */
.calendar_wrap table,
.calendar_wrap th,
.calendar_wrap td,
.calendar_wrap tr {
    border: none;
}

.calendar_wrap #wp-calendar th,
.calendar_wrap #wp-calendar td {
    text-align: center;
    padding: var(--space-3);
    border: 1px solid var(--color-sand);
}

/* Calendar Header (Day Names) */
.calendar_wrap #wp-calendar th {
    background: var(--color-cream);
    color: var(--color-navy);
    font-weight: var(--weight-semibold);
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    line-height: var(--leading-tight);
    padding: var(--space-2);
    text-shadow: none;
}

/* Calendar Cells */
.calendar_wrap #wp-calendar td {
    background: white;
    color: var(--color-charcoal);
    font-size: var(--text-sm);
    transition: all var(--transition-base);
}

.calendar_wrap #wp-calendar td:hover {
    background: var(--color-cream);
    color: var(--color-navy);
}

/* Today Highlighting */
.calendar_wrap #wp-calendar #today {
    background: var(--color-primary) !important;
    color: white !important;
    font-weight: var(--weight-bold);
    border-radius: var(--radius-md);
}

.calendar_wrap #wp-calendar #today a {
    color: white !important;
    font-weight: var(--weight-bold);
}

/* Calendar Links */
.calendar_wrap #wp-calendar a {
    display: block;
    color: var(--color-primary-dark);
    font-weight: var(--weight-semibold);
    text-decoration: none;
    transition: color var(--transition-base);
}

.calendar_wrap #wp-calendar a:hover {
    color: var(--color-primary);
}

/* Navigation Arrows (Prev/Next Month) */
.calendar_wrap #wp-calendar #prev,
.calendar_wrap #wp-calendar #next {
    padding: var(--space-2);
}

.calendar_wrap #wp-calendar #prev a::before {
    content: '‹ ';
    font-weight: var(--weight-bold);
}

.calendar_wrap #wp-calendar #next a::after {
    content: ' ›';
    font-weight: var(--weight-bold);
}


/* ============================================
   RECENT POSTS / COMMENTS WIDGET
   ============================================ */

.widget_recent_entries ul li,
.widget_recent_comments ul li {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.widget_recent_entries .post-date,
.widget_recent_comments .comment-author-link {
    font-size: var(--text-xs);
    color: var(--color-slate);
    display: block;
}

.widget_recent_entries .post-date::before {
    content: '📅 ';
    font-size: var(--text-xs);
}


/* ============================================
   TAG CLOUD WIDGET - PREMIUM
   ============================================ */

.tagcloud,
.widget_tag_cloud .tagcloud {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    margin: 0;
    padding: 0;
}

.tagcloud a,
.widget_tag_cloud a {
    display: inline-block;
    padding: var(--space-2) var(--space-4);
    font-size: var(--text-xs) !important; /* Override inline styles */
    font-weight: var(--weight-medium);
    color: var(--color-charcoal);
    background: var(--color-cream);
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-full);
    text-decoration: none;
    transition: all var(--transition-base);
}

.tagcloud a:hover,
.widget_tag_cloud a:hover {
    background: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold-sm);
}


/* ============================================
   CATEGORIES WIDGET - PREMIUM
   ============================================ */

.widget_categories select,
.widget_archive select {
    width: 100%;
    padding: var(--space-4);
    border: 2px solid var(--color-sand);
    border-radius: var(--radius-lg);
    background: var(--color-pearl);
    color: var(--color-charcoal);
    font-size: var(--text-sm);
    font-weight: var(--weight-medium);
    cursor: pointer;
    transition: all var(--transition-base);
}

.widget_categories select:focus,
.widget_archive select:focus {
    outline: none;
    border-color: var(--color-primary);
    background: white;
    box-shadow: 0 0 0 4px rgba(194, 182, 151, 0.1);
}

.widget_categories select:hover,
.widget_archive select:hover {
    border-color: var(--color-primary);
}


/* ============================================
   RSS WIDGET - PREMIUM
   ============================================ */

.widget_rss ul li {
    padding: var(--space-4) 0;
    gap: var(--space-3);
}

.widget_rss .rss-date,
.widget_rss cite {
    font-size: var(--text-xs);
    color: var(--color-slate);
    display: block;
    margin-top: var(--space-2);
}

.widget_rss .rssSummary {
    margin-top: var(--space-2);
    font-size: var(--text-sm);
    color: var(--color-charcoal);
    line-height: var(--leading-relaxed);
}


/* ============================================
   TEXT WIDGET - PREMIUM
   ============================================ */

.widget_text .textwidget {
    line-height: var(--leading-relaxed);
    color: var(--color-charcoal);
}

.widget_text .textwidget p:last-child {
    margin-bottom: 0;
}


/* ============================================
   FOOTER WIDGETS - SPECIAL STYLING
   ============================================ */

.site-footer .widget {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin-bottom: var(--space-12);
}

.site-footer .widget:hover {
    transform: none;
    box-shadow: none;
}

.site-footer .widget-title,
.site-footer .widgettitle {
    color: white;
    border-bottom-color: rgba(194, 182, 151, 0.3);
    font-size: var(--text-lg);
}

.site-footer .widget-title::after,
.site-footer .widgettitle::after {
    background: var(--color-primary);
}

.site-footer .widget ul li {
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

.site-footer .widget ul li a {
    color: rgba(255, 255, 255, 0.7);
}

.site-footer .widget ul li a:hover {
    color: var(--color-primary-light);
}


/* ============================================
   RESPONSIVE WIDGETS
   ============================================ */

@media (max-width: 768px) {
    .widget {
        padding: var(--space-6);
        margin-bottom: var(--space-6);
    }

    .widget-title,
    .widgettitle {
        font-size: var(--text-lg);
        margin-bottom: var(--space-4);
    }

    .calendar_wrap {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .tagcloud,
    .widget_tag_cloud .tagcloud {
        gap: var(--space-1);
    }
}

/*--------------------------------------------------------------
# ENDE WIDGETS - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Content & Media - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/

/* ============================================
   INNER HERO / PAGE TITLE - PREMIUM
   ============================================ */

.inner-main-title {
    position: relative;
    width: 100%;
    background-size: cover;
    background-position: center;
    background-color: var(--color-navy);
    overflow: hidden;
    margin-bottom: var(--space-16);
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Builder Template - No Margin */
.page-template-template-builder .inner-main-title {
    margin-bottom: 0;
}

/* Dark Overlay for Readability */
.inner-main-title::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        135deg,
        rgba(26, 26, 46, 0.85) 0%,
        rgba(44, 44, 62, 0.75) 100%
    );
    content: '';
    display: block;
    z-index: 1;
    backdrop-filter: blur(2px);
}

/* Title Container */
.inner-main-title .entry-header {
    position: relative;
    width: 100%;
    text-align: center;
    padding: var(--space-12) var(--space-6);
    z-index: 2;
}

/* Page/Post Titles */
.inner-main-title .entry-title,
.inner-main-title .page-title {
    color: white;
    font-weight: var(--weight-extrabold);
    margin: 0;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
    letter-spacing: var(--tracking-tight);
}

.inner-main-title > img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

@media (min-width: 993px) {
    .inner-main-title .entry-title,
    .inner-main-title .page-title {
        font-size: var(--text-5xl); /* 61px */
    }
}

@media (max-width: 992px) {
    .inner-main-title {
        min-height: 200px;
    }

    .inner-main-title .entry-title,
    .inner-main-title .page-title {
        font-size: var(--text-3xl); /* 39px */
    }
}


/* ============================================
   POSTS & PAGES - PREMIUM CARDS
   ============================================ */

article.sticky {
    display: block;
    position: relative;
}

/* Sticky Post Badge */
article.sticky::before {
    content: 'Featured';
    position: absolute;
    top: var(--space-4);
    right: var(--space-4);
    padding: var(--space-2) var(--space-4);
    background: var(--color-primary);
    color: white;
    font-size: var(--text-xs);
    font-weight: var(--weight-bold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    border-radius: var(--radius-full);
    box-shadow: var(--shadow-gold-sm);
    z-index: 10;
}

/* Blog Post Card */
.hentry {
    margin: 0 0 var(--space-12);
    background: white;
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-md);
    transition: all var(--transition-smooth);
    border: 1px solid var(--color-sand);
}

.hentry:hover {
    box-shadow: var(--shadow-xl);
    transform: translateY(-4px);
    border-color: var(--color-primary);
}

.updated:not(.published) {
    display: none;
}

.single .byline,
.group-blog .byline {
    display: inline;
}

/* Entry Content Spacing */
.page-content,
.entry-content,
.entry-summary {
    margin: var(--space-8) 0 0;
    padding: 0 var(--space-8) var(--space-8);
    line-height: var(--leading-relaxed);
}

/* Entry Header in Posts */
.entry-header {
    padding: var(--space-8) var(--space-8) 0;
}

/* Entry Title */
.entry-title {
    margin-top: 0;
    margin-bottom: var(--space-4);
}

.entry-title a {
    color: var(--color-navy);
    transition: color var(--transition-base);
}

.entry-title a:hover {
    color: var(--color-primary);
}

/* Entry Meta (Date, Author, Categories) */
.entry-meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-4);
    align-items: center;
    font-size: var(--text-sm);
    color: var(--color-slate);
    margin-bottom: var(--space-6);
}

.entry-meta > span {
      display: flex;
      align-items: center;
      gap: var(--space-2);
  }

  .entry-meta i {
      color: var(--color-primary);
  }

/* Featured Image / Post Thumbnail */
.post-thumbnail {
    position: relative;
    overflow: hidden;
    border-radius: var(--radius-xl) var(--radius-xl) 0 0;
    margin: 0;
}

.post-thumbnail img {
    width: 100%;
    height: auto;
    display: block;
    transition: all var(--transition-slow);
    filter: brightness(0.95);
}

.hentry:hover .post-thumbnail img {
    transform: scale(1.05);
    filter: brightness(1);
}

/* Read More Link */
.entry-footer {
    padding: 0 var(--space-8) var(--space-8);
}

.more-link,
.read-more {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-3) var(--space-6);
    background: var(--color-cream);
    color: var(--color-navy);
    font-weight: var(--weight-semibold);
    font-size: var(--text-sm);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    border-radius: var(--radius-full);
    border: 2px solid var(--color-sand);
    transition: all var(--transition-base);
}

.more-link::after,
.read-more::after {
    content: '→';
    transition: transform var(--transition-base);
}

.more-link:hover,
.read-more:hover {
    background: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
    gap: var(--space-3);
}

.more-link:hover::after,
.read-more:hover::after {
    transform: translateX(4px);
}

/* Page Links (Pagination within Post) */
.page-links {
    clear: both;
    margin: var(--space-8) 0;
    padding: var(--space-6);
    background: var(--color-cream);
    border-radius: var(--radius-lg);
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    align-items: center;
}

.page-links .page-number {
    padding: var(--space-2) var(--space-4);
    background: white;
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-md);
    transition: all var(--transition-base);
}

.page-links .page-number:hover,
.page-links .page-number.current {
    background: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
}


/* ============================================
   POST FORMATS
   ============================================ */

.blog .format-status .entry-title,
.archive .format-status .entry-title,
.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
    display: none;
}


/* ============================================
   COMMENTS - PREMIUM STYLING
   ============================================ */

.comments-area {
    margin-top: var(--space-16);
    padding-top: var(--space-16);
    border-top: 2px solid var(--color-sand);
}

/* Comments Title */
.comment-reply-title,
.comments-title {
    font-family: var(--font-serif-display);
    font-size: var(--text-2xl);
    font-weight: var(--weight-bold);
    color: var(--color-navy);
    border-bottom: 2px solid var(--color-primary);
    padding-bottom: var(--space-4);
    margin-bottom: var(--space-10);
    position: relative;
}

.comment-reply-title::after,
.comments-title::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 80px;
    height: 2px;
    background: var(--color-primary-dark);
}

.comment-reply-title {
    font-size: var(--text-xl);
}

/* Comment List */
.comment-list {
    margin: 0 0 var(--space-12) 0;
    list-style-type: none;
    padding: 0;
}

.comment-list li.comment {
    list-style-type: none;
    clear: both;
    margin-bottom: var(--space-8);
}

/* Individual Comment Card */
.comment-list li.comment .comment-body {
    background: white;
    border: 1px solid var(--color-sand);
    border-left: 4px solid var(--color-primary);
    border-radius: var(--radius-lg);
    padding: var(--space-8);
    position: relative;
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-base);
}

.comment-list li.comment .comment-body:hover {
    box-shadow: var(--shadow-md);
    border-left-color: var(--color-primary-dark);
}

/* Comment Author Avatar */
.comment-author img {
    float: left;
    margin: 0 var(--space-6) var(--space-4) 0;
    border-radius: var(--radius-full);
    border: 3px solid var(--color-primary);
    box-shadow: var(--shadow-sm);
}

.comment-list .fn {
    font-size: var(--text-base);
    font-style: normal;
    font-weight: var(--weight-bold);
    color: var(--color-navy);
}

.comment-list .comment-metadata {
    font-size: var(--text-xs);
    color: var(--color-slate);
    margin-bottom: var(--space-4);
}

.comment-list .comment-metadata a {
    color: var(--color-slate);
    transition: color var(--transition-base);
}

.comment-list .comment-metadata a:hover {
    color: var(--color-primary);
}

.comment-list .fa.fa-clock-o {
    font-size: var(--text-sm);
    margin-right: var(--space-2);
    color: var(--color-primary);
}

/* Post Author Badge */
.bypostauthor .comment-body {
    background: linear-gradient(135deg, var(--color-cream) 0%, white 100%);
    border-left-color: var(--color-primary);
    border-left-width: 5px;
}

.bypostauthor::after {
    content: 'Author';
    position: absolute;
    top: var(--space-4);
    right: var(--space-4);
    padding: var(--space-1) var(--space-3);
    background: var(--color-primary);
    color: white;
    font-size: var(--text-xs);
    font-weight: var(--weight-bold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    border-radius: var(--radius-full);
}

/* Reply Button */
.reply {
    position: absolute;
    bottom: var(--space-4);
    right: var(--space-4);
}

.reply a {
    padding: var(--space-2) var(--space-5);
    background: var(--color-cream);
    color: var(--color-navy);
    font-size: var(--text-xs);
    font-weight: var(--weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    border-radius: var(--radius-full);
    border: 1px solid var(--color-sand);
    transition: all var(--transition-base);
}

.reply a:hover {
    background: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
}

/* Comment Form - Premium Styling */
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
    width: 100%;
    padding: var(--space-4);
    border: 2px solid var(--color-sand);
    border-radius: var(--radius-lg);
    font-size: var(--text-sm);
    font-family: var(--font-secondary);
    color: var(--color-charcoal);
    background: var(--color-pearl);
    transition: all var(--transition-base);
}

.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form input[type="url"]:focus,
.comment-form textarea:focus {
    outline: none;
    border-color: var(--color-primary);
    background: white;
    box-shadow: 0 0 0 4px rgba(194, 182, 151, 0.1);
}

.comment-form-author,
.comment-form-email {
    float: left;
    width: 48%;
    margin-bottom: var(--space-4);
}

.comment-form-author {
    margin-right: 4%;
}

.comment-form-url,
.comment-form-comment {
    clear: both;
    margin-bottom: var(--space-6);
}

.comment-form textarea {
    min-height: 150px;
    resize: vertical;
}

.comment-form .form-submit input {
    width: auto;
    padding: var(--space-4) var(--space-10);
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    color: white;
    font-size: var(--text-sm);
    font-weight: var(--weight-bold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    border: none;
    border-radius: var(--radius-full);
    cursor: pointer;
    transition: all var(--transition-smooth);
    box-shadow: var(--shadow-gold);
}

.comment-form .form-submit input:hover {
    background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%);
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold-lg);
}

@media screen and (max-width: 679px) {
    .comment-form-author,
    .comment-form-email {
        float: none;
        width: 100%;
        margin-right: 0;
    }
}


/* ============================================
   INFINITE SCROLL
   ============================================ */

.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
    display: none;
}

.infinity-end.neverending .site-footer {
    display: block;
}


/* ============================================
   MEDIA - IMAGES & EMBEDS
   ============================================ */

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
    border: none;
    margin: 0;
    padding: 0;
}

/* Responsive Embeds */
embed,
iframe,
object {
    max-width: 100%;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-md);
}

/* Premium Image Styling */
.entry-content img,
.page-content img,
.comment-content img {
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-smooth);
}

.entry-content img:hover,
.page-content img:hover {
    box-shadow: var(--shadow-lg);
    transform: translateY(-2px);
}

/* Image Alignments */
.alignleft {
    float: left;
    margin-right: var(--space-6);
    margin-bottom: var(--space-4);
}

.alignright {
    float: right;
    margin-left: var(--space-6);
    margin-bottom: var(--space-4);
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: var(--space-6);
}


/* ============================================
   IMAGE CAPTIONS - PREMIUM
   ============================================ */

.wp-caption {
    margin-bottom: var(--space-8);
    max-width: 100%;
    background: var(--color-cream);
    padding: var(--space-4);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
}

.wp-caption img[class*="wp-image-"] {
    display: block;
    margin: 0 auto;
    border-radius: var(--radius-md);
}

.wp-caption-text {
    text-align: center;
    font-size: var(--text-sm);
    color: var(--color-slate);
    font-style: italic;
    padding: var(--space-3) 0 0;
}

.wp-caption .wp-caption-text {
    margin: var(--space-3) 0 0;
}


/* ============================================
   GALLERIES - PREMIUM STYLING
   ============================================ */

.gallery {
    margin-bottom: var(--space-12);
    display: grid;
    gap: var(--space-4);
}

.gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-smooth);
}

.gallery-item:hover {
    box-shadow: var(--shadow-lg);
    transform: translateY(-4px);
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: all var(--transition-smooth);
}

.gallery-item:hover img {
    transform: scale(1.1);
}

/* Gallery Overlay on Hover */
.gallery-item::after {
    content: '+';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    width: 50px;
    height: 50px;
    background: var(--color-primary);
    color: white;
    font-size: var(--text-3xl);
    font-weight: var(--weight-bold);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-full);
    opacity: 0;
    transition: all var(--transition-smooth);
    pointer-events: none;
}

.gallery-item:hover::after {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
}

/* Gallery Columns */
.gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }
.gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }
.gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }
.gallery-columns-5 { grid-template-columns: repeat(5, 1fr); }
.gallery-columns-6 { grid-template-columns: repeat(6, 1fr); }
.gallery-columns-7 { grid-template-columns: repeat(7, 1fr); }
.gallery-columns-8 { grid-template-columns: repeat(8, 1fr); }
.gallery-columns-9 { grid-template-columns: repeat(9, 1fr); }

/* Gallery Caption */
.gallery-caption {
    display: block;
    padding: var(--space-3);
    font-size: var(--text-xs);
    color: var(--color-slate);
    text-align: center;
    background: white;
}

/* Responsive Galleries */
@media (max-width: 768px) {
    .gallery-columns-4,
    .gallery-columns-5,
    .gallery-columns-6,
    .gallery-columns-7,
    .gallery-columns-8,
    .gallery-columns-9 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .gallery-columns-2,
    .gallery-columns-3,
    .gallery-columns-4,
    .gallery-columns-5,
    .gallery-columns-6,
    .gallery-columns-7,
    .gallery-columns-8,
    .gallery-columns-9 {
        grid-template-columns: 1fr;
    }
}


/* ============================================
   WPFORMS - PREMIUM STYLING
   ============================================ */

div.wpforms-container-full .wpforms-form input[type="date"],
div.wpforms-container-full .wpforms-form input[type="datetime"],
div.wpforms-container-full .wpforms-form input[type="datetime-local"],
div.wpforms-container-full .wpforms-form input[type="email"],
div.wpforms-container-full .wpforms-form input[type="month"],
div.wpforms-container-full .wpforms-form input[type="number"],
div.wpforms-container-full .wpforms-form input[type="password"],
div.wpforms-container-full .wpforms-form input[type="range"],
div.wpforms-container-full .wpforms-form input[type="search"],
div.wpforms-container-full .wpforms-form input[type="tel"],
div.wpforms-container-full .wpforms-form input[type="text"],
div.wpforms-container-full .wpforms-form input[type="time"],
div.wpforms-container-full .wpforms-form input[type="url"],
div.wpforms-container-full .wpforms-form input[type="week"],
div.wpforms-container-full .wpforms-form select {
    height: 50px;
    padding: var(--space-4);
    border: 2px solid var(--color-sand);
    border-radius: var(--radius-lg);
    background: var(--color-pearl);
    color: var(--color-charcoal);
    font-size: var(--text-sm);
    transition: all var(--transition-base);
}

div.wpforms-container-full .wpforms-form textarea {
    min-height: 150px;
    padding: var(--space-4);
    border: 2px solid var(--color-sand);
    border-radius: var(--radius-lg);
    background: var(--color-pearl);
    color: var(--color-charcoal);
    font-size: var(--text-sm);
    transition: all var(--transition-base);
}

div.wpforms-container-full .wpforms-form input:focus,
div.wpforms-container-full .wpforms-form select:focus,
div.wpforms-container-full .wpforms-form textarea:focus {
    outline: none;
    border-color: var(--color-primary);
    background: white;
    box-shadow: 0 0 0 4px rgba(194, 182, 151, 0.1);
}

div.wpforms-container-full .wpforms-form .wpforms-field-label {
    font-weight: var(--weight-semibold);
    color: var(--color-navy);
    margin-bottom: var(--space-2);
}

div.wpforms-container-full .wpforms-form textarea.wpforms-field-medium {
    height: 200px;
}

/* WPForms Submit Button */
div.wpforms-container-full .wpforms-form button[type="submit"] {
    padding: var(--space-4) var(--space-10);
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    color: white;
    font-size: var(--text-sm);
    font-weight: var(--weight-bold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    border: none;
    border-radius: var(--radius-full);
    cursor: pointer;
    transition: all var(--transition-smooth);
    box-shadow: var(--shadow-gold);
}

div.wpforms-container-full .wpforms-form button[type="submit"]:hover {
    background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%);
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold-lg);
}

/*--------------------------------------------------------------
# ENDE CONTENT & MEDIA - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
# Global CSS
--------------------------------------------------------------*/
/*used in header and footer nav*/
.at-first-level-nav ul {
    margin: 0;
    padding: 0;
}

.at-first-level-nav ul li {
    display: inline-block;
    list-style: outside none none;
    margin: 0 10px;
}

.at-display-inline-block {
    display: inline-block;
}

/*--------------------------------------------------------------
/*--------------------------------------------------------------
# Header Structure - PREMIUM LUXUS VERSION
  Top Header, Site Title, Info Boxes
--------------------------------------------------------------*/

/* ============================================
   TOP HEADER - PREMIUM
   Optionaler oberer Bereich über der Navigation
   ============================================ */

.top-header {
    background: linear-gradient(135deg, var(--color-navy) 0%, var(--color-charcoal) 100%);
    color: #ffffff !important;
    font-size: var(--text-sm);
    padding: var(--space-3) 0;
    border-bottom: 1px solid rgba(194, 182, 151, 0.2);
    transition: all var(--transition-base);
}

.top-header a,
.top-header p {
    color: #ffffff !important;
    font-size: var(--text-sm);
    display: inline-block;
    line-height: 32px;
    transition: all var(--transition-base);
    text-decoration: none;
}

.top-header a:hover,
.top-header a:focus {
    color: var(--color-primary) !important;
    opacity: 1;
}

.top-header .text-right > :first-child,
.top-header .text-left > :first-child {
    margin-right: var(--space-4);
}


/* ============================================
   TOP HEADER - SOCIAL ICONS
   ============================================ */

.top-header .socials {
    margin: 0;
    display: inline-block;
    list-style: none;
    padding: 0;
}

.top-header .socials li {
    display: inline-block;
    margin: 0 var(--space-1);
}

.top-header .socials li a {
    width: 32px;
    height: 32px;
    line-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-base);
    background: rgba(255, 255, 255, 0.1);
    transition: all var(--transition-base);
}

.top-header .socials li a:hover {
    background: var(--color-primary);
    color: #ffffff !important;
    transform: translateY(-2px);
}

.top-header .socials li a i {
    font-size: var(--text-sm);
}


/* ============================================
   TOP HEADER - TRANSPARENT HEADER VARIANT
   ============================================ */

.header-transparent .top-header {
    background: transparent;
    background-color: transparent;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 2;
    padding: var(--space-2) 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.header-transparent .top-header .socials li a {
    line-height: 40px;
    width: 40px;
    height: 40px;
    text-align: center;
    margin: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0;
    background: transparent;
}

.header-transparent .top-header .socials li:first-child a {
    border-left: 1px solid rgba(255, 255, 255, 0.2);
}

.header-transparent .top-header .socials li a:hover {
    background: rgba(194, 182, 151, 0.2);
    border-color: var(--color-primary);
}


/* ============================================
   INFO ICON BOXES - PREMIUM
   Kontakt-Info mit Icons (Telefon, Email, Adresse)
   ============================================ */

.header-transparent .info-icon-box-wrapper {
    margin-top: var(--space-2);
}

.info-icon-box-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-4);
    align-items: center;
}

.info-icon-box-wrapper .info-icon-box {
    display: inline-flex;
    align-items: center;
    line-height: 1;
    position: relative;
    gap: var(--space-3);
}

.info-icon-box-wrapper .info-icon-box:not(:first-child) {
    padding-left: var(--space-4);
    border-left: 1px solid rgba(194, 182, 151, 0.3);
}

/* Info Icon Container */
.info-icon-box {
    position: relative;
    transition: all var(--transition-base);
}

.info-icon-box:hover {
    transform: translateX(3px);
}

/* Icon Circle */
.info-icon-box .info-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--radius-full);
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    flex-shrink: 0;
    transition: all var(--transition-base);
}

.info-icon-box:hover .info-icon {
    transform: rotate(10deg) scale(1.1);
    box-shadow: var(--shadow-gold);
}

.info-icon-box .info-icon i {
    font-size: var(--text-base);
    color: #ffffff;
}

/* Info Text Details */
.info-icon-details {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.info-icon-details .icon-title {
    font-size: var(--text-xs);
    margin: 0;
    color: rgba(255, 255, 255, 0.7);
    font-weight: var(--weight-normal);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.info-icon-details .icon-desc {
    font-size: var(--text-sm);
    color: #ffffff;
    font-weight: var(--weight-semibold);
    margin: 0;
}

.info-icon-details .icon-desc a {
    color: #ffffff;
    text-decoration: none;
    transition: color var(--transition-base);
}

.info-icon-details .icon-desc a:hover {
    color: var(--color-primary);
}


/* ============================================
   SITE TITLE & DESCRIPTION
   Hinweis: Hauptstyles in 04-navigation.css
   Hier nur ergänzende Styles
   ============================================ */

.site-title,
.site-title a {
    font-size: 20px;
    line-height: var(--leading-tight);
    margin: 0;
    text-transform: uppercase;
    font-weight: var(--weight-semibold);
    letter-spacing: 1px;
}

.site-description,
.site-description a {
    margin: 0;
    font-size: var(--text-sm);
    color: var(--color-slate);
}


/* ============================================
   RESPONSIVE - MOBILE & TABLET
   ============================================ */

@media only screen and (max-width: 1024px) {
    .info-icon-box-wrapper {
        justify-content: center;
        gap: var(--space-3);
    }

    .info-icon-box-wrapper .info-icon-box:not(:first-child) {
        padding-left: var(--space-3);
    }
}

  @media only screen and (max-width: 767px) {

      /* Top Header - Zentriert auf Mobile */
      .top-header {
          text-align: center;
          padding: var(--space-3) 0;
      }

      .top-header .text-right,
      .top-header .top-header .text-left {
          text-align: center;
          display: block;
          margin-bottom: 0;
      }

      .top-header .text-right > :first-child,
      .top-header .text-left > :first-child {
          margin-right: 0;
          margin-bottom: 0;
      }

      /* Social Icons Mobile */
      .top-header .socials {
          margin-top: 0;
          display: inline-flex;
      }

      .header-transparent .top-header .socials li a:first-child,
      .header-transparent .top-header .socials li a,
      .top-header .socials li a {
          border: medium none;
          margin: 0 var(--space-1);
      }

      /* Info Icon Boxes Mobile - OPTION 1: CLEAN HORIZONTAL */
      .info-icon-box-wrapper {
          flex-direction: row;
          justify-content: center;
          align-items: center;
          gap: var(--space-2);
          flex-wrap: nowrap;
      }

      .info-icon-box-wrapper .info-icon-box {
          flex-shrink: 1;
          min-width: 0;
      }

      .info-icon-box-wrapper .info-icon-box:not(:first-child) {
          margin-left: 0;
          padding-left: 0;
          border-left: none;
          border-top: none;
          padding-top: 0;
          width: auto;
      }

      .info-icon-details .icon-desc {
          font-size: 11px;
          white-space: nowrap;
      }
  }

@media only screen and (max-width: 480px) {
      /* Info Icon - Kleinere Icons auf Smartphones */
      .info-icon-box .info-icon {
          width: 30px;
          height: 30px;
      }

      .info-icon-box .info-icon i {
          font-size: 12px;
      }

      .info-icon-details .icon-title {
          font-size: 9px;
      }

      .info-icon-details .icon-desc {
          font-size: 10px;
      }

      .info-icon-box-wrapper {
          gap: var(--space-1);
      }
  }


/* ============================================
   ALTERNATIVE LAYOUT OPTIONS
   ============================================ */

/* Centered Top Header */
.top-header.top-header-centered {
    text-align: center;
}

.top-header.top-header-centered .text-left,
.top-header.top-header-centered .text-right {
    text-align: center;
    display: block;
}

/* Compact Top Header */
.top-header.top-header-compact {
    padding: var(--space-2) 0;
    font-size: 12px;
}

.top-header.top-header-compact a,
.top-header.top-header-compact p {
    font-size: 12px;
    line-height: 24px;
}


/* ============================================
   PRINT STYLES
   ============================================ */

@media print {
    .top-header {
        display: none;
    }

    .info-icon-box-wrapper {
        page-break-inside: avoid;
    }
}

/*--------------------------------------------------------------
# ENDE HEADER STRUCTURE - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Feature Slider & Hero Sections - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/

/* ============================================
   SLIDER BASE - PREMIUM WRAPPER
   ============================================ */

.featured-slider {
    display: none;
}

.image-slider-wrapper {
    display: block;
    position: relative;
    overflow: hidden;
    min-height: 150px;
    background: var(--color-navy);
}

/* Slick Slide */
.slick-slide {
    position: relative;
}

.slick-slide:focus {
    outline: none !important;
}


/* ============================================
   SLIDER CONTENT - PREMIUM TEXT OVERLAY
   ============================================ */

.image-slider-wrapper .slider-content {
    color: #ffffff;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    font-size: var(--text-lg);
    z-index: 2;
}

/* Premium Dark Overlay für bessere Lesbarkeit */
.image-slider-wrapper .slick-slide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        135deg,
        rgba(26, 26, 46, 0.7) 0%,
        rgba(44, 44, 62, 0.5) 100%
    );
    z-index: 1;
    pointer-events: none;
}

/* Slider Content Container - Animation */
.image-slider-wrapper .slick-slide .slider-content .container {
    display: none;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.image-slider-wrapper .slick-slide.slick-active .slider-content .container {
    display: block;
    opacity: 1;
    transform: translateY(0);
    animation: slideInUp 0.8s ease-out;
}

@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ============================================
   BANNER TITLE - PREMIUM HERO HEADLINE
   ============================================ */

.image-slider-wrapper .banner-title {
    color: #ffffff;
    font-size: clamp(32px, 6vw, 64px);
    font-weight: var(--weight-extrabold);
    line-height: var(--leading-tight);
    text-transform: uppercase;
    position: relative;
    z-index: 2;
    display: inline-block;
    font-family: 'Playfair Display', Georgia, serif;
    letter-spacing: -0.02em;
    margin-bottom: var(--space-6);
    text-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* Gold Accent Line unter Title */
.image-slider-wrapper .banner-title::after {
    content: '';
    display: block;
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    margin: var(--space-4) 0 0 0;
    box-shadow: 0 2px 8px rgba(194, 182, 151, 0.4);
}

.slider-content.text-center .banner-title::after {
    margin-left: auto;
    margin-right: auto;
}


/* ============================================
   SLIDER CAPTION - PREMIUM DESCRIPTION
   ============================================ */

.image-slider-caption {
    clear: both;
    overflow: hidden;
}

.slider-content.text-center .image-slider-caption {
    width: 70%;
    max-width: 800px;
    margin: var(--space-6) auto 0;
}

.image-slider-caption p {
    font-size: var(--text-lg);
    font-weight: var(--weight-light);
    line-height: var(--leading-relaxed);
    color: rgba(255, 255, 255, 0.95);
    margin-bottom: var(--space-4);
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.slider-content.text-left .image-slider-caption p,
.slider-content.text-right .image-slider-caption p {
    margin-bottom: var(--space-4);
    margin-top: var(--space-4);
    font-weight: var(--weight-light);
    width: 50%;
}

.slider-content.text-right .image-slider-caption p {
    float: right;
}


/* ============================================
   SLIDER BUTTONS - PREMIUM CTAS
   ============================================ */

.image-slider-wrapper .slider-content .btn-primary {
    margin: var(--space-6) var(--space-3) var(--space-3) 0;
    animation-delay: 0.3s;
}

.image-slider-wrapper .slider-content .btn-reverse {
    border: 2px solid #ffffff;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
}

.image-slider-wrapper .slider-content .btn-reverse:hover {
    background: #ffffff;
    color: var(--color-navy);
    border-color: #ffffff;
}


/* ============================================
   SLIDER NAVIGATION ARROWS - PREMIUM
   ============================================ */

.image-slider-wrapper .slick-arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    cursor: pointer;
    transform: translateY(-50%);
    border: 2px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    transition: all var(--transition-smooth);
    opacity: 0;
    visibility: hidden;
    border-radius: var(--radius-full);
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Arrow Icons */
.image-slider-wrapper i.slick-arrow {
    color: #ffffff;
    font-size: 24px;
    line-height: 1;
    width: auto;
    height: auto;
}

/* Arrow Positions */
.image-slider-wrapper .slick-arrow.prev {
    left: 20px;
}

.image-slider-wrapper .slick-arrow.next {
    right: 20px;
}

/* Show Arrows on Hover */
.image-slider-wrapper:hover .slick-arrow,
.image-slider-wrapper:focus .slick-arrow {
    opacity: 1;
    visibility: visible;
}

/* Arrow Hover Effects */
.image-slider-wrapper .slick-arrow:hover {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    border-color: var(--color-primary);
    transform: translateY(-50%) scale(1.1);
    box-shadow: var(--shadow-gold-lg);
}

.image-slider-wrapper .slick-arrow.prev:hover {
    transform: translateY(-50%) translateX(-5px) scale(1.1);
}

.image-slider-wrapper .slick-arrow.next:hover {
    transform: translateY(-50%) translateX(5px) scale(1.1);
}


/* ============================================
   SLIDER DOTS - PREMIUM INDICATORS
   ============================================ */

.image-slider-wrapper .slick-dots {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex !important;
    gap: var(--space-2);
    z-index: 10;
    list-style: none;
    padding: 0;
    margin: 0;
}

.image-slider-wrapper .slick-dots li {
    margin: 0;
}

.image-slider-wrapper .slick-dots li button {
    width: 12px;
    height: 12px;
    padding: 0;
    border: 2px solid rgba(255, 255, 255, 0.5);
    background: transparent;
    border-radius: var(--radius-full);
    cursor: pointer;
    transition: all var(--transition-base);
    font-size: 0;
    line-height: 0;
}

.image-slider-wrapper .slick-dots li.slick-active button {
    background: var(--color-primary);
    border-color: var(--color-primary);
    width: 32px;
    border-radius: 6px;
}

.image-slider-wrapper .slick-dots li button:hover {
    border-color: var(--color-primary);
    background: rgba(194, 182, 151, 0.3);
}


/* ============================================
   SLIDER HEIGHTS - RESPONSIVE
   ============================================ */

/* Background/Default Slider */
.image-slider-wrapper .slick-list,
.image-slider-wrapper .slick-track {
    height: 85vh !important;
    min-height: 500px;
    max-height: 900px;
    left: 0;
    position: relative;
    right: 0;
    top: 0;
    width: 100%;
}

/* Image Slider Responsive */
.image-slider-wrapper.responsive-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.image-slider-wrapper.responsive-img,
.image-slider-wrapper.responsive-img .slick-list,
.image-slider-wrapper.responsive-img .slick-track {
    height: auto !important;
}


/* ============================================
   RESPONSIVE BREAKPOINTS
   ============================================ */

/* Large Desktop */
@media (max-width: 1230px) {
    .image-slider-wrapper .banner-title {
        font-size: clamp(28px, 5vw, 48px);
    }

    .slider-content.text-left .image-slider-caption p,
    .slider-content.text-right .image-slider-caption p {
        width: 60%;
    }
}

/* Tablet Landscape */
@media screen and (max-width: 991.49px) {
    .image-slider-wrapper > .info-icon-box-wrapper {
        position: relative;
    }

    .image-slider-wrapper .slick-list,
    .image-slider-wrapper .slick-track {
        height: 70vh !important;
        min-height: 400px;
    }

    .slider-content.text-center .image-slider-caption {
        width: 80%;
    }

    .image-slider-wrapper .slick-arrow {
        width: 50px;
        height: 50px;
    }

    .image-slider-wrapper i.slick-arrow {
        font-size: 20px;
    }
}

/* Tablet Portrait */
@media screen and (max-width: 768px) {
    .image-slider-wrapper .banner-title {
        font-size: clamp(24px, 4vw, 36px);
        margin-bottom: var(--space-4);
    }

    .image-slider-wrapper .banner-title::after {
        width: 60px;
        height: 3px;
        margin-top: var(--space-3);
    }

    .slider-content.text-center .image-slider-caption {
        width: 90%;
    }

    .slider-content.text-left .image-slider-caption p,
    .slider-content.text-right .image-slider-caption p {
        width: 100%;
        float: none;
    }

    .image-slider-caption p {
        font-size: var(--text-base);
    }
}

/* Mobile */
@media screen and (max-width: 679px) {
    .image-slider-wrapper .slider-content .image-slider-caption {
        display: block;
    }

    .image-slider-wrapper .banner-title {
        font-size: clamp(20px, 6vw, 28px);
        display: block;
    }

    .image-slider-caption {
        width: 90%;
    }

    .image-slider-wrapper .slick-list,
    .image-slider-wrapper .slick-track {
        height: 60vh !important;
        min-height: 350px;
    }

    /* Arrows Mobile Position */
    .image-slider-wrapper .slick-arrow {
        top: auto;
        bottom: 20px;
        transform: none;
        width: 44px;
        height: 44px;
    }

    .image-slider-wrapper .slick-arrow.prev {
        left: auto;
        right: 70px;
    }

    .image-slider-wrapper .slick-arrow.next {
        right: 20px;
    }

    .image-slider-wrapper .slick-arrow:hover {
        transform: scale(1.1);
    }

    .image-slider-wrapper i.slick-arrow {
        font-size: 18px;
    }
}

/* Small Mobile */
@media only screen and (max-width: 480px) {
    .image-slider-wrapper .slider-content .btn-primary {
        margin: var(--space-4) 0 0 0;
        padding: 12px 20px;
        font-size: 12px;
        width: 100%;
        max-width: 280px;
    }

    .image-slider-wrapper .slick-list,
    .image-slider-wrapper .slick-track {
        height: 50vh !important;
        min-height: 300px;
    }

    .image-slider-wrapper .slick-dots {
        bottom: 15px;
    }

    .image-slider-wrapper .slick-dots li button {
        width: 10px;
        height: 10px;
    }

    .image-slider-wrapper .slick-dots li.slick-active button {
        width: 24px;
    }
}


/* ============================================
   SLIDER TEXT ALIGNMENT VARIANTS
   ============================================ */

/* Left Aligned Content */
.slider-content.text-left {
    text-align: left;
}

.slider-content.text-left .banner-title::after {
    margin-left: 0;
}

/* Right Aligned Content */
.slider-content.text-right {
    text-align: right;
}

.slider-content.text-right .banner-title::after {
    margin-left: auto;
    margin-right: 0;
}

/* Center Aligned Content (Default) */
.slider-content.text-center {
    text-align: center;
}


/* ============================================
   PREMIUM ANIMATION EFFECTS
   ============================================ */

/* Fade In Animation for Slide */
.slick-slide {
    opacity: 0;
    transition: opacity 0.6s ease;
}

.slick-slide.slick-active {
    opacity: 1;
}

/* Parallax Effect Hint */
.image-slider-wrapper.parallax-slider .slick-slide {
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
}


/* ============================================
   ACCESSIBILITY IMPROVEMENTS
   ============================================ */

/* Screen Reader Text for Arrows */
.slick-arrow .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Focus States */
.image-slider-wrapper .slick-arrow:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

.image-slider-wrapper .slick-dots li button:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}


/* ============================================
   PRINT STYLES
   ============================================ */

@media print {
    .image-slider-wrapper .slick-arrow,
    .image-slider-wrapper .slick-dots {
        display: none !important;
    }

    .image-slider-wrapper .slick-slide {
        page-break-inside: avoid;
    }
}

/*--------------------------------------------------------------
# ENDE FEATURE SLIDER - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Button Styles - PREMIUM LUXUS VERSION (Boutique Law Firm)
--------------------------------------------------------------*/

/* ============================================
   BUTTON WRAPPER
   ============================================ */

.at-btn-wrap {
    text-align: center;
}


/* ============================================
   BUTTON BASE STYLES - PREMIUM FOUNDATION
   ============================================ */

.btn {
    border-radius: var(--radius-full);
    font-size: var(--text-base);
    font-weight: var(--weight-semibold);
    padding: 12px 20px;
    transition: all var(--transition-smooth);
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    border: none;
    line-height: var(--leading-normal);
    vertical-align: middle;
}

.at-btn-wrap .btn,
.slider-content .btn {
    font-size: var(--text-base);
    padding: 12px 25px;
}

.slider-content .btn i {
    margin-left: 10px;
}


/* ============================================
   PRIMARY CTA BUTTON - PREMIUM GOLD GLOW
   Bootstrap Override für vollständige Kontrolle
   ============================================ */

/* Alle Bootstrap-Klassen überschreiben */
a.featured-button.btn.btn-primary,
a.featured-button.btn,
.featured-button a.btn,
.menu-right-button a.btn,
a.btn.btn-primary[href*="consultation"],
a.btn.btn-primary[href*="beratung"],
a.btn.btn-primary[href*="konsultacia"],
.comment-form .form-submit input,
.btn-primary {
    display: inline-block !important;
    padding: 16px 36px !important;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%) !important;
    background-color: var(--color-primary) !important; /* Bootstrap override */
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: var(--weight-bold) !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    border-radius: var(--radius-full) !important;
    border: none !important;
    box-shadow:
        0 4px 15px rgba(194, 182, 151, 0.4),
        0 0 0 0 rgba(194, 182, 151, 0.7) !important;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    animation: pulse-glow 3s infinite !important;
    opacity: 1 !important;
    transform: none !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    position: relative !important;
    overflow: hidden !important;
    line-height: 1.4 !important;
    vertical-align: middle !important;
    cursor: pointer !important;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    backface-visibility: hidden;
}

/* Glowing Pulse Animation - Premium Effekt */
@keyframes pulse-glow {
    0%, 100% {
        box-shadow:
            0 4px 15px rgba(194, 182, 151, 0.4),
            0 0 0 0 rgba(194, 182, 151, 0.7);
    }
    50% {
        box-shadow:
            0 4px 20px rgba(194, 182, 151, 0.6),
            0 0 0 8px rgba(194, 182, 151, 0);
    }
}

/* Glanz-Effekt beim Hover - Lichtstrahl über Button */
a.featured-button.btn.btn-primary::before,
a.featured-button.btn::before,
.featured-button a.btn::before,
.menu-right-button a.btn::before,
.btn-primary::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg,
        transparent,
        rgba(255, 255, 255, 0.3),
        transparent) !important;
    transition: left 0.6s ease !important;
    z-index: 1 !important;
}

a.featured-button.btn.btn-primary:hover::before,
a.featured-button.btn:hover::before,
.featured-button a.btn:hover::before,
.menu-right-button a.btn:hover::before,
.btn-primary:hover::before {
    left: 100% !important;
}

/* Hover State - Premium Lift & Glow */
a.featured-button.btn.btn-primary:hover,
a.featured-button.btn:hover,
.featured-button a.btn:hover,
.menu-right-button a.btn:hover,
a.btn.btn-primary[href*="consultation"]:hover,
a.btn.btn-primary[href*="beratung"]:hover,
a.btn.btn-primary[href*="konsultacia"]:hover,
.comment-form .form-submit input:hover,
.btn-primary:hover,
.btn-primary:focus {
    transform: translateY(-3px) scale(1.05) !important;
    box-shadow:
        0 8px 25px rgba(194, 182, 151, 0.6),
        0 0 0 0 rgba(194, 182, 151, 1) !important;
    background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%) !important;
    background-color: var(--color-primary-light) !important;
    border-color: transparent !important;
    color: #ffffff !important;
}

/* Active State (beim Klicken) */
a.featured-button.btn.btn-primary:active,
a.featured-button.btn:active,
.featured-button a.btn:active,
.menu-right-button a.btn:active,
.comment-form .form-submit input:active,
.btn-primary:active {
    transform: translateY(-1px) scale(1.02) !important;
}

/* Focus State (Accessibility) */
a.featured-button.btn.btn-primary:focus,
a.featured-button.btn:focus,
.featured-button a.btn:focus,
.menu-right-button a.btn:focus,
.comment-form .form-submit input:focus,
.btn-primary:focus {
    outline: 2px solid var(--color-primary) !important;
    outline-offset: 2px !important;
}


/* ============================================
   BUTTON VERTICAL ALIGNMENT FIX
   ============================================ */

/* Button-Wrapper auf gleicher Höhe */
.at-beside-navbar-header .featured-button,
.at-beside-navbar-header .menu-right-button {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Button-Link Padding anpassen */
a.featured-button.btn.btn-primary,
a.featured-button.btn,
.featured-button a.btn,
.menu-right-button a.btn {
    padding: 12px 36px !important;
    margin: 0 !important;
    vertical-align: middle !important;
}


/* ============================================
   REVERSE BUTTON - OUTLINE STYLE
   ============================================ */

.btn-primary.btn-reverse {
    background: transparent !important;
    background-color: transparent !important;
    border: 2px solid var(--color-primary) !important;
    color: var(--color-primary) !important;
}

.btn-primary.btn-reverse:hover {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%) !important;
    background-color: var(--color-primary) !important;
    color: #ffffff !important;
    border-color: var(--color-primary) !important;
}


/* ============================================
   SECONDARY BUTTON - SUBTLE STYLE
   ============================================ */

.btn-secondary {
    background: var(--color-cream);
    color: var(--color-navy);
    border: 1px solid var(--color-sand);
    transition: all var(--transition-base);
}

.btn-secondary:hover {
    background: var(--color-primary);
    color: #ffffff;
    border-color: var(--color-primary);
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold);
}


/* ============================================
   MORE LINK - PREMIUM ARROW
   ============================================ */

.more-link {
    display: table;
    margin-top: var(--space-5);
    color: var(--color-primary);
    font-weight: var(--weight-semibold);
    text-decoration: none;
    transition: all var(--transition-base);
}

a.more-link {
    position: relative;
    padding-right: 25px;
}

a.more-link::after {
    content: "\f101";
    display: inline-block;
    margin-left: 8px;
    font-family: FontAwesome;
    font-size: 12px;
    line-height: 1;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: all var(--transition-base);
}

a.more-link:hover {
    color: var(--color-primary-dark);
    padding-right: 30px;
}

a.more-link:hover::after {
    right: -5px;
}


/* ============================================
   ICON BUTTONS
   ============================================ */

.icons {
    width: 100%;
}

.btn.btn-icon {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
}

.btn.btn-icon i {
    font-size: var(--text-lg);
}


/* ============================================
   BUTTON SIZES - PREMIUM VARIATIONS
   ============================================ */

/* Small Button */
.btn-sm,
.btn.btn-small {
    padding: 8px 20px;
    font-size: var(--text-sm);
    letter-spacing: 1px;
}

/* Large Button */
.btn-lg,
.btn.btn-large {
    padding: 18px 44px;
    font-size: var(--text-lg);
    letter-spacing: 2px;
}

/* Full Width Button */
.btn-block,
.btn.btn-full {
    width: 100%;
    display: block;
    text-align: center;
}


/* ============================================
   BUTTON GROUPS
   ============================================ */

.btn-group {
    display: flex;
    gap: var(--space-4);
    flex-wrap: wrap;
    align-items: center;
}

.btn-group .btn {
    margin: 0;
}

.btn-group.btn-group-center {
    justify-content: center;
}

.btn-group.btn-group-right {
    justify-content: flex-end;
}


/* ============================================
   DISABLED STATE
   ============================================ */

.btn:disabled,
.btn.disabled,
.btn[disabled] {
    opacity: var(--opacity-disabled);
    cursor: not-allowed;
    pointer-events: none;
}


/* ============================================
   RESPONSIVE BUTTON STYLES
   ============================================ */

@media (max-width: 1024px) {
    /* CTA Button im Mobile-Menü */
    .at-beside-navbar-header .featured-button,
    .at-beside-navbar-header .menu-right-button {
        width: 100%;
        padding: 15px 20px;
    }

    a.featured-button.btn.btn-primary,
    .featured-button a.btn {
        width: 100% !important;
        max-width: 300px !important;
        margin: 0 auto !important;
        text-align: center !important;
        padding: 16px 20px !important;
    }
}

@media (max-width: 768px) {
    /* Buttons etwas kleiner auf Tablet */
    a.featured-button.btn.btn-primary,
    .featured-button a.btn {
        padding: 14px 24px !important;
        font-size: 12px !important;
    }

    .btn-group {
        flex-direction: column;
        gap: var(--space-3);
    }

    .btn-group .btn {
        width: 100%;
    }
}

@media (max-width: 480px) {
    /* Buttons noch kleiner auf Smartphone */
    a.featured-button.btn.btn-primary,
    .featured-button a.btn,
    .btn-primary {
        padding: 14px 20px !important;
        font-size: 12px !important;
        letter-spacing: 1px !important;
    }

    .btn-lg,
    .btn.btn-large {
        padding: 16px 32px;
        font-size: var(--text-base);
    }
}

@media (max-width: 360px) {
    /* Extra kleine Smartphones */
    a.featured-button.btn.btn-primary,
    .featured-button a.btn {
        padding: 12px 18px !important;
        font-size: 11px !important;
    }
}


/* ============================================
   WORDPRESS COMMENT FORM SUBMIT
   ============================================ */

.comment-form .form-submit {
    margin-bottom: 0;
}

.comment-form .form-submit input[type="submit"] {
    /* Verwendet die gleichen Styles wie .btn-primary oben */
    border: none;
    cursor: pointer;
}


/* ============================================
   SPECIAL BUTTON STYLES
   ============================================ */

/* Ghost Button */
.btn-ghost {
    background: transparent;
    border: 2px solid currentColor;
    color: var(--color-navy);
}

.btn-ghost:hover {
    background: var(--color-navy);
    color: #ffffff;
}

/* Link Button (wie ein Link aussieht) */
.btn-link {
    background: none;
    border: none;
    color: var(--color-primary);
    padding: 0;
    text-decoration: underline;
    border-radius: 0;
}

.btn-link:hover {
    color: var(--color-primary-dark);
    text-decoration: none;
    transform: none;
    box-shadow: none;
}


/* ============================================
   BUTTON LOADING STATE
   ============================================ */

.btn.is-loading {
    position: relative;
    color: transparent !important;
    pointer-events: none;
}

.btn.is-loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 16px;
    height: 16px;
    border: 2px solid #ffffff;
    border-top-color: transparent;
    border-radius: 50%;
    animation: btn-spin 0.6s linear infinite;
}

@keyframes btn-spin {
    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}


/* ============================================
   PRINT STYLES
   ============================================ */

@media print {
    .btn {
        border: 1px solid #000;
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
    }

    .btn::before {
        display: none !important;
    }
}

/*--------------------------------------------------------------
# ENDE BUTTON STYLES - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Widgets - Services, Teams, Testimonials, FAQ, Schedules
# PREMIUM LUXUS VERSION mit Gold-Akzenten
--------------------------------------------------------------*/

/*-----------------*\
    #Common Widget Styles
\*-----------------*/

/*==============================================
    Slick Carousel Navigation - Premium Style
===============================================*/

.at-action-wrapper {
    display: block;
    max-width: 90px;
    margin: var(--space-10) auto 0;
    overflow: hidden;
}

.at-action-wrapper .slick-arrow {
    border: 1px solid var(--color-sand);
    padding: var(--space-1) var(--space-3);
    width: 35px;
    border-radius: var(--radius-full);
    height: 35px;
    line-height: 30px;
    text-align: center;
    margin: var(--space-2);
    font-size: var(--text-lg);
    color: var(--color-gray-600);
    cursor: pointer;
    background: var(--color-pearl);
    transition: all var(--transition-base);
}

.at-action-wrapper .slick-arrow:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    background: var(--color-cream);
    box-shadow: var(--shadow-gold-sm);
    transform: translateY(-2px);
}

.at-action-wrapper a.all-link {
    text-transform: none;
    font-size: var(--text-base);
    color: var(--color-primary);
    font-weight: var(--weight-medium);
    transition: all var(--transition-base);
}

.at-action-wrapper a.all-link:hover {
    color: var(--color-primary-dark);
    text-decoration: underline;
}

.widget_lawyer_zone_service .slick-list {
    padding: var(--space-5) var(--space-5) 0 var(--space-5);
}

/*==============================================
    Slick Carousel Container Styles
===============================================*/

.featured-entries-col {
    overflow: hidden;
}

.acme-slick-carausel {
    padding-right: var(--space-4);
    padding-left: var(--space-4);
}

.featured-entries-col.column,
.featured-entries-col .slick-list {
    margin: calc(var(--space-3) * -1);
}

.featured-entries-col .single-list {
    padding: var(--space-3);
}

/*==============================================
    Widget Container - Premium Layout
===============================================*/

.at-widgets {
    padding: var(--space-10) 0;
    overflow: hidden;
    position: relative;
}

.at-widgets .entry-header-title {
    margin-bottom: var(--space-3);
}

.at-widget-title-wrapper {
    margin-bottom: var(--space-20);
    position: relative;
}

/* Premium Gold Divider */
.at-widget-title-wrapper:after {
    position: absolute;
    content: '';
    width: 100px;
    height: 3px;
    background: linear-gradient(90deg,
        transparent,
        var(--color-primary) 20%,
        var(--color-primary) 80%,
        transparent
    );
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: -40px;
    box-shadow: var(--shadow-gold-sm);
}

.at-widget-title-wrapper .at-subtitle {
    width: 60%;
    margin: 0 auto;
    font-weight: var(--weight-light);
    font-size: var(--text-md);
    color: var(--color-slate);
    line-height: var(--leading-relaxed);
}

.at-widget-title-wrapper .widget-title {
    margin-bottom: var(--space-3);
    margin-top: 0;
}

.at-widget-title-wrapper .widget-title span,
.at-widget-title-wrapper .at-subtitle {
    margin-bottom: 0;
}

/*==============================================
    Widget Title - Premium Typography
===============================================*/

.widget-title {
    font-size: var(--text-3xl);
    line-height: var(--leading-tight);
    font-weight: var(--weight-normal);
    margin-bottom: var(--space-12);
    text-align: center;
    font-style: normal;
    font-family: var(--font-serif-display);
    text-transform: capitalize;
    color: var(--color-navy);
    letter-spacing: var(--tracking-tight);
}

.widget-title span {
    display: block;
    margin-bottom: var(--space-5);
    color: var(--color-primary);
    font-size: var(--text-lg);
    font-weight: var(--weight-medium);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
}

.widget-title::after {
    content: "";
    display: block;
    position: absolute;
    height: 2.5px;
    width: 50px;
    left: 50%;
    margin-left: -30px;
}

/* Mobile Optimization */
@media only screen and (max-width:767px) {
    .widget-title {
        font-size: var(--text-2xl);
        line-height: var(--leading-snug);
    }
}

/*==============================================
    Sidebar & Footer Widget Titles
===============================================*/

.related-posts .widget-title,
.secondary-sidebar .widget-title,
.footer-columns .widget-title {
    font-size: var(--text-xl);
    font-weight: var(--weight-medium);
    margin-bottom: var(--space-5);
    position: relative;
    text-align: left;
    padding: var(--space-3) 0;
    font-family: inherit;
    color: var(--color-navy);
}

.related-posts .widget-title span,
.secondary-sidebar .widget-title span,
.footer-columns .widget-title span {
    margin-bottom: auto;
}

.related-posts .widget-title::after,
.secondary-sidebar .widget-title::after,
.footer-columns .widget-title::after {
    margin-left: auto;
    left: 0;
    bottom: -1px;
    background: var(--color-primary);
}

/*==============================================
    Background Variants
===============================================*/

.at-gray-bg {
    background: var(--color-cream);
}

/*==============================================
    Responsive Adjustments
===============================================*/

@media only screen and (max-width: 991px) {
    .at-widgets {
        padding: var(--space-5) 0;
    }

    .at-equal-margin {
        margin: var(--space-3) 0;
    }

    .at-widgets .row>div:last-child {
        margin-bottom: 0;
    }

    .at-widget-title-wrapper .at-subtitle {
        width: 90%;
    }
}

@media only screen and (max-width:767px) {
    .at-widget-title-wrapper .widget-title {
        margin-bottom: var(--space-5);
    }
}

/*==============================================
    Sidebar and Footer Fixed Widgets
===============================================*/

.at-view-all-widget .banner-btn {
    margin-top: var(--space-12);
}

.acme-slick-carausel+.row .at-view-all-widget .btn {
    margin-top: -150px;
}

.at-fixed-width .at-widgets {
    padding: 0;
}

.at-fixed-width .at-widgets .container,
.at-fixed-width .at-widgets .container .row>div,
.entry-content .at-widgets .container {
    width: 100%;
    margin: 0;
    padding: 0;
}

.at-fixed-width .team-item {
    margin: var(--space-5) 0;
}

/*==============================================
    #SERVICES WIDGET - Premium Card Design
===============================================*/

.home .acme-services.feature {
    margin-top: -150px;
    padding-bottom: 0;
}

.home .acme-services.feature .single-list:nth-child(odd) .single-item {
    background-color: var(--color-cream);
}

.home .acme-services.feature .single-list:nth-child(even) .single-item .icon a i,
.home .acme-services.feature .single-list:nth-child(even) .single-item .title,
.home .acme-services.feature .single-list:nth-child(even) .single-item .title a {
    color: var(--color-pearl);
}

.home .acme-services.feature .column .single-item {
    padding: var(--space-5) var(--space-5) var(--space-10);
}

/*==============================================
    Service Icon - Premium Gold Design
===============================================*/

.acme-services.feature .column .single-item .icon i {
    width: 80px;
    height: 80px;
    border: 2px solid var(--color-primary);
    text-align: center;
    line-height: 80px;
    font-size: var(--text-2xl);
    border-radius: var(--radius-full);
    color: var(--color-primary);
    transition: all var(--transition-smooth);
    background: var(--color-pearl);
    position: relative;
}

.acme-services.feature .column .single-item .icon i::before {
    position: relative;
    z-index: 2;
}

.acme-services.feature .column .single-item:hover .icon i {
    background: var(--color-primary);
    color: var(--color-pearl);
    border-color: var(--color-primary-light);
    box-shadow: var(--shadow-gold);
    transform: scale(1.05) rotate(5deg);
}

/*==============================================
    Service Card - Premium Elevation
===============================================*/

.acme-services.feature .column .single-item:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    box-shadow: var(--shadow-xl);
    left: 0;
    top: 0;
    opacity: 0;
    transition: all var(--transition-smooth);
    z-index: -1;
    border-radius: var(--radius-md);
}

.acme-services.feature .single-item:hover:before,
.acme-services.feature .single-item:focus-within:before {
    opacity: 1;
    box-shadow: var(--shadow-gold-lg);
}

/*==============================================
    Service Items - Base Styles
===============================================*/

.acme-services .column {
    text-align: center;
}

.acme-services .column .single-item {
    position: relative;
    padding: var(--space-5);
    margin-bottom: var(--space-8);
    background: var(--color-pearl);
    border-radius: var(--radius-md);
    transition: all var(--transition-base);
}

.acme-services .column .single-item .title {
    font-family: var(--font-serif-display);
    font-size: var(--text-xl);
    font-weight: var(--weight-medium);
    color: var(--color-navy);
    margin-top: var(--space-4);
    margin-bottom: var(--space-3);
    transition: color var(--transition-base);
}

.acme-services .column .single-item:hover .title {
    color: var(--color-primary);
}

.acme-services .column .single-item .entry-content {
    color: var(--color-slate);
    line-height: var(--leading-relaxed);
    font-size: var(--text-base);
}

/*==============================================
    Normal Service Style - Dashed Borders
===============================================*/

.acme-services.normal .column .single-item {
    border-width: 1px;
    border-style: dashed;
    border-color: var(--color-sand);
    cursor: pointer;
    transition: all var(--transition-base);
    background: transparent;
}

.acme-services.normal .column .single-item:hover {
    border-color: var(--color-primary);
    background: var(--color-pearl);
    box-shadow: var(--shadow-gold);
}

.acme-services.normal .column .single-item i {
    font-size: var(--text-4xl);
    color: var(--color-primary);
    transition: all var(--transition-base);
}

.acme-services.normal .column .single-item:hover i {
    color: var(--color-primary-dark);
    transform: scale(1.1);
}

.widget_lawyer_zone_service+.widget_lawyer_zone_imp_number .at-widgets {
    padding-top: 0;
}

/*==============================================
    Service Responsive Styles
===============================================*/

@media only screen and (max-width: 767px) {
    .acme-services .at-action-wrapper {
        display: none;
    }

    .home .acme-services.feature {
        margin-top: 0px;
    }

    .acme-services.normal .at-widget-title-wrapper {
        margin-bottom: var(--space-20);
    }

    .acme-services.normal .at-view-all-widget .banner-btn {
        margin-top: var(--space-5);
    }

    .acme-services .column .single-item {
        margin-bottom: 0;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .acme-services .featured-entries-col.column {
        display: flex;
        flex-wrap: wrap;
    }

    .acme-services.normal .column .single-item {
        margin-bottom: 0;
        height: 100%;
        display: block;
        flex: 1;
    }
}

/*==============================================
    Desktop Service Animations
===============================================*/

@media (min-width: 993px) {
    .acme-services.normal .column .single-item {
        border-width: 1px 0 1px 0;
        padding: var(--space-16) 0;
        margin-bottom: var(--space-8);
    }

    .acme-services.normal .column .single-item:before,
    .acme-services.normal .column .single-item:after {
        content: '';
        height: 120%;
        width: 1px;
        border-left: 1px dashed var(--color-sand);
        position: absolute;
        top: -10%;
        transition: all var(--transition-smooth);
    }

    .acme-services.normal .column .single-item:before {
        left: var(--space-4);
    }

    .acme-services.normal .column .single-item:after {
        right: var(--space-4);
    }

    .acme-services.normal .column .single-item:hover:after,
    .acme-services.normal .column .single-item:hover:before,
    .acme-services.normal .column .single-item:focus-within:after,
    .acme-services.normal .column .single-item:focus-within:before {
        height: 100%;
        top: 0;
        border-color: var(--color-primary);
    }

    .acme-services.normal .column .single-item:hover:before,
    .acme-services.normal .column .single-item:focus-within:before {
        left: 0;
    }

    .acme-services.normal .column .single-item:hover:after,
    .acme-services.normal .column .single-item:focus-within:after {
        right: 0;
    }

    .acme-services.normal .column .single-item:hover,
    .acme-services.normal .column .single-item:focus-within {
        border-radius: var(--radius-md);
        border-color: var(--color-primary);
    }
}

/*==============================================
    #FAQ / ACCORDIONS - Premium Style
===============================================*/

.acme-accordions .contact-page-content {
    text-align: center;
}

@media (min-width: 993px) {
    .acme-accordions .contact-page-content img {
        margin-bottom: -40px;
    }
}

.acme-accordions .contact-page-content .entry-title {
    display: none;
}

/*==============================================
    Accordion Title - Premium Design
===============================================*/

.accordion-title,
.accordion-title a {
    font-weight: var(--weight-medium);
    color: var(--color-navy);
    font-family: var(--font-serif-display);
}

.accordion-title {
    border: 1px solid var(--color-sand);
    padding: var(--space-4);
    font-weight: var(--weight-medium);
    background: var(--color-pearl);
    cursor: pointer;
    transition: all var(--transition-base);
    border-radius: var(--radius-md);
    margin-bottom: var(--space-2);
}

.accordion-title:hover {
    border-color: var(--color-primary);
    background: var(--color-cream);
    box-shadow: var(--shadow-gold-sm);
}

.accordion-title.active {
    border-color: var(--color-primary);
    background: var(--color-primary);
    color: var(--color-pearl);
}

.accordion-title.active a {
    color: var(--color-pearl);
}

/*==============================================
    Accordion Content
===============================================*/

.accordion-details {
    border: 1px solid var(--color-sand);
    border-top: none;
    display: none;
    padding: var(--space-5);
    background: var(--color-pearl);
    border-radius: 0 0 var(--radius-md) var(--radius-md);
    margin-top: calc(var(--space-2) * -1);
    margin-bottom: var(--space-4);
}

.accordion-content .accordion-item:first-child .accordion-details {
    display: block;
}

.accordion-details p {
    color: var(--color-slate);
    line-height: var(--leading-relaxed);
    margin-bottom: var(--space-4);
}

.accordion-details p:last-child {
    margin-bottom: 0;
}

/*==============================================
    Accordion Icon
===============================================*/

.accordion-icon {
    margin-right: 0;
    float: right;
    font-weight: var(--weight-light);
    font-size: var(--text-base);
    line-height: var(--leading-normal);
    color: var(--color-primary);
    transition: all var(--transition-base);
}

.accordion-title:hover .accordion-icon {
    transform: scale(1.2);
}

.accordion-title.active .accordion-icon {
    color: var(--color-pearl);
    transform: rotate(180deg);
}

/*==============================================
    Accordion in Sidebar
===============================================*/

.so-panel.widget_lawyer_zone_accordion .at-widget-title-wrapper .widget-title,
.so-panel.widget_lawyer_zone_accordion .at-widget-title-wrapper .at-subtitle {
    text-align: left;
}

.so-panel.widget_lawyer_zone_accordion .at-widget-title-wrapper .at-subtitle {
    width: auto;
}

.so-panel.widget_lawyer_zone_accordion .at-widget-title-wrapper:after {
    margin: 0;
}

/*==============================================
    #SCHEDULES - Premium Tab Design
===============================================*/

.schedule-title {
    transition: all var(--transition-smooth);
}

.schedule-title-wrapper {
    padding: 0;
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-md);
    background: var(--color-pearl);
    box-shadow: var(--shadow-sm);
}

.schedule-title-wrapper .schedule-title a {
    font-weight: var(--weight-normal);
    color: var(--color-slate);
    display: block;
    text-decoration: none;
    padding: var(--space-4) var(--space-5);
    transition: all var(--transition-base);
    font-family: var(--font-serif-display);
}

.schedule-title-wrapper .schedule-title:hover a {
    color: var(--color-primary);
    background: var(--color-cream);
}

.schedule-title-wrapper .schedule-title.active>a {
    font-weight: var(--weight-semibold);
    color: var(--color-pearl);
    background: var(--color-primary);
}

.schedule-title-wrapper .schedule-title a i {
    float: right;
    transition: transform var(--transition-base);
}

.schedule-title-wrapper .schedule-title:hover a i {
    transform: translateX(5px);
}

/*==============================================
    Schedule Content
===============================================*/

.schedule-content-wrapper {
    background: var(--color-pearl);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
}

.schedule-item-content {
    display: none;
}

.schedule-item-content.active {
    display: block;
    animation: fadeInUp var(--duration-smooth) ease-out;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.schedule-item-content .content-wrapper {
    padding: var(--space-6) 0;
}

.at-schedule .btn-reverse {
    color: var(--color-navy);
    border-color: var(--color-navy);
    transition: all var(--transition-smooth);
    border-radius: var(--radius-md);
    padding: var(--space-3) var(--space-6);
    font-weight: var(--weight-medium);
}

.at-schedule .btn-reverse:hover,
.at-schedule .btn-reverse:focus {
    color: var(--color-pearl);
    background: var(--color-primary);
    border-color: var(--color-primary);
    box-shadow: var(--shadow-gold);
}

.schedule-item-content .entry-header-title .entry-title {
    margin: 0;
    color: var(--color-navy);
    font-family: var(--font-serif-display);
}

/*==============================================
    #TEAMS WIDGET - Premium Card Design
===============================================*/

.acme-teams {
    overflow: visible;
    padding-bottom: 0;
}

.acme-teams .at-action-wrapper {
    margin: var(--space-10) auto;
}

.home .acme-teams .featured-entries-col.acme-slick-carausel {
    bottom: 0;
    margin-top: 100px;
    background: transparent;
    height: auto;
    min-height: auto;
}

.home .acme-teams .featured-entries-col.acme-slick-carausel:before,
.home .acme-teams .featured-entries-col.acme-slick-carausel:after {
    display: none;
}

.home .acme-teams .featured-entries-col [class*="col-"],
.home .acme-teams .featured-entries-col [class^="col-"] {
    padding: 0;
}

/*==============================================
    Team Item - Premium Card with Elevation
===============================================*/

.team-item {
    position: relative;
    z-index: 2;
    transition: all var(--transition-smooth);
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--color-pearl);
    box-shadow: var(--shadow-md);
}

.team-item:hover {
    box-shadow: var(--shadow-gold-xl);
    transform: translateY(-8px);
    z-index: 10;
}

.team-item:focus-within {
    box-shadow: var(--shadow-gold-xl);
    transform: translateY(-8px);
    z-index: 10;
}

/*==============================================
    Team Image - Grayscale Effect
===============================================*/

.team-item .team-img-box {
    overflow: hidden;
    position: relative;
}

.team-item .team-img-box::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom,
        transparent 50%,
        rgba(194, 182, 151, 0.1)
    );
    opacity: 0;
    transition: opacity var(--transition-smooth);
}

.team-item:hover .team-img-box::after,
.team-item:focus-within .team-img-box::after {
    opacity: 1;
}

.team-item .team-img-box img {
    filter: grayscale(100%);
    transition: all var(--transition-smooth);
    display: block;
    width: 100%;
}

.team-item:hover .team-img-box img,
.team-item:focus-within .team-img-box img {
    filter: grayscale(0);
    transform: scale(1.05);
}

/*==============================================
    Team Z-Index Management
===============================================*/

.home .acme-teams .single-list:hover+.single-list .team-item,
.home .acme-teams .single-list:focus-within+.single-list .team-item {
    z-index: -1;
}

.home .acme-teams .team-item:hover,
.home .acme-teams .team-item:focus-within {
    box-shadow: var(--shadow-2xl);
    z-index: 2;
}

.home .acme-teams .featured-entries-col.acme-slick-carausel .team-item:hover,
.home .acme-teams .featured-entries-col.acme-slick-carausel .team-item:focus-within {
    box-shadow: var(--shadow-gold-lg);
}

/*==============================================
    Team Author Link
===============================================*/

.team-author a {
    display: block;
    overflow: hidden;
}

/*==============================================
    Team Author Details - Premium Gold Accent
===============================================*/

.team-author-details {
    background: var(--color-cream);
    padding: var(--space-6) var(--space-8);
    color: var(--color-navy);
    position: relative;
    transition: all var(--transition-base);
}

.team-item:hover .team-author-details,
.team-item:focus-within .team-author-details {
    background: var(--color-primary);
}

.team-author-details::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg,
        var(--color-primary),
        var(--color-primary-light),
        var(--color-primary)
    );
    opacity: 0;
    transition: opacity var(--transition-base);
}

.team-item:hover .team-author-details::before,
.team-item:focus-within .team-author-details::before {
    opacity: 1;
}

.team-author-details h3,
.team-author-details h3 a,
.team-author-details p {
    margin: 0;
    font-weight: var(--weight-normal);
    transition: color var(--transition-base);
}

.team-author-details h3 {
    font-size: var(--text-xl);
    margin-bottom: var(--space-2);
    font-family: var(--font-serif-display);
    color: var(--color-navy);
}

.team-author-details h3 a {
    color: var(--color-navy);
}

.team-author-details p {
    color: var(--color-slate);
    font-size: var(--text-base);
    font-weight: var(--weight-light);
}

.team-item:hover .team-author-details h3,
.team-item:hover .team-author-details h3 a,
.team-item:hover .team-author-details p,
.team-item:focus-within .team-author-details h3,
.team-item:focus-within .team-author-details h3 a,
.team-item:focus-within .team-author-details p {
    color: var(--color-pearl);
}

/*==============================================
    Team Widget in Sidebar
===============================================*/

.so-panel.widget_lawyer_zone_team .acme-teams {
    margin-bottom: 0;
    padding-bottom: var(--space-10);
}

.so-panel.widget_lawyer_zone_team .acme-teams .at-widget-title-wrapper {
    margin-bottom: var(--space-20);
}

.so-panel.widget_lawyer_zone_team .acme-teams .featured-entries-col {
    bottom: 0;
}

.so-panel.widget_lawyer_zone_team .acme-teams .featured-entries-col [class*="col-"],
.so-panel.widget_lawyer_zone_team .acme-teams .featured-entries-col [class^="col-"] {
    padding-left: var(--space-4);
    padding-right: var(--space-4);
    margin-bottom: var(--space-4);
}

/*==============================================
    Team Home Layout
===============================================*/

.home .acme-teams .featured-entries-col {
    position: relative;
    z-index: 1;
    overflow: visible;
    min-height: 100%;
    background: var(--color-pearl);
}

.home .acme-teams .featured-entries-col:before,
.home .acme-teams .featured-entries-col:after {
    content: '';
    position: absolute;
    width: 100%;
    background: var(--color-pearl);
    bottom: 0px;
}

.home .acme-teams .featured-entries-col:before {
    left: -100%;
}

.home .acme-teams .featured-entries-col:after {
    right: -100%;
}

/*==============================================
    Team Mobile Styles
===============================================*/

@media only screen and (max-width: 767px) {
    .featured-entries-col .single-list,
    .acme-teams .featured-entries-col [class*="col-"],
    .acme-teams .featured-entries-col [class^="col-"],
    .home .acme-teams .featured-entries-col [class*="col-"],
    .home .acme-teams .featured-entries-col [class^="col-"] {
        padding: var(--space-3) var(--space-4);
    }

    .team-item:hover,
    .team-item:focus-within {
        box-shadow: var(--shadow-lg);
    }

    .home .acme-teams .featured-entries-col {
        background-color: transparent;
        padding-bottom: var(--space-10);
    }

    .home .acme-teams .featured-entries-col.acme-slick-carausel {
        padding-bottom: 0px;
    }

    .home .acme-teams .featured-entries-col:before,
    .home .acme-teams .featured-entries-col:after {
        display: none;
    }

    .so-panel.widget_lawyer_zone_team .acme-teams .featured-entries-col [class*="col-"],
    .so-panel.widget_lawyer_zone_team .acme-teams .featured-entries-col [class^="col-"] {
        padding-left: var(--space-2);
        padding-right: var(--space-2);
        margin-bottom: var(--space-4);
    }

    .so-panel.widget_lawyer_zone_team .acme-teams .featured-entries-col .team-author-details {
        padding: var(--space-3);
    }
}

@media only screen and (min-width: 768px) {
    .home .acme-teams .featured-entries-col {
        height: 378px;
    }

    .home .acme-teams .featured-entries-col:before,
    .home .acme-teams .featured-entries-col:after {
        height: 130px;
    }
}

@media only screen and (min-width: 993px) {
    .home .acme-teams .featured-entries-col {
        height: 391px;
    }

    .home .acme-teams .featured-entries-col:before,
    .home .acme-teams .featured-entries-col:after {
        height: 91px;
    }
}

@media only screen and (min-width: 1200px) {
    .home .acme-teams .featured-entries-col {
        height: 510px;
    }

    .home .acme-teams .featured-entries-col:before,
    .home .acme-teams .featured-entries-col:after {
        height: 147px;
    }
}

/*==============================================
    #TESTIMONIALS WIDGET - Premium Design
===============================================*/

.acme-testimonials {
    padding: var(--space-16) 0 var(--space-24);
    transform: translate3d(0, 0, 0);
}

.testimonial-content {
    position: relative;
}

/*==============================================
    Quote Icon - Premium Gold
===============================================*/

.testimonial-content::before {
    position: absolute;
    content: '\f10d';
    left: var(--space-3);
    top: var(--space-2);
    font-family: 'FontAwesome';
    color: var(--color-primary);
    font-size: var(--text-xl);
    z-index: 1;
    opacity: 0.3;
}

.testimonial-content p {
    line-height: var(--leading-relaxed);
    font-size: var(--text-base);
    font-weight: var(--weight-normal);
    font-style: italic;
    color: var(--color-slate);
}

.acme-testimonials h3 a {
    font-weight: var(--weight-medium);
    color: var(--color-navy);
    font-family: var(--font-serif-display);
}

.testimonial-author img {
    border-radius: var(--radius-full);
    width: 100%;
    max-width: 185px;
    display: inline-block;
    border: 3px solid var(--color-primary);
    box-shadow: var(--shadow-gold);
}

.acme-widget-carausel {
    display: none;
}

.testimonial-image {
    position: relative;
}

/*==============================================
    Testimonials with Background Image
===============================================*/

.acme-testimonials[style^="background-image:"] .at-widget-title-wrapper,
.acme-testimonials[style^="background-image:"] .at-widget-title-wrapper h2,
.acme-testimonials[style^="background-image:"] .testimonial-author-name,
.acme-testimonials[style^="background-image:"] .testimonial-author-name a {
    color: var(--color-pearl);
}

/*==============================================
    Testimonial Details Box - Premium Card
===============================================*/

.testimonial-details {
    background: var(--color-pearl);
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-lg);
    margin: 0 auto var(--space-8);
    padding: var(--space-8);
    position: relative;
    box-shadow: var(--shadow-lg);
    transition: all var(--transition-base);
}

.testimonial-details:hover {
    box-shadow: var(--shadow-gold-lg);
    border-color: var(--color-primary);
}

.testimonial-details p {
    margin-bottom: var(--space-3);
}

.testimonial-details p:last-of-type {
    margin-bottom: 0;
}

/*==============================================
    Testimonial Arrow - Premium Gold
===============================================*/

.testimonial-details::before {
    border-left: 15px solid transparent;
    border-top: 15px solid var(--color-primary);
    bottom: -16px;
    content: "";
    position: absolute;
    left: 14px;
    z-index: 2;
}

.testimonial-details::after {
    border-left: 13px solid transparent;
    border-top: 13px solid var(--color-pearl);
    bottom: -13px;
    content: "";
    position: absolute;
    left: 15px;
    z-index: 3;
}

/*==============================================
    Testimonial Author Info
===============================================*/

.testimonial-author .testimonial-image {
    float: left;
    width: 50px;
    height: 50px;
}

.testimonial-author .testimonial-author-name {
    display: inline-block;
    margin: var(--space-4) 0 0 var(--space-3);
    font-size: var(--text-lg);
    font-weight: var(--weight-medium);
    font-family: var(--font-serif-display);
    color: var(--color-navy);
}

/*==============================================
    Testimonials Responsive
===============================================*/

@media only screen and (max-width: 991px) {
    .testimonial-content {
        width: 100%;
    }

    .acme-testimonials .slick-arrow.next {
        right: 0;
        left: inherit;
    }

    .acme-testimonials .slick-arrow.prev {
        left: 0;
    }

    .acme-testimonials .slick-arrow {
        top: 50%;
        bottom: inherit;
        transform: translateY(-50%);
    }
}

@media only screen and (max-width: 768px) {
    .acme-testimonials .at-action-wrapper {
        overflow: visible;
    }
}

@media only screen and (min-width:768px) and (max-width:1024px) and (orientation:landscape) {
    .acme-testimonials .slick-arrow.next {
        left: 220px;
    }

    .acme-testimonials .slick-arrow.prev {
        left: 170px;
    }
}

@media only screen and (max-width:767px) {
    .acme-testimonials {
        padding: var(--space-8) 0;
    }

    .acme-testimonials .testimonial-item {
        margin-bottom: var(--space-8);
    }

    .acme-testimonials,
    .acme-testimonials .widget-title,
    .acme-testimonials p,
    .acme-testimonials h3,
    .acme-testimonials h3 a,
    .testimonial-content p {
        text-align: center;
    }

    .acme-testimonials .at-action-wrapper {
        overflow: visible;
        margin: 0 auto;
    }
}

/*==============================================
    #IMAGE AND LOGO WIDGET - Premium Style
===============================================*/

.widget_lawyer_zone_advanced_image_logo .single-item {
    text-align: center;
    padding: var(--space-6);
    transition: all var(--transition-base);
    border-radius: var(--radius-md);
}

.widget_lawyer_zone_advanced_image_logo .single-item:hover {
    background: var(--color-cream);
    box-shadow: var(--shadow-md);
}

.widget_lawyer_zone_advanced_image_logo .slick-list .single-item {
    border: 1px solid var(--color-sand);
    background: var(--color-pearl);
}

.widget_lawyer_zone_advanced_image_logo .single-item img {
    margin: 0 auto;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: all var(--transition-base);
}

.widget_lawyer_zone_advanced_image_logo .single-item:hover img {
    filter: grayscale(0);
    opacity: 1;
    transform: scale(1.05);
}

.widget_lawyer_zone_advanced_image_logo .slick-slider {
    overflow: visible;
}

.widget_lawyer_zone_advanced_image_logo .featured-entries-logo .single-list {
    padding: 0;
    border-top: 1px dashed var(--color-sand);
    border-left: 1px dashed var(--color-sand);
    margin-left: -1px;
    margin-right: -1px;
    margin-top: -1px;
    transition: border-color var(--transition-base);
}

.widget_lawyer_zone_advanced_image_logo .featured-entries-logo .single-list:hover {
    border-color: var(--color-primary);
}

.widget_lawyer_zone_advanced_image_logo .featured-entries-logo .single-list.slick-slide {
    border: medium none;
    margin: 0;
    padding-left: var(--space-4);
    padding-right: var(--space-4);
}

.widget_lawyer_zone_advanced_image_logo i.slick-arrow {
    width: 35px;
}

/*--------------------------------------------------------------
# END Widgets - Services, Teams, Testimonials
# PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Widgets - Gallery, Blog, Map, WooCommerce - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/

/*=================================================================
  PREMIUM DESIGN SYSTEM
  - CSS Variables aus 01-variables.css
  - Premium Gold-Akzente (#c2b697)
  - Elegante Hover-Effekte mit Scale/Transform
  - Premium Shadows & Transitions
  - Bessere Card-Designs
  - Isotope Gallery Premium-Styles
=================================================================*/


/*-----------------*\
    #Map Widget
\*-----------------*/
.acme-map {
    padding: 0;
}

.map-section {
    position: relative;
}

.gmap-container {
    height: 420px;
    overflow: hidden;
    position: relative;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg);
    transition: all var(--transition-smooth);
}

.gmap-container:hover {
    box-shadow: var(--shadow-xl);
    transform: translateY(-2px);
}


/*-----------------*\
    #WooCommerce Widgets - Premium Style
\*-----------------*/
.featured-entries-col.woocommerce ul.products li.product,
.featured-entries-col.woocommerce-page ul.products li.product {
    float: none;
    margin: 0;
    padding: 0;
    width: 100%;
    transition: all var(--transition-smooth);
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
    padding: var(--space-3) 0;
    margin: 0;
    font-size: var(--text-md);
    font-weight: var(--weight-semibold);
    color: var(--color-navy);
    transition: color var(--transition-base);
}

.woocommerce ul.products li.product .woocommerce-loop-category__title:hover,
.woocommerce ul.products li.product .woocommerce-loop-product__title:hover {
    color: var(--color-primary);
}

.woocommerce .star-rating,
.woocommerce ul.products li.product .star-rating {
    display: inline-block;
    float: none;
    color: var(--color-primary);
}

.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
    display: inline-block;
    color: var(--color-charcoal);
    font-weight: var(--weight-semibold);
}

.woocommerce ul.products li.product .price {
    font-size: var(--text-lg);
    color: var(--color-primary);
}

.woocommerce ul.products li.product .button {
    margin-top: 0;
    transition: all var(--transition-base);
}


/*-----------------*\
    #Gallery Filter - Premium Controls
\*-----------------*/
.fullwidth-row,
.fullwidth-container .row {
    margin: 0;
    padding: 0;
}

.filters {
    text-align: center;
    margin-bottom: var(--space-12);
    margin-top: var(--space-6);
    padding: var(--space-6);
    background: linear-gradient(135deg, var(--color-cream) 0%, var(--color-pearl) 100%);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-sm);
}

.filters .button {
    border-radius: var(--radius-lg);
    padding: var(--space-3) var(--space-6);
    font-size: var(--text-sm);
    font-weight: var(--weight-medium);
    letter-spacing: var(--tracking-wide);
    text-transform: uppercase;
    background: var(--color-pearl);
    color: var(--color-charcoal);
    border: 2px solid transparent;
    margin: var(--space-2);
    transition: all var(--transition-smooth);
    box-shadow: var(--shadow-sm);
    position: relative;
    overflow: hidden;
}

.filters .button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(194, 182, 151, 0.2), transparent);
    transition: left var(--duration-smooth);
}

.filters .button:hover {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary-dark);
    box-shadow: var(--shadow-gold), var(--shadow-md);
    transform: translateY(-2px);
}

.filters .button:hover::before {
    left: 100%;
}

.filters .button.is-checked {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    color: #fff;
    border-color: var(--color-primary-darker);
    box-shadow: var(--shadow-gold-lg), 0 4px 12px rgba(0, 0, 0, 0.15);
    transform: scale(1.05);
}

.filters .button:focus {
    outline: 3px solid rgba(194, 182, 151, 0.3);
    outline-offset: 2px;
}

.grid .gallery-inner-item img {
    width: 100%;
}

.acme-gallery [class*="col-"],
.acme-gallery [class^="col-"] {
    padding: 0;
}

.grid .button-group .button {
    font-size: var(--text-base);
}

.acme-gallery .read-more {
    margin-right: var(--space-3);
    box-shadow: none;
    border: none;
    font-size: var(--text-md);
    transition: all var(--transition-base);
}

.acme-gallery .read-more:not(.is-checked) {
    background: transparent;
    color: var(--color-charcoal);
}

.acme-gallery .read-more:not(.is-checked):hover {
    color: var(--color-primary);
    transform: translateX(5px);
}

.acme-gallery {
    padding: var(--space-10) 0 0;
}


/*-----------------*\
    #Gallery Items - Premium Cards
\*-----------------*/
.acme-gallery .gallery-inner-item {
    position: relative;
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-md);
    transition: all var(--transition-smooth);
    background: var(--color-navy);
    margin-bottom: var(--space-6);
}

.acme-gallery .gallery-inner-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    opacity: 0;
    z-index: 1;
    transition: opacity var(--transition-smooth);
}

.acme-gallery .gallery-inner-item:hover {
    box-shadow: var(--shadow-gold-xl), var(--shadow-2xl);
    transform: translateY(-8px) scale(1.02);
}

.acme-gallery .gallery-inner-item:hover::before {
    opacity: 0.15;
}

.acme-gallery .gallery-inner-item:hover .at-bottom-lower {
    visibility: visible;
    opacity: 1;
    transition: all var(--transition-smooth);
}

.acme-gallery .gallery-inner-item:hover .at-bottom-lower .gallery-button {
    bottom: 0;
}

.acme-gallery .gallery-inner-item:hover .at-bottom-lower h3 {
    top: 0;
}

/* Focus-within für Accessibility */
.acme-gallery .gallery-inner-item:focus-within {
    box-shadow: var(--shadow-gold-xl), var(--shadow-2xl);
    transform: translateY(-8px) scale(1.02);
    outline: 3px solid var(--color-primary);
    outline-offset: 3px;
}

.acme-gallery .gallery-inner-item:focus-within::before {
    opacity: 0.15;
}

.acme-gallery .gallery-inner-item:focus-within .at-bottom-lower {
    visibility: visible;
    opacity: 1;
    transition: all var(--transition-smooth);
}

.acme-gallery .gallery-inner-item:focus-within .at-bottom-lower .gallery-button {
    bottom: 0;
}

.acme-gallery .gallery-inner-item:focus-within .at-bottom-lower h3 {
    top: 0;
}


/*-----------------*\
    #Gallery Image Effects - Premium Transforms
\*-----------------*/
.at-gallery-item {
    overflow: hidden;
    position: relative;
}

.at-gallery-item img {
    width: 100%;
    transform: scale(1);
    transition: all var(--duration-slower) var(--ease-smooth);
    filter: brightness(0.95) contrast(1.05);
}

.at-gallery-item:hover img {
    transform: scale(1.15) rotate(2deg);
    filter: brightness(0.7) contrast(1.1) blur(3px);
}

.at-gallery-item:focus-within img {
    transform: scale(1.15) rotate(2deg);
    filter: brightness(0.7) contrast(1.1) blur(3px);
}


/*-----------------*\
    #Gallery Overlay - Premium Content Display
\*-----------------*/
.at-bottom-lower {
    padding: 0;
    position: absolute;
    top: 50%;
    width: 100%;
    z-index: 99;
    margin: 0 auto;
    text-align: center;
    transform: translateY(-50%);
    opacity: 0;
    visibility: hidden;
    transition: all var(--transition-smooth);
}

.at-gallery-item h3,
.at-gallery-item h3 a {
    margin: 0;
    padding: var(--space-2) var(--space-4);
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6),
                 0 0 20px var(--color-primary);
    color: #fff;
    font-weight: var(--weight-bold);
    letter-spacing: var(--tracking-wide);
    background: linear-gradient(135deg, rgba(194, 182, 151, 0.3) 0%, rgba(194, 182, 151, 0.1) 100%);
    backdrop-filter: blur(8px);
    border-radius: var(--radius-lg);
    transition: all var(--transition-base);
}

.at-gallery-item h3 a:hover {
    color: var(--color-primary-light);
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.8),
                 0 0 30px var(--color-primary);
}

.at-gallery-item h3 {
    margin-bottom: var(--space-6);
    display: inline-block;
    font-size: var(--text-xl);
    position: relative;
    top: -100px;
    transition: all var(--duration-smooth) var(--ease-bounce);
}


/*-----------------*\
    #Gallery Button - Premium Icon Styling
\*-----------------*/
.at-gallery-item .gallery-button {
    font-size: var(--text-md);
    line-height: 56px;
    width: 56px;
    height: 56px;
    text-align: center;
    border-radius: var(--radius-full);
    color: #fff;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    box-shadow: var(--shadow-gold), var(--shadow-lg);
    transition: all var(--transition-smooth);
    position: relative;
    bottom: -100px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(4px);
}

.at-gallery-item .gallery-button::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    border-radius: var(--radius-full);
    background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary-dark) 100%);
    z-index: -1;
    opacity: 0;
    transition: opacity var(--transition-base);
}

.at-gallery-item .gallery-button:hover {
    transform: scale(1.15) rotate(90deg);
    box-shadow: var(--shadow-gold-xl), var(--glow-gold-strong), var(--shadow-2xl);
    border-color: rgba(255, 255, 255, 0.6);
}

.at-gallery-item .gallery-button:hover::before {
    opacity: 1;
}

.at-gallery-item .gallery-button:focus {
    outline: 3px solid rgba(194, 182, 151, 0.5);
    outline-offset: 4px;
}


/*-----------------*\
    #Gallery + Contact Widget Adjustment
\*-----------------*/
.so-panel.widget_lawyer_zone_gallery_filter+.so-panel.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(1),
.so-panel.widget_lawyer_zone_gallery_filter+.so-panel.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(2),
.so-panel.widget_lawyer_zone_gallery_filter+.so-panel.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(3),
.so-panel.widget_lawyer_zone_gallery_filter+.so-panel.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(4) {
    margin-right: 0;
    width: 100%;
}


/*-----------------*\
    #Blog Widget - Premium Cards
\*-----------------*/
.single-post .single-feat .single-thumb,
.single-feat .single-thumb,
.image-wrap {
    position: relative;
    margin-bottom: var(--space-4);
    border-radius: var(--radius-xl);
    overflow: hidden;
}

.blog-item-wrapper article.post {
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-xl);
    background: var(--color-pearl);
    box-shadow: var(--shadow-md);
    transition: all var(--transition-smooth);
    overflow: hidden;
    position: relative;
}

.blog-item-wrapper article.post::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    transform: scaleY(0);
    transition: transform var(--transition-smooth);
}

.blog-item-wrapper article.post:hover {
    border-color: var(--color-primary);
    box-shadow: var(--shadow-gold-lg), var(--shadow-xl);
    transform: translateY(-6px);
}

.blog-item-wrapper article.post:hover::before {
    transform: scaleY(1);
}

.entry-title {
    margin: 0;
    font-weight: var(--weight-semibold);
    color: var(--color-navy);
    transition: color var(--transition-base);
}

.entry-title a {
    font-weight: var(--weight-semibold);
    color: var(--color-navy);
    transition: all var(--transition-base);
    position: relative;
    display: inline-block;
}

.entry-title a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    transition: width var(--transition-smooth);
}

.entry-title a:hover {
    color: var(--color-primary);
}

.entry-title a:hover::after {
    width: 100%;
}


/*-----------------*\
    #Blog Post Thumbnails - Premium Image Effects
\*-----------------*/
.acme-col-posts article.post .post-thumb {
    overflow: hidden;
    border-radius: var(--radius-xl);
    position: relative;
}

.acme-col-posts article.post .post-thumb img {
    transition: all var(--duration-slower) var(--ease-smooth);
    filter: brightness(0.98) contrast(1.05);
}

.acme-col-posts article.post:hover .post-thumb img {
    transform: scale(1.12) rotate(1deg);
    filter: brightness(0.85) contrast(1.1);
}

.acme-col-posts article.post:focus-within .post-thumb img {
    transform: scale(1.12) rotate(1deg);
    filter: brightness(0.85) contrast(1.1);
}

/* Premium Overlay Gradient */
.acme-col-posts article.post .post-thumb::before {
    bottom: 0;
    box-shadow: inset 0 -120px 100px -40px rgba(0, 0, 0, 0.7);
    content: "";
    display: block;
    height: 100%;
    left: 0;
    opacity: 0.9;
    position: absolute;
    width: 100%;
    z-index: 1;
    border-radius: var(--radius-xl);
    transition: opacity var(--transition-smooth);
}

.acme-col-posts article.post .post-thumb::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60%;
    background: linear-gradient(180deg,
                transparent 0%,
                rgba(194, 182, 151, 0.1) 50%,
                rgba(194, 182, 151, 0.2) 100%);
    z-index: 2;
    opacity: 0;
    transition: opacity var(--transition-smooth);
}

.acme-col-posts article.post:hover .post-thumb::after {
    opacity: 1;
}


/*-----------------*\
    #Blog Layout - Flexbox Grid
\*-----------------*/
.blog .content-area .site-main,
.archive .content-area .site-main {
    display: flex;
    flex-flow: row wrap;
    margin-left: -1%;
    margin-right: -1%;
    gap: var(--space-6);
}

.blog .content-area .site-main article.post,
.archive .content-area .site-main article.post {
    flex: 48%;
    margin-right: 1%;
    margin-left: 1%;
    transition: all var(--transition-smooth);
}

.single-post article.post {
    border-bottom: 1px solid var(--color-sand);
    padding-bottom: var(--space-8);
    margin-bottom: var(--space-8);
}


/*-----------------*\
    #Blog Entry Header - Premium Date Badge
\*-----------------*/
article.post .post-thumb .entry-header {
    position: absolute;
    top: var(--space-4);
    right: var(--space-4);
    z-index: 3;
    margin: 0;
    padding: var(--space-3) 0;
    border-radius: var(--radius-full);
    width: 64px;
    height: 64px;
    line-height: 1;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    box-shadow: var(--shadow-gold-lg), var(--shadow-xl);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 3px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(8px);
    transition: all var(--transition-smooth);
}

article.post:hover .post-thumb .entry-header {
    transform: scale(1.1) rotate(-5deg);
    box-shadow: var(--shadow-gold-xl), var(--glow-gold), var(--shadow-2xl);
    border-color: rgba(255, 255, 255, 0.6);
}

article.post .post-thumb .entry-header a {
    color: #fff;
    font-weight: var(--weight-bold);
    font-size: var(--text-md);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    transition: all var(--transition-base);
}

article.post .post-thumb .entry-header a:hover {
    transform: scale(1.05);
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

article.post .post-thumb .entry-header span {
    display: block;
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    opacity: 0.9;
}


/*--------------------------------------------------------------
# RESPONSIVE DESIGN - Premium Mobile Experience
--------------------------------------------------------------*/

/* Tablet Landscape */
@media only screen and (min-width:768px) and (max-width:1024px) {
    .details {
        font-size: var(--text-sm);
        line-height: var(--leading-normal);
    }

    .filters .button {
        padding: var(--space-2) var(--space-4);
        font-size: 0.75rem;
        margin: var(--space-1);
    }

    .at-gallery-item h3 {
        font-size: var(--text-lg);
    }

    article.post .post-thumb .entry-header {
        width: 56px;
        height: 56px;
        top: var(--space-3);
        right: var(--space-3);
    }
}

/* Mobile Devices */
@media only screen and (max-width:767px) {
    /* Gallery Filters */
    .fullwidth-container .at-widget-title-wrapper {
        padding: 0 var(--space-4);
    }

    .acme-gallery [class*="col-"].filters,
    .acme-gallery [class^="col-"].filters {
        padding: 0 var(--space-4);
    }

    .filters {
        margin-bottom: var(--space-8);
        padding: var(--space-4);
    }

    .filters .button {
        padding: var(--space-2) var(--space-3);
        font-size: 0.7rem;
        margin: var(--space-1);
        border-radius: var(--radius-md);
    }

    .acme-gallery .read-more {
        margin-bottom: var(--space-3);
        display: block;
        text-align: center;
    }

    /* Gallery Items */
    .acme-gallery .gallery-inner-item {
        margin-bottom: var(--space-4);
    }

    .at-gallery-item h3 {
        font-size: var(--text-base);
        margin-bottom: var(--space-4);
    }

    .at-gallery-item .gallery-button {
        width: 48px;
        height: 48px;
        line-height: 48px;
        font-size: var(--text-sm);
    }

    /* Blog Posts */
    .widget_lawyer_zone_posts_col .acme-col-posts .slick-list article .entry-content {
        position: static;
        width: 100%;
        padding: var(--space-3);
        box-shadow: none;
    }

    .widget_lawyer_zone_posts_col .acme-col-posts .slick-list article .image-wrap {
        width: auto;
    }

    .blog .content-area .site-main article.post,
    .archive .content-area .site-main article.post {
        flex: 100%;
        margin-right: 0;
        margin-left: 0;
    }

    .acme-col-posts .acme-slick-carausel {
        padding-right: 0;
        padding-left: 0;
    }

    .blog-item-wrapper article.post {
        margin-bottom: var(--space-4);
    }

    /* Date Badge */
    article.post .post-thumb .entry-header {
        width: 52px;
        height: 52px;
        top: var(--space-2);
        right: var(--space-2);
        padding: var(--space-2) 0;
    }

    article.post .post-thumb .entry-header a {
        font-size: var(--text-sm);
    }

    /* Map */
    .gmap-container {
        height: 320px;
        border-radius: var(--radius-md);
    }
}

/* Extra Small Mobile */
@media only screen and (max-width:480px) {
    .filters .button {
        padding: var(--space-2);
        font-size: 0.65rem;
        margin: var(--space-1);
    }

    .at-gallery-item h3 {
        font-size: var(--text-sm);
    }

    .at-gallery-item .gallery-button {
        width: 44px;
        height: 44px;
        line-height: 44px;
    }

    article.post .post-thumb .entry-header {
        width: 48px;
        height: 48px;
    }
}


/*--------------------------------------------------------------
# ACCESSIBILITY ENHANCEMENTS - Premium A11Y
--------------------------------------------------------------*/

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    .at-gallery-item img,
    .acme-col-posts article.post .post-thumb img {
        transform: none !important;
    }
}

/* High Contrast Mode Support */
@media (prefers-contrast: high) {
    .filters .button {
        border: 2px solid currentColor;
    }

    .at-gallery-item h3 a,
    .entry-title a {
        text-decoration: underline;
    }
}

/* Focus Visible (Modern Browsers) */
.filters .button:focus-visible,
.at-gallery-item .gallery-button:focus-visible,
.entry-title a:focus-visible {
    outline: 3px solid var(--color-primary);
    outline-offset: 3px;
    box-shadow: 0 0 0 6px rgba(194, 182, 151, 0.2);
}


/*--------------------------------------------------------------
# PRINT STYLES - Premium Print Layout
--------------------------------------------------------------*/
@media print {
    .filters,
    .at-gallery-item .gallery-button,
    article.post .post-thumb .entry-header {
        display: none;
    }

    .acme-gallery .gallery-inner-item,
    .blog-item-wrapper article.post {
        box-shadow: none;
        border: 1px solid #ddd;
        page-break-inside: avoid;
    }

    .at-gallery-item img,
    .acme-col-posts article.post .post-thumb img {
        transform: none;
        filter: none;
    }
}


/*--------------------------------------------------------------
# ISOTOPE/MASONRY PREMIUM ENHANCEMENTS
--------------------------------------------------------------*/

/* Isotope Container */
.grid {
    position: relative;
}

.grid::after {
    content: '';
    display: block;
    clear: both;
}

/* Isotope Item Sizing */
.grid-item {
    position: relative;
    margin-bottom: var(--space-6);
}

.grid-item--width2 {
    width: 100%;
}

/* Isotope Transitions */
.grid-item,
.grid-sizer {
    transition: transform var(--transition-smooth),
                opacity var(--transition-smooth);
}

/* Loading State */
.grid.are-images-unloaded {
    opacity: 0;
}

.grid.are-images-loaded {
    opacity: 1;
    transition: opacity var(--transition-smooth);
}

/* Isotope Animation States */
.isotope-item {
    z-index: 2;
}

.isotope-hidden.isotope-item {
    pointer-events: none;
    z-index: 1;
    opacity: 0;
}

/* Smooth Transitions for Filtering */
.isotope,
.isotope .isotope-item {
    transition-duration: 0.6s;
}

.isotope {
    transition-property: height, width;
}

.isotope .isotope-item {
    transition-property: transform, opacity;
}


/*--------------------------------------------------------------
# PREMIUM ANIMATIONS - Subtle Micro-Interactions
--------------------------------------------------------------*/

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

/* Staggered Animation for Gallery Items */
.acme-gallery .gallery-inner-item {
    animation: fadeInUp var(--duration-slow) var(--ease-smooth) backwards;
}

.acme-gallery .gallery-inner-item:nth-child(1) { animation-delay: 0ms; }
.acme-gallery .gallery-inner-item:nth-child(2) { animation-delay: 100ms; }
.acme-gallery .gallery-inner-item:nth-child(3) { animation-delay: 200ms; }
.acme-gallery .gallery-inner-item:nth-child(4) { animation-delay: 300ms; }
.acme-gallery .gallery-inner-item:nth-child(5) { animation-delay: 400ms; }
.acme-gallery .gallery-inner-item:nth-child(6) { animation-delay: 500ms; }

/* Loading Shimmer Effect */
.grid.is-loading .gallery-inner-item::before {
    animation: shimmer 2s infinite;
    background: linear-gradient(90deg,
                transparent 0%,
                rgba(194, 182, 151, 0.2) 50%,
                transparent 100%);
    background-size: 1000px 100%;
}


/*--------------------------------------------------------------
# END Widgets - Gallery, Blog, Map - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Widgets - Contact, Popup, Important Numbers - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/

/*-----------------*\
    #Contact Section
\*-----------------*/
.contact-form {
    overflow: hidden;
}

.contact-form .form-control {
    background-color: transparent;
    margin-bottom: var(--space-5);
    font-weight: var(--weight-light);
    border-width: 2px;
    border-color: var(--color-stone);
    color: var(--color-charcoal);
    font-family: var(--font-secondary);
    transition: all var(--transition-smooth);
    border-radius: var(--radius-md);
    padding: var(--space-3) var(--space-4);
}

.contact-form .form-control:hover {
    border-color: var(--color-primary-light);
    box-shadow: var(--shadow-gold-sm);
}

.contact-form .form-control:focus {
    border-color: var(--color-primary);
    box-shadow: var(--shadow-gold);
    outline: none;
    background-color: var(--color-pearl);
}

.contact-form input[type="text"],
.contact-form input[type="url"],
.contact-form input[type="email"] {
    height: 45px;
}

.contact-form textarea.form-control {
    min-height: 120px;
    resize: vertical;
}

.contact-form .entry-title {
    margin: 0;
    color: var(--color-navy);
    font-family: var(--font-serif-display);
    font-weight: var(--weight-semibold);
    letter-spacing: var(--tracking-tight);
}

.contact-form i {
    padding: var(--space-2);
    width: 25px;
    margin-right: var(--space-2);
    text-align: center;
    color: var(--color-primary);
    transition: transform var(--transition-base);
}

.contact-form i:hover {
    transform: scale(1.1);
}

/* Contact Page Content */
.acme-contact .contact-page-content {
    position: relative;
    z-index: var(--z-base);
    padding-top: var(--space-12);
    padding-right: var(--space-24);
    background: linear-gradient(to bottom, transparent, var(--color-pearl));
}

.acme-contact .contact-page-content h2 {
    margin-top: 0;
    margin-bottom: var(--space-8);
    font-weight: var(--weight-medium);
    font-size: var(--text-3xl);
    color: var(--color-navy);
    font-family: var(--font-serif-display);
    letter-spacing: var(--tracking-tight);
    position: relative;
    padding-bottom: var(--space-4);
}

.acme-contact .contact-page-content h2::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(to right, var(--color-primary), var(--color-primary-light));
    border-radius: var(--radius-full);
}

.acme-contact .contact-page-content h5 {
    margin-bottom: 0;
    color: var(--color-primary);
    font-weight: var(--weight-semibold);
    font-size: var(--text-md);
    letter-spacing: var(--tracking-wide);
    text-transform: uppercase;
}

.acme-contact .contact-page-content h4 {
    margin-bottom: var(--space-6);
    border-top: 1px solid var(--color-sand);
    padding-top: var(--space-5);
    color: var(--color-charcoal);
    font-family: var(--font-serif-display);
    font-weight: var(--weight-medium);
    font-size: var(--text-xl);
    letter-spacing: var(--tracking-tight);
}

.acme-contact .contact-page-content ul {
    margin-top: var(--space-5);
    margin-bottom: var(--space-5);
}

.acme-contact .contact-page-content ul li {
    border-bottom: none;
    display: block;
    padding-bottom: 0;
    padding-top: 0;
    color: var(--color-slate);
    line-height: var(--leading-relaxed);
    transition: color var(--transition-base);
}

.acme-contact .contact-page-content ul li:hover {
    color: var(--color-primary);
}

.acme-contact .contact-page-content .entry-title {
    margin-bottom: var(--space-5);
}

.acme-contact .contact-page-content .widget-title {
    font-size: var(--text-sm);
    font-weight: var(--weight-semibold);
    margin-bottom: var(--space-2);
    text-align: left;
    font-family: var(--font-secondary);
    color: var(--color-navy);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
}

.acme-contact .contact-page-content .panel-first-child {
    margin-top: var(--space-8);
}

.acme-contact .contact-page-content .so-panel ul {
    margin-top: var(--space-3);
}

.acme-contact .contact-page-content .so-panel ul li {
    font-size: var(--text-sm);
}

/* Social Links */
.acme-contact .contact-page-content .at-social {
    padding: 0;
}

.acme-contact .contact-page-content .at-social .container,
.acme-contact .contact-page-content .at-social [class*="col-"],
.acme-contact .contact-page-content .at-social [class^="col-"] {
    padding-left: 0;
    padding-right: 0;
}

.acme-contact .contact-page-content ul.socials {
    width: auto;
    text-align: left;
    display: flex;
    gap: var(--space-3);
    align-items: center;
}

.acme-contact .contact-page-content ul.socials li {
    display: inline-block;
}

.acme-contact .contact-page-content ul.socials li a {
    font-size: var(--text-lg);
    margin-right: 0;
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-full);
    background-color: var(--color-pearl);
    border: 1px solid var(--color-sand);
    color: var(--color-charcoal);
    transition: all var(--transition-smooth);
    box-shadow: var(--shadow-xs);
}

.acme-contact .contact-page-content ul.socials li a:hover {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: white;
    transform: translateY(-2px) scale(1.05);
    box-shadow: var(--shadow-gold);
}

.acme-contact .contact-page-content ul.socials li a:active {
    transform: translateY(0) scale(1);
}

/* Contact Form Layout */
.so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form label,
.so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form input:not([type="submit"]) {
    width: 100%;
    box-sizing: border-box;
}

.so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(1),
.so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(2),
.so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(3),
.so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(4) {
    width: 32%;
    display: inline-block;
    margin-right: 1.6%;
}

.so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(4) {
    margin-right: 0;
}

/* Contact Form Submit Button */
.contact-form input[type="submit"],
.contact-form button[type="submit"] {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    color: white;
    border: 2px solid var(--color-primary);
    padding: var(--space-3) var(--space-8);
    font-weight: var(--weight-semibold);
    font-size: var(--text-base);
    letter-spacing: var(--tracking-wide);
    text-transform: uppercase;
    border-radius: var(--radius-md);
    cursor: pointer;
    transition: all var(--transition-smooth);
    box-shadow: var(--shadow-md);
    position: relative;
    overflow: hidden;
}

.contact-form input[type="submit"]::before,
.contact-form button[type="submit"]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left var(--duration-slow);
}

.contact-form input[type="submit"]:hover::before,
.contact-form button[type="submit"]:hover::before {
    left: 100%;
}

.contact-form input[type="submit"]:hover,
.contact-form button[type="submit"]:hover {
    background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%);
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold-lg);
    border-color: var(--color-primary-light);
}

.contact-form input[type="submit"]:active,
.contact-form button[type="submit"]:active {
    transform: translateY(0);
    box-shadow: var(--shadow-md);
}


/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width:768px) and (max-width:1024px) {
    .acme-contact .contact-page-content {
        padding: 0 0 var(--space-12) 0;
    }
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width:767px) {
    .acme-contact .wpcf7-form label {
        width: 100%;
    }

    .acme-contact .at-widget-title-wrapper {
        margin-bottom: var(--space-20) !important;
    }

    .acme-contact .contact-page-content {
        position: relative;
        z-index: var(--z-base);
        padding-top: 0;
        padding-right: 0;
        padding-bottom: var(--space-8);
    }

    .acme-contact .contact-page-content h2 {
        font-size: var(--text-2xl);
    }

    .so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(1),
    .so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(2),
    .so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(3),
    .so-panel.widget.widget_lawyer_zone_contact .acme-contact .wpcf7-form p:nth-child(4) {
        width: 100%;
        display: block;
        margin-right: 0;
    }

    .acme-contact .contact-page-content ul.socials {
        justify-content: center;
    }
}


/*-----------------*\
    #Popup CSS / Magnific Popup - PREMIUM STYLE
\*-----------------*/
.mfp-bg {
    z-index: var(--z-modal-backdrop);
    background-color: rgba(26, 26, 46, 0.92);
    backdrop-filter: blur(var(--blur-md));
}

.mfp-wrap {
    z-index: var(--z-modal);
}

.mfp-iframe-holder .mfp-close:hover,
.mfp-image-holder .mfp-close:hover,
.mfp-iframe-holder .mfp-close:focus,
.mfp-image-holder .mfp-close:focus,
.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
    background: var(--color-primary);
    text-align: center;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: var(--radius-full);
    color: white;
    font-size: var(--text-xl);
    font-weight: var(--weight-light);
    transition: all var(--transition-smooth);
    box-shadow: var(--shadow-gold);
}

.mfp-iframe-holder .mfp-close:hover,
.mfp-image-holder .mfp-close:hover {
    background: var(--color-primary-light);
    transform: rotate(90deg) scale(1.1);
    box-shadow: var(--shadow-gold-lg);
}

button.mfp-arrow,
button.mfp-close {
    background: transparent !important;
    box-shadow: none !important;
    transition: all var(--transition-base);
}

button.mfp-arrow:hover {
    opacity: var(--opacity-hover);
    transform: scale(1.1);
}

.mfp-counter {
    font-size: var(--text-base);
    line-height: 2.5;
    text-align: left;
    width: 100%;
    color: var(--color-navy);
    background: linear-gradient(to bottom, white, var(--color-pearl));
    padding: 0 var(--space-4);
    font-family: var(--font-secondary);
    font-weight: var(--weight-medium);
    border-bottom: 2px solid var(--color-primary);
}

.mfp-bottom-bar {
    margin-top: -40px;
}

.mfp-container {
    padding: var(--space-10) var(--space-4);
}

.mfp-image-holder .mfp-content {
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-2xl);
}

.mfp-figure::after {
    box-shadow: var(--shadow-2xl);
    background: var(--color-navy);
}


/*-----------------*\
    #Important Numbers Widget - PREMIUM STYLE
\*-----------------*/
.skill-item {
    padding: var(--space-6);
    background-color: var(--color-pearl);
    border-radius: var(--radius-lg);
    border: 1px solid var(--color-sand);
    transition: all var(--transition-smooth);
    position: relative;
    overflow: hidden;
}

.skill-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(to bottom, var(--color-primary), var(--color-primary-light));
    transform: scaleY(0);
    transition: transform var(--transition-smooth);
    transform-origin: top;
}

.skill-item:hover::before {
    transform: scaleY(1);
}

.skill-item:hover {
    background-color: white;
    border-color: var(--color-primary-light);
    box-shadow: var(--shadow-gold-lg);
    transform: translateY(-4px);
}

.skill-item i {
    font-size: var(--text-2xl);
    margin-bottom: var(--space-5);
    width: 70px;
    height: 70px;
    position: relative;
    margin-right: var(--space-5);
    display: inline-block;
    line-height: 70px;
    border-radius: var(--radius-lg);
    border: 2px solid var(--color-primary);
    text-align: center;
    float: left;
    background: linear-gradient(135deg, var(--color-pearl) 0%, white 100%);
    color: var(--color-primary);
    transition: all var(--transition-smooth);
    box-shadow: var(--shadow-sm);
}

.skill-item:hover i {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
    color: white;
    border-color: var(--color-primary-light);
    transform: rotate(-5deg) scale(1.05);
    box-shadow: var(--shadow-gold);
}

.imp-number-wrap {
    font-size: var(--text-3xl);
    display: block;
    line-height: var(--leading-tight);
    color: var(--color-navy);
    font-family: var(--font-serif-display);
    font-weight: var(--weight-bold);
    letter-spacing: var(--tracking-tight);
    transition: color var(--transition-base);
}

.skill-item:hover .imp-number-wrap {
    color: var(--color-primary);
}

.skill-content-wrapper.margin-fixed {
    display: block;
}

.skill-content-wrapper h3 {
    vertical-align: top;
    margin: 0;
    padding: 0;
    font-weight: var(--weight-normal);
    font-size: var(--text-lg);
    color: var(--color-charcoal);
    font-family: var(--font-secondary);
    line-height: var(--leading-snug);
    margin-top: var(--space-2);
    transition: color var(--transition-base);
}

.skill-item:hover .skill-content-wrapper h3 {
    color: var(--color-navy);
}

/* Contact Info Styling */
.skill-content-wrapper p {
    margin-top: var(--space-3);
    color: var(--color-slate);
    font-size: var(--text-sm);
    line-height: var(--leading-relaxed);
}

.skill-content-wrapper a {
    color: var(--color-primary);
    text-decoration: none;
    transition: all var(--transition-base);
    font-weight: var(--weight-medium);
    position: relative;
}

.skill-content-wrapper a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0;
    height: 2px;
    background: var(--color-primary-light);
    transition: width var(--transition-smooth);
}

.skill-content-wrapper a:hover::after {
    width: 100%;
}

.skill-content-wrapper a:hover {
    color: var(--color-primary-light);
}

/* Widget Layout */
.widget_lawyer_zone_imp_number .single-list {
    margin-bottom: var(--space-6);
}

.widget_lawyer_zone_imp_number .single-list:last-child {
    margin-bottom: 0;
}

/* Animation for Important Numbers */
@keyframes countUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.skill-item .imp-number-wrap {
    animation: countUp var(--duration-smooth) var(--ease-out) forwards;
}

/* Responsive Tablet */
@media only screen and (max-width: 991px) {
    .skill-item {
        margin-bottom: var(--space-4);
        padding: var(--space-5);
    }

    .skill-item i {
        width: 60px;
        height: 60px;
        line-height: 60px;
        font-size: var(--text-xl);
        margin-right: var(--space-4);
    }

    .imp-number-wrap {
        font-size: var(--text-2xl);
    }

    .skill-content-wrapper h3 {
        font-size: var(--text-base);
    }
}

/* Responsive Mobile */
@media only screen and (max-width: 767px) {
    .skill-item {
        padding: var(--space-4);
        text-align: center;
    }

    .skill-item i {
        float: none;
        margin: 0 auto var(--space-4);
    }

    .skill-content-wrapper {
        text-align: center;
    }

    .imp-number-wrap {
        font-size: var(--text-xl);
    }

    .skill-content-wrapper h3 {
        font-size: var(--text-md);
    }
}


/*-----------------*\
    #Additional Premium Widget Enhancements
\*-----------------*/

/* Widget Containers */
.widget {
    background-color: var(--color-pearl);
    border-radius: var(--radius-lg);
    padding: var(--space-6);
    margin-bottom: var(--space-6);
    border: 1px solid var(--color-sand);
    transition: all var(--transition-smooth);
}

.widget:hover {
    box-shadow: var(--shadow-md);
    border-color: var(--color-primary-light);
}

/* Widget Titles */
.widget-title {
    color: var(--color-navy);
    font-family: var(--font-serif-display);
    font-weight: var(--weight-semibold);
    font-size: var(--text-xl);
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-3);
    border-bottom: 2px solid var(--color-primary);
    letter-spacing: var(--tracking-tight);
    position: relative;
}

.widget-title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 60px;
    height: 2px;
    background: var(--color-primary-light);
}

/* Widget Lists */
.widget ul {
    list-style: none;
    padding-left: 0;
}

.widget ul li {
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-sand);
    transition: all var(--transition-base);
}

.widget ul li:last-child {
    border-bottom: none;
}

.widget ul li:hover {
    padding-left: var(--space-2);
    color: var(--color-primary);
}

  /* Widget Links */
  .widget ul li a {
      color: var(--color-charcoal);
      text-decoration: none;
      transition: color var(--transition-base);
      display: block;
  }

  /* Footer Override - WEISS */
  .site-footer .widget ul li a,
  .footer-sidebar .widget ul li a {
      color: #ffffff;
  }

  .widget ul li a:hover {
      color: var(--color-primary);
  }

  /* Footer Hover - Gold */
  .site-footer .widget ul li a:hover,
  .footer-sidebar .widget ul li a:hover {
      color: var(--color-primary);
  }

/* Premium Focus States */
input:focus,
textarea:focus,
select:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* Premium Loading State */
.loading {
    position: relative;
    pointer-events: none;
    opacity: var(--opacity-disabled);
}

.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin: -10px 0 0 -10px;
    border: 3px solid var(--color-primary-light);
    border-top-color: var(--color-primary);
    border-radius: var(--radius-full);
    animation: spin 0.6s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}


/*--------------------------------------------------------------
# END Widgets - Contact, Popup, Important Numbers - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Footer Structure - PREMIUM LUXUS VERSION
# Layout, Sidebars, Content Area with Gold Accents & Premium Shadows
--------------------------------------------------------------*/

/*-----------------*\
    #CSS Variables - Premium Luxury Theme
\*-----------------*/
:root {
    /* Premium Gold Colors */
    --premium-gold-primary: #D4AF37;
    --premium-gold-light: #F4E5C2;
    --premium-gold-dark: #B8941E;
    --premium-gold-metallic: linear-gradient(135deg, #D4AF37 0%, #F4E5C2 50%, #D4AF37 100%);

    /* Premium Shadows */
    --premium-shadow-soft: 0 2px 8px rgba(212, 175, 55, 0.15);
    --premium-shadow-medium: 0 4px 16px rgba(212, 175, 55, 0.25);
    --premium-shadow-hard: 0 8px 32px rgba(212, 175, 55, 0.35);
    --premium-shadow-glow: 0 0 20px rgba(212, 175, 55, 0.4);
    --premium-shadow-inset: inset 0 1px 3px rgba(212, 175, 55, 0.2);

    /* Premium Dark Colors */
    --premium-dark-primary: #1a1a1a;
    --premium-dark-secondary: #2a2a2a;
    --premium-dark-tertiary: #3a3a3a;

    /* Premium White/Light Colors */
    --premium-white: #ffffff;
    --premium-white-soft: rgba(255, 255, 255, 0.95);
    --premium-white-muted: rgba(255, 255, 255, 0.85);

    /* Premium Border Colors */
    --premium-border-gold: rgba(212, 175, 55, 0.3);
    --premium-border-gold-solid: rgba(212, 175, 55, 0.5);
    --premium-border-dark: rgba(64, 64, 62, 0.4);

    /* Premium Spacing */
    --premium-spacing-xs: 8px;
    --premium-spacing-sm: 16px;
    --premium-spacing-md: 24px;
    --premium-spacing-lg: 32px;
    --premium-spacing-xl: 48px;

    /* Premium Typography */
    --premium-font-weight-light: 300;
    --premium-font-weight-normal: 400;
    --premium-font-weight-medium: 500;
    --premium-font-weight-semibold: 600;
    --premium-font-weight-bold: 700;

    /* Premium Transitions */
    --premium-transition-fast: 0.2s ease-in-out;
    --premium-transition-medium: 0.4s ease-in-out;
    --premium-transition-slow: 0.6s ease-in-out;
}

/*-----------------*\
    #Footer Base - Premium Enhancement
\*-----------------*/
.site-footer {
    position: relative;
    background: var(--premium-dark-primary);
    box-shadow: var(--premium-shadow-hard);
    border-top: 2px solid var(--premium-gold-primary);
}

.site-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--premium-gold-metallic);
    box-shadow: var(--premium-shadow-glow);
}

.site-footer .footer-columns {
    padding-top: var(--premium-spacing-lg);
    position: relative;
}

.modal-body .wpcf7-form label {
    width: 100%;
    color: var(--premium-white-muted);
    font-weight: var(--premium-font-weight-medium);
}

.site-footer .acme-gallery .read-more {
    margin-bottom: 5px;
    transition: all var(--premium-transition-medium);
}

.site-footer .acme-gallery .read-more:hover {
    color: var(--premium-gold-primary);
    text-shadow: var(--premium-shadow-glow);
}

.site-footer .acme-gallery .read-more:not(.is-checked),
#at-shortcode-bootstrap-modal .modal-header .modal-title,
#at-shortcode-bootstrap-modal .modal-header .close {
    color: var(--premium-white);
}

.site-footer .bottom {
    padding: 20px 0;
    overflow: hidden;
    background: var(--premium-dark-secondary);
    box-shadow: var(--premium-shadow-inset);
}

.site-footer .at-subtitle {
    text-align: left;
    width: 100%;
    color: var(--premium-gold-light);
    font-weight: var(--premium-font-weight-light);
}

.site-footer .at-feature-about .at-widget-title-wrapper {
    margin-bottom: 25px;
    border-bottom: 1px solid var(--premium-border-gold);
    padding-bottom: var(--premium-spacing-sm);
}

.site-footer .at-widget-title-wrapper {
    margin-bottom: 0;
    position: relative;
}

.site-footer .at-widget-title-wrapper::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 60px;
    height: 2px;
    background: var(--premium-gold-metallic);
    box-shadow: var(--premium-shadow-glow);
}

.site-footer .at-widget-title-wrapper:after {
    display: none;
}

@media only screen and (max-width: 767px) {

    .site-footer .text-right,
    .site-footer .text-left {
        text-align: center;
    }

    .site-footer .at-feature-about .at-widget-title-wrapper {
        margin-top: 0;
    }

    .site-footer .related-posts .widget-title,
    .site-footer .secondary-sidebar .widget-title,
    .site-footer .footer-columns .widget-title {
        margin-bottom: 0;
    }
}

/*-----------------*\
    #Footer Full Width - Premium
\*-----------------*/
.footer-ful-width .info-icon-details .icon-title {
    color: var(--premium-gold-primary);
    text-shadow: var(--premium-shadow-soft);
    font-weight: var(--premium-font-weight-semibold);
}

.footer-ful-width .socials {
    padding: var(--premium-spacing-lg) 0;
}

.footer-ful-width .socials li a,
.at-social .socials li a {
    font-size: 24px;
    margin-right: 20px;
    color: var(--premium-white);
    transition: all var(--premium-transition-medium);
}

.footer-ful-width .socials li a:hover,
.at-social .socials li a:hover {
    color: var(--premium-gold-primary);
    text-shadow: var(--premium-shadow-glow);
    transform: translateY(-3px) scale(1.1);
}

.at-social .socials li {
    display: inline-block;
    border: none;
}

.at-social .socials {
    width: 100%;
    text-align: center;
}

/*-----------------*\
    #Footer Premium Colors with Gold Accents
\*-----------------*/
.site-footer,
.site-footer h1,
.site-footer h1 a,
.site-footer h2,
.site-footer h2 a,
.site-footer h3,
.site-footer h3 a,
.site-footer h4,
.site-footer h4 a,
.site-footer h5,
.site-footer h5 a,
.site-footer h6,
.site-footer h6 a,
.site-footer .main-title,
.site-footer li,
.site-footer li a,
.site-footer .widget li a,
.site-footer a.btn-reverse {
    color: var(--premium-white);
    transition: color var(--premium-transition-medium);
}

.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6 {
    text-shadow: var(--premium-shadow-soft);
}

.site-footer h1:hover,
.site-footer h2:hover,
.site-footer h3:hover,
.site-footer h4:hover,
.site-footer h5:hover,
.site-footer h6:hover,
.site-footer .main-title:hover,
.site-footer li a:hover,
.site-footer .widget li a:hover {
    color: var(--premium-gold-primary);
    text-shadow: var(--premium-shadow-glow);
}

.site-footer select {
    color: #777;
    background: var(--premium-dark-secondary);
    border: 1px solid var(--premium-border-gold);
    box-shadow: var(--premium-shadow-soft);
    transition: all var(--premium-transition-medium);
}

.site-footer select:focus {
    border-color: var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-medium);
    outline: none;
}

.copy-right {
    padding: var(--premium-spacing-lg) 0 20px;
    margin-top: var(--premium-spacing-lg);
    border-top: 1px solid var(--premium-border-gold);
    background: var(--premium-dark-primary);
    position: relative;
}

.copy-right::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 1px;
    background: var(--premium-gold-metallic);
    box-shadow: var(--premium-shadow-glow);
}

.site-footer .at-gray-bg,
.site-footer .at-widgets,
.site-footer .blog-item-wrapper article.post {
    background: transparent;
}

.site-footer a.btn-reverse {
    border: 2px solid var(--premium-gold-primary);
    background: transparent;
    box-shadow: var(--premium-shadow-soft);
    transition: all var(--premium-transition-medium);
    position: relative;
    overflow: hidden;
}

.site-footer a.btn-reverse::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: var(--premium-gold-metallic);
    transition: left var(--premium-transition-medium);
    z-index: -1;
}

.site-footer a.btn-reverse:hover {
    color: var(--premium-dark-primary);
    border-color: var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-medium);
}

.site-footer a.btn-reverse:hover::before {
    left: 0;
}

.site-footer p {
    margin: 0;
    color: var(--premium-white-muted);
}

.site-footer .single-list {
    display: block;
    width: 100%;
    transition: all var(--premium-transition-medium);
}

.site-footer .single-list:hover {
    transform: translateX(5px);
}

.site-footer .image-wrap {
    float: left;
    width: 60px;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: var(--premium-shadow-soft);
    border: 1px solid var(--premium-border-gold);
}

.site-footer .entry-content {
    padding-left: 70px;
}

.site-footer article.post .post-thumb::before {
    display: none;
}

.site-footer article.post .post-thumb .entry-header {
    display: none;
}

.site-footer .entry-header-title .entry-title {
    font-size: 16px;
    font-weight: var(--premium-font-weight-medium);
    color: var(--premium-white);
    transition: all var(--premium-transition-medium);
}

.site-footer .entry-header-title .entry-title:hover {
    color: var(--premium-gold-primary);
    text-shadow: var(--premium-shadow-soft);
}

.site-footer article.post {
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px dashed var(--premium-border-gold);
}

.site-footer .single-list:last-child article.post {
    border: medium none;
}

.site-footer .at-widgets.acme-col-posts .widget-title {
    margin-top: 0px;
}

.site-footer .widget li {
    border-bottom: 1px dashed var(--premium-border-gold);
    padding: var(--premium-spacing-xs) 0;
    transition: all var(--premium-transition-medium);
}

.site-footer .widget li:hover {
    padding-left: var(--premium-spacing-xs);
    border-bottom-color: var(--premium-gold-primary);
}

.site-footer .widget li.cat-parent .children,
.site-footer .widget li.menu-item .sub-menu,
.site-footer .widget li.page_item_has_children .children,
.site-footer .widget li.cat-item .children {
    border-top: 1px dashed var(--premium-border-gold);
    background: var(--premium-dark-secondary);
    padding: var(--premium-spacing-xs);
    box-shadow: var(--premium-shadow-inset);
}

.site-footer .socials {
    text-align: left;
    padding-left: 20px;
    margin-top: 20px;
}

.site-footer .copy-right .socials {
    margin: 0;
    padding: 0;
}

.site-footer .socials li a {
    font-size: 16px;
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 50%;
    background: var(--premium-dark-secondary);
    border: 1px solid var(--premium-border-gold);
    box-shadow: var(--premium-shadow-soft);
    transition: all var(--premium-transition-medium);
}

.site-footer .socials li a:hover {
    background: var(--premium-gold-metallic);
    color: var(--premium-dark-primary);
    border-color: var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-glow);
    transform: translateY(-3px) scale(1.1);
}

.site-footer .footer-copyright p {
    text-transform: capitalize;
    color: var(--premium-gold-light);
    font-weight: var(--premium-font-weight-light);
}

.site-footer .widget-title {
    font-weight: var(--premium-font-weight-semibold);
    margin-top: 0;
    color: var(--premium-gold-primary);
    text-transform: uppercase;
    letter-spacing: 1px;
    position: relative;
    padding-bottom: var(--premium-spacing-sm);
    margin-bottom: var(--premium-spacing-md);
    text-shadow: var(--premium-shadow-soft);
}

.site-footer .widget-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 2px;
    background: var(--premium-gold-metallic);
    box-shadow: var(--premium-shadow-glow);
}

.site-footer .acme-col-posts .content-wrapper {
    overflow: hidden;
}

.site-footer .at-feature-about {
    margin-top: 0;
}

.site-footer .at-feature-about .at-widget-title-wrapper:after {
    display: none;
}

.site-footer .at-feature-about .at-widget-title-wrapper .at-subtitle {
    font-size: 14px;
    font-weight: var(--premium-font-weight-normal);
    color: var(--premium-gold-light);
}

.site-footer .at-feature-about .btn {
    margin-top: 10px;
    margin-bottom: 10px;
    background: var(--premium-gold-metallic);
    color: var(--premium-dark-primary);
    border: none;
    box-shadow: var(--premium-shadow-medium);
    font-weight: var(--premium-font-weight-semibold);
    transition: all var(--premium-transition-medium);
}

.site-footer .at-feature-about .btn:hover {
    box-shadow: var(--premium-shadow-hard);
    transform: translateY(-2px);
}

.site-footer .footer-sidebar .custom-html-widget b {
    font-weight: var(--premium-font-weight-semibold);
    font-size: 15px;
    color: var(--premium-gold-primary);
}

@media only screen and (max-width: 767px) {

    .site-footer .footer-sidebar:not(:first-child) .widget-title,
    .site-footer .at-widgets.acme-col-posts .widget-title {
        margin-top: var(--premium-spacing-lg);
        margin-bottom: 15px;
    }
}

/*-----------------*\
    #Social Links - Premium Gold Enhancement
\*-----------------*/
.socials a,
.socials a:hover,
.socials a:focus {
    color: var(--premium-white);
}

.socials a:hover,
.socials a:focus {
    color: var(--premium-gold-primary);
}

.socials {
    list-style: none;
    margin: 0 0 10px 0;
    padding: 0;
}

.socials li {
    display: inline-block;
}

.socials li a {
    text-align: center;
    line-height: 32px;
    display: inline-block;
    margin-right: var(--premium-spacing-sm);
    transition: all var(--premium-transition-medium);
    position: relative;
}

.socials li a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--premium-gold-metallic);
    opacity: 0;
    transition: opacity var(--premium-transition-medium);
    border-radius: 50%;
    z-index: -1;
}

.socials li a:hover::before {
    opacity: 0.2;
}

/*-----------------*\
    #Back to Top Button - Premium Gold
\*-----------------*/
.sm-up-container {
    display: none;
    height: 45px;
    right: 3px;
    margin-right: 22px;
    margin-top: auto;
    padding: 3px 6px;
    position: fixed;
    top: 85%;
    width: 45px;
    z-index: 60;
    border-radius: 50px;
    background: var(--premium-dark-secondary);
    border: 2px solid var(--premium-gold-primary);
    color: var(--premium-gold-primary);
    line-height: 36px;
    text-align: center;
    box-shadow: var(--premium-shadow-medium);
    transition: all var(--premium-transition-medium);
}

.sm-up-container:hover,
.sm-up-container:focus {
    background: var(--premium-gold-metallic);
    color: var(--premium-dark-primary);
    border-color: var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-glow);
    transform: translateY(-3px) scale(1.1);
}

.sm-up {
    font-size: 20px;
    color: inherit;
    transition: all var(--premium-transition-fast);
}

/*-----------------*\
    #Sidebars - Premium Enhancement
\*-----------------*/
.site-content {
    margin: 0 auto;
    margin-top: var(--premium-spacing-lg);
}

#primary {
    float: left;
    width: 69.5%;
    display: block;
    margin-bottom: 60px;
}

.secondary-sidebar {
    float: right;
    width: 28%;
}

.secondary-sidebar .container {
    max-width: 100%;
}

.secondary-sidebar .container .row>div,
.secondary-sidebar .form-group>div {
    width: 100%;
}

/*** RIGHT-SIDEBAR ***/
.right-sidebar #primary {
    float: left;
}

.right-sidebar .secondary-sidebar {
    float: right;
}

.secondary-sidebar .widget {
    padding-left: 7.5px;
    padding-right: 7.5px;
    background: var(--premium-dark-secondary);
    border: 1px solid var(--premium-border-gold);
    border-radius: 4px;
    box-shadow: var(--premium-shadow-soft);
    margin-bottom: var(--premium-spacing-md);
    padding: var(--premium-spacing-md);
    transition: all var(--premium-transition-medium);
}

.secondary-sidebar .widget:hover {
    border-color: var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-medium);
}

/*** LEFT-SIDEBAR ***/
.left-sidebar #primary {
    float: right;
}

.left-sidebar .secondary-sidebar {
    float: left;
}

/*** NO-SIDEBAR ***/
.no-sidebar #primary {
    width: 100%;
}

/*** BOTH-SIDEBAR ***/
.both-sidebar #primary-wrap {
    float: left;
    width: 73%;
}

.both-sidebar #primary-wrap #secondary-left {
    float: left;
    width: 32%;
}

.both-sidebar #primary-wrap #primary {
    float: right;
    width: 65%;
}

.both-sidebar #secondary-right {
    float: right;
    width: 25%;
}

/*middle column*/
.middle-col #primary {
    float: none;
    margin: 0 auto;
    width: 70%;
}

@media only screen and (max-width: 767px) {
    .site-content {
        margin-top: 2em;
    }

    .inner-main-title {
        margin-bottom: var(--premium-spacing-lg);
    }

    /*** SIDEBAR ***/
    #primary,
    .both-sidebar #primary,
    .middle-col #primary,
    .both-sidebar #primary-wrap #primary,
    .left-sidebar #primary {
        margin: 0 0 20px;
        width: 100%;
    }

    .secondary-sidebar,
    .both-sidebar #primary-wrap,
    .both-sidebar #primary-wrap #secondary-left,
    .both-sidebar #secondary-right,
    .middle-col .secondary-sidebar,
    .right-sidebar .secondary-sidebar,
    .left-sidebar .secondary-sidebar,
    .no-sidebar .secondary-sidebar {
        clear: both;
        float: none;
        margin: 0 0 20px;
        width: 100%;
    }
}

/*-----------------*\
    #Premium Luxury Animations
\*-----------------*/
@keyframes goldShimmer {
    0% {
        background-position: -100% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

.premium-shimmer {
    background: linear-gradient(90deg,
        var(--premium-gold-dark) 0%,
        var(--premium-gold-primary) 50%,
        var(--premium-gold-light) 75%,
        var(--premium-gold-primary) 100%);
    background-size: 200% auto;
    animation: goldShimmer 3s linear infinite;
}

/*--------------------------------------------------------------
# END Footer Structure - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Footer Widgets - PREMIUM LUXUS VERSION with CSS Variables & Gold Accents
--------------------------------------------------------------*/

/*-----------------*\
    #CSS Variables
\*-----------------*/
:root {
    /* Premium Gold Palette */
    --premium-gold: #D4AF37;
    --premium-gold-light: #F4D03F;
    --premium-gold-dark: #B8960F;
    --premium-gold-metallic: linear-gradient(135deg, #D4AF37 0%, #F4D03F 50%, #D4AF37 100%);

    /* Premium Neutrals */
    --premium-charcoal: #2C2C2C;
    --premium-charcoal-light: #3a3a3a;
    --premium-white: #FAFAFA;
    --premium-off-white: #F5F5F5;

    /* Premium Border Colors */
    --premium-border: rgba(212, 175, 55, 0.2);
    --premium-border-light: rgba(212, 175, 55, 0.1);
    --premium-border-accent: rgba(212, 175, 55, 0.4);

    /* Premium Shadows */
    --premium-shadow-sm: 0 2px 8px rgba(212, 175, 55, 0.15);
    --premium-shadow-md: 0 4px 16px rgba(212, 175, 55, 0.2), 0 2px 8px rgba(0, 0, 0, 0.1);
    --premium-shadow-lg: 0 8px 24px rgba(212, 175, 55, 0.25), 0 4px 12px rgba(0, 0, 0, 0.15);
    --premium-shadow-xl: 0 12px 40px rgba(212, 175, 55, 0.3), 0 6px 20px rgba(0, 0, 0, 0.2);
    --premium-shadow-glow: 0 0 20px rgba(212, 175, 55, 0.4);

    /* Premium Text Shadows */
    --premium-text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    --premium-text-glow: 0 0 10px rgba(212, 175, 55, 0.5);

    /* Premium Transitions */
    --premium-transition-smooth: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    --premium-transition-bounce: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);

    /* Premium Typography */
    --premium-font-weight-light: 300;
    --premium-font-weight-normal: 400;
    --premium-font-weight-medium: 500;
    --premium-font-weight-semibold: 600;
    --premium-font-weight-bold: 700;
}

/*-----------------*\
    #Common Widgets
\*-----------------*/
.widget ul {
    list-style: outside none none;
    padding: 0;
    margin: 0;
}

.widget ul ul {
    border-bottom: none;
    padding-bottom: 0;
}

.widget ul .sub-menu {
    margin-bottom: -8px;
}

.widget ul ul li:first-child,
.widget ul ul li:last-child {
    margin: 0;
}

/*common - PREMIUM ENHANCED */
.widget li,
.widget ul li {
    border-bottom: 1px solid var(--premium-border);
    display: block;
    padding-bottom: 12px;
    padding-top: 12px;
    position: relative;
    transition: var(--premium-transition-smooth);
}

.widget li::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    background: var(--premium-gold-metallic);
    transition: var(--premium-transition-smooth);
    box-shadow: var(--premium-shadow-glow);
}

.widget li:hover::before {
    width: 100%;
}

.widget li:hover {
    padding-left: 8px;
    border-bottom-color: var(--premium-border-accent);
}

.widget li.cat-parent {
    padding-bottom: 0;
    border-bottom: medium none;
}

.widget li.cat-parent .children,
.widget li.menu-item .sub-menu,
.widget li.page_item_has_children .children,
.widget li.cat-item .children {
    border-top: 1px solid var(--premium-border);
    margin-top: 12px;
    background: linear-gradient(to bottom, var(--premium-border-light), transparent);
    padding: 8px 0;
    border-radius: 4px;
}

.widget ul ul li:last-child {
    padding-bottom: 0;
}

.widget li.menu-item .sub-menu li:last-child {
    padding-bottom: 12px;
}

.widget li li {
    padding-left: 20px;
    position: relative;
}

.widget li li::after {
    content: "→";
    position: absolute;
    left: 0;
    color: var(--premium-gold);
    opacity: 0;
    transition: var(--premium-transition-smooth);
    font-weight: var(--premium-font-weight-bold);
}

.widget li li:hover::after {
    opacity: 1;
}

.widget li:last-child {
    border: none;
}

  /* Widget Links - NUR für Non-Footer-Widgets (Footer hat eigene Farbregelung via Customizer) */
  body:not(.site-footer) .widget li a,
  .sidebar .widget li a,
  .secondary-sidebar .widget li a {
      color: var(--premium-charcoal-light);
      text-decoration: none;
      transition: var(--premium-transition-smooth);
      font-weight: var(--premium-font-weight-medium);
      position: relative;
      display: inline-block;
  }

.widget li a::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--premium-gold-metallic);
    transition: var(--premium-transition-smooth);
    box-shadow: var(--premium-shadow-sm);
}

.widget li a:hover {
    color: var(--premium-gold-dark);
    transform: translateX(4px);
    text-shadow: var(--premium-text-shadow);
}

.widget li a:hover::after {
    width: 100%;
}

.widget select {
    background: linear-gradient(to bottom, var(--premium-white), var(--premium-off-white));
    color: var(--premium-charcoal-light);
    border: 2px solid var(--premium-border);
    max-width: 100%;
    padding: 12px 20px;
    border-radius: 8px;
    box-shadow: var(--premium-shadow-sm);
    transition: var(--premium-transition-smooth);
    font-weight: var(--premium-font-weight-medium);
    cursor: pointer;
}

.widget select:hover {
    border-color: var(--premium-gold);
    box-shadow: var(--premium-shadow-md);
    background: var(--premium-white);
}

.widget select:focus {
    outline: none;
    border-color: var(--premium-gold-dark);
    box-shadow: var(--premium-shadow-lg), var(--premium-shadow-glow);
}

.widget select,
.widget.widget_search:not(:first-child) .search-block {
    margin-top: 30px;
}

.footer-sidebar .widget li a {
    color: var(--premium-white);
    text-shadow: var(--premium-text-shadow);
}

.footer-sidebar .widget li a:hover {
    color: var(--premium-gold-light);
    text-shadow: var(--premium-text-glow);
}

/*-----------------*\
    #Tags Cloud - PREMIUM ENHANCED
\*-----------------*/
.tagcloud a {
    display: inline-block;
    margin: 6px;
    padding: 8px 16px;
    font-size: 16px !important;
    border: 2px solid var(--premium-border);
    border-radius: 25px;
    background: linear-gradient(135deg, var(--premium-white) 0%, var(--premium-off-white) 100%);
    color: var(--premium-charcoal-light);
    font-weight: var(--premium-font-weight-semibold);
    text-decoration: none;
    transition: var(--premium-transition-bounce);
    box-shadow: var(--premium-shadow-sm);
    position: relative;
    overflow: hidden;
}

.tagcloud a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: var(--premium-gold-metallic);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: var(--premium-transition-smooth);
    opacity: 0.2;
    z-index: 0;
}

.tagcloud a:hover::before {
    width: 300px;
    height: 300px;
}

.tagcloud a:hover {
    border-color: var(--premium-gold);
    color: var(--premium-gold-dark);
    box-shadow: var(--premium-shadow-md);
    transform: translateY(-3px) scale(1.05);
}

.tagcloud a:active {
    transform: translateY(-1px) scale(1.02);
    box-shadow: var(--premium-shadow-sm);
}

/*-----------------*\
    #Search Widget - PREMIUM ENHANCED
\*-----------------*/
.widget .search-block {
    width: 96%;
    float: none;
}

.search-block {
    display: inline-block;
    position: relative;
    color: var(--premium-charcoal-light);
}

.no-results .search-block,
.error404 #primary .page-content .search-block,
.search-no-results #primary .page-content .search-block {
    float: none;
    width: 50%;
}

.search-block input#menu-search,
.widget_search input#s {
    font-size: 14px;
    line-height: 31px;
    height: 55px;
    padding: 4px 60px 4px 20px;
    width: 100%;
    border: 2px solid var(--premium-border);
    border-radius: 30px;
    background: linear-gradient(to right, var(--premium-white), var(--premium-off-white));
    color: var(--premium-charcoal-light);
    transition: var(--premium-transition-smooth);
    box-shadow: var(--premium-shadow-sm);
    font-weight: var(--premium-font-weight-medium);
}

.search-block input#menu-search::placeholder,
.widget_search input#s::placeholder {
    color: rgba(58, 58, 58, 0.5);
    font-weight: var(--premium-font-weight-normal);
}

.search-block input#menu-search:hover,
.widget_search input#s:hover {
    border-color: var(--premium-border-accent);
    box-shadow: var(--premium-shadow-md);
    background: var(--premium-white);
}

.search-block input#menu-search:focus,
.widget_search input#s:focus {
    outline: none;
    border-color: var(--premium-gold);
    box-shadow: var(--premium-shadow-lg), var(--premium-shadow-glow);
    background: var(--premium-white);
}

.search-block #searchsubmit,
.widget_search #searchsubmit {
    background: var(--premium-gold-metallic);
    border: 2px solid var(--premium-gold);
    border-radius: 50%;
    font-size: 20px;
    height: 46px;
    width: 46px;
    position: absolute;
    right: 5px;
    top: 5px;
    color: var(--premium-white);
    cursor: pointer;
    transition: var(--premium-transition-bounce);
    box-shadow: var(--premium-shadow-md);
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-block #searchsubmit:hover,
.widget_search #searchsubmit:hover {
    transform: rotate(90deg) scale(1.1);
    box-shadow: var(--premium-shadow-lg), var(--premium-shadow-glow);
    background: linear-gradient(135deg, var(--premium-gold-light) 0%, var(--premium-gold) 50%, var(--premium-gold-dark) 100%);
}

.search-block #searchsubmit:active,
.widget_search #searchsubmit:active {
    transform: rotate(90deg) scale(1.05);
    box-shadow: var(--premium-shadow-sm);
}

.no-results.not-found {
    background: linear-gradient(135deg, var(--premium-white) 0%, var(--premium-off-white) 100%);
    text-align: center;
    padding: 50px;
    border: 2px solid var(--premium-border);
    border-radius: 16px;
    box-shadow: var(--premium-shadow-lg);
    position: relative;
    overflow: hidden;
}

.no-results.not-found::before {
    content: "";
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: var(--premium-gold-metallic);
    z-index: -1;
    border-radius: 16px;
    opacity: 0.1;
}

.no-results.not-found .page-content {
    margin-top: 0;
}

.no-results.not-found .search-block {
    margin-top: 25px;
}

/*-----------------*\
    #Sidebar Styles - PREMIUM ENHANCED
\*-----------------*/
.sidebar .widget-title {
    font-weight: var(--premium-font-weight-bold);
    color: var(--premium-charcoal);
    position: relative;
    padding-bottom: 15px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    font-size: 1.1em;
}

.sidebar .widget-title::after {
    content: "";
    display: block;
    position: absolute;
    height: 3px;
    width: 60px;
    left: 0;
    bottom: 0 !important;
    background: var(--premium-gold-metallic);
    border-radius: 2px;
    box-shadow: var(--premium-shadow-sm), var(--premium-shadow-glow);
    transition: var(--premium-transition-smooth);
}

.sidebar .widget:hover .widget-title::after {
    width: 80px;
    box-shadow: var(--premium-shadow-md), var(--premium-shadow-glow);
}

.sidebar .widget:not(:first-child) {
    margin-top: 60px;
    padding-top: 30px;
    border-top: 1px solid var(--premium-border-light);
}

.sidebar .widget:last-child {
    margin-bottom: 60px;
    padding-bottom: 30px;
}

.sidebar .widget {
    background: linear-gradient(to bottom, transparent, var(--premium-border-light));
    padding: 25px;
    border-radius: 12px;
    transition: var(--premium-transition-smooth);
    position: relative;
}

.sidebar .widget::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 12px;
    padding: 2px;
    background: var(--premium-gold-metallic);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    opacity: 0;
    transition: var(--premium-transition-smooth);
}

.sidebar .widget:hover {
    box-shadow: var(--premium-shadow-md);
    background: linear-gradient(135deg, var(--premium-white) 0%, var(--premium-off-white) 100%);
}

.sidebar .widget:hover::before {
    opacity: 0.3;
}

/*-----------------*\
    #Premium Animations
\*-----------------*/
@keyframes premium-shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

@keyframes premium-glow-pulse {
    0%, 100% {
        box-shadow: var(--premium-shadow-md);
    }
    50% {
        box-shadow: var(--premium-shadow-lg), var(--premium-shadow-glow);
    }
}

.premium-shimmer {
    background: linear-gradient(
        to right,
        transparent 0%,
        rgba(212, 175, 55, 0.2) 50%,
        transparent 100%
    );
    background-size: 1000px 100%;
    animation: premium-shimmer 3s infinite;
}

/*--------------------------------------------------------------
# END Footer Widgets - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Inner Pages PREMIUM LUXUS VERSION - Blog, Archive, Posts, Navigation, Pagination
--------------------------------------------------------------*/

/*-----------------*\
    #CSS Variables - Premium Gold Theme
\*-----------------*/
:root {
    /* Premium Gold Colors */
    --premium-gold: #D4AF37;
    --premium-gold-light: #F4E4C1;
    --premium-gold-dark: #B8941E;
    --premium-gold-metallic: #CFB53B;
    --premium-gold-gradient: linear-gradient(135deg, #D4AF37 0%, #F4E4C1 50%, #D4AF37 100%);

    /* Premium Blacks & Grays */
    --premium-black: #1a1a1a;
    --premium-gray-dark: #2d2d2d;
    --premium-gray-medium: #4a4a4a;
    --premium-gray-light: #f5f5f5;
    --premium-gray-ultra-light: #fafafa;

    /* Premium Shadows */
    --premium-shadow-sm: 0 2px 8px rgba(212, 175, 55, 0.15);
    --premium-shadow-md: 0 4px 16px rgba(212, 175, 55, 0.2), 0 2px 8px rgba(0, 0, 0, 0.08);
    --premium-shadow-lg: 0 8px 32px rgba(212, 175, 55, 0.25), 0 4px 16px rgba(0, 0, 0, 0.12);
    --premium-shadow-xl: 0 12px 48px rgba(212, 175, 55, 0.3), 0 6px 24px rgba(0, 0, 0, 0.15);
    --premium-shadow-glow: 0 0 20px rgba(212, 175, 55, 0.4), 0 0 40px rgba(212, 175, 55, 0.2);

    /* Premium Borders */
    --premium-border: 1px solid var(--premium-gold-light);
    --premium-border-gold: 2px solid var(--premium-gold);

    /* Premium Typography */
    --premium-font-size-sm: 14px;
    --premium-font-size-base: 16px;
    --premium-font-size-lg: 18px;
    --premium-font-size-xl: 20px;

    /* Premium Spacing */
    --premium-spacing-xs: 8px;
    --premium-spacing-sm: 12px;
    --premium-spacing-md: 20px;
    --premium-spacing-lg: 30px;
    --premium-spacing-xl: 40px;

    /* Premium Transitions */
    --premium-transition-fast: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --premium-transition-smooth: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    --premium-transition-elegant: all 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

/*-----------------*\
    #Post Meta - Premium Styling
\*-----------------*/
 .posted-on,
  .author.vcard,
  .comments-link,
  .edit-link,
  .tags-links {
      margin-right: var(--premium-spacing-sm);
      display: inline-block;
      position: relative;
  }

  /* Premium Fix: cat-links needs block display for vertical stacking */
  .cat-links {
      display: block;
      position: relative;
      text-align: center;
      width: 100%;
      margin-bottom: var(--premium-spacing-sm);
  }

.posted-on a,
.author.vcard a,
.cat-links a,
.comments-link a,
.edit-link a,
.tags-links a,
.byline a,
.nav-links a {
    color: var(--premium-gray-medium);
    font-size: var(--premium-font-size-base);
    transition: var(--premium-transition-fast);
    font-weight: 500;
    letter-spacing: 0.3px;
    position: relative;
}

.posted-on a:hover,
.author.vcard a:hover,
.cat-links a:hover,
.comments-link a:hover,
.edit-link a:hover,
.tags-links a:hover,
.byline a:hover,
.nav-links a:hover {
    color: var(--premium-gold);
    text-shadow: 0 0 8px rgba(212, 175, 55, 0.3);
}

/*-----------------*\
    #Article/Post Styles - Premium Edition
\*-----------------*/
article.post .content-wrapper,
article.page .content-wrapper {
    padding: 0;
    background: linear-gradient(to bottom, var(--premium-gray-ultra-light) 0%, #ffffff 100%);
}

 /* Premium Fix: Compact entry-footer in Related Posts */
  .slick-list article.post .entry-footer,
  .related-posts article.post .entry-footer,
  .acme-col-posts article.post .entry-footer {
      padding: var(--premium-spacing-xs) var(--premium-spacing-sm);  /* ← KLEIN! ~8-12px */
      margin-bottom: 0;                                /* ← Kein extra Margin */
      font-size: var(--premium-font-size-xs);          /* ← Kleinere Schrift */
      background: transparent;                         /* ← KEIN Hintergrund */
      border-top: none;                                /* ← KEIN Border */
      box-shadow: none;                                /* ← KEIN Schatten */
  }

  .slick-list article.post .entry-footer span,
  .related-posts article.post .entry-footer span,
  .acme-col-posts article.post .entry-footer span {
      margin-right: var(--premium-spacing-xs);         /* ← Weniger Abstand */
  }

  .slick-list article.post .entry-footer i,
  .related-posts article.post .entry-footer i,
  .acme-col-posts article.post .entry-footer i {
      font-size: var(--premium-font-size-xs);          /* ← Kleinere Icons */
  }

article.post .entry-header,
article.page .entry-header {
    position: relative;
    z-index: 1;
    padding: var(--premium-spacing-lg);
    background: linear-gradient(135deg, rgba(244, 228, 193, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
}

 article.post .no-image .entry-header,
  article.page .no-image .entry-header,
  .slick-list article.post .no-image .entry-content .entry-header,
  .slick-list article.page .no-image .entry-content .entry-header,
  .slick-list article.post .entry-content .entry-header,
  .slick-list article.page .entry-content .entry-header {
      margin-top: 0;
      padding-left: 0;
      padding-right: 0;
      width: 100%;
  }

  article.post .entry-header .cat-links,
  article.page .entry-header .cat-links {
      margin-bottom: var(--premium-spacing-sm);
  }

  article.post .entry-header .cat-links a,
  article.page .entry-header .cat-links a,
  .cat-links a {
      font-size: var(--premium-font-size-base);
      position: relative;
      padding-bottom: 6px;
      margin-bottom: 4px;
      color: var(--premium-gold);
      font-weight: 600;
      letter-spacing: 0.5px;
      text-transform: uppercase;
      font-size: var(--premium-font-size-sm);
      transition: var(--premium-transition-smooth);

      /* Premium Fix: 3 Kategorien untereinander, einzeilig ohne Umbruch */
      display: block;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      text-align: center;
      max-width: 100%;
  }

  article.post .entry-header .cat-links a:after,
  article.page .entry-header .cat-links a:after,
  .cat-links a:after {
      position: absolute;
      content: '';
      width: 30px;
      height: 2px;
      left: 50%;
      transform: translateX(-50%);
      bottom: 0;
      background: var(--premium-gold-gradient);
      box-shadow: 0 2px 8px rgba(212, 175, 55, 0.4);
      transition: var(--premium-transition-smooth);
  }

article.post:hover .entry-header .cat-links a:after,
article.page:hover .entry-header .cat-links a:after {
    width: 100%;
    box-shadow: var(--premium-shadow-glow);
}

article.post:focus-within .entry-header .cat-links a:after,
article.page:focus-within .entry-header .cat-links a:after {
    width: 100%;
    box-shadow: var(--premium-shadow-glow);
}

 .slick-list article.post .no-image .entry-header .cat-links,
  .slick-list article.page .no-image .entry-header .cat-links,
  .slick-list article.post .entry-header .cat-links,
  .slick-list article.page .entry-header .cat-links,
  article.post .no-image .entry-header .cat-links,
  article.page .no-image .entry-header .cat-links {
      margin-bottom: var(--premium-spacing-sm);
  }

 /* Premium Fix: Categories in Related Posts - vertical display */
  .slick-list .entry-content .entry-header .cat-links,
  .related-posts .entry-content .entry-header .cat-links,
  .acme-col-posts .entry-content .entry-header .cat-links {
      display: block;
      width: 100%;
  }

  .slick-list .entry-content .entry-header .cat-links a,
  .related-posts .entry-content .entry-header .cat-links a,
  .acme-col-posts .entry-content .entry-header .cat-links a {
      display: block;
      width: 100%;
  }

article.post .entry-content,
article.page .entry-content {
    margin: 0;
    padding: var(--premium-spacing-lg);
    line-height: 1.8;
    color: var(--premium-gray-dark);
}

article.page .entry-content p img {
    float: left;
    border: var(--premium-border-gold);
    box-shadow: var(--premium-shadow-md);
    transition: var(--premium-transition-smooth);
}

article.page .entry-content p img:hover {
    box-shadow: var(--premium-shadow-xl);
    transform: translateY(-4px);
}

article.page .entry-content p img:not(:first-child) {
    margin-left: var(--premium-spacing-sm);
}

article.page .entry-content ul {
    padding: 0;
    margin: var(--premium-spacing-sm) 0 var(--premium-spacing-sm) var(--premium-spacing-md);
    list-style-position: inside;
}

article.page .entry-content ul li {
    padding: var(--premium-spacing-xs) 0;
    position: relative;
}

article.page .entry-content ul li::marker {
    color: var(--premium-gold);
}

article.page .entry-content blockquote {
    font-style: italic;
    border-left: 4px solid var(--premium-gold);
    padding-left: var(--premium-spacing-md);
    margin: var(--premium-spacing-lg) 0;
    background: linear-gradient(90deg, rgba(244, 228, 193, 0.15) 0%, rgba(255, 255, 255, 0) 100%);
    padding: var(--premium-spacing-md);
    box-shadow: var(--premium-shadow-sm);
    position: relative;
    font-size: var(--premium-font-size-lg);
    color: var(--premium-gray-dark);
}

article.page .entry-content blockquote::before {
    content: '"';
    font-size: 60px;
    color: var(--premium-gold-light);
    position: absolute;
    left: 10px;
    top: -10px;
    font-family: Georgia, serif;
    line-height: 1;
}

.entry-content li>ul,
.entry-content li>ol {
    margin-left: 1.5em;
}

/*-----------------*\
    #Post/Page Layout - Premium Design
\*-----------------*/
article.post,
article.page {
    text-align: left;
    position: relative;
    z-index: 5;
    padding-bottom: var(--premium-spacing-md);
    background: #ffffff;
    margin-bottom: var(--premium-spacing-lg);
    border-radius: 8px;
    box-shadow: var(--premium-shadow-md);
    transition: var(--premium-transition-smooth);
    overflow: hidden;
}

article.post::before,
article.page::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--premium-gold-gradient);
    box-shadow: var(--premium-shadow-glow);
    opacity: 0;
    transition: var(--premium-transition-smooth);
}

article.post:hover::before,
article.page:hover::before {
    opacity: 1;
}

article.post:hover,
article.page:hover {
    box-shadow: var(--premium-shadow-xl);
    transform: translateY(-4px);
}

.blog article.post,
.blog article.page,
.archive article.post,
.archive article.page,
.search article.post,
.search article.page {
    border-bottom: none;
    border: var(--premium-border);
}

article.post .entry-header-title,
article.page .entry-header-title {
    width: 100%;
    display: block;
    position: relative;
}

.entry-header-title .entry-title {
    display: inline-block;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: var(--premium-spacing-sm);
    color: var(--premium-black);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    transition: var(--premium-transition-fast);
    position: relative;
}

.entry-header-title .entry-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 60px;
    height: 3px;
    background: var(--premium-gold-gradient);
    box-shadow: var(--premium-shadow-glow);
}

.entry-header-title .entry-title:hover {
    color: var(--premium-gold-dark);
}

article.post .post-thumb,
article.page .post-thumb {
    position: relative;
    z-index: 1;
    overflow: hidden;
}

article.post .post-thumb::after,
article.page .post-thumb::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(212, 175, 55, 0) 0%, rgba(212, 175, 55, 0.15) 100%);
    opacity: 0;
    transition: var(--premium-transition-smooth);
    pointer-events: none;
}

article.post .post-thumb:hover::after,
article.page .post-thumb:hover::after {
    opacity: 1;
}

article.post .post-thumb a,
article.page .post-thumb a {
    overflow: hidden;
    display: block;
    position: relative;
}

.post-thumb {
    text-align: center;
    position: relative;
    box-shadow: var(--premium-shadow-md);
    border-radius: 4px;
    overflow: hidden;
}

.post-thumb img {
    transition: var(--premium-transition-elegant);
    filter: brightness(1) contrast(1.05);
}

.post-thumb img:hover {
    opacity: 1;
    transform: scale(1.08);
    filter: brightness(1.1) contrast(1.1);
}

.post-thumb img:focus-within {
    opacity: 1;
    transform: scale(1.08);
    filter: brightness(1.1) contrast(1.1);
}

/*-----------------*\
    #Navigation Links - Premium Gold
\*-----------------*/
.nav-links {
    padding: var(--premium-spacing-md);
    background: var(--premium-gray-ultra-light);
    border-radius: 8px;
    box-shadow: var(--premium-shadow-sm);
}

.nav-links div {
    display: inline-block;
    margin-bottom: var(--premium-spacing-sm);
}

.nav-next {
    float: right;
}

.nav-previous>a::before,
.nav-next a::after {
    content: "\f060";
    font-family: fontawesome;
    padding: 5px;
    color: var(--premium-gold);
    transition: var(--premium-transition-fast);
}

.nav-next a::after {
    content: "\f061";
}

.nav-previous>a:hover::before,
.nav-next a:hover::after {
    text-shadow: var(--premium-shadow-glow);
    transform: translateX(-3px);
}

.nav-next a:hover::after {
    transform: translateX(3px);
}

.nav-links .nav-previous a,
.nav-links .nav-next a {
    display: inline-block;
    font-size: var(--premium-font-size-sm);
    color: var(--premium-gray-dark);
    font-weight: 600;
    padding: var(--premium-spacing-xs) var(--premium-spacing-md);
    background: #ffffff;
    border: var(--premium-border);
    border-radius: 6px;
    transition: var(--premium-transition-fast);
    box-shadow: var(--premium-shadow-sm);
}

.nav-links .nav-previous a:hover,
.nav-links .nav-next a:hover {
    background: var(--premium-gold-gradient);
    color: #ffffff;
    box-shadow: var(--premium-shadow-lg);
    transform: translateY(-2px);
    border-color: var(--premium-gold);
}

/*-----------------*\
    #Number Pagination - Premium Luxury
\*-----------------*/
.pagination {
    width: 100%;
    margin: var(--premium-spacing-lg) 0;
}

.navigation.pagination .nav-links {
    text-align: center;
}

.navigation.pagination .nav-links .page-numbers {
    padding: var(--premium-spacing-sm) var(--premium-spacing-md);
    text-align: center;
    background: linear-gradient(135deg, #ffffff 0%, var(--premium-gray-ultra-light) 100%);
    display: inline-block;
    margin: 0 5px;
    border: var(--premium-border);
    border-radius: 6px;
    transition: var(--premium-transition-fast);
    font-weight: 600;
    color: var(--premium-gray-dark);
    box-shadow: var(--premium-shadow-sm);
    min-width: 45px;
}

.navigation.pagination .nav-links .page-numbers:hover {
    background: var(--premium-gold-gradient);
    color: #ffffff;
    border-color: var(--premium-gold);
    box-shadow: var(--premium-shadow-lg);
    transform: translateY(-3px);
}

.navigation.pagination .nav-links .page-numbers.current {
    background: var(--premium-gold-gradient);
    color: #ffffff;
    border-color: var(--premium-gold);
    box-shadow: var(--premium-shadow-xl);
    position: relative;
}

.navigation.pagination .nav-links .page-numbers.current::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
    height: 2px;
    background: #ffffff;
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.8);
}

/*-----------------*\
    #Breadcrumbs - Premium Gold Navigation
\*-----------------*/
#lawyer-zone-breadcrumbs {
    background: linear-gradient(135deg, var(--premium-gray-dark) 0%, var(--premium-black) 100%);
    padding: var(--premium-spacing-md) 0;
    box-shadow: var(--premium-shadow-lg);
    position: relative;
}

#lawyer-zone-breadcrumbs::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--premium-gold-gradient);
    box-shadow: var(--premium-shadow-glow);
}

#lawyer-zone-breadcrumbs .breadcrumb-trail li {
    display: inline-block;
    list-style: outside none none;
    color: var(--premium-gold-light);
    font-weight: 600;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#lawyer-zone-breadcrumbs .breadcrumb-trail li a {
    display: inline-block;
    color: var(--premium-gold-light);
    transition: var(--premium-transition-fast);
    position: relative;
}

#lawyer-zone-breadcrumbs .breadcrumb-trail li a:hover {
    color: var(--premium-gold);
    text-shadow: var(--premium-shadow-glow);
}

#lawyer-zone-breadcrumbs a {
    position: relative;
}

#lawyer-zone-breadcrumbs a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background: var(--premium-gold);
    box-shadow: var(--premium-shadow-glow);
    transition: var(--premium-transition-fast);
}

#lawyer-zone-breadcrumbs a:hover::after {
    width: 100%;
}

#lawyer-zone-breadcrumbs li span,
#lawyer-zone-breadcrumbs a:hover,
#lawyer-zone-breadcrumbs a:focus {
    text-decoration: none;
    opacity: 1;
}

#lawyer-zone-breadcrumbs a:hover:before,
#lawyer-zone-breadcrumbs a:focus:before {
    border-color: inherit;
}

#lawyer-zone-breadcrumbs .breadcrumb-trail li::after {
    color: var(--premium-gold);
    content: "/";
    margin-left: var(--premium-spacing-sm);
    margin-right: var(--premium-spacing-sm);
    text-shadow: 0 0 8px rgba(212, 175, 55, 0.6);
}

#lawyer-zone-breadcrumbs .breadcrumb-trail li.trail-item.trail-end::after {
    display: none;
}

#lawyer-zone-breadcrumbs .breadcrumb-trail li.trail-item.trail-end {
    border-bottom: 2px solid var(--premium-gold);
    padding-bottom: 2px;
    box-shadow: 0 2px 8px rgba(212, 175, 55, 0.4);
}

#lawyer-zone-breadcrumbs .breadcrumb-trail .trail-items {
    margin: 0;
    padding: 0;
}

@media (min-width: 993px) {
    #lawyer-zone-breadcrumbs {
        padding: var(--premium-spacing-md) 0 0 0;
    }

    #lawyer-zone-breadcrumbs .breadcrumb-trail li {
        font-size: var(--premium-font-size-lg);
    }
}

/*-----------------*\
    #Author Info - Premium Luxus Card
\*-----------------*/
.authorbox {
    background: linear-gradient(135deg, #ffffff 0%, var(--premium-gray-ultra-light) 100%);
    border: var(--premium-border-gold);
    clear: both;
    height: auto;
    margin: var(--premium-spacing-sm) var(--premium-spacing-md);
    overflow: hidden;
    padding: var(--premium-spacing-lg);
    text-align: center;
    box-shadow: var(--premium-shadow-lg);
    border-radius: 12px;
    position: relative;
    transition: var(--premium-transition-smooth);
}

.authorbox::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--premium-gold-gradient);
    box-shadow: var(--premium-shadow-glow);
}

.authorbox:hover {
    box-shadow: var(--premium-shadow-xl);
    transform: translateY(-4px);
}

.authorbox .author-avatar {
    height: 120px;
    width: 120px;
    margin: 0 auto var(--premium-spacing-md);
    border: 4px solid var(--premium-gold);
    border-radius: 50%;
    box-shadow: var(--premium-shadow-lg), inset 0 0 20px rgba(212, 175, 55, 0.1);
    transition: var(--premium-transition-smooth);
    overflow: hidden;
    position: relative;
}

.authorbox .author-avatar::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    box-shadow: inset 0 0 30px rgba(212, 175, 55, 0.2);
    pointer-events: none;
}

.authorbox:hover .author-avatar {
    box-shadow: var(--premium-shadow-xl), inset 0 0 30px rgba(212, 175, 55, 0.2);
    transform: scale(1.05);
}

.author-img img {
    margin-right: var(--premium-spacing-md);
    transition: var(--premium-transition-smooth);
}

.author-img img:hover {
    transform: scale(1.05);
}

.avatar {
    border-radius: 50%;
    float: left;
    border: 3px solid var(--premium-gold);
    box-shadow: var(--premium-shadow-md);
    transition: var(--premium-transition-smooth);
}

.avatar:hover {
    box-shadow: var(--premium-shadow-xl);
    border-color: var(--premium-gold-dark);
}

/*-----------------*\
    #Premium Accent Elements
\*-----------------*/
.premium-divider {
    height: 2px;
    background: var(--premium-gold-gradient);
    margin: var(--premium-spacing-lg) 0;
    box-shadow: var(--premium-shadow-glow);
    border-radius: 2px;
}

.premium-highlight {
    background: linear-gradient(90deg, rgba(244, 228, 193, 0.2) 0%, rgba(255, 255, 255, 0) 100%);
    border-left: 4px solid var(--premium-gold);
    padding-left: var(--premium-spacing-md);
    margin: var(--premium-spacing-md) 0;
}

/*--------------------------------------------------------------
# END Inner Pages - PREMIUM LUXUS VERSION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# PREMIUM LUXUS Animations - Fade, Zoom, Loading Effects
# Enhanced with CSS Variables & Premium Easing Functions
--------------------------------------------------------------*/

/*-----------------*\
    #CSS Variables
\*-----------------*/
:root {
    /* Animation Durations */
    --anim-duration-fast: 0.4s;
    --anim-duration-normal: 0.8s;
    --anim-duration-slow: 1.2s;
    --anim-duration-slower: 1.8s;
    --anim-duration-slowest: 2.4s;

    /* Premium Easing Functions */
    --ease-premium: cubic-bezier(0.4, 0.0, 0.2, 1);
    --ease-luxury: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    --ease-smooth: cubic-bezier(0.165, 0.84, 0.44, 1);
    --ease-elegant: cubic-bezier(0.22, 0.61, 0.36, 1);
    --ease-sophisticated: cubic-bezier(0.19, 1, 0.22, 1);
    --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    --ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    --ease-swift: cubic-bezier(0.4, 0, 0.6, 1);
    --ease-gentle: cubic-bezier(0.33, 1, 0.68, 1);
    --ease-refined: cubic-bezier(0.215, 0.61, 0.355, 1);

    /* Animation Distances */
    --anim-distance-sm: 20px;
    --anim-distance-md: 50px;
    --anim-distance-lg: 100px;
    --anim-distance-xl: 150px;

    /* Animation Scales */
    --anim-scale-start: 0.85;
    --anim-scale-mid: 0.95;
    --anim-scale-end: 1;
    --anim-scale-zoom: 1.05;

    /* Loading Animation Colors */
    --loader-color-primary: #FFB637;
    --loader-color-secondary: #FFFFFF;
    --loader-bg-overlay: rgba(255, 255, 255, 0.98);

    /* Animation Delays */
    --anim-delay-1: 0.1s;
    --anim-delay-2: 0.2s;
    --anim-delay-3: 0.3s;
    --anim-delay-4: 0.4s;
    --anim-delay-5: 0.5s;

    /* Blur & Shadow Effects */
    --anim-blur-start: 8px;
    --anim-blur-end: 0px;
    --anim-shadow-subtle: 0 4px 20px rgba(0, 0, 0, 0.08);
    --anim-shadow-premium: 0 10px 40px rgba(0, 0, 0, 0.12);
}

/*-----------------*\
    #Animation Base - Premium Enhanced
\*-----------------*/
.acme-animate .init-animate {
    visibility: hidden;
    animation-duration: var(--anim-duration-normal);
    animation-fill-mode: both;
    animation-timing-function: var(--ease-premium);
    will-change: transform, opacity;
    backface-visibility: hidden;
    perspective: 1000px;
}

/* Reduce Motion Support */
@media (prefers-reduced-motion: reduce) {
    .acme-animate .init-animate,
    .acme-animate .fadeInDown,
    .acme-animate .fadeInLeft,
    .acme-animate .fadeInRight,
    .acme-animate .fadeIn,
    .acme-animate .zoomIn,
    .fadeInDown1 {
        animation-duration: 0.01ms !important;
        animation-delay: 0s !important;
        transition-duration: 0.01ms !important;
    }
}

/*-----------------*\
    #Fade In Down - Premium
\*-----------------*/
@keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: translate3d(0, calc(var(--anim-distance-lg) * -1), 0);
        filter: blur(var(--anim-blur-start));
    }

    60% {
        opacity: 0.8;
        transform: translate3d(0, -10px, 0);
        filter: blur(2px);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
        filter: blur(var(--anim-blur-end));
    }
}

.acme-animate .fadeInDown {
    animation-name: fadeInDown;
    animation-duration: var(--anim-duration-slower);
    animation-timing-function: var(--ease-sophisticated);
    animation-fill-mode: both;
}

.fadeInDown1 {
    animation-name: fadeInDown;
    animation-duration: var(--anim-duration-slowest);
    animation-timing-function: var(--ease-elegant);
}

/*-----------------*\
    #Fade In Up - Premium
\*-----------------*/
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translate3d(0, var(--anim-distance-lg), 0);
        filter: blur(var(--anim-blur-start));
    }

    60% {
        opacity: 0.8;
        transform: translate3d(0, 10px, 0);
        filter: blur(2px);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
        filter: blur(var(--anim-blur-end));
    }
}

.acme-animate .fadeInUp {
    animation-name: fadeInUp;
    animation-duration: var(--anim-duration-slower);
    animation-timing-function: var(--ease-sophisticated);
    animation-fill-mode: both;
}

/*-----------------*\
    #Fade In Left - Premium
\*-----------------*/
@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translate3d(calc(var(--anim-distance-xl) * -1), 0, 0) scale(var(--anim-scale-start));
        filter: blur(var(--anim-blur-start));
    }

    50% {
        opacity: 0.7;
        filter: blur(3px);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(var(--anim-scale-end));
        filter: blur(var(--anim-blur-end));
    }
}

.acme-animate .fadeInLeft {
    animation-name: fadeInLeft;
    animation-duration: var(--anim-duration-slow);
    animation-timing-function: var(--ease-luxury);
}

/*-----------------*\
    #Fade In Right - Premium
\*-----------------*/
@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translate3d(var(--anim-distance-xl), 0, 0) scale(var(--anim-scale-start));
        filter: blur(var(--anim-blur-start));
    }

    50% {
        opacity: 0.7;
        filter: blur(3px);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(var(--anim-scale-end));
        filter: blur(var(--anim-blur-end));
    }
}

.acme-animate .fadeInRight {
    animation-name: fadeInRight;
    animation-duration: var(--anim-duration-slow);
    animation-timing-function: var(--ease-luxury);
}

/*-----------------*\
    #Fade In - Premium Enhanced
\*-----------------*/
@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: scale(var(--anim-scale-mid));
        filter: blur(var(--anim-blur-start));
    }

    50% {
        opacity: 0.5;
        filter: blur(4px);
    }

    100% {
        opacity: 1;
        transform: scale(var(--anim-scale-end));
        filter: blur(var(--anim-blur-end));
    }
}

.acme-animate .fadeIn {
    animation-name: fadeIn;
    animation-duration: var(--anim-duration-slower);
    animation-timing-function: var(--ease-smooth);
    animation-fill-mode: both;
}

/*-----------------*\
    #Zoom In - Premium Enhanced
\*-----------------*/
@keyframes zoomIn {
    0% {
        opacity: 0;
        transform: scale3d(var(--anim-scale-start), var(--anim-scale-start), var(--anim-scale-start));
        filter: blur(var(--anim-blur-start));
    }

    40% {
        opacity: 0.6;
        transform: scale3d(0.98, 0.98, 0.98);
        filter: blur(4px);
    }

    70% {
        opacity: 1;
        transform: scale3d(1.02, 1.02, 1.02);
        filter: blur(1px);
    }

    100% {
        opacity: 1;
        transform: scale3d(var(--anim-scale-end), var(--anim-scale-end), var(--anim-scale-end));
        filter: blur(var(--anim-blur-end));
    }
}

.acme-animate .zoomIn {
    animation-name: zoomIn;
    animation-duration: var(--anim-duration-slow);
    animation-timing-function: var(--ease-refined);
}

/*-----------------*\
    #Zoom Out - Premium
\*-----------------*/
@keyframes zoomOut {
    0% {
        opacity: 1;
        transform: scale3d(var(--anim-scale-end), var(--anim-scale-end), var(--anim-scale-end));
    }

    50% {
        opacity: 0.5;
        transform: scale3d(0.98, 0.98, 0.98);
    }

    100% {
        opacity: 0;
        transform: scale3d(var(--anim-scale-start), var(--anim-scale-start), var(--anim-scale-start));
    }
}

.acme-animate .zoomOut {
    animation-name: zoomOut;
    animation-duration: var(--anim-duration-normal);
    animation-timing-function: var(--ease-premium);
}

/*-----------------*\
    #Slide In Scale - Premium
\*-----------------*/
@keyframes slideInScale {
    0% {
        opacity: 0;
        transform: translate3d(0, var(--anim-distance-md), 0) scale(var(--anim-scale-start));
    }

    60% {
        opacity: 0.8;
        transform: translate3d(0, -5px, 0) scale(1.02);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(var(--anim-scale-end));
    }
}

.acme-animate .slideInScale {
    animation-name: slideInScale;
    animation-duration: var(--anim-duration-slow);
    animation-timing-function: var(--ease-spring);
    animation-fill-mode: both;
}

/*-----------------*\
    #Luxury Reveal - Premium
\*-----------------*/
@keyframes luxuryReveal {
    0% {
        opacity: 0;
        transform: translate3d(0, var(--anim-distance-sm), 0) scale(0.98) rotateX(5deg);
        filter: blur(6px);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1) rotateX(0deg);
        filter: blur(0px);
    }
}

.acme-animate .luxuryReveal {
    animation-name: luxuryReveal;
    animation-duration: var(--anim-duration-slower);
    animation-timing-function: var(--ease-gentle);
    animation-fill-mode: both;
}

/*-----------------*\
    #Staggered Delays - Premium
\*-----------------*/
.acme-animate .delay-1 { animation-delay: var(--anim-delay-1); }
.acme-animate .delay-2 { animation-delay: var(--anim-delay-2); }
.acme-animate .delay-3 { animation-delay: var(--anim-delay-3); }
.acme-animate .delay-4 { animation-delay: var(--anim-delay-4); }
.acme-animate .delay-5 { animation-delay: var(--anim-delay-5); }

/*-----------------*\
    #Loading Screen - Premium Enhanced
\*-----------------*/
.bubblingG-loader {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    clear: both;
    background: var(--loader-bg-overlay);
    backdrop-filter: blur(10px);
    transition: all var(--anim-duration-slowest) var(--ease-premium);
    z-index: 9999;
}

.loader-outer {
    height: 100px;
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
}

.bubblingG-loader .bubblingG {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -40px;
}

.bubblingG {
    text-align: center;
    width: 150px;
    height: 94px;
}

.bubblingG span {
    display: inline-block;
    vertical-align: middle;
    width: 19px;
    height: 19px;
    margin: 47px auto;
    background: var(--loader-color-primary);
    border-radius: 50%;
    animation: bubblingG 1.8s var(--ease-sophisticated) infinite alternate;
    box-shadow: var(--anim-shadow-subtle);
    will-change: transform, width, height, background-color;
}

#bubblingG_1 {
    animation-delay: 1.08s;
}

#bubblingG_2 {
    animation-delay: 0.54s;
}

#bubblingG_3 {
    animation-delay: 0s;
}

@keyframes bubblingG {
    0% {
        width: 19px;
        height: 19px;
        background-color: var(--loader-color-primary);
        transform: translateY(0) scale(1);
        box-shadow: var(--anim-shadow-subtle);
    }

    50% {
        background-color: rgba(255, 182, 55, 0.7);
        box-shadow: var(--anim-shadow-premium);
    }

    100% {
        width: 45px;
        height: 45px;
        background-color: var(--loader-color-secondary);
        transform: translateY(-39px) scale(1.1);
        box-shadow: var(--anim-shadow-subtle);
    }
}

/*-----------------*\
    #Pulse Animation - Premium
\*-----------------*/
@keyframes pulse {
    0% {
        transform: scale3d(1, 1, 1);
        box-shadow: 0 0 0 0 rgba(255, 182, 55, 0.7);
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05);
        box-shadow: 0 0 20px 10px rgba(255, 182, 55, 0);
    }

    100% {
        transform: scale3d(1, 1, 1);
        box-shadow: 0 0 0 0 rgba(255, 182, 55, 0);
    }
}

.pulse {
    animation: pulse 2s var(--ease-gentle) infinite;
}

/*-----------------*\
    #Float Animation - Premium
\*-----------------*/
@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }
}

.float {
    animation: float 3s var(--ease-smooth) infinite;
}

/*-----------------*\
    #Glow Effect - Premium
\*-----------------*/
@keyframes glow {
    0%, 100% {
        filter: drop-shadow(0 0 5px rgba(255, 182, 55, 0.5));
    }

    50% {
        filter: drop-shadow(0 0 20px rgba(255, 182, 55, 0.8));
    }
}

.glow {
    animation: glow 2s var(--ease-smooth) infinite;
}

/*-----------------*\
    #Shimmer Effect - Premium
\*-----------------*/
@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }

    100% {
        background-position: 1000px 0;
    }
}

.shimmer {
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.3) 50%,
        transparent 100%
    );
    background-size: 1000px 100%;
    animation: shimmer 2.5s var(--ease-premium) infinite;
}

/*-----------------*\
    #Premium Hover Effects
\*-----------------*/
.hover-lift {
    transition: transform var(--anim-duration-normal) var(--ease-luxury),
                box-shadow var(--anim-duration-normal) var(--ease-luxury);
}

.hover-lift:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: var(--anim-shadow-premium);
}

.hover-grow {
    transition: transform var(--anim-duration-fast) var(--ease-spring);
}

.hover-grow:hover {
    transform: scale(1.05);
}

.hover-glow {
    transition: filter var(--anim-duration-normal) var(--ease-smooth);
}

.hover-glow:hover {
    filter: drop-shadow(0 0 15px rgba(255, 182, 55, 0.6));
}

/*-----------------*\
    #Smooth Transitions - Premium
\*-----------------*/
.transition-premium {
    transition: all var(--anim-duration-normal) var(--ease-premium);
}

.transition-luxury {
    transition: all var(--anim-duration-normal) var(--ease-luxury);
}

.transition-smooth {
    transition: all var(--anim-duration-normal) var(--ease-smooth);
}

.transition-elegant {
    transition: all var(--anim-duration-normal) var(--ease-elegant);
}

/*--------------------------------------------------------------
# END PREMIUM LUXUS Animations
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# WooCommerce - PREMIUM LUXURY EDITION
# Advanced Shop & Product Styles with CSS Variables & Gold Accents
--------------------------------------------------------------*/

/*-----------------*\
    #CSS Variables - Premium Color System
\*-----------------*/
:root {
    /* Premium Gold & Luxury Colors */
    --wc-gold-primary: #c2b697;
    --wc-gold-light: #d4c9ac;
    --wc-gold-dark: #a89975;
    --wc-gold-shine: #e8dfc4;

    /* Premium Neutrals */
    --wc-luxury-dark: #1a1a1a;
    --wc-luxury-medium: #2d2d2d;
    --wc-luxury-light: #f8f7f4;
    --wc-luxury-white: #ffffff;

    /* Accent Colors */
    --wc-accent-success: #4a7c59;
    --wc-accent-error: #c74444;
    --wc-accent-info: #5a7fa3;

    /* Borders & Shadows */
    --wc-border-color: rgba(194, 182, 151, 0.2);
    --wc-border-color-hover: rgba(194, 182, 151, 0.5);

    /* Premium Shadows */
    --wc-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
    --wc-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.12);
    --wc-shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.15);
    --wc-shadow-gold: 0 4px 20px rgba(194, 182, 151, 0.25);

    /* Transitions */
    --wc-transition-fast: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --wc-transition-base: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --wc-transition-slow: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);

    /* Typography */
    --wc-font-weight-normal: 400;
    --wc-font-weight-medium: 500;
    --wc-font-weight-semibold: 600;
    --wc-font-weight-bold: 700;

    /* Spacing */
    --wc-spacing-xs: 8px;
    --wc-spacing-sm: 12px;
    --wc-spacing-md: 16px;
    --wc-spacing-lg: 24px;
    --wc-spacing-xl: 32px;

    /* Border Radius */
    --wc-radius-sm: 4px;
    --wc-radius-md: 8px;
    --wc-radius-lg: 12px;
    --wc-radius-xl: 16px;
}

/*-----------------*\
    #Premium Buttons System
\*-----------------*/
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    padding: var(--wc-spacing-sm) var(--wc-spacing-lg);
    height: 48px;
    border-radius: var(--wc-radius-md);
    line-height: 1.5;
    font-weight: var(--wc-font-weight-semibold);
    letter-spacing: 0.3px;
    text-transform: uppercase;
    font-size: 14px;
    border: 2px solid transparent;
    background: linear-gradient(135deg, var(--wc-gold-primary) 0%, var(--wc-gold-dark) 100%);
    color: var(--wc-luxury-white);
    box-shadow: var(--wc-shadow-gold);
    transition: var(--wc-transition-base);
    position: relative;
    overflow: hidden;
}

.woocommerce #respond input#submit::before,
.woocommerce a.button::before,
.woocommerce button.button::before,
.woocommerce input.button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: var(--wc-transition-slow);
}

.woocommerce #respond input#submit:hover::before,
.woocommerce a.button:hover::before,
.woocommerce button.button:hover::before,
.woocommerce input.button:hover::before {
    left: 100%;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 28px rgba(194, 182, 151, 0.35);
    background: linear-gradient(135deg, var(--wc-gold-light) 0%, var(--wc-gold-primary) 100%);
}

.woocommerce #respond input#submit:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active {
    transform: translateY(0);
    box-shadow: var(--wc-shadow-sm);
}

/* Rounded Rectangle Variant */
.rounded-rectangle.woocommerce .button,
.rounded-rectangle.woocommerce ul.products li.product a.added_to_cart,
.rounded-rectangle.woocommerce-page ul.products li.product a.button.add_to_cart_button {
    border-radius: 50px !important;
}

/* Primary Action Buttons */
.woocommerce .checkout-button,
.woocommerce a.button.add_to_cart_button,
.woocommerce a.added_to_cart,
.woocommerce a.button.product_type_grouped,
.woocommerce a.button.product_type_external,
.woocommerce .cart .button,
.woocommerce .cart input.button,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce .checkout_coupon .button {
    padding: var(--wc-spacing-sm) var(--wc-spacing-lg);
    font-weight: var(--wc-font-weight-semibold);
    border-radius: var(--wc-radius-md);
    left: auto;
    color: var(--wc-luxury-white);
    border: 2px solid var(--wc-gold-primary);
    white-space: nowrap;
    display: inline-block;
    background: linear-gradient(135deg, var(--wc-gold-primary) 0%, var(--wc-gold-dark) 100%);
    box-shadow: var(--wc-shadow-gold);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    line-height: 1.5;
    margin-bottom: 0;
    font-size: 15px;
    letter-spacing: 0.5px;
    transition: var(--wc-transition-base);
    height: 48px;
}

/* Disabled Button States */
.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
    padding: var(--wc-spacing-sm) var(--wc-spacing-lg);
    opacity: 0.5;
    cursor: not-allowed;
    background: #ccc;
    box-shadow: none;
}

.woocommerce a.button.add_to_cart_button.added {
    padding-right: 0.8em;
}

/* Button Icons - Premium Style */
.woocommerce a.button.add_to_cart_button:before,
.woocommerce a.button.product_type_grouped:before,
.woocommerce a.button.product_type_external:before,
.woocommerce a.added_to_cart:before {
    font-family: FontAwesome;
    content: "\f07a";
    vertical-align: middle;
    padding-right: 10px;
    font-size: 16px;
}

.woocommerce #respond input#submit.added::after,
.woocommerce a.button.added::after,
.woocommerce button.button.added::after,
.woocommerce input.button.added::after {
    font-family: FontAwesome;
    content: '\f00c';
    margin-left: .53em;
    vertical-align: middle;
    animation: checkmarkBounce 0.5s ease;
}

@keyframes checkmarkBounce {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.2); }
}

/* Alternative Button Style */
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    padding: var(--wc-spacing-sm) var(--wc-spacing-lg);
    border-radius: var(--wc-radius-md);
    font-weight: var(--wc-font-weight-semibold);
    line-height: 1.5;
}

/* Button Hover States - Enhanced */
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce a.added_to_cart:hover,
.woocommerce a.button.product_type_grouped:hover,
.woocommerce a.button.product_type_external:hover,
.woocommerce .cart .button:hover,
.woocommerce .cart input.button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce .widget_shopping_cart_content .buttons a.button:hover,
.woocommerce a.button.add_to_cart_button:focus,
.woocommerce a.added_to_cart:focus,
.woocommerce a.button.product_type_grouped:focus,
.woocommerce a.button.product_type_external:focus,
.woocommerce .cart .button:focus,
.woocommerce .cart input.button:focus,
.woocommerce #respond input#submit.alt:focus,
.woocommerce a.button.alt:focus,
.woocommerce button.button.alt:focus,
.woocommerce input.button.alt:focus,
.woocommerce .widget_shopping_cart_content .buttons a.button:focus {
    background: linear-gradient(135deg, var(--wc-gold-shine) 0%, var(--wc-gold-light) 100%);
    color: var(--wc-luxury-dark);
    border-color: var(--wc-gold-primary);
    transform: translateY(-2px);
}

/* Single Product Actions */
.single-product .yith-wcwl-add-to-wishlist,
.single-product .entry-summary .compare.button {
    display: inline-block !important;
    vertical-align: middle;
    width: auto;
    font-size: 14px;
    padding: 12px 20px;
    color: var(--wc-gold-primary);
    border: 2px solid var(--wc-gold-primary);
    background: transparent;
    border-radius: var(--wc-radius-md);
    transition: var(--wc-transition-base);
}

.single-product .yith-wcwl-add-to-wishlist:hover,
.single-product .entry-summary .compare.button:hover {
    background: var(--wc-gold-primary);
    color: var(--wc-luxury-white);
    box-shadow: var(--wc-shadow-gold);
}

.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
    width: 250px;
    border: 2px solid var(--wc-border-color);
    border-radius: var(--wc-radius-md);
    padding: var(--wc-spacing-sm);
    transition: var(--wc-transition-base);
}

.woocommerce #content table.cart td.actions .input-text:focus,
.woocommerce table.cart td.actions .input-text:focus {
    border-color: var(--wc-gold-primary);
    box-shadow: 0 0 0 3px rgba(194, 182, 151, 0.1);
}

/*-----------------*\
    #Error Messages - Premium Style
\*-----------------*/
.woocommerce-active .woocommerce-error li,
.woocommerce-active .woocommerce-info li,
.woocommerce-active .woocommerce-message li {
    margin-left: 20px !important;
}

.woocommerce-active .woocommerce-error,
.woocommerce-active .woocommerce-info,
.woocommerce-active .woocommerce-message {
    border-left: 4px solid var(--wc-gold-primary);
    border-radius: var(--wc-radius-md);
    box-shadow: var(--wc-shadow-sm);
    background: var(--wc-luxury-light);
}

/*-----------------*\
    #Related Products
\*-----------------*/
.woocommerce .related.products {
    clear: both;
    margin-top: var(--wc-spacing-xl);
    padding: var(--wc-spacing-xl) 0;
    border-top: 2px solid var(--wc-border-color);
}

/*-----------------*\
    #Pagination - Premium Style
\*-----------------*/
.woocommerce .woocommerce-ordering select {
    vertical-align: top;
    border: 2px solid var(--wc-border-color);
    font-size: 16px;
    background: var(--wc-luxury-white);
    padding: 10px 16px;
    height: 48px;
    border-radius: var(--wc-radius-md);
    transition: var(--wc-transition-base);
    font-weight: var(--wc-font-weight-medium);
}

.woocommerce .woocommerce-ordering select:hover,
.woocommerce .woocommerce-ordering select:focus {
    border-color: var(--wc-gold-primary);
    box-shadow: 0 0 0 3px rgba(194, 182, 151, 0.1);
}

.woocommerce nav.woocommerce-pagination ul {
    margin: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    font-size: 1.1em;
    padding: 0.8em 1.2em;
    border: 2px solid var(--wc-border-color);
    border-radius: var(--wc-radius-md);
    transition: var(--wc-transition-base);
    font-weight: var(--wc-font-weight-medium);
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--wc-gold-primary);
    color: var(--wc-luxury-white);
    border-color: var(--wc-gold-primary);
    box-shadow: var(--wc-shadow-gold);
}

/*-----------------*\
    #Premium Product Cards
\*-----------------*/
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    margin: 0 1% 3% 1%;
    width: 23%;
    text-align: center;
    background: var(--wc-luxury-white);
    border: 1px solid var(--wc-border-color);
    border-radius: var(--wc-radius-lg);
    padding: var(--wc-spacing-lg);
    box-shadow: var(--wc-shadow-sm);
    transition: var(--wc-transition-base);
    position: relative;
    overflow: hidden;
}

.woocommerce ul.products li.product::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--wc-gold-primary), var(--wc-gold-light), var(--wc-gold-primary));
    opacity: 0;
    transition: var(--wc-transition-base);
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-8px);
    box-shadow: var(--wc-shadow-lg);
    border-color: var(--wc-gold-primary);
}

.woocommerce ul.products li.product:hover::before {
    opacity: 1;
}

/* Product Image Container */
.woocommerce ul.products li.product .woocommerce-loop-product__link {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: var(--wc-radius-md);
    margin-bottom: var(--wc-spacing-md);
}

.woocommerce ul.products li.product img {
    transition: var(--wc-transition-slow);
    border-radius: var(--wc-radius-md);
}

.woocommerce ul.products li.product:hover img {
    transform: scale(1.05);
}

/* Product Title */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-weight: var(--wc-font-weight-semibold);
    font-size: 16px;
    margin-bottom: var(--wc-spacing-sm);
    color: var(--wc-luxury-dark);
    transition: var(--wc-transition-base);
}

.woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
    color: var(--wc-gold-dark);
}

/* Product Price */
.woocommerce ul.products li.product .price {
    font-weight: var(--wc-font-weight-bold);
    font-size: 20px;
    color: var(--wc-gold-dark);
    margin-bottom: var(--wc-spacing-md);
}

.woocommerce ul.products li.product .price del {
    opacity: 0.6;
    font-size: 16px;
}

.woocommerce ul.products li.product .price ins {
    text-decoration: none;
    color: var(--wc-gold-primary);
}

.woocommerce ul.products.columns-3 li.product,
.woocommerce-page ul.products.columns-3 li.product {
    width: 31%;
}

.woocommerce ul.products li.product a.added_to_cart,
.woocommerce-page ul.products li.product a.button.add_to_cart_button {
    padding: 12px 20px;
    border-radius: var(--wc-radius-md);
    font-weight: var(--wc-font-weight-semibold);
    font-size: 14px;
    letter-spacing: 0.5px;
}

/*-----------------*\
    #Single Product - Premium Layout
\*-----------------*/
.woocommerce div.product form.cart .variations select {
    margin-right: 1em;
    padding: 10px 16px;
    margin-bottom: 12px;
    border-radius: var(--wc-radius-md);
    border: 2px solid var(--wc-border-color);
    transition: var(--wc-transition-base);
    font-weight: var(--wc-font-weight-medium);
}

.woocommerce div.product form.cart .variations select:hover,
.woocommerce div.product form.cart .variations select:focus {
    border-color: var(--wc-gold-primary);
    box-shadow: 0 0 0 3px rgba(194, 182, 151, 0.1);
}

.woocommerce .quantity .qty {
    height: 40px;
    border-radius: var(--wc-radius-md);
    font-size: 16px;
    border: 2px solid var(--wc-border-color);
    padding: 8px 12px;
    transition: var(--wc-transition-base);
    font-weight: var(--wc-font-weight-medium);
}

.woocommerce .quantity .qty:focus {
    border-color: var(--wc-gold-primary);
    box-shadow: 0 0 0 3px rgba(194, 182, 151, 0.1);
}

.woocommerce div.product form.cart,
.woocommerce .summary .product_meta {
    border-bottom: 2px solid var(--wc-border-color);
    padding: var(--wc-spacing-md) 0;
}

.woocommerce div.product form.cart {
    margin-bottom: 0;
}

.woocommerce-product-gallery__image {
    margin-bottom: 12px;
    border-radius: var(--wc-radius-md);
    overflow: hidden;
}

.related.products>h2,
.cross-sells>h2,
.cart_totals>h2,
.woocommerce-order-details>h2,
.woocommerce-customer-details>h2 {
    padding-bottom: var(--wc-spacing-md);
    color: var(--wc-luxury-dark);
    font-weight: var(--wc-font-weight-bold);
    position: relative;
    padding-left: var(--wc-spacing-md);
}

.related.products>h2::before,
.cross-sells>h2::before,
.cart_totals>h2::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 24px;
    background: linear-gradient(180deg, var(--wc-gold-primary), var(--wc-gold-dark));
    border-radius: 2px;
}

/*-----------------*\
    #Premium Forms
\*-----------------*/
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
    border-radius: var(--wc-radius-md);
    padding: 12px 16px;
    border: 2px solid var(--wc-border-color);
    background: var(--wc-luxury-white);
    transition: var(--wc-transition-base);
    font-weight: var(--wc-font-weight-normal);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
    border: 2px solid var(--wc-gold-primary);
    box-shadow: 0 0 0 3px rgba(194, 182, 151, 0.1);
    outline: none;
}

/*-----------------*\
    #Premium Product Tabs
\*-----------------*/
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    border: none !important;
    margin: 0 4px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 14px 24px;
    border-radius: var(--wc-radius-md);
    background: var(--wc-luxury-light);
    color: var(--wc-luxury-dark);
    font-weight: var(--wc-font-weight-medium);
    transition: var(--wc-transition-base);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:hover,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border: none !important;
    border-radius: var(--wc-radius-md);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:focus-within {
    border: none !important;
    border-radius: var(--wc-radius-md);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--wc-luxury-white);
    background: linear-gradient(135deg, var(--wc-gold-primary), var(--wc-gold-dark));
    box-shadow: var(--wc-shadow-gold);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:focus-within a {
    color: var(--wc-luxury-white);
    background: linear-gradient(135deg, var(--wc-gold-primary), var(--wc-gold-dark));
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    padding: 0;
    margin-bottom: var(--wc-spacing-lg);
}

.woocommerce-page div.product .woocommerce-tabs {
    margin-top: var(--wc-spacing-xl);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    border-radius: var(--wc-radius-md);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before {
    border: none;
    bottom: 0;
    content: " ";
    height: 0;
    position: static;
    width: 0;
    border-radius: 0;
    border-width: 0;
    box-shadow: none;
    left: 0;
}

/*-----------------*\
    #Additional Premium Styles
\*-----------------*/
.woocommerce input {
    border: 2px solid var(--wc-border-color);
    padding: 12px;
    height: 48px !important;
    border-radius: var(--wc-radius-md);
    transition: var(--wc-transition-base);
}

.woocommerce input:focus {
    border-color: var(--wc-gold-primary);
    box-shadow: 0 0 0 3px rgba(194, 182, 151, 0.1);
}

.woocommerce-page .content-area .site-main {
    display: block;
    flex-flow: nowrap;
    margin-left: auto;
    margin-right: auto;
}

.woocommerce .products ul,
.woocommerce ul.products {
    margin: 0 -1%;
}

.woocommerce .page-title {
    margin-top: 0;
    float: left;
    color: var(--wc-luxury-dark);
    font-weight: var(--wc-font-weight-bold);
}

.woocommerce .woocommerce-ordering+ul.products {
    padding-top: var(--wc-spacing-xl);
}

.woocommerce .woocommerce-result-count {
    float: right;
    margin-right: 240px;
    line-height: 48px;
    font-size: 14px;
    color: var(--wc-luxury-medium);
    font-weight: var(--wc-font-weight-medium);
}

.woocommerce .woocommerce-ordering {
    float: right;
    margin-right: -415px;
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width:767px) {
    .woocommerce .page-title {
        margin-top: 0;
        float: none;
    }

    .woocommerce .woocommerce-result-count {
        float: none;
        margin-right: 0;
        line-height: normal;
    }

    .woocommerce .woocommerce-ordering {
        float: none;
        margin-right: 0;
    }

    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 48%;
    }
}

.woocommerce #respond input#submit.loading,
.woocommerce a.button.loading,
.woocommerce button.button.loading,
.woocommerce input.button.loading {
    padding: 12px 40px 12px 20px !important;
}

.woocommerce #respond input#submit.loading::after,
.woocommerce a.button.loading::after,
.woocommerce button.button.loading::after,
.woocommerce input.button.loading::after {
    vertical-align: middle;
    top: .818em;
}

/* Premium Sale Badge */
.woocommerce span.onsale {
    line-height: 2.5;
    padding: 8px 16px;
    border-radius: var(--wc-radius-md);
    min-width: auto;
    min-height: auto;
    margin: 0 !important;
    top: 12px;
    left: 12px;
    background: linear-gradient(135deg, var(--wc-accent-error), #a83232);
    color: var(--wc-luxury-white);
    font-weight: var(--wc-font-weight-bold);
    font-size: 13px;
    letter-spacing: 0.5px;
    box-shadow: var(--wc-shadow-md);
    text-transform: uppercase;
}

/* Product Price - Enhanced */
.summary.entry-summary .woocommerce-Price-amount.amount {
    font-size: 36px;
    margin-top: var(--wc-spacing-md);
    display: inline-block;
    font-weight: var(--wc-font-weight-bold);
    color: var(--wc-gold-dark);
    letter-spacing: -0.5px;
}

.woocommerce-product-details__short-description {
    border-top: 2px solid var(--wc-border-color);
    border-bottom: 2px solid var(--wc-border-color);
    padding: var(--wc-spacing-lg) 0;
    margin: var(--wc-spacing-lg) 0;
    background: var(--wc-luxury-light);
    padding: var(--wc-spacing-lg);
    border-radius: var(--wc-radius-md);
}

.woocommerce-product-gallery .flex-viewport {
    margin-bottom: 12px;
    border-radius: var(--wc-radius-lg);
    overflow: hidden;
    box-shadow: var(--wc-shadow-sm);
}

.woocommerce div.product div.images .flex-control-thumbs li:not(:first-child),
.woocommerce div.product .woocommerce-tabs ul.tabs li:not(:first-child) {
    margin-left: 12px;
}

.woocommerce-Tabs-panel h2 {
    font-size: 22px;
    margin-top: 0;
    color: var(--wc-luxury-dark);
    font-weight: var(--wc-font-weight-bold);
}

.woocommerce div.product .woocommerce-tabs .panel {
    margin: 0 0 5em;
    padding: var(--wc-spacing-lg) 0;
}

.woocommerce div.product .woocommerce-tabs .panel .comment-reply-title,
.woocommerce div.product .woocommerce-tabs .panel .comments-title {
    border-bottom: medium none;
    font-weight: var(--wc-font-weight-bold);
    line-height: normal;
    margin-bottom: var(--wc-spacing-xl);
    position: relative;
    padding-bottom: 0;
    font-size: 20px;
    overflow: hidden;
    display: inline-block;
    color: var(--wc-luxury-dark);
}

.woocommerce #reviews #comments h2 {
    margin-bottom: var(--wc-spacing-xl);
}

.woocommerce #reviews #comments ol.commentlist li {
    margin-bottom: var(--wc-spacing-xl);
    border: 1px solid var(--wc-border-color);
    border-radius: var(--wc-radius-md);
    padding: var(--wc-spacing-lg);
}

.woocommerce div.product .woocommerce-tabs .panel .comment-form {
    background: var(--wc-luxury-light);
    padding: var(--wc-spacing-xl);
    border-radius: var(--wc-radius-md);
    border: 2px solid var(--wc-border-color);
}

.woocommerce div.product form.cart .variations {
    margin-bottom: 0;
}

.woocommerce div.product form.cart .variations td {
    padding: 8px 0;
}

.woocommerce div.product form.cart .variations td.label {
    padding-right: 1em;
    text-align: left;
    width: 20%;
    display: table-cell;
    padding: 8px 0;
    vertical-align: middle;
    line-height: normal;
}

.woocommerce div.product form.cart .variations label {
    font-weight: var(--wc-font-weight-semibold);
    color: var(--wc-luxury-dark);
    font-size: 16px;
    text-transform: capitalize;
}

.woocommerce div.product form.variations_form.cart .single_variation_wrap .single_variation {
    border-bottom: 2px solid var(--wc-border-color);
    margin-bottom: var(--wc-spacing-md);
    padding-bottom: var(--wc-spacing-md);
    background: var(--wc-luxury-light);
    padding: var(--wc-spacing-md);
    border-radius: var(--wc-radius-md);
}

/* Premium Upsells Section */
.up-sells.upsells.products {
    position: relative;
    z-index: 2;
    padding: 60px 0;
    margin-bottom: 60px;
}

.up-sells.upsells.products:after {
    position: absolute;
    content: '';
    background: linear-gradient(135deg, var(--wc-luxury-light) 0%, #ffffff 100%);
    height: 100%;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    top: 0;
    z-index: -1;
    border-top: 2px solid var(--wc-border-color);
    border-bottom: 2px solid var(--wc-border-color);
}

.related.products>h2,
.up-sells.upsells.products>h2 {
    margin-top: 0;
    margin-bottom: var(--wc-spacing-xl);
    font-size: 28px;
    color: var(--wc-luxury-dark);
    font-weight: var(--wc-font-weight-bold);
}

/* Checkout & Order Success */
.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
    font-size: 22px;
    font-weight: var(--wc-font-weight-semibold);
    text-align: center;
    margin-bottom: var(--wc-spacing-xl);
    padding: var(--wc-spacing-lg);
    background: linear-gradient(135deg, var(--wc-gold-shine), var(--wc-luxury-light));
    border-radius: var(--wc-radius-md);
    border: 2px solid var(--wc-gold-primary);
    color: var(--wc-luxury-dark);
}

.woocommerce ul.order_details {
    margin: 0 0 1em;
    list-style: none;
    padding: var(--wc-spacing-lg);
    background: var(--wc-luxury-light);
    border-radius: var(--wc-radius-md);
    border: 2px solid var(--wc-border-color);
}

.woocommerce-order-details h2,
.woocommerce-customer-details h2 {
    font-size: 20px;
    font-weight: var(--wc-font-weight-bold);
    color: var(--wc-luxury-dark);
}

.woocommerce .woocommerce-order .woocommerce-customer-details address {
    padding: var(--wc-spacing-xl);
    border-radius: var(--wc-radius-md);
    background: var(--wc-luxury-light);
    border: 2px solid var(--wc-border-color);
}

/*-----------------*\
    #Premium MyAccount Section
\*-----------------*/
.woocommerce-MyAccount-navigation {}

.woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
    border-right: 2px solid var(--wc-border-color);
    padding-top: var(--wc-spacing-xl);
    padding-bottom: var(--wc-spacing-xl);
}

.woocommerce-MyAccount-navigation ul>li>a {
    padding: var(--wc-spacing-md);
    display: block;
    border-width: 2px 0 2px 2px;
    border-style: solid;
    border-color: transparent;
    margin-bottom: 8px;
    border-top-left-radius: var(--wc-radius-md);
    border-bottom-left-radius: var(--wc-radius-md);
    transition: var(--wc-transition-base);
    font-weight: var(--wc-font-weight-medium);
}

.woocommerce-MyAccount-navigation ul>li>a:hover,
.woocommerce-MyAccount-navigation ul>li>a:focus,
.woocommerce-MyAccount-navigation ul>li.is-active>a,
.woocommerce-MyAccount-navigation ul>li.is-active>a:hover,
.woocommerce-MyAccount-navigation ul>li.is-active>a:focus {
    font-weight: var(--wc-font-weight-semibold);
    border-width: 2px;
    border-style: solid;
    border-color: var(--wc-border-color) transparent var(--wc-border-color) var(--wc-gold-primary);
    background: var(--wc-luxury-white);
    margin-right: -2px;
    color: var(--wc-gold-dark);
    box-shadow: var(--wc-shadow-sm);
}

.woocommerce-account .woocommerce-MyAccount-content {
    padding-left: var(--wc-spacing-xl);
    padding-top: var(--wc-spacing-xl);
}

.woocommerce-account .woocommerce-Address-title.title {
    background: linear-gradient(135deg, var(--wc-gold-primary), var(--wc-gold-light));
    padding: var(--wc-spacing-md);
    color: var(--wc-luxury-white);
    border-radius: var(--wc-radius-md);
}

.woocommerce-account .addresses .title h3 {
    margin: 0;
    color: var(--wc-luxury-white);
    font-weight: var(--wc-font-weight-semibold);
}

.woocommerce-account .addresses address {
    padding: var(--wc-spacing-lg);
    background: var(--wc-luxury-light);
    border-radius: var(--wc-radius-md);
    border: 2px solid var(--wc-border-color);
}

.woocommerce-account .col2-set .col-1,
.woocommerce-account .woocommerce-page .col2-set .col-1,
.woocommerce-account .col2-set .col-2,
.woocommerce-account .woocommerce-page .col2-set .col-2 {
    width: 100%;
    float: none;
}

.woocommerce-MyAccount-content fieldset {
    margin: var(--wc-spacing-xl) 2px;
    padding: 0 var(--wc-spacing-lg) var(--wc-spacing-lg);
    border: 2px solid var(--wc-border-color);
    border-radius: var(--wc-radius-md);
}

.woocommerce-MyAccount-content fieldset legend {
    display: inline-block;
    width: auto;
    padding: 0 var(--wc-spacing-md);
    margin: var(--wc-spacing-md) 0;
    font-weight: var(--wc-font-weight-semibold);
    color: var(--wc-luxury-dark);
}

/*-----------------*\
    #Premium Login Form
\*-----------------*/
.woocommerce-form-login .woocommerce-form__label-for-checkbox {
    float: right;
}

.woocommerce .woocommerce-form-login .woocommerce-form__label-for-checkbox input {
    height: auto !important;
}

.woocommerce-form-login {
    border: 2px solid var(--wc-border-color);
    border-radius: var(--wc-radius-lg);
    padding: var(--wc-spacing-xl);
    background: var(--wc-luxury-white);
    box-shadow: var(--wc-shadow-sm);
}

/*-----------------*\
    #Premium Cart Table
\*-----------------*/
.woocommerce table.shop_table {
    border-radius: var(--wc-radius-md);
    overflow: hidden;
    border: 2px solid var(--wc-border-color);
}

.woocommerce table.shop_table thead {
    background: linear-gradient(135deg, var(--wc-gold-primary), var(--wc-gold-dark));
    color: var(--wc-luxury-white);
}

.woocommerce table.shop_table thead th {
    padding: var(--wc-spacing-md);
    font-weight: var(--wc-font-weight-semibold);
    border: none;
}

.woocommerce table.shop_table tbody tr {
    border-bottom: 1px solid var(--wc-border-color);
    transition: var(--wc-transition-base);
}

.woocommerce table.shop_table tbody tr:hover {
    background: var(--wc-luxury-light);
}

/*--------------------------------------------------------------
# END WooCommerce PREMIUM LUXURY EDITION
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# PREMIUM LUXUS - Miscellaneous - Error 404, Contact Form 7, About, Pricing, Bootstrap Fixes
--------------------------------------------------------------*/

/*-----------------*\
    #Premium CSS Variables
\*-----------------*/
:root {
    /* Premium Gold Colors */
    --premium-gold-primary: #D4AF37;
    --premium-gold-light: #F4E5C2;
    --premium-gold-dark: #B8941F;
    --premium-gold-accent: #FFD700;
    --premium-gold-gradient-start: #D4AF37;
    --premium-gold-gradient-end: #F4E5C2;

    /* Premium Dark Colors */
    --premium-dark-primary: #1a1a1a;
    --premium-dark-secondary: #2c2c2c;
    --premium-dark-tertiary: #3d3d3d;

    /* Premium Text Colors */
    --premium-text-gold: #D4AF37;
    --premium-text-light: #f5f5f5;
    --premium-text-dark: #1a1a1a;
    --premium-text-muted: #8c8c8c;

    /* Premium Spacing */
    --premium-spacing-xs: 10px;
    --premium-spacing-sm: 20px;
    --premium-spacing-md: 40px;
    --premium-spacing-lg: 60px;
    --premium-spacing-xl: 100px;

    /* Premium Typography */
    --premium-font-size-xs: 12px;
    --premium-font-size-sm: 14px;
    --premium-font-size-md: 16px;
    --premium-font-size-lg: 18px;
    --premium-font-size-xl: 24px;
    --premium-font-size-xxl: 36px;
    --premium-font-size-huge: 48px;

    /* Premium Transitions */
    --premium-transition-fast: 0.2s ease-in-out;
    --premium-transition-normal: 0.3s ease-in-out;
    --premium-transition-slow: 0.5s ease-in-out;

    /* Premium Shadows */
    --premium-shadow-sm: 0 2px 8px rgba(212, 175, 55, 0.1);
    --premium-shadow-md: 0 4px 16px rgba(212, 175, 55, 0.15);
    --premium-shadow-lg: 0 8px 32px rgba(212, 175, 55, 0.2);
    --premium-shadow-xl: 0 12px 48px rgba(212, 175, 55, 0.25);
    --premium-shadow-gold: 0 0 20px rgba(212, 175, 55, 0.3);

    /* Premium Borders */
    --premium-border-width: 2px;
    --premium-border-radius-sm: 4px;
    --premium-border-radius-md: 8px;
    --premium-border-radius-lg: 12px;
}

/*-----------------*\
    #Premium Error 404 Page
\*-----------------*/
.error404 {
    background: linear-gradient(135deg, var(--premium-dark-primary) 0%, var(--premium-dark-secondary) 100%);
    min-height: 100vh;
    position: relative;
    overflow: hidden;
}

.error404::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 50% 50%, rgba(212, 175, 55, 0.05) 0%, transparent 70%);
    pointer-events: none;
}

.error404 #primary {
    width: 100%;
    position: relative;
    z-index: 2;
    padding: var(--premium-spacing-xl) 0;
}

.error404 #primary .not-found {
    text-align: center;
    padding: var(--premium-spacing-lg) var(--premium-spacing-md);
    background: rgba(255, 255, 255, 0.02);
    backdrop-filter: blur(10px);
    border-radius: var(--premium-border-radius-lg);
    border: var(--premium-border-width) solid rgba(212, 175, 55, 0.2);
    box-shadow: var(--premium-shadow-xl);
    max-width: 800px;
    margin: 0 auto;
}

.error404 h1 {
    font-size: 280px;
    font-weight: 900;
    position: relative;
    color: transparent;
    background: linear-gradient(135deg, var(--premium-gold-primary) 0%, var(--premium-gold-accent) 50%, var(--premium-gold-primary) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    margin-top: 0;
    margin-bottom: var(--premium-spacing-md);
    text-align: center;
    text-shadow: 0 0 60px rgba(212, 175, 55, 0.3);
    animation: premiumGoldShimmer 3s ease-in-out infinite;
    line-height: 1;
    letter-spacing: -0.02em;
}

.error404 h1::before {
    content: attr(data-text);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, transparent 0%, var(--premium-gold-accent) 50%, transparent 100%);
    -webkit-background-clip: text;
    background-clip: text;
    opacity: 0;
    animation: premiumGoldPulse 2s ease-in-out infinite;
}

@keyframes premiumGoldShimmer {
    0%, 100% {
        filter: brightness(1) contrast(1);
    }
    50% {
        filter: brightness(1.2) contrast(1.1);
    }
}

@keyframes premiumGoldPulse {
    0%, 100% {
        opacity: 0;
    }
    50% {
        opacity: 0.3;
    }
}

.error404 .page-title {
    color: var(--premium-text-light);
    font-size: var(--premium-font-size-xxl);
    font-weight: 300;
    margin-bottom: var(--premium-spacing-sm);
    position: relative;
}

.error404 .page-title::after {
    content: '';
    display: block;
    width: 100px;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--premium-gold-primary), transparent);
    margin: var(--premium-spacing-sm) auto;
}

.error404 .error-content {
    padding-top: var(--premium-spacing-md);
    color: var(--premium-text-muted);
    font-size: var(--premium-font-size-lg);
    line-height: 1.8;
}

.error404 .error-content p {
    margin-bottom: var(--premium-spacing-md);
    color: var(--premium-text-light);
    opacity: 0.8;
}

.error404 .premium-404-actions {
    margin-top: var(--premium-spacing-lg);
    display: flex;
    gap: var(--premium-spacing-sm);
    justify-content: center;
    flex-wrap: wrap;
}

.error404 .premium-404-btn {
    display: inline-block;
    padding: 15px 40px;
    background: linear-gradient(135deg, var(--premium-gold-primary), var(--premium-gold-dark));
    color: var(--premium-dark-primary);
    text-decoration: none;
    border-radius: var(--premium-border-radius-md);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all var(--premium-transition-normal);
    border: var(--premium-border-width) solid var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-gold);
    position: relative;
    overflow: hidden;
}

.error404 .premium-404-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left var(--premium-transition-slow);
}

.error404 .premium-404-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 40px rgba(212, 175, 55, 0.4);
}

.error404 .premium-404-btn:hover::before {
    left: 100%;
}

.error404 .premium-404-btn-secondary {
    background: transparent;
    color: var(--premium-gold-primary);
    border: var(--premium-border-width) solid var(--premium-gold-primary);
}

.error404 .premium-404-btn-secondary:hover {
    background: rgba(212, 175, 55, 0.1);
}

/* Responsive 404 */
@media only screen and (max-width: 768px) {
    .error404 h1 {
        font-size: 150px;
    }

    .error404 .page-title {
        font-size: var(--premium-font-size-xl);
    }

    .error404 .error-content {
        font-size: var(--premium-font-size-md);
    }

    .error404 .premium-404-actions {
        flex-direction: column;
        align-items: center;
    }

    .error404 .premium-404-btn {
        width: 100%;
        max-width: 300px;
    }
}

/*-----------------*\
    #Premium Contact Form 7
\*-----------------*/
.premium-contact-form-wrapper {
    background: linear-gradient(135deg, rgba(26, 26, 26, 0.95) 0%, rgba(44, 44, 44, 0.95) 100%);
    padding: var(--premium-spacing-lg);
    border-radius: var(--premium-border-radius-lg);
    border: var(--premium-border-width) solid var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-xl);
    position: relative;
    overflow: hidden;
}

.premium-contact-form-wrapper::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.05) 0%, transparent 70%);
    animation: premiumFormGlow 10s linear infinite;
}

@keyframes premiumFormGlow {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.premium-contact-form-wrapper .wpcf7-form {
    position: relative;
    z-index: 1;
}

.wpcf7-form input,
  .wpcf7-form .your-message textarea,
  .wpcf7-form select {
      background: #ffffff;
      color: var(--color-charcoal);
      border: 2px solid var(--color-sand);
      outline: none;
      padding: 15px 20px;
      font-size: var(--premium-font-size-md);
      width: 100%;
      box-sizing: border-box;
      -webkit-box-sizing: border-box;
      height: 50px;
      border-radius: var(--premium-border-radius-sm);
      transition: all var(--premium-transition-normal);
      font-family: inherit;
  }

  .wpcf7-form input:focus,
  .wpcf7-form .your-message textarea:focus,
  .wpcf7-form select:focus {
      border-color: var(--color-primary);
      background: #ffffff;
      box-shadow: 0 0 0 4px rgba(194, 182, 151, 0.1), var(--shadow-gold);
      transform: translateY(-2px);
  }

  .wpcf7-form input::placeholder,
  .wpcf7-form .your-message textarea::placeholder {
      color: var(--premium-text-muted);
      opacity: 0.7;
  }

  .wpcf7-form .your-message textarea {
      height: 180px;
      resize: vertical;
      min-height: 120px;
      max-height: 400px;
  }

  /* Labels - Default DUNKEL (für normale Seiten) */
  .wpcf7-form label {
      width: 100%;
      font-weight: 500;
      color: var(--color-navy);  /* Dunkel statt hell - KORREKTUR */
      font-size: var(--premium-font-size-md);
      margin-bottom: var(--premium-spacing-xs);
      display: block;
      position: relative;
      padding-left: var(--premium-spacing-sm);
  }

  /* Premium Dark Wrapper Override - Labels HELL auf dunklem Hintergrund */
  .premium-contact-form-wrapper .wpcf7-form label {
      color: var(--premium-text-light);  /* Weiß nur im Dark Wrapper */
  }

  /* Premium Dark Wrapper Override - Inputs transparent auf dunklem Hintergrund
   */
  .premium-contact-form-wrapper .wpcf7-form input,
  .premium-contact-form-wrapper .wpcf7-form .your-message textarea,
  .premium-contact-form-wrapper .wpcf7-form select {
      background: rgba(255, 255, 255, 0.05);
      color: var(--premium-text-light);
      border: 2px solid rgba(212, 175, 55, 0.3);
      backdrop-filter: blur(5px);
  }

  .premium-contact-form-wrapper .wpcf7-form input:focus,
  .premium-contact-form-wrapper .wpcf7-form .your-message textarea:focus,
  .premium-contact-form-wrapper .wpcf7-form select:focus {
      background: rgba(255, 255, 255, 0.08);
  }

.wpcf7-form label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    height: 60%;
    background: linear-gradient(180deg, var(--premium-gold-primary), var(--premium-gold-dark));
    border-radius: 2px;
}

.wpcf7-form .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: var(--premium-spacing-md);
}

.wpcf7-form input.wpcf7-submit {
    border: none;
    background: linear-gradient(135deg, var(--premium-gold-primary) 0%, var(--premium-gold-dark) 100%);
    color: var(--premium-dark-primary);
    display: inline-block;
    margin: var(--premium-spacing-sm) 0;
    padding: 15px 50px;
    position: relative;
    text-align: center;
    transform: translateZ(0px);
    width: auto;
    min-width: 250px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    border-radius: var(--premium-border-radius-md);
    cursor: pointer;
    transition: all var(--premium-transition-normal);
    box-shadow: var(--premium-shadow-gold);
    overflow: hidden;
    height: auto;
}

.wpcf7-form input.wpcf7-submit::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    transition: width var(--premium-transition-slow), height var(--premium-transition-slow);
}

.wpcf7-form input.wpcf7-submit:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 10px 40px rgba(212, 175, 55, 0.5);
}

.wpcf7-form input.wpcf7-submit:hover::before {
    width: 300px;
    height: 300px;
}

.wpcf7-form input.wpcf7-submit:active {
    transform: translateY(-1px) scale(1);
}

/* Premium Loading State */
.wpcf7-form.submitting input.wpcf7-submit {
    opacity: 0.7;
    cursor: not-allowed;
    background: linear-gradient(135deg, var(--premium-gold-dark) 0%, var(--premium-gold-primary) 100%);
}

.wpcf7-response-output {
    clear: both;
    margin-top: var(--premium-spacing-md);
    border-radius: var(--premium-border-radius-md);
    font-weight: 500;
    letter-spacing: 0.5px;
}

.wpcf7-validation-errors,
.wpcf7-acceptance-missing,
.wpcf7-mail-sent-ng,
.wpcf7-mail-sent-ok {
    color: var(--premium-text-light);
    margin: 0 !important;
    padding: 18px 24px !important;
    border-radius: var(--premium-border-radius-md);
    border: 2px solid;
    backdrop-filter: blur(10px);
    font-size: var(--premium-font-size-md);
    box-shadow: var(--premium-shadow-lg);
}

.wpcf7-acceptance-missing {
    background: linear-gradient(135deg, rgba(247, 231, 0, 0.2), rgba(247, 231, 0, 0.3));
    border-color: #f7e700;
    color: #fff;
}

.wpcf7-mail-sent-ng,
.wpcf7-validation-errors {
    background: linear-gradient(135deg, rgba(255, 0, 0, 0.2), rgba(200, 0, 0, 0.3));
    border-color: #ff3333;
    animation: premiumShakeError 0.5s ease-in-out;
}

@keyframes premiumShakeError {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-10px); }
    75% { transform: translateX(10px); }
}

.wpcf7-mail-sent-ok {
    border-color: var(--premium-gold-primary);
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.2), rgba(212, 175, 55, 0.3));
    animation: premiumSuccessPulse 0.5s ease-in-out;
}

@keyframes premiumSuccessPulse {
    0% { transform: scale(0.95); opacity: 0; }
    50% { transform: scale(1.02); }
    100% { transform: scale(1); opacity: 1; }
}

.wpcf7-form input.wpcf7-not-valid,
.wpcf7-form .your-message textarea.wpcf7-not-valid {
    border-color: #ff3333;
    background: rgba(255, 51, 51, 0.1);
    animation: premiumFieldError 0.3s ease-in-out;
}

@keyframes premiumFieldError {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}

.wpcf7-not-valid-tip {
    display: block !important;
    color: #ff6666;
    font-size: var(--premium-font-size-sm);
    margin-top: 5px;
    padding-left: var(--premium-spacing-xs);
    font-weight: 500;
}

/* Premium Form Title */
.premium-form-title {
    color: var(--premium-text-light);
    font-size: var(--premium-font-size-huge);
    font-weight: 300;
    text-align: center;
    margin-bottom: var(--premium-spacing-lg);
    position: relative;
    padding-bottom: var(--premium-spacing-md);
}

.premium-form-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--premium-gold-primary), transparent);
}

.premium-form-title span {
    background: linear-gradient(135deg, var(--premium-gold-primary), var(--premium-gold-accent));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* Responsive Contact Form */
@media only screen and (max-width: 768px) {
    .premium-contact-form-wrapper {
        padding: var(--premium-spacing-md);
    }

    .premium-form-title {
        font-size: var(--premium-font-size-xxl);
    }

    .wpcf7-form input.wpcf7-submit {
        width: 100%;
        min-width: auto;
    }
}

/*-----------------*\
    #About Feature Section
\*-----------------*/
.at-feature-about {
    margin-top: var(--premium-spacing-xl);
    padding: 0;
}

.home .at-feature-about .container {
    width: 100%;
    padding: 0;
}

.at-feature-about .at-widget-title-wrapper {
    margin-bottom: var(--premium-spacing-md);
}

.at-feature-about .at-widget-title-wrapper:after {
    left: 0;
    float: left;
    right: inherit;
    bottom: -20px;
}

.at-feature-about .at-widget-title-wrapper .widget-title,
.at-feature-about .at-widget-title-wrapper .at-subtitle {
    text-align: left;
    width: 100%;
}

.at-feature-about .at-widget-title-wrapper .at-subtitle {
    font-size: var(--premium-font-size-lg);
    font-weight: 300;
    line-height: 1.6;
}

.at-feature-about-img {
    text-align: center;
}

.at-feature-about-img img {
    width: 100%;
    border-radius: var(--premium-border-radius-md);
    box-shadow: var(--premium-shadow-lg);
}

.at-feature-about .btn {
    margin-top: var(--premium-spacing-md);
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width:767px) {
    .at-feature-about {
        margin-top: 0;
    }

    .at-feature-about .at-widget-title-wrapper {
        margin-top: var(--premium-spacing-md);
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .at-feature-about {
        margin-top: var(--premium-spacing-sm);
        padding-bottom: var(--premium-spacing-md);
    }
}

@media (min-width: 993px) {

    .at-feature-about [class*="col-"]+[class*="col-"],
    .at-feature-about [class^="col-"]+[class^="col-"] {
        padding: 0 80px 40px 40px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
}

/*-----------------*\
    #Feature Widget Styles
\*-----------------*/
.widget_lawyer_zone_feature .at-parallax .widget-title {
    color: var(--premium-text-light);
    font-size: 55px;
    margin-bottom: var(--premium-spacing-sm);
}

.widget_lawyer_zone_feature .at-parallax {
    position: relative;
    z-index: 2;
    padding: var(--premium-spacing-xl) 0;
    text-align: center;
}

.widget_lawyer_zone_feature .at-parallax h2 {
    font-size: var(--premium-font-size-xxl);
    font-weight: 300;
    color: var(--premium-text-light);
}

.widget_lawyer_zone_feature .at-parallax:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: linear-gradient(135deg, rgba(26, 26, 26, 0.85) 0%, rgba(68, 70, 93, 0.75) 100%);
    z-index: -1;
}

.widget_lawyer_zone_feature .at-parallax .at-widget-title-wrapper {
    margin-bottom: var(--premium-spacing-md);
}

.widget_lawyer_zone_feature .at-parallax .at-widget-title-wrapper::after {
    display: none;
}

.at-widgets.primary-bg.at-parallax {
    border: medium none;
}

.at-widgets.at-parallax .btn-reverse {
    border-color: var(--premium-gold-primary);
    color: var(--premium-gold-primary);
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width:767px) {
    .widget_lawyer_zone_feature .at-parallax {
        padding: var(--premium-spacing-md) 0;
    }

    .at-feature-about [class*="col-"]+[class*="col-"],
    .at-feature-about [class^="col-"]+[class^="col-"] {
        padding: 0 35px;
    }

    .at-feature-about .btn {
        margin-bottom: var(--premium-spacing-md);
    }

    .widget_lawyer_zone_feature .at-parallax .widget-title {
        font-size: 45px;
    }

    .widget_lawyer_zone_feature .at-parallax h2 {
        font-size: 26px;
    }

    .widget_lawyer_zone_feature .at-parallax .at-widget-title-wrapper {
        margin-bottom: var(--premium-spacing-md);
    }

}

/*-----------------*\
    #Premium Pricing Boxes
\*-----------------*/
.at-pricing-box {
    border: 2px solid rgba(212, 175, 55, 0.3);
    position: relative;
    margin-bottom: var(--premium-spacing-sm);
    border-radius: var(--premium-border-radius-lg);
    overflow: hidden;
    background: linear-gradient(135deg, rgba(26, 26, 26, 0.5) 0%, rgba(44, 44, 44, 0.5) 100%);
    backdrop-filter: blur(10px);
    transition: all var(--premium-transition-normal);
}

.at-pricing-box:hover {
    transform: translateY(-10px);
    box-shadow: var(--premium-shadow-xl), 0 0 40px rgba(212, 175, 55, 0.2);
    border-color: var(--premium-gold-primary);
}

.at-pricing-img-box {
    position: relative;
    overflow: hidden;
}

.at-pricing-img-box::before {
    bottom: 0;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    opacity: 0.85;
    position: absolute;
    width: 100%;
    z-index: 1;
    background: linear-gradient(135deg, rgba(26, 26, 26, 0.7) 0%, rgba(212, 175, 55, 0.3) 100%);
    -webkit-transition: all var(--premium-transition-slow);
    -o-transition: all var(--premium-transition-slow);
    transition: all var(--premium-transition-slow);
}

.at-price-no-img .at-pricing-img-box {
    min-height: 280px;
    background: linear-gradient(135deg, var(--premium-dark-primary) 0%, var(--premium-dark-secondary) 100%);
}

.at-pricing-header {
    position: absolute;
    top: 0;
    z-index: 2;
    color: var(--premium-text-light);
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

.at-pricing-header h3 {
    margin-top: 0;
    font-weight: 400;
    color: var(--premium-text-light);
    border-bottom: 2px solid var(--premium-gold-primary);
    padding-bottom: var(--premium-spacing-sm);
    text-transform: uppercase;
    letter-spacing: 2px;
}

.at-pricing-header h2 {
    font-weight: 700;
    font-size: 70px;
    color: transparent;
    background: linear-gradient(135deg, var(--premium-gold-primary), var(--premium-gold-accent));
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: var(--premium-shadow-gold);
}

.at-pricing-header h2 small {
    display: block;
    font-size: 30%;
    margin-bottom: var(--premium-spacing-xs);
    color: var(--premium-text-light);
    opacity: 0.8;
}

.at-pricing-header h2 sup {
    font-size: 22px;
    top: -30px;
    left: 0px;
    font-weight: 600;
}

.at-pricing-header,
.at-pricing-body,
.at-pricing-footer {
    padding: var(--premium-spacing-sm);
}

.at-pricing-body {
    background: rgba(255, 255, 255, 0.02);
}

.at-pricing-body ul {
    list-style: none;
    padding: 0;
}

.at-pricing-body ul li {
    padding: 12px 0;
    border-bottom: 1px solid rgba(212, 175, 55, 0.1);
    position: relative;
    padding-left: var(--premium-spacing-sm);
}

.at-pricing-body ul li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: var(--premium-gold-primary);
    font-weight: 700;
}

.at-pricing-body ul li span {
    float: right;
    color: var(--premium-gold-primary);
    font-weight: 600;
}

.at-pricing-header,
.at-pricing-footer {
    text-align: center;
}

.at-pricing-body+.at-pricing-footer {
    margin-bottom: -40px;
    padding-top: 0;
}

.at-pricing-footer {
    margin-bottom: 0;
    padding-top: var(--premium-spacing-sm);
    background: rgba(0, 0, 0, 0.2);
}

.at-pricing-footer .btn {
    width: 90%;
    background: linear-gradient(135deg, var(--premium-gold-primary), var(--premium-gold-dark));
    color: var(--premium-dark-primary);
    border: none;
    padding: 15px 30px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: var(--premium-border-radius-md);
    transition: all var(--premium-transition-normal);
    box-shadow: var(--premium-shadow-gold);
}

.at-pricing-footer .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(212, 175, 55, 0.5);
}

.at-pricing-box:hover .at-pricing-header h2 {
    -webkit-transition: all var(--premium-transition-slow);
    -o-transition: all var(--premium-transition-slow);
    transition: all var(--premium-transition-slow);
    filter: brightness(1.2);
}

.at-pricing-box:hover .at-pricing-img-box::before {
    opacity: 0.95;
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.4) 0%, rgba(26, 26, 26, 0.8) 100%);
    -webkit-transition: all var(--premium-transition-slow);
    -o-transition: all var(--premium-transition-slow);
    transition: all var(--premium-transition-slow);
}

.at-pricing-box:focus-within .at-pricing-header h2 {
    -webkit-transition: all var(--premium-transition-slow);
    -o-transition: all var(--premium-transition-slow);
    transition: all var(--premium-transition-slow);
    filter: brightness(1.2);
}

.at-pricing-box:focus-within .at-pricing-img-box::before {
    opacity: 0.95;
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.4) 0%, rgba(26, 26, 26, 0.8) 100%);
    -webkit-transition: all var(--premium-transition-slow);
    -o-transition: all var(--premium-transition-slow);
    transition: all var(--premium-transition-slow);
}

/* Pricing Badge */
.at-pricing-badge {
    position: absolute;
    top: 20px;
    right: -35px;
    background: linear-gradient(135deg, var(--premium-gold-primary), var(--premium-gold-dark));
    color: var(--premium-dark-primary);
    padding: 8px 40px;
    transform: rotate(45deg);
    font-weight: 700;
    font-size: var(--premium-font-size-xs);
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 3;
    box-shadow: var(--premium-shadow-md);
}

@media only screen and (max-width: 767px) {
    .at-pricing-header h2 {
        margin-top: var(--premium-spacing-xs);
        font-size: 50px;
    }
}

@media only screen and (max-width: 768px) {
    .at-pricing-header {
        padding-left: 0;
        padding-right: 0;
        width: 70%;
    }

    .at-pricing-header h2 {
        margin-top: var(--premium-spacing-xs);
        font-size: 45px;
    }

    .at-pricing-header h2 sup {
        top: -20px;
    }
}

/*-----------------*\
    #Page Builder Customization
\*-----------------*/
#pl-267 .so-panel {
    margin-bottom: 0 !important;
}

.page-template .widget_media_image.panel-first-child {
    position: relative;
    z-index: 2;
}

/*-----------------*\
    #Premium Select2 Customization
\*-----------------*/
.select2-container .select2-selection--single {
    height: 50px;
    border-radius: var(--premium-border-radius-sm);
    border: 2px solid rgba(212, 175, 55, 0.3);
    background: rgba(255, 255, 255, 0.05);
    transition: all var(--premium-transition-normal);
}

.select2-container .select2-selection--single:hover,
.select2-container .select2-selection--single:focus {
    border-color: var(--premium-gold-primary);
    box-shadow: var(--premium-shadow-md);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--premium-text-light);
    line-height: 50px;
    padding-left: 20px;
    font-size: var(--premium-font-size-md);
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 50px;
    position: absolute;
    top: 1px;
    right: 15px;
    width: 20px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--premium-gold-primary) transparent transparent transparent;
}

/*-----------------*\
    #Bootstrap Menu Fixed (Mobile)
\*-----------------*/
@media (max-width: 1024px) {
    .navbar-header {
        float: none;
        width: 100%;
        max-width: 100%;
        padding: var(--premium-spacing-xs) 0;
    }

    .navbar-left,
    .navbar-right {
        float: none !important;
    }

    .navbar-toggle {
        display: block;
        border-color: var(--premium-gold-primary);
    }

    .navbar-toggle .icon-bar {
        background-color: var(--premium-gold-primary);
    }

    .navbar-collapse {
        border-top: 1px solid rgba(212, 175, 55, 0.2);
        box-shadow: inset 0 1px 0 rgba(212, 175, 55, 0.1);
    }

    .navbar-collapse.in {
        overflow-y: auto !important;
    }

    .navbar-collapse.collapse {
        display: none !important;
    }

    .navbar-nav {
        float: none;
    }

    .navbar-nav>li {
        float: none;
    }

    .navbar-nav>li>a {
        line-height: 20px;
    }

    .collapse.in {
        display: block !important;
    }

    #navbar .container {
        position: relative;
    }

    .main-navigation {
        width: 100%;
        text-align: left;
    }

    #navbar .navbar-collapse {
        height: auto;
        max-height: 70vh;
        right: 0;
        left: 0;
        z-index: 999;
        background: linear-gradient(135deg, var(--premium-dark-primary) 0%, var(--premium-dark-secondary) 100%);
    }
}

/*-----------------*\
    #Page Builder CSS
\*-----------------*/
.at-grid-full-width .container {
    width: 100%;
    margin: 0;
}

.at-grid-full-width {
    margin: 0;
}

.at-grid-full-width .main-title {
    margin-bottom: var(--premium-spacing-xs);
}

.at-grid-full-width .acme-col-posts.at-widgets .at-btn-wrap {
    margin-top: var(--premium-spacing-xs);
}

/*-----------------*\
    #Premium Animations
\*-----------------*/
@keyframes premiumFadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes premiumSlideIn {
    from {
        transform: translateX(-100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes premiumScaleIn {
    from {
        transform: scale(0.9);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

.premium-fade-in {
    animation: premiumFadeIn 0.6s ease-out;
}

.premium-slide-in {
    animation: premiumSlideIn 0.6s ease-out;
}

.premium-scale-in {
    animation: premiumScaleIn 0.6s ease-out;
}

/*-----------------*\
    #Premium Utility Classes
\*-----------------*/
.premium-text-gold {
    color: var(--premium-gold-primary);
}

.premium-text-gradient {
    background: linear-gradient(135deg, var(--premium-gold-primary), var(--premium-gold-accent));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.premium-bg-dark {
    background: linear-gradient(135deg, var(--premium-dark-primary), var(--premium-dark-secondary));
}

.premium-border-gold {
    border: 2px solid var(--premium-gold-primary);
}

.premium-shadow-gold {
    box-shadow: var(--premium-shadow-gold);
}

/*--------------------------------------------------------------
# END PREMIUM LUXUS Miscellaneous
--------------------------------------------------------------*/
/*=======================
# Premium Background Image - LUXUS VERSION
# Premium Gradient Backgrounds with CSS Variables
=======================*/

:root {
    /* Premium Gradient Color Variables */
    --premium-gradient-primary-start: #1a1a2e;
    --premium-gradient-primary-end: #16213e;
    --premium-gradient-secondary-start: #0f3460;
    --premium-gradient-secondary-end: #533483;
    --premium-gradient-accent-start: #e94560;
    --premium-gradient-accent-end: #c71e4b;

    /* Luxus Gold Gradients */
    --premium-gold-light: #f4e7d0;
    --premium-gold-medium: #d4af37;
    --premium-gold-dark: #b8860b;
    --premium-gold-gradient: linear-gradient(135deg, var(--premium-gold-light) 0%, var(--premium-gold-medium) 50%, var(--premium-gold-dark) 100%);

    /* Premium Background Overlays */
    --premium-overlay-light: rgba(255, 255, 255, 0.95);
    --premium-overlay-dark: rgba(0, 0, 0, 0.05);
    --premium-overlay-gradient: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(250, 250, 252, 0.95) 100%);

    /* Premium Gradient Backgrounds */
    --premium-bg-gradient-1: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    --premium-bg-gradient-2: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    --premium-bg-gradient-3: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
    --premium-bg-gradient-4: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
    --premium-bg-gradient-5: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
    --premium-bg-gradient-6: linear-gradient(135deg, #30cfd0 0%, #330867 100%);
    --premium-bg-gradient-7: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
    --premium-bg-gradient-8: linear-gradient(135deg, #ff9a9e 0%, #fecfef 100%);

    /* Premium Metallic Gradients */
    --premium-metallic-silver: linear-gradient(135deg, #e8eaed 0%, #c5cdd8 50%, #a8b2c1 100%);
    --premium-metallic-gold: linear-gradient(135deg, #ffd89b 0%, #f4d03f 50%, #c5a253 100%);
    --premium-metallic-bronze: linear-gradient(135deg, #cd7f32 0%, #8b5a3c 50%, #6b4423 100%);
    --premium-metallic-platinum: linear-gradient(135deg, #e5e4e2 0%, #d1d0ce 50%, #b8b7b5 100%);

    /* Premium Luxury Gradients */
    --premium-luxury-dark: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
    --premium-luxury-royal: linear-gradient(135deg, #4a148c 0%, #6a1b9a 50%, #8e24aa 100%);
    --premium-luxury-emerald: linear-gradient(135deg, #004d40 0%, #00695c 50%, #00897b 100%);
    --premium-luxury-sapphire: linear-gradient(135deg, #0d47a1 0%, #1565c0 50%, #1976d2 100%);

    /* Premium Spacing & Effects */
    --premium-spacing-sm: 20px;
    --premium-spacing-md: 30px;
    --premium-spacing-lg: 45px;
    --premium-spacing-xl: 60px;

    /* Premium Box Shadow */
    --premium-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
    --premium-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.12);
    --premium-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.16);
    --premium-shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.24);

    /* Premium Border Radius */
    --premium-radius-sm: 8px;
    --premium-radius-md: 12px;
    --premium-radius-lg: 16px;
    --premium-radius-xl: 24px;
}

/* Premium Background Containers */
.home.custom-background .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container,
.custom-background .so-panel .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container,
.custom-background .site-content.container {
    background: var(--premium-overlay-gradient);
    padding-top: var(--premium-spacing-md);
    padding-bottom: var(--premium-spacing-md);
    border-radius: var(--premium-radius-md);
    box-shadow: var(--premium-shadow-lg);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    position: relative;
    overflow: hidden;
}

/* Premium Background Accent Border */
.home.custom-background .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container::before,
.custom-background .so-panel .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container::before,
.custom-background .site-content.container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--premium-gold-gradient);
    opacity: 0.7;
    border-radius: var(--premium-radius-md) var(--premium-radius-md) 0 0;
}

/* Premium Footer Background */
.home.custom-background .site-footer .at-widgets .container,
.custom-background .site-footer .at-widgets .container {
    background: none !important;
    padding-top: 0;
    padding-bottom: 0;
}

/* Premium Gallery Background */
.custom-background .acme-gallery .fullwidth-container {
    position: relative;
    background: var(--premium-luxury-dark);
    padding: var(--premium-spacing-xl) 0;
}

.custom-background .acme-gallery .fullwidth-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--premium-bg-gradient-1);
    opacity: 0.1;
    mix-blend-mode: overlay;
    pointer-events: none;
}

.custom-background .acme-gallery .fullwidth-container .widget-title,
.custom-background .acme-gallery .fullwidth-container .at-subtitle,
.custom-background .acme-gallery .fullwidth-container .read-more:not(.is-checked) {
    color: #fff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.custom-background .acme-gallery .fullwidth-container .read-more:not(.is-checked) {
    border-color: #fff;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    transition: all 0.3s ease;
}

.custom-background .acme-gallery .fullwidth-container .read-more:not(.is-checked):hover {
    background: rgba(255, 255, 255, 0.2);
    box-shadow: var(--premium-shadow-md);
    transform: translateY(-2px);
}

/* Premium Background Variations */
.premium-bg-gradient-1 {
    background: var(--premium-bg-gradient-1);
}

.premium-bg-gradient-2 {
    background: var(--premium-bg-gradient-2);
}

.premium-bg-gradient-3 {
    background: var(--premium-bg-gradient-3);
}

.premium-bg-gradient-4 {
    background: var(--premium-bg-gradient-4);
}

.premium-bg-gradient-5 {
    background: var(--premium-bg-gradient-5);
}

.premium-bg-gradient-6 {
    background: var(--premium-bg-gradient-6);
}

.premium-bg-gradient-7 {
    background: var(--premium-bg-gradient-7);
}

.premium-bg-gradient-8 {
    background: var(--premium-bg-gradient-8);
}

/* Premium Metallic Backgrounds */
.premium-bg-metallic-silver {
    background: var(--premium-metallic-silver);
}

.premium-bg-metallic-gold {
    background: var(--premium-metallic-gold);
}

.premium-bg-metallic-bronze {
    background: var(--premium-metallic-bronze);
}

.premium-bg-metallic-platinum {
    background: var(--premium-metallic-platinum);
}

/* Premium Luxury Backgrounds */
.premium-bg-luxury-dark {
    background: var(--premium-luxury-dark);
    color: #fff;
}

.premium-bg-luxury-royal {
    background: var(--premium-luxury-royal);
    color: #fff;
}

.premium-bg-luxury-emerald {
    background: var(--premium-luxury-emerald);
    color: #fff;
}

.premium-bg-luxury-sapphire {
    background: var(--premium-luxury-sapphire);
    color: #fff;
}

/* Premium Animated Gradient Background */
.premium-bg-animated {
    background: linear-gradient(-45deg, #667eea, #764ba2, #f093fb, #f5576c);
    background-size: 400% 400%;
    animation: premiumGradientAnimation 15s ease infinite;
}

@keyframes premiumGradientAnimation {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

/* Premium Gold Accent Background */
.premium-bg-gold-accent {
    background: var(--premium-gold-gradient);
    color: var(--premium-gradient-primary-start);
}

/* Premium Glass Morphism Effect */
.premium-bg-glass {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: var(--premium-shadow-lg);
}

.premium-bg-glass-dark {
    background: rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: var(--premium-shadow-lg);
}

/* Premium Gradient Overlay */
.premium-bg-overlay::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
    mix-blend-mode: overlay;
}

/* Premium Shimmer Effect */
.premium-bg-shimmer {
    position: relative;
    overflow: hidden;
}

.premium-bg-shimmer::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    animation: premiumShimmer 3s infinite;
}

@keyframes premiumShimmer {
    0% {
        left: -100%;
    }
    100% {
        left: 100%;
    }
}

/* Premium Responsive Spacing */
@media (min-width: 768px) {
    .home.custom-background .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container,
    .custom-background .so-panel .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container,
    .custom-background .site-content.container {
        padding-top: var(--premium-spacing-lg);
        padding-bottom: var(--premium-spacing-lg);
    }
}

@media (min-width: 1024px) {
    .home.custom-background .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container,
    .custom-background .so-panel .at-widgets:not(.at-gray-bg):not(.at-parallax):not(.feature) .container,
    .custom-background .site-content.container {
        padding-top: var(--premium-spacing-xl);
        padding-bottom: var(--premium-spacing-xl);
    }
}

/* Premium Utility Classes */
.premium-shadow-sm {
    box-shadow: var(--premium-shadow-sm);
}

.premium-shadow-md {
    box-shadow: var(--premium-shadow-md);
}

.premium-shadow-lg {
    box-shadow: var(--premium-shadow-lg);
}

.premium-shadow-xl {
    box-shadow: var(--premium-shadow-xl);
}

.premium-radius-sm {
    border-radius: var(--premium-radius-sm);
}

.premium-radius-md {
    border-radius: var(--premium-radius-md);
}

.premium-radius-lg {
    border-radius: var(--premium-radius-lg);
}

.premium-radius-xl {
    border-radius: var(--premium-radius-xl);
}

/* Premium Hover Effects */
.premium-hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.premium-hover-lift:hover {
    transform: translateY(-4px);
    box-shadow: var(--premium-shadow-xl);
}

.premium-hover-glow {
    transition: box-shadow 0.3s ease;
}

.premium-hover-glow:hover {
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.5);
}

/*--------------------------------------------------------------
# Google Rating Badge - Premium Styling
# IVANOV.LAW Theme
#
# Compact badge displaying Google rating, stars, and link
# Manual data entry - no API required
--------------------------------------------------------------*/

/*==============================================
    #GOOGLE RATING BADGE - Base Container
===============================================*/

.google-rating-badge {
    background: var(--color-pearl);
    border: 1px solid var(--color-sand);
    border-radius: var(--radius-lg);
    padding: var(--space-4) var(--space-5);
    display: inline-flex;
    align-items: center;
    gap: var(--space-4);
    transition: all var(--transition-base);
    box-shadow: var(--shadow-sm);
    max-width: 100%;
}

.google-rating-badge:hover {
    border-color: var(--color-primary);
    box-shadow: var(--shadow-gold);
    transform: translateY(-1px);
}

/*==============================================
    #GOOGLE RATING BADGE - Link Wrapper
===============================================*/

.google-rating-badge .badge-link {
    display: flex;
    align-items: center;
    gap: var(--space-4);
    text-decoration: none;
    color: inherit;
    width: 100%;
}

.google-rating-badge .badge-link:hover {
    text-decoration: none;
}

/*==============================================
    #GOOGLE RATING BADGE - Google Logo
===============================================*/

.badge-google-logo {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.badge-google-logo svg {
    width: 28px;
    height: 28px;
}

/*==============================================
    #GOOGLE RATING BADGE - Rating Section
===============================================*/

.badge-rating-section {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

/*==============================================
    #GOOGLE RATING BADGE - Stars
===============================================*/

.badge-stars {
    display: flex;
    align-items: center;
    gap: 2px;
}

.badge-stars .star {
    font-size: var(--text-lg);
    line-height: 1;
}

.badge-stars .star-full {
    color: #FBBC05; /* Google Yellow */
}

.badge-stars .star-half {
    color: #FBBC05;
    position: relative;
}

.badge-stars .star-half::after {
    content: '\2606';
    position: absolute;
    left: 0;
    color: var(--color-stone);
    clip-path: inset(0 0 0 50%);
}

.badge-stars .star-empty {
    color: var(--color-stone);
}

/*==============================================
    #GOOGLE RATING BADGE - Info Line
===============================================*/

.badge-info {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    font-size: var(--text-sm);
    color: var(--color-slate);
    font-family: var(--font-sans-modern);
}

.badge-rating-number {
    font-weight: var(--weight-bold);
    color: var(--color-navy);
}

.badge-separator {
    color: var(--color-stone);
}

.badge-review-count {
    color: var(--color-slate);
}

/*==============================================
    #GOOGLE RATING BADGE - CTA
===============================================*/

.badge-cta {
    display: flex;
    align-items: center;
    gap: var(--space-1);
    font-size: var(--text-sm);
    color: var(--color-primary);
    font-weight: var(--weight-medium);
    margin-left: auto;
    white-space: nowrap;
    transition: color var(--transition-fast);
}

.google-rating-badge:hover .badge-cta {
    color: var(--color-primary-dark);
}

.badge-cta svg {
    transition: transform var(--transition-fast);
}

.google-rating-badge:hover .badge-cta svg {
    transform: translateX(2px);
}

/*==============================================
    #GOOGLE RATING BADGE - Style: Compact
===============================================*/

.badge-style-compact {
    flex-direction: column;
    text-align: center;
    padding: var(--space-5);
}

.badge-style-compact .badge-link {
    flex-direction: column;
    gap: var(--space-3);
}

.badge-style-compact .badge-google-logo svg {
    width: 32px;
    height: 32px;
}

.badge-style-compact .badge-rating-section {
    align-items: center;
}

.badge-style-compact .badge-stars .star {
    font-size: var(--text-xl);
}

.badge-style-compact .badge-cta {
    margin-left: 0;
    margin-top: var(--space-2);
}

/*==============================================
    #GOOGLE RATING BADGE - Style: Minimal
===============================================*/

.badge-style-minimal {
    padding: var(--space-2) var(--space-3);
    gap: var(--space-2);
    background: transparent;
    border: none;
    box-shadow: none;
}

.badge-style-minimal:hover {
    background: var(--color-cream);
    box-shadow: none;
    transform: none;
}

.badge-style-minimal .badge-link {
    gap: var(--space-2);
}

.badge-style-minimal .badge-google-logo svg {
    width: 20px;
    height: 20px;
}

.badge-style-minimal .badge-stars .star {
    font-size: var(--text-base);
}

.badge-style-minimal .badge-info {
    font-size: var(--text-xs);
}

.badge-style-minimal .badge-cta {
    display: none;
}

/*==============================================
    #GOOGLE RATING BADGE - Widget Container
===============================================*/

.ivanov-google-rating-badge-widget {
    margin-bottom: var(--space-6);
}

/* In Footer */
.footer-sidebar .google-rating-badge {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
}

.footer-sidebar .google-rating-badge:hover {
    background: rgba(255, 255, 255, 0.15);
    border-color: var(--color-primary);
}

.footer-sidebar .badge-rating-number,
.footer-sidebar .badge-info {
    color: var(--color-pearl);
}

.footer-sidebar .badge-review-count {
    color: rgba(255, 255, 255, 0.8);
}

.footer-sidebar .badge-separator {
    color: rgba(255, 255, 255, 0.5);
}

/* In Sidebar */
.sidebar-primary .google-rating-badge {
    width: 100%;
    justify-content: center;
}

.sidebar-primary .badge-style-default {
    flex-wrap: wrap;
}

/*==============================================
    #GOOGLE RATING BADGE - Responsive
===============================================*/

@media only screen and (max-width: 767px) {
    .google-rating-badge {
        padding: var(--space-3) var(--space-4);
        gap: var(--space-3);
    }

    .badge-google-logo svg {
        width: 24px;
        height: 24px;
    }

    .badge-stars .star {
        font-size: var(--text-base);
    }

    .badge-info {
        font-size: var(--text-xs);
    }

    .badge-cta {
        font-size: var(--text-xs);
    }

    /* Stack on very small screens */
    .badge-style-default .badge-link {
        flex-wrap: wrap;
        justify-content: center;
    }

    .badge-style-default .badge-cta {
        width: 100%;
        justify-content: center;
        margin-left: 0;
        margin-top: var(--space-2);
        padding-top: var(--space-2);
        border-top: 1px solid var(--color-sand);
    }
}

@media only screen and (max-width: 480px) {
    .badge-style-compact .badge-stars .star {
        font-size: var(--text-lg);
    }
}

/*==============================================
    #GOOGLE RATING BADGE - Print
===============================================*/

@media print {
    .google-rating-badge {
        border: 1px solid #ccc;
        box-shadow: none;
    }

    .badge-stars .star-full,
    .badge-stars .star-half {
        color: #FBBC05 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .badge-cta {
        display: none;
    }
}

