:root {
  --gold:#1F2937 ;
  --gold-dark:#2B241E;
  --gold-primary: #c9a36a;
  --gold-hover: #bda26e;
  --primary: #c9a36a;
  --white: #ffffff;
  --light-gray: #0e0e10;
  --dark: #1a1c1c;
  --bg-deep: #C9A227;
  --bg-surface: #141414;
  --bg-card: #1a1c1c;
  --card-dark: #1e1d1d;
  --text-primary: #1F2937;
  --text-secondary: #4B5563;
  --text-muted: #4a3f38;
  --font-serif: 'Faustina', Georgia, 'Times New Roman', serif;
  --font-sans: 'Faustina', Georgia, 'Times New Roman', serif;
  --font-heading: 'Faustina', Georgia, 'Times New Roman', serif;
  --secondary-font: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --radius: 0.5rem;
  --transition: 0.3s ease;
}

* {
  box-sizing: border-box;
 
}

body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 1rem;
  line-height: 1.7;
  color: var(--text-secondary);
  background: var(--bg-deep);
    background: #FFF;
}
div#page-wrapper {
    overflow: clip;
}
a {
  color: var(--light-gray);
  text-decoration: none;
}

/* Page loader */
#page-loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  /* Safety net: self-dismiss even if JS never runs. */
  animation: parallelLoaderAutoHide 0.4s ease 8s forwards;
}

@keyframes parallelLoaderAutoHide {
  to {
    opacity: 0;
    visibility: hidden;
  }
}

#page-loader.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  animation: none;
}

#page-loader .loader-inner img {
  max-width: 220px;
  height: auto;
  display: block;
}

h3.track-record-title a {
    color: var(--bg-deep) !important;
}

.service-card-link a,
.service-card-text,
.service-card-title a {
    color: var(--gold-dark) !important;
}

.service-card-title a:hover {
color:var(--bg-deep) !important;
}


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

nav#block-parallel-excellence {
    float: right;
    margin-right: 40px;
}

nav#block-parallel-excellence ul li {
    float: left;
    list-style: none;
    margin-left: 20px;
}

div#block-parallellanguageswitcher {
    float: right;
    color: #000;
}

.page-header .container {
    float: left;

    width: 100%;
    display: block;
}

.navbar-brand img {
  width: 260px;
}

nav.navbar.navbar-expand-lg.navbar-dark {
    max-width: 90%;
    margin: 0 auto;
}


div#block-parallel-site-branding {
    width: 280px;
}



h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-serif);
  font-weight: 500;
  line-height: 1.3;
  color: var(--gold);
  margin: 0 0 0.75rem;
}
h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.5rem; }
h4 { font-size: 1.25rem; }

p {
  margin: 0 0 1.25rem;
}

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

/* Container */
.container {
  width: 100%;
  margin: 0 auto;
  padding: 0 0;
}

/* Secondary menu bar (navbar-top) */
.navbar#navbar-top {
  background: #0d0d0d !important;
  border-bottom: 1px solid #222;
  font-size: 0.8125rem;
  min-height: auto !important;
  padding: 0.25rem 0 !important;
}
.navbar#navbar-top .nav-link {
  color: var(--text-muted) !important;
  padding: 0.25rem 0.75rem !important;
  font-size: 0.8125rem;
}
.navbar#navbar-top .nav-link:hover,
.navbar#navbar-top .nav-link.is-active {
  color: var(--gold) !important;
}

/* Main navbar */
#navbar-main.navbar {
  background: rgba(20, 20, 20, 0.95) !important;
  border-bottom: 1px solid #222;
  padding: 0.5rem 0;
}

/* Navbar nav links */
.navbar-nav .nav-link {
  color: var(--text-secondary) !important;
  padding: 0.5rem 0.75rem !important;
  font-size: 0.9rem;
  transition: color var(--transition);
}
.not-front #main-wrapper{
      width: 80%;
    margin: 0 auto;
}


.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.is-active,
.navbar-nav .nav-link.active {
  color: var(--gold) !important;
  background: transparent !important;
}

/* Navbar toggler */
.navbar-toggler {
  border-color: #444 !important;
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23e5c189' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* Nav items */
.nav-item {
  list-style: none;
}

/* Highlighted region */
.region-highlighted {
  padding: 0.75rem 0;
  background: #121212;
  text-align: center;
  font-size: 0.875rem;
}

/* Featured top */
.region-featured-top {
  padding: 3rem 0;
}

/* Main content area */
#main-wrapper {
  padding: 5rem 0;
  background: #FFF;
}

.front #main-wrapper {
  padding: 10rem 0;
}

.path-people #main-wrapper {
  padding: 0rem 0;

}

.filters_wrapper {
    float: left;
    width: 90%;
    margin-bottom: 20px;
}

.not-front #main-wrapper {
    width: 100% !important;
    margin: 0px auto;
}


.path-explore #main-wrapper {
 /*background: url('images/explore-ethiopia0.png') no-repeat;*/
    background:
      radial-gradient(1200px 420px at 50% -140px, rgba(201, 163, 106, 0.18), rgba(201, 163, 106, 0) 70%),
      #faf7f1;
    background-size: auto;
        background-position: 100px 60px;
        padding: 0rem 0;

}




.views-field.views-field-field-for-section{
     max-width: 100%;
    margin: 0 auto 14px;
    color: var(--gold);
    font-size: 1.125rem;
    line-height: 1.7; 
}


/* Main content column */
.main-content {
  padding: 1.5rem 0;
}

/* Breadcrumb */
.region-breadcrumb {
  padding: 0.75rem 10%;
  font-size: 0.8125rem;
}
.region-breadcrumb a {
  color: var(--text-muted);
}
.region-breadcrumb a:hover {
  color: var(--gold);
}

/* Content - same width as highlighted (standard container, no extra padding) */

/* Front page view blocks - 3 column grid */
[id^="block-excellence-front-"] .views-row {
  margin-bottom: 1.5rem;
}
/* Thumbnail images in card views */
[id^="block-excellence-front-"] .views-row img {
  width: 100%;
  height: auto;
  border-radius: var(--radius);
}

/* Sidebar first/second - simple bar style like header */
.region-sidebar-first .block,
.region-sidebar-second .block {
  background: rgba(20, 20, 20, 0.95);
  padding: 1.25rem;
  margin-bottom: 1rem;
}
.region-sidebar-first .block:last-child,
.region-sidebar-second .block:last-child {
  margin-bottom: 0;
}
.region-sidebar-first .block-title,
.region-sidebar-second .block-title {
  font-family: var(--font-serif);
  font-size: 1.125rem;
  color: var(--gold);
  margin-bottom: 0.75rem;
}

/* Featured bottom */
.featured-bottom {
  padding: 3rem 0;
 /* background: var(--bg-surface);*/
}
.featured-bottom .block {
  height: 100%;
}
.region-featured-bottom-second {
  padding: 0 10%;
}
.region-featured-bottom-first,
.region-featured-bottom-third {
  width: 100%;
  padding: 0;
}

/* Footer */
.site-footer {
background: url(footer.png) no-repeat;
    padding: 3rem 0 1.5rem;
    font-size: 0.999rem;
    background-size: cover;
    width: 100%;
    margin: 0 auto;
    float: none;
    padding: 3% 10% !important;
}
.site-footer .block-title {
  font-family: var(--font-serif);
  color: var(--gold);
  font-size: 1rem;
  margin-bottom: 1rem;
}
.site-footer .nav-link {
  color: var(--text-muted) !important;
  padding: 0.25rem 0 !important;
}
.site-footer .nav-link:hover {
  color: var(--gold) !important;
}

/* Menu blocks (footer, sidebar) - vertical by default */
.block-menu .nav {
  flex-direction: column;
}
/* Main menu in header - horizontal */
#block-excellence-main-menu .nav {
  flex-direction: row;
}
#block-excellence-main-menu .nav-item {
  white-space: nowrap;
}
/* Main menu in header - align right */
#block-parallel-main-menu,
#block-excellence-main-menu,
nav#block-parallel-main-menu {
  margin-left: auto;
}
#block-parallel-main-menu .navbar-nav,
#block-excellence-main-menu .navbar-nav {
  justify-content: flex-end;
}
nav#block-parallel-main-menu ul {
  display: flex;
  justify-content: flex-end;
}
nav#block-parallel-main-menu ul li {
  float: none;
  margin-left: 40px;
}
.block-menu .nav-link {
  padding: 0.5rem 0;
  font-size: 0.875rem;
  color: var(--text-muted);
}
.block-menu .nav-link:hover,
.block-menu .nav-link.is-active {
  color: var(--gold);
  background: transparent;
}

article.node--view-mode-card a {
   
        font-size: 24px;

}


#block-parallel-front-media-ct-listing article.node--view-mode-card a {
color:var(--gold) !important;
    font-size: 24px;
    letter-spacing: 0px;
    word-spacing: 5px;
    font-style: normal;
}

#block-parallel-front-partner-listing h2 {
  
}

#block-parallel-front-media-ct-listing article div{
  color:var(--gold);
}

.slick-slide  {color:#FFF;}

/* Slick arrows: style as icon buttons */
.slick {
  position: relative;
}
.slick-prev,
.slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 50%;
  background: rgba(0,0,0,0.4);
  color: #fff;
  font-size: 1.2rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
  line-height: 1;
}
.slick-prev:hover,
.slick-next:hover {
  background: rgba(0,0,0,0.7);
}
.slick-prev { left: 10px; }
.slick-next { right: 10px; }

/* Hide slick-dynamically created arrows; show template-rendered ones */
.slick-prev.slick-arrow,
.slick-next.slick-arrow {
  display: block;
}

/* Slick dots: hide numbers, show circles */
.slick-dots {
  display: flex;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 1rem 0 0;
  gap: 8px;
}
.slick-dots li {
  margin: 0;
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 12px;
  height: 12px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: #f2f2f2;
  border-radius: 50%;
  transition: background 0.3s ease;
}
.slick-dots li.slick-active button {
  background: var(--gold-primary, #c9a36a);
}
.slick-dots li button::before {
  display: none;
}

/* Hide skip to main content link */
a[href="#main-content"] {
  display: none !important;
}

/* Dropdown */
.dropdown-menu {
  background: var(--bg-card);
  border: 1px solid #2a2a2a;
  border-radius: var(--radius);
  padding: 0.5rem 0;
}
.dropdown-item {
  color: var(--text-secondary);
  padding: 0.375rem 1rem;
  font-size: 0.875rem;
}
.dropdown-item:hover {
  background: #222;
  color: var(--gold);
}

/* Buttons */
.btn {
  display: inline-block;
  padding: 0.625rem 1.5rem;
  font-size: 0.875rem;
  font-family: var(--font-sans);
  border: 1px solid var(--gold);
  border-radius: var(--radius);
  background: transparent;
  color: var(--gold);
  cursor: pointer;
  transition: all var(--transition);
}
.btn:hover {
  background: var(--gold);
  color: var(--bg-deep);
}
.btn-primary {
  background: var(--gold);
  color: var(--bg-deep);
  border-color: var(--gold);
}
.btn-primary:hover {
  background: var(--gold-dark);
  border-color: var(--gold-dark);
}

/* Card */
.card {
  background: var(--bg-card);
  border: 1px solid #2a2a2a;
  border-radius: var(--radius);
  overflow: hidden;
}
.card:hover {
  border-color: var(--gold);
}
.card img {
  width: 100%;
  display: block;
}
.card-body {
  padding: 1.25rem;
}
.card-title {
  font-family: var(--font-serif);
  font-size: 1.25rem;
  margin: 0 0 0.5rem;
}
.card-text {
  font-size: 0.875rem;
  color: var(--text-muted);
  margin: 0;
}

/* Node detail page (generic node--full.html.twig field cards) */
.node-detail-fields .field--name-title {
  font-family: var(--font-serif);
  font-size: 2.5rem;
  margin-bottom: 1.5rem;
}
.node-detail-fields .field--type-text-long {
  font-size: 1.0625rem;
  line-height: 1.8;
}
.node-detail-fields .field--type-image img {
  border-radius: var(--radius);
  width: 100%;
}

/* Field labels */
.field--label {
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 0.25rem;
}

/* Masonry */
.views-masonry .views-row {
  break-inside: avoid;
  margin-bottom: 1rem;
}

/* Stories page - masonry styling */
body.path-stories #main-wrapper {
  padding-top: 60px;
  padding-bottom: 80px;
}

body.path-stories h1.page-title {
  font-family: var(--secondary-font);
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
  color: var(--text-primary);
  letter-spacing: -0.5px;
}

body.path-stories .masonry-layout-article-listing {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

body.path-stories .masonry-item {
  width: 23%;
  margin-bottom: 30px;
}

body.path-stories .masonry-item article.node--view-mode-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid rgba(201, 163, 106, 0.2);
}

body.path-stories .masonry-item article.node--view-mode-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 30px rgba(201, 163, 106, 0.25);
}

body.path-stories .masonry-item article.node--view-mode-card img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  display: block;
}

body.path-stories .masonry-item article.node--view-mode-card > div {
  padding: 25px;
}

body.path-stories .masonry-item article.node--view-mode-card h2 {
  margin: 0 0 15px 0;
  font-family: var(--secondary-font);
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 600;
}

body.path-stories .masonry-item article.node--view-mode-card h2 a {
  color: var(--text-primary) !important;
  text-decoration: none;
  font-size: 1.4rem !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  word-spacing: normal !important;
  font-family: var(--secondary-font);
}

body.path-stories .masonry-item article.node--view-mode-card h2 a:hover {
  color: var(--gold-primary) !important;
}

body.path-stories .masonry-item article.node--view-mode-card .field--name-body {
  color: var(--text-muted);
  font-size: 0.95rem;
  line-height: 1.6;
  margin-bottom: 15px;
}

body.path-stories .masonry-item article.node--view-mode-card .field--name-body p {
  margin: 0;
}

body.path-stories .masonry-item article.node--view-mode-card .links {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.path-stories .masonry-item article.node--view-mode-card .links li {
  display: inline-block;
}

body.path-stories .masonry-item article.node--view-mode-card .links a {
  color: var(--gold-primary) !important;
  text-decoration: none;
  font-size: 0.9rem !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  font-weight: 600;
}

body.path-stories .masonry-item article.node--view-mode-card .links a:hover {
  text-decoration: underline;
}

@media (max-width: 991px) {
  body.path-stories .masonry-item {
    width: 47%;
  }
}

@media (max-width: 767px) {
  body.path-stories .masonry-item {
    width: 100%;
  }
  body.path-stories .masonry-layout-article-listing {
    padding: 0 15px;
  }
  body.path-stories h1.page-title {
    font-size: 2rem;
  }
}

/* Bento grid */
.bento-grid {
  display: grid;
  gap: 1.5rem;
}
.bento-grid .bento-item {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius);
  background: var(--bg-card);
}
.bento-grid .bento-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bento-grid .bento-item .bento-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 1.5rem;
  background: linear-gradient(to top, #0a0a0a, transparent);
}
.bento-grid .bento-item .bento-label {
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 0.25rem;
}
.bento-grid .bento-item .bento-title {
  font-family: var(--font-serif);
  font-size: 1.5rem;
  color: var(--text-primary);
  margin: 0;
}

/* Utility classes */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-gold { color: var(--gold); }
.text-muted { color: var(--text-muted); }
.font-serif { font-family: var(--font-serif); }
.font-sans { font-family: var(--font-sans); }
.mt-0 { margin-top: 0; }
.mb-0 { margin-bottom: 0; }
.mt-2 { margin-top: 1rem; }
.mb-2 { margin-bottom: 1rem; }
.mt-4 { margin-top: 2rem; }
.mb-4 { margin-bottom: 2rem; }
.p-2 { padding: 1rem; }
.p-4 { padding: 2rem; }
.d-flex { display: flex; }
.flex-wrap { flex-wrap: wrap; }
.align-center { align-items: center; }
.justify-between { justify-content: space-between; }
.w-100 { width: 100%; }


nav#block-parallel-main-menu ul li {
    float: left;
    margin-left: 40px;
    list-style: none;
    
}
#block-parallel-main-menu a {
    font-size: 21px;
    font-style: italic;
}

/* Hero Section Wrapper */
.hero-section {
    min-height: 100vh;
    padding: 60px 0;
}

/* Trust Badge Styling */
.badge-dot {
    width: 8px;
    height: 8px;
    background-color: var(--gold-primary);
    border-radius: 50%;
    display: inline-block;
}

.badge-text {
    font-size: 0.85rem;
    color: var(--text-muted);
    letter-spacing: 0.5px;
}

/* Typography Customizations */
.hero-title {
    font-family: var(--font-heading);
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1.2;
}

.text-gold {
    color: var(--gold-primary);
}

.hero-description {
    color: var(--text-muted);
    font-size: 1.05rem;
    line-height: 1.7;
    max-width: 550px;
}

/* Premium Gold Button Styling */
.btn-gold {
    background-color: var(--gold-primary);
    color: #000000 !important;
    border: none;
    border-radius: 4px;
    font-size: 0.85rem;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.btn-gold:hover {
    background-color: var(--gold-hover);
    transform: translateY(-2px);
}

/* Stats Section Styling */
.stat-number {
    font-family: var(--font-heading);
    color: var(--gold-primary);
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 2px;
}

.stat-label {
    color: var(--text-muted);
    font-size: 0.85rem;
    margin-bottom: 0;
}

.path-explore #page-wrapper{
  background: #FFF;
}


/* Section subtitle with gold liner */
.section-subtitle {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}
.section-subtitle-liner {
  width: 24px;
  height: 1px;
  background: var(--primary);
  flex-shrink: 0;
}
.section-subtitle-text {
  color: var(--primary);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
}

/* Section titles */
.section-title {
  font-family: var(--secondary-font);
  font-size: 48px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--white);
}

.views-field.views-field-body,
.section-title .highlight { color: var(--primary); }

.views-field.views-field-body,
.section-summary {
  color: var(--light-gray);
  font-size: 18px;
  line-height: 1.6;
  margin-top: 20px;
  /*max-width: 600px;*/
}

.path-about .views-field.views-field-body{
      width: 80%;
    margin: 0 auto;
}

.path-about #main-wrapper {
    width: 80% !important;
    margin: 0 auto;
}

.path-editorial-standards .views-row,
.path-contributor-bios .views-row,
.path-advisory-circle .views-row{float:none;
}



.views-field.views-field-body p {
  /*  float: left;
    width: 50%;
    clear: both;
    padding-right: 60px;*/
}
.views-field.views-field-body h3,
.views-field.views-field-body h4,
.views-field.views-field-body h5{
  float: left;
  width: 100%;
}


/* ========== HERO ========== */
.hero {
  min-height: 60vh;
  display: flex;
  align-items: center;
  position: relative;
  padding: 60px 0 0;
  background: var(--bg-deep);
  background: #FFF;
}


.hero-subtitle {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}
.hero-subtitle-icon {
  width: 20px; height: 20px;
  background: var(--primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.hero-subtitle-icon::after {
  content: ""; width: 8px; height: 8px;
  background: var(--dark); border-radius: 50%;
}

p.field-content.card-subheader,
.hero-subtitle-text {
  color: var(--text-primary);
  font-size: 32px;
  line-height: normal;
}

.banner-header {
    font-size: 65px;
    text-transform: capitalize;
    line-height: 60px;
    color: var(--gold);
    font-style: italic;
}



.hero-heading {
  font-family: var(--secondary-font);
  font-size: 60px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--text-primary);
  margin-bottom: 24px;
}
.hero-heading .highlight { color: var(--primary); }

.hero-summary {
  color: var(--text-primary);
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 40px;
}

/* Hero Stats */
.hero-stats {
  display: flex;
  align-items: center;
  gap: 40px;
  margin-top: 40px;
  padding-top: 32px;
}
.hero-stat-divider {
  width: 1px;
  height: 60px;
  background: rgba(229,231,235,0.3);
  flex-shrink: 0;
}
.stat-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.stat-number-block { height: 36px; overflow: hidden; }
.stat-num {
  font-family: var(--secondary-font);
  font-size: 32px;
  font-weight: 700;
  color: var(--primary);
  line-height: 36px;
}
.stat-label {
  color: var(--text-primary);
  font-size: 18px;
    line-height: 1.6;
  text-align: center;
}

.hero-liner {
  width: 100%;
  height: 1px;
  background: rgba(229,231,235,0.3);
  margin-top: 32px;
}

/* Hero image block */
.hero-image-block {
  position: relative;
  overflow: hidden;
 /* height: 85vh;
  max-height: 700px;
  border-radius: 4px;*/
}
.hero-image-block .hero-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  box-shadow: -2px 3px 24px yellow;
  border-radius: 80px;
  filter: grayscale(1);
}


.not-front .navbar-expand-lg .navbar-collapse{
          display: block !important;
        flex-basis: auto;
        width: 100%;
}


.not-front #block-parallel-main-menu, .not-front #block-excellence-main-menu,.not-front nav#block-parallel-main-menu{
  float: left;
}


.not-front #search-block-form{
  float: left;
}

#block-parallel-searchform{
      float: right;
    margin-left: 20px;
}






.hero-image-block .hero-img.revealed {
  padding-bottom: 80px;
}

.d-lg-block{
          margin-top: 0px !important;
}

/* Hero dark overlay */
.hero-image-overlay {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  background-color: var(--dark);
  transform-origin: 50% 100%;
  height: 0%;
  will-change: height;
  transition: height 1.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 2;
}
.hero-image-overlay.is-active {
  height: 100%;
}
.hero-image-overlay.revealed {
  height: 0%;
}

/* ========== BUTTONS ========== */
.btn-glow {
  position: absolute;
  width: 60px; height: 60px;
  background: rgba(255,255,255,0.4);
  border-radius: 50%;
  transform: scale(0.4);
  opacity: 0;
  transition: transform 0.4s, opacity 0.4s;
  pointer-events: none;
}
.btn-secondary .btn-glow { background: rgba(197, 164, 110, 0.2); }
.btn:hover .btn-glow { transform: scale(2.5); opacity: 1; }
.btn-content { position: relative; z-index: 2; display: flex; align-items: center; gap: 12px; }

