/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
/*!
 * Sterling Theme - Main Stylesheet
 * Premium WordPress Theme with Apple-inspired Design
 *
 * @package Sterling
 * @version 1.0.0*/
@layer properties;
body {
  font-family: var(--font-body, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-size: var(--text-base);
  font-weight: var(--font-normal);
  line-height: 1.7;
  color: var(--color-dark-gray);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
h1,h2,h3,h4,h5,h6 {
  font-family: var(--font-heading, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-weight: var(--font-semibold);
  line-height: 1.2;
  color: var(--color-heading);
  margin: 0 0 var(--space-3) 0;
  letter-spacing: -0.02em;
  transition: color var(--transition-base);
}
.display-1,.display-2 {
  font-weight: var(--font-bold);
  letter-spacing: -0.03em;
}
.display-1 {
  font-size: clamp(48px,8vw,96px);
  line-height: 1.05;
  margin-bottom: var(--space-4);
}
.display-2 {
  font-size: clamp(40px,6vw,72px);
  line-height: 1.1;
  margin-bottom: var(--space-4);
}
h1 {
  font-size: clamp(32px,5vw,48px);
  line-height: 1.15;
  font-weight: var(--font-bold);
}
@media (min-width: 768px) {
  h1 {
    font-size: var(--text-5xl);
  }
}
h2 {
  font-size: clamp(28px,4vw,36px);
  line-height: 1.2;
}
@media (min-width: 768px) {
  h2 {
    font-size: var(--text-4xl);
  }
}
h3 {
  font-size: clamp(24px,3vw,30px);
  line-height: 1.3;
}
@media (min-width: 768px) {
  h3 {
    font-size: var(--text-3xl);
  }
}
h4 {
  font-size: clamp(20px,2.5vw,24px);
  line-height: 1.4;
  font-weight: var(--font-semibold);
}
@media (min-width: 768px) {
  h4 {
    font-size: var(--text-2xl);
  }
}
h5 {
  font-size: var(--text-xl);
  line-heightокей: 1.5;
  font-weight: var(--font-semibold);
}
h6 {
  font-size: var(--text-lg);
  line-height: 1.5;
  font-weight: var(--font-semibold);
  text-transform: uppercase;
  letter-spacing: .05em;
}
p {
  margin: 0 0 var(--space-3) 0;
}
p:last-child {
  margin-bottom: 0;
}
.lead,.intro-text {
  font-size: var(--text-xl);
  line-height: 1.6;
  color: var(--color-dark-gray);
  font-weight: var(--font-normal);
}
@media (min-width: 768px) {
  .lead,.intro-text {
    font-size: var(--text-2xl);
  }
}
small,.small-text {
  font-size: var(--text-sm);
  line-height: 1.5;
}
.xs-text {
  font-size: var(--text-xs);
  line-height: 1.4;
}
strong,b {
  font-weight: var(--font-semibold);
  color: var(--color-heading);
}
em,i {
  font-style: italic;
}
mark {
  background-color: #fef08a;
  color: var(--color-heading);
  padding: 2px 4px;
  border-radius: 2px;
}
del,s {
  text-decoration: line-through;
  opacity: .6;
}
ins,u {
  text-decoration: underline;
  text-decoration-color: var(--color-primary);
  text-decoration-thickness: 2px;
  text-underline-offset: 2px;
}
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 1px dotted var(--color-gray);
}
a {
  color: var(--color-primary);
  text-decoration: none;
  transition: color var(--transition-fast);
}
a:hover {
  color: var(--color-primary-dark);
}
a:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
  border-radius: 2px;
}
.entry-content a,.content-area a {
  text-decoration: underline;
  text-decoration-color: rgba(37,99,235,.3);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: text-decoration-color var(--transition-fast);
}
.entry-content a:hover,.content-area a:hover {
  text-decoration-color: var(--color-primary);
}
body:not(.elementor-editor-active) .entry-content ul,body:not(.elementor-editor-active) .entry-content ol,body:not(.elementor-editor-active) .content-area ul,body:not(.elementor-editor-active) .content-area ol,body:not(.elementor-editor-active) .comment-content ul,body:not(.elementor-editor-active) .comment-content ol {
  margin: 0 0 var(--space-4) 0;
  padding-left: 0;
  list-style-position: inside;
  color: var(--color-dark-gray);
}
body:not(.elementor-editor-active) .entry-content ul li,body:not(.elementor-editor-active) .entry-content ol li,body:not(.elementor-editor-active) .content-area ul li,body:not(.elementor-editor-active) .content-area ol li,body:not(.elementor-editor-active) .comment-content ul li,body:not(.elementor-editor-active) .comment-content ol li {
  margin-bottom: var(--space-2);
  line-height: 1.75;
}
body:not(.elementor-editor-active) .entry-content ul li:last-child,body:not(.elementor-editor-active) .entry-content ol li:last-child,body:not(.elementor-editor-active) .content-area ul li:last-child,body:not(.elementor-editor-active) .content-area ol li:last-child,body:not(.elementor-editor-active) .comment-content ul li:last-child,body:not(.elementor-editor-active) .comment-content ol li:last-child {
  margin-bottom: 0;
}
body:not(.elementor-editor-active) .entry-content ul li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol,body:not(.elementor-editor-active) .content-area ul li>ul,body:not(.elementor-editor-active) .content-area ul li>ol,body:not(.elementor-editor-active) .content-area ol li>ul,body:not(.elementor-editor-active) .content-area ol li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol {
  margin-top: var(--space-2);
  margin-bottom: var(--space-2);
  padding-left: var(--space-5);
}
body:not(.elementor-editor-active) .entry-content ul li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ol,body:not(.elementor-editor-active) .content-area ul li>ul>li>ul,body:not(.elementor-editor-active) .content-area ul li>ul>li>ol,body:not(.elementor-editor-active) .content-area ul li>ol>li>ul,body:not(.elementor-editor-active) .content-area ul li>ol>li>ol,body:not(.elementor-editor-active) .content-area ol li>ul>li>ul,body:not(.elementor-editor-active) .content-area ol li>ul>li>ol,body:not(.elementor-editor-active) .content-area ol li>ol>li>ul,body:not(.elementor-editor-active) .content-area ol li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ol {
  padding-left: var(--space-5);
}
body:not(.elementor-editor-active) .entry-content ul li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ul li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ul li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ul li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ul li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ul li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ul li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ul li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ul li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ol li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ol li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ol li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ol li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ol li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ol li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ol li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ol li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ol>li>ol {
  padding-left: var(--space-5);
}
body:not(.elementor-editor-active) .entry-content ul li>ul>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ul>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ul li>ol>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ul>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .entry-content ol li>ol>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ul li>ul>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ul li>ul>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ul li>ul>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ul li>ul>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ul li>ul>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ul li>ul>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ul li>ul>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ul li>ul>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ul li>ol>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ul li>ol>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ul li>ol>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ul li>ol>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ul li>ol>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ul li>ol>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ul li>ol>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ul li>ol>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ol li>ul>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ol li>ul>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ol li>ul>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ol li>ul>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ol li>ul>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ol li>ul>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ol li>ul>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ol li>ul>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ol li>ol>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ol li>ol>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ol li>ol>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ol li>ol>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .content-area ol li>ol>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .content-area ol li>ol>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .content-area ol li>ol>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .content-area ol li>ol>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ul>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ul li>ol>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ul>li>ol>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ul>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ul>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ul>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ul>li>ol>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ol>li>ul>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ol>li>ul>li>ol,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ol>li>ol>li>ul,body:not(.elementor-editor-active) .comment-content ol li>ol>li>ol>li>ol>li>ol {
  padding-left: 0;
}
body:not(.elementor-editor-active) .entry-content ul,body:not(.elementor-editor-active) .content-area ul,body:not(.elementor-editor-active) .comment-content ul {
  list-style-type: none;
}
body:not(.elementor-editor-active) .entry-content ul>li,body:not(.elementor-editor-active) .content-area ul>li,body:not(.elementor-editor-active) .comment-content ul>li {
  position: relative;
  padding-left: 18px;
}
body:not(.elementor-editor-active) .entry-content ul>li::before,body:not(.elementor-editor-active) .content-area ul>li::before,body:not(.elementor-editor-active) .comment-content ul>li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .6em;
  width: 6px;
  height: 6px;
  background-color: var(--color-primary);
  border-radius: 50%;
}
body:not(.elementor-editor-active) .entry-content ul.payment_methods>li,body:not(.elementor-editor-active) .entry-content ul.wc_payment_methods>li,body:not(.elementor-editor-active) .entry-content ul.products>li,body:not(.elementor-editor-active) .entry-content ul.cart_list>li,body:not(.elementor-editor-active) .entry-content ul.product_list_widget>li,body:not(.elementor-editor-active) .entry-content ul.order_details>li,body:not(.elementor-editor-active) .entry-content ul.woocommerce-mini-cart>li,body:not(.elementor-editor-active) .content-area ul.payment_methods>li,body:not(.elementor-editor-active) .content-area ul.wc_payment_methods>li,body:not(.elementor-editor-active) .content-area ul.products>li,body:not(.elementor-editor-active) .content-area ul.cart_list>li,body:not(.elementor-editor-active) .content-area ul.product_list_widget>li,body:not(.elementor-editor-active) .content-area ul.order_details>li,body:not(.elementor-editor-active) .content-area ul.woocommerce-mini-cart>li,body:not(.elementor-editor-active) .comment-content ul.payment_methods>li,body:not(.elementor-editor-active) .comment-content ul.wc_payment_methods>li,body:not(.elementor-editor-active) .comment-content ul.products>li,body:not(.elementor-editor-active) .comment-content ul.cart_list>li,body:not(.elementor-editor-active) .comment-content ul.product_list_widget>li,body:not(.elementor-editor-active) .comment-content ul.order_details>li,body:not(.elementor-editor-active) .comment-content ul.woocommerce-mini-cart>li {
  padding-left: 0;
}
body:not(.elementor-editor-active) .entry-content ul.payment_methods>li::before,body:not(.elementor-editor-active) .entry-content ul.wc_payment_methods>li::before,body:not(.elementor-editor-active) .entry-content ul.products>li::before,body:not(.elementor-editor-active) .entry-content ul.cart_list>li::before,body:not(.elementor-editor-active) .entry-content ul.product_list_widget>li::before,body:not(.elementor-editor-active) .entry-content ul.order_details>li::before,body:not(.elementor-editor-active) .entry-content ul.woocommerce-mini-cart>li::before,body:not(.elementor-editor-active) .content-area ul.payment_methods>li::before,body:not(.elementor-editor-active) .content-area ul.wc_payment_methods>li::before,body:not(.elementor-editor-active) .content-area ul.products>li::before,body:not(.elementor-editor-active) .content-area ul.cart_list>li::before,body:not(.elementor-editor-active) .content-area ul.product_list_widget>li::before,body:not(.elementor-editor-active) .content-area ul.order_details>li::before,body:not(.elementor-editor-active) .content-area ul.woocommerce-mini-cart>li::before,body:not(.elementor-editor-active) .comment-content ul.payment_methods>li::before,body:not(.elementor-editor-active) .comment-content ul.wc_payment_methods>li::before,body:not(.elementor-editor-active) .comment-content ul.products>li::before,body:not(.elementor-editor-active) .comment-content ul.cart_list>li::before,body:not(.elementor-editor-active) .comment-content ul.product_list_widget>li::before,body:not(.elementor-editor-active) .comment-content ul.order_details>li::before,body:not(.elementor-editor-active) .comment-content ul.woocommerce-mini-cart>li::before {
  content: none;
}
body:not(.elementor-editor-active) .entry-content ul ul>li::before,body:not(.elementor-editor-active) .content-area ul ul>li::before,body:not(.elementor-editor-active) .comment-content ul ul>li::before {
  background-color: rgba(0,0,0,0);
  border: 2px solid var(--color-primary);
  width: 6px;
  height: 6px;
}
body:not(.elementor-editor-active) .entry-content ul ul ul>li::before,body:not(.elementor-editor-active) .content-area ul ul ul>li::before,body:not(.elementor-editor-active) .comment-content ul ul ul>li::before {
  background-color: var(--color-gray);
  border: none;
  border-radius: 2px;
  width: 5px;
  height: 5px;
}
body:not(.elementor-editor-active) .entry-content ol,body:not(.elementor-editor-active) .content-area ol,body:not(.elementor-editor-active) .comment-content ol {
  list-style-type: decimal;
  list-style-position: inside;
  counter-reset: item;
}
body:not(.elementor-editor-active) .entry-content ol>li,body:not(.elementor-editor-active) .content-area ol>li,body:not(.elementor-editor-active) .comment-content ol>li {
  padding-left: 0;
}
body:not(.elementor-editor-active) .entry-content ol>li::marker,body:not(.elementor-editor-active) .content-area ol>li::marker,body:not(.elementor-editor-active) .comment-content ol>li::marker {
  color: var(--color-primary);
  font-weight: var(--font-bold);
}
body:not(.elementor-editor-active) .entry-content ol ol,body:not(.elementor-editor-active) .content-area ol ol,body:not(.elementor-editor-active) .comment-content ol ol {
  list-style-type: lower-alpha;
  padding-left: var(--space-5);
}
body:not(.elementor-editor-active) .entry-content ol ol>li::marker,body:not(.elementor-editor-active) .content-area ol ol>li::marker,body:not(.elementor-editor-active) .comment-content ol ol>li::marker {
  font-weight: var(--font-semibold);
}
body:not(.elementor-editor-active) .entry-content ol ol ol,body:not(.elementor-editor-active) .content-area ol ol ol,body:not(.elementor-editor-active) .comment-content ol ol ol {
  list-style-type: lower-roman;
}
body:not(.elementor-editor-active) .entry-content ol ol ol>li::marker,body:not(.elementor-editor-active) .content-area ol ol ol>li::marker,body:not(.elementor-editor-active) .comment-content ol ol ol>li::marker {
  font-weight: var(--font-medium);
}
.list-unstyled {
  list-style: none !important;
  padding-left: 0 !important;
}
.list-unstyled li {
  padding-left: 0 !important;
}
.list-unstyled li::before,.list-unstyled li::marker {
  display: none !important;
  content: none !important;
}
.list-inline {
  list-style: none !important;
  padding-left: 0 !important;
}
.list-inline li {
  display: inline-block;
  margin-right: var(--space-2);
  margin-bottom: 0;
}
blockquote {
  margin: var(--space-5) 0;
  padding: var(--space-4) var(--space-5);
  border-left: 4px solid var(--color-primary);
  background-color: var(--color-light-gray);
  border-radius: var(--radius-md);
  font-size: var(--text-lg);
  line-height: 1.7;
  color: var(--color-dark-gray);
  font-style: italic;
}
blockquote p {
  margin-bottom: var(--space-2);
}
blockquote p:last-child {
  margin-bottom: 0;
}
blockquote cite {
  display: block;
  margin-top: var(--space-2);
  font-size: var(--text-sm);
  font-style: normal;
  color: var(--color-gray);
}
blockquote cite::before {
  content: "— ";
}
table {
  width: 100%;
  margin: var(--space-5) 0;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: var(--text-base);
  line-height: 1.6;
  color: var(--color-dark-gray);
  background-color: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  overflow: hidden;
}
@media (max-width: 767px) {
  table {
    font-size: var(--text-sm);
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
thead {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  color: var(--color-white);
}
thead th {
  font-weight: var(--font-semibold);
  text-align: left;
  padding: var(--space-3) var(--space-4);
  border-bottom: 2px solid var(--color-primary-dark);
}
thead th:first-child {
  border-top-left-radius: var(--radius-md);
}
thead th:last-child {
  border-top-right-radius: var(--radius-md);
}
@media (max-width: 767px) {
  thead th {
    padding: var(--space-2) var(--space-3);
  }
}
tbody tr {
  border-bottom: 1px solid var(--color-light-gray);
  transition: background-color var(--transition-fast);
}
tbody tr:hover {
  background-color: var(--color-off-white);
}
tbody tr:last-child {
  border-bottom: none;
}
tbody tr:nth-child(even) {
  background-color: rgba(248,249,250,.5);
}
tbody tr:nth-child(even):hover {
  background-color: var(--color-off-white);
}
tbody td {
  padding: var(--space-3) var(--space-4);
  border-right: 1px solid var(--color-light-gray);
}
tbody td:last-child {
  border-right: none;
}
tbody td:first-child {
  font-weight: var(--font-medium);
  color: var(--color-heading);
}
@media (max-width: 767px) {
  tbody td {
    padding: var(--space-2) var(--space-3);
  }
}
tbody td a {
  color: var(--color-primary);
  text-decoration: none;
  font-weight: var(--font-medium);
}
tbody td a:hover {
  text-decoration: underline;
}
tfoot {
  background-color: var(--color-off-white);
  font-weight: var(--font-medium);
}
tfoot td,tfoot th {
  padding: var(--space-3) var(--space-4);
  border-top: 2px solid var(--color-light-gray);
}
@media (max-width: 767px) {
  tfoot td,tfoot th {
    padding: var(--space-2) var(--space-3);
  }
}
caption {
  caption-side: top;
  padding: var(--space-3);
  font-size: var(--text-lg);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  text-align: left;
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 767px) {
  .table-responsive {
    margin: var(--space-4) calc(-1*var(--gutter));
    padding: 0 var(--gutter);
  }
}
dl {
  margin: var(--space-5) 0;
  padding: 0;
  color: var(--color-dark-gray);
}
dl:last-child {
  margin-bottom: 0;
}
dt {
  font-weight: var(--font-semibold);
  font-size: var(--text-lg);
  color: var(--color-heading);
  margin-top: var(--space-4);
  margin-bottom: var(--space-2);
  line-height: 1.4;
}
dt:first-child {
  margin-top: 0;
}
dt::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background-color: var(--color-primary);
  border-radius: 50%;
  margin-right: var(--space-2);
  vertical-align: middle;
}
dd {
  margin-left: var(--space-5);
  margin-bottom: var(--space-3);
  line-height: 1.7;
  color: var(--color-dark-gray);
}
@media (max-width: 767px) {
  dd {
    margin-left: var(--space-4);
  }
}
dd:last-child {
  margin-bottom: 0;
}
dd dl {
  margin: var(--space-3) 0;
  padding-left: var(--space-3);
  border-left: 2px solid var(--color-light-gray);
}
dd p {
  margin-bottom: var(--space-2);
}
dd p:last-child {
  margin-bottom: 0;
}
.dl-bordered dl {
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  padding: var(--space-4);
  background-color: var(--color-off-white);
}
.dl-bordered dl dt {
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-light-gray);
}
.dl-bordered dl dt:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    clear: left;
    width: 180px;
    margin-right: var(--space-3);
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dt::before {
    display: none;
  }
  .dl-horizontal dd {
    margin-left: 200px;
    margin-bottom: var(--space-3);
  }
}
code,kbd,samp,var {
  font-family: "SF Mono","Monaco","Inconsolata","Roboto Mono",monospace;
  font-size: .875em;
  background-color: var(--color-light-gray);
  color: var(--color-heading);
  padding: 2px 6px;
  border-radius: var(--radius-sm);
}
pre {
  margin: var(--space-4) 0;
  padding: var(--space-3);
  background-color: var(--color-charcoal);
  color: var(--color-white);
  border-radius: var(--radius-lg);
  overflow-x: auto;
  font-size: var(--text-sm);
  line-height: 1.6;
}
pre code {
  background: none;
  padding: 0;
  color: inherit;
}
hr {
  margin: var(--space-6) 0;
  border: 0;
  height: 1px;
  background-color: var(--color-light-gray);
}
address {
  margin-bottom: var(--space-3);
  font-style: normal;
  line-height: 1.7;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-justify {
  text-align: justify;
}
.text-muted {
  color: var(--color-gray);
}
.text-primary {
  color: var(--color-primary);
}
.text-success {
  color: var(--color-success);
}
.text-warning {
  color: var(--color-warning);
}
.text-error,.text-danger {
  color: var(--color-error);
}
.text-white {
  color: var(--color-white);
}
.text-dark {
  color: var(--color-heading);
}
.font-light {
  font-weight: var(--font-light);
}
.font-normal {
  font-weight: var(--font-normal);
}
.font-medium {
  font-weight: var(--font-medium);
}
.font-semibold {
  font-weight: var(--font-semibold);
}
.font-bold {
  font-weight: var(--font-bold);
}
html {
  height: 100%;
}
body {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
.site {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: calc(100vh - 70px);
  width: 100%;
}
@media (min-width: 1024px) {
  .site {
    min-height: calc(100vh - 77px);
  }
}
.site-content {
  flex: 1;
  width: 100%;
}
.sterling-footer,.site-footer {
  grid-row-start: 3;
  margin-top: auto;
}
@supports not (display: grid) {
  body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
  }
  .site {
    display: flex;
    flex-direction: column;
    flex: 1;
    width: 100%;
  }
  .site-content {
    flex: 1 0 auto;
  }
  .sterling-footer,.site-footer {
    flex-shrink: 0;
  }
}
.elementor-editor-active body {
  min-height: auto;
}
.elementor-editor-active .site {
  min-height: auto;
}
.elementor-page .site-content {
  display: flex;
  flex-direction: column;
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 50%, #fafbfc 100%);
}
.elementor-page .elementor {
  flex: 1;
}
.admin-bar .site {
  min-height: calc(100vh - 70px - 32px);
}
@media (min-width: 1024px) {
  .admin-bar .site {
    min-height: calc(100vh - 77px - 32px);
  }
}
@media screen and (max-width: 782px) {
  .admin-bar .site {
    min-height: calc(100vh - 70px - 46px);
  }
}
@supports (-webkit-touch-callout: none) {
  .site {
    min-height: -webkit-fill-available;
  }
}
.site-footer {
  position: relative;
  background-color: var(--footer-bg, #0A0A0A);
  color: var(--footer-text, rgba(255, 255, 255, 0.7));
  overflow: hidden;
  isolation: isolate;
}
.site-footer__container {
  position: relative;
  z-index: 1;
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
  padding: 0 2rem;
}
.site-footer__top {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  padding-top: 3rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid hsla(0,0%,100%,.1);
}
@media (min-width: 768px) {
  .site-footer__top {
    grid-template-columns: repeat(2, 1fr);
    gap: 3.75rem;
  }
}
@media (min-width: 1024px) {
  .site-footer__top {
    grid-template-columns: repeat(3, 1fr);
    gap: 3.75rem;
  }
}
.site-footer__logo-row {
  grid-column: 1/-1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
  gap: 1.5rem;
}
@media (min-width: 1024px) {
  .site-footer__logo-row {
    margin-bottom: 2rem;
  }
}
.site-footer__branding {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.site-footer__logo img {
  max-width: 180px;
  height: auto;
  display: block;
}
.site-footer__logo {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--footer-heading, #FFFFFF);
  text-decoration: none;
}
.site-footer__logo-link {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: .75rem;
  text-decoration: none;
  transition: opacity .2s ease;
}
.site-footer__logo-link:hover {
  opacity: .85;
}
.site-footer__logo-image {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
}
.site-footer__logo-image img {
  max-width: 180px;
  height: auto;
  display: block;
}
.site-footer__logo-text {
  flex-shrink: 0;
  display: inline-block;
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.01em;
  color: inherit;
  white-space: nowrap;
  pointer-events: none;
}
.site-footer__cta .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .875rem 2rem;
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  border: 1px solid hsla(0,0%,100%,.2);
  border-radius: .5rem;
  background: hsla(0,0%,100%,.1);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: all .3s ease;
}
.site-footer__cta .btn:hover {
  background: hsla(0,0%,100%,.15);
  border-color: hsla(0,0%,100%,.3);
  transform: translateY(-2px);
}
.site-footer__cta .btn:active {
  transform: translateY(0);
}
.site-footer__tagline {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--footer-text, rgba(255, 255, 255, 0.7));
  margin: 0;
  max-width: 280px;
}
.site-footer__contact {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.site-footer__info {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.site-footer__phone,.site-footer__email {
  font-size: 1rem;
  color: var(--footer-text, rgba(255, 255, 255, 0.7));
  text-decoration: none;
  font-weight: 400;
  transition: all .2s ease;
  line-height: 1.6;
}
.site-footer__phone i,.site-footer__email i {
  margin-right: .5rem;
  font-size: 1rem !important;
}
.site-footer__phone:hover,.site-footer__email:hover {
  color: var(--footer-link-hover, #FFFFFF);
}
.site-footer__company,.site-footer__address {
  font-size: 1rem;
  color: var(--footer-text, rgba(255, 255, 255, 0.7));
  font-weight: 400;
  line-height: 1.6;
}
.site-footer__company i,.site-footer__address i {
  margin-right: .5rem;
  font-size: 1rem !important;
}
.site-footer__company {
  margin: 0;
}
.site-footer__address {
  font-style: normal;
  margin: 0;
}
.site-footer__bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.5rem 0;
}
@media (min-width: 768px) {
  .site-footer__bottom {
    flex-direction: row;
    align-items: center;
    gap: 2rem;
  }
}
.site-footer__copyright {
  font-size: .875rem;
  color: var(--footer-text, rgba(255, 255, 255, 0.5));
  opacity: .7;
}
.site-footer__copyright p {
  margin: 0;
}
.site-footer__links .site-footer__links-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 0;
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer__links li {
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
.site-footer__links li:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: hsla(0,0%,100%,.3);
  margin: 0 .75rem;
}
.site-footer__links a {
  font-size: .875rem;
  color: var(--footer-link, rgba(255, 255, 255, 0.7));
  text-decoration: none;
  transition: color .3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}
.site-footer__links a::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  background: currentColor;
  transition: width .3s ease;
}
.site-footer__links a:hover {
  color: var(--footer-link-hover, #FFFFFF);
}
.site-footer__links a:hover::after {
  width: 100%;
}
.site-footer__social {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.site-footer__social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  color: hsla(0,0%,100%,.6);
  background: hsla(0,0%,100%,.05);
  border-radius: .5rem;
  text-decoration: none;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.site-footer__social a i {
  font-size: 1.125rem;
}
.site-footer__social a:hover {
  color: #fff;
  background: hsla(0,0%,100%,.1);
  transform: translateY(-2px);
}
.site-footer__social a:active {
  transform: translateY(0);
}
.site-footer__back-to-top {
  position: fixed;
  right: 2rem;
  bottom: 2rem;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem !important;
  height: 3rem !important;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%) !important;
  border: none !important;
  border-radius: 50% !important;
  color: #fff !important;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(var(--color-accent-rgb), 0.3) !important;
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  padding: 0 !important;
}
.site-footer__back-to-top svg {
  width: 1.25rem;
  height: 1.25rem;
}
.site-footer__back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.site-footer__back-to-top:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 20px rgba(var(--color-accent-rgb), 0.4);
}
.site-footer__back-to-top:active {
  transform: translateY(-2px);
}
@media (max-width: 767px) {
  .site-footer__back-to-top {
    right: 1rem;
    bottom: 1rem;
    width: 2.75rem;
    height: 2.75rem;
  }
}
.hide-footer .site-footer {
  display: none;
}
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
@media print {
  .site-footer__back-to-top {
    display: none;
  }
  .site-footer {
    background: #fff;
    color: #000;
  }
}
.overlay-dark {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 60%, rgba(0, 0, 0, 0.95) 100%);
  z-index: 1;
}
.overlay-dark-light {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.6) 100%);
  z-index: 1;
}
.overlay-dark-medium {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 0.8) 100%);
  z-index: 1;
}
.overlay-primary {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(var(--color-primary-rgb), 0) 0%, rgba(var(--color-primary-rgb), 0.3) 50%, rgba(var(--color-primary-rgb), 0.5) 100%);
  z-index: 1;
}
.overlay-primary-light {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(var(--color-primary-rgb), 0) 0%, rgba(var(--color-primary-rgb), 0.1) 50%, rgba(var(--color-primary-rgb), 0.25) 100%);
  z-index: 1;
}
.overlay-primary-strong {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(var(--color-primary-rgb), 0.2) 0%, rgba(var(--color-primary-rgb), 0.5) 50%, rgba(var(--color-primary-rgb), 0.7) 100%);
  z-index: 1;
}
.overlay-accent {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(var(--color-accent-rgb), 0) 0%, rgba(var(--color-accent-rgb), 0.3) 50%, rgba(var(--color-accent-rgb), 0.5) 100%);
  z-index: 1;
}
.overlay-accent-light {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(var(--color-accent-rgb), 0) 0%, rgba(var(--color-accent-rgb), 0.1) 50%, rgba(var(--color-accent-rgb), 0.25) 100%);
  z-index: 1;
}
.overlay-radial-primary-top {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at top center, rgba(var(--color-primary-rgb), 0.02) 0%, transparent 60%);
  z-index: 1;
}
.overlay-radial-accent-bottom {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at bottom center, rgba(var(--color-accent-rgb), 0.02) 0%, transparent 60%);
  z-index: 1;
}
.overlay-radial-dual {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at top left, rgba(var(--color-primary-rgb), 0.03) 0%, transparent 50%),radial-gradient(ellipse at bottom right, rgba(var(--color-accent-rgb), 0.03) 0%, transparent 50%);
  z-index: 1;
}
.overlay-dark-primary {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%),linear-gradient(180deg, rgba(var(--color-primary-rgb), 0) 0%, rgba(var(--color-primary-rgb), 0.2) 100%);
  z-index: 1;
}
.overlay-dark-accent {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%),linear-gradient(180deg, rgba(var(--color-accent-rgb), 0) 0%, rgba(var(--color-accent-rgb), 0.2) 100%);
  z-index: 1;
}
.overlay--extended {
  top: -100px;
}
.overlay--subtle {
  opacity: .6;
}
.overlay--strong {
  opacity: 1;
}
.overlay--animated {
  transition: opacity .3s ease;
}
.sterling-eyebrow__text {
  display: inline-flex;
  align-items: center;
  gap: .625rem;
  padding: .625rem 1.25rem;
  border-radius: 9999px;
  background-color: rgba(var(--color-primary-rgb), 0.06);
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  font-size: .875rem;
  font-weight: 500;
  letter-spacing: .01em;
  color: var(--color-primary);
  transition: all .3s ease;
  position: relative;
}
.sterling-eyebrow__text::before {
  content: "";
  width: .5rem;
  height: .5rem;
  border-radius: 9999px;
  background-color: var(--color-primary);
  animation: sterlingEyebrowPulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  margin-right: -0.125rem;
}
.sterling-eyebrow__text:hover {
  background-color: rgba(var(--color-primary-rgb), 0.08);
  border-color: rgba(var(--color-primary-rgb), 0.2);
}
@media (max-width: 639px) {
  .sterling-eyebrow__text {
    font-size: .8125rem;
    padding: .5rem 1rem;
  }
}
.sterling-eyebrow__text--secondary {
  background-color: rgba(var(--color-secondary-rgb), 0.06);
  border-color: rgba(var(--color-secondary-rgb), 0.12);
  color: var(--color-secondary);
}
.sterling-eyebrow__text--secondary::before {
  background-color: var(--color-secondary);
}
.sterling-eyebrow__text--secondary:hover {
  background-color: rgba(var(--color-secondary-rgb), 0.08);
  border-color: rgba(var(--color-secondary-rgb), 0.2);
}
.sterling-eyebrow__text--secondary:focus-visible {
  outline-color: var(--color-secondary);
}
.sterling-eyebrow__text--accent {
  background-color: rgba(var(--color-accent-rgb), 0.06);
  border-color: rgba(var(--color-accent-rgb), 0.12);
  color: var(--color-accent);
}
.sterling-eyebrow__text--accent::before {
  background-color: var(--color-accent);
}
.sterling-eyebrow__text--accent:hover {
  background-color: rgba(var(--color-accent-rgb), 0.08);
  border-color: rgba(var(--color-accent-rgb), 0.2);
}
.sterling-eyebrow__text--accent:focus-visible {
  outline-color: var(--color-accent);
}
@keyframes sterlingEyebrowPulse {
  0%,100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: .5;
    transform: scale(0.95);
  }
}
.sterling-eyebrow__text:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
}
@media print {
  .sterling-eyebrow__text::before {
    display: none;
  }
}
.btn,button[type=submit],input[type=submit],input[type=button],input[type=reset],.wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 24px;
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border: 2px solid rgba(0,0,0,0);
  border-radius: var(--radius-lg);
  transition: all var(--transition-fast);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
