@charset "UTF-8";
/*! File name: main.css
 * ------------------------------------------------
 * ------------------------------------------------
 * Table of Contents
 * ------------------------------------------------
 *  01. Fonts
 *  02. Variables
 *  03. Template Backgrounds
 *  04. Basic Styles
 *  05. Elements - Page Structure
 *  06. Elements - Typography
 *  07. Elements - Controls
 *  08. Elements - Forms
 *  09. Elements - Components
 *  10. Elements - Common Classes
 *  11. Block - Header
 *  12. Block - Menu
 *  13. Block - CTA
 *  14. Block - Footer
 *  15. Block - Popup
 *  16. Block - Hero Section #00
 *  17. Block - Hero Section #01
 *  18. Block - Hero Section #02
 *  19. Block - Hero Section #03
 *  20. Block - Hero Section #04
 *  21. Block - Hero Section #05
 *  22. Block - Hero Section #06
 *  22. Block - Hero Section #07
 *  23. Block - Hero Section #08
 *  24. Block - Hero Section #09
 *  25. Block - Blog
 *  26. Block - Blog Article
 *  27. Block - 404 Error
 *  28. Block - Demo List
 *  29. Block - Demo Cards
 *  30. Block - Demo Responsive Promo
 *  31. Block - Demo Inner Pages Slider
 *  32. Block - Demo Components
 *  33. Block - Demo Features
 *  34. Block - Demo CTA
 *  35. Block - Demo Footer
 *  36. Block - Authentication
 *  36. Features - Hover Reveal
 *  37. Features - About
 *  38. Features - Pinned Image
 *  39. Features - Pinned Universal
 *  40. Features - Pinned Projects
 *  41. Features - Projects List
 *  42. Features - Projects Masonry
 *  43. Features - Awards List
 *  44. Features - Statistics Simple
 *  45. Features - Statistics Cards
 *  46. Features - Services Cards #01
 *  47. Features - Services Cards #02
 *  48. Features - Services List
 *  49. Features - Capabilities List
 *  50. Features - Resume List
 *  51. Features - Approach List
 *  52. Features - Divider Image Parallax
 *  53. Features - Marquee
 *  54. Features - Stack Services #01
 *  55. Features - Stack Services #02
 *  56. Features - Stack Projects
 *  57. Features - Testimonials Style #01
 *  58. Features - Testimonials Style #02
 *  59. Features - Partners Cards
 *  60. Features - Tech Stack Cards
 *  61. Features - Blog Preview
 *  62. Features - Accordion
 *  63. Features - Pricing Cards
 *  64. Features - Team Cards
 *  65. Features - Values
 *  66. Features - Project Details
 * ------------------------------------------------
 * Table of Contents End
 * ------------------------------------------------ */
/* ------------------------------------------------*/
/* Fonts Start */
/* ------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700;800&family=Inter:wght@400..700&display=swap");
/*! ------------------------------------------------
 * Project Name: projectkreate – Inclusive Medical Illustrations & Animations
 * Project Description: Inclusive, culturally rich medical illustrations and animations empowering students, educators, and practitioners with equitable, representative visuals.
 * Tags: medical illustration, medical animation, inclusive healthcare, diversity, education, artists, community, repository
 * Version: 1.0.0
 * Build Date: July 2025
 * Last Update: August 2025
 * This product is available exclusively on Themeforest
 * Author: projectkreate
 * Author URI: https://projectkreate */
:root {
  --_size: 1.8rem;
  --_font-default: 'Inter', sans-serif;
  --_font-accent: 'Inter', sans-serif;
  --_font-heading: 'Baloo 2', cursive;
  --_radius-s: 10px;
  --_radius-m: 18px;
  --_radius-pt-m: 1.6rem;
  --_radius-l: 26px;
  --_radius-xl: 38px;
  --_radius-pill: 999px;
  --_animspeed-fast: 0.1s;
  --_animspeed-medium: 0.3s;
  --_animspeed-slow: 0.6s;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-decel: cubic-bezier(0, 0, 0.2, 1);
  --ease-accel: cubic-bezier(0.4, 0, 1, 1);
  --ease-brand: cubic-bezier(0.23, 0.65, 0.74, 1.09);
  --_animbezier: var(--ease-standard);
  --pk-placeholder-image: none;
  --pk-placeholder-bg: none;
  --brand-orange: #DF5731;
  --brand-orange-rgb: 223, 87, 49;
  --brand-gradient-start: #DF5731;
  --brand-gradient-end: #F2B85A;
  --brand-gradient-start-rgb: 223, 87, 49;
  --brand-gradient-end-rgb: 242, 184, 90;
  /* light color scheme */
  --base--light: #FFF1E6;
  --base-rgb--light: 255, 241, 230;
  --base-tint--light: #FFFFFF;
  --base-shade--light: #EFC2A3;
  --base-opp--light: #2E2019;
  --base-opp-tint--light: #1C1C1C;
  --accent--light: #DF5731;
  --accent-rgb--light: 223, 87, 49;
  --additional--light: #F2B85A;
  --additional-rgb--light: 242, 184, 90;
  --tertiary--light: #915A42;
  --tertiary-rgb--light: 145, 90, 66;
  --neutral-transparent--light: rgba(255, 241, 230, 0.6);
  --st-bright--light: #2E2019;
  --st-medium--light: #915A42;
  --st-muted--light: #EFC2A3;
  --st-opp-bright--light: #FFF1E6;
  --fw-regular--light: 400;
  --fw-medium--light: 500;
  --fw-semibold--light: 600;
  --fw-bold--light: 700;
  --fw-black--light: 900;
  --fw-regular-opp--light: 400;
  --fw-medium-opp--light: 600;
  --t-bright--light: #2E2019;
  --t-medium--light: #915A42;
  --t-muted--light: rgba(46, 32, 25, 0.7);
  --t-muted-extra--light: rgba(46, 32, 25, 0.5);
  --t-opp-bright--light: #FFF1E6;
  --t-opp-medium--light: #EFC2A3;
  --t-opp-muted--light: rgba(255, 241, 230, 0.7);
  --bg-demo-screen-01--light: url(../img/demo/screens/01.webp);
  --bg-demo-screen-02--light: url(../img/demo/screens/02.webp);
  --bg-demo-screen-03--light: url(../img/demo/screens/03.webp);
  --bg-demo-screen-04--light: url(../img/demo/screens/04.webp);
  --bg-demo-screen-05--light: url(../img/demo/screens/05.webp);
  --bg-demo-screen-06--light: url(../img/demo/screens/06.webp);
  --bg-demo-screen-07--light: url(../img/demo/screens/07.webp);
  --bg-demo-screen-08--light: url(../img/demo/screens/08.webp);
  --bg-demo-screen-09--light: url(../img/demo/screens/09.webp);
  /* dark color scheme */
  --base--dark: #0A0A0A;
  --base-rgb--dark: 10, 10, 10;
  --base-tint--dark: #2E2019;
  --base-shade--dark: #1A1A1A;
  --base-opp--dark: #FFF1E6;
  --base-opp-tint--dark: #FFFFFF;
  --accent--dark: #DF5731;
  --accent-rgb--dark: 223, 87, 49;
  --additional--dark: #F2B85A;
  --additional-rgb--dark: 242, 184, 90;
  --tertiary--dark: #915A42;
  --tertiary-rgb--dark: 145, 90, 66;
  --neutral-transparent--dark: rgba(10, 10, 10, 0.6);
  --st-bright--dark: #FFF1E6;
  --st-medium--dark: #EFC2A3;
  --st-muted--dark: #915A42;
  --st-opp-bright--dark: #0A0A0A;
  --fw-regular--dark: 400;
  --fw-medium--dark: 500;
  --fw-semibold--dark: 600;
  --fw-bold--dark: 700;
  --fw-black--dark: 900;
  --fw-regular-opp--dark: 400;
  --fw-medium-opp--dark: 600;
  --t-bright--dark: #FFF1E6;
  --t-medium--dark: #EFC2A3;
  --t-muted--dark: rgba(255, 241, 230, 0.7);
  --t-muted-extra--dark: rgba(255, 241, 230, 0.5);
  --t-opp-bright--dark: #2E2019;
  --t-opp-medium--dark: #915A42;
  --t-opp-muted--dark: rgba(46, 32, 25, 0.7);
  --bg-demo-screen-01--dark: url(../img/demo/screens/01-d.webp);
  --bg-demo-screen-02--dark: url(../img/demo/screens/02-d.webp);
  --bg-demo-screen-03--dark: url(../img/demo/screens/03-d.webp);
  --bg-demo-screen-04--dark: url(../img/demo/screens/04-d.webp);
  --bg-demo-screen-05--dark: url(../img/demo/screens/05-d.webp);
  --bg-demo-screen-06--dark: url(../img/demo/screens/06-d.webp);
  --bg-demo-screen-07--dark: url(../img/demo/screens/07-d.webp);
  --bg-demo-screen-08--dark: url(../img/demo/screens/08-d.webp);
  --bg-demo-screen-09--dark: url(../img/demo/screens/09-d.webp);
  /* permanent colors */
  --pt-base: #FFFFFF;
  --pt-base-dark: #161616;
  --pt-t-light-bright: #FFFFFF;
  --pt-t-dark-bright: #161616;
  --pt-st-light-bright: #FFFFFF;
  --pt-st-dark-bright: #161616;
  --pt-purple-rgb: 159, 139, 231;
  --pt-purple-dark-rgb: 33, 10, 113;
  /* neutral colors */
  --nl-white: #ffffff;
  --nl-black: #000000;
}
@media only screen and (min-width: 768px) {
  :root {
    --_radius-m: 2.6rem;
    --_radius-l: 5rem;
    --_radius-xl: 8rem;
  }
}
@media only screen and (min-width: 1200px) {
  :root {
    --_radius-xl: 8rem;
  }
}

/* defaults */
@media (prefers-color-scheme: light) {
  :root {
    --base: var(--base--light);
    --base-rgb: var(--base-rgb--light);
    --base-tint: var(--base-tint--light);
    --base-shade: var(--base-shade--light);
    --base-opp: var(--base-opp--light);
    --base-opp-tint: var(--base-opp-tint--light);
    --accent: var(--accent--light);
    --accent-rgb: var(--accent-rgb--light);
    --additional: var(--additional--light);
    --additional-rgb: var(--additional-rgb--light);
    --neutral-transparent: var(--neutral-transparent--light);
    --st-bright: var(--st-bright--light);
    --st-medium: var(--st-medium--light);
    --st-muted: var(--st-muted--light);
    --st-opp-bright: var(--st-opp-bright--light);
    --fw-regular: var(--fw-regular--light);
    --fw-medium: var(--fw-medium--light);
    --fw-semibold: var(--fw-semibold--light);
    --fw-bold: var(--fw-bold--light);
    --fw-black: var(--fw-black--light);
    --fw-regular-opp: var(--fw-regular-opp--light);
    --fw-medium-opp: var(--fw-medium-opp--light);
    --t-bright: var(--t-bright--light);
    --t-medium: var(--t-medium--light);
    --t-muted: var(--t-muted--light);
    --t-muted-extra: var(--t-muted-extra--light);
    --t-opp-bright: var(--t-opp-bright--light);
    --t-opp-medium: var(--t-opp-medium--light);
    --t-opp-muted: var(--t-opp-muted--light);
    --bg-demo-screen-01: var(--bg-demo-screen-01--light);
    --bg-demo-screen-02: var(--bg-demo-screen-02--light);
    --bg-demo-screen-03: var(--bg-demo-screen-03--light);
    --bg-demo-screen-04: var(--bg-demo-screen-04--light);
    --bg-demo-screen-05: var(--bg-demo-screen-05--light);
    --bg-demo-screen-06: var(--bg-demo-screen-06--light);
    --bg-demo-screen-07: var(--bg-demo-screen-07--light);
    --bg-demo-screen-08: var(--bg-demo-screen-08--light);
    --bg-demo-screen-09: var(--bg-demo-screen-09--light);
  }
}
[color-scheme=light] {
  --base: var(--base--light);
  --base-rgb: var(--base-rgb--light);
  --base-tint: var(--base-tint--light);
  --base-shade: var(--base-shade--light);
  --base-opp: var(--base-opp--light);
  --base-opp-tint: var(--base-opp-tint--light);
  --accent: var(--accent--light);
  --accent-rgb: var(--accent-rgb--light);
  --additional: var(--additional--light);
  --additional-rgb: var(--additional-rgb--light);
  --neutral-transparent: var(--neutral-transparent--light);
  --st-bright: var(--st-bright--light);
  --st-medium: var(--st-medium--light);
  --st-muted: var(--st-muted--light);
  --st-opp-bright: var(--st-opp-bright--light);
  --fw-regular: var(--fw-regular--light);
  --fw-medium: var(--fw-medium--light);
  --fw-semibold: var(--fw-semibold--light);
  --fw-bold: var(--fw-bold--light);
  --fw-regular-opp: var(--fw-regular-opp--light);
  --fw-medium-opp: var(--fw-medium-opp--light);
  --t-bright: var(--t-bright--light);
  --t-medium: var(--t-medium--light);
  --t-muted: var(--t-muted--light);
  --t-muted-extra: var(--t-muted-extra--light);
  --t-opp-bright: var(--t-opp-bright--light);
  --t-opp-medium: var(--t-opp-medium--light);
  --t-opp-muted: var(--t-opp-muted--light);
  --bg-demo-screen-01: var(--bg-demo-screen-01--light);
  --bg-demo-screen-02: var(--bg-demo-screen-02--light);
  --bg-demo-screen-03: var(--bg-demo-screen-03--light);
  --bg-demo-screen-04: var(--bg-demo-screen-04--light);
  --bg-demo-screen-05: var(--bg-demo-screen-05--light);
  --bg-demo-screen-06: var(--bg-demo-screen-06--light);
  --bg-demo-screen-07: var(--bg-demo-screen-07--light);
  --bg-demo-screen-08: var(--bg-demo-screen-08--light);
  --bg-demo-screen-09: var(--bg-demo-screen-09--light);
}

[color-scheme=dark] {
  --base: var(--base--dark);
  --base-rgb: var(--base-rgb--dark);
  --base-tint: var(--base-tint--dark);
  --base-shade: var(--base-shade--dark);
  --base-opp: var(--base-opp--dark);
  --base-opp-tint: var(--base-opp-tint--dark);
  --accent: var(--accent--dark);
  --accent-rgb: var(--accent-rgb--dark);
  --additional: var(--additional--dark);
  --additional-rgb: var(--additional-rgb--dark);
  --neutral-transparent: var(--neutral-transparent--dark);
  --st-bright: var(--st-bright--dark);
  --st-medium: var(--st-medium--dark);
  --st-muted: var(--st-muted--dark);
  --st-opp-bright: var(--st-opp-bright--dark);
  --fw-regular: var(--fw-regular--dark);
  --fw-medium: var(--fw-medium--dark);
  --fw-semibold: var(--fw-semibold--dark);
  --fw-bold: var(--fw-bold--dark);
  --fw-regular-opp: var(--fw-regular-opp--dark);
  --fw-medium-opp: var(--fw-medium-opp--dark);
  --t-bright: var(--t-bright--dark);
  --t-medium: var(--t-medium--dark);
  --t-muted: var(--t-muted--dark);
  --t-muted-extra: var(--t-muted-extra--dark);
  --t-opp-bright: var(--t-opp-bright--dark);
  --t-opp-medium: var(--t-opp-medium--dark);
  --t-opp-muted: var(--t-opp-muted--dark);
  --bg-demo-screen-01: var(--bg-demo-screen-01--dark);
  --bg-demo-screen-02: var(--bg-demo-screen-02--dark);
  --bg-demo-screen-03: var(--bg-demo-screen-03--dark);
  --bg-demo-screen-04: var(--bg-demo-screen-04--dark);
  --bg-demo-screen-05: var(--bg-demo-screen-05--dark);
  --bg-demo-screen-06: var(--bg-demo-screen-06--dark);
  --bg-demo-screen-07: var(--bg-demo-screen-07--dark);
  --bg-demo-screen-08: var(--bg-demo-screen-08--dark);
  --bg-demo-screen-09: var(--bg-demo-screen-09--dark);
}

:root {
  --brand-black: #121212;
  --brand-white: #FFFFFF;
  --brand-flame: #DF5731;
  --brand-earth-yellow: #F2B85A;
  --brand-desert-sand: #EFC2A3;
  --brand-linen: #FFF1E6;
  --brand-coyote-brown: #915A42;
  --brand-bistre: #2E2019;
  /* GLASS SURFACE TOKENS (Light as default/fallback) */
  --glass-l0-body: #FCF5EE;
  --glass-l1-panel: rgba(255, 244, 233, 0.58);
  --glass-l2-card: rgba(255, 249, 243, 0.78);
  --glass-l3-input: rgba(255, 253, 250, 0.92);
  --glass-l4-overlay: rgba(255, 244, 233, 0.32);
  /* Borders */
  --border-l1: rgba(239, 194, 163, 0.40);
  --border-l2: rgba(145, 90, 66, 0.12);
  --border-l3: rgba(145, 90, 66, 0.18);
  --border-focus: rgba(223, 87, 49, 0.70);
  /* Blurs */
  --blur-l1: blur(20px) saturate(160%);
  --blur-l2: blur(12px) saturate(140%);
  --blur-l3: blur(6px) saturate(120%);
  --blur-nav: blur(28px) saturate(180%);
  /* Shadows */
  --shadow-sm: 0 1px 3px rgba(46, 32, 25, 0.05), 0 1px 2px rgba(46, 32, 25, 0.03);
  --shadow-md: 0 4px 16px rgba(46, 32, 25, 0.08), 0 2px 6px rgba(46, 32, 25, 0.04);
  --shadow-flame: 0 6px 24px rgba(223, 87, 49, 0.14);
  /* Tonal Containers */
  --tonal-flame: rgba(223, 87, 49, 0.10);
  --tonal-yellow: rgba(242, 184, 90, 0.14);
  --tonal-coyote: rgba(145, 90, 66, 0.08);
  --tonal-green: rgba(46, 125, 79, 0.10);
  --on-tonal-flame: #7A2A14;
  --on-tonal-yellow: #6B4A0A;
  --on-tonal-coyote: var(--t-medium);
  --on-tonal-green: #1a5c35;
  /* Spacing */
  --space-panel-padding: 2.8rem 3.2rem;
  --space-card-padding: 2.0rem 2.4rem;
  --space-input-padding: 0.9rem 1.6rem;
}

[color-scheme=light] {
  --base: var(--brand-white);
  --base-rgb: 255, 255, 255;
  --base-tint: var(--brand-linen);
  --base-shade: #EDEDED;
  --base-opp: var(--brand-bistre);
  --base-opp-tint: var(--brand-desert-sand);
  --accent: var(--brand-flame);
  --accent-rgb: 223, 87, 49;
  --additional: var(--brand-earth-yellow);
  --additional-rgb: 242, 184, 90;
  --neutral-transparent: rgba(255, 255, 255, 0.3);
  --st-bright: var(--brand-bistre);
  --st-medium: var(--brand-coyote-brown);
  --st-muted: rgba(145, 90, 66, 0.2);
  --st-muted-bright: rgba(145, 90, 66, 0.28);
  --st-opp-bright: var(--brand-white);
  --fw-regular: 400;
  --fw-medium: 600;
  --fw-semibold: 700;
  --fw-bold: 800;
  --fw-black: 900;
  --fw-regular-opp: 300;
  --fw-medium-opp: 500;
  --t-bright: var(--brand-bistre);
  --t-medium: var(--brand-coyote-brown);
  --t-muted: #7A5C49;
  --t-muted-extra: #A88977;
  --t-opp-bright: var(--brand-white);
  --t-opp-medium: #ACACAC;
  --t-opp-muted: #838383;
  --wm-stroke: rgba(0, 0, 0, 0.85);
  --input-bg: var(--brand-white);
  --input-border: var(--brand-coyote-brown);
  --card-shadow: 0 4px 12px rgba(46, 32, 25, 0.08);
  --bg-demo-screen-01: var(--bg-demo-screen-01--light);
  --bg-demo-screen-02: var(--bg-demo-screen-02--light);
  --bg-demo-screen-03: var(--bg-demo-screen-03--light);
  --bg-demo-screen-04: var(--bg-demo-screen-04--light);
  --bg-demo-screen-05: var(--bg-demo-screen-05--light);
  --bg-demo-screen-06: var(--bg-demo-screen-06--light);
  --bg-demo-screen-07: var(--bg-demo-screen-07--light);
  --bg-demo-screen-08: var(--bg-demo-screen-08--light);
  --bg-demo-screen-09: var(--bg-demo-screen-09--light);
}

body[data-theme=dark] {
  background-color: #1C1008;
  background-image: radial-gradient(ellipse 50% 40% at 15% 20%, rgba(223, 87, 49, 0.12) 0%, transparent 60%), radial-gradient(ellipse 40% 50% at 85% 80%, rgba(242, 184, 90, 0.07) 0%, transparent 55%);
  --glass-l1-panel: rgba(46, 32, 25, 0.55);
  --glass-l2-card: rgba(60, 42, 30, 0.72);
  --glass-l3-input: rgba(75, 52, 36, 0.88);
  --border-l1: rgba(239, 194, 163, 0.12);
  --border-l2: rgba(239, 194, 163, 0.08);
  --border-l3: rgba(239, 194, 163, 0.15);
  --t-bright: #F5EDE4;
  --t-medium: #C9A98E;
  --t-muted: #9A7A64;
}

/* ------------------------------------------------*/
/* Fonts End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Variables Start */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Variables End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Template Backgrounds Start */
/* ------------------------------------------------*/
.about-image-1 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-1 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-2 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-3 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-4 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-5 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-6 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-7 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-8 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-9 {
  background-image: var(--pk-placeholder-bg);
}

.divider-image-10 {
  background-image: var(--pk-placeholder-bg);
}

.preview-image-1 {
  background-image: url("../img/projects/Anesthesiology – Difficult airway.jpg");
}

.preview-image-2 {
  background-image: url("../img/projects/Cardiology – Coronary circulation.jpg");
}

.preview-image-3 {
  background-image: url("../img/projects/Dermatology – Psoriasis layers.jpg");
}

.preview-image-4 {
  background-image: url("../img/projects/Orthopedics – Knee mechanics.jpg");
}

.preview-image-5 {
  background-image: url("../img/projects/Radiology – MRI brain.jpg");
}

.preview-image-6 {
  background-image: var(--pk-placeholder-bg);
}

.preview-image-7 {
  background-image: var(--pk-placeholder-bg);
}

.blog-preview-image-1 {
  background-image: var(--pk-placeholder-bg);
}

.blog-preview-image-2 {
  background-image: var(--pk-placeholder-bg);
}

.blog-preview-image-3 {
  background-image: var(--pk-placeholder-bg);
}

.headline-img-01::before {
  background-image: var(--pk-placeholder-bg);
}

.headline-img-02::before {
  background-image: var(--pk-placeholder-bg);
}

.headline-img-03::after {
  background-image: var(--pk-placeholder-bg);
}

.headline-img-04::before {
  background-image: var(--pk-placeholder-bg);
}

.headline-img-05::before {
  background-image: var(--pk-placeholder-bg);
}

.headline-img-06::before {
  background-image: var(--pk-placeholder-bg);
}

.headline-img-07::before {
  background-image: var(--pk-placeholder-bg);
}

.image-values-1 {
  background-image: var(--pk-placeholder-bg);
}

.image-values-2 {
  background-image: var(--pk-placeholder-bg);
}

.prj-details-img-01 {
  background-image: var(--pk-placeholder-bg);
}

.prj-details-img-02 {
  background-image: var(--pk-placeholder-bg);
}

/* ------------------------------------------------*/
/* Template Backgrounds End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Basic Styles Start */
/* ------------------------------------------------*/
*, *::before, *::after {
  box-sizing: border-box;
}

button:active, button:focus {
  outline: none !important;
}

button::-moz-focus-inner {
  border: 0 !important;
}

input::-moz-focus-inner {
  border: 0 !important;
}

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

a:focus,
button:focus,
input:focus,
textarea:focus {
  -webkit-tap-highlight-color: transparent;
}

input,
textarea,
button,
select,
a {
  -webkit-tap-highlight-color: transparent;
}

::selection {
  background-color: var(--accent);
  color: var(--t-opp-bright);
  text-shadow: none;
}

::-webkit-scrollbar {
  display: none;
  width: 6px;
  background: var(--base-shade);
}
@media only screen and (min-width: 768px) {
  ::-webkit-scrollbar {
    display: block;
  }
}

::-webkit-scrollbar-track {
  background-color: var(--base-shade);
}

::-webkit-scrollbar-thumb {
  background-color: var(--accent);
  border-radius: var(--_radius-s);
}

html {
  width: 100%;
  height: 100%;
  font-family: sans-serif;
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  position: relative;
  width: 100%;
  min-width: 360px;
  overflow-x: unset !important;
  font: normal 400 var(--_size)/1.6 var(--_font-default);
  text-rendering: optimizeLegibility;
  background-color: var(--base);
  color: var(--t-medium);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

section {
  position: relative;
  width: 100%;
  min-width: 360px;
}

a {
  text-decoration: none;
  outline: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transition: all var(--_animspeed-medium) var(--_animbezier);
}

img {
  display: block;
  width: 100%;
  height: auto;
}

.overflow-hidden {
  overflow: hidden !important;
}

.components {
  position: relative;
}

.components__item {
  position: relative;
  padding: 8rem 10%;
  border-bottom: 1px solid var(--st-muted);
}
.components__item.no-padding {
  padding: 0;
}

.components__caption {
  display: block;
  font: normal 400 1.3rem/1 var(--_font-default);
  color: var(--t-medium);
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  margin-bottom: 2rem;
}

.width-50-desktop {
  width: 100%;
}
@media only screen and (min-width: 1200px) {
  .width-50-desktop {
    width: 50%;
  }
}

.mxd-spacer {
  position: relative;
  width: 100%;
  height: 100px;
}

html.lenis, html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

/* ------------------------------------------------*/
/* Basic Styles End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Elements - Page Structure Start */
/* ------------------------------------------------*/
.mxd-page-content {
  position: relative;
}
.mxd-page-content.inner-page-content {
  padding-top: 7.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-page-content.inner-page-content {
    padding-top: 9.6rem;
  }
}

.mxd-wrapper {
  position: relative;
  width: 100%;
  min-width: 360px;
}
.mxd-wrapper.mxd-wrapper-opposite {
  background-color: var(--base-opp);
  border-radius: var(--_radius-l);
}
.mxd-wrapper.padding-top-pre-title {
  padding-top: 13rem;
}
.mxd-wrapper.margin-bottom-pre-title {
  margin-bottom: 13rem;
}
@media only screen and (min-width: 768px) {
  .mxd-wrapper.padding-top-pre-title {
    padding-top: 14.3rem;
  }
  .mxd-wrapper.margin-bottom-pre-title {
    margin-bottom: 14.3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-wrapper.padding-top-pre-title {
    padding-top: 18.3rem;
  }
  .mxd-wrapper.margin-bottom-pre-title {
    margin-bottom: 18.3rem;
  }
}

.mxd-section {
  position: relative;
  width: 100%;
  min-width: 360px;
}
.mxd-section.padding-blog-default {
  padding-bottom: 8rem;
}
.mxd-section.padding-blog-default-pre-grid {
  padding-bottom: 3rem;
}
.mxd-section.padding-blog-descr-pre-grid {
  padding-bottom: 2.2rem;
}
.mxd-section.padding-default {
  padding-bottom: 8rem;
}
.mxd-section.padding-default.mobile-title {
  padding-bottom: 13rem;
}
.mxd-section.padding-pre-footer {
  padding-bottom: 11rem;
}
.mxd-section.padding-pre-pinned-img {
  padding-bottom: 14rem;
}
.mxd-section.padding-pre-grid {
  padding-bottom: 11rem;
}
.mxd-section.padding-pre-grid.mobile-grid-s {
  padding-bottom: 12.5rem;
}
.mxd-section.padding-pre-grid.mobile-grid-title {
  padding-bottom: 10rem;
}
.mxd-section.padding-pre-title {
  padding-bottom: 13rem;
}
.mxd-section.padding-pre-manifest {
  padding-bottom: 13.7rem;
}
.mxd-section.padding-pre-manifest.mobile-point-subtitle {
  padding-bottom: 13.7rem;
}
.mxd-section.padding-pre-stack {
  padding-bottom: 11rem;
}
.mxd-section.padding-stacked-section {
  padding-bottom: 10.1rem;
}
.mxd-section.padding-stacked-pre-mtext {
  padding-bottom: 8.1rem;
}
.mxd-section.padding-grid-pre-pinned {
  padding-bottom: 13rem;
}
.mxd-section.padding-grid-pre-mtext {
  padding-bottom: 11.3rem;
}
.mxd-section.padding-pinned-img-pre-mtext {
  padding-bottom: 10.4rem;
}
.mxd-section.padding-mtext {
  padding-bottom: 8rem;
}
.mxd-section.padding-mtext.mobile-title {
  padding-bottom: 11.6rem;
}
.mxd-section.padding-mtext-pre-title {
  padding-bottom: 11.6rem;
}
.mxd-section.padding-mtext-pre-grid {
  padding-bottom: 9.8rem;
}
.mxd-section.padding-mtext-pre-grid.mobile-grid-s {
  padding-bottom: 11.3rem;
}
.mxd-section.padding-mtext-pre-pinned {
  padding-bottom: 10.8rem;
}
.mxd-section.padding-mtext-pre-stack {
  padding-bottom: 2rem;
}
.mxd-section.padding-blog {
  padding-bottom: 8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section.padding-default {
    padding-bottom: 8rem;
  }
  .mxd-section.padding-default.mobile-title {
    padding-bottom: 14.5rem;
  }
  .mxd-section.padding-pre-footer {
    padding-bottom: 10.7rem;
  }
  .mxd-section.padding-pre-pinned-img {
    padding-bottom: 16rem;
  }
  .mxd-section.padding-pre-grid {
    padding-bottom: 13rem;
  }
  .mxd-section.padding-pre-grid.mobile-grid-s {
    padding-bottom: 13rem;
  }
  .mxd-section.padding-pre-grid.mobile-grid-title {
    padding-bottom: 11.3rem;
  }
  .mxd-section.padding-pre-title {
    padding-bottom: 14.3rem;
  }
  .mxd-section.padding-pre-manifest {
    padding-bottom: 13.9rem;
  }
  .mxd-section.padding-pre-manifest.mobile-point-subtitle {
    padding-bottom: 15.7rem;
  }
  .mxd-section.padding-pre-stack {
    padding-bottom: 10rem;
  }
  .mxd-section.padding-stacked-section {
    padding-bottom: 11.3rem;
  }
  .mxd-section.padding-stacked-pre-mtext {
    padding-bottom: 7.3rem;
  }
  .mxd-section.padding-grid-pre-pinned {
    padding-bottom: 14.3rem;
  }
  .mxd-section.padding-grid-pre-mtext {
    padding-bottom: 10.4rem;
  }
  .mxd-section.padding-pinned-img-pre-mtext {
    padding-bottom: 10rem;
  }
  .mxd-section.padding-mtext {
    padding-bottom: 8rem;
  }
  .mxd-section.padding-mtext.mobile-title {
    padding-bottom: 11.6rem;
  }
  .mxd-section.padding-mtext-pre-title {
    padding-bottom: 11.6rem;
  }
  .mxd-section.padding-mtext-pre-grid {
    padding-bottom: 10.6rem;
  }
  .mxd-section.padding-mtext-pre-grid.mobile-grid-s {
    padding-bottom: 10.6rem;
  }
  .mxd-section.padding-mtext-pre-pinned {
    padding-bottom: 10.8rem;
  }
  .mxd-section.padding-mtext-pre-stack {
    padding-bottom: 0;
  }
  .mxd-section.padding-blog {
    padding-bottom: 8rem;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-section.padding-pre-footer {
    padding-bottom: 8.7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section.padding-blog-default {
    padding-bottom: 12rem;
  }
  .mxd-section.padding-blog-default-pre-grid {
    padding-bottom: 9rem;
  }
  .mxd-section.padding-blog-descr-pre-grid {
    padding-bottom: 7.2rem;
  }
  .mxd-section.padding-default {
    padding-bottom: 8rem;
  }
  .mxd-section.padding-default.mobile-title {
    padding-bottom: 14.5rem;
  }
  .mxd-section.padding-pre-footer {
    padding-bottom: 7.2rem;
  }
  .mxd-section.padding-pre-pinned-img {
    padding-bottom: 10rem;
  }
  .mxd-section.padding-pre-grid {
    padding-bottom: 13rem;
  }
  .mxd-section.padding-pre-grid.mobile-grid-s {
    padding-bottom: 13rem;
  }
  .mxd-section.padding-pre-grid.mobile-grid-title {
    padding-bottom: 13rem;
  }
  .mxd-section.padding-pre-title {
    padding-bottom: 14.3rem;
  }
  .mxd-section.padding-pre-manifest {
    padding-bottom: 13.9rem;
  }
  .mxd-section.padding-pre-manifest.mobile-point-subtitle {
    padding-bottom: 13.9rem;
  }
  .mxd-section.padding-pre-stack {
    padding-bottom: 10rem;
  }
  .mxd-section.padding-grid-pre-pinned {
    padding-bottom: 10rem;
  }
  .mxd-section.padding-grid-pre-mtext {
    padding-bottom: 10.4rem;
  }
  .mxd-section.padding-pinned-img-pre-mtext {
    padding-bottom: 4.3rem;
  }
  .mxd-section.padding-mtext {
    padding-bottom: 8rem;
  }
  .mxd-section.padding-mtext.mobile-title {
    padding-bottom: 13.4rem;
  }
  .mxd-section.padding-mtext-pre-pinned {
    padding-bottom: 7.6rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-section.padding-pre-footer {
    padding-bottom: 5.6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section.padding-blog-default {
    padding-bottom: 14rem;
  }
  .mxd-section.padding-blog-default-pre-grid {
    padding-bottom: 11rem;
  }
  .mxd-section.padding-default {
    padding-bottom: 8rem;
  }
  .mxd-section.padding-default.mobile-title {
    padding-bottom: 20rem;
  }
  .mxd-section.padding-pre-footer {
    padding-bottom: 6rem;
  }
  .mxd-section.padding-pre-pinned-img {
    padding-bottom: 11rem;
  }
  .mxd-section.padding-pre-grid {
    padding-bottom: 17rem;
  }
  .mxd-section.padding-pre-grid.mobile-grid-s {
    padding-bottom: 17rem;
  }
  .mxd-section.padding-pre-grid.mobile-grid-title {
    padding-bottom: 17rem;
  }
  .mxd-section.padding-pre-title {
    padding-bottom: 18.3rem;
  }
  .mxd-section.padding-pre-manifest {
    padding-bottom: 17.9rem;
  }
  .mxd-section.padding-pre-manifest.mobile-point-subtitle {
    padding-bottom: 17.9rem;
  }
  .mxd-section.padding-pre-stack {
    padding-bottom: 11rem;
  }
  .mxd-section.padding-stacked-section {
    padding-bottom: 12.3rem;
  }
  .mxd-section.padding-stacked-pre-mtext {
    padding-bottom: 8.3rem;
  }
  .mxd-section.padding-grid-pre-pinned {
    padding-bottom: 11rem;
  }
  .mxd-section.padding-grid-pre-mtext {
    padding-bottom: 14.4rem;
  }
  .mxd-section.padding-pinned-img-pre-mtext {
    padding-bottom: 5.3rem;
  }
  .mxd-section.padding-mtext {
    padding-bottom: 8rem;
  }
  .mxd-section.padding-mtext.mobile-title {
    padding-bottom: 17.3rem;
  }
  .mxd-section.padding-mtext-pre-title {
    padding-bottom: 15.6rem;
  }
  .mxd-section.padding-mtext-pre-grid {
    padding-bottom: 14.6rem;
  }
  .mxd-section.padding-mtext-pre-grid.mobile-grid-s {
    padding-bottom: 14.6rem;
  }
  .mxd-section.padding-mtext-pre-pinned {
    padding-bottom: 5.6rem;
  }
  .mxd-section.padding-mtext-pre-stack {
    padding-bottom: 3.7rem;
  }
  .mxd-section.padding-blog {
    padding-bottom: 8rem;
  }
}

.mxd-section.padding-hero-01 {
  padding-top: 12rem;
}
.mxd-section.padding-hero-07 {
  padding-top: 14rem;
}
.mxd-section.padding-hero-09, .mxd-section.padding-hero-06 {
  padding-top: 13rem;
}
.mxd-section.padding-hero-08 {
  padding-top: 3.4rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section.padding-hero-07 {
    padding-top: 16rem;
  }
  .mxd-section.padding-hero-09, .mxd-section.padding-hero-06 {
    padding-top: 13.8rem;
  }
  .mxd-section.padding-hero-08 {
    padding-top: 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section.padding-hero-01 {
    padding-top: 12rem;
  }
  .mxd-section.padding-hero-07 {
    padding-top: 12rem;
  }
  .mxd-section.padding-hero-09 {
    padding-top: 6rem;
  }
  .mxd-section.padding-hero-06 {
    padding-top: 5.4rem;
  }
  .mxd-section.padding-hero-08 {
    padding-top: 0rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section.padding-hero-01 {
    padding-top: 16rem;
  }
  .mxd-section.padding-hero-07 {
    padding-top: 16rem;
  }
  .mxd-section.padding-hero-06 {
    padding-top: 6.4rem;
  }
  .mxd-section.padding-hero-09 {
    padding-top: 7rem;
  }
}

.mxd-section-inner-headline {
  padding-top: 13rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section-inner-headline {
    padding-top: 15rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-inner-headline {
    padding-top: 13.6rem;
  }
  .mxd-section-inner-headline.grid-headline {
    padding-top: 16rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section-inner-headline {
    padding-top: 17rem;
  }
  .mxd-section-inner-headline.grid-headline {
    padding-top: 20rem;
  }
}

.mxd-section-inner-headline.padding-default {
  padding-bottom: 14rem;
}
.mxd-section-inner-headline.padding-headline-pre-block {
  padding-bottom: 13rem;
}
.mxd-section-inner-headline.padding-headline-pre-grid {
  padding-bottom: 10rem;
}
.mxd-section-inner-headline.padding-s-headline-pre-grid {
  padding-bottom: 2rem;
}
.mxd-section-inner-headline.padding-headline-pre-stack {
  padding-bottom: 2.3rem;
}
.mxd-section-inner-headline.padding-text-pre-block {
  padding-bottom: 13rem;
}
.mxd-section-inner-headline.padding-s-text-pre-block {
  padding-bottom: 4.9rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section-inner-headline.padding-default {
    padding-bottom: 16rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-block {
    padding-bottom: 14.6rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-grid {
    padding-bottom: 11.6rem;
  }
  .mxd-section-inner-headline.padding-s-headline-pre-grid {
    padding-bottom: 3.6rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-stack {
    padding-bottom: 1rem;
  }
  .mxd-section-inner-headline.padding-text-pre-block {
    padding-bottom: 14.8rem;
  }
  .mxd-section-inner-headline.padding-s-text-pre-form {
    padding-bottom: 0;
  }
  .mxd-section-inner-headline.padding-s-text-pre-block {
    padding-bottom: 6.9rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-inner-headline.padding-headline-pre-block {
    padding-bottom: 14.2rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-grid {
    padding-bottom: 11.2rem;
  }
  .mxd-section-inner-headline.padding-s-headline-pre-grid {
    padding-bottom: 3.2rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-stack {
    padding-bottom: 0.6rem;
  }
  .mxd-section-inner-headline.padding-s-text-pre-form {
    padding-bottom: 3.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section-inner-headline.padding-default {
    padding-bottom: 20rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-block {
    padding-bottom: 18rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-grid {
    padding-bottom: 15rem;
  }
  .mxd-section-inner-headline.padding-s-headline-pre-grid {
    padding-bottom: 4.9rem;
  }
  .mxd-section-inner-headline.padding-headline-pre-stack {
    padding-bottom: 4.4rem;
  }
  .mxd-section-inner-headline.padding-text-pre-block {
    padding-bottom: 18.7rem;
  }
  .mxd-section-inner-headline.padding-s-text-pre-form {
    padding-bottom: 3rem;
  }
  .mxd-section-inner-headline.padding-s-text-pre-block {
    padding-bottom: 8.8rem;
  }
  .mxd-section-inner-headline.padding-text-pre-grid {
    padding-bottom: 12rem;
  }
}

.mxd-section-fullscreen {
  width: 100%;
  height: 100vh;
  padding-top: 7.6rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mxd-section-fullscreen {
    padding-top: 9.6rem;
  }
}

.library-page .mxd-section-inner-headline.padding-headline-pre-stack,
.library-detail-page .mxd-section-inner-headline.padding-headline-pre-stack,
.artists-page .mxd-section-inner-headline.padding-headline-pre-stack,
.insights-article-page .mxd-section-inner-headline.padding-headline-pre-stack,
.contact-page .mxd-section-inner-headline.padding-headline-pre-stack,
.about-us-page .mxd-section-inner-headline.padding-headline-pre-stack,
.insights-page .mxd-section-inner-headline.padding-headline-pre-stack {
  padding-top: 0;
}
@media only screen and (min-width: 768px) {
  .library-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .library-detail-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .artists-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .insights-article-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .contact-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .about-us-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .insights-page .mxd-section-inner-headline.padding-headline-pre-stack {
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .library-detail-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .artists-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .insights-article-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .contact-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .about-us-page .mxd-section-inner-headline.padding-headline-pre-stack,
  .insights-page .mxd-section-inner-headline.padding-headline-pre-stack {
    padding-top: 8rem;
  }
}

.mxd-container {
  position: relative;
  width: 100%;
  max-width: 1920px;
  padding: 0 3rem;
  margin: 0 auto;
}
.mxd-container.fullwidth-container {
  max-width: none;
  padding: 0;
}
.mxd-container.fullscreen-container {
  height: 100%;
}
.mxd-container.no-padding-container {
  padding: 0;
  overflow: hidden;
}
.mxd-container.grid-container {
  padding: 0 1.5rem;
}
.mxd-container.grid-l-container {
  padding: 0 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-container {
    padding: 0 6rem;
  }
  .mxd-container.grid-container {
    padding: 0 4.5rem;
  }
  .mxd-container.grid-l-container {
    padding: 0 4.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-container.grid-container.no-padding-right {
    padding-right: 0;
  }
  .mxd-container.grid-l-container {
    padding: 0 3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-container {
    padding: 0 9rem;
  }
  .mxd-container.grid-container {
    padding: 0 7.5rem;
  }
  .mxd-container.grid-l-container {
    padding: 0 4.5rem;
  }
}

.mxd-container__circle {
  z-index: 2;
  position: relative;
  margin-bottom: -10rem;
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .mxd-container__circle {
    margin-bottom: 0;
    position: absolute;
    top: -10rem;
    right: 12rem;
  }
  .mxd-container__circle.circle-fit {
    right: 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-container__circle {
    right: 18rem;
  }
  .mxd-container__circle.circle-fit {
    right: 9rem;
  }
}

.mxd-grid-item {
  padding: 0 1.5rem;
  margin-top: 3rem;
}
.mxd-grid-item.no-margin {
  margin: 0;
}
.mxd-grid-item.no-margin-desktop {
  margin-top: 3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-grid-item.no-margin-desktop {
    margin: 0;
  }
}

.mxd-grid-item-l {
  padding: 0 1.5rem;
  margin-top: 3rem;
}
.mxd-grid-item-l.no-margin {
  margin: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-grid-item-l {
    padding: 0 3rem;
  }
}

.mxd-block {
  position: relative;
}
.mxd-block.pre-stack-block {
  margin-bottom: -3rem;
  z-index: 1;
}
.mxd-block.fullscreen-block {
  height: 100%;
}
.mxd-block.absolute-centered-block {
  position: absolute;
  left: 0;
  top: 50%;
  bottom: auto;
  transform: translateY(-50%);
}
@media only screen and (min-width: 768px) {
  .mxd-block.pre-stack-block {
    margin-bottom: -6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-block.pre-stack-block {
    margin-bottom: -9rem;
  }
}

.mxd-block__image {
  position: relative;
  height: 460px;
  border-radius: var(--_radius-l);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
  margin-bottom: 3.8rem;
}
.mxd-block__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-block__image {
    height: 600px;
    margin-bottom: 4.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-block__image {
    height: 100%;
  }
}

.mxd-block__name {
  position: relative;
}
.mxd-block__name.name-manifest {
  margin-bottom: 2.8rem;
  padding-top: 0;
}
.mxd-block__name.name-inner-headline {
  margin-bottom: 0.2rem;
}
.mxd-block__name.name-project-link {
  margin-top: 0;
  margin-bottom: 0.1rem;
}
@media only screen and (min-width: 768px) {
  .mxd-block__name.name-manifest {
    margin-bottom: 3.2rem;
  }
  .mxd-block__name.name-inner-headline {
    margin-bottom: 0.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-block__name.name-manifest {
    margin-bottom: 0;
    padding-top: 1.5rem;
  }
  .mxd-block__name.name-inner-headline {
    margin-bottom: 0;
    margin-top: 2rem;
  }
  .mxd-block__name.name-project-link {
    margin-top: 1.3rem;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-block__name.name-inner-headline {
    margin-top: 2.6rem;
  }
  .mxd-block__name.name-project-link {
    margin-top: 2rem;
  }
}

.mxd-block__content.content-flex {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-block__content.content-flex {
    gap: 9rem;
  }
}

.mxd-block__inner-headline {
  display: block;
}

.inner-headline__title {
  position: relative;
}
.inner-headline__title.headline-img-before::before {
  content: "";
  display: inline-block;
  width: 8rem;
  height: 4.3rem;
  border-radius: 4.2rem;
  margin-right: 1.6rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.inner-headline__title.headline-img-after::after {
  content: "";
  display: inline-block;
  width: 8rem;
  height: 4.3rem;
  border-radius: 4.2rem;
  margin-left: 1.6rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media only screen and (min-width: 768px) {
  .inner-headline__title.headline-img-before::before {
    width: 11rem;
    height: 5.8rem;
    margin-right: 2.2rem;
  }
  .inner-headline__title.headline-img-after::after {
    width: 11rem;
    height: 5.8rem;
    margin-left: 2.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .inner-headline__title.headline-img-before::before {
    width: 14rem;
    height: 7rem;
    margin-right: 2.6rem;
  }
  .inner-headline__title.headline-img-after::after {
    width: 14rem;
    height: 7rem;
    margin-left: 2.6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .inner-headline__title.headline-img-before::before {
    width: 16rem;
    height: 8.4rem;
    margin-right: 3.3rem;
  }
  .inner-headline__title.headline-img-after::after {
    width: 16rem;
    height: 8.4rem;
    margin-left: 3.3rem;
  }
}

.inner-headline__descr {
  margin-top: 3.8rem;
}
@media only screen and (min-width: 1200px) {
  .inner-headline__descr {
    margin-top: 1.8rem;
    padding-left: 3rem;
    max-width: 560px;
  }
}
@media only screen and (min-width: 1600px) {
  .inner-headline__descr {
    margin-top: 2rem;
    max-width: 620px;
  }
}

.inner-headline__text {
  margin-top: 3.3rem;
}
@media only screen and (min-width: 768px) {
  .inner-headline__text {
    margin-top: 4.9rem;
  }
}
@media only screen and (min-width: 1200px) {
  .inner-headline__text {
    margin-top: 4.6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .inner-headline__text {
    margin-top: 5.9rem;
  }
}

.inner-headline__paragraph {
  margin-top: 3.8rem;
}
@media only screen and (min-width: 768px) {
  .inner-headline__paragraph {
    margin-top: 3.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .inner-headline__paragraph {
    margin-top: 4.1rem;
  }
}
@media only screen and (min-width: 1600px) {
  .inner-headline__paragraph {
    margin-top: 4.5rem;
  }
}

.inner-headline__data {
  margin-top: 4.4rem;
}
@media only screen and (min-width: 1200px) {
  .inner-headline__data {
    margin-top: 5.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .inner-headline__data {
    margin-top: 6.1rem;
  }
}

.inner-headline__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 5.5rem;
}
@media only screen and (min-width: 768px) {
  .inner-headline__tags {
    margin-top: 5.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .inner-headline__tags {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 1rem;
    height: 100%;
    margin-top: 0;
  }
  .inner-headline__tags .tag {
    align-self: flex-end;
  }
}

.inner-headline__blogtags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 4.9rem;
}
@media only screen and (min-width: 1200px) {
  .inner-headline__blogtags {
    margin-top: 5.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .inner-headline__blogtags {
    margin-top: 5.9rem;
  }
}

.inner-headline__breadcrumbs {
  margin-top: 4.9rem;
}
@media only screen and (min-width: 1200px) {
  .inner-headline__breadcrumbs {
    margin-top: 5.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .inner-headline__breadcrumbs {
    margin-top: 5.9rem;
  }
}

.mxd-block__decoration {
  display: block;
  width: 7rem;
  height: auto;
}

.mxd-block__manifest.centered {
  text-align: center;
}

.mxd-manifest__controls {
  margin-top: 4.4rem;
}
@media only screen and (min-width: 768px) {
  .mxd-manifest__controls {
    margin-top: 5rem;
  }
}

@media (max-width: 767px) {
  .mxd-manifest__controls {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.8rem;
  }
}
.mxd-block__paragraph {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-top: 1.8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-block__paragraph {
    margin-top: 1.3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-block__paragraph {
    margin-top: 0.4rem;
    gap: 3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-block__paragraph {
    max-width: 855px;
  }
}

.mxd-paragraph__lists {
  display: block;
}

.mxd-paragraph__lists-item {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 2.1rem;
}
.mxd-paragraph__lists-item:last-of-type {
  margin-bottom: 0;
}
.mxd-paragraph__lists-item ul {
  display: flex;
  flex-direction: column;
}
.mxd-paragraph__lists-item ul li {
  display: block;
  font: normal var(--fw-regular) 1.8rem/1.4 var(--_font-accent);
}
.mxd-paragraph__lists-item ul li a {
  font: normal var(--fw-regular) 1.8rem/1.4 var(--_font-accent);
  color: var(--t-medium);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .mxd-paragraph__lists-item ul li a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}
@media only screen and (min-width: 1200px) {
  .mxd-paragraph__lists-item {
    gap: 1.8rem;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-paragraph__lists-item ul li a {
    font-size: 1.8rem;
  }
}

.mxd-paragraph__controls {
  margin-top: 1.3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-paragraph__controls {
    margin-top: 1.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-paragraph__controls {
    margin-top: 1.7rem;
  }
}

.mxd-paragraph__client {
  margin-top: 0.2rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-paragraph__client {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-paragraph__client {
    margin-top: 0.2rem;
  }
}

.mxd-pinned-fullscreen {
  position: relative;
}

.mxd-pinned-fullscreen__static {
  position: sticky;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 1;
}

.mxd-pinned-fullscreen__scroll {
  width: 100%;
  position: relative;
  top: 0;
  display: flex;
  flex-direction: column;
  gap: 20vh;
  z-index: 3;
}
.mxd-pinned-fullscreen__scroll p {
  font-size: 30rem;
}

.mxd-pinned-fullscreen__tl-trigger {
  position: absolute;
  right: 0;
  bottom: 30vh;
  width: 1px;
  height: 1px;
}

@media (max-width: 767px) {
  .library-page .mxd-section-inner-headline {
    padding-top: 6rem;
  }
}

@media (max-width: 767px) {
  .library-detail-page.inner-page-content {
    padding-top: 5.6rem;
  }
  .library-detail-page .mxd-section-inner-headline {
    padding-top: 0;
  }
}

/* ------------------------------------------------*/
/* Elements - Page Structure End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Elements - Typography Start */
/* ------------------------------------------------*/
h1 {
  font: normal var(--fw-bold) 6rem/1.1 var(--_font-heading);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  h1 {
    font-size: 8rem;
  }
  h1.h1-small {
    font-size: 9rem;
  }
}
@media only screen and (min-width: 1200px) {
  h1 {
    font-size: 10rem;
  }
  h1.h1-small {
    font-size: 9rem;
  }
}
@media only screen and (min-width: 1400px) {
  h1.h1-small {
    font-size: 9rem;
  }
}
@media only screen and (min-width: 1600px) {
  h1 {
    font-size: 12rem;
  }
  h1.h1-small {
    font-size: 9rem;
  }
}

.typed-cursor {
  color: var(--accent);
}

h2 {
  font: normal var(--fw-bold) 4.4rem/1.1 var(--_font-heading);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
h2.opposite {
  color: var(--t-opp-bright);
}
h2.permanent-light {
  color: var(--pt-t-light-bright);
}
h2.permanent-dark {
  color: var(--pt-t-dark-bright);
}
@media only screen and (min-width: 768px) {
  h2 {
    font-size: 7rem;
  }
  h2.h2-small {
    font-size: 5rem;
  }
  h2.h2-large {
    font-size: 9rem;
  }
}
@media only screen and (min-width: 1600px) {
  h2 {
    font-size: 7rem;
  }
  h2.h2-small {
    font-size: 7rem;
  }
  h2.h2-large {
    font-size: 12rem;
  }
}

h3 {
  font: normal var(--fw-bold) 3.6rem/1.2 var(--_font-heading);
  color: var(--t-bright);
}
h3.opposite {
  color: var(--t-opp-bright);
}
@media only screen and (min-width: 768px) {
  h3 {
    font-size: 5rem;
  }
}

h4 {
  font: normal var(--fw-bold) 3rem/1.2 var(--_font-heading);
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  h4 {
    font-size: 4.4rem;
  }
}

h5 {
  font: normal var(--fw-bold) 2.6rem/1.2 var(--_font-heading);
  color: var(--t-bright);
}
h5 small {
  display: block;
  font: normal var(--fw-regular) 1.6rem/1.2 var(--_font-accent);
  color: var(--t-medium);
  margin-top: 0.2rem;
}
h5 a {
  color: var(--t-bright);
}
h5.opposite {
  color: var(--t-opp-bright);
}
h5.opposite a {
  color: var(--t-opp-bright);
}
@media only screen and (min-width: 768px) {
  h5 {
    font-size: 3.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  h5 small {
    font-size: 1.8rem;
  }
}

h6 {
  font: normal var(--fw-bold) 2.2rem/1.2 var(--_font-heading);
  color: var(--t-bright);
}
h6 a {
  color: var(--t-bright);
}
h6.opposite {
  color: var(--t-opp-bright);
}
h6.opposite a {
  color: var(--t-opp-bright);
}
@media only screen and (min-width: 1200px) {
  h6 {
    font-size: 3rem;
  }
}

p {
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}
p span,
p a {
  color: var(--t-bright);
}
p span {
  font-weight: var(--fw-semibold);
}
p a {
  text-decoration: none;
  background: linear-gradient(to right, var(--t-medium), var(--t-medium)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
p a.opposite {
  background: linear-gradient(to right, var(--t-opp-medium), var(--t-opp-medium)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
}
.no-touch p a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}
.no-touch p a:hover.opposite {
  color: var(--t-opp-bright);
}
p.t-120 {
  line-height: 1.2;
}
p.t-140 {
  line-height: 1.4;
}
p.t-xsmall {
  font-size: 1.4rem;
  line-height: 1.2;
}
p.t-small {
  font-size: 1.6rem;
}
p.t-small-mobile {
  font-size: 1.6rem;
}
p.t-large {
  font-family: var(--_font-accent);
  font-size: 2.5rem;
  color: var(--t-bright);
}
p.t-caption {
  line-height: 1.4;
  font-weight: var(--fw-medium);
}
p.t-muted {
  color: var(--t-muted);
}
p.t-muted span {
  color: var(--t-medium);
}
p.t-muted a {
  font-weight: var(--fw-regular);
  color: var(--t-muted);
  text-decoration: none;
  background: linear-gradient(to right, var(--t-muted), var(--t-muted)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch p.t-muted a:hover {
  color: var(--t-medium);
  background-size: 0 1px, 100% 1px;
}
p.t-muted a.no-effect {
  background: none;
}
p.t-opposite {
  color: var(--t-opp-bright);
}
p.t-opposite-medium {
  color: var(--t-opp-medium);
}
p.t-opposite-medium a {
  color: var(--t-opp-bright);
  text-decoration: none;
  background: linear-gradient(to right, var(--t-opp-medium), var(--t-opp-medium)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch p.t-opposite-medium a:hover {
  color: var(--t-opp-bright);
  background-size: 0 1px, 100% 1px;
}
p.t-bright {
  color: var(--t-bright);
}
p.t-bright.opposite {
  color: var(--t-opp-bright);
}
p.t-medium {
  font-weight: var(--fw-medium);
}
p.t-semibold {
  font-weight: var(--fw-semibold);
}
@media only screen and (min-width: 768px) {
  p.t-small-mobile {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  p {
    font-size: 2.2rem;
  }
  p.t-large {
    font-size: 3rem;
  }
  p.t-small {
    font-size: 1.8rem;
  }
  p.t-small-mobile {
    font-size: 2.2rem;
  }
}

.mxd-point-subtitle {
  display: inline-flex;
  align-items: center;
  justify-content: left;
  gap: 1rem;
  font: normal var(--fw-regular) 2.2rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
.mxd-point-subtitle svg {
  width: 1.9rem;
  height: 1.9rem;
  fill: var(--t-bright);
}
.mxd-point-subtitle span {
  font-weight: var(--fw-regular);
}
.mxd-point-subtitle a {
  color: var(--t-bright);
  background: none;
}
.no-touch .mxd-point-subtitle:hover a {
  color: var(--t-medium);
}

.mxd-manifest {
  font: normal var(--fw-regular) 2.8rem/1.6 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-manifest {
    font-size: 4.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-manifest {
    max-width: 855px;
  }
  .mxd-manifest.mxd-manifest-l {
    max-width: none;
  }
}

.mxd-stats-number {
  font: normal var(--fw-medium) 7rem/0.8 var(--_font-accent);
  color: var(--t-bright);
  letter-spacing: -0.1rem;
}
.mxd-stats-number.opposite {
  color: var(--t-opp-bright);
}
.mxd-stats-number.small {
  font-size: 5rem;
}
.mxd-stats-number.xsmall {
  font-size: 5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-stats-number.small {
    font-size: 7rem;
  }
  .mxd-stats-number.xsmall {
    font-size: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-stats-number {
    font-size: 9rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-stats-number {
    font-size: 12rem;
  }
}

/* ------------------------------------------------*/
/* Elements - Typography End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Elements - Controls Start */
/* ------------------------------------------------*/
.mxd-color-switcher {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 4.6rem;
  height: 4.6rem;
  border-radius: 50%;
  border: none;
  outline: 0;
  cursor: pointer;
  text-decoration: none;
  user-select: none;
  background-color: transparent;
  color: var(--t-bright);
  backdrop-filter: blur(6px);
}
.mxd-color-switcher::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%) scale(1);
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: transparent;
  transition: transform var(--_animspeed-medium), background-color var(--_animspeed-medium) var(--_animbezier);
}
.mxd-color-switcher i {
  display: inline-flex;
  position: relative;
  font-size: 2rem;
  overflow: hidden;
  transform: scale(1);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.no-touch .mxd-color-switcher:hover::before {
  background-color: var(--base-tint);
  transform: translateX(-50%) translateY(-50%) scale(1.04);
}
.no-touch .mxd-color-switcher:hover i {
  transform: scale(0.92);
  color: var(--nl-black);
}
@media only screen and (min-width: 768px) {
  .mxd-color-switcher {
    width: 5.6rem;
    height: 5.6rem;
  }
  .mxd-color-switcher i {
    font-size: 3rem;
  }
}

.mxd-ai-switcher {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 4.6rem;
  height: 4.6rem;
  border-radius: 50%;
  border: none;
  outline: 0;
  cursor: pointer;
  text-decoration: none;
  user-select: none;
  background-color: transparent;
  color: var(--t-bright);
  backdrop-filter: blur(6px);
}
.mxd-ai-switcher::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(1);
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: transparent;
  transition: transform var(--_animspeed-medium), background-color var(--_animspeed-medium) var(--_animbezier);
}
.mxd-ai-switcher i {
  display: inline-flex;
  position: relative;
  font-size: 2rem;
  overflow: hidden;
  transform: scale(1);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.no-touch .mxd-ai-switcher:hover::before {
  background-color: var(--base-tint);
  transform: translate(-50%, -50%) scale(1.04);
}
.no-touch .mxd-ai-switcher:hover i {
  transform: scale(0.92);
  color: var(--nl-black);
}
@media only screen and (min-width: 768px) {
  .mxd-ai-switcher {
    width: 5.6rem;
    height: 5.6rem;
  }
  .mxd-ai-switcher i {
    font-size: 3rem;
  }
}

.btn-rotating {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  color: var(--t-bright);
  font-size: 2.2rem;
}
.btn-rotating .btn-rotating__text {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.btn-rotating .btn-rotating__text text {
  fill: var(--t-bright);
  font-family: var(--_font-accent);
  font-weight: 500;
  text-transform: uppercase;
  transition: var(--_animspeed-medium) var(--_animbezier);
}
.btn-rotating .btn-rotating__image {
  display: block;
  height: auto;
  transform: scale(1);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.no-touch .btn-rotating:hover .btn-rotating__image {
  transform: scale(0.92);
}

.btn-rotating-160 {
  width: 160px;
  height: 160px;
}
.btn-rotating-160 .btn-rotating__text {
  width: 160px;
  height: 160px;
}
.btn-rotating-160 .btn-rotating__text text {
  font-size: 1.39rem;
  letter-spacing: normal;
}
.btn-rotating-160 .btn-rotating__image {
  width: 6rem;
}

.btn-rotating-120-160 {
  width: 120px;
  height: 120px;
}
.btn-rotating-120-160 .btn-rotating__text {
  width: 120px;
  height: 120px;
}
.btn-rotating-120-160 .btn-rotating__text text {
  font-size: 1.4rem;
  letter-spacing: normal;
}
.btn-rotating-120-160 .btn-rotating__image {
  width: 5rem;
}
@media only screen and (min-width: 1600px) {
  .btn-rotating-120-160 {
    width: 160px;
    height: 160px;
  }
  .btn-rotating-120-160 .btn-rotating__text {
    width: 160px;
    height: 160px;
  }
  .btn-rotating-120-160 .btn-rotating__text text {
    font-size: 1.39rem;
    letter-spacing: normal;
  }
  .btn-rotating-120-160 .btn-rotating__image {
    width: 6rem;
  }
}

.btn-rotating-180 {
  width: 180px;
  height: 180px;
}
.btn-rotating-180 .btn-rotating__text {
  width: 180px;
  height: 180px;
}
.btn-rotating-180 .btn-rotating__text text {
  font-size: 1.53rem;
  letter-spacing: 0.1rem;
}
.btn-rotating-180 .btn-rotating__image {
  width: 7.6rem;
}
.btn-rotating-180.ver-02 .btn-rotating__text text {
  font-size: 1.36rem;
}

.btn-rotating-blur-outline {
  width: 200px;
  height: 200px;
  border: 1px solid var(--st-opp-bright);
  border-radius: 50%;
  background-color: var(--neutral-transparent);
  backdrop-filter: blur(16px);
}
.btn-rotating-blur-outline .btn-rotating__text {
  width: 180px;
  height: 180px;
  top: 1rem;
  left: 1rem;
}
.btn-rotating-blur-outline .btn-rotating__text text {
  font-size: 1.4rem;
  letter-spacing: 0.09rem;
}
.btn-rotating-blur-outline .btn-rotating__image {
  width: 8rem;
}
.btn-rotating-blur-outline.ver-02 .btn-rotating__text text {
  font-size: 1.374rem;
  letter-spacing: 0.09rem;
}
.btn-rotating-blur-outline.ver-03 .btn-rotating__text text {
  font-size: 1.54rem;
  letter-spacing: 0.1rem;
}
.btn-rotating-blur-outline.ver-04 {
  width: 147px;
  height: 147px;
  color: var(--nl-white);
}
.btn-rotating-blur-outline.ver-04 .btn-rotating__text {
  width: 130px;
  height: 130px;
  top: 0.8rem;
  left: 0.8rem;
}
.btn-rotating-blur-outline.ver-04 .btn-rotating__text text {
  font-size: 1.54rem;
  letter-spacing: 0.1rem;
}
.btn-rotating-blur-outline.ver-04 .btn-rotating__image {
  width: 5rem;
}
@media only screen and (min-width: 1200px) {
  .btn-rotating-blur-outline.permanent-desktop {
    border: 1px solid rgba(255, 255, 255, 0.5);
    background-color: rgba(255, 255, 255, 0.05);
  }
  .btn-rotating-blur-outline.permanent-desktop .btn-rotating__text {
    fill: var(--nl-white);
  }
  .btn-rotating-blur-outline.permanent-desktop .btn-rotating__text text {
    fill: var(--nl-white);
  }
}

.btn {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 1.4rem;
  border: none;
  outline: 0;
  padding: 0;
  font: inherit;
  background-color: transparent;
  cursor: pointer;
  text-decoration: none;
  user-select: none;
}

.btn-to-top {
  position: fixed;
  right: 3rem;
  bottom: 3rem;
  width: 4.6rem;
  height: 4.6rem;
  border-radius: 50%;
  border-width: 2px;
  background-color: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(6px);
  color: var(--nl-white);
  mix-blend-mode: difference;
  font: normal var(--fw-regular) 2.2rem/1.5 var(--_font-accent);
  transform: scale(1);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
  z-index: 9;
  overflow: hidden;
}
.btn-to-top i {
  display: inline-flex;
  position: relative;
  font-size: 2.2rem;
  overflow: hidden;
}
.no-touch .btn-to-top:hover {
  transform: scale(1.04);
}
@media only screen and (min-width: 768px) {
  .btn-to-top {
    right: 6rem;
    bottom: 4rem;
    width: 5.6rem;
    height: 5.6rem;
  }
  .btn-to-top i {
    font-size: 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .btn-to-top {
    right: 9rem;
  }
}

.btn-line-default {
  gap: 1rem;
  font: normal var(--fw-medium) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
.btn-line-default i,
.btn-line-default .btn-caption {
  display: inline-flex;
  position: relative;
}
.btn-line-default i {
  font-size: 2.2rem;
  overflow: hidden;
}
@media only screen and (min-width: 1600px) {
  .btn-line-default {
    font-size: 2.2rem;
  }
  .btn-line-default i {
    font-size: 2.6rem;
  }
}

.btn-line-medium {
  gap: 1rem;
  font: normal var(--fw-regular) 1.6rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
.btn-line-medium i,
.btn-line-medium .btn-caption {
  display: inline-flex;
  position: relative;
}
.btn-line-medium i {
  font-size: 1.8rem;
  overflow: hidden;
}
@media only screen and (min-width: 1600px) {
  .btn-line-medium {
    font-size: 1.8rem;
  }
  .btn-line-medium i {
    font-size: 2rem;
  }
}

.btn-line-small {
  gap: 1rem;
  font: normal var(--fw-regular) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}
.btn-line-small i,
.btn-line-small .btn-caption {
  display: inline-flex;
  position: relative;
}
.btn-line-small i {
  font-size: 2.2rem;
  overflow: hidden;
}

.btn-line-xsmall {
  font: normal var(--fw-regular) 1.4rem/1.2 var(--_font-accent);
  gap: 0.6rem;
  justify-content: flex-start;
  width: auto;
}
.btn-line-xsmall i,
.btn-line-xsmall .btn-caption {
  display: inline-flex;
  position: relative;
}
.btn-line-xsmall i {
  font-size: 1.6rem;
  overflow: hidden;
}

.btn-line-headline {
  gap: 1rem;
  justify-content: flex-start;
  align-items: flex-end;
  width: auto;
  font: normal var(--fw-medium) 3.6rem/1.1 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-muted-extra);
  margin-top: 1rem;
}
.btn-line-headline i,
.btn-line-headline .btn-caption {
  display: inline-flex;
  position: relative;
}
.btn-line-headline i {
  font-size: 3.1rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .btn-line-headline {
    font-size: 8rem;
    margin-top: 0;
  }
  .btn-line-headline i {
    font-size: 6.7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .btn-line-headline {
    font-size: 10rem;
  }
  .btn-line-headline i {
    font-size: 8.7rem;
  }
  .no-touch .btn-line-headline:hover {
    color: var(--accent);
  }
}
@media only screen and (min-width: 1600px) {
  .btn-line-headline {
    font-size: 12rem;
  }
  .btn-line-headline i {
    font-size: 10.1rem;
  }
}

.btn-default {
  height: 5.6rem;
  line-height: 5.6rem;
  gap: 1.2rem;
  padding: 0 2.4rem;
  border-radius: 2.8rem;
  border-width: 2px;
  font: normal var(--fw-medium) 1.8rem/1.2 var(--_font-accent);
}
.btn-default i,
.btn-default .btn-caption {
  display: inline-flex;
  position: relative;
}
.btn-default i {
  font-size: 2rem;
  overflow: hidden;
}

.btn-header-signin {
  color: var(--t-bright);
  border-color: transparent;
}
.btn-header-signin i {
  display: none;
}
.no-touch .btn-header-signin:hover i {
  display: inline-flex;
  color: var(--t-bright);
}

.btn-small {
  height: 4.4rem;
  line-height: 4.4rem;
  gap: 0.8rem;
  padding: 0 1.5rem;
  border-radius: 2.2rem;
  border-width: 1px;
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
}
.btn-small i {
  font-size: 1.8rem;
}

.btn-large {
  height: 5.6rem;
  line-height: 5.6rem;
  gap: 1.2rem;
  padding: 0 2.2rem;
  border-radius: 2.8rem;
  border-width: 2px;
  font: normal var(--fw-medium) 2.2rem/1.5 var(--_font-accent);
}
.btn-large i {
  font-size: 2.6rem;
}
@media only screen and (min-width: 768px) {
  .btn-large {
    height: 8.4rem;
    line-height: 8.4rem;
    gap: 1.6rem;
    padding: 0 3.2rem;
    border-radius: 4.2rem;
    border-width: 2px;
    font: normal var(--fw-medium) 3rem/1.5 var(--_font-accent);
  }
  .btn-large i {
    font-size: 3.6rem;
  }
}

.btn-round {
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 50%;
  border-width: 2px;
  font: normal var(--fw-regular) 2.2rem/1.5 var(--_font-accent);
  transform: scale(1);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.btn-round i {
  display: inline-flex;
  position: relative;
  font-size: 2.5rem;
  overflow: hidden;
}
.no-touch .btn-round:hover {
  transform: scale(1.04);
}

.btn-round-large {
  width: 5.6rem;
  height: 5.6rem;
  border-width: 2px;
}
.btn-round-large i {
  font-size: 2.6rem;
}
@media only screen and (min-width: 768px) {
  .btn-round-large {
    width: 8.2rem;
    height: 8.2rem;
  }
  .btn-round-large i {
    font-size: 3rem;
  }
}

.btn-round-medium {
  width: 5.6rem;
  height: 5.6rem;
  border-width: 1px;
}
.btn-round-medium i {
  font-size: 2.4rem;
}

.btn-round-small {
  width: 4rem;
  height: 4rem;
  border-width: 1px;
}
.btn-round-small i {
  font-size: 1.8rem;
}

.btn-form {
  justify-content: center;
  width: 6rem;
  height: 6rem;
  border-width: 2px;
  font: normal var(--fw-regular) 2.2rem/1.5 var(--_font-accent);
  transform: scale(1);
  transition: transform var(--_animspeed-medium), color var(--_animspeed-medium) var(--_animbezier);
}
.btn-form i {
  display: inline-flex;
  position: relative;
  font-size: 2.6rem;
  overflow: hidden;
}
.no-touch .btn-form:hover {
  transform: scale(1.04);
}
.no-touch .btn-form:hover.no-scale {
  transform: scale(1);
}

.btn-absolute-right {
  position: absolute;
  top: 0;
  right: 0;
}

.btn-fullwidth {
  width: 100%;
  justify-content: space-between;
}

.btn-outline {
  background-color: transparent;
  border-style: solid;
  border-color: var(--st-bright);
  color: var(--t-bright);
}
.btn-outline.opposite {
  border-color: var(--st-opp-bright);
  color: var(--t-opp-bright);
}
.btn-outline.permanent {
  border-color: var(--pt-base);
  color: var(--pt-t-light-bright);
}

[color-scheme=dark] .btn-outline {
  color: var(--t-medium);
}

.btn-accent {
  background-color: var(--accent);
  border-style: solid;
  border-color: var(--accent);
  color: var(--t-opp-bright);
}

.btn-additional {
  background-color: var(--additional);
  border-style: solid;
  border-color: var(--additional);
  color: var(--t-bright);
}

[color-scheme=dark] .btn-additional {
  color: var(--t-medium);
}

.btn-opposite {
  background-color: var(--base-opp);
  border-style: solid;
  border-color: var(--base-opp);
  color: var(--t-opp-bright);
}

.btn-base {
  background-color: var(--base);
  border-style: solid;
  border-color: var(--base);
  color: var(--t-bright);
}

.btn-permanent {
  background-color: var(--pt-base);
  border-style: solid;
  border-color: var(--pt-st-light-bright);
  color: var(--pt-t-dark-bright);
}

.btn-ai-promo {
  position: relative;
  overflow: hidden;
  color: var(--t-opp-bright);
  background: linear-gradient(135deg, var(--accent), var(--additional), var(--base-opp));
  background-size: 300% 300%;
  border-style: solid;
  border-color: transparent;
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.25);
  animation: aiGradientShift 8s ease-in-out infinite;
}
.btn-ai-promo .btn-caption, .btn-ai-promo i {
  position: relative;
  z-index: 1;
}
.btn-ai-promo::before {
  content: "";
  position: absolute;
  top: -2px;
  right: -2px;
  bottom: -2px;
  left: -2px;
  border-radius: inherit;
  background: radial-gradient(ellipse at 30% 20%, rgba(255, 255, 255, 0.16), transparent 50%), radial-gradient(ellipse at 70% 80%, rgba(255, 255, 255, 0.1), transparent 50%);
  filter: blur(10px);
  z-index: 0;
  animation: aiGlowPulse 3s ease-in-out infinite;
}
.no-touch .btn-ai-promo:hover {
  transform: scale(1.05);
}

@keyframes aiGradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes aiGlowPulse {
  0% {
    opacity: 0.35;
    transform: scale(1);
  }
  50% {
    opacity: 0.6;
    transform: scale(1.04);
  }
  100% {
    opacity: 0.35;
    transform: scale(1);
  }
}
@keyframes aiFloat {
  0%, 100% {
    transform: translateX(-50%) translateY(0);
  }
  50% {
    transform: translateX(-50%) translateY(-6px);
  }
}
@media (max-width: 767px) {
  .btn-mobile-icon {
    width: 3.6rem;
    height: 3.6rem;
    line-height: 3.6rem;
    padding: 0;
    border-radius: 50%;
    gap: 0;
  }
  .btn-mobile-icon .btn-caption {
    display: none;
  }
  .btn-mobile-icon i {
    font-size: 1.8rem;
  }
  .btn-ai-promo {
    position: fixed;
    left: 50%;
    bottom: 2rem;
    z-index: 1000;
    transform: translateX(-50%);
    animation: aiGradientShift 8s ease-in-out infinite, aiFloat 6s ease-in-out infinite;
  }
  .no-touch .btn-ai-promo:hover {
    transform: translateX(-50%) scale(1.05);
  }
  .mxd-header .btn-ai-promo {
    display: none;
  }
  .btn-ai-promo-floating {
    position: fixed;
    left: 50%;
    bottom: 2rem;
    z-index: 1000;
    transform: translateX(-50%);
    animation: aiGradientShift 8s ease-in-out infinite, aiFloat 6s ease-in-out infinite;
  }
  .no-touch .btn-ai-promo-floating:hover {
    transform: translateX(-50%) scale(1.05);
  }
}
@media (min-width: 768px) {
  .btn-ai-promo-floating {
    display: none;
  }
}
[color-scheme=light] .mxd-modal {
  --t-bright: var(--t-bright--light);
  --t-medium: var(--t-medium--light);
  --st-bright: var(--st-bright--light);
  --st-medium: var(--st-medium--light);
  --t-muted: var(--t-muted--light);
  --fw-regular: var(--fw-regular--light);
  --fw-medium: var(--fw-medium--light);
  --fw-semibold: var(--fw-semibold--light);
  --fw-bold: var(--fw-bold--light);
}

[color-scheme=dark] .mxd-modal {
  --t-bright: var(--t-bright--dark);
  --t-medium: var(--t-medium--dark);
  --st-bright: var(--st-bright--dark);
  --st-medium: var(--st-medium--dark);
  --t-muted: var(--t-muted--dark);
  --fw-regular: var(--fw-regular--dark);
  --fw-medium: var(--fw-medium--dark);
  --fw-semibold: var(--fw-semibold--dark);
  --fw-bold: var(--fw-bold--dark);
}

.mxd-modal {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity var(--_animspeed-medium) var(--_animbezier), visibility var(--_animspeed-medium) var(--_animbezier);
}
.mxd-modal.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.mxd-modal .mxd-modal__overlay {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(8px);
}
.mxd-modal .mxd-modal__dialog {
  position: relative;
  width: calc(100% - 4rem);
  max-width: 680px;
  max-height: calc(100vh - 4rem);
  max-height: calc(100dvh - 4rem);
  border-radius: 2.4rem;
  background: var(--base);
  color: var(--t-bright);
  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.35);
  transform: translateY(40px) scale(0.98);
  opacity: 0;
  transition: transform var(--_animspeed-medium) var(--_animbezier), opacity var(--_animspeed-medium) var(--_animbezier);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.mxd-modal.is-visible .mxd-modal__dialog {
  transform: translateY(0) scale(1);
  opacity: 1;
}
.mxd-modal .mxd-modal__header {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 3.2rem 4rem 2rem;
  border-bottom: 1px solid var(--st-muted-bright);
  margin-bottom: 2.4rem;
}
.mxd-modal .mxd-modal__header i {
  font-size: 3.2rem;
  color: var(--brand-orange);
}
.mxd-modal .mxd-modal__title {
  font: normal var(--fw-medium) 2.8rem/1.2 var(--_font-accent);
  margin: 0;
}
.mxd-modal .mxd-modal__content {
  padding: 0 4rem 4rem;
  font: normal var(--fw-regular) 1.6rem/1.6 var(--_font-accent);
  color: var(--t-medium);
  flex: 1;
  min-height: 0;
  overflow: auto;
}
.mxd-modal .mxd-modal__intro {
  margin: 0 0 2.4rem;
  font-size: 1.8rem;
  line-height: 1.5;
  color: var(--t-bright);
}
.mxd-modal .mxd-modal__list {
  list-style: none;
  margin: 0 0 3.2rem;
  padding: 2.4rem 0;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  border-top: 1px dashed var(--st-muted);
  border-bottom: 1px dashed var(--st-muted);
}
.mxd-modal .mxd-modal__list li {
  display: flex;
  align-items: flex-start;
  gap: 1.4rem;
}
.mxd-modal .mxd-modal__list li i {
  font-size: 2rem;
  color: var(--brand-orange);
  margin-top: 0.2rem;
  flex-shrink: 0;
}
.mxd-modal .mxd-modal__list li span {
  flex: 1;
}
.mxd-modal .mxd-radio-item {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  cursor: pointer;
  padding: 0.8rem 0;
  user-select: none;
}
.mxd-modal .mxd-radio-item input[type=radio] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.mxd-modal .mxd-radio-item .mxd-radio-item__circle {
  position: relative;
  display: inline-block;
  flex: none;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1px solid var(--st-muted);
  transition: all var(--_animspeed-medium) ease;
}
.mxd-modal .mxd-radio-item .mxd-radio-item__circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: var(--brand-orange);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.mxd-modal .mxd-radio-item:hover .mxd-radio-item__circle {
  border-color: var(--t-bright);
}
.mxd-modal .mxd-radio-item input[type=radio]:checked ~ .mxd-radio-item__circle {
  border-color: var(--brand-orange);
}
.mxd-modal .mxd-radio-item input[type=radio]:checked ~ .mxd-radio-item__circle::after {
  transform: translate(-50%, -50%) scale(1);
}
.mxd-modal .mxd-radio-item .mxd-radio-item__text {
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-bright);
  transition: color var(--_animspeed-medium) ease;
}
.mxd-modal .mxd-radio-item input[type=radio]:checked ~ .mxd-radio-item__text {
  color: var(--brand-orange);
  font-weight: var(--fw-medium);
}
.mxd-modal .mxd-modal__close {
  position: absolute;
  top: 2rem;
  right: 2rem;
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  border-width: 1px;
  font: normal var(--fw-regular) 2rem/1 var(--_font-accent);
  color: var(--t-muted);
  border-color: var(--st-muted);
  transition: all 0.3s ease;
}
.mxd-modal .mxd-modal__close:hover {
  color: var(--t-bright);
  border-color: var(--t-bright);
  background-color: var(--base-tint);
}
.mxd-modal .contact-form .form-group-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.6rem;
  margin: 0 0 1.6rem;
}
.mxd-modal .contact-form .form-group-row > div {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}
.mxd-modal .contact-form .form-group-full {
  margin-bottom: 2.4rem;
}
.mxd-modal .contact-form input {
  height: 5rem;
  background-color: var(--base-tint);
  border: 1px solid transparent;
  border-radius: 1.2rem;
  padding: 1rem 1.8rem;
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-bright);
  transition: all 0.3s ease;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .mxd-modal .contact-form input {
    height: 5.6rem;
    font-size: 1.8rem;
  }
}
.mxd-modal .contact-form input:focus {
  background-color: var(--base);
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1);
}
.mxd-modal .contact-form button[type=submit] {
  width: 100%;
  justify-content: center;
  background-color: var(--brand-orange);
  border-color: var(--brand-orange);
  color: #fff;
  margin-top: 0;
}
.mxd-modal .contact-form button[type=submit] .btn-caption {
  display: block !important;
  color: #fff !important;
}
.mxd-modal .contact-form button[type=submit]:hover {
  background-color: #E0541E;
  border-color: #E0541E;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(232, 93, 37, 0.2);
}

@media (max-width: 767px) {
  .mxd-modal .mxd-modal__dialog {
    width: calc(100% - 2rem);
    border-radius: 1.6rem;
    max-height: 90vh;
    overflow-y: auto;
  }
  .mxd-modal .mxd-modal__header {
    padding: 2.4rem 2rem 1.6rem;
  }
  .mxd-modal .mxd-modal__title {
    font-size: 2.2rem;
  }
  .mxd-modal .mxd-modal__content {
    padding: 0 2rem 2.4rem;
  }
  .mxd-modal .contact-form .form-group-row {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }
}
.btn-muted {
  background-color: transparent;
  color: var(--t-muted);
}
.no-touch .btn-muted:hover {
  color: var(--t-bright);
}

.btn-bright {
  background-color: transparent;
  color: var(--t-bright);
}
.no-touch .btn-bright:hover {
  color: var(--t-bright);
}

.btn-anim.play .btn-anim__letter {
  transform: translateY(-100%);
}
.btn-anim:hover .btn-anim__letter {
  transform: translateY(-100%);
}
.btn-anim .btn-caption {
  display: block !important;
  height: 3.3rem;
  line-height: 3.3rem;
  overflow: hidden;
}
.btn-anim.btn-anim-medium .btn-caption {
  height: 2.3rem;
  line-height: 2.3rem;
}

.btn-anim__letter {
  display: inline-block;
  transition: transform 0.5s cubic-bezier(0.76, 0, 0.024, 1);
}

.btn-anim .btn-anim__block:last-child {
  color: var(--primary);
}

.btn-anim__letter:nth-child(1) {
  transition-delay: 0s;
}
.btn-anim__letter:nth-child(2) {
  transition-delay: 0.03s;
}
.btn-anim__letter:nth-child(3) {
  transition-delay: 0.06s;
}
.btn-anim__letter:nth-child(4) {
  transition-delay: 0.09s;
}
.btn-anim__letter:nth-child(5) {
  transition-delay: 0.12s;
}
.btn-anim__letter:nth-child(6) {
  transition-delay: 0.15s;
}
.btn-anim__letter:nth-child(7) {
  transition-delay: 0.18s;
}
.btn-anim__letter:nth-child(8) {
  transition-delay: 0.21s;
}
.btn-anim__letter:nth-child(9) {
  transition-delay: 0.24s;
}
.btn-anim__letter:nth-child(10) {
  transition-delay: 0.27s;
}
.btn-anim__letter:nth-child(11) {
  transition-delay: 0.3s;
}
.btn-anim__letter:nth-child(12) {
  transition-delay: 0.33s;
}
.btn-anim__letter:nth-child(13) {
  transition-delay: 0.36s;
}
.btn-anim__letter:nth-child(14) {
  transition-delay: 0.39s;
}
.btn-anim__letter:nth-child(15) {
  transition-delay: 0.42s;
}
.btn-anim__letter:nth-child(16) {
  transition-delay: 0.45s;
}
.btn-anim__letter:nth-child(17) {
  transition-delay: 0.48s;
}
.btn-anim__letter:nth-child(18) {
  transition-delay: 0.51s;
}
.btn-anim__letter:nth-child(19) {
  transition-delay: 0.54s;
}
.btn-anim__letter:nth-child(20) {
  transition-delay: 0.57s;
}
.btn-anim__letter:nth-child(21) {
  transition-delay: 0.6s;
}
.btn-anim__letter:nth-child(22) {
  transition-delay: 0.63s;
}
.btn-anim__letter:nth-child(23) {
  transition-delay: 0.66s;
}
.btn-anim__letter:nth-child(24) {
  transition-delay: 0.69s;
}
.btn-anim__letter:nth-child(25) {
  transition-delay: 0.72s;
}
.btn-anim__letter:nth-child(26) {
  transition-delay: 0.75s;
}
.btn-anim__letter:nth-child(27) {
  transition-delay: 0.78s;
}
.btn-anim__letter:nth-child(28) {
  transition-delay: 0.81s;
}
.btn-anim__letter:nth-child(29) {
  transition-delay: 0.84s;
}
.btn-anim__letter:nth-child(30) {
  transition-delay: 0.87s;
}

.btn-mobile-icon {
  width: 4.6rem;
  height: 4.6rem;
  padding: 0;
  border-radius: 50%;
  backdrop-filter: blur(6px);
}
.btn-mobile-icon i {
  font-size: 2rem;
}
.btn-mobile-icon .btn-caption {
  display: none !important;
}
@media only screen and (min-width: 768px) {
  .btn-mobile-icon {
    width: auto;
    height: 5.6rem;
    padding: 0 2.2rem;
    border-radius: 2.8rem;
  }
  .btn-mobile-icon i {
    font-size: 2.6rem;
  }
  .btn-mobile-icon .btn-caption {
    display: block !important;
  }
}

.tag {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  border: none;
  outline: 0;
  padding: 0;
  font: inherit;
  background-color: transparent;
  text-decoration: none;
  user-select: none;
}

.tag-default {
  height: 3.2rem;
  line-height: 3.2rem;
  padding: 0 1.2rem;
  border-radius: 1.6rem;
  border-width: 1px;
  font: normal var(--fw-regular) 1.4rem/1.5 var(--_font-accent);
}
@media only screen and (min-width: 1600px) {
  .tag-default {
    height: 3.6rem;
    line-height: 3.6rem;
    padding: 0 1.4rem;
    border-radius: 1.8rem;
    font-size: 1.6rem;
  }
}

.tag-opposite {
  background-color: var(--base-opp);
  border-style: solid;
  border-color: var(--base-opp);
  color: var(--t-opp-bright);
}

.tag-link-opposite {
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.tag-link-opposite a {
  color: var(--t-opp-bright);
}
.no-touch .tag-link-opposite:hover {
  background-color: transparent;
  border-color: var(--st-bright);
  color: var(--t-bright);
}
.no-touch .tag-link-opposite:hover a {
  color: var(--t-bright);
}

.tag-outline {
  background-color: transparent;
  border-style: solid;
  border-color: var(--st-bright);
  color: var(--t-bright);
}

.tag-link-outline {
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.tag-link-outline a {
  color: var(--t-bright);
}
.no-touch .tag-link-outline:hover {
  background-color: var(--base-opp);
  border-color: var(--base-opp);
  color: var(--t-opp-bright);
}
.no-touch .tag-link-outline:hover a {
  color: var(--t-opp-bright);
}

.tag-outline-opposite {
  background-color: transparent;
  border-style: solid;
  border-color: var(--st-opp-bright);
  color: var(--t-opp-bright);
}

.tag-outline-medium {
  background-color: transparent;
  border-style: solid;
  border-color: var(--st-medium);
  color: var(--t-medium);
}

.tag-outline-permanent {
  background-color: transparent;
  border-style: solid;
  border-color: var(--pt-st-light-bright);
  color: var(--pt-t-light-bright);
}

.tag-link-outline-premanent {
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.tag-link-outline-premanent a {
  color: var(--pt-t-light-bright);
}
.no-touch .tag-link-outline-premanent:hover {
  background-color: var(--pt-base);
  border-color: var(--pt-st-light-bright);
  color: var(--pt-t-dark-bright);
}
.no-touch .tag-link-outline-premanent:hover a {
  color: var(--pt-t-dark-bright);
}

.tag-permanent {
  background-color: var(--pt-base);
  border-style: solid;
  border-color: var(--pt-st-light-bright);
  color: var(--pt-t-dark-bright);
}

.tag-permanent-opposite {
  background-color: var(--pt-base-dark);
  border-style: solid;
  border-color: var(--pt-st-dark-bright);
  color: var(--pt-t-light-bright);
}

.tag-accent {
  background-color: var(--accent);
  border-style: solid;
  border-color: var(--accent);
  color: var(--t-opp-bright);
}

.tag-additional {
  background-color: var(--additional);
  border-style: solid;
  border-color: var(--additional);
  color: var(--t-bright);
}

.slide-right:hover i::before {
  animation: 0.6s var(--_animbezier) 0.3s 1 both slideRight;
}

.slide-right-up:hover i::before {
  animation: 0.6s var(--_animbezier) 0.3s 1 both slideRightUp;
}

.slide-right-down:hover i::before {
  animation: 0.6s var(--_animbezier) 0.3s 1 both slideRightDown;
}

.slide-left:hover i::before {
  animation: 0.6s var(--_animbezier) 0s 1 both slideLeft;
}

.slide-left-up:hover i::before {
  animation: 0.6s var(--_animbezier) 0s 1 both slideLeftUp;
}

.slide-left-down:hover i::before {
  animation: 0.6s var(--_animbezier) 0s 1 both slideLeftDown;
}

.slide-down:hover i::before {
  animation: 0.6s var(--_animbezier) 0.3s 1 both slideDown;
}

.slide-up:hover i::before {
  animation: 0.6s var(--_animbezier) 0s 1 both slideUp;
}

.anim-no-delay:hover i::before {
  animation-delay: 0s;
}

@keyframes slideRight {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateX(-100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slideRightUp {
  0% {
    transform: translateX(0) translateY(0);
  }
  50% {
    transform: translateX(100%) translateY(-100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateX(-100%) translateY(100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateX(0) translateY(0);
  }
}
@keyframes slideRightDown {
  0% {
    transform: translateX(0) translateY(0);
  }
  50% {
    transform: translateX(100%) translateY(100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateX(-100%) translateY(-100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateX(0) translateY(0);
  }
}
@keyframes slideLeft {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateX(100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slideLeftUp {
  0% {
    transform: translateX(0) translateY(0);
  }
  50% {
    transform: translateX(-100%) translateY(-100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateX(100%) translateY(100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateX(0) translateY(0);
  }
}
@keyframes slideLeftDown {
  0% {
    transform: translateX(0) translateY(0);
  }
  50% {
    transform: translateX(-100%) translateY(100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateX(100%) translateY(-100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateX(0) translateY(0);
  }
}
@keyframes slideDown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateY(-100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes slideUp {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-100%);
  }
  51% {
    opacity: 0;
  }
  52% {
    transform: translateY(100%);
    opacity: 0;
  }
  53% {
    opacity: 1;
  }
  100% {
    transform: translateY(0);
  }
}
.mxd-spin {
  animation: spin 15s linear infinite;
}

.mxd-spin-hover img {
  animation: spin 5s linear infinite;
  animation-play-state: paused;
}
.mxd-spin-hover:hover img {
  animation-play-state: running;
}

@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes menuSlideRight {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(100%);
  }
  51% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes menuDrift {
  0% {
    transform: translateX(0);
  }
  49% {
    transform: translateX(120%);
  }
  50% {
    transform: translateX(-120%);
  }
  100% {
    transform: translateX(0);
  }
}
/* ------------------------------------------------*/
/* Elements - Controls End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Elements - Forms Start */
/* ------------------------------------------------*/
.form-container {
  position: relative;
}

.form {
  opacity: 1;
  transition: opacity var(--_animspeed-slow) ease-in-out;
}
.form.is-hidden {
  opacity: 0;
}

form {
  position: relative;
  width: 100%;
}
form input, form textarea {
  position: relative;
  display: block;
  width: 100%;
  height: 5rem;
  padding: 1rem 1.8rem;
  background-color: transparent;
  border: 1px solid var(--st-muted-bright);
  border-radius: 1.2rem;
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-bright);
  transition: all 0.3s ease;
  outline: none;
}
form input:focus, form textarea:focus {
  background-color: var(--base);
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1);
}
form textarea {
  height: auto;
  min-height: 16rem;
  line-height: 1.6;
  resize: vertical;
}
form ::-webkit-input-placeholder {
  color: var(--t-muted);
  opacity: 0.7;
}
form :-moz-placeholder {
  color: var(--t-muted);
  opacity: 0.7;
}
form ::-moz-placeholder {
  color: var(--t-muted);
  opacity: 0.7;
}
form :-ms-input-placeholder {
  color: var(--t-muted);
  opacity: 0.7;
}
form input:focus:required:invalid,
form textarea:focus:required:invalid {
  color: var(--t-bright);
}
form input:required:valid,
form textarea:required:valid {
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  form input, form textarea {
    height: 5.6rem;
    font-size: 1.8rem;
  }
  form textarea {
    height: auto;
    min-height: 16rem;
    line-height: 1.6;
  }
}
@media only screen and (min-width: 1600px) {
  form textarea {
    min-height: 23rem;
  }
}

.form__reply {
  position: absolute;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: opacity var(--_animspeed-slow) ease-in-out;
}
.form__reply.centered {
  position: absolute;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  max-width: 400px;
}
.form__reply.is-visible {
  opacity: 1;
}

.reply__icon {
  display: block;
  font-size: 6rem;
  color: var(--t-bright);
  margin-bottom: 1.2rem;
}

.reply__title {
  font: normal var(--fw-medium) 3.6rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin-bottom: 1.4rem;
}

.reply__text {
  display: block;
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}

/* ------------------------------------------------*/
/* Elements - Forms End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Elements - Components Start */
/* ------------------------------------------------*/
.mxd-logo {
  display: inline-flex;
  align-items: center;
  justify-content: left;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .mxd-logo {
    gap: 1.4rem;
  }
}

.mxd-logo__image {
  display: block;
  width: 16.1rem;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .mxd-logo__image {
    width: 19.6rem;
  }
}

.mxd-logo__text {
  font: normal var(--fw-medium) 1.9rem/1.1 var(--_font-accent);
  letter-spacing: normal;
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-logo__text {
    font-size: 2.4rem;
  }
}

.mxd-section-title {
  display: flex;
  flex-direction: column;
  gap: 3.4rem;
  text-align: left;
  margin-bottom: 7rem;
}
.mxd-section-title.h2-only {
  margin-bottom: 6.2rem;
}
.mxd-section-title.no-controls {
  margin-bottom: 6rem;
}
.mxd-section-title.title-large {
  gap: 4.2rem;
}
.mxd-section-title.pre-grid {
  margin-bottom: 4rem;
}
.mxd-section-title.pre-block {
  margin-bottom: 4.4rem;
}
.mxd-section-title.no-margin {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-section-title {
    margin-bottom: 8rem;
  }
  .mxd-section-title.h2-only {
    margin-bottom: 6.6rem;
  }
  .mxd-section-title.no-controls {
    margin-bottom: 7rem;
  }
  .mxd-section-title.pre-grid {
    margin-bottom: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-title {
    margin-bottom: 6.7rem;
  }
  .mxd-section-title.no-controls {
    margin-bottom: 6.7rem;
  }
  .mxd-section-title.no-margin-desktop {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-title.title-large {
    gap: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section-title {
    gap: 4.2rem;
    margin-bottom: 6.7rem;
  }
}

.mxd-section-title__text {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
@media only screen and (min-width: 1600px) {
  .mxd-section-title__text {
    gap: 2.6rem;
  }
}

.mxd-section-title__controls {
  position: relative;
}

.mxd-section-title__image-link {
  display: flex;
}
.mxd-section-title__image-link svg,
.mxd-section-title__image-link img {
  width: 140px;
  height: auto;
}
@media only screen and (min-width: 1600px) {
  .mxd-section-title__image-link svg,
  .mxd-section-title__image-link img {
    width: 160px;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-section-title__title.card-split-title {
    margin-top: -1.6rem;
  }
}

.mxd-section-title__descr {
  padding-right: 6rem;
  margin-top: 2.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section-title__descr {
    margin-top: 1.8rem;
    max-width: 620px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-title__descr {
    margin-top: 2.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section-title__descr {
    margin-top: 2.5rem;
  }
}

.mxd-section-title__controls {
  display: flex;
  margin-top: 3.2rem;
}
.mxd-section-title__controls.pre-title {
  margin-top: 3.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section-title__controls.pre-title {
    margin-top: 2.9rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-title__controls {
    justify-content: flex-start;
    margin-top: 4.2rem;
  }
  .mxd-section-title__controls.pre-title {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section-title__controls {
    margin-top: 4.2rem;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-section-title__hrtitle {
    padding-right: 6rem;
    margin-bottom: 0;
  }
}

.mxd-section-title__hrdescr {
  margin-top: 2.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section-title__hrdescr {
    padding-right: 6rem;
    margin-top: 1.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-title__hrdescr {
    margin-top: 0;
    padding-top: 0.7rem;
  }
}

.mxd-section-title__hrcontrols {
  display: flex;
  margin-top: 3.2rem;
}
.mxd-section-title__hrcontrols.pre-title {
  margin-top: 3.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-section-title__hrcontrols.pre-title {
    margin-top: 2.9rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-section-title__hrcontrols {
    justify-content: flex-end;
    padding-top: 1.7rem;
    margin-top: 0;
  }
  .mxd-section-title__hrcontrols.pre-title {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section-title__hrcontrols {
    padding-top: 1.7rem;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-section-title__hrparagraph {
    margin-top: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-section-title__hrparagraph {
    margin-top: 5.3rem;
  }
}

.mxd-data-list {
  position: relative;
}

.mxd-data-list__column {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
  margin-bottom: 2.8rem;
}
.mxd-data-list__column:last-of-type {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-data-list__column {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-data-list__column {
    gap: 3.4rem;
  }
}

.mxd-data-list__item {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.mxd-data-list__name {
  font: normal var(--fw-regular) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-medium);
}

.mxd-data-list__content {
  display: inline-flex;
  font: normal var(--fw-medium) 2.2rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
.mxd-data-list__content a {
  text-decoration: none;
  background: linear-gradient(to right, var(--st-medium), var(--st-medium)), linear-gradient(to right, var(--accent), var(--accent));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
  transform-origin: bottom right;
}
.no-touch .mxd-data-list__content a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
  transform-origin: bottom left;
}

.mxd-avatars-group {
  position: relative;
  display: flex;
  gap: 2rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-avatars-group {
    flex-direction: row;
    align-items: center;
  }
  .mxd-avatars-group.align-right {
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
    text-align: right;
  }
}

.mxd-avatars-group__text {
  display: flex;
  flex-direction: column;
}
.mxd-avatars-group__text p, .mxd-avatars-group__text a {
  line-height: 1.2;
  color: var(--t-medium);
  font-size: 1.8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-avatars-group__text p, .mxd-avatars-group__text a {
    font-size: 2.2rem;
  }
}

.mxd-avatars {
  position: relative;
  display: flex;
}
.mxd-avatars.align-right {
  justify-content: flex-end;
  text-align: right;
}

.mxd-avatars__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  overflow: hidden;
  margin-left: -2.2rem;
}
.mxd-avatars__item:first-of-type {
  margin-left: 0;
}
.mxd-avatars__item.small {
  width: 4.6rem;
  height: 4.6rem;
  margin-left: -1.4rem;
}
.mxd-avatars__item.small:first-of-type {
  margin-left: 0;
}
.mxd-avatars__item img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-avatars__item.small {
    width: 5.6rem;
    height: 5.6rem;
    margin-left: -1.6rem;
  }
}

.mxd-avatars__icon {
  width: 4rem;
  height: auto;
}
.mxd-avatars__icon.small {
  width: 3rem;
  height: auto;
}

.library-tabs {
  display: flex;
  align-items: center;
  gap: 2.2rem;
  margin-top: 2rem;
}
@media (max-width: 767px) {
  .library-tabs {
    gap: 0.8rem;
    margin-top: 1.2rem;
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 768px) {
  .library-tabs {
    gap: 2.6rem;
    margin-top: 2.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-tabs {
    gap: 3rem;
    margin-top: 3rem;
  }
}

.library-tab {
  display: inline-flex;
  align-items: center;
  border: none;
  outline: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
  font: normal var(--fw-regular) 2.2rem/1.2 var(--_font-accent);
  color: var(--t-muted);
  opacity: 0.35;
  transition: color var(--_animspeed-medium) var(--_animbezier), opacity var(--_animspeed-medium) var(--_animbezier);
}
.no-touch .library-tab:hover {
  opacity: 0.7;
  color: var(--t-bright);
}
@media (max-width: 767px) {
  .library-tab {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .library-tab {
    font-size: 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-tab {
    font-size: 2.6rem;
  }
}
.library-tab.is-active {
  opacity: 1;
  color: var(--t-bright);
}

.library-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border: none;
  background: transparent;
  padding: 0;
  margin-right: 1rem;
  line-height: 1;
  cursor: pointer;
  transition: all 0.3s ease;
}
.library-back i {
  display: inline-flex;
  position: relative;
  overflow: hidden;
  font-size: 3.2rem;
  color: var(--brand-orange);
  transition: color 0.3s ease;
}
.library-back:hover {
  background-color: var(--brand-flame);
}
.library-back:hover i {
  color: var(--brand-white);
}
@media only screen and (min-width: 1200px) {
  .library-back {
    margin-right: 0.8rem;
  }
  .library-back i {
    font-size: 3.8rem;
  }
}

.library-title {
  font-weight: var(--fw-black);
  font-family: var(--_font-accent);
}

.library-page .mxd-projects-list__border {
  display: none;
}
.library-page .mxd-projects-list__title p {
  font-weight: var(--fw-regular);
}
.library-page .mxd-section-inner-headline {
  padding-top: 8rem;
}
@media only screen and (min-width: 768px) {
  .library-page .mxd-section-inner-headline {
    padding-top: 10rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-section-inner-headline {
    padding-top: 12rem;
  }
}
@media (max-width: 767px) {
  .library-page .mxd-section-inner-headline.padding-headline-pre-stack {
    padding-bottom: 0.2rem;
  }
}
@media (max-width: 767px) {
  .library-page .library-tabs {
    display: none;
  }
}

.library-filter-trigger {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  border: 1px solid var(--st-bright);
  outline: 0;
  background-color: transparent;
  color: var(--t-bright);
  cursor: pointer;
  transition: all var(--_animspeed-medium) ease;
}
.library-filter-trigger i {
  font-size: 2.2rem;
  color: var(--t-bright);
  transition: color var(--_animspeed-medium) ease;
}
.no-touch .library-filter-trigger:hover {
  background-color: var(--t-bright);
  color: var(--base);
  border-color: var(--t-bright);
}
.no-touch .library-filter-trigger:hover i {
  color: var(--base);
}

.library-search {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  white-space: nowrap;
}
.library-search.is-expanded {
  flex: 1 0 auto;
}
.library-search.is-expanded .library-search__toggle {
  opacity: 0;
  visibility: hidden;
  width: 0;
  padding: 0;
  margin: 0;
  border-width: 0;
  pointer-events: none;
  transform: scale(0.96);
}
.library-search.is-expanded .library-search__input {
  width: var(--ls-target-w, 44rem);
  opacity: 1;
  padding: 0 3.6rem 0 4.2rem;
}
.library-search.is-expanded .library-search__dropdown {
  pointer-events: auto;
}
.library-search.is-expanded .library-search__frame {
  width: var(--ls-target-w, 44rem);
  border-width: 2px;
  border-radius: 2.8rem;
}

.library-search__frame {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 4.6rem;
  border: 0 solid var(--st-bright);
  border-radius: 2.2rem;
  background: transparent;
  transition: width var(--_animspeed-slow) var(--_animbezier), border-radius var(--_animspeed-medium) var(--_animbezier), border-width var(--_animspeed-medium) var(--_animbezier);
  z-index: 0;
  pointer-events: none;
}
@media only screen and (min-width: 768px) {
  .library-search__frame {
    height: 5.6rem;
    border-radius: 2.8rem;
  }
}

.library-search__toggle {
  flex: 0 0 auto;
}
@media (max-width: 767px) {
  .library-search__toggle {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
  }
}

@media (max-width: 767px) {
  .library-search.is-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 120;
    align-items: flex-start;
    justify-content: center;
    padding: 2rem 1.5rem;
    gap: 1rem;
  }
  .library-search.is-modal .library-search__toggle {
    display: none;
  }
  .library-search.is-modal .library-search__frame {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    border-width: 0;
    border-radius: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 0;
    pointer-events: auto;
  }
  .library-search.is-modal .library-search__field {
    width: 100%;
    pointer-events: auto;
  }
  .library-search.is-modal .library-search__input {
    width: 100%;
    opacity: 1;
    padding: 0 3.6rem 0 4.2rem;
    height: 4.6rem;
    border-radius: 2.2rem;
    background: var(--base);
    box-shadow: 0 10px 24px rgba(var(--base-rgb), 0.25);
    z-index: 1;
  }
  .library-search.is-modal .library-search__dropdown {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    min-width: 0;
    width: 100%;
    margin-top: 0.8rem;
    pointer-events: auto;
  }
}
.library-search__field {
  position: relative;
  flex: 0 1 auto;
}
.library-search:not(.is-expanded) .library-search__field {
  pointer-events: none;
}

.library-search:not(.is-expanded) .library-search__glyph {
  display: none;
}

.library-search__glyph {
  position: absolute;
  left: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 2rem;
  color: var(--t-medium);
  z-index: 1;
}

.library-search__input {
  display: inline-block;
  width: 100%;
  width: 0;
  opacity: 0;
  border: 0;
  background: transparent;
  color: var(--t-bright);
  font: normal var(--fw-medium) 2.2rem/1 var(--_font-accent);
  height: 4.6rem;
  border-radius: 2.2rem;
  transition: width var(--_animspeed-slow) var(--_animbezier), opacity var(--_animspeed-medium) var(--_animbezier), padding var(--_animspeed-medium) var(--_animbezier);
  padding: 0 0;
  outline: none;
  z-index: 1;
}
.library-search__input::placeholder {
  color: var(--t-muted);
}
@media only screen and (min-width: 768px) {
  .library-search__input {
    height: 5.6rem;
    border-radius: 2.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-search__input {
    height: 5rem;
  }
}

@media (max-width: 767px) {
  .library-search.is-expanded .library-search__input {
    width: var(--ls-target-w, 24rem);
  }
  .library-search.is-expanded .library-search__frame {
    width: var(--ls-target-w, 24rem);
  }
}
.library-search__dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  right: auto;
  min-width: 36rem;
  margin-top: 0.8rem;
  background: var(--base);
  border: 1px solid var(--st-muted);
  border-radius: var(--_radius-xl);
  box-shadow: 0 10px 24px rgba(var(--base-rgb), 0.2);
  display: none;
  padding: 0.6rem;
  z-index: 50;
  pointer-events: none;
}

.library-search__option {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.8rem 1rem;
  border-radius: var(--_radius-m);
  cursor: pointer;
}
.no-touch .library-search__option:hover {
  background: var(--base-tint);
}
.library-search__option.is-active {
  background: var(--base-tint);
}

.library-search__icon {
  display: inline-flex;
  width: 2.2rem;
  height: 2.2rem;
}
.library-search__icon i {
  font-size: 2.2rem;
  color: var(--brand-orange);
}

.library-search__text {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}

.library-search__title {
  font: normal var(--fw-medium) 1.6rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}

.library-search__meta {
  font: normal var(--fw-regular) 1.4rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}

.illustrations-browser {
  position: relative;
  margin-top: 0;
  --ib-offset: 0;
}
.illustrations-browser .mxd-grid-item {
  padding-left: 0;
  padding-right: 0;
  margin-top: 0;
}
.illustrations-browser .col-xl-10.mxd-grid-item.no-margin {
  display: flex;
  align-items: center;
}
.illustrations-browser .ib-categories {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1.6rem;
  max-height: 47rem;
  overflow-y: auto;
  margin-left: var(--ib-offset);
  justify-items: center;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.illustrations-browser .ib-categories::-webkit-scrollbar {
  display: none;
}
.illustrations-browser .ib-categories {
  scroll-padding-top: 2.4rem;
  scroll-padding-bottom: 2.4rem;
  overscroll-behavior-y: contain;
}
@media (max-width: 767px) {
  .illustrations-browser .ib-categories {
    display: flex;
    flex-direction: row;
    gap: 1.2rem;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
    padding-right: 0;
    margin-left: 0;
    justify-content: flex-start;
    align-items: stretch;
    scroll-padding-top: 0;
    scroll-padding-bottom: 0;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .illustrations-browser .ib-categories::-webkit-scrollbar {
    display: none;
  }
  .illustrations-browser .ib-categories-wrap::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 3.6rem;
    height: auto;
    pointer-events: none;
    background: linear-gradient(to left, rgba(var(--base-rgb), 0) 0%, rgba(var(--base-rgb), 0.85) 100%);
  }
  .illustrations-browser .ib-categories__nav {
    display: none;
  }
  .illustrations-browser .ib-categories-wrap {
    padding-left: 4.2rem;
    padding-right: 4.2rem;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .illustrations-browser .ib-category {
    flex: 0 0 auto;
    width: auto;
    align-items: center;
  }
}
.illustrations-browser .ib-categories-wrap {
  position: relative;
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  padding-left: 2rem;
  padding-right: 2rem;
  margin: 2rem 0;
}
.illustrations-browser .ib-categories-wrap::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2rem;
  height: 3.2rem;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(var(--base-rgb), 0) 0%, rgba(var(--base-rgb), 0.85) 100%);
}
.illustrations-browser .ib-categories__nav {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  transform: translateX(0);
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  border: 1px solid var(--st-bright);
  background: var(--base-opp);
  color: var(--t-opp-bright);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: opacity var(--_animspeed-medium) var(--_animbezier);
}
.illustrations-browser .ib-categories__nav i {
  font-size: 1.8rem;
}
.illustrations-browser .ib-categories__nav--up {
  top: 0;
}
.illustrations-browser .ib-categories__nav--down {
  bottom: 0;
}
.illustrations-browser .ib-categories__nav:disabled {
  display: none;
}
.illustrations-browser .ib-category {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: auto;
  padding: 0;
  margin: 0;
  border: none;
  background: transparent;
  color: var(--t-medium);
  text-align: center;
  cursor: pointer;
  transition: color var(--_animspeed-medium) var(--_animbezier);
}
.illustrations-browser .ib-category.is-active {
  color: var(--t-bright);
}
.illustrations-browser .ib-category .ib-category__thumb {
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.illustrations-browser .ib-category .ib-category__name {
  font: normal var(--fw-regular) 1.4rem/1.3 var(--_font-accent);
  margin-top: 0.6rem;
  display: block;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}
.illustrations-browser .ib-gallery {
  position: relative;
  width: 100%;
  margin-top: 3rem;
  --ib-gallery-h: 520px;
  height: var(--ib-gallery-h);
  padding-left: 1rem;
  padding-right: 1rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .illustrations-browser .ib-gallery {
    --ib-gallery-h: 560px;
    padding-right: 0.4rem;
    margin-right: -1.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .illustrations-browser .ib-gallery {
    --ib-gallery-h: 620px;
    padding-right: 0;
    margin-right: -3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .illustrations-browser .ib-gallery {
    --ib-gallery-h: 700px;
    margin-right: -4.5rem;
  }
}
.illustrations-browser .ib-gallery .ib-gallery__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 88vw;
  column-gap: 2.4rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 0.6rem;
  height: 100%;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.illustrations-browser .ib-gallery .ib-gallery__track::-webkit-scrollbar {
  display: none;
}
@media only screen and (min-width: 768px) {
  .illustrations-browser .ib-gallery .ib-gallery__track {
    grid-auto-columns: 480px;
  }
}
@media only screen and (min-width: 1200px) {
  .illustrations-browser .ib-gallery .ib-gallery__track {
    grid-auto-columns: 520px;
  }
}
@media only screen and (min-width: 1600px) {
  .illustrations-browser .ib-gallery .ib-gallery__track {
    grid-auto-columns: 560px;
  }
}
.illustrations-browser .ib-gallery .ib-gallery__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  border: 1px solid var(--brand-orange);
  background: var(--brand-orange);
  color: var(--base);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: opacity var(--_animspeed-medium) var(--_animbezier);
}
.illustrations-browser .ib-gallery .ib-gallery__nav i {
  font-size: 2rem;
}
.illustrations-browser .ib-gallery .ib-gallery__nav--prev {
  left: 0;
}
.illustrations-browser .ib-gallery .ib-gallery__nav--next {
  right: 0;
}
.illustrations-browser .ib-gallery .ib-gallery__nav:disabled {
  display: none;
}
@media (max-width: 767px) {
  .illustrations-browser .ib-gallery__nav {
    top: 50%;
  }
  .illustrations-browser .ib-gallery {
    padding-right: 0;
    margin-right: 0;
  }
}
.illustrations-browser .ib-card {
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  height: 85%;
  justify-content: space-between;
  background: transparent;
  color: var(--t-bright);
  border-radius: 2rem;
  padding: 1rem;
  transition: background var(--_animspeed-medium) var(--_animbezier), color var(--_animspeed-medium) var(--_animbezier);
}
.illustrations-browser .ib-card .ib-card__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 1.6rem;
  overflow: hidden;
  flex: 1 1 auto;
}
.illustrations-browser .ib-card .ib-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.illustrations-browser .ib-card .ib-card__media iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
.illustrations-browser .ib-card .ib-card__title {
  font: normal var(--fw-semibold) 2.7rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin: 0;
}
.illustrations-browser .ib-card .ib-card__artists {
  font: normal var(--fw-regular) 1.4rem/1.4 var(--_font-accent);
  color: var(--t-medium);
  margin: 0;
}
.illustrations-browser .ib-card .ib-card__views {
  font: normal var(--fw-regular) 1.2rem/1 var(--_font-accent);
  color: var(--t-medium);
}
.no-touch .illustrations-browser .ib-card:hover {
  background: var(--base-opp);
}
.no-touch .illustrations-browser .ib-card:hover .ib-card__title,
.no-touch .illustrations-browser .ib-card:hover .ib-card__artists,
.no-touch .illustrations-browser .ib-card:hover .ib-card__views {
  color: var(--t-opp-bright);
}

.animations-browser {
  position: relative;
  margin-top: 0;
  --ib-offset: 0;
}
.animations-browser .mxd-grid-item {
  padding-left: 0;
  padding-right: 0;
  margin-top: 0;
}
.animations-browser .col-xl-10.mxd-grid-item.no-margin {
  display: flex;
  align-items: center;
}
.animations-browser .ib-categories {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1.6rem;
  max-height: 47rem;
  overflow-y: auto;
  margin-left: var(--ib-offset);
  justify-items: center;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.animations-browser .ib-categories::-webkit-scrollbar {
  display: none;
}
.animations-browser .ib-categories {
  scroll-padding-top: 2.4rem;
  scroll-padding-bottom: 2.4rem;
  overscroll-behavior-y: contain;
}
@media (max-width: 767px) {
  .animations-browser .ib-categories {
    display: flex;
    flex-direction: row;
    gap: 1.2rem;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
    padding-right: 0;
    margin-left: 0;
    justify-content: flex-start;
    align-items: stretch;
    scroll-padding-top: 0;
    scroll-padding-bottom: 0;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .animations-browser .ib-categories::-webkit-scrollbar {
    display: none;
  }
  .animations-browser .ib-categories-wrap::after {
    display: none;
  }
  .animations-browser .ib-categories__nav {
    display: none;
  }
  .animations-browser .ib-category {
    flex: 0 0 auto;
    width: auto;
    align-items: center;
  }
}
.animations-browser .ib-categories-wrap {
  position: relative;
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  padding-left: 2rem;
  padding-right: 2rem;
  margin: 2rem 0;
}
.animations-browser .ib-categories-wrap::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2rem;
  height: 3.2rem;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(var(--base-rgb), 0) 0%, rgba(var(--base-rgb), 0.85) 100%);
}
.animations-browser .ib-categories__nav {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  transform: translateX(0);
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  border: 1px solid var(--st-bright);
  background: var(--base-opp);
  color: var(--t-opp-bright);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: opacity var(--_animspeed-medium) var(--_animbezier);
}
.animations-browser .ib-categories__nav i {
  font-size: 1.8rem;
}
.animations-browser .ib-categories__nav--up {
  top: 0;
}
.animations-browser .ib-categories__nav--down {
  bottom: 0;
}
.animations-browser .ib-categories__nav:disabled {
  display: none;
}
.animations-browser .ib-category {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: auto;
  padding: 0;
  margin: 0;
  border: none;
  background: transparent;
  color: var(--t-medium);
  text-align: center;
  cursor: pointer;
  transition: color var(--_animspeed-medium) var(--_animbezier);
}
.animations-browser .ib-category.is-active {
  color: var(--t-bright);
}
.animations-browser .ib-category .ib-category__thumb {
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.animations-browser .ib-category .ib-category__name {
  font: normal var(--fw-regular) 1.4rem/1.3 var(--_font-accent);
  margin-top: 0.6rem;
  display: block;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}
.animations-browser .ib-gallery {
  position: relative;
  width: 100%;
  margin-top: 3rem;
  --ib-gallery-h: 520px;
  height: var(--ib-gallery-h);
  padding-left: 1rem;
  padding-right: 1rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .animations-browser .ib-gallery {
    --ib-gallery-h: 560px;
    padding-right: 0.4rem;
    margin-right: -1.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .animations-browser .ib-gallery {
    --ib-gallery-h: 620px;
    padding-right: 0;
    margin-right: -3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .animations-browser .ib-gallery {
    --ib-gallery-h: 700px;
    margin-right: -4.5rem;
  }
}
.animations-browser .ib-gallery .ib-gallery__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 88vw;
  column-gap: 2.4rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 0.6rem;
  height: 100%;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.animations-browser .ib-gallery .ib-gallery__track::-webkit-scrollbar {
  display: none;
}
@media only screen and (min-width: 768px) {
  .animations-browser .ib-gallery .ib-gallery__track {
    grid-auto-columns: 480px;
  }
}
@media only screen and (min-width: 1200px) {
  .animations-browser .ib-gallery .ib-gallery__track {
    grid-auto-columns: 520px;
  }
}
@media only screen and (min-width: 1600px) {
  .animations-browser .ib-gallery .ib-gallery__track {
    grid-auto-columns: 560px;
  }
}
.animations-browser .ib-gallery .ib-gallery__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  border: 1px solid var(--brand-orange);
  background: var(--brand-orange);
  color: var(--base);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: opacity var(--_animspeed-medium) var(--_animbezier);
}
.animations-browser .ib-gallery .ib-gallery__nav i {
  font-size: 2rem;
}
.animations-browser .ib-gallery .ib-gallery__nav--prev {
  left: 0;
}
.animations-browser .ib-gallery .ib-gallery__nav--next {
  right: 0;
}
.animations-browser .ib-gallery .ib-gallery__nav:disabled {
  display: none;
}
.animations-browser .ib-card {
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  height: 85%;
  justify-content: space-between;
  background: transparent;
  color: var(--t-bright);
  border-radius: 2rem;
  padding: 1rem;
  transition: background var(--_animspeed-medium) var(--_animbezier), color var(--_animspeed-medium) var(--_animbezier);
}
.animations-browser .ib-card .ib-card__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 1.6rem;
  overflow: hidden;
  flex: 1 1 auto;
}
.animations-browser .ib-card .ib-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.animations-browser .ib-card .ib-card__media iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
.animations-browser .ib-card .ib-card__title {
  font: normal var(--fw-semibold) 2.7rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin: 0;
}
.animations-browser .ib-card .ib-card__artists {
  font: normal var(--fw-regular) 1.4rem/1.4 var(--_font-accent);
  color: var(--t-medium);
  margin: 0;
}
.animations-browser .ib-card .ib-card__views {
  font: normal var(--fw-regular) 1.2rem/1 var(--_font-accent);
  color: var(--t-medium);
}
.no-touch .animations-browser .ib-card:hover {
  background: var(--base-opp);
}
.no-touch .animations-browser .ib-card:hover .ib-card__title,
.no-touch .animations-browser .ib-card:hover .ib-card__artists,
.no-touch .animations-browser .ib-card:hover .ib-card__views {
  color: var(--t-opp-bright);
}

.mxd-preview-hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  opacity: 0;
  transition: fbackdrop-filter var(--_animspeed-medium), opacity var(--_animspeed-medium) var(--_animbezier);
}

.mxd-preview-hover__icon {
  display: block;
  width: 10rem;
}
.mxd-preview-hover__icon.icon-small {
  width: 8rem;
}
.mxd-preview-hover__icon img {
  width: 100%;
  height: auto;
}

.mxd-preview-hover__text {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  color: var(--pt-t-light-bright);
}

.mxd-counter {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.mxd-counter.small {
  gap: 2rem;
}
.mxd-counter.horizontal {
  flex-direction: row;
  align-items: center;
  gap: 1.4rem;
}
@media only screen and (min-width: 768px) {
  .mxd-counter.align-end {
    align-items: flex-end;
    text-align: right;
  }
}

.mxd-counter__number {
  display: block;
}

.mxd-counter__descr {
  max-width: 250px;
}

.mxd-btngroup {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.mxd-btngroup.centered {
  justify-content: center;
}
@media only screen and (min-width: 576px) {
  .mxd-btngroup {
    flex-direction: row;
    gap: 2rem;
  }
}

.mxd-divider {
  position: relative;
  border-radius: var(--_radius-l);
  overflow: hidden;
  height: 460px;
}
@media only screen and (min-width: 768px) {
  .mxd-divider {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-divider {
    height: 760px;
  }
  .mxd-divider.divider-hero-01 {
    padding-top: 14rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-divider {
    height: 930px;
  }
}

.mxd-divider__image {
  position: relative;
  width: 100%;
  height: 460px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
}
.mxd-divider__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-divider__image {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-divider__image {
    height: 760px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-divider__image {
    height: 930px;
  }
}

.mxd-divider__video {
  position: relative;
  width: 100%;
  height: 460px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
}
.mxd-divider__video video {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  background-position: center center;
  background-size: contain;
  object-fit: cover;
}
.mxd-divider__video img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-divider__video {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-divider__video {
    height: 760px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-divider__video {
    height: 930px;
  }
}

.mxd-divider__trigger {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
}

.mxd-project-item {
  display: block;
}

.mxd-project-item__media {
  position: relative;
  display: block;
  margin-bottom: 1.4rem;
  height: 460px;
}
@media only screen and (min-width: 768px) {
  .mxd-project-item__media {
    height: 600px;
    margin-bottom: 2.3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-project-item__media {
    height: 760px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project-item__media {
    height: 930px;
  }
}

.mxd-project-item__preview {
  position: relative;
  width: 100%;
  height: 460px;
  border-radius: var(--_radius-l);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-project-item__preview {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-project-item__preview {
    height: 760px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project-item__preview {
    height: 930px;
  }
}

.mxd-project-item__tags {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2.6rem 3rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .mxd-project-item__tags {
    align-items: flex-start;
    padding: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project-item__tags {
    gap: 1.4rem;
  }
}

.mxd-project-item__promo {
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-project-item__promo {
    padding: 0 4rem;
  }
}

.mxd-project-item__name a {
  display: inline;
  font: normal var(--fw-regular) 2.2rem/1.4 var(--_font-accent);
  color: var(--t-medium);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .mxd-project-item__name a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}
.mxd-project-item__name a span {
  font-weight: var(--fw-medium);
  color: var(--t-bright);
}
.mxd-project-item__name.small a {
  font-size: 2.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-project-item__name a {
    font-size: 3rem;
  }
  .mxd-project-item__name.small a {
    font-size: 2.2rem;
  }
}

.mxd-links-lines {
  position: relative;
}

@media (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-links-lines > .mxd-links-lines__item {
    transition: opacity 0.3s ease;
  }
  .mxd-links-lines:hover > .mxd-links-lines__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-links-lines__item {
  position: relative;
  display: block;
  margin-top: -2px;
}
.mxd-links-lines__item:first-of-type {
  margin-top: 0;
}

.mxd-links-lines__divider {
  position: relative;
  width: 100%;
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-links-lines__link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 3rem 0;
  overflow: hidden;
}
.no-touch .mxd-links-lines__link:hover .mxd-links-lines__title {
  transform: translateX(1rem);
}
.no-touch .mxd-links-lines__link:hover .mxd-links-lines__icon i::before {
  animation: 0.6s var(--_animbezier) 0s 1 both slideRightUp;
}

.mxd-links-lines__title {
  position: relative;
  color: var(--t-bright);
  transform: translateX(0);
  transition: transform var(--_animspeed-medium), color var(--_animspeed-medium) var(--_animbezier);
}

.mxd-links-lines__icon {
  position: relative;
  display: flex;
  font-size: 3rem;
  transform: translateX(0) rotate(0deg);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.mxd-links-lines__icon i {
  display: inline-flex;
  position: relative;
  overflow: hidden;
  color: var(--t-bright);
  transition: color var(--_animspeed-medium) var(--_animbezier);
}

.mxd-check-list {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.mxd-check-list li {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}

.mxd-floating-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}
.mxd-floating-img.floating-bg {
  overflow: hidden;
  z-index: -1;
}

.mxd-floating-img__item {
  position: absolute;
  width: calc(100% - 3rem);
  height: auto;
  bottom: 20%;
  right: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-floating-img__item {
    bottom: 4rem;
    right: 6rem;
    width: 600px;
    height: auto;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-floating-img__item {
    width: 46%;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-floating-img__item {
    right: 9rem;
    width: 40%;
  }
}

/* ------------------------------------------------*/
/* Elements - Components End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Elements - Common Classes Start */
/* ------------------------------------------------*/
.bg-accent {
  background-color: var(--accent);
}

.bg-additional {
  background-color: var(--additional);
}

.bg-base {
  background-color: var(--base);
}

.bg-base-tint {
  background-color: var(--base-tint);
}

.bg-base-shade {
  background-color: var(--base-shade);
}

.bg-base-opp {
  background-color: var(--base-opp);
}

.st-accent {
  border: 1px solid var(--accent);
}

.st-additional {
  border: 1px solid var(--additional);
}

.st-base {
  border: 1px solid var(--base);
}

.st-base-tint {
  border: 1px solid var(--base-tint);
}

.st-base-shade {
  border: 1px solid var(--base-shade);
}

.st-base-opp {
  border: 1px solid var(--base-opp);
}

.t-accent {
  color: var(--accent);
}

.t-additional {
  color: var(--additional);
}

.radius-s {
  border-radius: var(--_radius-s);
}

.radius-m {
  border-radius: var(--_radius-m);
}

.radius-l {
  border-radius: var(--_radius-l);
}

.radius-xl {
  border-radius: var(--_radius-xl);
}

.fullheight-l {
  height: auto;
}
@media only screen and (min-width: 992px) {
  .fullheight-l {
    height: 100%;
  }
}

.fullheight-xl {
  height: auto;
}
@media only screen and (min-width: 1200px) {
  .fullheight-xl {
    height: 100%;
  }
}

.anim-zoom-in-container,
.anim-zoom-out-container {
  transform-origin: center;
}

.padding-4 {
  padding: 2.6rem 3rem;
}
@media only screen and (min-width: 768px) {
  .padding-4 {
    padding: 3.6rem 4rem;
  }
}

.padding-5x4 {
  padding: 2.6rem 3rem;
}
@media only screen and (min-width: 768px) {
  .padding-5x4 {
    padding: 4rem 5rem;
  }
}

@media only screen and (min-width: 1200px) {
  .card-desktop-4 {
    width: calc(40% - 1.5rem);
  }
}

@media only screen and (min-width: 1200px) {
  .card-desktop-6 {
    width: calc(60% - 1.5rem);
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.text-high-contrast {
  opacity: 1 !important;
  color: var(--text-dark) !important;
}

.text-high-contrast-light {
  opacity: 1 !important;
  color: #ffffff !important;
}

.cms-text-muted {
  color: var(--text-light);
  opacity: 1 !important;
}

/* ------------------------------------------------*/
/* Elements - Common Classes End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Header Start */
/* ------------------------------------------------*/
.mxd-header {
  position: absolute;
  top: 0;
  left: 3rem;
  right: 3rem;
  display: flex;
  justify-content: space-between;
  width: auto;
  padding-top: 3rem;
  z-index: 101;
  transform: scaleY(1);
  opacity: 1;
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.mxd-hero-video-container .mxd-header {
  position: relative;
  left: 0;
  width: calc(100% - 6rem);
  margin: 0 auto;
  padding-top: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-video-container .mxd-header {
    width: calc(100% - 12rem);
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-video-container .mxd-header {
    width: calc(100% - 18rem);
  }
}
.mxd-header.is-hidden {
  transform: scaleY(1.2);
  opacity: 0;
}
.mxd-header.menu-is-visible {
  z-index: 10;
}
@media only screen and (min-width: 768px) {
  .mxd-header {
    left: 6rem;
    right: 6rem;
    width: auto;
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-header {
    left: 9rem;
    right: 9rem;
    width: auto;
  }
}

.mxd-header__logo {
  position: relative;
  display: flex;
}

.mxd-header__controls {
  position: relative;
  display: flex;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .mxd-header__controls {
    gap: 2rem;
  }
}

@media (max-width: 767px) {
  .header-mobile-hide {
    display: none !important;
  }
  .mxd-header {
    position: relative;
    left: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2.8rem 2.8rem 0;
    margin: 0 auto;
    max-width: 100%;
  }
  .mxd-hero-video-container .mxd-header {
    width: 100%;
    margin: 0;
    padding-top: 2.8rem;
  }
  .mxd-header__controls {
    justify-content: flex-end;
    gap: 0.5rem;
  }
  .mxd-header__controls > *:last-child {
    margin-right: 0;
  }
  .mxd-header__controls .btn-line-medium {
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
  }
  .mxd-logo__image {
    width: 11rem;
    height: auto;
  }
}
/* ------------------------------------------------*/
/* Block - Header End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Menu Start */
/* ------------------------------------------------*/
.mxd-nav__wrap {
  position: fixed;
  top: auto;
  right: 0;
  bottom: auto;
  left: 0;
  z-index: 200;
  pointer-events: none;
}
.mxd-nav__wrap > * {
  pointer-events: auto;
}
@media (max-width: 767px) {
  .mxd-nav__wrap {
    top: 0;
    bottom: auto;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    padding-top: 30px;
    padding-right: 0.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .mxd-nav__wrap {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding-bottom: 2rem;
  }
}

.mxd-nav__wrap.menu-pill .main-menu__item {
  opacity: 0;
  transform: translateY(40%);
  transition: opacity var(--_animspeed-medium) var(--_animbezier), transform var(--_animspeed-medium) var(--_animbezier);
  transition-delay: 0s;
  will-change: transform, opacity;
}
.mxd-nav__wrap.menu-pill .menu-fade-in,
.mxd-nav__wrap.menu-pill .menu-promo__video {
  opacity: 0;
  transform: translateY(20%);
  transition: opacity var(--_animspeed-medium) var(--_animbezier), transform var(--_animspeed-medium) var(--_animbezier);
  transition-delay: 0s;
  will-change: transform, opacity;
}
.mxd-nav__wrap.menu-pill.menu-pill--open .main-menu__item,
.mxd-nav__wrap.menu-pill.menu-pill--open .menu-fade-in,
.mxd-nav__wrap.menu-pill.menu-pill--open .menu-promo__video {
  opacity: 1;
  transform: translateY(0);
}
.mxd-nav__wrap.menu-pill.menu-pill--closing .main-menu__item {
  opacity: 0;
  transform: translateY(40%);
}
.mxd-nav__wrap.menu-pill.menu-pill--closing .menu-fade-in,
.mxd-nav__wrap.menu-pill.menu-pill--closing .menu-promo__video {
  opacity: 0;
  transform: translateY(20%);
}

.mxd-nav__contain {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 4.6rem;
  margin-top: 3rem;
  padding: 0 3rem;
  z-index: 2;
  pointer-events: none;
}
.mxd-nav__contain > * {
  pointer-events: auto;
}
@media (max-width: 767px) {
  .mxd-nav__contain {
    margin-top: 0;
    padding: 0 1.5rem;
    min-height: auto;
  }
}
@media only screen and (min-width: 768px) {
  .mxd-nav__contain {
    min-height: 5.6rem;
    margin-top: 0;
    padding: 0;
    justify-content: center;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-nav__contain {
    padding: 0;
  }
}

.nav_link_wrap {
  position: relative;
  display: inline-flex;
}

.nav_link_svg {
  display: block;
  width: 5rem;
}

.mxd-nav__hamburger {
  position: relative;
  display: flex;
  flex-direction: row;
  gap: 0.6rem;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  width: max-content;
  height: 3.6rem;
  padding: 0 1.2rem;
}
@media (max-width: 767px) {
  .mxd-nav__hamburger {
    width: max-content;
    height: 3rem;
    gap: 0.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .mxd-nav__hamburger {
    width: max-content;
    height: 3.8rem;
    position: fixed;
    bottom: 2rem;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 100;
  }
}

.hamburger__base {
  position: absolute;
  inset: 0%;
  border-radius: var(--_radius-l);
  background-color: var(--base);
  z-index: 1;
  box-shadow: 0 15px 45px rgba(0, 0, 0, 0.15), 0 8px 16px rgba(0, 0, 0, 0.08);
}
.hamburger__base.is-expanded {
  pointer-events: none;
}

.nav_hamburger_bg {
  position: absolute;
  inset: 0%;
  border-radius: 50%;
  background-color: black;
  z-index: 2;
}

.hamburger__line {
  position: relative;
  display: block;
  width: 1.6rem;
  height: 2px;
  background-color: var(--t-bright);
  border-radius: 2px;
  z-index: 2;
  transform-origin: center center;
  will-change: transform, opacity;
}

.mxd-menu__wrapper {
  position: absolute;
  inset: 0% 0% auto;
  align-items: flex-start;
  justify-content: flex-end;
  width: 100%;
  height: 100vh;
  z-index: 1;
  padding: 1.5rem;
  padding-bottom: calc(1.5rem + env(safe-area-inset-bottom));
  display: none;
  pointer-events: auto;
}
@media only screen and (min-width: 768px) {
  .mxd-menu__wrapper {
    padding: 2rem 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-menu__wrapper {
    padding: 2rem 7rem;
  }
}

.mxd-menu__base {
  position: absolute;
  inset: 0%;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.mxd-menu__contain {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.mxd-menu__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding-top: 7.6rem;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  scrollbar-width: none;
}
.mxd-menu__inner::-webkit-scrollbar {
  display: none;
  -webkit-appearance: none !important;
  width: 0 !important;
  height: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-menu__inner::-webkit-scrollbar {
    display: none;
    width: 0 !important;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-menu__inner {
    flex-direction: row;
    overflow: hidden;
    padding-top: 0;
    padding-bottom: 9.7rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-menu__inner {
    padding-bottom: 13.7rem;
  }
}

.mxd-menu__left {
  position: relative;
  width: 100%;
  height: auto;
  padding: 0 3rem;
  z-index: 2;
}
@media only screen and (min-width: 992px) {
  .mxd-menu__left {
    width: 50%;
    height: 100%;
    padding: 4rem 4rem 12rem 4rem;
    overflow-y: scroll;
    overscroll-behavior-y: contain;
    scrollbar-width: none;
  }
  .mxd-menu__left::-webkit-scrollbar {
    display: none;
    -webkit-appearance: none !important;
    width: 0 !important;
    height: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-menu__left {
    padding-top: 6rem;
    padding: 6rem 7rem 16rem 7rem;
  }
}

.mxd-menu__inner.menu-scroll-hint::before, .mxd-menu__inner.menu-scroll-hint::after,
.mxd-menu__left.menu-scroll-hint::before,
.mxd-menu__left.menu-scroll-hint::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 5.2rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--_animspeed-medium) var(--_animbezier);
  z-index: 3;
}
.mxd-menu__inner.menu-scroll-hint::before,
.mxd-menu__left.menu-scroll-hint::before {
  top: 0;
  background: linear-gradient(to bottom, rgba(var(--base-rgb), 0.9), rgba(var(--base-rgb), 0));
}
.mxd-menu__inner.menu-scroll-hint::after,
.mxd-menu__left.menu-scroll-hint::after {
  bottom: 0;
  background: linear-gradient(to top, rgba(var(--base-rgb), 0.9), rgba(var(--base-rgb), 0));
}
.mxd-nav__wrap.menu-pill--open:not(.menu-pill--closing):not(.menu-pill--opening) .mxd-menu__inner.menu-scroll-hint.menu-scroll-top::before,
.mxd-nav__wrap.menu-pill--open:not(.menu-pill--closing):not(.menu-pill--opening) .mxd-menu__left.menu-scroll-hint.menu-scroll-top::before {
  opacity: 1;
}
.mxd-nav__wrap.menu-pill--open:not(.menu-pill--closing):not(.menu-pill--opening) .mxd-menu__inner.menu-scroll-hint.menu-scroll-bottom::after,
.mxd-nav__wrap.menu-pill--open:not(.menu-pill--closing):not(.menu-pill--opening) .mxd-menu__left.menu-scroll-hint.menu-scroll-bottom::after {
  opacity: 1;
}

.mxd-menu__right {
  position: relative;
  padding-top: 5.2rem;
  z-index: 2;
}
@media only screen and (min-width: 992px) {
  .mxd-menu__right {
    width: 50%;
    height: 100%;
    padding-top: 0;
  }
}

.mxd-menu__data {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: left;
  gap: 0.6rem;
  padding: 0 3rem 2.6rem 3rem;
  margin-top: 2.4rem;
  text-align: center;
}
@media (max-width: 767px) {
  .mxd-menu__data {
    text-align: left;
  }
}
.mxd-menu__data {
  z-index: 2;
}
.mxd-menu__data p {
  color: var(--t-medium);
}
.mxd-menu__data p a {
  color: var(--t-medium);
  text-decoration: none;
  background: linear-gradient(to right, var(--t-opp-muted), var(--t-opp-muted)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch .mxd-menu__data p a:hover {
  color: var(--t-opp-bright);
  background-size: 0 1px, 100% 1px;
}
@media only screen and (min-width: 992px) {
  .mxd-menu__data {
    position: absolute;
    bottom: 4rem;
    left: 0;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    padding: 0 4rem;
    margin-top: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-menu__data {
    bottom: 6rem;
    padding: 0 7rem;
  }
}

.mxd-menu__caption {
  margin-bottom: 4.4rem;
  font-weight: var(--fw-regular-opp);
  color: var(--t-medium);
}
@media only screen and (min-width: 992px) {
  .mxd-menu__caption {
    max-width: 380px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-menu__caption {
    max-width: 460px;
  }
}

.mxd-menu__link {
  position: relative;
  z-index: 2;
  color: GreenYellow;
  text-decoration: none;
  font-size: 4rem;
}

.main-menu {
  position: relative;
}

.main-menu__content {
  display: block;
}

.main-menu__accordion {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
@media only screen and (min-width: 768px) {
  .main-menu__accordion {
    margin-top: 2rem;
    margin-left: 1.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .main-menu__accordion {
    gap: 2rem;
    margin-top: 3rem;
    margin-left: 2rem;
  }
}

.main-menu__item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  color: var(--t-bright);
}
.main-menu__item a {
  display: inline-block;
}
.main-menu__item.open .main-menu__toggle svg {
  transform: rotate(135deg);
}

.main-menu__link {
  position: relative;
  display: inline-block;
  width: auto;
  height: 4.2rem;
  line-height: 4.2rem;
  font: normal var(--fw-medium-opp) 3.6rem var(--_font-accent);
  font-weight: var(--fw-black);
  color: var(--t-bright);
  white-space: nowrap;
}
.main-menu__link .btn-caption {
  position: relative;
  display: inline-block;
  height: 4.2rem;
  line-height: 4.2rem;
  white-space: nowrap;
}
@media only screen and (min-width: 992px) {
  .main-menu__link {
    font-size: 5.6rem;
    height: 6.5rem;
    line-height: 6.5rem;
  }
  .main-menu__link .btn-caption {
    height: 6.5rem;
    line-height: 6.5rem;
  }
}

.main-menu__arrow {
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  margin-left: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  width: 4.2rem;
}
.main-menu__arrow i {
  font-size: 4.2rem;
  color: var(--t-bright);
  overflow: hidden;
  display: inline-block;
  will-change: transform;
}
.main-menu__arrow i::before {
  display: inline-block;
  will-change: transform;
}
.no-touch .main-menu__link:hover .main-menu__arrow {
  opacity: 1;
  visibility: visible;
}
.no-touch .main-menu__link:hover .main-menu__arrow i {
  color: var(--brand-orange);
  -webkit-text-stroke: 2px var(--brand-orange);
}
.no-touch .main-menu__link:hover .main-menu__arrow i::before {
  animation: var(--_animspeed-slow) var(--_animbezier) 0s 1 both menuDrift;
}

.main-menu__toggle {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.main-menu__toggle img,
.main-menu__toggle svg {
  display: inline-flex;
  width: 1.9rem;
  height: 1.9rem;
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.main-menu__toggle svg {
  fill: currentColor;
}
.no-touch .main-menu__toggle:hover svg {
  fill: var(--additional);
}
@media only screen and (min-width: 992px) {
  .main-menu__toggle img,
  .main-menu__toggle svg {
    width: 2.3rem;
    height: 2.3rem;
  }
}

.submenu {
  position: relative;
  padding-top: 2rem;
  padding-left: 1.5rem;
  display: none;
}
@media only screen and (min-width: 768px) {
  .submenu {
    padding-left: 2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .submenu {
    padding-left: 3.5rem;
  }
}

.submenu__item {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-bottom: 1.2rem;
}
.submenu__item:last-of-type {
  margin-bottom: 0;
}
.submenu__item a {
  display: inline-flex;
  justify-content: flex-start;
  height: auto;
  font: normal var(--fw-regular-opp) 2rem/1.2 var(--_font-accent);
  font-weight: var(--fw-bold);
  color: var(--t-bright);
  padding-left: 0;
}
.no-touch .submenu__item a:hover {
  color: var(--t-opp-medium);
  transform: translateX(1rem);
}
.submenu__item.active a {
  color: color-mix(in srgb, var(--additional), var(--nl-black) 15%);
  font-weight: 600;
}
@media only screen and (min-width: 1400px) {
  .submenu__item a {
    font-size: 2.5rem;
  }
}

.menu-promo {
  position: relative;
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .menu-promo {
    padding: 0 4rem;
  }
}
@media only screen and (min-width: 992px) {
  .menu-promo {
    height: 100%;
    text-align: right;
  }
}
@media only screen and (min-width: 1600px) {
  .menu-promo {
    padding: 0 7rem;
  }
}

.menu-promo__content {
  display: flex;
  flex-direction: column;
  gap: 2.1rem;
}
@media only screen and (min-width: 992px) {
  .menu-promo__content {
    position: absolute;
    top: 7rem;
    right: 0;
    align-items: flex-end;
    gap: 3rem;
    width: 80%;
    padding: 0 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .menu-promo__content {
    padding: 0 7rem;
  }
}

.menu-promo__caption {
  font-weight: var(--fw-regular-opp);
  color: var(--t-opp-medium);
}
@media only screen and (min-width: 992px) {
  .menu-promo__caption {
    max-width: 380px;
  }
}
@media only screen and (min-width: 1600px) {
  .menu-promo__caption {
    max-width: 460px;
  }
}

.menu-promo__video {
  position: relative;
  overflow: hidden;
  width: clamp(280px, 42vw, 600px);
  aspect-ratio: 490/600;
  border-radius: var(--_radius-m);
}
@media only screen and (min-width: 992px) {
  .menu-promo__video {
    width: clamp(280px, 34vw, 600px);
    aspect-ratio: 490/600;
  }
}

.menu-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: var(--_radius-m);
}
@media only screen and (min-width: 992px) {
  .menu-video {
    border-radius: 1.8rem;
  }
}

.menu-promo__watermark {
  position: absolute;
  top: calc(100% + 0.8rem);
  right: 0;
  line-height: 1;
  pointer-events: none;
  color: transparent;
  -webkit-text-stroke: 2px var(--wm-stroke);
  opacity: 0;
  transition: opacity var(--_animspeed-medium) var(--_animbezier);
  transition-delay: 0s;
  font-family: var(--_font-accent);
  font-weight: var(--fw-black);
  font-size: clamp(6rem, 12vw, 16rem);
  text-transform: uppercase;
  z-index: 0;
  white-space: nowrap;
  transform-origin: right top;
  will-change: transform;
}
@media (max-width: 767px) {
  .menu-promo__watermark {
    display: none;
  }
}
.menu-promo__watermark span#menu-watermark {
  display: block;
}
@media only screen and (min-width: 992px) {
  .menu-promo__watermark {
    right: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .menu-promo__watermark {
    right: 7rem;
  }
}

.mxd-nav__wrap:has(.mxd-nav__hamburger.nav-open) .menu-promo__watermark {
  opacity: 0.3;
  transition-delay: 0.6s;
}

.menu-promo__watermark.is-marquee {
  overflow: hidden;
}
.menu-promo__watermark.is-marquee span#menu-watermark {
  display: inline-block;
  will-change: transform;
  animation: watermarkMarquee var(--wm-duration, 12s) linear infinite alternate;
}

@keyframes watermarkMarquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-1 * var(--wm-distance, 200px)));
  }
}
.hamburger__label {
  position: relative;
  z-index: 2;
  font: normal var(--fw-medium) 1.3rem var(--_font-accent);
  color: var(--t-bright);
  line-height: 1;
  user-select: none;
  opacity: 1;
  transform: translateY(0);
  transition: opacity 240ms var(--_animbezier), transform 240ms var(--_animbezier);
  display: inline-block;
  text-align: center;
  padding: 0;
}
.hamburger__label::before, .hamburger__label::after {
  content: none;
  display: none;
}

.hamburger__icon {
  position: relative;
  z-index: 2;
  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
  width: 1.8rem;
  height: 1.2rem;
  margin-right: 0.6rem;
  opacity: 1;
  transform: scale(1);
  transition: opacity 240ms var(--_animbezier), transform 240ms var(--_animbezier);
}

.hamburger__close {
  display: none;
}

.mxd-nav__hamburger.nav-open .hamburger__icon,
.mxd-nav__hamburger.nav-closing .hamburger__icon {
  opacity: 1;
}

/* ------------------------------------------------*/
/* Block - Menu End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - CTA Start */
/* ------------------------------------------------*/
.mxd-promo {
  position: relative;
}

.mxd-promo__inner {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--base-tint);
  padding-left: 3rem;
  padding-right: 3rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mxd-promo__inner {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-promo__inner {
    padding-left: 6rem;
    padding-right: 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-promo__inner {
    padding-left: 9rem;
    padding-right: 9rem;
  }
}

.mxd-promo__bg {
  position: absolute;
  top: -4rem;
  right: -10rem;
  width: 70%;
  height: calc(100% + 4rem);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: cover;
  background-image: var(--pk-placeholder-bg);
}
@media only screen and (min-width: 1200px) {
  .mxd-promo__bg {
    background-position: center;
    top: 0;
    right: 0;
    width: 50%;
  }
}

.mxd-promo__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin: 12.2rem 0 14rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-promo__content {
    margin: 14rem 0 16rem 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-promo__content {
    margin: 17.6rem 0 20rem 0;
  }
}

.mxd-promo__title {
  display: block;
  color: var(--t-bright);
}
.mxd-promo__title span {
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  .mxd-promo__title {
    width: 70%;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-promo__title {
    width: 60%;
  }
}

.mxd-promo__icon {
  padding-right: 1rem;
}
.mxd-promo__icon img {
  display: inline;
  width: auto;
  height: 3.4rem;
}
@media only screen and (min-width: 768px) {
  .mxd-promo__icon img {
    height: 5.4rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-promo__icon img {
    height: 7rem;
  }
}

.mxd-promo__caption {
  font: normal var(--fw-medium) 4.4rem/1.1 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-promo__caption {
    font-size: 8rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-promo__caption {
    font-size: 10rem;
  }
}

.mxd-promo__controls {
  display: block;
}

.mxd-promo__images {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mxd-promo__images {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    width: 46%;
    height: 100%;
  }
  .mxd-promo__images .promo-image {
    display: flex;
    flex-direction: column;
    position: absolute;
  }
  .mxd-promo__images .promo-image.bottom-layer {
    order: -1;
  }
  .mxd-promo__images .promo-image-1 {
    width: 330px;
    height: auto;
    right: 6rem;
    bottom: 6rem;
  }
  .mxd-promo__images .promo-image-2 {
    width: 120px;
    height: auto;
    left: 0;
    bottom: 12rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-promo__images .promo-image-2 {
    left: 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-promo__images .promo-image-1 {
    width: 396px;
    right: 9rem;
    bottom: 9rem;
  }
  .mxd-promo__images .promo-image-2 {
    width: 140px;
    left: 6rem;
    bottom: 18rem;
  }
}

/* ------------------------------------------------*/
/* Block - CTA End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Footer Start */
/* ------------------------------------------------*/
.mxd-footer {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding-bottom: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-footer {
    padding-bottom: 6rem;
  }
}

.mxd-footer__text-wrap {
  position: relative;
  width: 100%;
}

.mxd-footer__fullwidth-text {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: none;
  flex-wrap: nowrap;
  height: min-content;
  max-width: 1920px;
  padding: 0 3rem;
  color: var(--t-bright);
  z-index: -1;
  padding-top: 12.5rem;
  margin-bottom: 4rem;
}
.mxd-footer__fullwidth-text.personal {
  margin-bottom: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-footer__fullwidth-text {
    padding: 0 6rem;
    padding-top: 10.5rem;
    margin-bottom: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-footer__fullwidth-text.personal {
    margin-bottom: 5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-footer__fullwidth-text {
    padding: 0 9rem;
    padding-top: 11.1rem;
    margin-bottom: 7rem;
  }
}

.mxd-footer__svg-v2 {
  position: relative;
  display: block;
  width: 100%;
  max-width: 70%;
  margin: 0 auto;
  fill: currentColor;
  z-index: -1;
  opacity: 0.45;
}

.fullwidth-text__tl-trigger {
  position: absolute;
  top: 0;
  right: 0;
  width: 0.1rem;
  height: 0.1rem;
}

.mxd-footer__svg {
  position: relative;
  outline: none;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex-shrink: 0;
  will-change: transform;
  opacity: 1;
  transform: none;
}
.mxd-footer__svg foreignObject,
.mxd-footer__svg text {
  position: relative;
  display: flex;
}
.mxd-footer__svg text {
  width: 100%;
  height: 100%;
}

.mxd-footer__text {
  display: flex;
  justify-content: center;
  font-style: normal;
  font-weight: var(--fw-semibold);
  line-height: 1.1;
  font-family: var(--_font-accent);
  letter-spacing: -0.006rem;
  color: var(--t-bright);
  font-size: 1.2rem;
}

.mxd-footer__caption {
  display: inline-flex;
  justify-content: center;
  font-style: normal;
  font-weight: var(--fw-semibold);
  line-height: 1.1;
  font-family: var(--_font-accent);
  letter-spacing: -0.014rem;
  color: var(--t-bright);
  font-size: 1.2rem;
}
.mxd-footer__caption .word {
  display: flex !important;
  flex-wrap: nowrap !important;
}

.mxd-footer__footer-blocks {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  width: 100%;
  max-width: 1920px;
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-footer__footer-blocks {
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-footer__footer-blocks {
    flex-direction: row;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-footer__footer-blocks {
    padding: 0 9rem;
  }
}

.footer-blocks__column {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 3rem;
}
@media only screen and (min-width: 1200px) {
  .footer-blocks__column {
    height: 650px;
  }
}
@media only screen and (min-width: 1600px) {
  .footer-blocks__column {
    height: 650px;
  }
}

.footer-blocks__card {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  width: 100%;
  padding: 3rem;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
}
.footer-blocks__card.fullheight-card {
  height: 100%;
  justify-content: space-between;
}
.footer-blocks__card.fill-card {
  flex: 1;
  justify-content: space-between;
}
@media only screen and (min-width: 768px) {
  .footer-blocks__card {
    padding: 5rem;
  }
}
.footer-blocks__block {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.footer-blocks__nav {
  position: relative;
}

.footer-nav {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.footer-nav__item {
  display: inline-flex;
  align-items: center;
  gap: 1.2rem;
}

.footer-nav__link {
  display: inline-flex;
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
.footer-nav__link .btn-caption {
  height: 3.6rem;
  line-height: 1.2;
}
@media only screen and (min-width: 768px) {
  .footer-nav__link {
    font-size: 4.4rem;
  }
  .footer-nav__link .btn-caption {
    height: 5.3rem;
  }
}

.footer-nav__counter {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  background-color: var(--accent);
  color: var(--t-opp-bright);
  height: 3.6rem;
  border-radius: 1.8rem;
  padding: 0 1.2rem;
}
.footer-nav__counter svg {
  width: 1.5rem;
  height: 1.5rem;
}
.footer-nav__counter span {
  font-size: 2.2rem;
  letter-spacing: -0.1rem;
  color: var(--t-opp-bright);
}

.footer-blocks__links {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  text-align: left;
  gap: 1rem;
}
.footer-blocks__links p {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  text-align: left;
  gap: 0.2rem;
}
.no-touch .footer-blocks__links p a:hover {
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .footer-blocks__links {
    flex-direction: row;
    justify-content: space-between;
  }
}

.footer-blocks__title {
  position: relative;
}

.footer-blocks__title-m {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .footer-blocks__title-m {
    font-size: 3.6rem;
  }
}

.footer-blocks__title-l {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .footer-blocks__title-l {
    font-size: 4.4rem;
  }
}

.footer-blocks__socials {
  position: relative;
}

.footer-socials {
  display: flex;
  flex-direction: column;
}

.footer-socials__item {
  display: block;
  margin-bottom: 0.3rem;
}
.footer-socials__item:last-of-type {
  margin-bottom: 0;
}

.footer-socials__link {
  font: normal var(--fw-regular) 2.2rem/1.6 var(--_font-accent);
  color: var(--t-bright);
}
.no-touch .footer-socials__link:hover {
  color: var(--t-medium);
}

/* ------------------------------------------------*/
/* Block - Footer End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Popup Start */
/* ------------------------------------------------*/
.mfp-bg {
  background-color: rgba(var(--base-rgb), 0.7);
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: var(--t-bright);
  /* overlay at start */
}

.mfp-fade.mfp-bg {
  opacity: 0;
  transition: all 0.3s;
}

/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 1;
}

/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transform: translateY(3rem);
  transition: all 0.3s var(--_animbezier);
}

/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
  transform: translateY(0);
}

/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
  transform: translateY(-3rem);
}

/* ------------------------------------------------*/
/* Block - Popup End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #00 Start */
/* ------------------------------------------------*/
.mxd-hero-00 {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}

.mxd-hero-00__wrap {
  position: relative;
  width: 100%;
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-00__wrap {
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-00__wrap {
    height: 100%;
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-00__wrap {
    padding: 0 9rem;
  }
}

.mxd-hero-00__top {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  padding: 11.5rem 0 11.2rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-00__top {
    padding: 12.6rem 0 12.8rem 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-00__top {
    align-items: center;
    padding: 0;
    padding-top: 12.9rem;
    padding-bottom: 11.5rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-hero-00__top {
    padding-top: 12.9rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-00__top {
    padding-top: 17rem;
    padding-bottom: 14.8rem;
  }
}

.mxd-hero-00__bottom {
  position: relative;
  width: 100%;
}

.mxd-hero-00__title-wrap {
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-00__title-wrap {
    width: auto;
  }
}

.mxd-hero-00__marquee {
  position: absolute;
  top: 7.6rem;
  right: 0;
  width: 100%;
  background-color: var(--accent);
  border: 1px solid var(--base);
  border-radius: 3.3rem;
  overflow: hidden;
}
.mxd-hero-00__marquee .marquee-flex {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.mxd-hero-00__marquee .marquee__item.item-regular {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  color: var(--t-opp-bright);
}
.mxd-hero-00__marquee .marquee__item.item-regular p {
  font: normal var(--fw-medium) 6rem/1.1 var(--_font-accent);
  color: var(--t-opp-bright);
}
.mxd-hero-00__marquee .marquee__item.item-regular svg {
  width: 3.7rem;
  height: 3.7rem;
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-00__marquee {
    top: 0;
    width: 484px;
    height: 88px;
    border-radius: 4.4rem;
  }
  .mxd-hero-00__marquee .marquee-flex {
    gap: 2.6rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular {
    gap: 2rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular p {
    font-size: 8rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular svg {
    width: 5.1rem;
    height: 5.1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-00__marquee {
    width: 719px;
    height: 132px;
    border-radius: 6.6rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular {
    gap: 2.6rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular p {
    font-size: 12rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular svg {
    width: 8.5rem;
    height: 8.5rem;
    fill: currentColor;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-00__marquee {
    width: 816px;
    height: 154px;
    border-radius: 7.7rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular p {
    font-size: 14rem;
  }
  .mxd-hero-00__marquee .marquee__item.item-regular svg {
    width: 9.1rem;
    height: 9.1rem;
  }
}

.hero-00-title {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .hero-00-title {
    justify-content: center;
    gap: 1.4rem;
    font-size: 8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-00-title {
    gap: 2rem;
    font-size: 12rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-00-title {
    font-size: 14rem;
  }
}

.hero-00-title__row {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .hero-00-title__row {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-00-title__row {
    gap: 3.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-00-title__row {
    gap: 3.4rem;
  }
}

.hero-00-title__item {
  display: inline-flex;
}
.hero-00-title__item.title-item-transparent {
  opacity: 0;
}
.hero-00-title__item.title-item-image {
  display: none;
}
.hero-00-title__item.title-item-image svg {
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .hero-00-title__item {
    white-space: nowrap;
  }
  .hero-00-title__item.title-item-transparent {
    padding: 0 5rem;
    border-radius: 4.4rem;
    color: var(--t-opp-bright);
  }
  .hero-00-title__item.title-item-image {
    display: inline-flex;
    padding-top: 1rem;
  }
  .hero-00-title__item.title-item-image svg {
    width: 5.1rem;
    height: 5.1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-00-title__item.title-item-transparent {
    padding: 0 7rem;
    border-radius: 6.6rem;
  }
  .hero-00-title__item.title-item-image svg {
    width: 8.5rem;
    height: 8.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-00-title__item.title-item-transparent {
    border-radius: 7.7rem;
  }
  .hero-00-title__item.title-item-image svg {
    width: 9.1rem;
    height: 9.1rem;
  }
}

.mxd-hero-00__images {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.hero-00-image {
  position: absolute;
  display: none;
}
@media only screen and (min-width: 768px) {
  .hero-00-image {
    display: block;
  }
  .hero-00-image.image-01 {
    top: -16%;
    left: -6%;
    width: 180px;
  }
  .hero-00-image.image-02 {
    top: -40%;
    left: auto;
    right: 4%;
    width: 100px;
    z-index: 1;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-00-image.image-01 {
    width: 260px;
    top: -14%;
    left: -9%;
  }
  .hero-00-image.image-02 {
    width: 140px;
    right: -6%;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-00-image.image-01 {
    width: 300px;
  }
  .hero-00-image.image-02 {
    width: 180px;
    top: -40%;
  }
}

.hero-00-manifest {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.hero-00-manifest .mxd-manifest {
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .hero-00-manifest .mxd-manifest {
    font-size: 3rem;
    max-width: 780px;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-00-manifest .mxd-manifest {
    font-size: 3.8rem;
    max-width: 1000px;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-00-manifest .mxd-manifest {
    font-size: 4.4rem;
    max-width: 1150px;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #00 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #01 Start */
/* ------------------------------------------------*/
.mxd-hero-section {
  padding-top: 32.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-section {
    padding-top: 9.6rem;
  }
}

@media only screen and (min-width: 768px) {
  .mxd-hero-fullheight {
    height: 100vh;
  }
}

.mxd-hero-01 {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-01 {
    height: 100%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01 {
    height: 100%;
    padding-bottom: 4rem;
  }
}

[color-scheme=light] .mxd-hero-video-container {
  --t-bright: var(--t-opp-bright);
  --t-medium: var(--t-opp-bright);
  --st-bright: var(--st-opp-bright);
  --st-medium: var(--st-opp-bright);
  --t-muted: var(--t-opp-bright);
  --fw-regular: var(--fw-regular--dark);
  --fw-medium: var(--fw-medium--dark);
  --fw-semibold: var(--fw-semibold--dark);
  --fw-bold: var(--fw-bold--dark);
  --fw-regular-opp: var(--fw-regular-opp--dark);
  --fw-medium-opp: var(--fw-medium-opp--dark);
}

[color-scheme=light] .mxd-hero-video-container .mxd-logo__image {
  filter: brightness(0) invert(1);
}

[color-scheme=dark] .mxd-hero-video-container .mxd-logo__image {
  filter: none;
}

.mxd-hero-video-container {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.mxd-hero-01__background-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
}
.mxd-hero-01__background-video::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2;
  background: radial-gradient(120% 120% at 50% 60%, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.32) 60%, rgba(0, 0, 0, 0.48) 100%), linear-gradient(to top, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.18) 42%, rgba(0, 0, 0, 0) 72%), linear-gradient(to left, rgba(0, 0, 0, 0.18) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to right, rgba(0, 0, 0, 0.18) 0%, rgba(0, 0, 0, 0) 40%);
}
[color-scheme=dark] .mxd-hero-01__background-video::after {
  background: radial-gradient(120% 120% at 50% 60%, rgba(0, 0, 0, 0.06) 0%, rgba(0, 0, 0, 0.26) 60%, rgba(0, 0, 0, 0.42) 100%), linear-gradient(to top, rgba(0, 0, 0, 0.36) 0%, rgba(0, 0, 0, 0.16) 42%, rgba(0, 0, 0, 0) 72%), linear-gradient(to left, rgba(0, 0, 0, 0.14) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to right, rgba(0, 0, 0, 0.14) 0%, rgba(0, 0, 0, 0) 40%);
}

.mxd-hero-01__bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.mxd-hero-01__bg-poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  transition: opacity 0.6s ease;
}
.mxd-hero-01__bg-poster.hidden {
  opacity: 0;
}

.mxd-hero-01__wrap {
  position: relative;
  width: 100%;
  padding: 0 3rem;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-01__wrap {
    height: 100%;
    padding: 0 6rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__wrap {
    height: 100%;
    padding: 0 6rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__wrap {
    padding: 0 9rem;
  }
}

.mxd-hero-01__top {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  padding: 8rem 0 6rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-01__top {
    padding: 10rem 0 8rem 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__top {
    align-items: center;
    height: auto;
    min-height: calc(100vh - 22rem);
    padding: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__top {
    min-height: calc(100vh - 28rem);
  }
}

.mxd-hero-01__title-wrap {
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-01__title-wrap {
    width: auto;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__title-wrap {
    padding-bottom: 2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__title-wrap {
    padding-bottom: 4rem;
  }
}

.mxd-hero-01__marquee {
  position: absolute;
  top: 7.6rem;
  right: 0;
  width: 100%;
  background-color: var(--accent);
  border: 1px solid var(--base);
  border-radius: 3.3rem;
  overflow: hidden;
}
.mxd-hero-01__marquee .marquee-flex {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.mxd-hero-01__marquee .marquee__item.item-regular {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  color: var(--t-opp-bright);
}
.mxd-hero-01__marquee .marquee__item.item-regular p {
  font: normal var(--fw-medium) 6rem/1.1 var(--_font-accent);
  color: var(--t-opp-bright);
}
.mxd-hero-01__marquee .marquee__item.item-regular svg {
  width: 3.7rem;
  height: 3.7rem;
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-01__marquee {
    top: 0;
    right: 7rem;
    width: 265px;
    height: 88px;
    border-radius: 4.4rem;
  }
  .mxd-hero-01__marquee .marquee-flex {
    gap: 2.6rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular {
    gap: 2rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular p {
    font-size: 8rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular svg {
    width: 5.1rem;
    height: 5.1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__marquee {
    right: 11rem;
    width: 389px;
    height: 132px;
    border-radius: 6.6rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular {
    gap: 2.6rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular p {
    font-size: 12rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular svg {
    width: 8.5rem;
    height: 8.5rem;
    fill: currentColor;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__marquee {
    right: 13.3rem;
    width: 430px;
    height: 154px;
    border-radius: 7.7rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular p {
    font-size: 14rem;
  }
  .mxd-hero-01__marquee .marquee__item.item-regular svg {
    width: 9.2rem;
    height: 9.2rem;
  }
}

.hero-01-title {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .hero-01-title {
    justify-content: center;
    gap: 1.4rem;
    font-size: 8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-01-title {
    gap: 2rem;
    font-size: 12rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-01-title {
    font-size: 14rem;
  }
}

.hero-01-title__row {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .hero-01-title__row {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-01-title__row {
    gap: 3.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-01-title__row {
    gap: 3.4rem;
  }
}

.hero-01-title__item {
  display: inline-flex;
}
.hero-01-title__item.title-item-transparent {
  opacity: 0;
}
.hero-01-title__item.title-item-image {
  display: none;
}
.hero-01-title__item.title-item-image svg {
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .hero-01-title__item {
    white-space: nowrap;
  }
  .hero-01-title__item.title-item-transparent {
    padding: 0 5rem;
    border-radius: 4.4rem;
    color: var(--t-opp-bright);
  }
  .hero-01-title__item.title-item-image {
    display: inline-flex;
    padding-top: 1rem;
  }
  .hero-01-title__item.title-item-image svg {
    width: 5.1rem;
    height: 5.1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-01-title__item.title-item-transparent {
    padding: 0 7rem;
    border-radius: 6.6rem;
  }
  .hero-01-title__item.title-item-image svg {
    width: 8.5rem;
    height: 8.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-01-title__item.title-item-transparent {
    border-radius: 7.7rem;
  }
  .hero-01-title__item.title-item-image svg {
    width: 9.2rem;
    height: 9.2rem;
  }
}

.mxd-hero-01__images {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.hero-01-image {
  position: absolute;
  display: none;
}
.hero-01-image.image-01 {
  width: 180px;
  top: -6%;
  left: -20%;
}
.hero-01-image.image-02 {
  top: -20%;
  right: -1.5rem;
}
.hero-01-image.image-03 {
  top: 86%;
  left: 0;
}
.hero-01-image.image-02, .hero-01-image.image-03 {
  width: 100px;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .hero-01-image {
    display: block;
  }
  .hero-01-image.image-01 {
    top: -26%;
    left: -5%;
  }
  .hero-01-image.image-02 {
    top: -36%;
    left: auto;
    right: 5%;
  }
  .hero-01-image.image-03 {
    top: 90%;
    left: 35%;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-01-image.image-01 {
    width: 260px;
    top: -24%;
    left: -7%;
  }
  .hero-01-image.image-02, .hero-01-image.image-03 {
    width: 140px;
  }
  .hero-01-image.image-02 {
    top: -34%;
    right: 6%;
  }
  .hero-01-image.image-03 {
    top: 80%;
    left: 42%;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-01-image.image-01 {
    width: 300px;
  }
  .hero-01-image.image-02, .hero-01-image.image-03 {
    width: 180px;
  }
  .hero-01-image.image-03 {
    top: 76%;
    left: 38%;
  }
  .hero-01-image.image-02 {
    top: -36%;
    right: 5%;
  }
}

.mxd-hero-01__bottom {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  margin-top: auto;
  padding-bottom: calc(3rem + env(safe-area-inset-bottom));
}
@media only screen and (min-width: 768px) {
  .mxd-hero-01__bottom {
    padding-bottom: 18rem;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-hero-01__bottom {
    padding-bottom: 18rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__bottom {
    flex-direction: row;
    gap: 6rem;
    height: auto;
    min-height: 16rem;
    padding-bottom: 8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__bottom {
    min-height: 20rem;
    padding-bottom: 10rem;
  }
}

.mxd-hero-01__data-wrap {
  position: relative;
  padding: 0;
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__data-wrap {
    display: flex;
    justify-content: space-between;
    flex: 1;
    padding: 6rem 0 4rem 0;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__data-wrap {
    padding: 8rem 15rem 6rem 0;
  }
}

.mxd-hero-01__dash-line {
  display: none;
  width: 100%;
  height: 1rem;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__dash-line {
    display: block;
  }
}

.dash-line {
  --s: 0.8rem;
  height: 3px;
  background: radial-gradient(circle closest-side, var(--st-muted) 98%, rgba(0, 0, 0, 0)) 0 0/var(--s) 100%, linear-gradient(90deg, var(--st-muted) 50%, rgba(0, 0, 0, 0) 0) calc(var(--s) / 2) 0/calc(2 * var(--s)) 100%;
}

.mxd-hero-01__data-btn {
  margin-bottom: 2.4rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__data-btn {
    flex-basis: 12rem;
    flex-grow: 0;
    flex-shrink: 0;
    height: 12rem;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__data-btn {
    flex-basis: 16rem;
    height: 16rem;
  }
}

.mxd-hero-01__data-descr {
  margin-bottom: 1.6rem;
  padding-bottom: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__data-descr {
    width: 386px;
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

.mxd-hero-01__data-socials ul {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
}
.mxd-hero-01__data-socials ul li {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  color: var(--t-bright);
  margin-bottom: 0.5rem;
}
.mxd-hero-01__data-socials ul li:last-child {
  margin-bottom: 0;
}
.mxd-hero-01__data-socials ul li svg {
  width: 1.5rem;
  height: 1.5rem;
  fill: currentColor;
}
.mxd-hero-01__data-socials ul li a {
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-01__data-socials ul li svg {
    width: 1.9rem;
    height: 1.9rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-01__data-socials ul li a {
    font-size: 2.2rem;
  }
}

.mxd-pulse {
  animation: mxd-pulse 1.2s infinite ease-in-out alternate;
}

@keyframes mxd-pulse {
  from {
    transform: scale(0.94);
  }
  to {
    transform: scale(1.06);
  }
}
.mxd-pulse-small {
  animation: mxd-pulse 1.2s infinite ease-in-out alternate;
}

@keyframes mxd-pulse {
  from {
    transform: scale(0.94);
  }
  to {
    transform: scale(1.02);
  }
}
.mxd-move {
  animation: mxd-move 1.2s infinite ease-in-out alternate;
}

.mxd-move-slow {
  animation: mxd-move 2s infinite ease-in-out alternate;
}

@keyframes mxd-move {
  from {
    transform: translateY(-1rem);
  }
  to {
    transform: translateY(1rem);
  }
}
.mxd-rotate {
  animation: spin 5s linear infinite;
}

.mxd-rotate-slow {
  animation: spin 16s linear infinite;
}

/* ------------------------------------------------*/
/* Block - Hero Section #01 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #02 Start */
/* ------------------------------------------------*/
.mxd-hero-02 {
  position: relative;
}

.hero-02-static__tl-trigger {
  position: absolute;
  top: 14%;
  right: 0;
  width: 1px;
  height: 1px;
}

.mxd-hero-02-static__top {
  position: relative;
  padding-top: 7.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-static__top {
    padding-top: 9.6rem;
  }
}

.hero-02-static__caption {
  margin-top: 2rem;
}
@media only screen and (min-width: 768px) {
  .hero-02-static__caption {
    margin-top: 3rem;
  }
}

.mxd-hero-02-static__bottom {
  position: absolute;
  bottom: 3rem;
  left: 0;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-static__bottom {
    position: absolute;
    bottom: 4rem;
    left: 0;
  }
}

.mxd-hero-02-static__btn {
  display: none;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-static__btn {
    display: block;
    position: absolute;
    right: 6rem;
    bottom: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-02-static__btn {
    position: absolute;
    right: 9rem;
    bottom: 4rem;
  }
}

.mxd-hero-02-static__center {
  position: absolute;
  left: 0;
  top: 50%;
  bottom: auto;
  transform: translateY(-50%);
  width: 100%;
}

.mxd-hero-02-marquee {
  position: relative;
  color: var(--t-bright);
}
.mxd-hero-02-marquee .marquee__item.item-regular {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin: 0;
}
.mxd-hero-02-marquee .marquee__text {
  font-size: 10rem;
  font-weight: var(--fw-medium);
  color: var(--t-bright);
  margin: 0;
}
.mxd-hero-02-marquee .marquee__image {
  width: 7.1rem;
  height: 7.1rem;
}
.mxd-hero-02-marquee .marquee__image svg {
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-marquee .marquee__item.item-regular {
    gap: 4rem;
  }
  .mxd-hero-02-marquee .marquee__text {
    font-size: 14rem;
  }
  .mxd-hero-02-marquee .marquee__image {
    width: 9.1rem;
    height: 9.1rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-02-marquee .marquee__item.item-regular {
    gap: 5rem;
  }
  .mxd-hero-02-marquee .marquee__text {
    font-size: 18rem;
  }
  .mxd-hero-02-marquee .marquee__image {
    width: 12.1rem;
    height: 12.1rem;
  }
}

.mxd-hero-02-marquee__image {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  z-index: 2;
  width: 18rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-marquee__image {
    width: 30rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-02-marquee__image {
    width: 42rem;
  }
}

.mxd-hero-02-marquee__line .marquee__toleft {
  display: flex;
  align-items: center;
  gap: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-marquee__line .marquee__toleft {
    gap: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-02-marquee__line .marquee__toleft {
    gap: 5rem;
  }
}

.mxd-hero-02-scroll__wrap {
  padding: 0 3rem;
  padding-bottom: 100vh;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-scroll__wrap {
    padding: 0 6rem;
    padding-bottom: 100vh;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-02-scroll__wrap {
    padding-bottom: 100vh;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-02-scroll__wrap {
    padding: 0 9rem;
    padding-bottom: 100vh;
  }
}

.mxd-hero-02-scroll__images {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-scroll__images {
    gap: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-02-scroll__images {
    gap: 10rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-02-scroll__images {
    gap: 14rem;
  }
}

.mxd-hero-02-images__row {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-images__row {
    gap: 6rem;
    justify-content: space-between;
    align-items: flex-end;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-02-images__row {
    flex-wrap: nowrap;
  }
}

.mxd-hero-02-images__row-02,
.mxd-hero-02-images__row-03 {
  align-items: flex-start;
}

.mxd-hero-02-image__landscape,
.mxd-hero-02-image__portrait {
  position: relative;
  display: block;
}

@media only screen and (min-width: 768px) {
  .mxd-hero-02-image__portrait.portrait-01 {
    padding-bottom: 9rem;
  }
  .mxd-hero-02-image__portrait.portrait-02 {
    margin-top: -3rem;
  }
  .mxd-hero-02-image__portrait.portrait-03 {
    margin-top: -9rem;
  }
  .mxd-hero-02-image__portrait.portrait-04 {
    padding-top: 3rem;
  }
  .mxd-hero-02-image__portrait.portrait-05 {
    padding-left: 30%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-02-image__portrait.portrait-01 {
    padding-bottom: 9rem;
  }
  .mxd-hero-02-image__portrait.portrait-02 {
    margin-top: 0;
    padding-top: 8rem;
    padding-bottom: 3rem;
  }
  .mxd-hero-02-image__portrait.portrait-03 {
    margin-top: 0;
  }
  .mxd-hero-02-image__portrait.portrait-04 {
    padding-top: 0;
    margin-top: -10rem;
  }
  .mxd-hero-02-image__portrait.portrait-05 {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .mxd-hero-02-image__landscape.landscape-02 {
    padding-top: 100px;
  }
  .mxd-hero-02-image__landscape.landscape-03 {
    padding-top: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-02-image__landscape.landscape-02 {
    padding-top: 100px;
  }
  .mxd-hero-02-image__landscape.landscape-03 {
    padding-top: 60px;
  }
}

.mxd-hero-02-image__inner {
  position: relative;
  border-radius: var(--_radius-m);
  box-shadow: 0 29px 58px rgba(0, 0, 0, 0.3), 0 25px 22px rgba(0, 0, 0, 0.22);
  overflow: hidden;
}
.no-touch .mxd-hero-02-image__inner:hover .mxd-preview-hover {
  opacity: 1;
  filter: blur(0);
  backdrop-filter: blur(10px);
}
.mxd-hero-02-image__inner.type-01, .mxd-hero-02-image__inner.type-02 {
  width: 220px;
  height: 266px;
}
.mxd-hero-02-image__inner.type-03 {
  width: 300px;
  height: 200px;
}
.mxd-hero-02-image__inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-02-image__inner.type-03 {
    width: 360px;
    height: 237px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-02-image__inner.type-01 {
    width: 280px;
    height: 340px;
  }
  .mxd-hero-02-image__inner.type-02 {
    width: 500px;
    height: 640px;
  }
  .mxd-hero-02-image__inner.type-03 {
    width: 440px;
    height: 290px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-02-image__inner.type-01 {
    width: 400px;
    height: 480px;
  }
  .mxd-hero-02-image__inner.type-02 {
    width: 760px;
    height: 940px;
  }
  .mxd-hero-02-image__inner.type-03 {
    width: 620px;
    height: 420px;
  }
}

@media (prefers-color-scheme: dark) {
  .mxd-hero-02-marquee {
    color: var(--pt-t-light-bright);
  }
  .mxd-hero-02-marquee .marquee__text {
    color: var(--pt-t-light-bright);
  }
}
/* ------------------------------------------------*/
/* Block - Hero Section #02 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #03 Start */
/* ------------------------------------------------*/
.mxd-hero-03 {
  position: relative;
  width: 100%;
}

.mxd-hero-03__wrap {
  position: relative;
  width: 100%;
}

.mxd-hero-03__top {
  position: relative;
  height: calc(100vh - 7.6rem);
  padding-top: 12rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-03__top {
    height: calc(100vh - 9.6rem);
    padding-top: 14rem;
  }
}

.mxd-hero-03__bottom {
  position: relative;
}

.mxd-hero-03__marquee {
  position: absolute;
  left: 0;
  top: 50%;
  bottom: auto;
  transform: translateY(-50%);
  width: 100%;
  overflow: hidden;
}
.mxd-hero-03__marquee .marquee__item {
  width: auto;
  height: auto;
  padding: 1rem 0;
  margin-right: 6rem;
  border-radius: 0;
  overflow: visible;
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-03__marquee .marquee__item {
    margin-right: 6rem;
  }
}

.hero-03-marquee__video {
  width: 80vw;
  height: 80vw;
  border-radius: 50%;
  overflow: hidden;
}
.hero-03-marquee__video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .hero-03-marquee__video {
    width: 42vw;
    height: 42vw;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-03-marquee__video {
    width: 26vw;
    height: 26vw;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-03-marquee__video {
    width: 24vw;
    height: 24vw;
  }
}

.hero-03-marquee__image {
  position: relative;
  width: 80vw;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .hero-03-marquee__image {
    width: 42vw;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-03-marquee__image {
    width: 26vw;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-03-marquee__image {
    width: 24vw;
  }
}

.mxd-hero-03__headline {
  position: absolute;
  bottom: 6rem;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding: 0 1.5rem;
  mix-blend-mode: difference;
}
.mxd-hero-03__headline svg {
  fill: #ffffff;
  mix-blend-mode: difference;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-03__headline {
    padding: 0 4.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-hero-03__headline {
    bottom: 2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-03__headline {
    padding: 0 7.5rem;
  }
}

.hero-03-headline__caption {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  color: #ffffff;
  margin-bottom: 5.2rem;
}
@media only screen and (min-width: 768px) {
  .hero-03-headline__caption {
    font-size: 4.4rem;
    margin-bottom: 4.7rem;
  }
}
@media only screen and (min-width: 992px) {
  .hero-03-headline__caption {
    margin-bottom: 1rem;
  }
}

.hero-03-headline__hidden {
  display: none;
}

.hero-03-headline__svg-mobile {
  display: block;
}
@media only screen and (min-width: 992px) {
  .hero-03-headline__svg-mobile {
    display: none;
  }
}

.hero-03-headline__svg {
  display: none;
}
@media only screen and (min-width: 992px) {
  .hero-03-headline__svg {
    display: block;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #03 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #04 Start */
/* ------------------------------------------------*/
.mxd-hero-04 {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding-top: 14rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-04 {
    padding-top: 16rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-04 {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-04 {
    padding-top: 4rem;
  }
}

.mxd-page-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.hero-04-bg {
  height: 300vh;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .hero-04-bg {
    height: 200vh;
  }
}

.hero-04-bg__obj-01,
.hero-04-bg__obj-02 {
  position: absolute;
}
.hero-04-bg__obj-01 img,
.hero-04-bg__obj-02 img {
  display: block;
  width: 100%;
  height: auto;
}

.hero-04-bg__obj-01 {
  top: 680px;
  left: -50px;
  width: 240px;
}
@media only screen and (min-width: 768px) {
  .hero-04-bg__obj-01 {
    width: 340px;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-04-bg__obj-01 {
    top: 360px;
    width: 340px;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-04-bg__obj-01 {
    top: 400px;
    left: -90px;
    width: 460px;
  }
}

.hero-04-bg__obj-02 {
  top: 10px;
  right: -30px;
  width: 200px;
}
@media only screen and (min-width: 768px) {
  .hero-04-bg__obj-02 {
    top: 40px;
    right: -60px;
    width: 360px;
  }
}
@media only screen and (min-width: 992px) {
  .hero-04-bg__obj-02 {
    top: 40px;
    right: -60px;
    width: 460px;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-04-bg__obj-02 {
    top: 410px;
    right: -60px;
    width: 460px;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-04-bg__obj-02 {
    top: 430px;
    right: -60px;
    width: 600px;
  }
}

.mxd-hero-04__wrap {
  position: relative;
  width: 100%;
  padding: 0 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-04__wrap {
    padding: 0 4.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-04__wrap {
    height: 100%;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-04__wrap {
    padding: 0 7.5rem;
  }
}

.mxd-hero-04__left {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-04__left {
    flex-direction: row;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-04__left {
    flex-direction: column;
  }
}

.mxd-hero-04__right {
  display: flex;
  flex-direction: column;
  gap: 3.9rem;
  padding-bottom: 5.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-04__right {
    gap: 5.2rem;
    padding-bottom: 7.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-04__right {
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-04__right {
    gap: 6.8rem;
  }
}

.mxd-hero-04__imageblock {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  padding: 3rem;
  border-radius: 3.6rem;
  background-color: rgba(var(--accent-rgb), 0.7);
  border: 1px solid rgba(var(--accent-rgb), 0.8);
  backdrop-filter: blur(6px);
}
.mxd-hero-04__imageblock p {
  font: normal var(--fw-medium) 2.5rem/1.2 var(--_font-accent);
  color: var(--t-opp-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-hero-04__imageblock {
    padding: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-04__imageblock {
    font-size: 3rem;
  }
}

.hero-04-imageblock__btn {
  position: absolute;
  top: 1rem;
  right: 1rem;
}

.mxd-hero-04__aboutblock {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  padding: 3rem;
  border-radius: 3.6rem;
  background-color: rgba(var(--additional-rgb), 0.7);
  border: 1px solid rgba(var(--additional-rgb), 0.9);
  backdrop-filter: blur(6px);
}
.mxd-hero-04__aboutblock p {
  font: normal var(--fw-medium) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-hero-04__aboutblock {
    padding: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-04__aboutblock p {
    font-size: 2.2rem;
  }
}

.mxd-hero-04__headline {
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-04__headline {
    gap: 3.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-04__headline {
    gap: 3.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-04__headline {
    gap: 4.8rem;
  }
}

.mxd-hero-04__headline,
.mxd-hero-04__descr {
  padding: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-04__headline,
  .mxd-hero-04__descr {
    padding: 0 3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-04__headline,
  .mxd-hero-04__descr {
    padding: 0 6rem;
  }
}

.hero-04-title {
  position: relative;
  display: flex;
  flex-direction: column;
}

.hero-04-title__row {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .hero-04-title__row {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-04-title__row {
    gap: 3.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-04-title__row {
    gap: 3.4rem;
  }
}

.hero-04-title__item {
  display: inline-flex;
}
.hero-04-title__item.title-item-transparent {
  opacity: 0;
}
.hero-04-title__item.title-item-image {
  padding-top: 1rem;
  display: none;
}
.hero-04-title__item.title-item-image svg {
  width: 3.5rem;
  height: 3.5rem;
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .hero-04-title__item {
    white-space: nowrap;
  }
  .hero-04-title__item.title-item-transparent {
    padding: 0 5rem;
    border-radius: 4.4rem;
    color: var(--t-opp-bright);
  }
  .hero-04-title__item.title-item-image {
    display: inline-flex;
    padding-top: 1rem;
  }
  .hero-04-title__item.title-item-image svg {
    width: 7.5rem;
    height: 7.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-04-title__item.title-item-transparent {
    padding: 0 7rem;
    border-radius: 6.6rem;
  }
  .hero-04-title__item.title-item-image svg {
    width: 7.5rem;
    height: 7.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-04-title__item.title-item-transparent {
    border-radius: 7.7rem;
  }
  .hero-04-title__item.title-item-image svg {
    width: 8.2rem;
    height: 8.2rem;
  }
}

.hero-04-headline__avatars {
  display: block;
}

.mxd-hero-04__descr {
  display: block;
}

.hero-04-marquee {
  position: relative;
  width: 100%;
  height: 4.6rem;
  line-height: 4.6rem;
  border-radius: 2.3rem;
  border: 1px solid var(--st-opp-bright);
  background-color: var(--neutral-transparent);
  backdrop-filter: blur(6px);
  color: var(--t-bright);
}
.hero-04-marquee p {
  font: normal var(--fw-medium) 1.8rem/4.6rem var(--_font-accent);
  color: var(--t-bright);
}
.hero-04-marquee svg {
  width: 1.7rem;
  height: 1.7rem;
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .hero-04-marquee {
    height: 5.6rem;
    border-radius: 2.8rem;
  }
  .hero-04-marquee p {
    font-size: 2.2rem;
    line-height: 5.6rem;
  }
  .hero-04-marquee svg {
    width: 1.9rem;
    height: 1.9rem;
  }
}

.hero-04-marquee .marquee-flex {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.hero-04-marquee .marquee__item.item-regular {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .hero-04-marquee .marquee-flex {
    gap: 1.4rem;
  }
  .hero-04-marquee .marquee__item.item-regular {
    gap: 1.4rem;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #04 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #05 Start */
/* ------------------------------------------------*/
.mxd-hero-05 {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding-top: 12rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-05 {
    padding-top: 16rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-05 {
    padding-top: 13.6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-05 {
    padding-top: 17rem;
  }
}

.mxd-hero-05__wrap {
  position: relative;
  width: 100%;
  padding: 0 1.5rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-05__wrap {
    padding: 0 4.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-05__wrap {
    height: 100%;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-05__wrap {
    padding: 0 7.5rem;
  }
}

.mxd-hero-05__top {
  margin-bottom: 4.9rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-05__top {
    margin-bottom: 8.2rem;
  }
}

.mxd-hero-05__bottom {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-05__bottom {
    flex-direction: row;
  }
}

.mxd-hero-05__worksblock {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  padding: 3rem;
  border-radius: var(--_radius-l);
  background-color: var(--base-tint);
}
@media only screen and (min-width: 768px) {
  .mxd-hero-05__worksblock {
    flex-basis: 30rem;
    flex-grow: 0;
    flex-shrink: 0;
    padding: 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-05__worksblock {
    flex-basis: 43rem;
    padding: 4rem 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-05__worksblock {
    flex-basis: 55.5rem;
    padding: 4rem 8rem;
  }
}

.hero-05-worksblock__descr {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
  text-align: center;
}

.mxd-hero-05__videoblock {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4rem;
  flex: 1;
  padding: 3rem;
  border-radius: var(--_radius-l);
  overflow: hidden;
}
.mxd-hero-05__videoblock img {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-05__videoblock {
    padding: 4rem;
  }
}

.mxd-hero-05-videoblock__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mxd-hero-05-videoblock__video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mxd-hero-05-videoblock__descr {
  position: relative;
  padding: 3rem;
  background-color: rgba(255, 255, 255, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: var(--_radius-m);
  backdrop-filter: blur(16px);
}
.mxd-hero-05-videoblock__descr p {
  color: var(--pt-t-dark-bright);
  font-weight: 500;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-05-videoblock__descr {
    padding: 3rem 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-05-videoblock__descr {
    max-width: 460px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-05-videoblock__descr {
    max-width: 535px;
  }
}

.hero-05-title {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-top: 3.5rem;
}
@media only screen and (min-width: 1200px) {
  .hero-05-title {
    margin-top: 0;
  }
}

.hero-05-title__row {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .hero-05-title__row {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-05-title__row {
    gap: 3.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-05-title__row {
    gap: 3.4rem;
  }
}

.hero-05-title__item {
  display: inline-flex;
}
.hero-05-title__item.title-item-transparent {
  opacity: 0;
}
.hero-05-title__item.title-item-image {
  padding-top: 1rem;
  display: none;
}
.hero-05-title__item.title-item-image svg {
  width: 3.5rem;
  height: 3.5rem;
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .hero-05-title__item.title-item-transparent {
    padding: 0 5rem;
    border-radius: 4.4rem;
    color: var(--t-opp-bright);
  }
  .hero-05-title__item.title-item-image {
    display: inline-flex;
    padding-top: 1rem;
  }
  .hero-05-title__item.title-item-image svg {
    width: 4.1rem;
    height: 4.1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-05-title__item.title-item-transparent {
    padding: 0 7rem;
    border-radius: 6.6rem;
  }
  .hero-05-title__item.title-item-image svg {
    width: 7.5rem;
    height: 7.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-05-title__item.title-item-transparent {
    border-radius: 7.7rem;
  }
  .hero-05-title__item.title-item-image svg {
    width: 8.2rem;
    height: 8.2rem;
  }
}

@media only screen and (min-width: 1200px) {
  .hero-05-headline__avatars {
    padding-top: 2.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-05-headline__avatars {
    padding-top: 3rem;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #05 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #06 Start */
/* ------------------------------------------------*/
.mxd-hero-06 {
  position: relative;
  width: 100%;
  padding-top: 7.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06 {
    padding-top: 9.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06 {
    height: 100vh;
  }
}

.mxd-hero-06__wrap {
  position: relative;
  width: 100%;
  height: 100%;
  padding-top: 10.9rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06__wrap {
    padding-top: 14.9rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__wrap {
    display: flex;
    flex-direction: column;
    padding: 4rem 6rem 0 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-06__wrap {
    padding: 4rem 9rem 0 9rem;
  }
}

.mxd-hero-06__top {
  position: relative;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__top {
    flex: 1;
  }
}

.mxd-hero-06__bottom {
  position: relative;
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06__bottom {
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 4rem 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-06__bottom {
    padding: 4rem 0;
  }
}

.mxd-hero-06__btn-mobile {
  display: flex;
  padding: 0 3rem;
  margin-top: 5.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06__btn-mobile {
    padding: 0 6rem;
    margin-top: 7.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__btn-mobile {
    display: none;
  }
}

.mxd-hero-06__content {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__content {
    flex-direction: column;
    width: 100%;
    height: 100%;
  }
}

.mxd-hero-06__video {
  padding: 0 3rem;
  margin-bottom: 1.5rem;
}
.mxd-hero-06__video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--_radius-m);
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06__video {
    padding: 0 6rem;
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    margin-bottom: 0;
    border-radius: var(--_radius-l);
    overflow: hidden;
  }
  .mxd-hero-06__video video {
    border-radius: none;
  }
}

.hero-06-video__cover {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .hero-06-video__cover {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--base);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.6) 100%);
  }
}

.mxd-hero-06__data {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__data {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
  }
}

.mxd-hero-06__list {
  position: relative;
  width: 100%;
  padding: 0 3rem;
  margin-bottom: 5.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06__list {
    padding: 0 6rem;
    margin-bottom: 7.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__list {
    padding: 3.4rem 4rem 0 4rem;
  }
  .mxd-hero-06__list p {
    color: var(--pt-t-light-bright);
    font-weight: 400;
  }
}

.mxd-hero-06__headline {
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__headline {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}

.hero-06-headline__descr {
  position: relative;
  width: 100%;
  padding: 0 3rem;
  margin-bottom: 2.5rem;
}
.hero-06-headline__descr p {
  color: var(--t-bright);
  font-size: 2rem;
  font-weight: var(--fw-medium);
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .hero-06-headline__descr {
    padding: 0 6rem;
    margin-bottom: 1.6rem;
  }
  .hero-06-headline__descr p {
    max-width: 440px;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-06-headline__descr {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding: 0 4rem;
    margin-bottom: 0.4rem;
  }
  .hero-06-headline__descr p {
    color: var(--pt-t-light-bright);
    font-weight: 500;
    max-width: 340px;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-06-headline__descr {
    padding: 0 5rem;
  }
  .hero-06-headline__descr p {
    font-size: 2.4rem;
    max-width: 440px;
  }
}

.hero-06-headline__btn {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .hero-06-headline__btn {
    display: block;
    position: absolute;
    right: 5rem;
    bottom: 0;
  }
}

.hero-06-headline__content {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.hero-06-headline__title {
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
}

.mxd-hero-06__marquee {
  margin-bottom: 3.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06__marquee {
    margin-bottom: 4.3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__marquee {
    margin-bottom: 0;
    padding-bottom: 4.3rem;
  }
}

.mxd-hero-06__mark,
.mxd-hero-06__more {
  position: relative;
}

.mxd-hero-06__mark {
  display: block;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  padding: 2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-06__mark {
    padding: 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__mark {
    display: inline-flex;
    background-color: transparent;
    border-radius: none;
    padding: 0;
  }
}

.mxd-hero-06__more {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-06__more {
    display: inline-flex;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #06 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #07 Start */
/* ------------------------------------------------*/
.mxd-hero-07 {
  position: relative;
  width: 100%;
}

.mxd-hero-07__tl-trigger {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 1px;
  height: 1px;
}

.hero-07-fade-out-scroll {
  transform-origin: top center;
}

.hero-07-slide-out-scroll {
  transform-origin: top center;
}

.mxd-hero-07__wrap {
  position: relative;
  width: 100%;
  padding-top: 7.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-07__wrap {
    padding-top: 9.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-07__wrap {
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding-top: 9.6rem;
  }
}

.mxd-hero-07__top {
  position: relative;
  width: 100%;
  padding-top: 3.1rem;
  margin-bottom: 4.6rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-07__top {
    padding-top: 10.3rem;
    margin-bottom: 13.3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-07__top {
    padding-top: 2.3rem;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-07__top {
    padding-top: 4.3rem;
  }
}

.mxd-hero-07__title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
}

.mxd-hero-07__marquee {
  display: block;
}

.mxd-hero-07__bottom {
  position: relative;
  width: 100%;
  padding: 0 3rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-07__bottom {
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-07__bottom {
    flex: 1;
    overflow: visible;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-07__bottom {
    padding: 0 9rem;
  }
}

.mxd-hero-07__circle {
  position: relative;
  width: 100%;
  height: 460px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1.5rem;
  margin-bottom: 4.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-07__circle {
    width: 600px;
    height: 600px;
    justify-content: flex-start;
    margin: 0 auto 4.6rem;
    padding: 0;
    overflow: visible;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-07__circle {
    position: absolute;
    bottom: -250px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    margin: 0;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-hero-07__circle {
    width: 680px;
    height: 680px;
    bottom: -250px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-07__circle {
    width: 900px;
    height: 900px;
    bottom: -400px;
  }
}

.hero-07-circle__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: var(--_radius-m);
  overflow: hidden;
}
.hero-07-circle__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .hero-07-circle__image {
    border-radius: 50%;
  }
}

.hero-07-circle__container {
  position: relative;
  display: flex;
  align-items: flex-start;
}
.hero-07-circle__container.mobile-row {
  display: flex;
  align-items: flex-end;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .hero-07-circle__container {
    position: static;
  }
}

.hero-07-circle__item {
  padding: 1.8rem 2rem;
  border-radius: var(--_radius-pt-m);
  background-color: var(--neutral-transparent);
  border: 1px solid var(--neutral-transparent);
  backdrop-filter: blur(16px);
  box-shadow: 0px 4px 8px 0px rgba(var(--pt-purple-rgb), 0.3);
}
@media only screen and (min-width: 768px) {
  .hero-07-circle__item {
    position: absolute;
  }
  .hero-07-circle__item.item-01 {
    top: 3rem;
    right: -1.4rem;
    max-width: 20rem;
  }
  .hero-07-circle__item.item-02 {
    top: 25rem;
    right: -10rem;
    max-width: 16rem;
  }
  .hero-07-circle__item.item-03 {
    top: 20rem;
    left: -8rem;
    max-width: 16rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-07-circle__item.item-02 {
    top: auto;
    top: 21rem;
    right: -10rem;
    max-width: 16rem;
  }
  .hero-07-circle__item.item-03 {
    top: 17rem;
    left: -8rem;
    max-width: 16rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-07-circle__item.item-01 {
    top: 5rem;
    right: 5rem;
    max-width: 20rem;
  }
  .hero-07-circle__item.item-02 {
    top: auto;
    top: 29rem;
    right: -10rem;
    max-width: 16rem;
  }
  .hero-07-circle__item.item-03 {
    top: 24rem;
    left: -7rem;
    max-width: 16rem;
  }
}

.mxd-hero-07__info {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-07__info {
    flex-direction: row;
    justify-content: space-between;
    height: 100%;
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-07__info {
    padding-top: 5.6rem;
  }
}

.hero-07-info__container {
  display: flex;
  flex-direction: column;
  gap: 5.2rem;
}
@media only screen and (min-width: 1200px) {
  .hero-07-info__container {
    justify-content: space-between;
    padding-bottom: 4rem;
  }
  .hero-07-info__container:nth-of-type(2) {
    padding-top: 1.3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-07-info__container:nth-of-type(2) {
    padding-top: 1.7rem;
  }
}

.hero-07-info__descr {
  position: relative;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  .hero-07-info__descr {
    max-width: 500px;
    text-align: center;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-07-info__descr {
    max-width: 340px;
    text-align: left;
    margin: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-07-info__descr {
    max-width: 400px;
  }
}

.hero-07-info__tags {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .hero-07-info__tags {
    justify-content: center;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-07-info__tags {
    flex-direction: column;
    align-items: flex-start;
  }
  .hero-07-info__tags.right-align-desktop {
    align-items: flex-end;
  }
}

.mxd-hero-07__more {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-07__more {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 4rem 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-07__more {
    padding: 4rem 9rem;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #07 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #08 Start */
/* ------------------------------------------------*/
.mxd-hero-08 {
  position: relative;
  width: 100%;
}

.mxd-hero-08__tl-trigger {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 1px;
  height: 1px;
}

.mxd-hero-08__wrap {
  position: relative;
  width: 100%;
  padding-top: 7.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-08__wrap {
    padding-top: 9.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-08__wrap {
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 0;
  }
}

.mxd-hero-08__center {
  position: relative;
  width: 100%;
  text-align: center;
  padding: 11.5rem 0 11.9rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-08__center {
    padding: 13.5rem 0 14.9rem 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-08__center {
    padding: 0;
  }
}

.mxd-hero-08__headline {
  position: relative;
}

.hero-08-headline__image {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  width: 50vw;
}
@media only screen and (min-width: 768px) {
  .hero-08-headline__image {
    width: 28vw;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-08-headline__image {
    width: 24vw;
  }
}

.hero-08-headline__title {
  position: relative;
  mix-blend-mode: difference;
}
.hero-08-headline__title h1 {
  color: var(--nl-white);
}

.mxd-hero-08__bottom {
  display: flex;
  flex-direction: column;
  gap: 3.6rem;
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-08__bottom {
    flex-direction: row;
    gap: 6rem;
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-08__bottom {
    position: absolute;
    bottom: 4rem;
    left: 0;
    width: 100%;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-08__bottom {
    padding: 0 9rem;
  }
}

.mxd-hero-08__video-wrap {
  position: relative;
  border-radius: var(--_radius-l);
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-08__video-wrap {
    flex-basis: 50%;
    flex-grow: 0;
    flex-shrink: 0;
    border-radius: var(--_radius-m);
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-08__video-wrap {
    flex-basis: 24.6rem;
    flex-grow: 0;
    flex-shrink: 0;
    height: 16rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-08__video-wrap {
    flex-basis: 30.8rem;
    height: 20rem;
  }
}

.mxd-hero-08__video-btn {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 1rem;
}

.mxd-hero-08__video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mxd-hero-08__data-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-08__data-wrap {
    max-width: 480px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-08__data-wrap {
    max-width: 540px;
  }
}

.mxd-hero__mark {
  display: flex;
  align-items: center;
  gap: 1rem;
  font: normal var(--fw-regular) 1.6rem/1.4 var(--_font-accent);
  color: var(--t-bright);
}
.mxd-hero__mark .mark-icon {
  display: inline-flex;
  flex-basis: 1rem;
  flex-grow: 0;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: #a1f21e;
}
.mxd-hero__mark .mark-text {
  display: inline-flex;
}
@media only screen and (min-width: 768px) {
  .mxd-hero__mark {
    gap: 1.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero__mark {
    font-size: 1.8rem;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #08 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Hero Section #09 Start */
/* ------------------------------------------------*/
.mxd-hero-09 {
  position: relative;
  width: 100%;
  padding-top: 11rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-09 {
    padding-top: 14.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-09 {
    padding-top: 0;
  }
}

.mxd-hero-09__wrap {
  position: relative;
  width: 100%;
  padding-top: 9.6rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-09__wrap {
    padding-top: 9.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-09__wrap {
    padding-top: 0;
    height: 100vh;
  }
}

.mxd-hero-09__headline,
.mxd-hero-09__objects {
  position: relative;
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-09__headline,
  .mxd-hero-09__objects {
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-09__headline,
  .mxd-hero-09__objects {
    padding: 0 9rem;
  }
}

.mxd-hero-09__headline {
  position: relative;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-09__headline {
    position: absolute;
    bottom: 4rem;
    left: 0;
    width: 100%;
    z-index: 2;
  }
}

.hero-09-headline__caption {
  margin-bottom: 3.6rem;
}
.hero-09-headline__caption p {
  font: normal var(--fw-medium) 2rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .hero-09-headline__caption {
    max-width: 500px;
    margin-bottom: 5.4rem;
  }
  .hero-09-headline__caption p {
    font-size: 2.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-09-headline__caption {
    max-width: 440px;
  }
}

.hero-09-headline__title {
  position: relative;
  overflow: hidden;
  color: var(--t-bright);
}
.hero-09-headline__title svg {
  fill: currentColor;
}

.hero-09-svg-mobile {
  display: block;
}
@media only screen and (min-width: 1200px) {
  .hero-09-svg-mobile {
    display: none;
  }
}

.hero-09-svg-desktop {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .hero-09-svg-desktop {
    display: block;
  }
}

.hero-09-headline__hidden {
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
}

.hero-09-headline__tags {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 6rem;
  max-width: 800px;
}
@media only screen and (min-width: 1600px) {
  .hero-09-headline__tags {
    max-width: 1000px;
  }
}

.mxd-hero-09__objects {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-hero-09__objects {
    gap: 0;
    max-width: 430px;
    margin: 6rem auto 0;
    padding: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-09__objects {
    position: absolute;
    right: 14%;
    top: 6.8rem;
    margin: 0;
    z-index: 1;
  }
}

.hero-09-objects__image {
  position: relative;
  max-width: 325px;
  margin: 6rem auto 0;
  padding-bottom: 4.5rem;
}
@media only screen and (min-width: 768px) {
  .hero-09-objects__image {
    max-width: none;
    margin: 0;
    padding-bottom: 0;
  }
}

.hero-09-objects__item {
  position: relative;
  padding: 1.8rem 2rem;
  border-radius: var(--_radius-pt-m);
  background-color: var(--base-tint);
}
@media only screen and (min-width: 768px) {
  .hero-09-objects__item {
    position: absolute;
    background-color: var(--neutral-transparent);
    border: 1px solid var(--neutral-transparent);
    backdrop-filter: blur(16px);
    box-shadow: 0px 4px 8px 0px rgba(var(--pt-purple-rgb), 0.3);
  }
  .hero-09-objects__item.item-01 {
    top: 7rem;
    right: -3rem;
  }
  .hero-09-objects__item.item-02 {
    left: -14rem;
    top: 18rem;
  }
  .hero-09-objects__item.item-03 {
    right: -18rem;
    top: 24rem;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-09-objects__item.item-01 {
    top: 8rem;
    right: -3rem;
  }
  .hero-09-objects__item.item-02 {
    left: -14rem;
    top: 29rem;
  }
  .hero-09-objects__item.item-03 {
    right: -18rem;
    top: 27rem;
  }
}

.mxd-hero-09__more {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mxd-hero-09__more {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 4rem 6rem;
    z-index: 3;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-hero-09__more {
    padding: 4rem 9rem;
  }
}

/* ------------------------------------------------*/
/* Block - Hero Section #09 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Blog Start */
/* ------------------------------------------------*/
.breadcrumbs__nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.5rem;
}
.breadcrumbs__nav span {
  font: normal var(--fw-regular) 1.8rem/1.4 var(--_font-accent);
  color: var(--t-muted);
}
.breadcrumbs__nav span::after {
  content: "/";
  display: inline-flex;
  margin-left: 0.2rem;
}
.breadcrumbs__nav span:last-of-type::after {
  display: none;
}
.breadcrumbs__nav span a {
  display: inline;
  color: var(--t-muted);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-muted), var(--t-muted));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch .breadcrumbs__nav span a:hover {
  color: var(--t-medium);
  background-size: 0 1px, 100% 1px;
}
.breadcrumbs__nav span.current-item {
  text-decoration: none;
  background: linear-gradient(to right, var(--t-muted), var(--t-muted));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%;
  background-repeat: no-repeat;
}
.breadcrumbs__nav span.current-item a {
  text-decoration: none;
  background: linear-gradient(to right, var(--t-muted), var(--t-muted)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch .breadcrumbs__nav span.current-item a:hover {
  color: var(--t-medium);
  background-size: 0 1px, 100% 1px;
}
@media only screen and (min-width: 1200px) {
  .breadcrumbs__nav {
    justify-content: flex-end;
  }
}

.mxd-posts-area {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1200px) {
  .mxd-posts-area {
    flex-direction: row;
  }
  .mxd-posts-area.column {
    flex-direction: column;
  }
}

.mxd-posts-container {
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 1200px) {
  .mxd-posts-container {
    width: calc(100% - 450px);
  }
  .mxd-posts-container.fullwidth-posts-container {
    width: 100%;
  }
}

.mxd-sidebar {
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 1200px) {
  .mxd-sidebar {
    width: 450px;
  }
}

.mxd-post {
  position: relative;
  overflow: hidden;
}

.post-featured {
  display: flex;
  flex-direction: column;
  gap: 12.8rem;
  height: auto;
  padding: 3rem;
  margin-bottom: 6rem;
}
.post-featured.post-featured-v2 {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .post-featured {
    padding: 4rem;
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .post-featured.post-featured-v2 {
    height: 760px;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1400px) {
  .post-featured {
    justify-content: space-between;
    gap: 0;
    height: 670px;
  }
  .post-featured.post-featured-v2 {
    height: 760px;
  }
}
@media only screen and (min-width: 1600px) {
  .post-featured {
    height: 760px;
  }
  .post-featured.post-featured-v2 {
    height: 930px;
  }
}

.post-featured__thumb {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.post-featured__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post-featured__categories {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 1rem;
}
@media only screen and (min-width: 1200px) {
  .post-featured__categories {
    flex-direction: column;
  }
}

.post-featured__content {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .post-featured__content {
    max-width: 500px;
  }
}
@media only screen and (min-width: 1200px) {
  .post-featured__content {
    overflow: hidden;
  }
}
@media only screen and (min-width: 1600px) {
  .post-featured__content {
    max-width: 600px;
  }
}

.post-featured__meta {
  display: flex;
  flex-wrap: wrap;
  row-gap: 0.4rem;
  column-gap: 1rem;
  color: var(--pt-t-light-bright);
  margin-bottom: 1.6rem;
}
.post-featured__meta span {
  display: flex;
  align-items: center;
  gap: 1rem;
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
}
.post-featured__meta span a {
  color: var(--pt-t-light-bright);
}
.post-featured__meta span svg {
  width: 1.7rem;
  height: 1.7rem;
  fill: currentColor;
}
.post-featured__meta span.meta-tag {
  font-weight: var(--fw-semibold);
}
.post-featured__meta span.meta-date {
  font-style: normal;
}
@media only screen and (min-width: 1600px) {
  .post-featured__meta span {
    font-size: 2.2rem;
  }
}

.post-featured__title {
  margin-bottom: 2.3rem;
  color: var(--pt-t-light-bright);
}
.post-featured__title a {
  display: inline;
  color: var(--pt-t-light-bright);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--pt-t-light-bright), var(--pt-t-light-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch .post-featured__title a:hover {
  color: var(--pt-t-light-bright);
  background-size: 0 1px, 100% 1px;
}

.post-featured__excerpt p {
  color: var(--pt-t-light-bright);
}

.post-featured__btn {
  padding-top: 3.3rem;
}

.post-simple {
  display: flex;
  flex-direction: column;
  gap: 5rem;
  height: auto;
  padding: 6rem 0;
  border-top: 1px solid var(--st-muted);
}
.post-simple:last-of-type {
  border-bottom: 1px solid var(--st-muted);
}
@media only screen and (min-width: 768px) {
  .post-simple {
    gap: 3rem;
    flex-direction: row;
    padding: 6rem 0;
  }
}

.post-simple__thumb {
  position: relative;
  display: flex;
  width: 100%;
  height: 340px;
  overflow: hidden;
}
.post-simple__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.no-touch .post-simple__thumb:hover .mxd-preview-hover {
  opacity: 1;
  filter: blur(0);
  backdrop-filter: blur(10px);
}
@media only screen and (min-width: 768px) {
  .post-simple__thumb {
    flex-basis: 260px;
    flex-grow: 0;
    flex-shrink: 0;
  }
}
@media only screen and (min-width: 1400px) {
  .post-simple__thumb {
    flex-basis: 300px;
    height: 320px;
  }
}
@media only screen and (min-width: 1600px) {
  .post-simple__thumb {
    flex-basis: 400px;
    height: 340px;
  }
}

.post-simple__content {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media only screen and (min-width: 768px) {
  .post-simple__content {
    max-width: 665px;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1600px) {
  .post-simple__content {
    max-width: 765px;
  }
}

.post-simple__descr {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.post-simple__meta {
  display: flex;
  flex-wrap: wrap;
  row-gap: 0.4rem;
  column-gap: 1rem;
  color: var(--t-medium);
}
.post-simple__meta span {
  display: flex;
  align-items: center;
  gap: 1rem;
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
}
.post-simple__meta span a {
  color: var(--t-medium);
}
.post-simple__meta span svg {
  width: 1.7rem;
  height: 1.7rem;
  fill: currentColor;
}
.post-simple__meta span.meta-tag {
  font-weight: var(--fw-semibold);
}
.post-simple__meta span.meta-date {
  font-style: normal;
}
.no-touch .post-simple__meta span:hover a {
  color: var(--t-bright);
}

.post-simple__title a {
  display: inline;
  color: var(--t-bright);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .post-simple__title a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}

.post-simple__btn {
  display: block;
}

.post-secondary {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.6rem;
}
@media only screen and (min-width: 768px) {
  .post-secondary {
    gap: 2.9rem;
  }
}

.post-secondary-container {
  padding-bottom: 3.5rem;
}
.post-secondary-container:last-of-type {
  padding-bottom: 0;
}
@media only screen and (min-width: 1200px) {
  .post-secondary-container {
    padding-bottom: 0;
  }
}

.post-secondary__thumb {
  position: relative;
  display: flex;
  overflow: hidden;
  height: 460px;
}
.no-touch .post-secondary__thumb:hover .mxd-preview-hover {
  opacity: 1;
  filter: blur(0);
  backdrop-filter: blur(10px);
}
.post-secondary__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .post-secondary__thumb {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .post-secondary__thumb {
    height: 540px;
  }
}
@media only screen and (min-width: 1600px) {
  .post-secondary__thumb {
    height: 760px;
  }
}

.post-secondary__categories {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 3rem;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .post-secondary__categories {
    padding: 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .post-secondary__categories {
    flex-direction: column;
  }
}

.post-secondary__descr {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0 3rem 0.1rem 3rem;
  gap: 1.6rem;
}
@media only screen and (min-width: 768px) {
  .post-secondary__descr {
    padding: 0 4rem 0.1rem 4rem;
  }
}

.post-secondary__meta {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  row-gap: 0;
  column-gap: 1rem;
  color: var(--t-medium);
}
.post-secondary__meta span {
  display: flex;
  align-items: center;
  gap: 1rem;
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
}
.post-secondary__meta span a {
  color: var(--t-medium);
}
.post-secondary__meta span svg {
  width: 1.7rem;
  height: 1.7rem;
  fill: currentColor;
}
.post-secondary__meta span.meta-tag {
  font-weight: var(--fw-semibold);
}
.post-secondary__meta span.meta-date {
  font-style: normal;
}
.no-touch .post-secondary__meta span:hover a {
  color: var(--t-bright);
}

.post-secondary__title {
  position: relative;
}
.post-secondary__title a {
  display: inline;
  color: var(--t-bright);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .post-secondary__title a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}

.mxd-projects-archive {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-projects-archive > .mxd-projects-archive__item {
    transition: opacity 0.3s ease;
  }
  .mxd-projects-archive:hover > .mxd-projects-archive__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-projects-archive__item {
  position: relative;
  display: block;
  margin-top: -2px;
}
.mxd-projects-archive__item:first-of-type {
  margin-top: 0;
}
@media only screen and (min-width: 1200px) {
  .no-touch .mxd-projects-archive__item:hover .mxd-projects-archive__title {
    transform: translateX(0);
  }
  .no-touch .mxd-projects-archive__item:hover .mxd-projects-archive__image {
    flex-basis: 160px;
    border-radius: 6.2rem;
  }
}

.mxd-projects-archive__border {
  position: relative;
  left: 1.5rem;
  width: calc(100% - 3rem);
  height: 2px;
  background-color: var(--st-muted);
}

.mxd-projects-archive__inner {
  display: block;
  padding: 3rem 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-archive__inner {
    overflow: hidden;
  }
}

.mxd-projects-archive__title {
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-start;
  gap: 3.5rem;
  margin-bottom: 3.4rem;
}
.mxd-projects-archive__title p {
  font: normal var(--fw-medium) 2.6rem/1.4 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-projects-archive__title {
    gap: 3.8rem;
    margin-bottom: 3.8rem;
  }
  .mxd-projects-archive__title p {
    font-size: 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-archive__title {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 3rem;
    height: 100%;
    margin-bottom: 0;
    max-width: 720px;
    transform: translateX(-50px);
    transition: transform var(--_animspeed-slow) var(--_animbezier);
  }
  .mxd-projects-archive__title p {
    display: inline;
    width: 530px;
  }
  .mxd-projects-archive__title p span {
    text-decoration: none;
    background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
    background-size: 100% 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat;
    transition: background-size 300ms, color 300ms;
  }
  .no-touch .mxd-projects-archive__title p span:hover {
    color: var(--t-bright);
    background-size: 0 1px, 100% 1px;
  }
}

.mxd-projects-archive__image {
  display: block;
  border-radius: var(--_radius-m);
  overflow: hidden;
}
.mxd-projects-archive__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-archive__image {
    flex-basis: 20px;
    flex-grow: 0;
    flex-shrink: 0;
    height: 8.4rem;
    border-radius: 0;
    transition: border-radius 1.5s, flex-basis var(--_animspeed-medium) var(--_animbezier);
  }
}

.mxd-projects-archive__tagslist {
  margin-bottom: 0.6rem;
}
.mxd-projects-archive__tagslist ul li p {
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-projects-archive__tagslist {
    margin-bottom: 1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-archive__tagslist {
    margin-bottom: 0;
  }
}

.mxd-blog-pagination {
  position: relative;
  margin-top: 5rem;
  margin-bottom: 2.4rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-blog-pagination {
    margin-bottom: 0;
  }
}

.mxd-blog-pagination__inner {
  position: relative;
}

.mxd-blog-pagination__items {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  font: normal var(--fw-medium) 1.8rem/3.3rem var(--_font-accent);
}

.blog-pagination-control {
  position: absolute;
  top: 0;
}
.blog-pagination-control .btn-caption {
  display: none !important;
}
.blog-pagination-control.prev {
  left: 0;
}
.blog-pagination-control.next {
  right: 0;
}
@media only screen and (min-width: 768px) {
  .blog-pagination-control .btn-caption {
    display: block !important;
  }
}

.blog-pagination-number {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 33px;
  height: 33px;
  font: normal var(--fw-regular) 1.8rem/3.3rem var(--_font-accent);
  color: var(--t-bright);
}
.blog-pagination-number.active {
  font-size: 3rem;
  font-weight: var(--fw-semibold);
}

.mxd-sidebar {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.mxd-sidebar__widget {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  padding: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-sidebar__widget {
    padding: 4rem;
  }
}

.widget__title p {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .widget__title p {
    font-size: 3.6rem;
  }
}

.widget__categories {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.categories__item {
  display: flex;
}

.categories__link {
  font: normal var(--fw-regular) 2.2rem/1.6 var(--_font-accent);
  color: var(--t-bright);
}
.no-touch .categories__link:hover {
  color: var(--t-medium);
}

.widget__recent-posts {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.recent-post__item {
  display: flex;
  gap: 2rem;
}

.recent-post__thumb {
  flex-basis: 120px;
  flex-grow: 0;
  flex-shrink: 0;
  height: 120px;
  border-radius: var(--_radius-s);
  overflow: hidden;
}
.recent-post__thumb a {
  display: block;
}
.recent-post__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(0);
  transform: scale(1);
  transition: filter var(--_animspeed-medium), transform var(--_animspeed-medium) var(--_animbezier);
}
.no-touch .recent-post__thumb:hover img {
  filter: blur(3px);
  transform: scale(1.04);
}

.recent-post__content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.recent-post__title {
  font: normal var(--fw-semibold) 1.8rem/1.4 var(--_font-accent);
  color: var(--t-bright);
}
.recent-post__title a {
  display: inline;
  color: var(--t-bright);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .recent-post__title a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}

.recent-post__meta {
  display: flex;
  flex-wrap: wrap;
  row-gap: 0.4rem;
  column-gap: 1rem;
  color: var(--t-bright);
}
.recent-post__meta span {
  display: flex;
  align-items: center;
  gap: 1rem;
  font: normal var(--fw-regular) 1.6rem/1.6 var(--_font-accent);
}
.recent-post__meta span a {
  color: var(--t-bright);
}
.recent-post__meta span svg {
  width: 1.3rem;
  height: 1.3rem;
  fill: currentColor;
}
.recent-post__meta span.meta-tag {
  font-weight: var(--fw-regular);
}
.recent-post__meta span.meta-date {
  font-style: normal;
}
.no-touch .recent-post__meta span:hover a {
  color: var(--t-medium);
}

.widget__social-links-small {
  position: relative;
}

@media (hover) and (prefers-reduced-motion: no-preference) {
  .widget__social-links-small > .social-links-small__item {
    transition: opacity 0.3s ease;
  }
  .widget__social-links-small:hover > .social-links-small__item:not(:hover) {
    opacity: 0.2;
  }
}

.social-links-small__item {
  position: relative;
  display: block;
  margin-top: -1px;
}
.social-links-small__item:first-of-type {
  margin-top: 0;
}

.social-links-small__divider {
  position: relative;
  width: 100%;
  height: 1px;
  background-color: var(--st-bright);
}

.social-links-small__link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem 0;
  overflow: hidden;
}
.no-touch .social-links-small__link:hover .social-links-small__title {
  transform: translateX(1rem);
}
.no-touch .social-links-small__link:hover .social-links-small__icon i::before {
  animation: 0.6s var(--_animbezier) 0s 1 both slideRightUp;
}

.social-links-small__title {
  position: relative;
  font: normal var(--fw-medium) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  transform: translateX(0);
  transition: transform var(--_animspeed-medium), color var(--_animspeed-medium) var(--_animbezier);
}

.social-links-small__icon {
  position: relative;
  display: flex;
  font-size: 1.8rem;
  transform: translateX(0) rotate(0deg);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.social-links-small__icon i {
  display: inline-flex;
  position: relative;
  overflow: hidden;
  color: var(--t-bright);
  transition: color var(--_animspeed-medium) var(--_animbezier);
}

.widget-ad {
  position: relative;
  width: 100%;
  height: auto;
  padding: 0;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .widget-ad {
    height: 460px;
  }
}

.widget__bgimage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.widget__tags {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1rem;
}

/* ------------------------------------------------*/
/* Block - Blog End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Blog Article Start */
/* ------------------------------------------------*/
.mxd-article-area {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  padding-top: 11.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-article-area {
    padding-top: 15.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-article-area {
    padding-top: 9.2rem;
  }
}

.mxd-article-container {
  position: relative;
  width: 100%;
}

.mxd-article {
  position: relative;
  width: 100%;
}

.mxd-article__headline {
  position: relative;
  width: 100%;
  text-align: center;
  margin-bottom: 7rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-article__headline {
    max-width: 870px;
    margin: 0 auto 10rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-article__headline {
    max-width: 900px;
  }
}

.mxd-article__meta {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  margin-bottom: 1.6rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-article__meta {
    margin-bottom: 1.8rem;
  }
}

.mxd-article__breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}
.mxd-article__breadcrumbs span {
  font: normal var(--fw-regular) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}
.mxd-article__breadcrumbs span::after {
  content: "/";
  display: inline-flex;
  margin-left: 0.2rem;
}
.mxd-article__breadcrumbs span:last-of-type::after {
  display: none;
}
.mxd-article__breadcrumbs span a {
  display: inline;
  color: var(--t-muted);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-muted), var(--t-muted));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch .mxd-article__breadcrumbs span a:hover {
  color: var(--t-medium);
  background-size: 0 1px, 100% 1px;
}
.mxd-article__breadcrumbs span.current-item {
  text-decoration: none;
  background: linear-gradient(to right, var(--t-muted), var(--t-muted));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%;
  background-repeat: no-repeat;
}
.mxd-article__breadcrumbs span.current-item a {
  text-decoration: none;
  background: linear-gradient(to right, var(--t-muted), var(--t-muted)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch .mxd-article__breadcrumbs span.current-item a:hover {
  color: var(--t-medium);
  background-size: 0 1px, 100% 1px;
}

.mxd-article__data {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  row-gap: 0.4rem;
  column-gap: 1rem;
  color: var(--t-bright);
}
.mxd-article__data span {
  display: flex;
  align-items: center;
  gap: 1rem;
  font: normal var(--fw-regular) 1.8rem/1.2 var(--_font-accent);
}
.mxd-article__data span a {
  color: var(--pt-t-light-bright);
}
.mxd-article__data span svg {
  width: 1.3rem;
  height: 1.3rem;
  fill: currentColor;
}
.mxd-article__data span.meta-tag {
  font-weight: var(--fw-semibold);
}
.mxd-article__data span.meta-time {
  font-weight: var(--fw-semibold);
}

.mxd-article__title {
  margin-bottom: 3.3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-article__title {
    margin-bottom: 4.4rem;
  }
}

.mxd-article__tags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
}

.mxd-article__thumb {
  position: relative;
  height: 460px;
  border-radius: var(--_radius-l);
  overflow: hidden;
  margin-bottom: 5.4rem;
}
.mxd-article__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-article__thumb {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-article__thumb {
    height: 760px;
    margin-bottom: 8.3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-article__thumb {
    height: 930px;
    margin-bottom: 8rem;
  }
}

.mxd-article__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6rem;
  width: 100%;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  .mxd-article__content {
    gap: 7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-article__content {
    max-width: 870px;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-article__content {
    max-width: 900px;
  }
}

.mxd-article__block {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  width: 100%;
}
.mxd-article__block.block-table-of-contents {
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  padding: 3rem;
}
.mxd-article__block.block-quote {
  padding: 3rem 0;
  border-top: 1px solid var(--st-muted);
  border-bottom: 1px solid var(--st-muted);
}
.mxd-article__block.block-image {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-article__block.block-table-of-contents {
    padding: 4rem;
  }
  .mxd-article__block.block-image {
    flex-direction: row;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-article__block.block-image {
    flex-direction: row;
  }
}

.table-of-contents__title {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .table-of-contents__title {
    font-size: 3.6rem;
  }
}

.table-of-contents__nav {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}
.table-of-contents__nav li {
  display: flex;
}
.table-of-contents__nav li a {
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}
.no-touch .table-of-contents__nav li a:hover {
  color: var(--t-bright);
}
@media only screen and (min-width: 1600px) {
  .table-of-contents__nav li a {
    font-size: 2.2rem;
  }
}

.quote__text {
  font: normal var(--fw-regular) 3rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
  .quote__text {
    font-size: 3.6rem;
  }
}

.quote__cite {
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}
@media only screen and (min-width: 1600px) {
  .quote__cite {
    font-size: 2.2rem;
  }
}

.mxd-article__content ol {
  list-style: decimal inside;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
}
.mxd-article__content ol:not(:has(ol, ul)) {
  gap: 0;
}
.mxd-article__content ol li {
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}
.mxd-article__content ol li span {
  font-weight: var(--fw-semibold);
  color: var(--t-bright);
}
.mxd-article__content ol ul {
  gap: 0;
  padding-inline-start: 2.4rem;
  margin-top: 1rem;
}
.mxd-article__content ul {
  list-style: disc inside;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
}
.mxd-article__content ul:not(:has(ol, ul)) {
  gap: 0;
}
.mxd-article__content ul li {
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}
.mxd-article__content ul li span {
  font-weight: var(--fw-semibold);
  color: var(--t-bright);
}
.mxd-article__content ul ol,
.mxd-article__content ul ul {
  gap: 0;
  padding-inline-start: 2.4rem;
  margin-top: 1rem;
}
@media only screen and (min-width: 1600px) {
  .mxd-article__content ol li {
    font-size: 2.2rem;
  }
  .mxd-article__content ol ul {
    padding-inline-start: 2.8rem;
  }
  .mxd-article__content ul li {
    font-size: 2.2rem;
  }
  .mxd-article__content ul ol,
  .mxd-article__content ul ul {
    padding-inline-start: 2.8rem;
  }
}

.block-image__container {
  position: relative;
  border-radius: var(--_radius-m);
  overflow: hidden;
}

.block-image__tags {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1rem;
}

.mxd-article-author {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  width: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  padding: 3rem;
  margin-top: 6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-article-author {
    padding: 4rem;
    margin-top: 7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-article-author {
    max-width: 870px;
    margin: 7rem auto 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-article-author {
    max-width: 900px;
  }
}

.mxd-article-author__data {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-article-author__data {
    flex-direction: row;
    align-items: stretch;
    gap: 3rem;
  }
}

.mxd-article-author__avatar {
  display: flex;
  flex-basis: 100px;
  flex-grow: 0;
  flex-shrink: 0;
  width: 10rem;
  height: 10rem;
  border-radius: var(--_radius-pt-m);
  overflow: hidden;
}
.mxd-article-author__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-article-author__avatar {
    flex-basis: 120px;
    height: 12rem;
  }
}

.mxd-article-author__info {
  display: flex;
  flex-direction: column;
}

.mxd-article-author__name a {
  display: inline-flex;
}

.mxd-article-author__position {
  line-height: 1.4;
}

.mxd-article-author__socials {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  flex-wrap: wrap;
  row-gap: 0.4rem;
  column-gap: 1rem;
  margin-top: 2.2rem;
}

.mxd-article-navigation {
  position: relative;
  margin-top: 6rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid var(--st-muted);
}
@media only screen and (min-width: 768px) {
  .mxd-article-navigation {
    margin-top: 7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-article-navigation {
    max-width: 870px;
    margin: 7rem auto 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-article-navigation {
    max-width: 900px;
  }
}

.mxd-article-navigation__navitem {
  display: flex;
  flex-direction: column;
}
.mxd-article-navigation__navitem.left {
  align-items: flex-start;
  padding-right: 1.5rem;
}
.mxd-article-navigation__navitem.right {
  align-items: flex-end;
  padding-left: 1.5rem;
  text-align: right;
}

.mxd-article-navigation__link {
  display: block;
  font: normal var(--fw-medium) 2.2rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin-top: 0.5rem;
}
.mxd-article-navigation__link span {
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .mxd-article-navigation__link span:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}

.mxd-article-comments {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6rem;
  width: 100%;
  margin-top: 6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-article-comments {
    gap: 7rem;
    margin-top: 7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-article-comments {
    max-width: 870px;
    margin: 7rem auto 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-article-comments {
    max-width: 900px;
  }
}

.mxd-article-comments__container,
.mxd-article-comments__respond {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.mxd-article-comments__list {
  position: relative;
  width: 100%;
}
.mxd-article-comments__list ul {
  display: flex;
  flex-direction: column;
}

.mxd-comment__main .mxd-comment {
  display: block;
}

.mxd-comment {
  margin-top: -1px;
  border-top: 1px solid var(--st-muted);
}
.mxd-comment:last-of-type {
  border-bottom: 1px solid var(--st-muted);
}

.mxd-comment__children {
  padding-left: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-comment__children {
    padding-left: 13rem;
  }
}

.mxd-comment__container {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 3rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-comment__container {
    flex-direction: row;
    gap: 3rem;
  }
}

.mxd-comment__avatar {
  display: flex;
  flex-basis: 100px;
  flex-grow: 0;
  flex-shrink: 0;
  width: 10rem;
  height: 10rem;
  border-radius: var(--_radius-pt-m);
  overflow: hidden;
  margin-bottom: 0.6rem;
}
.mxd-comment__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-comment__avatar {
    margin-bottom: 0;
  }
}

.mxd-comment__content {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-comment__content {
    gap: 1.3rem;
  }
}

.mxd-comment__info {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.mxd-comment__reply {
  margin-top: 0.9rem;
}

/* ------------------------------------------------*/
/* Block - Blog Article End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - 404 Error Start */
/* ------------------------------------------------*/
.mxd-error {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  overflow: hidden;
  padding: 2rem 0 3rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-error {
    padding: 3rem 0 4rem 0;
  }
}

.mxd-error__descr,
.mxd-error__controls {
  position: relative;
  z-index: 1;
}

@media only screen and (min-width: 1200px) {
  .marquee-error {
    margin-top: -4rem;
  }
}

/* ------------------------------------------------*/
/* Block - 404 Error End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo List Start */
/* ------------------------------------------------*/
.mxd-demo-list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  padding-top: 12.9rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-list {
    gap: 6rem;
    padding-top: 14.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-list {
    padding-top: 18.2rem;
  }
}

.mxd-demo-list__row {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-list__row {
    gap: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-list__row {
    flex-direction: row;
  }
}

.mxd-demo-list__item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  border: 1px solid var(--st-muted);
  box-shadow: 0 6px 14px rgba(7, 1, 23, 0), 4px 10px 38px rgba(13, 2, 46, 0);
  transition: box-shadow var(--_animspeed-medium) var(--_animbezier);
}
.no-touch .mxd-demo-list__item:hover {
  box-shadow: 0 14px 28px rgba(var(--accent-rgb), 0.25), 0 10px 10px rgba(var(--accent-rgb), 0.12);
}
.no-touch .mxd-demo-list__item:hover .mxd-demo-list__screen {
  transform: scale(1.014);
}
.mxd-demo-list__item.empty-item {
  padding: 5.6rem 3.1rem;
  border: 1px solid var(--base-tint);
}
.no-touch .mxd-demo-list__item.empty-item:hover {
  box-shadow: none;
}
.mxd-demo-list__item.item-accent {
  background-color: var(--accent);
  border: 1px solid var(--accent);
}
@media only screen and (min-width: 768px) {
  .mxd-demo-list__item.empty-item {
    padding: 5.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-list__item.empty-item {
    padding: 3rem;
  }
}

.empty-item__wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .empty-item__wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
}

.empty-item__logo {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.empty-item__logo svg {
  display: inline-flex;
  width: 8rem;
  height: 8rem;
}

.empty-item__caption {
  font: normal var(--fw-medium) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-medium);
  padding-top: 1.1rem;
}
@media only screen and (min-width: 768px) {
  .empty-item__caption {
    font-size: 2.2rem;
    padding-top: 2.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .empty-item__caption {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .empty-item__caption {
    font-size: 2.2rem;
  }
}

.mxd-demo-list__image {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 1rem;
}
.mxd-demo-list__image.image-placeholder {
  display: none;
}
.mxd-demo-list__image img {
  opacity: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-list__image {
    border-radius: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-list__image.image-placeholder {
    display: block;
  }
}

.mxd-demo-list__screen {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
.mxd-demo-list__screen.screen-01 {
  background-image: var(--bg-demo-screen-01);
}
.mxd-demo-list__screen.screen-02 {
  background-image: var(--bg-demo-screen-02);
}
.mxd-demo-list__screen.screen-03 {
  background-image: var(--bg-demo-screen-03);
}
.mxd-demo-list__screen.screen-04 {
  background-image: var(--bg-demo-screen-04);
}
.mxd-demo-list__screen.screen-05 {
  background-image: var(--bg-demo-screen-05);
}
.mxd-demo-list__screen.screen-06 {
  background-image: var(--bg-demo-screen-06);
}
.mxd-demo-list__screen.screen-07 {
  background-image: var(--bg-demo-screen-07);
}
.mxd-demo-list__screen.screen-08 {
  background-image: var(--bg-demo-screen-08);
}
.mxd-demo-list__screen.screen-09 {
  background-image: var(--bg-demo-screen-09);
}

.mxd-demo-list__caption {
  display: flex;
  justify-content: space-between;
  padding: 1rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-list__caption {
    padding: 1rem 1.6rem;
  }
}

.mxd-demo-list__link {
  font: normal var(--fw-medium) 1.8rem/1.4 var(--_font-accent);
  color: var(--t-bright);
}
.mxd-demo-list__link.opposite {
  color: var(--t-opp-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-demo-list__link {
    font-size: 2.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-list__link.small {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-list__link {
    font-size: 3rem;
  }
  .mxd-demo-list__link.small {
    font-size: 2.2rem;
  }
}

.mxd-demo-list__num {
  font: normal var(--fw-medium) 1.8rem/1.4 var(--_font-accent);
  color: var(--accent);
}
.mxd-demo-list__num.opposite {
  color: var(--t-opp-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-demo-list__num {
    font-size: 2.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-list__num.small {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-list__num {
    font-size: 3rem;
  }
  .mxd-demo-list__num.small {
    font-size: 2.2rem;
  }
}

/* ------------------------------------------------*/
/* Block - Demo List End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo Cards Start */
/* ------------------------------------------------*/
.mxd-demo-cards {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-cards {
    flex-direction: row;
    gap: 6rem;
  }
}

.mxd-demo-cards__item {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 5rem;
  background-color: var(--base-tint);
  box-shadow: var(--card-shadow);
  border-radius: var(--_radius-l);
  overflow: hidden;
  margin-top: 3rem;
}
.mxd-demo-cards__item.card-item-left {
  padding-top: 4rem;
}
.mxd-demo-cards__item.card-item-right {
  padding-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-cards__item {
    gap: 5rem;
  }
  .mxd-demo-cards__item.card-item-left {
    padding-top: 6rem;
  }
  .mxd-demo-cards__item.card-item-right {
    padding-bottom: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-cards__item {
    justify-content: space-between;
    gap: 6rem;
    width: calc(50% - 3rem);
    height: 760px;
  }
  .mxd-demo-cards__item.card-item-left, .mxd-demo-cards__item.card-item-right {
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-cards__item {
    height: 930px;
  }
  .mxd-demo-cards__item.card-item-left {
    padding-top: 8rem;
  }
  .mxd-demo-cards__item.card-item-right {
    padding-bottom: 8rem;
  }
}

.mxd-demo-card__gradient {
  position: absolute;
  top: -50%;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  width: 600px;
  height: 600px;
  z-index: 0;
}
.mxd-demo-card__gradient svg {
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-card__gradient {
    width: 800px;
    height: 800px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-card__gradient {
    width: 1000px;
    height: 1000px;
  }
}

.mxd-demo-cards__image {
  position: relative;
  margin: 0 auto;
}
.mxd-demo-cards__image.card-image-padding {
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-cards__image.card-image-padding {
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-cards__image.card-image-fullwidth {
    max-height: none;
  }
  .mxd-demo-cards__image.card-image-padding {
    max-width: 610px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-cards__image.card-image-padding {
    padding: 0 8rem;
    max-width: none;
  }
}

.mxd-demo-cards__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 5rem;
  text-align: center;
  padding: 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-cards__content {
    gap: 5rem;
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-cards__content {
    gap: 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-cards__content {
    gap: 6.8rem;
    padding: 0 8rem;
  }
}

.mxd-demo-cards__descr p {
  max-width: 420px;
  margin: 0 auto;
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-cards__descr p {
    max-width: 600px;
  }
}

.mxd-demo-cards__title {
  margin-bottom: 3rem;
}
.mxd-demo-cards__title a {
  color: var(--t-bright);
}
.no-touch .mxd-demo-cards__title a:hover {
  color: var(--accent);
}

.mxd-demo-cards__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  margin-bottom: 2.8rem;
}

.mxd-demo-cards__icons {
  position: relative;
  display: flex;
  justify-content: center;
  row-gap: 3rem;
  column-gap: 1.5rem;
  flex-wrap: wrap;
}
.mxd-demo-cards__icons.justify-start-desktop {
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-cards__icons {
    gap: 3rem;
    flex-wrap: nowrap;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-cards__icons.justify-start-desktop {
    justify-content: flex-start;
  }
}

.demo-icons__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  flex-basis: 7rem;
  flex-grow: 0;
  flex-shrink: 0;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .demo-icons__item {
    flex-basis: 8.4rem;
    max-width: 8.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .demo-icons__item {
    flex-basis: 6.4rem;
    max-width: 6.4rem;
  }
}
@media only screen and (min-width: 1400px) {
  .demo-icons__item {
    flex-basis: 7.8rem;
    max-width: 7.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .demo-icons__item {
    flex-basis: 8.4rem;
    max-width: 8.4rem;
  }
}

.demo-icons__icon {
  position: relative;
  width: 7rem;
  height: 7rem;
}
.demo-icons__icon svg {
  display: block;
  width: 100%;
  height: auto;
}
.demo-icons__icon svg path {
  fill: var(--accent);
  stroke: var(--accent);
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.demo-icons__icon i {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  font-size: 3rem;
  color: var(--t-opp-bright);
}
.demo-icons__icon.transparent svg path {
  fill: none;
  stroke: var(--st-medium);
}
.demo-icons__icon.transparent i {
  color: var(--t-muted);
}
@media only screen and (min-width: 768px) {
  .demo-icons__icon {
    width: 100%;
    height: auto;
  }
  .demo-icons__icon i {
    font-size: 3.7rem;
  }
}

.demo-icons__caption {
  font: normal var(--fw-regular) 1.4rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 1600px) {
  .demo-icons__caption {
    font-size: 1.6rem;
    white-space: nowrap;
  }
}

/* ------------------------------------------------*/
/* Block - Demo Cards End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo Responsive Promo Start */
/* ------------------------------------------------*/
.mxd-resp-promo,
.mxd-resp-promo__item {
  position: relative;
}

.mxd-resp-promo {
  padding-top: 12.3rem;
  padding-bottom: 9.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-resp-promo {
    padding-top: 14rem;
    padding-bottom: 8.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-resp-promo {
    padding-top: 20rem;
    padding-bottom: 11.7rem;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-resp-promo__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

.mxd-resp-promo__content {
  margin-bottom: 5.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-resp-promo__content {
    max-width: 800px;
    margin: 0 auto 5.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-resp-promo__content {
    max-width: 700px;
    margin: 0;
    padding-bottom: 1.7rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-resp-promo__content {
    padding-bottom: 5rem;
  }
}

.mxd-resp-promo__manifest {
  margin-bottom: 4.6rem;
  text-align: center;
}
.mxd-resp-promo__manifest p {
  font: normal var(--fw-regular) 2.8rem/1.6 var(--_font-accent);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-resp-promo__manifest p {
    font-size: 3.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-resp-promo__manifest {
    margin-bottom: 5.6rem;
    text-align: left;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-resp-promo__manifest {
    margin-bottom: 6.2rem;
  }
  .mxd-resp-promo__manifest p {
    font-size: 4rem;
  }
}

.mxd-resp-promo__image {
  padding-left: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-resp-promo__image {
    padding-left: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-resp-promo__image {
    padding-left: 0;
  }
}

/* ------------------------------------------------*/
/* Block - Demo Responsive Promo End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo Inner Pages Slider Start */
/* ------------------------------------------------*/
.mxd-demo-swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  overflow: clip;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
  user-select: none;
  box-sizing: border-box;
  overflow: hidden;
  width: 100%;
  height: auto;
  padding: 0;
}
.no-touch .mxd-demo-swiper .swiper-slide-active:hover .demo-swiper-slide__image {
  box-shadow: 0 14px 28px rgba(var(--accent-rgb), 0.25), 0 10px 10px rgba(var(--accent-rgb), 0.12);
}
.mxd-demo-swiper .swiper-slide-next,
.mxd-demo-swiper .swiper-slide-prev {
  transform: scale(0.96);
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}

.mxd-demo-swiper__slide {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  height: auto;
  box-sizing: border-box;
}

.demo-swiper-slide__image {
  padding: 1rem;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  border: 1px solid var(--st-muted);
  box-shadow: 0 6px 14px rgba(7, 1, 23, 0), 4px 10px 38px rgba(13, 2, 46, 0);
  transition: box-shadow var(--_animspeed-medium) var(--_animbezier);
}
.demo-swiper-slide__image img {
  border-radius: 1rem;
}
@media only screen and (min-width: 768px) {
  .demo-swiper-slide__image img {
    border-radius: 2rem;
  }
}

.demo-swiper-slide__descr {
  display: flex;
  justify-content: center;
  width: 100%;
  text-align: center;
  overflow: hidden;
  margin-top: 3rem;
}
.demo-swiper-slide__descr a {
  display: inline-flex;
  font: normal var(--fw-medium) 2.2rem/4rem var(--_font-accent);
  color: var(--t-bright);
}
.demo-swiper-slide__descr a span {
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .demo-swiper-slide__descr a span:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}
@media only screen and (min-width: 768px) {
  .demo-swiper-slide__descr a {
    font-size: 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .demo-swiper-slide__descr a {
    font-size: 3.6rem;
  }
}

/* ------------------------------------------------*/
/* Block - Demo Inner Pages Slider End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo Components Start */
/* ------------------------------------------------*/
.mxd-demo-components {
  position: relative;
  padding-top: 6.5rem;
  padding-bottom: 8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-components {
    padding-top: 5.6rem;
    padding-bottom: 7.7rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-components {
    padding-top: 6.8rem;
    padding-bottom: 9.1rem;
  }
}

.mxd-demo-components__title {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.mxd-demo-components__title span {
  font: normal var(--fw-medium) 5rem/1.1 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-demo-components__title span {
    font-size: 8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-components__title span {
    font-size: 10rem;
  }
}

.mxd-demo-components__objects {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.mxd-demo-components__object {
  position: absolute;
  height: auto;
}
.mxd-demo-components__object.obj-01 {
  top: -110px;
  right: 60px;
  width: 140px;
}
.mxd-demo-components__object.obj-02 {
  bottom: 0;
  right: 0;
  width: 80px;
}
.mxd-demo-components__object.obj-03 {
  bottom: -140px;
  left: 0;
  width: 200px;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-components__object.obj-01 {
    top: -120px;
    right: 60px;
    width: 150px;
  }
  .mxd-demo-components__object.obj-02 {
    bottom: 0;
    right: 0;
    width: 80px;
  }
  .mxd-demo-components__object.obj-03 {
    bottom: -140px;
    left: 0;
    width: 220px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-components__object.obj-01 {
    top: -180px;
    right: 80px;
    width: 270px;
  }
  .mxd-demo-components__object.obj-02 {
    bottom: 1rem;
    right: 0;
    width: 120px;
  }
  .mxd-demo-components__object.obj-03 {
    bottom: -200px;
    left: 10px;
    width: 340px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-components__object.obj-01 {
    top: -220px;
    right: 100px;
    width: 360px;
  }
  .mxd-demo-components__object.obj-02 {
    bottom: 3rem;
    right: 0;
    width: 160px;
  }
  .mxd-demo-components__object.obj-03 {
    bottom: -270px;
    left: 10px;
    width: 460px;
  }
}

/* ------------------------------------------------*/
/* Block - Demo Components End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo Features Start */
/* ------------------------------------------------*/
.mxd-features-promo,
.mxd-features-promo__item {
  position: relative;
}

.mxd-features-promo {
  padding-top: 9rem;
  padding-bottom: 10.8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-features-promo {
    padding-top: 10.9rem;
    padding-bottom: 12.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-features-promo {
    padding-top: 12.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-features-promo {
    padding-top: 17rem;
    padding-bottom: 16.4rem;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-features-promo__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

.mxd-features-promo__content {
  margin-bottom: 5rem;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .mxd-features-promo__content {
    max-width: 600px;
    margin: 0 auto 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-features-promo__content {
    max-width: 700px;
    margin: 0;
    padding-bottom: 1.7rem;
    text-align: left;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-features-promo__content {
    padding-bottom: 3.2rem;
  }
}

.mxd-features-promo__image {
  padding-left: 0;
}

.mxd-features-cards {
  position: relative;
}

.mxd-features-cards__teaser {
  display: flex;
  justify-content: center;
  padding-top: 0.2rem;
  color: var(--t-muted);
}
.mxd-features-cards__teaser .mxd-point-subtitle {
  color: var(--t-medium);
}
.mxd-features-cards__teaser .mxd-point-subtitle span {
  font-weight: var(--fw-medium);
  color: var(--t-medium);
}
@media only screen and (min-width: 1600px) {
  .mxd-features-cards__teaser {
    padding-top: 1.2rem;
  }
  .mxd-features-cards__teaser .mxd-point-subtitle {
    font-size: 2.5rem;
  }
}

.mxd-features-cards__item {
  position: relative;
  height: 500px;
}
.mxd-features-cards__item .mxd-features-cards__title,
.mxd-features-cards__item .mxd-features-cards__info {
  width: 90%;
}
@media only screen and (min-width: 768px) {
  .mxd-features-cards__item {
    height: 460px;
  }
  .mxd-features-cards__item .mxd-features-cards__title,
  .mxd-features-cards__item .mxd-features-cards__info {
    width: 60%;
    max-width: 500px;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-features-cards__item .mxd-features-cards__title,
  .mxd-features-cards__item .mxd-features-cards__info {
    width: 40%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-features-cards__item .mxd-features-cards__title,
  .mxd-features-cards__item .mxd-features-cards__info {
    width: 100%;
    max-width: none;
  }
  .mxd-features-cards__item.features-item-01 .mxd-features-cards__title,
  .mxd-features-cards__item.features-item-01 .mxd-features-cards__info {
    width: 40%;
  }
  .mxd-features-cards__item.features-item-01 .mxd-features-cards__info {
    max-width: 400px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-features-cards__item {
    height: 600px;
  }
}

.mxd-features-cards__inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.mxd-features-cards__inner.justify-end {
  justify-content: flex-end;
}
@media only screen and (min-width: 768px) {
  .mxd-features-cards__inner.justify-end {
    justify-content: flex-end;
  }
  .mxd-features-cards__inner.justify-between {
    justify-content: space-between;
  }
}

.mxd-features-cards__title,
.mxd-features-cards__info {
  position: relative;
  z-index: 1;
}

.mxd-features-cards__title {
  margin-bottom: 2.8rem;
}
.mxd-features-cards__title h3 {
  font-size: 3.6rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-features-cards__title {
    z-index: 1;
  }
  .mxd-features-cards__title h3 {
    font-size: 3.6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-features-cards__title h3 {
    font-size: 5rem;
  }
}

.mxd-features-cards__info p {
  font-size: 1.6rem;
}
@media only screen and (min-width: 1600px) {
  .mxd-features-cards__info p {
    font-size: 2.2rem;
  }
}

.mxd-features-cards__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2.6rem;
}

.mxd-features-cards__image {
  position: absolute;
  height: auto;
}
.mxd-features-cards__image.features-image-01 {
  bottom: 0;
  right: 0;
  width: 68%;
}
.mxd-features-cards__image.features-image-02 {
  top: 0;
  right: 0;
  width: 68%;
}
.mxd-features-cards__image.features-image-03 {
  bottom: 0;
  right: 3rem;
  width: 78%;
}
.mxd-features-cards__image.features-image-04 {
  bottom: 0;
  right: 3rem;
  width: 78%;
}
.mxd-features-cards__image.features-image-05 {
  top: 4rem;
  right: 1.5rem;
  width: 68%;
}
@media only screen and (min-width: 768px) {
  .mxd-features-cards__image.features-image-01 {
    width: 50%;
  }
  .mxd-features-cards__image.features-image-02 {
    width: 50%;
  }
  .mxd-features-cards__image.features-image-03 {
    right: 4rem;
    width: 50%;
  }
  .mxd-features-cards__image.features-image-04 {
    right: 4rem;
    width: 50%;
  }
  .mxd-features-cards__image.features-image-05 {
    width: 50%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-features-cards__image.features-image-01 {
    width: 58%;
  }
  .mxd-features-cards__image.features-image-02 {
    width: 70%;
  }
  .mxd-features-cards__image.features-image-03 {
    right: auto;
    left: 4rem;
    width: calc(100% - 8rem);
  }
  .mxd-features-cards__image.features-image-04 {
    right: auto;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: 78%;
  }
  .mxd-features-cards__image.features-image-05 {
    width: 68%;
  }
}

.mxd-features-cards__gradient {
  position: absolute;
  width: 600px;
  height: 600px;
  z-index: 0;
}
.mxd-features-cards__gradient svg {
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 768px) {
  .mxd-features-cards__gradient {
    width: 800px;
    height: 800px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-features-cards__gradient {
    width: 1000px;
    height: 1000px;
  }
  .mxd-features-cards__gradient.features-gradient-01 {
    bottom: -300px;
    right: -200px;
    width: 900px;
    height: 900px;
  }
  .mxd-features-cards__gradient.features-gradient-02 {
    top: -340px;
    right: -200px;
    width: 700px;
    height: 700px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-features-cards__gradient {
    width: 1000px;
    height: 1000px;
  }
  .mxd-features-cards__gradient.features-gradient-01 {
    bottom: -300px;
    right: -200px;
    width: 1000px;
    height: 1000px;
  }
  .mxd-features-cards__gradient.features-gradient-02 {
    top: -400px;
    right: -260px;
    width: 900px;
    height: 900px;
  }
}

/* ------------------------------------------------*/
/* Block - Demo Features End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo CTA Start */
/* ------------------------------------------------*/
.mxd-demo-cta {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 11.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-cta {
    padding-top: 13.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-cta {
    padding-top: 16.5rem;
  }
}

.mxd-demo-cta__caption {
  position: relative;
  text-align: center;
}
.mxd-demo-cta__caption h2 {
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-cta__caption h2 {
    max-width: 600px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-cta__caption h2 {
    max-width: 860px;
  }
}

.mxd-demo-cta__btn {
  margin-top: 5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-cta__btn {
    margin-top: 5.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-cta__btn {
    margin-top: 6.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-cta__btn {
    margin-top: 6.7rem;
  }
}

/* ------------------------------------------------*/
/* Block - Demo CTA End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Demo Footer Start */
/* ------------------------------------------------*/
.mxd-demo-footer {
  position: relative;
}

.mxd-demo-footer__bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 0;
}

.mxd-demo-footer__item {
  margin: 0 0 4.4rem 0;
}
.mxd-demo-footer__item:last-of-type {
  margin: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-footer__item {
    margin: 0;
  }
}

.mxd-demo-footer__logo {
  margin-bottom: 2.3rem;
}

.mxd-demo-footer__slogan {
  margin-bottom: 3.4rem;
  max-width: 300px;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-footer__slogan {
    max-width: 460px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-footer__slogan {
    max-width: 340px;
  }
}

.mxd-demo-footer__btn {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 0.6rem;
}
.mxd-demo-footer__btn.centered {
  justify-content: center;
}
@media only screen and (min-width: 576px) {
  .mxd-demo-footer__btn {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1.6rem;
  }
}

.mxd-demo-footer__nav {
  display: block;
}

.mxd-footer-nav__item {
  display: flex;
  flex-direction: column;
  margin: 0 0 4.4rem 0;
}
.mxd-footer-nav__item:last-of-type {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-footer-nav__item {
    margin: 0;
  }
}

.mxd-footer-nav__block {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin: 0 0 4.4rem 0;
}
.mxd-footer-nav__block:last-of-type {
  margin: 0;
}

.mxd-footer-nav__title {
  display: block;
}

.mxd-footer-nav__list ul {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.mxd-footer-nav__list ul li {
  display: block;
  font: normal var(--fw-regular) 1.6rem/1.4 var(--_font-accent);
}
.mxd-footer-nav__list ul li a {
  display: inline-block;
  color: var(--t-medium);
}
.no-touch .mxd-footer-nav__list ul li a:hover {
  color: var(--accent);
  transform: translateX(0.4rem);
}
@media only screen and (min-width: 1600px) {
  .mxd-footer-nav__list ul li {
    font-size: 1.8rem;
  }
}

.mxd-demo-footer__promo {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

.mxd-footer-promo__title {
  display: block;
  margin: 0;
}

.mxd-footer-promo__list {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.mxd-footer-promo__item {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  transition: transform var(--_animspeed-medium);
}
.no-touch .mxd-footer-promo__item:hover {
  transform: translateX(0.4rem);
}
.no-touch .mxd-footer-promo__item:hover .mxd-footer-promo__link {
  color: var(--accent);
}
@media only screen and (min-width: 768px) {
  .mxd-footer-promo__item {
    max-width: 360px;
  }
}

.mxd-footer-promo__icon {
  width: 4.6rem;
  height: 4.6rem;
}
.mxd-footer-promo__icon img {
  width: 4.6rem;
  height: 4.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-footer-promo__icon {
    width: 5.6rem;
    height: 5.6rem;
  }
  .mxd-footer-promo__icon img {
    width: 5.6rem;
    height: 5.6rem;
  }
}

.mxd-footer-promo__link {
  font: normal var(--fw-regular) 1.6rem/1.4 var(--_font-accent);
  color: var(--t-medium);
  transition: color var(--_animspeed-medium);
}
@media only screen and (min-width: 1600px) {
  .mxd-footer-promo__link {
    font-size: 1.8rem;
  }
}

.mxd-demo-footer__mixdesign {
  display: flex;
  position: relative;
  bottom: 0;
  padding-top: 11.4rem;
  color: var(--t-bright);
  overflow: hidden;
}
.mxd-demo-footer__mixdesign a,
.mxd-demo-footer__mixdesign svg {
  display: block;
}
.mxd-demo-footer__mixdesign a {
  width: 100%;
  color: var(--t-bright);
}
.mxd-demo-footer__mixdesign svg {
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .mxd-demo-footer__mixdesign {
    padding-top: 10.6rem;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-demo-footer__mixdesign {
    padding-top: 8.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-demo-footer__mixdesign {
    padding-top: 7rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-demo-footer__mixdesign {
    padding-top: 5.3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-demo-footer__mixdesign {
    padding-top: 5rem;
  }
}

/* ------------------------------------------------*/
/* Block - Demo Footer End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - Authentication Start */
/* ------------------------------------------------*/
.auth-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  background-color: var(--base);
  position: relative;
  overflow-x: hidden;
}
@media only screen and (min-width: 768px) {
  .auth-page {
    padding: 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .auth-page {
    padding: 6rem;
  }
}

.auth-container {
  position: relative;
  width: 100%;
  max-width: 480px;
  background-color: var(--base);
  border-radius: 2.4rem;
  padding: 3.2rem;
  border: 1px solid var(--st-muted-bright);
  box-shadow: 0 32px 64px rgba(0, 0, 0, 0.08);
}
@media only screen and (min-width: 768px) {
  .auth-container {
    padding: 4.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .auth-container {
    padding: 5.6rem 6rem;
  }
}

.auth-header {
  text-align: center;
  margin-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .auth-header {
    margin-bottom: 4.8rem;
  }
}

.auth-title {
  font: normal var(--fw-medium) 3.2rem/1.1 var(--_font-accent);
  color: var(--t-bright);
  margin-bottom: 1.2rem;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 768px) {
  .auth-title {
    font-size: 3.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .auth-title {
    font-size: 4.2rem;
  }
}

.auth-subtitle {
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-medium);
}
@media only screen and (min-width: 768px) {
  .auth-subtitle {
    font-size: 1.8rem;
  }
}

.auth-form {
  position: relative;
  width: 100%;
}

.form-group {
  position: relative;
  margin-bottom: 2.4rem;
}

.form-label {
  display: block;
  font: normal var(--fw-medium) 1.5rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .form-label {
    font-size: 1.6rem;
  }
}

.form-input {
  position: relative;
  display: block;
  width: 100%;
  height: 5rem;
  padding: 1rem 1.8rem;
  border: 1px solid var(--st-muted-bright);
  border-radius: 1.2rem;
  background-color: transparent;
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-bright);
  transition: all 0.3s ease;
  outline: none;
}
@media only screen and (min-width: 768px) {
  .form-input {
    height: 5.6rem;
    font-size: 1.8rem;
  }
}
.form-input:focus {
  background-color: var(--base);
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1);
}
.form-input::placeholder {
  color: var(--t-muted);
  opacity: 0.7;
}
.form-input.error {
  border-color: #ff4757;
  background-color: rgba(255, 71, 87, 0.05);
}
.form-input.error:focus {
  box-shadow: 0 0 0 4px rgba(255, 71, 87, 0.1);
}

.form-input-group {
  position: relative;
}
.form-input-group .form-input {
  padding-right: 4.4rem;
}
@media only screen and (min-width: 768px) {
  .form-input-group .form-input {
    padding-right: 5rem;
  }
}

.input-icon {
  position: absolute;
  right: 1.6rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 2rem;
  color: var(--t-muted);
  pointer-events: none;
  transition: color 0.3s ease;
}
@media only screen and (min-width: 768px) {
  .input-icon {
    right: 1.8rem;
    font-size: 2.2rem;
  }
}

.form-input:focus ~ .input-icon {
  color: var(--t-bright);
}

.password-toggle {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0.8rem;
  cursor: pointer;
  color: var(--t-muted);
  transition: color 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.password-toggle i {
  font-size: 2rem;
}
@media only screen and (min-width: 768px) {
  .password-toggle i {
    font-size: 2.2rem;
  }
}
.password-toggle:hover {
  color: var(--t-bright);
}

.form-checkbox-group {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.form-checkbox {
  position: relative;
  width: 2rem;
  height: 2rem;
  border: 1px solid var(--st-muted-bright);
  border-radius: 0.2rem;
  background-color: transparent;
  cursor: pointer;
  transition: all 0.3s ease;
  appearance: none;
}
.form-checkbox:checked {
  background-color: var(--brand-orange);
  border-color: var(--brand-orange);
}
.form-checkbox:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%) rotate(45deg);
  width: 0.6rem;
  height: 1rem;
  border: solid white;
  border-width: 0 2px 2px 0;
}

.form-checkbox-label {
  font: normal var(--fw-regular) 1.5rem/1.2 var(--_font-accent);
  color: var(--t-medium);
  cursor: pointer;
  user-select: none;
  transition: color 0.3s ease;
}
.form-checkbox-label:hover {
  color: var(--t-bright);
}

.form-error {
  display: none;
  font: normal var(--fw-regular) 1.3rem/1.4 var(--_font-accent);
  color: #ff4757;
  margin-top: 0.8rem;
  padding-left: 0.4rem;
}
.form-error.visible {
  display: block;
}

.auth-submit-btn {
  position: relative;
  width: 100%;
  height: 5.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.2rem;
  flex-wrap: nowrap;
  white-space: nowrap;
  padding: 0 2.4rem;
  border: none;
  border-radius: 2.8rem;
  background-color: var(--brand-orange);
  font: normal var(--fw-medium) 1.8rem/1.2 var(--_font-accent);
  color: #fff;
  cursor: pointer;
  transition: all 0.3s ease;
  overflow: hidden;
  margin-top: 1.6rem;
}
.auth-submit-btn i {
  display: inline-flex;
  position: relative;
  font-size: 2rem;
  line-height: 1;
  flex: 0 0 auto;
}
.auth-submit-btn .btn-caption {
  display: inline-flex;
  position: relative;
  white-space: nowrap;
}
.auth-submit-btn:hover:not(:disabled) {
  background-color: #E0541E;
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(232, 93, 37, 0.25);
}
.auth-submit-btn:active {
  transform: translateY(0);
}
.auth-submit-btn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.auth-page .form-button.is-visible {
  display: flex;
}

.auth-links {
  text-align: center;
  margin-top: 3.2rem;
}
.auth-links.centered {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
}
.auth-links p {
  font-size: 1.5rem;
  color: var(--t-muted);
  margin: 0;
}

.auth-link {
  font: normal var(--fw-medium) 1.5rem/1.2 var(--_font-accent);
  color: var(--t-medium);
  text-decoration: none;
  transition: color 0.3s ease;
}
.auth-link:hover {
  color: var(--brand-orange);
}
@media only screen and (min-width: 768px) {
  .auth-link {
    font-size: 1.6rem;
  }
}

.auth-divider {
  position: relative;
  text-align: center;
  margin: 3.2rem 0;
}
.auth-divider::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--st-muted-bright);
}
.auth-divider span {
  position: relative;
  background-color: var(--base);
  padding: 0 1.6rem;
  font: normal var(--fw-regular) 1.4rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}
@media only screen and (min-width: 768px) {
  .auth-divider span {
    font-size: 1.5rem;
  }
}

.auth-social-login {
  display: flex;
  gap: 1.6rem;
  margin-bottom: 3.2rem;
}
.auth-social-login.centered {
  justify-content: center;
}

.auth-social-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5.6rem;
  height: 5.6rem;
  border: 1px solid var(--st-muted-bright);
  border-radius: 50%;
  background-color: var(--base);
  color: var(--t-bright);
  text-decoration: none;
  transition: all 0.3s ease;
}
.auth-social-btn:hover {
  border-color: var(--t-bright);
  background-color: var(--base-tint);
  transform: translateY(-2px);
}
.auth-social-btn i {
  font-size: 2.2rem;
}
@media only screen and (min-width: 768px) {
  .auth-social-btn i {
    font-size: 2.4rem;
  }
}

.auth-2fa-methods {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  margin-bottom: 3.2rem;
}

.auth-2fa-method {
  position: relative;
  display: flex;
  align-items: center;
  gap: 2rem;
  padding: 2rem;
  border: 1px solid var(--st-muted-bright);
  border-radius: 1.6rem;
  background-color: var(--base);
  cursor: pointer;
  transition: all 0.3s ease;
}
.auth-2fa-method:hover {
  border-color: var(--t-muted);
  background-color: var(--base-tint);
}
.auth-2fa-method.active {
  border-color: var(--brand-orange);
  background-color: rgba(255, 122, 0, 0.05);
}
.auth-2fa-method.active .auth-2fa-method__icon {
  color: var(--brand-orange);
}
.auth-2fa-method.selected {
  border-color: var(--brand-orange);
  background-color: rgba(255, 122, 0, 0.08);
  box-shadow: 0 0 0 2px rgba(255, 122, 0, 0.15);
}
.auth-2fa-method.selected .auth-2fa-method__icon {
  color: var(--brand-orange);
}
.auth-2fa-method.selected::after {
  content: "✓";
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  background: var(--brand-orange);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
}

.auth-2fa-method__icon {
  font-size: 2.8rem;
  color: var(--t-muted);
  transition: color 0.3s ease;
}

.auth-2fa-method__content {
  flex: 1;
}

.auth-2fa-method__title {
  font: normal var(--fw-medium) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin-bottom: 0.6rem;
}

.auth-2fa-method__description {
  font: normal var(--fw-regular) 1.5rem/1.5 var(--_font-accent);
  color: var(--t-medium);
  margin: 0;
}

.auth-terms-section {
  margin: 2rem 0;
}

.auth-terms-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  margin-bottom: 1rem;
}

.auth-terms-card {
  background: var(--base-tint);
  border: 1px solid var(--st-muted-bright);
  border-radius: 1.2rem;
  padding: 1.5rem;
  transition: all 0.3s ease;
}
.auth-terms-card:hover {
  border-color: var(--brand-orange);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.auth-terms-card__icon {
  font-size: 2.4rem;
  color: var(--brand-orange);
  margin-bottom: 1rem;
}

.auth-terms-card__title {
  font: normal var(--fw-semibold) 1.6rem/1.3 var(--_font-accent);
  color: var(--t-bright);
  margin-bottom: 0.5rem;
}

.auth-terms-card__summary {
  font: normal var(--fw-regular) 1.4rem/1.5 var(--_font-accent);
  color: var(--t-medium);
  margin: 0 0 1rem;
}

.auth-terms-card__toggle {
  background: none;
  border: none;
  color: var(--brand-orange);
  font: normal var(--fw-medium) 1.3rem/1 var(--_font-accent);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0;
  transition: all 0.2s ease;
}
.auth-terms-card__toggle:hover {
  color: var(--brand-flame);
  gap: 0.8rem;
}

.auth-terms-full {
  display: none;
  background: var(--base-bg);
  border: 1px solid var(--t-border);
  border-radius: 12px;
  padding: 2rem;
  margin-top: 1rem;
  max-height: 400px;
  overflow-y: auto;
}
.auth-terms-full.is-expanded {
  display: block;
  animation: slideDown 0.3s ease;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.auth-terms-full__content h4 {
  font: normal var(--fw-semibold) 1.4rem/1.4 var(--_font-accent);
  color: var(--t-bright);
  margin: 1.5rem 0 0.5rem;
}
.auth-terms-full__content h4:first-child {
  margin-top: 0;
}
.auth-terms-full__content p, .auth-terms-full__content li {
  font: normal var(--fw-regular) 1.35rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}
.auth-terms-full__content ul {
  margin: 0.5rem 0 1rem 1.5rem;
  padding-left: 1rem;
}
.auth-terms-full__content li {
  margin-bottom: 0.5rem;
}

.auth-terms-acknowledgment {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-top: 1.5rem;
  padding: 1.25rem;
  background: rgba(145, 90, 66, 0.06);
  border-radius: 1.2rem;
  border: 1px solid var(--st-muted-bright);
}
.auth-terms-acknowledgment input[type=checkbox] {
  margin-top: 0.3rem;
  width: 2rem;
  height: 2rem;
  accent-color: var(--brand-orange);
  flex-shrink: 0;
}
.auth-terms-acknowledgment label {
  font: normal var(--fw-regular) 1.35rem/1.5 var(--_font-accent);
  color: var(--t-medium);
  cursor: pointer;
}
.auth-terms-acknowledgment.is-confirmed {
  background: rgba(13, 148, 136, 0.08);
  border-color: rgba(13, 148, 136, 0.25);
}

.auth-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.auth-modal[hidden] {
  display: none;
}
.auth-modal.is-open {
  opacity: 1;
  visibility: visible;
}
.auth-modal.is-open .auth-modal__content {
  transform: translateY(0) scale(1);
  opacity: 1;
}

.auth-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
}

.auth-modal__content {
  position: relative;
  width: 90%;
  max-width: 600px;
  max-height: 85vh;
  background: var(--base-bg);
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  display: flex;
  flex-direction: column;
  transform: translateY(20px) scale(0.95);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.auth-modal__close {
  position: absolute;
  top: 1.6rem;
  right: 1.6rem;
  width: 3.2rem;
  height: 3.2rem;
  border: none;
  background: var(--base-bg);
  border-radius: 50%;
  font-size: 2.4rem;
  line-height: 1;
  color: var(--t-medium);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  z-index: 1;
}
.auth-modal__close:hover {
  background: var(--t-border);
  color: var(--t-bright);
}

.auth-modal__content h2 {
  font: normal var(--fw-semibold) 2rem/1.3 var(--_font-accent);
  color: var(--t-bright);
  padding: 2.4rem 3.2rem 1.6rem;
  margin: 0;
  border-bottom: 1px solid var(--t-border);
}

.auth-modal__body {
  flex: 1;
  overflow-y: auto;
  padding: 2rem 3.2rem;
}
.auth-modal__body h4 {
  font: normal var(--fw-semibold) 1.4rem/1.4 var(--_font-accent);
  color: var(--t-bright);
  margin: 1.5rem 0 0.5rem;
}
.auth-modal__body h4:first-child {
  margin-top: 0;
}
.auth-modal__body p, .auth-modal__body li {
  font: normal var(--fw-regular) 1.35rem/1.6 var(--_font-accent);
  color: var(--t-medium);
}
.auth-modal__body ul {
  margin: 0.5rem 0 1rem 1.5rem;
  padding-left: 1rem;
}
.auth-modal__body li {
  margin-bottom: 0.5rem;
}

.auth-modal__footer {
  padding: 1.6rem 3.2rem 2.4rem;
  border-top: 1px solid var(--t-border);
  display: flex;
  justify-content: flex-end;
}

.auth-modal__accept {
  padding: 1rem 2.4rem;
  font: normal var(--fw-medium) 1.4rem/1 var(--_font-accent);
}

@keyframes modalFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes modalSlideUp {
  from {
    transform: translateY(20px) scale(0.95);
    opacity: 0;
  }
  to {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
}
.auth-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 3.2rem;
  font: normal var(--fw-medium) 1.6rem/1.2 var(--_font-accent);
  color: var(--t-medium);
  text-decoration: none;
  transition: color 0.3s ease;
}
.auth-back-btn i {
  font-size: 2rem;
  transition: transform 0.3s ease;
}
.auth-back-btn:hover {
  color: var(--t-bright);
}
.auth-back-btn:hover i {
  transform: translateX(-4px);
}

.auth-status-message {
  position: relative;
  padding: 1.6rem 2rem;
  border-radius: 1.2rem;
  margin-bottom: 2.4rem;
  font: normal var(--fw-regular) 1.5rem/1.5 var(--_font-accent);
  display: none;
}
.auth-status-message.success {
  display: block;
  background-color: rgba(46, 213, 115, 0.1);
  border: 1px solid rgba(46, 213, 115, 0.3);
  color: #26af61;
}
.auth-status-message.error {
  display: block;
  background-color: rgba(255, 71, 87, 0.1);
  border: 1px solid rgba(255, 71, 87, 0.3);
  color: #ff4757;
}
.auth-status-message.info {
  display: block;
  background-color: rgba(69, 123, 251, 0.1);
  border: 1px solid rgba(69, 123, 251, 0.3);
  color: #457bfb;
}

.auth-code-inputs {
  display: flex;
  gap: 1.2rem;
  justify-content: center;
  margin: 3.2rem 0;
}

.auth-code-input {
  width: 5rem;
  height: 6.4rem;
  text-align: center;
  font: normal var(--fw-medium) 3rem/1 var(--_font-accent);
  border: 1px solid var(--st-muted-bright);
  border-radius: 1.2rem;
  background-color: transparent;
  color: var(--t-bright);
  transition: all 0.3s ease;
  outline: none;
}
.auth-code-input:focus {
  background-color: var(--base);
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1);
  transform: translateY(-2px);
}
@media only screen and (min-width: 768px) {
  .auth-code-input {
    width: 6rem;
    height: 7.2rem;
    font-size: 3.2rem;
  }
}

.auth-resend-code {
  text-align: center;
  margin-bottom: 2.4rem;
}

.auth-resend-timer {
  font: normal var(--fw-regular) 1.5rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}

.auth-resend-link {
  font: normal var(--fw-medium) 1.5rem/1.2 var(--_font-accent);
  color: var(--brand-orange);
  text-decoration: none;
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
}
.auth-resend-link:hover:not(:disabled) {
  text-decoration: underline;
}
.auth-resend-link:disabled {
  color: var(--t-muted);
  cursor: not-allowed;
}

@media only screen and (min-width: 768px) {
  .auth-container {
    max-width: 540px;
  }
  .auth-code-inputs {
    gap: 1.6rem;
  }
  .auth-social-login {
    gap: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .auth-container {
    max-width: 600px;
  }
}
.setup-step {
  display: none;
}
.setup-step.active {
  display: block;
  animation: fadeIn 0.3s var(--_animbezier);
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.step-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
}

.step-number {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  background-color: var(--accent);
  color: var(--t-opp-bright);
  font: normal var(--fw-semibold) 1.6rem/1 var(--_font-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.step-title {
  font: normal var(--fw-semibold) 2rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin: 0;
}

.step-description {
  font: normal var(--fw-regular) 1.6rem/1.6 var(--_font-accent);
  color: var(--t-medium);
  margin-bottom: 2rem;
}

.app-options {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 3rem;
}

.app-option {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 1.5rem;
  border: 2px solid var(--st-muted);
  border-radius: var(--_radius-m);
  background-color: var(--base);
  transition: all var(--_animspeed-medium) var(--_animbezier);
  cursor: pointer;
}
.app-option:hover {
  border-color: var(--accent);
  background-color: rgba(var(--accent-rgb), 0.05);
}
.app-option.selected {
  border-color: var(--accent);
  background-color: rgba(var(--accent-rgb), 0.08);
  box-shadow: 0 0 0 1px var(--accent);
}

.app-option-check {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  border: 2px solid var(--st-muted);
  background-color: var(--base);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.app-option-check i {
  font-size: 1.4rem;
  color: transparent;
  transition: color var(--_animspeed-fast) var(--_animbezier);
}

.app-option.selected .app-option-check {
  border-color: var(--accent);
  background-color: var(--accent);
}
.app-option.selected .app-option-check i {
  color: var(--base);
}

.app-icon {
  width: 4rem;
  height: 4rem;
  border-radius: var(--_radius-s);
  background-color: var(--base-opp);
  color: var(--t-opp-bright);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.app-icon i {
  font-size: 2rem;
}

.app-info {
  flex: 1;
}
.app-info h4 {
  font: normal var(--fw-medium) 1.6rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin: 0 0 0.4rem 0;
}
.app-info p {
  font: normal var(--fw-regular) 1.4rem/1.4 var(--_font-accent);
  color: var(--t-muted);
  margin: 0;
}

.step-actions {
  display: flex;
  gap: 1rem;
  justify-content: flex-end;
  margin-top: 2rem;
}

.auth-secondary-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  padding: 1.2rem 2rem;
  border: 2px solid var(--st-muted);
  border-radius: var(--_radius-l);
  background-color: transparent;
  font: normal var(--fw-semibold) 1.6rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  cursor: pointer;
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.auth-secondary-btn:hover:not(:disabled) {
  border-color: var(--accent);
  color: var(--accent);
}
.auth-secondary-btn:focus {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.auth-secondary-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.qr-code-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  margin-bottom: 3rem;
  padding: 2rem;
  border: 2px solid var(--st-muted);
  border-radius: var(--_radius-m);
  background-color: var(--base);
}

.qr-code {
  width: 200px;
  height: 200px;
  border-radius: var(--_radius-s);
  background-color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.qr-code canvas {
  width: 100% !important;
  height: 100% !important;
  border-radius: var(--_radius-s);
}
.qr-code .qr-code-img {
  width: 200px;
  height: 200px;
  border-radius: var(--_radius-s);
  background-color: #ffffff;
}
.qr-code .qr-placeholder {
  text-align: center;
  color: var(--t-opp-bright);
}
.qr-code .qr-placeholder i {
  font-size: 4rem;
  margin-bottom: 1rem;
  display: block;
}
.qr-code .qr-placeholder span {
  font: normal var(--fw-regular) 1.4rem/1 var(--_font-accent);
}

.qr-instructions {
  text-align: center;
}
.qr-instructions p {
  font: normal var(--fw-regular) 1.4rem/1.6 var(--_font-accent);
  color: var(--t-medium);
  margin: 0 0 1rem 0;
}

.manual-code {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.5rem;
  border: 1px solid var(--st-muted);
  border-radius: var(--_radius-s);
  background-color: var(--base-tint);
  font-family: monospace;
  font-size: 1.4rem;
  color: var(--t-bright);
}
.manual-code span {
  flex: 1;
  text-align: center;
  letter-spacing: 0.1em;
}

.copy-btn {
  padding: 0.5rem;
  border: none;
  background: none;
  color: var(--t-medium);
  cursor: pointer;
  transition: color var(--_animspeed-medium) var(--_animbezier);
  border-radius: var(--_radius-s);
}
.copy-btn:hover {
  color: var(--accent);
}
.copy-btn:focus {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.copy-btn i {
  font-size: 1.6rem;
}

.code-input-group {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.code-input {
  flex: 1;
  text-align: center;
  font: normal var(--fw-semibold) 2.4rem/1 var(--_font-accent);
  letter-spacing: 0.2em;
}
.code-input::placeholder {
  letter-spacing: normal;
  color: var(--t-muted-extra);
}

.code-timer {
  position: absolute;
  right: 1rem;
  font: normal var(--fw-medium) 1.4rem/1 var(--_font-accent);
  color: var(--t-muted);
}
.code-timer.expired {
  color: #ff4757;
}

.resend-btn {
  padding: 0.4rem 0.8rem;
  border: 1px solid #ff4757;
  border-radius: var(--_radius-s);
  background-color: transparent;
  font: normal var(--fw-medium) 1.2rem/1 var(--_font-accent);
  color: #ff4757;
  cursor: pointer;
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.resend-btn:hover {
  background-color: #ff4757;
  color: white;
}

.setup-progress {
  margin-top: 3rem;
  text-align: center;
}

.progress-bar {
  width: 100%;
  height: 0.4rem;
  background-color: var(--st-muted);
  border-radius: var(--_radius-s);
  overflow: hidden;
  margin-bottom: 1rem;
}

.progress-fill {
  height: 100%;
  background-color: var(--accent);
  border-radius: var(--_radius-s);
  transition: width var(--_animspeed-medium) var(--_animbezier);
  width: 33.33%;
}

.progress-text {
  font: normal var(--fw-regular) 1.4rem/1 var(--_font-accent);
  color: var(--t-muted);
}

.auth-message {
  position: fixed;
  top: 2rem;
  right: 2rem;
  padding: 1.5rem 2rem;
  border-radius: var(--_radius-m);
  font: normal var(--fw-medium) 1.4rem/1.4 var(--_font-accent);
  z-index: 1000;
  animation: slideIn 0.3s var(--_animbezier);
}
.auth-message.success {
  background-color: #2ed573;
  color: white;
  box-shadow: 0 4px 12px rgba(46, 213, 115, 0.3);
}
.auth-message.error {
  background-color: #ff4757;
  color: white;
  box-shadow: 0 4px 12px rgba(255, 71, 87, 0.3);
}

@keyframes slideIn {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
.verification-code-group {
  display: flex;
  gap: 1rem;
  justify-content: center;
  margin-bottom: 3rem;
}

.verification-code-input {
  width: 4rem;
  height: 5rem;
  text-align: center;
  font: normal var(--fw-semibold) 2.4rem/1 var(--_font-accent);
  border: 2px solid var(--st-muted);
  border-radius: var(--_radius-m);
  background-color: var(--base);
  color: var(--t-bright);
  transition: all var(--_animspeed-medium) var(--_animbezier);
  outline: none;
}
.verification-code-input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
}
.verification-code-input.filled {
  border-color: var(--accent);
}
@media only screen and (min-width: 768px) {
  .verification-code-input {
    width: 5rem;
    height: 6rem;
    font-size: 3rem;
  }
}

.backup-codes-section {
  margin-top: 3rem;
  padding-top: 3rem;
  border-top: 1px solid var(--st-muted);
}

.backup-codes-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 2rem;
}

.backup-code {
  padding: 1rem;
  border: 1px solid var(--st-muted);
  border-radius: var(--_radius-s);
  background-color: var(--base-tint);
  font-family: monospace;
  font-size: 1.4rem;
  color: var(--t-bright);
  text-align: center;
  letter-spacing: 0.1em;
}

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  backdrop-filter: blur(4px);
  animation: fadeIn 0.3s var(--_animbezier);
}

.modal-content {
  background-color: var(--base-tint);
  border-radius: var(--_radius-l);
  padding: 2rem;
  max-width: 480px;
  width: 90%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
  animation: slideUp 0.3s var(--_animbezier);
}

.modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
}

.modal-header h3 {
  font: normal var(--fw-semibold) 2rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  margin: 0;
}

.modal-close {
  padding: 0.5rem;
  border: none;
  background: none;
  color: var(--t-medium);
  cursor: pointer;
  border-radius: var(--_radius-s);
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
.modal-close:hover {
  color: var(--accent);
  background-color: rgba(var(--accent-rgb), 0.1);
}
.modal-close:focus {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.modal-close i {
  font-size: 2rem;
}

.form-help-text {
  font: normal var(--fw-regular) 1.4rem/1.6 var(--_font-accent);
  color: var(--t-muted);
  margin-top: 0.5rem;
}

@keyframes slideUp {
  from {
    transform: translateY(20px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@media only screen and (min-width: 768px) {
  .modal-content {
    padding: 3rem;
  }
  .modal-header h3 {
    font-size: 2.4rem;
  }
}
[data-theme=dark] .modal-content {
  background-color: var(--base);
}

.auth-background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden;
  background-color: var(--base);
  opacity: 0.22;
  pointer-events: none;
}

.auth-faces-track {
  position: absolute;
  inset: 0;
  display: flex;
  height: 100%;
  width: auto;
  will-change: transform;
  animation: authFacesScroll 80s linear infinite;
  gap: 0;
  padding: 1.5rem 0;
}
@media (prefers-reduced-motion: reduce) {
  .auth-faces-track {
    animation: none;
    transform: translateX(0);
  }
}

@keyframes authFacesScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.auth-faces-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(4, 1fr);
  gap: 1.5rem;
  margin-right: 1.5rem;
  padding: 0;
  flex: 0 0 auto;
  width: auto;
  height: auto;
}

.auth-face-cell {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 5/6;
  min-width: 140px;
  border-radius: var(--_radius-l);
  overflow: hidden;
  background-color: var(--base-tint);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
}
.auth-face-cell img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform-origin: center center;
  animation: authFacePulse 8s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .auth-face-cell img {
    animation: none;
  }
}

@keyframes authFacePulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
.auth-face-cell--text {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  text-align: center;
}

.auth-face-text {
  color: #fff;
  font-size: 1.2rem;
  font-weight: var(--fw-medium);
  line-height: 1.3;
}
@media only screen and (min-width: 768px) {
  .auth-face-text {
    font-size: 1.3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .auth-face-text {
    font-size: 1.4rem;
  }
}
.auth-face-text strong {
  font-family: var(--_font-heading);
  font-size: 2.22rem;
  font-weight: 700;
  display: block;
  color: inherit;
  margin-top: -0.2rem;
}
@media only screen and (min-width: 768px) {
  .auth-face-text strong {
    font-size: 2.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .auth-face-text strong {
    font-size: 3rem;
  }
}

.auth-face-cell--blue {
  background-color: #4a90d9;
}

.auth-face-cell--purple {
  background-color: #9b59b6;
}

.auth-face-cell--gold {
  background-color: #f2b85a;
}

.auth-face-cell--teal {
  background-color: #1abc9c;
}

.auth-face-cell--pink {
  background-color: #e91e63;
}

.auth-face-cell--coral {
  background-color: #df5731;
}

.auth-face-cell--orange {
  background-color: #DF5731;
}

.auth-face-cell--salmon {
  background-color: #ff7675;
}

.auth-face-cell--peach {
  background-color: #fab1a0;
}

.auth-face-cell--yellow {
  background-color: #fdcb6e;
}

.auth-face-cell--brown {
  background-color: #8b4513;
}

.auth-face-cell--terracotta {
  background-color: #B9401A;
}

.auth-simple-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 2.4rem 2.4rem;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  align-items: center;
  pointer-events: none;
}
@media only screen and (min-width: 768px) {
  .auth-simple-header {
    padding: 3.2rem 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .auth-simple-header {
    padding: 4rem 6rem;
  }
}
.auth-simple-header .auth-logo {
  pointer-events: auto;
  display: block;
  width: 140px;
}
@media only screen and (min-width: 768px) {
  .auth-simple-header .auth-logo {
    width: 160px;
  }
}
.auth-simple-header .auth-logo img {
  width: 100%;
  height: auto;
  display: block;
}
.auth-simple-header .auth-home-link {
  pointer-events: auto;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.4rem;
  font-weight: var(--fw-medium);
  color: var(--t-muted);
  text-decoration: none;
  transition: color 0.3s ease;
}
.auth-simple-header .auth-home-link:hover {
  color: var(--brand-orange);
}
.auth-simple-header .auth-home-link i {
  font-size: 1.6rem;
}

.auth-footer {
  width: 100%;
  text-align: center;
  padding: 3rem 0 2rem;
  margin: 3rem auto 0;
  position: relative;
  clear: both;
  z-index: 5;
}
@media only screen and (min-width: 768px) {
  .auth-footer {
    padding: 4rem 0 3rem;
    margin-top: 4rem;
  }
}
.auth-footer p {
  color: var(--t-muted);
  font-size: 1.4rem;
  margin: 0;
  line-height: 1.4;
}

.auth-help, .auth-links {
  text-align: center;
  margin-top: 3rem;
}
.auth-help p, .auth-links p {
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-medium);
  margin-bottom: 0.8rem;
}
.auth-help p a, .auth-links p a {
  display: inline-block;
  color: var(--brand-orange);
  font-weight: var(--fw-medium);
}
.auth-help p a:hover, .auth-links p a:hover {
  text-decoration: underline;
}

.auth-status-message {
  margin-bottom: 2.4rem;
  padding: 1.6rem;
  border-radius: 1.2rem;
  font-size: 1.5rem;
  line-height: 1.4;
  display: none;
}
.auth-status-message.success {
  background-color: rgba(46, 213, 115, 0.1);
  color: #2ed573;
  border: 1px solid rgba(46, 213, 115, 0.2);
}
.auth-status-message.error {
  background-color: rgba(255, 71, 87, 0.1);
  color: #ff4757;
  border: 1px solid rgba(255, 71, 87, 0.2);
}
.auth-status-message.visible {
  display: block;
}

.toast-notification {
  position: fixed;
  top: 3.2rem;
  right: 3.2rem;
  z-index: 10000;
  transform: translateX(120%);
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  pointer-events: none;
  max-width: calc(100vw - 6.4rem);
}
.toast-notification.show {
  transform: translateX(0);
  pointer-events: auto;
}

.toast-content {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: 1.6rem 2.4rem;
  background-color: var(--base);
  border: 1px solid var(--st-muted-bright);
  border-radius: 1.6rem;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.1);
  min-width: 320px;
}
.toast-content i {
  font-size: 2.22rem;
  color: var(--brand-orange);
}

.toast-message {
  flex: 1;
  font: normal var(--fw-medium) 1.5rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}

.toast-close {
  background: none;
  border: none;
  padding: 0.4rem;
  color: var(--t-muted);
  cursor: pointer;
  transition: color 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.toast-close:hover {
  color: var(--t-bright);
}
.toast-close i {
  font-size: 1.8rem;
  color: inherit;
}

/* ------------------------------------------------*/
/* Block - Authentication End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* QR Code Refresh Timer */
/* ------------------------------------------------*/
.qr-refresh-timer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 1rem 1.5rem;
  margin-bottom: 1.5rem;
  border-radius: var(--_radius-s);
  background-color: var(--base-tint);
  font: normal var(--fw-medium) 1.4rem/1 var(--_font-accent);
  color: var(--t-medium);
}
.qr-refresh-timer i {
  font-size: 1.8rem;
  color: var(--brand-primary);
}
.qr-refresh-timer .timer-value {
  font-variant-numeric: tabular-nums;
  min-width: 5rem;
  text-align: center;
}
.qr-refresh-timer.warning {
  background-color: #fff3e0;
}
.qr-refresh-timer.warning i {
  color: #f57c00;
}
.qr-refresh-timer.critical {
  background-color: #ffebee;
}
.qr-refresh-timer.critical i {
  color: #d32f2f;
}

.qr-code--refreshing {
  animation: qr-refresh-flash 0.5s ease-out;
}

@keyframes qr-refresh-flash {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  25% {
    opacity: 0.5;
    transform: scale(0.98);
  }
  50% {
    opacity: 0.8;
    transform: scale(1.02);
  }
  75% {
    opacity: 0.6;
    transform: scale(0.99);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.qr-refresh-notice {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.8rem 1rem;
  margin-top: 1rem;
  border-radius: var(--_radius-s);
  background-color: #e3f2fd;
  font: normal var(--fw-regular) 1.2rem/1.4 var(--_font-accent);
  color: #1565c0;
}
.qr-refresh-notice i {
  font-size: 1.4rem;
}

/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Block - CMS Start */
/* ------------------------------------------------*/
.cms-page {
  background-color: var(--base);
  --cms-header-h: 84px;
  --cms-edge-pad: 3rem;
}
@media only screen and (min-width: 768px) {
  .cms-page {
    --cms-header-h: 96px;
    --cms-edge-pad: 6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .cms-page {
    --cms-edge-pad: 9rem;
  }
}
.cms-page .mxd-container.grid-container {
  padding-left: var(--cms-edge-pad);
  padding-right: var(--cms-edge-pad);
}
.cms-page {
  --cms-surface: var(--base);
  --cms-surface-dim: var(--base-tint);
  --cms-border-subtle: var(--st-muted-bright);
  --cms-shadow-sm: 0 2px 8px rgba(0,0,0,0.04);
  --cms-shadow-md: 0 8px 24px rgba(0,0,0,0.08);
  --cms-shadow-lg: 0 16px 32px rgba(0,0,0,0.12);
  --cms-input-bg: var(--base);
  --cms-input-border: var(--st-muted);
  --cms-filter-bg: var(--base-tint);
}

.cms-skip-link {
  position: absolute;
  top: 0.8rem;
  left: 0.8rem;
  z-index: 1000;
  padding: 0.9rem 1.2rem;
  border-radius: 999px;
  background-color: var(--glass-l2-card);
  backdrop-filter: var(--blur-l2);
  border: 1px solid var(--border-l2);
  box-shadow: none;
  color: var(--t-bright);
  font: normal var(--fw-medium) 1.3rem/1 var(--_font-accent);
  text-decoration: none;
  transform: translateY(-200%);
  transition: transform 0.2s ease;
}

.cms-skip-link:focus {
  transform: translateY(0);
}

.cms {
  padding: 2.4rem 0 6rem;
}
@media only screen and (min-width: 768px) {
  .cms {
    padding: 3.2rem 0 8rem;
  }
}

.cms-page .mxd-header {
  background-color: var(--base);
  border-bottom: 1px solid var(--border);
  padding-left: var(--cms-edge-pad);
  padding-right: var(--cms-edge-pad);
  padding-bottom: 1.6rem;
  position: sticky;
  top: 0;
  z-index: 50;
}
.cms-page .mxd-page-content {
  padding-top: var(--cms-header-h);
}
.cms-page .mxd-header__controls .cms-profile {
  margin-left: 1rem;
}
.cms-page .cms-brand__subtitle--header {
  margin-left: 1rem;
}
.cms-page [data-cms-filter-controls] {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  align-items: flex-end;
}

@media (max-width: 1023px) {
  .cms-page [data-cms-filter-controls] {
    display: none;
  }
  .cms-page [data-cms-open-filter-drawer] {
    display: inline-flex;
  }
  .cms-page .cms-toggle-group {
    flex-wrap: wrap;
    max-width: 100%;
  }
  .cms-page .cms-toggle-group__btn {
    flex: 1 1 auto;
  }
  .cms-page .cms-table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (min-width: 1024px) {
  .cms-page [data-cms-open-filter-drawer] {
    display: none;
  }
}
.cms-tabs {
  margin-top: 1.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.cms-tabs::-webkit-scrollbar {
  display: none;
}

.cms-page[data-cms-page=users] .cms-table-panel {
  background-color: var(--base);
  border: 1px solid var(--cms-border-subtle);
  box-shadow: none;
  padding: 1.2rem 1.6rem;
}
.cms-page[data-cms-page=users] .cms-ctrl-bulk-row {
  margin: 0;
  padding: 1rem 0 0;
  background-color: transparent;
}
.cms-page[data-cms-page=users] .cms-table-wrap {
  box-shadow: none;
  border: 1px solid var(--cms-border-subtle);
}
.cms-page[data-cms-page=users] .cms-action {
  border-color: var(--cms-border-subtle);
  background-color: var(--base);
}
.cms-page[data-cms-page=users] .cms-action:hover {
  background-color: rgba(0, 0, 0, 0.04);
  border-color: var(--t-muted);
}

.cms-page-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  background: var(--glass-l1-panel);
  backdrop-filter: var(--blur-l1);
  -webkit-backdrop-filter: var(--blur-l1);
  border: 1px solid var(--border-l1);
  border-radius: var(--_radius-l);
  padding: var(--space-panel-padding);
  box-shadow: var(--shadow-md);
}

.cms-page-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
}

.cms-shell {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem;
}
@media only screen and (min-width: 768px) {
  .cms-shell {
    grid-template-columns: 280px 1fr;
    gap: 3.2rem;
  }
}

@media only screen and (min-width: 768px) {
  .cms-shell--sidebar-collapsed {
    grid-template-columns: 8rem 1fr;
  }
}

.cms-shell--sidebar-bottom {
  grid-template-columns: 1fr !important;
}

.cms-sidebar {
  border: 1px solid var(--border-l1);
  border-radius: var(--_radius-l);
  background: var(--glass-l1-panel);
  backdrop-filter: var(--blur-l1);
  -webkit-backdrop-filter: var(--blur-l1);
  padding: var(--space-panel-padding);
  height: fit-content;
  box-shadow: var(--shadow-md);
  transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1), padding 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
@media only screen and (min-width: 768px) {
  .cms-sidebar {
    position: sticky;
    top: 2.4rem;
  }
}

/* L1 — Section containers / major panels */
.panel {
  background: var(--glass-l1-panel);
  backdrop-filter: var(--blur-l1);
  -webkit-backdrop-filter: var(--blur-l1);
  border: 1px solid var(--border-l1);
  border-radius: var(--_radius-l);
  padding: var(--space-panel-padding);
  box-shadow: var(--shadow-md);
  animation: surface-enter 0.35s var(--ease-decel) both;
}

/* L2 — Cards / metric tiles / table containers */
.card {
  background: var(--glass-l2-card);
  backdrop-filter: var(--blur-l2);
  -webkit-backdrop-filter: var(--blur-l2);
  border: 1px solid var(--border-l2);
  border-radius: var(--_radius-m);
  padding: var(--space-card-padding);
  box-shadow: var(--shadow-sm);
  animation: surface-enter 0.35s var(--ease-decel) both;
  transition: transform var(--_animspeed-fast) var(--ease-standard), box-shadow var(--_animspeed-fast) var(--ease-standard);
}

.card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-md), var(--shadow-flame);
}

/* L3 — Inputs, filter chips, inner fields */
.input-surface {
  background: var(--glass-l3-input);
  backdrop-filter: var(--blur-l3);
  -webkit-backdrop-filter: var(--blur-l3);
  border: 1px solid var(--border-l3);
  border-radius: var(--_radius-pill);
  padding: var(--space-input-padding);
}

@supports not (backdrop-filter: blur(1px)) {
  .panel {
    background: rgba(255, 244, 233, 0.97);
  }
  .card {
    background: rgba(255, 249, 243, 0.99);
  }
  .input-surface {
    background: #FFFDFB;
  }
}
@keyframes surface-enter {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.panel:nth-child(1) {
  animation-delay: 0ms;
}

.panel:nth-child(2) {
  animation-delay: 60ms;
}

.panel:nth-child(3) {
  animation-delay: 120ms;
}

.panel:nth-child(4) {
  animation-delay: 180ms;
}

.panel:nth-child(5) {
  animation-delay: 240ms;
}

.cms-sidebar-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border: none;
  border-radius: 1.2rem;
  background-color: transparent;
  color: var(--t-medium);
  cursor: pointer;
  transition: all 0.2s ease;
  margin-bottom: 1.6rem;
  margin-left: 0.4rem;
}

.cms-sidebar-toggle:hover {
  background-color: var(--base);
  color: var(--brand-orange);
}

.cms-sidebar-toggle i {
  font-size: 2.2rem;
}

.cms-nav__text {
  transition: opacity 0.2s ease, width 0.2s ease;
}

.cms-sidebar--collapsed {
  width: 8rem;
  padding: 1.6rem 1.2rem;
}
.cms-sidebar--collapsed .cms-sidebar-toggle {
  margin-left: auto;
  margin-right: auto;
}
.cms-sidebar--collapsed .cms-brand__text,
.cms-sidebar--collapsed .cms-nav__text,
.cms-sidebar--collapsed .cms-nav__meta {
  display: none;
}
.cms-sidebar--collapsed .cms-nav__link {
  justify-content: center;
  padding: 1.2rem;
  gap: 0;
}
.cms-sidebar--collapsed .cms-nav__label {
  justify-content: center;
  gap: 0;
  width: 100%;
}
.cms-sidebar--collapsed .cms-nav__label i {
  margin: 0;
}
.cms-sidebar--collapsed .cms-brand {
  justify-content: center;
  margin-bottom: 2rem;
}
.cms-sidebar--collapsed .cms-brand__logo {
  width: 36px;
  height: 36px;
  margin: 0;
}

.cms-sidebar--bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: fixed !important;
  top: auto !important;
  left: 50% !important;
  bottom: 2rem !important;
  transform: translateX(-50%) !important;
  width: auto !important;
  height: auto !important;
  padding: 1.2rem 2.4rem !important;
  border-radius: 5rem !important;
  flex-direction: row !important;
  gap: 1.2rem !important;
  z-index: 1000;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
  background: var(--base-tint) !important;
  backdrop-filter: blur(8px);
}
.cms-sidebar--bottom .cms-sidebar-toggle {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
}
.cms-sidebar--bottom .cms-brand {
  display: none;
}
.cms-sidebar--bottom .cms-nav__list {
  flex-direction: row;
  gap: 0.4rem;
}
.cms-sidebar--bottom .cms-nav__link {
  padding: 1.2rem;
  border-radius: 1.2rem;
}
.cms-sidebar--bottom .cms-nav__text,
.cms-sidebar--bottom .cms-nav__meta {
  display: none;
}
.cms-sidebar--bottom .cms-nav__label i {
  font-size: 2.4rem;
}
.cms-brand {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  text-decoration: none;
  color: inherit;
}

.cms-brand__logo {
  width: 42px;
  height: 42px;
  display: block;
}

.cms-brand__text {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.cms-brand__title {
  font: normal var(--fw-bold) 1.8rem/1.2 var(--_font-heading);
  color: var(--t-bright);
}

.cms-brand__subtitle {
  font: normal var(--fw-regular) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}

.cms-nav {
  margin-top: 2rem;
}

.cms-nav__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.cms-nav__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  padding: 1.2rem 1.4rem;
  border-radius: 1.4rem;
  text-decoration: none;
  color: var(--t-medium);
  border: 1px solid transparent;
  background-color: transparent;
  transition: all 0.2s ease;
  min-height: 4.8rem;
}

.cms-nav__link:hover {
  color: var(--t-bright);
  background-color: var(--base);
  border-color: rgba(255, 122, 0, 0.1);
  box-shadow: none;
}

.cms-nav__link[aria-current=page] {
  color: var(--t-bright);
  background-color: var(--base);
  border-color: rgba(255, 122, 0, 0.2);
  box-shadow: 0 4px 12px rgba(255, 122, 0, 0.08);
  font-weight: var(--fw-medium);
}

.cms-nav__label {
  display: flex;
  align-items: center;
  gap: 1rem;
  font: inherit;
  font-size: 1.5rem;
  line-height: 1.2;
}

.cms-nav__label i {
  font-size: 2rem;
}

.cms-nav__meta {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font: normal var(--fw-regular) 1.3rem/1 var(--_font-accent);
  color: var(--t-muted);
}

.cms-main {
  min-width: 0;
}

.cms-topbar {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  border: 0;
  border-radius: var(--_radius-m);
  background-color: var(--base-tint);
  padding: 2rem;
  box-shadow: none;
}
@media only screen and (min-width: 768px) {
  .cms-topbar {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

.cms-title {
  margin: 0;
  font: normal var(--fw-bold) 5.6rem/1.1 var(--_font-heading);
  color: var(--t-bright);
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 768px) {
  .cms-title {
    font-size: 7.2rem;
  }
}

.cms-subtitle {
  margin: 0.6rem 0 0;
  font: normal var(--fw-regular) 1.4rem/1.5 var(--_font-accent);
  color: var(--t-muted);
}

.cms-topbar__right {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media only screen and (min-width: 768px) {
  .cms-topbar__right {
    flex-direction: row;
    align-items: center;
  }
}

.cms-field {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.cms-field__label {
  font: normal var(--fw-medium) 1.4rem/1.2 var(--_font-accent);
  color: var(--t-medium);
}

.cms-select {
  height: 4.4rem;
  border-radius: 1.2rem;
  border: 1px solid var(--cms-border-subtle);
  background-color: var(--base);
  padding: 0 3.2rem 0 1.2rem;
  font: normal var(--fw-regular) 1.4rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  transition: border-color 0.2s ease;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--t-medium) 50%), linear-gradient(135deg, var(--t-medium) 50%, transparent 50%);
  background-position: calc(100% - 1.6rem) 50%, calc(100% - 1.2rem) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

.cms-select:hover {
  border-color: var(--t-medium);
}

.cms-grid {
  margin-top: 2.4rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem;
}
@media only screen and (min-width: 768px) {
  .cms-grid {
    grid-template-columns: repeat(12, 1fr);
  }
}

.cms-card {
  border: 1px solid var(--cms-border-subtle);
  border-radius: var(--_radius-m);
  background-color: var(--base);
  padding: 2.4rem;
  min-width: 0;
  box-shadow: var(--cms-shadow-sm);
  transition: box-shadow 0.2s ease;
}

.cms-card--full {
  height: 100%;
}

.cms-card:hover {
  box-shadow: var(--cms-shadow-md);
}

@media only screen and (min-width: 768px) {
  .cms-card--span-12 {
    grid-column: span 12;
  }
}

@media only screen and (min-width: 768px) {
  .cms-card--span-8 {
    grid-column: span 8;
  }
}

@media only screen and (min-width: 768px) {
  .cms-card--span-6 {
    grid-column: span 6;
  }
}

@media only screen and (min-width: 768px) {
  .cms-card--span-4 {
    grid-column: span 4;
  }
}

.cms-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  margin-bottom: 1rem;
}

.cms-card__header--split {
  flex-wrap: wrap;
}

.cms-card__meta {
  font: normal var(--fw-regular) 1.3rem/1.4 var(--_font-accent);
  color: var(--t-muted);
}

.cms-card__title {
  margin: 0;
  font: normal var(--fw-bold) 2rem/1.2 var(--_font-heading);
  color: var(--t-bright);
}

.cms-subtitle {
  margin: 0.4rem 0 0;
  color: var(--t-muted);
  font: normal var(--fw-regular) 1.3rem/1.4 var(--_font-accent);
}

.cms-kpis {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}
@media only screen and (min-width: 768px) {
  .cms-kpis {
    grid-template-columns: repeat(3, 1fr);
  }
}

.cms-kpi {
  border: 1px solid var(--cms-border-subtle);
  border-radius: 1.6rem;
  background-color: var(--base);
  padding: 1.6rem;
  transition: transform 0.2s ease;
  box-shadow: var(--cms-shadow-sm);
}

.cms-kpi:hover {
  transform: translateY(-2px);
  box-shadow: var(--cms-shadow-md);
}

.cms-kpi__label {
  font: normal var(--fw-regular) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-muted);
  margin: 0;
}

.cms-kpi__value {
  font: normal var(--fw-medium) 2.4rem/1.1 var(--_font-accent);
  color: var(--t-bright);
  margin: 0.8rem 0 0;
}

.cms-kpi__delta {
  margin-top: 0.8rem;
  font: normal var(--fw-medium) 1.3rem/1.2 var(--_font-accent);
}

.cms-kpi__delta--up {
  color: #26af61;
}

.cms-kpi__delta--down {
  color: #ff4757;
}

.cms-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 1.6rem;
  border: none;
  box-shadow: none;
  padding: 0;
}
.cms-table-wrap::-webkit-scrollbar {
  height: 6px;
}
.cms-table-wrap::-webkit-scrollbar-track {
  background-color: transparent;
  border-radius: 0 0 1.6rem 1.6rem;
}
.cms-table-wrap::-webkit-scrollbar-thumb {
  background-color: var(--st-muted);
  border-radius: 1rem;
}
.cms-table-wrap::-webkit-scrollbar-thumb:hover {
  background-color: var(--t-muted);
}

.cms-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 100%;
  background-color: var(--base);
}

.cms-table-wrap[aria-label="Data table"] {
  padding: 0.6rem;
}
.cms-table-wrap[aria-label="Data table"] .cms-table {
  min-width: 800px;
  border-radius: 1.2rem;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.04);
}

.cms-table tbody tr {
  transition: background-color 0.2s ease;
}

.cms-table tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.02);
}

.cms-table th,
.cms-table td {
  padding: 1.6rem 2.4rem;
  text-align: left;
  border-bottom: 1px solid var(--st-muted-bright);
  vertical-align: middle;
}

.cms-table th {
  font: normal var(--fw-medium) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-medium);
  background-color: var(--base-tint);
  white-space: nowrap;
  border-bottom: 2px solid var(--st-muted-bright);
}

.cms-table--row-headers th:first-child {
  background-color: var(--st-medium);
  color: var(--t-opp-bright);
  border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.cms-table--row-headers tbody th:first-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.cms-table--row-headers thead th:first-child {
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
}

.cms-table td {
  font: normal var(--fw-regular) 1.4rem/1.4 var(--_font-accent);
  color: var(--t-bright);
}

.cms-table-panel {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  padding: 1.6rem;
  border-radius: 1.6rem;
  border: none;
  background-color: var(--base);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.04);
}

.cms-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.5rem 0.9rem;
  border-radius: 999px;
  font: normal var(--fw-medium) 1.2rem/1 var(--_font-accent);
  border: 1px solid transparent;
}

.cms-badge--success {
  color: #26af61;
  background-color: rgba(46, 213, 115, 0.1);
  border-color: rgba(46, 213, 115, 0.25);
}

.cms-badge--warning {
  color: #d98a00;
  background-color: rgba(242, 184, 90, 0.18);
  border-color: rgba(242, 184, 90, 0.35);
}

.cms-badge--danger {
  color: #ff4757;
  background-color: rgba(255, 71, 87, 0.1);
  border-color: rgba(255, 71, 87, 0.25);
}

.cms-badge--info {
  color: #457bfb;
  background-color: rgba(69, 123, 251, 0.12);
  border-color: rgba(69, 123, 251, 0.25);
}

.cms-actions {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  flex-wrap: wrap;
}

.cms-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  height: 3.6rem;
  padding: 0 1.2rem;
  border-radius: 999px;
  border: 1px solid var(--st-muted-bright);
  background-color: var(--base);
  color: var(--t-bright);
  text-decoration: none;
  font: normal var(--fw-medium) 1.3rem/1 var(--_font-accent);
  transition: all 0.2s ease;
}

.cms-action:hover {
  background-color: var(--base-tint);
  transform: translateY(-1px);
}

.cms-action[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.cms-action-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem;
  background: var(--base);
  border: 1px solid var(--border);
  border-radius: var(--_radius-m);
  color: var(--t-medium);
  width: 100%;
  text-decoration: none;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.cms-action-card:hover {
  background-color: rgba(0, 0, 0, 0.04);
  border-color: var(--t-muted);
}

.cms-action-card__label {
  font-weight: 600;
  font-size: 1.4rem;
}
.cms-action-card__label i {
  margin-right: 0.5rem;
  color: var(--accent);
  font-size: 1.6rem;
  vertical-align: middle;
}

.cms-action-card__arrow {
  font-size: 1.4rem;
}

.cms-actions--stack {
  flex-direction: column;
  margin-top: 1rem;
}

.cms-btn-primary {
  background: var(--accent);
  color: var(--base);
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 4px;
  border: none;
  font-weight: 500;
  font-size: 1.4rem;
  flex-shrink: 0;
  cursor: pointer;
  transition: opacity 0.15s ease;
}
.cms-btn-primary:hover {
  opacity: 0.9;
}

.cms-chart {
  width: 100%;
  display: block;
  height: 280px;
}
@media only screen and (min-width: 768px) {
  .cms-chart {
    height: 320px;
  }
}

.cms-chart-box {
  position: relative;
  width: 100%;
  height: 280px;
}
@media only screen and (min-width: 768px) {
  .cms-chart-box {
    height: 320px;
  }
}

.cms-chart-canvas {
  width: 100% !important;
  height: 100% !important;
  display: block;
}

.cms-alert {
  border-radius: 1.6rem;
  padding: 1.6rem 1.8rem;
  border: 1px solid var(--st-muted-bright);
  background-color: var(--base-tint);
  color: var(--t-medium);
  font: normal var(--fw-regular) 1.4rem/1.5 var(--_font-accent);
}

.cms-alert--danger {
  border-color: rgba(255, 71, 87, 0.3);
  background-color: rgba(255, 71, 87, 0.08);
  color: var(--t-bright);
}

.cms-input {
  border-radius: 1.2rem;
  border: 1px solid var(--cms-border-subtle);
  background-color: var(--base);
  padding: 0 1.2rem;
  font: normal var(--fw-regular) 1.4rem/1.4 var(--_font-accent);
  color: var(--t-bright);
  width: min(32rem, 100%);
  transition: all 0.2s ease;
}

.cms-input:hover {
  border-color: var(--t-medium);
}

input.cms-input {
  height: 4.4rem;
}

textarea.cms-input {
  min-height: 10rem;
  padding: 1rem 1.2rem;
  resize: vertical;
}

.cms-input--code {
  font-family: monospace;
  font-size: 1.3rem;
  white-space: pre;
}

.cms-text-sm {
  display: block;
  margin-top: 0.6rem;
  font-size: 1.2rem;
  color: var(--t-medium);
}

.cms-text-subtle {
  opacity: 0.72;
}

.cms-input:focus-visible,
.cms-select:focus-visible,
.cms-action:focus-visible,
.cms-nav__link:focus-visible,
.cms-btn:focus-visible {
  outline: 0;
  background-color: var(--base);
  box-shadow: 0 0 0 2px rgba(255, 122, 0, 0.3);
  border-color: rgba(255, 122, 0, 0.55);
}

.cms-text-sm {
  display: block;
  margin-top: 0.6rem;
  font: normal var(--fw-regular) 1.2rem/1.4 var(--_font-accent);
  color: var(--t-muted);
}

.cms-form {
  display: flex;
  flex-direction: column;
  gap: 1.8rem;
}

.cms-form__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.4rem;
}
@media only screen and (min-width: 768px) {
  .cms-form__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.6rem 2rem;
  }
}

.cms-form__field {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  min-width: 0;
}

.cms-form__label {
  font: normal var(--fw-medium) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-medium);
}

.cms-form__section {
  grid-column: 1/-1;
  margin-top: 1rem;
  padding-top: 2rem;
  border-top: 1px dashed var(--cms-border-subtle);
}

.cms-form__section-title {
  margin: 0 0 1.6rem;
  font: normal var(--fw-medium) 1.5rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  display: flex;
  align-items: center;
  gap: 1rem;
}

.cms-form__section-title::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--cms-border-subtle);
  opacity: 0.5;
}

.cms-form__section-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.4rem;
}
@media only screen and (min-width: 768px) {
  .cms-form__section-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.cms-form__section-grid > .cms-form__field {
  width: 100%;
}

.cms-form__section-grid textarea.cms-input {
  min-height: 12rem;
}

.cms-form .cms-input,
.cms-form .cms-select {
  width: 100%;
}

.cms-form__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: flex-start;
}

.cms-form__error {
  grid-column: 1/-1;
  border-radius: 1.6rem;
  padding: 1.4rem 1.6rem;
  border: 1px solid rgba(255, 71, 87, 0.3);
  background-color: rgba(255, 71, 87, 0.08);
  color: var(--t-bright);
  font: normal var(--fw-regular) 1.4rem/1.5 var(--_font-accent);
}

.cms-form__error p {
  margin: 0 0 0.8rem;
}

.cms-form__error ul {
  margin: 0;
  padding-left: 1.4rem;
}

.cms-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 0 1.8rem;
  height: 4.2rem;
  border-radius: 999px;
  border: 1px solid transparent;
  background-color: var(--cms-input-bg);
  color: var(--t-bright);
  text-decoration: none;
  font: normal var(--fw-medium) 1.4rem/1 var(--_font-accent);
  transition: transform 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.cms-btn:hover {
  background-color: rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}

.cms-btn--sm {
  height: 3.6rem;
  padding: 0 1.2rem;
  font-size: 1.2rem;
}

.cms-btn--primary {
  background-color: var(--brand-orange);
  color: white;
  box-shadow: 0 2px 8px rgba(255, 122, 0, 0.25);
}

.cms-btn--primary:hover {
  background-color: rgb(229.5, 109.8, 0);
  box-shadow: 0 4px 12px rgba(255, 122, 0, 0.35);
}

.cms-btn--ghost {
  background-color: transparent;
}

.cms-btn--ghost:hover {
  background-color: var(--base-tint);
}

.cms-field--stack {
  flex-direction: column;
  align-items: flex-start;
  gap: 0.6rem;
}

.cms-table-panel {
  border: none;
  border-radius: 1.6rem;
  background-color: var(--base-tint);
  padding: 1.6rem 0;
  margin-bottom: 1.6rem;
  overflow: hidden;
}

.cms-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.4rem;
  align-items: flex-end;
  justify-content: space-between;
}

.cms-filter-row__left {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  align-items: flex-end;
  flex: 1 1 auto;
  min-width: 0;
}

.cms-filter-row__right {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  align-items: flex-end;
  flex-shrink: 0;
}

.cms-ctrl-divider {
  height: 1px;
  background-color: var(--st-muted-bright);
  margin-top: 1.2rem;
}

.cms-ctrl-bulk-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  background-color: var(--base);
  margin: 0 0 -1.6rem;
  padding: 1.2rem 1.6rem;
}

.cms-table-controls__left,
.cms-table-controls__right {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  align-items: end;
}

.cms-table-controls__right {
  justify-content: flex-start;
}
@media only screen and (min-width: 768px) {
  .cms-table-controls__right {
    justify-content: flex-end;
  }
}

.cms-bulk-bar {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.cms-bulk-bar__label {
  font: normal var(--fw-medium) 1.3rem/1.2 var(--_font-accent);
  color: rgba(255, 122, 0, 0.85);
}

.cms-bulk-bar__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8rem;
}

.cms-bulk-bar__select {
  height: 3.6rem;
  min-width: 16rem;
}

.cms-bulk-bar__apply {
  background-color: rgba(255, 122, 0, 0.12);
  color: rgba(255, 122, 0, 0.9);
  border-color: rgba(255, 122, 0, 0.3);
}

.cms-bulk-bar__apply:hover:not([disabled]) {
  background-color: rgba(255, 122, 0, 0.9);
  color: white;
  border-color: transparent;
}

.cms-bulk-bar__clear {
  color: var(--t-medium);
  border-color: var(--st-muted-bright);
}

.cms-bulk-bar__apply[disabled],
.cms-bulk-bar__clear[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}

.cms-table-info {
  font: normal var(--fw-medium) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}

.cms-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  margin-top: 1.6rem;
}

.cms-pagination__controls {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

.cms-pagination__meta {
  font: normal var(--fw-regular) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}

.cms-th {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.cms-th__icon {
  display: inline-block;
  min-width: 1.2rem;
  color: var(--t-muted);
}

.cms-th-select,
.cms-td-select {
  width: 4.2rem;
  text-align: center;
}

.cms-checkbox {
  width: 1.8rem;
  height: 1.8rem;
  accent-color: rgba(255, 122, 0, 0.95);
}

.cms-view {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.cms-view__label {
  font: normal var(--fw-medium) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}

.cms-view__toggle {
  display: inline-flex;
  background-color: rgba(0, 0, 0, 0.06);
  border: 1px solid var(--st-muted-bright);
  border-radius: 999px;
  padding: 3px;
  gap: 2px;
}

.cms-profile {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

.cms-profile__name {
  font: normal var(--fw-medium) 1.4rem/1 var(--_font-accent);
  color: var(--t-bright);
  display: none;
}
@media only screen and (min-width: 768px) {
  .cms-profile__name {
    display: block;
  }
}

.cms-profile__avatar {
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid var(--base);
  box-shadow: 0 0 0 1px var(--st-muted-bright);
}
.cms-profile__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cms-view__btn {
  height: 3.2rem;
  padding: 0 1.2rem;
  border: none;
  border-radius: 999px;
  background: none;
  font: normal var(--fw-medium) 1.3rem/1 var(--_font-accent);
  color: var(--t-muted);
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
  white-space: nowrap;
}

.cms-view__btn:hover:not(.is-active) {
  color: var(--t-bright);
  background-color: rgba(0, 0, 0, 0.04);
}

.cms-view__btn.is-active {
  background-color: var(--base);
  color: var(--t-bright);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.08);
  font-weight: var(--fw-medium);
}

.cms-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}
@media only screen and (min-width: 768px) {
  .cms-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.cms-carditem {
  border: 0;
  border-radius: 1.8rem;
  background-color: var(--cms-surface);
  padding: 2rem;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  box-shadow: var(--cms-shadow-sm);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.cms-carditem:hover {
  box-shadow: var(--cms-shadow-md);
  transform: translateY(-2px);
}

.cms-carditem__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
}

.cms-carditem__head-left {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}

.cms-carditem__id {
  font: normal var(--fw-medium) 1.2rem/1.2 var(--_font-accent);
  color: var(--t-muted);
  white-space: nowrap;
}

.cms-carditem__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.2rem;
}
@media only screen and (min-width: 768px) {
  .cms-carditem__grid {
    grid-template-columns: 1fr auto;
    align-items: center;
  }
}

.cms-carditem__title {
  font: normal var(--fw-medium) 1.6rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}

.cms-carditem__meta {
  margin-top: 0.6rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  align-items: center;
  font: normal var(--fw-regular) 1.3rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}

.cms-carditem__dot {
  opacity: 0.8;
}

.cms-carditem__actions {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  justify-content: flex-start;
}
@media only screen and (min-width: 768px) {
  .cms-carditem__actions {
    justify-content: flex-end;
  }
}

.cms-page .mxd-menu__left {
  overflow-x: auto;
  scrollbar-width: none;
}
.cms-page .mxd-menu__left::-webkit-scrollbar {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .cms-page .mxd-menu__data {
    width: 50%;
    left: auto;
    right: 0;
    justify-content: flex-end;
    align-items: flex-end;
  }
}

.cms-menu-footer {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding-bottom: 2rem;
  align-items: flex-start;
  text-align: left;
}
@media only screen and (min-width: 1200px) {
  .cms-menu-footer {
    align-items: flex-end;
    text-align: right;
  }
}
.cms-menu-footer .cms-settings-role {
  width: min(24rem, 100%);
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding: 0;
  border: none;
  background-color: transparent;
  box-shadow: none;
  align-items: flex-start;
  text-align: left;
}
.cms-menu-footer .cms-settings-role__label {
  font: normal var(--fw-bold) 1.1rem/1.2 var(--_font-accent);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--t-muted);
  margin-left: 0.4rem;
}
.cms-menu-footer .cms-settings-role__field {
  width: 100%;
}
.cms-menu-footer .cms-settings-role .cms-select {
  width: 100%;
  max-width: 100%;
  height: 4.6rem;
  font-size: 1.4rem;
  border: 1px solid transparent;
  background-color: rgba(0, 0, 0, 0.03);
  border-radius: 1.2rem;
  transition: all 0.2s ease;
}
.cms-menu-footer .cms-settings-role .cms-select:hover {
  background-color: rgba(0, 0, 0, 0.06);
}
.cms-menu-footer .cms-menu-footer__actions {
  width: min(24rem, 100%);
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  align-items: stretch;
}
@media only screen and (min-width: 1200px) {
  .cms-menu-footer .cms-menu-footer__actions {
    align-items: stretch;
  }
}
.cms-menu-footer .cms-menu-footer__actions .btn {
  width: 100%;
  justify-content: space-between;
  padding: 0 1.6rem;
  height: 4.6rem;
  border-radius: 1.2rem;
  border: none !important;
  background-color: transparent;
  color: var(--t-medium) !important;
  font-weight: var(--fw-medium);
  font-size: 1.4rem;
  box-shadow: none !important;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.cms-menu-footer .cms-menu-footer__actions .btn .btn-caption {
  flex: 1;
  text-align: left;
  transition: transform 0.2s ease;
}
.cms-menu-footer .cms-menu-footer__actions .btn i {
  font-size: 1.8rem;
  transition: transform 0.2s ease;
}
.cms-menu-footer .cms-menu-footer__actions .btn:hover {
  background-color: rgba(0, 0, 0, 0.03);
  color: var(--t-bright) !important;
}
.cms-menu-footer .cms-menu-footer__actions .btn:hover .btn-caption {
  transform: translateX(4px);
}
.cms-menu-footer .cms-menu-footer__actions .btn:hover i {
  transform: translateX(4px);
}
.cms-menu-footer .cms-menu-footer__actions [data-cms-logout-sidebar] {
  color: #ff4757 !important;
}
.cms-menu-footer .cms-menu-footer__actions [data-cms-logout-sidebar]:hover {
  background-color: rgba(255, 71, 87, 0.06);
  color: #ff4757 !important;
}
.cms-menu-footer .cms-menu-footer__love {
  opacity: 0.5;
  text-align: right;
  margin-top: 1rem;
  font-size: 1.1rem;
}

/* --- REFACTOR PROMPT CLASSES --- */
/* Primary CTA Buttons */
.btn-primary {
  background: var(--accent);
  color: #FFFFFF;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 1.4rem;
  letter-spacing: 0.01em;
  border: none;
  border-radius: var(--_radius-pill);
  padding: 10px 24px;
  box-shadow: var(--shadow-flame);
  transition: box-shadow var(--_animspeed-fast) var(--ease-standard), transform var(--_animspeed-fast) var(--ease-standard);
  cursor: pointer;
}

.btn-primary:hover {
  box-shadow: 0 8px 32px rgba(223, 87, 49, 0.28);
  transform: translateY(-1px);
}

.btn-primary:active {
  transform: scale(0.98) translateY(0);
  box-shadow: var(--shadow-sm);
  transition-duration: 0.08s;
}

/* Secondary / Ghost Buttons */
.btn-secondary {
  background: var(--glass-l2-card);
  backdrop-filter: var(--blur-l2);
  border: 1px solid var(--border-l1);
  color: var(--accent);
  font-weight: 600;
  font-size: 1.4rem;
  border-radius: var(--_radius-pill);
  padding: 9px 22px;
  transition: background var(--_animspeed-fast) var(--ease-standard), border-color var(--_animspeed-fast) var(--ease-standard);
}

.btn-secondary:hover {
  background: var(--tonal-flame);
  border-color: rgba(223, 87, 49, 0.3);
}

/* Tabs */
.tabs {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--border-l2);
  position: relative;
}

.tab {
  padding: 12px 20px;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 1.4rem;
  color: var(--t-muted);
  cursor: pointer;
  transition: color var(--_animspeed-fast) var(--ease-standard);
}

.tab.active {
  color: var(--accent);
  font-weight: 600;
}

.tab:hover:not(.active) {
  color: var(--t-medium);
}

.tab-indicator {
  position: absolute;
  bottom: -1px;
  height: 2px;
  background: var(--accent);
  border-radius: var(--_radius-pill);
  left: var(--indicator-left, 0);
  width: var(--indicator-width, 0);
  transition: left var(--_animspeed-medium) var(--ease-standard), width var(--_animspeed-medium) var(--ease-standard);
}

/* Status / Label Chips */
.chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border-radius: var(--_radius-pill);
  padding: 3px 10px;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.6;
  border: none;
}

.chip-published {
  background: var(--tonal-green);
  color: var(--on-tonal-green);
}

.chip-scheduled {
  background: var(--tonal-flame);
  color: var(--on-tonal-flame);
}

.chip-review {
  background: var(--tonal-yellow);
  color: var(--on-tonal-yellow);
}

.chip-draft {
  background: var(--tonal-coyote);
  color: var(--on-tonal-coyote);
}

/* Metric / KPI Tiles */
.metric-delta {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 12px;
  font-weight: 600;
  border-radius: var(--_radius-pill);
  padding: 2px 8px;
}

.metric-delta.positive {
  background: var(--tonal-green);
  color: var(--on-tonal-green);
}

.metric-delta.negative {
  background: rgba(186, 26, 26, 0.1);
  color: #7A1212;
}

.metric-delta.neutral {
  background: var(--tonal-coyote);
  color: var(--on-tonal-coyote);
}

.metric-delta.positive::before {
  content: "↑";
}

.metric-delta.negative::before {
  content: "↓";
}

/* Search / Filter Inputs */
.search-input {
  background: var(--glass-l3-input);
  backdrop-filter: var(--blur-l3);
  -webkit-backdrop-filter: var(--blur-l3);
  border: 1px solid var(--border-l3);
  border-radius: var(--_radius-pill);
  padding: var(--space-input-padding);
  font-family: var(--font-body);
  font-size: 1.4rem;
  color: var(--t-bright);
  box-shadow: inset 0 1px 3px rgba(46, 32, 25, 0.05);
  transition: border-color var(--_animspeed-fast) var(--ease-standard), box-shadow var(--_animspeed-fast) var(--ease-standard);
  outline: none;
}

.search-input:focus {
  border-color: var(--border-focus);
  box-shadow: 0 0 0 3px rgba(223, 87, 49, 0.12), inset 0 1px 3px rgba(46, 32, 25, 0.05);
}

/* Tables */
table {
  border-collapse: collapse;
  width: 100%;
}

th {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--t-muted);
  padding: 10px 16px;
  text-align: left;
  border-bottom: 1px solid var(--border-l1);
}

td {
  padding: 13px 16px;
  font-size: 1.4rem;
  color: var(--t-bright);
  border-bottom: 1px solid var(--border-l2);
}

tr:last-child td {
  border-bottom: none;
}

tr:hover td {
  background: rgba(223, 87, 49, 0.03);
}

.action-link {
  color: var(--accent);
  font-weight: 500;
  text-decoration: none;
  transition: opacity var(--_animspeed-fast) var(--ease-standard);
}

.action-link:hover {
  opacity: 0.75;
}

/* MD3 label small */
.label-sm {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--t-muted);
}

/* Metric numbers */
.metric-value {
  font-family: var(--font-body);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.03em;
  line-height: 1;
}

/* ─── CMS Toggle Group (tabs) ────────────────────────────────── */
.cms-toggle-group {
  display: flex;
  gap: 0.25rem;
  background: var(--base);
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 4px;
}

.cms-toggle-group__btn {
  padding: 0.5rem 1.2rem;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: var(--text-light);
  font-size: 1.2rem;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.18s, color 0.18s;
  white-space: nowrap;
}

.cms-toggle-group__btn--active {
  background: var(--additional);
  color: #fff;
  font-weight: 600;
}

.cms-toggle-group__btn:hover:not(.cms-toggle-group__btn--active) {
  background: var(--base-tint);
  color: var(--text);
}

/* ─── CMS Media Toggle Group (larger variant) ───────────────── */
.cms-page[data-cms-page=media] .cms-toggle-group__btn {
  padding: 0.8rem 1.9rem;
  font-size: 1.6rem;
}

.cms-drawer {
  position: fixed;
  inset: 0;
  z-index: 80;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.cms-drawer__scrim {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

.cms-drawer__panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: min(420px, 92vw);
  background: var(--base);
  border-left: 1px solid var(--border);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25);
  transform: translateX(100%);
  transition: transform 0.22s ease;
  display: flex;
  flex-direction: column;
  outline: none;
}

.cms-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.2rem 1.2rem;
  border-bottom: 1px solid var(--border);
}

.cms-drawer__title {
  margin: 0;
  font-size: 1.4rem;
}

.cms-drawer__content {
  padding: 1.2rem;
  overflow: auto;
}

.cms-drawer__footer {
  margin-top: auto;
  display: flex;
  gap: 0.8rem;
  padding: 1.2rem;
  border-top: 1px solid var(--border);
}

.cms-drawer--open {
  opacity: 1;
  pointer-events: auto;
}
.cms-drawer--open .cms-drawer__panel {
  transform: translateX(0);
}

@media (min-width: 1024px) {
  .cms-drawer {
    display: none;
  }
}
.cms-cardrow {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1.2rem;
  padding: 1.2rem;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--base);
}

.cms-cardrow__media {
  grid-column: 1/-1;
  border-radius: 12px;
  overflow: hidden;
  background: var(--base-tint);
  border: 1px solid var(--border);
}

.cms-cardrow__img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  display: block;
}

.cms-cardrow__placeholder {
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--t-muted);
}

.cms-cardrow__body {
  grid-column: 1/-1;
}

.cms-cardrow__title {
  font-weight: 700;
  font-size: 1.1rem;
  margin-bottom: 0.6rem;
}

.cms-cardrow__meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.8rem 1.2rem;
  margin: 0;
}
.cms-cardrow__meta dt {
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--t-muted);
}
.cms-cardrow__meta dd {
  margin: 0;
  font-size: 0.95rem;
}

.cms-cardrow__actions {
  grid-column: 1/-1;
  display: inline-flex;
  gap: 0.6rem;
  align-items: center;
  justify-content: flex-end;
}

.cms-icon-btn {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--base);
  color: var(--t-bright);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cms-icon-btn:focus-visible {
  outline: 2px solid var(--additional);
  outline-offset: 2px;
}

.cms-media-thumb {
  height: 40px;
  width: auto;
  border-radius: 6px;
  display: block;
}

.cms-media-thumb__icon {
  font-size: 24px;
}

@media (min-width: 768px) {
  .cms-cardrow__img,
  .cms-cardrow__placeholder {
    height: 200px;
  }
}
/* ------------------------------------------------*/
/* Block - CMS End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Hover Reveal Start */
/* ------------------------------------------------*/
.hover-reveal {
  display: block;
}

.hover-reveal__item {
  position: relative;
}

.hover-reveal__content {
  display: none;
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  width: 300px;
  height: 300px;
  pointer-events: none;
  border-radius: var(--_radius-m);
  overflow: hidden;
  opacity: 0;
  transform: translate(-80%, -50%);
  transition: transform var(--_animspeed-medium), opacity var(--_animspeed-medium) var(--_animbezier);
  z-index: 1;
}
.hover-reveal__content.overflow-visible {
  overflow: visible;
}
.hover-reveal__content.hover-reveal-360x440 {
  width: 360px;
  height: 440px;
}
.hover-reveal__content.hover-reveal-280x340 {
  width: 280px;
  height: 340px;
}
.hover-reveal__content.hover-reveal-260x260 {
  width: 220px;
  height: 220px;
}
@media only screen and (min-width: 1200px) {
  .hover-reveal__content {
    display: block;
  }
}
@media only screen and (min-width: 1600px) {
  .hover-reveal__content.hover-reveal-260x260 {
    width: 260px;
    height: 260px;
  }
}

.hover-reveal__image {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1, 1.4);
  transform-origin: top left;
  transition: transform 0.5s var(--_animbezier);
}

/* ------------------------------------------------*/
/* Features - Hover Reveal End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - About Start */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - About End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Pinned Image Start */
/* ------------------------------------------------*/
.page-padding {
  width: 100%;
  padding: 0;
}
@media only screen and (min-width: 1200px) {
  .page-padding {
    padding: 6rem 0;
  }
}
@media only screen and (min-width: 1600px) {
  .page-padding {
    padding: 9rem 0;
  }
}

.mxd-pinned {
  display: block;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned {
    display: flex;
    gap: 3rem;
  }
}

.mxd-pinned__visual {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__visual {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
  }
}

.mxd-pinned__img-wrap {
  width: 30em;
  height: 40em;
  max-height: 100%;
  max-width: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-l);
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__img-wrap {
    width: 100%;
    height: 100%;
  }
}

.mxd-pinned__img-list {
  position: relative;
  width: 100%;
  height: 100%;
}

.mxd-pinned__img-item {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--_animspeed-medium);
}
.mxd-pinned__img-item.is-active {
  opacity: 1;
}

.mxd-pinned__img {
  width: auto;
  height: 30rem;
  object-fit: cover;
  border-radius: 2em;
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned__img {
    height: 40rem;
  }
}

.mxd-pinned__content {
  padding: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__content {
    padding: 6rem 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned__content {
    padding: 9rem 0;
  }
}

.mxd-pinned__text-wrap {
  padding: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__text-wrap {
    padding: 0 9rem 0 3rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned__text-wrap {
    padding: 0 9rem 0 6rem;
  }
}

.mxd-pinned__text-list {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media only screen and (min-width: 768px) {
  .mxd-pinned__text-list {
    gap: 8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__text-list {
    gap: 0;
  }
}

.mxd-pinned__text-item {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__text-item {
    height: calc(100vh - 12rem);
    max-width: 640px;
    justify-content: center;
    opacity: 0.2;
    transition: opacity var(--_animspeed-medium);
  }
  .mxd-pinned__text-item.is-active {
    opacity: 1;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned__text-item {
    height: calc(100vh - 18rem);
  }
}

.mxd-pinned__img-mobile {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 460px;
  background-color: var(--base-tint);
  border-radius: var(--_radius-l);
  margin-bottom: 2.4rem;
}
.mxd-pinned__img-mobile img {
  display: block;
  width: auto;
  height: 24rem;
  object-fit: cover;
  border-radius: 2em;
}
@media only screen and (min-width: 768px) {
  .mxd-pinned__img-mobile {
    height: 600px;
  }
  .mxd-pinned__img-mobile img {
    height: 30rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__img-mobile {
    display: none;
  }
}

.mxd-pinned__title {
  margin-bottom: 3.4rem;
}
.mxd-pinned__title.centered-mobile {
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__title.centered-mobile {
    text-align: left;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned__title {
    margin-bottom: 4rem;
  }
}

.mxd-pinned__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 3.2rem;
}
.mxd-pinned__tags.centered-mobile {
  justify-content: center;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned__tags.centered-mobile {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned__tags {
    gap: 1.4rem;
    margin-bottom: 3.8rem;
  }
}

/* ------------------------------------------------*/
/* Features - Pinned Image End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Pinned Universal Start */
/* ------------------------------------------------*/
.mxd-pinned-universal {
  position: relative;
}

.mxd-pinned-universal__static-inner {
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned-universal__static-inner {
    position: sticky;
    top: 0;
    padding-top: 6rem;
    text-align: left;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned-universal__static-inner {
    padding-top: 9rem;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-pinned-universal__scroll {
    padding-top: 6rem;
    grid-column-gap: 1.2rem;
    grid-row-gap: 1.2rem;
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch;
    display: flex;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned-universal__scroll {
    padding-top: 9rem;
  }
}

.mxd-pinned-universal__scroll-inner {
  display: flex;
  flex-direction: column;
  gap: 6.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-pinned-universal__scroll-inner {
    gap: 7.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned-universal__scroll-inner {
    gap: 9.3rem;
  }
}

/* ------------------------------------------------*/
/* Features - Pinned Universal End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Pinned Projects Start */
/* ------------------------------------------------*/
.mxd-pinned-projects {
  position: relative;
}

.mxd-pinned-projects__static-inner {
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned-projects__static-inner {
    position: sticky;
    top: 0;
    padding-top: 6rem;
    text-align: left;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned-projects__static-inner {
    padding-top: 9rem;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-pinned-projects__scroll {
    padding-top: 6rem;
    grid-column-gap: 1.2rem;
    grid-row-gap: 1.2rem;
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch;
    display: flex;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned-projects__scroll {
    padding-top: 9rem;
  }
}

.mxd-pinned-projects__scroll-inner {
  display: flex;
  flex-direction: column;
  gap: 6.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-pinned-projects__scroll-inner {
    gap: 7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-pinned-projects__scroll-inner {
    gap: 9rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pinned-projects__scroll-inner {
    gap: 11rem;
  }
}

/* ------------------------------------------------*/
/* Features - Pinned Projects End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Projects List Start */
/* ------------------------------------------------*/
.mxd-projects-list {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-projects-list > .mxd-projects-list__item {
    transition: opacity 0.3s ease;
  }
  .mxd-projects-list:hover > .mxd-projects-list__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-projects-list__item {
  position: relative;
  display: block;
  margin-top: -2px;
}
.mxd-projects-list__item:first-of-type {
  margin-top: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__item:hover .mxd-projects-list__title p, .mxd-projects-list__item[aria-expanded=true] .mxd-projects-list__title p {
    transform: translateX(0);
  }
  .mxd-projects-list__item:hover .mxd-projects-list__icon, .mxd-projects-list__item[aria-expanded=true] .mxd-projects-list__icon {
    transform: translateX(0);
  }
  .mxd-projects-list__item:hover .mxd-projects-list__icon i::before, .mxd-projects-list__item[aria-expanded=true] .mxd-projects-list__icon i::before {
    animation: var(--_animspeed-slow) var(--_animbezier) 0.2s 1 both slideRight;
  }
  .mxd-projects-list__item:hover .mxd-projects-list__product p, .mxd-projects-list__item[aria-expanded=true] .mxd-projects-list__product p {
    transform: translateX(0);
  }
  .mxd-projects-list__item:hover .mxd-projects-list__icon-v2, .mxd-projects-list__item[aria-expanded=true] .mxd-projects-list__icon-v2 {
    transform: translateX(0);
  }
  .mxd-projects-list__item:hover .mxd-projects-list__icon-v2 i::before, .mxd-projects-list__item[aria-expanded=true] .mxd-projects-list__icon-v2 i::before {
    animation: var(--_animspeed-slow) var(--_animbezier) 0.3s 1 both slideRightUp;
  }
}

.mxd-projects-list__border {
  position: relative;
  left: 1.5rem;
  width: calc(100% - 3rem);
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-projects-list__inner {
  display: block;
  padding: 2.2rem 0;
}

.mxd-projects-list__item--has-children .mxd-projects-list__inner {
  padding: 2.2rem 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__item--has-children .mxd-projects-list__inner {
    padding: 1.8rem 0;
  }
}

.mxd-projects-list__inner-v2 {
  display: block;
  padding: 4rem 0 5.6rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-projects-list__inner-v2 {
    padding: 3.7rem 0 5.5rem 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__inner-v2 {
    padding: 6rem 0;
  }
}

.mxd-projects-list__title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1.2rem;
  overflow: hidden;
}
.mxd-projects-list__title p {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}

.mxd-list-hint {
  margin-left: 0;
  margin-top: 0.4rem;
  width: 100%;
  font: normal var(--fw-medium) 1.4rem/1.2 var(--_font-default);
  transition: all var(--_animspeed-medium) ease;
  white-space: nowrap;
}
@media only screen and (min-width: 768px) {
  .mxd-list-hint {
    width: auto;
    margin-left: auto;
    margin-top: 0;
    font-size: 1.6rem;
  }
}
.mxd-list-hint.is-interactive {
  color: var(--brand-orange);
  text-decoration: underline;
  cursor: pointer;
  position: relative;
  z-index: 2;
}
.mxd-list-hint.is-interactive:hover {
  opacity: 0.8;
}
.mxd-list-hint.is-disabled {
  color: var(--t-muted);
  opacity: 0.7;
  cursor: default;
  font-style: italic;
}
@media only screen and (min-width: 768px) {
  .mxd-list-hint {
    margin-bottom: 3.9rem;
  }
  .mxd-list-hint p {
    font-size: 4.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-list-hint {
    display: flex;
    align-items: center;
    gap: 1rem;
    height: auto;
    margin-bottom: 0;
  }
  .mxd-list-hint p {
    transform: translateX(-5.4rem);
    transition: transform var(--_animspeed-medium) var(--_animbezier);
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-list-hint p {
    font-size: 4.4rem;
  }
}

.mxd-projects-list__title-v2 {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 3.1rem;
  overflow: hidden;
}
.mxd-projects-list__title-v2 p {
  font: normal var(--fw-medium) 4.4rem/1.2 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-projects-list__title-v2 {
    margin-bottom: 3rem;
  }
  .mxd-projects-list__title-v2 p {
    font-size: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__title-v2 {
    display: flex;
    align-items: center;
    gap: 1rem;
    height: 100%;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-projects-list__title-v2 p {
    font-size: 7rem;
  }
}

.mxd-projects-list__icon {
  position: relative;
  display: flex;
  font-size: 3rem;
}
.mxd-projects-list__icon i {
  display: inline-flex;
  position: relative;
  overflow: hidden;
  color: var(--t-bright);
  transition: color var(--_animspeed-medium) var(--_animbezier);
}
@media only screen and (min-width: 768px) {
  .mxd-projects-list__icon {
    font-size: 4.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__icon {
    transform: translateX(-5.4rem);
    transition: transform var(--_animspeed-medium) var(--_animbezier);
  }
}

.mxd-projects-list__icon-v2 {
  position: relative;
  display: flex;
  font-size: 1.8rem;
}
.mxd-projects-list__icon-v2 i {
  display: inline-flex;
  position: relative;
  overflow: hidden;
  color: var(--t-bright);
  transition: color var(--_animspeed-medium) var(--_animbezier);
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__icon-v2 {
    font-size: 2.2rem;
    transform: translateX(3.2rem);
    transition: transform var(--_animspeed-medium) var(--_animbezier);
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-projects-list__icon-v2 {
    font-size: 2.6rem;
    transform: translateX(3.8rem);
  }
}

.mxd-projects-list__image {
  display: block;
  border-radius: var(--_radius-m);
  overflow: hidden;
  margin-bottom: 3.4rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__image {
    display: none;
  }
}

.mxd-projects-list__tagslist {
  margin-bottom: 0.6rem;
}
.mxd-projects-list__tagslist ul li p {
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-projects-list__tagslist {
    margin-bottom: 1.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__tagslist {
    margin-bottom: 0;
  }
}

.mxd-projects-list__tagslist-v2 {
  margin-bottom: 1rem;
}
.mxd-projects-list__tagslist-v2 ul {
  display: flex;
  gap: 1rem;
  color: var(--t-bright);
}
.mxd-projects-list__tagslist-v2 ul li {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.mxd-projects-list__tagslist-v2 ul li p {
  line-height: 1.2;
  color: var(--t-bright);
}
.mxd-projects-list__tagslist-v2 ul li svg {
  width: 1.7rem;
  height: 1.7rem;
  fill: currentColor;
}
@media only screen and (min-width: 768px) {
  .mxd-projects-list__tagslist-v2 {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__tagslist-v2 {
    display: flex;
    align-items: center;
    height: 100%;
  }
  .mxd-projects-list__tagslist-v2 ul {
    transition: transform var(--_animspeed-medium) var(--_animbezier);
  }
}

.mxd-projects-list__date {
  text-align: right;
}
.mxd-projects-list__date p {
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__date {
    text-align: right;
  }
}

.mxd-projects-list__product {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.8rem;
  text-align: right;
}
.mxd-projects-list__product p {
  line-height: 1.2;
  font-weight: var(--fw-medium);
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-projects-list__product {
    justify-content: flex-end;
    gap: 1.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-list__product {
    display: flex;
    align-items: center;
    justify-content: end;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  .mxd-projects-list__product p {
    transform: translateX(3.2rem);
    transition: transform var(--_animspeed-medium) var(--_animbezier);
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-projects-list__product p {
    transform: translateX(3.8rem);
  }
}

.mxd-projects-sublist {
  position: relative;
  margin: 0.6rem 0 0 0;
  padding-left: 2.2rem;
  list-style: none;
  display: none;
  gap: 0.8rem;
}
.mxd-projects-sublist::before {
  content: "";
  position: absolute;
  left: 0.6rem;
  top: 0;
  bottom: 0;
  width: 0.4rem;
  background-color: var(--additional);
  border-radius: var(--_radius-s);
}
.mxd-projects-sublist li {
  margin: 0;
}
.mxd-projects-sublist a {
  position: relative;
  display: block;
  width: 100%;
  padding: 0.2rem 0 0.4rem 0;
  cursor: pointer;
  text-decoration: none;
  color: var(--t-bright);
  font: normal var(--fw-regular) 2rem/1.6 var(--_font-default);
  transition: color var(--_animspeed-medium) var(--_animbezier);
}
.mxd-projects-sublist a:hover, .mxd-projects-sublist a:focus {
  color: var(--t-medium);
}
.mxd-projects-sublist a span {
  display: inline-block;
  pointer-events: none;
}
.mxd-projects-sublist .hover-reveal__content {
  display: none !important;
}

.mxd-projects-list__item[aria-expanded=true] .mxd-projects-sublist {
  display: grid;
}

.mxd-projects-list__item--has-children:focus-within .mxd-projects-sublist {
  display: grid;
}

.mxd-projects-list__overlay {
  display: none;
  border-radius: var(--_radius-m);
  overflow: hidden;
  position: fixed;
  right: 9rem;
  top: clamp(6rem, 10vh, 12rem);
  width: clamp(280px, 32vw, 460px);
  max-height: 80vh;
  z-index: 999;
  pointer-events: none;
  will-change: transform, opacity;
}
.mxd-projects-list__overlay img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mxd-projects-list__item--has-children:focus-within .mxd-projects-list__overlay,
.mxd-projects-list__item--has-children[aria-expanded=true] .mxd-projects-list__overlay {
  display: block;
}

@media only screen and (min-width: 1200px) {
  .mxd-projects-list__item--has-children .mxd-projects-list__title {
    height: auto;
    margin: 1.2rem 0;
  }
}

@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list.is-focused .mxd-projects-list__item:not([aria-expanded=true]) .mxd-projects-list__title p {
    opacity: 0.4;
  }
  .library-page .mxd-projects-list.is-focused .mxd-projects-list__item[aria-expanded=true] .mxd-projects-list__title p {
    opacity: 1;
  }
}
.library-page .mxd-projects-list__title {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  column-gap: 1rem;
}
.library-page .mxd-projects-list__title p {
  min-width: 0;
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list__title {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 1rem;
  }
  .library-page .mxd-projects-list__title p {
    flex: 1 1 auto;
  }
}
.library-page .mxd-projects-list__icon {
  display: none;
}
.library-page .mxd-list-hint {
  width: auto;
  margin-top: 0;
  margin-left: auto;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  flex: 0 0 3.2rem;
  align-self: center;
}
.library-page .mxd-list-hint i {
  font-size: 2.2rem;
  line-height: 1;
  transform: translateY(2px) rotate(0deg);
  transition: transform var(--_animspeed-fast) var(--_animbezier);
}
.library-page .mxd-projects-list__item[aria-expanded=true] .mxd-list-hint i {
  transform: translateY(2px) rotate(180deg);
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list__icon {
    display: flex;
  }
  .library-page .mxd-list-hint {
    display: none;
  }
}
.library-page .mxd-projects-list__item--has-children[aria-expanded=true] .mxd-projects-list__overlay {
  display: none;
}
.library-page .mxd-projects-list__item--has-children:focus-within .mxd-projects-list__overlay {
  display: none;
}
.library-page .mxd-projects-list__item--has-children:hover .mxd-projects-list__overlay {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list__item--has-children[aria-expanded=true] .mxd-projects-list__overlay {
    display: block;
  }
  .library-page .mxd-projects-list__item--has-children:focus-within .mxd-projects-list__overlay {
    display: block;
  }
  .library-page .mxd-projects-list__item--has-children.is-hover-active .mxd-projects-list__overlay {
    display: block;
  }
  .library-page .mxd-projects-list__item--has-children:focus-within .mxd-projects-sublist {
    display: grid;
  }
}

.mxd-projects-list__item--has-children.is-hover-active .mxd-projects-sublist {
  display: grid;
}

.library-page .mxd-projects-sublist {
  display: block;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  margin-top: 0;
  transition: max-height 0.4s var(--_animbezier), opacity 0.4s var(--_animbezier), margin-top 0.4s var(--_animbezier);
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-sublist {
    display: none;
    max-height: none;
    opacity: 0;
    margin-top: 0.6rem;
    overflow: visible;
    transition: opacity 0.22s var(--_animbezier), transform 0.22s var(--_animbezier);
    transform: translateY(-4px);
  }
}

.library-page .mxd-projects-list__item[aria-expanded=true] .mxd-projects-sublist {
  display: block;
  max-height: 2000px;
  opacity: 1;
  margin-top: 0.6rem;
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list__item[aria-expanded=true] .mxd-projects-sublist {
    display: grid;
    max-height: none;
    transform: translateY(0);
  }
}

@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list__item--has-children.is-hover-active .mxd-projects-sublist,
  .library-page .mxd-projects-list__item--has-children:focus-within .mxd-projects-sublist {
    display: grid;
    opacity: 1;
    transform: translateY(0);
  }
}

.library-page .mxd-projects-list__item.is-collapsing .mxd-projects-sublist {
  display: block;
  max-height: 0;
  opacity: 0;
  margin-top: 0;
}
@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list__item.is-collapsing .mxd-projects-sublist {
    display: none;
  }
}

@media only screen and (min-width: 1200px) {
  .library-page .mxd-projects-list__item[aria-expanded=true] .mxd-projects-sublist li {
    animation: libSublistIn 0.2s var(--_animbezier) both;
  }
}

@keyframes libSublistIn {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes libSublistOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-4px);
  }
}
/* ------------------------------------------------*/
/* Features - Projects List End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Projects Masonry Start */
/* ------------------------------------------------*/
.mxd-projects-masonry {
  position: relative;
}

.mxd-projects-masonry__gallery {
  display: block;
}

.mxd-projects-masonry__title {
  position: relative;
  height: auto;
  padding: 0 1.5rem;
}
.mxd-projects-masonry__title.headline-title {
  margin-bottom: 12.9rem;
}
.mxd-projects-masonry__title.section-title {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-projects-masonry__title.headline-title {
    margin-bottom: 14.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-masonry__title {
    padding: 0 3rem;
  }
  .mxd-projects-masonry__title.headline-title {
    margin-bottom: 14.2rem;
  }
  .mxd-projects-masonry__title.section-title {
    margin-bottom: 16rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-projects-masonry__title {
    padding: 0 3rem;
  }
  .mxd-projects-masonry__title.headline-title {
    margin-bottom: 17.9rem;
  }
  .mxd-projects-masonry__title.section-title {
    margin-bottom: 20rem;
  }
}

.mxd-projects-masonry__item {
  padding: 0 1.5rem;
  margin-bottom: 6.2rem;
}
@media only screen and (min-width: 768px) {
  .mxd-projects-masonry__item {
    padding: 0 1.5rem;
    margin-bottom: 7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-masonry__item {
    padding: 0 3rem;
    margin-bottom: 9rem;
  }
  .mxd-projects-masonry__item:last-of-type {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-projects-masonry__item {
    padding: 0 4.5rem;
    margin-bottom: 11rem;
  }
}

.mxd-project-item__media.masonry-media {
  height: auto;
}
@media only screen and (min-width: 1200px) {
  .mxd-project-item__media.masonry-media {
    height: 600px;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-project-item__media.masonry-media {
    height: 600px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project-item__media.masonry-media {
    height: 800px;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-project-item__preview.masonry-preview {
    height: 600px;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-project-item__preview.masonry-preview {
    height: 600px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project-item__preview.masonry-preview {
    height: 800px;
  }
}

.mxd-projects-masonry__btngroup {
  padding: 0 1.5rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-projects-masonry__btngroup {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0 3rem;
  }
}

/* ------------------------------------------------*/
/* Features - Projects Masonry End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Awards List Start */
/* ------------------------------------------------*/
.mxd-awards-list {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-awards-list > .mxd-awards-list__item {
    transition: opacity 0.3s ease;
  }
  .mxd-awards-list:hover > .mxd-awards-list__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-awards-list__item {
  position: relative;
  display: block;
  margin-top: -2px;
}
.mxd-awards-list__item:first-of-type {
  margin-top: 0;
}
@media only screen and (min-width: 1200px) {
  .no-touch .mxd-awards-list__item:hover .mxd-awards-list__title p {
    transform: translateX(0);
  }
  .no-touch .mxd-awards-list__item:hover .mxd-awards-list__icon {
    transform: translateX(0);
  }
  .no-touch .mxd-awards-list__item:hover .mxd-awards-list__icon i::before {
    animation: var(--_animspeed-slow) var(--_animbezier) 0.2s 1 both slideRight;
  }
}

.mxd-awards-list__border {
  position: relative;
  left: 1.5rem;
  width: calc(100% - 3rem);
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-awards-list__inner {
  display: block;
  padding: 3rem 0;
}

.mxd-awards-list__title {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2.6rem;
  overflow: hidden;
}
.mxd-awards-list__title p {
  font: normal var(--fw-medium) 3rem/1.2 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-awards-list__title {
    margin-bottom: 2.9rem;
  }
  .mxd-awards-list__title p {
    font-size: 4.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-awards-list__title {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: center;
    gap: 1rem;
    height: 100%;
    margin-bottom: 0;
  }
  .mxd-awards-list__title p {
    transform: translateX(-5.4rem);
    transition: transform var(--_animspeed-medium) var(--_animbezier);
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-awards-list__title p {
    font-size: 4.4rem;
  }
}

.mxd-awards-list__icon {
  position: relative;
  display: flex;
  font-size: 3rem;
}
.mxd-awards-list__icon i {
  display: inline-flex;
  position: relative;
  overflow: hidden;
  color: var(--t-bright);
  transition: color var(--_animspeed-medium) var(--_animbezier);
}
@media only screen and (min-width: 768px) {
  .mxd-awards-list__icon {
    font-size: 4.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-awards-list__icon {
    transform: translateX(-5.4rem);
    transition: transform var(--_animspeed-medium) var(--_animbezier);
  }
}

.mxd-awards-list__image {
  display: block;
  border-radius: var(--_radius-m);
  overflow: hidden;
  margin-bottom: 3.4rem;
}
@media only screen and (min-width: 768px) {
  .mxd-awards-list__image {
    margin-bottom: 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-awards-list__image {
    display: none;
  }
}

.mxd-awards-list__tagslist {
  margin-bottom: 0.6rem;
}
.mxd-awards-list__tagslist ul li p {
  color: var(--t-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-awards-list__tagslist {
    margin-bottom: 1.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-awards-list__tagslist {
    margin-bottom: 0;
  }
}

.mxd-awards-list__date {
  text-align: right;
}
.mxd-awards-list__date p {
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  .mxd-awards-list__date {
    text-align: right;
  }
}

/* ------------------------------------------------*/
/* Features - Awards List End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Statistics Simple Start */
/* ------------------------------------------------*/
.mxd-stats-simple {
  position: relative;
}

@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-stats-simple > .mxd-stats-simple__item {
    transition: opacity 0.3s ease;
  }
  .mxd-stats-simple:hover > .mxd-stats-simple__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-stats-simple__item {
  position: relative;
  padding-top: 3rem;
}
.mxd-stats-simple__item:first-of-type {
  padding-top: 0;
}
.mxd-stats-simple__item:first-of-type .mxd-stats-simple__inner {
  padding-top: 6rem;
  border-top: 1px solid var(--st-bright);
}
.mxd-stats-simple__item .mxd-stats-simple__inner {
  padding-bottom: 6rem;
  border-bottom: 1px solid var(--st-bright);
}
@media only screen and (min-width: 992px) {
  .mxd-stats-simple__item {
    padding-top: 0;
  }
  .mxd-stats-simple__item .mxd-stats-simple__inner {
    padding-bottom: 0;
    border-bottom: none;
  }
  .mxd-stats-simple__item:first-of-type .mxd-stats-simple__inner {
    padding-top: 0;
    border-top: none;
  }
}
.no-touch .mxd-stats-simple__item:hover .mxd-stats-simple__image {
  opacity: 1;
  transform: scale(1);
}

.mxd-stats-simple__inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (min-width: 992px) {
  .mxd-stats-simple__inner {
    align-items: flex-start;
    height: 320px;
    padding: 0 3rem;
    border-bottom: none;
    border-left: 1px solid var(--st-bright);
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-stats-simple__inner {
    height: 400px;
  }
}

.mxd-stats-simple__image {
  display: inline-flex;
  height: 5.4rem;
  width: auto;
  object-fit: contain;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 992px) {
  .mxd-stats-simple__image {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-stats-simple__image {
    opacity: 0;
    transform: scale(0);
    transition: all var(--_animspeed-medium) var(--_animbezier);
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-stats-simple__image {
    height: 7rem;
  }
}

.mxd-stats-simple__counter {
  margin-bottom: 2.8rem;
}
@media only screen and (min-width: 992px) {
  .mxd-stats-simple__counter {
    margin-bottom: 0;
  }
}

.mxd-stats-simple__descr {
  text-align: center;
}
@media only screen and (min-width: 992px) {
  .mxd-stats-simple__descr {
    text-align: left;
  }
}

/* ------------------------------------------------*/
/* Features - Statistics Simple End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Statistics Cards Start */
/* ------------------------------------------------*/
.mxd-stats-cards {
  position: relative;
}

.mxd-stats-cards__item {
  position: relative;
  height: 540px;
}
@media only screen and (min-width: 768px) {
  .mxd-stats-cards__item {
    height: 420px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-stats-cards__item {
    height: 600px;
  }
}

.mxd-stats-cards__inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 3.4rem;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.mxd-stats-cards__inner .mxd-counter {
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .mxd-stats-cards__inner {
    justify-content: space-between;
    gap: 0;
  }
  .mxd-stats-cards__inner.align-end {
    align-items: flex-end;
  }
}

.mxd-stats-cards__btngroup {
  z-index: 1;
}

.mxd-stats-cards__image {
  position: absolute;
  left: 0;
  top: 32rem;
  width: 100%;
  max-width: 400px;
  height: auto;
  padding: 0 4rem 0 0;
  z-index: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-stats-cards__image {
    top: 0;
    width: 60%;
    max-width: none;
    padding: 0;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-1 {
    width: 470px;
    top: -4rem;
    left: -4rem;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-2 {
    width: 420px;
    top: auto;
    bottom: -4rem;
    padding-top: 4rem;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-3 {
    width: 450px;
    top: auto;
    right: -4rem;
    bottom: 0;
    left: auto;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-4 {
    width: 400px;
    top: auto;
    bottom: 4rem;
    left: auto;
    right: -6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-stats-cards__image.mxd-stats-cards-image-1 {
    width: 330px;
    top: 0;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-4 {
    width: 280px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-stats-cards__image.mxd-stats-cards-image-1 {
    width: 470px;
    top: 4rem;
    left: -6rem;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-2 {
    width: 620px;
    bottom: auto;
    top: 4rem;
    padding-top: 0;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-3 {
    width: 620px;
  }
  .mxd-stats-cards__image.mxd-stats-cards-image-4 {
    width: 400px;
  }
}

/* ------------------------------------------------*/
/* Features - Statistics Cards End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Services Cards #01 Start */
/* ------------------------------------------------*/
.mxd-services-cards {
  position: relative;
}

.mxd-services-cards__item {
  position: relative;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .mxd-services-cards__item {
    height: 540px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards__item {
    height: 760px;
  }
}

.mxd-services-cards__inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .mxd-services-cards__inner.justify-end {
    justify-content: flex-end;
  }
  .mxd-services-cards__inner.justify-between {
    justify-content: space-between;
  }
}

.mxd-services-cards__controls {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 2;
}

.mxd-services-cards__title {
  margin-bottom: 3.6rem;
  padding-right: 2.6rem;
}
.mxd-services-cards__title p {
  font: normal var(--fw-medium) 3.6rem/1.1 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
.mxd-services-cards__title p.opposite {
  color: var(--t-opp-bright);
}
.mxd-services-cards__title p.permanent-light {
  color: var(--pt-t-light-bright);
}
.mxd-services-cards__title p.permanent-dark {
  color: var(--pt-t-dark-bright);
}
@media only screen and (min-width: 768px) {
  .mxd-services-cards__title {
    margin-bottom: 3.4rem;
  }
  .mxd-services-cards__title p {
    font-size: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-services-cards__title {
    z-index: 1;
  }
  .mxd-services-cards__title.width-60 {
    width: 60%;
    max-width: 640px;
  }
  .mxd-services-cards__title.width-70 {
    width: 70%;
    max-width: 360px;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-services-cards__title.width-70 {
    max-width: 440px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards__title {
    margin-bottom: 4rem;
  }
  .mxd-services-cards__title p {
    font-size: 7rem;
  }
  .mxd-services-cards__title.width-70 {
    max-width: 490px;
  }
}

@media only screen and (min-width: 1200px) {
  .mxd-services-cards__info {
    z-index: 1;
  }
  .mxd-services-cards__info.width-60 {
    width: 60%;
    max-width: 640px;
  }
  .mxd-services-cards__info.width-70 {
    width: 70%;
    max-width: 300px;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-services-cards__info.width-70 {
    max-width: 440px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards__info.width-70 {
    max-width: 490px;
  }
}

.mxd-services-cards__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 3.2rem;
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards__tags {
    gap: 1.4rem;
    margin-bottom: 3.8rem;
  }
}

.mxd-services-cards__image {
  width: 100%;
  max-width: 400px;
  margin-top: 3.4rem;
}
.mxd-services-cards__image.mxd-services-cards-image-3 .image-2 {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mxd-services-cards__image {
    position: absolute;
    max-width: none;
    margin-top: 0;
    z-index: 0;
  }
  .mxd-services-cards__image.mxd-services-cards-image-1 {
    width: 480px;
    right: 0;
    bottom: -240px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-2 {
    width: 380px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    bottom: -220px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-3 {
    width: 50%;
    height: 100%;
    top: 0;
    right: 0;
  }
  .mxd-services-cards__image.mxd-services-cards-image-3 .image-1,
  .mxd-services-cards__image.mxd-services-cards-image-3 .image-2 {
    position: absolute;
  }
  .mxd-services-cards__image.mxd-services-cards-image-3 .image-1 {
    width: 300px;
    left: 0;
    top: -100px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-3 .image-2 {
    display: block;
    width: 480px;
    bottom: -180px;
    right: -40px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-4 {
    width: 280px;
    top: 1rem;
    right: -50px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-5 {
    width: 450px;
    bottom: -30px;
    right: -80px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards__image.mxd-services-cards-image-1 {
    width: 710px;
    right: 0;
    bottom: -320px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-2 {
    width: 580px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    bottom: -300px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-3 .image-1 {
    width: 400px;
    left: -3rem;
    top: -180px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-3 .image-2 {
    display: block;
    width: 610px;
    bottom: -130px;
    right: 20px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-4 {
    width: 410px;
    top: 1rem;
    right: -70px;
  }
  .mxd-services-cards__image.mxd-services-cards-image-5 {
    width: 670px;
    bottom: -50px;
    right: -100px;
  }
}

/* ------------------------------------------------*/
/* Features - Services Cards #01 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Services Cards #02 Start */
/* ------------------------------------------------*/
.mxd-services-cards-s {
  position: relative;
}

.mxd-services-cards-s__item {
  position: relative;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .mxd-services-cards-s__item {
    height: 420px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards-s__item {
    height: 600px;
  }
}

.mxd-services-cards-s__inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .mxd-services-cards-s__inner.justify-end {
    justify-content: flex-end;
  }
  .mxd-services-cards-s__inner.justify-between {
    justify-content: space-between;
  }
}

.mxd-services-cards-s__title {
  margin-bottom: 2.8rem;
}
.mxd-services-cards-s__title h3 {
  font-size: 3.6rem;
}
@media only screen and (min-width: 992px) {
  .mxd-services-cards-s__title {
    width: 50%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-services-cards-s__title {
    width: 100%;
    z-index: 1;
  }
  .mxd-services-cards-s__title h3 {
    font-size: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards-s__title h3 {
    font-size: 5rem;
  }
}

@media only screen and (min-width: 992px) {
  .mxd-services-cards-s__info {
    width: 50%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-services-cards-s__info {
    width: 100%;
    z-index: 1;
  }
  .mxd-services-cards-s__info.width-50 {
    width: 50%;
    max-width: 480px;
  }
}

.mxd-services-cards-s__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2.6rem;
}

.mxd-services-cards-s__image {
  width: 100%;
  margin-top: 2.8rem;
}
@media only screen and (min-width: 992px) {
  .mxd-services-cards-s__image {
    position: absolute;
    top: 0;
    right: -3rem;
    width: 50%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-services-cards-s__image {
    max-width: none;
    margin-top: 0;
    z-index: 0;
  }
  .mxd-services-cards-s__image.image-right {
    top: 3rem;
  }
  .mxd-services-cards-s__image.image-top-right {
    width: 260px;
    top: -80px;
    right: -30px;
  }
  .mxd-services-cards-s__image.image-bottom {
    width: 100%;
    max-width: 300px;
    top: auto;
    right: auto;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    bottom: -160px;
  }
  .mxd-services-cards-s__image.image-bottom-2 {
    bottom: -260px;
  }
  .mxd-services-cards-s__image.image-top {
    width: 100%;
    max-width: 330px;
    top: auto;
    right: auto;
    top: -120px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-cards-s__image.image-top-right {
    width: 414px;
    top: -120px;
    right: -60px;
  }
  .mxd-services-cards-s__image.image-bottom {
    max-width: 470px;
    bottom: -200px;
  }
  .mxd-services-cards-s__image.image-bottom-2 {
    bottom: -350px;
  }
  .mxd-services-cards-s__image.image-top {
    max-width: 470px;
    top: -100px;
  }
}

/* ------------------------------------------------*/
/* Features - Services Cards #02 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Services List Start */
/* ------------------------------------------------*/
.mxd-services-list {
  position: relative;
  display: flex;
  flex-direction: column;
}
.mxd-services-list.grid-top {
  padding-top: 14rem;
}
@media only screen and (min-width: 768px) {
  .mxd-services-list.grid-top {
    padding-top: 16rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-list.grid-top {
    padding-top: 20rem;
  }
}

@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-services-list > .mxd-services-list__item {
    transition: opacity 0.3s ease;
  }
  .mxd-services-list:hover > .mxd-services-list__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-services-list__item {
  position: relative;
  margin-top: -2px;
}
.mxd-services-list__item:first-of-type {
  margin-top: 0;
}

.mxd-services-list__border {
  position: relative;
  left: 1.5rem;
  width: calc(100% - 3rem);
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-services-list__inner {
  padding: 6rem 0;
}

.mxd-services-list__title {
  margin-bottom: 3.4rem;
}
.mxd-services-list__title p {
  font: normal var(--fw-medium) 4.4rem/0.7 var(--_font-accent);
  letter-spacing: -0.06rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  .mxd-services-list__title {
    margin-bottom: 0;
  }
  .mxd-services-list__title p {
    font-size: 9rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-list__title p {
    font-size: 12rem;
  }
}

.mxd-services-list__descr {
  margin-bottom: 2.6rem;
}
.mxd-services-list__descr p {
  color: var(--t-medium);
  font-size: 1.8rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-services-list__descr {
    margin-bottom: 0;
  }
}

.mxd-services-list__tagslist ul li p {
  color: var(--t-medium);
  font-size: 1.8rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-services-list__tagslist {
    padding: 0 3rem;
  }
}

/* ------------------------------------------------*/
/* Features - Services List End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Capabilities List Start */
/* ------------------------------------------------*/
.mxd-cpb-list {
  position: relative;
}
@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-cpb-list > .mxd-cpb-list__item {
    transition: opacity 0.3s ease;
  }
  .mxd-cpb-list:hover > .mxd-cpb-list__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-cpb-list__item {
  position: relative;
  display: block;
  margin-top: -2px;
}
.mxd-cpb-list__item:first-of-type {
  margin-top: 0;
}

.mxd-cpb-list__divider {
  position: relative;
  width: 100%;
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-cpb-list__content {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 3rem 0 3.5rem 0;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .mxd-cpb-list__content {
    padding: 3rem 0;
  }
}

.mxd-cpb-list__title {
  position: relative;
  color: var(--t-bright);
}

.mxd-cpb-list__num {
  font: normal var(--fw-medium) 2.2rem/1.2 var(--_font-accent);
  color: var(--t-muted);
}
@media only screen and (min-width: 1200px) {
  .mxd-cpb-list__num {
    font-size: 3rem;
    color: var(--t-bright);
  }
}

.mxd-cpb-list__image {
  display: block;
  border-radius: var(--_radius-m);
  overflow: hidden;
  margin-bottom: 4rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-cpb-list__image {
    display: none;
  }
}

/* ------------------------------------------------*/
/* Features - Capabilities List End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Resume List Start */
/* ------------------------------------------------*/
.mxd-res-list {
  position: relative;
}
@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-res-list > .mxd-res-list__item {
    transition: opacity 0.3s ease;
  }
  .mxd-res-list:hover > .mxd-res-list__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-res-list__item {
  position: relative;
  display: block;
  margin-top: -2px;
}
.mxd-res-list__item:first-of-type {
  margin-top: 0;
}

.mxd-res-list__divider {
  position: relative;
  width: 100%;
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-res-list__content {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-between;
  padding: 3.6rem 0 3.5rem 0;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) {
  .mxd-res-list__content {
    flex-direction: row;
    justify-content: space-between;
    padding: 6rem 0 7rem 0;
  }
}

.mxd-res-list__data {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-res-list__data {
    gap: 2.8rem;
  }
}

.mxd-res-list__title {
  display: block;
}

.mxd-res-list__source {
  font-size: 1.6rem;
  margin-top: 0.2rem;
}
@media only screen and (min-width: 1600px) {
  .mxd-res-list__source {
    font-size: 1.8rem;
  }
}

.mxd-res-list__descr {
  max-width: 560px;
}

.mxd-res-list__year {
  margin-bottom: 1.1rem;
}
.mxd-res-list__year p {
  font-weight: var(--fw-medium);
  color: var(--t-bright);
}

/* ------------------------------------------------*/
/* Features - Resume List End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Approach List Start */
/* ------------------------------------------------*/
.mxd-approach-list {
  position: relative;
  display: flex;
  flex-direction: column;
}

@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-approach-list > .mxd-approach-list__item {
    transition: opacity var(--_animspeed-medium) ease;
  }
  .no-touch .mxd-approach-list:hover > .mxd-approach-list__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-approach-list__item {
  position: relative;
  width: 100%;
  margin-top: -2px;
}
.mxd-approach-list__item:first-of-type {
  margin-top: 0;
}
.no-touch .mxd-approach-list__item:hover .mxd-approach-list__image img {
  animation-play-state: running;
}

.mxd-approach-list__border {
  position: relative;
  left: 1.5rem;
  width: calc(100% - 3rem);
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-approach-list__inner {
  padding: 7rem 0;
}
@media only screen and (min-width: 768px) {
  .mxd-approach-list__inner {
    padding: 8rem 0;
  }
}

.mxd-approach-list__image {
  display: block;
  width: 7rem;
  height: 7rem;
  margin-bottom: 2.4rem;
}
.mxd-approach-list__image img {
  display: block;
  position: relative;
  animation: spin 5s linear infinite;
  animation-play-state: paused;
}
@media only screen and (min-width: 1200px) {
  .mxd-approach-list__image {
    margin-bottom: 0;
  }
}

.mxd-approach-list__title {
  margin-bottom: 2.2rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-approach-list__title {
    margin-bottom: 0;
    padding: 0 3rem;
    text-align: right;
  }
}

.mxd-approach-list__descr {
  display: block;
}

/* ------------------------------------------------*/
/* Features - Approach List End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Divider Image Parallax Start */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Video Container with Parallax Start */
/* ------------------------------------------------*/
@keyframes videoFadeIn {
  from {
    opacity: 0.8;
  }
  to {
    opacity: 1;
  }
}
@keyframes videoPulse {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}
.video-container {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: transparent;
}
.video-container .hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.video-container .video-wrapper {
  width: 100%;
  height: 100%;
  background: transparent;
}
.video-container .video-wrapper.video-playing {
  animation: videoFadeIn 0.3s ease;
}
.video-container .video-wrapper.video-paused {
  opacity: 0.9;
}
.video-container .video-wrapper.video-waiting {
  opacity: 0.7;
}
.video-container .video-wrapper.video-error {
  opacity: 0.5;
  filter: grayscale(100%);
}
.video-container .video-wrapper.video-ended {
  opacity: 0.8;
}
.video-container .video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
  z-index: 2;
}
.video-container .video-overlay.visible {
  opacity: 1;
  visibility: visible;
}
.video-container .video-overlay .play-button {
  width: 80px;
  height: 80px;
  background-color: rgba(255, 255, 255, 0.9);
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  position: relative;
  overflow: hidden;
}
.video-container .video-overlay .play-button:hover {
  background-color: #fff;
  transform: scale(1.1);
}
.video-container .video-overlay .play-button:active {
  transform: scale(0.95);
}
.video-container .video-overlay .play-button .play-icon,
.video-container .video-overlay .play-button .pause-icon {
  width: 24px;
  height: 24px;
  color: #333;
  transition: all 0.3s ease;
}
.video-container .video-overlay .play-button .play-icon {
  margin-left: 2px;
}
.video-container .video-overlay .play-button .pause-icon {
  margin: 0;
}
.video-container .video-overlay .video-loading {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
}
.video-container .video-overlay .loading-spinner {
  width: 40px;
  height: 40px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top: 3px solid #fff;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.audio-control {
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  background-color: rgba(0, 0, 0, 0.7);
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  z-index: 3;
}
.audio-control:hover {
  background-color: rgba(0, 0, 0, 0.9);
  transform: scale(1.1);
}
.audio-control svg {
  width: 20px;
  height: 20px;
  color: #fff;
}
.audio-control .mute-icon,
.audio-control .unmute-icon {
  transition: opacity 0.3s ease;
}

.mxd-divider__image.video-container {
  background-image: none !important;
}

/* ------------------------------------------------*/
/* Features - Video Container with Parallax End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Divider Image Parallax End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Marquee Start */
/* ------------------------------------------------*/
.marquee {
  max-width: 100%;
  overflow: hidden;
}
.marquee.bright .marquee__text,
.marquee.bright .marquee__image {
  color: var(--t-bright);
}
.marquee.medium .marquee__text,
.marquee.medium .marquee__image {
  color: var(--t-medium);
}
.marquee.muted .marquee__text,
.marquee.muted .marquee__image {
  color: var(--t-muted);
}
.marquee.muted-extra .marquee__text,
.marquee.muted-extra .marquee__image {
  color: var(--t-muted-extra);
}
.marquee.permanent-desktop .marquee__text,
.marquee.permanent-desktop .marquee__image {
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  .marquee.permanent-desktop .marquee__text,
  .marquee.permanent-desktop .marquee__image {
    color: var(--pt-t-light-bright);
  }
  .marquee.permanent-desktop .marquee__text {
    font-weight: var(--fw-regular);
  }
}

.marquee--gsap {
  display: block;
}

.marquee--gsap .marquee__top,
.marquee--gsap .marquee__bottom {
  translate: calc(-100% + 100vw) !important;
}

.marquee-right--gsap .marquee__toright,
.marquee-left--gsap .marquee__toleft {
  translate: calc(-100% + 100vw) !important;
}

.marquee__top,
.marquee__bottom,
.marquee__toleft,
.marquee__toright,
.items__container {
  position: relative;
  display: flex;
  width: max-content;
  will-change: transform;
}

.marquee__item {
  margin-top: 1.5rem;
  margin-right: 1.5rem;
}
.marquee__item.one-line {
  margin-top: 0;
}
.marquee__item.item-regular-xl {
  margin-right: 3rem;
}
@media only screen and (min-width: 768px) {
  .marquee__item {
    margin-top: 3rem;
    margin-right: 3rem;
  }
  .marquee__item.one-line {
    margin-top: 0;
  }
  .marquee__item.item-regular-xl {
    margin-right: 6rem;
  }
}

.marquee__item {
  position: relative;
  width: 430px;
  height: 320px;
  border-radius: var(--_radius-m);
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 20px;
  animation: animateZ 1s infinite;
}
.marquee__item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.marquee__item.overflow-visible {
  overflow: visible;
}
.marquee__item.has-caption {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  background-color: var(--accent);
}
.marquee__item.has-caption p {
  font: normal var(--fw-medium) 2.2rem/1.2 var(--_font-accent);
  color: var(--t-opp-bright);
}
.marquee__item.item-vertical {
  width: 400px;
  height: 460px;
}
.marquee__item.item-regular {
  width: auto;
  height: auto;
  border-radius: 0;
  gap: 0;
  background-color: transparent;
  animation: animateZ 1s infinite;
}
.marquee__item.item-regular-xl {
  gap: 3rem;
}
.marquee__item.item-partners {
  justify-content: center;
  width: 380px;
  height: 250px;
}
.marquee__item.item-partners::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  z-index: -1;
  transform: scale(1);
  transition: transform var(--_animspeed-slow) var(--_animbezier);
}
.marquee__item.item-partners img {
  width: 170px;
  height: auto;
}
.marquee__item.item-large {
  width: 830px;
  height: 630px;
}
@media only screen and (min-width: 768px) {
  .marquee__item {
    width: 490px;
    height: 360px;
  }
  .marquee__item.has-caption p {
    font-size: 3rem;
  }
  .marquee__item.item-vertical {
    width: 525px;
    height: 600px;
  }
  .marquee__item.item-regular-xl {
    gap: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .marquee__item {
    width: 540px;
    height: 400px;
  }
  .marquee__item.item-vertical {
    width: 470px;
    height: 540px;
  }
}
@media only screen and (min-width: 1400px) {
  .marquee__item.item-large {
    width: 880px;
    height: 670px;
  }
}
@media only screen and (min-width: 1600px) {
  .marquee__item {
    width: 730px;
    height: 540px;
  }
  .marquee__item.has-caption p {
    font-size: 5rem;
  }
  .marquee__item.item-vertical {
    width: 525px;
    height: 600px;
  }
  .marquee__item.item-large {
    width: 1000px;
    height: 760px;
  }
}

.marquee__link {
  display: block;
  width: 100%;
  height: 100%;
}
.marquee__link img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.marquee__text {
  margin-right: 1.6rem;
}
.marquee__text.text-with-gliph {
  margin-right: 0;
}
.marquee__text.text-with-gliph::after {
  content: "*";
  display: inline;
  padding-left: 1.6rem;
}
@media only screen and (min-width: 1200px) {
  .marquee__text {
    margin-right: 3.6rem;
  }
  .marquee__text.text-with-gliph::after {
    padding-left: 3.6rem;
  }
}

.marquee__image {
  flex-shrink: 0;
  width: 4.1rem;
  height: 4.1rem;
}
.marquee__image.image-xl {
  width: 9rem;
  height: 9rem;
}
@media only screen and (min-width: 768px) {
  .marquee__image {
    width: 8.1rem;
    height: 8.1rem;
  }
  .marquee__image.image-xl {
    width: 14rem;
    height: 14rem;
  }
}
@media only screen and (min-width: 1400px) {
  .marquee__image.image-xl {
    width: 18rem;
    height: 18rem;
  }
}

.marquee__image img,
.marquee__image video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.marquee__text {
  font: normal var(--fw-regular) 6rem/1.2 var(--_font-accent);
  letter-spacing: -0.06rem;
}
.marquee__text.text-xl {
  font-weight: var(--fw-medium);
  font-size: 20rem;
  line-height: 0.8;
}
@media only screen and (min-width: 768px) {
  .marquee__text {
    font-size: 12rem;
  }
  .marquee__text.text-xl {
    font-size: 30rem;
  }
}
@media only screen and (min-width: 1200px) {
  .marquee__text {
    font-size: 12rem;
  }
}
@media only screen and (min-width: 1400px) {
  .marquee__text.text-xl {
    font-size: 40rem;
  }
}

.marquee__component {
  display: flex;
  width: auto;
  height: 280px;
  margin: 3rem 0;
  border-radius: var(--_radius-m);
  overflow: hidden;
  padding: 1rem;
  background-color: var(--base-tint);
  border: 1px solid var(--st-muted);
}
.marquee__component img {
  border-radius: 1rem;
}
@media only screen and (min-width: 768px) {
  .marquee__component {
    border-radius: 2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .marquee__component {
    height: 320px;
  }
}

@keyframes toLeft {
  to {
    transform: translateX(-50%);
  }
}
@keyframes toRight {
  to {
    transform: translateX(0);
  }
}
@keyframes animateZ {
  to {
    transform: translateZ(1px);
  }
}
/* ------------------------------------------------*/
/* Features - Marquee End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Stack Services #01 Start */
/* ------------------------------------------------*/
.stack-wrapper {
  position: relative;
  width: 100%;
}
.stack-wrapper.in-content-stack {
  margin-top: -7.6rem;
}
.stack-wrapper.mxd-hero-02-stack {
  margin-top: -10.6rem;
}
@media only screen and (min-width: 768px) {
  .stack-wrapper.mxd-hero-02-stack {
    margin-top: -13.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .stack-wrapper.mxd-hero-08-stack {
    margin-top: -1.6rem;
  }
}
@media only screen and (min-width: 1600px) {
  .stack-wrapper.in-content-stack {
    margin-top: -4.6rem;
  }
  .stack-wrapper.mxd-hero-02-stack {
    margin-top: -13.6rem;
  }
  .stack-wrapper.mxd-hero-08-stack {
    margin-top: 2.3rem;
  }
}

.stack-offset {
  display: flex;
  width: 100%;
  height: 10.6rem;
  background-color: transparent;
}
@media only screen and (min-width: 768px) {
  .stack-offset {
    height: 13.6rem;
  }
}

.services-stack {
  width: 100%;
  position: relative;
  height: 75vh;
  min-height: 600px;
}
@media only screen and (min-width: 992px) {
  .services-stack {
    height: 600px;
    min-height: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .services-stack {
    height: 760px;
  }
}

.stack-item {
  display: flex;
  position: absolute;
  width: 100%;
  height: 100%;
  padding-bottom: 3rem;
}
@media only screen and (min-width: 1600px) {
  .stack-item {
    padding-bottom: 6rem;
  }
}

.mxd-services-stack__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  width: 100%;
  height: 100%;
  padding: 2.6rem 3rem 0 3rem;
  z-index: 0;
  border-radius: var(--_radius-l);
}
.mxd-services-stack__inner.radius-dark {
  border-radius: 3.6rem;
}
.mxd-services-stack__inner.showcase-inner {
  padding: 2.6rem 3rem 3rem 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-services-stack__inner {
    padding: 4.2rem 5rem 0 5rem;
  }
  .mxd-services-stack__inner.showcase-inner {
    padding: 4.2rem 5rem 5rem 5rem;
  }
  .mxd-services-stack__inner.radius-dark {
    border-radius: 4.6rem;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-services-stack__inner {
    padding: 4.2rem 5rem 4.6rem 5rem;
  }
  .mxd-services-stack__inner.justify-end {
    justify-content: flex-end;
  }
  .mxd-services-stack__inner.justify-between {
    justify-content: space-between;
  }
}

.mxd-services-stack__container {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.mxd-services-stack__controls {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 1;
}

.mxd-services-stack__title {
  margin-bottom: 3.4rem;
  padding-right: 2.6rem;
}
.mxd-services-stack__title.showcase-title {
  display: flex;
  flex-direction: column-reverse;
  gap: 0;
  width: 100%;
  padding-right: 0;
  margin-bottom: 1.8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-services-stack__title.showcase-title {
    flex-direction: row;
    justify-content: space-between;
    gap: 3rem;
    margin-bottom: 2.2rem;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-services-stack__title {
    z-index: 1;
  }
  .mxd-services-stack__title.width-60 {
    width: 60%;
    max-width: 580px;
  }
  .mxd-services-stack__title.width-70 {
    width: 70%;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-services-stack__title h3 {
    font-size: 7rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-services-stack__title.showcase-title {
    margin-bottom: 2.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-stack__title {
    margin-bottom: 4rem;
  }
  .mxd-services-stack__title.width-60 {
    max-width: 800px;
  }
  .mxd-services-stack__title.width-70 {
    max-width: 933px;
  }
  .mxd-services-stack__title.showcase-title {
    margin-bottom: 3rem;
  }
}

.mxd-services-stack__number {
  font: normal var(--fw-medium) 3.6rem/1.2 var(--_font-accent);
}
.mxd-services-stack__number.t-muted {
  color: var(--t-muted);
}
.mxd-services-stack__number.t-muted-extra {
  color: var(--t-muted-extra);
}
.mxd-services-stack__number.t-opp-brigth {
  color: var(--t-opp-bright);
}
.mxd-services-stack__number.t-opp-muted {
  color: var(--t-opp-muted);
}
@media only screen and (min-width: 768px) {
  .mxd-services-stack__number {
    font-size: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-services-stack__number {
    font-size: 7rem;
  }
}

.mxd-services-stack__info {
  z-index: 1;
  margin-bottom: 3.3rem;
}
.mxd-services-stack__info.showcase-info {
  width: 100%;
  margin-bottom: 2.7rem;
}
@media only screen and (min-width: 768px) {
  .mxd-services-stack__info {
    width: 80%;
    margin-bottom: 3.3rem;
  }
  .mxd-services-stack__info.showcase-info {
    margin-bottom: 3.4rem;
  }
}
@media only screen and (min-width: 992px) {
  .mxd-services-stack__info.width-60 {
    width: 60%;
    max-width: 470px;
    margin-bottom: 0;
  }
  .mxd-services-stack__info.width-70 {
    width: 70%;
    max-width: 300px;
  }
  .mxd-services-stack__info.showcase-info {
    width: 50%;
    padding-right: 1.5rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-services-stack__info.showcase-info {
    margin-bottom: 4.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-stack__info.width-60 {
    max-width: 610px;
  }
  .mxd-services-stack__info.width-70 {
    max-width: 490px;
  }
  .mxd-services-stack__info.showcase-info {
    margin-bottom: 5rem;
  }
}

.mxd-services-stack__works {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-services-stack__works {
    flex-direction: row;
    gap: 3rem;
  }
}

.mxd-services-stack__work {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: var(--_radius-m);
}
@media only screen and (min-width: 768px) {
  .mxd-services-stack__work {
    width: calc(50% - 1.5rem);
  }
}
.no-touch .mxd-services-stack__work:hover .mxd-services-stack__preview {
  filter: blur(10px);
  transform: scale(1.04);
}
.no-touch .mxd-services-stack__work:hover .mxd-preview-hover {
  opacity: 1;
  filter: blur(0);
}

.mxd-services-stack__preview {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  transition: all var(--_animspeed-medium) var(--_animbezier);
}

.mxd-services-stack__tags {
  display: none;
}
@media only screen and (min-width: 768px) {
  .mxd-services-stack__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
  }
  .mxd-services-stack__tags.tags-absolute {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 2.6rem 3rem;
    transition: all var(--_animspeed-medium) var(--_animbezier);
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-services-stack__tags.tags-absolute {
    padding: 3.6rem 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-services-stack__tags {
    gap: 1.4rem;
  }
}

.services-stack__image {
  position: relative;
  overflow: hidden;
}
.services-stack__image .service-img {
  display: block;
}
.services-stack__image .service-img-m {
  display: none;
}
@media only screen and (min-width: 992px) {
  .services-stack__image {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    padding-left: 0;
  }
  .services-stack__image .service-img {
    position: absolute;
    right: -15%;
    bottom: 0;
    height: 100%;
    width: auto;
  }
  .services-stack__image .service-img-s {
    display: none;
  }
  .services-stack__image .service-img-m {
    display: block;
  }
}
@media only screen and (min-width: 1200px) {
  .services-stack__image .service-img {
    position: absolute;
    right: 0;
    bottom: -5%;
    max-height: none;
    height: 110%;
    width: auto;
  }
}

.portfolio-stack__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background-color: var(--base);
  border-radius: var(--_radius-l);
  overflow: hidden;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.portfolio-stack__descr {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2.4rem 3rem;
}
@media only screen and (min-width: 768px) {
  .portfolio-stack__descr {
    display: block;
    width: 60%;
    padding: 2.6rem 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .portfolio-stack__descr {
    width: 40%;
    padding: 4rem 5rem 4.6rem 5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .portfolio-stack__descr {
    width: 33.3334%;
  }
}

.portfolio-stack__title.dark {
  font-weight: 400;
}
.portfolio-stack__title.light {
  font-weight: 300;
}

.portfolio-stack__text {
  margin-top: 3rem;
  font-weight: 300;
}
.portfolio-stack__text.dark {
  font-weight: 400;
}
@media only screen and (min-width: 1400px) {
  .portfolio-stack__text {
    margin-top: 4rem;
  }
}

/* ------------------------------------------------*/
/* Features - Stack Services #01 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Stack Services #02 Start */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Stack Services #02 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Stack Projects Start */
/* ------------------------------------------------*/
.projects-stack {
  width: 100%;
  position: relative;
  height: 75vh;
  min-height: 600px;
}
@media only screen and (min-width: 992px) {
  .projects-stack {
    height: 600px;
    min-height: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .projects-stack {
    height: 760px;
  }
}

.mxd-projects-stack__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: var(--_radius-l);
  padding: 3rem;
  z-index: 0;
}
.mxd-projects-stack__inner.justify-between {
  justify-content: space-between;
}
.mxd-projects-stack__inner.justify-end {
  justify-content: flex-end;
}
@media only screen and (min-width: 768px) {
  .mxd-projects-stack__inner {
    padding: 5rem;
  }
}

.mxd-projects-stack__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mxd-projects-stack__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mxd-projects-stack__image img.mobile {
  display: block;
}
.mxd-projects-stack__image img.desktop {
  display: none;
}
@media only screen and (min-width: 768px) {
  .mxd-projects-stack__image img.mobile {
    display: none;
  }
  .mxd-projects-stack__image img.desktop {
    display: block;
  }
}

.mxd-projects-stack__title {
  position: relative;
  margin-bottom: 2.4rem;
  max-width: 600px;
}
.mxd-projects-stack__title.no-margin {
  margin-bottom: 0;
}

.mxd-projects-stack__tags {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media only screen and (min-width: 1600px) {
  .mxd-projects-stack__tags {
    gap: 1.4rem;
  }
}

/* ------------------------------------------------*/
/* Features - Stack Projects End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Testimonials Style #01 Start */
/* ------------------------------------------------*/
.mxd-testimonials-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 4.6rem;
  padding: 3rem;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-card {
    justify-content: space-between;
    height: 600px;
    max-width: 460px;
    padding: 4rem;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-testimonials-card {
    height: 640px;
    max-width: 500px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-testimonials-card {
    height: 700px;
    max-width: 630px;
  }
}

.mxd-testimonials-card__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4.9rem;
}

.mxd-testimonials-card__media {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-card__media {
    flex-direction: row;
    justify-content: space-between;
  }
}

.mxd-testimonials-card__photo {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  overflow: hidden;
}
.mxd-testimonials-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-card__photo {
    width: 12rem;
    height: 12rem;
  }
}

.mxd-testimonials-card__company {
  position: relative;
  max-width: 12rem;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-card__company {
    max-width: 18rem;
  }
}

.mxd-testimonials-card__text p {
  margin-bottom: 3.3rem;
}

.mxd-testimonials-card__author {
  display: block;
}

.mxd-testimonials-card__name {
  display: block;
}

.mxd-testimonials-card__position {
  display: block;
}

.mxd-testimonials-photo {
  position: relative;
}
@media only screen and (min-width: 992px) {
  .mxd-testimonials-photo {
    height: 600px;
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-testimonials-photo {
    height: 640px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-testimonials-photo {
    height: 760px;
  }
}

.mxd-testimonials-photo__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media only screen and (min-width: 992px) {
  .mxd-testimonials-photo__content {
    padding-right: 6rem;
  }
}

.mxd-testimonials-photo__author {
  display: flex;
  gap: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-photo__author {
    gap: 3rem;
  }
}

.mxd-testimonials-photo__avatar {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  overflow: hidden;
}
.mxd-testimonials-photo__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-photo__avatar {
    width: 12rem;
    height: 12rem;
  }
}

.mxd-testimonials-photo__info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.6rem;
  width: calc(100% - 9.5rem);
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-photo__info {
    width: auto;
  }
}

.mxd-testimonials-photo__name {
  display: block;
}

.mxd-testimonials-photo__position {
  line-height: 1.2;
}

.mxd-testimonials-photo__rating {
  display: flex;
  gap: 0.8rem;
  margin-top: 0.5rem;
}
.mxd-testimonials-photo__rating i {
  display: block;
  font-size: 1.8rem;
  color: var(--t-bright);
}
@media only screen and (min-width: 1600px) {
  .mxd-testimonials-photo__rating i {
    font-size: 2rem;
  }
}

.mxd-testimonials-photo__image {
  position: relative;
}
@media only screen and (min-width: 992px) {
  .mxd-testimonials-photo__image {
    height: 100%;
  }
}

.mxd-testimonials-photo__image-inner {
  overflow: hidden;
}
.mxd-testimonials-photo__image-inner img {
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

.mxd-testimonials-photo__text {
  margin-bottom: 6rem;
}
.mxd-testimonials-photo__text p {
  margin-bottom: 3rem;
}
@media only screen and (min-width: 992px) {
  .mxd-testimonials-photo__text {
    margin-bottom: 0;
  }
}

.testimonials-slider {
  position: relative;
  height: auto;
  padding: 0 3rem;
}
.testimonials-slider.no-padding {
  padding: 0;
}
@media only screen and (min-width: 768px) {
  .testimonials-slider {
    padding: 0 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .testimonials-slider {
    padding: 0 1.5rem;
  }
}

@media only screen and (min-width: 1200px) {
  .testimonials-slider__shadow {
    position: absolute;
    top: 0;
    right: 0;
    width: 6rem;
    height: 100%;
    background: linear-gradient(to right, rgba(var(--base-rgb), 0) 0%, rgba(var(--base-rgb), 1) 100%);
    z-index: 1;
  }
}

.swiper-testimonials {
  position: relative;
  height: 100%;
  padding-bottom: 7rem;
}
@media only screen and (min-width: 992px) {
  .swiper-testimonials.no-padding {
    padding-bottom: 0;
  }
}

.swiper-slide {
  width: 100%;
  filter: blur(4px);
  transition: filter var(--_animspeed-slow) var(--_animbezier);
}
.swiper-slide.mxd-fullwidth-slide {
  width: 100%;
}
.swiper-slide.swiper-slide-active {
  filter: blur(0);
}
@media only screen and (min-width: 768px) {
  .swiper-slide {
    width: auto;
  }
  .swiper-slide.mxd-fullwidth-slide {
    width: 100%;
  }
}

.mxd-slider-btn {
  display: block;
  position: absolute;
  top: auto;
  right: auto;
  bottom: 0.2rem;
  left: auto;
  width: auto;
  height: auto;
  margin: 0;
}
.mxd-slider-btn::after {
  display: none;
}

.mxd-slider-btn-round-prev {
  left: 0;
}
.mxd-slider-btn-round-prev.v2 {
  bottom: 0.2rem;
  left: 0.2rem;
}

.mxd-slider-btn-round-next {
  left: 5.4rem;
}
.mxd-slider-btn-round-next.v2 {
  left: auto;
  bottom: 0.2rem;
  right: 0.2rem;
}

.mxd-swiper-pagination-fraction {
  font: normal var(--fw-regular) 1.6rem/1.6 var(--_font-default);
  color: var(--t-bright);
}
.mxd-swiper-pagination-fraction.opposite {
  color: var(--t-opp-bright);
}

.swiper-testimonials__controls {
  position: relative;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
  padding: 0 1.5rem;
}
.swiper-testimonials__controls .mxd-slider-btn {
  position: relative;
  bottom: auto;
  width: auto;
  height: auto;
  margin: 0;
}
.swiper-testimonials__controls .mxd-slider-btn-round-prev {
  left: auto;
}
.swiper-testimonials__controls .mxd-slider-btn-round-next {
  left: auto;
}
.swiper-testimonials__controls .mxd-swiper-pagination-fraction {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  width: auto;
}
@media only screen and (min-width: 992px) {
  .swiper-testimonials__controls {
    position: absolute;
    bottom: 0;
    left: 1.5rem;
    justify-content: start;
    padding: 0;
  }
}

/* ------------------------------------------------*/
/* Features - Testimonials Style #01 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Testimonials Style #02 Start */
/* ------------------------------------------------*/
.testimonials-slider-2 {
  position: relative;
  height: auto;
}

.swiper-testimonials-2 {
  position: relative;
  height: 100%;
  padding-bottom: 7rem;
}
@media only screen and (min-width: 1200px) {
  .swiper-testimonials-2.no-padding {
    padding-bottom: 0;
  }
}

.swiper-slide.no-blur {
  filter: blur(0);
}

.mxd-testimonials-image {
  position: relative;
}

.mxd-testimonials-image__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-testimonials-image__content {
    padding-right: 6rem;
    padding-bottom: 9.6rem;
  }
}

.mxd-testimonials-image__img {
  position: relative;
}
@media only screen and (min-width: 1200px) {
  .mxd-testimonials-image__img {
    display: flex;
    align-items: center;
  }
}

.mxd-testimonials-image__author {
  display: flex;
  gap: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-image__author {
    gap: 3rem;
  }
}

.mxd-testimonials-image__avatar {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  overflow: hidden;
}
.mxd-testimonials-image__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-image__avatar {
    width: 12rem;
    height: 12rem;
  }
}

.mxd-testimonials-image__info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.6rem;
  width: calc(100% - 9.5rem);
}
@media only screen and (min-width: 768px) {
  .mxd-testimonials-image__info {
    width: auto;
  }
}

.mxd-testimonials-image__name {
  display: block;
}

.mxd-testimonials-image__position {
  line-height: 1.2;
}

.mxd-testimonials-image__rating {
  display: flex;
  gap: 0.8rem;
  margin-top: 0.5rem;
}
.mxd-testimonials-image__rating i {
  display: block;
  font-size: 1.8rem;
  color: var(--t-bright);
}
.mxd-testimonials-image__rating.opposite i {
  color: var(--t-opp-bright);
}
@media only screen and (min-width: 1600px) {
  .mxd-testimonials-image__rating i {
    font-size: 2rem;
  }
}

.mxd-testimonials-image__text {
  margin-bottom: 6rem;
}
.mxd-testimonials-image__text p {
  margin-bottom: 3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-testimonials-image__text {
    margin-bottom: 0;
  }
}

/* ------------------------------------------------*/
/* Features - Testimonials Style #02 End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Partners Cards Start */
/* ------------------------------------------------*/
.mxd-partners-cards {
  position: relative;
}

.mxd-partners-cards__item {
  position: relative;
  height: 250px;
}

.mxd-partners-cards__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.mxd-partners-cards__inner::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  z-index: -1;
  transform: scale(1);
  transition: transform var(--_animspeed-slow) var(--_animbezier);
}
.no-touch .mxd-partners-cards__inner:hover::before {
  transform: scale(1.04);
}
.no-touch .mxd-partners-cards__inner:hover .mxd-partners-cards__logo img {
  opacity: 1;
}

.mxd-partners-cards__logo {
  width: 170px;
  height: auto;
}
.mxd-partners-cards__logo img {
  opacity: 0.6;
  transition: opacity var(--_animspeed-slow) ease;
}

/* ------------------------------------------------*/
/* Features - Partners Cards End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Tech Stack Cards Start */
/* ------------------------------------------------*/
.mxd-tech-stack-cards {
  position: relative;
}
.mxd-tech-stack-cards.grid-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-tech-stack-cards.grid-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 1400px) {
  .mxd-tech-stack-cards.grid-cards {
    grid-template-columns: repeat(4, 1fr);
  }
}

.mxd-tech-stack-cards__item {
  position: relative;
}

.mxd-tech-stack-cards__inner {
  position: relative;
  display: flex;
  align-items: center;
  gap: 2.6rem;
  width: 100%;
  height: 100%;
  padding: 3rem;
}
.mxd-tech-stack-cards__inner::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  z-index: -1;
  transform: scale(1);
  transition: transform var(--_animspeed-slow) var(--_animbezier);
}
.no-touch .mxd-tech-stack-cards__inner:hover::before {
  transform: scale(1.04);
}

.mxd-tech-stack-cards__inner-v2 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.6rem;
  width: 100%;
  height: 100%;
  padding: 3rem 1rem;
}
.mxd-tech-stack-cards__inner-v2::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  z-index: -1;
  transform: scale(1);
  transition: transform var(--_animspeed-slow) var(--_animbezier);
}
.no-touch .mxd-tech-stack-cards__inner-v2:hover::before {
  transform: scale(1.04);
}
@media only screen and (min-width: 768px) {
  .mxd-tech-stack-cards__inner-v2 {
    gap: 2.2rem;
    padding: 4rem 1rem;
  }
}

.mxd-tech-stack-cards__inner-v3 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.6rem;
  width: 100%;
  height: 100%;
  padding: 3rem 4rem;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
}
@media only screen and (min-width: 768px) {
  .mxd-tech-stack-cards__inner-v3 {
    gap: 2.2rem;
    padding: 4rem 6rem;
  }
}

.mxd-tech-stack-cards__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 8rem;
  height: 8rem;
  border-radius: var(--_radius-pt-m);
  background-color: var(--accent);
  color: var(--t-opp-bright);
}
.mxd-tech-stack-cards__logo svg,
.mxd-tech-stack-cards__logo img {
  display: block;
  width: 4.4rem;
  height: auto;
}
.mxd-tech-stack-cards__logo svg {
  fill: currentColor;
}

.mxd-tech-stack-cards__title {
  display: block;
}

.mxd-tech-stack-cards__icon {
  position: relative;
  height: 7rem;
}
.mxd-tech-stack-cards__icon img {
  width: auto;
  height: 100%;
}
@media only screen and (min-width: 768px) {
  .mxd-tech-stack-cards__icon {
    height: 9rem;
  }
}

/* ------------------------------------------------*/
/* Features - Tech Stack Cards End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Blog Preview Start */
/* ------------------------------------------------*/
.mxd-blog-preview {
  position: relative;
}

.mxd-blog-preview__item {
  display: flex;
  flex-direction: column;
  padding-bottom: 3.2rem;
}
.mxd-blog-preview__item:last-of-type {
  padding-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-blog-preview__item {
    padding-bottom: 4.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-blog-preview__item {
    padding-bottom: 0;
  }
}

.mxd-blog-preview__media {
  display: block;
  position: relative;
  height: 460px;
  border-radius: var(--_radius-l);
  margin-bottom: 1.5rem;
  overflow: hidden;
}
.no-touch .mxd-blog-preview__media:hover .mxd-preview-hover {
  opacity: 1;
  backdrop-filter: blur(6px);
}
@media only screen and (min-width: 768px) {
  .mxd-blog-preview__media {
    height: 600px;
    margin-bottom: 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-blog-preview__media {
    height: 460px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-blog-preview__media {
    height: 600px;
  }
}

.mxd-blog-preview__image {
  position: relative;
  width: 100%;
  height: 460px;
  border-radius: var(--_radius-l);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.mxd-blog-preview__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-blog-preview__image {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-blog-preview__image {
    height: 460px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-blog-preview__image {
    height: 600px;
  }
}

.mxd-blog-preview__tags {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2.6rem 3rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  transition: all var(--_animspeed-medium) var(--_animbezier);
}
@media only screen and (min-width: 768px) {
  .mxd-blog-preview__tags {
    padding: 3.6rem 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-blog-preview__tags {
    gap: 1.4rem;
  }
}

.mxd-blog-preview__data {
  padding: 0 3rem;
}
.mxd-blog-preview__data a {
  display: inline;
  font: normal var(--fw-regular) 2.2rem/1.2 var(--_font-accent);
  line-height: 1.2;
  color: var(--t-medium);
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .mxd-blog-preview__data a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}
.mxd-blog-preview__data a span {
  font-weight: var(--fw-medium);
  line-height: 1.2;
  color: var(--t-bright);
}
.mxd-blog-preview__data p {
  font: normal var(--fw-regular) 2.2rem/1.2 var(--_font-accent);
}
@media only screen and (min-width: 768px) {
  .mxd-blog-preview__data {
    padding: 0 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-blog-preview__data p, .mxd-blog-preview__data a {
    font-size: 3rem;
  }
}

/* ------------------------------------------------*/
/* Features - Blog Preview End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Accordion Start */
/* ------------------------------------------------*/
.mxd-accordion {
  position: relative;
}
@media only screen and (min-width: 1200px) and (hover) and (prefers-reduced-motion: no-preference) {
  .mxd-accordion > .mxd-accordion__item {
    transition: opacity 0.3s ease;
  }
  .mxd-accordion:hover > .mxd-accordion__item:not(:hover) {
    opacity: 0.2;
  }
}

.mxd-accordion__item {
  position: relative;
  cursor: pointer;
  margin-top: -2px;
}
.mxd-accordion__item:first-of-type {
  margin-top: 0;
}

.mxd-accordion__divider {
  position: relative;
  width: 100%;
  height: 2px;
  background-color: var(--st-bright);
}

.mxd-accordion__content {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0 3.6rem 0;
  overflow: hidden;
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mxd-accordion__content {
    padding: 0 0 3.4rem 0;
  }
}

.mxd-accordion__title {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 3rem 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-accordion__title {
    padding: 3rem 0 3.4rem 0;
  }
}

.mxd-accordion__arrow {
  display: flex;
  font-size: 2.2rem;
  line-height: 1.2;
  color: var(--t-bright);
  transform: rotate(0deg);
  will-change: transform;
  transition: transform var(--_animspeed-medium) var(--_animbezier);
}
@media only screen and (min-width: 1200px) {
  .mxd-accordion__arrow {
    font-size: 3rem;
  }
}

.accordion-rotate {
  transform: rotate(135deg);
}

/* ------------------------------------------------*/
/* Features - Accordion End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Pricing Cards Start */
/* ------------------------------------------------*/
.mxd-pricing-table {
  position: relative;
}

.mxd-pricing-table__item {
  position: relative;
}

.mxd-pricing-table__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  width: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  padding: 3rem;
  transition: box-shadow var(--_animspeed-slow) var(--_animbezier);
}
.no-touch .mxd-pricing-table__inner:hover {
  box-shadow: 0 14px 28px rgba(var(--accent-rgb), 0.25), 0 10px 10px rgba(var(--accent-rgb), 0.12);
}
@media only screen and (min-width: 1200px) {
  .mxd-pricing-table__inner {
    height: 100%;
    padding: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pricing-table__inner {
    padding: 5rem;
  }
}

.mxd-pricing-table__tag {
  position: absolute;
  top: -1.6rem;
  left: 3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-pricing-table__tag {
    left: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-pricing-table__tag {
    left: 5rem;
  }
}

.mxd-pricing-table__data {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-pricing-table__data {
    justify-content: space-between;
  }
}

.pricing-data__header {
  display: flex;
  flex-direction: column;
}

.pricing-header__title {
  margin-bottom: 1rem;
}

.pricing-header__descr {
  font-size: 1.8rem;
}
@media only screen and (min-width: 1600px) {
  .pricing-header__descr {
    font-size: 1.8rem;
  }
}

.pricing-data__info {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.pricing-data__price {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin-bottom: 1.2rem;
}

.pricing-data__num {
  display: flex;
  align-items: flex-end;
  gap: 0.4rem;
}

.pricing-data__currency,
.pricing-data__period {
  font: normal var(--fw-regular) 1.8rem/1.6 var(--_font-accent);
  color: var(--t-muted);
}
@media only screen and (min-width: 1600px) {
  .pricing-data__currency,
  .pricing-data__period {
    font-size: 2.2rem;
  }
}

.pricing-data__amount {
  font: normal var(--fw-semibold) 7.4rem/0.9 var(--_font-accent);
  letter-spacing: -0.2rem;
  color: var(--t-bright);
}

.pricing-data__btnholder {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
  margin-bottom: 1.8rem;
}

.pricing-data__divider {
  width: 100%;
  height: 0.2rem;
  border-radius: 0.2rem;
  background-color: var(--base-opp);
}

.mxd-pricing-table__plan {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  width: 100%;
  margin-top: 0.7rem;
}

.pricing-plan__caption {
  font-size: 1.8rem;
}
@media only screen and (min-width: 1600px) {
  .pricing-plan__caption {
    font-size: 1.8rem;
  }
}

.pricing-plan__list {
  display: block;
}

.mxd-pricing-table__link {
  display: flex;
  gap: 1rem;
  width: 100%;
}
.mxd-pricing-table__link a {
  font: normal var(--fw-regular) 1.8rem/1.2 var(--_font-accent);
  color: var(--t-bright);
  text-decoration: none;
  background: linear-gradient(to right, var(--t-bright), var(--t-bright)), linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms, color 300ms;
}
.no-touch .mxd-pricing-table__link a:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}

/* ------------------------------------------------*/
/* Features - Pricing Cards End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Team Cards Start */
/* ------------------------------------------------*/
.mxd-team-cards {
  position: relative;
}

.mxd-team-cards__item {
  display: flex;
  flex-direction: column;
  padding-bottom: 3.5rem;
}
.mxd-team-cards__item:last-of-type {
  padding-bottom: 0;
}
.mxd-team-cards__item:last-of-type.padding-bottom-mobile {
  padding-bottom: 3.5rem;
}
.mxd-team-cards__item.no-padding-bottom {
  padding-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-team-cards__item {
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-team-cards__item {
    padding-bottom: 0;
  }
  .mxd-team-cards__item:last-of-type {
    padding-bottom: 0;
  }
  .mxd-team-cards__item:last-of-type.padding-bottom-mobile {
    padding-bottom: 0;
  }
  .mxd-team-cards__item.padding-bottom-desktop {
    padding-bottom: 3.5rem;
  }
}

.mxd-team-cards__h2-block {
  position: relative;
}
.mxd-team-cards__h2-block.right-block {
  padding-left: 0;
}
.mxd-team-cards__h2-block.left-block {
  padding-right: 0;
}
@media only screen and (min-width: 1200px) {
  .mxd-team-cards__h2-block.right-block {
    padding-left: 3rem;
  }
  .mxd-team-cards__h2-block.left-block {
    padding-right: 3rem;
  }
}

.mxd-team-cards__media {
  position: relative;
  height: 460px;
  border-radius: var(--_radius-m);
  margin-bottom: 1.7rem;
  overflow: hidden;
}
.mxd-team-cards__media.no-margin {
  margin-bottom: 0;
}
.mxd-team-cards__media.overflow-visible {
  overflow: visible;
}
@media only screen and (min-width: 768px) {
  .mxd-team-cards__media {
    height: 460px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-team-cards__media {
    height: 460px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-team-cards__media {
    height: 600px;
  }
}

.mxd-team-cards__career {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: var(--_radius-m);
}
.mxd-team-cards__career::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--base-tint);
  border-radius: var(--_radius-m);
  z-index: -1;
  transform: scale(1);
  transition: transform var(--_animspeed-slow), box-shadow var(--_animspeed-slow) var(--_animbezier);
}
.no-touch .mxd-team-cards__career:hover::before {
  transform: scale(1.04);
  box-shadow: 0 14px 28px rgba(var(--accent-rgb), 0.25), 0 10px 10px rgba(var(--accent-rgb), 0.12);
}

.career__image {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  width: 256px;
  height: auto;
  padding-bottom: 4rem;
}

.career__caption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1.6rem;
  display: flex;
  flex-direction: column;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .career__caption {
    padding: 2.6rem;
  }
}

.mxd-team-cards__photo {
  position: relative;
  width: 100%;
  height: 460px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.mxd-team-cards__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 768px) {
  .mxd-team-cards__photo {
    height: 460px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-team-cards__photo {
    height: 460px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-team-cards__photo {
    height: 600px;
  }
}

.mxd-team-cards__socials {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .mxd-team-cards__socials {
    padding: 2.6rem;
  }
}

.mxd-team-cards__info {
  padding: 0 1.6rem;
}
@media only screen and (min-width: 768px) {
  .mxd-team-cards__info {
    padding: 0 2.6rem;
  }
}

.mxd-team-cards__name {
  display: block;
}

.mxd-team-cards__position {
  display: block;
}

/* ------------------------------------------------*/
/* Features - Team Cards End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Values Start */
/* ------------------------------------------------*/
.mxd-values {
  position: relative;
}

.mxd-values__item {
  display: flex;
  flex-direction: column;
}
.mxd-values__item.mobile-reverse {
  flex-direction: column-reverse;
}
@media only screen and (min-width: 1200px) {
  .mxd-values__item.mobile-reverse {
    flex-direction: column;
  }
}

.mxd-values__lists {
  padding: 6rem 3rem 0 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-values__lists {
    padding: 6.4rem 4rem 0 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-values__lists {
    padding: 0;
  }
}

.mxd-values__lists-item {
  margin-bottom: 2.6rem;
}
.mxd-values__lists-item:last-of-type {
  margin-bottom: 0;
}
@media only screen and (min-width: 576px) {
  .mxd-values__lists-item {
    margin-bottom: 0;
  }
}

.mxd-values__image {
  position: relative;
  height: 460px;
  border-radius: var(--_radius-l);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.mxd-values__image.image-large-desktop {
  height: 800px;
}
.mxd-values__image.image-small-desktop {
  height: 600px;
}
@media only screen and (min-width: 768px) {
  .mxd-values__image {
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-values__image.image-large-desktop {
    height: 930px;
  }
}

.mxd-values__descr {
  padding: 5.4rem 3rem 5.9rem 3rem;
}
.mxd-values__descr.has-top-list {
  padding: 4.6rem 3rem 5.9rem 3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-values__descr {
    padding: 6.4rem 4rem 6.9rem 4rem;
  }
  .mxd-values__descr.has-top-list {
    padding: 5.5rem 4rem 6.9rem 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-values__descr {
    padding: 6.4rem 4rem 0 4rem;
  }
  .mxd-values__descr.has-top-list {
    padding: 6.4rem 4rem 0 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-values__descr {
    padding: 6rem 4rem 0 4rem;
  }
  .mxd-values__descr.has-top-list {
    padding: 6rem 4rem 0 4rem;
  }
}

/* ------------------------------------------------*/
/* Features - Values End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Features - Project Details Start */
/* ------------------------------------------------*/
.mxd-project {
  position: relative;
  width: 100%;
  min-width: 360px;
}

.mxd-project__block {
  position: relative;
  margin-top: 12.3rem;
  margin-bottom: 13.1rem;
}
.mxd-project__block.pre-grid {
  margin-bottom: 10.1rem;
}
.mxd-project__block.no-margin {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .mxd-project__block {
    margin-top: 13.1rem;
    margin-bottom: 15.1rem;
  }
  .mxd-project__block.pre-grid {
    margin-bottom: 12.1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-project__block {
    margin-top: 14.3rem;
    margin-bottom: 15.1rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project__block {
    margin-top: 18.3rem;
    margin-bottom: 19rem;
  }
  .mxd-project__block.pre-grid {
    margin-bottom: 16.1rem;
  }
}

.mxd-project__subtitle {
  position: relative;
}

.mxd-project__content {
  display: block;
}

.mxd-project__paragraph {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-top: 1.8rem;
}
@media only screen and (min-width: 768px) {
  .mxd-project__paragraph {
    margin-top: 1.3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-project__paragraph {
    margin-top: 0.4rem;
    gap: 3rem;
  }
  .mxd-project__paragraph.medium-text {
    margin-top: 0.8rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project__paragraph {
    max-width: 855px;
  }
  .mxd-project__paragraph.medium-text {
    margin-top: 0.6rem;
  }
}

.mxd-project__controls {
  margin-top: 1.3rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-project__controls {
    margin-top: 1.4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project__controls {
    margin-top: 1.7rem;
  }
}

.mxd-project__client {
  margin-top: 0.2rem;
}
@media only screen and (min-width: 1200px) {
  .mxd-project__client {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project__client {
    margin-top: 0.2rem;
  }
}

.mxd-project-cards {
  position: relative;
}

.mxd-project-cards__item {
  position: relative;
  height: 460px;
}
@media only screen and (min-width: 768px) {
  .mxd-project-cards__item {
    height: 420px;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project-cards__item {
    height: 600px;
  }
}

.mxd-project-cards__inner {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.mxd-project-cards__inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mxd-project__nav {
  position: relative;
  padding-top: 3rem;
  padding-bottom: 13.3rem;
}
@media only screen and (min-width: 768px) {
  .mxd-project__nav {
    padding-bottom: 15.1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mxd-project__nav {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mxd-project__nav {
    padding-bottom: 19.1rem;
  }
}

.mxd-project__divider {
  position: absolute;
  top: 0;
  left: 1.5rem;
  width: calc(100% - 3rem);
  height: 0.2rem;
  background-color: var(--base-opp);
}

.mxd-project__navitem {
  display: flex;
  flex-direction: column;
}
.mxd-project__navitem.left {
  align-items: start;
}
.mxd-project__navitem.right {
  align-items: end;
  text-align: right;
}

.mxd-project__link {
  font: normal var(--fw-medium) 2.2rem/1.2 var(--_font-accent);
  color: var(--t-bright);
}
.mxd-project__link.opposite {
  color: var(--t-opp-bright);
}
.mxd-project__link span {
  text-decoration: none;
  background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, var(--t-bright), var(--t-bright));
  background-size: 100% 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 300ms, color 300ms;
}
.no-touch .mxd-project__link span:hover {
  color: var(--t-bright);
  background-size: 0 1px, 100% 1px;
}
@media only screen and (min-width: 768px) {
  .mxd-project__link {
    font-size: 3.4rem;
  }
}

@media (max-width: 767px) {
  .library-detail-page .mxd-project__block.pre-grid {
    margin-top: 8.3rem;
  }
}

@media (max-width: 767px) {
  .mxd-project__block {
    margin-top: 8.3rem;
    margin-bottom: 5.1rem;
  }
  .mxd-project__block.pre-grid {
    margin-bottom: 5.1rem;
  }
  .mxd-project__nav {
    padding-bottom: 9.3rem;
  }
}
/* ------------------------------------------------*/
/* Features - Project Details End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Dynamic Utility Classes Start */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Dynamic Utility Classes for JavaScript States */
/* ------------------------------------------------*/
/* These classes replace direct style manipulations in JavaScript */
/* to maintain SCSS-only styling approach */
/* ------------------------------------------------*/
.hover-reveal__content {
  opacity: 0;
  transform: translate(-80%, -50%);
}
.hover-reveal__content.is-visible {
  opacity: 1;
  transform: translate(-80%, -50%);
}
.hover-reveal__content.is-hidden {
  opacity: 0;
  transform: translate(-80%, -50%);
}

.hover-reveal__image {
  transform: scale(1, 1.4);
}
.hover-reveal__image.is-normal {
  transform: scale(1, 1);
}
.hover-reveal__image.is-scaled {
  transform: scale(1, 1.4);
}

.form-step {
  display: none;
}
.form-step.is-active {
  display: block;
}
.form-step.is-inactive {
  display: none;
}

.form-button {
  display: none;
}
.form-button.is-visible {
  display: block;
}
.form-button.is-hidden {
  display: none;
}

.specialty-group {
  display: none;
}
.specialty-group.is-visible {
  display: block;
}
.specialty-group.is-hidden {
  display: none;
}

.status-message {
  display: none;
  opacity: 0;
}
.status-message.is-visible {
  display: block;
  opacity: 1;
}
.status-message.is-hidden {
  display: none;
  opacity: 0;
}

.modal {
  display: none;
}
.modal.is-visible {
  display: block;
}
.modal.is-hidden {
  display: none;
}

.reset-success {
  display: none;
  opacity: 0;
  visibility: hidden;
}
.reset-success.is-visible {
  display: block;
}
.reset-success.is-hidden {
  display: none;
}
.reset-success.show {
  opacity: 1;
  visibility: visible;
}

.hover-reveal__content.position-dynamic {
  position: fixed;
  pointer-events: none;
  z-index: 1000;
}

/* ------------------------------------------------*/
/* Dynamic Utility Classes End */
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* ProjectKreate Library Overrides */
/* ------------------------------------------------*/
.illustrations-browser,
.animations-browser {
  --ib-categories-max: 52rem;
}
@media (min-width: 1200px) {
  .illustrations-browser.is-empty .col-12.col-xl-2.mxd-grid-item.no-margin,
  .animations-browser.is-empty .col-12.col-xl-2.mxd-grid-item.no-margin {
    display: none;
  }
  .illustrations-browser.is-empty .col-12.col-xl-10.mxd-grid-item.no-margin,
  .animations-browser.is-empty .col-12.col-xl-10.mxd-grid-item.no-margin {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.illustrations-browser.is-empty .ib-gallery .ib-gallery__track,
.animations-browser.is-empty .ib-gallery .ib-gallery__track {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  min-height: clamp(28rem, 44vh, 52rem);
}
.illustrations-browser .ib-gallery,
.animations-browser .ib-gallery {
  overflow: visible;
  max-height: var(--ib-categories-max);
}
.illustrations-browser .ib-gallery .ib-gallery__track,
.animations-browser .ib-gallery .ib-gallery__track {
  max-height: var(--ib-categories-max);
  overflow-y: visible;
  padding-top: 1.6rem;
  padding-bottom: 3rem;
  padding-left: 0.8rem;
  padding-right: 1.6rem;
  column-gap: 3.2rem;
}
@media (min-width: 1200px) {
  .illustrations-browser .ib-gallery__nav--prev,
  .animations-browser .ib-gallery__nav--prev {
    left: -8px;
  }
  .illustrations-browser .ib-gallery__nav--next,
  .animations-browser .ib-gallery__nav--next {
    right: -21px;
  }
}
.illustrations-browser .ib-card,
.animations-browser .ib-card {
  height: auto;
  justify-content: flex-start;
  gap: 0;
  padding: 1.2rem;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 1.6rem;
  cursor: pointer;
  transition: border-color 0.25s ease, background 0.25s ease;
}
.illustrations-browser .ib-card .ib-card__media,
.animations-browser .ib-card .ib-card__media {
  aspect-ratio: 3/2;
  flex: none;
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 1.6rem;
}
.illustrations-browser .ib-card .ib-card__media img,
.illustrations-browser .ib-card .ib-card__media iframe,
.animations-browser .ib-card .ib-card__media img,
.animations-browser .ib-card .ib-card__media iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.illustrations-browser .ib-card__thumb-img,
.animations-browser .ib-card__thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.illustrations-browser .no-touch .ib-card:hover .ib-card__thumb-img,
.animations-browser .no-touch .ib-card:hover .ib-card__thumb-img {
  transform: scale(1.04);
}
.illustrations-browser .no-touch .ib-card:hover,
.animations-browser .no-touch .ib-card:hover {
  border-color: rgba(255, 255, 255, 0.18);
}
.illustrations-browser .no-touch .ib-card:hover .ib-card__condition,
.illustrations-browser .no-touch .ib-card:hover .ib-card__stats,
.animations-browser .no-touch .ib-card:hover .ib-card__condition,
.animations-browser .no-touch .ib-card:hover .ib-card__stats {
  color: rgba(255, 255, 255, 0.7);
}
.illustrations-browser .no-touch .ib-card:hover .ib-card__media,
.animations-browser .no-touch .ib-card:hover .ib-card__media {
  outline: 2.5px solid var(--brand-orange);
  outline-offset: 3px;
  transform: translateY(-6px);
  transition: outline 0.25s ease, transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.illustrations-browser .ib-card__meta,
.animations-browser .ib-card__meta {
  padding: 1.2rem 0.4rem 0.6rem;
}
.illustrations-browser .ib-card__title,
.animations-browser .ib-card__title {
  font: normal var(--fw-semibold) 1.6rem/1.35 var(--_font-accent);
  color: var(--t-bright);
  margin: 0 0 0.3rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.illustrations-browser .ib-card__specialty,
.animations-browser .ib-card__specialty {
  font: normal 700 1rem/1 var(--_font-accent);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--brand-orange);
  margin: 0 0 0.4rem;
}
.illustrations-browser .ib-card__stats,
.animations-browser .ib-card__stats {
  font: normal 400 1.2rem/1 var(--_font-accent);
  color: var(--t-muted);
}

.library-empty {
  padding: clamp(8rem, 14vh, 14rem) 0;
  min-height: clamp(52rem, 66vh, 78rem);
  display: flex;
  align-items: center;
  margin-bottom: clamp(6rem, 10vh, 12rem);
}
.library-empty .library-empty__inner {
  width: 100%;
}
.library-empty .library-empty__card {
  max-width: 72rem;
  margin: 0 auto;
  text-align: center;
  padding: clamp(3.2rem, 4vw, 5rem);
  border-radius: var(--_radius-xl);
  background: rgba(var(--base-rgb), 0.35);
}
.library-empty .library-empty__badge {
  width: 8.4rem;
  height: 8.4rem;
  margin: 0 auto 2.2rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--base);
  background: linear-gradient(135deg, var(--brand-gradient-start), var(--brand-gradient-end));
  box-shadow: 0 16px 30px rgba(var(--brand-orange-rgb), 0.18);
}
.library-empty .library-empty__badge i {
  font-size: 3.6rem;
}
.library-empty .library-empty__title {
  font: normal var(--fw-bold) clamp(2.2rem, 2.6vw, 3rem)/1.15 var(--_font-heading);
  color: var(--t-bright);
  margin: 0 0 1rem;
}
.library-empty .library-empty__text {
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-muted);
  margin: 0 auto;
  max-width: 52rem;
}

.library-empty-inline {
  padding: clamp(3.2rem, 5vh, 5.6rem) 0;
  width: 100%;
  display: flex;
  justify-content: center;
}
.library-empty-inline .library-empty-inline__card {
  width: min(64rem, 92%);
  text-align: center;
  padding: 3rem;
  border-radius: var(--_radius-l);
  background: rgba(var(--base-rgb), 0.25);
}
.library-empty-inline .library-empty-inline__badge {
  width: 6.2rem;
  height: 6.2rem;
  margin: 0 auto 1.6rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--base);
  background: linear-gradient(135deg, var(--brand-gradient-start), var(--brand-gradient-end));
}
.library-empty-inline .library-empty-inline__badge i {
  font-size: 2.7rem;
}
.library-empty-inline .library-empty-inline__title {
  font: normal var(--fw-semibold) 1.8rem/1.25 var(--_font-accent);
  color: var(--t-bright);
  margin: 0 0 0.6rem;
}
.library-empty-inline .library-empty-inline__text {
  font: normal var(--fw-regular) 1.4rem/1.5 var(--_font-accent);
  color: var(--t-muted);
  margin: 0 auto;
  max-width: 44rem;
}

[data-library-loading] {
  min-height: clamp(28rem, 44vh, 52rem);
}
[data-library-loading] .library-empty-inline__card {
  background: rgba(var(--base-rgb), 0.18);
  border: 1px solid rgba(255, 255, 255, 0.12);
}
[data-library-loading] .library-empty-inline__badge {
  background: rgba(var(--base-rgb), 0.12);
  box-shadow: none;
  border: 1px solid rgba(var(--brand-orange-rgb), 0.28);
  color: var(--brand-orange);
}
[data-library-loading] .library-empty-inline__badge i {
  color: var(--brand-orange);
  animation: spin 1s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  [data-library-loading] .library-empty-inline__badge i {
    animation: none;
  }
}
[data-library-all-list][data-library-loading=all] .library-skeleton__block {
  display: inline-block;
  border-radius: 1.2rem;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0%, rgba(var(--brand-orange-rgb), 0.16) 50%, rgba(255, 255, 255, 0.06) 100%);
  background-size: 200% 100%;
  animation: libraryShimmer 1.35s ease-in-out infinite;
}
[data-library-all-list][data-library-loading=all] .library-skeleton__block--title {
  width: min(48rem, 70vw);
  height: 4.2rem;
  margin: 0;
}
[data-library-all-list][data-library-loading=all] .library-skeleton__block--hint {
  width: min(22rem, 36vw);
  height: 2rem;
  margin-top: 1rem;
}

@keyframes libraryShimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  [data-library-all-list][data-library-loading=all] .library-skeleton__block {
    animation: none;
  }
}
.illustrations-browser .col-xl-10.mxd-grid-item.no-margin {
  display: flex;
  align-items: center;
}
.illustrations-browser .ib-card__media-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: flex-start;
  padding: 1.4rem 1.6rem;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.illustrations-browser .no-touch .ib-card:hover .ib-card__media-overlay {
  opacity: 1;
}
.illustrations-browser .ib-card__type-badge {
  font: normal 700 1rem/1 var(--_font-accent);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
  background: var(--brand-orange);
  padding: 0.4rem 1rem;
  border-radius: 2rem;
}
.illustrations-browser .ib-card__condition {
  font: normal 400 1.3rem/1.3 var(--_font-accent);
  color: var(--t-medium);
  margin: 0;
}
.illustrations-browser .ib-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.4rem;
}
.illustrations-browser .ib-card__artists {
  font: normal 400 1.2rem/1 var(--_font-accent);
  color: var(--t-muted);
}

.animations-browser .ib-card__play-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.1);
  transition: background 0.3s ease;
}
.animations-browser .ib-card__play-btn {
  width: 6.4rem;
  height: 6.4rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.96);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.22s ease, background 0.22s ease;
}
.animations-browser .ib-card__play-btn i {
  font-size: 2.6rem;
  color: var(--brand-orange);
  margin-left: 0.3rem;
}
.animations-browser .no-touch .ib-card:hover .ib-card__play-overlay {
  background: rgba(0, 0, 0, 0.25);
}
.animations-browser .no-touch .ib-card:hover .ib-card__play-btn {
  transform: scale(1.1);
  background: #fff;
}
.animations-browser .ib-card__source-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.6rem;
  padding: 0.3rem 0.8rem;
  border-radius: 2rem;
  background: rgba(255, 0, 0, 0.08);
  font: normal 600 1.1rem/1 var(--_font-accent);
  color: #FF0000;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.animations-browser .ib-card__source-badge i {
  font-size: 1.4rem;
  color: #FF0000;
}
.animations-browser .ib-card--playing .ib-card__thumb-img,
.animations-browser .ib-card--playing .ib-card__play-overlay {
  display: none;
}
.animations-browser .ib-card--playing .ib-card__iframe {
  display: block !important;
}

.ib-video-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.ib-video-lightbox.is-open {
  opacity: 1;
  visibility: visible;
}
.ib-video-lightbox.is-open .ib-video-lightbox__dialog {
  transform: scale(1) translateY(0);
}

.ib-video-lightbox__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.88);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  cursor: pointer;
}

.ib-video-lightbox__dialog {
  position: relative;
  z-index: 1;
  width: min(90vw, 96rem);
  transform: scale(0.95) translateY(2rem);
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ib-video-lightbox__close {
  position: absolute;
  top: -4.8rem;
  right: 0;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  font-size: 1.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}
.ib-video-lightbox__close:hover {
  background: rgba(255, 255, 255, 0.22);
  transform: scale(1.1);
}

.ib-video-lightbox__frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 1.6rem;
  overflow: hidden;
  background: #000;
  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.6);
}

.ib-video-lightbox__iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.library-advanced-filters {
  margin-top: 2.4rem;
  padding-top: 2.4rem;
  border-top: 1px dashed var(--st-muted);
}

.library-filter-group {
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
}

.library-filter-label {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.4rem;
  color: var(--t-medium);
  margin-bottom: 0.8rem;
}
.library-filter-label i {
  font-size: 1.8rem;
  color: var(--brand-orange);
}

.library-filter-select {
  width: 100%;
  height: 5rem;
  line-height: 5rem;
  background-color: var(--base-tint);
  border: 1px solid transparent;
  border-radius: 1rem;
  padding: 0 4rem 0 1.8rem;
  font-size: 1.6rem;
  color: var(--t-bright);
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1.6rem center;
  background-size: 1.6rem;
  transition: all 0.3s ease;
}
.library-filter-select:focus {
  outline: none;
  background-color: var(--base);
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1);
}

.library-filter-apply {
  width: 100%;
  height: 5rem;
  margin-top: 1rem;
  border-radius: 2.5rem;
  background-color: var(--brand-orange);
  border-color: var(--brand-orange);
  color: #fff;
  font-size: 1.6rem;
  font-weight: var(--fw-medium);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}
.library-filter-apply:hover {
  background-color: #E0541E;
  border-color: #E0541E;
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(232, 93, 37, 0.25);
}
.library-filter-apply .btn-caption {
  color: #fff;
}

.library-search-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4rem 2rem;
  text-align: center;
}
.library-search-empty i {
  font-size: 3.2rem;
  color: var(--t-muted);
  margin-bottom: 1.2rem;
}
.library-search-empty p {
  font: normal var(--fw-semibold) 1.8rem/1.4 var(--_font-accent);
  color: var(--t-bright);
  margin: 0 0 0.4rem;
}
.library-search-empty p strong {
  color: var(--brand-orange);
}
.library-search-empty span {
  font: normal 400 1.3rem/1.4 var(--_font-accent);
  color: var(--t-muted);
}

.library-back {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.8rem;
  height: 4.8rem;
  margin-right: 2rem;
  border-radius: 50%;
  background-color: var(--brand-linen);
  color: var(--t-bright);
  font-size: 2rem;
  transition: all 0.3s ease;
}
.library-back:hover {
  background-color: var(--brand-flame);
  color: var(--brand-white);
}

.library-title {
  font-size: clamp(3.2rem, 6vw, 6rem);
  font-weight: var(--fw-bold);
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin: 0;
}

.library-detail__subtitle {
  font-size: 1.6rem;
  color: var(--t-muted);
  margin-top: 0.8rem;
  font-weight: var(--fw-regular);
}
@media only screen and (min-width: 1200px) {
  .library-detail__subtitle {
    font-size: 1.8rem;
    margin-top: 1.2rem;
  }
}

.library-detail__description {
  margin: 0 0 1.6rem;
  line-height: 1.65;
}
@media (max-width: 767px) {
  .library-detail__description {
    margin-left: -3rem;
    margin-right: -3rem;
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

.library-detail__content {
  margin-top: 2.4rem;
  width: 100%;
}
@media (max-width: 767px) {
  .library-detail__content {
    margin-left: -3rem;
    margin-right: -3rem;
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

.library-detail__content-intro {
  margin: 0 0 1.6rem;
  line-height: 1.7;
}

.library-detail__content-section {
  margin: 0 0 2.4rem;
}

.library-detail__content-title {
  margin: 0 0 1rem;
}

.library-detail__content-paragraph {
  margin: 0 0 1.2rem;
  line-height: 1.7;
}

.library-detail__content-list {
  margin: 0 0 1.6rem;
  padding-left: 1.6rem;
}
.library-detail__content-list li {
  margin: 0 0 0.8rem;
}

.library-detail__content-references-list {
  margin: 0;
  padding-left: 1.6rem;
}

@media only screen and (min-width: 768px) {
  .library-detail__content {
    margin-top: 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-detail__content {
    width: 100%;
  }
}
.library-detail-page .mxd-divider {
  border-radius: 0;
  height: auto;
  overflow: visible;
}

.library-detail__tabs {
  display: flex;
  gap: 2rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1200px) {
  .library-detail__tabs {
    gap: 3rem;
    margin-bottom: 2.4rem;
  }
}

.library-detail__tab {
  background: none;
  border: none;
  padding: 0;
  font-size: 1.8rem;
  font-weight: var(--fw-medium);
  color: var(--t-muted);
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
}
@media only screen and (min-width: 1200px) {
  .library-detail__tab {
    font-size: 2.4rem;
  }
}
.library-detail__tab:hover {
  color: var(--t-bright);
}
.library-detail__tab--active {
  color: var(--t-bright);
  font-weight: var(--fw-semibold);
}

.library-detail__hero {
  position: relative;
  width: 100%;
}

.library-detail__media-layout {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media only screen and (min-width: 1200px) {
  .library-detail__media-layout {
    flex-direction: row;
    gap: 3rem;
  }
}

.library-detail__media-content {
  flex: 1;
  min-width: 0;
}

.library-detail__media-panel {
  display: none;
}
.library-detail__media-panel--active {
  display: block;
}

.library-detail__illustration-wrapper {
  position: relative;
}

.library-detail__lightbox {
  display: block;
  position: relative;
  border-radius: 2.4rem;
  overflow: hidden;
  background-color: var(--base-tint);
  cursor: zoom-in;
}
.library-detail__lightbox:hover .library-detail__expand-btn {
  opacity: 1;
  transform: scale(1);
}

.library-detail__image {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 3/2;
  object-fit: cover;
}

.library-detail__expand-btn {
  position: absolute;
  top: 1.6rem;
  right: 1.6rem;
  width: 4rem;
  height: 4rem;
  border-radius: 0.8rem;
  background-color: rgba(255, 255, 255, 0.9);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  color: var(--t-dark);
  cursor: pointer;
  opacity: 0.8;
  transition: all 0.3s ease;
  z-index: 2;
}
@media only screen and (min-width: 1200px) {
  .library-detail__expand-btn {
    opacity: 0;
    transform: scale(0.9);
  }
}

.library-detail__thumbnails {
  position: absolute;
  bottom: 1.6rem;
  right: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  z-index: 2;
}
@media (max-width: 767px) {
  .library-detail__thumbnails {
    flex-direction: row;
  }
}

.library-detail__thumb {
  width: 5rem;
  height: 6rem;
  border-radius: 0.6rem;
  overflow: hidden;
  border: 2px solid transparent;
  background: none;
  padding: 0;
  cursor: pointer;
  transition: all 0.3s ease;
  opacity: 0.7;
}
@media only screen and (min-width: 1200px) {
  .library-detail__thumb {
    width: 6rem;
    height: 7.5rem;
  }
}
.library-detail__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.library-detail__thumb:hover {
  opacity: 1;
}
.library-detail__thumb--active {
  opacity: 1;
  border-color: var(--accent);
}

.library-detail__zoom-hint {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-top: 1.2rem;
  color: var(--t-muted);
  font-size: 1.3rem;
}
.library-detail__zoom-hint i {
  font-size: 1.6rem;
}
@media only screen and (min-width: 1200px) {
  .library-detail__zoom-hint {
    font-size: 1.4rem;
  }
}

.library-detail__video-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 2.4rem;
  overflow: hidden;
  background-color: var(--base-tint);
}
.library-detail__video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.library-detail__skin-selector {
  width: 100%;
  background-color: var(--base-tint);
  border-radius: 2.4rem;
  padding: 2rem;
}
@media only screen and (min-width: 1200px) {
  .library-detail__skin-selector {
    width: 28rem;
    flex-shrink: 0;
    padding: 2.4rem;
    align-self: flex-start;
  }
}
.library-detail__skin-selector.is-hidden {
  display: none;
}

.skin-selector__header {
  margin-bottom: 1.6rem;
}

.skin-selector__title {
  font-size: 1.6rem;
  font-weight: var(--fw-semibold);
  color: var(--t-bright);
  margin: 0 0 0.4rem;
}
@media only screen and (min-width: 1200px) {
  .skin-selector__title {
    font-size: 1.8rem;
  }
}

.skin-selector__subtitle {
  font-size: 1.3rem;
  color: var(--t-muted);
  margin: 0;
}
@media only screen and (min-width: 1200px) {
  .skin-selector__subtitle {
    font-size: 1.4rem;
  }
}

.skin-selector__options {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.skin-selector__option {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: 1.2rem 1.4rem;
  background-color: var(--base);
  border: 1px solid var(--border-light);
  border-radius: 1.2rem;
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: left;
}
@media only screen and (min-width: 1200px) {
  .skin-selector__option {
    padding: 1.4rem 1.6rem;
  }
}
.skin-selector__option:hover {
  border-color: var(--accent);
}
.skin-selector__option--active {
  border-color: var(--accent);
}
.skin-selector__option--active .skin-selector__status {
  display: block;
  color: var(--accent);
}

.skin-selector__swatch {
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  flex-shrink: 0;
}
@media only screen and (min-width: 1200px) {
  .skin-selector__swatch {
    width: 4rem;
    height: 4rem;
  }
}
.skin-selector__swatch--light {
  background-color: #F5D0B0;
}
.skin-selector__swatch--medium {
  background-color: #D4A574;
}
.skin-selector__swatch--tan {
  background-color: #B07D4E;
}
.skin-selector__swatch--dark {
  background-color: #5C3D2E;
}

.skin-selector__label {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.skin-selector__name {
  font-size: 1.4rem;
  font-weight: var(--fw-medium);
  color: var(--t-bright);
}
@media only screen and (min-width: 1200px) {
  .skin-selector__name {
    font-size: 1.5rem;
  }
}

.skin-selector__status {
  font-size: 1.2rem;
  color: var(--accent);
  display: none;
}
@media only screen and (min-width: 1200px) {
  .skin-selector__status {
    font-size: 1.3rem;
  }
}

.library-detail__clinical-note {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 2rem;
  margin-bottom: 1.6rem;
  padding: 1.4rem 1.6rem;
  background-color: rgba(var(--accent-rgb), 0.08);
  border-radius: 1rem;
}
@media only screen and (min-width: 1200px) {
  .library-detail__clinical-note {
    margin-top: 2.4rem;
    margin-bottom: 2rem;
    padding: 1.6rem 2rem;
  }
}

.clinical-note__label {
  font-size: 1.4rem;
  font-weight: var(--fw-semibold);
  color: var(--accent);
}
@media only screen and (min-width: 1200px) {
  .clinical-note__label {
    font-size: 1.5rem;
  }
}

.clinical-note__text {
  font-size: 1.4rem;
  color: var(--t-medium);
  line-height: 1.5;
}
@media only screen and (min-width: 1200px) {
  .clinical-note__text {
    font-size: 1.5rem;
  }
}

.library-detail__actions {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 2.4rem;
}
.library-detail__actions .library-detail__download,
.library-detail__actions .library-detail__versions {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .library-detail__actions {
    flex-direction: row;
    gap: 1.6rem;
    margin-bottom: 3rem;
  }
  .library-detail__actions .library-detail__download,
  .library-detail__actions .library-detail__versions {
    flex: 1 1 0;
    width: auto;
  }
}

.download-form {
  display: grid;
  gap: 1.6rem;
  margin-top: 1.6rem;
}

.download-form__group {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.download-form__label {
  font-size: 1.3rem;
  font-weight: var(--fw-medium);
  color: var(--t-muted);
}

.download-form__select {
  height: 4.6rem;
  width: 100%;
  border-radius: 1.2rem;
  border: 1px solid var(--border-light);
  background-color: var(--base);
  padding: 0 1.4rem;
  font-size: 1.4rem;
  color: var(--t-bright);
}
.download-form__select:focus-visible {
  outline: 0;
  border-color: rgba(var(--accent-rgb), 0.55);
  box-shadow: 0 0 0 2px rgba(var(--accent-rgb), 0.25);
}

.download-form__info {
  border-radius: 1.4rem;
  padding: 1.2rem 1.4rem;
  background-color: var(--base-tint);
  border: 1px solid var(--border-light);
}

.download-form__license {
  margin: 0;
  font-size: 1.3rem;
  color: var(--t-medium);
}

.download-form__attribution {
  margin: 0.6rem 0 0;
  font-size: 1.2rem;
  line-height: 1.5;
  color: var(--t-muted);
}

@media only screen and (min-width: 768px) {
  .download-form {
    grid-template-columns: 1fr 1fr;
    align-items: end;
  }
  .download-form__info {
    grid-column: 1/-1;
  }
  .download-form .btn {
    grid-column: 1/-1;
  }
}
.version-history {
  width: 100%;
}

.version-history__loading,
.version-history__empty,
.version-history__error {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 2.8rem 2.2rem;
  text-align: center;
  color: var(--t-muted);
}
.version-history__loading i,
.version-history__empty i,
.version-history__error i {
  font-size: 2.4rem;
}

.version-history__hint {
  margin: 0;
  font-size: 1.3rem;
  color: var(--t-muted);
}

.version-history__list {
  display: grid;
  gap: 1.2rem;
}

.version-item {
  border-radius: 1.6rem;
  border: 1px solid var(--border-light);
  background-color: var(--base);
  padding: 1.6rem;
  display: grid;
  gap: 1.2rem;
}

.version-item--current {
  border-color: rgba(var(--accent-rgb), 0.55);
  box-shadow: 0 8px 26px rgba(var(--accent-rgb), 0.08);
}

.version-item__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.version-item__number {
  font-size: 1.4rem;
  font-weight: var(--fw-semibold);
  color: var(--t-bright);
}

.version-item__badge {
  display: inline-flex;
  align-items: center;
  height: 2.4rem;
  padding: 0 1rem;
  border-radius: 999px;
  font-size: 1.2rem;
  font-weight: var(--fw-semibold);
  background-color: rgba(var(--accent-rgb), 0.12);
  color: var(--accent);
}

.version-item__content {
  display: grid;
  gap: 1.2rem;
}

.version-item__changelog {
  margin: 0;
  font-size: 1.4rem;
  line-height: 1.6;
  color: var(--t-medium);
}

.version-item__changelog--empty {
  color: var(--t-muted);
}

.version-item__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  font-size: 1.2rem;
  color: var(--t-muted);
}
.version-item__meta i {
  font-size: 1.6rem;
}

.version-item__author,
.version-item__date {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
}

.library-detail__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.library-detail__list li {
  position: relative;
  padding-left: 2rem;
  color: var(--t-medium);
  font-size: 1.6rem;
  line-height: 1.65;
}
.library-detail__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.8em;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background-color: var(--accent);
}
.library-detail__list li strong {
  color: var(--t-bright);
  font-weight: var(--fw-semibold);
}
@media only screen and (min-width: 1200px) {
  .library-detail__list {
    gap: 2rem;
  }
  .library-detail__list li {
    font-size: 1.8rem;
    padding-left: 2.4rem;
  }
}

.library-detail__references {
  list-style: decimal;
  padding-left: 2rem;
  margin: 0 0 4.2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.library-detail__references li {
  color: var(--t-muted);
  font-size: 1.4rem;
  line-height: 1.5;
  padding-left: 0.4rem;
}
@media only screen and (min-width: 768px) {
  .library-detail__references {
    margin-bottom: 5.25rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-detail__references {
    gap: 1.2rem;
  }
  .library-detail__references li {
    font-size: 1.5rem;
  }
}

.library-detail__related {
  padding-top: 2rem;
}
@media (max-width: 767px) {
  .library-detail__related {
    padding-top: 0;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .library-detail__related .row {
    margin-left: -0.75rem !important;
    margin-right: -0.75rem !important;
    margin-top: -1.5rem !important;
  }
  .library-detail__related .row > * {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
    margin-top: 1.5rem !important;
  }
}

.library-detail__related-card {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  text-decoration: none;
  transition: all 0.3s ease;
}
.library-detail__related-card:hover .library-detail__related-image img {
  transform: scale(1.05);
}
.library-detail__related-card:hover .library-detail__related-title {
  color: var(--accent);
}

.library-detail__related-image {
  position: relative;
  aspect-ratio: 4/5;
  border-radius: 2.4rem;
  overflow: hidden;
  background-color: var(--base-tint);
}
.library-detail__related-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.library-detail__related-title {
  font-size: 1.8rem;
  font-weight: var(--fw-medium);
  color: var(--t-bright);
  transition: color 0.3s ease;
}
@media only screen and (min-width: 1200px) {
  .library-detail__related-title {
    font-size: 2rem;
  }
}

[color-scheme=light] .library-back {
  background-color: var(--brand-linen);
}
[color-scheme=light] .library-back:hover {
  background-color: var(--brand-flame);
  color: var(--brand-white);
}
[color-scheme=light] .library-detail__lightbox {
  background-color: var(--brand-linen);
}
[color-scheme=light] .library-detail__skin-selector {
  background-color: var(--brand-linen);
}
[color-scheme=light] .skin-selector__option {
  background-color: #fff;
}
[color-scheme=light] .library-detail__related-image {
  background-color: var(--brand-linen);
}
[color-scheme=light] .library-detail__clinical-note {
  background-color: rgba(var(--accent-rgb), 0.06);
}
[color-scheme=light] .library-detail__video-wrapper {
  background-color: var(--brand-linen);
}

.library-detail-page .mxd-project__block {
  margin-top: 6rem;
  margin-bottom: 6rem;
}
.library-detail-page .mxd-project__block.pre-grid {
  margin-bottom: 5rem;
}
@media only screen and (min-width: 768px) {
  .library-detail-page .mxd-project__block {
    margin-top: 7rem;
    margin-bottom: 7rem;
  }
  .library-detail-page .mxd-project__block.pre-grid {
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .library-detail-page .mxd-project__block {
    margin-top: 8rem;
    margin-bottom: 9rem;
  }
  .library-detail-page .mxd-project__block.pre-grid {
    margin-bottom: 7rem;
  }
}

.page-about {
  overflow-x: hidden;
  overflow-x: clip;
}

.page-about #mxd-page-content.inner-page-content {
  padding-top: 4.6rem;
}
@media only screen and (min-width: 768px) {
  .page-about #mxd-page-content.inner-page-content {
    padding-top: 13.6rem;
  }
}

.page-about .mxd-section-inner-headline.about-hero {
  margin-bottom: 1.5rem;
}

.about-hero-gap {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  margin-bottom: 1.5rem;
  margin-top: 0;
}

.about-hero {
  position: relative;
  overflow: hidden;
  border-radius: var(--_radius-xl);
  min-height: 80vh;
  padding-top: 2.4rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
  --faces-gap: 0.9rem;
}
@media only screen and (min-width: 768px) {
  .about-hero {
    min-height: 85vh;
    padding-top: 3rem;
    padding-left: 1.2rem;
    padding-right: 1.2rem;
    padding-bottom: 1.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .about-hero {
    min-height: 90vh;
    padding-top: 4rem;
    padding-left: 1.6rem;
    padding-right: 1.6rem;
    padding-bottom: 2rem;
  }
}
.about-hero .library-title {
  color: var(--t-opp-bright);
  font-weight: var(--fw-black);
  font-size: clamp(4.2rem, 10vw, 5.2rem);
  letter-spacing: -0.06rem;
  white-space: nowrap;
}
@media only screen and (min-width: 768px) {
  .about-hero .library-title {
    font-size: 5.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .about-hero .library-title {
    font-size: 6.4rem;
  }
}

.about-hero__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
}

.faces-track {
  position: absolute;
  inset: 0;
  display: flex;
  height: 100%;
  width: auto;
  will-change: transform;
  animation: facesScroll 120s linear infinite;
  gap: 0;
  padding-top: 0.9rem;
  padding-bottom: 0.9rem;
}

@keyframes facesScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.faces-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--faces-gap);
  margin-right: 0.9rem;
  padding: 0;
  border-radius: var(--_radius-xl);
  flex: 0 0 100%;
  align-content: start;
  justify-content: start;
}
.faces-grid li {
  list-style: none;
}
@media only screen and (min-width: 768px) {
  .faces-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media only screen and (min-width: 1200px) {
  .faces-grid {
    grid-template-columns: repeat(9, 1fr);
    grid-template-rows: repeat(3, 1fr);
    height: 100%;
  }
}

.faces-grid__item {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: var(--_radius-m);
  overflow: hidden;
  background-color: rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
}
.faces-grid__item::before {
  content: "";
  display: block;
  padding-top: 128.571%;
}
@media only screen and (min-width: 1200px) {
  .faces-grid__item::before {
    display: none;
  }
}
.faces-grid__item img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform-origin: center center;
  animation: aboutPulse 8s ease-in-out infinite;
}

.faces-grid__item--text {
  display: flex;
  align-items: center;
  justify-content: center;
  --faces-tile-bg: var(--base-opp);
  --faces-tile-fg: var(--t-opp-bright);
  background: var(--faces-tile-bg);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
}
.faces-grid__item--text .faces-grid__text {
  color: var(--faces-tile-fg);
  font-weight: var(--fw-bold);
  text-align: center;
  padding: 1rem;
  line-height: 1.25;
  font-size: 1.4rem;
  letter-spacing: 0.02rem;
}
@media only screen and (min-width: 768px) {
  .faces-grid__item--text .faces-grid__text {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .faces-grid__item--text .faces-grid__text {
    font-size: 1.8rem;
  }
}
.faces-grid__item--text.is-dark {
  --faces-tile-bg: var(--base-opp);
  --faces-tile-fg: var(--t-opp-bright);
}
.faces-grid__item--text.is-accent {
  --faces-tile-bg: var(--accent);
  --faces-tile-fg: var(--t-opp-bright);
}
.faces-grid__item--text.is-teal {
  --faces-tile-bg: var(--additional);
  --faces-tile-fg: var(--t-opp-bright);
}
.faces-grid__item--text.is-orange {
  --faces-tile-bg: var(--brand-orange);
  --faces-tile-fg: var(--t-bright);
}

.faces-grid__text--large {
  font-size: 2rem;
}
@media only screen and (min-width: 768px) {
  .faces-grid__text--large {
    font-size: 2.2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .faces-grid__text--large {
    font-size: 2.4rem;
  }
}

.faces-grid__text--small {
  font-size: 1.2rem;
}
@media only screen and (min-width: 768px) {
  .faces-grid__text--small {
    font-size: 1.3rem;
  }
}

.faces-grid__text--caps {
  text-transform: uppercase;
  letter-spacing: 0.08rem;
}

.faces-grid__item:nth-child(3n) img {
  animation-delay: 0.6s;
}

.faces-grid__item:nth-child(5n) img {
  animation-delay: 1.2s;
}

@keyframes aboutPulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
.about-hero__gradient {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(223, 87, 49, 0.88) 0%, rgba(242, 184, 90, 0.77) 100%);
  background-size: 300% 100%;
  animation: aboutGradientSweep 8s ease-in-out infinite;
}

@keyframes aboutGradientSweep {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 100% 0%;
  }
  100% {
    background-position: 0% 0%;
  }
}
.about-hero__content {
  position: relative;
  z-index: 2;
}
.about-hero__content .library-back {
  color: var(--t-opp-bright) !important;
  font-size: 2.4rem;
  background-color: var(--base-opp-tint);
  border-radius: 50%;
  transition: transform 0.3s ease, background-color 0.3s ease;
}
.about-hero__content .library-back i {
  color: var(--t-opp-bright) !important;
}
.about-hero__content .library-back:hover {
  transform: translateX(-4px);
  background-color: var(--base-opp);
  color: var(--t-opp-bright) !important;
}
.about-hero__content .library-back:hover i {
  color: var(--t-opp-bright) !important;
}
.about-hero__content .loading-wrap {
  margin-top: 3rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1200px) {
  .about-hero__content .loading-wrap {
    margin-bottom: 3.2rem;
  }
}

.about-card-stack {
  position: relative;
  width: 100%;
  max-width: none;
  margin: 2rem 0 0;
  height: 520px;
}
@media only screen and (min-width: 768px) {
  .about-card-stack {
    max-width: 420px;
    margin: 3rem auto 0;
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .about-card-stack {
    margin-top: 0;
    margin-left: 0;
    padding-top: 4rem;
  }
}

.stack-card {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 100%;
  max-width: 420px;
  height: 440px;
  border-radius: var(--_radius-l);
  background-color: var(--base);
  transform-origin: center bottom;
  transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .stack-card {
    width: 80%;
    max-width: 360px;
  }
}

.stack-card.card-3 {
  transform: translateY(30px) scale(0.9);
  opacity: 0.6;
  filter: blur(0.5px);
  z-index: 0;
}

.stack-card.card-2 {
  transform: translateY(15px) scale(0.95);
  opacity: 0.85;
  z-index: 1;
}

.stack-card.card-1 {
  z-index: 2;
  background-color: var(--base);
  transform: translateY(0) scale(1);
}
.stack-card.card-1::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background-image: url("../img/logos/ProjectKreate_Icon - Primary.svg");
  background-repeat: repeat;
  background-size: 60px 60px;
  opacity: 0.08;
  pointer-events: none;
}
.stack-card.card-1 img {
  width: 108%;
  height: auto;
  display: block;
}

.about-mission {
  font: normal var(--fw-regular) 2rem/1.6 var(--_font-accent);
  color: #FFFFFF;
  padding: 0;
  max-width: 700px;
  text-align: center;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .about-mission {
    font-size: 2.8rem;
    text-align: left;
    margin: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .about-mission {
    font-size: 3.4rem;
  }
}
.about-mission mark {
  padding: 0.3rem 0.8rem;
  border-radius: var(--_radius-pt-m);
  display: inline-block;
  line-height: 1.2;
  font-weight: var(--fw-medium);
  animation-duration: 6s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
.about-mission mark.chip-cream {
  animation-name: chipCreamCycle;
}
.about-mission mark.chip-orange {
  animation-name: chipOrangeCycle;
}
.about-mission mark.chip-gold {
  animation-name: chipGoldCycle;
}

@keyframes chipCreamCycle {
  0%, 100% {
    background-color: #FFF1E6;
    color: #000000;
  }
  33% {
    background-color: #DF5731;
    color: #FFFFFF;
  }
  66% {
    background-color: #F2B85A;
    color: #000000;
  }
}
@keyframes chipOrangeCycle {
  0%, 100% {
    background-color: #DF5731;
    color: #FFFFFF;
  }
  33% {
    background-color: #F2B85A;
    color: #000000;
  }
  66% {
    background-color: #FFF1E6;
    color: #000000;
  }
}
@keyframes chipGoldCycle {
  0%, 100% {
    background-color: #F2B85A;
    color: #000000;
  }
  33% {
    background-color: #FFF1E6;
    color: #000000;
  }
  66% {
    background-color: #DF5731;
    color: #FFFFFF;
  }
}
.values-section {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .values-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .values-section {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.values-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.3rem;
  margin-bottom: 0.8rem;
}
@media only screen and (min-width: 768px) {
  .values-header {
    gap: 1.2rem;
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .values-header {
    gap: 1.5rem;
    margin-bottom: 2.5rem;
  }
}

.values-header__logo {
  width: 100%;
  max-width: 100%;
  height: auto;
  color: var(--t-bright);
}

.values-header__text {
  font-family: var(--_font-accent);
  font-weight: var(--fw-black);
  font-size: clamp(3.8rem, 10vw, 4.8rem);
  color: #000000;
  letter-spacing: 0.03rem;
  margin: 0;
  line-height: 0.9;
  white-space: nowrap;
  max-width: calc(100% - 2rem);
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .values-header__text {
    font-size: 12rem;
    line-height: 1;
    letter-spacing: 0.05rem;
  }
}
@media only screen and (min-width: 1200px) {
  .values-header__text {
    font-size: 19.2rem;
  }
}

.values-display {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.2rem;
  width: 100%;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .values-display {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .values-display {
    margin-bottom: 3rem;
  }
}

.value-text-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 1rem;
  height: 6rem;
  line-height: 0.85;
  position: relative;
  overflow: hidden;
  padding-right: 4.8rem;
}
@media only screen and (min-width: 768px) {
  .value-text-container {
    gap: 3rem;
    height: 14rem;
    line-height: 1;
    padding-right: 5.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .value-text-container {
    gap: 4rem;
    height: 20rem;
    padding-right: 6.4rem;
  }
}

.value-text {
  font-family: var(--_font-accent);
  font-weight: var(--fw-black);
  font-size: clamp(5rem, 8vw, 9rem);
  background: linear-gradient(90deg, #DF5731 0%, #F2B85A 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: 200% 100%;
  animation: valueGradientShift 3s ease-in-out infinite;
  margin: 0;
  letter-spacing: 0.02rem;
  transition: opacity 0.3s ease;
  white-space: nowrap;
  line-height: 0.85;
  display: inline-block;
  position: relative;
  max-width: 100%;
}
@media only screen and (min-width: 768px) {
  .value-text {
    font-size: clamp(8rem, 10vw, 14rem);
    line-height: 1;
  }
}
@media only screen and (min-width: 1200px) {
  .value-text {
    font-size: clamp(12rem, 12vw, 20rem);
    letter-spacing: 0.1rem;
  }
}
.value-text.marquee-active {
  animation: valueGradientShift 3s ease-in-out infinite, marqueeScroll 15s linear infinite;
}

@keyframes valueGradientShift {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 100% 0%;
  }
  100% {
    background-position: 0% 0%;
  }
}
@keyframes marqueeScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-30%);
  }
}
.value-arrow {
  background: transparent;
  border: 2px solid var(--t-bright);
  border-radius: 50%;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  color: var(--t-bright);
  padding: 0;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
@media only screen and (min-width: 768px) {
  .value-arrow {
    width: 56px;
    height: 56px;
    right: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .value-arrow {
    width: 64px;
    height: 64px;
    right: 3rem;
  }
}
.value-arrow:hover {
  background: var(--t-bright);
  color: var(--base);
  transform: translateY(-50%) rotate(90deg);
}
.value-arrow:active {
  transform: translateY(-50%) rotate(90deg);
}
.value-arrow svg {
  width: 24px;
  height: 24px;
}
@media only screen and (min-width: 768px) {
  .value-arrow svg {
    width: 28px;
    height: 28px;
  }
}
@media only screen and (min-width: 1200px) {
  .value-arrow svg {
    width: 32px;
    height: 32px;
  }
}

.values-carousel {
  position: relative;
  width: 100%;
  margin: 10rem auto 0;
  height: 400px;
}
@media only screen and (min-width: 768px) {
  .values-carousel {
    width: 66.666%;
    height: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .values-carousel {
    height: 700px;
  }
}

.carousel-card {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  border-radius: var(--_radius-xl);
  overflow: hidden;
  transition: all 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  transform-origin: center center;
  cursor: pointer;
}
.carousel-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.carousel-card.card-active {
  transform: translate(-50%, -50%) scale(1) rotate(0deg);
  z-index: 3;
  opacity: 1;
  filter: brightness(1);
}

.carousel-card.card-back-1 {
  transform: translate(-50%, calc(-50% - 140px)) scale(0.6) rotate(0deg);
  z-index: 2;
  opacity: 0.7;
  filter: brightness(0.85);
}
@media only screen and (min-width: 768px) {
  .carousel-card.card-back-1 {
    transform: translate(calc(-50% - 400px), -50%) scale(0.65) rotate(-5deg);
    opacity: 0.8;
  }
}

.carousel-card.card-back-2 {
  transform: translate(-50%, calc(-50% + 140px)) scale(0.6) rotate(0deg);
  z-index: 1;
  opacity: 0.7;
  filter: brightness(0.85);
}
@media only screen and (min-width: 768px) {
  .carousel-card.card-back-2 {
    transform: translate(calc(-50% + 400px), -50%) scale(0.65) rotate(5deg);
    opacity: 0.8;
  }
}

.community-tree-section {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-left: 30px;
  padding-right: 30px;
}
@media only screen and (min-width: 768px) {
  .community-tree-section {
    padding-top: 6rem;
    padding-bottom: 6rem;
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .community-tree-section {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}

.community-tree__header {
  text-align: center;
  margin-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .community-tree__header {
    margin-bottom: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-tree__header {
    margin-bottom: 6rem;
  }
}

.community-tree__title {
  font-family: var(--_font-accent);
  font-weight: var(--fw-regular);
  font-size: 2.25rem;
  line-height: 1.4;
  color: var(--t-default);
  max-width: 1100px;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .community-tree__title {
    font-size: 2.7rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-tree__title {
    font-size: 3.3rem;
  }
}

.community-tree__svg-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  gap: 0;
}

.community-tree__layer {
  width: 100%;
  display: flex;
  justify-content: center;
}

.community-tree__layer--network {
  position: relative;
  margin-bottom: -2rem;
}
@media only screen and (min-width: 768px) {
  .community-tree__layer--network {
    margin-bottom: -3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-tree__layer--network {
    margin-bottom: -4rem;
  }
}

.community-tree__layer--trunk {
  z-index: 1;
}

.community-tree__layer--roots {
  margin-top: -0.16rem;
}

.community-tree__svg {
  width: 100%;
  height: auto;
  display: block;
}

.community-tree__svg--network {
  max-width: 1255px;
}

.community-tree__svg--trunk {
  max-width: 315px;
}
@media only screen and (min-width: 768px) {
  .community-tree__svg--trunk {
    max-width: 1101px;
  }
}

.community-tree__svg--roots {
  max-width: 1227px;
}

.network-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
  max-width: 1255px;
}
.network-wrapper .community-tree__svg {
  display: block;
  width: 100%;
}

.network-wrap {
  position: relative;
  width: 100%;
  max-width: 1255px;
  padding-bottom: 56.65%;
  overflow: hidden;
}
.network-wrap .community-tree__svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.network-faces {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2;
}

.network-face {
  position: absolute;
  aspect-ratio: 1;
  border-radius: 50%;
  object-fit: cover;
  display: block;
  pointer-events: auto;
  cursor: pointer;
  transition: filter 0.4s ease, transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.network-face:hover {
  transform: scale(1.12);
  filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.25)) drop-shadow(0 0 12px rgba(231, 128, 66, 0.3));
  z-index: 10;
}

.community-tree__trunk-branch {
  transition: filter 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  cursor: pointer;
}
.community-tree__trunk-branch:hover {
  filter: brightness(1.3) drop-shadow(0 0 14px rgba(231, 128, 66, 0.6));
}

.community-tree__trunk-wrapper {
  position: relative;
  padding: 0 1rem;
}
@media only screen and (min-width: 768px) {
  .community-tree__trunk-wrapper {
    padding: 0 2rem;
  }
}

.community-tree__footer-text {
  text-align: center;
  margin-top: 2rem;
  padding: 0 1rem;
}
@media only screen and (min-width: 992px) {
  .community-tree__footer-text {
    position: absolute;
    top: 25%;
    max-width: 300px;
    margin-top: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .community-tree__footer-text {
    max-width: 350px;
  }
}
.community-tree__footer-text p {
  font-size: 2.25rem !important;
  line-height: 1.4 !important;
  color: var(--t-muted);
}
@media only screen and (min-width: 768px) {
  .community-tree__footer-text p {
    font-size: 2.5rem !important;
  }
}
@media only screen and (min-width: 992px) {
  .community-tree__footer-text p {
    font-size: 2.6rem !important;
  }
}
@media only screen and (min-width: 1200px) {
  .community-tree__footer-text p {
    font-size: 2.8rem !important;
  }
}

@media only screen and (min-width: 992px) {
  .community-tree__footer-text--left {
    left: 24rem;
    text-align: right !important;
  }
}

@media only screen and (min-width: 992px) {
  .community-tree__footer-text--right {
    right: 24rem;
    text-align: left !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .network-faces,
  .community-tree__svg {
    animation: none !important;
    transition: none !important;
  }
}
.page-community #mxd-page-content.inner-page-content {
  padding-top: 4.6rem;
}
@media only screen and (min-width: 768px) {
  .page-community #mxd-page-content.inner-page-content {
    padding-top: 13.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .page-community #mxd-page-content.inner-page-content {
    padding-top: 13.6rem;
  }
}

.community-hero-gap {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  margin-bottom: 1.5rem;
  margin-top: 0;
}

.community-hero-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: var(--_radius-xl);
  background: linear-gradient(135deg, #FAF3ED 0%, #fff5eb 100%);
  padding: 3rem 0 4rem 0;
  min-height: 70vh;
}
@media only screen and (min-width: 768px) {
  .community-hero-wrapper {
    padding: 4rem 0 5rem 0;
    min-height: 80vh;
  }
}
@media only screen and (min-width: 1200px) {
  .community-hero-wrapper {
    padding: 5rem 0 6rem 0;
    min-height: 75vh;
  }
}
.community-hero-wrapper .row {
  position: relative;
}
.community-hero-wrapper .mxd-container.grid-container {
  padding-right: 0;
}
@media only screen and (min-width: 768px) {
  .community-hero-wrapper .mxd-container.grid-container {
    padding-right: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .community-hero-wrapper .mxd-container.grid-container {
    padding-right: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .community-hero-wrapper .mxd-container.grid-container {
    padding-right: 0;
  }
}

.community-hero__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2rem;
  position: relative;
  z-index: 2;
  padding: 3rem 2rem 4rem;
}
@media only screen and (min-width: 768px) {
  .community-hero__content {
    gap: 2.5rem;
    padding: 4rem 3rem 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-hero__content {
    padding: 5rem 4rem 6rem 3rem;
    max-width: 45%;
    gap: 2.5rem;
    min-height: 100%;
  }
}

.community-hero__header {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 0;
}

.community-back {
  color: #B9401A;
  font-size: 2.2rem;
  transition: transform 0.3s ease;
}
.community-back i {
  color: #B9401A;
}
.community-back:hover {
  transform: translateX(-4px);
  color: #DF5731;
}
.community-back:hover i {
  color: #DF5731;
}

.community-hero__title {
  font-family: var(--_font-accent);
  font-weight: var(--fw-black);
  font-size: 3.6rem;
  letter-spacing: -0.02rem;
  color: var(--t-bright);
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .community-hero__title {
    font-size: 4.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-hero__title {
    font-size: 5.6rem;
  }
}

.community-hero__branding {
  display: flex;
  flex-direction: column;
  line-height: 0.85;
  margin: 1.5rem 0 2rem;
  gap: 0;
}
@media only screen and (min-width: 768px) {
  .community-hero__branding {
    margin: 2rem 0 2.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-hero__branding {
    margin: 2.5rem 0 3rem;
  }
}

.kreate-logo {
  width: 225px;
  height: auto;
  display: block;
}
@media only screen and (min-width: 768px) {
  .kreate-logo {
    width: 325px;
  }
}
@media only screen and (min-width: 1200px) {
  .kreate-logo {
    width: 400px;
  }
}

.circle-text {
  font-family: var(--_font-heading);
  font-weight: 600;
  font-size: 6.5rem;
  color: #B9401A;
  margin-left: 0;
  margin-top: -0.5rem;
}
@media only screen and (min-width: 768px) {
  .circle-text {
    font-size: 9rem;
    margin-top: -0.8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .circle-text {
    font-size: 11rem;
    margin-top: -1rem;
  }
}

.community-hero__tagline {
  font-family: var(--_font-accent);
  font-weight: var(--fw-bold);
  font-size: 1.6rem;
  color: var(--t-bright);
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .community-hero__tagline {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-hero__tagline {
    font-size: 2.4rem;
  }
}

.community-hero__description {
  font-family: var(--_font-accent);
  font-weight: var(--fw-regular);
  font-size: 1.3rem;
  color: var(--t-medium);
  line-height: 1.6;
  margin: 0;
  max-width: 480px;
}
@media only screen and (min-width: 768px) {
  .community-hero__description {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-hero__description {
    font-size: 1.7rem;
  }
}

.community-hero__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1rem;
}

.btn-community-primary {
  background-color: #DF5731 !important;
  border-color: #DF5731 !important;
  color: #fff !important;
  padding: 1rem 2rem !important;
  border-radius: var(--_radius-pt-m) !important;
  font-weight: var(--fw-bold) !important;
}
.btn-community-primary:hover {
  background-color: #B9401A !important;
  border-color: #B9401A !important;
}

.btn-community-outline {
  border-color: #B9401A !important;
  color: #B9401A !important;
  padding: 1rem 2rem !important;
  border-radius: var(--_radius-pt-m) !important;
}
.btn-community-outline:hover {
  background-color: #B9401A !important;
  color: #fff !important;
}

.community-hero__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 1rem;
}

.badge-item {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 1.1rem;
  color: var(--t-medium);
  font-weight: var(--fw-medium);
}
@media only screen and (min-width: 768px) {
  .badge-item {
    font-size: 1.25rem;
  }
}
@media only screen and (min-width: 1200px) {
  .badge-item {
    font-size: 1.4rem;
  }
}
.badge-item i {
  color: #1abc9c;
  font-size: 1.3rem;
}
@media only screen and (min-width: 768px) {
  .badge-item i {
    font-size: 1.45rem;
  }
}
@media only screen and (min-width: 1200px) {
  .badge-item i {
    font-size: 1.6rem;
  }
}

.community-hero__grid-col {
  position: static;
  padding: 0;
}
@media only screen and (min-width: 1200px) {
  .community-hero__grid-col {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 55%;
    padding: 0;
  }
}

.community-faces-wrap {
  position: relative;
  width: 100%;
  height: 400px;
  overflow: hidden;
  border-radius: var(--_radius-xl);
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .community-faces-wrap {
    height: 500px;
  }
}
@media only screen and (min-width: 1200px) {
  .community-faces-wrap {
    height: 100%;
    border-radius: 0;
    clip-path: ellipse(120% 100% at 100% 50%);
  }
}

.community-faces-track {
  position: absolute;
  inset: 0;
  display: flex;
  height: 100%;
  width: auto;
  will-change: transform;
  animation: communityFacesScroll 80s linear infinite;
  gap: 0;
  padding: 2rem 0 2rem 0.8rem;
}

@keyframes communityFacesScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.community-faces-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(6, 1fr);
  gap: 1rem;
  margin-right: 1rem;
  padding: 0;
  flex: 0 0 auto;
  width: auto;
  height: 100%;
}
.community-faces-grid li {
  list-style: none;
}
@media only screen and (min-width: 768px) {
  .community-faces-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(6, 1fr);
    gap: 1.2rem;
    margin-right: 1rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-faces-grid {
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: 1rem;
    margin-right: 1rem;
  }
}

.community-face-cell {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 120px;
  min-height: 120px;
  border-radius: var(--_radius-l);
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
}
@media only screen and (min-width: 768px) {
  .community-face-cell {
    min-width: 150px;
    min-height: 150px;
    border-radius: var(--_radius-xl);
  }
}
@media only screen and (min-width: 1200px) {
  .community-face-cell {
    min-width: 180px;
    min-height: 180px;
  }
}
.community-face-cell img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform-origin: center center;
  animation: communityFacePulse 8s ease-in-out infinite;
}

@keyframes communityFacePulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
.community-face-cell--blue {
  background-color: #4a90d9;
}

.community-face-cell--purple {
  background-color: #9b59b6;
}

.community-face-cell--gold {
  background-color: #f2b85a;
}

.community-face-cell--teal {
  background-color: #1abc9c;
}

.community-face-cell--pink {
  background-color: #e91e63;
}

.community-face-cell--coral {
  background-color: #df5731;
}

.community-face-cell--orange {
  background-color: #DF5731;
}

.community-face-cell--salmon {
  background-color: #ff7675;
}

.community-face-cell--peach {
  background-color: #fab1a0;
}

.community-face-cell--yellow {
  background-color: #fdcb6e;
}

.community-face-cell--brown {
  background-color: #8b4513;
}

.community-face-cell--terracotta {
  background-color: #B9401A;
}

.community-face-cell--text {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.8rem;
  text-align: center;
}

.community-face-text {
  color: #fff;
  font-size: 1.2rem;
  font-weight: var(--fw-medium);
  line-height: 1.3;
}
@media only screen and (min-width: 768px) {
  .community-face-text {
    font-size: 1.3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-face-text {
    font-size: 1.4rem;
  }
}
.community-face-text strong {
  font-family: var(--_font-heading);
  font-size: 2.2rem;
  font-weight: 700;
  display: block;
}
@media only screen and (min-width: 768px) {
  .community-face-text strong {
    font-size: 2.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-face-text strong {
    font-size: 2.8rem;
  }
}

.community-faces-curve {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .community-faces-curve {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100px;
    background: linear-gradient(90deg, #FAF3ED 0%, transparent 100%);
    pointer-events: none;
    z-index: 1;
  }
}

.community-face-cell:nth-child(3n) img {
  animation-delay: 0.6s;
}

.community-face-cell:nth-child(5n) img {
  animation-delay: 1.2s;
}

.community-bento-section {
  padding-top: 4rem;
  padding-bottom: 6rem;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .community-bento-section {
    padding-top: 6rem;
    padding-bottom: 8rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-bento-section {
    padding-top: 8rem;
    padding-bottom: 10rem;
  }
}

.community-bento-wrapper {
  height: 800px;
}
@media only screen and (min-width: 768px) {
  .community-bento-wrapper {
    height: 900px;
  }
}
@media only screen and (min-width: 1200px) {
  .community-bento-wrapper {
    height: 760px;
  }
}

.bento-stories-column {
  flex: 0 0 auto;
  width: 280px;
  height: 100%;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .bento-stories-column {
    width: 360px;
  }
}
@media only screen and (min-width: 1200px) {
  .bento-stories-column {
    width: 400px;
  }
}

.bento-stories-track {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  animation: bentoVerticalScroll 25s linear infinite;
  will-change: transform;
}

@keyframes bentoVerticalScroll {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-50%);
  }
}
.bento-horizontal-scroll {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.bento-horizontal-track {
  display: flex;
  gap: 2rem;
  height: 100%;
  animation: bentoHorizontalScroll 40s linear infinite;
  will-change: transform;
}
@media only screen and (min-width: 768px) {
  .bento-horizontal-track {
    gap: 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .bento-horizontal-track {
    gap: 3rem;
  }
}

@keyframes bentoHorizontalScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.bento-column {
  flex: 0 0 auto;
  height: 100%;
}

.bento-column--two-row {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  width: 260px;
}
@media only screen and (min-width: 768px) {
  .bento-column--two-row {
    width: 320px;
    gap: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .bento-column--two-row {
    width: 360px;
    gap: 2rem;
  }
}

.bento-column--single {
  width: 320px;
}
@media only screen and (min-width: 768px) {
  .bento-column--single {
    width: 380px;
  }
}
@media only screen and (min-width: 1200px) {
  .bento-column--single {
    width: 400px;
  }
}

.bento-row {
  flex: 1;
  display: flex;
}
.bento-row > * {
  width: 100%;
  height: 100%;
}

.story-card {
  background: #fff;
  border-radius: var(--_radius-l);
  padding: 2rem;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  flex-shrink: 0;
}

.story-card__header {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.story-card__avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  font-weight: var(--fw-bold);
  color: #fff;
  flex-shrink: 0;
}

.story-card__avatar--orange {
  background-color: #DF5731;
}

.story-card__avatar--teal {
  background-color: #1abc9c;
}

.story-card__avatar--purple {
  background-color: #9b59b6;
}

.story-card__username {
  font-size: 1.4rem;
  color: var(--t-medium);
  font-weight: var(--fw-medium);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.story-card__quote {
  font-size: 1.7rem;
  font-weight: var(--fw-medium);
  color: var(--t-bright);
  line-height: 1.4;
  font-style: normal;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.story-card__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 0.8rem;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  margin-top: auto;
}

.story-card__comment {
  font-size: 1.3rem;
  color: var(--t-muted);
  text-decoration: none;
}
.story-card__comment:hover {
  color: #DF5731;
}

.story-card__heart {
  background: transparent;
  border: none;
  cursor: pointer;
  color: #B9401A;
  font-size: 1.8rem;
  transition: transform 0.2s ease;
}
.story-card__heart:hover {
  transform: scale(1.2);
}

.stat-card {
  border-radius: var(--_radius-l);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.6rem;
  height: 100%;
}

.stat-card--terracotta {
  background-color: #B9401A;
  color: #fff;
}

.stat-card--cream {
  background: linear-gradient(135deg, #F2B85A 0%, #fff5eb 100%);
  color: #2B2B2B;
}

.stat-card__number {
  font-family: var(--_font-accent);
  font-weight: var(--fw-black);
  font-size: 4rem;
  line-height: 1;
}
@media only screen and (min-width: 768px) {
  .stat-card__number {
    font-size: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .stat-card__number {
    font-size: 5.6rem;
  }
}

.stat-card__number--infinity {
  font-size: 5rem;
}
@media only screen and (min-width: 768px) {
  .stat-card__number--infinity {
    font-size: 6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .stat-card__number--infinity {
    font-size: 7rem;
  }
}

.stat-card__label {
  font-size: 1.5rem;
  font-weight: var(--fw-medium);
  line-height: 1.2;
  opacity: 0.9;
}

.desc-card {
  background: #fff;
  border-radius: var(--_radius-l);
  padding: 1.6rem 2rem;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  height: 100%;
}
.desc-card p {
  margin: 0;
  font-size: 1.5rem;
  color: var(--t-bright);
  font-weight: var(--fw-medium);
  line-height: 1.3;
}

.desc-card--dark {
  background: #2B2B2B;
}
.desc-card--dark p {
  color: #fff;
}

.condition-card {
  border-radius: var(--_radius-l);
  overflow: hidden;
  position: relative;
  height: 100%;
}
.condition-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.condition-card--tall {
  height: 100%;
  aspect-ratio: auto;
}

.condition-card__label {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 1.6rem;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 100%);
  color: #fff;
  font-size: 1.4rem;
  font-weight: var(--fw-bold);
  line-height: 1.2;
}

.community-mission-section {
  background-color: #2B2B2B;
  padding: 4rem 0;
}
@media only screen and (min-width: 768px) {
  .community-mission-section {
    padding: 5rem 0;
  }
}
@media only screen and (min-width: 1200px) {
  .community-mission-section {
    padding: 6rem 0;
  }
}

.community-mission {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.community-mission__text {
  font-family: var(--_font-accent);
  font-size: 1.4rem;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.8;
  font-weight: var(--fw-regular);
}
@media only screen and (min-width: 768px) {
  .community-mission__text {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .community-mission__text {
    font-size: 1.8rem;
  }
}

.highlight-kreate {
  font-family: var(--_font-heading);
  font-size: 1.8rem;
  color: #DF5731;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .highlight-kreate {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .highlight-kreate {
    font-size: 2.2rem;
  }
}

.highlight-link {
  color: #F2B85A;
  font-weight: var(--fw-medium);
}

.chroma-artists-grid {
  position: relative;
  --chroma-x: 50%;
  --chroma-y: 50%;
  --chroma-radius: 280px;
}

.artists-hero-section {
  padding-top: 8rem !important;
}
@media only screen and (min-width: 768px) {
  .artists-hero-section {
    padding-top: 10rem !important;
  }
}

.page-artists .artists-page {
  padding-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .page-artists .artists-page {
    padding-bottom: 6rem;
  }
}

.chroma-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 10;
  backdrop-filter: saturate(0.1);
  -webkit-backdrop-filter: saturate(0.1);
  background: rgba(255, 255, 255, 0.001);
  mask-image: radial-gradient(circle var(--chroma-radius) at var(--chroma-x) var(--chroma-y), transparent 0%, transparent 15%, rgba(0, 0, 0, 0.2) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0.6) 60%, rgba(0, 0, 0, 0.8) 75%, white 100%);
  -webkit-mask-image: radial-gradient(circle var(--chroma-radius) at var(--chroma-x) var(--chroma-y), transparent 0%, transparent 15%, rgba(0, 0, 0, 0.2) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0.6) 60%, rgba(0, 0, 0, 0.8) 75%, white 100%);
}

.chroma-fade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 11;
  backdrop-filter: saturate(0.1);
  -webkit-backdrop-filter: saturate(0.1);
  background: rgba(255, 255, 255, 0.001);
  mask-image: radial-gradient(circle var(--chroma-radius) at var(--chroma-x) var(--chroma-y), white 0%, white 15%, rgba(255, 255, 255, 0.8) 30%, rgba(255, 255, 255, 0.6) 45%, rgba(255, 255, 255, 0.4) 55%, rgba(255, 255, 255, 0.2) 70%, transparent 100%);
  -webkit-mask-image: radial-gradient(circle var(--chroma-radius) at var(--chroma-x) var(--chroma-y), white 0%, white 15%, rgba(255, 255, 255, 0.8) 30%, rgba(255, 255, 255, 0.6) 45%, rgba(255, 255, 255, 0.4) 55%, rgba(255, 255, 255, 0.2) 70%, transparent 100%);
  opacity: 1;
  transition: opacity 0.25s ease;
}

.chroma-artist-card {
  --card-mouse-x: 50%;
  --card-mouse-y: 50%;
  --card-spotlight-color: rgba(0, 0, 0, 0.08);
  position: relative;
}
.chroma-artist-card .mxd-team-cards__media::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--_radius-m);
  background: radial-gradient(circle 180px at var(--card-mouse-x) var(--card-mouse-y), var(--card-spotlight-color), transparent 60%);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 5;
}
.no-touch .chroma-artist-card:hover .mxd-team-cards__media::after {
  opacity: 1;
}

.chroma-artist-card[data-accent=founder] {
  --card-spotlight-color: rgba(79, 70, 229, 0.12);
}

.chroma-artist-card[data-accent=illustrator] {
  --card-spotlight-color: rgba(16, 185, 129, 0.12);
}

.chroma-artist-card[data-accent=animator] {
  --card-spotlight-color: rgba(245, 158, 11, 0.12);
}

.chroma-artist-card[data-accent=storyteller] {
  --card-spotlight-color: rgba(139, 92, 246, 0.12);
}

@media only screen and (min-width: 768px) {
  .chroma-artists-grid {
    --chroma-radius: 320px;
  }
}
@media only screen and (min-width: 1200px) {
  .chroma-artists-grid {
    --chroma-radius: 380px;
  }
}
.touch .chroma-overlay,
.touch .chroma-fade {
  display: none;
}

.page-contact {
  background-color: #FFFFFF;
}

.page-contact #mxd-page-content.inner-page-content {
  padding-top: 4.6rem;
}
@media only screen and (min-width: 768px) {
  .page-contact #mxd-page-content.inner-page-content {
    padding-top: 13.6rem;
  }
}

.contact-split-container {
  padding-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .contact-split-container {
    padding-bottom: 6rem;
  }
}

.contact-page .contact-split-container {
  padding-top: 0;
}
@media only screen and (min-width: 768px) {
  .contact-page .contact-split-container {
    padding-top: 0;
  }
}

.contact-left-col {
  margin-bottom: 4rem;
}
@media only screen and (min-width: 1200px) {
  .contact-left-col {
    margin-bottom: 0;
    padding-right: 0;
    position: sticky;
    top: 14rem;
  }
}

@media only screen and (min-width: 1200px) {
  .contact-right-col {
    padding-left: 0;
    padding-top: 0;
    margin-top: 0;
  }
}

.contact-hero__content {
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1200px) {
  .contact-hero__content .mxd-block__inner-headline {
    margin-bottom: 4rem;
  }
}
.contact-description {
  font: normal var(--fw-regular) 1.8rem/1.5 var(--_font-accent);
  color: var(--t-bright);
  padding: 0;
  margin-bottom: 4rem;
  max-width: 540px;
}
@media only screen and (min-width: 768px) {
  .contact-description {
    font-size: 2rem;
  }
}

.contact-info-list {
  margin-top: 4rem;
}
.contact-info-list .info-item {
  margin-bottom: 3rem;
}
.contact-info-list .info-item h6 {
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--t-muted);
  margin-bottom: 1rem;
}
.contact-info-list .info-item p, .contact-info-list .info-item a {
  font-size: 1.8rem;
  color: var(--t-bright);
  line-height: 1.4;
}
.contact-info-list .info-item a:hover {
  color: var(--brand-orange);
}

.contact-socials-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 4rem;
}
.contact-socials-list a {
  font-size: 1.6rem;
  color: var(--t-bright);
  font-weight: 500;
}
.contact-socials-list a:hover {
  color: var(--brand-orange);
}

.contact-form {
  background-color: var(--base);
  border-radius: 2rem;
}
.contact-form input, .contact-form textarea {
  height: 5rem;
  background-color: transparent;
  border: 1px solid var(--st-muted-bright);
  border-radius: 1.2rem;
  padding: 1rem 1.8rem;
  font: normal var(--fw-regular) 1.6rem/1.5 var(--_font-accent);
  color: var(--t-bright);
  transition: all 0.3s ease;
  outline: none;
  width: 100%;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .contact-form input, .contact-form textarea {
    height: 5.6rem;
    font-size: 1.8rem;
  }
}
.contact-form input::placeholder, .contact-form textarea::placeholder {
  color: var(--t-muted);
  opacity: 0.7;
}
.contact-form input:focus, .contact-form textarea:focus {
  background-color: var(--base);
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1);
}
.contact-form textarea {
  min-height: 18rem;
  border-radius: 1.2rem;
  height: auto;
}
.contact-form .form-group-row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1rem;
  margin-right: -1rem;
}
.contact-form .form-group-row > div {
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
  .contact-form .form-group-row > div {
    width: 50%;
  }
}
.contact-form .form-group-full {
  margin-bottom: 2rem;
  width: 100%;
}
.contact-form .btn {
  margin-top: 1rem;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .contact-form .btn {
    width: auto;
  }
}

.page-insights {
  background: var(--base);
}

.insights-hero__title {
  font-size: clamp(4rem, 6vw, 7.2rem);
  font-weight: 700;
  margin-bottom: 2.4rem;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--t-bright);
}
.insights-hero__desc {
  font-size: 1.8rem;
  line-height: 1.6;
  color: var(--t-medium);
  max-width: 80rem;
  margin-bottom: 4rem;
}

.insights-featured {
  display: block;
  position: relative;
  border-radius: var(--_radius-m);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 0.3s ease;
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.1);
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
.insights-featured:hover {
  transform: translateY(-0.4rem);
}
.insights-featured:hover .insights-featured__image img {
  transform: scale(1.03);
}
.insights-featured__image {
  position: relative;
  aspect-ratio: 21/9;
  overflow: hidden;
}
.insights-featured__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.insights-featured__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 60%);
}
.insights-featured__content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 4rem 5rem;
  color: var(--nl-white);
}
@media only screen and (min-width: 576px) {
  .insights-featured__content {
    padding: 3rem;
  }
}
.insights-featured__title {
  font-size: clamp(2.4rem, 4vw, 4.2rem);
  font-weight: 700;
  margin-bottom: 1.2rem;
  line-height: 1.2;
  color: var(--nl-white);
}
.insights-featured__excerpt {
  font-size: 1.8rem;
  line-height: 1.6;
  opacity: 0.9;
  max-width: 70rem;
  color: rgba(255, 255, 255, 0.9);
}

.insights-carousel {
  position: relative;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.insights-card {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: transform 0.3s ease;
}
.insights-card:hover {
  transform: translateY(-0.4rem);
}
.insights-card:hover .insights-card__image img {
  transform: scale(1.05);
}
.insights-card__image {
  position: relative;
  aspect-ratio: 4/3;
  border-radius: var(--_radius-m);
  overflow: hidden;
  margin-bottom: 2rem;
}
.insights-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.insights-card__nav {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  right: 2rem;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
}
.insights-card__nav .insights-nav-btn {
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: var(--base);
  border: 1px solid var(--st-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  pointer-events: auto;
  transition: all 0.2s ease;
  font-size: 1.6rem;
}
.insights-card__nav .insights-nav-btn:hover {
  background: var(--base-opp);
  color: var(--base);
  border-color: var(--base-opp);
}
.insights-card__nav .insights-nav-btn.prev {
  margin-right: auto;
}
.insights-card__nav .insights-nav-btn.next {
  margin-left: auto;
}
.insights-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
  font-size: 1.4rem;
}
.insights-card__category {
  color: var(--brand-orange);
  font-weight: 600;
}
.insights-card__divider {
  color: var(--st-muted);
  font-size: 1rem;
}
.insights-card__date {
  color: var(--t-muted);
}
.insights-card__title {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--t-bright);
}

.insights-resources {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.insights-resources__title {
  font-size: clamp(2.4rem, 4vw, 3.6rem);
  font-weight: 700;
  margin-bottom: 3rem;
  color: var(--t-bright);
}
.insights-resources__list {
  display: flex;
  flex-direction: column;
}

.insights-resource {
  display: block;
  text-decoration: none;
  color: inherit;
  padding: 3rem 0;
  position: relative;
  transition: background 0.2s ease;
}
.insights-resource:hover {
  background: var(--base-tint);
}
.insights-resource:hover .insights-resource__title {
  color: var(--brand-orange);
}
.insights-resource__border {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--st-muted);
  opacity: 0.3;
}
.insights-resource:last-child::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--st-muted);
  opacity: 0.3;
}
.insights-resource__inner {
  padding: 0 2rem;
}
@media only screen and (min-width: 576px) {
  .insights-resource__inner {
    padding: 0;
  }
}
.insights-resource__title {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.5;
  color: var(--t-bright);
  transition: color 0.2s ease;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .insights-resource__title {
    margin-bottom: 0;
  }
}
.insights-resource__category {
  font-size: 1.4rem;
  color: var(--t-muted-extra);
  font-weight: 500;
}
.insights-resource__date {
  font-size: 1.4rem;
  color: var(--t-muted);
  text-align: right;
}

.page-insights-article {
  background: var(--base);
}

.insights-article {
  max-width: 100%;
  margin: 0 auto;
}
.insights-article__header {
  text-align: center;
  margin-bottom: 6rem;
  max-width: 86rem;
  margin-left: auto;
  margin-right: auto;
}
.insights-article__title {
  font-size: clamp(3.2rem, 5vw, 5.2rem);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 2.4rem;
  color: var(--t-bright);
}
.insights-article__date {
  font-size: 1.6rem;
  color: var(--t-muted);
  margin-bottom: 2.4rem;
  font-weight: 500;
}
.insights-article__tags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.insights-article__tag {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.8rem 1.6rem;
  background: var(--base-tint);
  border-radius: 4rem;
  font-size: 1.3rem;
  color: var(--t-medium);
  font-weight: 600;
}
.insights-article__tag::before {
  content: "✦";
  font-size: 1rem;
  color: var(--brand-orange);
}
.insights-article__image {
  width: calc(100% - 3rem);
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  border-radius: var(--_radius-m);
  overflow: hidden;
  margin-bottom: 6rem;
  box-shadow: 0 2rem 4rem rgba(0, 0, 0, 0.05);
}
.insights-article__image img {
  width: 100%;
  height: auto;
  display: block;
}
.insights-article__intro {
  font-size: 2.2rem;
  line-height: 1.6;
  color: var(--t-medium);
  margin-bottom: 5rem;
  font-weight: 500;
  max-width: 86rem;
  margin-left: auto;
  margin-right: auto;
}

.insights-toc {
  background: var(--base-tint);
  border-radius: var(--_radius-m);
  padding: 4rem;
  margin-bottom: 6rem;
  max-width: 86rem;
  margin-left: auto;
  margin-right: auto;
}
.insights-toc__title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 2rem;
  color: var(--t-bright);
}
.insights-toc__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.insights-toc__list li {
  padding: 0.8rem 0;
  padding-left: 2rem;
  position: relative;
}
.insights-toc__list li::before {
  content: "●";
  position: absolute;
  left: 0;
  color: var(--brand-orange);
  font-size: 0.8rem;
}
.insights-toc__list li a {
  color: var(--t-medium);
  text-decoration: none;
  transition: color 0.2s ease;
  font-size: 1.6rem;
  font-weight: 500;
}
.insights-toc__list li a:hover {
  color: var(--brand-orange);
}

.insights-content {
  max-width: 86rem;
  margin: 0 auto;
}
.insights-content h2, .insights-content h3, .insights-content h4 {
  margin-top: 5rem;
  margin-bottom: 2rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--t-bright);
}
.insights-content h2 {
  font-size: 3.2rem;
}
.insights-content h3 {
  font-size: 2.6rem;
  margin-top: 4rem;
}
.insights-content h4 {
  font-size: 2rem;
}
.insights-content p {
  margin-bottom: 2rem;
  line-height: 1.8;
  color: var(--t-medium);
  font-size: 1.8rem;
}
.insights-content ul, .insights-content ol {
  margin-bottom: 3rem;
  padding-left: 2rem;
}
.insights-content ul li, .insights-content ol li {
  margin-bottom: 1rem;
  line-height: 1.7;
  font-size: 1.8rem;
  color: var(--t-medium);
  position: relative;
  padding-left: 1rem;
}
.insights-content ul li::marker, .insights-content ol li::marker {
  color: var(--brand-orange);
}

.insights-nav {
  display: flex;
  background: var(--t-bright);
  border-radius: var(--_radius-m);
  overflow: hidden;
  margin: 6rem 0 0 0;
}
.insights-nav__item {
  flex: 1;
  padding: 3rem 4rem;
  text-decoration: none;
  color: var(--base);
  transition: background 0.2s ease;
}
.insights-nav__item:hover {
  background: rgba(255, 255, 255, 0.9);
  color: var(--t-bright);
}
.insights-nav__item.prev {
  border-right: 1px solid rgba(150, 150, 150, 0.2);
}
.insights-nav__item.next {
  text-align: right;
}
.insights-nav__label {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 1.4rem;
  margin-bottom: 1rem;
  opacity: 0.7;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.next .insights-nav__label {
  justify-content: flex-end;
}
.insights-nav__title {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.4;
}

.insights-comments {
  margin-top: 4rem;
  max-width: 86rem;
  margin-left: auto;
  margin-right: auto;
}
.insights-comments__title {
  font-size: 2.8rem;
  font-weight: 700;
  margin-bottom: 4rem;
  color: var(--t-bright);
}
.insights-comments__list {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-bottom: 6rem;
}

.insights-comment {
  display: flex;
  gap: 2rem;
}
.insights-comment__avatar {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--base-tint);
}
.insights-comment__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.insights-comment__content {
  flex: 1;
}
.insights-comment__date {
  font-size: 1.3rem;
  color: var(--t-muted);
  margin-bottom: 0.5rem;
  font-weight: 500;
}
.insights-comment__name {
  margin-bottom: 1rem;
  font-size: 2rem;
  color: var(--t-bright);
}
.insights-comment__text {
  font-size: 1.6rem;
  line-height: 1.6;
  color: var(--t-medium);
  margin-bottom: 1rem;
}
.insights-comment__reply a {
  color: var(--brand-orange);
  font-weight: 600;
  text-decoration: none;
  font-size: 1.4rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.insights-comment__reply a:hover {
  text-decoration: underline;
}

.insights-comment-form__title {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 1rem;
  color: var(--t-bright);
}
.insights-comment-form__desc {
  font-size: 1.6rem;
  color: var(--t-muted);
  margin-bottom: 3rem;
}
.insights-comment-form form input, .insights-comment-form form textarea {
  background-color: var(--base-tint);
  border: 1px solid transparent;
  border-radius: 1.2rem;
  padding: 1.6rem 2rem;
  font-size: 1.6rem;
  color: var(--t-bright);
  transition: all 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.03) inset;
}
.insights-comment-form form input::placeholder, .insights-comment-form form textarea::placeholder {
  color: var(--base-opp-50);
}
.insights-comment-form form input:focus, .insights-comment-form form textarea:focus {
  background-color: var(--base);
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1), 0 2px 10px rgba(0, 0, 0, 0.05);
}
.insights-comment-form form textarea {
  min-height: 18rem;
  border-radius: 1.6rem;
}

.mxd-footer .notify-form input {
  background-color: var(--base) !important;
  border: 1px solid transparent !important;
  border-radius: 1.2rem !important;
  padding: 1.6rem 2rem !important;
  font-size: 1.6rem !important;
  color: var(--t-bright) !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.03) inset !important;
  height: 5.4rem !important;
}
.mxd-footer .notify-form input::placeholder {
  color: var(--base-opp-50) !important;
}
.mxd-footer .notify-form input:focus {
  background-color: var(--base) !important;
  border-color: var(--brand-orange) !important;
  box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.1), 0 2px 10px rgba(0, 0, 0, 0.05) !important;
}
.mxd-footer .notify-form .btn-absolute-right {
  top: 50% !important;
  transform: translateY(-50%) !important;
  right: 0.6rem !important;
  width: 4.2rem !important;
  height: 4.2rem !important;
  border-radius: 0.8rem !important;
  background-color: var(--base-tint) !important;
}
.mxd-footer .notify-form .btn-absolute-right i {
  font-size: 1.8rem !important;
}

.insights-related {
  margin-top: 8rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.insights-related__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4rem;
}
.insights-related__title {
  font-size: 2.8rem;
  font-weight: 700;
  color: var(--t-bright);
}
.insights-related__nav {
  display: flex;
  gap: 1rem;
}
.insights-related__nav .insights-nav-btn {
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  background: transparent;
  border: 1px solid var(--st-medium);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  color: var(--t-bright);
}
.insights-related__nav .insights-nav-btn:hover {
  background: var(--t-bright);
  color: var(--base);
  border-color: var(--t-bright);
}
.insights-related__grid {
  display: block;
  position: relative;
  width: 100%;
  min-width: 0;
}
.insights-related__grid .swiper-slide {
  filter: blur(0);
  opacity: 1;
}

.insights-related-card {
  text-decoration: none;
  color: inherit;
  display: block;
}
.insights-related-card:hover .insights-related-card__image img {
  transform: scale(1.05);
}
.insights-related-card:hover .insights-related-card__title {
  color: var(--brand-orange);
}
.insights-related-card__image {
  aspect-ratio: 1;
  border-radius: var(--_radius-m);
  overflow: hidden;
  margin-bottom: 2rem;
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.05);
}
.insights-related-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.insights-related-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-bottom: 1.2rem;
}
.insights-related-card__tags span {
  padding: 0.4rem 1.2rem;
  background: var(--base-tint);
  border-radius: 2rem;
  font-size: 1.2rem;
  color: var(--t-medium);
  font-weight: 500;
}
.insights-related-card__title {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.3;
  color: var(--t-bright);
  transition: color 0.2s ease;
}

@media only screen and (min-width: 1200px) {
  .insights-resources .mxd-awards-list .mxd-awards-list__title {
    margin-left: -1.5rem;
  }
}
.insights-resources .mxd-awards-list .mxd-awards-list__title p {
  font-size: 2rem;
}
@media only screen and (min-width: 768px) {
  .insights-resources .mxd-awards-list .mxd-awards-list__title p {
    font-size: 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .insights-resources .mxd-awards-list .mxd-awards-list__title p {
    transform: translateX(-3.4rem);
  }
}
.insights-resources .mxd-awards-list .mxd-awards-list__icon {
  font-size: 2rem;
}
@media only screen and (min-width: 768px) {
  .insights-resources .mxd-awards-list .mxd-awards-list__icon {
    font-size: 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .insights-resources .mxd-awards-list .mxd-awards-list__icon {
    transform: translateX(-3.4rem);
  }
}
@media only screen and (min-width: 1200px) {
  .insights-resources .mxd-awards-list .mxd-awards-list__border {
    left: 0;
    width: 100%;
  }
}
@media only screen and (min-width: 1200px) {
  .insights-resources .mxd-awards-list .mxd-awards-list__item:hover .mxd-awards-list__title p,
  .insights-resources .mxd-awards-list .mxd-awards-list__item:hover .mxd-awards-list__icon {
    transform: translateX(0);
  }
}

/* ------------------------------------------------*/
/* HTMX Progressive Enhancement Styles */
/* ------------------------------------------------*/
.htmx-indicator {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.htmx-request .htmx-indicator,
.htmx-indicator.htmx-request {
  opacity: 1;
  visibility: visible;
}

.htmx-request .htmx-content {
  opacity: 0.5;
  pointer-events: none;
}

.library-loading-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.library-loading-indicator .loading-spinner {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--color-text-muted);
}
.library-loading-indicator .loading-spinner i {
  font-size: 1.25rem;
}
.library-loading-indicator .loading-spinner span {
  font-size: 0.875rem;
  font-weight: 500;
}

.input-group .htmx-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.75rem;
}
.input-group .htmx-indicator i {
  font-size: 1rem;
  color: var(--color-primary);
  animation: spin 1s linear infinite;
}

.btn.htmx-loading,
button.htmx-loading {
  position: relative;
  color: transparent !important;
  pointer-events: none;
}
.btn.htmx-loading::after,
button.htmx-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1rem;
  height: 1rem;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spin 0.75s linear infinite;
}

.library-tab.htmx-loading {
  opacity: 0.7;
  cursor: wait;
}

.ib-category.htmx-loading {
  opacity: 0.6;
}
.ib-category.htmx-loading img {
  filter: grayscale(50%);
}

.htmx-error {
  padding: 2rem;
  text-align: center;
  color: var(--color-error);
  background: var(--color-error-bg, rgba(220, 38, 38, 0.05));
  border-radius: 0.5rem;
  margin: 1rem 0;
}
.htmx-error::before {
  content: "⚠️ ";
  font-size: 1.5rem;
}

.library-empty-state {
  text-align: center;
  padding: 4rem 2rem;
}
.library-empty-state .library-empty-state__icon {
  font-size: 4rem;
  color: var(--color-text-muted);
  margin-bottom: 1.5rem;
  opacity: 0.5;
}
.library-empty-state .library-empty-state__title {
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: var(--color-text);
}
.library-empty-state .library-empty-state__text {
  color: var(--color-text-muted);
  margin-bottom: 1.5rem;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.library-gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.5rem;
  padding: 1.5rem 0;
}

.library-gallery-item {
  border-radius: 0.75rem;
  overflow: hidden;
  background: var(--color-surface);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.library-gallery-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}
.library-gallery-item .library-gallery-item__link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.library-gallery-item .library-gallery-item__image-wrapper {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--color-background-muted);
}
.library-gallery-item .library-gallery-item__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.library-gallery-item:hover .library-gallery-item__image {
  transform: scale(1.05);
}
.library-gallery-item .library-gallery-item__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 60%);
  opacity: 0;
  transition: opacity 0.3s ease;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding: 1rem;
}
.library-gallery-item:hover .library-gallery-item__overlay {
  opacity: 1;
}
.library-gallery-item .library-gallery-item__view {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--color-primary);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(10px);
  transition: transform 0.3s ease;
}
.library-gallery-item .library-gallery-item__view i {
  font-size: 1.25rem;
}
.library-gallery-item:hover .library-gallery-item__view {
  transform: translateY(0);
}
.library-gallery-item .library-gallery-item__info {
  padding: 1rem;
}
.library-gallery-item .library-gallery-item__category {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-primary);
  margin-bottom: 0.5rem;
}
.library-gallery-item .library-gallery-item__title {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-text);
  margin-bottom: 0.25rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.library-gallery-item .library-gallery-item__condition {
  font-size: 0.875rem;
  color: var(--color-text-muted);
  margin: 0;
}

.library-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  padding: 2rem 0;
}
.library-pagination .library-pagination__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: 0.375rem;
  background: var(--color-surface);
  color: var(--color-text);
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.library-pagination .library-pagination__btn:hover:not(:disabled) {
  background: var(--color-primary);
  color: white;
  border-color: var(--color-primary);
}
.library-pagination .library-pagination__btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.library-pagination .library-pagination__btn i {
  font-size: 1rem;
}
.library-pagination .library-pagination__current {
  background: var(--color-primary);
  color: white;
  border-color: var(--color-primary);
  cursor: default;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .htmx-indicator,
  .library-gallery-item,
  .library-gallery-item__image,
  .library-gallery-item__overlay,
  .library-gallery-item__view {
    transition: none !important;
  }
  .btn.htmx-loading::after,
  .input-group .htmx-indicator i {
    animation: none !important;
  }
}
/* ------------------------------------------------*/
/* ------------------------------------------------*/
/* Animated Placeholder Component Start */
/* ------------------------------------------------*/
.placeholder {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #2E2019 0%, #915A42 50%, #F2B85A 100%);
  will-change: transform;
  transform: translateZ(0);
  width: 100%;
  min-height: 200px;
}
.placeholder--16-9 {
  aspect-ratio: 16/9;
}
.placeholder--4-3 {
  aspect-ratio: 4/3;
}
.placeholder--1-1 {
  aspect-ratio: 1/1;
}
.placeholder--avatar {
  aspect-ratio: 1/1;
  border-radius: 50%;
}
.placeholder--video {
  aspect-ratio: 16/9;
}
.placeholder--rounded-sm {
  border-radius: 4px;
}
.placeholder--rounded-md {
  border-radius: 8px;
}
.placeholder--rounded-lg {
  border-radius: 16px;
}
.placeholder--rounded-xl {
  border-radius: 24px;
}
.placeholder--circle {
  border-radius: 50%;
}
.placeholder--xs {
  width: 40px;
  height: 40px;
  min-height: 40px;
}
.placeholder--sm {
  width: 80px;
  height: 80px;
  min-height: 80px;
}
.placeholder--md {
  width: 160px;
  height: 160px;
  min-height: 160px;
}
.placeholder--lg {
  width: 320px;
  height: 180px;
  min-height: 180px;
}
.placeholder--xl {
  width: 640px;
  height: 360px;
  min-height: 360px;
}
.placeholder--full {
  width: 100%;
  height: 100%;
  min-height: 100%;
}

.placeholder__gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, var(--ph-gradient-1, #2E2019) 0%, var(--ph-gradient-2, #915A42) 25%, var(--ph-gradient-3, #F2B85A) 50%, var(--ph-gradient-4, #DF5731) 75%, var(--ph-gradient-5, #2E2019) 100%);
  background-size: 400% 400%;
  animation: placeholderGradient 25s ease-in-out infinite;
  will-change: background-position;
  transform: translateZ(0);
}
.placeholder__gradient.is-paused {
  animation-play-state: paused;
}
.placeholder__gradient--brand {
  --ph-gradient-1: #2E2019;
  --ph-gradient-2: #915A42;
  --ph-gradient-3: #F2B85A;
  --ph-gradient-4: #DF5731;
  --ph-gradient-5: #EFC2A3;
}
.placeholder__gradient--warm {
  --ph-gradient-1: #DF5731;
  --ph-gradient-2: #F2B85A;
  --ph-gradient-3: #EFC2A3;
  --ph-gradient-4: #915A42;
  --ph-gradient-5: #DF5731;
}
.placeholder__gradient--earth {
  --ph-gradient-1: #915A42;
  --ph-gradient-2: #2E2019;
  --ph-gradient-3: #F2B85A;
  --ph-gradient-4: #EFC2A3;
  --ph-gradient-5: #915A42;
}
.placeholder__gradient--flame {
  --ph-gradient-1: #DF5731;
  --ph-gradient-2: #F2B85A;
  --ph-gradient-3: #FFF1E6;
  --ph-gradient-4: #EFC2A3;
  --ph-gradient-5: #DF5731;
}
.placeholder__gradient--desert {
  --ph-gradient-1: #EFC2A3;
  --ph-gradient-2: #F2B85A;
  --ph-gradient-3: #FFF1E6;
  --ph-gradient-4: #915A42;
  --ph-gradient-5: #EFC2A3;
}
.placeholder__gradient--linen {
  --ph-gradient-1: #FFF1E6;
  --ph-gradient-2: #EFC2A3;
  --ph-gradient-3: #F2B85A;
  --ph-gradient-4: #EFC2A3;
  --ph-gradient-5: #FFF1E6;
}

.placeholder__gradient--speed-slow {
  animation-duration: 30s;
}
.placeholder__gradient--speed-normal {
  animation-duration: 20s;
}
.placeholder__gradient--speed-fast {
  animation-duration: 12s;
}
.placeholder__gradient--speed-instant {
  animation-duration: 6s;
}
.placeholder__gradient--subtle {
  opacity: 0.6;
}
.placeholder__gradient--moderate {
  opacity: 0.8;
}
.placeholder__gradient--intense {
  opacity: 1;
}

.placeholder__gradient--speed-slow {
  animation-duration: 25s;
}
.placeholder__gradient--speed-normal {
  animation-duration: 15s;
}
.placeholder__gradient--speed-fast {
  animation-duration: 8s;
}
.placeholder__gradient--speed-instant {
  animation-duration: 3s;
}

.placeholder__particles {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.placeholder__particle {
  position: absolute;
  border-radius: 50%;
  background: rgba(242, 184, 90, 0.6);
  box-shadow: 0 0 15px rgba(242, 184, 90, 0.5), 0 0 30px rgba(223, 87, 49, 0.3);
  will-change: transform, opacity;
  transform: translateZ(0);
}
.placeholder__particle--xs {
  width: 6px;
  height: 6px;
}
.placeholder__particle--sm {
  width: 12px;
  height: 12px;
}
.placeholder__particle--md {
  width: 18px;
  height: 18px;
}
.placeholder__particle--lg {
  width: 28px;
  height: 28px;
}
.placeholder__particle--float {
  animation: placeholderFloat 6s ease-in-out infinite;
}
.placeholder__particle--pulse {
  animation: placeholderPulse 3s ease-in-out infinite;
}
.placeholder__particle--drift {
  animation: placeholderDrift 8s linear infinite;
}
.placeholder__particle.is-paused {
  animation-play-state: paused;
}

.placeholder__waves {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.placeholder__wave {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 200%;
  height: 100px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='rgba(255,255,255,0.05)' d='M0,192L48,197.3C96,203,192,213,288,229.3C384,245,480,267,576,250.7C672,235,768,181,864,181.3C960,181,1056,235,1152,234.7C1248,235,1344,181,1392,154.7L1440,128L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z'%3E%3C/path%3E%3C/svg%3E") repeat-x;
  background-size: 50% 100%;
  animation: placeholderWave 12s linear infinite;
  will-change: transform;
  transform: translateZ(0);
}
.placeholder__wave--2 {
  bottom: 10px;
  opacity: 0.7;
  animation-duration: 15s;
  animation-direction: reverse;
}
.placeholder__wave--3 {
  bottom: 20px;
  opacity: 0.5;
  animation-duration: 20s;
  animation-direction: reverse;
}

.placeholder__logo {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--ph-logo-size, 80%);
  max-width: 300px;
  aspect-ratio: 1/1;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.placeholder__logo--xs {
  --ph-logo-size: 50%;
  max-width: 80px;
}
.placeholder__logo--sm {
  --ph-logo-size: 60%;
  max-width: 100px;
}
.placeholder__logo--md {
  --ph-logo-size: 70%;
  max-width: 160px;
}
.placeholder__logo--lg {
  --ph-logo-size: 85%;
  max-width: 240px;
}
.placeholder__logo--xl {
  --ph-logo-size: 95%;
  max-width: 320px;
}
.placeholder__logo:hover {
  transform: scale(1.05);
}
.placeholder__logo img, .placeholder__logo svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
}

.placeholder.is-loading .placeholder__gradient {
  animation: placeholderPulse 1.5s ease-in-out infinite;
}
.placeholder.is-loading .placeholder__particle {
  animation-duration: 2s;
}
.placeholder.is-loading .placeholder__wave {
  animation-duration: 6s;
}

.placeholder__skeleton {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0) 100%);
  background-size: 200% 100%;
  animation: placeholderShimmer 1.5s ease-in-out infinite;
  transform: translateZ(0);
  will-change: background-position;
}

@keyframes placeholderGradient {
  0% {
    background-position: 0% 50%;
  }
  25% {
    background-position: 100% 25%;
  }
  50% {
    background-position: 100% 50%;
  }
  75% {
    background-position: 0% 75%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes placeholderFloat {
  0%, 100% {
    transform: translateY(0) translateZ(0);
  }
  50% {
    transform: translateY(-20px) translateZ(0);
  }
}
@keyframes placeholderPulse {
  0%, 100% {
    opacity: 0.15;
    transform: scale(1) translateZ(0);
  }
  50% {
    opacity: 0.3;
    transform: scale(1.1) translateZ(0);
  }
}
@keyframes placeholderDrift {
  0% {
    transform: translateX(-100%) translateZ(0);
  }
  100% {
    transform: translateX(100vw) translateZ(0);
  }
}
@keyframes placeholderWave {
  0% {
    transform: translateX(0) translateZ(0);
  }
  100% {
    transform: translateX(-50%) translateZ(0);
  }
}
@keyframes placeholderShimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@media only screen and (min-width: 768px) {
  .placeholder--16-9, .placeholder--4-3, .placeholder--1-1 {
    min-height: 150px;
  }
  .placeholder--xl {
    min-height: 280px;
  }
}
@media only screen and (min-width: 992px) {
  .placeholder--16-9, .placeholder--4-3, .placeholder--1-1 {
    min-height: 200px;
  }
  .placeholder--xl {
    min-height: 360px;
  }
}
@media only screen and (min-width: 1200px) {
  .placeholder--xl {
    min-height: 480px;
  }
}
.insights-card__image .placeholder,
.insights-featured__image .placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin-bottom: 0;
  border-radius: 0;
  background: transparent;
}
.insights-card__image .placeholder .placeholder__gradient,
.insights-featured__image .placeholder .placeholder__gradient {
  opacity: 1;
}
.insights-card__image .placeholder .placeholder__logo,
.insights-featured__image .placeholder .placeholder__logo {
  --ph-logo-size: 70%;
  max-width: 200px;
}
.insights-card__image .placeholder--rounded-sm, .insights-card__image .placeholder--rounded-md, .insights-card__image .placeholder--rounded-lg, .insights-card__image .placeholder--rounded-xl, .insights-card__image .placeholder--circle,
.insights-featured__image .placeholder--rounded-sm,
.insights-featured__image .placeholder--rounded-md,
.insights-featured__image .placeholder--rounded-lg,
.insights-featured__image .placeholder--rounded-xl,
.insights-featured__image .placeholder--circle {
  border-radius: 0;
}

[class*=__image] > .placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (prefers-reduced-motion: reduce) {
  .placeholder__gradient,
  .placeholder__particle,
  .placeholder__wave,
  .placeholder__skeleton {
    animation: none;
  }
  .placeholder__gradient {
    background-position: 50% 50%;
  }
}
/* ------------------------------------------------*/