/* Dorbar button */
.btn-dorbar {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 36px;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  border: none;
  transition: box-shadow 0.4s;
}
.btn-dorbar-primary {
  background: linear-gradient(135deg, var(--primary), #e8d5b7);
  color: var(--dark);
}
.btn-dorbar-primary:hover {
  color: var(--dark);
  box-shadow: 2px 2px 20px #c5a46e33;
}
.btn-dorbar-secondary {
  background: transparent;
  border: 1px solid var(--primary);
  color: var(--primary);
}
.btn-dorbar-secondary:hover {
  color: var(--primary);
  box-shadow: 2px 2px 20px #c5a46e33;
}

/* ========== ABOUT ========== */
.about-image-block {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
}
.about-image-block svg {
  width: 100%;
  height: 500px;
  display: block;
}
.about-stat-float {
  position: absolute;
  bottom: 32px; left: 32px;
  background: rgba(25, 23, 25, 0.9);
  border: 1px solid rgba(201, 163, 106, 0.4);
  padding: 20px 28px;
  border-radius: 4px;
  text-align: center;
  backdrop-filter: blur(4px);
}
.about-stat-number {
  font-family: var(--secondary-font);
  font-size: 36px;
  font-weight: 700;
  color: var(--primary);
}
.about-stat-label {
  color: var(--light-gray);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.about-circle {
  width: 120px; height: 120px;
  border: 1px solid var(--primary);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex-shrink: 0;
}
.about-circle-title {
  font-family: var(--secondary-font);
  font-size: 24px;
  font-weight: 700;
  color: var(--primary);
}
.about-circle-text {
  font-size: 10px;
  color: var(--light-gray);
  max-width: 80px;
}
.about-name { color: var(--white); font-weight: 600; font-size: 16px; }
.about-designation { color: var(--light-gray); font-size: 14px; }

/* ========== SERVICE CARD ========== */
.service-card {
  border: 1px solid rgba(201, 163, 106, 0.1);
  padding: 30px 20px;
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  transition: border-color 0.4s, box-shadow 0.4s;
  cursor: default;
  isolation: isolate;
  height: 100%;
    border-color: rgba(201, 163, 106, 0.4);
  box-shadow: 2px 2px 15px #c5a46e26;
}
.service-card:hover {

}
.service-card-content { position: relative; z-index: 5; }
.service-card-icon {
  width: 48px; height: 48px;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(197, 164, 110, 0.1);
  border-radius: 50%;
  transform: scale(0.8);
  transition: transform 0.4s;
      margin: 0 auto;
}
.service-card:hover .service-card-icon { transform: scale(1); }
.service-card-icon svg { width: 24px; height: 24px; stroke: var(--primary); }
.service-card-title {
  font-family: var(--secondary-font);
  font-size: 24px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 12px;
  transition: color 0.4s;
  text-align: center;
}
.service-card:hover .service-card-title { color: var(--primary); }
.service-card-text {
  color: var(--light-gray);
  font-size: 16px;
  line-height: 1.5;
}
.service-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--primary);
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  margin-top: 24px;
  position: relative;
  opacity: 0;
  transform: translateX(-8px);
  transition: opacity 0.4s, transform 0.4s;
}
.service-card:hover .service-card-link {
  opacity: 1;
  transform: translateX(0);
}
.service-card-link-arrow { transition: transform 0.3s; }
.service-card:hover .service-card-link-arrow { transform: translateX(4px); }

.card-gradient-liner {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, transparent, var(--primary));
  width: 0%;
  transition: width 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 4;
}
.service-card:hover .card-gradient-liner { width: 100%; }
.card-corner-gradient {
  position: absolute;
  top: -10%; left: -10%;
  width: 120%; height: 120%;
  background: linear-gradient(135deg, rgba(197, 164, 110, 0.3), transparent 18%);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.4s;
  z-index: 2;
}
.service-card:hover .card-corner-gradient { opacity: 1; }
.card-bg-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(197, 164, 110, 0.08), transparent);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.4s;
  z-index: 1;
}
.service-card:hover .card-bg-gradient { opacity: 1; }

/* ========== TRACK RECORD ========== */
.track-record-main-content-block {
  display: flex;
  flex-flow: column;
  gap: 80px;
  margin-top: 48px;
  position: relative;
}
.track-record-single-content-block {
  display: flex;
  align-items: center;
  gap: 80px;
  background: var(--bg);
  padding: 32px 0;
  position: sticky;
  top: 18%;
}
.track-record-text-content-block {
  width: 100%;
  max-width: 580px;
}
.track-record-text-content-block.order-2 { order: 2; }
.track-record-image-content-block {
  flex: 1;
  position: relative;
  overflow: hidden;
}
.track-record-subtitle {
  color: var(--primary);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.track-record-title {
  font-family: var(--secondary-font);
  font-size: 28px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.2;
}
.track-record-number {
  pointer-events: none;
  font-family: var(--secondary-font);
  color: rgba(255,255,255,0.05);
  font-size: 100px;
  line-height: 0.8;
  font-weight: 700;
  position: absolute;
  top: 0;
  left: 0;
}
.track-record-summary-block { margin-top: 12px; }
.track-record-summary-block p {
  color: var(--light-gray);
  font-size: 15px;
  line-height: 1.7;
}
.track-record-statistics-block {
  margin-top: 12px;
  display: flex;
  flex-flow: column;
  gap: 12px;
  border-left: 3px solid var(--primary);
  background-image: linear-gradient(90deg, rgba(197,164,110,0.1), #1e1c21);
  padding: 24px;
  position: relative;
  overflow: hidden;
}
.track-record-stat-subtitle {
  color: var(--light-gray);
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.track-record-stat-text {
  font-family: var(--secondary-font);
  color: var(--primary);
  font-size: 28px;
  font-weight: 600;
}
.track-record-statistics-overlay {
  pointer-events: none;
  background-image: linear-gradient(90deg, transparent, rgba(197,164,110,0.15) 50%, transparent);
  width: 200px; height: 100%;
  position: absolute;
  top: 0;
  left: -200px;
  transition: left 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.track-record-single-content-block:hover .track-record-statistics-overlay {
  left: 100%;
}
.track-record-bottom-text-block {
  display: flex;
  flex-flow: column;
  gap: 30px;
  margin-top: 30px;
}
.record-liner-two {
  transform-origin: 0%;
  background-color: rgba(197,164,110,0.1);
  width: 100%;
  height: 1px;
}
.track-record-bottom-text {
  color: var(--light-gray);
  font-size: 12px;
  font-style: italic;
}
.track-record-image {
  object-fit: cover;
  border: 1px solid rgba(197,164,110,0.1);
  width: 100%;
  height: 100%;
  min-height: 500px;
  display: block;
}
.track-record-image-subtitle-block {
  border: 1px solid var(--primary);
  background: var(--dark);
  color: var(--primary);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 12px 24px;
  position: absolute;
  top: 20px;
  right: 20px;
}

/* ========== TESTIMONIALS ========== */
.testimonial-left-overlay,
.testimonial-right-overlay {
  position: absolute;
  top: 0; bottom: 0;
  width: 80px;
  z-index: 2;
  pointer-events: none;
}
.testimonial-left-overlay {
  left: 0;
  background: linear-gradient(90deg, var(--dark), transparent);
}
.testimonial-right-overlay {
  right: 0;
  background: linear-gradient(270deg, var(--dark), transparent);
}
.testimonial-card {
  background: linear-gradient(135deg, #19171966, #19171933);
  border: 1px solid rgba(201, 163, 106, 0.1);
  padding: 40px 32px;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  transition: border-color 0.4s, box-shadow 0.4s;
  height: 100%;
}
.testimonial-card:hover {
  border-color: rgba(201, 163, 106, 0.4);
  box-shadow: 2px 2px 15px #c5a46e26;
}
.testimonial-gt-liner {
  width: 60px;
  height: 3px;
  background: linear-gradient(90deg, var(--primary), transparent);
  margin-bottom: 24px;
}
.testimonial-stars {
  color: var(--primary);
  font-size: 18px;
  letter-spacing: 4px;
  margin-bottom: 20px;
}
.testimonial-text {
  color: var(--light-gray);
  font-size: 16px;
  line-height: 1.7;
  font-style: italic;
  margin-bottom: 24px;
}
.testimonial-author { display: flex; align-items: center; gap: 12px; }
.testimonial-avatar {
  width: 44px; height: 44px;
  border-radius: 50%;
  background: #2a272a;
  flex-shrink: 0;
}
.testimonial-name { color: var(--white); font-weight: 600; font-size: 15px; }
.testimonial-role { color: var(--primary); font-size: 12px; text-transform: uppercase; letter-spacing: 1px; }

/* ========== CTA ========== */
.cta-section { text-align: center; padding: 80px 0; }
.cta-liner {
  width: 100%; height: 1px;
  background: rgba(201, 163, 106, 0.1);
  margin-bottom: 48px;
}
.cta-title {
  font-family: var(--secondary-font);
  font-size: 36px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 32px;
}

/* ========== ANIMATION BASE ========== */
/* Entrance animation start states are gated behind html.reveal-ready, a class
   that script.js adds as soon as it starts. If the script never loads, fails,
   or is blocked, the class is absent and every element stays fully visible.
   A watchdog in script.js removes the class again if init never completes. */
[data-reveal] {
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
html.reveal-ready [data-reveal]:not(.revealed) {
  opacity: 0;
  transform: translateY(40px);
}
[data-reveal].revealed { opacity: 1; transform: translateY(0); color: #0e0e10; }

div#block-parallel-featured-bottom-second [data-reveal].revealed { color: #fff; }
 
[data-reveal-scale] {
  transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
html.reveal-ready [data-reveal-scale]:not(.revealed) {
  opacity: 0;
  transform: scale(0.9);
}
[data-reveal-scale].revealed { opacity: 1; transform: scale(1); }

[data-liner-x] {
  transform-origin: 0%;
  transition: transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
html.reveal-ready [data-liner-x]:not(.revealed) { transform: scaleX(0); }
[data-liner-x].revealed { transform: scaleX(1); }

[data-liner-x-center] {
  transform-origin: 50% 50%;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
html.reveal-ready [data-liner-x-center]:not(.revealed) { transform: scale3d(0, 1, 1); }
[data-liner-x-center].revealed { transform: scale3d(1, 1, 1); }

[data-liner-y] {
  transform-origin: 50% 100%;
  transition: transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
html.reveal-ready [data-liner-y]:not(.revealed) { transform: scale3d(1, 0, 1); }
[data-liner-y].revealed { transform: scale3d(1, 1, 1); }

[data-reveal-child] {
  transition: opacity 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
html.reveal-ready [data-reveal-child]:not(.revealed) {
  opacity: 0;
  transform: translateY(30px);
}
[data-reveal-child].revealed {
  opacity: 1;
  transform: translateY(0);
}

.delay-1 { transition-delay: 0.1s; }
.delay-2 { transition-delay: 0.2s; }
.delay-3 { transition-delay: 0.3s; }
.delay-4 { transition-delay: 0.4s; }
.delay-5 { transition-delay: 0.5s; }

/* ========== RESPONSIVE ========== */
@media (max-width: 1199.98px) {
  .banner-header { font-size: 48px; line-height: 44px; }
  .hero-heading { font-size: 52px; }
  .hero-subtitle-text { font-size: 28px; }
  #block-parallel-main-menu a { font-size: 18px; }
  nav#block-parallel-main-menu ul li { margin-left: 24px; }
  .track-record-single-content-block { gap: 48px; }
  .hero-image-block { height: 70vh; }
}

@media (max-width: 991.98px) {
  .hero-heading { font-size: 48px; }
  .hero-image-block { height: 60vh; }
  .section-title { font-size: 36px; }
  .about-image-block svg { height: 400px; }
  .track-record-main-content-block { gap: 150px; }
  .track-record-single-content-block {
    flex-flow: column;
    gap: 32px;
    padding-top: 0;
    padding-bottom: 0;
    top: 8%;
  }
  .track-record-text-content-block { max-width: 100%; }
  .track-record-text-content-block.order-2 { order: -9999; }
  .track-record-image-content-block { order: -9999; }
  .track-record-image { min-height: 350px; }
  .track-record-bottom-text-block { gap: 20px; margin-top: 20px; }
}

@media (max-width: 767.98px) {
  .hero-heading { font-size: 36px; }
  .hero-stats { flex-direction: column; gap: 24px; }
  .hero-stat-divider { display: none; }
  .section-title { font-size: 28px; }
  .about-image-block svg { height: 300px; }
  .about-liner { display: none; }
  .track-record-image { min-height: 250px; }
  .track-record-number { font-size: 60px; }
  .testimonial-left-overlay,
  .testimonial-right-overlay { width: 30px; }
  .banner-header { font-size: 32px; line-height: 1.2; }
  .hero-subtitle-text { font-size: 20px; }
  .navbar-brand img { width: 180px; }
  nav.navbar.navbar-expand-lg.navbar-dark { max-width: 95%; }
  .stat-num { font-size: 24px; }
  .about-stat-number { font-size: 28px; }
  .track-record-title { font-size: 22px; }
  .track-record-stat-text { font-size: 22px; }
  .cta-title { font-size: 28px; }
  .node--view-mode-full .field--name-title { font-size: 1.8rem; }
  #block-parallel-front-sponsor-listing,
  #block-parallel-front-media-ct-listing { float: none; width: 100%; }
  .wrap { width: 100%; float: none; }
  #block-parallel-views-block-concept-listing-block-1 .col-md-3 { width: 100%; margin: 10px 0; }
  div#block-parallel-front-partner-listing { width: 95%; padding: 5% !important; }
  .views-row { float: none; }
  .region-featured-bottom-second { padding: 0 5%; }
  .hero-image-block { height: 50vh; }
  nav#block-parallel-main-menu ul li { margin-left: 16px; }
  #block-parallel-main-menu a { font-size: 16px; }
  .site-footer { padding: 3% 5%; }
  .hero-section { padding: 40px 0; }
  .hero { padding: 20px 0; }
  .service-card { padding: 20px 15px; }
  .about-stat-float { position: relative; bottom: auto; left: auto; margin-top: 16px; }
  .track-record-image { min-height: 200px; }
}

@media (max-width: 575.98px) {
  .hero-heading { font-size: 28px; }
  .hero-title { font-size: 2rem; }
  .section-title { font-size: 24px; }
  .banner-header { font-size: 26px; line-height: 1.2; }
  .hero-subtitle-text { font-size: 18px; }
  .section-summary { font-size: 16px; }
  .hero-summary { font-size: 16px; }
  .stat-num { font-size: 20px; }
  .about-stat-number { font-size: 22px; }
  .cta-title { font-size: 24px; }
  .node--view-mode-full .field--name-title { font-size: 1.5rem; }
  .navbar-brand img { width: 140px; }
  .hero-section { padding: 30px 0; }
  .hero { padding: 20px 10px; }
  .service-card { padding: 20px 15px; }
  .track-record-number { font-size: 48px; }
  .track-record-title { font-size: 20px; }
  .track-record-stat-text { font-size: 20px; }
  .about-stat-number { font-size: 22px; }
  .site-footer { padding: 5% 5%; text-align: center; }
  .region-featured-bottom-second { padding: 0 3%; }
}

/* Border separation handling for responsive views */
@media (min-width: 576px) {
    .border-sm-start {
        border-left: 1px solid rgba(255, 255, 255, 0.15) !important;
        padding-left: 25px;
    }
}

/* Responsive Font Scaling */
@media (max-width: 768px) {
    .hero-title {
        font-size: 2.5rem;
    }
}

/* Right Side Decorative Placeholder Box */
.graphic-box {
    width: 100%;
    max-width: 450px;
    aspect-ratio: 1 / 1;
    background-color: var(--card-dark);
    border-radius: 4px;
}

.circle-outer {
    width: 180px;
    height: 180px;
    border: 1px solid rgba(203, 178, 129, 0.2);
    border-radius: 50%;
}

.circle-inner {
    width: 130px;
    height: 130px;
    border: 1px solid rgba(203, 178, 129, 0.4);
    border-radius: 50%;
}

.law-text {
    font-family: var(--font-heading);
    color: var(--gold-primary);
    font-weight: 500;
    font-size: 0.95rem;
    letter-spacing: 2px;
}


@media (max-width: 768px) {
  .region-breadcrumb {
    padding: 0 5%;
  }
  main {
    width: 95%;
  }
}
.featured-top.hero {
    max-width: 90%;
    margin: 0 auto;
    padding: 100px 10% !important;
}

/* ===== HERO OVERLAP ON SCROLL (parallax) ===== */
.featured-top.hero {
    position: relative;
    z-index: 0;
}

.featured-top.hero ~ #main-wrapper {
    position: relative;
    z-index: 1;

    /* Transparent on the front page so the gold hero/body shows through the
       intro and service-card area; the white card is only for non-front pages. */
    background: #fff;
}

/* The dark content row rises up over the concept-listing block while the
   scroll pauses at the block's vertical center (driven by script.js). It
   must paint above the block, which is translated during the hold. */
.featured-top.hero ~ #main-wrapper .row.row-offcanvas.row-offcanvas-left.clearfix {

    position: relative;
    z-index: 1;
    background: #0e0e10;
    clear: both;
}



/* Global dark background for the content row (all pages). */
#main-wrapper .row.row-offcanvas.row-offcanvas-left.clearfix {
    background: #0e0e10;
}

.not-front #main-wrapper .row.row-offcanvas.row-offcanvas-left.clearfix{
  background: #FFF;
}

.path-explore #main-wrapper .row.row-offcanvas.row-offcanvas-left.clearfix {
    background: none;
}

.path-contact div#block-parallel-views-block-basic-block-1 {
    float: left;
    width: 50%;
}

div#block-parallel-content {
    width: 100%;
    text-align: center;
}
.path-contact div#block-parallel-content {
    width: 50% !important;
    text-align: left !important;
    float: left !important;
}

@media (max-width: 767.98px) {
    .featured-top.hero ~ #main-wrapper {
        margin-top: -10vh;
    }
}

header.page-header{
  padding: 0px 10% !important;
}

main {
    margin: 0 auto;
    width: 85%;
}


.sidebar_first{
  float:left;
      background: #0e0e10;
    padding: 5%;
    width: 100%;

}

/* Intentionally empty - was div { padding: 0px !important; } which broke all layout */

#block-parallel-front-place-listing,
div#block-parallel-featured-bottom-first {
  /*float: left;
  width: 100%;
  padding: 2.5% 0% 0% !important;*/
}

.js-view-dom-id-37f6c697a27252bcf2f3b745f96141fd0f5b431cb84bb61ae619ea7d25521c9e{
  margin: 0 auto;
    width: 60%;
}


div#block-parallel-front-partner-listing {
    width: 80%;
    margin: 0 auto;
    float: none;
    padding: 3% !important;
}
div#block-parallel-front-sponsor-listing, 
div#block-parallel-front-media-ct-listing {
    float: left;
    width: 50%;
}


.featured-bottom {
    padding: 3% 5% 3% !important;
}

.views-row {
    float: left;
    margin: 0px;
    text-align: left;
  /*  width: 100%; */
}



.view-person-listing .views-row {
  float: none;
    margin: 0px;
    text-align: left;
    width: 15%;
    margin-bottom: 5px;
}




/* Zoom the card image 200% on slide hover without scaling the slide/card
   itself: only the image is transformed, and it grows outside the card,
   overlapping its neighbors (no clipping). */
#block-parallel-content .slick__slide {
    position: relative;
}
#block-parallel-content .slick__slide img {
    display: block;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
#block-parallel-content .slick__slide:hover {
    z-index: 5;
}
#block-parallel-content .slick__slide:hover img {
    transform: scale(2);
}
/* While a slide is hovered, unclip the carousel viewport so the 200% image is
   fully visible (never cropped). Only the off-viewport slides are masked
   (they would otherwise appear as a strip); the visible neighbours stay. */
#block-parallel-content .slick-list.zoom-mode {
    overflow: visible;
}
#block-parallel-content .slick-list.zoom-mode .slick__slide.zoom-off {
    visibility: hidden;
}
/* Hide the person full-name link on cards by default; its content is shown
   as a tooltip on hover instead. */
#block-parallel-content a.full-name {

}
.slick--view--frontpage-page-page-1 .field.field--name-field-occupation.field--type-text.field--label-hidden.field__items,
.slick--view--frontpage-page-page-1 .field.field--name-field-full-name.field--type-text.field--label-hidden.field__item {
    display: none;
}


/* Tooltip element that shows the person's full name while a card is hovered. */
.card-name-tooltip {
    display: none;
    position: fixed;
    z-index: 9999;
    pointer-events: none;
    background: rgba(0, 0, 0, 0.88);
    color: #fff;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.3;
    border-radius: 4px;
    white-space: nowrap;
}
.card-name-tooltip.visible {
    display: block;
}



aside.sidebar_second.section {
   
    text-align: center;
    background: #FFF;
    float: left;
    width: 103%;
    padding: 100px 10%;
    margin-left: -2%;
}

div#block-parallel-featured-bottom-second,
.views-element-container {
    width: 100%;
}



div#block-parallel-front-story-listing {
    width: 100%;
    margin: 0 auto;
    float: left;
    padding: 0% 10% 5%;
    background: #0e0e10;
}

/* Story carousel cards */
#block-parallel-front-story-listing .track-record-single-content-block {
    position: static;
    width: 95%;
    background: var(--bg-card);
    border: 1px solid rgba(197, 164, 110, 0.15);
    border-radius: 14px;
    padding: 120px 40px 20px;
    gap: 55px;
    align-items: center;
    padding-bottom:0px;
}

#block-parallel-front-story-listing .track-record-text-content-block {
    max-width: 520px;
}

#block-parallel-front-story-listing .track-record-summary-block p {
    color: #b8b0a8;
}

#block-parallel-front-story-listing .track-record-bottom-text {
    color: #b8b0a8;
}

#block-parallel-front-story-listing .track-record-stat-subtitle {
    color: #b8b0a8;
}

#block-parallel-front-story-listing .track-record-image {
    min-height: 0;
    height: auto;
    max-height: 420px;
    border-radius: 10px;
    object-fit: cover;
}

#block-parallel-front-story-listing .slick__slide {
    display: block;
}

/* Slick measures the slide width from .slick-list at init; without an
   explicit width the browser lays it out at 0px in this block, collapsing
   every slide to a 0px-tall column. Force the list to fill the slider. */
#block-parallel-front-story-listing .slick-list {
    width: 100%;
}

#block-parallel-front-story-listing .slick-dots {
    position: static;
    margin-top: 5px;
    text-align: center;
    color:#f5f5f5;
}

#block-parallel-front-story-listing .slick-dots li button::before {
    color: var(--gold);
    opacity: 0.4;
    font-size: 12px;
}

#block-parallel-front-story-listing .slick-dots li.slick-active button::before {
    color: var(--gold);
    opacity: 1;
}

@media (max-width: 767.98px) {
    div#block-parallel-front-story-listing {
        padding: 2rem 5%;
    }
    #block-parallel-front-story-listing .track-record-single-content-block {
        flex-flow: column;
        gap: 24px;
        padding: 24px;
    }
    #block-parallel-front-story-listing .track-record-text-content-block {
        max-width: 100%;
        order: 2;
    }
    #block-parallel-front-story-listing .track-record-image-content-block {
        width: 100%;
    }
    #block-parallel-front-story-listing .track-record-image {
        max-height: 260px;
    }
}

div#block-parallel-featured-bottom-second{
  padding-top: 5% !important;
  background: #0e0e10;
}

.path-people #main-wrapper .row.row-offcanvas.row-offcanvas-left.clearfix,
.path-people div#block-parallel-featured-bottom-second{
  background: #FFF;
}


.path-people  div#block-parallel-featured-bottom-second [data-reveal].revealed{color:#0e0e10;}


#block-parallel-views-block-concept-listing-block-1 {

    clear: both;
    width: 65%;
    margin: 0 auto;
    

}

.wrap {
    width: 70%;
    margin: 0 auto;
    float: right;
}

#block-parallel-views-block-concept-listing-block-1 .col-md-3 {
    width: 300px;

    margin: 15px;
    padding: 20px 10px !important;
    text-align: center;
    border-radius: 45px;
}

div#block-parallel-page-title h1 {
    font-size: 16px;
    padding-left: 40px;
}

@media (min-width: 1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 100%;
  }
}

.featured-top.hero #block-parallel-front-promotional-block-listi .js-view-dom-id-d43e0c5d9aa8b9a823b165aa40dc72718e02ae4b2324e67a7e6e22e113bf4c8a .views-row {
  width: 100%;
}

/* Language switcher dropdown */
#block-parallellanguageswitcher select.lang-dropdown {
background: transparent;
    color: #000;
    border: 1px solid #000;
    border-radius: 4px;
    padding: 4px 24px 4px 8px;
    font-size: 0.85rem;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url(data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3e%3cpath d='M7 10l5 5 5-5z'/%3e%3c/svg%3e);
    background-repeat: no-repeat;
    background-position: right 4px center;
    background-size: 16px;
    text-align: center;
    font-weight: bold;
}
#block-parallellanguageswitcher select.lang-dropdown option {
  background: #1a1c1c;
  color: #fff;
}