.btn:hover,button[type=submit]:hover,input[type=submit]:hover,input[type=button]:hover,input[type=reset]:hover,.wp-block-button__link:hover {
  transform: translateY(-1px);
}
.btn:active,button[type=submit]:active,input[type=submit]:active,input[type=button]:active,input[type=reset]:active,.wp-block-button__link:active {
  transform: translateY(0);
}
.btn:focus-visible,button[type=submit]:focus-visible,input[type=submit]:focus-visible,input[type=button]:focus-visible,input[type=reset]:focus-visible,.wp-block-button__link:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.btn:disabled,.btn.disabled,button[type=submit]:disabled,button[type=submit].disabled,input[type=submit]:disabled,input[type=submit].disabled,input[type=button]:disabled,input[type=button].disabled,input[type=reset]:disabled,input[type=reset].disabled,.wp-block-button__link:disabled,.wp-block-button__link.disabled {
  opacity: .5;
  cursor: not-allowed;
  pointer-events: none;
}
.btn-primary,button[type=submit],input[type=submit],.wp-block-button__link {
  color: var(--color-white);
  background-color: var(--color-primary);
  box-shadow: 0 1px 3px rgba(37,99,235,.12);
}
.btn-primary:hover,button[type=submit]:hover,input[type=submit]:hover,.wp-block-button__link:hover {
  color: var(--color-white);
  background-color: var(--color-primary-dark);
  box-shadow: 0 4px 16px rgba(37,99,235,.24);
}
.btn-primary:active,button[type=submit]:active,input[type=submit]:active,.wp-block-button__link:active {
  box-shadow: 0 2px 8px rgba(37,99,235,.18);
}
.btn-secondary {
  color: var(--color-primary);
  background-color: rgba(0,0,0,0);
  border-color: var(--color-primary);
}
.btn-secondary:hover {
  color: var(--color-white);
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.btn-tertiary {
  color: var(--color-primary);
  background-color: rgba(0,0,0,0);
  border-color: rgba(0,0,0,0);
}
.btn-tertiary:hover {
  background-color: rgba(37,99,235,.1);
}
.btn-white {
  color: var(--color-heading);
  background-color: var(--color-white);
  box-shadow: 0 1px 3px rgba(0,0,0,.1);
}
.btn-white:hover {
  color: var(--color-heading);
  background-color: var(--color-off-white);
  box-shadow: 0 4px 16px rgba(0,0,0,.15);
}
.btn-dark {
  color: var(--color-white);
  background-color: var(--color-charcoal);
}
.btn-dark:hover {
  color: var(--color-white);
  background-color: var(--color-black);
}
.btn-success {
  color: var(--color-white);
  background-color: var(--color-success);
}
.btn-success:hover {
  color: var(--color-white);
  background-color: var(--color-secondary-dark);
}
.btn-sm {
  padding: 8px 16px;
  font-size: var(--text-sm);
}
.btn-lg {
  padding: 16px 32px;
  font-size: var(--text-lg);
}
.btn-xl {
  padding: 20px 40px;
  font-size: var(--text-xl);
}
.btn-block {
  display: flex;
  width: 100%;
}
input[type=text],input[type=email],input[type=url],input[type=password],input[type=search],input[type=number],input[type=tel],input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week],textarea,select {
  width: 100%;
  padding: 12px 16px;
  font-family: var(--font-body);
  font-size: var(--text-base);
  line-height: 1.5;
  color: var(--color-heading);
  background-color: var(--color-white);
  border: 2px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  transition: all var(--transition-base);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=url]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=date]::-moz-placeholder, input[type=time]::-moz-placeholder, input[type=datetime-local]::-moz-placeholder, input[type=month]::-moz-placeholder, input[type=week]::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder {
  color: var(--color-gray);
  opacity: 1;
}
input[type=text]::placeholder,input[type=email]::placeholder,input[type=url]::placeholder,input[type=password]::placeholder,input[type=search]::placeholder,input[type=number]::placeholder,input[type=tel]::placeholder,input[type=date]::placeholder,input[type=time]::placeholder,input[type=datetime-local]::placeholder,input[type=month]::placeholder,input[type=week]::placeholder,textarea::placeholder,select::placeholder {
  color: var(--color-gray);
  opacity: 1;
}
input[type=text]:hover,input[type=email]:hover,input[type=url]:hover,input[type=password]:hover,input[type=search]:hover,input[type=number]:hover,input[type=tel]:hover,input[type=date]:hover,input[type=time]:hover,input[type=datetime-local]:hover,input[type=month]:hover,input[type=week]:hover,textarea:hover,select:hover {
  border-color: #e5e7eb;
}
input[type=text]:focus,input[type=email]:focus,input[type=url]:focus,input[type=password]:focus,input[type=search]:focus,input[type=number]:focus,input[type=tel]:focus,input[type=date]:focus,input[type=time]:focus,input[type=datetime-local]:focus,input[type=month]:focus,input[type=week]:focus,textarea:focus,select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(37,99,235,.1);
  background-color: var(--color-white);
}
input[type=text]:disabled,input[type=text][readonly],input[type=email]:disabled,input[type=email][readonly],input[type=url]:disabled,input[type=url][readonly],input[type=password]:disabled,input[type=password][readonly],input[type=search]:disabled,input[type=search][readonly],input[type=number]:disabled,input[type=number][readonly],input[type=tel]:disabled,input[type=tel][readonly],input[type=date]:disabled,input[type=date][readonly],input[type=time]:disabled,input[type=time][readonly],input[type=datetime-local]:disabled,input[type=datetime-local][readonly],input[type=month]:disabled,input[type=month][readonly],input[type=week]:disabled,input[type=week][readonly],textarea:disabled,textarea[readonly],select:disabled,select[readonly] {
  background-color: var(--color-light-gray);
  opacity: .6;
  cursor: not-allowed;
}
textarea {
  min-height: 120px;
  resize: vertical;
}
select {
  padding-right: 40px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\"><path fill=\"%234B5563\" d=\"M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z\"/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px;
  cursor: pointer;
  color: var(--color-heading);
}
input[type=checkbox],input[type=radio] {
  width: 20px;
  height: 20px;
  margin-right: 8px;
  border: 2px solid var(--color-gray);
  cursor: pointer;
  transition: all var(--transition-fast);
}
input[type=checkbox]:hover,input[type=radio]:hover {
  border-color: var(--color-primary);
}
input[type=checkbox]:checked,input[type=radio]:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
input[type=checkbox]:focus-visible,input[type=radio]:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
input[type=checkbox] {
  border-radius: var(--radius-sm);
}
input[type=radio] {
  border-radius: 50%;
}
label {
  display: inline-block;
  margin-bottom: 8px;
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  color: var(--color-heading);
}
.required {
  color: var(--color-error);
  margin-left: 4px;
}
.form-group {
  margin-bottom: var(--space-3);
}
.form-group:last-child {
  margin-bottom: 0;
}
.form-row {
  display: flex;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
}
@media (max-width: 767px) {
  .form-row {
    flex-direction: column;
  }
}
.is-valid,input.valid {
  border-color: var(--color-success);
}
.is-valid:focus,input.valid:focus {
  border-color: var(--color-success);
  box-shadow: 0 0 0 4px rgba(16,185,129,.1);
}
.is-invalid,input.invalid {
  border-color: var(--color-error);
}
.is-invalid:focus,input.invalid:focus {
  border-color: var(--color-error);
  box-shadow: 0 0 0 4px rgba(239,68,68,.1);
}
.valid-feedback,.invalid-feedback {
  display: block;
  margin-top: 6px;
  font-size: var(--text-sm);
}
.valid-feedback {
  color: var(--color-success);
}
.invalid-feedback {
  color: var(--color-error);
}
.comment-form label {
  display: block;
}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea {
  width: 100%;
}
.comment-form .form-submit {
  margin-top: var(--space-3);
}
.search-form {
  position: relative;
  display: flex;
  gap: var(--space-2);
}
.search-form label {
  flex: 1;
  margin: 0;
}
.search-form input[type=search] {
  width: 100%;
}
.search-form .search-submit {
  flex-shrink: 0;
}
.top-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1001;
  font-size: .875rem;
  line-height: 1.5;
  font-family: var(--font-heading);
  transition: transform .3s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: var(--color-secondary);
  color: var(--color-heading);
}
@media (max-width: 1023px) {
  .top-header {
    display: none;
  }
}
.top-header__container {
  max-width: 1920px;
  margin: 0 auto;
  padding: 0 var(--space-6);
}
@media (min-width: 1024px) {
  .top-header__container {
    padding: 0 var(--space-8);
  }
}
@media (min-width: 1440px) {
  .top-header__container {
    padding: 0 var(--space-10);
  }
}
@media (min-width: 1920px) {
  .top-header__container {
    padding: 0 var(--space-12);
  }
}
.top-header__content {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  min-height: 42px;
  gap: 1rem;
}
@media (max-width: 767px) {
  .top-header__content {
    flex-direction: column;
    align-items: flex-start;
    gap: .5rem;
    padding: .75rem 0;
  }
}
.top-header__left,.top-header__right {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
@media (max-width: 1023px) {
  .top-header__left,.top-header__right {
    gap: 1rem;
  }
}
@media (max-width: 767px) {
  .top-header__left,.top-header__right {
    flex-wrap: wrap;
    gap: .75rem;
  }
}
.top-header__left {
  flex: 1;
  min-width: 0;
}
@media (max-width: 767px) {
  .top-header__left {
    width: 100%;
  }
}
.top-header__right {
  flex-shrink: 0;
  display: flex;
  align-items: stretch;
}
@media (max-width: 767px) {
  .top-header__right {
    width: 100%;
    justify-content: flex-start;
  }
}
.top-header__promo {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: var(--color-heading);
}
@media (max-width: 767px) {
  .top-header__promo {
    gap: .375rem;
  }
}
.top-header__promo-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
}
.top-header__promo-icon i {
  display: inline-block;
}
.top-header__promo-text {
  font-size: .875rem;
  font-weight: 600;
  font-family: var(--font-heading);
  color: var(--color-heading);
  letter-spacing: .01em;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .top-header__promo-text {
    font-size: .8125rem;
  }
}
@media (max-width: 1023px) {
  .top-header__promo-text {
    display: none;
  }
}
.top-header__item {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: var(--color-heading);
  text-decoration: none;
  white-space: nowrap;
}
@media (max-width: 1023px) {
  .top-header__item {
    gap: .375rem;
  }
}
.top-header__item--phone:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
  border-radius: 4px;
}
@media (max-width: 1149px) {
  .top-header__item--phone {
    display: none;
  }
}
@media (max-width: 1249px) {
  .top-header__item--address {
    display: none;
  }
}
@media (max-width: 1349px) {
  .top-header__item--hours {
    display: none;
  }
}
.top-header__item--office-name {
  font-weight: 600;
  font-family: var(--font-heading);
}
.top-header__icon {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  color: var(--color-heading);
  opacity: .85;
  margin-top: -2px;
  font-size: 1rem;
}
@media (max-width: 767px) {
  .top-header__icon {
    width: .875rem;
    height: .875rem;
  }
}
.top-header__text {
  font-size: .875rem;
  font-weight: 600;
  font-family: var(--font-heading);
  color: var(--color-heading);
  letter-spacing: .01em;
}
@media (max-width: 767px) {
  .top-header__text {
    font-size: .8125rem;
  }
}
.top-header__dropdown {
  position: relative;
  display: inline-flex;
  align-items: stretch;
  height: 100%;
}
.top-header__dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: 0 1rem;
  height: 100%;
  background: var(--color-primary);
  border: none;
  border-radius: 0;
  color: #fff;
  font-size: .875rem;
  font-weight: 600;
  font-family: var(--font-heading);
  cursor: pointer;
  transition: all .2s ease;
  white-space: nowrap;
}
.top-header__dropdown-toggle:hover {
  background: var(--color-primary);
  opacity: .95;
}
.top-header__dropdown-toggle:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.top-header__dropdown.is-open .top-header__dropdown-toggle {
  background: var(--color-primary);
  opacity: .95;
}
.top-header__dropdown.is-open .top-header__dropdown-toggle .top-header__dropdown-icon {
  transform: rotate(180deg);
}
@media (max-width: 767px) {
  .top-header__dropdown-toggle {
    padding: 0 .75rem;
    font-size: .8125rem;
  }
}
.top-header__dropdown-text {
  font-family: var(--font-heading);
  font-weight: 700;
}
.top-header__dropdown-icon {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  opacity: .8;
  transition: transform .2s ease;
}
.top-header__dropdown-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 180px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
  list-style: none;
  margin: 0;
  padding: .5rem 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: all .2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 10;
}
.top-header__dropdown.is-open .top-header__dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
@media (max-width: 767px) {
  .top-header__dropdown-menu {
    min-width: 160px;
    right: auto;
    left: 0;
  }
}
.top-header__dropdown-item {
  margin: 0;
  padding: 0;
  list-style: none;
}
.top-header__dropdown-link {
  display: block;
  width: 100%;
  padding: .625rem 1rem;
  color: #2c3e50;
  font-size: .875rem;
  font-weight: 500;
  text-align: left;
  text-decoration: none;
  background: none;
  border: none;
  cursor: pointer;
  transition: background-color .15s ease,color .15s ease;
}
.top-header__dropdown-link:hover {
  background-color: rgba(var(--color-primary-rgb), 0.05);
  color: var(--color-primary);
}
.top-header__dropdown-link:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: -2px;
  background-color: rgba(var(--color-primary-rgb), 0.08);
}
@media (max-width: 767px) {
  .top-header__dropdown-link {
    padding: .5rem .875rem;
    font-size: .8125rem;
  }
}
.top-header__dropdown--language .top-header__dropdown-toggle {
  min-width: 80px;
  justify-content: center;
}
.top-header__dropdown--language .top-header__dropdown-menu {
  min-width: 140px;
}
@media print {
  .top-header {
    display: none;
  }
}
.cc-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
  background-color: rgba(0,0,0,0);
  border-top: none;
  border-bottom: none;
  transition: all cubic-bezier(0.4, 0, 0.2, 1) 300ms;
  will-change: transform,box-shadow;
}
.header-transparent .cc-header:not(.is-scrolled) {
  background-color: hsla(0,0%,100%,.4);
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
}
.header-solid .cc-header {
  background-color: var(--color-white);
  border-bottom: 1px solid rgba(0,0,0,.08);
}
@media (min-width: 1024px) {
  body.has-top-header .cc-header {
    top: 42px;
  }
}
.cc-header__wrapper {
  position: relative;
  width: 100%;
}
.cc-header__inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
  min-height: 77px;
  padding: 12px var(--space-6);
  transition: padding cubic-bezier(0.4, 0, 0.2, 1) 300ms;
  width: 100%;
}
@media (max-width: 1023px) {
  .cc-header__inner {
    padding: 12px var(--space-4);
  }
}
@media (min-width: 1024px) {
  .cc-header__inner {
    padding: 12px var(--space-8);
  }
}
@media (min-width: 1440px) {
  .cc-header__inner {
    padding: 12px var(--space-10);
  }
}
@media (min-width: 1920px) {
  .cc-header__inner {
    padding: 12px var(--space-12);
  }
}
.cc-header.is-scrolled {
  background-color: var(--color-white);
  border-bottom: 1px solid rgba(0,0,0,.1);
  box-shadow: 0 4px 20px rgba(0,0,0,.08);
}
.cc-header.is-scrolled .cc-header__inner {
  padding-top: 8px;
  padding-bottom: 8px;
}
.cc-header.is-scrolled .cc-header__logo .custom-logo {
  height: 38px;
}
@media (min-width: 768px) {
  .cc-header.is-scrolled .cc-header__logo .custom-logo {
    height: 42px;
  }
}
@media (min-width: 1024px) {
  .cc-header.is-scrolled .cc-header__logo .custom-logo {
    height: 46px;
  }
}
.cc-header.is-hidden {
  transform: translateY(-100%);
}
.cc-header--transparent {
  position: fixed;
  background-color: hsla(0,0%,100%,.8);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border-top: none;
  border-bottom: 1px solid rgba(0,0,0,.05);
}
.cc-header--transparent.is-scrolled {
  background-color: var(--color-white);
  border-top-color: var(--color-primary);
  border-bottom-color: rgba(0,0,0,.1);
}
.cc-header--transparent.is-scrolled .cc-header__logo-link,.cc-header--transparent.is-scrolled .cc-nav-menu a {
  color: var(--color-body);
}
.cc-header--transparent.is-scrolled .cc-header__search-toggle,.cc-header--transparent.is-scrolled .cc-header__menu-toggle {
  color: var(--color-primary);
}
.cc-header--transparent .cc-header__logo-link,.cc-header--transparent .cc-nav-menu a {
  color: var(--color-body);
}
.cc-header--transparent .cc-header__search-toggle,.cc-header--transparent .cc-header__menu-toggle {
  color: var(--color-primary);
}
.cc-header--transparent .cc-header__cta {
  box-shadow: 0 4px 12px rgba(var(--color-primary-rgb), 0.35);
}
.cc-header--minimal {
  border-top-width: 2px;
}
.cc-header--minimal .cc-header__inner {
  height: 72px;
}
@media (min-width: 1024px) {
  .cc-header--minimal .cc-header__inner {
    height: 80px;
  }
}
body.admin-bar .top-header {
  top: 32px;
}
@media (max-width: 782px) {
  body.admin-bar .top-header {
    top: 46px;
  }
}
body.admin-bar .cc-header {
  top: 32px;
}
@media (max-width: 782px) {
  body.admin-bar .cc-header {
    top: 46px;
  }
}
body.admin-bar.has-top-header .cc-header {
  top: 74px;
}
@media (max-width: 782px) {
  body.admin-bar.has-top-header .cc-header {
    top: 88px;
  }
}
.cc-header__logo {
  display: flex;
  align-items: center;
  gap: .75rem;
  flex-shrink: 0;
  z-index: 10;
  margin-right: auto;
}
.cc-header__logo .custom-logo {
  display: block;
  height: 42px;
  width: auto;
  transition: all cubic-bezier(0.4, 0, 0.2, 1) 300ms;
}
@media (min-width: 768px) {
  .cc-header__logo .custom-logo {
    height: 46px;
  }
}
@media (min-width: 1024px) {
  .cc-header__logo .custom-logo {
    height: 52px;
  }
}
.cc-header__logo-link {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: .75rem;
  text-decoration: none;
  color: var(--color-heading);
  transition: opacity var(--transition-fast);
}
.cc-header__logo-link:hover {
  opacity: .75;
}
.cc-header__logo-link:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
  border-radius: var(--radius-sm);
}
.cc-header__logo-link--text .cc-header__brand-wrapper {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.cc-header__logo-image {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
}
.cc-header__logo-image img {
  display: block;
  height: auto;
  vertical-align: middle;
}
.cc-header__logo-text {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: inherit;
  white-space: nowrap;
  pointer-events: none;
}
@media (min-width: 768px) {
  .cc-header__logo-text {
    font-size: 1.625rem;
  }
}
@media (min-width: 1024px) {
  .cc-header__logo-text {
    font-size: 1.75rem;
  }
}
.cc-header__site-title {
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: var(--font-bold);
  line-height: 1;
  letter-spacing: .5px;
  color: var(--color-primary);
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .cc-header__site-title {
    font-size: 24px;
  }
}
.cc-header__site-tagline {
  display: block;
  font-size: 9px;
  font-weight: var(--font-medium);
  letter-spacing: 1.5px;
  color: var(--color-gray);
  text-transform: uppercase;
  margin-top: 2px;
}
@media (min-width: 768px) {
  .cc-header__site-tagline {
    font-size: 10px;
  }
}
.cc-header__nav {
  display: none;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
}
@media (min-width: 1024px) {
  .cc-header__nav {
    display: flex;
  }
}
.cc-nav-menu {
  display: flex;
  align-items: center;
  gap: 4px;
  list-style: none !important;
  margin: 0;
  padding: 0;
}
@media (min-width: 1280px) {
  .cc-nav-menu {
    gap: 6px;
  }
}
.cc-nav-menu>li {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none !important;
}
.cc-nav-menu>li::before,.cc-nav-menu>li::marker {
  display: none !important;
  content: none !important;
}
.cc-nav-menu>li>a {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  font-size: 17px;
  font-family: var(--font-heading);
  font-weight: 700 !important;
  color: rgba(60,60,67,.85);
  text-decoration: none;
  white-space: nowrap;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1),opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);
  line-height: 1.4;
  letter-spacing: .01em;
}
.cc-nav-menu>li>a:hover {
  color: var(--color-primary);
  opacity: 1;
}
.cc-nav-menu>li>a:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
  border-radius: 4px;
}
.cc-nav-menu>li.current-menu-item>a,.cc-nav-menu>li.current-menu-ancestor>a,.cc-nav-menu>li.current_page_item>a {
  color: var(--color-primary);
  opacity: 1;
}
.cc-nav-menu>li.menu-item-has-children::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 12px;
  background: rgba(0,0,0,0);
  pointer-events: auto;
}
.cc-nav-menu>li.menu-item-has-children>a::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 6px;
  border-left: 3px solid rgba(0,0,0,0);
  border-right: 3px solid rgba(0,0,0,0);
  border-top: 4px solid currentColor;
  opacity: .5;
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1),transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
  vertical-align: middle;
}
.cc-nav-menu>li.menu-item-has-children:hover>a::after {
  opacity: .85;
  transform: translateY(1px);
}
.cc-nav-menu>li.menu-item-has-children.current-menu-item>a,.cc-nav-menu>li.menu-item-has-children.current-menu-ancestor>a,.cc-nav-menu>li.menu-item-has-children.current_page_item>a {
  color: var(--color-primary);
}
.cc-nav-menu .sub-menu {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  min-width: 220px;
  margin: 0;
  padding: 6px;
  list-style: none !important;
  background-color: hsla(0,0%,100%,.98);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 8px 24px rgba(0,0,0,.12),0 2px 6px rgba(0,0,0,.04);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1),visibility 200ms cubic-bezier(0.4, 0, 0.2, 1),transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1000;
}
.cc-nav-menu .sub-menu li {
  margin: 0;
  padding: 0;
  list-style: none !important;
}
.cc-nav-menu .sub-menu li::before,.cc-nav-menu .sub-menu li::marker {
  display: none !important;
  content: none !important;
}
.cc-nav-menu .sub-menu li a {
  display: block;
  padding: 8px 14px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(60,60,67,.85);
  text-decoration: none;
  white-space: nowrap;
  border-radius: 6px;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1),background-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  letter-spacing: .01em;
  list-style: none !important;
}
.cc-nav-menu .sub-menu li a:hover {
  color: var(--color-primary);
  background-color: rgba(var(--color-primary-rgb), 0.04);
}
.cc-nav-menu .sub-menu li a:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.cc-nav-menu .sub-menu li.current-menu-item a {
  color: var(--color-primary);
  font-weight: 600;
  background-color: rgba(var(--color-primary-rgb), 0.06);
}
.cc-nav-menu .sub-menu .sub-menu {
  top: 0;
  left: calc(100% + 8px);
  margin-top: 0;
}
.cc-nav-menu .sub-menu .menu-item-has-children>a {
  position: relative;
  padding-right: 32px;
}
.cc-nav-menu .sub-menu .menu-item-has-children>a::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 3px solid rgba(0,0,0,0);
  border-bottom: 3px solid rgba(0,0,0,0);
  border-left: 4px solid currentColor;
  opacity: .5;
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1),right 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.cc-nav-menu .sub-menu .menu-item-has-children>a:hover::after {
  opacity: .85;
  right: 12px;
}
.cc-nav-menu .menu-item-has-children:hover>.sub-menu,.cc-nav-menu .menu-item-has-children:focus-within>.sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: all;
}
.cc-header__actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-left: auto;
  z-index: 10;
}
@media (min-width: 1024px) {
  .cc-header__actions {
    gap: var(--space-3);
  }
}
.cc-header__search-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  background: rgba(0,0,0,0) !important;
  border: none !important;
  border-radius: 50% !important;
  color: var(--color-dark-gray) !important;
  cursor: pointer;
  transition: all cubic-bezier(0.4, 0, 0.2, 1) 200ms;
}
@media (min-width: 768px) {
  .cc-header__search-toggle {
    width: 44px;
    height: 44px;
    margin-right: var(--space-2);
  }
}
.cc-header__search-toggle:hover {
  background-color: var(--color-off-white);
  color: var(--color-primary);
}
.cc-header__search-toggle:hover .cc-icon {
  transform: scale(1.1);
}
.cc-header__search-toggle:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.cc-header__search-toggle:active {
  transform: scale(0.95);
}
.cc-header__search-toggle .cc-icon {
  width: 20px;
  height: 20px;
  transition: transform cubic-bezier(0.4, 0, 0.2, 1) 200ms;
}
@media (min-width: 768px) {
  .cc-header__search-toggle .cc-icon {
    width: 22px;
    height: 22px;
  }
}
.cc-header__cta {
  display: none;
  padding: 14px 28px;
  font-size: 15px;
  font-weight: var(--font-semibold);
  letter-spacing: .3px;
  color: var(--color-white);
  background: var(--color-primary);
  border: none;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(var(--color-primary-rgb), 0.2);
  transition: all cubic-bezier(0.4, 0, 0.2, 1) 200ms;
  cursor: pointer;
}
@media (max-width: 1023px) {
  .cc-header__cta {
    display: none !important;
  }
}
@media (min-width: 1024px) {
  .cc-header__cta {
    display: inline-flex;
    padding: 14px 32px;
  }
}
.cc-header__cta:hover {
  color: var(--color-white);
  background: var(--color-primary-dark);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(var(--color-primary-rgb), 0.3);
}
.cc-header__cta:focus-visible {
  color: var(--color-white);
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.cc-header__cta:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(var(--color-primary-rgb), 0.2);
}
.cc-header__menu-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  transition: all var(--transition-fast);
}
@media (min-width: 1024px) {
  .cc-header__menu-toggle {
    display: none;
  }
}
.cc-header__menu-toggle:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
  border-radius: var(--radius-sm);
}
.cc-hamburger {
  position: relative;
  width: 24px;
  height: 18px;
}
.cc-hamburger__line {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--color-charcoal);
  border-radius: 2px;
  transition: all var(--transition-base);
}
.cc-hamburger__line:nth-child(1) {
  top: 0;
}
.cc-hamburger__line:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}
.cc-hamburger__line:nth-child(3) {
  bottom: 0;
}
.cc-header__menu-toggle[aria-expanded=true] .cc-hamburger .cc-hamburger__line:nth-child(1) {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.cc-header__menu-toggle[aria-expanded=true] .cc-hamburger .cc-hamburger__line:nth-child(2) {
  opacity: 0;
}
.cc-header__menu-toggle[aria-expanded=true] .cc-hamburger .cc-hamburger__line:nth-child(3) {
  bottom: 50%;
  transform: translateY(50%) rotate(-45deg);
}
.cc-mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  display: flex;
  pointer-events: none;
}
@media (min-width: 1024px) {
  .cc-mobile-menu {
    display: none;
  }
}
.cc-mobile-menu::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,.5);
  opacity: 0;
  transition: opacity .3s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}