/* Webform pages: full-width content, 50/50 split */
.path-webform-submit-story .layout-main-wrapper .row > main,
.path-webform-share-archive .layout-main-wrapper .row > main,
.path-webform-become-contributor .layout-main-wrapper .row > main,
.path-webform-suggest-profile .layout-main-wrapper .row > main {
  flex: 0 0 100%;
  max-width: 100%;
}
.path-webform-submit-story .layout-main-wrapper .row > [class*="sidebar"],
.path-webform-share-archive .layout-main-wrapper .row > [class*="sidebar"],
.path-webform-become-contributor .layout-main-wrapper .row > [class*="sidebar"],
.path-webform-suggest-profile .layout-main-wrapper .row > [class*="sidebar"] {
  display: none;
}
.path-webform-submit-story .layout-main-wrapper .section,
.path-webform-share-archive .layout-main-wrapper .section,
.path-webform-become-contributor .layout-main-wrapper .section,
.path-webform-suggest-profile .layout-main-wrapper .section {
  display: flex;
  flex-wrap: wrap;
}
.path-webform-submit-story .layout-main-wrapper .section > *,
.path-webform-share-archive .layout-main-wrapper .section > *,
.path-webform-become-contributor .layout-main-wrapper .section > *,
.path-webform-suggest-profile .layout-main-wrapper .section > * {
  flex: 0 0 100%;
  max-width: 100%;
}

/* ==========================================================================
   /explore — home page theme replication
   Mirrors home: gold hero intro, white content sections with navy headings
   (cards, map, media, spotlight), dark storytelling sections (story, CTA),
   Playfair Display headings + Faustina body, gold/navy palette, home-style
   service-cards and primary buttons.
   ========================================================================== */

/* Editorial masthead intro, matching the /about magazine family:
   cream canvas, uppercase gold kicker, centred serif headline over a
   short gold rule, and a centred deck paragraph. */
body.path-explore #block-parallel-content {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: clamp(3rem, 7vw, 5.5rem) 6% clamp(1rem, 2.5vw, 2rem);
    text-align: center;
    clear: both;
    float: none;
    background: transparent;
}

/* Kicker for the hero headline. */
body.path-explore #block-parallel-content .views-row::before {
    content: "Explore";
    display: block;
    margin-bottom: 1.4rem;
    font-family: var(--font-sans);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.38em;
    text-transform: uppercase;
    color: var(--gold-primary);
}

#block-parallel-views-block-global-headers-block-1{
    width: 80%;
    box-sizing: border-box;
    padding: 5%;
    text-align: center;
    clear: both;
    margin: 0 auto;
}



body.path-explore #block-parallel-content .views-row {
  float: none;
  width: auto;
  text-align: center;
}
body.path-explore #block-parallel-content .views-field-field-for-section h2 {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
  margin: 0 0 22px;
}
body.path-explore #block-parallel-content .views-field-title a {
  display: inline-block;
  position: relative;
  max-width: 26ch;
  margin: 0 auto 3.2rem;
  padding-bottom: 2.4rem;
  font-family: var(--secondary-font);
  font-size: clamp(2.2rem, 4.6vw, 3.4rem);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-decoration: none;
  color: var(--gold);
}

/* Short gold rule beneath the masthead. */
body.path-explore #block-parallel-content .views-field-title a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 84px;
  height: 3px;
  transform: translateX(-50%);
  background: var(--gold-primary);
}

body.path-explore #block-parallel-content .views-field-title a:hover {
  color: var(--gold-dark);
}
body.path-explore #block-parallel-content .views-field-field-body p,
body.path-explore #block-parallel-content .views-field-field-for-section p {
  float: none;
  clear: both;
  max-width: 62ch;
  margin: 0 auto 14px;
  color: #35302a;
  font-size: 1.125rem;
  line-height: 1.7;
}

.views-field.views-field-field-body {
    float: left;
    width: 100%;
}

body.path-explore #block-parallel-content .views-field-field-for-section h3 {
  font-family: var(--secondary-font);
  font-size: 2rem;
  font-weight: 700;
  color: var(--gold);
  margin: 36px 0 14px;
}
body.path-explore #block-parallel-content .views-field-field-sub-header {
  color: var(--gold);
  font-size: 1.15rem;
  margin-top: 14px;
}
body.path-explore #block-parallel-content .views-field-field-button-1-link,
body.path-explore #block-parallel-content .views-field-field-button-2-link {
  display: inline-block;
  margin: 40px 8px 0;
}
body.path-explore #block-parallel-content .views-field-field-button-1-link a,
body.path-explore #block-parallel-content .views-field-field-button-2-link a {
  display: inline-block;
  padding: 14px 36px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
  border: 1px solid var(--gold);
  border-radius: 6px;
  background: transparent;
  color: var(--gold);
  transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}
body.path-explore #block-parallel-content .views-field-field-button-1-link a:hover,
body.path-explore #block-parallel-content .views-field-field-button-2-link a:hover {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--white);
  transform: translateY(-2px);
}

/* Full-width section layout for every explore view block */
body.path-explore #block-parallel-views-block-cards-block-1,
body.path-explore #block-parallel-views-block-story-listing-block-1,
body.path-explore #block-parallel-views-block-place-listing-block-1,
body.path-explore #block-parallel-views-block-frontpage-block-1,
body.path-explore #block-parallel-views-block-media-ct-listing-block-1,
body.path-explore #block-parallel-views-block-banner-block-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding: 20px 8% 10px;
}

body.path-explore #block-parallel-views-block-place-listing-block-1{
padding: 0px 0% 0px;
}


body.path-explore aside.sidebar_first.section,
body.path-explore aside.sidebar_second.section {
  float: none;
  width: 100%;
  padding: 0;
}

/* White content sections (navy headings, like home's white main area) */
body.path-explore #block-parallel-views-block-cards-block-1,
body.path-explore #block-parallel-views-block-place-listing-block-1,
body.path-explore #block-parallel-views-block-frontpage-block-1,
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 {
  float: left;

}


.not-front .sidebar_first{
  padding: 0%;
}


body.path-explore #block-parallel-views-block-cards-block-1{
  padding:0px;
  width: 80%;
  float: none;
  margin: 0 auto;
  clear: both;
}

/* Category tiles: home service-card layout in a responsive grid (white) */
body.path-explore #block-parallel-views-block-cards-block-1 > h2 {
  position: relative;
  font-family: var(--secondary-font);
  font-size: clamp(1.9rem, 3.4vw, 2.5rem);
  font-weight: 700;
  color: var(--gold);
  text-align: center;
  margin: 0 0 0rem;
  padding-bottom: 0rem;
  letter-spacing: -0.01em;
}

/* Kicker + gold rule, matching the magazine section headings. */
body.path-explore #block-parallel-views-block-cards-block-1 > h2::before {
  content: "Browse";
  display: block;
  margin-bottom: 1.1rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  color: var(--gold-primary);
}

body.path-explore #block-parallel-views-block-cards-block-1 > h2::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 84px;
  height: 3px;
  transform: translateX(-50%);
  background: var(--gold-primary);
  display: none;
}
body.path-explore #block-parallel-views-block-cards-block-1 [class*="js-view-dom-id"] {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
  max-width: 100%;
  margin: 0 auto;
  margin-bottom: 80px;
  padding-top: 5%;
}
body.path-explore #block-parallel-views-block-cards-block-1 .views-row {
  float: none;
  width: auto;
  box-sizing: border-box;
}
body.path-explore #block-parallel-views-block-cards-block-1 .views-field-title,
body.path-explore #block-parallel-views-block-cards-block-1 .views-field-field-sub-header {
  display: none;
}
body.path-explore #block-parallel-views-block-cards-block-1 .views-field-nothing,
body.path-explore #block-parallel-views-block-cards-block-1 .views-field-nothing .field-content {
  height: 100%;
}
body.path-explore #block-parallel-views-block-cards-block-1 .service-card {
  height: 90%;
  text-align: center;
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.4);
  border-radius: 8px;
  box-shadow: 0 24px 50px -34px rgba(31, 41, 55, 0.5);
}
body.path-explore #block-parallel-views-block-cards-block-1 .service-card-content {
  padding: 10px 22px;
}

/* Category tiles: 4 then 3 then 2 then 1 column on smaller screens */
@media (max-width: 1199.98px) {
  body.path-explore #block-parallel-views-block-cards-block-1 [class*="js-view-dom-id"] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 991.98px) {
  body.path-explore #block-parallel-views-block-cards-block-1 [class*="js-view-dom-id"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 575.98px) {
  body.path-explore #block-parallel-views-block-cards-block-1 [class*="js-view-dom-id"] {
    grid-template-columns: 1fr;
  }
}

/* Regions map section (white, navy heading, rounded gold-bordered map) */
.not-front .sidebar_first header,
body.path-explore #block-parallel-views-block-place-listing-block-1 header {
  position: relative;

  color: var(--gold);

  max-width: 840px;
  margin: 0 auto 0 5rem;
  /*
    font-family: var(--secondary-font);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  padding-bottom: 1.6rem;
  line-height: 1.2;
    text-align: center;
  letter-spacing: -0.01em;
  */
}


.not-front .sidebar_first{background: none;}
body.path-explore #block-parallel-views-block-place-listing-block-1 header::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 84px;
  height: 3px;
  transform: translateX(-50%);
  background: var(--gold-primary);
}

.not-front .sidebar_first .geofield-google-map,
body.path-explore #block-parallel-views-block-place-listing-block-1 .geofield-google-map {
  max-width: 100%;
  margin-left: auto;
  float: right;
  border: 2px solid rgba(201, 163, 106, 0.4);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 2px 2px 15px rgba(197, 164, 110, 0.15);
     margin-top: -25%;
}

.js-view-dom-id-b0d54cca51e50fd4090c6fadc1dc50b870b60fb7f28e4fb59c758617d5daeb61{
  float: left;
  width: 100%;
}

.not-front .sidebar_first .views-row.revealed.delay-1,
#block-parallel-views-block-place-listing-block-1 header .views-row.delay-3.revealed.delay-1{
      width: 45%;
      float: left;
      background: var(--bg-card);
    border: 1px solid rgba(197, 164, 110, 0.15);
    border-radius: 14px;
    padding: 120px 40px 20px;
        z-index: 100;
    position: relative;
     
}






/* Story feature (dark section, home track-record styling) */
body.path-explore #block-parallel-views-block-story-listing-block-1 {
  float: left;

}
body.path-explore #block-parallel-views-block-story-listing-block-1 .track-record-single-content-block {
  background: transparent;
}


.global .slick.blazy.slick--view.slick--view--frontpage.slick--view--frontpage--block-1.slick--view--frontpage-block-block-1.slick--optionset--_-in-1.is-blazy.slick--initialized{
      float: left;
    width: 55%;
}


.global footer {
    float: left;
    width: 40%;
    text-align: left;
    padding-left: 40px;
}


/* ==========================================================================
   Heritage Spotlight — /explore featured heritage carousel
   Full-width editorial card: image on the left, title + description on the
   right, gold accents, custom arrows/dots, and a stacked mobile layout.
   ========================================================================== */
body.path-explore #block-parallel-views-block-frontpage-block-1 {
  float: none;
  width: 100%;
  clear: both;
  padding: clamp(3.5rem, 7vw, 6rem) 6%;
  background: linear-gradient(180deg, #ffffff 0%, #fbf8f2 100%);
}

/* Section kicker (the view itself has no visible header). */
body.path-explore #block-parallel-views-block-frontpage-block-1::before {
  content: "Heritage Spotlight";
  display: block;
  margin: 0 0 1.4rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.34em;
  text-align: center;
  text-transform: uppercase;
  color: var(--gold-primary);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .slick,
body.path-explore #block-parallel-views-block-frontpage-block-1 .slick__slider {
  float: none;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

/* Each slide is a magazine-style split card. */
body.path-explore #block-parallel-views-block-frontpage-block-1 .slick__slide {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr) auto;
  grid-template-areas:
    "media title"
    "media description"
    "media action";
  column-gap: clamp(1.75rem, 4.5vw, 3.75rem);
  row-gap: 1rem;
  height: clamp(540px, 56vw, 600px);
  padding: clamp(1.25rem, 3vw, 2.25rem);
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.35);
  border-radius: 22px;
  box-shadow: 0 22px 60px rgba(31, 41, 55, 0.1);
}

/* Legacy/empty fields are not used by this layout. */
body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-image,
body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-body {
  display: none;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-place-images {
  grid-area: media;
  min-width: 0;
  margin: 0;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-place-images .field-content,
body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-place-images a {
  display: block;
  height: 100%;
  overflow: hidden;
  border-radius: 16px;
  background: #f4efe7;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .slick__slide img {
  display: block;

  border-radius: 16px;
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-place-images:hover img {
  transform: scale(1.025);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-title {
  grid-area: title;
  align-self: end;
  margin: 0;
  padding: 0;
  text-align: left;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-title a {
  display: inline-block;
  font-family: var(--secondary-font);
  font-size: clamp(1.85rem, 3vw, 2.65rem);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -0.01em;
  text-decoration: none;
  color: var(--gold);
  transition: color var(--transition);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-title a:hover {
  color: var(--gold-primary);
}

/* Short gold rule under the title. */
body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-title::after {
  content: "";
  display: block;
  width: 62px;
  height: 3px;
  margin-top: 1.1rem;
  background: var(--gold-primary);
  border-radius: 999px;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description {
  grid-area: description;
  min-height: 0;
  margin: 0;
  padding-right: 0.65rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(201, 163, 106, 0.6) transparent;
  text-align: left;
  color: var(--text-secondary);
  font-size: 1rem;
  line-height: 1.72;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description::-webkit-scrollbar {
  width: 5px;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description::-webkit-scrollbar-thumb {
  background: rgba(201, 163, 106, 0.6);
  border-radius: 999px;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description::-webkit-scrollbar-track {
  background: transparent;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description p {
  margin: 0 0 0.9rem;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description p:first-child {
  color: var(--text-primary);
  font-size: 1.04rem;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description ul {
  margin: 0.9rem 0 0;
  padding: 0;
  list-style: none;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description li {
  position: relative;
  margin-bottom: 0.6rem;
  padding-left: 1.15rem;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description li:last-child {
  margin-bottom: 0;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description li::before {
  content: "";
  position: absolute;
  top: 0.72em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--gold-primary);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description strong {
  color: var(--gold);
  font-weight: 700;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-button-1-link {
  grid-area: action;
  align-self: start;
  margin: 0;
  text-align: left;
}

/* Only reserve space for the action row when the link actually exists. */
body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-button-1-link:not(:has(a)) {
  display: none;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-button-1-link a {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-top: 0.35rem;
  padding: 0.85rem 1.7rem;
  font-family: var(--font-sans);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--white);
  background: var(--gold);
  border: 1px solid var(--gold);
  border-radius: 999px;
  transition: background var(--transition), border-color var(--transition), color var(--transition), transform var(--transition);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-button-1-link a::after {
  content: "\2192";
  font-size: 1rem;
  line-height: 1;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-button-1-link a:hover {
  background: var(--gold-primary);
  border-color: var(--gold-primary);
  color: var(--gold);
  transform: translateY(-2px);
}

/* Carousel controls. */
body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-prev,
body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-next {
  z-index: 1000;
  width: 44px;
  height: 44px;
  font-size: 0;
  background: rgba(255, 255, 255, 0.94);
  color: var(--gold);
  border: 1px solid rgba(201, 163, 106, 0.55);
  box-shadow: 0 8px 24px rgba(31, 41, 55, 0.18);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-prev::before,
body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-next::before {
  font-size: 1.55rem;
  line-height: 1;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-prev::before {
  content: "\2039";
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-next::before {
  content: "\203A";
}

/* Full-width centered carousel arrows */
body.path-explore #block-parallel-views-block-frontpage-block-1.slick--view--frontpage-block-block-1.is-blazy.slick--initialized .slick-prev,
body.path-explore #block-parallel-views-block-frontpage-block-1.slick--view--frontpage-block-block-1.is-blazy.slick--initialized .slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1000;
  width: 44px;
  height: 44px;
  font-size: 0;
  background: rgba(255, 255, 255, 0.94);
  color: var(--gold);
  border: 1px solid rgba(201, 163, 106, 0.55);
  box-shadow: 0 8px 24px rgba(31, 41, 55, 0.18);
}

/* Left arrow: position inside the left edge of the 99% centered container */
.body.path-explore #block-parallel-views-block-frontpage-block-1.slick--view--frontpage-block-block-1.is-blazy.slick--initialized .slick-prev {
  left: 15px;
}

/* Right arrow: position inside the right edge of the 99% centered container */
.body.path-explore #block-parallel-views-block-frontpage-block-1.slick--view--frontpage-block-block-1.is-blazy.slick--initialized .slick-next {
  right: 15px;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-prev:hover,
body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-next:hover {
  background: var(--gold);
  color: var(--white);
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-dots {
  margin-top: 1.5rem;
}

@media (max-width: 899.98px) {
  body.path-explore #block-parallel-views-block-frontpage-block-1 {
    padding: 3rem 5%;
  }

  body.path-explore #block-parallel-views-block-frontpage-block-1 .slick__slide {
    display: block;
    height: auto;
    padding: 1rem;
    border-radius: 18px;
  }

  /* Let the carousel height follow the active slide on small screens, so a
     short card does not leave a large empty gap below the section. */
  body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-initialized .slick__slide:not(.slick-current) {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
  }

  body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description {
    padding-right: 0;
    overflow: visible;
  }

  body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-place-images {
    margin-bottom: 1.4rem;
  }

  body.path-explore #block-parallel-views-block-frontpage-block-1 .slick__slide img {
    height: auto;
    min-height: 0;
    aspect-ratio: 16 / 10;
  }

  body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-title,
  body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-description,
  body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-button-1-link {
    text-align: left;
  }

  body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-prev,
  body.path-explore #block-parallel-views-block-frontpage-block-1 .slick-next {
    /* Slick sets display:inline-block inline, so this needs !important. */
    display: none !important;
  }
}

/* Media articles (white, 2-column grid, navy Playfair titles) */
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 [class*="js-view-dom-id"] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  max-width: 1240px;
  margin: 0 auto;
}
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 .views-row {
  float: none;
  width: auto;
  box-sizing: border-box;
}
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 article.node--view-mode-card {
  height: 100%;
  color: var(--text-secondary);
  background: #ffffff;

  border-radius: 14px;
  padding: 24px;
  /*
  box-shadow: 2px 2px 15px rgba(197, 164, 110, 0.15);
    border: 1px solid rgba(201, 163, 106, 0.4);*/
}
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 article.node--view-mode-card > div {
  display: flex;
  flex-direction: column;
}
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 article.node--view-mode-card img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  object-fit: cover;
}
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 article.node--view-mode-card > div > div:nth-child(2) a {
  font-family: var(--secondary-font);
  font-size: 1.75rem;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0;
  word-spacing: 0;
  color: var(--gold);
  text-decoration: none;
}
body.path-explore #block-parallel-views-block-media-ct-listing-block-1 article.node--view-mode-card > div > div:nth-child(2) a:hover {
  color: var(--gold-dark);
}
body.path-explore #block-parallel-views-block-banner-block-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding: 90px 8% 100px;
  background: #0e0e10;
  text-align: center;
}
body.path-explore #block-parallel-views-block-banner-block-block-2 .views-row {
  float: none;
  text-align: center;
}
body.path-explore #block-parallel-views-block-banner-block-block-2 h1 {
  display: none;
}
body.path-explore #block-parallel-views-block-banner-block-block-2 .views-field-title {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--primary);
  margin-bottom: 18px;
}
body.path-explore #block-parallel-views-block-banner-block-block-2 h3 {
  font-family: var(--secondary-font);
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--white);
  margin: 0 0 20px;
}
body.path-explore #block-parallel-views-block-banner-block-block-2 p {
  max-width: 560px;
  margin: 0 auto 14px;
  color: #b8b0a8;
}
body.path-explore #block-parallel-views-block-banner-block-block-2 .field-content > p:last-of-type strong {
  display: inline-block;
  margin-top: 26px;
  padding: 14px 36px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 4px;
  background: var(--primary);
  color: var(--gold);
}


/* ==========================================================================
   /learn — home page theme replication (mirrors /explore)
   Gold hero intro, white cards/media sections, dark knowledge sections,
   Playfair Display headings + Faustina body, gold/navy palette.
   ========================================================================== */
body.path-learn #page-wrapper {
  background: #FFF;
}

#body-inner{width: 100%;}
body.path-learn #main-wrapper {
  background: var(--bg-deep);
}
body.path-learn #main-wrapper .row.row-offcanvas.row-offcanvas-left.clearfix {
  background: none;
}

/* Gold hero-style intro */
body.path-learn #block-parallel-content {
  float: right;
  width: 60%;
  box-sizing: border-box;

  text-align: center;

}

body.path-learn #block-parallel-views-block-cards-block-2{
  clear: both;
  width: 100%;
}


body.path-learn #block-parallel-content .views-row {
  float: none;
  width: auto;
}
body.path-learn #block-parallel-content .views-field-field-for-section h1 {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
  margin: 0 0 22px;
}
body.path-learn #block-parallel-content .views-field-title a {
  display: inline-block;
  font-family: var(--secondary-font);
  font-size: clamp(2.4rem, 5vw, 3rem);
  font-weight: 700;
  line-height: 1.15;
  color: var(--gold);
  text-decoration: none;
  margin-bottom: 24px;
}
body.path-learn #block-parallel-content .views-field-title a:hover {
  color: var(--gold-dark);
}
body.path-learn #block-parallel-content .views-field-field-body p,
body.path-learn #block-parallel-content .views-field-field-for-section p {
  max-width: 640px;
  margin: 0 auto 14px;
  color: var(--gold);
  font-size: 1.125rem;
  line-height: 1.7;
}
body.path-learn #block-parallel-content .views-field-field-for-section h3 {
  font-family: var(--secondary-font);
  font-size: 2rem;
  font-weight: 700;
  color: var(--gold);
  margin: 36px 0 14px;
}
body.path-learn #block-parallel-content .views-field-field-sub-header {
  color: var(--gold);
  font-size: 1.15rem;
  margin-top: 14px;
}
body.path-learn #block-parallel-content .views-field-field-button-1-link,
body.path-learn #block-parallel-content .views-field-field-button-2-link {
  display: inline-block;
  margin: 36px 8px 0;
}
body.path-learn #block-parallel-content .views-field-field-button-1-link a,
body.path-learn #block-parallel-content .views-field-field-button-2-link a {
  display: inline-block;
  padding: 14px 36px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
  border: 1px solid var(--gold);
  border-radius: 4px;
  background: var(--gold);
  color: var(--bg-deep);
  transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
body.path-learn #block-parallel-content .views-field-field-button-1-link a:hover,
body.path-learn #block-parallel-content .views-field-field-button-2-link a:hover {
  background: var(--gold-dark);
  border-color: var(--gold-dark);
  transform: translateY(-2px);
}

/* Full-width section layout for learn view blocks */
body.path-learn aside.sidebar_first.section,
body.path-learn aside.sidebar_second.section,
body.path-learn aside.container.clearfix {
  float: none;
  width: 100%;
  padding: 0;
}

/* Category tiles: home service-card layout in a responsive grid (white) */
body.path-learn #block-parallel-views-block-cards-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding: 90px 6% 100px;
  background: #ffffff;
}
body.path-learn #block-parallel-views-block-cards-block-2 [class*="js-view-dom-id"] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 28px;
  max-width: 1240px;
  margin: 0 auto;
}
body.path-learn #block-parallel-views-block-cards-block-2 .views-row {
  float: none;
  width: auto;
  box-sizing: border-box;
}
body.path-learn #block-parallel-views-block-cards-block-2 .views-field-nothing,
body.path-learn #block-parallel-views-block-cards-block-2 .views-field-nothing .field-content {
  height: 100%;
}
body.path-learn #block-parallel-views-block-cards-block-2 .service-card {
  height: 100%;
  text-align: center;
  background: #ffffff;
}
body.path-learn #block-parallel-views-block-cards-block-2 .service-card-content {
  padding: 10px 22px;
}
body.path-learn #block-parallel-views-block-cards-block-2 .service-card-text {
  color: var(--text-secondary);
}

/* Empty profile carousel renders nothing visible — remove it */
body.path-learn #block-parallel-views-block-ux-blocks-block-1 {
  display: none;
}

/* Knowledge & Excellence + Contribute Knowledge (dark sections) */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding: 90px 8% 100px;
  background: #0e0e10;
  text-align: center;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section > .field-content > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section > .field-content > ul > li {
  margin: 0 0 70px;
  padding: 0;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section > .field-content > ul > li:last-child {
  margin-bottom: 0;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section h1 {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--primary);
  margin: 0 0 18px;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section h3 {
  font-family: var(--secondary-font);
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--white);
  margin: 0 0 20px;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section p {
  max-width: 620px;
  margin: 0 auto 14px;
  color: #b8b0a8;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section p strong {
  color: var(--white);
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section ul ul {
  list-style: none;
  margin: 20px auto 0;
  padding: 0;
  max-width: 480px;
  text-align: left;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section ul ul li {
  padding: 5px 0 5px 24px;
  position: relative;
  color: #b8b0a8;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section ul ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--primary);
  transform: translateY(-50%);
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section > .field-content > ul > li:last-child > p:last-of-type strong {
  display: inline-block;
  margin-top: 26px;
  padding: 14px 36px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 4px;
  background: var(--primary);
  color: var(--gold);
}

/* Media articles (white section) */
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding: 90px 6% 100px;
  background: #ffffff;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 [class*="js-view-dom-id"] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  max-width: 1240px;
  margin: 0 auto;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 .views-row {
  float: none;
  width: auto;
  box-sizing: border-box;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser {
  width: 100%;
  height: 100%;
  color: var(--text-secondary);
  background: #ffffff;

  border-radius: 14px;
  padding: 24px;

}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser > div {
  display: flex;
  flex-direction: column;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  object-fit: cover;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser h2 {
  font-family: var(--secondary-font);
  font-size: 1.75rem;
  font-weight: 700;
  color: var(--gold);
  margin: 18px 0 10px;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser h2 a {
  color: var(--gold);
  text-decoration: none;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser h2 a:hover {
  color: var(--gold-dark);
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser .addtoany_kit {
  display: none;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser .links {
  margin-top: 18px;
  padding: 0;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser .links li {
  display: inline-block;
  list-style: none;
  margin: 0;
  padding: 0;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser .links li a {
  display: inline-block;
  color: var(--primary);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser .links li a:hover {
  color: var(--gold-dark);
}
body.path-learn #block-parallel-views-block-media-ct-listing-block-2 article.node--view-mode-teaser .links li:last-child {
  display: none;
}

/* Call to Participate CTA (dark, gold button) */
body.path-learn #block-parallel-views-block-banner-block-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding: 90px 8% 100px;
  background: #0e0e10;
  text-align: center;
}
body.path-learn #block-parallel-views-block-banner-block-block-2 .views-row {
  float: none;
  text-align: center;
}
body.path-learn #block-parallel-views-block-banner-block-block-2 h1 {
  display: none;
}
body.path-learn #block-parallel-views-block-banner-block-block-2 .views-field-title {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--primary);
  margin-bottom: 18px;
}
body.path-learn #block-parallel-views-block-banner-block-block-2 h3 {
  font-family: var(--secondary-font);
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--white);
  margin: 0 0 20px;
}
body.path-learn #block-parallel-views-block-banner-block-block-2 p {
  max-width: 560px;
  margin: 0 auto 14px;
  color: #b8b0a8;
}
body.path-learn #block-parallel-views-block-banner-block-block-2 .field-content > p:last-of-type strong {
  display: inline-block;
  margin-top: 26px;
  padding: 14px 36px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 4px;
  background: var(--primary);
  color: var(--gold);
}

/* ==========================================================================
   /learn - "Knowledge & Excellence | Contribute" block (ux-blocks, block 2)
   50% / 50% two-column split + typography
   ========================================================================== */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding: 80px 8% 90px;
  background: #fff;
  color: var(--text-secondary);
  font-family: var(--font-sans);
  font-size: 1.0625rem;
  line-height: 1.75;
}

/* --- 50% / 50% columns --------------------------------------------------- */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .slick__slide {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  max-width: 80%;
  margin: 0 auto;
}

body.path-learn #block-parallel-views-block-ux-blocks-block-2 .slick__slide > .views-field:first-child {
  padding-left: 0;
  width: 50%;
  padding-right: 5%;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .slick__slide > .views-field:last-child {
  padding-right: 0;
  border-left: 1px solid rgba(31, 41, 55, 0.15);
}


.webform-submission-form .js-webform-type-checkbox
 {
    float: left;
    margin: 10px 10px 0px;
}
.webform-submission-form .webform-section-wrapper fieldset {
    float: left;
    width: 50%;
}
.webform-submission-form .webform-section-wrapper {    width: 80%;
    margin: 0 auto;
}

.webform-submission-form  .js-form-itembkkk {

width: 50%;
clear: both;
margin: 0 auto;
}

section#edit-personal-information,
section#edit-css-wrapper{
  width: 80%;
  margin: 0 auto;
  clear: both;
  text-align: left;
}

section#edit-personal-information .form-item{
float: left;
width: 50%;
margin-left: 20px;
}

div#edit-actions{
  float: left;
  width: 100%;
}


body.path-webform-become-contributor.not-front .category-card.views-row {
    width: 50%;
    float: none;
    margin: 0 auto;
    padding: 0px 0px 40px;
}



/* inner wrappers stack as blocks */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .field-content.left,
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .field-content.right {
  display: block;
  height: 100%;
}
/* the three sub-sections (body / section / view) sit one under the other at
   their natural height. They must NOT be height:100% - that made each one as
   tall as the whole column, so the column ran ~1200px past this section and
   the "Knowledge & Excellence" text and chips were painted over the featured
   person card and the media grid below. */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.body,
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.section,
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.view {
  display: block;
  height: auto;
}

/* --- Typography ----------------------------------------------------------- */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 h1 {
  font-family: var(--secondary-font);
  font-size: clamp(1.85rem, 2.6vw, 2.5rem);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.01em;
  color: var(--gold);
  margin: 0 0 0.45em;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 h3 {
  font-family: var(--font-sans);
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--primary);
  margin: 0 0 1rem;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 h3 strong {
  font-weight: inherit;
  color: inherit;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 p {
  margin: 0 0 0.9rem;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 p strong,
body.path-learn #block-parallel-views-block-ux-blocks-block-2 li strong {
  color: var(--text-primary);
  font-weight: 600;
}

/* outer wrapper lists carry no markers; inner lists keep theirs */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.section > ul,
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .field-content.right > ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .field-content.right ul ul {
  margin: 0 0 1rem;
  padding-left: 1.35rem;
  list-style: disc;
  color: var(--text-secondary);
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .field-content.right ul ul li {
  margin-bottom: 0.35rem;
  list-style: none;
}

/* knowledge-category tag chips (left column link list) */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.view {
  margin-top: 1.5rem;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.view .item-list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.view li {
  list-style: none;
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.view a {
  display: inline-block;
  padding: 6px 16px;
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--primary);
  border: 1px solid var(--primary);
  border-radius: 999px;
  transition: background var(--transition), color var(--transition);
}
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .item.view a:hover {
  background: var(--primary);
  color: #fff !important;
}

/* "[Submit a Story]" call to action (right column) */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 .field-content.right > ul > li > p:last-child strong {
  display: inline-block;
  margin-top: 14px;
  padding: 13px 34px;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 4px;
  background: var(--primary);
  color: var(--gold);
}

/* --- Stack on tablet/mobile ---------------------------------------------- */
@media (max-width: 991.98px) {
  body.path-learn #block-parallel-views-block-ux-blocks-block-2 {
    padding: 56px 6% 64px;
  }
  body.path-learn #block-parallel-views-block-ux-blocks-block-2 .slick__slide > .views-field {
    flex: 0 0 100%;
    width: 100%;
    padding: 0;
  }
  body.path-learn #block-parallel-views-block-ux-blocks-block-2 .slick__slide > .views-field:last-child {
    border-left: 0;
    margin-top: 2.5rem;
    padding-top: 2.25rem;
    border-top: 1px solid rgba(31, 41, 55, 0.15);
  }
}

/* ==========================================================================
   /learn - one shared section frame
   --------------------------------------------------------------------------
   The bands on this landing page are assembled from three regions:
   #main-wrapper (the 80% ".not-front" column), .featured-bottom (a Bootstrap
   container) and the site footer. Because #main-wrapper was painted gold and
   carried its 5rem vertical padding, while .featured-bottom stretched to the
   wider Bootstrap container and the sidebar block rode 13px to the left, the
   gold hero, tile grid, white two-column band, featured slide, media grid and
   the dark "Call to Participate" CTA all started at a different x - with gold
   showing down the sides of the white bands.

   The rules below put every band back on the same column and the same gutter
   the rest of the site uses (/explore, the node pages, the footer). Colours,
   type, service-cards and CTAs are untouched - only the frame changes.
   ========================================================================== */

/* 1. A white page column: the hero paints its own gold band (like the node
      heroes), and no 5rem gold gap above it or between the two-column band
      and the featured slide. */
body.path-learn #main-wrapper {
  background: #fff;
  padding-top: 0;
  padding-bottom: 0;
}

/* 2. The lower bands sit in a Bootstrap container that ignores the 80%
      column and its 1.5rem inset - give it both, so its edges match the
      hero/cards above and the footer below. */
body.path-learn .featured-bottom {
  padding: 0 !important;
}
body.path-learn .featured-bottom > aside.container.clearfix {
  float: none;
  width: 100%;
  margin: 0 auto;

  box-sizing: border-box;
}

/* 3. The two-column band rides ~13px left of the content column - put it
      back on the column. */
body.path-learn aside.sidebar_second.section,
body.path-learn aside.sidebar_first.section {
  margin: 0 !important;
}

/* 4. One gutter for every band (each band keeps its own vertical rhythm). */

body.path-learn #block-parallel-views-block-cards-block-2,
body.path-learn #block-parallel-views-block-ux-blocks-block-2,
body.path-learn #block-parallel-views-block-media-ct-listing-block-2,
body.path-learn #block-parallel-views-block-banner-block-block-2 {
  float: none;
  width: 100%;
  box-sizing: border-box;
  padding-left: 6% !important;
  padding-right: 6% !important;
}


body.path-learn #block-parallel-views-block-frontpage-block-2{

}


/* ==========================================================================
   Sub-page typography - copies the front-page type system
   (.hero-heading / .section-title = Playfair Display bold,
    .section-summary / .hero-summary = 18px, line-height 1.6)
   Applied only to unclassed content tags so component styles
   (.service-card-title, .track-record-*, .card-title, ...) are untouched.
   ========================================================================== */
body.not-front #block-parallel-content :is(h1, h2, h3, h4, h5, h6):not([class]) {
  font-family: var(--secondary-font);
  font-weight: 700;
  color: var(--gold);
}
body.not-front #block-parallel-content h1:not([class]) {
  font-size: clamp(2.25rem, 4vw, 3.25rem);
  line-height: 1.15;
  margin: 0 0 24px;
}
body.not-front #block-parallel-content h2:not([class]) {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  line-height: 1.2;
  margin: 0 0 16px;
}
body.not-front #block-parallel-content h3:not([class]) {
  font-size: clamp(1.375rem, 2.4vw, 1.75rem);
  line-height: 1.25;
  margin: 0 0 14px;
}
body.not-front #block-parallel-content h4:not([class]) { font-size: 1.35rem; }
body.not-front #block-parallel-content h5:not([class]) { font-size: 1.125rem; }
body.not-front #block-parallel-content h6:not([class]) {
  font-size: 1rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* Paragraphs and lists - same rhythm as .section-summary / .hero-summary */
body.not-front #block-parallel-content p:not([class]),
body.not-front #block-parallel-content li:not([class]) {
  font-size: 18px;
  line-height: 1.6;
}
body.not-front #block-parallel-content p:not([class]) {
  /* margin: 0 0 20px; */
}
body.not-front #block-parallel-content ul:not([class]),
body.not-front #block-parallel-content ol:not([class]) {
  margin: 0 0 20px;
  padding-left: 1.5rem;
}
body.not-front #block-parallel-content li:not([class]) {
  margin-bottom: 0.5rem;
}

/* Quotes, emphasis and links inside content */
body.not-front #block-parallel-content blockquote:not([class]) {
  margin: 0 0 20px;
  padding-left: 20px;
  border-left: 3px solid var(--primary);
  font-family: var(--secondary-font);
  font-style: italic;
  font-size: 20px;
}
body.not-front #block-parallel-content p:not([class]) strong,
body.not-front #block-parallel-content li:not([class]) strong {
  color: var(--text-primary);
  font-weight: 600;
}
body.not-front #block-parallel-content p:not([class]) a,
body.not-front #block-parallel-content li:not([class]) a {
  color: var(--primary);
  text-decoration: underline;
  text-decoration-color: rgba(201, 163, 106, 0.5);
  text-underline-offset: 3px;
  transition: color var(--transition), text-decoration-color var(--transition);
}
body.not-front #block-parallel-content p:not([class]) a:hover,
body.not-front #block-parallel-content li:not([class]) a:hover {
  color: var(--gold-dark) !important;
  text-decoration-color: var(--gold-dark);
}

/* Responsive scaling - mirrors the front-page breakpoints */
@media (max-width: 1199.98px) {
  body.not-front #block-parallel-content h1:not([class]) { font-size: 3rem; }
}
@media (max-width: 991.98px) {
  body.not-front #block-parallel-content h1:not([class]) { font-size: 2.25rem; }
}
@media (max-width: 767.98px) {
  body.not-front #block-parallel-content h1:not([class]) { font-size: 1.75rem; }
  body.not-front #block-parallel-content h2:not([class]) { font-size: 1.5rem; }
  body.not-front #block-parallel-content p:not([class]),
  body.not-front #block-parallel-content li:not([class]) { font-size: 16px; }
}

/* ==========================================================================
   Header search box — revealed after the page loads
   --------------------------------------------------------------------------
   A small inline form: a pill-shaped magnifier input plus a circular icon
   submit button. The whole block fades and slides in shortly after load, so
   the icon and the input box are visible without any interaction.
   NOTE: pseudo-elements are not rendered on <input> elements, so the button
   icon is drawn with a background image instead of ::after.
   ========================================================================== */
#block-parallel-searchform {
  position: relative;
  animation: search-reveal 0.55s cubic-bezier(0.4, 0, 0.2, 1) 0.3s both;
}
@keyframes search-reveal {
  from { opacity: 0; transform: translateX(18px); }
  to   { opacity: 1; transform: translateX(0); }
}

#block-parallel-searchform #search-block-form {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  margin: 0;
}
#block-parallel-searchform .form-item {
  margin: 0;
}

/* ------------------------------- Input field ------------------------------ */
#block-parallel-searchform #edit-keys {
  width: clamp(150px, 24vw, 300px);
  height: calc(var(--header-h, 44px) / 2);
  padding: 0 calc(var(--header-h, 44px) * 0.12);
  border: 1px solid rgba(201, 163, 106, 0.18);
  border-radius: calc(var(--header-h, 44px) / 4);
  background:rgba(201, 163, 106, 0.18);
  color: var(--white);
  font-family: var(--font-sans);
  font-size: clamp(13px, calc(var(--header-h, 44px) * 0.16), 15px);
  line-height: 1.2;
  outline: none;
  transition: border-color var(--transition), box-shadow var(--transition);
}
#block-parallel-searchform #edit-keys::placeholder {
  color: rgba(255, 255, 255, 0.5);
  font-style: italic;
}
#block-parallel-searchform #edit-keys:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(201, 163, 106, 0.2);
}

/* ---------------------------- Icon submit button -------------------------- */
#block-parallel-searchform #edit-submit {
  width: calc(var(--header-h, 44px) / 2);
  height: calc(var(--header-h, 44px) / 2);
  padding: 0;
  flex-shrink: 0;
  border: 1px solid var(--primary);
  border-radius: 50%;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a36a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: clamp(9px, 22%, 13px);
  color: transparent;
  font-size: 0;
  line-height: 0;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
  transition: background-color var(--transition), border-color var(--transition);
}
#block-parallel-searchform #edit-submit:hover,
#block-parallel-searchform #edit-submit:focus {
  background-color: rgba(201, 163, 106, 0.18);
  border-color: var(--primary);
  outline: none;
}

@media (prefers-reduced-motion: reduce) {
  #block-parallel-searchform {
    animation: none;
  }
}


/* ==========================================================================
   Explore page — geofield map 40% taller (450px → 630px)
   ========================================================================== */
.geofield-google-map {
  height: 630px !important;
}

/* ==========================================================================
   Explore page — text block overlaps map on the left
   ========================================================================== */
#block-parallel-views-block-place-listing-block-1 {
  position: relative;
  overflow: hidden;
}
#block-parallel-views-block-place-listing-block-1 header {
  /*position: absolute;
  left: 0;
  bottom: 40px;
  z-index: 10;
  width: 42%;
  padding: 28px 32px;
  background: rgba(26, 28, 28, 0.92);
  backdrop-filter: blur(8px);
  border-radius: 0 12px 12px 0;
  border-left: 3px solid var(--primary);*/
}
#block-parallel-views-block-place-listing-block-1 header h2 {
  font-family: var(--secondary-font);
  font-size: clamp(1.1rem, 2vw, 1.5rem);
  font-weight: 700;
  color: var(--white);
  margin: 0 0 6px;
  line-height: 1.2;
}
#block-parallel-views-block-place-listing-block-1 header h3 {
  font-family: var(--secondary-font);
  font-size: clamp(0.95rem, 1.6vw, 1.2rem);
  font-weight: 600;
  color: var(--primary);
  margin: 0 0 12px;
  line-height: 1.3;
}
#block-parallel-views-block-place-listing-block-1 header p {
  color: rgba(255,255,255,0.8);
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 8px;
}
#block-parallel-views-block-place-listing-block-1 header p:last-child {
  margin-bottom: 0;
}

/* ==========================================================================
   People page — same hover animation as the front-page slick carousel
   (.slick__slide img scales 200% on hover, card rises above neighbors).
   The people list uses .mix_item.views-row instead of .slick__slide, so the
   exact same rules are mirrored for it here.
   ========================================================================== */
body.path-people #block-parallel-content .mix_item.views-row {
  position: relative;
}
body.path-people #block-parallel-content .mix_item.views-row img {
  display: block;
  width: 100%;
  height: auto;
  transform-origin: center center;
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
body.path-people #block-parallel-content .mix_item.views-row:hover {
  z-index: 5;
}
body.path-people #block-parallel-content .mix_item.views-row:hover img {
  transform: scale(2);
}

/* Let the zoomed image escape the card without being clipped, so it overlaps
   its neighbours exactly like the front-page carousel slides do. */
body.path-people #block-parallel-content .view-person-listing,
body.path-people #block-parallel-content .views-infinite-scroll-content-wrapper,
body.path-people #block-parallel-content .mix_item.views-row,
body.path-people #block-parallel-content article.node--view-mode-card,
body.path-people #block-parallel-content article.node--view-mode-card > div {
  overflow: visible;
}
body.path-people #block-parallel-content article.node--view-mode-card {
  position: relative;
}

body.path-people  .field.field--name-field-full-name.field--type-text.field--label-hidden.field__item, 
body.path-people  .field.field--name-field-occupation.field--type-text.field--label-hidden.field__items {
    display: none;
}


/* ==========================================================================
   Hero image — grayscale to normal, center to edges (creative bloom)
   Base image stays grayscale. A color clone blooms outward from the center
   with an organic (non-linear) rhythm, sharpening from a soft blur as it
   fills, while a sonar-like light ring pulses out and fades. Loops.
   ========================================================================== */
.hero-image-block .hero-img-reveal {
  position: relative;
  width: 100%;
  height: inherit;
  overflow: hidden;
}
.hero-image-block .hero-img-reveal .hero-img-filter {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
  filter: blur(6px);
  pointer-events: none;
  border-radius: 80px;
  opacity: 0;
  will-change: opacity, clip-path, filter;
  clip-path: circle(0% at 50% 50%);
  animation: hero-color-wipe 12s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-place-images .field-content a,
body.path-explore #block-parallel-views-block-frontpage-block-1 .views-field-field-place-images .field-content{
    background:none !important;
}

#block-parallel-views-block-frontpage-block-1 footer a,
#block-parallel-views-block-frontpage-block-1 footer {
    width: 100%;
    text-align: center;
        color: var(--primary);
        margin-top:15px;
}

.path-people #block-parallel-content{
    margin-top:-60px;
}
.form-item-filter-fields-of-excellence label{display:none;}
.form-item-filter-fields-of-excellence select{max-width: 250px;
    float: right;}
    
.filter_wrapper{
    float:left;
    width:90%;
    margin-bottom:40px;
}

.hero-image-block .hero-img-reveal .hero-img-halo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 3;
  opacity: 0;
  background: radial-gradient(circle at 50% 50%,
    transparent 0%,
    rgba(255, 244, 214, 0) 18%,
    rgba(255, 244, 214, 0.28) 24%,
    rgba(255, 244, 214, 0.12) 34%,
    transparent 42%);
  clip-path: circle(0% at 50% 50%);
  animation: hero-halo-pulse 12s ease-out infinite;
}
@keyframes hero-color-wipe {
  0% {
    opacity: 0;
    clip-path: circle(0% at 50% 50%);
    filter: blur(6px);
  }
  10% {
    opacity: 1;
    clip-path: circle(12% at 50% 50%);
    filter: blur(4px);
  }
  22% {
    clip-path: circle(30% at 50% 50%);
    filter: blur(2px);
  }
  40% {
    clip-path: circle(68% at 50% 50%);
    filter: blur(0.5px);
  }
  54% {
    clip-path: circle(104% at 50% 50%);
    filter: blur(0);
  }
  66% {
    opacity: 1;
    clip-path: circle(104% at 50% 50%);
  }
  78% {
    opacity: 0;
    clip-path: circle(104% at 50% 50%);
  }
  100% {
    opacity: 0;
    clip-path: circle(0% at 50% 50%);
    filter: blur(6px);
  }
}
@keyframes hero-halo-pulse {
  0% {
    opacity: 0;
    clip-path: circle(0% at 50% 50%);
  }
  6% {
    opacity: 0.85;
  }
  14% {
    clip-path: circle(34% at 50% 50%);
    opacity: 0.75;
  }
  23% {
    clip-path: circle(68% at 50% 50%);
    opacity: 0.5;
  }
  31% {
    clip-path: circle(94% at 50% 50%);
    opacity: 0.2;
  }
  38% {
    clip-path: circle(104% at 50% 50%);
    opacity: 0;
  }
  100% {
    clip-path: circle(104% at 50% 50%);
    opacity: 0;
  }
}