.cc-mobile-menu[aria-hidden=false] {
  pointer-events: auto;
}
.cc-mobile-menu[aria-hidden=false]::before {
  opacity: 1;
  pointer-events: auto;
}
.cc-mobile-menu[aria-hidden=false] .cc-mobile-menu__panel {
  transform: translateX(0);
}
.cc-mobile-menu__panel {
  position: relative;
  margin-left: auto;
  width: 85%;
  max-width: 400px;
  height: 100%;
  background-color: #fff;
  transform: translateX(100%);
  transition: transform .3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  box-shadow: -4px 0 24px rgba(0,0,0,.15);
  z-index: 2;
}
.cc-mobile-menu__inner {
  padding: .5rem var(--space-6) var(--space-8);
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
.cc-mobile-menu__promo {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-4) 0;
  border-bottom: 1px solid rgba(0,0,0,.08);
  margin-bottom: var(--space-2);
}
.cc-mobile-menu__promo-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-primary);
}
.cc-mobile-menu__promo-icon svg,.cc-mobile-menu__promo-icon i {
  width: 100%;
  height: 100%;
  font-size: 1.125rem;
}
.cc-mobile-menu__promo-text {
  flex: 1;
  font-size: .9375rem;
  font-family: var(--font-heading);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  line-height: 1.5;
}
.cc-mobile-menu__top-info {
  padding: var(--space-4) 0;
  border-bottom: 1px solid rgba(0,0,0,.08);
}
.cc-mobile-menu__cta {
  margin-top: 0;
}
.cc-mobile-office-selector {
  margin-bottom: var(--space-4);
}
.cc-mobile-office-select {
  width: 100%;
  padding: var(--space-3);
  font-size: .9375rem;
  font-family: var(--font-heading);
  font-weight: var(--font-medium);
  color: var(--color-heading);
  background-color: var(--color-light-gray);
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 8px;
  outline: none;
  transition: all .2s ease;
  cursor: pointer;
}
.cc-mobile-office-select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(var(--color-primary-rgb), 0.1);
}
.cc-mobile-info-item {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-2) 0;
  font-size: .9375rem;
  font-family: var(--font-heading);
  color: var(--color-heading);
}
.cc-mobile-info-item:first-child {
  padding-top: 0;
}
.cc-mobile-info-item:last-child {
  padding-bottom: 0;
}
.cc-mobile-info-item i {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  font-size: 1.125rem;
  color: var(--color-primary);
  opacity: .85;
  margin-top: 2px;
}
.cc-mobile-info-item span {
  flex: 1;
  line-height: 1.5;
}
.cc-mobile-nav-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.cc-mobile-nav-menu li {
  border-bottom: 1px solid var(--color-light-gray);
}
.cc-mobile-nav-menu li:last-child {
  border-bottom: none;
}
.cc-mobile-nav-menu li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3) 0;
  font-size: var(--text-lg);
  font-weight: var(--font-medium);
  color: var(--color-heading);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.cc-mobile-nav-menu li a:hover {
  color: var(--color-primary);
}
.cc-mobile-nav-menu li.current-menu-item>a {
  color: var(--color-primary);
  font-weight: var(--font-semibold);
}
.cc-mobile-nav-menu .sub-menu {
  list-style: none;
  margin: 0;
  padding: 0 0 var(--space-2) var(--space-3);
}
.cc-mobile-nav-menu .sub-menu li {
  border-bottom: none;
}
.cc-mobile-nav-menu .sub-menu li a {
  position: relative;
  padding: var(--space-2) 0 var(--space-2) var(--space-4);
  font-size: var(--text-base);
  font-weight: var(--font-normal);
  color: var(--color-dark-gray);
}
.cc-mobile-nav-menu .sub-menu li a::before {
  content: "–";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-primary);
  font-weight: var(--font-medium);
  opacity: .6;
}
.cc-mobile-menu__cta {
  margin-top: 0;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-light-gray);
}
.cc-search-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 400ms cubic-bezier(0.4, 0, 0.2, 1),visibility 400ms cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}
.cc-search-modal[aria-hidden=false] {
  opacity: 1;
  visibility: visible;
}
.cc-search-modal[aria-hidden=false] .cc-search-modal__overlay {
  opacity: 1;
}
.cc-search-modal[aria-hidden=false] .cc-search-modal__container {
  opacity: 1;
  transform: scale(1);
}
.cc-search-modal[aria-hidden=false] .cc-search-modal__content {
  opacity: 1;
  transform: translateY(0);
}
.cc-search-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.95);
  backdrop-filter: blur(30px) saturate(180%);
  -webkit-backdrop-filter: blur(30px) saturate(180%);
  opacity: 0;
  transition: opacity 300ms cubic-bezier(0.4, 0, 0.2, 1);
}
.cc-search-modal__container {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  opacity: 0;
  transform: scale(0.96);
  transition: opacity 400ms cubic-bezier(0.4, 0, 0.2, 1) 50ms,transform 400ms cubic-bezier(0.4, 0, 0.2, 1) 50ms;
}
@media (min-width: 768px) {
  .cc-search-modal__container {
    padding: 40px;
  }
}
.cc-search-modal__inner {
  position: relative;
  width: 100%;
  max-width: 680px;
}
.cc-search-modal__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 400ms cubic-bezier(0.4, 0, 0.2, 1) 100ms,transform 400ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
}
@media (min-width: 768px) {
  .cc-search-modal__content {
    gap: 48px;
  }
}
.cc-search-modal__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 28px;
  font-weight: var(--font-bold);
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--color-white);
  text-align: center;
}
@media (min-width: 768px) {
  .cc-search-modal__title {
    font-size: 40px;
  }
}
@media (min-width: 1024px) {
  .cc-search-modal__title {
    font-size: 48px;
  }
}
.cc-search-modal__form {
  width: 100%;
}
.cc-search-modal__form .sterling-search-form {
  max-width: 100%;
}
.cc-search-modal__form .sterling-search-wrapper {
  position: relative;
  width: 100%;
}
.cc-search-modal__form .sterling-search-icon {
  position: absolute;
  left: 24px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  color: hsla(0,0%,100%,.4);
  pointer-events: none;
  transition: color 300ms ease;
  z-index: 2;
}
@media (min-width: 768px) {
  .cc-search-modal__form .sterling-search-icon {
    left: 32px;
    width: 28px;
    height: 28px;
  }
}
.cc-search-modal__form .sterling-search-field {
  width: 100%;
  height: 72px;
  padding: 0 24px 0 64px;
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: var(--font-medium);
  line-height: 1.5;
  color: var(--color-white);
  background: hsla(0,0%,100%,.25);
  border: 2px solid hsla(0,0%,100%,.4);
  border-radius: 16px;
  outline: none;
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
@media (min-width: 768px) {
  .cc-search-modal__form .sterling-search-field {
    height: 88px;
    padding: 0 32px 0 80px;
    font-size: 24px;
    border-radius: 20px;
  }
}
@media (min-width: 1024px) {
  .cc-search-modal__form .sterling-search-field {
    height: 96px;
    font-size: 28px;
  }
}
.cc-search-modal__form .sterling-search-field::-moz-placeholder {
  color: hsla(0,0%,100%,.5);
  opacity: 1;
}
.cc-search-modal__form .sterling-search-field::placeholder {
  color: hsla(0,0%,100%,.5);
  opacity: 1;
}
.cc-search-modal__form .sterling-search-field::-webkit-input-placeholder {
  color: hsla(0,0%,100%,.5);
  opacity: 1;
}
.cc-search-modal__form .sterling-search-field::-moz-placeholder {
  color: hsla(0,0%,100%,.5);
  opacity: 1;
}
.cc-search-modal__form .sterling-search-field:hover {
  background: hsla(0,0%,100%,.3);
  border-color: hsla(0,0%,100%,.5);
}
.cc-search-modal__form .sterling-search-field:focus {
  background: hsla(0,0%,100%,.35);
  border-color: hsla(0,0%,100%,.6);
  box-shadow: 0 0 0 4px hsla(0,0%,100%,.15);
}
.cc-search-modal__form .sterling-search-field:focus+.sterling-search-icon {
  color: hsla(0,0%,100%,.7);
}
.cc-search-modal__form .sterling-search-field::-webkit-search-decoration,.cc-search-modal__form .sterling-search-field::-webkit-search-cancel-button,.cc-search-modal__form .sterling-search-field::-webkit-search-results-button,.cc-search-modal__form .sterling-search-field::-webkit-search-results-decoration {
  -webkit-appearance: none;
  appearance: none;
}
.cc-search-modal__close {
  position: fixed;
  top: 24px;
  right: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  background: hsla(0,0%,100%,.12);
  border: 1px solid hsla(0,0%,100%,.2);
  border-radius: 12px;
  color: hsla(0,0%,100%,.7);
  cursor: pointer;
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 2001;
}
@media (min-width: 768px) {
  .cc-search-modal__close {
    top: 32px;
    right: 32px;
    width: 52px;
    height: 52px;
  }
}
.cc-search-modal__close:hover {
  background: hsla(0,0%,100%,.2);
  border-color: hsla(0,0%,100%,.3);
  color: var(--color-white);
  transform: scale(1.05);
}
.cc-search-modal__close:active {
  transform: scale(0.98);
}
.cc-search-modal__close:focus-visible {
  outline: 2px solid hsla(0,0%,100%,.5);
  outline-offset: 2px;
}
.cc-search-modal__close .cc-icon {
  width: 24px;
  height: 24px;
}
.cc-search-modal__hint {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: var(--font-medium);
  color: hsla(0,0%,100%,.6);
}
@media (min-width: 768px) {
  .cc-search-modal__hint {
    font-size: 15px;
  }
}
.cc-search-modal__hint span {
  line-height: 1;
}
.cc-kbd {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 28px;
  padding: 0 10px;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: var(--font-semibold);
  line-height: 1;
  color: hsla(0,0%,100%,.8);
  background: hsla(0,0%,100%,.12);
  border: 1px solid hsla(0,0%,100%,.2);
  border-radius: 6px;
  box-shadow: 0 2px 4px rgba(0,0,0,.1);
  text-transform: uppercase;
  letter-spacing: .05em;
}
@media (min-width: 768px) {
  .cc-kbd {
    min-width: 36px;
    height: 32px;
    font-size: 14px;
  }
}
body.menu-open {
  overflow: hidden;
}
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: var(--color-light-gray);
  border-radius: var(--radius-sm);
  box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
  clip: auto !important;
  clip-path: none;
  color: var(--color-primary);
  display: block;
  font-size: var(--text-sm);
  font-weight: var(--font-bold);
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}
.cc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 24px;
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  line-height: 1.5;
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-fast);
}
.cc-btn:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.cc-btn--primary {
  color: var(--color-white);
  background-color: var(--color-primary);
  box-shadow: 0 1px 3px rgba(37,99,235,.12);
}
.cc-btn--primary:hover {
  color: var(--color-white);
  background-color: var(--color-primary-dark);
  box-shadow: 0 4px 16px rgba(37,99,235,.24);
  transform: translateY(-0.5px);
}
.cc-btn--primary:active {
  color: var(--color-white);
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(37,99,235,.18);
}
.cc-btn--primary:focus,.cc-btn--primary:focus-visible {
  color: var(--color-white);
}
.cc-btn--block {
  width: 100%;
}
.product-page-header,.page-header {
  position: relative;
  padding: 48px 0 32px;
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
  border-bottom: 1px solid rgba(0,0,0,.06);
}
@media (max-width: 768px) {
  .product-page-header,.page-header {
    padding: 32px 0 24px;
  }
}
.product-page-header.no-border,.page-header.no-border {
  border-bottom: none;
}
.product-page-header .container,.page-header .container {
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
  padding: 0 32px;
}
@media (max-width: 1024px) {
  .product-page-header .container,.page-header .container {
    padding: 0 24px;
  }
}
@media (max-width: 768px) {
  .product-page-header .container,.page-header .container {
    padding: 0 16px;
  }
}
.product-page-title,.page-title {
  font-size: clamp(32px,5vw,48px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.1;
  color: #0a0a0a;
  margin: 0;
  max-width: 900px;
}
@media (max-width: 768px) {
  .product-page-title,.page-title {
    font-size: clamp(28px,6vw,36px);
  }
}
.product-breadcrumbs,.page-breadcrumbs {
  margin-bottom: 24px;
}
@media (max-width: 768px) {
  .product-breadcrumbs,.page-breadcrumbs {
    margin-bottom: 16px;
  }
}
.product-breadcrumbs .woocommerce-breadcrumb,.product-breadcrumbs a,.page-breadcrumbs .woocommerce-breadcrumb,.page-breadcrumbs a {
  font-size: 14px;
  font-weight: 500;
  color: #6b7280;
  padding: 0;
  text-decoration: none;
  transition: color .2s ease;
}
.product-breadcrumbs .woocommerce-breadcrumb:hover,.product-breadcrumbs a:hover,.page-breadcrumbs .woocommerce-breadcrumb:hover,.page-breadcrumbs a:hover {
  color: var(--color-primary, #2563EB);
}
.product-breadcrumbs span,.product-breadcrumbs .separator,.page-breadcrumbs span,.page-breadcrumbs .separator {
  color: #9ca3af;
  margin: 0 8px;
  opacity: .5;
}
.product-content-wrapper {
  padding: 64px 0 96px;
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 50%, #fafbfc 100%);
}
@media (max-width: 768px) {
  .product-content-wrapper {
    padding: 48px 0 64px;
  }
}
.product-content-wrapper .container {
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
  padding: 0 32px;
}
@media (max-width: 1024px) {
  .product-content-wrapper .container {
    padding: 0 24px;
  }
}
@media (max-width: 768px) {
  .product-content-wrapper .container {
    padding: 0 16px;
  }
}
.archive-description {
  font-size: 16px;
  line-height: 1.6;
  color: rgba(0,0,0,.7);
  margin-top: 16px;
  max-width: 700px;
}
@media (max-width: 768px) {
  .archive-description {
    font-size: 15px;
    margin-top: 12px;
  }
}
.archive-description p {
  margin: 0;
}
.page-breadcrumbs {
  margin-bottom: 24px;
  font-size: 14px;
  color: rgba(0,0,0,.6);
}
.page-breadcrumbs a {
  color: rgba(0,0,0,.6);
  text-decoration: none;
  transition: color .2s ease;
}
.page-breadcrumbs a:hover {
  color: var(--color-primary);
}
.page-breadcrumbs .separator {
  margin: 0 8px;
  opacity: .5;
}
.sterling-search-form {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}
.sterling-search-wrapper {
  position: relative;
  width: 100%;
}
.sterling-search-icon {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-gray);
  pointer-events: none;
  transition: color var(--transition-fast);
  z-index: 2;
}
.sterling-search-field {
  width: 100%;
  height: 56px;
  padding: 0 24px 0 52px;
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: var(--font-normal);
  line-height: 1.5;
  color: var(--color-heading);
  background-color: var(--color-light-gray);
  border: 2px solid rgba(0,0,0,0);
  border-radius: 12px;
  outline: none;
  transition: all var(--transition-base);
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
.sterling-search-field::-moz-placeholder {
  color: var(--color-gray);
  opacity: 1;
}
.sterling-search-field::placeholder {
  color: var(--color-gray);
  opacity: 1;
}
.sterling-search-field:hover {
  background-color: #eeeff1;
}
.sterling-search-field:focus {
  background-color: var(--color-white);
  border-color: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(37,99,235,.1);
}
.sterling-search-field:focus+.sterling-search-icon {
  color: var(--color-primary);
}
.sterling-search-field::-webkit-search-decoration,.sterling-search-field::-webkit-search-cancel-button,.sterling-search-field::-webkit-search-results-button,.sterling-search-field::-webkit-search-results-decoration {
  -webkit-appearance: none;
  appearance: none;
}
.widget_search .sterling-search-form {
  max-width: 100%;
}
.widget_search .sterling-search-field {
  height: 48px;
  padding: 0 20px 0 48px;
  font-size: 15px;
}
.widget_search .sterling-search-icon {
  left: 16px;
  width: 18px;
  height: 18px;
}
@media (max-width: 767px) {
  .sterling-search-field {
    height: 52px;
    padding: 0 20px 0 48px;
    font-size: 16px;
  }
  .sterling-search-icon {
    left: 16px;
  }
  .cc-search-modal .sterling-search-field {
    height: 64px;
    padding: 0 24px 0 56px;
    font-size: 20px;
  }
  .cc-search-modal .sterling-search-icon {
    left: 20px;
    width: 22px;
    height: 22px;
  }
}
@media (prefers-color-scheme: dark) {
  .sterling-search-field {
    color: var(--color-white);
    background-color: hsla(0,0%,100%,.1);
  }
  .sterling-search-field::-moz-placeholder {
    color: hsla(0,0%,100%,.5);
  }
  .sterling-search-field::placeholder {
    color: hsla(0,0%,100%,.5);
  }
  .sterling-search-field:hover {
    background-color: hsla(0,0%,100%,.15);
  }
  .sterling-search-field:focus {
    background-color: hsla(0,0%,100%,.2);
    border-color: var(--color-primary-light);
  }
  .sterling-search-icon {
    color: hsla(0,0%,100%,.6);
  }
  .sterling-search-field:focus+.sterling-search-icon {
    color: var(--color-primary-light);
  }
}
.site-main {
  padding-top: var(--space-8);
  padding-bottom: var(--space-12);
  background-color: #fafbfc;
  min-height: 100vh;
}
.elementor-page .site-main {
  padding-top: 0;
}
.site-main .container.blog-layout {
  display: grid;
  gap: 48px;
  align-items: start;
}
.site-main .container.blog-layout.sidebar-right,.site-main .container.blog-layout.has-sidebar:not(.sidebar-left):not(.sidebar-none) {
  grid-template-columns: 1fr 320px;
}
@media (max-width: 1024px) {
  .site-main .container.blog-layout.sidebar-right,.site-main .container.blog-layout.has-sidebar:not(.sidebar-left):not(.sidebar-none) {
    grid-template-columns: 1fr 280px;
  }
}
.site-main .container.blog-layout.sidebar-left {
  grid-template-columns: 320px 1fr;
}
@media (max-width: 1024px) {
  .site-main .container.blog-layout.sidebar-left {
    grid-template-columns: 280px 1fr;
  }
}
.site-main .container.blog-layout.sidebar-left .sidebar {
  order: -1;
}
.site-main .container.blog-layout.sidebar-none,.site-main .container.blog-layout.no-sidebar {
  grid-template-columns: 1fr;
}
@media (max-width: 768px) {
  .site-main .container.blog-layout {
    grid-template-columns: 1fr !important;
    gap: 40px;
  }
  .site-main .container.blog-layout .sidebar {
    order: -1;
  }
}
@media (max-width: 1024px) {
  .site-main .container.blog-layout {
    gap: 32px;
  }
}
.site-main .container:not(.blog-layout) {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
  align-items: start;
}
@media (min-width: 1024px) {
  .site-main .container:not(.blog-layout) {
    grid-template-columns: 1fr 360px;
    gap: var(--space-8);
  }
}
.content-area {
  width: 100%;
  min-width: 0;
}
.posts-wrapper {
  display: grid;
  gap: 32px;
  margin-bottom: var(--space-8);
}
.posts-wrapper.posts-cols-1 {
  grid-template-columns: 1fr;
}
.posts-wrapper.posts-cols-2 {
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .posts-wrapper.posts-cols-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.posts-wrapper.posts-cols-3 {
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .posts-wrapper.posts-cols-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .posts-wrapper.posts-cols-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.posts-wrapper.posts-cols-4 {
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .posts-wrapper.posts-cols-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .posts-wrapper.posts-cols-4 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1280px) {
  .posts-wrapper.posts-cols-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1280px) {
  .posts-wrapper {
    gap: 44px;
  }
}
.sterling-post {
  background: var(--color-white);
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
  transition: all var(--transition-base);
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
}
.sterling-post:hover {
  transform: translateY(-2px);
  border-color: rgba(0,0,0,.08);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.sterling-post:hover .sterling-post__thumbnail img {
  transform: scale(1.05);
}
.sterling-post:hover .sterling-post__title a {
  color: var(--color-primary);
}
.sterling-post:hover .sterling-post__read-more {
  color: var(--color-primary-dark);
}
.sterling-post:hover .sterling-post__badge {
  background: rgba(0,0,0,.85);
}
.sterling-post.sticky {
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.025) 0%, rgb(255, 255, 255) 50%, rgba(37, 99, 235, 0.02) 100%);
  box-shadow: 0 4px 20px rgba(37,99,235,.08),0 1px 4px rgba(0,0,0,.06),inset 0 1px 0 hsla(0,0%,100%,.9);
  border-radius: var(--radius-xl);
}
.sterling-post.sticky::before {
  content: "Featured";
  font-family: -apple-system,BlinkMacSystemFont,sans-serif;
  font-weight: 600;
  position: absolute;
  top: -1px;
  left: -1px;
  padding: 8px 16px;
  background: var(--color-primary);
  color: var(--color-white);
  font-size: 11px;
  letter-spacing: .8px;
  text-transform: uppercase;
  border-radius: var(--radius-lg) 0 var(--radius-lg) 0;
  box-shadow: 0 2px 10px rgba(37,99,235,.3);
  z-index: 3;
  transition: all var(--transition-base);
}
.sterling-post.sticky:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 32px rgba(37,99,235,.12),0 2px 8px rgba(0,0,0,.08),inset 0 1px 0 #fff;
}
.sterling-post.sticky:hover::before {
  background: var(--color-primary-dark);
  box-shadow: 0 4px 14px rgba(37,99,235,.4);
}
.sterling-post.sticky .sterling-post__badge--date {
  top: 56px;
}
.sterling-post__thumbnail {
  position: relative;
  width: 100%;
  padding-top: 60%;
  overflow: hidden;
  background-color: var(--color-light-gray);
}
.sterling-post__thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform var(--transition-slow);
}
.sterling-post__thumbnail .sterling-post__category-badge {
  position: absolute;
  bottom: 16px;
  left: 16px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: hsla(0,0%,100%,.95);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: var(--color-primary);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  padding: 8px 14px;
  border-radius: var(--radius-full);
  text-transform: uppercase;
  letter-spacing: .6px;
  box-shadow: 0 2px 8px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.8);
  border: 1px solid rgba(37,99,235,.15);
  transition: all var(--transition-base);
  z-index: 2;
  text-decoration: none;
  white-space: nowrap;
}
.sterling-post__thumbnail .sterling-post__category-badge i {
  font-size: 13px;
  opacity: .85;
  transition: opacity var(--transition-fast);
}
.sterling-post__thumbnail .sterling-post__category-badge:hover {
  background: var(--color-primary);
  color: var(--color-white);
  border-color: var(--color-primary);
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(37,99,235,.3),0 2px 4px rgba(37,99,235,.2),inset 0 1px 0 hsla(0,0%,100%,.2);
}
.sterling-post__thumbnail .sterling-post__category-badge:hover i {
  opacity: 1;
}
.sterling-post__thumbnail .sterling-post__category-badge:focus,.sterling-post__thumbnail .sterling-post__category-badge:active {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.sterling-post__thumbnail--placeholder {
  background: linear-gradient(135deg, #E5E7EB 0%, #F3F4F6 50%, #D1D5DB 100%);
  background-size: 200% 200%;
  animation: gradientShift 15s ease infinite;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.sterling-post__thumbnail--placeholder::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(0, 0, 0, 0.02) 10px, rgba(0, 0, 0, 0.02) 20px);
  opacity: .5;
}
@keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.sterling-post__badge {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--color-white);
  background: rgba(0,0,0,.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 6px;
  z-index: 2;
  transition: all var(--transition-base);
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
  border: 1px solid hsla(0,0%,100%,.1);
}
.sterling-post__badge i {
  font-size: 12px;
  opacity: .9;
}
.sterling-post__badge--date {
  top: 16px;
  left: 16px;
}
.sterling-post__badge--reading-time {
  top: 16px;
  right: 16px;
}
.sterling-post__header {
  padding: 22px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.sterling-post__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  margin-bottom: var(--space-3);
  font-size: var(--text-sm);
  color: var(--color-gray);
}
.sterling-post__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: color var(--transition-fast);
  padding: 0 var(--space-2);
}
.sterling-post__meta-item:first-child {
  padding-left: 0;
}
.sterling-post__meta-item:hover {
  color: var(--color-dark-gray);
}
.sterling-post__meta-item i {
  font-size: 13px;
  opacity: .8;
}
.sterling-post__meta-item a {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition-fast);
}
.sterling-post__meta-item a:hover {
  color: var(--color-primary);
}
.sterling-post__meta-item:not(:last-child) {
  border-right: 1px solid rgba(0,0,0,.15);
}
.sterling-post__title {
  font-size: var(--text-2xl);
  font-weight: var(--font-bold);
  line-height: 1.3;
  margin: 0 0 var(--space-3) 0;
  color: var(--color-heading);
}
.sterling-post__title a {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition-base);
}
.sterling-post__title a:hover {
  color: var(--color-primary);
}
.sterling-post__excerpt {
  font-size: var(--text-base);
  line-height: 1.7;
  color: var(--color-dark-gray);
  margin-bottom: var(--space-3);
  flex: 1;
}
.sterling-post__excerpt p {
  margin: 0;
}
.sterling-post__footer {
  padding: 0 22px 22px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  border-top: 1px solid var(--color-light-gray);
  padding-top: 17px;
  margin-top: auto;
}
.sterling-post__read-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: var(--text-base);
  font-weight: var(--font-medium);
  color: var(--color-primary);
  text-decoration: none !important;
  transition: all var(--transition-base);
  padding: 8px 16px;
  border-radius: 6px;
  background: rgba(37,99,235,.05);
  border: 1px solid rgba(0,0,0,0);
}
.sterling-post__read-more i {
  font-size: 14px;
}
.sterling-post__read-more:hover,.sterling-post__read-more:focus {
  color: var(--color-primary-dark);
  background: rgba(37,99,235,.1);
  text-decoration: none !important;
}
.sterling-post__terms {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: var(--space-3);
  margin-bottom: 0;
}
.sterling-post__category,.sterling-post__tag {
  display: inline-block;
  font-size: var(--text-xs);
  font-weight: var(--font-medium);
  padding: 6px 14px;
  border-radius: var(--radius-full);
  text-decoration: none !important;
  transition: all var(--transition-fast);
  letter-spacing: .5px;
}
.sterling-post__category {
  background: var(--color-primary);
  color: var(--color-white);
}
.sterling-post__category:hover {
  background: var(--color-primary-dark);
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(37,99,235,.2);
}
.sterling-post__tag {
  background: rgba(0,0,0,.05);
  color: var(--color-dark-gray);
  border: 1px solid rgba(0,0,0,.1);
}
.sterling-post__tag:hover {
  background: var(--color-primary);
  color: var(--color-white);
  border-color: var(--color-primary);
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(37,99,235,.15);
}
.posts-navigation,.pagination {
  margin-top: var(--space-8);
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-light-gray);
}
.nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  position: relative;
}
.nav-previous,.nav-next {
  position: absolute;
}
.nav-previous a,.nav-next a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-lg);
  color: var(--color-charcoal);
  text-decoration: none;
  font-weight: var(--font-medium);
  transition: all var(--transition-base);
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
  font-size: var(--text-base);
}
.nav-previous a i,.nav-next a i {
  font-size: 14px;
  transition: transform var(--transition-fast);
}
.nav-previous a:hover,.nav-next a:hover {
  border-color: var(--color-primary);
  background: var(--color-primary);
  color: var(--color-white);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(37,99,235,.2);
}
.nav-previous a:hover i,.nav-next a:hover i {
  transform: scale(1.2);
}
.nav-previous {
  left: 0;
}
.nav-next {
  right: 0;
}
.page-numbers {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  color: var(--color-heading);
  text-decoration: none !important;
  font-weight: var(--font-medium);
  transition: all var(--transition-fast);
  min-width: 44px;
  justify-content: center;
}
.page-numbers:hover:not(.current) {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
  text-decoration: none !important;
}
.page-numbers:focus,.page-numbers:active {
  text-decoration: none !important;
}
.page-numbers.current {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
  font-weight: var(--font-semibold);
  text-decoration: none !important;
}
.page-numbers.dots {
  border: none;
  background: rgba(0,0,0,0);
  pointer-events: none;
  text-decoration: none !important;
}
.page-numbers i {
  font-size: 14px;
  transition: transform var(--transition-fast);
}
.sticky-posts {
  margin-bottom: var(--space-8);
}
.sticky-posts .sterling-post {
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.05) 0%, rgba(37, 99, 235, 0.02) 100%);
}
.no-results {
  text-align: center;
  padding: var(--space-12) var(--space-4);
  background: var(--color-white);
  border-radius: var(--radius-xl);
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.no-results .page-header {
  border: none;
  margin-bottom: var(--space-4);
}
.no-results .page-header .page-title {
  font-size: var(--text-4xl);
  color: var(--color-heading);
  margin-bottom: var(--space-3);
}
.no-results .page-header .page-title::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: block;
  font-size: 80px;
  margin-bottom: var(--space-4);
  color: var(--color-gray);
  opacity: .3;
}
.no-results .page-content {
  max-width: 600px;
  margin: 0 auto;
}
.no-results .page-content p {
  font-size: var(--text-lg);
  color: var(--color-dark-gray);
  line-height: 1.7;
  margin-bottom: var(--space-4);
}
.no-results .page-content .search-form {
  margin-top: var(--space-6);
}
.no-results .page-content a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 32px;
  background: var(--color-primary);
  color: var(--color-white);
  border-radius: var(--radius-lg);
  text-decoration: none;
  font-weight: var(--font-semibold);
  transition: all var(--transition-base);
  margin-top: var(--space-4);
}
.no-results .page-content a:hover {
  background: var(--color-primary-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(37,99,235,.25);
}
.no-results .page-content a::after {
  content: "→";
  font-size: 20px;
}
@media (max-width: 1023px) {
  .site-main .container {
    grid-template-columns: 1fr;
  }
  .posts-wrapper {
    grid-template-columns: 1fr;
  }
  .sterling-post__title {
    font-size: var(--text-xl);
  }
}
@media (max-width: 639px) {
  .site-main {
    padding-top: var(--space-4);
    padding-bottom: var(--space-8);
  }
  .page-header {
    margin-bottom: var(--space-6);
  }
  .page-header .page-title {
    font-size: var(--text-3xl);
  }
  .sterling-post__header {
    padding: var(--space-3);
  }
  .sterling-post__footer {
    padding: 0 var(--space-3) var(--space-3);
  }
  .sterling-post__meta {
    font-size: var(--text-xs);
  }
  .sterling-post__title {
    font-size: var(--text-lg);
  }
  .sterling-post__excerpt {
    font-size: var(--text-sm);
  }
  .sterling-post__badge {
    padding: 4px 10px;
    font-size: 12px;
  }
  .sterling-post__badge--date {
    top: 12px;
    left: 12px;
  }
  .sterling-post__badge--reading-time {
    top: 12px;
    right: 12px;
  }
  .sterling-post__category-badge {
    bottom: 12px;
    left: 12px;
    font-size: 11px;
    padding: 5px 12px;
  }
  .nav-previous,.nav-next {
    min-width: 100%;
  }
  .nav-previous a,.nav-next a {
    padding: var(--space-2) var(--space-3);
  }
  .no-results {
    padding: var(--space-8) var(--space-3);
  }
  .no-results .page-header .page-title::before {
    font-size: 60px;
  }
}
.single .sterling-post,.single .hentry {
  box-shadow: none;
  border-radius: 0;
}
.single .sterling-post:hover,.single .hentry:hover {
  transform: none;
}
.single .site-main .container,.page .site-main .container {
  display: block !important;
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
  grid-template-columns: none !important;
}
.clearfix {
  clear: both;
  display: block;
  width: 100%;
  height: 0;
  margin: 0;
  padding: 0;
  line-height: 0;
}
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}
.entry-content,.entry-summary {
  max-width: 100%;
  margin: 0;
}
.entry-content>*,.entry-summary>* {
  max-width: 100%;
}
.entry-content img,.entry-summary img {
  max-width: 100% !important;
  height: auto !important;
  display: block;
}
.entry-content img.alignleft,.entry-content img.alignright,.entry-summary img.alignleft,.entry-summary img.alignright {
  display: block;
}
.entry-content .alignleft,.entry-summary .alignleft {
  float: left;
  margin: 0 var(--space-4) var(--space-3) 0;
}
.entry-content .alignright,.entry-summary .alignright {
  float: right;
  margin: 0 0 var(--space-3) var(--space-4);
}
.entry-content .aligncenter,.entry-summary .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--space-3);
}
.entry-content figure,.entry-summary figure {
  margin: 0 0 var(--space-4) 0;
}
.entry-content figure.alignleft,.entry-summary figure.alignleft {
  float: left;
  margin: 0 var(--space-4) var(--space-3) 0;
}
.entry-content figure.alignright,.entry-summary figure.alignright {
  float: right;
  margin: 0 0 var(--space-3) var(--space-4);
}
.entry-content figure.aligncenter,.entry-summary figure.aligncenter {
  margin-left: auto;
  margin-right: auto;
}
.entry-content figure img,.entry-summary figure img {
  display: block;
  width: 100%;
  height: auto;
}
.entry-content figure figcaption,.entry-summary figure figcaption {
  margin-top: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-gray);
  text-align: center;
  font-style: italic;
}
.entry-content p,.entry-summary p {
  margin: 0 0 var(--space-3) 0 !important;
}
.entry-content :where(.wp-block),.entry-summary :where(.wp-block) {
  margin-top: 0;
  margin-bottom: var(--space-3);
}
.entry-content :where(.wp-block):not(.wp-block-group,.wp-block-cover,.wp-block-columns),.entry-summary :where(.wp-block):not(.wp-block-group,.wp-block-cover,.wp-block-columns) {
  margin-bottom: var(--space-3);
}
.entry-content :where(.wp-block-group),.entry-summary :where(.wp-block-group) {
  margin-top: 0;
  margin-bottom: var(--space-3);
}
.entry-content :where(.wp-block-group).has-background,.entry-summary :where(.wp-block-group).has-background {
  padding: var(--space-4);
  border-radius: var(--radius-md);
}
.entry-content :where(.wp-block):first-child,.entry-summary :where(.wp-block):first-child {
  margin-top: 0;
}
.entry-content :where(.wp-block):last-child,.entry-summary :where(.wp-block):last-child {
  margin-bottom: 0;
}
.entry-content .has-small-margin-top,.entry-summary .has-small-margin-top {
  margin-top: var(--space-2) !important;
}
.entry-content .has-medium-margin-top,.entry-summary .has-medium-margin-top {
  margin-top: var(--space-4) !important;
}
.entry-content .has-large-margin-top,.entry-summary .has-large-margin-top {
  margin-top: var(--space-6) !important;
}
.entry-content .has-small-margin-bottom,.entry-summary .has-small-margin-bottom {
  margin-bottom: var(--space-2) !important;
}
.entry-content .has-medium-margin-bottom,.entry-summary .has-medium-margin-bottom {
  margin-bottom: var(--space-4) !important;
}
.entry-content .has-large-margin-bottom,.entry-summary .has-large-margin-bottom {
  margin-bottom: var(--space-6) !important;
}
.entry-content .has-small-padding,.entry-summary .has-small-padding {
  padding: var(--space-2) !important;
}
.entry-content .has-medium-padding,.entry-summary .has-medium-padding {
  padding: var(--space-4) !important;
}
.entry-content .has-large-padding,.entry-summary .has-large-padding {
  padding: var(--space-6) !important;
}
.entry-content .has-border-color.has-small-padding,.entry-summary .has-border-color.has-small-padding {
  padding: var(--space-3) !important;
}
.entry-content .has-border-color.has-medium-padding,.entry-summary .has-border-color.has-medium-padding {
  padding: var(--space-5) !important;
}
.entry-content .has-border-color.has-large-padding,.entry-summary .has-border-color.has-large-padding {
  padding: var(--space-6) !important;
}
.entry-header {
  text-align: center;
  margin-bottom: var(--space-8);
  padding-bottom: var(--space-6);
  border-bottom: 1px solid var(--color-light-gray);
}
.entry-header .financial-blog__category {
  display: inline-block;
  padding: 8px 16px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: 6px;
  margin-bottom: 20px;
}
.entry-header .entry-title {
  font-size: clamp(32px,5vw,48px);
  font-weight: var(--font-bold);
  line-height: 1.2;
  color: var(--color-heading);
  margin-bottom: var(--space-4);
}
.entry-header .entry-meta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  color: #64748b;
  font-size: 15px;
  flex-wrap: wrap;
}
.entry-header .financial-blog__meta {
  display: flex;
  align-items: center;
  gap: 24px;
  color: #64748b;
  font-size: 15px;
  justify-content: center;
  flex-wrap: wrap;
}
.entry-header .financial-blog__meta-item {
  display: flex;
  align-items: center;
  gap: 8px;
}
.entry-header .financial-blog__meta svg {
  width: 18px;
  height: 18px;
  opacity: .7;
  flex-shrink: 0;
}
.entry-header .financial-blog__meta span {
  display: inline;
}
.post-thumbnail {
  margin-bottom: var(--space-8);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.post-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
}
.entry-footer {
  margin-top: var(--space-8);
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-light-gray);
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: var(--space-4);
}
.entry-footer span {
  font-size: var(--text-sm);
  color: var(--color-gray);
}
.entry-footer span a {
  color: var(--color-primary);
  text-decoration: none;
  font-weight: var(--font-medium);
  transition: color var(--transition-fast);
}
.entry-footer span a:hover {
  color: var(--color-primary-dark);
  text-decoration: underline;
}
@media (max-width: 640px) {
  .entry-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-3);
  }
}
.page-links {
  margin-top: var(--space-6);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-light-gray);
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-gray);
}
.page-links a,.page-links span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  padding: 8px 12px;
  background: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  text-decoration: none;
  color: var(--color-heading);
  font-weight: var(--font-medium);
  transition: all var(--transition-fast);
}
.page-links a:hover,.page-links span:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
}
.page-links .current {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
  font-weight: var(--font-semibold);
}
.post-navigation {
  margin-top: var(--space-8);
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-light-gray);
}
.post-navigation .nav-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
  align-items: stretch;
  position: static;
}
@media (max-width: 640px) {
  .post-navigation .nav-links {
    grid-template-columns: 1fr;
    gap: var(--space-3);
  }
}
.post-navigation .nav-previous,.post-navigation .nav-next {
  position: static;
  width: 100%;
  display: flex;
}
.post-navigation .nav-previous a,.post-navigation .nav-next a {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: var(--space-4);
  background: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-lg);
  color: var(--color-heading);
  text-decoration: none;
  transition: all var(--transition-base);
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
  width: 100%;
  height: 100%;
}
.post-navigation .nav-previous a:hover,.post-navigation .nav-next a:hover {
  border-color: var(--color-primary);
  background: rgba(37,99,235,.02);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(37,99,235,.1);
}
.post-navigation .nav-previous a .nav-subtitle,.post-navigation .nav-next a .nav-subtitle {
  font-size: var(--text-xs);
  color: var(--color-gray);
  text-transform: uppercase;
  letter-spacing: .5px;
  font-weight: var(--font-semibold);
}
.post-navigation .nav-previous a .nav-title,.post-navigation .nav-next a .nav-title {
  font-size: var(--text-base);
  color: var(--color-heading);
  font-weight: var(--font-semibold);
  line-height: 1.4;
}
.post-navigation .nav-previous a {
  align-items: flex-start;
  text-align: left;
}
.post-navigation .nav-previous a::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 14px;
  color: var(--color-primary);
}
.post-navigation .nav-next a {
  align-items: flex-end;
  text-align: right;
}
.post-navigation .nav-next a::after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 14px;
  color: var(--color-primary);
  order: -1;
}
.comments-area {
  margin-top: var(--space-12);
  padding-top: var(--space-8);
  border-top: 2px solid var(--color-light-gray);
}
.comments-area .comments-title {
  font-size: clamp(24px,4vw,32px);
  font-weight: var(--font-bold);
  line-height: 1.3;
  color: var(--color-heading);
  margin-bottom: var(--space-6);
}
.comments-area .comment-list {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--space-8) 0;
}
.comments-area .comment-list .comment {
  padding: var(--space-4);
  background: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-4);
  transition: border-color var(--transition-base);
}
.comments-area .comment-list .comment:hover {
  border-color: var(--color-gray);
}
.comments-area .comment-list .comment .children {
  list-style: none;
  padding-left: var(--space-6);
  margin-top: var(--space-4);
}
@media (max-width: 640px) {
  .comments-area .comment-list .comment .children {
    padding-left: var(--space-3);
  }
}
.comments-area .comment-list .comment .children .comment {
  background: var(--color-off-white);
}
.comments-area .comment-list article {
  display: flex;
  gap: var(--space-3);
}
.comments-area .comment-list .comment-author {
  flex-shrink: 0;
}
.comments-area .comment-list .comment-author .avatar {
  border-radius: var(--radius-full);
  width: 48px;
  height: 48px;
  display: block;
}
.comments-area .comment-list .comment-content-wrapper {
  flex: 1;
  min-width: 0;
}
.comments-area .comment-list .comment-metadata {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-2);
  flex-wrap: wrap;
}
.comments-area .comment-list .comment-metadata .fn {
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  font-style: normal;
}
.comments-area .comment-list .comment-metadata .comment-date {
  font-size: var(--text-sm);
  color: var(--color-gray);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.comments-area .comment-list .comment-metadata .comment-date:hover {
  color: var(--color-primary);
}
.comments-area .comment-list .comment-metadata .comment-edit-link {
  font-size: var(--text-sm);
  color: var(--color-gray);
  text-decoration: none;
  font-weight: var(--font-medium);
}
.comments-area .comment-list .comment-metadata .comment-edit-link::before {
  content: "•";
  margin-right: 8px;
}
.comments-area .comment-list .comment-metadata .comment-edit-link:hover {
  color: var(--color-primary);
}
.comments-area .comment-list .comment-awaiting-moderation {
  display: inline-block;
  padding: 4px 12px;
  background: rgba(234,179,8,.1);
  color: #a16207;
  font-size: var(--text-xs);
  font-weight: var(--font-medium);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-2);
}
.comments-area .comment-list .comment-content {
  font-size: var(--text-base);
  line-height: 1.6;
  color: var(--color-heading);
  margin-bottom: var(--space-3);
}
.comments-area .comment-list .comment-content p {
  margin: 0 0 var(--space-2) 0;
}
.comments-area .comment-list .comment-content p:last-child {
  margin-bottom: 0;
}
.comments-area .comment-list .comment-content a {
  color: var(--color-primary);
  text-decoration: none;
  font-weight: var(--font-medium);
}
.comments-area .comment-list .comment-content a:hover {
  text-decoration: underline;
}
.comments-area .comment-list .comment-reply-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  color: var(--color-primary);
  background: rgba(0,0,0,0);
  border: 1px solid var(--color-primary);
  border-radius: var(--radius-md);
  text-decoration: none;
  transition: all var(--transition-fast);
  cursor: pointer;
}
.comments-area .comment-list .comment-reply-link:hover {
  background: var(--color-primary);
  color: var(--color-white);
}
.comments-area .comment-list .comment-reply-link::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 12px;
}
.comments-area .no-comments {
  padding: var(--space-6);
  text-align: center;
  background: var(--color-off-white);
  border-radius: var(--radius-lg);
  color: var(--color-gray);
  font-size: var(--text-base);
  margin-bottom: var(--space-8);
}
.comments-area .comment-respond {
  background: var(--color-off-white);
  padding: var(--space-6);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-light-gray);
}
.comments-area .comment-respond .comment-reply-title {
  font-size: clamp(20px,3vw,28px);
  font-weight: var(--font-semibold);
  line-height: 1.3;
  color: var(--color-heading);
  margin-bottom: var(--space-4);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.comments-area .comment-respond .comment-reply-title small {
  font-size: var(--text-sm);
  font-weight: var(--font-normal);
}
.comments-area .comment-respond .comment-reply-title small a {
  color: var(--color-gray);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.comments-area .comment-respond .comment-reply-title small a:hover {
  color: var(--color-primary);
}
.comments-area .comment-respond .logged-in-as {
  font-size: var(--text-sm);
  color: var(--color-gray);
  margin-bottom: var(--space-4);
}
.comments-area .comment-respond .logged-in-as a {
  color: var(--color-primary);
  text-decoration: none;
  font-weight: var(--font-medium);
}
.comments-area .comment-respond .logged-in-as a:hover {
  text-decoration: underline;
}
.comments-area .comment-respond .comment-notes {
  font-size: var(--text-sm);
  color: var(--color-gray);
  margin-bottom: var(--space-4);
  line-height: 1.5;
}
.comments-area .comment-respond .comment-notes .required {
  color: #dc2626;
}
.comments-area .comment-respond .comment-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.comments-area .comment-respond .comment-form p {
  margin: 0;
}
.comments-area .comment-respond .comment-form p.comment-form-comment {
  order: 1;
}
.comments-area .comment-respond .comment-form p.comment-form-author {
  order: 2;
}
.comments-area .comment-respond .comment-form p.comment-form-email {
  order: 3;
}
.comments-area .comment-respond .comment-form p.comment-form-url {
  order: 4;
}
.comments-area .comment-respond .comment-form p.comment-form-cookies-consent {
  order: 5;
}
.comments-area .comment-respond .comment-form p.form-submit {
  order: 6;
}
.comments-area .comment-respond .comment-form label {
  display: block;
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  color: var(--color-heading);
  margin-bottom: 8px;
}
.comments-area .comment-respond .comment-form label .required {
  color: #dc2626;
  margin-left: 2px;
}
.comments-area .comment-respond .comment-form input[type=text],.comments-area .comment-respond .comment-form input[type=email],.comments-area .comment-respond .comment-form input[type=url],.comments-area .comment-respond .comment-form textarea {
  width: 100%;
  padding: 12px 16px;
  font-size: var(--text-base);
  font-family: inherit;
  color: var(--color-heading);
  background: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.comments-area .comment-respond .comment-form input[type=text]:focus,.comments-area .comment-respond .comment-form input[type=email]:focus,.comments-area .comment-respond .comment-form input[type=url]:focus,.comments-area .comment-respond .comment-form textarea:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(37,99,235,.1);
}
.comments-area .comment-respond .comment-form input[type=text]::-moz-placeholder, .comments-area .comment-respond .comment-form input[type=email]::-moz-placeholder, .comments-area .comment-respond .comment-form input[type=url]::-moz-placeholder, .comments-area .comment-respond .comment-form textarea::-moz-placeholder {
  color: var(--color-gray);
}
.comments-area .comment-respond .comment-form input[type=text]::placeholder,.comments-area .comment-respond .comment-form input[type=email]::placeholder,.comments-area .comment-respond .comment-form input[type=url]::placeholder,.comments-area .comment-respond .comment-form textarea::placeholder {
  color: var(--color-gray);
}
.comments-area .comment-respond .comment-form textarea {
  min-height: 160px;
  resize: vertical;
  line-height: 1.6;
}
.comments-area .comment-respond .comment-form input[type=checkbox] {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  cursor: pointer;
  accent-color: var(--color-primary);
}
.comments-area .comment-respond .comment-form .comment-form-cookies-consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.comments-area .comment-respond .comment-form .comment-form-cookies-consent label {
  margin-bottom: 0;
  cursor: pointer;
  line-height: 1.5;
}
.comments-area .comment-respond .comment-form .form-submit {
  margin-top: var(--space-3);
}
.comments-area .comment-respond .comment-form .form-submit .submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 24px;
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  color: var(--color-white);
  background-color: var(--color-primary);
  border: 2px solid rgba(0,0,0,0);
  border-radius: var(--radius-lg);
  cursor: pointer;
  transition: all var(--transition-fast);
  text-decoration: none;
  box-shadow: 0 1px 3px rgba(37,99,235,.12);
}
.comments-area .comment-respond .comment-form .form-submit .submit:hover {
  color: var(--color-white);
  background-color: var(--color-primary-dark);
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(37,99,235,.24);
}
.comments-area .comment-respond .comment-form .form-submit .submit:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(37,99,235,.18);
}
.comments-area .comment-respond .comment-form .form-submit .submit:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.comments-area .comment-respond#respond {
  margin-top: var(--space-4);
  background: var(--color-white);
}
.comments-area .comment .comment-respond#respond {
  margin-left: var(--space-3);
  margin-right: var(--space-3);
}
@media (max-width: 640px) {
  .comments-area {
    margin-top: var(--space-6);
    padding-top: var(--space-6);
  }
  .comments-area .comments-title {
    margin-bottom: var(--space-4);
  }
  .comments-area .comment-list article {
    gap: var(--space-2);
  }
  .comments-area .comment-list .comment-author .avatar {
    width: 40px;
    height: 40px;
  }
  .comments-area .comment-respond {
    padding: var(--space-4);
  }
}
.wp-block-paragraph {
  margin-bottom: var(--space-3);
}
.wp-block-paragraph.has-drop-cap:not(:focus)::first-letter {
  float: left;
  font-size: 4em;
  line-height: .68;
  font-weight: var(--font-bold);
  margin: .05em .1em 0 0;
  color: var(--color-primary);
}
.wp-block-paragraph.has-text-align-left {
  text-align: left;
}
.wp-block-paragraph.has-text-align-center {
  text-align: center;
}
.wp-block-paragraph.has-text-align-right {
  text-align: right;
}
.wp-block-heading {
  margin-bottom: var(--space-3);
}
.wp-block-heading.has-text-align-left {
  text-align: left;
}
.wp-block-heading.has-text-align-center {
  text-align: center;
}
.wp-block-heading.has-text-align-right {
  text-align: right;
}
.wp-block-list {
  margin-bottom: var(--space-3);
  padding-left: 0;
}
.wp-block-list li {
  margin-bottom: var(--space-1);
}
.wp-block-quote {
  margin: var(--space-5) 0;
  padding: var(--space-4) var(--space-5);
  border-left: 4px solid var(--color-primary);
  background-color: var(--color-light-gray);
  border-radius: var(--radius-md);
  font-size: var(--text-lg);
  line-height: 1.7;
  color: var(--color-dark-gray);
  font-style: italic;
}
.wp-block-quote p {
  margin-bottom: var(--space-2);
}
.wp-block-quote p:last-child {
  margin-bottom: 0;
}
.wp-block-quote cite {
  display: block;
  margin-top: var(--space-2);
  font-size: var(--text-sm);
  font-style: normal;
  color: var(--color-gray);
}
.wp-block-quote cite::before {
  content: "— ";
}
.wp-block-quote.is-style-large {
  padding: var(--space-6);
  font-size: var(--text-xl);
}
.wp-block-pullquote {
  margin: var(--space-6) 0;
  padding: var(--space-6) var(--space-4);
  border-top: 4px solid var(--color-primary);
  border-bottom: 4px solid var(--color-primary);
  text-align: center;
}
.wp-block-pullquote blockquote {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  font-size: var(--text-2xl);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
}
.wp-block-pullquote cite {
  display: block;
  margin-top: var(--space-3);
  font-size: var(--text-base);
  color: var(--color-gray);
  font-style: normal;
}
.wp-block-image {
  margin-bottom: var(--space-3);
}
.wp-block-image img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-md);
}
.wp-block-image figcaption {
  margin-top: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-gray);
  text-align: center;
}
.wp-block-image.alignleft,.wp-block-image.alignright {
  max-width: 50%;
}
.wp-block-image.alignleft {
  float: left;
  margin-right: var(--space-3);
  margin-bottom: var(--space-3);
}
.wp-block-image.alignright {
  float: right;
  margin-left: var(--space-3);
  margin-bottom: var(--space-3);
}
.wp-block-image.aligncenter {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.wp-block-image.is-style-rounded img {
  border-radius: var(--radius-full);
}
.wp-block-gallery {
  margin-bottom: var(--space-3);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  list-style: none;
  padding: 0;
}
.wp-block-gallery .wp-block-image {
  margin: 0;
  flex-grow: 1;
}
.wp-block-gallery.has-nested-images figure.wp-block-image {
  width: calc(50% - var(--space-1));
}
@media (min-width: 768px) {
  .wp-block-gallery.has-nested-images figure.wp-block-image {
    width: calc(33.333% - var(--space-1));
  }
}
.wp-block-gallery figcaption {
  margin-top: var(--space-1);
  font-size: var(--text-sm);
  color: var(--color-gray);
}
.wp-block-cover {
  margin-bottom: var(--space-3);
  position: relative;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-6) var(--space-3);
  background-size: cover;
  background-position: center;
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.wp-block-cover .wp-block-cover__background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: .5;
}
.wp-block-cover .wp-block-cover__inner-container {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 840px;
  color: var(--color-white);
  text-align: center;
}
.wp-block-cover .wp-block-cover__inner-container h1,.wp-block-cover .wp-block-cover__inner-container h2,.wp-block-cover .wp-block-cover__inner-container h3,.wp-block-cover .wp-block-cover__inner-container h4,.wp-block-cover .wp-block-cover__inner-container h5,.wp-block-cover .wp-block-cover__inner-container h6 {
  color: var(--color-white);
}
.wp-block-cover .wp-block-cover__inner-container p {
  color: var(--color-white);
}
.wp-block-cover.has-custom-content-position.is-position-top-left {
  align-items: flex-start;
  justify-content: flex-start;
}
.wp-block-cover.has-custom-content-position.is-position-top-center {
  align-items: flex-start;
  justify-content: center;
}
.wp-block-cover.has-custom-content-position.is-position-top-right {
  align-items: flex-start;
  justify-content: flex-end;
}
.wp-block-cover.has-custom-content-position.is-position-center-left {
  align-items: center;
  justify-content: flex-start;
}
.wp-block-cover.has-custom-content-position.is-position-center-center {
  align-items: center;
  justify-content: center;
}
.wp-block-cover.has-custom-content-position.is-position-center-right {
  align-items: center;
  justify-content: flex-end;
}
.wp-block-cover.has-custom-content-position.is-position-bottom-left {
  align-items: flex-end;
  justify-content: flex-start;
}
.wp-block-cover.has-custom-content-position.is-position-bottom-center {
  align-items: flex-end;
  justify-content: center;
}
.wp-block-cover.has-custom-content-position.is-position-bottom-right {
  align-items: flex-end;
  justify-content: flex-end;
}
.wp-block-group {
  margin-bottom: var(--space-3);
}
.wp-block-group.has-background {
  padding: var(--space-4);
  border-radius: var(--radius-md);
}
.wp-block-group .wp-block-group__inner-container>:last-child {
  margin-bottom: 0;
}
.wp-block-columns {
  margin-bottom: var(--space-3);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
}
@media (max-width: 781px) {
  .wp-block-columns {
    flex-direction: column;
  }
}
.wp-block-columns.has-background {
  padding: var(--space-4);
  border-radius: var(--radius-md);
}
.wp-block-columns .wp-block-column {
  flex: 1;
  min-width: 0;
}
.wp-block-columns .wp-block-column.has-background {
  padding: var(--space-4);
  border-radius: var(--radius-md);
}
@media (min-width: 782px) {
  .wp-block-columns .wp-block-column:not(:last-child) {
    margin-right: 0;
  }
}
.wp-block-columns.are-vertically-aligned-top {
  align-items: flex-start;
}
.wp-block-columns.are-vertically-aligned-center {
  align-items: center;
}
.wp-block-columns.are-vertically-aligned-bottom {
  align-items: flex-end;
}
.wp-block-button {
  margin-bottom: var(--space-3);
}
.wp-block-button.aligncenter {
  text-align: center;
}
.wp-block-button.alignleft {
  text-align: left;
}
.wp-block-button.alignright {
  text-align: right;
}
.wp-block-button .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 32px;
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  line-height: 1.5;
  text-decoration: none;
  border-radius: var(--radius-md);
  transition: all var(--transition-base);
  cursor: pointer;
  border: none;
  background: var(--color-primary);
  color: var(--color-white);
}
.wp-block-button .wp-block-button__link:hover {
  background: var(--color-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}
.wp-block-button .wp-block-button__link:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.wp-block-button.is-style-outline .wp-block-button__link {
  background: rgba(0,0,0,0);
  border: 2px solid var(--color-primary);
  color: var(--color-primary);
  padding: 12px 30px;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--color-primary);
  color: var(--color-white);
  transform: translateY(-2px);
}
.wp-block-button.is-style-squared .wp-block-button__link {
  border-radius: 0;
}
.wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
}
.wp-block-buttons.is-content-justification-left {
  justify-content: flex-start;
}
.wp-block-buttons.is-content-justification-center {
  justify-content: center;
}
.wp-block-buttons.is-content-justification-right {
  justify-content: flex-end;
}
.wp-block-buttons.is-content-justification-space-between {
  justify-content: space-between;
}
.wp-block-separator {
  margin: var(--space-6) 0;
  border: none;
  border-top: 1px solid var(--color-light-gray);
}
.wp-block-separator.is-style-wide {
  border-top-width: 1px;
}
.wp-block-separator.is-style-dots {
  border: none;
  text-align: center;
  max-width: none;
  line-height: 1;
  height: auto;
}
.wp-block-separator.is-style-dots::before {
  content: "···";
  color: var(--color-gray);
  font-size: var(--text-2xl);
  letter-spacing: 2em;
  padding-left: 2em;
  font-family: serif;
}
.wp-block-spacer {
  clear: both;
}
.wp-block-code {
  margin-bottom: var(--space-3);
}
.wp-block-code code {
  display: block;
  padding: var(--space-3);
  background-color: var(--color-charcoal);
  color: var(--color-white);
  border-radius: var(--radius-md);
  overflow-x: auto;
  font-family: "SF Mono","Monaco","Inconsolata","Roboto Mono",monospace;
  font-size: var(--text-sm);
  line-height: 1.6;
}
.wp-block-preformatted {
  margin-bottom: var(--space-3);
  padding: var(--space-3);
  background-color: var(--color-charcoal);
  color: var(--color-white) !important;
  border-radius: var(--radius-md);
  overflow-x: auto;
  font-family: "SF Mono","Monaco","Inconsolata","Roboto Mono",monospace;
  font-size: var(--text-sm);
  line-height: 1.6;
}
.wp-block-table {
  margin-bottom: var(--space-3);
  overflow-x: auto;
}
.wp-block-table table {
  width: 100%;
  border-collapse: collapse;
}
.wp-block-table table th,.wp-block-table table td {
  padding: var(--space-2);
  border: 1px solid var(--color-light-gray);
  text-align: left;
}
.wp-block-table table thead th {
  background: var(--color-off-white);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
}
.wp-block-table table tbody tr:nth-child(even) {
  background: var(--color-off-white);
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background: var(--color-white);
}
.wp-block-table figcaption {
  margin-top: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-gray);
  text-align: center;
}
.wp-block-video,.wp-block-audio {
  margin-bottom: var(--space-3);
}
.wp-block-video video,.wp-block-video audio,.wp-block-audio video,.wp-block-audio audio {
  max-width: 100%;
  border-radius: var(--radius-md);
}
.wp-block-video figcaption,.wp-block-audio figcaption {
  margin-top: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-gray);
  text-align: center;
}
.wp-block-embed {
  margin-bottom: var(--space-3);
  position: relative;
}
.wp-block-embed.is-type-video .wp-block-embed__wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.wp-block-embed.is-type-video .wp-block-embed__wrapper iframe,.wp-block-embed.is-type-video .wp-block-embed__wrapper embed,.wp-block-embed.is-type-video .wp-block-embed__wrapper object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: var(--radius-md);
}
.wp-block-embed figcaption {
  margin-top: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-gray);
  text-align: center;
}
.wp-block-file {
  margin-bottom: var(--space-3);
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3);
  background: var(--color-off-white);
  border-radius: var(--radius-md);
  border: 1px solid var(--color-light-gray);
}
.wp-block-file a {
  color: var(--color-primary);
  text-decoration: none;
  font-weight: var(--font-medium);
}
.wp-block-file a:hover {
  color: var(--color-primary-dark);
  text-decoration: underline;
}
.wp-block-file .wp-block-file__button {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  background: var(--color-primary);
  color: var(--color-white);
  border-radius: var(--radius-md);
  text-decoration: none;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  transition: all var(--transition-base);
}
.wp-block-file .wp-block-file__button:hover {
  background: var(--color-primary-dark);
}
.wp-block-verse {
  margin-bottom: var(--space-3);
  padding: var(--space-3);
  background: var(--color-off-white);
  color: var(--color-charcoal) !important;
  border-left: 4px solid var(--color-gray);
  border-radius: var(--radius-md);
  font-family: inherit;
  white-space: pre-wrap;
  overflow-x: auto;
}
.wp-block-details {
  margin-bottom: var(--space-3);
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  padding: var(--space-3);
}
.wp-block-details summary {
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  cursor: pointer;
  padding: var(--space-2);
  margin: calc(var(--space-3)*-1);
  margin-bottom: 0;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
  transition: background var(--transition-fast);
}
.wp-block-details summary:hover {
  background: var(--color-off-white);
}
.wp-block-details .wp-block-details__content {
  padding-top: var(--space-3);
}
.wp-block-media-text {
  margin-bottom: var(--space-3);
  display: grid;
  grid-template-columns: 50% 1fr;
  grid-template-rows: auto;
  gap: var(--space-4);
  align-items: center;
}
@media (max-width: 600px) {
  .wp-block-media-text {
    grid-template-columns: 1fr;
  }
}
.wp-block-media-text .wp-block-media-text__media img,.wp-block-media-text .wp-block-media-text__media video {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-md);
}
.wp-block-media-text .wp-block-media-text__content {
  padding: var(--space-2);
}
.wp-block-media-text.has-media-on-the-right {
  grid-template-columns: 1fr 50%;
}
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
  grid-column: 2;
  grid-row: 1;
}
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
  grid-column: 1;
  grid-row: 1;
}
.wp-block-media-text.is-vertically-aligned-top {
  align-items: start;
}
.wp-block-media-text.is-vertically-aligned-center {
  align-items: center;
}
.wp-block-media-text.is-vertically-aligned-bottom {
  align-items: end;
}
.wp-block-latest-posts {
  margin-bottom: var(--space-3);
  padding-left: 0;
  list-style: none;
}
.wp-block-latest-posts li {
  margin-bottom: var(--space-3);
  padding-bottom: var(--space-3);
  border-bottom: 1px solid var(--color-light-gray);
}
.wp-block-latest-posts li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.wp-block-latest-posts li a {
  color: var(--color-heading);
  font-weight: var(--font-semibold);
  font-size: var(--text-lg);
  text-decoration: none;
}
.wp-block-latest-posts li a:hover {
  color: var(--color-primary);
}
.wp-block-latest-posts__post-date,.wp-block-latest-posts__post-author {
  display: block;
  font-size: var(--text-sm);
  color: var(--color-gray);
  margin-top: var(--space-1);
}
.wp-block-latest-posts__post-excerpt {
  margin-top: var(--space-2);
  font-size: var(--text-base);
  color: var(--color-dark-gray);
}
.wp-block-latest-posts.is-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--space-4);
}
.wp-block-latest-posts.is-grid li {
  margin-bottom: 0;
  padding-bottom: 0;
  border: none;
}
.wp-block-search {
  margin-bottom: var(--space-3);
}
.wp-block-search .wp-block-search__inside-wrapper {
  display: flex;
  gap: var(--space-2);
}
.wp-block-search .wp-block-search__input {
  flex: 1;
  padding: 12px 16px;
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  font-size: var(--text-base);
  font-family: var(--font-body);
  transition: border-color var(--transition-fast);
}
.wp-block-search .wp-block-search__input:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(var(--color-primary-rgb), 0.1);
}
.wp-block-search .wp-block-search__button {
  padding: 12px 24px;
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  border-radius: var(--radius-md);
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  cursor: pointer;
  transition: all var(--transition-base);
}
.wp-block-search .wp-block-search__button:hover {
  background: var(--color-primary-dark);
  transform: translateY(-2px);
}
.widget-area {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}
@media (min-width: 1024px) {
  .widget-area {
    position: sticky;
    top: calc(var(--space-4) + 80px);
    padding-bottom: var(--space-4);
  }
}
.widget {
  background: var(--color-white);
  border-radius: var(--radius-xl);
  padding: var(--space-4);
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
  transition: box-shadow var(--transition-base);
}
.widget:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,.08);
}
.widget .widget-title,.widget .widgettitle {
  font-size: var(--text-lg);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  margin: 0 0 var(--space-3) 0;
  padding-bottom: var(--space-2);
  border-bottom: 2px solid var(--color-primary);
  line-height: 1.4;
}
.widget ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.widget ul li {
  padding: 12px 0;
  padding-left: 0 !important;
  border-bottom: 1px solid var(--color-light-gray);
  display: block !important;
}
.widget ul li::before {
  display: none !important;
}
.widget ul li:last-child {
  border-bottom: none;
}
.widget ul li a {
  color: var(--color-dark-gray);
  text-decoration: none;
  font-weight: var(--font-medium);
  transition: color var(--transition-fast);
  display: inline;
}
.widget ul li a:hover {
  color: var(--color-primary);
}
.widget ul ul {
  margin-top: var(--space-2);
  padding-left: var(--space-5);
  border-left: 2px solid var(--color-light-gray);
}
.widget ul ul li {
  font-size: .95em;
  padding: 10px 0;
}
.widget ul ul ul {
  padding-left: var(--space-5);
  border-left: 2px solid var(--color-light-gray);
}
.widget ul ul ul li {
  font-size: .9em;
  padding: 8px 0;
}
.widget ul ul ul ul {
  padding-left: 0;
  border-left: none;
}
.widget ul ul ul ul li {
  font-size: .9em;
}
.widget .post-count,.widget .count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 8px;
  background: var(--color-light-gray);
  color: var(--color-dark-gray);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  border-radius: var(--radius-full);
  margin-left: 8px;
  transition: all var(--transition-fast);
}
.widget li:hover .post-count,.widget li:hover .count {
  background: var(--color-primary);
  color: var(--color-white);
}
.widget select {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-lg);
  background: var(--color-white);
  color: var(--color-heading);
  font-family: var(--font-body);
  font-size: var(--text-base);
  cursor: pointer;
  transition: all var(--transition-fast);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%278%27 viewBox=%270 0 12 8%27%3E%3Cpath fill=%27%234B5563%27 d=%27M1.41 0L6 4.59L10.59 0L12 1.41l-6 6l-6-6L1.41 0z%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 44px;
}
.widget select:hover {
  border-color: var(--color-primary);
}
.widget select:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(37,99,235,.1);
}
.widget_search .wp-block-search__inside-wrapper,.wp-block-search .wp-block-search__inside-wrapper {
  border: none !important;
}
.widget_search .search-form,.wp-block-search .search-form {
  position: relative;
  display: flex;
  gap: 8px;
}
.widget_search .search-form .search-field,.wp-block-search .search-form .search-field {
  flex: 1;
  padding: 14px 48px 14px 18px;
  border: 1px solid var(--color-light-gray);
  border-radius: var(--radius-lg);
  background: var(--color-off-white);
  font-family: var(--font-body);
  font-size: var(--text-base);
  color: var(--color-heading);
  transition: all var(--transition-fast);
}
.widget_search .search-form .search-field:focus,.wp-block-search .search-form .search-field:focus {
  outline: none;
  border-color: var(--color-primary);
  background: var(--color-white);
  box-shadow: 0 0 0 3px rgba(37,99,235,.1);
}
.widget_search .search-form .search-field::-moz-placeholder, .wp-block-search .search-form .search-field::-moz-placeholder {
  color: var(--color-gray);
}
.widget_search .search-form .search-field::placeholder,.wp-block-search .search-form .search-field::placeholder {
  color: var(--color-gray);
}
.widget_search .search-form .search-submit,.wp-block-search .search-form .search-submit {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  padding: 8px 16px;
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  border-radius: var(--radius-md);
  font-weight: var(--font-medium);
  font-size: var(--text-sm);
  cursor: pointer;
  transition: all var(--transition-fast);
}
.widget_search .search-form .search-submit:hover,.wp-block-search .search-form .search-submit:hover {
  background: var(--color-primary-dark);
}
.widget_search .search-form .search-submit:focus,.wp-block-search .search-form .search-submit:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(37,99,235,.2);
}
.widget_recent_entries ul li {
  display: flex;
  gap: var(--space-2);
  align-items: flex-start;
}
.widget_recent_entries ul li a {
  flex: 1;
  font-weight: var(--font-semibold);
  font-size: var(--text-base);
  line-height: 1.5;
}
.widget_recent_entries ul li .post-date {
  display: block;
  font-size: var(--text-xs);
  color: var(--color-gray);
  margin-top: 4px;
  transition: color var(--transition-fast);
}
.widget_recent_entries ul li:hover .post-date {
  color: var(--color-primary);
}
.widget_recent_entries .wp-block-latest-posts__featured-image {
  margin-bottom: var(--space-2);
  border-radius: var(--radius-md);
  overflow: hidden;
}
.widget_recent_entries .wp-block-latest-posts__featured-image img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform var(--transition-base);
}
.widget_recent_entries .wp-block-latest-posts__featured-image:hover img {
  transform: scale(1.05);
}
.widget_recent_posts_thumbnail ul li {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: var(--space-2);
  align-items: center;
}
.widget_recent_posts_thumbnail ul li .post-thumbnail {
  width: 80px;
  height: 80px;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--color-light-gray);
}
.widget_recent_posts_thumbnail ul li .post-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform var(--transition-base);
}
.widget_recent_posts_thumbnail ul li:hover .post-thumbnail img {
  transform: scale(1.1);
}
.widget_recent_posts_thumbnail ul li .post-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.widget_recent_posts_thumbnail ul li a {
  font-size: var(--text-sm);
  line-height: 1.4;
}
.widget_recent_posts_thumbnail ul li .post-date {
  font-size: var(--text-xs);
  color: var(--color-gray);
}
.widget_recent_comments ul li {
  padding-left: 28px;
  position: relative;
}
.widget_recent_comments ul li::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  color: var(--color-primary);
  opacity: .7;
  transition: all var(--transition-fast);
}
.widget_recent_comments ul li:hover::before {
  opacity: 1;
  transform: translateY(-50%) scale(1.1);
}
.widget_recent_comments ul li a {
  font-size: var(--text-sm);
}
.widget_recent_comments ul li .comment-author-link {
  font-weight: var(--font-semibold);
  color: var(--color-heading);
}
.wp-block-latest-comments {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.wp-block-latest-comments .wp-block-latest-comments__comment {
  display: flex !important;
  gap: 12px;
  padding: var(--space-3) !important;
  margin-bottom: var(--space-3) !important;
  background: var(--color-off-white);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-light-gray);
  transition: all var(--transition-fast);
}
.wp-block-latest-comments .wp-block-latest-comments__comment:last-child {
  margin-bottom: 0 !important;
}
.wp-block-latest-comments .wp-block-latest-comments__comment:hover {
  border-color: var(--color-primary);
  box-shadow: 0 2px 8px rgba(37,99,235,.1);
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-avatar {
  flex-shrink: 0;
  border-radius: var(--radius-full);
  border: 2px solid var(--color-light-gray);
}
.wp-block-latest-comments .wp-block-latest-comments__comment article {
  flex: 1;
  min-width: 0;
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0 0 var(--space-2) 0 !important;
  padding: 0 !important;
  font-size: var(--text-sm);
  line-height: 1.4;
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-author {
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-author:hover {
  color: var(--color-primary);
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-link {
  color: var(--color-primary);
  text-decoration: none;
  transition: color var(--transition-fast);
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-link:hover {
  color: var(--color-primary-dark);
  text-decoration: underline;
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-date {
  font-size: var(--text-xs);
  color: var(--color-gray);
  display: block;
  margin-top: 2px;
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt {
  font-size: var(--text-sm);
  color: var(--color-dark-gray);
  line-height: 1.6;
  margin: 0 !important;
  padding: 0 !important;
}
.wp-block-latest-comments .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt p {
  margin: 0;
}
.wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment {
  align-items: flex-start;
}
.widget_categories ul li {
  position: relative;
  padding-left: 26px;
}
.widget_categories ul li::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  color: var(--color-primary);
  opacity: .7;
  transition: all var(--transition-fast);
}
.widget_categories ul li:hover::before {
  opacity: 1;
  transform: translateY(-50%) scale(1.15);
  color: var(--color-primary-dark);
}
.widget_categories ul li .count {
  margin-left: 8px;
  color: var(--color-gray);
}
.widget_categories .children {
  margin-top: var(--space-2);
  padding-left: var(--space-5);
  border-left: 2px solid var(--color-light-gray);
}
.widget_categories .children li {
  padding: 8px 0;
  padding-left: 22px;
  font-size: var(--text-sm);
}
.widget_categories .children li::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 13px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.widget_categories .children li:hover::before {
  transform: translateY(-50%) scale(1.15);
}
.widget_categories .children .children {
  padding-left: var(--space-5);
}
.widget_categories .children .children .children {
  padding-left: 0;
}
.widget_archive ul li {
  position: relative;
  padding-left: 26px;
}
.widget_archive ul li::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  color: var(--color-primary);
  opacity: .7;
  transition: all var(--transition-fast);
}
.widget_archive ul li:hover::before {
  opacity: 1;
  transform: translateY(-50%) scale(1.15);
  color: var(--color-primary-dark);
}
.widget_archive ul li .count {
  margin-left: 8px;
  color: var(--color-gray);
}
.widget_tag_cloud .tagcloud,.widget_tag_cloud .wp-block-tag-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: var(--space-2);
}
.widget_tag_cloud .tagcloud a,.widget_tag_cloud .wp-block-tag-cloud a {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  background: var(--color-light-gray);
  color: var(--color-dark-gray);
  border-radius: var(--radius-full);
  font-size: var(--text-sm) !important;
  font-weight: var(--font-medium);
  text-decoration: none;
  transition: all var(--transition-fast);
  line-height: 1;
}
.widget_tag_cloud .tagcloud a:hover,.widget_tag_cloud .wp-block-tag-cloud a:hover {
  background: var(--color-primary);
  color: var(--color-white);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(37,99,235,.2);
}
.widget_tag_cloud .tagcloud a.tag-link-count-1,.widget_tag_cloud .tagcloud a.tag-link-count-2,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-1,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-2 {
  font-size: var(--text-xs) !important;
}
.widget_tag_cloud .tagcloud a.tag-link-count-3,.widget_tag_cloud .tagcloud a.tag-link-count-4,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-3,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-4 {
  font-size: var(--text-sm) !important;
}
.widget_tag_cloud .tagcloud a.tag-link-count-5,.widget_tag_cloud .tagcloud a.tag-link-count-6,.widget_tag_cloud .tagcloud a.tag-link-count-7,.widget_tag_cloud .tagcloud a.tag-link-count-8,.widget_tag_cloud .tagcloud a.tag-link-count-9,.widget_tag_cloud .tagcloud a.tag-link-count-10,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-5,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-6,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-7,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-8,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-9,.widget_tag_cloud .wp-block-tag-cloud a.tag-link-count-10 {
  font-size: var(--text-base) !important;
  padding: 10px 18px;
}
.widget_calendar #wp-calendar {
  width: 100%;
  border-collapse: separate;
  border-spacing: 4px;
  margin-top: var(--space-3);
}
.widget_calendar #wp-calendar caption {
  font-size: var(--text-lg);
  font-weight: var(--font-bold);
  color: var(--color-heading);
  padding-bottom: var(--space-3);
  text-align: center;
  letter-spacing: -0.01em;
}
.widget_calendar #wp-calendar thead th {
  padding: 12px 4px;
  font-size: var(--text-xs);
  font-weight: var(--font-bold);
  color: var(--color-gray);
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .5px;
  background: rgba(0,0,0,0);
}
.widget_calendar #wp-calendar tbody td {
  padding: 0;
  text-align: center;
  font-size: var(--text-sm);
  color: var(--color-dark-gray);
  background: var(--color-off-white);
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
  height: 40px;
  position: relative;
}
.widget_calendar #wp-calendar tbody td:not(.pad):not(#today):hover {
  background: rgba(37,99,235,.1);
  transform: scale(1.05);
}
.widget_calendar #wp-calendar tbody td a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: var(--color-primary);
  font-weight: var(--font-bold);
  text-decoration: none;
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
}
.widget_calendar #wp-calendar tbody td a:hover {
  background: var(--color-primary);
  color: var(--color-white);
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(37,99,235,.3);
}
.widget_calendar #wp-calendar tbody td#today {
  background: var(--color-primary);
  color: var(--color-white);
  font-weight: var(--font-bold);
  box-shadow: 0 2px 8px rgba(37,99,235,.3);
}
.widget_calendar #wp-calendar tbody td#today a {
  color: var(--color-white);
}
.widget_calendar #wp-calendar tbody td.pad {
  background: rgba(0,0,0,0);
  pointer-events: none;
}
.widget_calendar #wp-calendar tfoot td {
  padding-top: var(--space-3);
  background: rgba(0,0,0,0);
}
.widget_calendar #wp-calendar tfoot td a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--color-primary);
  background: rgba(37,99,235,.1);
  border-radius: var(--radius-md);
  text-decoration: none;
  transition: all var(--transition-fast);
}
.widget_calendar #wp-calendar tfoot td a:hover {
  background: var(--color-primary);
  color: var(--color-white);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(37,99,235,.2);
}
.widget_calendar #wp-calendar tfoot td#prev {
  text-align: left;
}
.widget_calendar #wp-calendar tfoot td#prev a::before {
  content: "←";
  font-size: 16px;
}
.widget_calendar #wp-calendar tfoot td#next {
  text-align: right;
}
.widget_calendar #wp-calendar tfoot td#next a::after {
  content: "→";
  font-size: 16px;
}
.widget_meta ul li {
  position: relative;
  padding-left: 26px;
}
.widget_meta ul li::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  color: var(--color-primary);
  opacity: .7;
  transition: all var(--transition-fast);
}
.widget_meta ul li:hover::before {
  opacity: 1;
  transform: translateY(-50%) scale(1.15);
  color: var(--color-primary-dark);
}
.widget_meta ul li:nth-child(1)::before {
  content: "";
}
.widget_meta ul li:nth-child(2)::before {
  content: "";
}
.widget_meta ul li:nth-child(3)::before {
  content: "";
}
.widget_meta ul li:nth-child(4)::before {
  content: "";
}
.widget_meta ul li:nth-child(4)::before {
  font-weight: 900;
}
.widget_meta ul li:nth-child(5)::before {
  content: "";
}
.wp-block-loginout a {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: linear-gradient(135deg, #EF4444 0%, #DC2626 100%);
  color: var(--color-white) !important;
  border-radius: var(--radius-lg);
  font-weight: var(--font-semibold);
  text-decoration: none !important;
  transition: all var(--transition-base);
  box-shadow: 0 2px 8px rgba(239,68,68,.2);
  width: 100%;
  justify-content: center;
}
.wp-block-loginout a::before {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 14px;
}
.wp-block-loginout a:hover {
  background: linear-gradient(135deg, #DC2626 0%, #B91C1C 100%);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(239,68,68,.3);
}
.wp-block-loginout a:active {
  transform: translateY(0);
}
.widget_rss ul li {
  padding: var(--space-3) 0;
}
.widget_rss ul li .rsswidget {
  font-weight: var(--font-semibold);
  font-size: var(--text-base);
  color: var(--color-heading);
  display: block;
  margin-bottom: 8px;
}
.widget_rss ul li .rsswidget:hover {
  color: var(--color-primary);
}
.widget_rss ul li .rss-date {
  display: block;
  font-size: var(--text-xs);
  color: var(--color-gray);
  margin-bottom: 8px;
}
.widget_rss ul li .rssSummary {
  font-size: var(--text-sm);
  color: var(--color-dark-gray);
  line-height: 1.6;
  margin-top: 8px;
}
.widget_rss ul li cite {
  display: block;
  font-size: var(--text-xs);
  color: var(--color-gray);
  font-style: normal;
  margin-top: 8px;
}
.widget_text .textwidget {
  font-size: var(--text-base);
  line-height: 1.7;
  color: var(--color-dark-gray);
}
.widget_text .textwidget p {
  margin-bottom: var(--space-3);
}
.widget_text .textwidget p:last-child {
  margin-bottom: 0;
}
.widget_text .textwidget a {
  color: var(--color-primary);
  text-decoration: underline;
  text-decoration-color: rgba(37,99,235,.3);
  text-underline-offset: 2px;
  transition: all var(--transition-fast);
}
.widget_text .textwidget a:hover {
  color: var(--color-primary-dark);
  text-decoration-color: var(--color-primary-dark);
}
.widget_text .textwidget img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-md);
  margin: var(--space-3) 0;
}
.widget_text .textwidget ul,.widget_text .textwidget ol {
  margin: var(--space-3) 0;
  padding-left: var(--space-4);
}
.widget_text .textwidget ul li,.widget_text .textwidget ol li {
  margin-bottom: 8px;
  border: none;
}
.widget_text .textwidget ul li:hover,.widget_text .textwidget ol li:hover {
  padding-left: 0;
}
.widget_custom_html .textwidget {
  font-size: var(--text-base);
  line-height: 1.7;
  color: var(--color-dark-gray);
}
.widget_custom_html .textwidget * {
  max-width: 100%;
}
@media (max-width: 1023px) {
  .widget-area {
    margin-top: var(--space-8);
    grid-column: 1;
  }
}
@media (max-width: 639px) {
  .widget {
    padding: var(--space-3);
  }
  .widget .widget-title,.widget .widgettitle {
    font-size: var(--text-base);
  }
  .widget ul li {
    padding: 10px 0;
    font-size: var(--text-sm);
  }
  .widget_calendar #wp-calendar {
    font-size: var(--text-xs);
  }
  .widget_calendar #wp-calendar tbody td {
    padding: 6px 2px;
  }
  .widget_recent_posts_thumbnail ul li {
    grid-template-columns: 60px 1fr;
  }
  .widget_recent_posts_thumbnail ul li .post-thumbnail {
    width: 60px;
    height: 60px;
  }
  .widget_tag_cloud .tagcloud a {
    padding: 6px 12px;
    font-size: var(--text-xs) !important;
  }
}
.wp-block-group.is-style-default .wp-block-group__inner-container,.wp-block-widget-group.is-style-default .wp-block-group__inner-container {
  padding: 0;
}
.wp-block-social-links {
  list-style: none !important;
  padding: 0 !important;
  display: flex !important;
  gap: var(--space-2) !important;
  flex-wrap: wrap;
}
.wp-block-social-links .wp-social-link {
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}
.wp-block-social-links .wp-social-link::before {
  display: none !important;
}
.wp-block-social-links .wp-social-link a.wp-block-social-link-anchor {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: var(--color-charcoal);
  border-radius: var(--radius-full);
  transition: all var(--transition-fast);
  text-decoration: none !important;
}
.wp-block-social-links .wp-social-link a.wp-block-social-link-anchor svg {
  width: 24px;
  height: 24px;
  fill: var(--color-white);
  transition: all var(--transition-fast);
}
.wp-block-social-links .wp-social-link a.wp-block-social-link-anchor .screen-reader-text,.wp-block-social-links .wp-social-link a.wp-block-social-link-anchor .wp-block-social-link-label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.wp-block-social-links .wp-social-link a.wp-block-social-link-anchor:hover {
  background: var(--color-primary);
  transform: translateY(-2px) scale(1.05);
  box-shadow: 0 4px 12px rgba(37,99,235,.3);
}
.wp-block-social-links .wp-social-link a.wp-block-social-link-anchor:hover svg {
  transform: scale(1.1);
}
.wp-block-social-links .wp-social-link a.wp-block-social-link-anchor:active {
  transform: translateY(0) scale(1);
}
.wp-block-social-links .wp-social-link-facebook a:hover {
  background: #1877f2;
}
.wp-block-social-links .wp-social-link-twitter a:hover,.wp-block-social-links .wp-social-link-x a:hover {
  background: #000;
}
.wp-block-social-links .wp-social-link-instagram a:hover {
  background: linear-gradient(45deg, #F58529, #DD2A7B, #8134AF);
}
.wp-block-social-links .wp-social-link-linkedin a:hover {
  background: #0a66c2;
}
.wp-block-social-links .wp-social-link-youtube a:hover {
  background: red;
}
.wp-block-social-links .wp-social-link-github a:hover {
  background: #181717;
}
.wp-block-social-links .wp-social-link-wordpress a:hover {
  background: #21759b;
}
.wp-block-social-links .wp-social-link-amazon a:hover {
  background: #f90;
}
.wp-block-social-links .wp-social-link-bandcamp a:hover {
  background: #1da0c3;
}
.project-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
  opacity: 0;
  visibility: hidden;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.project-modal.is-active {
  opacity: 1;
  visibility: visible;
}
.project-modal.is-active .project-modal__dialog {
  transform: translateY(0) scale(1);
  opacity: 1;
}
.project-modal__backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.75);
  backdrop-filter: blur(8px);
  z-index: -1;
}
.project-modal__dialog {
  position: relative;
  max-width: 1100px;
  margin: 60px auto;
  background: var(--color-white);
  border-radius: 20px;
  box-shadow: 0 25px 50px rgba(0,0,0,.3);
  transform: translateY(30px) scale(0.95);
  opacity: 0;
  transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 1140px) {
  .project-modal__dialog {
    margin: 40px 20px;
  }
}
@media (max-width: 768px) {
  .project-modal__dialog {
    margin: 20px 16px;
    border-radius: 16px;
  }
}
.project-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  background: rgba(0,0,0,.6);
  color: var(--color-white);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  transition: all .3s ease;
  backdrop-filter: blur(4px);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.project-modal__close:hover {
  background: rgba(0,0,0,.8);
  transform: rotate(90deg);
}
.project-modal__close:focus {
  outline: 2px solid var(--color-white);
  outline-offset: 2px;
}
.project-modal__close svg {
  width: 24px;
  height: 24px;
  pointer-events: none;
}
@media (max-width: 768px) {
  .project-modal__close {
    width: 40px;
    height: 40px;
    top: 16px;
    right: 16px;
  }
  .project-modal__close svg {
    width: 20px;
    height: 20px;
  }
}
.project-modal__header {
  position: relative;
  height: 400px;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
}
@media (max-width: 768px) {
  .project-modal__header {
    height: 280px;
    border-radius: 16px 16px 0 0;
  }
}
.project-modal__header img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.project-modal__header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
  pointer-events: none;
}
.project-modal__header-content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 40px;
  z-index: 2;
  color: var(--color-white);
}
@media (max-width: 768px) {
  .project-modal__header-content {
    padding: 24px;
  }
}
.project-modal__category {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--color-white);
  margin-bottom: 12px;
  padding: 6px 16px;
  background: rgba(13,71,161,.9);
  border-radius: 20px;
  backdrop-filter: blur(4px);
}
.project-modal__title {
  font-size: clamp(28px,4vw,42px);
  font-weight: 800;
  color: var(--color-white);
  margin: 0 0 12px 0;
  line-height: 1.2;
  text-shadow: 0 2px 8px rgba(0,0,0,.3);
}
.project-modal__subtitle {
  font-size: 18px;
  color: hsla(0,0%,100%,.95);
  margin: 0;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .project-modal__subtitle {
    font-size: 16px;
  }
}
.project-modal__body {
  padding: 48px 60px 60px;
}
@media (max-width: 768px) {
  .project-modal__body {
    padding: 32px 24px 40px;
  }
}
.project-modal__meta {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 24px;
  margin-bottom: 48px;
  padding: 32px;
  background: var(--color-off-white);
  border-radius: 12px;
}
@media (max-width: 640px) {
  .project-modal__meta {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 24px;
    margin-bottom: 32px;
  }
}
.project-modal__meta-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.project-modal__meta-label {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--color-gray);
}
.project-modal__meta-value {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-charcoal);
}
.project-modal__meta-value--primary {
  color: var(--color-primary);
  font-size: 24px;
}
.project-modal__meta-value--success {
  color: var(--color-success);
}
.project-modal__description {
  margin-bottom: 40px;
}
.project-modal__description h3 {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-charcoal);
  margin: 0 0 20px 0;
}
@media (max-width: 768px) {
  .project-modal__description h3 {
    font-size: 20px;
  }
}
.project-modal__description p {
  font-size: 16px;
  line-height: 1.7;
  color: var(--color-dark-gray);
  margin: 0 0 16px 0;
}
.project-modal__description p:last-child {
  margin-bottom: 0;
}
.project-modal__highlights {
  margin-bottom: 40px;
}
.project-modal__highlights h3 {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-charcoal);
  margin: 0 0 24px 0;
}
@media (max-width: 768px) {
  .project-modal__highlights h3 {
    font-size: 20px;
  }
}
.project-modal__highlights-list {
  display: grid;
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.project-modal__highlight-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  background: var(--color-white);
  border: 1px solid var(--color-light-gray);
  border-radius: 10px;
  transition: all .3s ease;
  list-style: none;
}
.project-modal__highlight-item::before {
  display: none !important;
  content: none !important;
}
.project-modal__highlight-item:hover {
  border-color: var(--color-primary);
  box-shadow: 0 4px 12px rgba(13,71,161,.1);
  transform: translateX(4px);
}
.project-modal__highlight-item svg {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  color: var(--color-primary);
  margin-top: 2px;
}
.project-modal__highlight-item span {
  font-size: 15px;
  line-height: 1.6;
  color: var(--color-dark-gray);
}
.project-modal__metrics {
  margin-bottom: 40px;
}
.project-modal__metrics h3 {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-charcoal);
  margin: 0 0 24px 0;
}
@media (max-width: 768px) {
  .project-modal__metrics h3 {
    font-size: 20px;
  }
}
.project-modal__metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 20px;
}
@media (max-width: 640px) {
  .project-modal__metrics-grid {
    grid-template-columns: 1fr;
  }
}
.project-modal__metric {
  padding: 24px;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  border-radius: 12px;
  color: var(--color-white);
  text-align: center;
  transition: all .3s ease;
}
.project-modal__metric:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(13,71,161,.3);
}
.project-modal__metric--success {
  background: linear-gradient(135deg, var(--color-success) 0%, #1B5E20 100%);
}
.project-modal__metric--accent {
  background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-dark) 100%);
}
.project-modal__metric-value {
  display: block;
  font-size: 32px;
  font-weight: 800;
  margin-bottom: 8px;
}
@media (max-width: 768px) {
  .project-modal__metric-value {
    font-size: 28px;
  }
}
.project-modal__metric-label {
  display: block;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .05em;
  opacity: .9;
}
.project-modal__footer {
  display: flex;
  gap: 16px;
  padding: 32px 60px;
  border-top: 1px solid var(--color-light-gray);
  background: var(--color-off-white);
  border-radius: 0 0 20px 20px;
}
@media (max-width: 768px) {
  .project-modal__footer {
    padding: 24px;
    flex-direction: column;
    border-radius: 0 0 16px 16px;
  }
}
.project-modal__btn {
  flex: 1;
  padding: 16px 32px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border: none !important;
  border-radius: 10px !important;
  cursor: pointer;
  transition: all .3s ease !important;
  text-align: center !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
  line-height: 1.5 !important;
}
.project-modal__btn--primary {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%) !important;
  color: var(--color-white) !important;
  box-shadow: 0 4px 12px rgba(13,71,161,.3) !important;
}
.project-modal__btn--primary:hover {
  box-shadow: 0 6px 20px rgba(13,71,161,.4) !important;
  opacity: .95;
}
.project-modal__btn--secondary {
  background: var(--color-white) !important;
  color: var(--color-primary) !important;
  border: 2px solid var(--color-primary) !important;
}
.project-modal__btn--secondary:hover {
  background: var(--color-primary) !important;
  color: var(--color-white) !important;
}
.project-modal__btn svg {
  width: 20px;
  height: 20px;
}
body.project-modal-open {
  overflow: hidden;
}
.service-single {
  width: 100%;
  padding-top: 3rem;
}
@media (min-width: 768px) {
  .service-single {
    padding-top: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .service-single {
    padding-top: 4rem;
  }
}
.service-single__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
@media (min-width: 768px) {
  .service-single__container {
    padding: 0 2.5rem;
  }
}
@media (min-width: 1024px) {
  .service-single__container {
    padding: 0 3rem;
  }
}
.service-single__hero-bg {
  background: linear-gradient(180deg, #F9FAFB 0%, #FFFFFF 100%);
  padding: 0 0 4rem;
}
@media (min-width: 768px) {
  .service-single__hero-bg {
    padding: 0 0 5rem;
  }
}
.service-single__hero {
  padding-top: 2rem;
}
@media (min-width: 768px) {
  .service-single__hero {
    padding-top: 3rem;
  }
}
.service-single__layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
@media (min-width: 1024px) {
  .service-single__layout {
    grid-template-columns: 1fr 380px;
    gap: 3rem;
  }
}
.service-single__main-content {
  min-width: 0;
}
.service-single__hero-header {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.service-single__badge {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .5rem 1rem;
  font-size: .8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  background: linear-gradient(135deg, #FEF3C7 0%, #FDE68A 100%);
  border-radius: 9999px;
  color: #92400e;
  box-shadow: 0 1px 3px rgba(251,191,36,.3);
  align-self: flex-start;
}
.service-single__badge i {
  font-size: .75rem;
  color: #f59e0b;
}
.service-single__title-group {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .service-single__title-group {
    gap: 2rem;
  }
}
.service-single__icon {
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 10px 25px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.2) inset;
  transition: transform 300ms ease,box-shadow 300ms ease;
}
@media (min-width: 768px) {
  .service-single__icon {
    width: 5.5rem;
    height: 5.5rem;
  }
}
.service-single__icon:hover {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 15px 35px rgba(0,0,0,.2),0 0 0 1px hsla(0,0%,100%,.2) inset;
}
.service-single__icon i {
  font-size: 2rem;
  color: #fff;
}
@media (min-width: 768px) {
  .service-single__icon i {
    font-size: 2.5rem;
  }
}
.service-single__title {
  font-family: var(--font-heading);
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.025em;
  color: #111827;
  margin: 0;
  flex: 1;
}
@media (min-width: 640px) {
  .service-single__title {
    font-size: 2.5rem;
  }
}
@media (min-width: 768px) {
  .service-single__title {
    font-size: 3rem;
  }
}
@media (min-width: 1024px) {
  .service-single__title {
    font-size: 3.25rem;
  }
}
.service-single__description {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: #6b7280;
  margin: 0 0 2rem;
}
@media (min-width: 768px) {
  .service-single__description {
    font-size: 1.125rem;
    line-height: 1.75;
    margin-bottom: 2.5rem;
  }
}
.service-single__hero-process {
  margin-top: 2rem;
}
@media (min-width: 768px) {
  .service-single__hero-process {
    margin-top: 2.5rem;
  }
}
.service-single__hero-process-title {
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 700;
  color: #111827;
  margin: 0 0 1.5rem;
  text-transform: uppercase;
  font-size: .8125rem;
  letter-spacing: .08em;
  color: #6b7280;
}
@media (min-width: 768px) {
  .service-single__hero-process-title {
    margin-bottom: 2rem;
  }
}
.service-single__hero-timeline {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  position: relative;
}
.service-single__hero-timeline::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: 2rem;
  bottom: 2rem;
  width: 2px;
  background: linear-gradient(180deg, #E5E7EB 0%, #F3F4F6 100%);
}
@media (min-width: 768px) {
  .service-single__hero-timeline::before {
    left: 1.125rem;
  }
}
@media (min-width: 768px) {
  .service-single__hero-timeline {
    gap: 2rem;
  }
}
.service-single__hero-timeline-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  position: relative;
}
@media (min-width: 768px) {
  .service-single__hero-timeline-item {
    gap: 1.25rem;
  }
}
.service-single__hero-timeline-marker {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .875rem;
  font-weight: 700;
  color: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,.12),0 0 0 3px #fff;
  z-index: 1;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .service-single__hero-timeline-marker {
    width: 2.25rem;
    height: 2.25rem;
    font-size: 1rem;
  }
}
.service-single__hero-timeline-content {
  padding-bottom: .5rem;
}
.service-single__hero-timeline-title {
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 700;
  color: #111827;
  margin: 0 0 .5rem;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .service-single__hero-timeline-title {
    font-size: 1.0625rem;
  }
}
.service-single__hero-timeline-description {
  font-size: .875rem;
  line-height: 1.6;
  color: #6b7280;
  margin: 0;
}
@media (min-width: 768px) {
  .service-single__hero-timeline-description {
    font-size: .9375rem;
    line-height: 1.65;
  }
}
.service-single__sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media (min-width: 1024px) {
  .service-single__sidebar {
    position: sticky;
    top: 5rem;
    align-self: flex-start;
  }
}
.service-single__card {
  background: #fff;
  border-radius: 16px;
  padding: 1.75rem;
  box-shadow: 0 1px 3px rgba(0,0,0,.05),0 10px 25px rgba(0,0,0,.08),0 0 0 1px rgba(0,0,0,.02);
  transition: box-shadow 300ms ease,transform 300ms ease;
}
.service-single__card:hover {
  box-shadow: 0 1px 3px rgba(0,0,0,.05),0 15px 35px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.02);
  transform: translateY(-2px);
}
@media (min-width: 768px) {
  .service-single__card {
    padding: 2rem;
  }
}
.service-single__card-title {
  font-family: var(--font-heading);
  font-size: .8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #6b7280;
  margin: 0 0 1.5rem;
  padding-bottom: .75rem;
  border-bottom: 1px solid #f3f4f6;
}
.service-single__details-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.service-single__detail-item {
  position: relative;
  padding: 1.5rem 0;
  border-bottom: 1px solid #f3f4f6;
  transition: all 250ms cubic-bezier(0.4, 0, 0.2, 1);
}
.service-single__detail-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.service-single__detail-item:first-child {
  padding-top: 0;
}
.service-single__detail-item:hover {
  background: linear-gradient(to right, rgba(249, 250, 251, 0) 0%, rgba(249, 250, 251, 0.6) 50%, rgba(249, 250, 251, 0) 100%);
  transform: translateX(4px);
  border-bottom-color: #e5e7eb;
}
.service-single__detail-item:hover .service-single__detail-value {
  transform: translateY(-1px);
}
.service-single__detail-item:hover .service-single__detail-mini-icon {
  transform: scale(1.1) rotate(5deg);
}
@media (min-width: 768px) {
  .service-single__detail-item {
    padding: 1.75rem 0;
  }
}
.service-single__detail-content {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  width: 100%;
}
.service-single__detail-header {
  display: flex;
  align-items: center;
  gap: .5rem;
}
.service-single__detail-mini-icon {
  font-size: .875rem;
  flex-shrink: 0;
  transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: .9;
}
.service-single__detail-label {
  font-size: .8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .075em;
  color: #6b7280;
  line-height: 1.4;
}
.service-single__detail-value-wrapper {
  display: flex;
  align-items: baseline;
  gap: .25rem;
  margin-top: .25rem;
}
.service-single__detail-currency {
  font-size: 1.5rem;
  font-weight: 700;
  color: #9ca3af;
  line-height: 1;
  margin-top: -0.125rem;
  font-family: var(--font-heading);
}
@media (min-width: 768px) {
  .service-single__detail-currency {
    font-size: 1.75rem;
  }
}
.service-single__detail-value {
  font-size: 2.5rem;
  font-weight: 700;
  color: #111827;
  line-height: 1;
  letter-spacing: -0.025em;
  font-family: var(--font-heading);
  transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 768px) {
  .service-single__detail-value {
    font-size: 2.75rem;
  }
}
.service-single__detail-item:not(:first-child) .service-single__detail-value {
  font-size: 1.125rem;
  font-weight: 600;
  color: #111827;
  letter-spacing: -0.01em;
  margin-top: .125rem;
}
@media (min-width: 768px) {
  .service-single__detail-item:not(:first-child) .service-single__detail-value {
    font-size: 1.25rem;
  }
}
.service-single__features-list {
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.service-single__feature-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  font-size: .9375rem;
  line-height: 1.65;
  color: #374151;
}
.service-single__feature-item span {
  flex: 1;
  min-width: 0;
  padding-top: .1875rem;
}
.service-single__feature-icon {
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  margin-top: .125rem;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 150ms ease;
}
.service-single__feature-icon:hover {
  transform: scale(1.1);
}
.service-single__feature-icon i {
  font-size: .875rem;
  font-weight: 600;
}
.service-single__cta-wrapper {
  margin-top: .5rem;
}
.service-single__cta-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  width: 100%;
  padding: 1rem 1.5rem;
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
  transition: all 200ms ease;
}
.service-single__cta-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0,0,0,.2);
  text-decoration: none;
  color: #fff;
}
.service-single__cta-button:active {
  transform: translateY(0);
}
.service-single__cta-button i {
  font-size: .875rem;
  transition: transform 200ms ease;
}
.service-single__cta-button:hover i {
  transform: translateX(4px);
}
.service-single__cta-button--large {
  padding: 1.25rem 2rem;
  font-size: 1.0625rem;
}
.service-single__content-wrapper {
  background: #fff;
  padding: 4rem 0;
}
@media (min-width: 768px) {
  .service-single__content-wrapper {
    padding: 5rem 0;
  }
}
@media (min-width: 1024px) {
  .service-single__content-wrapper {
    padding: 6rem 0;
  }
}
.service-single__content-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}
@media (min-width: 1024px) {
  .service-single__content-layout {
    grid-template-columns: 1fr 320px;
    gap: 4rem;
  }
}
.service-single__content-main {
  min-width: 0;
}
.service-single__section {
  margin-bottom: 4rem;
}
.service-single__section:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .service-single__section {
    margin-bottom: 5rem;
  }
}
.service-single__section-title {
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.025em;
  color: #111827;
  margin: 0 0 1rem;
}
@media (min-width: 768px) {
  .service-single__section-title {
    font-size: 2.25rem;
  }
}
@media (min-width: 1024px) {
  .service-single__section-title {
    font-size: 2.5rem;
  }
}
.service-single__section-intro {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: #6b7280;
  margin: 0 0 2.5rem;
}
@media (min-width: 768px) {
  .service-single__section-intro {
    font-size: 1.125rem;
  }
}
.service-single__section-content {
  font-size: 1.0625rem;
  line-height: 1.75;
  color: #374151;
}
@media (min-width: 768px) {
  .service-single__section-content {
    font-size: 1.125rem;
  }
}
.service-single__section-content p {
  margin-bottom: 1.5rem;
}
.service-single__section-content p:last-child {
  margin-bottom: 0;
}
.service-single__section-content h2,.service-single__section-content h3,.service-single__section-content h4 {
  font-family: var(--font-heading);
  color: #111827;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
}
.service-single__section-content h2 {
  font-size: 1.75rem;
  font-weight: 700;
}
.service-single__section-content h3 {
  font-size: 1.5rem;
  font-weight: 600;
}
.service-single__section-content ul,.service-single__section-content ol {
  margin: 1.5rem 0;
  padding-left: 1.5rem;
}
.service-single__section-content ul li,.service-single__section-content ol li {
  margin-bottom: .75rem;
  line-height: 1.75;
}
.service-single__metrics-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .service-single__metrics-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .service-single__metrics-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.75rem;
  }
}
.service-single__metric-card {
  background: #f9fafb;
  border-radius: 16px;
  padding: 2rem 1.5rem;
  text-align: center;
  transition: all 300ms ease;
  border: 1px solid #f3f4f6;
}
.service-single__metric-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.08);
  background: #fff;
  border-color: #e5e7eb;
}
@media (min-width: 768px) {
  .service-single__metric-card {
    padding: 2.5rem 1.75rem;
  }
}
.service-single__metric-icon {
  width: 3.5rem;
  height: 3.5rem;
  margin: 0 auto 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  transition: transform 200ms ease;
}
.service-single__metric-icon i {
  font-size: 1.5rem;
}
.service-single__metric-card:hover .service-single__metric-icon {
  transform: scale(1.1);
}
.service-single__metric-title {
  font-family: var(--font-heading);
  font-size: .9375rem;
  font-weight: 600;
  color: #6b7280;
  margin: 0 0 .75rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.service-single__metric-value {
  font-family: var(--font-heading);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 .5rem;
}
@media (min-width: 768px) {
  .service-single__metric-value {
    font-size: 2.75rem;
  }
}
.service-single__metric-description {
  font-size: .875rem;
  line-height: 1.5;
  color: #9ca3af;
  margin: 0;
}
.service-single__chart-container {
  background: #f9fafb;
  border-radius: 16px;
  padding: 2rem 1.5rem;
  margin-bottom: 1.5rem;
  border: 1px solid #f3f4f6;
}
@media (min-width: 768px) {
  .service-single__chart-container {
    padding: 2.5rem 2rem;
  }
}
.service-single__chart {
  width: 100%;
  height: 400px;
}
.service-single__chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
}
.service-single__legend-item {
  display: flex;
  align-items: center;
  gap: .5rem;
}
.service-single__legend-dot {
  width: 1rem;
  height: 1rem;
  border-radius: 9999px;
  flex-shrink: 0;
}
.service-single__legend-label {
  font-size: .9375rem;
  color: #6b7280;
  font-weight: 500;
}
.service-single__timeline {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  position: relative;
}
.service-single__timeline::before {
  content: "";
  position: absolute;
  left: 1.25rem;
  top: 3rem;
  bottom: 3rem;
  width: 2px;
  background: linear-gradient(180deg, #E5E7EB 0%, #F3F4F6 100%);
}
@media (min-width: 768px) {
  .service-single__timeline::before {
    left: 1.5rem;
  }
}
.service-single__timeline-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.5rem;
  position: relative;
}
@media (min-width: 768px) {
  .service-single__timeline-item {
    gap: 2rem;
  }
}
.service-single__timeline-marker {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.15),0 0 0 4px #fff;
  z-index: 1;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .service-single__timeline-marker {
    width: 3rem;
    height: 3rem;
    font-size: 1.25rem;
  }
}
.service-single__timeline-content {
  padding-bottom: .5rem;
}
.service-single__timeline-title {
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 700;
  color: #111827;
  margin: 0 0 .75rem;
}
@media (min-width: 768px) {
  .service-single__timeline-title {
    font-size: 1.375rem;
  }
}
.service-single__timeline-description {
  font-size: 1rem;
  line-height: 1.7;
  color: #6b7280;
  margin: 0;
}
@media (min-width: 768px) {
  .service-single__timeline-description {
    font-size: 1.0625rem;
  }
}
.service-single__cta-box {
  border-radius: 16px;
  padding: 3rem 2rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .service-single__cta-box {
    padding: 4rem 3rem;
  }
}
.service-single__cta-title {
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.025em;
  color: #111827;
  margin: 0;
  max-width: 700px;
}
@media (min-width: 640px) {
  .service-single__cta-title {
    font-size: 2rem;
  }
}
@media (min-width: 768px) {
  .service-single__cta-title {
    font-size: 2.25rem;
  }
}
.service-single__cta-text {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: #6b7280;
  margin: 0;
  max-width: 650px;
}
@media (min-width: 768px) {
  .service-single__cta-text {
    font-size: 1.125rem;
  }
}
.service-single__content-sidebar {
  display: none;
}
@media (min-width: 1024px) {
  .service-single__content-sidebar {
    display: block;
  }
}
.service-single__sticky-wrapper {
  position: sticky;
  top: 5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.service-single__contact-text {
  font-size: .9375rem;
  line-height: 1.6;
  color: #6b7280;
  margin: 0 0 1.25rem;
}
.service-single__contact-link {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .75rem 1rem;
  font-size: .9375rem;
  font-weight: 500;
  color: #374151;
  text-decoration: none;
  background: #f9fafb;
  border-radius: 10px;
  transition: all 200ms ease;
  margin-bottom: .75rem;
}
.service-single__contact-link:last-child {
  margin-bottom: 0;
}
.service-single__contact-link:hover {
  background: #f3f4f6;
  transform: translateX(4px);
  color: #111827;
  text-decoration: none;
}
.service-single__contact-link i {
  font-size: 1rem;
  color: #9ca3af;
  flex-shrink: 0;
}
.service-single__related-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.service-single__related-item {
  margin: 0;
}
.service-single__related-link {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .875rem 1rem;
  font-size: .9375rem;
  font-weight: 500;
  color: #374151;
  text-decoration: none;
  background: #f9fafb;
  border-radius: 10px;
  transition: all 200ms ease;
}
.service-single__related-link:hover {
  background: #f3f4f6;
  transform: translateX(4px);
  color: #111827;
  text-decoration: none;
}
.service-single__related-link i {
  font-size: 1rem;
  color: #9ca3af;
  flex-shrink: 0;
}
.service-single__related-link span {
  flex: 1;
}
@media (max-width: 639px) {
  .service-single__title {
    font-size: 2rem;
  }
  .service-single__layout {
    grid-template-columns: 1fr;
  }
  .service-single__sidebar {
    order: 2;
  }
}
@media (prefers-reduced-motion: reduce) {
  .service-single__metric-card,.service-single__cta-button,.service-single__icon,.service-single__card {
    transition: none;
  }
  .service-single__timeline::before {
    animation: none;
  }
}
@media print {
  .service-single__cta-button,.service-single__contact-link,.service-single__related-list {
    display: none;
  }
  .service-single__hero-bg,.service-single__content-wrapper {
    padding: 1rem 0;
  }
  .service-single__card {
    box-shadow: none;
    border: 1px solid #e5e7eb;
  }
}
.contact-modern-hero {
  padding: clamp(120px,20vh,200px) 0 clamp(80px,12vh,120px);
  position: relative;
  overflow: hidden;
}
.contact-modern-hero .container {
  position: relative;
  z-index: 2;
}
.contact-modern-hero__content {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(24px,3vw,32px);
}
.contact-modern-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 20px;
  background: hsla(0,0%,100%,.1);
  backdrop-filter: blur(10px);
  border: 1px solid hsla(0,0%,100%,.2);
  border-radius: 100px;
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.contact-modern-hero__badge-dot {
  width: 8px;
  height: 8px;
  background: #10b981;
  border-radius: 50%;
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse {
  0%,100% {
    opacity: 1;
  }
  50% {
    opacity: .5;
  }
}
.contact-modern-hero__title {
  font-size: clamp(40px,7vw,80px);
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: #fff;
  margin: 0;
}
.contact-modern-hero__title-gradient {
  display: block;
  background: linear-gradient(135deg, #6366F1 0%, #A78BFA 50%, #EC4899 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.contact-modern-hero__subtitle {
  font-size: clamp(18px,2.5vw,22px);
  line-height: 1.6;
  color: hsla(0,0%,100%,.8);
  max-width: 700px;
  margin: 0;
}
.contact-modern-hero__cta-group {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
  margin-top: 8px;
}
.contact-modern-hero__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 32px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 100px;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}
.contact-modern-hero__cta svg {
  transition: transform .3s ease;
}
.contact-modern-hero__cta--primary {
  background: #fff;
  color: #1e293b;
}
.contact-modern-hero__cta--primary:hover {
  background: hsla(0,0%,100%,.9);
  transform: translateY(-2px);
  box-shadow: 0 12px 24px hsla(0,0%,100%,.2);
}
.contact-modern-hero__cta--primary:hover svg {
  transform: translateX(4px);
}
.contact-modern-hero__cta--secondary {
  background: rgba(0,0,0,0);
  color: #fff;
  border: 2px solid hsla(0,0%,100%,.3);
}
.contact-modern-hero__cta--secondary:hover {
  background: hsla(0,0%,100%,.1);
  border-color: hsla(0,0%,100%,.5);
  transform: translateY(-2px);
}
.contact-modern-hero__cta--secondary:hover svg {
  animation: ring .5s ease;
}
@keyframes ring {
  0%,100% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(-10deg);
  }
  75% {
    transform: rotate(10deg);
  }
}
.contact-modern-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(20px,3vw,32px);
  justify-content: center;
  align-items: center;
  margin-top: 16px;
  padding-top: 24px;
  border-top: 1px solid hsla(0,0%,100%,.1);
  color: hsla(0,0%,100%,.7);
  font-size: 14px;
}
.contact-modern-hero__trust-item {
  display: flex;
  align-items: center;
  gap: 6px;
}
.contact-modern-hero__trust-item svg {
  color: #fbbf24;
}
.contact-cards-grid {
  padding: clamp(80px,12vh,140px) 0;
  background: #f9fafb;
}
.contact-cards-grid__header {
  text-align: center;
  max-width: 700px;
  margin: 0 auto clamp(48px,8vw,64px);
}
.contact-cards-grid__title {
  font-size: clamp(36px,5vw,52px);
  font-weight: 800;
  color: #1e293b;
  margin: 0 0 16px 0;
  letter-spacing: -0.02em;
}
.contact-cards-grid__subtitle {
  font-size: clamp(16px,2vw,20px);
  color: #64748b;
  margin: 0;
  line-height: 1.6;
}
.contact-cards-grid__items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: clamp(24px,3vw,32px);
  margin-bottom: clamp(60px,10vw,80px);
}
.contact-card {
  background: #fff;
  border-radius: 24px;
  padding: clamp(32px,5vw,48px);
  border: 1px solid rgba(0,0,0,.06);
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.contact-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0,0,0,.08);
  border-color: rgba(99,102,241,.2);
}
.contact-card:hover .contact-card__icon {
  transform: scale(1.1);
}
.contact-card__icon {
  width: 64px;
  height: 64px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .3s ease;
}
.contact-card__icon--email {
  background: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);
  color: #fff;
}
.contact-card__icon--phone {
  background: linear-gradient(135deg, #10B981 0%, #059669 100%);
  color: #fff;
}
.contact-card__icon--location {
  background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%);
  color: #fff;
}
.contact-card__title {
  font-size: 22px;
  font-weight: 700;
  color: #1e293b;
  margin: 0;
}
.contact-card__description {
  font-size: 15px;
  line-height: 1.6;
  color: #64748b;
  margin: 0;
}
.contact-card__link {
  font-size: 16px;
  font-weight: 600;
  color: #6366f1;
  text-decoration: none;
  transition: color .2s ease;
  word-break: break-word;
}
.contact-card__link:hover {
  color: #4f46e5;
}
.contact-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: clamp(20px,3vw,32px);
  padding: clamp(40px,6vw,60px);
  background: #fff;
  border-radius: 24px;
  border: 1px solid rgba(0,0,0,.06);
}
.contact-stats__item {
  text-align: center;
  padding: 16px;
}
.contact-stats__number {
  font-size: clamp(32px,4vw,48px);
  font-weight: 900;
  color: #1e293b;
  margin-bottom: 8px;
  background: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.contact-stats__label {
  font-size: 14px;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-weight: 600;
}
.contact-modern-form {
  padding: clamp(100px,16vh,160px) 0;
  position: relative;
  overflow: hidden;
}
.contact-modern-form__wrapper {
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 2;
}
.contact-modern-form__card {
  width: 100%;
  background: rgba(30,41,59,.6);
  backdrop-filter: blur(20px);
  border: 1px solid hsla(0,0%,100%,.1);
  border-radius: 32px;
  padding: clamp(40px,6vw,64px);
}
.contact-modern-form__header {
  margin-bottom: clamp(32px,5vw,48px);
}
.contact-modern-form__eyebrow {
  display: block;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #a78bfa;
  margin-bottom: 12px;
}
.contact-modern-form__title {
  font-size: clamp(32px,5vw,48px);
  font-weight: 900;
  color: #fff;
  margin: 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.contact-modern-form__description {
  margin-top: 2rem;
  font-size: 16px;
  line-height: 1.6;
  color: #cbd5e1;
}
.contact-modern-form__body .wpcf7 {
  margin: 0;
}
.contact-modern-form__body .wpcf7-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.contact-modern-form__body .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}
.contact-modern-form__body input[type=text],.contact-modern-form__body input[type=email],.contact-modern-form__body input[type=tel],.contact-modern-form__body input[type=url],.contact-modern-form__body textarea {
  width: 100%;
  padding: 16px 20px;
  background: hsla(0,0%,100%,.08);
  border: 1px solid hsla(0,0%,100%,.15);
  border-radius: 12px;
  color: #fff;
  font-size: 16px;
  font-family: inherit;
  line-height: 1.5;
  transition: all .3s ease;
}
.contact-modern-form__body input[type=text]::-moz-placeholder, .contact-modern-form__body input[type=email]::-moz-placeholder, .contact-modern-form__body input[type=tel]::-moz-placeholder, .contact-modern-form__body input[type=url]::-moz-placeholder, .contact-modern-form__body textarea::-moz-placeholder {
  color: hsla(0,0%,100%,.4);
}
.contact-modern-form__body input[type=text]::placeholder,.contact-modern-form__body input[type=email]::placeholder,.contact-modern-form__body input[type=tel]::placeholder,.contact-modern-form__body input[type=url]::placeholder,.contact-modern-form__body textarea::placeholder {
  color: hsla(0,0%,100%,.4);
}
.contact-modern-form__body input[type=text]:hover,.contact-modern-form__body input[type=email]:hover,.contact-modern-form__body input[type=tel]:hover,.contact-modern-form__body input[type=url]:hover,.contact-modern-form__body textarea:hover {
  background: hsla(0,0%,100%,.1);
  border-color: hsla(0,0%,100%,.25);
}
.contact-modern-form__body input[type=text]:focus,.contact-modern-form__body input[type=email]:focus,.contact-modern-form__body input[type=tel]:focus,.contact-modern-form__body input[type=url]:focus,.contact-modern-form__body textarea:focus {
  outline: none;
  background: hsla(0,0%,100%,.12);
  border-color: #6366f1;
  box-shadow: 0 0 0 3px rgba(99,102,241,.15);
}
.contact-modern-form__body input[type=text].wpcf7-not-valid,.contact-modern-form__body input[type=email].wpcf7-not-valid,.contact-modern-form__body input[type=tel].wpcf7-not-valid,.contact-modern-form__body input[type=url].wpcf7-not-valid,.contact-modern-form__body textarea.wpcf7-not-valid {
  border-color: #ef4444;
  background: rgba(239,68,68,.1);
}
.contact-modern-form__body textarea {
  min-height: 140px;
  resize: vertical;
}
.contact-modern-form__body input[type=submit],.contact-modern-form__body .wpcf7-submit {
  width: 100%;
  padding: 18px 32px;
  background: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);
  border: none;
  border-radius: 12px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  transition: all .3s ease;
  margin-top: 8px;
}
.contact-modern-form__body input[type=submit]:hover,.contact-modern-form__body .wpcf7-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(99,102,241,.3);
}
.contact-modern-form__body input[type=submit]:active,.contact-modern-form__body .wpcf7-submit:active {
  transform: translateY(0);
}
.contact-modern-form__body .wpcf7-not-valid-tip {
  color: #fca5a5;
  font-size: 13px;
  margin-top: 6px;
}
.contact-modern-form__body .wpcf7-response-output {
  margin: 24px 0 0;
  padding: 16px 20px;
  border-radius: 12px;
  font-size: 14px;
}
.contact-modern-form__body .wpcf7-response-output.wpcf7-validation-errors {
  background: rgba(239,68,68,.15);
  border: 1px solid rgba(239,68,68,.3);
  color: #fca5a5;
}
.contact-modern-form__body .wpcf7-response-output.wpcf7-mail-sent-ok {
  background: rgba(16,185,129,.15);
  border: 1px solid rgba(16,185,129,.3);
  color: #6ee7b7;
}
.contact-modern-form__footer {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid hsla(0,0%,100%,.1);
}
.contact-modern-form__note {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: hsla(0,0%,100%,.6);
  margin: 0;
}
.contact-modern-form__note svg {
  color: #10b981;
}
.contact-faq {
  padding: clamp(80px,12vh,120px) 0;
  background: #fff;
}
.contact-faq__header {
  text-align: center;
  max-width: 700px;
  margin: 0 auto clamp(48px,8vw,64px);
}
.contact-faq__title {
  font-size: clamp(36px,5vw,48px);
  font-weight: 800;
  color: #1e293b;
  margin: 0 0 16px 0;
  letter-spacing: -0.02em;
}
.contact-faq__subtitle {
  font-size: clamp(16px,2vw,18px);
  color: #64748b;
  margin: 0;
}
.contact-faq__items {
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.contact-faq__item {
  background: #f9fafb;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  overflow: hidden;
  transition: all .3s ease;
}
.contact-faq__item:hover {
  border-color: #cbd5e1;
}
.contact-faq__item[open] {
  background: #fff;
  border-color: #6366f1;
  box-shadow: 0 4px 16px rgba(99,102,241,.1);
}
.contact-faq__item[open] .contact-faq__icon {
  transform: rotate(180deg);
}
.contact-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 24px;
  cursor: pointer;
  font-size: 17px;
  font-weight: 600;
  color: #1e293b;
  list-style: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.contact-faq__question::-webkit-details-marker {
  display: none;
}
.contact-faq__icon {
  flex-shrink: 0;
  color: #6366f1;
  transition: transform .3s ease;
}
.contact-faq__answer {
  padding: 0 24px 24px 24px;
  color: #64748b;
  font-size: 15px;
  line-height: 1.7;
}
.contact-faq__answer p {
  margin: 0;
}
.contact-final-cta {
  padding: clamp(100px,16vh,140px) 0;
  position: relative;
  overflow: hidden;
}
.contact-final-cta .container {
  position: relative;
  z-index: 2;
}
.contact-final-cta__content {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(24px,3vw,32px);
}
.contact-final-cta__title {
  font-size: clamp(36px,6vw,56px);
  font-weight: 900;
  color: #fff;
  margin: 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.contact-final-cta__subtitle {
  font-size: clamp(17px,2.5vw,20px);
  color: hsla(0,0%,100%,.9);
  margin: 0;
  line-height: 1.6;
}
.contact-final-cta__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
  margin-top: 8px;
}
.contact-final-cta__button {
  display: inline-flex;
  align-items: center;
  padding: 16px 32px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 100px;
  transition: all .3s ease;
  white-space: nowrap;
}
.contact-final-cta__button--white {
  background: #fff;
  color: #6366f1;
}
.contact-final-cta__button--white:hover {
  background: hsla(0,0%,100%,.95);
  transform: translateY(-2px);
  box-shadow: 0 12px 24px hsla(0,0%,100%,.3);
}
.contact-final-cta__button--outline {
  background: rgba(0,0,0,0);
  color: #fff;
  border: 2px solid hsla(0,0%,100%,.4);
}
.contact-final-cta__button--outline:hover {
  background: hsla(0,0%,100%,.15);
  border-color: hsla(0,0%,100%,.6);
  transform: translateY(-2px);
}
@media (max-width: 768px) {
  .contact-modern-hero__title br {
    display: none;
  }
  .contact-modern-hero__trust {
    font-size: 13px;
  }
  .contact-modern-form__title br {
    display: none;
  }
  .contact-cards-grid__items {
    grid-template-columns: 1fr;
  }
  .contact-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}
.hero-block {
  position: relative;
  min-height: calc(100vh - 86px);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: linear-gradient(to bottom, #f8f9fa 0%, #ffffff 50%, #f8f9fa 100%);
  padding-top: 6rem;
  padding-bottom: 4rem;
}
@media (min-width: 1024px) {
  .hero-block {
    min-height: calc(100vh - 96px);
    padding-top: 8rem;
    padding-bottom: 6rem;
  }
}
.hero-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at top left, rgba(var(--color-primary-rgb), 0.03) 0%, transparent 50%),radial-gradient(ellipse at bottom right, rgba(var(--color-accent-rgb), 0.03) 0%, transparent 50%);
  z-index: 1;
}
.hero-block__float-left {
  position: absolute;
  left: 5%;
  top: 15%;
  width: 350px;
  height: 350px;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1023px) {
  .hero-block__float-left {
    display: none;
  }
}
.hero-block__float-left::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 250px;
  height: 250px;
  background: linear-gradient(135deg, rgba(var(--color-primary-rgb), 0.45) 0%, rgba(var(--color-accent-rgb), 0.4) 100%);
  border-radius: 50%;
  filter: blur(45px);
  animation: floatSlow 8s ease-in-out infinite;
}
.hero-block__float-left::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 200px;
  height: 200px;
  background: linear-gradient(135deg, rgba(var(--color-accent-rgb), 0.42) 0%, rgba(var(--color-primary-rgb), 0.45) 100%);
  border-radius: 50%;
  filter: blur(40px);
  animation: floatMedium 6s ease-in-out infinite 1s;
}
.hero-block__float-right {
  position: absolute;
  right: 5%;
  bottom: 20%;
  width: 350px;
  height: 350px;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1023px) {
  .hero-block__float-right {
    display: none;
  }
}
.hero-block__float-right::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 230px;
  height: 230px;
  background: linear-gradient(135deg, rgba(156, 39, 176, 0.4) 0%, rgba(233, 30, 99, 0.38) 100%);
  border-radius: 50%;
  filter: blur(45px);
  animation: floatMedium 7s ease-in-out infinite .5s;
}
.hero-block__float-right::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 270px;
  height: 270px;
  background: linear-gradient(135deg, rgba(var(--color-accent-rgb), 0.48) 0%, rgba(var(--color-primary-rgb), 0.42) 100%);
  border-radius: 50%;
  filter: blur(50px);
  animation: floatSlow 9s ease-in-out infinite 2s;
}
@keyframes floatSlow {
  0%,100% {
    transform: translate(0, 0) scale(1);
    opacity: 1;
  }
  25% {
    transform: translate(10px, -15px) scale(1.05);
    opacity: .9;
  }
  50% {
    transform: translate(-5px, -25px) scale(0.95);
    opacity: .8;
  }
  75% {
    transform: translate(-15px, -10px) scale(1.02);
    opacity: .9;
  }
}
@keyframes floatMedium {
  0%,100% {
    transform: translate(0, 0) scale(1);
    opacity: .9;
  }
  33% {
    transform: translate(-12px, 18px) scale(1.08);
    opacity: 1;
  }
  66% {
    transform: translate(8px, -12px) scale(0.92);
    opacity: .85;
  }
}
.hero-block__container {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.5rem;
  width: 100%;
}
@media (min-width: 1024px) {
  .hero-block__container {
    padding: 0 2rem;
  }
}
.hero-block__content {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}
.hero-block__eyebrow {
  margin-bottom: 1.5rem;
}
@media (min-width: 1024px) {
  .hero-block__eyebrow {
    margin-bottom: 2rem;
  }
}
.hero-block__eyebrow-text {
  display: inline-flex;
  align-items: center;
  gap: .625rem;
  padding: .625rem 1.25rem;
  border-radius: 9999px;
  background-color: rgba(var(--color-primary-rgb), 0.06);
  border: 1px solid rgba(var(--color-primary-rgb), 0.12);
  font-size: .875rem;
  font-weight: 500;
  color: var(--color-primary);
  letter-spacing: .01em;
  transition: all var(--transition-base);
  position: relative;
}
.hero-block__eyebrow-text::before {
  content: "";
  width: .5rem;
  height: .5rem;
  border-radius: 9999px;
  background-color: var(--color-primary);
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  margin-right: -0.125rem;
}
.hero-block__eyebrow-text:hover {
  background-color: rgba(var(--color-primary-rgb), 0.08);
  border-color: rgba(var(--color-primary-rgb), 0.2);
}
@keyframes pulse {
  0%,100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: .5;
    transform: scale(0.95);
  }
}
.hero-block__title {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: var(--color-heading);
  margin-bottom: 1.5rem;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 640px) {
  .hero-block__title {
    font-size: 3.25rem;
  }
}
@media (min-width: 1024px) {
  .hero-block__title {
    font-size: 4rem;
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .hero-block__title {
    font-size: 4.5rem;
  }
}
.hero-block__title .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
  text-fill-color: rgba(0,0,0,0);
  display: inline;
}
.hero-block__subtitle {
  font-size: 1.125rem;
  font-weight: 400;
  color: rgba(60,60,67,.85);
  line-height: 1.7;
  margin-bottom: 2.5rem;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 640px) {
  .hero-block__subtitle {
    font-size: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .hero-block__subtitle {
    font-size: 1.375rem;
    line-height: 1.65;
    margin-bottom: 3rem;
  }
}
.hero-block__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin-bottom: 3rem;
}
@media (min-width: 640px) {
  .hero-block__actions {
    flex-direction: row;
    justify-content: center;
    gap: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .hero-block__actions {
    margin-bottom: 4rem;
  }
}
.hero-block__trust {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2rem;
  justify-content: center;
  padding-top: 2rem;
  border-top: 1px solid rgba(0,0,0,.08);
}
@media (min-width: 640px) {
  .hero-block__trust {
    gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .hero-block__trust {
    gap: 3rem;
    padding-top: 2.5rem;
  }
}
.hero-block__trust-item {
  display: flex;
  align-items: center;
  gap: .625rem;
  font-size: .9375rem;
  font-weight: 500;
  color: rgba(60,60,67,.78);
  transition: color var(--transition-base);
}
.hero-block__trust-item i {
  flex-shrink: 0;
  transition: transform var(--transition-base);
}
.hero-block__trust-item:hover {
  color: var(--color-heading);
}
.hero-block__trust-item:hover i {
  transform: scale(1.1);
}
@media (max-width: 639px) {
  .hero-block__eyebrow-text {
    font-size: .8125rem;
    padding: .5rem 1rem;
  }
  .hero-block__trust {
    gap: 1.5rem;
    padding-top: 1.5rem;
  }
  .hero-block__trust-item {
    font-size: .875rem;
  }
  .hero-block__trust-item svg {
    width: 1.125rem;
    height: 1.125rem;
  }
}
.services-block {
  position: relative;
  padding: 5rem 1.5rem;
  background: #f9fafb;
  overflow: hidden;
}
@media (min-width: 768px) {
  .services-block {
    padding: 5.5rem 2rem;
  }
}
@media (min-width: 1024px) {
  .services-block {
    padding: 6rem 2rem;
  }
}
.services-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(ellipse at top center, rgba(13, 71, 161, 0.02) 0%, transparent 60%);
  pointer-events: none;
  z-index: 1;
}
.services-block__container {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  width: 100%;
}
.services-block__header {
  text-align: center;
  margin-bottom: 3rem;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .services-block__header {
    margin-bottom: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .services-block__header {
    margin-bottom: 4rem;
  }
}
.services-block__eyebrow {
  margin-bottom: 1.5rem;
}
@media (min-width: 1024px) {
  .services-block__eyebrow {
    margin-bottom: 2rem;
  }
}
.services-block__title {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: #2c3e50;
  margin-bottom: 1.5rem;
}
@media (min-width: 640px) {
  .services-block__title {
    font-size: 3rem;
  }
}
@media (min-width: 1024px) {
  .services-block__title {
    font-size: 3.5rem;
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .services-block__title {
    font-size: 4rem;
  }
}
.services-block__title .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
  text-fill-color: rgba(0,0,0,0);
  display: inline;
}
.services-block__subtitle {
  font-size: 1.125rem;
  font-weight: 400;
  color: rgba(60,60,67,.85);
  line-height: 1.7;
  max-width: 700px;
  margin: 0 auto;
}
@media (min-width: 640px) {
  .services-block__subtitle {
    font-size: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .services-block__subtitle {
    font-size: 1.25rem;
    max-width: 800px;
  }
}
.services-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 640px) {
  .services-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
@media (min-width: 1024px) {
  .services-block__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
}
.services-block__card {
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 20px;
  padding: 2.5rem;
  transition: all .3s ease;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
.services-block__card:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 24px rgba(0,0,0,.12);
  border-color: rgba(13,71,161,.15);
}
.services-block__card:hover .services-block__gradient-blob {
  opacity: .5;
  transform: scale(1.2);
}
.services-block__card>*:not(.services-block__gradient-blob) {
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .services-block__card {
    padding: 3rem;
  }
}
.services-block__gradient-blob {
  position: absolute;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  filter: blur(40px);
  opacity: .3;
  transition: all .3s ease;
  z-index: 0;
  pointer-events: none;
  top: -50px;
  right: -50px;
  animation: servicesGradientFloat 6s ease-in-out infinite;
}
.services-block__gradient-blob--green {
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.4) 0%, rgba(16, 185, 129, 0.2) 100%);
}
.services-block__gradient-blob--blue {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.4) 0%, rgba(59, 130, 246, 0.2) 100%);
}
.services-block__gradient-blob--amber {
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.4) 0%, rgba(245, 158, 11, 0.2) 100%);
}
@keyframes servicesGradientFloat {
  0%,100% {
    transform: translate(0, 0);
  }
  33% {
    transform: translate(10px, -10px);
  }
  66% {
    transform: translate(-10px, 5px);
  }
}
.services-block__icon {
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-bottom: 1.5rem;
  flex-shrink: 0;
  transition: all .3s ease;
}
.services-block__icon i {
  font-size: 32px;
  transition: all .3s ease;
}
@media (min-width: 768px) {
  .services-block__icon {
    width: 80px;
    height: 80px;
  }
  .services-block__icon i {
    font-size: 32px;
  }
}
.services-block__icon--green {
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.1) 0%, rgba(16, 185, 129, 0.05) 100%);
}
.services-block__icon--green i {
  color: #10b981;
}
.services-block__icon--blue {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(59, 130, 246, 0.05) 100%);
}
.services-block__icon--blue i {
  color: #3b82f6;
}
.services-block__icon--amber {
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.1) 0%, rgba(245, 158, 11, 0.05) 100%);
}
.services-block__icon--amber i {
  color: #f59e0b;
}
.services-block__content {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.services-block__card-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #2c3e50;
  margin: 0 0 1rem 0;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .services-block__card-title {
    font-size: 1.5rem;
  }
}
.services-block__description {
  font-size: .9375rem;
  font-weight: 400;
  color: rgba(60,60,67,.78);
  line-height: 1.7;
  margin: 0;
  flex: 1;
}
@media (min-width: 768px) {
  .services-block__description {
    font-size: 1rem;
  }
}
@keyframes servicesCardFadeUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.services-block__card {
  animation: servicesCardFadeUp .6s ease-out;
  animation-fill-mode: both;
}
.services-block__card:nth-child(1) {
  animation-delay: .1s;
}
.services-block__card:nth-child(2) {
  animation-delay: .2s;
}
.services-block__card:nth-child(3) {
  animation-delay: .3s;
}
.services-block__card:nth-child(4) {
  animation-delay: .4s;
}
.services-block__card:nth-child(5) {
  animation-delay: .5s;
}
.services-block__card:nth-child(6) {
  animation-delay: .6s;
}
.services-block--white {
  background: #fff;
}
@media (min-width: 1024px) {
  .services-block--two-column .services-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .services-block--four-column .services-block__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
  }
}
.services-block--four-column .services-block__card {
  padding: 2rem;
}
@media (min-width: 1024px) {
  .services-block--four-column .services-block__card {
    padding: 2rem;
  }
}
.services-block__card:focus-within {
  outline: 2px solid #0d47a1;
  outline-offset: 4px;
}
@media (max-width: 639px) {
  .services-block__card {
    padding: 2rem;
  }
  .services-block__card:hover {
    transform: translateY(-4px);
  }
  .services-block__icon {
    width: 64px;
    height: 64px;
  }
  .services-block__icon i {
    font-size: 28px;
  }
  .services-block__card-title {
    font-size: 1.25rem;
  }
}
.services-cpt-block {
  position: relative;
  padding: 5rem 1.5rem;
  background: #f9fafb;
  overflow: hidden;
}
@media (min-width: 768px) {
  .services-cpt-block {
    padding: 5.5rem 2rem;
  }
}
@media (min-width: 1024px) {
  .services-cpt-block {
    padding: 6rem 2rem;
  }
}
.services-cpt-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at top center, rgba(var(--color-primary-rgb), 0.02) 0%, transparent 60%);
  z-index: 1;
}
.services-cpt-block__container {
  position: relative;
  z-index: 2;
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
  width: 100%;
  padding: 0 32px;
}
@media (max-width: 1024px) {
  .services-cpt-block__container {
    padding: 0 24px;
  }
}
@media (max-width: 768px) {
  .services-cpt-block__container {
    padding: 0 16px;
  }
}
.services-cpt-block__header {
  text-align: center;
  margin-bottom: 3rem;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .services-cpt-block__header {
    margin-bottom: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .services-cpt-block__header {
    margin-bottom: 4rem;
  }
}
.services-cpt-block__eyebrow {
  margin-bottom: 1.5rem;
}
@media (min-width: 1024px) {
  .services-cpt-block__eyebrow {
    margin-bottom: 2rem;
  }
}
.services-cpt-block__title {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: var(--color-heading-secondary);
  margin-bottom: 1.5rem;
}
@media (min-width: 640px) {
  .services-cpt-block__title {
    font-size: 3rem;
  }
}
@media (min-width: 1024px) {
  .services-cpt-block__title {
    font-size: 3.5rem;
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .services-cpt-block__title {
    font-size: 4rem;
  }
}
.services-cpt-block__title .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
  text-fill-color: rgba(0,0,0,0);
  display: inline;
}
.services-cpt-block__subtitle {
  font-size: 1.125rem;
  font-weight: 400;
  color: rgba(60,60,67,.85);
  line-height: 1.7;
  max-width: 700px;
  margin: 0 auto;
}
@media (min-width: 640px) {
  .services-cpt-block__subtitle {
    font-size: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .services-cpt-block__subtitle {
    font-size: 1.25rem;
    max-width: 800px;
  }
}
.services-cpt-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 768px) {
  .services-cpt-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem;
  }
}
.services-cpt-block__card {
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 24px;
  padding: 2.5rem;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
.services-cpt-block__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 32px rgba(0,0,0,.12),0 8px 16px rgba(0,0,0,.08);
  border-color: rgba(var(--color-primary-rgb), 0.15);
}
.services-cpt-block__card:hover .services-cpt-block__diagonal-gradient {
  opacity: 1;
}
.services-cpt-block__card:hover .services-cpt-block__gradient-blob {
  opacity: 1;
}
.services-cpt-block__card:hover .services-cpt-block__icon-bg {
  opacity: .8;
}
.services-cpt-block__card:hover .services-cpt-block__button {
  background: linear-gradient(135deg, var(--button-gradient-from) 0%, var(--button-gradient-to) 100%);
  color: #fff;
  border-color: rgba(0,0,0,0);
  box-shadow: 0 8px 20px rgba(0,0,0,.15);
}
.services-cpt-block__card:hover .services-cpt-block__button .services-cpt-block__button-icon {
  transform: translateX(4px);
}
@media (min-width: 768px) {
  .services-cpt-block__card {
    padding: 3rem;
  }
}
.services-cpt-block__card>* {
  position: relative;
  z-index: 2;
}
.services-cpt-block__diagonal-gradient {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  z-index: 0;
  opacity: .7;
  transition: opacity .3s ease;
}
.services-cpt-block__gradient-blob {
  position: absolute;
  top: -80px;
  left: -80px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
  opacity: .6;
  transition: opacity .3s ease;
}
.services-cpt-block__icon-bg {
  position: absolute;
  top: -30px;
  left: -30px;
  font-size: 200px;
  pointer-events: none;
  z-index: 1;
  line-height: 1;
  opacity: .5;
  transition: opacity .3s ease;
}
.services-cpt-block__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.services-cpt-block__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
@media (max-width: 639px) {
  .services-cpt-block__top {
    flex-direction: column;
    align-items: flex-start;
  }
}
.services-cpt-block__card-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #2c3e50;
  margin: 0;
  line-height: 1.3;
  flex: 1;
}
@media (min-width: 768px) {
  .services-cpt-block__card-title {
    font-size: 1.625rem;
  }
}
.services-cpt-block__price-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: .75rem 1rem;
  border-radius: 12px;
  color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
  flex-shrink: 0;
  min-width: 100px;
  transition: all .3s ease;
}
@media (max-width: 639px) {
  .services-cpt-block__price-badge {
    align-self: flex-start;
  }
}
.services-cpt-block__price-label {
  font-size: .6875rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .05em;
  opacity: .9;
  margin-bottom: .125rem;
}
.services-cpt-block__price-amount {
  font-size: 1.75rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
}
@media (min-width: 768px) {
  .services-cpt-block__price-amount {
    font-size: 2rem;
  }
}
.services-cpt-block__info-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .625rem;
  margin-top: -0.5rem;
}
.services-cpt-block__badge {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  padding: .5rem .875rem;
  border-radius: 8px;
  font-size: .8125rem;
  font-weight: 500;
  transition: all .2s ease;
}
.services-cpt-block__badge i {
  font-size: .75rem;
}
.services-cpt-block__badge--duration {
  background-color: rgba(var(--color-primary-rgb), 0.08);
  color: #0d47a1;
  border: 1px solid rgba(var(--color-primary-rgb), 0.15);
}
.services-cpt-block__badge--duration:hover {
  background-color: rgba(var(--color-primary-rgb), 0.12);
}
.services-cpt-block__badge--delivery {
  background-color: rgba(var(--color-accent-rgb), 0.08);
  color: #00acc1;
  border: 1px solid rgba(var(--color-accent-rgb), 0.15);
}
.services-cpt-block__badge--delivery:hover {
  background-color: rgba(var(--color-accent-rgb), 0.12);
}
.services-cpt-block__description {
  font-size: .9375rem;
  font-weight: 400;
  color: #718096;
  line-height: 1.7;
  margin: 0;
}
@media (min-width: 768px) {
  .services-cpt-block__description {
    font-size: 1rem;
  }
}
.services-cpt-block__features {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.services-cpt-block__feature {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  font-size: .9375rem;
  color: #2c3e50;
  line-height: 1.5;
}
.services-cpt-block__feature i {
  font-size: 1rem;
  flex-shrink: 0;
  margin-top: .125rem;
}
.services-cpt-block__feature span {
  flex: 1;
}
@media (min-width: 768px) {
  .services-cpt-block__feature {
    font-size: .9375rem;
  }
}
.services-cpt-block__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .625rem;
  padding: .875rem 1.75rem;
  font-size: .9375rem;
  font-weight: 600;
  color: var(--color-body);
  background-color: #fff;
  border: 1.5px solid rgba(0,0,0,.12);
  border-radius: 12px;
  text-decoration: none;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
  margin-top: auto;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
  position: relative;
  overflow: hidden;
  --button-gradient-from: #10B981;
  --button-gradient-to: rgba(16, 185, 129, 0.8);
}
.services-cpt-block__button:hover {
  transform: translateY(-2px);
}
@media (min-width: 768px) {
  .services-cpt-block__button {
    padding: 1rem 2rem;
    font-size: 1rem;
  }
}
.services-cpt-block__button-text {
  position: relative;
  z-index: 1;
}
.services-cpt-block__button-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  transition: transform .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.services-cpt-block__arrow {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
@keyframes servicesCptCardFadeUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.services-cpt-block__card {
  animation: servicesCptCardFadeUp .6s ease-out;
  animation-fill-mode: both;
}
.services-cpt-block__card:nth-child(1) {
  animation-delay: .1s;
}
.services-cpt-block__card:nth-child(2) {
  animation-delay: .2s;
}
.services-cpt-block__card:nth-child(3) {
  animation-delay: .3s;
}
.services-cpt-block__card:nth-child(4) {
  animation-delay: .4s;
}
.services-cpt-block__card:nth-child(5) {
  animation-delay: .5s;
}
.services-cpt-block__card:nth-child(6) {
  animation-delay: .6s;
}
.services-cpt-block__button:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
}
.services-cpt-block__card:focus-within {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
}
@media (max-width: 639px) {
  .services-cpt-block__card {
    padding: 2rem;
  }
  .services-cpt-block__card:hover {
    transform: translateY(-4px);
  }
  .services-cpt-block__card-title {
    font-size: 1.375rem;
  }
  .services-cpt-block__price-amount {
    font-size: 1.5rem;
  }
  .services-cpt-block__icon-bg {
    font-size: 160px;
    top: -20px;
    left: -20px;
  }
}
.services-cpt-block--white {
  background: #fff;
}
@media (min-width: 1024px) {
  .services-cpt-block--two-column .services-cpt-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .services-cpt-block--four-column .services-cpt-block__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
  }
}
.services-cpt-block--four-column .services-cpt-block__card {
  padding: 2rem;
}
@media (min-width: 1024px) {
  .services-cpt-block--four-column .services-cpt-block__card {
    padding: 2rem;
  }
}
.features-block {
  position: relative;
  padding: 5rem 1.5rem;
  background: #fff;
  overflow: hidden;
}
@media (min-width: 768px) {
  .features-block {
    padding: 5.5rem 2rem;
  }
}
@media (min-width: 1024px) {
  .features-block {
    padding: 6rem 2rem;
  }
}
.features-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(ellipse at bottom left, rgba(13, 71, 161, 0.02) 0%, transparent 60%);
  pointer-events: none;
  z-index: 1;
}
.features-block__float {
  position: absolute;
  right: 10%;
  top: 20%;
  width: 300px;
  height: 300px;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1023px) {
  .features-block__float {
    display: none;
  }
}
.features-block__float::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 250px;
  height: 250px;
  background: linear-gradient(135deg, rgba(13, 71, 161, 0.08) 0%, rgba(var(--color-accent-rgb), 0.06) 100%);
  border-radius: 50%;
  filter: blur(60px);
  animation: featuresFloatSlow 10s ease-in-out infinite;
}
@keyframes featuresFloatSlow {
  0%,100% {
    transform: translate(0, 0) scale(1);
    opacity: 1;
  }
  50% {
    transform: translate(-20px, 20px) scale(1.1);
    opacity: .8;
  }
}
.features-block__container {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  width: 100%;
}
.features-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) {
  .features-block__grid {
    gap: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .features-block__grid {
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
  }
}
@media (min-width: 1280px) {
  .features-block__grid {
    gap: 5rem;
  }
}
@media (min-width: 1024px) {
  .features-block--split-4060 .features-block__grid {
    grid-template-columns: 40fr 60fr;
  }
}
@media (min-width: 1024px) {
  .features-block--reverse .features-block__grid {
    direction: rtl;
  }
}
@media (min-width: 1024px) {
  .features-block--reverse .features-block__content,.features-block--reverse .features-block__image-wrapper {
    direction: ltr;
  }
}
@media (max-width: 1023px) {
  .features-block__content {
    order: 2;
  }
  .features-block__image-wrapper {
    order: 1;
  }
}
.features-block__content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media (min-width: 1024px) {
  .features-block__content {
    padding-right: 1rem;
  }
}
.features-block__heading {
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.025em;
  color: var(--color-heading);
  margin: 0;
}
@media (min-width: 640px) {
  .features-block__heading {
    font-size: 2.75rem;
  }
}
@media (min-width: 1024px) {
  .features-block__heading {
    font-size: 3rem;
    line-height: 1.1;
  }
}
@media (min-width: 1280px) {
  .features-block__heading {
    font-size: 3.25rem;
  }
}
.features-block__heading .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
  text-fill-color: rgba(0,0,0,0);
  display: inline;
}
.features-block__description {
  font-size: 1rem;
  font-weight: 400;
  color: rgba(60,60,67,.85);
  line-height: 1.7;
  margin: 0;
}
@media (min-width: 640px) {
  .features-block__description {
    font-size: 1.0625rem;
  }
}
@media (min-width: 1024px) {
  .features-block__description {
    font-size: 1.125rem;
    line-height: 1.7;
  }
}
.features-block__list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (min-width: 768px) {
  .features-block__list {
    gap: 1.25rem;
  }
}
.features-block__item {
  display: flex;
  align-items: flex-start;
  gap: .875rem;
  transition: all .3s ease;
}
.features-block__item:hover {
  transform: translateX(4px);
}
.features-block__item:hover .features-block__icon {
  transform: scale(1.1);
}
.features-block__icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 3px;
  transition: transform .3s ease;
}
.features-block__icon i {
  font-size: 24px;
  color: var(--color-accent);
}
.features-block__icon--primary i {
  color: var(--color-primary);
}
.features-block__icon--secondary i {
  color: var(--color-secondary);
}
.features-block__icon--accent i {
  color: var(--color-accent);
}
.features-block__text {
  font-size: 1rem;
  font-weight: 500;
  color: var(--color-body);
  line-height: 1.6;
  margin: 0;
  padding-top: 2px;
  transition: color .3s ease;
}
@media (min-width: 768px) {
  .features-block__text {
    font-size: 1.0625rem;
  }
}
.features-block__cta {
  margin-top: .5rem;
}
@media (min-width: 768px) {
  .features-block__cta {
    margin-top: 1rem;
  }
}
.features-block__image-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 20px;
  box-shadow: 0 4px 16px rgba(0,0,0,.08);
  transition: all .4s ease;
  aspect-ratio: 4/3;
}
@media (min-width: 1024px) {
  .features-block__image-wrapper {
    aspect-ratio: auto;
    box-shadow: 0 8px 24px rgba(0,0,0,.1);
  }
}
.features-block__image-wrapper {
  border: 1px solid rgba(0,0,0,.06);
}
.features-block__image-wrapper:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,.14);
}
.features-block__image-wrapper:hover .features-block__image {
  transform: scale(1.03);
}
.features-block__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: transform .4s ease;
}
.features-block__image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(13, 71, 161, 0.05) 0%, transparent 30%, transparent 70%, rgba(0, 0, 0, 0.08) 100%);
  pointer-events: none;
  opacity: 0;
  transition: opacity .4s ease;
}
.features-block__image-wrapper:hover .features-block__image-overlay {
  opacity: 1;
}
@keyframes featuresFadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes featuresFadeInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.features-block__content {
  animation: featuresFadeInLeft .8s ease-out;
  animation-fill-mode: both;
  animation-delay: .1s;
}
.features-block__image-wrapper {
  animation: featuresFadeInRight .8s ease-out;
  animation-fill-mode: both;
  animation-delay: .2s;
}
.features-block__item {
  animation: featuresFadeInLeft .6s ease-out;
  animation-fill-mode: both;
}
.features-block__item:nth-child(1) {
  animation-delay: .3s;
}
.features-block__item:nth-child(2) {
  animation-delay: .4s;
}
.features-block__item:nth-child(3) {
  animation-delay: .5s;
}
.features-block__item:nth-child(4) {
  animation-delay: .6s;
}
.features-block__item:nth-child(5) {
  animation-delay: .7s;
}
.features-block__item:nth-child(6) {
  animation-delay: .8s;
}
.features-block--gray {
  background: #f9fafb;
}
@media (min-width: 1024px) {
  .features-block--reverse .features-block__content {
    order: 2;
    padding-right: 0;
    padding-left: 1rem;
  }
  .features-block--reverse .features-block__image-wrapper {
    order: 1;
  }
}
.features-block--centered .features-block__content {
  text-align: center;
  align-items: center;
}
.features-block--centered .features-block__list {
  max-width: 600px;
  margin: 0 auto;
}
.features-block--centered .features-block__item {
  justify-content: center;
}
.features-block__cta .btn:focus-visible {
  outline: 2px solid #0d47a1;
  outline-offset: 4px;
}
@media (max-width: 639px) {
  .features-block {
    padding: 4rem 1.25rem;
  }
  .features-block__grid {
    gap: 2.5rem;
  }
  .features-block__content {
    gap: 1.5rem;
  }
  .features-block__heading {
    font-size: 2rem;
  }
  .features-block__description {
    font-size: .9375rem;
  }
  .features-block__list {
    gap: .875rem;
  }
  .features-block__text {
    font-size: .9375rem;
  }
  .features-block__icon i {
    font-size: 22px;
  }
  .features-block__image-wrapper {
    aspect-ratio: 3/2;
  }
}
@media print {
  .features-block__float,.features-block__gradient {
    display: none;
  }
  .features-block__image-wrapper {
    box-shadow: none;
    page-break-inside: avoid;
  }
}
.textimage-block {
  position: relative;
  min-height: auto;
  display: grid;
  grid-template-columns: 1fr;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .textimage-block {
    grid-template-columns: 1fr 1fr;
    min-height: 50vh;
  }
}
.textimage-block__image-column {
  position: relative;
  width: 100%;
  overflow: hidden;
  order: 1;
}
@media (max-width: 1023px) {
  .textimage-block__image-column {
    aspect-ratio: 3/2;
    min-height: 400px;
    max-height: 500px;
  }
}
@media (min-width: 1024px) {
  .textimage-block__image-column {
    height: 100%;
    min-height: 50vh;
  }
}
.textimage-block__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
}
.textimage-block__content-column {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  order: 2;
  background: #f9fafb;
  padding: 5rem 1.5rem;
}
@media (min-width: 640px) {
  .textimage-block__content-column {
    padding: 5rem 3.75rem;
  }
}
@media (min-width: 768px) {
  .textimage-block__content-column {
    padding: 5rem 5rem;
  }
}
@media (min-width: 1024px) {
  .textimage-block__content-column {
    padding: 3rem 6.25rem;
  }
}
@media (min-width: 1280px) {
  .textimage-block__content-column {
    padding: 3rem 7.5rem;
  }
}
.textimage-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at top right, rgba(var(--color-primary-rgb), 0.03) 0%, transparent 60%),radial-gradient(ellipse at bottom left, rgba(var(--color-accent-rgb), 0.02) 0%, transparent 60%);
  z-index: 1;
}
.textimage-block__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 600px;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media (min-width: 768px) {
  .textimage-block__content {
    gap: 2.5rem;
  }
}
.textimage-block__heading {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: var(--color-heading-secondary);
  margin: 0;
}
@media (min-width: 640px) {
  .textimage-block__heading {
    font-size: 2.75rem;
  }
}
@media (min-width: 768px) {
  .textimage-block__heading {
    font-size: 3rem;
  }
}
@media (min-width: 1024px) {
  .textimage-block__heading {
    font-size: 3.5rem;
    line-height: 1.1;
  }
}
.textimage-block__heading .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
  text-fill-color: rgba(0,0,0,0);
  display: inline;
}
.textimage-block__text {
  font-size: 1rem;
  font-weight: 400;
  color: rgba(60,60,67,.85);
  line-height: 1.7;
  margin: 0;
}
@media (min-width: 640px) {
  .textimage-block__text {
    font-size: 1.0625rem;
  }
}
@media (min-width: 1024px) {
  .textimage-block__text {
    font-size: 1.125rem;
    line-height: 1.7;
  }
}
.textimage-block__cta {
  margin-top: .5rem;
}
@media (min-width: 768px) {
  .textimage-block__cta {
    margin-top: 1rem;
  }
}
@media (min-width: 1024px) {
  .textimage-block--reverse {
    direction: rtl;
  }
  .textimage-block--reverse .textimage-block__image-column,.textimage-block--reverse .textimage-block__content-column {
    direction: ltr;
  }
}
.textimage-block--white .textimage-block__content-column {
  background: #fff;
}
.textimage-block--gradient .textimage-block__content-column {
  background: linear-gradient(to bottom, #F9FAFB 0%, #FFFFFF 50%, #F9FAFB 100%);
}
.textimage-block--blue-light .textimage-block__content-column {
  background: rgba(var(--color-primary-rgb), 0.04);
}
.textimage-block--cyan-light .textimage-block__content-column {
  background: rgba(var(--color-accent-rgb), 0.04);
}
.textimage-block--beige-light .textimage-block__content-column {
  background: #faf8f5;
}
.textimage-block--lavender-light .textimage-block__content-column {
  background: rgba(139,92,246,.03);
}
@keyframes textimageFadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes textimageFadeInRight {
  from {
    opacity: 0;
    transform: translateX(40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.textimage-block__content-column {
  animation: textimageFadeInLeft .8s ease-out;
  animation-fill-mode: both;
  animation-delay: .1s;
}
.textimage-block__image-column {
  animation: textimageFadeInRight .8s ease-out;
  animation-fill-mode: both;
  animation-delay: .2s;
}
.textimage-block--reverse .textimage-block__content-column {
  animation-name: textimageFadeInRight;
}
.textimage-block--reverse .textimage-block__image-column {
  animation-name: textimageFadeInLeft;
}
.textimage-block__cta .btn:focus-visible {
  outline: 2px solid #0d47a1;
  outline-offset: 4px;
}
@media (max-width: 639px) {
  .textimage-block__content-column {
    padding: 4rem 1.25rem;
  }
  .textimage-block__content {
    gap: 1.5rem;
  }
  .textimage-block__heading {
    font-size: 2rem;
  }
  .textimage-block__text {
    font-size: .9375rem;
  }
  .textimage-block__image-column {
    min-height: 350px;
    max-height: 450px;
  }
}
@media print {
  .textimage-block {
    min-height: auto;
    display: block;
  }
  .textimage-block__gradient {
    display: none;
  }
  .textimage-block__image-column {
    height: auto;
    min-height: auto;
    aspect-ratio: 3/2;
    page-break-inside: avoid;
  }
  .textimage-block__content-column {
    background: #fff !important;
    padding: 2rem;
    page-break-inside: avoid;
  }
}
.testimonials-block {
  padding: var(--section-spacing-lg) var(--space-3);
  background: linear-gradient(135deg, #F8F9FA 0%, #E9ECEF 100%);
  position: relative;
  overflow: hidden;
}
.testimonials-block::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(var(--color-primary-rgb), 0.03) 0%, transparent 70%);
  pointer-events: none;
}
@media (min-width: 768px) {
  .testimonials-block {
    padding: var(--section-spacing-lg) var(--space-6);
  }
}
.testimonials-block__container {
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.testimonials-block__header {
  text-align: center;
  margin-bottom: var(--space-12);
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .testimonials-block__header {
    margin-bottom: var(--space-16);
  }
}
.testimonials-block__eyebrow {
  margin-bottom: var(--space-3);
}
.testimonials-block__title {
  font-size: clamp(32px,4vw,48px);
  font-weight: var(--font-bold);
  color: var(--color-heading);
  margin: 0 0 var(--space-4) 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.testimonials-block__subtitle {
  font-size: var(--text-lg);
  color: var(--color-dark-gray);
  margin: 0;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .testimonials-block__subtitle {
    font-size: var(--text-xl);
  }
}
.testimonials-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
}
@media (min-width: 768px) {
  .testimonials-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-8);
  }
}
@media (min-width: 1024px) {
  .testimonials-block__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-8);
  }
}
.testimonials-block__card {
  background: var(--color-white);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  box-shadow: var(--shadow-md);
  transition: all var(--transition-base);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.testimonials-block__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(var(--color-primary-rgb), 0.02) 0%, rgba(0, 105, 92, 0.02) 100%);
  opacity: 0;
  transition: opacity var(--transition-base);
  pointer-events: none;
}
.testimonials-block__card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
}
.testimonials-block__card:hover::before {
  opacity: 1;
}
.testimonials-block__card:hover .testimonials-block__quote-icon {
  transform: scale(1.1);
  color: var(--color-primary);
}
@media (min-width: 768px) {
  .testimonials-block__card {
    padding: var(--space-8);
  }
}
.testimonials-block__quote-icon {
  width: 48px;
  height: 48px;
  margin-bottom: var(--space-4);
  color: var(--color-light-gray);
  transition: all var(--transition-base);
  position: relative;
  z-index: 1;
}
.testimonials-block__quote-icon svg {
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .testimonials-block__quote-icon {
    width: 56px;
    height: 56px;
  }
}
.testimonials-block__rating {
  display: flex;
  gap: 4px;
  margin-bottom: var(--space-4);
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .testimonials-block__rating {
    gap: 6px;
    margin-bottom: var(--space-5);
  }
}
.testimonials-block__star {
  width: 20px;
  height: 20px;
  color: var(--color-light-gray);
  transition: color var(--transition-fast);
}
.testimonials-block__star.is-filled {
  color: orange;
}
@media (min-width: 768px) {
  .testimonials-block__star {
    width: 24px;
    height: 24px;
  }
}
.testimonials-block__content {
  font-size: var(--text-base);
  line-height: 1.7;
  color: var(--color-dark-gray);
  margin: 0 0 var(--space-6) 0;
  flex: 1;
  font-style: normal;
  border: none;
  padding: 0;
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .testimonials-block__content {
    font-size: var(--text-lg);
    margin-bottom: var(--space-8);
  }
}
.testimonials-block__client {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-light-gray);
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .testimonials-block__client {
    gap: var(--space-4);
    padding-top: var(--space-5);
  }
}
.testimonials-block__photo {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--color-light-gray);
  border: 3px solid var(--color-white);
  box-shadow: var(--shadow-sm);
}
@media (min-width: 768px) {
  .testimonials-block__photo {
    width: 64px;
    height: 64px;
  }
}
.testimonials-block__photo-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.testimonials-block__details {
  flex: 1;
  min-width: 0;
}
.testimonials-block__name {
  font-size: var(--text-base);
  font-weight: var(--font-bold);
  color: var(--color-heading);
  margin-bottom: 4px;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .testimonials-block__name {
    font-size: var(--text-lg);
  }
}
.testimonials-block__role {
  font-size: var(--text-sm);
  color: var(--color-gray);
  line-height: 1.4;
}
@media (min-width: 768px) {
  .testimonials-block__role {
    font-size: var(--text-base);
  }
}
.testimonials-block__footer {
  margin-top: var(--space-12);
  text-align: center;
}
@media (min-width: 768px) {
  .testimonials-block__footer {
    margin-top: var(--space-16);
  }
}
.testimonials-block__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-6);
  background: var(--color-white);
  color: var(--color-primary);
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  border-radius: var(--radius-lg);
  text-decoration: none;
  box-shadow: var(--shadow-md);
  transition: all var(--transition-base);
}
@media (min-width: 768px) {
  .testimonials-block__link {
    padding: var(--space-4) var(--space-8);
    font-size: var(--text-lg);
  }
}
.testimonials-block__link svg {
  width: 20px;
  height: 20px;
  transition: transform var(--transition-base);
}
@media (min-width: 768px) {
  .testimonials-block__link svg {
    width: 24px;
    height: 24px;
  }
}
.testimonials-block__link:hover {
  background: var(--color-primary);
  color: var(--color-white);
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.testimonials-block__link:hover svg {
  transform: translateX(4px);
}
.testimonials-block__link:active {
  transform: translateY(0);
}
.testimonials-block__link:focus-visible {
  outline: 3px solid rgba(var(--color-primary-rgb), 0.4);
  outline-offset: 4px;
}
@keyframes testimonialsFadeUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.testimonials-block__card {
  animation: testimonialsFadeUp .6s ease-out;
  animation-fill-mode: both;
}
.testimonials-block__card:nth-child(1) {
  animation-delay: .1s;
}
.testimonials-block__card:nth-child(2) {
  animation-delay: .2s;
}
.testimonials-block__card:nth-child(3) {
  animation-delay: .3s;
}
.testimonials-block--dark {
  background: linear-gradient(135deg, var(--color-charcoal) 0%, #1a1a1a 100%);
}
.testimonials-block--dark::before {
  background: radial-gradient(circle, rgba(255, 255, 255, 0.05) 0%, transparent 70%);
}
.testimonials-block--dark .testimonials-block__eyebrow {
  background: hsla(0,0%,100%,.1);
  border-color: hsla(0,0%,100%,.2);
  color: var(--color-white);
}
.testimonials-block--dark .testimonials-block__title {
  color: var(--color-white);
}
.testimonials-block--dark .testimonials-block__subtitle {
  color: hsla(0,0%,100%,.85);
}
.testimonials-block--dark .testimonials-block__card {
  background: hsla(0,0%,100%,.05);
  backdrop-filter: blur(10px);
  border: 1px solid hsla(0,0%,100%,.1);
}
.testimonials-block--dark .testimonials-block__card:hover {
  background: hsla(0,0%,100%,.08);
  border-color: hsla(0,0%,100%,.2);
}
.testimonials-block--dark .testimonials-block__quote-icon {
  color: hsla(0,0%,100%,.2);
}
.testimonials-block__card:hover .testimonials-block--dark .testimonials-block__quote-icon {
  color: hsla(0,0%,100%,.4);
}
.testimonials-block--dark .testimonials-block__content {
  color: hsla(0,0%,100%,.85);
}
.testimonials-block--dark .testimonials-block__client {
  border-top-color: hsla(0,0%,100%,.1);
}
.testimonials-block--dark .testimonials-block__name {
  color: var(--color-white);
}
.testimonials-block--dark .testimonials-block__role {
  color: hsla(0,0%,100%,.6);
}
.testimonials-block--dark .testimonials-block__link {
  background: var(--color-white);
  color: var(--color-primary);
}
.testimonials-block--dark .testimonials-block__link:hover {
  background: var(--color-off-white);
}
.pricing-block {
  position: relative;
  padding: 6rem 1.5rem;
  background: linear-gradient(135deg, #F7FAFC 0%, #FFFFFF 50%, #F7FAFC 100%);
  overflow: hidden;
}
@media (min-width: 768px) {
  .pricing-block {
    padding: 8rem 2rem;
  }
}
@media (min-width: 1024px) {
  .pricing-block {
    padding: 10rem 2rem;
  }
}
.pricing-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(circle at 50% 0%, rgba(var(--color-primary-rgb), 0.03) 0%, transparent 50%);
  pointer-events: none;
  z-index: 1;
}
.pricing-block__container {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
}
.pricing-block__header {
  text-align: center;
  margin-bottom: 4rem;
}
@media (min-width: 768px) {
  .pricing-block__header {
    margin-bottom: 5rem;
  }
}
.pricing-block__eyebrow {
  margin-bottom: 1.5rem;
}
.pricing-block__title {
  font-size: 2.25rem;
  font-weight: 700;
  color: #2c3e50;
  margin-bottom: 1rem;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .pricing-block__title {
    font-size: 3rem;
  }
}
@media (min-width: 1024px) {
  .pricing-block__title {
    font-size: 3.75rem;
  }
}
.pricing-block__title .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.pricing-block__subtitle {
  font-size: 1.125rem;
  color: #718096;
  max-width: 700px;
  margin: 0 auto;
  line-height: 1.7;
}
@media (min-width: 768px) {
  .pricing-block__subtitle {
    font-size: 1.25rem;
  }
}
.pricing-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: stretch;
}
@media (min-width: 768px) {
  .pricing-block__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .pricing-block__grid {
    gap: 2rem;
  }
}
.pricing-block__card {
  position: relative;
  background: #fff;
  border-radius: 1.5rem;
  padding: 2.5rem 2rem;
  border: 2px solid #e2e8f0;
  box-shadow: 0 4px 6px rgba(0,0,0,.02),0 2px 4px rgba(0,0,0,.03);
  transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .pricing-block__card {
    padding: 3rem 2.5rem;
  }
}
.pricing-block__card:hover {
  box-shadow: 0 20px 25px -5px rgba(0,0,0,.08),0 10px 10px -5px rgba(0,0,0,.04);
  border-color: rgba(var(--color-primary-rgb), 0.2);
}
.pricing-block__card--featured {
  background: linear-gradient(135deg, #0D47A1 0%, #1976D2 100%);
  border: 2px solid rgba(0,0,0,0);
  box-shadow: 0 20px 25px -5px rgba(var(--color-primary-rgb), 0.15),0 10px 10px -5px rgba(var(--color-primary-rgb), 0.1);
}
.pricing-block__card--featured:hover {
  box-shadow: 0 25px 30px -5px rgba(var(--color-primary-rgb), 0.25),0 15px 15px -5px rgba(var(--color-primary-rgb), 0.15);
}
.pricing-block__card--featured .pricing-block__plan-name,.pricing-block__card--featured .pricing-block__plan-description,.pricing-block__card--featured .pricing-block__currency,.pricing-block__card--featured .pricing-block__amount,.pricing-block__card--featured .pricing-block__period,.pricing-block__card--featured .pricing-block__feature span {
  color: #fff;
}
.pricing-block__card--featured .pricing-block__check-icon {
  color: hsla(0,0%,100%,.9);
}
.pricing-block__card--featured .pricing-block__cta--featured,.pricing-block__card--featured .pricing-block__cta--featured:hover,.pricing-block__card--featured .pricing-block__cta--featured:focus,.pricing-block__card--featured .pricing-block__cta--featured:active,.pricing-block__card--featured .pricing-block__cta--featured:visited {
  color: #0d47a1 !important;
}
.pricing-block__badge {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(135deg, #10B981 0%, #059669 100%);
  color: #fff;
  padding: .5rem 1.5rem;
  border-radius: 9999px;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  box-shadow: 0 4px 6px rgba(16,185,129,.3);
  z-index: 10;
}
.pricing-block__badge-text {
  display: block;
}
.pricing-block__card-header {
  margin-bottom: 2rem;
}
.pricing-block__plan-name {
  font-size: 1.5rem;
  font-weight: 700;
  color: #2c3e50;
  margin-bottom: .5rem;
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .pricing-block__plan-name {
    font-size: 1.75rem;
  }
}
.pricing-block__plan-description {
  font-size: .9375rem;
  color: #718096;
  line-height: 1.6;
  min-height: 2.8em;
}
.pricing-block__pricing {
  display: flex;
  align-items: baseline;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #e2e8f0;
}
.pricing-block__card--featured .pricing-block__pricing {
  border-bottom-color: hsla(0,0%,100%,.2);
}
.pricing-block__currency {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--color-heading-secondary);
  margin-right: .25rem;
}
.pricing-block__amount {
  font-size: 3.5rem;
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1;
}
@media (min-width: 1024px) {
  .pricing-block__amount {
    font-size: 4rem;
  }
}
.pricing-block__card--featured .pricing-block__amount {
  color: var(--color-white);
}
.pricing-block__period {
  font-size: 1rem;
  color: #718096;
  margin-left: .25rem;
}
.pricing-block__features {
  list-style: none;
  padding: 0;
  margin: 0 0 2.5rem 0;
  flex-grow: 1;
}
.pricing-block__feature {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  padding: .75rem 0;
  font-size: .9375rem;
  color: #4a5568;
  line-height: 1.6;
}
.pricing-block__feature span {
  flex: 1;
}
.pricing-block__feature span strong {
  font-weight: 600;
  color: #2c3e50;
}
.pricing-block__card--featured .pricing-block__feature span strong {
  color: #fff;
}
.pricing-block__check-icon {
  flex-shrink: 0;
  font-size: 1.25rem;
  color: #10b981;
  margin-top: .125rem;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.pricing-block__card--featured .pricing-block__check-icon {
  color: hsla(0,0%,100%,.9);
}
.pricing-block__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  width: 100%;
  padding: 1rem 2rem;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  color: #fff !important;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border-radius: .75rem;
  border: none;
  cursor: pointer;
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 6px rgba(var(--color-primary-rgb), 0.2);
  margin-top: auto;
}
.pricing-block__cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 15px rgba(var(--color-primary-rgb), 0.3);
  background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%);
}
.pricing-block__cta:active {
  transform: translateY(0);
}
.pricing-block__cta--featured {
  background: #fff;
  color: var(--color-primary) !important;
  box-shadow: 0 4px 6px rgba(0,0,0,.1);
}
.pricing-block__cta--featured,.pricing-block__cta--featured:hover,.pricing-block__cta--featured:focus,.pricing-block__cta--featured:active,.pricing-block__cta--featured:visited {
  color: var(--color-primary) !important;
}
.pricing-block__cta--featured:hover {
  background: var(--color-off-white);
  color: var(--color-primary) !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 15px rgba(0,0,0,.2);
}
.pricing-block__cta-icon {
  font-size: .875rem;
  transition: transform .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.pricing-block__cta:hover .pricing-block__cta-icon {
  transform: translateX(4px);
}
.pricing-block__footer {
  margin-top: 4rem;
  text-align: center;
}
.pricing-block__guarantee {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  font-size: .9375rem;
  color: #718096;
  padding: 1rem 1.5rem;
  background: rgba(var(--color-success-rgb), 0.05);
  border-radius: .75rem;
  border: 1px solid rgba(var(--color-success-rgb), 0.2);
}
.pricing-block__guarantee i {
  color: var(--color-success);
  font-size: 1.25rem;
}
.cta-block {
  padding: var(--section-spacing-lg) var(--space-3);
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 50%, var(--color-accent) 100%);
  position: relative;
  overflow: hidden;
}
@media (min-width: 768px) {
  .cta-block {
    padding: var(--section-spacing-lg) var(--space-6);
  }
}
.cta-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.1) 0%, transparent 50%);
  pointer-events: none;
  z-index: 1;
}
.cta-block__container {
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.cta-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-8);
  align-items: center;
}
@media (min-width: 1024px) {
  .cta-block__grid {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-12);
  }
}
.cta-block__content {
  color: var(--color-white);
}
.cta-block__eyebrow {
  margin-bottom: var(--space-3);
}
.cta-block__title {
  font-size: clamp(32px,4vw,48px);
  font-weight: var(--font-bold);
  color: var(--color-white);
  margin: 0 0 var(--space-4) 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
@media (min-width: 768px) {
  .cta-block__title {
    font-size: clamp(36px,3.5vw,56px);
  }
}
.cta-block__description {
  font-size: var(--text-lg);
  color: hsla(0,0%,100%,.9);
  line-height: 1.7;
  margin: 0 0 var(--space-6) 0;
}
@media (min-width: 768px) {
  .cta-block__description {
    font-size: var(--text-xl);
    margin-bottom: var(--space-8);
  }
}
.cta-block__contact-methods {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}
@media (min-width: 768px) {
  .cta-block__contact-methods {
    margin-bottom: var(--space-8);
  }
}
.cta-block__method {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.cta-block__method-icon {
  width: 48px;
  height: 48px;
  background: hsla(0,0%,100%,.15);
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  backdrop-filter: blur(10px);
}
.cta-block__method-icon svg {
  width: 24px;
  height: 24px;
  color: var(--color-white);
}
.cta-block__method-details {
  flex: 1;
}
.cta-block__method-label {
  font-size: var(--text-sm);
  color: hsla(0,0%,100%,.7);
  margin-bottom: 4px;
  font-weight: var(--font-medium);
}
@media (min-width: 768px) {
  .cta-block__method-label {
    font-size: var(--text-base);
  }
}
.cta-block__method-value {
  font-size: var(--text-lg);
  color: var(--color-white);
  font-weight: var(--font-semibold);
  text-decoration: none;
  transition: color var(--transition-fast);
}
@media (min-width: 768px) {
  .cta-block__method-value {
    font-size: var(--text-xl);
  }
}
.cta-block__method-value.link:hover,.cta-block__method-value a:hover {
  color: hsla(0,0%,100%,.8);
  text-decoration: underline;
}
.cta-block__trust {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
@media (min-width: 640px) {
  .cta-block__trust {
    flex-direction: row;
    gap: var(--space-6);
  }
}
.cta-block__trust-item {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  color: hsla(0,0%,100%,.85);
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
}
@media (min-width: 768px) {
  .cta-block__trust-item {
    font-size: var(--text-base);
  }
}
.cta-block__trust-item svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
.cta-block__form-wrapper {
  background: var(--color-white);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  box-shadow: var(--shadow-xl);
}
@media (min-width: 768px) {
  .cta-block__form-wrapper {
    padding: var(--space-8);
  }
}
.cta-block__form-group {
  margin-bottom: var(--space-4);
}
@media (min-width: 768px) {
  .cta-block__form-group {
    margin-bottom: var(--space-5);
  }
}
.cta-block__label {
  display: block;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  margin-bottom: var(--space-2);
}
@media (min-width: 768px) {
  .cta-block__label {
    font-size: var(--text-base);
  }
}
.cta-block__label .required {
  color: var(--color-error);
}
.cta-block__input,.cta-block__select,.cta-block__textarea {
  width: 100%;
  padding: var(--space-3);
  font-size: var(--text-base);
  font-family: var(--font-body);
  color: var(--color-heading);
  background: var(--color-white);
  border: 2px solid var(--color-light-gray);
  border-radius: var(--radius-md);
  transition: all var(--transition-base);
}
@media (min-width: 768px) {
  .cta-block__input,.cta-block__select,.cta-block__textarea {
    padding: var(--space-4);
    font-size: var(--text-lg);
  }
}
.cta-block__input::-moz-placeholder, .cta-block__select::-moz-placeholder, .cta-block__textarea::-moz-placeholder {
  color: var(--color-gray);
  opacity: .7;
}
.cta-block__input::placeholder,.cta-block__select::placeholder,.cta-block__textarea::placeholder {
  color: var(--color-gray);
  opacity: .7;
}
.cta-block__input:focus,.cta-block__select:focus,.cta-block__textarea:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(var(--color-primary-rgb), 0.1);
}
.cta-block__input:hover:not(:focus),.cta-block__select:hover:not(:focus),.cta-block__textarea:hover:not(:focus) {
  border-color: var(--color-gray);
}
.cta-block__textarea {
  resize: vertical;
  min-height: 120px;
}
.cta-block__select {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width=%2712%27 height=%278%27 viewBox=%270 0 12 8%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M1 1L6 6L11 1%27 stroke=%27%236C757D%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right var(--space-3) center;
  background-size: 12px;
  padding-right: var(--space-8);
}
.cta-block__submit {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: var(--space-4) var(--space-6);
  background: var(--color-primary);
  color: var(--color-white);
  font-size: var(--text-base);
  font-weight: var(--font-bold);
  border: none;
  border-radius: var(--radius-lg);
  cursor: pointer;
  transition: all var(--transition-base);
  box-shadow: var(--shadow-md);
  font-family: var(--font-body);
}
@media (min-width: 768px) {
  .cta-block__submit {
    padding: var(--space-5) var(--space-8);
    font-size: var(--text-lg);
  }
}
.cta-block__submit svg {
  width: 20px;
  height: 20px;
  transition: transform var(--transition-base);
}
.cta-block__submit:hover {
  background: var(--color-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.cta-block__submit:hover svg {
  transform: translateX(4px);
}
.cta-block__submit:active {
  transform: translateY(0);
}
.cta-block__submit:focus-visible {
  outline: 3px solid rgba(var(--color-primary-rgb), 0.4);
  outline-offset: 4px;
}
.cta-block__submit:disabled {
  background: var(--color-gray);
  cursor: not-allowed;
  transform: none;
}
.cta-block__submit:disabled:hover {
  background: var(--color-gray);
  box-shadow: var(--shadow-md);
}
.cta-block__submit:disabled:hover svg {
  transform: none;
}
.cta-block__privacy {
  margin-top: var(--space-4);
  font-size: var(--text-xs);
  color: var(--color-gray);
  text-align: center;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .cta-block__privacy {
    font-size: var(--text-sm);
  }
}
.cta-block__privacy a {
  color: var(--color-primary);
  text-decoration: underline;
}
.cta-block__privacy a:hover {
  color: var(--color-primary-dark);
}
.cta-block__input.is-invalid,.cta-block__select.is-invalid,.cta-block__textarea.is-invalid {
  border-color: var(--color-error);
}
.cta-block__input.is-invalid:focus,.cta-block__select.is-invalid:focus,.cta-block__textarea.is-invalid:focus {
  box-shadow: 0 0 0 3px rgba(198,40,40,.1);
}
.cta-block__input.is-valid,.cta-block__select.is-valid,.cta-block__textarea.is-valid {
  border-color: var(--color-success);
}
.cta-block__input.is-valid:focus,.cta-block__select.is-valid:focus,.cta-block__textarea.is-valid:focus {
  box-shadow: 0 0 0 3px rgba(46,125,50,.1);
}
.cta-block__message {
  padding: var(--space-4);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-5);
  font-size: var(--text-base);
  font-weight: var(--font-medium);
}
.cta-block__message--success {
  background: rgba(46,125,50,.1);
  color: var(--color-success);
  border: 1px solid var(--color-success);
}
.cta-block__message--error {
  background: rgba(198,40,40,.1);
  color: var(--color-error);
  border: 1px solid var(--color-error);
}
@keyframes ctaSlideInLeft {
  from {
    opacity: 0;
    transform: translateX(-40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes ctaSlideInRight {
  from {
    opacity: 0;
    transform: translateX(40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.cta-block__content {
  animation: ctaSlideInLeft .8s ease-out;
}
.cta-block__form-wrapper {
  animation: ctaSlideInRight .8s ease-out;
}
.cta-block--centered .cta-block__grid {
  grid-template-columns: 1fr;
  max-width: 800px;
  margin: 0 auto;
}
.cta-block--centered .cta-block__content {
  text-align: center;
  margin-bottom: var(--space-8);
}
.cta-block--centered .cta-block__contact-methods {
  justify-content: center;
  align-items: center;
}
.cta-block--centered .cta-block__trust {
  justify-content: center;
}
.partners-block {
  padding: var(--section-spacing-md) var(--space-3);
  background: var(--color-white);
  position: relative;
}
@media (min-width: 768px) {
  .partners-block {
    padding: var(--section-spacing-md) var(--space-6);
  }
}
.partners-block__container {
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
}
.partners-block__header {
  text-align: center;
  margin-bottom: var(--space-10);
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .partners-block__header {
    margin-bottom: var(--space-12);
  }
}
.partners-block__title {
  font-size: clamp(28px,4vw,40px);
  font-weight: var(--font-bold);
  color: var(--color-heading);
  margin: 0 0 var(--space-3) 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.partners-block__subtitle {
  font-size: var(--text-base);
  color: var(--color-dark-gray);
  margin: 0;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .partners-block__subtitle {
    font-size: var(--text-lg);
  }
}
.partners-block__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-6);
  margin-bottom: var(--space-10);
}
@media (min-width: 640px) {
  .partners-block__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-8);
  }
}
@media (min-width: 1024px) {
  .partners-block__grid {
    grid-template-columns: repeat(6, 1fr);
    gap: var(--space-10);
    margin-bottom: var(--space-12);
  }
}
.partners-block__item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-4);
  background: var(--color-off-white);
  border-radius: var(--radius-lg);
  transition: all var(--transition-base);
  min-height: 120px;
  position: relative;
}
.partners-block__item:hover {
  background: var(--color-white);
  box-shadow: var(--shadow-md);
  transform: translateY(-4px);
}
.partners-block__item:hover .partners-block__logo {
  filter: grayscale(0%);
  opacity: 1;
}
@media (min-width: 768px) {
  .partners-block__item {
    padding: var(--space-5);
    min-height: 140px;
  }
}
.partners-block__link,.partners-block__logo-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
.partners-block__link {
  cursor: pointer;
}
.partners-block__link:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
  border-radius: var(--radius-md);
}
.partners-block__logo {
  max-width: 100%;
  max-height: 60px;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  filter: grayscale(100%);
  opacity: .6;
  transition: all var(--transition-base);
}
@media (min-width: 768px) {
  .partners-block__logo {
    max-height: 80px;
  }
}
.partners-block__stats {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
  padding-top: var(--space-10);
  border-top: 1px solid var(--color-light-gray);
}
@media (min-width: 640px) {
  .partners-block__stats {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-8);
    padding-top: var(--space-12);
  }
}
.partners-block__stat {
  text-align: center;
  padding: var(--space-4);
}
@media (min-width: 768px) {
  .partners-block__stat {
    padding: var(--space-6);
  }
}
.partners-block__stat-number {
  font-size: clamp(36px,5vw,48px);
  font-weight: var(--font-bold);
  color: var(--color-primary);
  line-height: 1;
  margin-bottom: var(--space-2);
  letter-spacing: -0.02em;
}
@media (min-width: 768px) {
  .partners-block__stat-number {
    font-size: clamp(40px,4vw,56px);
    margin-bottom: var(--space-3);
  }
}
.partners-block__stat-label {
  font-size: var(--text-base);
  color: var(--color-dark-gray);
  font-weight: var(--font-medium);
  line-height: 1.4;
}
@media (min-width: 768px) {
  .partners-block__stat-label {
    font-size: var(--text-lg);
  }
}
@keyframes partnersFadeUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.partners-block__item {
  animation: partnersFadeUp .6s ease-out;
  animation-fill-mode: both;
}
.partners-block__item:nth-child(1) {
  animation-delay: .1s;
}
.partners-block__item:nth-child(2) {
  animation-delay: .15s;
}
.partners-block__item:nth-child(3) {
  animation-delay: .2s;
}
.partners-block__item:nth-child(4) {
  animation-delay: .25s;
}
.partners-block__item:nth-child(5) {
  animation-delay: .3s;
}
.partners-block__item:nth-child(6) {
  animation-delay: .35s;
}
.partners-block--slider .partners-block__grid {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  gap: var(--space-6);
  padding-bottom: var(--space-4);
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.partners-block--slider .partners-block__grid::-webkit-scrollbar {
  display: none;
}
@media (min-width: 1024px) {
  .partners-block--slider .partners-block__grid {
    overflow-x: visible;
    display: grid;
  }
}
.partners-block--slider .partners-block__item {
  flex: 0 0 200px;
  scroll-snap-align: start;
}
@media (min-width: 640px) {
  .partners-block--slider .partners-block__item {
    flex: 0 0 240px;
  }
}
.partners-block--dark {
  background: linear-gradient(135deg, var(--color-charcoal) 0%, #1a1a1a 100%);
}
.partners-block--dark .partners-block__title {
  color: var(--color-white);
}
.partners-block--dark .partners-block__subtitle {
  color: hsla(0,0%,100%,.85);
}
.partners-block--dark .partners-block__item {
  background: hsla(0,0%,100%,.05);
}
.partners-block--dark .partners-block__item:hover {
  background: hsla(0,0%,100%,.1);
}
.partners-block--dark .partners-block__logo {
  filter: grayscale(100%) brightness(0) invert(1);
  opacity: .5;
}
.partners-block__item:hover .partners-block--dark .partners-block__logo {
  filter: grayscale(0%) brightness(1) invert(0);
  opacity: 1;
}
.partners-block--dark .partners-block__stats {
  border-top-color: hsla(0,0%,100%,.1);
}
.partners-block--dark .partners-block__stat-number {
  color: var(--color-white);
}
.partners-block--dark .partners-block__stat-label {
  color: hsla(0,0%,100%,.7);
}
.partners-block--compact {
  padding: var(--section-spacing-sm) var(--space-3);
}
.partners-block--compact .partners-block__header {
  margin-bottom: var(--space-8);
}
.partners-block--compact .partners-block__grid {
  gap: var(--space-4);
  margin-bottom: var(--space-8);
}
@media (min-width: 1024px) {
  .partners-block--compact .partners-block__grid {
    gap: var(--space-6);
  }
}
.partners-block--compact .partners-block__item {
  min-height: 80px;
  padding: var(--space-3);
}
@media (min-width: 768px) {
  .partners-block--compact .partners-block__item {
    min-height: 100px;
  }
}
.partners-block--compact .partners-block__logo {
  max-height: 40px;
}
@media (min-width: 768px) {
  .partners-block--compact .partners-block__logo {
    max-height: 50px;
  }
}
@media (prefers-contrast: high) {
  .partners-block__logo {
    filter: none;
    opacity: 1;
  }
  .partners-block__item {
    border: 2px solid currentColor;
  }
}
@media (prefers-reduced-motion: reduce) {
  .partners-block__item {
    animation: none;
  }
  .partners-block__logo,.partners-block__item {
    transition: none;
  }
}
.insights-block {
  padding: var(--section-spacing-lg) var(--space-3);
  background: var(--color-off-white);
}
@media (min-width: 768px) {
  .insights-block {
    padding: var(--section-spacing-lg) var(--space-6);
  }
}
.insights-block__container {
  max-width: var(--content-width, 1140px);
  margin: 0 auto;
}
.insights-block__header {
  text-align: center;
  margin-bottom: var(--space-12);
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .insights-block__header {
    margin-bottom: var(--space-16);
  }
}
.insights-block__eyebrow {
  margin-bottom: var(--space-3);
}
.insights-block__title {
  font-size: clamp(32px,4vw,48px);
  font-weight: var(--font-bold);
  color: var(--color-heading);
  margin: 0 0 var(--space-4) 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.insights-block__subtitle {
  font-size: var(--text-lg);
  color: var(--color-dark-gray);
  margin: 0;
  line-height: 1.7;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .insights-block__subtitle {
    font-size: var(--text-xl);
  }
}
.insights-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6);
  margin-bottom: var(--space-10);
}
@media (min-width: 768px) {
  .insights-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-8);
  }
}
@media (min-width: 1024px) {
  .insights-block__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-8);
    margin-bottom: var(--space-12);
  }
}
.insights-block__card {
  background: var(--color-white);
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: all var(--transition-base);
  display: flex;
  flex-direction: column;
}
.insights-block__card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-xl);
}
.insights-block__card:hover .insights-block__image {
  transform: scale(1.05);
}
.insights-block__card:hover .insights-block__title-link {
  color: var(--color-primary);
}
.insights-block__card:hover .insights-block__read-more {
  color: var(--color-primary);
}
.insights-block__card:hover .insights-block__read-more .insights-block__arrow {
  transform: translateX(4px);
}
.insights-block__image-link {
  display: block;
  position: relative;
  overflow: hidden;
  text-decoration: none;
}
.insights-block__image-link:focus-visible {
  outline: 3px solid var(--color-primary);
  outline-offset: 2px;
}
.insights-block__image-wrapper {
  position: relative;
  background: var(--color-light-gray);
  overflow: hidden;
}
.insights-block__image-wrapper::before {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}
.insights-block__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transition: transform var(--transition-slow);
}
.insights-block__category {
  position: absolute;
  top: var(--space-3);
  left: var(--space-3);
  padding: var(--space-1) var(--space-3);
  background: var(--color-primary);
  color: var(--color-white);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  border-radius: var(--radius-full);
  text-transform: uppercase;
  letter-spacing: .05em;
  z-index: 1;
}
@media (min-width: 768px) {
  .insights-block__category {
    font-size: var(--text-sm);
    padding: var(--space-2) var(--space-4);
  }
}
.insights-block__content {
  padding: var(--space-5);
  flex: 1;
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .insights-block__content {
    padding: var(--space-6);
  }
}
.insights-block__meta {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
  font-size: var(--text-sm);
  color: var(--color-gray);
  font-weight: var(--font-medium);
}
@media (min-width: 768px) {
  .insights-block__meta {
    font-size: var(--text-base);
  }
}
.insights-block__date {
  color: var(--color-gray);
}
.insights-block__separator {
  color: var(--color-light-gray);
}
.insights-block__read-time {
  color: var(--color-gray);
}
.insights-block__card-title {
  font-size: var(--text-xl);
  font-weight: var(--font-bold);
  color: var(--color-heading);
  margin: 0 0 var(--space-3) 0;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .insights-block__card-title {
    font-size: var(--text-2xl);
    margin-bottom: var(--space-4);
  }
}
.insights-block__title-link {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition-base);
}
.insights-block__title-link:hover {
  color: var(--color-primary);
}
.insights-block__title-link:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
  border-radius: var(--radius-sm);
}
.insights-block__excerpt {
  font-size: var(--text-base);
  color: var(--color-dark-gray);
  line-height: 1.7;
  margin: 0 0 var(--space-4) 0;
  flex: 1;
}
@media (min-width: 768px) {
  .insights-block__excerpt {
    font-size: var(--text-lg);
    margin-bottom: var(--space-5);
  }
}
.insights-block__read-more {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  color: var(--color-heading);
  text-decoration: none;
  transition: all var(--transition-base);
  margin-top: auto;
}
@media (min-width: 768px) {
  .insights-block__read-more {
    font-size: var(--text-lg);
  }
}
.insights-block__read-more:hover {
  color: var(--color-primary);
}
.insights-block__read-more:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
  border-radius: var(--radius-sm);
}
.insights-block__arrow {
  width: 20px;
  height: 20px;
  transition: transform var(--transition-base);
}
@media (min-width: 768px) {
  .insights-block__arrow {
    width: 24px;
    height: 24px;
  }
}
.insights-block__footer {
  text-align: center;
  margin-top: var(--space-10);
}
@media (min-width: 768px) {
  .insights-block__footer {
    margin-top: var(--space-12);
  }
}
.insights-block__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-6);
  background: var(--color-primary);
  color: var(--color-white);
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  border-radius: var(--radius-lg);
  text-decoration: none;
  transition: all var(--transition-base);
  box-shadow: var(--shadow-md);
}
@media (min-width: 768px) {
  .insights-block__cta {
    padding: var(--space-4) var(--space-8);
    font-size: var(--text-lg);
  }
}
.insights-block__cta svg {
  width: 20px;
  height: 20px;
  transition: transform var(--transition-base);
}
@media (min-width: 768px) {
  .insights-block__cta svg {
    width: 24px;
    height: 24px;
  }
}
.insights-block__cta:hover {
  background: var(--color-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.insights-block__cta:hover svg {
  transform: translateX(4px);
}
.insights-block__cta:active {
  transform: translateY(0);
}
.insights-block__cta:focus-visible {
  outline: 3px solid rgba(var(--color-primary-rgb), 0.4);
  outline-offset: 4px;
}
.insights-block__empty {
  text-align: center;
  padding: var(--space-12);
  color: var(--color-gray);
  font-size: var(--text-lg);
}
@media (min-width: 768px) {
  .insights-block__empty {
    padding: var(--space-16);
    font-size: var(--text-xl);
  }
}
@keyframes insightsSlideUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.insights-block__card {
  animation: insightsSlideUp .6s ease-out;
  animation-fill-mode: both;
}
.insights-block__card:nth-child(1) {
  animation-delay: .1s;
}
.insights-block__card:nth-child(2) {
  animation-delay: .2s;
}
.insights-block__card:nth-child(3) {
  animation-delay: .3s;
}
.insights-block--list .insights-block__grid {
  grid-template-columns: 1fr;
  gap: var(--space-6);
}
@media (min-width: 768px) {
  .insights-block--list .insights-block__card {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: var(--space-6);
  }
}
@media (min-width: 768px) {
  .insights-block--list .insights-block__image-wrapper::before {
    padding-bottom: 75%;
  }
}
.insights-block--dark {
  background: linear-gradient(135deg, var(--color-charcoal) 0%, #1a1a1a 100%);
}
.insights-block--dark .insights-block__eyebrow {
  background: hsla(0,0%,100%,.1);
  color: var(--color-white);
}
.insights-block--dark .insights-block__title {
  color: var(--color-white);
}
.insights-block--dark .insights-block__subtitle {
  color: hsla(0,0%,100%,.85);
}
.insights-block--dark .insights-block__card {
  background: hsla(0,0%,100%,.05);
  backdrop-filter: blur(10px);
  border: 1px solid hsla(0,0%,100%,.1);
}
.insights-block--dark .insights-block__card:hover {
  background: hsla(0,0%,100%,.08);
  border-color: hsla(0,0%,100%,.2);
}
.insights-block--dark .insights-block__card-title {
  color: var(--color-white);
}
.insights-block--dark .insights-block__title-link:hover {
  color: hsla(0,0%,100%,.8);
}
.insights-block--dark .insights-block__excerpt {
  color: hsla(0,0%,100%,.7);
}
.insights-block--dark .insights-block__meta,.insights-block--dark .insights-block__date,.insights-block--dark .insights-block__read-time {
  color: hsla(0,0%,100%,.6);
}
.insights-block--dark .insights-block__read-more {
  color: var(--color-white);
}
.insights-block--dark .insights-block__cta {
  background: var(--color-white);
  color: var(--color-primary);
}
.insights-block--dark .insights-block__cta:hover {
  background: var(--color-off-white);
}
.newsletter-block {
  position: relative;
  min-height: 60vh;
  padding: 80px var(--space-3);
  background-color: #0a0a0a;
  overflow: hidden;
}
@media (min-width: 768px) {
  .newsletter-block {
    padding: 100px var(--space-6);
  }
}
@media (min-width: 1024px) {
  .newsletter-block {
    padding: 120px var(--space-8);
    min-height: 70vh;
  }
}
.newsletter-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.92) 50%, rgba(0, 0, 0, 0.95) 100%);
  pointer-events: none;
  z-index: 1;
}
.newsletter-block__pattern {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px),linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
  background-size: 40px 40px;
  pointer-events: none;
  z-index: 2;
}
.newsletter-block__glow {
  position: absolute;
  pointer-events: none;
  z-index: 3;
}
.newsletter-block__glow--left {
  top: 20%;
  left: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(var(--color-accent-rgb), 0.12) 0%, transparent 70%);
  filter: blur(60px);
  animation: glowPulse 8s ease-in-out infinite;
}
.newsletter-block__glow--right {
  bottom: 20%;
  right: -10%;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(255, 87, 51, 0.1) 0%, transparent 70%);
  filter: blur(70px);
  animation: glowPulse 10s ease-in-out infinite 2s;
}
@keyframes glowPulse {
  0%,100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: .7;
    transform: scale(1.1);
  }
}
.newsletter-block__container {
  position: relative;
  z-index: 4;
  max-width: 1280px;
  margin: 0 auto;
  width: 100%;
}
.newsletter-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-8);
  align-items: center;
}
@media (min-width: 1024px) {
  .newsletter-block__grid {
    grid-template-columns: 1fr 1fr;
    gap: 60px;
  }
}
@media (min-width: 1280px) {
  .newsletter-block__grid {
    grid-template-columns: 45fr 55fr;
    gap: 80px;
  }
}
.newsletter-block__content {
  color: var(--color-white);
  order: 1;
}
@media (min-width: 1024px) {
  .newsletter-block__content {
    order: 0;
  }
}
.newsletter-block__eyebrow {
  margin-bottom: var(--space-4);
}
.newsletter-block__title {
  font-size: 40px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--color-white);
  margin: 0 0 var(--space-4) 0;
  max-width: 600px;
}
@media (min-width: 640px) {
  .newsletter-block__title {
    font-size: 48px;
  }
}
@media (min-width: 1024px) {
  .newsletter-block__title {
    font-size: 56px;
    margin-bottom: var(--space-5);
  }
}
@media (min-width: 1280px) {
  .newsletter-block__title {
    font-size: 64px;
  }
}
.newsletter-block__title .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
  text-fill-color: rgba(0,0,0,0);
  display: inline;
}
.newsletter-block__description {
  font-size: 18px;
  line-height: 1.7;
  color: hsla(0,0%,100%,.85);
  margin: 0 0 var(--space-6) 0;
  max-width: 540px;
}
@media (min-width: 768px) {
  .newsletter-block__description {
    font-size: 20px;
    margin-bottom: var(--space-8);
  }
}
@media (min-width: 1024px) {
  .newsletter-block__description {
    font-size: 18px;
  }
}
.newsletter-block__form {
  margin-bottom: var(--space-5);
}
@media (min-width: 768px) {
  .newsletter-block__form {
    margin-bottom: var(--space-6);
  }
}
.newsletter-block__form-group {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 600px;
}
@media (min-width: 640px) {
  .newsletter-block__form-group {
    flex-direction: row;
    gap: 16px;
  }
}
.newsletter-block__input {
  flex: 1;
  height: 56px;
  padding: 0 20px;
  font-size: 16px;
  font-family: var(--font-body);
  color: var(--color-heading);
  background-color: var(--color-white);
  border: 2px solid rgba(0,0,0,0);
  border-radius: 12px;
  transition: all var(--transition-base);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
@media (min-width: 768px) {
  .newsletter-block__input {
    font-size: 17px;
    padding: 0 24px;
  }
}
.newsletter-block__input::-moz-placeholder {
  color: rgba(0,0,0,.45);
  opacity: 1;
}
.newsletter-block__input::placeholder {
  color: rgba(0,0,0,.45);
  opacity: 1;
}
.newsletter-block__input:hover {
  border-color: rgba(13,71,161,.2);
}
.newsletter-block__input:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(37,99,235,.15);
  background-color: var(--color-white);
}
.newsletter-block__input:disabled,.newsletter-block__input[readonly] {
  background-color: hsla(0,0%,100%,.7);
  cursor: not-allowed;
  opacity: .6;
}
.newsletter-block__input.is-invalid {
  border-color: #ef4444;
}
.newsletter-block__input.is-invalid:focus {
  box-shadow: 0 0 0 4px rgba(239,68,68,.15);
}
.newsletter-block__input.is-valid {
  border-color: #10b981;
}
.newsletter-block__input.is-valid:focus {
  box-shadow: 0 0 0 4px rgba(16,185,129,.15);
}
.newsletter-block__button {
  height: 56px;
  padding: 0 32px;
  font-size: 16px;
  font-weight: var(--font-semibold);
  font-family: var(--font-body);
  color: var(--color-white);
  background-color: #ff5733;
  border: 2px solid rgba(0,0,0,0);
  border-radius: 12px;
  cursor: pointer;
  transition: all var(--transition-base);
  outline: none;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-shrink: 0;
  box-shadow: 0 4px 16px rgba(255,87,51,.25);
}
@media (min-width: 640px) {
  .newsletter-block__button {
    width: auto;
    min-width: 160px;
  }
}
@media (min-width: 768px) {
  .newsletter-block__button {
    font-size: 17px;
    padding: 0 40px;
  }
}
.newsletter-block__button svg {
  width: 20px;
  height: 20px;
  transition: transform var(--transition-base);
}
.newsletter-block__button:hover {
  background-color: #e64a2e;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(255,87,51,.35);
}
.newsletter-block__button:hover svg {
  transform: translateX(3px);
}
.newsletter-block__button:active {
  transform: translateY(0);
  box-shadow: 0 2px 10px rgba(255,87,51,.2);
}
.newsletter-block__button:focus-visible {
  outline: 3px solid rgba(255,87,51,.5);
  outline-offset: 3px;
}
.newsletter-block__button:disabled {
  background-color: hsla(0,0%,100%,.3);
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}
.newsletter-block__button:disabled:hover {
  background-color: hsla(0,0%,100%,.3);
  transform: none;
}
.newsletter-block__button:disabled:hover svg {
  transform: none;
}
.newsletter-block__button--primary {
  background-color: var(--color-primary);
  box-shadow: 0 4px 16px rgba(37,99,235,.25);
}
.newsletter-block__button--primary:hover {
  background-color: var(--color-primary-dark);
  box-shadow: 0 6px 20px rgba(37,99,235,.35);
}
.newsletter-block__button--primary:active {
  box-shadow: 0 2px 10px rgba(37,99,235,.2);
}
.newsletter-block__button--primary:focus-visible {
  outline-color: rgba(37,99,235,.5);
}
.newsletter-block__disclaimer {
  font-size: 14px;
  line-height: 1.6;
  color: hsla(0,0%,100%,.6);
  max-width: 540px;
}
@media (min-width: 768px) {
  .newsletter-block__disclaimer {
    font-size: 15px;
  }
}
.newsletter-block__disclaimer a {
  color: #00acc1;
  text-decoration: underline;
  text-decoration-color: rgba(var(--color-accent-rgb), 0.4);
  text-underline-offset: 2px;
  transition: all var(--transition-fast);
}
.newsletter-block__disclaimer a:hover {
  color: #00d9ff;
  text-decoration-color: #00acc1;
}
.newsletter-block__visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 400px;
  order: 2;
}
@media (max-width: 639px) {
  .newsletter-block__visual {
    display: none;
  }
}
@media (min-width: 1024px) {
  .newsletter-block__visual {
    order: 0;
    min-height: 500px;
  }
}
@media (min-width: 1280px) {
  .newsletter-block__visual {
    min-height: 600px;
  }
}
.newsletter-block__phones {
  position: relative;
  width: 100%;
  max-width: 500px;
  height: 500px;
}
@media (min-width: 1024px) {
  .newsletter-block__phones {
    max-width: 600px;
    height: 600px;
  }
}
.newsletter-block__phone {
  position: absolute;
  width: 280px;
  height: auto;
  border-radius: 24px;
  box-shadow: 0 20px 60px rgba(0,0,0,.5);
  overflow: hidden;
  transition: transform var(--transition-base);
}
.newsletter-block__phone img {
  width: 100%;
  height: auto;
  display: block;
}
.newsletter-block__phone--1 {
  top: 10%;
  left: 0;
  z-index: 1;
  transform: rotate(-5deg);
}
.newsletter-block__phone--1:hover {
  transform: rotate(-3deg) scale(1.02);
}
.newsletter-block__phone--2 {
  top: 20%;
  right: 0;
  z-index: 2;
  transform: rotate(3deg);
}
.newsletter-block__phone--2:hover {
  transform: rotate(1deg) scale(1.02);
}
@media (min-width: 1024px) {
  .newsletter-block__phone {
    width: 320px;
  }
}
.newsletter-block__phone-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #1E3A8A 0%, #0D47A1 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-white);
  font-size: 18px;
  font-weight: var(--font-semibold);
}
.newsletter-block__message {
  margin-top: var(--space-3);
  padding: 12px 16px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: var(--font-medium);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .newsletter-block__message {
    font-size: 15px;
    padding: 14px 20px;
  }
}
.newsletter-block__message--success {
  background-color: rgba(16,185,129,.15);
  color: #10b981;
  border: 1px solid rgba(16,185,129,.3);
}
.newsletter-block__message--success svg {
  color: #10b981;
}
.newsletter-block__message--error {
  background-color: rgba(239,68,68,.15);
  color: #ef4444;
  border: 1px solid rgba(239,68,68,.3);
}
.newsletter-block__message--error svg {
  color: #ef4444;
}
.newsletter-block__message {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.newsletter-block__message svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}
.newsletter-block--centered .newsletter-block__grid {
  grid-template-columns: 1fr;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}