/* ==========================================================================
   Front page — Concept listing block (service cards) horizontally centered
   The views rows are floats with no clearfix parent, which collapsed the
   block to 0px height and broke the scroll overlap. The wrapper is matched
   by its js-view-dom-id *class* (not an id), and it becomes a centered flex
   row so the cards line up side by side.
   ========================================================================== */
#block-parallel-views-block-concept-listing-block-1 {
  /* Contain the floated cards so the block reports a real height. */
  display: flow-root;
}

#block-parallel-views-block-concept-listing-block-1 [class*="js-view-dom-id-"] {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 20px;
}

/* Let the cards size to their share of the row instead of a fixed 300px, so
   they can sit side by side on the front page rather than stacking. */
#block-parallel-views-block-concept-listing-block-1 .views-row {
  float: none;
  height: auto;
  width: auto;
  flex: 1 1 280px;
  max-width: 360px;
  margin: 0;
}

/* The front page gives the block a wider column so three cards fit in a row. */
.front #block-parallel-views-block-concept-listing-block-1 {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 100px;
}

/* Staggered entrance, matching #block-parallel-featured-bottom-first.
   That block cascades its children with .delay-1/.delay-2 on top of the
   shared [data-reveal] fade-up; the cards do the same, one step per card.
   The stagger only applies while revealing — once hidden it is cleared so
   the next entrance replays from the start instead of waiting out the
   previous delay. */
#block-parallel-views-block-concept-listing-block-1 .views-row:nth-child(1) .service-card.revealed { transition-delay: 0.1s; }
#block-parallel-views-block-concept-listing-block-1 .views-row:nth-child(2) .service-card.revealed { transition-delay: 0.2s; }
#block-parallel-views-block-concept-listing-block-1 .views-row:nth-child(3) .service-card.revealed { transition-delay: 0.3s; }
#block-parallel-views-block-concept-listing-block-1 .views-row:nth-child(4) .service-card.revealed { transition-delay: 0.4s; }
#block-parallel-views-block-concept-listing-block-1 .views-row:nth-child(5) .service-card.revealed { transition-delay: 0.5s; }
#block-parallel-views-block-concept-listing-block-1 .views-row:nth-child(n+6) .service-card.revealed { transition-delay: 0.6s; }

/* ==========================================================================
   Concept (Culture & Heritage category) page
   Mirrors the /explore landing page design language: a gold hero with a
   Playfair Display heading, white "service-card" content blocks and pill
   taxonomy links. Scoped with .node--type-concept so other node pages are
   untouched.
   ========================================================================== */

/* Pull the hero up under the header on concept pages (main-wrapper normally
   has a 5rem top pad). :has() is progressive - older browsers keep the pad. */
body.node-page:has(.node--type-concept) #main-wrapper {
  padding-top: 0;
}

.node--type-concept {
  text-align: left;
  color: var(--text-secondary);
}

/* The parent #block-parallel-content is text-align:center - reset it here. */
.node--type-concept .concept-body {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 0 56px;
}

/* ============================== HERO ============================== */
.node--type-concept .concept-hero {
  background: var(--bg-deep);
  color: var(--text-primary);
  padding: 72px 6% 64px;
  margin-bottom: 56px;
}
.node--type-concept .concept-hero__inner {
  display: flex;
  align-items: center;
  gap: 56px;
  max-width: 1180px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.node--type-concept .concept-hero__content {
  flex: 1 1 420px;
  min-width: 0;
}
.node--type-concept .concept-hero__eyebrow {
  margin: 0 0 18px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-dark);
}
.node--type-concept .concept-hero__eyebrow a {
  color: var(--gold-dark);
  text-decoration: none;
  border-bottom: 1px solid rgba(43, 36, 30, 0.35);
  transition: border-color 0.3s ease;
}
.node--type-concept .concept-hero__eyebrow a:hover {
  border-bottom-color: var(--gold-dark);
}
.node--type-concept .concept-hero__title {
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: clamp(2.3rem, 4.6vw, 3.4rem);
  line-height: 1.1;
  color: var(--text-primary);
  margin: 0 0 22px;
}
.node--type-concept .concept-hero__intro,
.node--type-concept .concept-hero__intro p {
  font-size: 1.15rem;
  line-height: 1.7;
  color: var(--text-primary);
  margin: 0;
  max-width: 640px;
}
.node--type-concept .concept-hero__intro p + p {
  margin-top: 14px;
}
.node--type-concept .concept-hero__media {
  flex: 1 1 360px;
  min-width: 0;
}
.node--type-concept .concept-hero__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}

/* ========================== INTRO / DESCRIPTION ========================== */
.node--type-concept .concept-intro {
  max-width: 880px;
  margin: 0 auto 64px;
  font-size: 1.2rem;
  line-height: 1.8;
  text-align: center;
  color: var(--text-secondary);
}
.node--type-concept .concept-intro p {
  margin: 0 0 18px;
}
.node--type-concept .concept-intro p:last-child {
  margin-bottom: 0;
}

/* =========================== CONTENT BLOCKS =========================== */
/* Row: content blocks (60%) beside the relocated "Global" views block (35%). */
.node--type-concept .concept-blocks-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 5%;
  margin: 0 0 64px;
}
.node--type-concept .concept-blocks {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 28px;
  flex: 0 1 60%;
  max-width: 60%;
  min-width: 0;
  align-items: stretch;
}
/* A single wide block (Related Practices) spans the full row. */
.node--type-concept .concept-blocks:has(.concept-card--wide) {
  grid-template-columns: 1fr;
}
/* The relocated "Global" views block sits beside the content blocks. The flex
   sizing lives on the aside wrapper; the block itself fills that wrapper. */
.node--type-concept .concept-blocks-row .concept-aside {
  flex: 0 1 35%;
  max-width: 35%;
  min-width: 0;
  margin: 0;
}
.node--type-concept .concept-blocks-row .concept-aside #block-parallel-views-block-global-block-1 {
  width: 100%;
  max-width: 100%;
  margin: 0;
}
/* When a concept has no content blocks, let the aside use the full width. */
.node--type-concept .concept-blocks-row:not(:has(.concept-blocks)) .concept-aside {
  flex-basis: 100%;
  max-width: 100%;
}
.node--type-concept .concept-card.service-card {
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.4);
  border-radius: 12px;
  padding: 36px 32px;
  height: 100%;
  text-align: left;
  box-shadow: 2px 6px 24px rgba(197, 164, 110, 0.16);
}
.node--type-concept .concept-card .service-card-content {
  padding: 0;
}
.node--type-concept .concept-card__icon {
  display: block;
  width: 46px;
  height: 46px;
  margin: 0 0 22px;
  border-radius: 50%;
  background: rgba(201, 163, 106, 0.14);
  border: 1px solid rgba(201, 163, 106, 0.5);
}
.node--type-concept .concept-card .concept-card__title {
  font-family: var(--secondary-font);
  font-size: 1.65rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--gold-dark) !important;
  text-align: left;
  margin: 0 0 14px;
}
.node--type-concept .concept-card .concept-card__text,
.node--type-concept .concept-card .concept-card__text p {
  color: var(--text-secondary) !important;
  font-size: 16px;
  line-height: 1.75;
}
.node--type-concept .concept-card .concept-card__text p {
  margin: 0 0 14px;
}
.node--type-concept .concept-card .concept-card__text p:last-child {
  margin-bottom: 0;
}
.node--type-concept .concept-card .concept-card__text strong {
  display: block;
  font-family: var(--secondary-font);
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 6px;
}
/* Related Practices is a multi-item field: separate each practice. */
.node--type-concept .concept-card__practices > div > div {
  padding: 18px 0;
  border-top: 1px solid rgba(201, 163, 106, 0.28);
}
.node--type-concept .concept-card__practices > div > div:first-child {
  border-top: 0;
  padding-top: 0;
}
.node--type-concept .concept-card__practices > div > div:last-child {
  padding-bottom: 0;
}

/* ======================= CONCEPT ASIDE ("Global") ======================= */
/* The content-region copy of the relocated block is emptied and hidden. */
.parallel-block-relocated {
  display: none !important;
}
.node--type-concept .concept-aside__title {
  font-family: var(--secondary-font);
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 16px;
}
.node--type-concept .concept-aside #block-parallel-views-block-global-block-1 .views-row {
  float: none;
  width: 100%;
  margin: 0 0 20px;
  padding: 18px;
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.4);
  border-radius: 12px;
  box-shadow: 2px 6px 24px rgba(197, 164, 110, 0.16);
}
.node--type-concept .concept-aside #block-parallel-views-block-global-block-1 .views-row:last-child {
  margin-bottom: 0;
}
.node--type-concept .concept-aside #block-parallel-views-block-global-block-1 .views-row img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
  margin-bottom: 12px;
}
.node--type-concept .concept-aside #block-parallel-views-block-global-block-1 .views-field-title a {
  font-family: var(--secondary-font);
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text-primary);
  text-decoration: none;
}
.node--type-concept .concept-aside #block-parallel-views-block-global-block-1 .views-field-title a:hover {
  color: var(--gold-dark);
}
.node--type-concept .concept-aside #block-parallel-views-block-global-block-1 .views-field-body {
  margin-top: 8px;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-secondary);
}
.node--type-concept .concept-aside #block-parallel-views-block-global-block-1 .views-field-body p {
  margin: 0;
}

/* =========================== RELATED CONTENT =========================== */
.node--type-concept .concept-related {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 32px;
  margin: 0 0 56px;
}
.node--type-concept .concept-related__title {
  font-family: var(--secondary-font);
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 14px;
}
.node--type-concept .concept-related a {
  color: var(--primary);
}

/* ============================== META / TAGS ============================== */
.node--type-concept .concept-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 56px;
  padding-top: 40px;
  border-top: 1px solid rgba(201, 163, 106, 0.35);
}
.node--type-concept .concept-meta__label {
  display: block;
  margin-bottom: 14px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--primary);
}
.node--type-concept .concept-meta__value a {
  font-family: var(--secondary-font);
  font-size: 1.2rem;
  color: var(--text-primary);
}
.node--type-concept .concept-meta__value a:hover {
  color: var(--gold-dark);
}
/* Drupal 11 renders bare item <div>s, so lay them out as inline pills. */
.node--type-concept .concept-tags > div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.node--type-concept .concept-tags a {
  display: inline-block;
  padding: 7px 18px;
  border: 1px solid rgba(201, 163, 106, 0.6);
  border-radius: 999px;
  color: var(--gold-dark);
  font-size: 14px;
  line-height: 1.4;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.node--type-concept .concept-tags a:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: #ffffff;
}

/* ================================ SHARE ================================ */
.node--type-concept .addtoany_share_buttons {
  margin-top: 48px;
  text-align: center;
}

/* ============================== RESPONSIVE ============================== */
@media (max-width: 991.98px) {
  .node--type-concept .concept-hero {
    padding: 56px 6% 48px;
    margin-bottom: 44px;
  }
  .node--type-concept .concept-hero__inner {
    gap: 36px;
  }
}
@media (max-width: 767.98px) {
  .node--type-concept .concept-intro {
    font-size: 1.08rem;
    margin-bottom: 44px;
  }
  /* Stack the content blocks and the relocated "Global" aside on phones. */
  .node--type-concept .concept-blocks-row {
    flex-wrap: wrap;
  }
  .node--type-concept .concept-blocks,
  .node--type-concept .concept-blocks-row .concept-aside {
    flex-basis: 100%;
    max-width: 100%;
  }
  .node--type-concept .concept-blocks {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .node--type-concept .concept-meta {
    gap: 32px;
  }
  .node--type-concept .concept-card.service-card {
    padding: 28px 22px;
  }
}

/* ==========================================================================
   Posts (article) page
   Mirrors the /explore + concept design language: a gold hero with a Playfair
   Display heading, a comfortable reading column for the body, and card/pill
   styling for gallery, related content and taxonomy. Scoped to
   .node--type-posts so other node pages are untouched.
   ========================================================================== */

/* Pull the hero up under the header (main-wrapper normally has a 5rem pad). */
body.node-page:has(.node--type-posts) #main-wrapper {
  padding-top: 0;
}

.node--type-posts {
  text-align: left;
  color: var(--text-secondary);
}

.node--type-posts .post-body {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 0 56px;
}

/* ============================== HERO ============================== */
.node--type-posts .post-hero {
  background: var(--bg-deep);
  color: var(--text-primary);
  padding: 72px 6% 64px;
  margin-bottom: 56px;
}
.node--type-posts .post-hero__inner {
  display: flex;
  align-items: center;
  gap: 56px;
  max-width: 1180px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.node--type-posts .post-hero__content {
  flex: 1 1 480px;
  min-width: 0;
}
.node--type-posts .post-hero__eyebrow {
  margin: 0 0 18px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-dark);
}
.node--type-posts .post-hero__eyebrow a {
  color: var(--gold-dark);
  text-decoration: none;
  border-bottom: 1px solid rgba(43, 36, 30, 0.35);
  transition: border-color 0.3s ease;
}
.node--type-posts .post-hero__eyebrow a:hover {
  border-bottom-color: var(--gold-dark);
}
.node--type-posts .post-hero__title {
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: clamp(2.3rem, 4.6vw, 3.4rem);
  line-height: 1.1;
  color: var(--text-primary);
  margin: 0 0 22px;
}
.node--type-posts .post-hero__intro {
  font-size: 1.15rem;
  line-height: 1.7;
  color: var(--text-primary);
  margin: 0;
  max-width: 680px;
}
.node--type-posts .post-hero__media {
  flex: 1 1 360px;
  min-width: 0;
}
.node--type-posts .post-hero__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}

/* ========================== ARTICLE READING ========================== */
.node--type-posts .post-article {
  max-width: 820px;
  margin: 0 auto 72px;
  font-size: 1.12rem;
  line-height: 1.9;
  color: var(--text-secondary);
}
.node--type-posts .post-article > p {
  margin: 0 0 22px;
}
.node--type-posts .post-article h2 {
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: clamp(1.6rem, 3vw, 2.1rem);
  line-height: 1.25;
  color: var(--text-primary);
  margin: 2.4em 0 0.7em;
}
.node--type-posts .post-article h2:first-child {
  margin-top: 0;
}
.node--type-posts .post-article h3 {
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: 1.35rem;
  line-height: 1.3;
  color: var(--gold-dark);
  margin: 1.8em 0 0.5em;
}
.node--type-posts .post-article ul,
.node--type-posts .post-article ol {
  margin: 0 0 26px;
  padding-left: 1.5em;
}
.node--type-posts .post-article li {
  margin: 0 0 12px;
}
.node--type-posts .post-article li::marker {
  color: var(--primary);
}
.node--type-posts .post-article strong {
  color: var(--text-primary);
  font-weight: 700;
}
.node--type-posts .post-article a {
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.node--type-posts .post-article a:hover {
  color: var(--gold-dark);
}

/* ============================ GALLERY / SECTIONS ============================ */
.node--type-posts .post-gallery {
  max-width: 1180px;
  margin: 0 auto 64px;
}
.node--type-posts .post-section__title,
.node--type-posts .post-related__title {
  font-family: var(--secondary-font);
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0 0 16px;
}
.node--type-posts .post-gallery__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
}
.node--type-posts .post-gallery__grid img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
}

/* =========================== RELATED CONTENT =========================== */
.node--type-posts .post-related {
  max-width: 1180px;
  margin: 0 auto 56px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 32px;
}
.node--type-posts .post-related__value a {
  font-family: var(--secondary-font);
  font-size: 1.2rem;
  color: var(--primary);
}
.node--type-posts .post-related__value a:hover {
  color: var(--gold-dark);
}

/* ============================== META / TAGS ============================== */
.node--type-posts .post-meta {
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 56px;
  padding-top: 40px;
  border-top: 1px solid rgba(201, 163, 106, 0.35);
}
.node--type-posts .post-meta__label {
  display: block;
  margin-bottom: 14px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--primary);
}
.node--type-posts .post-meta__value a {
  font-family: var(--secondary-font);
  font-size: 1.2rem;
  color: var(--text-primary);
}
.node--type-posts .post-meta__value a:hover {
  color: var(--gold-dark);
}
/* Drupal 11 renders bare item <div>s, so lay them out as inline pills. */
.node--type-posts .post-tags > div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.node--type-posts .post-tags a {
  display: inline-block;
  padding: 7px 18px;
  border: 1px solid rgba(201, 163, 106, 0.6);
  border-radius: 999px;
  color: var(--gold-dark);
  font-size: 14px;
  line-height: 1.4;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.node--type-posts .post-tags a:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: #ffffff;
}

/* ================================ SHARE ================================ */
.node--type-posts .addtoany_share_buttons {
  margin-top: 48px;
  text-align: center;
}

/* ============================== RESPONSIVE ============================== */
@media (max-width: 991.98px) {
  .node--type-posts .post-hero {
    padding: 56px 6% 48px;
    margin-bottom: 44px;
  }
  .node--type-posts .post-hero__inner {
    gap: 36px;
  }
}
@media (max-width: 767.98px) {
  .node--type-posts .post-article {
    font-size: 1.06rem;
    margin-bottom: 52px;
  }
  .node--type-posts .post-meta {
    gap: 32px;
  }
}

/* ==========================================================================
   Generic node detail pages
   Node types without a dedicated template (everything except "concept" and
   "posts") share this gold hero + white field-card layout. The markup comes
   from templates/node--full.html.twig and the field classes from the theme's
   field.html.twig override.
   ========================================================================== */

/* Pull the hero up under the header (main-wrapper normally has a 5rem pad). */
body.node-page:has(.node-detail-hero) #main-wrapper {
  padding-top: 0;
}

.node-detail-page {
  text-align: left;
  color: var(--text-secondary);
}

/* ============================== HERO ============================== */
.node-detail-page .node-detail-hero {
  background: var(--bg-deep);
  color: var(--text-primary);
  padding: 72px 6% 64px;
  margin-bottom: 56px;
}
.node-detail-page .node-detail-hero__inner {
  display: flex;
  align-items: center;
  gap: 56px;
  max-width: 1180px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.node-detail-page .node-detail-hero__content {
  flex: 1 1 480px;
  min-width: 0;
}
.node-detail-page .node-detail-hero__eyebrow {
  margin: 0 0 18px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-dark);
}
.node-detail-page .node-detail-hero__title {
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: clamp(2.3rem, 4.6vw, 3.4rem);
  line-height: 1.1;
  color: var(--text-primary);
  margin: 0;
}
.node-detail-page .node-detail-hero__intro {
  font-size: 1.15rem;
  line-height: 1.7;
  color: var(--text-primary);
  margin: 22px 0 0;
  max-width: 680px;
}
.node-detail-page .node-detail-hero__media {
  flex: 1 1 360px;
  min-width: 0;
}
.node-detail-page .node-detail-hero__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}
/* The featured field keeps its label in the body copy; hide it in the hero. */
.node-detail-page .node-detail-hero__media .field__label {
  display: none;
}

/* ============================== FIELDS ============================== */
.node-detail-page .node-detail-body {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px 64px;
}
.node-detail-page .node-detail-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
.node-detail-page .node-detail-fields > .field {
  margin: 0;
  padding: 28px 32px;
  background: #ffffff;

  border-radius: 12px;

}
/* Anything that is not a field (share buttons, node links, ...) spans the row. */
.node-detail-page .node-detail-fields > :not(.field) {
  grid-column: 1 / -1;
}
/* Wide fields span the full grid row. */
.node-detail-page .node-detail-fields > .field--type-text-long,
.node-detail-page .node-detail-fields > .field--type-text-with-summary,
.node-detail-page .node-detail-fields > .field--type-text,
.node-detail-page .node-detail-fields > .field--type-image,
.node-detail-page .node-detail-fields > .field--type-entity-reference-revisions {
  grid-column: 1 / -1;
}

/* Field label */
.node-detail-page .node-detail-fields .field__label {
  margin: 0 0 14px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--primary);
}
/* Long text = comfortable reading column */
.node-detail-page .node-detail-fields .field--type-text-long,
.node-detail-page .node-detail-fields .field--type-text-with-summary,
.node-detail-page .node-detail-fields .field--type-text {
  font-size: 1.0625rem;
  line-height: 1.8;
  color: var(--text-secondary);
}
.node-detail-page .node-detail-fields .field--type-text-long p:last-child,
.node-detail-page .node-detail-fields .field--type-text-with-summary p:last-child {
  margin-bottom: 0;
}
.node-detail-page .node-detail-fields .field--type-text-long strong,
.node-detail-page .node-detail-fields .field--type-text-with-summary strong {
  color: var(--text-primary);
}
/* Images (single and gallery) */
.node-detail-page .node-detail-fields .field--type-image .field__items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}
.node-detail-page .node-detail-fields .field--type-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}
/* Taxonomy / entity references = gold pills */
.node-detail-page .node-detail-fields .field--type-entity-reference .field__items,
.node-detail-page .node-detail-fields .field--type-entity-reference-revisions .field__items {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.node-detail-page .node-detail-fields .field--type-entity-reference .field__item a,
.node-detail-page .node-detail-fields .field--type-entity-reference .field__item span,
.node-detail-page .node-detail-fields .field--type-entity-reference-revisions .field__item a {
  display: inline-block;
  padding: 7px 18px;
  border: 1px solid rgba(201, 163, 106, 0.6);
  border-radius: 999px;
  color: var(--gold-dark);
  font-size: 14px;
  line-height: 1.4;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.node-detail-page .node-detail-fields .field--type-entity-reference .field__item a:hover,
.node-detail-page .node-detail-fields .field--type-entity-reference-revisions .field__item a:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: #ffffff !important;
}
/* Links = buttons */
.node-detail-page .node-detail-fields .field--type-link .field__items {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.node-detail-page .node-detail-fields .field--type-link .field__item a {
  display: inline-block;
  padding: 11px 24px;
  background: var(--primary);
  border: 1px solid var(--primary);
  border-radius: 999px;
  color: #ffffff;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.node-detail-page .node-detail-fields .field--type-link .field__item a:hover {
  background: var(--gold-dark);
  border-color: var(--gold-dark);
  color: #ffffff !important;
}

/* ================================ SHARE ================================ */
.node-detail-page .node-detail-share {
  margin-top: 48px;
  text-align: center;
}

/* ============================== RESPONSIVE ============================== */
@media (max-width: 991.98px) {
  .node-detail-page .node-detail-hero {
    padding: 56px 6% 48px;
    margin-bottom: 44px;
  }
  .node-detail-page .node-detail-hero__inner {
    gap: 36px;
  }
}
@media (max-width: 767.98px) {
  .node-detail-page .node-detail-body {
    padding: 0 18px 48px;
  }
  .node-detail-page .node-detail-fields {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .node-detail-page .node-detail-fields > .field {
    padding: 22px;
  }
}

/* ==========================================================================
   Person profile pages
   node--person--full.html.twig. Keeps the Parallel palette (charcoal + gold,
   Playfair Display) but gives people a distinctive, interactive layout:
   a dark cinematic hero with a tilting portrait, an overlapping quick-facts
   strip, tabbed story panels, an achievements timeline and hover-reactive
   related cards. Interactions come from js/person.js.
   ========================================================================== */

/* Pull the hero up under the header (main-wrapper normally has a 5rem pad). */
body.node-page:has(.person-profile) #main-wrapper {
  padding-top: 0;
}

.person-profile {
  text-align: left;
  color: var(--text-secondary);
}

/* ============================== HERO ============================== */
.person-profile .person-hero {
  position: relative;
  overflow: hidden;
  padding: 84px 6% 104px;
  background: linear-gradient(135deg, #100f0d 0%, #1b1815 55%, #2a2015 100%);
}
.person-profile .person-hero__glow {
  position: absolute;
  top: -160px;
  right: -120px;
  width: 560px;
  height: 560px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201, 163, 106, 0.45) 0%, rgba(201, 163, 106, 0) 68%);
  pointer-events: none;
}
.person-profile .person-hero__monogram {
  position: absolute;
  right: 4%;
  bottom: -8%;
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: clamp(9rem, 26vw, 22rem);
  line-height: 1;
  color: rgba(201, 163, 106, 0.08);
  pointer-events: none;
  user-select: none;
}
.person-profile .person-hero__inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 64px;
  max-width: 1180px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.person-profile .person-hero__content {
  flex: 1 1 460px;
  min-width: 0;
}
.person-profile .person-hero__eyebrow {
  margin: 0 0 16px;
}
.person-profile .person-hero__eyebrow .field {
  margin: 0;
}
.person-profile .person-hero__eyebrow .field__label {
  display: none;
}
.person-profile .person-hero__eyebrow .field__items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.person-profile .person-hero__eyebrow a {
  display: inline-block;
  padding: 6px 14px;
  border: 1px solid rgba(201, 163, 106, 0.5);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--primary);
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.person-profile .person-hero__eyebrow a:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: #12100e;
}
.person-profile .person-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border-radius: 999px;
  background: linear-gradient(120deg, var(--primary), #e6c98f);
  color: #12100e;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.person-profile .person-hero__name {
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: clamp(2.6rem, 6vw, 4.2rem);
  line-height: 1.05;
  color: #ffffff;
  margin: 16px 0 0;
}
.person-profile .person-hero__rule {
  display: block;
  width: 130px;
  height: 3px;
  margin: 22px 0;
  background: linear-gradient(90deg, var(--primary), rgba(201, 163, 106, 0));
}
.person-profile .person-hero__summary {
  font-size: 1.15rem;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.82);
  margin: 0;
  max-width: 620px;
}
.person-profile .person-hero__chips {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 26px 0 0;
  padding: 0;
}
.person-profile .person-chip {
  padding: 8px 16px;
  border-radius: 999px;
  border: 1px solid rgba(201, 163, 106, 0.45);
  background: rgba(201, 163, 106, 0.1);
  color: #f4e9d5;
  font-size: 0.92rem;
}
.person-profile .person-chip--muted {
  border-color: rgba(255, 255, 255, 0.18);
  background: transparent;
  color: rgba(255, 255, 255, 0.6);
}
.person-profile .person-hero__links {
  margin-top: 28px;
}
.person-profile .person-hero__links .field {
  margin: 0;
}
.person-profile .person-hero__links .field__label {
  display: none;
}
.person-profile .person-hero__links .field__items {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.person-profile .person-hero__links a {
  display: inline-block;
  padding: 12px 22px;
  border-radius: 999px;
  background: var(--primary);
  color: #12100e;
  font-weight: 600;
  transition: background 0.3s ease, transform 0.3s ease;
}
.person-profile .person-hero__links a:hover {
  background: #ffffff;
  transform: translateY(-2px);
}

/* --------------------------- HERO PORTRAIT --------------------------- */
.person-profile .person-hero__portrait {
  position: relative;
  flex: 0 1 380px;
  min-width: 260px;
}
.person-profile .person-portrait {
  position: relative;
  padding: 7px;
  border-radius: 22px;
  /*background: linear-gradient(140deg, var(--primary), rgba(201, 163, 106, 0.15) 50%, rgba(201, 163, 106, 0.55));
 */
  box-shadow: 0 34px 80px rgba(0, 0, 0, 0.5);
  transform-style: preserve-3d;
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform;
}
.person-profile .person-portrait .field {
  margin: 0;
}
.person-profile .person-portrait .field__label {
  display: none;
}
.person-profile .person-portrait img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
}
.person-profile .person-portrait__tag {
  position: absolute;
  left: -14px;
  bottom: 24px;
  padding: 10px 18px;
  border-radius: 12px;
  background: #12100e;
  color: var(--primary);
  font-family: var(--secondary-font);
  font-size: 1.05rem;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.4);
}

/* ============================== SECTIONS ============================== */
.person-profile .person-section {
  max-width: 1180px;
  margin: 0 auto 64px;
  padding: 0 24px;
}
.person-profile .person-section__head {
  margin-bottom: 24px;
}
.person-profile .person-section__title {
  position: relative;
  margin: 0;
  padding-bottom: 14px;
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: clamp(1.6rem, 3vw, 2.1rem);
  line-height: 1.2;
  color: var(--text-primary);
}
.person-profile .person-section__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 56px;
  height: 3px;
  border-radius: 2px;
  background: var(--primary);
}

/* ------------------------------- TABS -------------------------------- */
.person-profile .person-tabs__nav {
  display: flex;
  gap: 8px;
  margin-bottom: 30px;
  border-bottom: 1px solid rgba(201, 163, 106, 0.35);
}
.person-profile .person-tab {
  position: relative;
  appearance: none;
  padding: 12px 18px;
  border: 0;
  background: transparent;
  font-family: var(--font-sans);
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: color 0.25s ease;
}
.person-profile .person-tab::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 3px;
  background: var(--primary);
  transform: scaleX(0);
  transition: transform 0.3s ease;
}
.person-profile .person-tab:hover {
  color: var(--text-primary);
}
.person-profile .person-tab.is-active {
  color: var(--primary);
}
.person-profile .person-tab.is-active::after {
  transform: scaleX(1);
}
.person-profile .person-panel {
  display: none;
}
.person-profile .person-panel.is-active {
  display: block;
  animation: personFade 0.45s ease;
}
@keyframes personFade {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

/* ------------------------------- PROSE ------------------------------- */
.person-profile .person-prose {
  max-width: 820px;
  font-size: 1.1rem;
  line-height: 1.9;
  color: var(--text-secondary);
}
.person-profile .person-prose p {
  margin: 0 0 20px;
}
.person-profile .person-prose h2,
.person-profile .person-prose h3 {
  font-family: var(--secondary-font);
  color: var(--text-primary);
}
.person-profile .person-prose a {
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.person-profile .person-prose .field {
  margin: 0;
}
.person-profile .person-prose .field__label {
  display: none;
}

/* --------------------------- ACHIEVEMENTS ---------------------------- */
.person-profile .person-achievements__list > .field {
  margin: 0;
}
.person-profile .person-achievements__list > .field > .field__label {
  display: none;
}
.person-profile .person-achievements__list .field__items {
  display: grid;
  gap: 18px;
}
.person-profile .person-achievements__list .paragraph--type--achievement-item {
  position: relative;
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  grid-template-areas:
    "year title"
    "year desc";
  gap: 6px 22px;
  padding: 24px 28px;
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.4);
  border-left: 4px solid var(--primary);
  border-radius: 12px;
  box-shadow: 2px 6px 24px rgba(197, 164, 110, 0.16);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.person-profile .person-achievements__list .paragraph--type--achievement-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(197, 164, 110, 0.26);
}
.person-profile .person-achievements__list .paragraph--type--achievement-item .field__label {
  display: none;
}
.person-profile .person-achievements__list .field--name-field-ai-year {
  grid-area: year;
}
.person-profile .person-achievements__list .field--name-field-ai-year .field__item {
  font-family: var(--secondary-font);
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.1;
  color: var(--primary);
}
.person-profile .person-achievements__list .field--name-field-ai-title {
  grid-area: title;
}
.person-profile .person-achievements__list .field--name-field-ai-title .field__item,
.person-profile .person-achievements__list .field--name-field-ai-title p {
  margin: 0;
  font-family: var(--secondary-font);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text-primary);
}
.person-profile .person-achievements__list .field--name-field-ai-description {
  grid-area: desc;
}
.person-profile .person-achievements__list .field--name-field-ai-description .field__item {
  font-size: 1rem;
  line-height: 1.75;
  color: var(--text-secondary);
}
.person-profile .person-achievements__list .field--name-field-ai-description p {
  margin: 0;
}
/* Staggered reveal (js/person.js adds .is-in). Scoped to .js so no-JS users
   still see every card. */
.js .person-profile .person-achievements__list .paragraph--type--achievement-item {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s ease;
}
.js .person-profile .person-achievements__list .paragraph--type--achievement-item.is-in {
  opacity: 1;
  transform: none;
}

/* ------------------------------ TIMELINE ----------------------------- */
.person-profile .person-eras__track {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}
.person-profile .person-era {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 18px;
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.4);
  border-radius: 999px;
  font-family: var(--secondary-font);
  font-size: 1.05rem;
  color: var(--text-primary);
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
.person-profile .person-era:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: #ffffff;
  transform: translateY(-3px);
}
.person-profile .person-era__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--primary);
  transition: background 0.3s ease;
}
.person-profile .person-era:hover .person-era__dot {
  background: #ffffff;
}

/* --------------------------- EXPLORE MORE ---------------------------- */
.person-profile .person-related__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
}
.person-profile .person-related__group {
  padding: 26px 28px;
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.4);
  border-radius: 14px;
  box-shadow: 2px 6px 24px rgba(197, 164, 110, 0.16);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.person-profile .person-related__group:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(197, 164, 110, 0.26);
}
.person-profile .person-related__label {
  margin: 0 0 14px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--primary);
}
.person-profile .person-related__value .field {
  margin: 0;
}
.person-profile .person-related__value .field__label {
  display: none;
}
.person-profile .person-related__value .field__item {
  margin-bottom: 8px;
}
.person-profile .person-related__value a {
  font-family: var(--secondary-font);
  font-size: 1.15rem;
  color: var(--text-primary);
  transition: color 0.25s ease;
}
.person-profile .person-related__value a:hover {
  color: var(--primary);
}
.person-profile .person-related__group--media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

/* ------------------------------- TAGS -------------------------------- */
.person-profile .person-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  max-width: 1180px;
  margin: 0 auto 48px;
  padding: 0 24px;
}
.person-profile .person-tags__label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--primary);
}
.person-profile .person-tags__list .field {
  margin: 0;
}
.person-profile .person-tags__list .field__label {
  display: none;
}
.person-profile .person-tags__list .field__items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.person-profile .person-tags__list a {
  display: inline-block;
  padding: 6px 14px;
  border: 1px solid rgba(201, 163, 106, 0.35);
  border-radius: 999px;
  background: rgba(201, 163, 106, 0.12);
  font-size: 0.9rem;
  color: var(--text-primary);
  transition: background 0.25s ease, color 0.25s ease;
}
.person-profile .person-tags__list a:hover {
  background: var(--primary);
  color: #ffffff;
}

/* ------------------------------- SHARE ------------------------------- */
.person-profile .person-share {
  max-width: 1180px;
  margin: 0 auto 64px;
  padding: 24px 24px 0;
  border-top: 1px solid rgba(201, 163, 106, 0.3);
}

/* ============================== RESPONSIVE ============================== */
@media (max-width: 991.98px) {
  .person-profile .person-hero {
    padding: 64px 6% 88px;
  }
  .person-profile .person-hero__inner {
    gap: 44px;
  }
}
@media (max-width: 767.98px) {
  .person-profile .person-hero {
    padding: 52px 6% 76px;
  }
  .person-profile .person-hero__summary {
    font-size: 1.05rem;
  }
  .person-profile .person-hero__portrait {
    flex-basis: 100%;
    min-width: 0;
  }
  .person-profile .person-achievements__list .paragraph--type--achievement-item {
    grid-template-columns: 1fr;
    grid-template-areas:
      "year"
      "title"
      "desc";
  }
  .person-profile .person-tabs__nav {
    overflow-x: auto;
  }
}

/* ==========================================================================
   Main navigation
   --------------------------------------------------------------------------
   The primary menu (#block-parallel-main-menu) lives in the second navbar
   rendered by page.html.twig (non-front pages). Restyled to match the Parallel
   design language: a white bar with a gold hairline, Faustina links and a gold
   underline that grows in on hover and marks the active item.
   ========================================================================== */

/* ------------------------------- Navbar shell ------------------------------ */
nav.navbar.navbar-expand-lg.navbar-dark {
  /* Single source of truth for the header band height. The logo fills it and
     the search box and the primary-menu row all share it, so changing this one
     value resizes the whole header coherently. */
  --header-h: 92px;
  display: flex;
  max-width: 100% !important;
  margin: 0 !important;
  /* No vertical padding: the branding block is exactly as tall as the navbar. */
  padding: 1% 10% 1% 10% !important;
  background: #ffffff !important;
  border-bottom: 1px solid rgba(201, 163, 106, 0.35);
  position: relative;
  z-index: 20;
}
nav.navbar.navbar-expand-lg.navbar-dark > .container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.6rem 1.5rem;
  width: 100%;
  max-width: 100%;
  padding: 0;
}

/* Branding — the block is as tall as the navbar and the logo fills it. */
div#block-parallel-site-branding {
  flex: 0 0 auto;
  width: auto;
  height: var(--header-h, 92px);
}
#block-parallel-site-branding img {
  display: block;
  width: auto;
  height: var(--header-h, 92px);
  max-width: none;
  max-height: none;
}

/* The primary menu is always visible on inner pages (the theme forces the
   collapse open), so the hamburger toggle is redundant — hide it. */
nav.navbar.navbar-expand-lg.navbar-dark .navbar-toggler {
  display: none !important;
}

/* Flatten the collapse wrappers so the search and menu become direct flex
   items of the navbar container: the search sits on the branding row (menu too
   on wide screens), otherwise the menu drops to its own full-width row. */
nav.navbar.navbar-expand-lg.navbar-dark .navbar-collapse,
nav.navbar.navbar-expand-lg.navbar-dark .navbar-collapse > div {
  display: contents !important;
}

/* -------------------------------- Search ---------------------------------- */
/* A permanent inline search box (magnifier input + circular icon button)
   anchored at the right of the logo row. */
#block-parallel-searchform {
  float: none !important;
  margin: 0 0 0 auto !important;
  order: 2;
  flex: 0 1 auto;
  width: auto;
  height: auto;
}
#block-parallel-searchform #search-block-form {
  float: none !important;
  width: auto;
}

/* ------------------------------- Primary menu ------------------------------ */
#block-parallel-main-menu {
  float: none !important;
  order: 3;
  flex: 1 1 100%;
  min-width: 0;
  display: flex;
  align-items: center;
  min-height: var(--header-h, 92px);
  margin: 0.35rem 0 0 !important;
  padding-top: 0 !important;
  border-top: 1px solid rgba(201, 163, 106, 0.25);
}
nav#block-parallel-main-menu ul {
  flex: 1 1 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.15rem 0.35rem;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}
nav#block-parallel-main-menu ul li {
  float: none !important;
  margin: 0 !important;
  list-style: none;
}

/* From 992px up the header becomes two columns: the branding block fills the
   header height on the left (logo included) and the search sits directly above
   the primary menu in the right-hand column, one after the other. */
@media (min-width: 992px) {
  nav.navbar.navbar-expand-lg.navbar-dark > .container {
    flex-wrap: nowrap;
    align-items: stretch;
    /* Header height = the search band (half) + the menu band (full). */
    height: calc(var(--header-h, 92px) * 1.5);
  }
  /* Branding region: fill the header height. */
  nav.navbar.navbar-expand-lg.navbar-dark > .container > div:first-child {
    align-self: stretch;
  }
  div#block-parallel-site-branding,
  div#block-parallel-site-branding > a {
    display: block;
    height: 100%;
  }
  #block-parallel-site-branding img {
    height: 100%;
    width: auto;
  }
  /* Right-hand column: the search over the primary menu. */
  nav.navbar.navbar-expand-lg.navbar-dark .navbar-collapse > div {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    flex: 1 1 auto;
    min-width: 0;
  }
  #block-parallel-main-menu {
    flex: 0 1 auto;
    margin: 0 !important;
    border-top: 0;
  }
}
#block-parallel-main-menu a {
  position: relative;
  display: inline-block;
  padding: 0.7rem 1rem;
  font-family: var(--font-sans);
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.2;
  color: var(--text-primary) !important;
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--transition);
}
#block-parallel-main-menu a::after {
  content: "";
  position: absolute;
  left: 0.85rem;
  right: 0.85rem;
  bottom: 0.35rem;
  height: 2px;
  border-radius: 2px;
  background: var(--primary);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
#block-parallel-main-menu a:hover,
#block-parallel-main-menu a:focus {
  color: var(--primary) !important;
}
#block-parallel-main-menu a:hover::after,
#block-parallel-main-menu a:focus::after {
  transform: scaleX(1);
}
#block-parallel-main-menu a.is-active,
#block-parallel-main-menu a.active {
  color: var(--primary) !important;
  font-weight: 600;
}
#block-parallel-main-menu a.is-active::after,
#block-parallel-main-menu a.active::after {
  transform: scaleX(1);
}

/* Media Archive / Mixitup */
body.path-media-archive #main-wrapper {
  padding-top: 60px;
  padding-bottom: 80px;
}

body.path-media-archive h1.page-title {
  font-family: var(--secondary-font);
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
  color: var(--text-primary);
  letter-spacing: -0.5px;
}

body.path-media-archive .view-media-ct-listing {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

body.path-media-archive .mixitup-views-filters-form {
  background: #fff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  margin-bottom: 40px;
  border: 1px solid rgba(201, 163, 106, 0.2);
}

body.path-media-archive .mixitup-views-filters-form fieldset {
  border: none;
  padding: 0;
  margin: 0 0 20px 0;
}

body.path-media-archive .mixitup-views-filters-form fieldset:last-child {
  margin-bottom: 0;
}

body.path-media-archive .mixitup-views-filters-form legend {
  font-family: var(--secondary-font);
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 15px;
  padding: 0;
  float: none;
  width: auto;
}

body.path-media-archive .mixitup-views-filters-form .form-checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.path-media-archive .mixitup-views-filters-form .form-item {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 8px 16px;
  background: #f8f9fa;
  border-radius: 25px;
  transition: all 0.3s ease;
  border: 1px solid #e0e0e0;
}

body.path-media-archive .mixitup-views-filters-form .form-item:hover {
  background: rgba(201, 163, 106, 0.1);
  border-color: var(--gold-primary);
}

body.path-media-archive .mixitup-views-filters-form .form-item:has(input:checked) {
  background: var(--gold-primary);
  color: #fff;
  border-color: var(--gold-primary);
}

body.path-media-archive .mixitup-views-filters-form label {
  margin: 0;
  cursor: pointer;
  font-size: 0.9rem;
}

body.path-media-archive .mixitup-views-filters-form input[type="checkbox"] {
  margin: 0;
  cursor: pointer;
}

body.path-media-archive .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 30px;
}

body.path-media-archive .mixitup-item {
  width: 100% !important;
}

body.path-media-archive .mixitup-item article.node--view-mode-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid rgba(201, 163, 106, 0.2);
  height: 100%;
}

body.path-media-archive .mixitup-item article.node--view-mode-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 30px rgba(201, 163, 106, 0.25);
}

body.path-media-archive .mixitup-item article.node--view-mode-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
}

body.path-media-archive .mixitup-item article.node--view-mode-card > div {
  padding: 25px;
}

body.path-media-archive .mixitup-item article.node--view-mode-card h2 {
  margin: 0 0 15px 0;
  font-family: var(--secondary-font);
  font-size: 1.3rem;
  line-height: 1.4;
  font-weight: 600;
}

body.path-media-archive .mixitup-item article.node--view-mode-card h2 a {
  color: var(--text-primary) !important;
  text-decoration: none;
  font-size: 1.3rem !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  word-spacing: normal !important;
  font-family: var(--secondary-font);
}

body.path-media-archive .mixitup-item article.node--view-mode-card h2 a:hover {
  color: var(--gold-primary) !important;
}

body.path-media-archive .mixitup-item article.node--view-mode-card .field--name-body {
  color: var(--text-muted);
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 15px;
}

body.path-media-archive .mixitup-item article.node--view-mode-card .links {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.path-media-archive .mixitup-item article.node--view-mode-card .links a {
  color: var(--gold-primary) !important;
  text-decoration: none;
  font-size: 0.85rem !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  font-weight: 600;
}

body.path-media-archive .mixitup-item article.node--view-mode-card .links a:hover {
  text-decoration: underline;
}

@media (max-width: 991px) {
  body.path-media-archive .view-content {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
  }
}

@media (max-width: 767px) {
  body.path-media-archive .view-content {
    grid-template-columns: 1fr;
  }
  body.path-media-archive .view-media-ct-listing {
    padding: 0 15px;
  }
  body.path-media-archive h1.page-title {
    font-size: 2rem;
  }
  body.path-media-archive .mixitup-views-filters-form {
    padding: 20px;
  }
}

/* Learn page */
body.path-learn #main-wrapper {
  padding-top: 60px;
  padding-bottom: 80px;
}

/* Learn page - UX blocks block 2 */
body.path-learn #block-parallel-views-block-ux-blocks-block-2 {
  max-width: 100%;
  padding: 8% 0 0;
  background: var(--bg-deep);
}
#block-parallel-views-block-ux-blocks-block-2 .views-field.views-field-field-button-1-link{
      flex: none;
    width: 100%;
    background: rgba(14, 14, 16, 0.04);
        padding: 1rem;
    border-top-right-radius: 70px;
    border-top-left-radius: 70px;


}


body.path-learn #block-parallel-views-block-ux-blocks-block-2 .block-title,
body.path-learn #block-parallel-views-block-ux-blocks-block-2 h2 {
  font-family: var(--secondary-font);
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
  color: var(--text-primary);
  letter-spacing: -0.3px;
}

body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 {

  border-radius: 8px;
  margin-bottom: 30px;
  text-align: center;
  width: 50%;
}

body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 h3 {
  font-family: var(--secondary-font);
  font-size: 1.6rem;
  font-weight: 700;
  margin: 0 0 20px 0;
  color: var(--text-primary);
  line-height: 1.3;
}

body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 p {
  font-size: 1rem;
  line-height: 1.8;
  color: var(--text-primary);
  margin: 0 0 1.2rem 0;
}

body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 p:last-child {
  margin-bottom: 0;
}

body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 a {
  color: var(--gold-primary);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s ease;
}

body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 a:hover {
  color: var(--text-primary);
  text-decoration: underline;
}

@media (max-width: 767px) {
  body.path-learn #block-parallel-views-block-ux-blocks-block-2 {
    padding: 0 15px;
    margin-top: 40px;
  }
  body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 {
    padding: 25px 20px;
  }
  body.path-learn #block-parallel-views-block-ux-blocks-block-2 .views-field-field-for-section-1 h3 {
    font-size: 1.4rem;
  }
}

body.path-learn h1.page-title {
  font-family: var(--secondary-font);
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 50px;
  color: var(--text-primary);
  letter-spacing: -0.5px;
}

body.path-learn .view-frontmenupages {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

body.path-learn .view-frontmenupages .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 30px;
}

body.path-learn .view-frontmenupages .views-row {
  width: 100% !important;
}

body.path-learn .view-frontmenupages article.node--view-mode-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid rgba(201, 163, 106, 0.2);
  height: 100%;
  display: flex;
  flex-direction: column;
}

body.path-learn .view-frontmenupages article.node--view-mode-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 30px rgba(201, 163, 106, 0.25);
}

body.path-learn .view-frontmenupages article.node--view-mode-card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}