.newsletter-block--centered .newsletter-block__content {
  order: 0;
}
.newsletter-block--centered .newsletter-block__title,.newsletter-block--centered .newsletter-block__description,.newsletter-block--centered .newsletter-block__disclaimer {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.newsletter-block--centered .newsletter-block__form-group {
  margin: 0 auto;
}
.newsletter-block--centered .newsletter-block__visual {
  display: none;
}
.newsletter-block--compact {
  min-height: 50vh;
  padding: 60px var(--space-3);
}
@media (min-width: 768px) {
  .newsletter-block--compact {
    padding: 80px var(--space-6);
  }
}
.newsletter-block--compact .newsletter-block__title {
  font-size: 36px;
  margin-bottom: var(--space-3);
}
@media (min-width: 1024px) {
  .newsletter-block--compact .newsletter-block__title {
    font-size: 48px;
  }
}
.newsletter-block--compact .newsletter-block__description {
  margin-bottom: var(--space-5);
}
@media (prefers-contrast: high) {
  .newsletter-block {
    background-color: #000;
  }
  .newsletter-block__title,.newsletter-block__description {
    color: #fff;
  }
  .newsletter-block__input {
    border-width: 3px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .newsletter-block__glow,.newsletter-block__eyebrow::before {
    animation: none;
  }
  .newsletter-block__button,.newsletter-block__phone {
    transition: none;
  }
  .newsletter-block__button:hover,.newsletter-block__phone:hover {
    transform: none;
  }
}
.newsletter-block__input:focus-visible,.newsletter-block__button:focus-visible {
  outline: 3px solid hsla(0,0%,100%,.8);
  outline-offset: 3px;
}
.newsletter-block__form.is-loading .newsletter-block__button {
  position: relative;
  color: rgba(0,0,0,0);
  pointer-events: none;
}
.newsletter-block__form.is-loading .newsletter-block__button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  margin: -10px 0 0 -10px;
  border: 2px solid hsla(0,0%,100%,.3);
  border-top-color: var(--color-white);
  border-radius: 50%;
  animation: spin .6s linear infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.news-block {
  position: relative;
  padding: 6rem 1.5rem;
  background: #f9fafb;
  overflow: hidden;
}
@media (min-width: 768px) {
  .news-block {
    padding: 7rem 2rem;
  }
}
@media (min-width: 1024px) {
  .news-block {
    padding: 8rem 2rem;
  }
}
.news-block__container {
  position: relative;
  z-index: 2;
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
}
.news-block__header {
  text-align: center;
  margin-bottom: 4rem;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1024px) {
  .news-block__header {
    margin-bottom: 5rem;
  }
}
.news-block__eyebrow {
  margin-bottom: 1.5rem;
}
@media (min-width: 1024px) {
  .news-block__eyebrow {
    margin-bottom: 2rem;
  }
}
.news-block__title {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: var(--color-heading-secondary);
  margin-bottom: 1.5rem;
}
@media (min-width: 640px) {
  .news-block__title {
    font-size: 3rem;
  }
}
@media (min-width: 1024px) {
  .news-block__title {
    font-size: 3.5rem;
    margin-bottom: 2rem;
  }
}
.news-block__subtitle {
  font-size: 1.125rem;
  font-weight: 400;
  color: rgba(60,60,67,.85);
  line-height: 1.7;
  max-width: 700px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .news-block__subtitle {
    font-size: 1.25rem;
  }
}
.news-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 640px) {
  .news-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
@media (min-width: 1024px) {
  .news-block__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
  }
}
.news-block__item {
  position: relative;
  min-height: 400px;
  border-radius: 24px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
}
.news-block__item:hover .news-block__overlay {
  opacity: .85;
}
@media (min-width: 768px) {
  .news-block__item {
    min-height: 450px;
  }
}
@media (min-width: 1024px) {
  .news-block__item {
    min-height: 500px;
  }
}
.news-block__link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  text-decoration: none;
  color: inherit;
  z-index: 2;
}
.news-block__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 60%, rgba(0, 0, 0, 0.95) 100%);
  z-index: 1;
  opacity: .9;
  transition: opacity .3s ease;
}
.news-block__content {
  position: relative;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.news-block__content::before {
  content: "";
  position: absolute;
  top: -100px;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(var(--color-primary-rgb), 0) 0%, rgba(var(--color-primary-rgb), 0.3) 50%, rgba(var(--color-primary-rgb), 0.5) 100%);
  z-index: -1;
}
@media (min-width: 768px) {
  .news-block__content {
    padding: 3rem;
  }
}
.news-block__category {
  display: inline-flex;
  align-self: flex-start;
  padding: .5rem 1rem;
  background: hsla(0,0%,100%,.15);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid hsla(0,0%,100%,.2);
  border-radius: 8px;
  font-size: .875rem;
  font-weight: 600;
  color: #fff;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.news-block__item-title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  margin: 0;
  letter-spacing: -0.02em;
}
@media (min-width: 768px) {
  .news-block__item-title {
    font-size: 1.375rem;
  }
}
@media (min-width: 1024px) {
  .news-block__item-title {
    font-size: 1.5rem;
  }
}
.news-block__excerpt {
  font-size: .9375rem;
  font-weight: 400;
  color: hsla(0,0%,100%,.9);
  line-height: 1.6;
  margin: 0;
}
@media (min-width: 768px) {
  .news-block__excerpt {
    font-size: 1rem;
  }
}
.news-block__read-more {
  display: inline-flex;
  align-items: center;
  gap: .625rem;
  margin-top: 1rem;
  padding: .875rem 1.5rem;
  background: #fff;
  border-radius: 9999px;
  box-shadow: 0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);
  font-size: .9375rem;
  font-weight: 600;
  color: #1e293b;
  text-decoration: none;
  letter-spacing: -0.01em;
  opacity: 1;
  transform: translateY(0);
  transition: all .35s cubic-bezier(0.4, 0, 0.2, 1);
  align-self: flex-start;
  position: relative;
  z-index: 3;
}
.news-block__read-more svg {
  flex-shrink: 0;
  transition: transform .25s cubic-bezier(0.4, 0, 0.2, 1);
  color: #0d47a1;
}
.news-block__read-more:hover {
  background: #fff;
  box-shadow: 0 10px 15px -3px rgba(0,0,0,.15),0 4px 6px -2px rgba(0,0,0,.08);
  transform: translateY(-1px) scale(1.02);
  color: #0d47a1;
}
.news-block__read-more:hover svg {
  transform: translateX(3px);
  color: #0d47a1;
}
.news-block__read-more:active {
  transform: translateY(0) scale(0.98);
  box-shadow: 0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);
}
.news-block__read-more:focus-visible {
  outline: 2px solid #0d47a1;
  outline-offset: 2px;
}
@media (max-width: 639px) {
  .news-block__read-more {
    padding: .75rem 1.25rem;
    font-size: .875rem;
  }
}
@media (max-width: 639px) {
  .news-block__item {
    min-height: 350px;
  }
  .news-block__content {
    padding: 2rem;
    gap: .75rem;
  }
  .news-block__item-title {
    font-size: 1.25rem;
  }
  .news-block__excerpt {
    font-size: .875rem;
  }
}
@media print {
  .news-block__overlay {
    opacity: .5;
  }
  .news-block__read-more {
    opacity: 1;
    transform: translateY(0);
  }
}
.team-block {
  position: relative;
  padding: 5rem 1.5rem;
  background: #fff;
  overflow: hidden;
}
@media (min-width: 768px) {
  .team-block {
    padding: 5.5rem 2rem;
  }
}
@media (min-width: 1024px) {
  .team-block {
    padding: 6rem 2rem;
  }
}
.team-block__gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(ellipse at top center, rgba(13, 71, 161, 0.02) 0%, transparent 60%);
  pointer-events: none;
  z-index: 1;
}
.team-block__container {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  width: 100%;
}
.team-block__header {
  text-align: center;
  margin-bottom: 3rem;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .team-block__header {
    margin-bottom: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .team-block__header {
    margin-bottom: 4rem;
  }
}
.team-block__eyebrow {
  margin-bottom: 1.5rem;
}
@media (min-width: 1024px) {
  .team-block__eyebrow {
    margin-bottom: 2rem;
  }
}
.team-block__title {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: var(--color-heading-secondary);
  margin-bottom: 1.5rem;
}
@media (min-width: 640px) {
  .team-block__title {
    font-size: 3rem;
  }
}
@media (min-width: 1024px) {
  .team-block__title {
    font-size: 3.5rem;
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .team-block__title {
    font-size: 4rem;
  }
}
.team-block__title .gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
  text-fill-color: rgba(0,0,0,0);
  display: inline;
}
.team-block__subtitle {
  font-size: 1.125rem;
  font-weight: 400;
  color: rgba(60,60,67,.85);
  line-height: 1.7;
  max-width: 700px;
  margin: 0 auto;
}
@media (min-width: 640px) {
  .team-block__subtitle {
    font-size: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .team-block__subtitle {
    font-size: 1.25rem;
    max-width: 800px;
  }
}
.team-block__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 640px) {
  .team-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
@media (min-width: 1024px) {
  .team-block__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
}
@media (min-width: 1280px) {
  .team-block__grid {
    gap: 2.5rem;
  }
}
.team-block__card {
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 20px;
  padding: 0;
  transition: all .3s ease;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
.team-block__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 24px rgba(0,0,0,.12);
  border-color: rgba(13,71,161,.12);
}
.team-block__card:hover .team-block__gradient-blob {
  opacity: .4;
  transform: scale(1.15);
}
.team-block__card:hover .team-block__photo {
  transform: scale(1.05);
}
.team-block__card:hover .team-block__photo-overlay {
  opacity: 1;
}
.team-block__card:hover .team-block__social-link {
  opacity: 1;
}
.team-block__card>*:not(.team-block__gradient-blob) {
  position: relative;
  z-index: 1;
}
.team-block__gradient-blob {
  position: absolute;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  filter: blur(40px);
  opacity: .25;
  transition: all .3s ease;
  z-index: 0;
  pointer-events: none;
  top: -50px;
  right: -50px;
  background: linear-gradient(135deg, rgba(13, 71, 161, 0.3) 0%, rgba(var(--color-accent-rgb), 0.2) 100%);
  animation: teamGradientFloat 6s ease-in-out infinite;
}
@keyframes teamGradientFloat {
  0%,100% {
    transform: translate(0, 0);
  }
  33% {
    transform: translate(10px, -10px);
  }
  66% {
    transform: translate(-10px, 5px);
  }
}
.team-block__photo-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 20px 20px 0 0;
  background: linear-gradient(135deg, #F9FAFB 0%, #FFFFFF 100%);
}
.team-block__photo {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  transition: transform .4s ease;
}
.team-block__photo-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, transparent 0%, transparent 50%, rgba(13, 71, 161, 0.08) 100%);
  opacity: 0;
  transition: opacity .4s ease;
  pointer-events: none;
}
.team-block__content {
  padding: 2rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
@media (min-width: 768px) {
  .team-block__content {
    padding: 2.25rem;
  }
}
.team-block__name {
  font-size: 1.375rem;
  font-weight: 700;
  color: #2c3e50;
  margin: 0;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .team-block__name {
    font-size: 1.5rem;
  }
}
.team-block__position {
  font-size: .9375rem;
  font-weight: 500;
  color: #0d47a1;
  margin: 0;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .team-block__position {
    font-size: 1rem;
  }
}
.team-block__bio {
  font-size: .9375rem;
  font-weight: 400;
  color: rgba(60,60,67,.78);
  line-height: 1.6;
  margin: .5rem 0 0 0;
  flex: 1;
}
@media (min-width: 768px) {
  .team-block__bio {
    font-size: .9375rem;
    line-height: 1.7;
  }
}
.team-block__social {
  display: flex;
  gap: .75rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(0,0,0,.06);
}
.team-block__social-link {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: rgba(13,71,161,.06);
  color: #0d47a1;
  transition: all .3s ease;
  text-decoration: none;
  opacity: .8;
}
.team-block__social-link i {
  font-size: 16px;
  transition: transform .3s ease;
}
.team-block__social-link:hover {
  background-color: #0d47a1;
  color: #fff;
  transform: translateY(-2px);
  opacity: 1;
}
.team-block__social-link:hover i {
  transform: scale(1.1);
}
.team-block__social-link:active {
  transform: translateY(0);
}
.team-block__social-link:focus-visible {
  outline: 2px solid #0d47a1;
  outline-offset: 2px;
}
@keyframes teamCardFadeUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.team-block__card {
  animation: teamCardFadeUp .6s ease-out;
  animation-fill-mode: both;
}
.team-block__card:nth-child(1) {
  animation-delay: .1s;
}
.team-block__card:nth-child(2) {
  animation-delay: .2s;
}
.team-block__card:nth-child(3) {
  animation-delay: .3s;
}
.team-block__card:nth-child(4) {
  animation-delay: .4s;
}
.team-block__card:nth-child(5) {
  animation-delay: .5s;
}
.team-block__card:nth-child(6) {
  animation-delay: .6s;
}
.team-block__card:nth-child(7) {
  animation-delay: .7s;
}
.team-block__card:nth-child(8) {
  animation-delay: .8s;
}
.team-block--gray {
  background: #f9fafb;
}
@media (min-width: 1024px) {
  .team-block--two-column .team-block__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .team-block--four-column .team-block__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
  }
}
.team-block--four-column .team-block__content {
  padding: 1.5rem;
}
@media (min-width: 1024px) {
  .team-block--four-column .team-block__content {
    padding: 1.75rem;
  }
}
.team-block--four-column .team-block__name {
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .team-block--four-column .team-block__name {
    font-size: 1.25rem;
  }
}
.team-block--four-column .team-block__bio {
  font-size: .875rem;
}
@media (min-width: 768px) {
  .team-block--four-column .team-block__bio {
    font-size: .875rem;
  }
}
.team-block--circular-photos .team-block__photo-wrapper {
  border-radius: 50%;
  margin: 2rem auto 0;
  width: 200px;
  height: 200px;
  aspect-ratio: 1/1;
}
@media (min-width: 768px) {
  .team-block--circular-photos .team-block__photo-wrapper {
    width: 220px;
    height: 220px;
  }
}
.team-block--circular-photos .team-block__card {
  padding: 2rem;
}
@media (min-width: 768px) {
  .team-block--circular-photos .team-block__card {
    padding: 2.5rem;
  }
}
.team-block--circular-photos .team-block__content {
  text-align: center;
  padding: 0;
  margin-top: 1.5rem;
}
.team-block--circular-photos .team-block__social {
  justify-content: center;
}
.team-block--compact .team-block__content {
  padding: 1.5rem;
  gap: .5rem;
}
.team-block--compact .team-block__name {
  font-size: 1.25rem;
}
.team-block--compact .team-block__position {
  font-size: .875rem;
}
.team-block--compact .team-block__bio {
  font-size: .875rem;
  line-height: 1.6;
}
.team-block--compact .team-block__social {
  margin-top: .75rem;
  padding-top: .75rem;
  gap: .5rem;
}
.team-block--compact .team-block__social-link {
  width: 36px;
  height: 36px;
}
.team-block--compact .team-block__social-link i {
  font-size: 14px;
}
.team-block__card:focus-within {
  outline: 2px solid #0d47a1;
  outline-offset: 4px;
}
@media (max-width: 639px) {
  .team-block {
    padding: 4rem 1.25rem;
  }
  .team-block__card:hover {
    transform: translateY(-4px);
  }
  .team-block__content {
    padding: 1.75rem;
  }
  .team-block__name {
    font-size: 1.25rem;
  }
  .team-block__position {
    font-size: .875rem;
  }
  .team-block__bio {
    font-size: .875rem;
    line-height: 1.6;
  }
  .team-block__social {
    gap: .5rem;
    margin-top: .75rem;
    padding-top: .75rem;
  }
  .team-block__social-link {
    width: 36px;
    height: 36px;
  }
  .team-block__social-link i {
    font-size: 14px;
  }
}
@media print {
  .team-block__gradient,.team-block__gradient-blob {
    display: none;
  }
  .team-block__card {
    box-shadow: none;
    border: 1px solid #e5e7eb;
    page-break-inside: avoid;
  }
  .team-block__social {
    display: none;
  }
}
.projects-container {
  max-width: 100%;
  margin: 0 auto;
}
.projects-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 60px;
}
@media (min-width: 768px) {
  .projects-header {
    margin-bottom: 80px;
  }
}
.projects-header__eyebrow {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--color-primary);
  margin-bottom: 16px;
  padding: 6px 16px;
  background: rgba(13,71,161,.08);
  border-radius: 20px;
}
@media (min-width: 768px) {
  .projects-header__eyebrow {
    font-size: 15px;
  }
}
.projects-header__title {
  font-size: clamp(32px,5vw,48px);
  font-weight: 800;
  color: var(--color-charcoal);
  margin: 0 0 20px 0;
  line-height: 1.15;
  letter-spacing: -0.02em;
}
.projects-header__subtitle {
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-gray);
  margin: 0;
}
@media (min-width: 768px) {
  .projects-header__subtitle {
    font-size: 20px;
  }
}
.projects-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media (min-width: 640px) {
  .projects-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
  }
}
@media (min-width: 1024px) {
  .projects-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
  }
}
.project-card {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-white);
  box-shadow: 0 4px 20px rgba(0,0,0,.06);
  transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}