body.path-learn .view-frontmenupages article.node--view-mode-card > div {
  padding: 25px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

body.path-learn .view-frontmenupages article.node--view-mode-card h2 {
  margin: 0 0 15px 0;
  font-family: var(--secondary-font);
  font-size: 1.3rem;
  line-height: 1.4;
  font-weight: 600;
}

body.path-learn .view-frontmenupages article.node--view-mode-card h2 a {
  color: var(--text-primary) !important;
  text-decoration: none;
  font-size: 1.3rem !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  word-spacing: normal !important;
  font-family: var(--secondary-font);
}

body.path-learn .view-frontmenupages article.node--view-mode-card h2 a:hover {
  color: var(--gold-primary) !important;
}

body.path-learn .view-frontmenupages article.node--view-mode-card .field--name-body {
  color: var(--text-muted);
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 15px;
  flex: 1;
}

body.path-learn .view-frontmenupages article.node--view-mode-card .field--name-body p {
  margin: 0;
}

body.path-learn .view-frontmenupages article.node--view-mode-card .links {
  margin: auto 0 0 0;
  padding: 0;
  list-style: none;
}

body.path-learn .view-frontmenupages article.node--view-mode-card .links a {
  color: var(--gold-primary) !important;
  text-decoration: none;
  font-size: 0.85rem !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  font-weight: 600;
}

body.path-learn .view-frontmenupages article.node--view-mode-card .links a:hover {
  text-decoration: underline;
}

@media (max-width: 991px) {
  body.path-learn .view-frontmenupages .view-content {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 25px;
  }
}

@media (max-width: 767px) {
  body.path-learn .view-frontmenupages .view-content {
    grid-template-columns: 1fr;
  }
  body.path-learn .view-frontmenupages {
    padding: 0 15px;
  }
  body.path-learn h1.page-title {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}

/* Submit Story form */
body.path-webform-submit-story #main-wrapper {
  padding-top: 60px;
  padding-bottom: 80px;
  background: #fafafa;
  width: 60% !important;
}

body.path-webform-submit-story h1.page-title {
  font-family: var(--secondary-font);
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
  color: var(--text-primary);
  letter-spacing: -0.5px;
}

body.path-webform-submit-story .block-system-main-block > div {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
}

body.path-webform-submit-story .webform-submission-form {
  padding: 50px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 2px 40px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(201, 163, 106, 0.25);
}

body.path-webform-submit-story .webform-submission-form > .form-item,
body.path-webform-submit-story .webform-submission-form .webform-flexbox .form-item {
  margin-bottom: 28px;
  float: left;
  width: 100%;
}


.form-item-consent label{width: 100% !important;
text-align: left !important;}


body.path-webform-submit-story .webform-submission-form input[type="url"]
 {
    width: 99% !important;
}

body.path-webform-submit-story .webform-submission-form label {
  display: block;
  margin-bottom: 10px;
  font-weight: 600;
  font-weight: 600;
  color: var(--text-primary);
  font-size: 0.95rem;
  letter-spacing: 0.3px;
  float: left;
  width: 45%;
}

div#edit-story-summary--description,
div#edit-role-affiliation--description
 {
    float: right;
    font-style: italic;
}

body.path-webform-submit-story .webform-submission-form .form-required:after {
  content: " *";
  color: var(--gold-primary);
}

body.path-webform-submit-story .webform-submission-form input[type="text"],
body.path-webform-submit-story .webform-submission-form input[type="email"],
body.path-webform-submit-story .webform-submission-form input[type="tel"],
body.path-webform-submit-story .webform-submission-form input[type="url"],
body.path-webform-submit-story .webform-submission-form textarea,
body.path-webform-submit-story .webform-submission-form select {
  width: 45%;
  padding: 14px 18px;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  font-family: var(--font-sans);
  font-size: 0.95rem;
  transition: all 0.3s ease;
  background: #fff;
  color: var(--text-primary);
  box-sizing: border-box;
  margin-right: 20px;
  margin-bottom: 15px;
}

#edit-consent{float: left;}


body.path-webform-submit-story .webform-submission-form input[type="text"]:hover,
body.path-webform-submit-story .webform-submission-form input[type="email"]:hover,
body.path-webform-submit-story .webform-submission-form input[type="tel"]:hover,
body.path-webform-submit-story .webform-submission-form textarea:hover,
body.path-webform-submit-story .webform-submission-form select:hover {
  border-color: #b8b8b8;
}

body.path-webform-submit-story .webform-submission-form input[type="text"]:focus,
body.path-webform-submit-story .webform-submission-form input[type="email"]:focus,
body.path-webform-submit-story .webform-submission-form input[type="tel"]:focus,
body.path-webform-submit-story .webform-submission-form input[type="url"]:focus,
body.path-webform-submit-story .webform-submission-form textarea:focus,
body.path-webform-submit-story .webform-submission-form select:focus {
  outline: none;
  border-color: var(--gold-primary);
  box-shadow: 0 0 0 1px var(--gold-primary);
}

body.path-webform-submit-story .webform-submission-form textarea {
  resize: vertical;
  min-height: 150px;
  line-height: 1.6;
}

body.path-webform-submit-story .webform-submission-form .description {
  margin-top: 6px;
  font-size: 0.85rem;
  color: var(--text-muted);
}

body.path-webform-submit-story .webform-submission-form .webform-actions {
  margin-top: 40px;
  text-align: center;
}

body.path-webform-submit-story .webform-submission-form .webform-button--submit {
  background: var(--gold-primary);
  color: #fff;
  border: 2px solid var(--gold-primary);
  padding: 14px 50px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  border-radius: 3px;
  transition: all 0.3s ease;
  font-family: var(--font-sans);
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

body.path-webform-submit-story .webform-submission-form .webform-button--submit:hover {
  background: transparent;
  color: var(--gold-primary);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(201, 163, 106, 0.2);
}

body.path-webform-submit-story .webform-submission-form .webform-button--submit:focus {
  outline: 2px solid var(--gold-primary);
  outline-offset: 2px;
}

body.path-webform-submit-story .webform-submission-form fieldset {
  border: 1px solid #e5e5e5;
  padding: 30px;
  margin-bottom: 35px;
  border-radius: 3px;
  background: #fcfcfc;
}

body.path-webform-submit-story .webform-submission-form legend {
  font-weight: 700;
  color: var(--text-primary);
  padding: 0 12px;
  font-size: 1.1rem;
  font-family: var(--secondary-font);
}

body.path-webform-submit-story .webform-submission-form .webform-flexbox {
  display: flex;
  gap: 20px;
}

body.path-webform-submit-story .webform-submission-form .webform-flexbox > .webform-flex {
  flex: 1;
}

@media (max-width: 767px) {
  body.path-webform-submit-story .webform-submission-form {
    padding: 30px 25px;
  }
  body.path-webform-submit-story .block-system-main-block > div {
    padding: 0 15px;
  }
  body.path-webform-submit-story h1.page-title {
    font-size: 2rem;
    margin-bottom: 30px;
  }
  body.path-webform-submit-story .webform-submission-form .webform-flexbox {
    flex-direction: column;
    gap: 0;
  }
  body.path-webform-submit-story .webform-submission-form fieldset {
    padding: 20px;
  }
}

/* ------------------------------ Responsive -------------------------------- */
@media (max-width: 767.98px) {
  nav.navbar.navbar-expand-lg.navbar-dark {
    --header-h: 72px;
  }
}
@media (max-width: 575.98px) {
  nav.navbar.navbar-expand-lg.navbar-dark {
    --header-h: 60px;
    padding: 0.85rem 5% !important;
  }
  #block-parallel-searchform #edit-keys {
    width: clamp(120px, 34vw, 220px);
  }
  nav#block-parallel-main-menu ul {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    scrollbar-width: none;
  }
  nav#block-parallel-main-menu ul::-webkit-scrollbar {
    display: none;
  }
  nav#block-parallel-main-menu ul li {
    flex: 0 0 auto;
  }
}

/* ==========================================================================
   Top utility bar
   --------------------------------------------------------------------------
   Slim charcoal strip above the main navbar holding the secondary menu
   (#block-parallel-excellence) on the left and the language switcher
   (#block-parallellanguageswitcher) on the right. It is rendered by
   page.html.twig inside header.page-header on every page -- on the front
   page it is the only navigation, so it must stay readable and slim.
   ========================================================================== */

header.page-header {
  background: linear-gradient(180deg, #1b1d1d 0%, #101111 100%);
  border-bottom: 1px solid rgba(201, 163, 106, 0.4);
}

/* Strip the bootstrap navbar chrome so the bar stays a slim single row. */
header.page-header nav.navbar {
  display: block;
  padding: 0 !important;
  min-height: 0 !important;
  background: transparent !important;
}
header.page-header nav.navbar > .container {
  float: none !important;
  display: block !important;
  width: 100%;
  max-width: 100%;
  padding: 0;
}
/* The region wrapper is the real parent of the two blocks: make it the row. */
header.page-header nav.navbar > .container > div:first-of-type {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem 1rem;
  min-height: 40px;
}

/* ----------------------------- Secondary menu ----------------------------- */
header.page-header nav#block-parallel-excellence {
  float: none !important;
  order: 1;
  margin: 0 !important;
  min-width: 0;
}
header.page-header nav#block-parallel-excellence ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.15rem 1.1rem;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}
header.page-header nav#block-parallel-excellence ul li {
  float: none !important;
  margin: 0 !important;
  list-style: none;
}
header.page-header nav#block-parallel-excellence a {
  display: inline-block;
  padding: 0.55rem 0;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.2;
  color: rgba(255, 255, 255, 0.72) !important;
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--transition);
}
header.page-header nav#block-parallel-excellence a:hover,
header.page-header nav#block-parallel-excellence a:focus,
header.page-header nav#block-parallel-excellence a.is-active,
header.page-header nav#block-parallel-excellence a.active {
  color: var(--primary) !important;
}

/* ---------------------------- Language switcher --------------------------- */
header.page-header div#block-parallellanguageswitcher {
  float: none !important;
  order: 2;
  flex: 0 0 auto;
  margin: 0 !important;
}
header.page-header #block-parallellanguageswitcher select.lang-dropdown {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0.4rem 1.7rem 0.4rem 0.8rem;
  border-radius: 999px;
  background-color: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a36a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.6rem center;
  background-size: 11px;
  color: rgba(255, 255, 255, 0.85);
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.2;
  cursor: pointer;
  transition: border-color var(--transition), color var(--transition),
    background-color var(--transition);
}
header.page-header #block-parallellanguageswitcher select.lang-dropdown:hover,
header.page-header #block-parallellanguageswitcher select.lang-dropdown:focus {
  border-color: var(--primary);
  background-color: rgba(201, 163, 106, 0.12);
  color: #ffffff;
  outline: none;
}
header.page-header #block-parallellanguageswitcher select.lang-dropdown option {
  background: #141414;
  color: #ffffff;
}




/* -------------------------------- Responsive ------------------------------ */
@media (max-width: 991.98px) {
  header.page-header nav.navbar > .container > div:first-of-type {
    gap: 0.5rem 0.85rem;
  }
  header.page-header nav#block-parallel-excellence ul {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }
  header.page-header nav#block-parallel-excellence ul::-webkit-scrollbar {
    display: none;
  }
  header.page-header nav#block-parallel-excellence a {
    font-size: 0.68rem;
    letter-spacing: 0.08em;
  }
}
@media (max-width: 575.98px) {
  header.page-header {
    padding: 0 5% !important;
  }
}

/* ============================ VIEW COUNT BADGE ============================
   Added by parallel_preprocess_node()/parallel_preprocess_page(): a small
   "eye + count" pill shown in node heroes and at the top of Views pages. */
.view-count-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.32rem 0.72rem;
  border: 1px solid rgba(201, 163, 106, 0.5);
  border-radius: 999px;
  background: rgba(201, 163, 106, 0.08);
  color: #6b573a;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 1;
  white-space: nowrap;
}

.view-count-badge__icon {
  display: inline-flex;
  color: var(--gold-primary, #c9a36a);
}

.view-count-badge__icon svg {
  display: block;
}

.view-count-badge__value {
  font-variant-numeric: tabular-nums;
}

.view-count-badge__label {
  font-weight: 500;
  opacity: 0.85;
}

/* Placement inside node hero banners. */
.view-count-hero {
  margin-top: 0.9rem;
}

/* Placement on Views pages, above the listing content. */
.view-count-bar {
  display: flex;
  justify-content: flex-start;
  margin: 0 0 1.25rem;
}

/* Site-wide total view count, shown at the bottom of the footer on the front
   page (see parallel_preprocess_page()). */
.site-footer__view-count {

}

/* Pill and its caption sit side by side at the bottom of the footer. */
.view-count-footer-total {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
}

.view-count-badge--footer {
  padding: 0.4rem 0.85rem;
}

.view-count-badge--footer .view-count-badge__value {
  font-size: 0.95rem;
}

.view-count-badge__caption {
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-muted, #4a3f38);
  opacity: 0.75;
}

/* ==========================================================================
   /about — editorial "magazine" treatment
   The page is a single Views row (view.category_pages.page_2) whose body
   field holds one long article: an h2 masthead, h3 sections, paragraphs,
   lists and a feature image. Everything is scoped to body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards.
   ========================================================================== */

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper {
  background:
    radial-gradient(1200px 420px at 50% -140px, rgba(201, 163, 106, 0.18), rgba(201, 163, 106, 0) 70%),
    #faf7f1;
  padding: 0;
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper main .section {
  padding: 0;
}

/* Article canvas. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field.views-field-body {
  width: 100%;
  margin: 0 auto;
  padding: clamp(3rem, 7vw, 6rem) 6% clamp(4rem, 8vw, 7rem);
  color: #2b2620;
}

/* The article is a magazine layout: a full-width masthead, feature image and
   pull quote, with the body copy balanced across two newspaper-style columns.
   The wrapper is created by js/about-columns.js from the copy between the
   masthead and the closing pull quote. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content {
  display: block;
  max-width: 1280px;
  margin: 0 auto;
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns {
  columns: 2;
  column-gap: clamp(2rem, 4.5vw, 4.5rem);
  column-rule: 1px solid rgba(201, 163, 106, 0.22);
}

/* Undo the global rule that floated these paragraphs into half-width columns. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > p,
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > p {
  float: none;
  width: auto;
  clear: none;
  padding: 0;
  max-width: none;
  margin: 0 0 1.35rem;
  font-size: 1.05rem;
  line-height: 1.75;
  color: #35302a;
}

/* Keep section headings with the paragraph that follows them. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3,
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3 + p,
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > ul > li,
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > img,
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > p:last-of-type {
  break-inside: avoid;
  page-break-inside: avoid;
}

/* ------------------------------- Masthead -------------------------------
   :first-of-type targets the h2 even when an eyebrow paragraph precedes it. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > h2:first-of-type {
  position: relative;
  max-width: 26ch;
  margin: 0 auto 3.2rem;
  padding-bottom: 2.4rem;
  font-family: var(--secondary-font);
  font-size: clamp(2.5rem, 5.2vw, 4.4rem);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -0.02em;
  text-align: center;
  color: var(--gold);
}

/* The injected kicker is only needed on /about; the other pages already
   carry a real eyebrow paragraph ("Advisory Circle", etc.). */
:is(body.path-about) #main-wrapper .views-field-body .field-content > h2:first-of-type::before {
  content: "About Us";
  display: block;
  margin-bottom: 1.4rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  color: var(--gold-primary);
}

/* Eyebrow paragraph that precedes the masthead ("Advisory Circle",
   "Contributor Bios", "Editorial Standards"). */
:is(body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > p:first-child {
  margin: 0 0 1.4rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  text-align: center;
  color: var(--gold-primary);
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > h2:first-of-type::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 84px;
  height: 3px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent, var(--gold-primary), transparent);
}

/* --------------------------- Section headings --------------------------- */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3 {
  display: flex;
  align-items: center;
  gap: 1rem;
  max-width: none;
  margin: 2.6rem 0 1.2rem;
  font-family: var(--secondary-font);
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  font-weight: 700;
  line-height: 1.2;
  color: var(--gold);
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3::before {
  content: "";
  flex: 0 0 auto;
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
  background: var(--gold-primary);
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: linear-gradient(90deg, rgba(201, 163, 106, 0.55), rgba(201, 163, 106, 0));
}

/* Opening deck, then a drop cap on the following paragraph. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3:first-of-type + p {
  max-width: none;
  margin-bottom: 1.6rem;
  font-family: var(--secondary-font);
  font-size: clamp(1.15rem, 1.5vw, 1.38rem);
  line-height: 1.55;
  color: #2b2620;
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3:first-of-type + p strong {
  font-weight: 600;
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > h3:first-of-type + p + p::first-letter {
  float: left;
  margin: 0.12rem 0.55rem 0 0;
  font-family: var(--secondary-font);
  font-size: 4.3rem;
  font-weight: 700;
  line-height: 0.78;
  color: var(--gold-primary);
}

/* ----------------------------- Feature image ----------------------------
   Spans the full column area: multiplies the column width, gap included. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > img {
  display: block;
  width: calc(200% + clamp(2rem, 4.5vw, 4.5rem));
  max-width: none;
  height: auto;
  margin: 2rem 0;
  border-radius: 4px;
  box-shadow: 0 30px 70px -34px rgba(31, 41, 55, 0.55);
}

:is(body.path-about) #main-wrapper .views-field-body .about-columns > img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 2rem 0;
  border-radius: 4px;
  box-shadow: 0 30px 70px -34px rgba(31, 41, 55, 0.55);
}



:is(body.path-about) #block-parallel-content .views-row{
  float:none !important; 
}
:is(body.path-places) #main-wrapper{
  padding: 0rem;
}



/* -------------------------------- Lists --------------------------------- */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > ul {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.9rem;
  max-width: none;
  margin: 1.4rem 0 1.8rem;
  padding: 0;
  list-style: none;
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > ul > li {
  position: relative;
  margin: 0;
  padding: 1.05rem 1.2rem 1.05rem 2.5rem;
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.4);
  border-radius: 6px;
  font-size: 0.98rem;
  line-height: 1.65;
  color: #35302a;
  box-shadow: 0 14px 30px -24px rgba(31, 41, 55, 0.45);
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > ul > li::before {
  content: "";
  position: absolute;
  top: 1.45rem;
  left: 1.05rem;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  background: var(--gold-primary);
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > ul > li > strong:first-child {
  display: block;
  margin-bottom: 0.2rem;
  font-family: var(--secondary-font);
  font-size: 1.02rem;
  color: var(--gold);
}

/* Standalone bold labels used as category decks between paragraphs. */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > p > strong:only-child {
  display: inline-block;
  font-family: var(--secondary-font);
  font-size: 1.12rem;
  color: var(--gold);
}

/* ------------------------------ Pull quote ------------------------------ */
:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > p:last-of-type {
  max-width: 40ch;
  margin: 3.4rem auto 0;
  padding-top: 2.4rem;
  border-top: 1px solid rgba(201, 163, 106, 0.45);
  font-family: var(--secondary-font);
  font-size: clamp(1.45rem, 2.6vw, 2.05rem);
  line-height: 1.35;
  text-align: center;
  color: var(--gold);
}

:is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > p:last-of-type strong {
  font-weight: 700;
}

/* ------------------------------ Responsive ------------------------------ */
/* Narrow screens: collapse to a single reading column. */
@media (max-width: 900px) {
  :is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns {
    columns: 1;
    column-rule: none;
  }
  :is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .about-columns > img {
    width: 100%;
  }
  :is(body.path-about, body.path-advisory-circle, body.path-contributor-bios, body.path-editorial-standards) #main-wrapper .views-field-body .field-content > h2:first-of-type {
    max-width: 100%;
  }
}

/* ==========================================================================
   /contact — matching magazine treatment
   The page pairs a "Contact Us" details block (left) with the message form
   (right). Same cream canvas, gold accents and serif headings as the other
   informational pages, so the set reads as one family.
   ========================================================================== */

body.path-contact #main-wrapper {
  background:#FFF;
  padding: clamp(3rem, 7vw, 5.5rem) 6%;
}

body.path-contact #main-wrapper main .section {
  padding: 0;
}

/* Two balanced panels rather than the old 50% floats. Both blocks live inside
   main > .section > div, which becomes the two-column grid. */
body.path-contact #main-wrapper main .section > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(2.5rem, 5vw, 5rem);
  align-items: start;
  width: 100% !important;
  max-width: 1180px;
  margin: 0 auto;
}

body.path-contact #main-wrapper .row.row-offcanvas,
body.path-contact #main-wrapper .row.row-offcanvas > main,
body.path-contact #main-wrapper .row.row-offcanvas > div {
  display: block;
  width: auto !important;
  max-width: 1180px;
  margin: 0 auto;
  float: none !important;
}

body.path-contact #main-wrapper .views-element-container,
body.path-contact #main-wrapper #block-parallel-content {
  width: 100% !important;
  float: none !important;
  text-align: left !important;
}

/* ------------------------- Contact details panel ------------------------ */
body.path-contact #main-wrapper #block-parallel-views-block-basic-block-1 {
  float: none !important;
  width: 100% !important;
  padding: clamp(1.6rem, 2.4vw, 2.2rem);
  background: #ffffff;
  border-radius: 8px;
  box-shadow: 0 1px 35px -25px rgba(31, 41, 55, 0.5);
}

body.path-contact #main-wrapper #block-parallel-views-block-basic-block-1 .views-field-title .field-content {
  display: block;
  margin-bottom: 0.5rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--gold-primary);
}

body.path-contact #main-wrapper #block-parallel-views-block-basic-block-1::before {
  content: "Get in touch";
  display: block;
  margin-bottom: 0.9rem;
  font-family: var(--secondary-font);
  font-size: clamp(1.6rem, 2.6vw, 2.15rem);
  font-weight: 700;
  line-height: 1.15;
  color: var(--gold);
}

body.path-contact #main-wrapper #block-parallel-views-block-basic-block-1 .views-field-body p {
  float: none;
  width: auto;
  clear: none;
  max-width: none;
  margin: 0 0 0.9rem;
  padding: 0;
  font-size: 1.02rem;
  line-height: 1.7;
  color: #35302a;
}

body.path-contact #main-wrapper #block-parallel-views-block-basic-block-1 .views-field-body p strong {
  color: var(--gold);
}

body.path-contact #main-wrapper #block-parallel-views-block-basic-block-1 .views-field-body a {
  color: var(--gold-primary);
  text-decoration: none;
  border-bottom: 1px solid rgba(201, 163, 106, 0.5);
}

body.path-contact #main-wrapper #block-parallel-views-block-basic-block-1 .views-field-body a:hover {
  color: var(--gold);
}

/* ----------------------------- Message form ----------------------------- */
body.path-contact #main-wrapper #block-parallel-content .contact-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.1rem 1.4rem;
  padding: clamp(1.6rem, 2.4vw, 2.2rem);
  background: #ffffff;
/*  border: 1px solid rgba(201, 163, 106, 0.4); */
  border-radius: 8px;
  box-shadow: 0 24px 50px -34px rgba(31, 41, 55, 0.5);
}

/* The message field and the actions span both form columns. */
body.path-contact #main-wrapper #block-parallel-content .contact-form .field--name-message,
body.path-contact #main-wrapper #block-parallel-content .contact-form .form-actions {
  grid-column: 1 / -1;
}

body.path-contact #main-wrapper #block-parallel-content .contact-form .form-item {
  margin: 0;
}

body.path-contact #main-wrapper #block-parallel-content .contact-form label {
  display: block;
  margin-bottom: 0.4rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

body.path-contact #main-wrapper #block-parallel-content .contact-form .form-required::after {
  content: " *";
  color: var(--gold-primary);
}

body.path-contact #main-wrapper #block-parallel-content .contact-form input[type="text"],
body.path-contact #main-wrapper #block-parallel-content .contact-form input[type="email"],
body.path-contact #main-wrapper #block-parallel-content .contact-form textarea {
  width: 100%;
  max-width: none;
  padding: 0.8rem 1rem;
  background: #faf7f1;
  border: 1px solid rgba(201, 163, 106, 0.45);
  border-radius: 6px;
  font-family: var(--font-sans);
  font-size: 1rem;
  color: #2b2620;
  transition: border-color var(--transition), box-shadow var(--transition);
}

body.path-contact #main-wrapper #block-parallel-content .contact-form textarea {
  min-height: 190px;
  resize: vertical;
}

body.path-contact #main-wrapper #block-parallel-content .contact-form input[type="text"]:focus,
body.path-contact #main-wrapper #block-parallel-content .contact-form input[type="email"]:focus,
body.path-contact #main-wrapper #block-parallel-content .contact-form textarea:focus {
  outline: none;
  border-color: var(--gold-primary);
  box-shadow: 0 0 0 3px rgba(201, 163, 106, 0.2);
}

body.path-contact #main-wrapper #block-parallel-content .contact-form .button,
body.path-contact #main-wrapper #block-parallel-content .contact-form input[type="submit"] {
  display: inline-block;
  padding: 0.85rem 2.4rem;
  background: var(--gold);
  border: 1px solid var(--gold);
  border-radius: 6px;
  font-family: var(--font-sans);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #ffffff;
  cursor: pointer;
  transition: background var(--transition), color var(--transition);
}

body.path-contact #main-wrapper #block-parallel-content .contact-form .button:hover,
body.path-contact #main-wrapper #block-parallel-content .contact-form input[type="submit"]:hover {
  background: var(--gold-primary);
  border-color: var(--gold-primary);
  color: #ffffff;
}

@media (max-width: 900px) {
  body.path-contact #main-wrapper main .section > div,
  body.path-contact #main-wrapper #block-parallel-content .contact-form {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* Submit Story - category pages block */
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 {
  max-width: 900px;
  margin: 50px auto 0;
  padding: 0 20px;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .block-title,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 h2 {
  font-family: var(--secondary-font);
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
  color: var(--text-primary);
  letter-spacing: -0.3px;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row {
  background: #fff;
  padding: 25px 20px;
  border: 1px solid rgba(201, 163, 106, 0.25);
  border-radius: 4px;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.04);
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card:hover,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row:hover {
  transform: translateY(-3px);
  box-shadow: 0 4px 25px rgba(201, 163, 106, 0.2);
  border-color: var(--gold-primary);
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-field-title a,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .field-content a {
  color: var(--text-primary);
  text-decoration: none;
  font-weight: 600;
  font-size: 1rem;
  font-family: var(--secondary-font);
  line-height: 1.4;
  display: block;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card:hover .views-field-title a,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row:hover .views-field-title a {
  color: var(--gold-primary);
}

@media (max-width: 767px) {
  body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 {
    padding: 0 15px;
  }
  body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .view-content {
    grid-template-columns: 1fr;
  }
}


/* Submit Story - category pages block */
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 {
  max-width: 900px;
  margin: 50px auto 0;
  padding: 0 20px;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .block-title,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 h2 {
  font-family: var(--secondary-font);
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
  color: var(--text-primary);
  letter-spacing: -0.3px;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row {
  background: #fff;
  padding: 25px 20px;

  border-radius: 4px;
  text-align: center;
  transition: all 0.3s ease;
  /*
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.04);
    border: 1px solid rgba(201, 163, 106, 0.25);*/
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card:hover,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row:hover {
  transform: translateY(-3px);
  box-shadow: 0 4px 25px rgba(201, 163, 106, 0.2);
  border-color: var(--gold-primary);
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-field-title a,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .field-content a {
  color: var(--text-primary);
  text-decoration: none;
  font-weight: 600;
  font-size: 1rem;
  font-family: var(--secondary-font);
  line-height: 1.4;
  display: block;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card:hover .views-field-title a,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row:hover .views-field-title a {
  color: var(--gold-primary);
}

@media (max-width: 767px) {
  body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 {
    padding: 0 15px;
  }
  body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .view-content {
    grid-template-columns: 1fr;
  }
}


/* Submit Story - category pages block styled like advisory-circle about-columns */
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card h3,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row h3,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-field-title h3 {
  font-family: var(--secondary-font);
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.35;
  margin: 0 0 16px;
  color: var(--text-primary);
  letter-spacing: -0.2px;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card p,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row p,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-field-body p {
  font-size: 1rem;
  line-height: 1.9;
  color: var(--text-primary);
  margin: 0 0 1.4rem;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card p:last-child,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row p:last-child,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-field-body p:last-child {
  margin-bottom: 0;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card a,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row a {
  color: var(--gold-primary);
  text-decoration: none;
  transition: color 0.2s ease;
}

body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .category-card a:hover,
body.path-webform-submit-story #block-parallel-views-block-category-pages-block-2 .views-row a:hover {
  color: var(--text-primary);
  text-decoration: underline;
}


/* Become Contributor form */
body.path-webform-become-contributor #main-wrapper {
  padding-top: 60px;
  padding-bottom: 80px;
  background: #fafafa;
}

body.path-webform-become-contributor h1.page-title {
  font-family: var(--secondary-font);
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
  color: var(--text-primary);
  letter-spacing: -0.5px;
}

body.path-webform-become-contributor .block-system-main-block > div {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
}

body.path-webform-become-contributor .webform-submission-form {
  padding: 50px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 2px 40px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(201, 163, 106, 0.25);
}

body.path-webform-become-contributor .webform-submission-form > .form-item,
body.path-webform-become-contributor .webform-submission-form .webform-flexbox .form-item {
  margin-bottom: 28px;
}

body.path-webform-become-contributor .webform-submission-form label {
  display: block;
  margin-bottom: 10px;
  font-weight: 600;
  color: var(--text-primary);
  font-size: 0.95rem;
  letter-spacing: 0.3px;
}

body.path-webform-become-contributor .webform-submission-form .form-required:after {
  content: ' *';
  color: var(--gold-primary);
}

body.path-webform-become-contributor .webform-submission-form input[type='text'],
body.path-webform-become-contributor .webform-submission-form input[type='email'],
body.path-webform-become-contributor .webform-submission-form input[type='tel'],
body.path-webform-become-contributor .webform-submission-form input[type='url'],
body.path-webform-become-contributor .webform-submission-form textarea,
body.path-webform-become-contributor .webform-submission-form select {
  width: 100%;
  padding: 14px 18px;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  font-family: var(--font-sans);
  font-size: 0.95rem;
  transition: all 0.3s ease;
  background: #fff;
  color: var(--text-primary);
  box-sizing: border-box;
}

body.path-webform-become-contributor .webform-submission-form input[type='text']:focus,
body.path-webform-become-contributor .webform-submission-form input[type='email']:focus,
body.path-webform-become-contributor .webform-submission-form input[type='tel']:focus,
body.path-webform-become-contributor .webform-submission-form textarea:focus,
body.path-webform-become-contributor .webform-submission-form select:focus {
  outline: none;
  border-color: var(--gold-primary);
  box-shadow: 0 0 0 1px var(--gold-primary);
}

body.path-webform-become-contributor .webform-submission-form textarea {
  resize: vertical;
  min-height: 150px;
  line-height: 1.6;
}

body.path-webform-become-contributor .webform-submission-form .webform-actions {
  margin-top: 40px;
  text-align: center;
}

body.path-webform-become-contributor .webform-submission-form .webform-button--submit {
  background: var(--gold-primary);
  color: #fff;
  border: 2px solid var(--gold-primary);
  padding: 14px 50px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  border-radius: 3px;
  transition: all 0.3s ease;
  font-family: var(--font-sans);
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

body.path-webform-become-contributor .webform-submission-form .webform-button--submit:hover {
  background: transparent;
  color: var(--gold-primary);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(201, 163, 106, 0.2);
}

body.path-webform-become-contributor .webform-submission-form fieldset {
  border: 1px solid #e5e5e5;
  padding: 30px;
  margin-bottom: 35px;
  border-radius: 3px;
  background: #fcfcfc;
}

body.path-webform-become-contributor .webform-submission-form legend {
  font-weight: 700;
  color: var(--text-primary);
  padding: 0 12px;
  font-size: 1.1rem;
  font-family: var(--secondary-font);
}

@media (max-width: 767px) {
  body.path-webform-become-contributor .webform-submission-form {
    padding: 30px 25px;
  }
  body.path-webform-become-contributor .block-system-main-block > div {
    padding: 0 15px;
  }
  body.path-webform-become-contributor h1.page-title {
    font-size: 2rem;
  }
  body.path-webform-become-contributor .webform-submission-form fieldset {
    padding: 20px;
  }
}


/* Taxonomy term pages */
body[class*='path-taxonomy-term'] #main-wrapper {
  padding-top: 60px;
  padding-bottom: 80px;
}

body[class*='path-taxonomy-term'] h1.page-title {
  font-family: var(--secondary-font);
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 50px;
  color: var(--text-primary);
  letter-spacing: -0.5px;
}

body[class*='path-taxonomy-term'] .block-system-main-block {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

body[class*='path-taxonomy-term'] .view {
  max-width: 100%;
}

body[class*='path-taxonomy-term'] .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 30px;
}

body[class*='path-taxonomy-term'] .views-row {
  width: 100% !important;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid rgba(201, 163, 106, 0.2);
  height: 100%;
  display: flex;
  flex-direction: column;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 30px rgba(201, 163, 106, 0.25);
}

body[class*='path-taxonomy-term'] article.node--view-mode-card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card > div {
  padding: 25px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card h2 {
  margin: 0 0 15px 0;
  font-family: var(--secondary-font);
  font-size: 1.3rem;
  line-height: 1.4;
  font-weight: 600;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card h2 a {
  color: var(--text-primary) !important;
  text-decoration: none;
  font-size: 1.3rem !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  word-spacing: normal !important;
  font-family: var(--secondary-font);
}

body[class*='path-taxonomy-term'] article.node--view-mode-card h2 a:hover {
  color: var(--gold-primary) !important;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card .field--name-body {
  color: var(--text-muted);
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 15px;
  flex: 1;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card .links {
  margin: auto 0 0 0;
  padding: 0;
  list-style: none;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card .links a {
  color: var(--gold-primary) !important;
  text-decoration: none;
  font-size: 0.85rem !important;
  font-style: normal !important;
  font-weight: 600;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card .links a:hover {
  text-decoration: underline;
}

@media (max-width: 767px) {
  body[class*='path-taxonomy-term'] .view-content {
    grid-template-columns: 1fr;
  }
  body[class*='path-taxonomy-term'] .block-system-main-block {
    padding: 0 15px;
  }
  body[class*='path-taxonomy-term'] h1.page-title {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}


/* Modern tax term - refine card design */
body[class*='path-taxonomy-term'] article.node--view-mode-card {
  float: left;
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(201, 163, 106, 0.18);
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.05);
  transition: all 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
}

body[class*='path-taxonomy-term'] article.node--view-mode-card:hover {
  transform: translateY(-6px);
  border-color: rgba(201, 163, 106, 0.6);
  box-shadow: 0 18px 50px rgba(201, 163, 106, 0.18);
}

body[class*='path-taxonomy-term'] article.node--view-mode-card img {
  height: 230px;
  filter: saturate(1.02);
}

body[class*='path-taxonomy-term'] article.node--view-mode-card > div {
  padding: 28px 30px;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card h2 {
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: -0.2px;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card .field--name-body {
  font-size: 0.98rem;
  color: #4a4a4a;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card .links a {
  position: relative;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.8rem !important;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card .links a::after {
  content: '\\2192';
  display: inline-block;
  margin-left: 8px;
  transition: transform 0.2s ease;
}

body[class*='path-taxonomy-term'] article.node--view-mode-card:hover .links a::after {
  transform: translateX(4px);
}


/* Footer creative styling */
.site-footer {
  background: linear-gradient(180deg, #1a1a1a 0%, #0f0f0f 100%);

  padding: 60px 0 30px;
  position: relative;
}

.site-footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(201, 163, 106, 0.6) 50%, transparent 100%);
}

.site-footer .block-title {
  font-family: var(--secondary-font);
  font-size: 1.25rem;
  font-weight: 700;
  color: #f5f5f5;
  margin-bottom: 25px;
  letter-spacing: 0.5px;
  position: relative;
  padding-bottom: 12px;
}

.site-footer .block-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 40px;
  height: 2px;
  background: linear-gradient(90deg, var(--gold-primary) 0%, transparent 100%);
}

.site-footer .menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.site-footer .menu li {
  margin-bottom: 12px;
  position: relative;
}

.site-footer .menu li a {
  color: #b8b8b8;
  text-decoration: none;
  font-size: 0.95rem;
  line-height: 1.6;
  transition: all 0.3s ease;
  display: inline-block;
  position: relative;
  padding-left: 16px;
}

.site-footer .menu li a::before {
  content: '\\25B8';
  position: absolute;
  left: 0;
  color: var(--gold-primary);
  font-size: 0.8rem;
  transition: transform 0.3s ease;
}

.site-footer .menu li a:hover {
  color: #fff;
  padding-left: 22px;
}

.site-footer .menu li a:hover::before {
  transform: translateX(4px);
}

.site-footer .footer__top {
  margin-bottom: 40px;
}

.site-footer .footer__bottom {
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  text-align: center;
  color: #888;
  font-size: 0.9rem;
}

.site-footer .footer__bottom a {
  color: var(--gold-primary);
  text-decoration: none;
  transition: color 0.3s ease;
}

.site-footer .footer__bottom a:hover {
  color: #fff;
}


/* Footer fix - better contrast */
.site-footer {
  background: linear-gradient(180deg, #f9f7f3 0%, #f3efe6 100%);

}

.site-footer::before {
  background: linear-gradient(90deg, transparent 0%, rgba(201, 163, 106, 0.5) 50%, transparent 100%);
}

.site-footer .block-title {
  color: var(--text-primary);
}

.site-footer .menu li a {
  color: #5a5a5a;
}

.site-footer .menu li a:hover {
  color: var(--text-primary);
}

.site-footer .footer__bottom {
  color: #6a6a6a;
  border-top: 1px solid rgba(201, 163, 106, 0.3);
}

.site-footer .footer__bottom a:hover {
  color: var(--text-primary);
}


/* Footer copyright */
.site-footer__copyright {
  text-align: center;
  padding: 20px 0 30px;
  color: #5a5a5a;
  font-size: 0.9rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.site-footer__copyright a {
  color: var(--gold-primary);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.site-footer__copyright a:hover {
  color: var(--text-primary);
}

/* Floating CTA */
.floating-cta {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 1000;
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-end;
  gap: 12px;
}

.floating-cta__toggle {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gold-primary) 0%, #b89555 100%);
  border: none;
  color: #fff;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(201, 163, 106, 0.4);
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.floating-cta__toggle:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 30px rgba(201, 163, 106, 0.5);
}

.floating-cta__icon {
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  transition: transform 0.3s ease;
}

.floating-cta.active .floating-cta__icon {
  transform: rotate(45deg);
}

.floating-cta__menu {
  display: flex;
  flex-direction: column;
  gap: 10px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  transition: all 0.3s ease;
}

.floating-cta.active .floating-cta__menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.floating-cta__item {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
}

.floating-cta__item:hover {
  transform: scale(1.1);
  color: #fff;
}

.floating-cta__whatsapp {
  background: #25D366;
}

.floating-cta__telegram {
  background: #0088cc;
}

.floating-cta__call {
  background: var(--gold-primary);
}

@media (max-width: 767px) {
  .floating-cta {
    bottom: 20px;
    right: 20px;
  }
  .floating-cta__toggle {
    width: 55px;
    height: 55px;
  }
}


.site-footer__bottom {

}

.site-footer__copyright-inline {

}

.site-footer__copyright-inline a {
  color: var(--gold-primary);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.site-footer__copyright-inline a:hover {
  color: var(--text-primary);
}

@media (max-width: 767px) {
  .site-footer__bottom {
    flex-direction: column;
    text-align: center;
  }
}


/* Entrance reveal for content blocks, tags and view rows.
   The hidden start state is gated behind html.reveal-ready, a class that
   script.js adds as soon as it runs. If the script never loads or fails,
   nothing is hidden and all content stays visible. Only the main content and
   featured-bottom areas animate, so the header, hero and footer never flash. */
html.reveal-ready #main-wrapper .block:not(.revealed),
html.reveal-ready #main-wrapper .tag:not(.revealed),
html.reveal-ready #main-wrapper .field--name-field-tags .field__item:not(.revealed),
html.reveal-ready #main-wrapper .views-field-name:not(.revealed),
html.reveal-ready #main-wrapper .node--view-mode-card:not(.revealed),
html.reveal-ready #main-wrapper .views-row:not(.revealed),
html.reveal-ready .featured-bottom .block:not(.revealed),
html.reveal-ready .featured-bottom .views-row:not(.revealed),
html.reveal-ready .featured-bottom .node--view-mode-card:not(.revealed) {
  opacity: 0;
  transform: translateY(30px);
}

#main-wrapper .block,
#main-wrapper .tag,
#main-wrapper .field--name-field-tags .field__item,
#main-wrapper .views-field-name,
#main-wrapper .node--view-mode-card,
#main-wrapper .views-row,
.featured-bottom .block,
.featured-bottom .views-row,
.featured-bottom .node--view-mode-card {
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: opacity, transform;
}

.block.revealed,
.tag.revealed,
.field--name-field-tags .field__item.revealed,
.views-field-name.revealed,
.node--view-mode-card.revealed,
.views-row.revealed,
.section-title.revealed {
  opacity: 1;
  transform: translateY(0);
  will-change: auto;
}

.block.delay-1,
.tag.delay-1,
.views-field-name.delay-1 {
  transition-delay: 0.1s;
}

.block.delay-2,
.tag.delay-2,
.views-field-name.delay-2 {
  transition-delay: 0.2s;
}

.block.delay-3,
.tag.delay-3,
.views-field-name.delay-3 {
  transition-delay: 0.3s;
}


/* Concept listing block animation */
#block-parallel-views-block-concept-listing-block-1 {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
  display: block !important;
}


/* Ensure concept listing block visible */
#block-parallel-views-block-concept-listing-block-1,
#block-parallel-views-block-concept-listing-block-1 * {
  opacity: 1 !important;
  visibility: visible !important;
}


/* Performance optimized animations */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.featured-top__inner,
#block-parallel-featured-bottom-second .sidebar_second,
#block-parallel-views-block-concept-listing-block-1 {
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}


/* Move total view count to footer bottom */
.site-footer__bottom {
  position: relative;
}
.site-footer__view-count {
float: left;
}


/* Footer bottom layout */
.site-footer__bottom {

}

.site-footer__copyright-inline {
float: left;
padding-left: 40px;
}

.site-footer__bottom #block-parallel-powered {
  margin: 0;
}


/* Hero scroll arrow */
.hero-image-block {
  position: relative;
}
.hero-scroll-arrow {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  color: var(--gold-primary);
  animation: heroArrowBounce 2s infinite;
  z-index: 10;
}
.hero-scroll-arrow:hover {
  color: var(--gold-hover);
}
@keyframes heroArrowBounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateX(-50%) translateY(0);
  }
  40% {
    transform: translateX(-50%) translateY(-10px);
  }
  60% {
    transform: translateX(-50%) translateY(-5px);
  }
}


/* Hero scroll arrow */
.hero-image-block {
  position: relative;
}
.hero-scroll-arrow {
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  color: #c9a36a;
  animation: heroArrowBounce 2s infinite;
  z-index: 100;
  display: block;
}
.hero-scroll-arrow:hover {
  color: #bda26e;
}
@keyframes heroArrowBounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateX(-50%) translateY(0);
  }
  40% {
    transform: translateX(-50%) translateY(-12px);
  }
  60% {
    transform: translateX(-50%) translateY(-6px);
  }
}


/* Hero CTA buttons */
.hero-cta-links {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  max-width: 100%;
  margin-top: 30px;
}
.hero-cta-links a {
  display: inline-block;
  padding: 12px 30px;
  background: var(--gold-primary);
  color: #000 !important;
  text-decoration: none;
  font-weight: 600;
  border: 2px solid var(--gold-primary);
  transition: all 0.3s ease;
  /* `both` keeps the pre-animation frame and the final frame. The base state
     stays visible, so the buttons are never stuck invisible if the animation
     does not run (reduced motion, background tab, etc.). */
  animation: fadeInUp 0.8s ease both;
}
.hero-cta-links a:nth-child(2) {
  animation-delay: 0.2s;
  background: transparent;
  color: var(--gold-primary) !important;
}
.hero-cta-links a:hover {
  background: var(--gold-hover);
  border-color: var(--gold-hover);
  color: #000 !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(201, 163, 106, 0.4);
}
.hero-cta-links a:nth-child(2):hover {
  background: var(--gold-primary);
  color: #000 !important;
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* Hero CTA buttons */
.hero-cta-links{display:flex;gap:15px;flex-wrap:wrap;margin-top:30px}.btn-cta{display:inline-block;padding:12px 35px;background:#c9a36a;color:#000!important;text-decoration:none;font-weight:600;border:2px solid #c9a36a;transition:all .3s ease;animation:heroFadeUp .8s ease both}.btn-cta-outline{background:transparent;color:#c9a36a!important;animation-delay:.2s}.btn-cta:hover{background:#bda26e;border-color:#bda26e;color:#000!important;transform:translateY(-3px);box-shadow:0 5px 20px rgba(201,163,106,.5)}.btn-cta-outline:hover{background:#c9a36a;color:#000!important}@keyframes heroFadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}


.hero-content .btn-cta,.hero-content .btn-cta-outline{display:inline-block!important;padding:12px 35px!important;background:#c9a36a!important;color:#000!important;text-decoration:none!important;font-weight:600!important;border:2px solid #c9a36a!important;margin:10px 10px 10px 0!important;animation:heroFadeUp .8s ease both!important}.hero-content .btn-cta-outline{background:transparent!important;color:#c9a36a!important;animation-delay:.2s}.hero-content .btn-cta:hover{background:#bda26e!important;border-color:#bda26e!important;transform:translateY(-3px)!important;box-shadow:0 5px 20px rgba(201,163,106,.5)!important}.hero-content .btn-cta-outline:hover{background:#c9a36a!important;color:#000!important}@keyframes heroFadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}


/* Explore page scroll arrow */
.explore-scroll-arrow{/*display:flex;justify-content:center;margin:30px 0;animation:heroArrowBounce 2s infinite*/
text-align: center;padding-top: 20px;}
.explore-scroll-arrow a{color:#c9a36a}.explore-scroll-arrow a:hover{color:#bda26e}


/* Both CTA button class sets must stay visible once their load
   animation finishes (the animation fills to opacity 1). */
.hero-cta-links a,
.hero-content .btn-cta,
.hero-content .btn-cta-outline,
.btn-cta {
  opacity: 1;
}

/* Language switcher rendered as a select list */
.lang-select,
.lang-dropdown {
  background: #1a1c1c;
  color: var(--gold-primary);
  border: 1px solid var(--gold-primary);
  border-radius: 4px;
  padding: 4px 10px;
  font-size: 0.875rem;
  cursor: pointer;
}
.lang-select:hover,
.lang-select:focus,
.lang-dropdown:hover,
.lang-dropdown:focus {
  border-color: var(--gold-hover);
  outline: none;
}

/* Scroll to Top Button */
.scroll-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}

.scroll-top.visible {
  opacity: 1;
  visibility: visible;
}

.scroll-top__btn {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--gold-primary);
  color: #fff;
  border: none;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(201, 163, 106, 0.4);
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.scroll-top__btn:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 30px rgba(201, 163, 106, 0.5);
}

.scroll-top__icon {
  font-size: 20px;
  color: #fff;
}