.project-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0,0,0,.12);
}
.project-card:hover .project-card__image img {
  transform: scale(1.08);
}
.project-card:hover .project-card__overlay {
  opacity: 1;
  visibility: visible;
}
.project-card:hover .project-card__content {
  transform: translateY(0);
  opacity: 1;
}
.project-card:hover .project-card__icon {
  transform: scale(1) rotate(0deg);
  opacity: 1;
}
.project-card__image {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--color-light-gray);
  display: block;
}
.project-card__image img {
  display: block;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform .6s cubic-bezier(0.4, 0, 0.2, 1);
}
.project-card__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(13, 71, 161, 0.75) 0%, rgba(1, 87, 155, 0.9) 100%);
  opacity: 0;
  visibility: hidden;
  transition: all .4s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 32px;
  text-align: center;
}
@media (min-width: 768px) {
  .project-card__overlay {
    padding: 40px;
  }
}
.project-card__content {
  transform: translateY(20px);
  opacity: 0;
  transition: all .4s cubic-bezier(0.4, 0, 0.2, 1) .1s;
  color: var(--color-white);
}
.project-card__category {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: hsla(0,0%,100%,.9);
  margin-bottom: 12px;
  padding: 4px 12px;
  background: hsla(0,0%,100%,.15);
  border-radius: 12px;
  backdrop-filter: blur(4px);
}
@media (min-width: 768px) {
  .project-card__category {
    font-size: 13px;
    padding: 6px 14px;
  }
}
.project-card__title {
  font-size: 22px;
  font-weight: 700;
  color: var(--color-white);
  margin: 0 0 12px 0;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .project-card__title {
    font-size: 24px;
    margin-bottom: 16px;
  }
}
.project-card__description {
  font-size: 15px;
  line-height: 1.6;
  color: hsla(0,0%,100%,.95);
  margin: 0 0 24px 0;
}
@media (min-width: 768px) {
  .project-card__description {
    font-size: 16px;
  }
}
.project-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: var(--color-white);
  color: var(--color-primary);
  border-radius: 50%;
  transform: scale(0.8) rotate(-45deg);
  opacity: 0;
  transition: all .4s cubic-bezier(0.4, 0, 0.2, 1) .2s;
  box-shadow: 0 8px 20px rgba(0,0,0,.2);
}
.project-card__icon svg {
  width: 20px;
  height: 20px;
}
.project-card__badge {
  position: absolute;
  top: 16px;
  right: 16px;
  background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-dark) 100%);
  color: var(--color-white);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  padding: 6px 12px;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0,105,92,.4);
  z-index: 2;
}
@media (min-width: 768px) {
  .project-card__badge {
    font-size: 12px;
    padding: 7px 14px;
  }
}
@media (max-width: 639px) {
  .project-card__overlay {
    padding: 24px;
  }
  .project-card__title {
    font-size: 20px;
  }
  .project-card__description {
    font-size: 14px;
    margin-bottom: 20px;
  }
}
.project-card--loading .project-card__image {
  animation: pulse 1.5s ease-in-out infinite;
}
@keyframes pulse {
  0%,100% {
    opacity: 1;
  }
  50% {
    opacity: .5;
  }
}
.project-card--minimal .project-card__overlay {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
  justify-content: flex-end;
  align-items: flex-start;
  padding: 24px;
}
.project-card--minimal .project-card__content {
  text-align: left;
}
.project-card--minimal .project-card__badge {
  top: 20px;
  left: 20px;
  right: auto;
}
.mc4wp-form {
  max-width: 600px;
}
.mc4wp-form-fields {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
}
@media (min-width: 640px) {
  .mc4wp-form-fields {
    flex-direction: row;
    gap: 16px;
  }
}
.mc4wp-form-fields p {
  margin: 0;
  flex: 1;
}
.mc4wp-form-fields p:first-child {
  flex: 1;
}
.mc4wp-form-fields p:last-child {
  flex-shrink: 0;
}
@media (max-width: 639px) {
  .mc4wp-form-fields p:last-child {
    width: 100%;
  }
}
.mc4wp-form-fields label {
  display: block;
  width: 100%;
  margin: 0;
}
.mc4wp-form-fields input[type=email] {
  width: 100%;
  height: 56px;
  padding: 0 20px;
  font-size: 16px;
  font-family: var(--font-body);
  color: var(--color-heading);
  background-color: var(--color-white);
  border: 2px solid var(--color-secondary-dark);
  border-radius: 12px;
  transition: all .2s ease;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .mc4wp-form-fields input[type=email] {
    font-size: 17px;
    padding: 0 24px;
  }
}
.mc4wp-form-fields input[type=email]::-moz-placeholder {
  color: rgba(0,0,0,.45);
  opacity: 1;
}
.mc4wp-form-fields input[type=email]::placeholder {
  color: rgba(0,0,0,.45);
  opacity: 1;
}
.mc4wp-form-fields input[type=email]:hover {
  border-color: rgba(13,71,161,.2);
}
.mc4wp-form-fields input[type=email]:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(37,99,235,.15);
  background-color: var(--color-white);
}
.mc4wp-form-fields input[type=email]:disabled,.mc4wp-form-fields input[type=email][readonly] {
  background-color: hsla(0,0%,100%,.7);
  cursor: not-allowed;
  opacity: .6;
}
.mc4wp-form-fields input[type=submit] {
  width: 100%;
  height: 56px;
  padding: 0 32px !important;
  font-size: 16px;
  font-weight: 600;
  font-family: var(--font-body);
  color: var(--color-white);
  background-color: var(--color-secondary-dark) !important;
  border: 2px solid rgba(0,0,0,0) !important;
  border-radius: 12px !important;
  cursor: pointer;
  transition: all .2s ease;
  outline: none;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 16px rgba(var(--color-secondary-rgb), 0.25);
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
@media (min-width: 640px) {
  .mc4wp-form-fields input[type=submit] {
    width: auto;
    min-width: 160px;
  }
}
@media (min-width: 768px) {
  .mc4wp-form-fields input[type=submit] {
    font-size: 17px;
    padding: 0 40px !important;
  }
}
.mc4wp-form-fields input[type=submit]:hover {
  background-color: var(--color-secondary) !important;
  box-shadow: 0 6px 20px rgba(var(--color-secondary-rgb), 0.35);
}
.mc4wp-form-fields input[type=submit]:active {
  transform: translateY(1px);
  box-shadow: 0 2px 10px rgba(var(--color-secondary-rgb), 0.3);
}
.mc4wp-form-fields input[type=submit]:disabled {
  background-color: rgba(var(--color-secondary-rgb), 0.5) !important;
  cursor: not-allowed;
  box-shadow: none;
}
.mc4wp-form-fields input[type=submit]:disabled:hover {
  transform: none;
}
.mc4wp-alert {
  margin-top: 16px;
  padding: 12px 16px;
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.5;
}
.mc4wp-success {
  background-color: rgba(16,185,129,.1);
  border: 1px solid rgba(16,185,129,.3);
  color: #059669;
}
.mc4wp-error {
  background-color: rgba(239,68,68,.1);
  border: 1px solid rgba(239,68,68,.3);
  color: #dc2626;
}
.mc4wp-form.mc4wp-form-submitting input[type=submit] {
  opacity: .7;
  cursor: wait;
  pointer-events: none;
}
.newsletter-block .mc4wp-form .mc4wp-alert,.dark-bg .mc4wp-form .mc4wp-alert {
  background-color: hsla(0,0%,100%,.1);
  border-color: hsla(0,0%,100%,.2);
  color: var(--color-white);
}
.newsletter-block .mc4wp-form .mc4wp-success,.dark-bg .mc4wp-form .mc4wp-success {
  background-color: rgba(16,185,129,.15);
  border-color: rgba(16,185,129,.4);
  color: #6ee7b7;
}
.newsletter-block .mc4wp-form .mc4wp-error,.dark-bg .mc4wp-form .mc4wp-error {
  background-color: rgba(239,68,68,.15);
  border-color: rgba(239,68,68,.4);
  color: #fca5a5;
}
.sterling-gradient-1 {
  position: relative;
  background: linear-gradient(135deg, #1E293B 0%, #0F172A 100%);
}
.sterling-gradient-1::after {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-1-dark {
  position: relative;
  background: linear-gradient(135deg, #0F172A 0%, #020617 100%);
}
.sterling-gradient-1-dark::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-1-light {
  position: relative;
  background: linear-gradient(135deg, #334155 0%, #1E293B 100%);
}
.sterling-gradient-1-light::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-2 {
  position: relative;
  background: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);
}
.sterling-gradient-2::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-2-dark {
  position: relative;
  background: linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%);
}
.sterling-gradient-2-dark::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-2-light {
  position: relative;
  background: linear-gradient(135deg, #818CF8 0%, #A78BFA 100%);
}
.sterling-gradient-2-light::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-3 {
  position: relative;
  background: linear-gradient(135deg, #FF4081 0%, #FF1744 100%);
}
.sterling-gradient-3::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-3-dark {
  position: relative;
  background: linear-gradient(135deg, #E91E63 0%, #D50000 100%);
}
.sterling-gradient-3-dark::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-3-light {
  position: relative;
  background: linear-gradient(135deg, #FF80AB 0%, #FF5252 100%);
}
.sterling-gradient-3-light::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-4 {
  position: relative;
  background: linear-gradient(135deg, #3B82F6 0%, #06B6D4 100%);
}
.sterling-gradient-4::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-4-dark {
  position: relative;
  background: linear-gradient(135deg, #2563EB 0%, #0891B2 100%);
}
.sterling-gradient-4-dark::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-4-light {
  position: relative;
  background: linear-gradient(135deg, #60A5FA 0%, #22D3EE 100%);
}
.sterling-gradient-4-light::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-5 {
  position: relative;
  background: linear-gradient(135deg, #14B8A6 0%, #10B981 100%);
}
.sterling-gradient-5::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-5-dark {
  position: relative;
  background: linear-gradient(135deg, #0D9488 0%, #059669 100%);
}
.sterling-gradient-5-dark::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-5-light {
  position: relative;
  background: linear-gradient(135deg, #2DD4BF 0%, #34D399 100%);
}
.sterling-gradient-5-light::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-text-1 {
  background: linear-gradient(135deg, #1E293B 0%, #0F172A 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.sterling-gradient-text-2 {
  background: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.sterling-gradient-text-3 {
  background: linear-gradient(135deg, #FF4081 0%, #FF1744 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.sterling-gradient-text-4 {
  background: linear-gradient(135deg, #3B82F6 0%, #06B6D4 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.sterling-gradient-text-5 {
  background: linear-gradient(135deg, #14B8A6 0%, #10B981 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0,0,0,0);
  background-clip: text;
}
.sterling-gradient-1-vertical {
  position: relative;
  background: linear-gradient(180deg, #1E293B 0%, #0F172A 100%);
}
.sterling-gradient-1-vertical::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-1-horizontal {
  position: relative;
  background: linear-gradient(90deg, #1E293B 0%, #0F172A 100%);
}
.sterling-gradient-1-horizontal::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-1-radial {
  position: relative;
  background: radial-gradient(circle, #1E293B 0%, #0F172A 100%);
}
.sterling-gradient-1-radial::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-overlay-dark {
  position: relative;
  background: linear-gradient(135deg, rgba(30, 41, 59, 0.9) 0%, rgba(15, 23, 42, 0.9) 100%);
}
.sterling-gradient-overlay-dark::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-overlay-light {
  position: relative;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.9) 0%, rgba(249, 250, 251, 0.9) 100%);
}
.sterling-gradient-overlay-light::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.sterling-gradient-overlay-primary {
  position: relative;
  background: linear-gradient(135deg, rgba(255, 64, 129, 0.9) 0%, rgba(255, 23, 68, 0.9) 100%);
}
.sterling-gradient-overlay-primary::before {
  content: "" !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);
  pointer-events: none;
  z-index: 1;
}
.collapse {
  visibility: collapse;
}
.visible {
  visibility: visible;
}
.absolute {
  position: absolute;
}
.fixed {
  position: fixed;
}
.sticky {
  position: sticky;
}
.container {
  width: 100%;
}
.block {
  display: block;
}
.flex {
  display: flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.inline {
  display: inline;
}
.inline-block {
  display: inline-block;
}
.inline-flex {
  display: inline-flex;
}
.table {
  display: table;
}
.flex-shrink {
  flex-shrink: 1;
}
.shrink {
  flex-shrink: 1;
}
.flex-grow {
  flex-grow: 1;
}
.grow {
  flex-grow: 1;
}
.border-collapse {
  border-collapse: collapse;
}
.transform {
  transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
}
.resize {
  resize: both;
}
.columns-1 {
  -moz-columns: 1;
       columns: 1;
}
.columns-2 {
  -moz-columns: 2;
       columns: 2;
}
.columns-3 {
  -moz-columns: 3;
       columns: 3;
}
.columns-4 {
  -moz-columns: 4;
       columns: 4;
}
.columns-5 {
  -moz-columns: 5;
       columns: 5;
}
.columns-6 {
  -moz-columns: 6;
       columns: 6;
}
.flex-wrap {
  flex-wrap: wrap;
}
.border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.border-none {
  --tw-border-style: none;
  border-style: none;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.italic {
  font-style: italic;
}
.line-through {
  text-decoration-line: line-through;
}
.underline {
  text-decoration-line: underline;
}
.ring {
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.outline {
  outline-style: var(--tw-outline-style);
  outline-width: 1px;
}
.filter {
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
.backdrop-filter {
  backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
}
.transition {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, ease);
  transition-duration: var(--tw-duration, 0s);
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
    }
  }
}
